/* Shared resident board and locally rendered, server-timed show transitions. */
.board-stage,.question,.daily-double-stage{scroll-margin-top:1rem}
.clue.display-tile{display:flex;align-items:center;justify-content:center;cursor:default;opacity:1;transform:none}
.clue.display-tile:not(.played){color:#ffe49a;background:linear-gradient(145deg,#204798,#152d6a);text-shadow:0 2px 2px #060b25}
.clue.display-tile.played{opacity:.36;color:#a9bada;box-shadow:none}
.clue.display-tile small{font-size:.52rem;letter-spacing:.2em;line-height:1.6}
.clue.display-tile:hover{transform:none;box-shadow:none}
.turn-prompt{display:block;font-size:.84rem;color:#d0ddf5;line-height:1.5;margin-top:.35rem}
.game-bar .your-turn{color:#fff2bd;border-color:#ecc773;background:#4e3b20}
.final-display{display:inline-flex;align-items:center;color:#ffe4a1;background:#23365c;border:1px solid #5972a1;border-radius:9px;padding:.6rem 1rem;font-size:.9rem;font-weight:750}
.final-display.played{opacity:.5}
.question-category{display:block;color:#bdcdec;font-size:.8rem;margin-top:.4rem}
.sound-previews{border-top:1px solid #50607555;margin-top:.8rem;padding-top:.65rem;font-size:.8rem}
.sound-previews summary{cursor:pointer;color:#d5dfef}.sound-previews .row{margin-top:.7rem}.sound-previews p{margin:.6rem 0 0}
.sound-previews button[aria-pressed=true]{background:#26483d!important;border-color:#77d5b5;color:#c1ffe9}
.board-filling .clue:not(.played)>span,.board-filling .clue:not(.played)>small{animation:board-value-fill .46s cubic-bezier(.2,.9,.35,1.15) var(--fill-delay) both}
.board-filling .clue:not(.played):after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent,#bddbff55,transparent);animation:board-tile-glint .5s ease-out var(--fill-delay) both}
@keyframes board-value-fill{0%{opacity:0;transform:scale(.45) rotateY(80deg)}55%{opacity:1;transform:scale(1.08) rotateY(0)}100%{opacity:1;transform:scale(1) rotateY(0)}}
@keyframes board-tile-glint{0%{opacity:0;transform:translateX(-110%)}30%{opacity:1}100%{opacity:0;transform:translateX(110%)}}
.daily-double-stage{position:relative;isolation:isolate;overflow:hidden;min-height:470px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.5rem 1.5rem;border:2px solid #d9b65d;border-radius:18px;background:radial-gradient(ellipse at 50% 20%,#3463db 0%,#10186f 45%,#070d35 82%);box-shadow:inset 0 0 80px #0c143e,0 0 45px #f7c45622}
.daily-double-stage:before{content:'';position:absolute;inset:12px;z-index:-1;border:1px solid #7f9cec55;border-radius:10px;background:repeating-linear-gradient(90deg,transparent 0 19.8%,#9fbcff17 19.8% 20%),repeating-linear-gradient(0deg,transparent 0 32.8%,#9fbcff17 32.8% 33.3%)}
.dd-category{color:#d7e5ff;font-size:.83rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}
.dd-mark{position:relative;line-height:.91;font-family:Impact,'Arial Narrow','Helvetica Neue',sans-serif;font-stretch:condensed;font-weight:900;letter-spacing:-.035em;transform:perspective(800px) rotateY(-6deg) rotateZ(-7deg);filter:drop-shadow(8px 9px 0 #8d471d) drop-shadow(0 0 18px #e6bc572e);animation:daily-double-reveal 4.5s cubic-bezier(.2,.75,.25,1) var(--dd-delay) both}
.dd-mark span,.dd-mark strong{display:block;background:linear-gradient(#fff7d0 8%,#ffe694 42%,#e8a527 70%,#fff0ae 100%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-stroke:1px #fff0b1}
.dd-mark span{font-size:clamp(3.5rem,9vw,6.6rem)}.dd-mark strong{font-size:clamp(4.2rem,12vw,8.7rem);font-weight:900}
.dd-value{display:flex;align-items:baseline;gap:.7rem;margin-top:1.9rem;font-size:2.3rem;font-weight:850;color:#ffe496;animation:dd-detail .65s ease calc(var(--dd-delay) + 950ms) both}
.dd-value span{font-size:.75rem;letter-spacing:.16em}.daily-double-stage p{margin:.35rem 0 .8rem;color:#e4edff;font-size:1rem}.dd-next{font-size:.81rem;color:#b6c9f0}.daily-double-stage button{margin-top:1rem;z-index:2}
.dd-light{position:absolute;inset:-50%;z-index:-1;background:conic-gradient(from 10deg,transparent 0deg,#c2ddff28 10deg,transparent 22deg,transparent 180deg,#fbe7ac20 195deg,transparent 210deg);animation:dd-lights 4.5s ease-out var(--dd-delay) both;pointer-events:none}.dd-light-right{transform:rotate(90deg);opacity:.7}
@keyframes daily-double-reveal{0%{opacity:0;transform:perspective(800px) translateZ(-750px) rotateY(85deg) rotateZ(-28deg)}12%{opacity:1}38%{transform:perspective(800px) translateZ(55px) rotateY(-12deg) rotateZ(-8deg)}58%,100%{opacity:1;transform:perspective(800px) translateZ(0) rotateY(-6deg) rotateZ(-7deg)}}
@keyframes dd-detail{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes dd-lights{from{opacity:0;rotate:-45deg}30%{opacity:1}to{opacity:.55;rotate:25deg}}
.dd-paused .dd-mark,.dd-paused .dd-value,.dd-paused .dd-light{animation:none}
/* The complete board fits a normal resident laptop display. */
@media(min-width:851px){
 .resident{padding-top:1rem}.resident .room-stage{min-height:100px;padding:.7rem 1.2rem}.resident .room-head{margin-bottom:1rem}.resident .room-wordmark{font-size:2rem;margin:.25rem 0}.resident .school-banner{font-size:.62rem;margin-bottom:.25rem}.resident .episode-title{font-size:.85rem;margin:.25rem 0}.resident .room-identity>.small-text{font-size:.68rem}.resident .room-art{width:260px;right:120px}.resident .code-value{font-size:1.3rem}.resident .code-box{padding:.5rem .7rem}
 .resident .my-team{padding:.65rem .9rem;margin-bottom:.75rem;font-size:.85rem}.resident .team-assigned{font-size:.66rem}.resident .scoreboard{margin:.5rem 0 1rem;gap:.6rem}.resident .team{padding:.55rem .8rem}.resident .team-score{font-size:1.5rem;margin-top:.2rem}.resident .team-name{font-size:.72rem}
 .resident .board{padding:.65rem;gap:.6rem}.resident .category{grid-template-rows:106px repeat(3,72px);gap:.5rem}.resident .category-head{padding:.5rem .4rem}.resident .category-head h2{font-size:.91rem;margin-bottom:.2rem}.resident .category-head p{font-size:.63rem;margin-bottom:0}.resident .topic-icon{width:25px;height:25px;margin-bottom:.35rem}.resident .clue{font-size:2.55rem;min-height:72px;padding:.2rem}.resident .game-bar{margin:.6rem 0}.resident .game-bar .helper{font-size:.73rem}.resident .final-row{margin-top:.6rem}.resident .footer{margin-top:1rem;padding-top:.5rem;font-size:.7rem}
 .resident .student-test-toolbar{padding:.7rem 1rem;margin:.75rem 0}.resident .student-test-toolbar p{font-size:.75rem;margin:.3rem 0 .6rem}.resident .student-test-toolbar button{min-height:36px;padding:.4rem .7rem;font-size:.8rem}.resident .student-test-toolbar .sound-previews{padding-top:.45rem;margin-top:.5rem}
}
@media(max-width:700px){.daily-double-stage{min-height:360px;padding:2rem 1rem}.dd-mark strong{font-size:clamp(3.5rem,13vw,6rem)}.dd-mark span{font-size:clamp(3rem,11vw,5rem)}.dd-value{font-size:1.9rem}.turn-prompt{font-size:.75rem;max-width:320px}.game-bar{gap:.6rem}.game-bar>.helper{max-width:140px}.final-row{gap:.8rem}.final-row>.helper{font-size:.72rem}.clue.display-tile small{font-size:.43rem}}
@media(prefers-reduced-motion:reduce){.board-filling .clue>span,.board-filling .clue>small,.board-filling .clue:after,.dd-mark,.dd-value,.dd-light{animation:none!important}.board-filling .clue:after{display:none}.dd-mark{transform:none;filter:drop-shadow(3px 3px 0 #8d471d)}}

.clue.display-tile>span{line-height:1.05}.clue.display-tile>small{margin-top:.15rem}
