/* v10: tasteful, static cinematic glass. No filters on the video surface. */
html[data-theme]{--glass-outline:rgba(255,255,255,.18);--glass-light:rgba(255,255,255,.12)}
html[data-theme] .ambient-stage{position:fixed;pointer-events:none;overflow:hidden}
html[data-theme] .top,html[data-theme] .card{
  border-color:color-mix(in srgb,var(--theme-a) 23%,rgba(255,255,255,.15));
  box-shadow:0 18px 47px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.10);
}
html[data-theme] .top{background:linear-gradient(138deg,rgba(34,37,55,.65),rgba(21,20,35,.59));}
html[data-theme="evening"] .top{background:linear-gradient(138deg,rgba(58,44,40,.58),rgba(25,20,33,.62))}
html[data-theme="romantic"] .top{background:linear-gradient(138deg,rgba(65,39,65,.55),rgba(27,20,42,.61))}
html[data-theme] .entry-card{background:linear-gradient(146deg,rgba(255,255,255,.072),rgba(32,30,46,.68) 42%,rgba(19,21,35,.79))}
html[data-theme="evening"] .entry-card{background:linear-gradient(145deg,rgba(100,72,46,.31),rgba(33,27,42,.74) 47%,rgba(20,17,27,.83))}
html[data-theme="romantic"] .entry-card{background:linear-gradient(145deg,rgba(104,60,95,.30),rgba(44,30,58,.70) 47%,rgba(26,20,39,.84))}
html[data-theme] .entry-card .card-kicker{color:var(--theme-a)}
html[data-theme] .entry-card .step-number{background:var(--theme-glow);border:1px solid var(--theme-rim);border-radius:9px}
html[data-theme] .entry-card .btn.primary{min-height:48px;border-radius:15px}
html[data-theme] .field,html[data-theme] #createTheme,html[data-theme] #createCapacity{
 background:rgba(10,13,25,.52);border-color:rgba(255,255,255,.18);border-radius:13px;
 color:#f9f5ff;transition:border-color .17s,background-color .17s;
}
html[data-theme] .field:focus-visible,html[data-theme] select:focus-visible,html[data-theme] button:focus-visible{outline:2px solid var(--theme-a);outline-offset:2px}
html[data-theme] select option{background:#19192a;color:white}
html[data-theme] .room-setup-settings{gap:6px 9px;margin-top:14px}
html[data-theme] .room-setup-settings>label{margin-top:11px!important}
html[data-theme] .theme-samples{grid-column:1/-1;gap:9px;margin:8px 0 3px}
html[data-theme] .theme-samples button{
 position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:2px;min-height:93px;padding:11px 5px 12px;overflow:hidden;border:1px solid rgba(255,255,255,.20);
 border-radius:15px;color:white;text-shadow:0 1px 6px rgba(0,0,0,.40);background-size:cover;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transition:border-color .2s,box-shadow .2s,transform .2s;
}
html[data-theme] .theme-samples button::before{content:"";position:absolute;inset:-30%;z-index:-1;pointer-events:none;opacity:.7;transform:rotate(-17deg);
 background:radial-gradient(ellipse at 22% 20%,rgba(255,255,255,.22),transparent 40%),linear-gradient(112deg,transparent 33%,rgba(255,255,255,.075) 40%,transparent 52%)}
html[data-theme] .theme-samples button.selected{border-color:var(--theme-a);box-shadow:0 0 0 2px var(--theme-glow),inset 0 1px 0 rgba(255,255,255,.22)}
html[data-theme] .theme-samples button .theme-glyph{font-size:23px;line-height:1.2;font-weight:600}
html[data-theme] .theme-samples button strong{font-size:12px;line-height:1.5}
html[data-theme] .theme-samples button small{font-size:10px;font-weight:400;color:rgba(255,255,255,.83)}
html[data-theme] .theme-samples button.sample-general{background:linear-gradient(137deg,#385f80,#16263e 70%,#0c1727)}
html[data-theme] .theme-samples button.sample-evening{background:linear-gradient(137deg,#926638,#35253d 70%,#1a1426)}
html[data-theme] .theme-samples button.sample-romantic{background:linear-gradient(137deg,#9b5b85,#432e63 70%,#241a39)}
@media(hover:hover){html[data-theme] .theme-samples button:hover{transform:translateY(-2px);border-color:var(--theme-a)}}
.room-error[hidden]{display:none!important}
.room-error{font-size:12px;line-height:1.7;color:#ffe4d4;background:rgba(148,55,57,.20);border:1px solid rgba(255,181,173,.35);border-radius:12px;padding:12px 13px;margin:12px 0 0;overflow-wrap:anywhere}
html[data-theme] .room-theme-toolbar{background:rgba(255,255,255,.045);border-color:var(--theme-rim);border-radius:14px;padding:11px 12px}
html[data-theme] .room-theme-toolbar select{background:#202130;border-radius:11px;border-color:var(--theme-rim)}
html[data-theme] .room-code,.roomcode{font-variant-numeric:tabular-nums}
/* Critical: the player and immersive mode should never be blurred or cropped by the glass theme. */
html[data-theme] .player-shell,html[data-theme] .player-shell video{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important}
html[data-theme] #fullScreenZone.immersive,html[data-theme] #fullScreenZone.immersive .player-shell{background:#000!important;border:0;box-shadow:none}
html[data-theme] #fullScreenZone.immersive .player-shell video{object-fit:contain}
html[data-theme] #fullScreenZone.immersive.video-cover .player-shell video{object-fit:cover}
@media(max-width:650px){
 html[data-theme] .top,html[data-theme] .card{-webkit-backdrop-filter:blur(12px) saturate(1.12);backdrop-filter:blur(12px) saturate(1.12)}
 html[data-theme] .theme-samples button{min-height:81px;padding:8px 4px 9px}
 html[data-theme] .theme-samples button .theme-glyph{font-size:20px}
}
@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
 html[data-theme] .entry-card{background:#1a1e31}html[data-theme="evening"] .entry-card{background:#28202c}html[data-theme="romantic"] .entry-card{background:#30213a}
}
@media(prefers-reduced-motion:reduce){html[data-theme] .theme-samples button{transition:none}}
.custom-room-title[hidden]{display:none!important}
