@font-face{font-family:Anton;src:url(assets/fonts/anton-400.woff2)}@font-face{font-family:Manrope;src:url(assets/fonts/manrope-400.woff2);font-weight:400}@font-face{font-family:Manrope;src:url(assets/fonts/manrope-700.woff2);font-weight:700}@font-face{font-family:Manrope;src:url(assets/fonts/manrope-800.woff2);font-weight:800}
:root{color-scheme:dark;--lime:#c4ee81;--purple:#b093d5;--white:#f1e9de;--line:#bcb0cf30;--panel:#110d18ed}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#08060e;color:var(--white);font-family:Manrope,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #d6ff99;outline-offset:4px}[hidden]{display:none!important}
#stage{position:fixed;inset:0}#vaultCanvas{display:block;width:100%;height:100%}.screenShade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(#07050dbb,transparent 30%,transparent 65%,#07050dc9),radial-gradient(ellipse,transparent 40%,#08060e60)}
#app{position:fixed;inset:0;pointer-events:none}#app button,#app input,#app select,#app summary,#app dialog{pointer-events:auto}.view{position:absolute;inset:100px 0 40px}.masthead{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid #bcb0cf18}.masthead img{width:170px;height:80px;object-fit:contain}.wordmark{font-family:Anton;font-size:21px;letter-spacing:.11em}.wordmark b{font-weight:400;color:var(--lime)}.subtle{border:0;background:transparent;color:#d1c5dd;font-size:10px;letter-spacing:.12em;font-weight:700;padding:13px 0}.subtle span{margin-left:12px;display:inline-block;border:1px solid var(--line);padding:5px 8px;border-radius:3px}footer{position:absolute;bottom:0;left:0;right:0;height:34px;display:flex;justify-content:space-between;align-items:center;padding:0 40px;font-size:8px;letter-spacing:.22em;color:#8c809b;border-top:1px solid #bcb0cf18}
.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:800;color:var(--lime)}h1,h2,p{margin:0}h1,h2{font-family:Anton;font-weight:400}h1 em,h2 em{font-style:normal;color:var(--lime)}.primary,.secondary{min-height:48px;padding:16px 24px;border-radius:3px;font-size:11px;font-weight:800;letter-spacing:.12em;transition:background .2s,transform .2s;border:1px solid #b9a78480;display:inline-flex;align-items:center;justify-content:center;gap:24px}.primary{background:linear-gradient(135deg,#d3f3a0,#a7ce63);color:#1a2510;border-color:#daefb2;box-shadow:0 0 25px #b9ef6820}.primary:hover{background:#e1ffb4;transform:translateY(-2px)}.secondary{background:#1c1424c9;color:#eadfe8;border-color:#9584a760}.secondary:hover{background:#44314e;transform:translateY(-2px)}
#setup{display:grid;grid-template-columns:370px 1fr;grid-template-rows:auto 1fr;padding:25px 4vw 10px;gap:20px;overflow-y:auto}.setupCopy{grid-column:1;grid-row:1}.setupCopy h1{font-size:52px;line-height:1.06;letter-spacing:.02em;margin:12px 0}.setupCopy h1 br{display:none}.setupCopy h1 em{display:block;font-size:75px}.setupCopy p{color:#b3a6c0;font-size:12px;line-height:1.7}.hostNames{font-size:8px;letter-spacing:.2em;color:#8d7a9f;margin-top:15px}.configPanel{grid-column:1;grid-row:2;pointer-events:auto;align-self:start;background:linear-gradient(110deg,#18101fe8,#100c16e8);backdrop-filter:blur(18px);border:1px solid var(--line);padding:22px;border-radius:6px;box-shadow:0 20px 80px #0006}.panelTitle span{font-size:8px;letter-spacing:.18em;color:#ab97c0}.panelTitle h2{font-size:25px;margin:7px 0 18px;letter-spacing:.03em}.configPanel label,#manualOffer label{display:block;font-size:8px;font-weight:800;letter-spacing:.15em;color:#beaecb;margin-bottom:6px}.configPanel input,.configPanel select{width:100%;height:36px;border:1px solid #9982b440;background:#0b0811;color:#efe7e2;border-radius:3px;padding:7px 10px;font-size:11px;margin-bottom:13px}.fieldPair{display:flex;gap:12px}.fieldPair>div{flex:1;min-width:0}details{border-top:1px solid var(--line);margin-top:0;padding-top:10px}summary{font-size:10px;list-style:none;color:#c6b6d4;cursor:pointer;display:flex;justify-content:space-between}details p{font-size:9px;color:#9586a3;line-height:1.7;margin:8px 0}#previewValues{display:flex;flex-wrap:wrap;gap:4px;margin-top:10px}#previewValues span{font-size:9px;padding:4px;border:1px solid #9e7cb155;border-radius:2px}#previewValues .high{border-color:#b6e77566;color:var(--lime)}#configError{font-size:11px;color:#ffc6db;min-height:18px;margin:5px 0}.configPanel .primary{width:100%}.sceneCaption{position:absolute;bottom:60px;right:12%;text-align:center}.sceneCaption span{font-size:9px;letter-spacing:.3em;color:#b6a4c3}.sceneCaption b{font-family:Anton;font-weight:400;display:block;font-size:29px;margin:10px 0}.sceneCaption p{font-size:11px;color:#b5a6c3}
#app[data-view=setup] .wordmark{visibility:hidden}.playHeading{text-align:center;position:absolute;top:24px;left:20%;right:20%}.playHeading h2{font-size:32px;margin:6px 0;letter-spacing:.04em}.playHeading p{font-size:11px;color:#c4b9d0}.prizeRail{position:absolute;top:115px;bottom:125px;width:clamp(100px,13vw,205px);display:flex;flex-direction:column;justify-content:center;gap:5px}#lowLadder{left:26px}#highLadder{right:26px}.railLabel{font-size:9px;font-weight:800;letter-spacing:.16em;margin-bottom:10px;text-align:center;color:#c5adda}.prize{position:relative;flex:0 1 37px;min-height:25px;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#291c3aee,#4c3560ee);border:1px solid #9e7aba66;color:#e1d2ee;font-size:18px;font-weight:800;letter-spacing:.02em;border-radius:2px;box-shadow:inset 3px 0 #ac7ed0;transition:opacity .5s,transform .5s}.high .prize{background:linear-gradient(90deg,#5b7330ef,#abc865ef);color:#101907;border-color:#c3de8e88;box-shadow:inset -3px 0 #dbedb4}.prize.out{opacity:.22;transform:scale(.95);text-decoration:line-through}.prize.out::after{content:'';position:absolute;left:10%;right:10%;height:1px;background:currentColor}.high .railLabel{color:var(--lime)}
.selectionDock{position:absolute;bottom:12px;left:22%;right:22%;padding:13px 18px;background:#110d19e6;border:1px solid var(--line);border-radius:4px;backdrop-filter:blur(18px)}.dockLabel{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.dockLabel span{font-size:8px;letter-spacing:.15em;color:var(--lime);font-weight:800}.dockLabel small{font-size:8px;color:#9c8bac}#boxButtons{display:grid;grid-template-columns:repeat(12,1fr);gap:5px}#boxButtons button{padding:5px 0;height:29px;border:1px solid #a086b94d;border-radius:2px;color:#e9dced;background:#251831;font-size:11px;font-weight:800;transition:background .2s}#boxButtons button:hover,#boxButtons button:focus-visible{background:#604076;border-color:#d2b2ef}#boxButtons button:disabled{opacity:.2}#boxButtons button.selected{color:#cfef9e;border-color:#cfef9e;opacity:.75}#selectedBox{position:absolute;left:28px;bottom:20px;display:grid;grid-template-columns:auto 1fr;gap:5px 12px;align-items:center}#selectedBox span{font-size:8px;letter-spacing:.15em;grid-column:1/-1;color:#baa5cf}#selectedBox strong{font-family:Anton;font-size:32px;line-height:1.2;color:var(--lime)}#selectedBox small{font-size:10px;max-width:120px}
#intro{inset:0;background:radial-gradient(ellipse,#08051022,#080510aa)}.introType{text-align:center;position:absolute;left:0;right:0;top:22%;animation:openingType 5s both}.introType>span{font-size:11px;letter-spacing:.4em;color:#c9bdd5}.introType h2{font-size:clamp(60px,9vw,140px);line-height:1.05;margin:25px 0;letter-spacing:.05em;text-shadow:0 8px 50px #000}.introType p{font-size:16px;letter-spacing:.15em}#skip{position:absolute;right:35px;bottom:60px}@keyframes openingType{0%{opacity:0;transform:translateY(25px)}25%,80%{opacity:1;transform:none}100%{opacity:0;transform:scale(1.04)}}
.revealHeading{text-align:center;position:absolute;top:28px;left:0;right:0}.revealHeading h2{font-size:32px;margin:8px}#revealResult{position:absolute;bottom:60px;left:0;right:0;text-align:center;animation:resultIn .75s both}#revealAmount,#endAmount,#offerAmount{font-family:Anton;font-size:clamp(65px,8vw,125px);line-height:1.2;letter-spacing:.02em;color:var(--lime);text-shadow:0 3px 30px #0009}#revealType,#endTier{font-size:12px;letter-spacing:.3em;color:var(--lime);margin-top:5px}#revealDetail{font-size:12px;color:#d1c1de;margin-top:14px}#revealContinue{position:absolute;bottom:15px;right:35px}.credit #revealAmount,.credit #revealType,.credit #endAmount,.credit #endTier{color:#d4b0ef}@keyframes resultIn{from{opacity:0;transform:translateY(20px);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}
#offer{background:linear-gradient(90deg,#0a06105c,#0a06101a,#0a06105c)}.offerLayout{text-align:center;position:absolute;top:22%;left:20%;right:20%;padding:30px;background:radial-gradient(ellipse,#08060dc9,transparent 72%)}#offerThinking h2{font-size:65px;line-height:1.12;margin:24px 0}#offerThinking p{font-size:12px;color:#c2afcd}.contractLine{width:100px;height:2px;background:var(--lime);margin:24px auto;animation:contract 1.6s infinite}@keyframes contract{0%,100%{transform:scaleX(.2);opacity:.2}50%{transform:scaleX(1);opacity:1}}#offerAmount{margin:20px 0 10px;animation:resultIn .7s both;font-size:clamp(80px,10vw,160px)}#offerDescription{font-size:13px;color:#cfbfd8;margin-bottom:30px}.decisionButtons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.decisionButtons button{min-width:190px}#confirmDeal{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}#confirmDeal p{font-size:14px;margin-bottom:15px}#confirmDeal .subtle{display:block;margin:auto}#manualOffer{max-width:350px;margin:25px auto}#manualOffer input{width:100%;font-family:Anton;font-size:45px;text-align:center;background:#100818cc;border:1px solid var(--line);padding:12px;color:var(--lime);margin:8px 0 15px}#manualOffer .primary{width:100%}#manualError{font-size:12px;color:#ffbbcf;margin-top:12px}
.decisionPanel{position:absolute;top:20%;left:18%;right:18%;text-align:center;padding:40px;background:#0c0813eb;border:1px solid var(--line);backdrop-filter:blur(16px)}.decisionPanel h2{font-size:64px;line-height:1.05;margin:20px 0}.decisionPanel p{font-size:13px;line-height:1.9;color:#c1adcf;margin-bottom:25px}.endLayout{position:absolute;left:12%;right:12%;top:15%;text-align:center;background:radial-gradient(ellipse,#0b0713ec,transparent 75%);padding:35px}.endLayout h2{font-size:32px;margin:15px 0 0}.endLayout #endAmount{font-size:clamp(85px,11vw,160px)}#endSummary{font-size:13px;line-height:1.8;margin:18px 0;color:#d0bfdc}#offerHistory{font-size:10px;color:#a38bb7;margin:18px 0 28px;line-height:1.8}
#hostPanel{pointer-events:auto;width:360px;max-width:92vw;border:1px solid #ac8cc055;border-radius:7px;background:#15101fee;color:var(--white);padding:25px;box-shadow:0 30px 100px #000b}#hostPanel::backdrop{background:#06030bb5;backdrop-filter:blur(10px)}#hostPanel>.secondary,#hostPanel>.subtle{width:100%;margin-top:10px}#restartConfirm p{font-size:12px;line-height:1.7;margin:16px 0}#restartConfirm .primary{width:100%}#renderNotice{position:fixed;top:100px;left:20%;right:20%;z-index:10;padding:12px;background:#311627;border:1px solid #e9a4c6;font-size:12px;text-align:center}
@media(max-height:850px) and (min-width:901px){#setup{grid-template-columns:330px 1fr;padding-top:15px;gap:14px}.setupCopy h1{font-size:39px;margin:7px 0}.setupCopy h1 em{font-size:50px;display:inline}.setupCopy p{font-size:10px}.hostNames{margin-top:7px}.configPanel{padding:17px}.panelTitle h2{margin:5px 0 12px;font-size:22px}.configPanel input,.configPanel select{height:32px;margin-bottom:10px}.primary,.secondary{min-height:42px;padding:12px 18px}.sceneCaption{bottom:30px}.playHeading{top:12px}.playHeading h2{font-size:27px}.prizeRail{top:95px;gap:4px}.prize{font-size:16px;min-height:22px}.offerLayout{top:15%;padding:15px}.endLayout{top:8%;padding:20px}}
@media(max-width:900px){.masthead{height:76px;padding:0 20px}.masthead img{width:135px;height:65px}.wordmark{font-size:15px}.subtle{font-size:9px}.view{inset:76px 0 34px}#setup{pointer-events:auto;grid-template-columns:320px 1fr;padding:20px;gap:18px}.setupCopy h1{font-size:39px}.setupCopy h1 em{font-size:54px}.sceneCaption{right:3%;bottom:80px;max-width:220px}.sceneCaption b{font-size:23px}.configPanel{padding:20px}.prizeRail{width:100px;top:105px;bottom:155px}.prize{font-size:14px;min-height:22px}#lowLadder{left:12px}#highLadder{right:12px}.playHeading{left:15%;right:15%;top:15px}.playHeading h2{font-size:25px}.playHeading p{font-size:10px}.selectionDock{left:16%;right:16%;bottom:18px}#boxButtons{grid-template-columns:repeat(8,1fr)}#selectedBox{left:14px;bottom:24px}#selectedBox small{max-width:70px;font-size:8px}.offerLayout{left:8%;right:8%}.decisionPanel{left:8%;right:8%;padding:30px}.endLayout{left:5%;right:5%}footer{padding:0 20px}}
@media(max-width:580px){.masthead{height:65px;padding:0 14px}.masthead img{width:118px;height:60px}.wordmark{display:none}.masthead .subtle span{display:none}.view{inset:65px 0 28px}#setup{display:flex;flex-direction:column;padding:24px 18px;gap:20px;background:linear-gradient(90deg,#09060dcc,#09060d55)}.setupCopy h1{font-size:38px}.setupCopy h1 em{font-size:48px;display:inline}.setupCopy p{font-size:11px}.hostNames{margin-top:10px}.configPanel{width:100%;max-width:420px;padding:20px}.configPanel input,.configPanel select{font-size:12px;height:40px}.sceneCaption{display:none}.playHeading{top:10px;left:6%;right:6%}.playHeading h2{font-size:25px}.playHeading .eyebrow{font-size:8px}.playHeading p{font-size:10px}.prizeRail{width:74px;top:108px;bottom:185px;gap:4px}#lowLadder{left:8px}#highLadder{right:8px}.railLabel{font-size:7px;letter-spacing:.08em;margin-bottom:4px}.prize{min-height:21px;flex:0 1 27px;font-size:11px}.selectionDock{left:8px;right:8px;bottom:10px;padding:10px}.dockLabel small{font-size:7px}#boxButtons{grid-template-columns:repeat(8,1fr);gap:5px}#boxButtons button{height:33px}.dockLabel span{font-size:8px}#selectedBox{bottom:154px;left:12px;display:flex;gap:8px}#selectedBox span{font-size:7px}#selectedBox strong{font-size:20px}#selectedBox small{font-size:8px;max-width:100px}.offerLayout{top:18%;left:0;right:0;padding:20px}.decisionButtons{gap:10px}.decisionButtons button{width:100%;min-width:0;max-width:340px}.offerLayout .eyebrow{font-size:9px}#offerAmount{font-size:80px}#offerDescription{font-size:12px;line-height:1.7}#offerThinking h2{font-size:52px}.decisionPanel{top:14%;left:12px;right:12px;padding:25px 20px}.decisionPanel h2{font-size:48px}.decisionPanel p{font-size:12px}.endLayout{top:9%;left:0;right:0;padding:20px}.endLayout h2{font-size:25px}.endLayout #endAmount{font-size:85px}#endSummary{font-size:12px}#endTier{font-size:10px}.revealHeading{top:20px}.revealHeading h2{font-size:25px}.revealHeading .eyebrow{font-size:9px}#revealResult{bottom:90px}#revealAmount{font-size:75px}#revealDetail{font-size:11px;padding:0 20px}#revealContinue{right:18px;bottom:20px}.introType{top:28%}.introType>span{font-size:8px;letter-spacing:.15em}.introType h2{font-size:57px}.introType p{font-size:12px}#skip{right:18px;bottom:50px}footer{height:28px;padding:0 12px;font-size:6px}#renderNotice{left:10px;right:10px;top:70px}}
.setupCopy h1 em{margin-left:.12em}.configPanel{margin-bottom:20px}
.quick *{animation-duration:.12s!important;transition-duration:.12s!important}
#chestLabels{position:absolute;inset:0;pointer-events:none;overflow:hidden}#chestLabels span{position:absolute;left:0;top:0;font-size:13px;font-weight:800;color:#eee3dd;background:#100a19d9;border:1px solid #ae91c04d;padding:3px 8px;border-radius:3px;box-shadow:0 3px 10px #0006}
@media(max-width:580px){#chestLabels span{font-size:8px;padding:2px 4px}}
@media(min-width:1100px) and (min-height:860px){#setup{grid-template-columns:390px 1fr}.setupCopy h1{font-size:51px}.setupCopy h1 em{display:inline;font-size:64px}.setupCopy h1{line-height:1.2}.configPanel{padding:25px}.configPanel input,.configPanel select{height:40px;font-size:12px}.configPanel label{font-size:9px}}
@media(min-width:901px){#setup{display:flex;align-items:center;padding:25px 4vw;overflow-y:auto}.configPanel{width:370px;flex-shrink:0;margin:0}.setupCopy{position:absolute;left:43%;right:5%;top:28px;text-align:center;pointer-events:none}.setupCopy h1{font-size:48px;line-height:1.05;margin:15px 0}.setupCopy h1 br{display:block}.setupCopy h1 em{display:block;font-size:72px;margin:0}.setupCopy p{display:none}.setupCopy .hostNames{margin-top:12px}.sceneCaption{right:11%;bottom:35px}.sceneCaption b{font-size:24px}}
@media(min-width:1200px) and (min-height:860px){.configPanel{width:390px}.setupCopy h1{font-size:60px}.setupCopy h1 em{font-size:86px}.setupCopy{top:20px}.sceneCaption{bottom:50px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Prize colours describe value, while labels identify cash and site credit. */
.prize{flex-direction:column;line-height:1.1}.prize small{font-size:7px;letter-spacing:.1em;margin-top:2px;font-weight:700}
@media(max-width:580px){.prize small{font-size:6px;letter-spacing:.02em;margin-top:1px}}

/* Audience presentation: readable numbers, deliberate holds, no rapid flashes. */
#chosen{background:linear-gradient(90deg,#0b0714ed 0%,#0b0714bb 37%,transparent 75%)}
.chosenCard{position:absolute;left:6%;top:10%;width:50%;text-align:center;animation:choiceIn .7s cubic-bezier(.2,.8,.2,1) both}
.chosenCard .eyebrow{font-size:clamp(15px,1.8vw,30px);line-height:1.5;letter-spacing:.16em}
.chosenCard h2{font-size:clamp(32px,4vw,68px);line-height:1.04;margin:12px 0;color:#eee4f6}
.chosenCard strong{display:block;font-family:Anton;font-weight:400;font-size:clamp(130px,18vw,300px);line-height:1.08;color:var(--lime);text-shadow:0 5px 0 #385224,0 0 65px #b0e06d35;animation:numberArrives .8s cubic-bezier(.16,.85,.25,1) both}
.sealedStamp{display:inline-block;padding:8px 24px;border:2px solid var(--purple);color:#e1c7ff;font-weight:800;letter-spacing:.23em;font-size:clamp(15px,1.5vw,25px);animation:stampIn .35s .65s both}
.chosenCard p{margin-top:18px;font-size:clamp(14px,1.4vw,24px);color:#ddd0e9;line-height:1.4}
#choiceContinue{position:absolute;right:5%;bottom:6%;font-size:clamp(14px,1.2vw,22px)}
@keyframes choiceIn{from{opacity:0;transform:translateX(-35px)}to{opacity:1;transform:translateX(0)}}
@keyframes numberArrives{from{opacity:0;transform:translateY(35px) scale(.82)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes stampIn{from{opacity:0;transform:scale(1.35) rotate(-5deg)}to{opacity:1;transform:scale(1) rotate(-3deg)}}
.audienceStats{display:flex;justify-content:center;gap:20px;margin-top:12px;color:var(--lime);font-size:clamp(12px,1.05vw,20px);font-weight:800;letter-spacing:.04em}
.audioLevels{padding:12px 0}.audioLevels label{display:block;font-size:12px;letter-spacing:.07em;margin:8px 0}.audioLevels input{width:100%;accent-color:var(--lime)}#audioStatus{font-size:12px;line-height:1.5;color:#e6c8f3}
#hostPanel{max-height:90vh;overflow-y:auto}
@media(min-width:901px){
  .playHeading{top:10px;left:18%;right:18%}.playHeading h2{font-size:clamp(36px,3.5vw,66px);line-height:1.15;margin:8px 0}.playHeading p{font-size:clamp(16px,1.4vw,26px)}.playHeading .eyebrow{font-size:clamp(12px,1vw,19px)}
  .prizeRail{top:135px;bottom:80px;width:15.5vw;max-width:320px;gap:3px}#lowLadder{left:20px}#highLadder{right:20px}.railLabel{font-size:clamp(11px,1vw,19px);margin-bottom:6px}
  .prize{flex:1 1 42px;max-height:58px;min-height:28px;font-size:clamp(21px,2vw,38px)}.prize small{font-size:clamp(9px,.75vw,15px);margin-top:2px}
  #app[data-dense=true] .prize{min-height:23px;font-size:clamp(18px,1.7vw,34px)}#app[data-dense=true] .prize small{font-size:clamp(8px,.65vw,13px)}
  #boxButtons button{height:clamp(35px,3.4vh,54px);font-size:clamp(16px,1.3vw,25px)}.dockLabel span,.dockLabel small{font-size:clamp(10px,.8vw,15px)}
  #selectedBox strong{font-size:clamp(38px,3vw,60px)}#selectedBox span,#selectedBox small{font-size:clamp(11px,.9vw,17px)}
  .revealHeading h2{font-size:clamp(40px,4vw,78px);line-height:1.15}.revealHeading .eyebrow{font-size:clamp(14px,1.2vw,23px)}
  #revealAmount{font-size:clamp(85px,9vw,180px)}#revealType{font-size:clamp(21px,2vw,38px)}#revealDetail{font-size:clamp(16px,1.3vw,25px)}
  #offerAmount,#endAmount{font-size:clamp(90px,10vw,200px)}#offerDescription,#endSummary{font-size:clamp(18px,1.6vw,30px);line-height:1.5}
  .decisionButtons button,#revealContinue{font-size:clamp(15px,1.2vw,23px)}.offerLayout>.eyebrow,.endLayout>.eyebrow{font-size:clamp(14px,1.2vw,23px)}#endTier{font-size:clamp(22px,2vw,38px)}
  #chestLabels span{font-size:clamp(18px,1.5vw,30px);padding:4px 10px}
}
@media(min-width:901px) and (min-height:900px){.prizeRail{top:180px;bottom:110px;gap:5px}.playHeading{top:22px}.selectionDock{bottom:20px;padding:20px}.revealHeading{top:28px}}
@media(max-width:900px){.audienceStats{font-size:10px;gap:10px;margin-top:6px}.chosenCard{width:65%;left:3%;top:12%}.chosenCard strong{font-size:150px}.chosenCard .eyebrow{font-size:15px}}
@media(max-width:580px){.chosenCard{width:94%;top:8%}.chosenCard strong{font-size:150px}.chosenCard h2{font-size:30px}.chosenCard p{font-size:14px}.chosenCard .eyebrow{font-size:13px}#choiceContinue{left:10%;right:10%;bottom:6%}.audienceStats{font-size:8px;gap:8px}.playHeading p{font-size:11px}.revealHeading h2{font-size:32px}#chosen{background:#0b0714b3}}
@media(prefers-reduced-motion:reduce){.chosenCard,.chosenCard strong,.sealedStamp{animation:none}}

@media(min-width:901px){.prize{flex-direction:row;justify-content:space-between;padding:0 9px;gap:6px}.prize small{margin:0;white-space:nowrap;font-size:clamp(8px,.68vw,13px)}.prize>span{white-space:nowrap}.prize:not(:has(small)){justify-content:center}}

/* Setup and host-facing controls also need to be legible at presentation distance. */
.configPanel label{font-size:12px;letter-spacing:.08em}.configPanel input,.configPanel select{font-size:15px;height:40px}.configPanel summary{font-size:13px}.configPanel details p{font-size:12px}.configPanel .primary{font-size:14px}.panelTitle h2{font-size:30px}.panelTitle span{font-size:11px}
#previewValues span{font-size:11px}#offerHistory{font-size:clamp(12px,1vw,20px)}.decisionPanel p{font-size:clamp(17px,1.6vw,28px);line-height:1.5}.decisionPanel>.eyebrow{font-size:clamp(13px,1.1vw,21px)}#manualOffer label{font-size:16px}#manualAmount{font-size:28px}
@media(min-width:901px) and (max-height:800px){.configPanel{padding:17px}.configPanel input,.configPanel select{height:35px;margin-bottom:9px}.configPanel label{font-size:11px;margin-bottom:5px}.panelTitle h2{font-size:26px;margin-bottom:12px}}

/* Dedicated space for the player's sealed box, clear of the prize rail. */
@media(min-width:901px){
  .prizeRail{top:115px;bottom:132px}
  #selectedBox{left:20px;bottom:12px;width:15.5vw;max-width:320px;min-height:96px;padding:10px 12px;gap:5px 12px;grid-template-columns:auto minmax(0,1fr);background:linear-gradient(135deg,#23172ff5,#0d1015f5);border:1px solid #c4ee8170;border-radius:4px;box-shadow:inset 3px 0 var(--lime)}
  #selectedBox span{font-size:clamp(11px,.9vw,17px);letter-spacing:.08em;line-height:1.4}
  #selectedBox strong{font-size:clamp(38px,3vw,60px);line-height:1}
  #selectedBox small{font-size:clamp(12px,.9vw,17px);line-height:1.4;max-width:none;overflow-wrap:anywhere}
  .revealHeading{top:16px;padding:12px 4% 24px;background:radial-gradient(ellipse at top,#0a0617dd,transparent 75%);text-shadow:0 3px 18px #000}
  .revealHeading h2{font-size:clamp(56px,5.5vw,108px);line-height:1.1;margin:10px 0}
  .revealHeading .eyebrow{font-size:clamp(20px,1.65vw,32px);letter-spacing:.16em}
}
@media(min-width:901px) and (min-height:900px){.prizeRail{top:180px;bottom:155px}#selectedBox{bottom:20px;min-height:114px;padding:14px 16px}}

/* A clean broadcast header shields key information from the 3D scenery. */
.playHeading{background:#100c19;border:1px solid #b093d550;border-radius:6px;box-shadow:0 8px 28px #0009;padding:14px 20px;left:22%;right:22%;top:10px}
.playHeading #instruction{display:none}
.playHeading .eyebrow{font-size:13px;line-height:1.3;letter-spacing:.2em}
.playHeading h2{font-size:clamp(32px,3.1vw,58px);line-height:1.12;margin:8px 0 12px}
.audienceStats{display:grid;grid-template-columns:auto auto;justify-content:center;gap:0;margin:0;font-size:clamp(12px,1.05vw,20px);line-height:1.5;letter-spacing:.02em}
.audienceStats span{padding:0 16px;color:#e4dcea}.audienceStats span+span{border-left:1px solid #b093d560;color:var(--lime)}
@media(min-width:901px) and (min-height:900px){.playHeading{top:12px;padding:18px 24px}.playHeading .eyebrow{font-size:17px}.playHeading h2{margin:9px 0 14px}}
@media(max-width:900px){.playHeading{left:18%;right:18%;top:8px;padding:10px 12px}.playHeading h2{font-size:28px;margin:5px 0 8px}.playHeading .eyebrow{font-size:10px}.audienceStats{font-size:10px}.audienceStats span{padding:0 9px}}
@media(max-width:580px){.playHeading{left:5%;right:5%;padding:9px 8px;top:6px}.playHeading h2{font-size:26px}.audienceStats{font-size:9px}.audienceStats span{padding:0 8px}.playHeading .eyebrow{font-size:9px}}
