/* Glass v3 — warm cinematic amethyst / rose glass. No external fonts or images. */
:root{
  --bg:#0b0912;--panel:rgba(37,29,49,.70);--panel2:#272033;
  --line:rgba(246,211,235,.15);--txt:#fcf6ff;--muted:#b8adc3;
  --rose:#f5b6cf;--violet:#b6a0fa;--good:#79e6bb;--bad:#ffbfaa;
  --glass-shadow:0 20px 58px rgba(3,2,9,.4), inset 0 1px 0 rgba(255,255,255,.09)
}
html{scrollbar-color:#6d526e #14101b}
body{
  background:
    radial-gradient(ellipse 69% 35% at 11% 0%,rgba(194,112,172,.16),transparent 77%),
    radial-gradient(ellipse 65% 45% at 98% 42%,rgba(102,70,168,.15),transparent 79%),
    radial-gradient(ellipse 70% 28% at 24% 95%,rgba(147,79,108,.10),transparent 79%),
    #0b0912;
  color:var(--txt);-webkit-tap-highlight-color:transparent
}
body::before{content:"";position:fixed;z-index:-1;pointer-events:none;width:48vw;height:48vw;min-width:210px;min-height:210px;left:-18vw;top:27vh;background:radial-gradient(circle,rgba(164,89,133,.08),transparent 65%);filter:blur(62px)}
.page{padding-top:20px;max-width:1030px}
.top{position:relative;border:1px solid rgba(255,234,247,.12);padding:10px 14px;border-radius:22px;background:linear-gradient(145deg,rgba(84,61,94,.25),rgba(24,20,33,.43));box-shadow:0 9px 30px #04020a30,inset 0 1px 0 rgba(255,255,255,.075);backdrop-filter:blur(23px);-webkit-backdrop-filter:blur(23px);margin-bottom:23px}
.brand{min-width:0}.brand h1{letter-spacing:-.7px;line-height:1.4}.brand p{font-size:11px;color:#baadbe}
.logo{position:relative;flex:none;background:linear-gradient(135deg,rgba(245,186,213,.24),rgba(102,80,151,.55));box-shadow:0 5px 25px rgba(232,146,197,.13),inset 0 1px 0 #fff5;border-color:#ffdfed36;isolation:isolate}
.logo span{position:absolute;color:#ffe1a6;font-size:10px;left:4px;top:2px;opacity:.92}
.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(223,196,222,.19);border-radius:999px;background:rgba(255,255,255,.045);backdrop-filter:blur(10px);white-space:nowrap}
.connection-dot{background:#91e8bc;height:6px;width:6px;display:inline-block;border-radius:100%;box-shadow:0 0 0 3px #91e8bc16,0 0 11px #91e8bc66}
.intro{margin:15px auto 26px}.eyebrow{color:#d6acc6;font-size:10px;font-weight:700;letter-spacing:3px;margin-bottom:10px;direction:ltr}.eyebrow span{color:#edcaa4}
.intro h2{font-size:clamp(24px,4.5vw,34px);font-weight:780;line-height:1.42;letter-spacing:-.8px}
.intro .muted{font-size:13px;color:#bcb0c6}
.card{position:relative;overflow:hidden;background:linear-gradient(149deg,rgba(68,53,80,.58) 0%,rgba(32,26,44,.74) 55%,rgba(29,23,38,.78) 100%);border:1px solid rgba(240,201,230,.14);border-radius:24px;box-shadow:var(--glass-shadow);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3)}
.card:before{content:"";position:absolute;inset:0 0 auto;pointer-events:none;height:1px;background:linear-gradient(90deg,transparent,rgba(255,245,255,.24) 42%,transparent)}
.card h2{font-size:17px;font-weight:750;letter-spacing:-.3px}
.card p.muted{color:#c1b4c8}
.field,.quality{background:rgba(13,11,23,.56);border:1px solid rgba(232,196,225,.21);box-shadow:inset 0 1px 0 #fff1;color:#faf3ff}
.field:focus,.quality:focus{border-color:#efb4d280;box-shadow:0 0 0 3px rgba(234,159,203,.1),inset 0 1px 0 #fff1}
.field::placeholder{color:#9e90a9}
.btn{border-color:rgba(242,210,238,.16);background:rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.055);font-weight:660;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s}
@media(hover:hover){.btn:hover:not(:disabled){background:rgba(248,208,238,.12);border-color:rgba(243,199,229,.28)}}
.btn.primary{background:linear-gradient(117deg,#f7bdd2 3%,#e4afcf 46%,#baabfa);color:#261b2e;box-shadow:0 7px 27px rgba(220,150,215,.2),inset 0 1px 0 #fff9;font-weight:800}
.btn.soft{background:linear-gradient(135deg,rgba(233,173,208,.16),rgba(170,139,218,.09));border-color:#edb4da3d}
.btn.ghost{color:#d8c4d7}
.btn.icon{border-radius:14px}
.notice{background:linear-gradient(130deg,rgba(142,103,141,.13),rgba(89,71,117,.14));border-color:rgba(231,182,223,.18);border-radius:15px}
.roomtop{margin-bottom:15px}.roomcode{font-size:15px;text-shadow:0 0 18px #e8adcf3e}.people{gap:7px;margin:12px 0 15px}
.person{background:rgba(234,204,230,.055);border:1px solid rgba(245,213,236,.14);box-shadow:inset 0 1px 0 #fff1;padding:9px 13px}
.theater-card{padding:18px}
.player-shell{border-radius:19px;background:#030206;border-color:#dbc4dd26;box-shadow:0 15px 38px #02010550}
.controls{padding-top:17px}.timeline{gap:11px}.timeline span{color:#e8d5e7;font-weight:550;font-size:12px}
.seek{height:5px;background:#4f4052}
.seek::-webkit-slider-thumb{height:17px;width:17px;border:3px solid #fff1f3;background:#f8b4ce;box-shadow:0 0 0 4px #edacc921,0 2px 8px #0007}
.actions .cluster{gap:7px}.play{border-radius:15px}
.quality{border-radius:13px}
.voice-bar{background:linear-gradient(133deg,rgba(197,142,194,.115),rgba(145,106,169,.09));border-color:rgba(233,180,215,.23);border-radius:17px;padding:11px 12px}
.voice-status{color:#f2dcee}.voice-actions .btn{border-radius:11px}
.turn-setup{background:linear-gradient(120deg,#ffffff05,#9775a610);border-color:#edb2ce24}
.turn-setup[open]{box-shadow:inset 0 1px 0 #fff1}
#status{margin:13px 2px 2px;color:#bbacc6}
.footnote{font-size:12px;color:#bca8be;padding-top:8px}
.footnote small{display:block;margin-top:3px;font-size:10px;color:#867c92}
#toast{background:rgba(40,30,53,.93);border-color:#f3c7db49;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
/* Overlay in the real Fullscreen API: no permanent toolbars, all controls fade out. */
#fullScreenZone.immersive{background:#000;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
#fullScreenZone.immersive:before{display:none}
#fullScreenZone.immersive .controls{padding-top:52px;will-change:opacity;transition:opacity .24s ease,transform .24s ease;background:linear-gradient(0deg,rgba(2,1,6,.96),rgba(5,3,9,.7) 64%,transparent);overflow:visible}
#fullScreenZone.immersive .btn:not(.primary){background:rgba(34,25,39,.65);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);border:1px solid rgba(255,255,255,.16)}
#fullScreenZone.immersive .voice-bar{background:rgba(20,15,25,.66);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 22px #0005;border-color:#f1deeb35}
#fullScreenZone.immersive .fullscreen-top-actions .btn{background:rgba(23,17,27,.72);border:1px solid #ffffff2b;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#fullScreenZone.immersive .fullscreen-top-actions .btn,#fullScreenZone.immersive .voice-actions .btn{white-space:nowrap}
#fullScreenZone.immersive.controls-idle .controls,#fullScreenZone.immersive.controls-idle .fullscreen-top-actions,#fullScreenZone.immersive.controls-idle .voice-bar{opacity:0!important;pointer-events:none!important;visibility:hidden;transform:translateY(12px)}
#fullScreenZone.immersive.controls-idle .fullscreen-top-actions,#fullScreenZone.immersive.controls-idle .voice-bar{transform:translateY(-9px)}
#fullScreenZone.immersive .player-shell{box-shadow:none}
#fullScreenZone.immersive .voice-bar .voice-explainer{display:none}
#fullScreenZone.immersive .btn:focus-visible{outline:2px solid white;outline-offset:2px}
@media(max-width:650px){.page{padding:13px 12px 34px}.top{padding:9px 11px;border-radius:20px}.brand{gap:9px}.brand h1{font-size:16px}.brand p{font-size:10px}.logo{width:40px;height:40px;font-size:20px;border-radius:14px}.badge{font-size:10px;padding:6px 8px}.card{padding:15px;border-radius:21px}.intro{margin:11px auto 20px}.two{gap:13px}.theater-card{padding:13px}.voice-actions{gap:5px}}
@media(max-width:350px){.brand h1{font-size:14px}.badge{font-size:9px}.actions{gap:4px}.quality{width:92px}.play{min-width:108px;font-size:12px}}
@media(max-height:460px) and (orientation:landscape){#fullScreenZone.immersive .controls{padding-top:24px}#fullScreenZone.immersive .voice-bar{max-width:67%}#fullScreenZone.immersive .fullscreen-top-actions .btn{font-size:11px}}
@media(prefers-reduced-motion:reduce){.btn,#fullScreenZone.immersive .controls,#fullScreenZone.immersive .voice-bar,#fullScreenZone.immersive .fullscreen-top-actions{transition:none!important}}
