:root{color-scheme:dark;font-family:'DM Sans',sans-serif;background:#101d2b;color:#f8f5ed}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 20%,#254453 0,transparent 65%)}main{max-width:1120px;margin:auto;padding:24px 32px}header{display:flex;align-items:center;justify-content:space-between;gap:20px}header a{font-size:11px;letter-spacing:2px;color:#add7ce;text-decoration:none}button,select{font:inherit;border:1px solid #526472;background:#203443;color:#fff;border-radius:9px;padding:11px 17px;cursor:pointer}button:hover{background:#365360;border-color:#9fd6c5}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffd27c;outline-offset:3px}button:disabled{opacity:.4;cursor:default}.heading{text-align:center;margin:34px 0 26px}.eyebrow{font-size:10px;letter-spacing:3px;color:#add7ce}h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(42px,6vw,72px);letter-spacing:-4px;margin:8px 0}h1 em{font-style:normal;color:#ffd27c}h1 span{font-size:32px;vertical-align:top;margin-left:12px;color:#a4d6c3}.heading>p:last-child{color:#b5c5cf;font-size:14px}.scoreboard{display:grid;grid-template-columns:1fr 180px 1fr;gap:16px;align-items:center;max-width:810px;margin:0 auto 24px}.team{border:1px solid #587180;background:#213949;border-radius:14px;padding:12px 18px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.team input{background:transparent;color:#fff;border:0;font:600 18px 'DM Sans',sans-serif;width:100%;min-width:0}.team strong{font:700 38px 'Space Grotesk',sans-serif;color:#ffd27c}.team button{grid-column:1/-1;padding:7px;font-size:12px;background:#162c39}.pot{text-align:center}.pot span{font-size:10px;letter-spacing:2px;color:#afc5cd}.pot strong{display:block;font:700 48px 'Space Grotesk',sans-serif}.pot small{color:#a4d6c3}.game{background:#f5f0e4;color:#172e3a;border-radius:20px;padding:24px 30px;box-shadow:0 15px 50px #0003}.round-line{display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px;letter-spacing:2px;font-weight:700;color:#50716f}h2{font:600 clamp(22px,3vw,32px)/1.25 'Space Grotesk',sans-serif;text-align:center;margin:20px auto 24px;max-width:800px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answer{min-height:70px;display:flex;align-items:center;text-align:left;gap:12px;background:#1c3d4b;border:2px solid #2c5360;font-weight:600;font-size:18px;box-shadow:0 3px 0 #0d2530}.answer .number{border:1px solid #6f919a;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0;color:#fbd388}.answer .label{flex:1}.answer .points{font-size:24px;color:#ffd27c}.answer.hidden{justify-content:center;background:repeating-linear-gradient(135deg,#1c3d4b,#1c3d4b 8px,#20414f 8px,#20414f 16px)}.answer.hidden .number{background:#132e3b}.answer.shown{background:#2c5a59}.bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;min-height:30px;gap:16px}#strikes{font-size:25px;letter-spacing:8px;color:#bd433b}#status{font-size:13px;color:#435f63}.controls{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:22px 0}.primary{background:#f2c777;color:#182e3a;border-color:#f2c777;font-weight:700}.primary:hover{background:#ffda97}details{max-width:850px;margin:26px auto;color:#b8cbd1;font-size:14px;line-height:1.65}summary{cursor:pointer;color:#e6eceb}details button{margin:12px}footer{text-align:center;color:#91a7b3;font-size:10px;margin:30px 0}dialog{max-width:650px;background:#f5f0e4;color:#172e3a;border:0;border-radius:18px;padding:30px;line-height:1.7}dialog::backdrop{background:#081321bb}dialog li{margin-bottom:10px}@media(max-width:650px){main{padding:18px 14px}header{flex-wrap:wrap}header button{font-size:12px;padding:8px}.heading{margin:25px 0}h1{letter-spacing:-2px}.scoreboard{grid-template-columns:1fr 75px 1fr;gap:7px}.team{padding:9px;display:flex;flex-direction:column}.team input{font-size:14px;text-align:center}.team strong{font-size:28px}.pot strong{font-size:34px}.pot span{font-size:8px}.game{padding:18px 14px}.answers{grid-template-columns:1fr}.answer{min-height:55px;font-size:16px}.controls button{font-size:12px;padding:10px}.bottom{align-items:flex-start}footer{line-height:1.8}}

.scoreboard{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));max-width:none}.round-total{grid-column:1/-1;text-align:center;color:#ffd27c;font-weight:700}.active-team{border-color:#ffd27c}.host-panel{background:#182f3f;border:1px solid #46616c;border-radius:18px;padding:24px;margin:24px 0}.host-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.host-title h2{text-align:left;margin:5px 0}.host-hint,#window-status{font-size:13px;color:#afc5cd}.host-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.host-grid h3{font-size:15px}.host-grid h3 span{font-size:11px;color:#ffd27c;margin-left:10px}.private-answer{display:block;width:100%;text-align:left;margin:7px 0;min-height:47px}.preview-wrap{aspect-ratio:1.3;overflow:hidden;position:relative;border:1px solid #68818c;border-radius:12px}.preview-wrap iframe{width:1100px;height:846px;transform:scale(.4);transform-origin:top left;border:0;pointer-events:none}.team-setup{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:20px;font-size:13px}.team-setup select{margin-left:6px}.team-setup span{color:#b8cbd1}.host .heading{margin:25px 0}.host .heading h1{font-size:48px}.host>.game{display:none}.audience .controls,.audience details,.audience #help{display:none}.audience .answer{cursor:default}.audience .heading{margin:20px 0}.audience .team{display:flex;justify-content:space-between}.audience .game{margin-top:16px}.audience .team span{font-weight:600}.audience:has(:fullscreen) header{opacity:.4}@media(min-width:1500px){.audience main{max-width:1550px}.audience .answer{min-height:105px;font-size:28px}.audience h2{font-size:40px}}@media(max-width:800px){.host-grid{grid-template-columns:1fr}.host-title{flex-wrap:wrap}.preview-wrap{height:340px;aspect-ratio:auto}.scoreboard{grid-template-columns:repeat(2,1fr)}}

.host main>.game{display:none}.host #host-question{font-size:24px;margin:20px 0;text-align:left}.host .controls{margin-bottom:0}.preview-wrap{aspect-ratio:1100/846}@media(max-width:800px){.preview-wrap{height:auto;aspect-ratio:1100/846}}
.host-grid>section{min-width:0}.preview-wrap{width:100%;min-width:0}.host-panel{min-width:0}

#strike-flash{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#101d2b99;color:#ff514a;font:bold clamp(100px,20vw,280px) sans-serif;letter-spacing:20px;text-shadow:0 8px 0 #731a19;opacity:0;pointer-events:none;transition:opacity .12s}#strike-flash.visible{opacity:1}header>div{display:flex;gap:8px}

#strike-flash{display:flex;align-items:center;justify-content:center;gap:3vw;letter-spacing:0}#strike-flash span{display:grid;place-items:center;border:10px solid currentColor;line-height:1;width:24vw;height:24vw;max-width:280px;max-height:280px;font-size:clamp(60px,19vw,240px);box-shadow:0 5px 0 #731a19}.answer{position:relative}.flipping{animation:tile-turn .6s ease-in-out}.flip-cover{position:absolute;inset:0;display:grid;place-items:center;background:#1c3d4b;border-radius:7px;color:#ffd27c;animation:cover-hide .6s steps(1,end) forwards}@keyframes tile-turn{0%{transform:perspective(700px) rotateX(0)}49%{transform:perspective(700px) rotateX(90deg)}50%{transform:perspective(700px) rotateX(-90deg)}100%{transform:perspective(700px) rotateX(0)}}@keyframes cover-hide{0%{opacity:1}50%,100%{opacity:0}}@media(prefers-reduced-motion:reduce){.flipping,.flip-cover{animation:none}.flip-cover{display:none}#strike-flash{transition:none}}

.audio-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;background:#102534;border:1px solid #54737a;border-radius:12px}.audio-panel p{width:100%;margin:0;color:#b8cbd1;font-size:13px}.audio-panel button{font-size:13px;padding:8px 12px}
/* Classic studio board and dimensional strikes. */
.audience{background:radial-gradient(ellipse at 50% 10%,#184eb7 0,#091d59 55%,#040a24 100%);font-family:Arial,Helvetica,sans-serif;min-height:100vh}
.audience main{max-width:1400px;padding:16px 36px}
.audience .heading{margin:12px 0 18px}
.audience .heading .eyebrow,.audience .heading>p:last-child{display:none}
.audience h1{display:inline-block;font-family:Georgia,serif;font-weight:900;font-size:clamp(30px,4vw,56px);letter-spacing:-2px;text-transform:uppercase;color:#ffdb72;text-shadow:2px 3px #663111,0 0 18px #e7ad3655;margin:0;padding:7px 40px;border:3px solid #e7b65c;border-radius:50%;background:radial-gradient(ellipse,#265fbb,#081a50);box-shadow:0 0 0 3px #573e25,0 0 0 5px #ffe29b}
.audience h1 em{color:inherit}.audience h1>span{display:none}
.audience .scoreboard{gap:10px;margin-bottom:14px}.audience .team{padding:8px 18px;background:linear-gradient(#275cb6,#0c2766);border:2px solid #b6c5de;border-radius:5px;box-shadow:inset 0 1px #fff,0 3px 0 #02071b}.audience .team strong{color:#fff;font-family:Arial,sans-serif;font-size:32px}.audience .active-team{border-color:#ffe197;box-shadow:0 0 12px #ffbb4055}.audience .round-total{font-family:monospace;font-size:22px;color:#ffe79a;text-shadow:0 0 8px #ffbf42}
.audience .game{position:relative;border:7px solid #dfac4d;border-radius:28px;background:radial-gradient(circle,#547dda 1px,transparent 2px) 0 0/12px 12px,#0c1e52;padding:18px 26px;box-shadow:0 0 0 3px #fff0b1,inset 0 0 0 3px #704611,0 0 0 10px #35261d,0 16px 40px #0009;color:white}
.audience .round-line{color:#ffe6a3;font-size:11px}.audience h2{font-family:Arial,sans-serif;font-size:clamp(22px,2.7vw,34px);font-weight:700;text-shadow:1px 2px #000;margin:14px auto 20px}
.audience .answers{grid-template-rows:repeat(3,1fr);grid-auto-flow:column;gap:12px;background:#020719;border:5px solid #8190a5;outline:2px solid #c6d3e7;padding:10px;border-radius:5px;perspective:900px}
.audience .answer{min-height:76px;background:linear-gradient(#71a5f5 0,#2e6bd2 48%,#1745a3 51%,#092568 100%);border:4px ridge #d2dae5;border-radius:0;box-shadow:inset 0 2px 5px #fff5,0 3px 0 #000;font:bold clamp(17px,1.8vw,25px) Arial,sans-serif;color:#fff;text-transform:uppercase;text-shadow:2px 2px 2px #061029}
.audience .answer.hidden,.audience .flip-cover{background:linear-gradient(#79a9f4,#3979dc 45%,#1a52b6 50%,#0b2b79)}
.audience .answer .number{border:0;background:radial-gradient(ellipse,#124391,#061b55);width:58px;height:42px;border-radius:50%;font:bold 34px Georgia,serif;color:#fff;box-shadow:0 3px 5px #02071980}.audience .answer.shown .number{display:none}.audience .answer .points{color:#fff;align-self:stretch;display:grid;place-items:center;border-left:3px ridge #d1dcf0;min-width:62px;margin:-11px -17px -11px 0;padding:8px;font-size:30px;background:#071d54aa}
.audience .bottom{margin-top:16px}.audience #status{color:#edf3ff;font-size:14px}.audience footer{margin:20px 0 0;color:#9dacd2}
#strikes{display:flex;gap:7px;letter-spacing:0}.strike-slot{display:block;width:38px;height:38px;border:2px solid #798aa2;border-radius:5px;background:#071736}.strike-slot.earned{border-color:transparent;background:transparent}.strike-slot img{width:100%;height:100%;display:block}
#strike-flash{background:transparent;gap:0;transition:none;filter:none}
#strike-flash img{width:28vw;max-width:360px;height:auto;filter:drop-shadow(0 5px 2px #0009)}
#strike-flash.visible{animation:strike-entrance .13s ease-out}
@keyframes strike-entrance{from{transform:scale(1.12);opacity:.3}to{transform:scale(1);opacity:1}}
@media(min-width:1500px){.audience main{max-width:1550px}.audience .answer{min-height:105px}}
@media(max-width:650px){.audience main{padding:14px}.audience .game{padding:14px 10px;border-width:4px}.audience .answers{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row;gap:8px;padding:6px}.audience .answer{min-height:58px;font-size:16px}.audience .answer .points{font-size:23px;min-width:45px}.audience h1{padding:7px 22px}.audience .team{padding:6px}.audience .round-total{font-size:18px}.audience .bottom{align-items:center}}
@media(prefers-reduced-motion:reduce){#strike-flash.visible{animation:none}}
/* Solid reading surfaces keep the studio lights behind the text. */
.audience .round-line{align-items:center;gap:12px;flex-wrap:wrap}
.audience .round-line>span{display:inline-block;background:#071633;color:#ffe9ae;border:1px solid #dbb66a;border-radius:6px;padding:9px 13px;font-size:13px;font-weight:700;letter-spacing:1.3px;line-height:1.35;box-shadow:0 2px 5px #0006}
.audience #question{max-width:none;background:#071633;border:2px solid #b8c9e5;border-radius:9px;padding:16px 22px;color:#fff;text-shadow:none;box-shadow:0 3px 8px #0007;line-height:1.25}
@media(max-width:650px){.audience #question{padding:13px 12px}.audience .round-line>span{font-size:11px;padding:7px 9px;letter-spacing:.7px}}
@media(min-width:801px) and (max-height:850px){.audience main{padding-top:10px}.audience .heading{margin:6px 0 10px}.audience h1{font-size:36px}.audience .team{padding:5px 14px}.audience .team strong{font-size:27px}.audience .scoreboard{gap:6px;margin-bottom:8px}.audience .game{padding-top:12px;padding-bottom:12px}.audience .answer{min-height:60px}.audience #question{margin:10px auto 14px;padding:12px 18px;font-size:26px}.audience .bottom{margin-top:12px}.audience footer{margin-top:12px}}
/* Keep team-turn and round-result messages readable over the board lights. */
.audience #status{display:block;background:#071633;color:#fff;border:1px solid #dbb66a;border-radius:6px;padding:9px 13px;font-size:14px;font-weight:600;line-height:1.4;text-shadow:none;box-shadow:0 2px 5px #0006;max-width:75%;overflow-wrap:anywhere}
.audience #strikes{flex-shrink:0}
@media(max-width:650px){.audience .bottom{flex-wrap:wrap}.audience #status{max-width:100%;font-size:12px;padding:7px 9px}}
/* Fresh generated packs stay on the facilitator's desk until explicitly started. */
.generation-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin-bottom:22px;background:linear-gradient(120deg,#102b3c,#264c53);border:1px solid #92aa83;border-radius:12px}.generation-panel strong{font-size:17px}.generation-panel p{font-size:12px;line-height:1.5;color:#bad3cf;margin:7px 0 0}.generation-panel button{flex-shrink:0;font-size:13px}.audience #new-game{display:none}#new-game{width:min(800px,calc(100% - 28px));max-width:800px;max-height:88dvh;overflow:auto}#new-game h2{text-align:left;margin:5px 0 12px;font-size:28px}#new-game .eyebrow{color:#4d6a62;letter-spacing:1.8px;font-size:9px;margin:0}#new-game .new-game-heading{display:flex;align-items:flex-start;gap:20px;justify-content:space-between}#new-game .new-game-heading button{font-size:12px;padding:8px 13px}#new-game>p{font-size:14px}#new-game label{display:block;font-weight:700;font-size:13px;margin-bottom:8px}#generation-focus{width:100%;background:white;color:#173442;border-color:#839b98;text-overflow:ellipsis}#new-game .generation-note{font-size:12px;color:#4e6666}#generation-message{padding:13px 16px;background:#e4e9de;border-radius:9px;color:#294c43;line-height:1.6}.generation-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}#draft-preview{border-top:1px solid #bac9bd;padding-top:12px;margin-top:22px}#draft-preview>p{font-size:13px}#draft-rounds details{color:#294447;margin:10px 0;padding:12px;background:#fffaf0;border:1px solid #c6cfbf;border-radius:9px;font-size:13px}#draft-rounds summary{color:#193c42;font-weight:600}#draft-rounds li{margin-bottom:3px}#draft-rounds p{font-size:12px}#start-generated{margin-top:15px;width:100%}@media(max-width:650px){.generation-panel{align-items:stretch;flex-direction:column;padding:16px}.generation-panel button{width:100%}#new-game{padding:22px 18px}#new-game h2{font-size:22px}.generation-actions button{width:100%;font-size:12px}}[hidden]{display:none!important}
