.no-speedster-viewer{width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#111720;color:#e7edf5;font-family:inherit;isolation:isolate}
.no-speedster-viewer[hidden]{display:none!important}

.no-speedster-viewer .no-speedster-stage{position:relative;min-height:320px;height:clamp(360px,56vw,640px);background:radial-gradient(ellipse at 50% 35%,#303d4a 0%,#171f29 55%,#0d131b 100%)}
.no-speedster-viewer model-viewer{display:block;width:100%;height:100%;--progress-bar-color:#d3e5ff;--progress-bar-height:3px;outline:none}
.no-speedster-viewer .no-speedster-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;pointer-events:none}
.no-speedster-viewer .no-speedster-status span{font-size:clamp(22px,3vw,36px);letter-spacing:.04em;font-weight:500}
.no-speedster-viewer .no-speedster-status small{font-size:14px;color:#aebed0}
.no-speedster-viewer.is-ready .no-speedster-status{display:none}
.no-speedster-viewer .no-speedster-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:#111720}
.no-speedster-viewer .no-speedster-toolbar p{font-size:13px;line-height:1.6;margin:0;color:#b8c4d3}
.no-speedster-viewer .no-speedster-toolbar p span{padding:0 6px;color:#667c94}
.no-speedster-viewer .no-speedster-reset{flex:none;background:transparent;border:1px solid #6d8096;border-radius:6px;color:#edf3fa;padding:9px 14px;font:inherit;font-size:13px;cursor:pointer}
.no-speedster-viewer .no-speedster-reset:hover{background:#253143}
.no-speedster-viewer .no-speedster-reset:focus-visible{outline:2px solid #d1e4ff;outline-offset:3px}
.no-speedster-viewer .no-speedster-reset:disabled{opacity:.4;cursor:wait}
.no-speedster-viewer .no-speedster-hotspot{position:relative;width:48px;height:48px;padding:8px;border:0;background:transparent;box-shadow:none;cursor:pointer;touch-action:manipulation;opacity:1;transition:opacity .18s;pointer-events:auto;color:#fff;font:inherit}
.no-speedster-viewer .no-speedster-hotspot:not([data-visible]),.no-speedster-viewer .no-speedster-hotspot:not([data-enabled]){opacity:0;visibility:hidden;pointer-events:none}
.no-speedster-viewer .no-speedster-hotspot-ring{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:2px solid rgba(255,255,255,.95);border-radius:50%;background:rgba(14,22,30,.32);box-shadow:0 1px 9px #0008;backdrop-filter:blur(2px);transition:background .18s,border-color .18s}
.no-speedster-viewer .no-speedster-hotspot-ring>span{display:block;font:300 24px/24px Arial,sans-serif;transition:transform .2s}
.no-speedster-viewer .no-speedster-hotspot[aria-pressed=true] .no-speedster-hotspot-ring>span{transform:rotate(45deg)}
.no-speedster-viewer .no-speedster-hotspot:hover .no-speedster-hotspot-ring,.no-speedster-viewer .no-speedster-hotspot:focus-visible .no-speedster-hotspot-ring{background:rgba(157,28,37,.82);border-color:#fff}
.no-speedster-viewer .no-speedster-hotspot:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:50%}
.no-speedster-viewer .no-speedster-hotspot::after{content:attr(data-label);position:absolute;top:48px;left:50%;transform:translateX(-50%);padding:6px 9px;border-radius:4px;background:#111d;color:#fff;font:12px/1.3 Arial,sans-serif;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.no-speedster-viewer .no-speedster-hotspot:hover::after,.no-speedster-viewer .no-speedster-hotspot:focus-visible::after{opacity:1}
.no-speedster-viewer .no-config-controls{position:absolute;z-index:5;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:7px;color:#fff;pointer-events:auto}
.no-speedster-viewer .no-config-nav,.no-speedster-viewer .no-config-panel{display:flex;align-items:center;justify-content:center;gap:5px;padding:4px 8px;border:1px solid #ffffff20;border-radius:9px;background:#11192388;backdrop-filter:blur(9px);box-shadow:0 3px 18px #0002}
.no-speedster-viewer .no-config-panel[hidden]{display:none}
.no-speedster-viewer .no-config-controls button{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:40px;padding:8px;border:0;border-radius:6px;color:#fff;background:transparent;cursor:pointer;box-shadow:none;transition:background .15s}
.no-speedster-viewer .no-config-controls button:hover,.no-speedster-viewer .no-config-controls button[aria-expanded=true],.no-speedster-viewer .no-config-camera[aria-pressed=true]{background:#ffffff25}
.no-speedster-viewer .no-config-controls button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.no-speedster-viewer .no-config-controls svg{width:23px;height:23px;display:block}
.no-speedster-viewer .no-config-swatch>span{display:block;width:23px;height:23px;flex:none;border-radius:50%;background:var(--swatch);border:1px solid #ffffff77;box-shadow:inset 0 5px 5px #ffffff35,inset 0 -5px 5px #0005}
.no-speedster-viewer .no-config-swatch[aria-pressed=true]>span{outline:2px solid #fff;outline-offset:3px}
.no-speedster-viewer .no-config-status:empty{display:none}
.no-speedster-viewer .no-config-status{position:absolute;bottom:100%;margin-bottom:54px;white-space:nowrap;background:#111d;padding:5px 9px;border-radius:4px;font-size:12px;line-height:1.3}
@media(max-width:600px){.no-speedster-viewer .no-speedster-stage{height:380px;min-height:0}.no-speedster-viewer .no-speedster-toolbar{align-items:flex-start;padding:12px;gap:10px}.no-speedster-viewer .no-speedster-toolbar p{font-size:11px}.no-speedster-viewer .no-speedster-reset{font-size:12px;padding:8px 10px}}

.no-speedster-viewer .no-config-controls button[hidden]{display:none!important}
.no-speedster-viewer .no-config-wheel[aria-pressed=true]{background:#ffffff25}
/* White studio and a lightweight animated preparation sequence. */
.no-speedster-viewer .no-speedster-stage{background:#f6f6f6}
.no-speedster-viewer model-viewer{opacity:0;pointer-events:none;transition:opacity .45s ease}
.no-speedster-viewer.is-ready model-viewer{opacity:1;pointer-events:auto}
.no-speedster-viewer .no-speedster-status{z-index:8;background:#f6f6f6;gap:0;text-align:center;padding:28px;color:#202328}
.no-speedster-viewer .no-speedster-loader-title{font-size:14px!important;line-height:1.5;font-weight:500;letter-spacing:.15em;text-transform:uppercase;margin-top:25px}
.no-speedster-viewer .no-speedster-status small{font-size:13px;line-height:1.6;color:#7a7d82;margin-top:12px}
.no-speedster-viewer .no-speedster-load-progress{height:2px;width:min(280px,72%);background:#dedfe2;border-radius:3px;overflow:hidden;margin-top:28px}
.no-speedster-viewer .no-speedster-load-progress>span{display:block;height:100%;width:var(--load-progress,0%);background:#343941;transition:width .2s ease;border-radius:3px}
.no-speedster-viewer .no-speedster-load-percent{display:block;font:11px/1.6 inherit;font-variant-numeric:tabular-nums;letter-spacing:.1em;color:#8a8e94;margin-top:10px}
.no-speedster-viewer .no-speedster-loader-emblem{position:relative;width:112px;height:100px;perspective:400px;isolation:isolate}
.no-speedster-viewer .no-speedster-loader-emblem i{position:absolute;inset:16px;border:1px solid #aeb3bc;border-radius:50%;box-shadow:inset 0 0 12px #ffffffb0,0 2px 8px #41485112;animation:no-studio-orbit 5s linear infinite}
.no-speedster-viewer .no-speedster-loader-emblem i:nth-child(2){inset:8px 24px;border-color:#3d444e;animation-delay:-1.7s}
.no-speedster-viewer .no-speedster-loader-emblem i:nth-child(3){inset:28px 4px;border-color:#c5c9cf;animation-delay:-3.3s}
.no-speedster-viewer .no-speedster-loader-emblem b{position:absolute;inset:42px 48px;border-radius:50%;background:#545d69;box-shadow:0 0 20px #fff;animation:no-studio-pulse 2s ease-in-out infinite}
.no-speedster-viewer.is-ready .no-speedster-loader-emblem>*{animation:none}
.no-speedster-viewer.has-error .no-speedster-loader-emblem>*{animation-play-state:paused}
@keyframes no-studio-orbit{0%{transform:rotateZ(0deg) rotateY(48deg) rotateX(25deg)}100%{transform:rotateZ(360deg) rotateY(48deg) rotateX(25deg)}}
@keyframes no-studio-pulse{50%{opacity:.25;transform:scale(.7)}}
@media(prefers-reduced-motion:reduce){.no-speedster-viewer .no-speedster-loader-emblem>*{animation:none}.no-speedster-viewer model-viewer,.no-speedster-viewer .no-speedster-load-progress>span{transition:none}}
.no-speedster-viewer:not(.is-ready) .no-speedster-toolbar{background:#f6f6f6}
.no-speedster-viewer:not(.is-ready) .no-speedster-toolbar>*{visibility:hidden}
.no-speedster-viewer .no-speedster-loader-note{max-width:460px;margin:22px 0 0;padding:0;color:#8a8d93;font-size:11px;line-height:1.85;letter-spacing:.015em}

.no-speedster-viewer[data-profile="mobile"] .no-speedster-stage{height:clamp(360px,68vh,600px);min-height:360px}
.no-speedster-viewer .no-mobile-ar{display:block;margin:10px auto 0;padding:12px 18px;border:1px solid #fff6;border-radius:8px;background:#202a36;color:white;font:500 13px/1.3 inherit;text-decoration:none;text-align:center;cursor:pointer;min-height:44px;box-sizing:border-box}
.no-speedster-viewer .no-mobile-ar[hidden]{display:none!important}
.no-speedster-viewer[data-profile="mobile"] .no-config-controls button{width:48px;height:44px}
.no-speedster-viewer[data-profile="mobile"] .no-config-nav,.no-speedster-viewer[data-profile="mobile"] .no-config-panel{backdrop-filter:none;background:#202a36e8}
.no-speedster-viewer .no-mobile-ar[aria-disabled="true"]{opacity:.5;pointer-events:none}
.no-speedster-viewer .no-mobile-ar-message{font-size:11px;text-align:center;color:#667078;margin:8px 12px}
.no-speedster-viewer[data-profile="mobile"] .no-speedster-toolbar p{font-size:11px}
.no-speedster-viewer[data-profile="mobile"] model-viewer::part(default-ar-button){display:none}

.no-speedster-viewer .no-config-ar{flex-direction:column;width:min(282px,calc(100vw - 64px));padding:10px;gap:8px}
.no-speedster-viewer .no-mobile-scale-options{display:flex;gap:6px;width:100%}
.no-speedster-viewer .no-mobile-scale-options button{width:auto!important;flex:1;font-size:12px;padding:8px 5px}
.no-speedster-viewer .no-mobile-scale-options button[aria-pressed=true]{background:#ffffff25}
.no-speedster-viewer .no-config-ar .no-mobile-ar{margin:0;width:100%;padding:12px 8px;background:#fff;color:#172331;font-size:12px}
.no-speedster-viewer .no-config-ar .no-mobile-ar-message{margin:0;color:#c4cfda;font-size:10px;white-space:normal;line-height:1.5}
.no-speedster-viewer .no-mobile-dimensions{margin:0;color:#d3dce6;font-size:10px;line-height:1.5;text-align:center}
.no-speedster-viewer .no-config-openings{gap:4px}
.no-speedster-viewer .no-config-openings button.no-mobile-opening{width:80px;height:44px;font-size:11px;line-height:1.2;padding:4px;white-space:normal}

.no-speedster-viewer .no-config-nav button[data-panel="ar"]{flex-direction:column;padding:3px;gap:1px;font:9px/1 Arial,sans-serif}
.no-speedster-viewer .no-config-nav button[data-panel="ar"] svg{width:21px;height:21px}

.no-speedster-viewer .no-fullscreen-toggle{position:absolute;z-index:12;right:12px;top:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff70;border-radius:8px;background:#202a36b8;color:#fff;cursor:pointer;padding:10px;touch-action:manipulation}
.no-speedster-viewer .no-fullscreen-toggle svg{width:24px;height:24px}
.no-speedster-viewer .no-fullscreen-toggle:focus-visible{outline:2px solid #fff;outline-offset:3px}
.no-speedster-viewer.is-fullscreen{display:flex!important;flex-direction:column;width:100%;height:100%;max-width:none;border:0;border-radius:0;margin:0;box-sizing:border-box;background:#f6f6f6}
.no-speedster-viewer.is-fullscreen .no-speedster-stage{height:auto!important;min-height:0!important;flex:1;overflow:hidden}
.no-speedster-viewer.is-fullscreen .no-speedster-toolbar{flex:none;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.no-speedster-viewer.is-fullscreen-overlay{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100dvh!important}
.no-speedster-viewer.is-fullscreen .no-fullscreen-toggle{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}
/* Capture is opt-in. Controls only appear inside an active raw-camera AR session. */
.no-ar-capture-options{flex-basis:100%;padding:8px 4px;border-top:1px solid #ffffff26;text-align:left;font-size:12px;line-height:1.4}.no-ar-capture-options label{display:flex;align-items:center;gap:8px;cursor:pointer}.no-ar-capture-options input{width:18px;height:18px;accent-color:#fff}.no-ar-capture-options p{margin:6px 0;color:inherit;opacity:.8}.no-ar-capture-options button{width:auto!important;padding:8px 14px!important;font-size:12px!important}.no-ar-capture-controls[hidden],.no-ar-capture-options [hidden]{display:none!important}.no-ar-capture-controls{position:absolute;z-index:100;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(90%,360px);text-align:center;pointer-events:auto;color:#fff;font:13px/1.4 system-ui,sans-serif}.no-ar-capture-actions{display:flex;justify-content:center;gap:16px}.no-ar-capture-controls button{min-width:100px;min-height:48px;border:2px solid #fff;border-radius:26px;background:#172028db;color:#fff;font:600 16px system-ui;touch-action:manipulation}.no-ar-capture-controls button:disabled{opacity:.45}.no-ar-capture-controls span{display:block;margin-top:8px;padding:6px;border-radius:10px;background:#172028cc}.no-ar-capture-gallery{box-sizing:border-box;width:min(94vw,680px);max-height:90dvh;border:1px solid #aaa;border-radius:16px;background:#f7f8fa;color:#182028;padding:20px;font:14px/1.5 system-ui}.no-ar-capture-gallery::backdrop{background:#000a}.no-capture-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.no-ar-capture-gallery button,.no-ar-capture-gallery a{display:inline-block;min-height:40px;box-sizing:border-box;margin:6px;padding:8px 14px;border:1px solid #9aa0a6;border-radius:8px;background:#fff;color:#182028;text-decoration:none;cursor:pointer}.no-ar-capture-gallery article{margin-top:16px;border-top:1px solid #ccc;padding-top:12px}.no-ar-capture-gallery img,.no-ar-capture-gallery video{display:block;max-width:100%;max-height:50dvh;margin:auto;object-fit:contain}
.no-ar-capture-options{width:100%;box-sizing:border-box}
/* Keep AR exit below Android's status / immersive-browser bars, with a large touch target. */
.no-ar-exit{position:fixed!important;top:calc(env(safe-area-inset-top,0px) + 72px)!important;right:max(20px,env(safe-area-inset-right))!important;left:auto!important;bottom:auto!important;z-index:2147483646!important;display:flex!important;align-items:center!important;justify-content:center!important;width:132px!important;min-height:56px!important;padding:12px 18px!important;border:2px solid #fff!important;border-radius:28px!important;background:#172028ee!important;color:#fff!important;font:600 17px/1.2 system-ui,sans-serif!important;pointer-events:auto!important;touch-action:manipulation!important;box-shadow:0 2px 12px #0007!important}
.no-ar-capture-controls [data-finish]{display:block;width:100%;min-height:48px;margin-top:12px;font-size:15px;background:#fff;color:#172028}.no-ar-capture-controls{bottom:calc(env(safe-area-inset-bottom,0px) + 28px)}
