.vx-inspection-open{overflow:hidden}.vx-dialog{--vx-ivory:#f1eee7;--vx-ink:#151b1d;--vx-muted:#5d6360;--vx-metal:#a78d64;position:fixed;inset:0;width:min(1440px,calc(100vw - 48px));height:min(900px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;margin:auto;border:1px solid #777465;border-radius:0;background:#0b1013;color:var(--vx-ivory);overflow:hidden;font-family:Jost,Arial,sans-serif;box-shadow:0 35px 100px #0008}.vx-dialog::backdrop{background:rgba(2,5,7,.85);backdrop-filter:blur(7px)}.vx-dialog *{box-sizing:border-box}.vx-dialog [hidden]{display:none!important}.vx-dialog button,.vx-dialog input{font:inherit}.vx-dialog button{border-radius:0;cursor:pointer}.vx-dialog button:focus-visible,.vx-dialog input:focus-visible{outline:2px solid #b89456;outline-offset:4px}.vx-dialog button:disabled{cursor:default;opacity:.45}.vx-shell{height:100%;display:flex;flex-direction:column}.vx-header{display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;border-bottom:1px solid #525953;padding:24px 30px;background:#0c1215;flex-shrink:0}.vx-kicker{font-size:12px!important;line-height:1.5!important;letter-spacing:.15em!important;text-transform:uppercase;margin:0 0 7px!important;font-weight:400}.vx-header h2{font:400 36px/.95 'Cormorant Garamond',Georgia,serif;margin:0;letter-spacing:-.015em}.vx-modes{display:flex;border:1px solid #5a655f;padding:4px;gap:4px}.vx-modes button{border:0;background:transparent;color:#a5b0aa;padding:12px 21px;font-size:13px;line-height:1.25;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.vx-modes button[aria-pressed=true]{background:#e9e5dc;color:#172022}.vx-close{justify-self:end;display:flex;align-items:center;gap:23px;background:none;color:#ece9df;border:0;padding:8px 0 8px 14px;font-size:13px;min-height:44px}.vx-close b{font:300 29px/1 Jost,Arial,sans-serif}.vx-body{display:grid;grid-template-columns:minmax(0,1fr) 365px;flex:1;min-height:0}.vx-stage{display:flex;flex-direction:column;min-height:0;min-width:0;position:relative;background:radial-gradient(ellipse at 50% 43%,#233037,#101a20 48%,#080e12 86%)}.vx-watch-view{flex:1;min-height:300px;position:relative;overflow:hidden;isolation:isolate}.vx-watch-view img.vx-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;margin:0}.vx-watch-view .watch-canvas{z-index:1}.vx-scene-state{position:absolute;left:26px;top:20px;z-index:2;font-size:12px!important;line-height:1.5!important;color:#a1aea7;letter-spacing:.055em;pointer-events:none;margin:0;max-width:260px}.vx-watch-view.scene-ready .vx-scene-state{display:none}.vx-stage-caption{padding:0 26px 18px;display:flex;justify-content:space-between;gap:25px;font-size:12px;line-height:1.5;letter-spacing:.03em;color:#9aaba5;pointer-events:none;flex-shrink:0}.vx-stage-caption>span:last-child{white-space:nowrap}.vx-camera-controls{display:flex;align-items:center;gap:24px;border-top:1px solid #34433f;padding:19px 26px;flex-shrink:0;background:rgba(5,12,16,.58)}.vx-rotate{display:flex;gap:5px}.vx-rotate button{background:none;color:#d3dacf;border:1px solid #53625c;width:32px;height:32px;display:grid;place-items:center;padding:0;font-size:14px}.vx-rotate button:hover{background:#e0e2d4;color:#101918}.vx-zoom{display:flex;align-items:center;gap:12px;color:#bac6bd;font-size:13px;min-width:0;flex:1}.vx-zoom>span:last-child{min-width:34px;font-variant-numeric:tabular-nums}.vx-dialog input[type=range]{min-height:24px;accent-color:#b9a078;cursor:pointer;padding:0;background:transparent}.vx-reset{background:none;border:0;border-bottom:1px solid #596963;color:#cbd6cb;white-space:nowrap;padding:5px 0;font-size:13px;line-height:1.4;min-height:44px;display:inline-flex;align-items:center}.vx-panel{background:var(--vx-ivory);color:var(--vx-ink);padding:34px 28px 22px;overflow:auto;overscroll-behavior:contain;min-height:0}.vx-panel h3{font:400 37px/.98 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em;margin:12px 0 16px}.vx-intro{font-size:12px!important;line-height:1.65!important;color:#606a65;margin:0 0 23px!important;max-width:300px}.vx-panel .vx-kicker{color:#5f6259}.vx-app-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:27px}.vx-app-grid button{display:flex;align-items:center;gap:12px;background:none;border:1px solid #b5b6a8;color:#5d655f;text-align:left;padding:13px 11px;font-size:13px;line-height:1.4;min-height:48px}.vx-app-grid button>span{font-size:20px;line-height:1;width:22px;text-align:center}.vx-app-grid button[aria-pressed=true]{border-color:#273b37;background:#1b302d;color:#eeeade}.vx-small-title{font-size:12px!important;letter-spacing:.045em;line-height:1.5!important;margin:0 0 15px!important;color:#666c61}.vx-choice-list,.vx-city-list{border-top:1px solid #b9bcb0}.vx-choice-list button,.vx-city-list button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 0;border:0;border-bottom:1px solid #c6c8bb;background:transparent;color:#54615a;text-align:left;font-size:14px}.vx-choice-list button[aria-pressed=true],.vx-city-list button[aria-pressed=true]{color:#152d25;font-weight:500}.vx-choice-list button[aria-pressed=true]>span:before,.vx-city-list button[aria-pressed=true]>span:before{content:'•';color:#8d754a;display:inline-block;margin-right:10px}.vx-choice-list i{font-style:normal;font-size:16px}.vx-city-list small{font-size:12px;letter-spacing:.08em}.vx-note{font-size:12px!important;line-height:1.65!important;color:#5e6259;margin:17px 0 0!important}.vx-world-time{margin:22px 0 0!important;display:flex;justify-content:space-between;align-items:baseline;color:#59675b;font-size:12px!important}.vx-world-time strong{font-size:30px;line-height:1.2;font-weight:300;font-variant-numeric:tabular-nums}.vx-app-panel h4{font:400 30px/1.15 'Cormorant Garamond',Georgia,serif;margin:17px 0 6px;color:#1e3229}.vx-track-credit{font-size:12px!important;margin:0 0 24px!important;color:#5f6359;line-height:1.6!important}.vx-player-controls{display:grid;grid-template-columns:45px 1fr 45px;gap:8px}.vx-player-controls button{min-height:44px;background:none;color:#223d30;border:1px solid #adb5a4;font-size:14px}.vx-player-controls button[data-vx-music=play]{background:#213b30;color:#f0eadb;border-color:#213b30;font-size:13px}.vx-progress{display:block;margin-top:23px}.vx-progress input{width:100%;display:block}.vx-track-times{display:flex;justify-content:space-between;font-size:12px;color:#5b6155;font-variant-numeric:tabular-nums;margin-top:5px}.vx-dnd{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;padding:0 0 18px;color:#3e5447;font-size:12px;min-height:44px}.vx-dnd>i{position:relative;background:#b7c0ae;border-radius:20px;width:34px;height:19px;border:1px solid #a6b1a0;transition:background .2s}.vx-dnd>i>b{position:absolute;left:2px;top:2px;width:13px;height:13px;background:#f4f0e2;border-radius:50%;transition:transform .2s}.vx-dnd[aria-pressed=true]>i{background:#284837;border-color:#284837}.vx-dnd[aria-pressed=true]>i>b{transform:translateX(15px)}.vx-message-list{border-top:1px solid #b9c0b0}.vx-message-list button{display:block;text-align:left;width:100%;padding:14px 0;border:0;border-bottom:1px solid #c3c9b8;background:none;color:#314d3b}.vx-message-list button>span{display:block;font-size:12px}.vx-message-list button>small{display:block;font-size:12px;line-height:1.6;color:#5a6254;margin-top:4px}.vx-message-list button[aria-pressed=true]{padding-left:10px;border-left:2px solid #8d754a}.vx-message-actions{display:flex;gap:15px;margin-top:17px;flex-wrap:wrap}.vx-message-actions button{border:0;border-bottom:1px solid #929d87;background:none;color:#435d44;padding:0 0 4px;font-size:13px;min-height:44px;display:inline-flex;align-items:center}.vx-separation{display:block;margin:25px 0 23px}.vx-separation>span{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin-bottom:10px;color:#52654f}.vx-separation b{font-weight:400;font-variant-numeric:tabular-nums}.vx-separation input{width:100%;display:block}.vx-separation>small{display:flex;justify-content:space-between;font-size:12px;margin-top:5px;color:#5a644f}.vx-layers{border-top:1px solid #b7bca9}.vx-layers button{display:grid;grid-template-columns:21px 1fr 14px;align-items:center;gap:9px;padding:13px 0;width:100%;border:0;border-bottom:1px solid #c0c6af;background:none;text-align:left;color:#68775b}.vx-layers button>span{font-size:8px;color:#869276}.vx-layers strong{font-weight:400;font-size:11px}.vx-layers button>b{font-weight:400;font-size:14px}.vx-layers button[aria-pressed=true]{color:#26412d}.vx-layers button[aria-pressed=true]>span{color:#a18347}.vx-layers button[aria-pressed=true] strong{font-weight:500}.vx-layer-detail{padding-top:24px}.vx-layer-detail h4{font:400 27px/1.1 'Cormorant Garamond',Georgia,serif;margin:11px 0 10px;color:#283e2b}.vx-layer-detail>p:not(.vx-kicker){font-size:12px!important;line-height:1.7!important;margin:0!important;color:#798267}.vx-disclaimer{font-size:12px!important;line-height:1.8!important;color:#5c6250;border-top:1px solid #c6cbb4;padding-top:19px;margin:28px 0 0!important}.vx-live{font-size:12px!important;line-height:1.6!important;color:#5a7050;margin:12px 0 0!important;min-height:15px}.vx-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(min-width:1600px){.vx-body{grid-template-columns:minmax(0,1fr) 390px}.vx-panel{padding:38px 34px}.vx-header{padding:27px 34px}}
@media(max-width:1000px){.vx-dialog{width:calc(100vw - 24px);height:calc(100dvh - 24px)}.vx-body{grid-template-columns:minmax(0,1fr) 320px}.vx-header{padding:20px 22px;gap:20px}.vx-panel{padding:28px 22px}.vx-modes button{padding:11px 16px;font-size:13px}.vx-camera-controls{gap:14px;padding:17px 18px;flex-wrap:wrap}.vx-rotate{gap:4px}.vx-zoom{gap:9px}.vx-reset{margin-left:auto}.vx-rotate button{width:29px;height:29px}.vx-stage-caption{padding:0 18px 16px;font-size:12px;gap:12px}.vx-header h2{font-size:33px}.vx-kicker{font-size:12px!important}}
@media(max-width:740px){.vx-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;margin:0}.vx-header{grid-template-columns:1fr auto;padding:17px 19px 14px;gap:14px;position:relative;z-index:3}.vx-header h2{font-size:31px}.vx-header .vx-kicker{font-size:12px!important;letter-spacing:.14em!important}.vx-modes{grid-column:1/-1;grid-row:2;justify-self:stretch;padding:3px;gap:3px}.vx-modes button{flex:1;min-height:44px;padding:10px 14px;font-size:13px}.vx-close{grid-column:2;grid-row:1;gap:15px;font-size:13px}.vx-close b{font-size:27px}.vx-body{display:flex;flex-direction:column;overflow:hidden;min-height:0}.vx-stage{height:clamp(240px,40dvh,370px);flex:0 0 clamp(240px,40dvh,370px);min-height:0}.vx-watch-view{min-height:0}.vx-stage-caption{padding:0 18px 12px;font-size:12px}.vx-camera-controls{flex-wrap:wrap;padding:13px 17px;gap:14px}.vx-zoom{font-size:13px;gap:8px}.vx-zoom input{max-width:none;min-width:35px}.vx-zoom>span:last-child{font-size:12px;min-width:28px}.vx-rotate button{width:27px;height:28px;font-size:12px}.vx-reset{font-size:13px}.vx-panel{padding:29px 23px 30px;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1}.vx-panel h3{font-size:35px;margin-bottom:12px}.vx-intro{font-size:12px!important;max-width:none;margin-bottom:21px!important}.vx-app-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:25px}.vx-app-grid button{display:flex;flex-direction:column;justify-content:center;gap:8px;text-align:center;min-height:70px;font-size:13px;padding:11px 3px;line-height:1.3}.vx-app-grid button>span{font-size:22px}.vx-choice-list button,.vx-city-list button{font-size:14px;padding:16px 0}.vx-note{font-size:12px!important}.vx-disclaimer{margin-top:25px!important;font-size:12px!important}.vx-layers button{padding:15px 0}.vx-layers strong{font-size:12px}.vx-layer-detail>p:not(.vx-kicker){font-size:12px!important}.vx-scene-state{left:18px;top:12px;font-size:12px!important;max-width:230px}.vx-panel .vx-kicker{font-size:12px!important}}
@media(max-width:370px){.vx-camera-controls{gap:10px;padding-left:12px;padding-right:12px}.vx-rotate{gap:3px}.vx-rotate button{width:24px}.vx-zoom>span:first-child{display:none}.vx-panel{padding-left:19px;padding-right:19px}.vx-app-grid{gap:5px}.vx-app-grid button{font-size:12px}.vx-stage-caption>span:first-child{max-width:210px}.vx-header{padding-left:17px;padding-right:17px}}
@media(prefers-reduced-motion:reduce){.vx-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.vx-dialog::backdrop{backdrop-filter:none}}
/* motion switch: copy of the block above, for html[data-motion="reduce"] */
:where(html[data-motion="reduce"]) .vx-dialog *{scroll-behavior:auto!important;transition:none!important;animation:none!important}:where(html[data-motion="reduce"]) .vx-dialog::backdrop{backdrop-filter:none}
/* end motion switch copy */

@media(min-width:560px) and (max-width:740px) and (max-height:550px){.vx-header{padding:10px 16px;grid-template-columns:1fr auto auto;gap:15px}.vx-header h2{font-size:26px}.vx-header .vx-kicker{font-size:12px!important}.vx-modes{grid-column:2;grid-row:1;align-self:center}.vx-modes button{font-size:13px;min-height:44px;padding:8px 11px}.vx-close{grid-column:3}.vx-close>span{display:none}.vx-body{display:grid;grid-template-columns:minmax(0,1fr) 260px}.vx-stage{height:auto;min-height:0}.vx-panel{padding:22px 20px}.vx-stage-caption{display:none}.vx-camera-controls{flex-wrap:wrap;gap:10px;padding:12px 15px}.vx-zoom{min-width:110px}.vx-reset{margin-left:auto}.vx-app-grid{grid-template-columns:1fr 1fr}.vx-app-grid button{flex-direction:row;min-height:44px;font-size:13px}}

/* Keep focus scrolling inside the control panel, including on mobile. */
.vx-dialog{overflow:clip}.vx-shell{position:absolute;inset:0}

/* The renderer owns the continuous camera move; the surrounding controls arrive after it. */
.vx-dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;inset:0;margin:0;border:0;box-shadow:none;background:#080e12}
.vx-dialog::backdrop{background:rgba(2,5,7,.94);backdrop-filter:none}
.vx-body{grid-template-columns:minmax(0,1fr) 390px}
.vx-panel{padding:30px 29px 24px;scrollbar-width:thin;scrollbar-color:#9b9e8f transparent}
.vx-header,.vx-panel,.vx-camera-controls,.vx-stage-caption{transition:opacity .32s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
.vx-dialog.is-transitioning .vx-stage,.vx-dialog.is-transitioning .vx-watch-view{overflow:visible}
.vx-dialog.is-transitioning .vx-watch-view{isolation:auto;z-index:4;pointer-events:none}
.vx-dialog.is-transitioning .vx-header{background:transparent;border-color:transparent}
.vx-dialog.is-transitioning .vx-header>div,.vx-dialog.is-transitioning .vx-panel,.vx-dialog.is-transitioning .vx-camera-controls,.vx-dialog.is-transitioning .vx-stage-caption{opacity:0;pointer-events:none}
.vx-dialog.is-transitioning .vx-panel{transform:translateX(24px)}
.vx-dialog.is-transitioning .vx-close{opacity:1;pointer-events:auto}
.vx-dialog.is-closing .vx-header,.vx-dialog.is-closing .vx-panel,.vx-dialog.is-closing .vx-camera-controls,.vx-dialog.is-closing .vx-stage-caption{opacity:0;pointer-events:none;transition-duration:.18s}
.vx-dialog.is-closing .vx-watch-view{pointer-events:none}
.vx-crown-controls{display:flex;align-items:center;gap:8px;margin:0 0 23px;padding:13px 0 16px;border-top:1px solid #bdc1b4;border-bottom:1px solid #bdc1b4}
.vx-crown-controls>div{flex:1;min-width:0}
.vx-crown-controls .vx-small-title{margin:0 0 4px!important;color:#344e40}
.vx-crown-controls p:not(.vx-small-title){font-size:12px!important;line-height:1.5!important;color:#5e6259;margin:0!important}
.vx-crown-controls button{width:44px;height:44px;flex:0 0 44px;background:none;border:1px solid #a6b29f;color:#1c3829;font-size:21px;font-weight:300;display:grid;place-items:center}
.vx-crown-controls button:hover{background:#203b30;color:#f1eee7}
.vx-assembly-actions{display:flex;gap:10px;margin:0 0 23px}
.vx-assembly-actions button{flex:1;font-size:13px;line-height:1.4;padding:12px 9px;min-height:44px;background:transparent;color:#294332;border:1px solid #aab69c}
.vx-assembly-actions button[aria-pressed=true]{background:#203b30;border-color:#203b30;color:#f2eee1}
.vx-layer-detail{padding:20px 0 23px;border-top:1px solid #b7c1a5;border-bottom:1px solid #b7c1a5;margin:0 0 27px}
.vx-layer-detail h4{font-size:30px;margin-top:8px}
.vx-layer-detail>p:not(.vx-kicker){color:#5f6b56;font-size:12px!important}
.vx-material{margin:19px 0 0;padding:13px 0 0;border-top:1px solid #cbd0c0}
.vx-material dt{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#5b6150;margin-bottom:5px}
.vx-material dd{font-size:12px;line-height:1.55;color:#43563d;margin:0}
.vx-hardware-action{width:100%;text-align:left;margin-top:19px;border:0;background:#213b30;color:#f3edde;min-height:44px;padding:13px 15px;font-size:13px}
.vx-catalog-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.vx-catalog-heading .vx-small-title{margin-bottom:13px!important}
.vx-catalog-heading>span{font-size:12px;color:#5e6354;font-variant-numeric:tabular-nums}
.vx-component-catalog{border-top:1px solid #aeb99e}
.vx-component-group{border-bottom:1px solid #bdc7ac}
.vx-component-group summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:47px;padding:13px 0;color:#334d34;font-size:13px;line-height:1.4;cursor:pointer}
.vx-component-group summary::-webkit-details-marker{display:none}
.vx-component-group summary>span{font-size:12px;color:#5e6451;font-variant-numeric:tabular-nums}
.vx-component-group summary>b{font-size:18px;line-height:1;font-weight:300;margin-left:auto;color:#68815a}
.vx-component-group[open] summary>b{transform:rotate(45deg)}
.vx-component-group summary:focus-visible{outline:2px solid #a4844d;outline-offset:3px}
.vx-component-group ul{list-style:none;margin:0;padding:0 0 13px 13px}
.vx-component-group li ul{padding:0 0 0 12px;border-left:1px solid #c4ccb7}
.vx-component-group button{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-top:1px solid #d0d6c3;background:none;min-height:44px;padding:12px 9px;text-align:left;font-size:13px;line-height:1.45;color:#5e7250;gap:13px}
.vx-component-group button>b{font-weight:400;font-size:12px;color:#8b9679}
.vx-component-group button[aria-pressed=true]{background:#d9dfcc;color:#243e25;box-shadow:inset 2px 0 #947940}
.vx-component-group button:hover{background:#e2e6d8}
.vx-component-group .vx-group-focus{background:#e2e6d8;color:#365235;border-top:0;margin-bottom:4px;font-size:13px;padding:12px;display:flex;align-items:center;min-height:44px}
.vx-optical-path{margin-top:22px}
.vx-optical-path ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.vx-optical-path button{display:grid;grid-template-columns:21px 1fr;gap:3px 9px;text-align:left;width:100%;background:none;border:1px solid #b7c2a8;padding:12px;color:#435f3b;min-height:61px}
.vx-optical-path button[aria-pressed=true]{border-color:#5a7848;background:#dfe5d3}
.vx-optical-path button>span{font-size:12px;grid-row:1/3;align-self:center;color:#5a624a}
.vx-optical-path button>strong{font-size:13px;font-weight:400}
.vx-optical-path button>small{font-size:12px;line-height:1.5;color:#5b634e}
.vx-component-anchor{position:absolute;z-index:3;max-width:46%;transform:translate(-50%,calc(-100% - 18px));padding:7px 11px;border:1px solid #83928766;background:#101b20eb;color:#dce2d6;font:400 9px/1.45 Jost,Arial,sans-serif;letter-spacing:.03em;text-align:center;pointer-events:none;box-shadow:0 5px 20px #0003}
.vx-component-anchor:after{content:'';position:absolute;left:50%;top:100%;height:15px;border-left:1px solid #a6bba27a}
@media(min-width:1600px){.vx-body{grid-template-columns:minmax(0,1fr) 430px}.vx-panel{padding:37px 35px}}
@media(min-width:741px) and (max-width:1100px){.vx-body{grid-template-columns:minmax(0,1fr) 330px}.vx-panel{padding:25px 24px}.vx-stage-caption>span:last-child{font-size:12px}}
@media(max-width:740px){.vx-panel{padding:26px 23px 30px}.vx-dialog.is-transitioning .vx-panel{transform:translateY(20px)}.vx-stage{height:clamp(225px,39dvh,370px);flex-basis:clamp(225px,39dvh,370px)}.vx-stage-caption{font-size:12px;gap:12px}.vx-stage-caption>span:first-child{max-width:58%}.vx-stage-caption>span:last-child{white-space:normal;text-align:right}.vx-component-group summary{font-size:13px;min-height:49px}.vx-component-group button{font-size:13px;min-height:44px}.vx-crown-controls button{width:44px;height:44px;flex-basis:44px}.vx-layer-detail h4{font-size:29px}.vx-assembly-actions button{min-height:44px;font-size:13px}.vx-camera-controls .vx-rotate button{min-height:30px}}
@media(max-width:370px){.vx-panel{padding-left:18px;padding-right:18px}.vx-stage-caption{padding-left:13px;padding-right:13px}.vx-camera-controls{gap:9px}.vx-stage{height:clamp(212px,37dvh,300px);flex-basis:clamp(212px,37dvh,300px)}}
@media(min-width:560px) and (max-width:740px) and (max-height:550px){.vx-body{grid-template-columns:minmax(0,1fr) 280px}.vx-panel{padding:21px}.vx-stage{height:auto;flex-basis:auto}.vx-stage-caption{display:none}.vx-assembly-actions{gap:6px}.vx-assembly-actions button{font-size:12px;padding:10px 6px}}
@media(prefers-reduced-motion:reduce){.vx-dialog.is-transitioning .vx-panel{transform:none}.vx-header,.vx-panel,.vx-camera-controls,.vx-stage-caption{transition:none!important}}
/* motion switch: copy of the block above, for html[data-motion="reduce"] */
:where(html[data-motion="reduce"]) .vx-dialog.is-transitioning .vx-panel{transform:none}:where(html[data-motion="reduce"]) .vx-header,:where(html[data-motion="reduce"]) .vx-panel,:where(html[data-motion="reduce"]) .vx-camera-controls,:where(html[data-motion="reduce"]) .vx-stage-caption{transition:none!important}
/* end motion switch copy */
/* Zoom steps: usable without dragging the slider, and the zoom control used on phones. */
.vx-zoom-group{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.vx-zoom-group .vx-zoom{flex:0 1 auto}
.vx-zoom-step{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;padding:0;background:none;border:1px solid #53625c;color:#d3dacf;font-size:17px;line-height:1}
.vx-zoom-step:hover{background:#e0e2d4;color:#101918}
@media(hover:none) and (pointer:coarse){.vx-zoom-step{flex-basis:44px;width:44px;height:44px}}
@media(max-width:740px){.vx-zoom-group{flex:0 0 auto}.vx-zoom-group .vx-zoom{display:none}}
/* Without WebGL: the live display is shown flat and stays interactive, and camera controls that would do nothing are
   hidden. The product stills have a transparent background, so they sit on the stage as rendered (no blend or mask:
   both washed out the black straps and hid the ground shadow). */
.vx-screen-flat{display:none}
.vx-no-3d .vx-screen-flat{display:block;position:absolute;left:50%;top:50%;height:min(78%,560px);width:auto;aspect-ratio:1024/1244;transform:translate(-50%,-50%);border-radius:14%/11.5%;box-shadow:0 0 0 10px #1a2124,0 0 0 11px #4a5558,0 30px 80px #000a;cursor:pointer;z-index:1}
.vx-no-3d[data-vx-mode="watch"] .vx-watch-view img.vx-fallback{opacity:0!important}
.vx-no-3d[data-vx-mode="inside"] .vx-screen-flat,.vx-no-3d .vx-camera-controls{display:none}
.vx-no-3d [data-vx-gesture]{visibility:hidden}
/* Touch targets (item 16): rotate buttons stay compact for mouse users so the camera-controls row keeps its
   toolbar look, but every control in it must reach 44x44 on touch. Combined with the wrap rule below, the row
   (4 rotate buttons, the zoom step buttons, Reset) still fits at 340px wide by wrapping onto a second line. */
@media(hover:none) and (pointer:coarse){.vx-rotate button{width:44px;height:44px}}
.vx-camera-controls{flex-wrap:wrap;row-gap:10px}
/* Slider hit areas (fix 9): every range slider in the studio (zoom, assembly separation, the music
   progress bar) reaches 24px tall, and 44px on touch. The visual track is drawn thin by the browser
   regardless; this only grows the element's clickable/draggable box. */
@media(hover:none) and (pointer:coarse){.vx-dialog input[type=range]{min-height:44px}}
.vx-timing-output{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:55px;line-height:1.1;color:#20372d;font-variant-numeric:tabular-nums;padding:0 0 18px}.vx-timing-actions{display:flex;gap:7px}.vx-timing-actions button{flex:1;min-height:44px;border:1px solid #adb5a4;background:none;color:#223d30;font-size:13px;padding:10px}.vx-timing-actions button:first-child{background:#213b30;color:#f0eadb;border-color:#213b30}.vx-timer-duration{display:flex;align-items:center;gap:15px;font-size:13px;color:#5d6360;margin-bottom:18px}.vx-timer-duration input{width:80px;min-height:44px;background:transparent;border:1px solid #aab5a2;color:#223d30;padding:8px}.vx-laps{list-style:none;padding:0;max-height:120px;overflow:auto;margin:15px 0 0;font-size:13px}.vx-laps li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #c6c8bb;padding:7px 0;color:#4d604e;font-variant-numeric:tabular-nums}.vx-laps:empty{display:none}@media(max-width:740px){.vx-app-grid{grid-template-columns:repeat(3,1fr)}.vx-timing-output{font-size:52px}}
