:root{color-scheme:dark;--bg:#0b1220;--surface:#121f34;--raised:#1b2d49;--ink:#f2f5fa;--muted:#a8b7cc;--gold:#edba58;--blue:#8fb8fb;--line:#30415b;--success:#9be2ba;--danger:#ffb3b8;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a.button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.72rem 1rem;border:1px solid var(--line);border-radius:9px;background:var(--raised);color:var(--ink);font-weight:600;text-decoration:none;min-height:44px}button:hover,a.button:hover{background:#29415f}button:disabled{cursor:default;opacity:.4}button.primary,a.button.primary{background:var(--gold);border-color:var(--gold);color:#172033}button.primary:hover{background:#ffcd73}button.quiet,a.button.quiet{background:transparent}button.danger{color:var(--danger)}button.small{padding:.4rem .65rem;font-size:.9rem}input,select{width:100%;padding:.8rem;border:1px solid #53627a;border-radius:8px;background:#0c1729;color:var(--ink)}input:focus,select:focus{outline:2px solid var(--gold);outline-offset:2px}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}label{display:block;font-size:.95rem;color:var(--muted);margin-bottom:1rem}label input,label select{margin-top:.4rem}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em;line-height:1.12;margin-bottom:1rem}h2{font-size:1.5rem;letter-spacing:-.025em;line-height:1.25}h3{font-size:1.1rem}small,.small-text{font-size:.88rem}code{font-family:ui-monospace,monospace}header{border-bottom:1px solid #22314a}header .inner{max-width:1480px;margin:auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.brand{display:flex;align-items:center;gap:.8rem;color:var(--ink);font-weight:650;letter-spacing:-.02em}.brand img{width:34px;height:34px}.brand:hover{text-decoration:none}.toplinks{display:flex;align-items:center;gap:1rem}.toplinks a{font-size:.9rem}main{max-width:1320px;margin:0 auto;padding:2rem}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:650;margin-bottom:.8rem}.muted{color:var(--muted)}.row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:1rem}.card{padding:1.6rem;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:start}.home{max-width:1030px;padding-top:clamp(2rem,7vh,5rem)}.home h1{max-width:600px}.home-copy{padding:1.7rem 0}.home-copy p{max-width:440px;font-size:1.12rem;color:var(--muted)}.home-note{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.4rem;font-size:.95rem!important}.home .card{background:#16243b;padding:2rem}.room-input{letter-spacing:.22em;text-transform:uppercase;font-size:1.45rem;font-weight:650}.full{width:100%}.error{color:var(--danger);font-size:.95rem}.badge{display:inline-block;border:1px solid var(--line);border-radius:30px;padding:.27rem .7rem;color:var(--muted);font-size:.8rem}.connected{color:var(--success)}.disconnected{color:var(--danger)}.intro{margin-bottom:2rem}.board-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}.board-card{border-top:3px solid var(--gold);padding:1.7rem}.board-card.maroon{border-top-color:#df8fac}.board-card h2{font-size:1.75rem;max-width:370px}.board-card ul{color:var(--muted);padding-left:1.1rem;margin:1.2rem 0 1.7rem;line-height:1.9}.board-card select{width:100px}.board-card label{margin:0}.section-heading{margin-top:2.2rem}.sessions{display:grid;gap:.6rem}.session-row{border-bottom:1px solid var(--line);padding:.9rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.session-row p{margin:0}.room-head{display:grid;grid-template-columns:1fr auto;gap:1rem;margin-bottom:1.3rem}.room-head h1{font-size:clamp(1.45rem,2.6vw,2.2rem);margin-bottom:.4rem}.code-box{text-align:right}.code-value{letter-spacing:.16em;font-size:1.8rem;font-weight:650;color:var(--gold)}.host-strip{padding:.8rem 1rem;margin-bottom:1.4rem;background:#192a40;border-left:3px solid var(--gold);border-radius:5px}.host-strip p{margin:0;font-size:.9rem}.game-bar{display:flex;align-items:center;justify-content:space-between;margin:1.2rem 0;gap:1rem}.scoreboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.55rem;margin:1rem 0 1.3rem}.team{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:.7rem 1rem}.team.picking{border-color:var(--gold)}.team-name{font-size:.8rem;color:var(--muted)}.team-score{font-size:1.6rem;font-weight:650;line-height:1.2;font-variant-numeric:tabular-nums}.board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.category{display:grid;grid-template-rows:minmax(115px,auto) repeat(3,90px);gap:.65rem;min-width:0}.category-head{display:flex;flex-direction:column;justify-content:center;text-align:center;padding:.7rem .6rem;background:#14223a;border-radius:8px;border-bottom:3px solid #435b7d}.category-head h2{font-size:1rem;line-height:1.3;margin:0 0 .45rem}.category-head p{font-size:.78rem;color:var(--muted);margin:0}.clue{width:100%;min-height:90px;background:#1a3156;border-color:#345680;border-radius:8px;font-size:2.3rem;font-weight:650;color:var(--gold);font-variant-numeric:tabular-nums}.clue:hover{background:#2a4774;transform:translateY(-1px)}.clue.played{font-size:1rem;background:transparent;color:#7f92ad;border-color:#26364e;opacity:.6}.final-row{margin-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.final-row button{min-width:230px}.helper{font-size:.9rem;color:var(--muted)}.question{max-width:1000px;margin:0 auto}.question-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem;gap:1rem}.points{color:var(--gold);font-weight:650}.timer{font:650 1.35rem ui-monospace,monospace;background:#20324a;padding:.35rem .7rem;border-radius:7px;min-width:74px;text-align:center}.prompt{font-size:clamp(1.2rem,2.3vw,1.6rem);line-height:1.4;font-weight:500;margin-bottom:1.4rem}.options{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:1rem}.option{min-height:83px;text-align:left;display:flex;align-items:flex-start;justify-content:flex-start;gap:.8rem;background:var(--surface);padding:1rem;border:1px solid var(--line);border-radius:10px;font-size:1rem;font-weight:400}.option .letter{flex-shrink:0;background:#263b58;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:650}.option.selected{outline:2px solid var(--gold);opacity:1}.option.correct{border-color:var(--success);background:#18352e}.option.incorrect{border-color:#bc7482}.option:disabled{opacity:.8}.status-line{min-height:30px;margin:1rem 0;color:var(--muted)}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1.3rem;padding-top:1.1rem;border-top:1px solid var(--line)}.controls select{width:135px}.key{margin-top:1.2rem;border-top:1px solid var(--line);padding-top:1rem}.key summary{cursor:pointer;color:var(--gold);padding:.5rem 0}.rationale{border-left:3px solid var(--success);padding:1rem 1.2rem;background:#142b2a;border-radius:4px;margin:1rem 0}.rationale h3{color:var(--success);margin-bottom:.5rem}.rationale p:last-child{margin-bottom:0}.sources{font-size:.82rem;color:var(--muted);padding-left:1.2rem}.sources li{margin:.35rem 0}.discussion{margin:.9rem 0;font-size:1rem}.roster{margin-top:2rem}.roster summary{cursor:pointer;color:var(--muted);padding:.7rem 0}.roster-list{display:flex;gap:.5rem;flex-wrap:wrap}.roster-person{padding:.45rem .65rem;background:var(--surface);border-radius:7px;border:1px solid var(--line);font-size:.85rem}.roster-person.offline{opacity:.5}.roster-person.answered{border-color:#73b997}.lobby{padding:2rem 0;text-align:center}.lobby h2{font-size:2rem}.lobby p{max-width:640px;margin:1rem auto;color:var(--muted)}.my-team{padding:.7rem 1rem;background:#223752;border-radius:8px;margin:1rem 0}.visual{width:100%;max-width:720px;margin:0 auto 1rem;display:block;background:#0c1727;border-radius:8px}.visual text{font:14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;fill:#a8b7cc}.visual .signal{stroke:#a9e1c0;stroke-width:3;fill:none}.review{max-width:1000px}.review-item{border-bottom:1px solid var(--line);padding:1.4rem 0}.review-item summary{cursor:pointer;font-size:1.12rem}.review-item .prompt{font-size:1.1rem;margin-top:1rem}.review-item ol{padding-left:1.6rem}.review-item .correct-text{color:var(--success)}#notice{position:fixed;bottom:1.2rem;left:50%;transform:translateX(-50%);padding:0;max-width:90vw;background:#2f435f;border-radius:8px;box-shadow:0 8px 35px #0008;z-index:10}#notice.active{padding:.85rem 1.2rem}.loading{color:var(--muted);padding:5rem 2rem}.utility{margin-top:2rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.distribution{font-size:.8rem;color:var(--muted);display:block;margin-top:.3rem}.footer{font-size:.8rem;color:#91a2bb;margin-top:2.5rem;border-top:1px solid #22314a;padding-top:1rem}.login{max-width:480px;margin:3rem auto}.ended{text-align:center;margin:2rem auto;max-width:700px}.ended h2{font-size:2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen .clue:disabled:not(.played),.screen .final-row button:disabled:not(.quiet){opacity:1}
.topics{margin:1rem 0 1.3rem;color:var(--muted);font-size:.95rem}.topics summary{cursor:pointer}.resume-section>summary{cursor:pointer;font-weight:600}.resume-section:has(>summary){margin-top:1.3rem;margin-bottom:0}
.entry{max-width:1120px;padding-top:2.5rem}.entry .intro{margin-bottom:1.6rem}.entry h1{font-size:clamp(2.2rem,4vw,3.3rem)}.entry-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.teacher-entry{border-top:3px solid var(--gold)}.teacher-entry>p{color:var(--muted)}.teacher-entry .button{margin:.6rem 0 1rem}.entry-steps{display:grid;gap:.65rem;border-top:1px solid var(--line);margin-top:1.6rem;padding-top:1.3rem;color:var(--muted)}.quick-steps{display:flex;gap:1.6rem;flex-wrap:wrap;list-style:none;padding:0;margin:1.6rem 0 0}.quick-steps li{display:flex;gap:.65rem;align-items:center;color:var(--muted)}.quick-steps b,.host-guide h2>span{display:inline-flex;align-items:center;justify-content:center;background:#243753;color:var(--gold);border-radius:50%;width:28px;height:28px;flex-shrink:0}.board-secondary{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:1rem;margin:1.1rem 0;font-size:.9rem}.settings summary,.past-sessions summary{cursor:pointer;color:var(--muted)}.settings label{margin-top:.7rem}.settings .helper{max-width:200px}.resume-section{margin:0 0 1.8rem;padding:1.2rem 1.5rem;border:1px solid #5b795f;background:#142a27;border-radius:12px}.resume-section h2{font-size:1.15rem;margin-bottom:.3rem}.try-note{color:var(--muted);font-size:.9rem;max-width:800px;margin:1.3rem 0}.past-sessions{margin-top:2rem}.host-guide{border:1px solid #425570;border-radius:12px;background:#142238;margin-bottom:1.2rem;padding:1.1rem 1.3rem}.host-guide-title{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:1rem}.host-guide-title strong{color:var(--gold)}.host-guide-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1.3rem}.host-guide h2{font-size:1rem;display:flex;gap:.6rem;align-items:center;margin-bottom:.7rem}.host-guide h2>span{font-size:.9rem;width:25px;height:25px}.host-guide p{font-size:.9rem;margin:.5rem 0 0}.join-tools{display:flex;flex-wrap:wrap;gap:.5rem}.join-tools input{font-size:.8rem;min-width:0;padding:.55rem}.display-note{font-size:.88rem;color:var(--muted);border-left:3px solid var(--blue);padding:.6rem 1rem;margin-bottom:1rem}.display-note .button{margin-left:.6rem}.control-hint{flex:1 0 100%;margin:0 0 .15rem;color:var(--muted);font-size:.95rem}.controls{position:static;background:#0b1220;padding:1rem;border:1px solid var(--line);border-radius:10px;box-shadow:0 -5px 20px #0003;z-index:2}.controls .primary{order:0}.toplinks{flex-wrap:wrap;justify-content:flex-end}.brand{flex-shrink:0}.entry .helper{margin-bottom:0}
@media(max-width:900px){.host-guide-grid{grid-template-columns:1fr 1fr}.host-guide-grid>div:last-child{grid-column:1/-1}.entry-cards{grid-template-columns:1fr}.entry{padding-top:1.5rem}.entry-steps{display:none}}
@media(max-width:520px){.host-guide-grid{grid-template-columns:1fr}.host-guide{padding:1rem}.host-guide-title .helper{display:none}.quick-steps{gap:.75rem}.quick-steps li{font-size:.88rem}.brand{flex-shrink:1}.toplinks a.button{font-size:.8rem;padding:.45rem .6rem}.host-guide-grid>div:last-child{grid-column:auto}.controls{padding:.8rem}}
@media(min-width:1550px){.screen{max-width:1480px}.screen .clue{font-size:2.7rem}.screen .category{grid-template-rows:minmax(110px,auto) repeat(3,105px)}}
@media(max-width:850px){main{padding:1.3rem}.split{grid-template-columns:1fr}.home{padding-top:1rem}.home-copy{padding-bottom:0}.home-copy p{max-width:none}.home-note{display:none}.board-cards{grid-template-columns:1fr}.category{grid-template-rows:minmax(130px,auto) repeat(3,72px)}.clue{min-height:72px;font-size:1.7rem}.category-head h2{font-size:.88rem}.category-head p{display:none}.board{gap:.4rem}.category{gap:.4rem}.toplinks{gap:.5rem}.scoreboard{grid-template-columns:repeat(3,minmax(0,1fr))}.options{grid-template-columns:1fr}}
@media(max-width:520px){header .inner{padding:.85rem 1rem}.brand{font-size:.9rem}.brand img{width:28px;height:28px}.board{grid-template-columns:1fr}.category{grid-template-columns:1.5fr repeat(3,1fr);grid-template-rows:auto;gap:.35rem}.category-head{min-height:72px;border-bottom:0;border-left:3px solid #435b7d;padding:.5rem}.category-head h2{font-size:.82rem;margin:0;overflow-wrap:anywhere}.clue{font-size:1.35rem}.room-head{grid-template-columns:1fr}.code-box{text-align:left}.code-value{font-size:1.4rem}.room-head .eyebrow{margin-bottom:.3rem}.session-row{align-items:flex-start;flex-direction:column}.final-row{align-items:flex-start;flex-direction:column}.card,.home .card{padding:1.2rem}.team{padding:.6rem}.team-score{font-size:1.25rem}.question-head{align-items:flex-start}.controls button{flex:1 1 auto}.prompt{font-size:1.13rem}.home h1{font-size:2.1rem}.roster{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;transform:none!important}#notice{left:1rem}}
@media print{body{color:#111;background:white}.review{max-width:none}header,.no-print,#notice,.footer{display:none!important}.review-item{break-inside:avoid;border-color:#bbb}.review-item details{display:block}.review-item .rationale{background:white;color:#111}.rationale h3,.correct-text{color:#165b3c!important}.muted,.eyebrow,.sources,.helper{color:#444}.review-item .prompt{color:#111}details>div{display:block}.review-item summary{font-weight:bold}.sources a{color:#111}}
