/* Quiet LED architecture frames the game; all motion is tied to finite events. */
body{--stage-accent:#ff8419;--stage-glow:#ff841926;--stage-secondary:#a2bcff}
body[data-school=nmsu]{--stage-accent:#ed577e;--stage-glow:#b925512e;--stage-secondary:#c9b9ee}
.room-stage{box-shadow:inset 0 0 0 1px var(--stage-glow),0 12px 55px #0005;border-color:var(--stage-accent);background-image:radial-gradient(circle at 2px 2px,#9abaff15 1px,transparent 1.5px),linear-gradient(115deg,#141b31,#0b1230);background-size:14px 14px,auto}
.board-stage{position:relative;border-radius:18px;padding:1rem;background:linear-gradient(145deg,#131a32cc,#090e20);border:1px solid var(--stage-glow);box-shadow:0 18px 60px #0003}
.board{box-shadow:0 0 0 1px var(--stage-glow),inset 0 1px 0 #ffffff12!important}
.category-head{background:radial-gradient(ellipse at 50% 0,#324e85,#13244a 80%)!important;border-bottom-color:var(--stage-accent)!important}
.clue:not(.played){background:linear-gradient(145deg,#203d7d,#102453);box-shadow:inset 0 1px 0 #b4d0ff20,inset 0 -4px 10px #0003}
.question{box-shadow:0 0 0 1px var(--stage-glow),0 16px 60px #0004!important}
.question.tile-enter{animation:none}
.tile-flight{position:fixed;z-index:1000;pointer-events:none;display:grid;place-items:center;border:2px solid #e6c276;border-radius:12px;color:#ffe3a0;background:linear-gradient(140deg,#25488d,#111c48);font:800 clamp(2rem,5vw,5rem)/1 system-ui;box-shadow:0 0 40px #89baff55;contain:layout paint}
.podium-deck{position:relative;margin-top:1.2rem}.podium-identity{display:flex;align-items:center;gap:.5rem;min-width:0}.podium-identity>div{min-width:0}.team-badge{display:block;flex:0 0 42px;width:42px;height:42px}.team-nickname{font-size:.68rem;font-weight:650;line-height:1.25;color:var(--podium-color);margin-top:.25rem;overflow-wrap:anywhere}.studio-podiums .team{min-width:0;padding:.85rem .75rem;background:linear-gradient(150deg,#213252,#0d172c);border-top:3px solid var(--podium-color)}.team-name{overflow-wrap:anywhere;line-height:1.25}.team-number{font-size:.7rem;white-space:nowrap;flex-shrink:0}.team-score{position:relative}.response-lights{display:flex;flex-wrap:wrap;gap:5px;min-height:8px;margin:.45rem 0}.response-lights i{display:block;width:7px;height:7px;border-radius:50%;background:#263650;border:1px solid #536480}.response-lights .lit{background:var(--podium-color);box-shadow:0 0 7px var(--podium-color);border-color:var(--podium-color)}
.point-gain{position:absolute;right:0;top:.6rem;font-size:1.1rem;color:#b4f4cc;opacity:0;font-weight:800;pointer-events:none}.new-leader{position:absolute;z-index:3;top:-2rem;right:.5rem;max-width:100%;padding:.4rem .85rem;border-radius:20px;background:#293752;border:1px solid #ffd178;color:#ffe3a3;font-size:.8rem;opacity:0;pointer-events:none}
.winner-actions{justify-content:center}.winner-stage .team-badge{width:65px;height:65px;margin:auto}.finish-podiums{flex-wrap:wrap}.finish-podium{min-width:85px}.board-stage .game-bar{margin-top:0}
@media(max-width:1000px){.studio-podiums{grid-template-columns:repeat(3,minmax(0,1fr))!important}.team-badge{flex-basis:36px;width:36px;height:36px}}
@media(max-width:600px){.studio-podiums{grid-template-columns:repeat(2,minmax(0,1fr))!important}.board-stage{padding:.5rem}.studio-podiums .team{padding:.65rem}.new-leader{top:-2.5rem;font-size:.7rem}.team-nickname{font-size:.65rem}.team-name{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.tile-flight{display:none}.new-leader,.point-gain{display:none}.question.tile-enter{animation:none!important}.podium-shine{display:none}}

.champions-preview{background:#101a31;color:#eef2fa;border:1px solid #e2c071;border-radius:18px;width:min(950px,94vw);max-height:94vh;padding:1.2rem}.champions-preview::backdrop{background:#030815dd}.champions-preview h2{font-size:1.2rem;margin:0 0 .8rem}.champions-preview img{display:block;width:100%;max-height:72vh;object-fit:contain;margin-bottom:1rem}.champions-preview .button{margin-right:.6rem}

.board-stage{overflow:hidden}.stage-spotlight{position:absolute;inset:0 auto 0 0;width:35%;pointer-events:none;background:linear-gradient(90deg,transparent,#bcd5ff24,transparent);z-index:1}
