/* Common headset UI. Scoped to the trusted parent; no museum/ZIP styles leak in. */
.hs-root{--hs-shift:0px;position:fixed;inset:0;z-index:15;overflow:hidden;isolation:isolate;box-sizing:border-box;background:#0b0911;color:#f7f4fc;font:16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;touch-action:manipulation}
.hs-root *{box-sizing:border-box}.hs-root [hidden]{display:none!important}
.hs-root button,.hs-root input{font:inherit}.hs-root button{cursor:pointer;color:inherit;min-height:48px;letter-spacing:normal;text-transform:none}
.hs-root button:disabled{opacity:.5;cursor:wait}.hs-root button:focus-visible,.hs-root input:focus-visible{outline:3px solid #f4c3ff;outline-offset:4px}
.hs-root .hs-primary{border:1px solid #cd93ff;background:linear-gradient(110deg,#a245ef,#7639bd);border-radius:15px;padding:14px 24px;font-weight:650;box-shadow:0 8px 34px #a243e923}
.hs-root .hs-back{position:absolute;top:max(15px,env(safe-area-inset-top));left:max(15px,env(safe-area-inset-left));z-index:8;border:1px solid #d5bdec38;background:#17101de3;border-radius:50%;width:46px;height:46px;min-height:46px;padding:11px;display:grid;place-items:center}
.hs-back svg{width:20px;height:20px;stroke:currentColor;stroke-width:2;fill:none}.hs-root[data-phase=mount] .hs-back{left:auto;right:max(15px,env(safe-area-inset-right))}
.hs-mount{position:absolute;inset:0;background:radial-gradient(ellipse at 78% 25%,#662e8c24,transparent 65%),#0b0911}
.hs-step{position:absolute;top:max(24px,env(safe-area-inset-top));left:max(30px,env(safe-area-inset-left));font-size:14px;font-weight:500;color:#d6c5e5;letter-spacing:.2px}
.hs-rotate{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;gap:30px;background:#0b0911f5;z-index:6}
.hs-rotate .hs-step{left:0;right:0;text-align:center}.hs-rotate h1{font-size:clamp(28px,7vw,40px);line-height:1.2;letter-spacing:-1px;max-width:360px;margin:0;font-weight:650}
.hs-turn{width:112px;height:112px;fill:none;stroke:#d7a9f9;stroke-width:1.5}.hs-phone-turn{transform-origin:45px 45px;animation:hs-phone-turn 3.5s ease-in-out infinite}
.hs-landscape{display:none;position:absolute;inset:0}.hs-line{position:absolute;left:50%;transform:translateX(-50%);top:24px;bottom:104px;width:2px;background:#e7c1ff;box-shadow:0 0 15px #b867f266;pointer-events:none}
.hs-panels{position:absolute;inset:66px 0 100px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.hs-mount-copy{padding:0 max(clamp(28px,4.2vw,74px),env(safe-area-inset-left))}
.hs-mount-copy h1{max-width:480px;margin:0;font-size:clamp(25px,3.3vw,47px);font-weight:650;line-height:1.18;letter-spacing:-1px}
.hs-art{min-width:0;display:grid;place-items:center;padding:0 10px}.hs-art .attachment{display:block;width:100%;max-width:620px;max-height:100%;height:auto;aspect-ratio:600/380;overflow:visible}
.hs-footer{position:absolute;left:50%;right:0;bottom:max(20px,env(safe-area-inset-bottom));display:flex;justify-content:center;padding:0 max(24px,env(safe-area-inset-left),env(safe-area-inset-right))}.hs-footer button{width:min(100%,420px);font-size:18px;min-height:56px}
.hs-root .animated-glasses{animation:hs-attach 5s ease-in-out infinite;transform-origin:300px 180px}.hs-root .attach-shadow{animation:hs-shadow 5s ease-in-out infinite}.hs-root .attach-arrow{animation:hs-arrow 5s ease-in-out infinite}.hs-root .phone-pulse{animation:hs-pulse 5s ease-in-out infinite}
.hs-calibration{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 55%,#291036,#0b0911 75%)}
.hs-scene{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.hs-video{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.hs-divider{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#ead7ff23;pointer-events:none}
.hs-eye{position:absolute;left:25%;top:50%;width:0;height:0;transform:translateX(var(--hs-shift));pointer-events:none}.hs-eye-right{left:75%;transform:translateX(calc(-1 * var(--hs-shift)))}
.hs-target{position:absolute;left:-27px;top:-27px;width:54px;height:54px;filter:drop-shadow(0 0 8px #c680ff90)}.hs-target:before{content:"";position:absolute;inset:9px;border:1.5px solid #f3deff;border-radius:50%}.hs-target:after{content:"";position:absolute;inset:24px;background:white;border-radius:50%;box-shadow:0 0 14px #c477ff}.hs-target svg{width:100%;height:100%;stroke:#f0d8ff;stroke-width:1.5;fill:none}
.hs-prompt{position:absolute;bottom:28px;left:0;width:50%;padding:0 clamp(60px,9vw,105px);text-align:center;pointer-events:none;font-size:clamp(14px,1.8vw,20px);line-height:1.4;font-weight:600;color:#f9f3ff}.hs-prompt-right{left:50%}.hs-prompt span{display:block;padding:12px 14px;border:1px solid #c68ef957;border-radius:16px;background:linear-gradient(135deg,#24162fee,#120d1be8);box-shadow:0 8px 24px #0005;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hs-adjuster{position:absolute;z-index:4;right:max(14px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:9px;padding:12px 8px;border-radius:22px;border:1px solid #e1b6ff30;background:#100b18db;backdrop-filter:blur(12px);box-shadow:0 10px 40px #0005;width:78px}
.hs-range-icon{font-size:20px;line-height:20px;color:#deb5ff;pointer-events:none}.hs-adjuster input{writing-mode:vertical-lr;direction:rtl;width:46px;height:clamp(95px,33svh,230px);margin:3px 0;accent-color:#c481ff;cursor:ns-resize;touch-action:none}
.hs-adjuster .hs-primary{width:clamp(112px,16vw,160px);min-height:60px;padding:12px 10px;font-size:16px;line-height:1.2;align-self:flex-end;flex-shrink:0;white-space:nowrap;border-radius:15px;order:-1}
.hs-message{position:absolute;z-index:9;top:15px;left:calc(50% - 160px);width:320px;max-width:calc(100% - 130px);padding:12px 16px;border:1px solid #c68ef957;border-radius:14px;background:#1b1227f5;color:#f4e8ff;font-size:13px;text-align:center;box-shadow:0 6px 25px #0005}.hs-message p{margin:0 0 8px}.hs-message button{min-height:44px;padding:8px 14px;background:#4a2666;border:1px solid #b779e0;border-radius:10px;font-size:13px}
.hs-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;pointer-events:none!important}
@media(orientation:landscape){.hs-mount>.hs-rotate,.hs-calibration>.hs-rotate{display:none}.hs-landscape{display:block}}
@media(max-height:520px) and (orientation:landscape){.hs-adjuster{right:max(10px,env(safe-area-inset-right));padding:8px 6px;gap:5px;width:73px}.hs-adjuster input{height:clamp(90px,29svh,135px)}}
@media(max-height:440px) and (orientation:landscape){.hs-step{top:max(18px,env(safe-area-inset-top));font-size:13px}.hs-panels{top:50px;bottom:78px}.hs-line{top:20px;bottom:83px}.hs-mount-copy{padding:0 max(clamp(22px,3.8vw,40px),env(safe-area-inset-left))}.hs-mount-copy h1{font-size:clamp(22px,3.3vw,29px);line-height:1.18;letter-spacing:-.6px}.hs-art .attachment{max-height:250px}.hs-footer{bottom:max(14px,env(safe-area-inset-bottom))}.hs-footer button{min-height:48px;max-width:340px;padding:11px 24px;font-size:16px}}
@media(max-height:340px) and (orientation:landscape){.hs-panels{top:43px;bottom:70px}.hs-mount-copy h1{font-size:clamp(19px,3.5vw,24px)}.hs-step{top:14px}.hs-art .attachment{max-height:190px}.hs-footer{bottom:10px}.hs-line{top:18px;bottom:73px}}
@keyframes hs-phone-turn{0%,15%{transform:rotate(0deg)}50%,85%{transform:rotate(90deg)}100%{transform:rotate(0deg)}}
@keyframes hs-attach{0%,12%{transform:translateY(-64px)}40%,78%{transform:translateY(0)}95%,100%{transform:translateY(-64px)}}@keyframes hs-shadow{0%,12%,95%,100%{opacity:.1}40%,78%{opacity:.7}}@keyframes hs-arrow{0%,20%{opacity:.7}40%,85%{opacity:0}95%,100%{opacity:.7}}@keyframes hs-pulse{0%,30%,85%,100%{opacity:.2}45%,75%{opacity:.8}}
@media(prefers-reduced-motion:reduce){.hs-root *,.hs-root *:before,.hs-root *:after{animation:none!important;transition:none!important}.hs-root .animated-glasses{transform:translateY(0)}.hs-root .attach-arrow{opacity:0}.hs-root .attach-shadow,.hs-root .phone-pulse{opacity:.6}.hs-phone-turn{transform:rotate(90deg)}}
