/* Final consolidated polish for Brand Builders Unit 9 */
:root{
  --bb-navy:#142247;
  --bb-deep:#081126;
  --bb-ivory:#fff4da;
  --bb-cream:#f4e2b7;
  --bb-gold:#d6aa5a;
  --bb-gold2:#ffe29a;
  --bb-coral:#d98273;
  --bb-green:#78937b;
  --bb-blue:#315fa8;
  --bb-ink:#142247;
}
html{scroll-behavior:smooth;}
.final-index,.final-study,.final-detail{font-family:Inter,Arial,sans-serif;color:var(--bb-ivory);background:
  radial-gradient(circle at 8% 10%,rgba(226,198,132,.22),transparent 22rem),
  radial-gradient(circle at 86% 70%,rgba(217,130,115,.16),transparent 26rem),
  linear-gradient(135deg,#120b08,#081126 46%,#332014);}
.final-index{min-height:100dvh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:minmax(0,1fr) auto;}
.final-detail{min-height:100dvh;}
.bb-shell{width:min(1260px,calc(100% - 28px));margin:0 auto;}
.bb-topbar{height:48px;display:flex;align-items:center;justify-content:space-between;padding:.35rem .9rem;border-bottom:1px solid rgba(226,198,132,.16);background:rgba(7,12,29,.52);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50;}
.bb-brand{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:linear-gradient(135deg,#fff2bd,#c79b4c);color:#101b38;font-weight:950;box-shadow:0 10px 20px rgba(0,0,0,.28);}
.bb-nav{display:flex;gap:.45rem;align-items:center;}
.bb-nav a{color:rgba(255,248,232,.88);text-decoration:none;font-weight:850;border:1px solid transparent;border-radius:999px;padding:.48rem .72rem;font-size:.88rem;}
.bb-nav a:hover,.bb-nav a.is-active{background:rgba(255,255,255,.08);border-color:rgba(226,198,132,.28);}
.bb-footer{min-height:60px;display:flex;align-items:center;justify-content:center;gap:1.05rem;padding:.42rem 1rem;border-top:1px solid rgba(226,198,132,.22);background:rgba(5,8,19,.68);font-weight:800;font-size:.82rem;color:rgba(255,248,232,.9);text-align:center;}
.bb-footer img{width:150px;height:46px;object-fit:contain;filter:drop-shadow(0 9px 12px rgba(0,0,0,.34));opacity:1;}
.bb-gold-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;border-radius:999px;padding:.78rem 1.25rem;color:#101b38;text-decoration:none;font-weight:950;background:linear-gradient(135deg,#ffe49c,#d5a757 58%,#ba813b);border:1px solid rgba(255,238,177,.76);box-shadow:0 16px 30px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;}
.bb-gold-btn:hover,.bb-gold-btn:focus-visible{transform:translateY(-3px);filter:brightness(1.04);box-shadow:0 24px 40px rgba(0,0,0,.34),0 0 26px rgba(226,198,132,.28);}
.bb-back,.bb-next{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;border-radius:999px;padding:.68rem 1.05rem;text-decoration:none;font-weight:950;color:#101b38;background:linear-gradient(135deg,#ffe49c,#d5a757);border:1px solid rgba(255,238,177,.68);box-shadow:0 14px 24px rgba(0,0,0,.22);}
.bb-next{min-width:150px;}
.bb-nav-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin:1rem 0 0;}

/* Index */
.index-main{height:100%;display:grid;place-items:center;min-height:0;padding:.6rem 0;}
.index-stage{width:min(1240px,calc(100% - 30px));height:min(760px,calc(100dvh - 76px));min-height:560px;border-radius:32px;border:1px solid rgba(226,198,132,.32);background:linear-gradient(103deg,rgba(9,18,41,.97),rgba(19,32,68,.92) 46%,rgba(57,34,22,.9));box-shadow:0 34px 100px rgba(0,0,0,.48);display:grid;grid-template-columns:minmax(310px,.58fr) minmax(500px,1.42fr);gap:1.1rem;align-items:center;padding:clamp(.85rem,1.4vw,1.25rem);overflow:hidden;position:relative;}
.index-stage:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 20deg,transparent,rgba(226,198,132,.16),transparent,rgba(217,130,115,.12),transparent);animation:bbSpin 18s linear infinite;opacity:.7;}
@keyframes bbSpin{to{transform:rotate(360deg)}}
.index-card,.index-show{position:relative;z-index:1;}
.index-card{padding:clamp(1.05rem,2vw,1.8rem);border-radius:28px;background:linear-gradient(150deg,rgba(8,16,37,.92),rgba(20,34,72,.72));border:1px solid rgba(255,248,232,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 22px 60px rgba(0,0,0,.28);}
.index-kicker{margin:0 0 .18rem;color:#f2d886;text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:950;}
.index-title{margin:0;color:#fff5dc;font-family:"Bebas Neue","Archivo Black",Impact,sans-serif;text-transform:uppercase;font-size:clamp(4.4rem,7.6vw,6.4rem);line-height:.85;letter-spacing:.01em;text-shadow:0 14px 42px rgba(0,0,0,.42);}
.index-topic{display:inline-flex;margin:.85rem 0 .75rem;padding:.48rem .8rem;border-radius:999px;background:rgba(255,248,232,.94);color:#132143;font-weight:950;font-size:.92rem;}
.index-promise{margin:0 0 1rem;color:rgba(255,248,232,.96);font-weight:950;font-size:1.05rem;}
.index-actions{display:grid;grid-template-columns:1fr 1.18fr;gap:.75rem;max-width:460px;}
.index-actions .bb-gold-btn{white-space:nowrap;}
.index-show{display:grid;gap:.85rem;justify-items:center;align-items:center;min-width:0;}
.hero-video-link{display:block;position:relative;width:min(740px,100%);aspect-ratio:16/9;max-height:45vh;overflow:hidden;border-radius:30px;border:10px solid rgba(255,240,199,.96);box-shadow:0 24px 70px rgba(0,0,0,.44),0 0 38px rgba(226,198,132,.16);background:#081126;text-decoration:none;}
.hero-video-link img,.hero-video-link video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-video-link img{z-index:1}.hero-video-link video{z-index:2}.hero-video-link:after{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(110deg,transparent 0 34%,rgba(255,255,255,.18) 48%,transparent 62%);transform:translateX(-120%);animation:bbShine 6s ease-in-out infinite;}
@keyframes bbShine{0%,58%{transform:translateX(-120%)}78%,100%{transform:translateX(120%)}}
.mode-panel{width:min(740px,100%);padding:.6rem;border-radius:26px;background:rgba(7,13,30,.38);border:1px solid rgba(226,198,132,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 20px 48px rgba(0,0,0,.24);}
.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;}
.mode-tile{height:clamp(126px,18vh,168px);border-radius:24px;display:grid;place-items:center;padding:.45rem;text-decoration:none;background:linear-gradient(145deg,rgba(255,248,232,.14),rgba(255,248,232,.055));border:1px solid rgba(226,198,132,.26);box-shadow:0 16px 30px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .2s ease,box-shadow .2s ease;}
.mode-tile:hover,.mode-tile:focus-visible{transform:translateY(-4px);box-shadow:0 24px 46px rgba(0,0,0,.34),0 0 30px rgba(226,198,132,.22);}
.mode-tile img{width:95%;height:95%;object-fit:contain;border-radius:22px;filter:drop-shadow(0 14px 20px rgba(0,0,0,.32));}

/* Study hub */
.final-study{min-height:100dvh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:48px minmax(0,1fr) 60px;}
.studyhub-main{width:min(1280px,calc(100% - 26px));margin:0 auto;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.7rem;padding:.45rem 0 .5rem;}
.studyhub-title{text-align:center;margin:0;}
.studyhub-title h1{margin:0;color:#fff6dc;font-family:"Bebas Neue",Impact,sans-serif;font-size:clamp(2.6rem,5vh,4.1rem);line-height:.86;text-transform:uppercase;letter-spacing:.03em;}
.studyhub-title p{margin:.16rem 0 0;color:rgba(255,248,232,.88);font-weight:900;font-size:.95rem;}
.study-room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.75rem,1.3vw,1rem);align-items:stretch;min-height:0;}
.study-room-card{min-width:0;border-radius:24px;overflow:hidden;text-decoration:none;color:#122147;background:linear-gradient(145deg,#fff7e6,#dbcba6);border:1px solid rgba(255,255,255,.64);box-shadow:0 18px 42px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.45);display:grid;grid-template-rows:minmax(0,1fr) auto;padding:clamp(.45rem,.9vw,.7rem);transition:transform .22s ease,box-shadow .22s ease;}
.study-room-card:hover,.study-room-card:focus-visible{transform:translateY(-5px);box-shadow:0 28px 58px rgba(0,0,0,.36),0 0 0 4px rgba(226,198,132,.17);}
.room-img{display:grid;place-items:center;min-height:0;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#f9edcf,#d7c6a0);}
.room-img img{width:100%;height:100%;max-height:clamp(150px,30vh,238px);object-fit:contain;object-position:center center;display:block;}
.study-room-card strong{display:block;text-align:center;font-family:"Bebas Neue",Impact,sans-serif;text-transform:uppercase;letter-spacing:.03em;font-size:clamp(2rem,3.4vw,3.25rem);line-height:.9;margin:.5rem 0 .1rem;color:#13234b;}
.checkpoint-strip{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:.7rem;align-items:center;justify-content:center;border-radius:26px;border:1px solid rgba(226,198,132,.28);background:linear-gradient(135deg,rgba(10,16,36,.9),rgba(58,34,22,.78));padding:.65rem .8rem;box-shadow:0 18px 46px rgba(0,0,0,.24);}
.checkpoint-copy .ready{margin:0 0 .12rem;color:#f2d886;text-transform:uppercase;letter-spacing:.16em;font-weight:950;font-size:.72rem;}.checkpoint-copy h2{margin:0;color:#fff7e0;font-family:"Bebas Neue",Impact,sans-serif;font-size:clamp(1.7rem,3vw,2.7rem);line-height:.9;letter-spacing:.04em;}
.check-action{min-height:54px;min-width:176px;border-radius:999px;padding:.55rem 1.1rem;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;background:linear-gradient(135deg,#ffe49c,#d5a757);color:#101b38;text-decoration:none;font-weight:950;box-shadow:0 16px 28px rgba(0,0,0,.25);}
.check-action .mini-board{width:42px;height:42px;border-radius:12px;background:#fff4d7;display:grid;place-items:center;color:#d98273;font-size:1.55rem;line-height:1;box-shadow:inset 0 0 0 2px rgba(255,255,255,.5);}
.check-action.play .mini-board{background:#122147;color:#ffe49c;font-size:1.1rem;}

/* Detail pages shared */
.detail-main{width:min(1240px,calc(100% - 28px));margin:0 auto;padding:1rem 0 1.3rem;}
.detail-hero{border-radius:28px;border:1px solid rgba(226,198,132,.28);background:linear-gradient(135deg,rgba(12,20,45,.95),rgba(32,27,53,.86));box-shadow:0 20px 60px rgba(0,0,0,.32);padding:1rem 1.2rem;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;overflow:hidden;}
.detail-hero h1{margin:0;color:#fff6dc;font-family:"Bebas Neue",Impact,sans-serif;text-transform:uppercase;letter-spacing:.03em;font-size:clamp(2.4rem,5.2vw,5rem);line-height:.88;}.detail-hero p{margin:.24rem 0 0;color:rgba(255,248,232,.88);font-weight:850;}.detail-hero .eyebrow{margin:0 0 .12rem;color:#f2d886;text-transform:uppercase;letter-spacing:.16em;font-weight:950;font-size:.72rem;}.detail-icon{width:clamp(92px,14vw,150px);height:clamp(78px,12vw,128px);object-fit:contain;border-radius:22px;background:rgba(255,248,232,.12);}
.panel{border-radius:26px;border:1px solid rgba(226,198,132,.32);background:linear-gradient(145deg,rgba(255,248,232,.98),rgba(239,220,183,.94));color:#172033;box-shadow:0 18px 44px rgba(0,0,0,.18);padding:1rem;}.panel h2{font-family:"Bebas Neue",Impact,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#142247;margin:0;font-size:clamp(2rem,4vw,3.6rem);line-height:.9;}.badge{display:inline-flex;border-radius:999px;background:rgba(200,164,106,.2);border:1px solid rgba(200,164,106,.28);color:#8d6430;font-weight:950;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;padding:.28rem .55rem;margin-bottom:.5rem;}.memory{border-radius:20px;background:linear-gradient(135deg,#142247,#3a241d);color:#fff7e1;padding:.8rem 1rem;font-weight:850;}.memory p{margin:.18rem 0 0;}.detail-nav{display:flex;justify-content:space-between;gap:.8rem;margin-top:1rem;}

/* Grammar */
.grammar-grid{display:grid;grid-template-columns:1.35fr .75fr;gap:1rem;align-items:start;}.passive-section{display:grid;gap:.75rem;}.passive-head{display:grid;grid-template-columns:1fr 118px;gap:.8rem;align-items:center;}.passive-head img{width:118px;height:118px;object-fit:contain;border-radius:22px;}.formula-main{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-weight:950;font-size:clamp(1rem,1.6vw,1.18rem);}.token{display:inline-flex;padding:.35rem .58rem;border-radius:999px;}.object{background:#e9eef8;color:#142247}.be{background:#ead8ad;color:#81551f}.part{background:#f1cdc6;color:#823f36}.formula-cards{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.formula-card{border-radius:20px;background:rgba(255,255,255,.55);border:1px solid rgba(20,34,71,.1);padding:.8rem}.formula-card h3{margin:0 0 .45rem;color:#8d6430;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.formula-card p{font-weight:850;line-height:1.5}.video-card .video-frame{margin:.6rem 0;border-radius:20px;overflow:hidden;aspect-ratio:16/9;background:#050816}.video-card iframe{width:100%;height:100%;border:0}.used-section{margin-top:1rem;display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center}.used-section img{width:100%;border-radius:24px;object-fit:contain;background:#d9d1c1}.used-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.used-card{border-radius:18px;background:rgba(255,255,255,.55);padding:.75rem;font-weight:850}.used-card h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#8d6430;margin:0 0 .35rem}.used-gold{background:#ead8ad;color:#81551f;border-radius:999px;padding:.15rem .35rem}.base-coral{background:#f1cdc6;color:#823f36;border-radius:999px;padding:.15rem .35rem}

/* Vocabulary */
.vocab-section{margin-bottom:1rem}.vocab-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.65rem}.vocab-head h2{font-size:clamp(2rem,4vw,3.6rem)}.word-family-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.65rem}.design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.stuff-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,360px));gap:.75rem;justify-content:start}.word-card{border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,248,232,.62));border:1px solid rgba(200,164,106,.34);box-shadow:0 14px 32px rgba(55,34,14,.12);padding:.85rem;min-height:210px;color:#3d3c37}.produce-set .word-card{background:linear-gradient(145deg,#fff8e8,#ead7aa)}.advertise-set .word-card{background:linear-gradient(145deg,#fff4e9,#f0d4c2)}.design-set .word-card{background:linear-gradient(145deg,#f7fbff,#e4ebee)}.stuff-set .word-card{background:linear-gradient(145deg,#f7fff3,#dfe9d6)}.word-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#ffe49c,#d8ad5e);font-size:1.35rem;box-shadow:0 8px 18px rgba(0,0,0,.14);margin-bottom:.45rem}.word-card h3{font-family:"Bebas Neue",Impact,sans-serif;color:#142247;font-size:clamp(1.55rem,2.4vw,2.1rem);line-height:.92;text-transform:uppercase;margin:.1rem 0 .35rem}.word-card .pron{font-weight:950;color:#8d6430;margin:.1rem 0 .35rem}.word-card .def,.word-card .ex{font-weight:750;line-height:1.38;margin:.35rem 0}.listen-orb,.speak-btn{border:1px solid rgba(20,34,71,.13);background:linear-gradient(135deg,#fff8e8,#ead3a0);color:#142247;border-radius:999px;padding:.42rem .68rem;font-weight:950;cursor:pointer}.stuff-remember{max-width:735px;margin-top:.75rem}.vocab-note{font-weight:850;color:#574e3d;margin:.1rem 0 0}

/* Speaking */
.speaking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.expression-bank{border-radius:22px;background:linear-gradient(145deg,#fff8e8,#ead7b0);border:1px solid rgba(226,198,132,.36);padding:.85rem;color:#172033;box-shadow:0 14px 34px rgba(0,0,0,.16)}.expression-bank h2{display:flex;align-items:center;gap:.45rem;font-size:clamp(1.55rem,2.6vw,2.25rem);}.expression-bank h2 .tiny-icon{width:34px;height:34px;border-radius:12px;background:#142247;color:#ffe49c;display:grid;place-items:center;font-size:1.1rem}.expression-bank ul{list-style:none;margin:.55rem 0 0;padding:0;display:grid;gap:.38rem}.expression-bank li{display:flex;gap:.35rem;align-items:center;background:rgba(255,255,255,.56);border-radius:12px;padding:.36rem .45rem;font-weight:850;font-size:.9rem}.conversation-card{grid-column:auto;background:linear-gradient(145deg,#f6f0dc,#dfe9d6)}.dialogue{display:grid;gap:.45rem;margin-top:.55rem}.dialogue-row{display:grid;grid-template-columns:36px 1fr;gap:.48rem;align-items:start}.person{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#142247;color:#ffe49c}.dialogue-row p{margin:0;background:rgba(255,255,255,.6);border-radius:14px;padding:.5rem;font-weight:850;line-height:1.35}.listen-all{margin-top:.65rem;width:100%;}

/* Writing */
.writing-model{margin-bottom:1rem}.model-paragraph{font-size:1.02rem;line-height:1.8;font-weight:780}.model-paragraph span{padding:.06rem .1rem;border-radius:6px}.topic-red{color:#d94a3a}.reason-blue{color:#2f63c6}.detail-green{color:#2e8b57}.weak-black{color:#111}.model-paragraph u{text-underline-offset:3px;text-decoration-thickness:2px}.writing-ideas{margin-bottom:1rem}.ideas-large{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.idea-card{border-radius:22px;background:rgba(255,255,255,.55);border:1px solid rgba(20,34,71,.1);padding:.8rem;text-align:center}.idea-card img{width:100%;height:270px;object-fit:contain;border-radius:18px;background:#fff8e8}.idea-card h3{font-family:"Bebas Neue",Impact,sans-serif;color:#142247;font-size:2rem;margin:.55rem 0 .25rem}.idea-card p{font-weight:900;color:#4d493f;line-height:1.45}.ladder-img{animation:sway 4.4s ease-in-out infinite}.wheel-img{animation:slowTurn 22s linear infinite}@keyframes sway{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes slowTurn{to{transform:rotate(360deg)}}.writing-bottom{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.support-list p{margin:.35rem 0;font-weight:850}.code-table p{margin:.35rem 0;font-weight:850}

/* Mini */
.mini-icon-safe{width:96px;height:96px;border-radius:24px;background:linear-gradient(145deg,#fff8e8,#d9bc75);display:grid;place-items:center;box-shadow:0 16px 34px rgba(0,0,0,.2);}.mini-icon-safe .mini-paper{width:62px;height:70px;border-radius:12px;background:#fff4d7;display:grid;place-items:center;color:#d98273;font-size:2.2rem;line-height:.88;font-weight:900;overflow:hidden}.quiz-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.mini-question{border-radius:18px;background:rgba(255,255,255,.55);border:1px solid rgba(20,34,71,.1);padding:.75rem}.mini-question h3{font-family:Inter,Arial,sans-serif;text-transform:none;letter-spacing:0;font-size:.98rem;line-height:1.35;margin:0 0 .5rem}.mini-question button{width:100%;text-align:left;margin:.25rem 0;border-radius:12px;border:1px solid rgba(20,34,71,.12);padding:.45rem .55rem;background:rgba(255,255,255,.7);font-weight:800;color:#142247}.mini-question button.is-correct{background:rgba(120,147,123,.22);border-color:#78937b}.mini-question button.is-wrong{background:rgba(217,130,115,.2);border-color:#d98273}.mini-question .feedback{font-size:.85rem;margin:.3rem 0 0;padding:.3rem .45rem;min-height:1.6rem}.score-pill{font-weight:950;color:#142247;background:#ead3a0;border-radius:999px;padding:.35rem .65rem}.quiz-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem}.quiz-head h2{font-size:2.4rem}

@media (max-width:1100px){.final-index{height:auto;overflow:auto}.index-stage{height:auto;grid-template-columns:1fr;}.study-room-grid{grid-template-columns:repeat(2,1fr)}.final-study{height:auto;overflow:auto;grid-template-rows:auto auto auto}.studyhub-main{min-height:auto}.grammar-grid{grid-template-columns:1fr}.word-family-grid,.design-grid{grid-template-columns:repeat(2,1fr)}.speaking-grid{grid-template-columns:repeat(2,1fr)}.ideas-large,.writing-bottom{grid-template-columns:1fr}.idea-card img{height:220px}.quiz-grid{grid-template-columns:1fr}}
@media (max-width:680px){.bb-topbar{height:auto}.bb-nav{flex-wrap:wrap;justify-content:flex-end}.bb-footer{flex-direction:column;gap:.1rem}.index-stage{width:calc(100% - 18px);min-height:auto;}.index-title{font-size:clamp(4rem,19vw,5.8rem)}.index-actions{grid-template-columns:1fr}.mode-grid{grid-template-columns:1fr}.mode-tile{height:190px}.study-room-grid,.word-family-grid,.design-grid,.stuff-grid,.speaking-grid,.formula-cards,.used-cards{grid-template-columns:1fr}.checkpoint-strip{grid-template-columns:1fr;text-align:center}.check-action{width:100%}.detail-hero{align-items:flex-start}.detail-icon{width:86px;height:86px}.passive-head,.used-section{grid-template-columns:1fr}.detail-nav{flex-direction:column}.bb-back,.bb-next{width:100%}.hero-video-link{max-height:none}.quiz-head{align-items:flex-start;gap:.5rem;flex-direction:column}}


/* === Phase repair overrides — exact handover fixes === */
.bb-footer img[alt=""]{font-size:0;}
.final-index .bb-footer,.final-study .bb-footer,.final-detail .bb-footer,.control-room-page .bb-footer{min-height:58px;}
.final-index .bb-footer img,.final-study .bb-footer img,.final-detail .bb-footer img,.control-room-page .bb-footer img{width:172px;height:46px;object-fit:contain;}
.final-index .index-stage{grid-template-columns:minmax(310px,.56fr) minmax(520px,1.44fr);height:min(720px,calc(100dvh - 76px));}
.final-index .index-show{align-self:stretch;display:grid;place-items:center;}
.final-index .hero-video-link{width:min(790px,100%);max-height:61vh;border-width:9px;}
.final-index .index-title{font-size:clamp(4.3rem,7.2vw,6.3rem);}
.final-index .index-topic{font-size:.9rem;}
.final-index .index-promise{font-size:1.02rem;}
.final-index .index-actions{grid-template-columns:1fr 1fr;max-width:445px;}
.final-study .study-room-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;}
.final-study .study-room-card{height:100%;min-height:0;grid-template-rows:minmax(170px,1fr) auto;align-content:center;}
.final-study .room-img{min-height:168px;padding:.25rem;}
.final-study .room-img img{height:100%;max-height:260px;width:100%;object-fit:contain;}
.final-study .study-room-card strong{font-size:clamp(1.72rem,2.55vw,2.55rem);margin:.38rem 0 0;}
.check-action{height:58px;min-height:58px;}
.check-action .mini-board{overflow:hidden;font-size:1.1rem;font-weight:950;display:flex;align-items:center;justify-content:center;gap:.05rem;line-height:1;}
.check-action .mini-board span{display:block;line-height:1;}
.detail-main{padding:.7rem 0 1.05rem;}
.detail-hero{min-height:0;padding:.86rem 1rem;margin-bottom:.8rem;}
.compact-hero{grid-template-columns:1fr;}
.detail-hero h1{font-size:clamp(2.4rem,5vw,4.35rem);}
.detail-hero p:not(.eyebrow){font-size:clamp(.92rem,1.35vw,1.04rem);}
.detail-icon{width:clamp(112px,12vw,152px);height:clamp(112px,12vw,152px);object-fit:contain;}
.speaking-hero,.writing-hero,.mini-hero{grid-template-columns:1fr auto;}
.icon-jump-grid{display:grid;gap:.85rem;margin-bottom:1rem;}
.grammar-jumps{grid-template-columns:repeat(2,minmax(220px,1fr));}
.vocab-jumps{grid-template-columns:repeat(4,minmax(150px,1fr));}
.icon-jump-card{border-radius:24px;padding:.8rem;text-decoration:none;color:#142247;background:linear-gradient(145deg,#fff8e8,#e6d0a1);border:1px solid rgba(255,255,255,.62);box-shadow:0 17px 38px rgba(0,0,0,.2);display:grid;place-items:center;gap:.42rem;min-height:160px;transition:transform .2s ease,box-shadow .2s ease;}
.icon-jump-card:hover,.icon-jump-card:focus-visible{transform:translateY(-4px);box-shadow:0 26px 52px rgba(0,0,0,.28),0 0 0 4px rgba(226,198,132,.2);}
.icon-jump-card img{height:112px;width:100%;object-fit:contain;}
.icon-jump-card strong{font-family:"Bebas Neue",Impact,sans-serif;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(1.55rem,2.6vw,2.25rem);line-height:.92;text-align:center;}
.meaning-symbol{width:92px;height:92px;border-radius:24px;display:grid;place-items:center;font-size:2.7rem;background:linear-gradient(145deg,#142247,#253d75);color:#ffe49c;box-shadow:0 14px 28px rgba(0,0,0,.24);}
.focus-section{scroll-margin-top:70px;}
.section-visual-head{display:grid;grid-template-columns:1fr 150px;gap:1rem;align-items:center;margin-bottom:.8rem;}
.section-visual-head img{width:150px;height:150px;object-fit:contain;border-radius:24px;background:rgba(255,255,255,.48);}
.passive-layout{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(360px,1.08fr);gap:1rem;align-items:start;}
.video-card-inline{display:grid;gap:.65rem;}
.video-card-inline .video-frame{border-radius:22px;overflow:hidden;aspect-ratio:16/9;background:#050816;box-shadow:0 16px 34px rgba(0,0,0,.24);}
.video-card-inline iframe{width:100%;height:100%;border:0;}
.rule-stack{display:grid;gap:.75rem;}
.formula-main{font-size:clamp(1.05rem,1.8vw,1.32rem);}
.formula-card p{margin:.35rem 0;}
.used-section img{max-height:220px;width:100%;object-fit:contain;}
.used-card.wide{grid-column:1/-1;}
.vocab-page .detail-icon{width:140px;height:140px;object-fit:contain;}
.word-family-grid{grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:.78rem;}
.advertise-grid{grid-template-columns:repeat(4,minmax(190px,1fr));}
.design-grid{grid-template-columns:repeat(3,minmax(190px,1fr));gap:.78rem;}
.stuff-grid{grid-template-columns:repeat(2,minmax(240px,380px));justify-content:start;}
.word-card{min-height:0;padding:1rem;display:grid;grid-template-rows:auto auto auto 1fr auto;gap:.18rem;}
.word-icon{width:56px;height:56px;font-size:1.65rem;margin-bottom:.18rem;}
.word-card h3{font-size:clamp(1.45rem,2.05vw,2rem);}
.word-card .def,.word-card .ex{font-size:.92rem;}
.listen-orb,.speak-btn{display:inline-grid;place-items:center;min-width:38px;min-height:38px;padding:.38rem .5rem;line-height:1;}
.word-card .listen-orb{width:42px;justify-self:start;font-size:1rem;}
.word-card .pron,.word-index{display:none!important;}
.speaking-page .detail-icon{width:150px;height:150px;object-fit:contain;}
.speaking-grid{grid-template-columns:repeat(3,minmax(230px,1fr));align-items:stretch;}
.expression-bank{padding:.82rem;display:grid;align-content:start;}
.expression-bank h2{font-size:clamp(1.45rem,2.15vw,2rem);gap:.48rem;line-height:.96;}
.expression-bank h2 .tiny-icon{width:42px;height:42px;min-width:42px;}
.expression-bank li{display:grid;grid-template-columns:40px 1fr;gap:.45rem;align-items:center;font-size:.92rem;padding:.38rem .5rem;}
.expression-bank li span{line-height:1.28;}
.conversation-card{grid-column:span 2;}
.dialogue-row{grid-template-columns:42px 1fr;}
.person{width:42px;height:42px;font-size:1.2rem;}
.person-b{background:#315fa8;color:#fff4da;}
.listen-all{min-height:48px;font-weight:950;font-size:1rem;}
.writing-page .detail-icon{width:145px;height:145px;object-fit:contain;}
.one-line-subtitle{white-space:nowrap;}
.writing-model h2,.writing-ideas h2,.writing-bottom h2,.writing-rule h2{font-size:clamp(1.8rem,3vw,2.8rem);}
.model-paragraph{font-size:clamp(.96rem,1.14vw,1.08rem);line-height:1.72;}
.word-count{margin:.65rem 0 0;font-weight:950;color:#142247;background:rgba(200,164,106,.22);display:inline-flex;border-radius:999px;padding:.36rem .7rem;}
.ideas-large{grid-template-columns:repeat(2,minmax(280px,1fr));}
.idea-card img{height:clamp(280px,32vh,340px);object-fit:contain;transform-origin:center;}
.wheel-img{animation:softTilt 7.5s ease-in-out infinite!important;}
.ladder-img{animation:sway 5s ease-in-out infinite!important;}
@keyframes softTilt{0%,100%{transform:rotate(-.8deg)}50%{transform:rotate(.8deg)}}
.writing-bottom{grid-template-columns:1fr 1fr;}
.writing-rule .rule-copy{columns:2;column-gap:2rem;font-weight:800;line-height:1.45;color:#3f403c;}
.writing-rule p{break-inside:avoid;margin:.1rem 0 .65rem;}
.mini-icon-safe{overflow:hidden;}
.mini-icon-safe .mini-paper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;overflow:hidden;}
.quiz-grid{grid-template-columns:repeat(2,minmax(260px,1fr));}
.mini-question{padding:.7rem;}
.mini-question h3{font-size:.94rem;}
.mini-question button{padding:.4rem .55rem;}
.control-topbar{position:relative;}
.control-room-shell{padding-top:1rem;}
.mode-choice-card img,.launch-dice{object-fit:contain;background:#1a1220;}
.hidden{display:none!important;}
@media (max-width:1100px){.final-index .index-stage{grid-template-columns:1fr;height:auto;}.final-index{height:auto;overflow:auto}.final-study{height:auto;overflow:auto;grid-template-rows:auto auto auto}.final-study .study-room-grid{grid-template-columns:repeat(2,1fr)}.passive-layout,.section-visual-head{grid-template-columns:1fr}.vocab-jumps{grid-template-columns:repeat(2,1fr)}.advertise-grid,.design-grid{grid-template-columns:repeat(2,minmax(190px,1fr));}.speaking-grid{grid-template-columns:repeat(2,1fr)}.conversation-card{grid-column:1/-1}.one-line-subtitle{white-space:normal}.writing-rule .rule-copy{columns:1}.control-grid{grid-template-columns:1fr}.mode-choice-grid{grid-template-columns:repeat(3,1fr)}.mode-choice-card{min-height:240px}.mode-choice-card img{height:155px}}
@media (max-width:680px){.grammar-jumps,.vocab-jumps,.advertise-grid,.design-grid,.stuff-grid,.speaking-grid,.ideas-large,.writing-bottom,.quiz-grid{grid-template-columns:1fr}.speaking-hero,.writing-hero,.mini-hero{grid-template-columns:1fr}.detail-icon{justify-self:center}.section-visual-head img{justify-self:center}.icon-jump-card{min-height:145px}.icon-jump-card img{height:96px}.mode-choice-grid{grid-template-columns:1fr}.mode-choice-card img{height:190px}.final-index .index-actions{grid-template-columns:1fr}}

/* === Index approval repair: premium split landing + readable footer/signature === */
.final-index{
  min-height:100dvh;
  height:100dvh;
  overflow:hidden;
  display:grid;
  grid-template-rows:minmax(0,1fr) 78px;
}
.final-index .index-main{
  height:100%;
  min-height:0;
  padding:clamp(.45rem,1vw,.75rem) 0;
  display:grid;
  place-items:center;
}
.final-index .index-stage{
  width:min(1248px,calc(100% - 34px));
  height:min(650px,calc(100dvh - 92px));
  min-height:0;
  grid-template-columns:minmax(420px,.74fr) minmax(540px,1fr);
  gap:clamp(1.5rem,2.4vw,2.4rem);
  align-items:center;
  padding:clamp(1.15rem,2vw,1.9rem);
  border-radius:34px;
  background:
    radial-gradient(circle at 18% 20%,rgba(226,198,132,.16),transparent 20rem),
    radial-gradient(circle at 88% 74%,rgba(217,130,115,.16),transparent 24rem),
    linear-gradient(112deg,rgba(8,17,39,.98),rgba(16,29,63,.94) 48%,rgba(56,33,22,.92));
}
.final-index .index-card{
  width:100%;
  min-height:clamp(390px,58vh,500px);
  padding:clamp(1.65rem,2.7vw,2.35rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:30px;
  background:linear-gradient(148deg,rgba(6,14,34,.95),rgba(20,36,78,.78));
  border:1px solid rgba(255,248,232,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 24px 70px rgba(0,0,0,.3);
}
.final-index .index-kicker{
  font-size:clamp(.76rem,1.15vw,.92rem);
  letter-spacing:.17em;
  margin:0 0 .35rem;
}
.final-index .index-title{
  font-size:clamp(4.1rem,6.35vw,5.6rem);
  line-height:.9;
  letter-spacing:.012em;
  margin:0;
}
.final-index .index-topic{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  white-space:nowrap;
  margin:1.15rem 0 .9rem;
  padding:.62rem 1rem;
  font-size:clamp(.82rem,1.05vw,.98rem);
  line-height:1.05;
  border-radius:999px;
}
.final-index .index-promise{
  max-width:25ch;
  font-size:clamp(1rem,1.35vw,1.18rem);
  line-height:1.18;
  margin:0 0 1.25rem;
}
.final-index .index-actions{
  width:100%;
  max-width:420px;
  grid-template-columns:1fr 1fr;
  gap:.9rem;
}
.final-index .index-actions .bb-gold-btn{
  min-height:52px;
  padding:.82rem 1rem;
  font-size:clamp(.92rem,1.1vw,1.05rem);
  white-space:nowrap;
}
.final-index .index-show{
  align-self:center;
  justify-self:stretch;
  display:grid;
  place-items:center;
}
.final-index .hero-video-link{
  width:100%;
  max-width:760px;
  max-height:min(58vh,430px);
  border-width:9px;
  border-radius:30px;
  box-shadow:0 26px 76px rgba(0,0,0,.45),0 0 42px rgba(226,198,132,.18);
}
.final-index .bb-footer{
  min-height:78px;
  height:78px;
  gap:1.4rem;
  padding:.5rem 1.2rem;
  background:rgba(5,8,19,.78);
  font-size:clamp(.9rem,1.05vw,1rem);
  line-height:1.18;
  font-weight:850;
}
.final-index .bb-footer img,
.final-study .bb-footer img,
.final-detail .bb-footer img,
.control-room-page .bb-footer img{
  width:260px;
  height:56px;
  object-fit:contain;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.42));
}
.final-index .bb-footer span{
  color:rgba(255,248,232,.95);
}
@media (max-width:1180px){
  .final-index{height:auto;overflow:auto;grid-template-rows:auto auto;}
  .final-index .index-stage{height:auto;grid-template-columns:1fr;max-width:760px;}
  .final-index .index-card{min-height:0;}
  .final-index .hero-video-link{max-height:none;}
}
@media (max-width:680px){
  .final-index .index-stage{width:calc(100% - 18px);padding:1rem;gap:1rem;}
  .final-index .index-title{font-size:clamp(3.5rem,17vw,5rem);}
  .final-index .index-topic{white-space:normal;width:100%;}
  .final-index .index-actions{grid-template-columns:1fr;max-width:none;}
  .final-index .bb-footer{height:auto;min-height:92px;flex-direction:column;gap:.15rem;font-size:.8rem;}
  .final-index .bb-footer img{width:230px;height:50px;}
}

/* Writing readability repair: wheel should move slightly, not spin strongly. */
.wheel-img{animation:wheelNudge 6.5s ease-in-out infinite!important;}
@keyframes wheelNudge{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}

/* === Study approval repair: compact training studio cards + readable footer/signature === */
.final-study{
  min-height:100dvh;
  height:100dvh;
  overflow:hidden;
  display:grid;
  grid-template-rows:48px minmax(0,1fr) 76px;
}
.final-study .studyhub-main{
  width:min(1280px,calc(100% - 34px));
  min-height:0;
  margin:0 auto;
  padding:clamp(.35rem,.8vh,.55rem) 0 clamp(.6rem,1vh,.8rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(.75rem,1.4vh,1rem);
}
.final-study .studyhub-title{
  text-align:center;
  margin:0;
}
.final-study .studyhub-title h1{
  font-size:clamp(2.4rem,4.5vw,3.75rem);
  line-height:.86;
  margin:0;
  letter-spacing:.035em;
}
.final-study .studyhub-title p{
  margin:.22rem 0 0;
  font-size:clamp(.9rem,1.1vw,1rem);
  line-height:1.1;
}
.final-study .study-room-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(.85rem,1.45vw,1.15rem);
  align-items:center;
}
.final-study .study-room-card{
  height:clamp(238px,34vh,290px);
  min-height:0;
  padding:clamp(.68rem,1vw,.88rem);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:clamp(.42rem,.75vh,.62rem);
  border-radius:24px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.72),transparent 10rem),
    linear-gradient(145deg,#fff6e0,#d8c69b);
  box-shadow:0 16px 38px rgba(0,0,0,.26),inset 0 0 0 1px rgba(255,255,255,.42);
}
.final-study .study-room-card:hover,
.final-study .study-room-card:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 24px 52px rgba(0,0,0,.34),0 0 0 4px rgba(226,198,132,.18);
}
.final-study .room-img{
  width:100%;
  height:clamp(158px,24vh,205px);
  flex:0 0 clamp(158px,24vh,205px);
  border-radius:20px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(145deg,#fffaf0,#e2d1ad);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 9px 22px rgba(18,33,71,.12);
}
.final-study .room-img img{
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  object-position:center center;
  display:block;
  transform:scale(.96);
}
.final-study .study-room-card strong{
  margin:0;
  display:block;
  text-align:center;
  font-size:clamp(1.55rem,2.45vw,2.18rem);
  line-height:.9;
  letter-spacing:.04em;
  color:#10214d;
}
.final-study .checkpoint-strip{
  width:min(900px,100%);
  min-height:70px;
  margin:0 auto;
  padding:.58rem .72rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:.72rem;
  border-radius:22px;
}
.final-study .checkpoint-copy h2{
  font-size:clamp(1.45rem,2.6vw,2.35rem);
  line-height:.9;
  margin:0;
  white-space:nowrap;
}
.final-study .checkpoint-copy .ready{
  margin:0 0 .05rem;
  font-size:.72rem;
  line-height:1;
  letter-spacing:.18em;
}
.final-study .check-action{
  min-width:165px;
  height:56px;
  padding:.36rem .78rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.6rem;
  border-radius:999px;
}
.final-study .check-action .mini-board{
  width:44px;
  height:44px;
  flex:0 0 44px;
}
.final-study .check-action strong{
  white-space:nowrap;
  font-size:.96rem;
}
.final-study .bb-footer{
  min-height:76px;
  height:76px;
  padding:.42rem 1.2rem;
  gap:1.15rem;
  font-size:clamp(.86rem,1vw,.96rem);
  line-height:1.16;
  background:rgba(5,8,19,.82);
}
.final-study .bb-footer img{
  width:310px;
  height:60px;
  flex:0 0 auto;
  object-fit:contain;
}
@media (min-width:1100px) and (max-height:760px){
  .final-study{grid-template-rows:48px minmax(0,1fr) 68px;}
  .final-study .studyhub-main{gap:.62rem;padding:.28rem 0 .48rem;}
  .final-study .studyhub-title h1{font-size:clamp(2.2rem,4vw,3.2rem);}
  .final-study .study-room-card{height:clamp(220px,31vh,252px);padding:.58rem;}
  .final-study .room-img{height:clamp(145px,21vh,174px);flex-basis:clamp(145px,21vh,174px);}
  .final-study .study-room-card strong{font-size:clamp(1.42rem,2.15vw,1.95rem);}
  .final-study .checkpoint-strip{min-height:62px;padding:.48rem .64rem;}
  .final-study .check-action{height:50px;min-width:150px;}
  .final-study .check-action .mini-board{width:39px;height:39px;flex-basis:39px;}
  .final-study .bb-footer{height:68px;min-height:68px;}
  .final-study .bb-footer img{width:275px;height:54px;}
}
@media (max-width:1100px){
  .final-study{height:auto;overflow:auto;grid-template-rows:auto auto auto;}
  .final-study .studyhub-main{justify-content:flex-start;}
  .final-study .study-room-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .final-study .study-room-card{height:auto;min-height:250px;}
  .final-study .checkpoint-strip{grid-template-columns:1fr;justify-items:center;text-align:center;}
  .final-study .checkpoint-copy h2{white-space:normal;}
}
@media (max-width:680px){
  .final-study .study-room-grid{grid-template-columns:1fr;}
  .final-study .study-room-card{min-height:255px;}
  .final-study .room-img{height:178px;flex-basis:178px;}
  .final-study .bb-footer{height:auto;min-height:96px;flex-direction:column;gap:.1rem;text-align:center;}
  .final-study .bb-footer img{width:260px;height:52px;}
  .final-study .check-action{width:100%;}
}

/* Study room icon fit repair — show the full square icons without squeezing/cropping */
.final-study .studyhub-main{
  width:min(100% - 24px, 1320px);
  gap:clamp(.85rem,1.45vh,1.15rem);
}
.final-study .study-room-grid{
  gap:clamp(1rem,1.55vw,1.35rem);
}
.final-study .study-room-card{
  height:clamp(300px,39vh,335px);
  padding:clamp(.75rem,1vw,.95rem);
  justify-content:flex-start;
  gap:clamp(.42rem,.75vh,.65rem);
}
.final-study .room-img{
  width:100%;
  height:clamp(225px,29vh,258px);
  flex:0 0 clamp(225px,29vh,258px);
  border-radius:20px;
  overflow:visible;
  background:linear-gradient(145deg,#fffaf0,#e4d3ae);
}
.final-study .room-img img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
  transform:none;
}
.final-study .study-room-card strong{
  margin:.08rem 0 0;
  font-size:clamp(1.55rem,2.35vw,2.25rem);
}

@media (min-width:1100px) and (max-height:760px){
  .final-study{grid-template-rows:48px minmax(0,1fr) 72px;}
  .final-study .studyhub-main{gap:.7rem;padding:.24rem 0 .42rem;}
  .final-study .studyhub-title h1{font-size:clamp(2.1rem,3.8vw,3.05rem);}
  .final-study .studyhub-title p{font-size:.92rem;}
  .final-study .study-room-card{height:clamp(285px,38vh,310px);padding:.68rem;}
  .final-study .room-img{height:clamp(210px,28vh,232px);flex-basis:clamp(210px,28vh,232px);}
  .final-study .study-room-card strong{font-size:clamp(1.42rem,2.15vw,2rem);}
  .final-study .checkpoint-strip{min-height:58px;padding:.42rem .64rem;}
  .final-study .bb-footer{height:72px;min-height:72px;}
  .final-study .bb-footer img{width:290px;height:58px;}
}

/* === Emergency Study card fix: full icons AND visible labels === */
.final-study .study-room-card{
  height:clamp(268px,34vh,292px) !important;
  min-height:268px !important;
  display:grid !important;
  grid-template-rows:minmax(198px,1fr) auto !important;
  align-items:center !important;
  justify-items:center !important;
  gap:clamp(.28rem,.55vh,.45rem) !important;
  padding:clamp(.62rem,.9vw,.78rem) !important;
  overflow:hidden !important;
}
.final-study .room-img{
  width:100% !important;
  height:clamp(198px,25.5vh,218px) !important;
  min-height:198px !important;
  max-height:218px !important;
  flex:0 0 auto !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  border-radius:20px !important;
}
.final-study .room-img img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  display:block !important;
}
.final-study .study-room-card strong{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
  padding:0 !important;
  min-height:1em !important;
  line-height:.92 !important;
  text-align:center !important;
  font-size:clamp(1.62rem,2.35vw,2.18rem) !important;
  white-space:nowrap !important;
  color:#10214d !important;
}
@media (min-width:1100px) and (max-height:760px){
  .final-study .study-room-card{
    height:clamp(258px,33.5vh,276px) !important;
    min-height:258px !important;
    grid-template-rows:minmax(188px,1fr) auto !important;
    padding:.58rem !important;
  }
  .final-study .room-img{
    height:clamp(188px,24.6vh,204px) !important;
    min-height:188px !important;
    max-height:204px !important;
  }
  .final-study .study-room-card strong{
    font-size:clamp(1.48rem,2.1vw,1.9rem) !important;
  }
}
@media (max-width:1100px){
  .final-study .study-room-card{
    height:auto !important;
    min-height:268px !important;
    grid-template-rows:minmax(200px,auto) auto !important;
  }
  .final-study .room-img{
    height:205px !important;
    min-height:205px !important;
    max-height:none !important;
  }
}
@media (max-width:680px){
  .final-study .room-img{
    height:210px !important;
    min-height:210px !important;
  }
  .final-study .study-room-card strong{
    white-space:normal !important;
  }
}

/* === Targeted Study icon placeholder fix: larger image area, labels still visible === */
.final-study .study-room-card{
  height:clamp(320px,42vh,360px) !important;
  min-height:320px !important;
  display:grid !important;
  grid-template-rows:minmax(248px,1fr) auto !important;
  align-items:center !important;
  justify-items:center !important;
  gap:clamp(.32rem,.65vh,.55rem) !important;
  padding:clamp(.68rem,.95vw,.88rem) !important;
  overflow:hidden !important;
}

.final-study .room-img{
  width:100% !important;
  height:clamp(248px,32vh,285px) !important;
  min-height:248px !important;
  max-height:285px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  border-radius:20px !important;
}

.final-study .room-img img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  display:block !important;
}

.final-study .study-room-card strong{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  margin:0 !important;
  padding:0 !important;
  line-height:.92 !important;
  text-align:center !important;
  font-size:clamp(1.62rem,2.35vw,2.18rem) !important;
  white-space:nowrap !important;
  color:#10214d !important;
}

@media (min-width:1100px) and (max-height:760px){
  .final-study .study-room-card{
    height:clamp(300px,39vh,330px) !important;
    min-height:300px !important;
    grid-template-rows:minmax(230px,1fr) auto !important;
  }

  .final-study .room-img{
    height:clamp(230px,30vh,260px) !important;
    min-height:230px !important;
    max-height:260px !important;
  }
}

@media (max-width:1100px){
  .final-study .study-room-card{
    height:auto !important;
    min-height:330px !important;
    grid-template-rows:minmax(255px,auto) auto !important;
  }

  .final-study .room-img{
    height:255px !important;
    min-height:255px !important;
    max-height:none !important;
  }
}

@media (max-width:680px){
  .final-study .study-room-card{
    min-height:340px !important;
  }

  .final-study .room-img{
    height:265px !important;
    min-height:265px !important;
  }

  .final-study .study-room-card strong{
    white-space:normal !important;
  }
}

/* === Targeted Grammar flow fix: icon + rule name -> explanation/examples -> video === */
.grammar-page .grammar-rule-section{
  display:block !important;
  margin-top:1rem !important;
  padding:clamp(1rem,1.7vw,1.35rem) !important;
  border-radius:28px !important;
}

.grammar-page .grammar-rule-head{
  display:flex !important;
  align-items:center !important;
  gap:clamp(.75rem,1.3vw,1rem) !important;
  margin-bottom:.9rem !important;
}

.grammar-page .grammar-rule-icon{
  flex:0 0 clamp(100px,10vw,138px) !important;
  width:clamp(100px,10vw,138px) !important;
  height:clamp(100px,10vw,138px) !important;
  max-width:138px !important;
  max-height:138px !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.38) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 12px 24px rgba(20,34,71,.14) !important;
}

.grammar-page .grammar-rule-head h2{
  margin:0 !important;
  font-size:clamp(2.35rem,4.5vw,4rem) !important;
  line-height:.86 !important;
}

.grammar-page .grammar-explain-card{
  display:grid !important;
  gap:.85rem !important;
  padding:clamp(.9rem,1.4vw,1.15rem) !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,247,226,.58)) !important;
  border:1px solid rgba(200,164,106,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65) !important;
}

.grammar-page .rule-meaning{
  margin:0 !important;
  color:#32405f !important;
  font-weight:850 !important;
  font-size:clamp(1rem,1.35vw,1.12rem) !important;
  line-height:1.45 !important;
}

.grammar-page .rule-formula{
  margin:0 !important;
  padding:.75rem .85rem !important;
  border-radius:20px !important;
  background:linear-gradient(135deg,#142247,#253866) !important;
  color:#fff7e1 !important;
  box-shadow:0 14px 28px rgba(20,34,71,.18) !important;
}

.grammar-page .grammar-example-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important;
  gap:.75rem !important;
}

.grammar-page .grammar-example-grid .formula-card,
.grammar-page .grammar-example-grid .used-card{
  min-height:0 !important;
  border-radius:20px !important;
  padding:.85rem !important;
  background:rgba(255,255,255,.66) !important;
  border:1px solid rgba(20,34,71,.1) !important;
  box-shadow:0 8px 18px rgba(20,34,71,.08) !important;
}

.grammar-page .grammar-example-grid .formula-card p,
.grammar-page .grammar-example-grid .used-card p{
  margin:.25rem 0 0 !important;
  font-size:clamp(.95rem,1.2vw,1.04rem) !important;
  line-height:1.5 !important;
}

.grammar-page .grammar-video-block{
  display:grid !important;
  gap:.7rem !important;
  margin-top:1rem !important;
  padding:clamp(.8rem,1.2vw,1rem) !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,rgba(20,34,71,.96),rgba(41,31,48,.95)) !important;
  border:1px solid rgba(226,198,132,.28) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.22) !important;
}

.grammar-page .grammar-video-block .video-frame{
  width:100% !important;
  max-width:860px !important;
  margin:0 auto !important;
  border-radius:22px !important;
  overflow:hidden !important;
  aspect-ratio:16/9 !important;
  background:#050816 !important;
}

.grammar-page .grammar-video-block iframe{
  width:100% !important;
  height:100% !important;
  border:0 !important;
}

.grammar-page .grammar-video-block .bb-back{
  justify-self:center !important;
}

@media (max-width:760px){
  .grammar-page .grammar-rule-head{
    align-items:flex-start !important;
  }
  .grammar-page .grammar-rule-icon{
    flex-basis:92px !important;
    width:92px !important;
    height:92px !important;
  }
}

@media (max-width:520px){
  .grammar-page .grammar-rule-head{
    display:grid !important;
    justify-items:center !important;
    text-align:center !important;
  }
  .grammar-page .grammar-rule-icon{
    width:108px !important;
    height:108px !important;
  }
}

/* === Targeted Vocabulary Studio UI/audio-button polish === */
.vocab-page .detail-hero{
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
}

.vocab-page .detail-icon{
  width:clamp(170px,18vw,230px) !important;
  height:clamp(150px,16vw,210px) !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:26px !important;
}

.vocab-page .icon-jump-card .meaning-symbol{
  width:clamp(96px,9vw,118px) !important;
  height:clamp(96px,9vw,118px) !important;
  font-size:clamp(2.65rem,4vw,3.25rem) !important;
}

.vocab-page .word-card{
  position:relative !important;
  padding:clamp(.92rem,1.15vw,1.08rem) !important;
  padding-top:clamp(.95rem,1.15vw,1.08rem) !important;
  overflow:visible !important;
  grid-template-rows:auto auto auto 1fr !important;
}

.vocab-page .word-icon{
  width:clamp(40px,3.8vw,46px) !important;
  height:clamp(40px,3.8vw,46px) !important;
  min-width:40px !important;
  min-height:40px !important;
  font-size:clamp(1.18rem,2vw,1.38rem) !important;
  margin:0 3.2rem .34rem 0 !important;
  border-radius:13px !important;
}

.vocab-page .word-card .listen-orb{
  position:absolute !important;
  top:clamp(.88rem,1.05vw,1rem) !important;
  right:clamp(.88rem,1.05vw,1rem) !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  justify-self:auto !important;
  align-self:auto !important;
  font-size:1.02rem !important;
  line-height:1 !important;
  border-radius:999px !important;
  box-shadow:0 9px 18px rgba(20,34,71,.16), inset 0 1px 0 rgba(255,255,255,.75) !important;
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
  z-index:2 !important;
}

.vocab-page .word-card .listen-orb:hover,
.vocab-page .word-card .listen-orb:focus-visible{
  transform:translateY(-2px) scale(1.04) !important;
  box-shadow:0 13px 24px rgba(20,34,71,.22), 0 0 0 4px rgba(226,198,132,.24), inset 0 1px 0 rgba(255,255,255,.82) !important;
  outline:none !important;
}

.vocab-page .word-card .listen-orb:active,
.vocab-page .word-card .listen-orb.is-speaking{
  transform:translateY(0) scale(.98) !important;
  filter:saturate(1.18) brightness(1.03) !important;
  box-shadow:0 6px 14px rgba(20,34,71,.2), 0 0 0 4px rgba(216,99,84,.18), inset 0 1px 0 rgba(255,255,255,.8) !important;
}

.vocab-page .word-card h3{
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:clamp(1.02rem,1.45vw,1.42rem) !important;
  line-height:1.13 !important;
  letter-spacing:.015em !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  color:#142247 !important;
  margin:.08rem 0 .42rem !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  hyphens:auto !important;
  max-width:100% !important;
}

.vocab-page .word-card .def,
.vocab-page .word-card .ex{
  font-size:clamp(.9rem,1vw,.98rem) !important;
  line-height:1.42 !important;
}

@media (max-width:1100px){
  .vocab-page .detail-icon{
    width:clamp(150px,22vw,200px) !important;
    height:clamp(138px,20vw,186px) !important;
  }

  .vocab-page .word-card .listen-orb{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }
}

@media (max-width:680px){
  .vocab-page .detail-hero{
    grid-template-columns:1fr !important;
  }

  .vocab-page .detail-icon{
    justify-self:center !important;
    width:160px !important;
    height:150px !important;
  }

  .vocab-page .word-icon{
    width:42px !important;
    height:42px !important;
  }

  .vocab-page .word-card h3{
    font-size:clamp(1.08rem,5vw,1.32rem) !important;
  }
}

/* === Speech buttons: visible active state for vocabulary and speaking === */
.speak-btn.is-speaking,
.listen-orb.is-speaking{
  filter:saturate(1.18) brightness(1.04) !important;
  box-shadow:0 6px 14px rgba(20,34,71,.22), 0 0 0 4px rgba(216,99,84,.20), inset 0 1px 0 rgba(255,255,255,.82) !important;
}

/* === Refined Speaking Bank and compact Vocabulary cards === */
.speaking-refined .speaking-main{
  width:min(1180px,94vw) !important;
  margin:0 auto !important;
  padding-bottom:1.2rem !important;
}

.speaking-refined .speaking-hero-refined{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) clamp(190px,22vw,270px) !important;
  align-items:center !important;
  gap:clamp(1rem,2vw,1.6rem) !important;
  margin:clamp(.55rem,1vh,.8rem) 0 .9rem !important;
  padding:clamp(1rem,2vw,1.45rem) !important;
  border-radius:30px !important;
  background:linear-gradient(145deg,rgba(255,248,232,.94),rgba(234,215,176,.9)) !important;
  border:1px solid rgba(226,198,132,.46) !important;
  box-shadow:0 22px 46px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.66) !important;
  overflow:hidden !important;
}

.speaking-refined .speaking-hero-copy h1{
  margin:.1rem 0 .35rem !important;
  font-size:clamp(3.2rem,7.5vw,6.2rem) !important;
  line-height:.82 !important;
  color:#142247 !important;
}

.speaking-refined .speaking-hero-copy p:not(.eyebrow){
  margin:0 !important;
  max-width:760px !important;
  color:#3e475c !important;
  font-size:clamp(1rem,1.5vw,1.2rem) !important;
  font-weight:850 !important;
  line-height:1.45 !important;
}

.speaking-refined .speaking-hero-visual{
  justify-self:end !important;
  width:clamp(170px,20vw,245px) !important;
  height:clamp(140px,16vw,205px) !important;
  display:grid !important;
  place-items:center !important;
  border-radius:26px !important;
  background:linear-gradient(145deg,rgba(20,34,71,.95),rgba(42,58,99,.92)) !important;
  border:1px solid rgba(226,198,132,.32) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 14px 30px rgba(20,34,71,.22) !important;
}

.speaking-refined .speaking-hero-visual img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:.45rem !important;
}

.speaking-refined .refined-speaking-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(.75rem,1.2vw,1rem) !important;
  align-items:stretch !important;
}

.speaking-refined .refined-bank{
  display:flex !important;
  flex-direction:column !important;
  min-height:0 !important;
  padding:clamp(.82rem,1.1vw,1rem) !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,#fff8e8,#ead7b0) !important;
  border:1px solid rgba(226,198,132,.4) !important;
  box-shadow:0 15px 30px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.65) !important;
}

.speaking-refined .bank-title{
  border-bottom:1px solid rgba(20,34,71,.10) !important;
  padding-bottom:.5rem !important;
  margin-bottom:.58rem !important;
}

.speaking-refined .bank-title h2{
  display:block !important;
  margin:0 !important;
  color:#142247 !important;
  font-size:clamp(1.55rem,2.4vw,2.05rem) !important;
  line-height:.95 !important;
}

.speaking-refined .bank-title small{
  display:block !important;
  margin-top:.18rem !important;
  color:#655842 !important;
  font-weight:850 !important;
  font-size:.88rem !important;
}

.speaking-refined .refined-bank ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:.45rem !important;
}

.speaking-refined .phrase-row{
  min-height:44px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 38px !important;
  align-items:center !important;
  gap:.55rem !important;
  padding:.48rem .48rem .48rem .7rem !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.52) !important;
  border:1px solid rgba(20,34,71,.08) !important;
  color:#1b2746 !important;
  font-weight:850 !important;
  line-height:1.28 !important;
  box-shadow:0 6px 14px rgba(20,34,71,.06) !important;
}

.speaking-refined .audio-icon-only,
.speaking-refined .conversation-play,
.vocab-refined .word-card .listen-orb{
  cursor:pointer !important;
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease, opacity .16s ease !important;
}

.speaking-refined .audio-icon-only{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  border:1px solid rgba(20,34,71,.15) !important;
  background:linear-gradient(135deg,#fff8e8,#dfbc72) !important;
  color:#142247 !important;
  font-size:1rem !important;
  line-height:1 !important;
  box-shadow:0 8px 16px rgba(20,34,71,.16), inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.speaking-refined .audio-icon-only:hover,
.speaking-refined .audio-icon-only:focus-visible,
.speaking-refined .conversation-play:hover,
.speaking-refined .conversation-play:focus-visible,
.vocab-refined .word-card .listen-orb:hover,
.vocab-refined .word-card .listen-orb:focus-visible{
  transform:translateY(-2px) scale(1.04) !important;
  box-shadow:0 13px 24px rgba(20,34,71,.23), 0 0 0 4px rgba(226,198,132,.24), inset 0 1px 0 rgba(255,255,255,.82) !important;
  outline:none !important;
}

.speaking-refined .audio-icon-only:active,
.speaking-refined .audio-icon-only.is-speaking,
.speaking-refined .conversation-play:active,
.speaking-refined .conversation-play.is-speaking,
.vocab-refined .word-card .listen-orb:active,
.vocab-refined .word-card .listen-orb.is-speaking{
  transform:translateY(0) scale(.98) !important;
  filter:saturate(1.18) brightness(1.04) !important;
  box-shadow:0 7px 15px rgba(20,34,71,.22), 0 0 0 4px rgba(216,99,84,.20), inset 0 1px 0 rgba(255,255,255,.82) !important;
}

.speaking-refined .audio-disabled,
.vocab-refined .audio-disabled{
  opacity:.48 !important;
  cursor:not-allowed !important;
  filter:grayscale(.25) !important;
}

.speaking-refined .speaking-support-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(.75rem,1.2vw,1rem) !important;
  margin:clamp(.75rem,1.2vw,1rem) 0 !important;
}

.speaking-refined .speaking-support-grid article{
  padding:clamp(.75rem,1vw,.95rem) !important;
  border-radius:22px !important;
  background:linear-gradient(145deg,rgba(255,248,232,.9),rgba(238,221,184,.82)) !important;
  border:1px solid rgba(226,198,132,.35) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.14) !important;
  color:#23304d !important;
}

.speaking-refined .speaking-support-grid h2{
  margin:0 0 .35rem !important;
  font-size:clamp(1.28rem,2vw,1.65rem) !important;
  line-height:1 !important;
  color:#142247 !important;
}

.speaking-refined .speaking-support-grid p,
.speaking-refined .speaking-support-grid li{
  font-weight:800 !important;
  color:#3e475c !important;
  line-height:1.35 !important;
}

.speaking-refined .speaking-support-grid ol{
  margin:.1rem 0 0 1.05rem !important;
  padding:0 !important;
}

.speaking-refined .mini-conversation-refined{
  max-width:980px !important;
  margin:.9rem auto 1rem !important;
  padding:clamp(.9rem,1.4vw,1.15rem) !important;
  border-radius:28px !important;
  background:linear-gradient(145deg,#fff8e8,#ead7b0) !important;
  border:1px solid rgba(226,198,132,.42) !important;
  box-shadow:0 18px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.66) !important;
}

.speaking-refined .conversation-heading{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:1rem !important;
  margin-bottom:.85rem !important;
}

.speaking-refined .conversation-heading h2{
  margin:.05rem 0 .2rem !important;
  font-size:clamp(2rem,4vw,3.15rem) !important;
  line-height:.9 !important;
  color:#142247 !important;
}

.speaking-refined .conversation-heading p:not(.eyebrow){
  margin:0 !important;
  color:#3e475c !important;
  font-weight:850 !important;
}

.speaking-refined .conversation-play{
  display:inline-grid !important;
  grid-auto-flow:column !important;
  align-items:center !important;
  gap:.45rem !important;
  min-height:48px !important;
  padding:.72rem 1.05rem !important;
  border-radius:999px !important;
  border:1px solid rgba(20,34,71,.15) !important;
  background:linear-gradient(135deg,#fff8e8,#dfbc72) !important;
  color:#142247 !important;
  font-weight:950 !important;
  box-shadow:0 10px 22px rgba(20,34,71,.18), inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.speaking-refined .chat-panel{
  display:grid !important;
  gap:.58rem !important;
  padding:.75rem !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,rgba(20,34,71,.08),rgba(255,255,255,.28)) !important;
}

.speaking-refined .chat-bubble{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) !important;
  gap:.55rem !important;
  align-items:start !important;
  max-width:82% !important;
}

.speaking-refined .chat-bubble.student-b{
  justify-self:end !important;
  grid-template-columns:minmax(0,1fr) 42px !important;
}

.speaking-refined .chat-bubble.student-b .student-avatar{
  order:2 !important;
}

.speaking-refined .student-avatar{
  width:42px !important;
  height:42px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  background:#142247 !important;
  color:#ffe49c !important;
  box-shadow:0 8px 16px rgba(20,34,71,.18) !important;
}

.speaking-refined .chat-bubble > div{
  padding:.55rem .75rem !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(20,34,71,.08) !important;
  box-shadow:0 8px 16px rgba(20,34,71,.08) !important;
}

.speaking-refined .chat-bubble.student-b > div{
  background:rgba(255,242,209,.78) !important;
}

.speaking-refined .chat-bubble strong{
  display:block !important;
  color:#142247 !important;
  font-size:.82rem !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  margin-bottom:.2rem !important;
}

.speaking-refined .chat-bubble p{
  margin:0 !important;
  color:#273555 !important;
  font-weight:850 !important;
  line-height:1.35 !important;
}

.speaking-refined .refined-nav{
  margin-top:.8rem !important;
  display:flex !important;
  justify-content:center !important;
  gap:.75rem !important;
}

.speaking-refined .refined-nav a{
  min-width:190px !important;
  text-align:center !important;
}

/* Compact Vocabulary section: icons support the words, not overpower them. */
.vocab-refined .icon-jump-card{
  min-height:118px !important;
  padding:.65rem !important;
  gap:.25rem !important;
}

.vocab-refined .icon-jump-card .meaning-symbol{
  width:clamp(64px,6vw,78px) !important;
  height:clamp(64px,6vw,78px) !important;
  min-width:64px !important;
  min-height:64px !important;
  font-size:clamp(1.85rem,2.8vw,2.25rem) !important;
  border-radius:18px !important;
}

.vocab-refined .icon-jump-card strong{
  font-size:clamp(1.28rem,2vw,1.75rem) !important;
  line-height:.98 !important;
}

.vocab-refined .word-family-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  gap:.62rem !important;
}

.vocab-refined .design-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  gap:.62rem !important;
}

.vocab-refined .stuff-grid{
  grid-template-columns:repeat(2,minmax(180px,260px)) !important;
  gap:.65rem !important;
}

.vocab-refined .word-card{
  position:relative !important;
  min-height:172px !important;
  height:100% !important;
  padding:.78rem !important;
  display:grid !important;
  grid-template-rows:42px auto auto 1fr !important;
  gap:.18rem !important;
  overflow:hidden !important;
  border-radius:19px !important;
}

.vocab-refined .word-icon{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  margin:0 3.1rem .2rem 0 !important;
  font-size:1.22rem !important;
  border-radius:13px !important;
}

.vocab-refined .word-card .listen-orb{
  position:absolute !important;
  top:.78rem !important;
  right:.78rem !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  font-size:1rem !important;
  line-height:1 !important;
  z-index:3 !important;
}

.vocab-refined .word-card h3{
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  margin:.02rem 0 .3rem !important;
  color:#142247 !important;
  font-size:clamp(1.02rem,1.35vw,1.32rem) !important;
  line-height:1.12 !important;
  letter-spacing:.01em !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  hyphens:auto !important;
  max-width:100% !important;
}

.vocab-refined .word-card .def,
.vocab-refined .word-card .ex{
  margin:.22rem 0 !important;
  color:#3d3c37 !important;
  font-size:clamp(.86rem,.96vw,.94rem) !important;
  line-height:1.32 !important;
  font-weight:760 !important;
}

@media (max-width:1100px){
  .speaking-refined .refined-speaking-grid,
  .speaking-refined .speaking-support-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .vocab-refined .stuff-grid{
    grid-template-columns:repeat(2,minmax(180px,1fr)) !important;
  }
}

@media (max-width:760px){
  .speaking-refined .speaking-hero-refined,
  .speaking-refined .conversation-heading{
    grid-template-columns:1fr !important;
  }
  .speaking-refined .speaking-hero-visual{
    justify-self:center !important;
  }
  .speaking-refined .refined-speaking-grid,
  .speaking-refined .speaking-support-grid{
    grid-template-columns:1fr !important;
  }
  .speaking-refined .chat-bubble,
  .speaking-refined .chat-bubble.student-b{
    max-width:100% !important;
  }
  .speaking-refined .refined-nav{
    flex-direction:column !important;
  }
  .speaking-refined .refined-nav a{
    width:100% !important;
    min-width:0 !important;
  }
  .vocab-refined .vocab-jumps,
  .vocab-refined .stuff-grid{
    grid-template-columns:1fr !important;
  }
}


/* === Writing page refinement: icon, hierarchy, model paragraph, rules === */
.writing-page .writing-hero-refined{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.writing-page .hero-help{
  margin-top:.5rem;
  max-width:58ch;
  color:#fff0c8;
  font-weight:800;
}
.writing-page .detail-icon{
  width:168px;
  height:168px;
  padding:.35rem;
  border-radius:26px;
  background:rgba(255,248,232,.08);
  box-shadow:0 18px 34px rgba(0,0,0,.22);
}
.writing-page .refined-panel h2{
  font-size:clamp(1.8rem,2.7vw,2.55rem);
  margin-bottom:.3rem;
}
.writing-page .section-note{
  margin:.22rem 0 .8rem;
  color:#4e4a40;
  font-size:.98rem;
  line-height:1.5;
  font-weight:700;
}
.writing-page .model-paragraph-refined{
  display:flex;
  flex-wrap:wrap;
  gap:.44rem .36rem;
  font-size:1rem;
  line-height:1.85;
  font-weight:780;
}
.writing-page .model-paragraph-refined span{
  padding:.08rem .14rem;
}
.writing-page .expr-pill{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.1rem .48rem;
  margin-right:.22rem;
  font-size:.85em;
  font-weight:900;
  letter-spacing:.01em;
  box-shadow:inset 0 0 0 1px rgba(20,34,71,.08);
}
.writing-page .expr-blue{background:rgba(49,95,168,.14); color:#315fa8;}
.writing-page .expr-green{background:rgba(120,147,123,.16); color:#2e8b57;}
.writing-page .expr-red{background:rgba(217,74,58,.14); color:#c84839;}
.writing-page .expr-dark{background:rgba(20,34,71,.1); color:#222;}
.writing-page .writing-support-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  margin:1rem 0;
}
.writing-page .support-card{height:100%;}
.writing-page .support-list-grid,
.writing-page .expression-list{
  display:grid;
  gap:.5rem;
}
.writing-page .support-list-grid p,
.writing-page .expression-list p{
  margin:0;
  padding:.65rem .8rem;
  border-radius:16px;
  background:rgba(255,255,255,.44);
  border:1px solid rgba(20,34,71,.08);
  font-size:.97rem;
  font-weight:800;
  color:#23314e;
}
.writing-page .expression-list p{background:rgba(214,170,90,.12);}
.writing-page .writing-rule{
  margin-top:0;
}
.writing-page .rule-grid-refined{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.85rem;
}
.writing-page .rule-block{
  border-radius:20px;
  padding:.9rem .95rem;
  border:1px solid rgba(20,34,71,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
}
.writing-page .rule-block p{
  margin:.1rem 0 0;
  font-size:.96rem;
  line-height:1.55;
  color:#26324b;
  font-weight:760;
}
.writing-page .rule-tag{
  display:inline-flex;
  border-radius:999px;
  padding:.26rem .58rem;
  font-size:.72rem;
  letter-spacing:.08em;
  font-weight:950;
  text-transform:uppercase;
  margin-bottom:.28rem;
}
.writing-page .rule-navy{background:linear-gradient(145deg,rgba(49,95,168,.08),rgba(255,255,255,.5));}
.writing-page .rule-navy .rule-tag{background:#142247;color:#fff4da;}
.writing-page .rule-gold{background:linear-gradient(145deg,rgba(214,170,90,.14),rgba(255,255,255,.55));}
.writing-page .rule-gold .rule-tag{background:#d6aa5a;color:#142247;}
.writing-page .rule-blue{background:linear-gradient(145deg,rgba(49,95,168,.12),rgba(255,255,255,.55));}
.writing-page .rule-blue .rule-tag{background:#315fa8;color:#fff4da;}
.writing-page .rule-green{background:linear-gradient(145deg,rgba(120,147,123,.14),rgba(255,255,255,.55));}
.writing-page .rule-green .rule-tag{background:#78937b;color:#fff4da;}
.writing-page .rule-coral{background:linear-gradient(145deg,rgba(217,130,115,.14),rgba(255,255,255,.55));}
.writing-page .rule-coral .rule-tag{background:#d98273;color:#fff;}
.writing-page .rule-ink{background:linear-gradient(145deg,rgba(20,34,71,.06),rgba(255,255,255,.58));}
.writing-page .rule-ink .rule-tag{background:#21304d;color:#fff4da;}
.writing-page .rule-soft{background:linear-gradient(145deg,rgba(255,240,199,.72),rgba(255,255,255,.55)); grid-column:1/-1;}
.writing-page .rule-soft .rule-tag{background:#f2d886;color:#142247;}
.writing-page .writing-ideas .idea-card h3,
.writing-page .writing-support-row h2,
.writing-page .writing-rule h2,
.writing-page .writing-model h2{
  font-family:"Bebas Neue",Impact,sans-serif;
  line-height:.95;
}
@media (max-width:1100px){
  .writing-page .rule-grid-refined,
  .writing-page .writing-support-row{grid-template-columns:1fr;}
}
@media (max-width:680px){
  .writing-page .writing-hero-refined{grid-template-columns:1fr;}
  .writing-page .detail-icon{justify-self:center;width:150px;height:150px;}
}


/* === Writing follow-up fix: numbered steps, grouped plan, stacked write flow, paragraph colors === */
.writing-page .model-paragraph.one-paragraph{display:block;}
.writing-page .model-paragraph.one-paragraph span{display:inline; padding:.02rem .08rem;}
.writing-page .steps-layout{grid-template-columns:1fr 1fr;}
.writing-page .step-head{display:flex; align-items:center; gap:.45rem; margin-bottom:.35rem;}
.writing-page .step-num{width:1.9rem; height:1.9rem; border-radius:999px; display:inline-grid; place-items:center; background:#142247; color:#fff4da; font-weight:950; font-size:.95rem; box-shadow:0 6px 16px rgba(0,0,0,.14);}
.writing-page .rule-gold .step-num{background:#d6aa5a; color:#142247;}
.writing-page .rule-coral .step-num{background:#d98273; color:#fff;}
.writing-page .rule-soft .step-num{background:#f2d886; color:#142247;}
.writing-page .plan-lines{display:grid; gap:.35rem; margin-top:.55rem;}
.writing-page .plan-lines p{margin:0; padding:.55rem .7rem; border-radius:14px; background:rgba(255,255,255,.42); border:1px solid rgba(20,34,71,.06);}
.writing-page .write-steps-block{grid-column:2; grid-row:2 / span 2;}
.writing-page .write-lines{display:grid; gap:.32rem; margin-top:.2rem;}
.writing-page .write-line{margin:0; padding:.5rem .68rem; border-radius:14px; background:rgba(255,255,255,.42); border:1px solid rgba(20,34,71,.07); font-weight:850;}
.writing-page .write-line.topic-red{color:#d94a3a;}
.writing-page .write-line.reason-blue{color:#2f63c6;}
.writing-page .write-line.detail-green{color:#2e8b57;}
.writing-page .write-line.weak-black{color:#111;}
.writing-page .rule-soft{grid-column:1 / -1;}
@media (max-width:1100px){
  .writing-page .steps-layout{grid-template-columns:1fr;}
  .writing-page .write-steps-block,
  .writing-page .rule-soft{grid-column:auto; grid-row:auto;}
}

/* === Writing lower section redesign: guided steps + useful language + language support === */
.writing-page .writing-process{margin-top:1rem;}
.writing-page .process-grid{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:.85rem;
  align-items:stretch;
}
.writing-page .process-card{
  grid-column:span 4;
  border-radius:20px;
  padding:.9rem .95rem;
  border:1px solid rgba(20,34,71,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48);
  background:rgba(255,255,255,.35);
}
.writing-page .process-card p{
  margin:.1rem 0 0;
  font-size:.96rem;
  line-height:1.5;
  color:#26324b;
  font-weight:760;
}
.writing-page .process-card.write-review-card{
  grid-column:span 6;
  grid-row:span 2;
}
.writing-page .process-card.rule-gold{grid-column:span 5;}
.writing-page .process-card.rule-soft{grid-column:span 7;}
.writing-page .compact-plan p{
  font-size:.9rem;
  line-height:1.35;
}
.writing-page .toolkit-lower{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:1rem;
  margin:1rem 0;
  align-items:start;
}
.writing-page .language-bank-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.75rem;
}
.writing-page .language-card,
.writing-page .support-cluster article{
  border-radius:18px;
  padding:.75rem .85rem;
  background:rgba(255,255,255,.46);
  border:1px solid rgba(20,34,71,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
.writing-page .language-card h3,
.writing-page .support-cluster h3{
  margin:0 0 .45rem;
  font-family:Inter,Arial,sans-serif;
  color:#142247;
  font-size:.96rem;
  font-weight:950;
  letter-spacing:.01em;
}
.writing-page .language-card h3{
  display:inline-flex;
  border-radius:999px;
  padding:.26rem .55rem;
  background:rgba(214,170,90,.18);
  color:#142247;
}
.writing-page .language-card p,
.writing-page .support-cluster p{
  margin:.3rem 0;
  color:#28334e;
  font-size:.9rem;
  line-height:1.42;
  font-weight:730;
}
.writing-page .language-card:nth-child(1) h3{background:rgba(217,74,58,.13);color:#c84839;}
.writing-page .language-card:nth-child(2) h3{background:rgba(49,95,168,.14);color:#315fa8;}
.writing-page .language-card:nth-child(3) h3{background:rgba(120,147,123,.16);color:#2e8b57;}
.writing-page .language-card:nth-child(4) h3{background:rgba(20,34,71,.1);color:#222;}
.writing-page .language-card:nth-child(5) h3{background:rgba(217,74,58,.13);color:#c84839;}
.writing-page .support-cluster{
  display:grid;
  gap:.7rem;
}
.writing-page .support-cluster article:nth-child(1){background:rgba(49,95,168,.08);}
.writing-page .support-cluster article:nth-child(2){background:rgba(214,170,90,.13);}
.writing-page .support-cluster article:nth-child(3){background:rgba(120,147,123,.12);}
.writing-page .support-cluster article:nth-child(4){background:rgba(217,130,115,.11);}
.writing-page .support-cluster article:nth-child(5){background:rgba(255,255,255,.52);}
.writing-page .model-paragraph.one-paragraph{display:block;}
.writing-page .model-paragraph.one-paragraph span{display:inline;padding:.02rem .08rem;}
@media (max-width:1100px){
  .writing-page .process-grid{grid-template-columns:1fr;}
  .writing-page .process-card,
  .writing-page .process-card.rule-gold,
  .writing-page .process-card.rule-soft,
  .writing-page .process-card.write-review-card{grid-column:auto;grid-row:auto;}
  .writing-page .toolkit-lower{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .writing-page .language-bank-grid{grid-template-columns:1fr;}
}


/* === Writing toolkit clean redesign: replaces crowded worksheet-style lower bank === */
.writing-page .toolkit-lower,
.writing-page .useful-language-panel,
.writing-page .language-support-panel{
  display:block;
}

.writing-page .writing-toolkit-clean{
  margin-top:1rem;
  overflow:hidden;
}

.writing-page .toolkit-head-clean{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:.9rem;
}

.writing-page .toolkit-head-clean h2{
  font-size:clamp(1.9rem,2.8vw,2.7rem);
  margin:0 .4rem .25rem 0;
}

.writing-page .toolkit-chip{
  white-space:nowrap;
  border-radius:999px;
  padding:.48rem .78rem;
  background:linear-gradient(135deg,#ffe49c,#d6aa5a);
  color:#142247;
  font-weight:950;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}

.writing-page .toolkit-clean-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.72fr) minmax(260px,.72fr);
  gap:.9rem;
  align-items:stretch;
}

.writing-page .toolkit-clean-card{
  border-radius:22px;
  padding:.9rem;
  background:rgba(255,255,255,.5);
  border:1px solid rgba(20,34,71,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48);
}

.writing-page .toolkit-clean-card h3{
  margin:0 0 .65rem;
  font-family:"Bebas Neue",Impact,sans-serif;
  color:#142247;
  font-size:clamp(1.35rem,2vw,1.8rem);
  line-height:.95;
  letter-spacing:.03em;
  text-transform:uppercase;
}

.writing-page .starter-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.62rem;
}

.writing-page .starter-groups > div{
  border-radius:18px;
  padding:.68rem;
  background:rgba(255,248,232,.72);
  border:1px solid rgba(20,34,71,.07);
}

.writing-page .starter-groups > div:last-child{
  grid-column:1 / -1;
}

.writing-page .starter-label{
  display:inline-flex;
  border-radius:999px;
  padding:.22rem .52rem;
  margin-bottom:.38rem;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.writing-page .starter-label.opinion{background:rgba(217,74,58,.14);color:#d94a3a;}
.writing-page .starter-label.reason{background:rgba(49,95,168,.14);color:#2f63c6;}
.writing-page .starter-label.example{background:rgba(46,139,87,.16);color:#2e8b57;}
.writing-page .starter-label.problem{background:rgba(20,34,71,.12);color:#111;}
.writing-page .starter-label.recommend{background:rgba(217,74,58,.14);color:#d94a3a;}

.writing-page .starter-groups p,
.writing-page .grammar-reminders p{
  margin:.22rem 0;
  color:#142247;
  font-size:.9rem;
  line-height:1.35;
  font-weight:800;
}

.writing-page .word-chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  align-content:flex-start;
}

.writing-page .word-chip-cloud span{
  display:inline-flex;
  border-radius:999px;
  padding:.42rem .62rem;
  background:rgba(214,170,90,.16);
  border:1px solid rgba(214,170,90,.22);
  color:#142247;
  font-size:.88rem;
  font-weight:850;
  line-height:1.1;
}

.writing-page .grammar-reminders{
  display:grid;
  gap:.42rem;
}

.writing-page .grammar-reminders p{
  border-radius:14px;
  padding:.48rem .55rem;
  background:rgba(255,248,232,.72);
  border:1px solid rgba(20,34,71,.07);
}

@media (max-width:1100px){
  .writing-page .toolkit-clean-grid{
    grid-template-columns:1fr;
  }

  .writing-page .starter-groups{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .writing-page .starter-groups > div:last-child{
    grid-column:auto;
  }
}

@media (max-width:680px){
  .writing-page .toolkit-head-clean{
    flex-direction:column;
  }

  .writing-page .starter-groups{
    grid-template-columns:1fr;
  }
}


/* === Writing process layout fix: steps 1, 2, 3 left; step 4 right === */
.writing-page .writing-process .process-grid{
  display:grid;
  grid-template-columns:minmax(320px,.92fr) minmax(420px,1.08fr);
  grid-template-areas:
    "step1 write"
    "step2 write"
    "step3 write"
    "step5 step5";
  gap:.9rem;
  align-items:stretch;
}

.writing-page .writing-process .process-card:nth-child(1){grid-area:step1;}
.writing-page .writing-process .process-card:nth-child(2){grid-area:step2;}
.writing-page .writing-process .process-card:nth-child(3){grid-area:step3;}
.writing-page .writing-process .write-review-card{grid-area:write;}
.writing-page .writing-process .process-card:nth-child(5){grid-area:step5;}

.writing-page .writing-process .write-review-card{
  min-height:100%;
}

.writing-page .writing-process .write-lines{
  height:calc(100% - 2.4rem);
  align-content:start;
}

@media (max-width:900px){
  .writing-page .writing-process .process-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "step1"
      "step2"
      "step3"
      "write"
      "step5";
  }
}


/* === Writing revision: sentence structures + richer vocabulary bank === */
.writing-page .model-paragraph.one-paragraph{
  display:block !important;
  font-size:1rem;
  line-height:1.85;
}

.writing-page .model-paragraph.one-paragraph span{
  display:inline !important;
  padding:.02rem .08rem;
}

.writing-page .writing-process .write-review-card .rule-tag{
  background:#21304d;
  color:#fff4da;
}

.writing-page .structure-lines{
  display:grid;
  gap:.55rem;
  margin-top:.4rem;
}

.writing-page .structure-line{
  margin:0;
  padding:.72rem .82rem;
  border-radius:16px;
  background:rgba(255,255,255,.52);
  border:1px solid rgba(20,34,71,.08);
  color:#142247;
  font-size:.96rem;
  line-height:1.35;
  font-weight:850;
}

.writing-page .structure-line strong{
  display:inline-flex;
  min-width:6.4rem;
  font-weight:950;
}

.writing-page .structure-line.simple strong{color:#d94a3a;}
.writing-page .structure-line.compound strong{color:#2f63c6;}
.writing-page .structure-line.complex strong{color:#2e8b57;}
.writing-page .structure-line.connector strong{color:#111;}

.writing-page .toolkit-clean-grid.toolkit-balanced{
  grid-template-columns:minmax(260px,.9fr) minmax(360px,1.3fr) minmax(280px,.95fr);
}

.writing-page .compact-starters{
  grid-template-columns:1fr;
}

.writing-page .compact-starters > div:last-child{
  grid-column:auto;
}

.writing-page .rich-vocab-cloud{
  gap:.38rem;
}

.writing-page .rich-vocab-cloud span{
  font-size:.84rem;
  padding:.38rem .54rem;
  background:rgba(255,248,232,.74);
  border-color:rgba(214,170,90,.26);
}

.writing-page .structure-card-clean{
  background:linear-gradient(145deg,rgba(255,248,232,.66),rgba(255,255,255,.46));
}

.writing-page .sentence-structure-bank{
  display:grid;
  gap:.5rem;
}

.writing-page .sentence-structure-bank p{
  margin:0;
  display:grid;
  gap:.22rem;
  border-radius:15px;
  padding:.62rem .68rem;
  background:rgba(255,248,232,.78);
  border:1px solid rgba(20,34,71,.08);
  color:#142247;
  font-weight:820;
  line-height:1.25;
}

.writing-page .sentence-structure-bank p strong{
  color:#142247;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.76rem;
  font-weight:950;
}

.writing-page .sentence-structure-bank p span{
  font-size:.92rem;
}

@media (max-width:1100px){
  .writing-page .toolkit-clean-grid.toolkit-balanced{
    grid-template-columns:1fr;
  }
}

/* === GAME PAGES ONLY — final control room and board repair === */
.game-control-final{padding-bottom:1.1rem;}
.game-control-final .control-hero{min-height:190px;}
.game-control-final .control-hero h1{font-size:clamp(4.1rem,9vw,7.6rem);}
.game-control-final .mode-choice-grid{grid-template-columns:repeat(3,minmax(230px,1fr));}
.game-control-final .mode-choice-card{min-height:260px;display:grid;grid-template-rows:minmax(138px,1fr) auto auto;gap:.35rem;align-items:end;}
.game-control-final .mode-choice-card img{height:150px;object-fit:contain;background:linear-gradient(145deg,#101933,#2a170e);}
.game-control-final .mode-choice-card small{position:relative;z-index:1;display:block;text-align:center;font-weight:850;line-height:1.25;color:#4b463c;padding:0 .5rem .25rem;}
.final-control-grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);}
.class-size-note{position:relative;z-index:1;padding:.72rem .9rem;border-radius:18px;background:rgba(24,38,74,.08);color:#5f543f;font-weight:850;line-height:1.35;}
.setup-action-row{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.55rem;}
.light-command{background:linear-gradient(145deg,#fff8e8,#e7c775)!important;color:#111b36!important;border-color:rgba(111,74,34,.25)!important;text-align:center;text-decoration:none;}
.team-preview-head{display:flex;justify-content:space-between;gap:.75rem;align-items:end;margin-bottom:.55rem;}
.team-preview-head p,.team-preview-head small{margin:0;}
.team-preview-head small{font-weight:850;color:#6f4a22;}
.team-name-fields{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:.55rem;margin-bottom:.65rem;}
.team-name-field{display:grid;gap:.25rem;font-weight:900;color:#4b463c;}
.team-name-field span{text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;}
.team-name-field input{border:1px solid rgba(24,38,74,.16);border-radius:16px;padding:.68rem .78rem;background:rgba(255,255,255,.72);color:#111b36;font:900 .95rem var(--ad-body);box-shadow:inset 0 1px 0 rgba(255,255,255,.85);}
.final-launch-panel{gap:.75rem;}
.final-launch-panel .launch-dice{height:170px;object-fit:contain;background:linear-gradient(145deg,#101933,#2a170e);}
.teacher-instructions{position:relative;z-index:1;max-width:460px;text-align:left;color:#403b32;}
.teacher-instructions h2{font-size:clamp(2.6rem,4.8vw,4rem);margin:.2rem 0 .3rem;color:var(--navy);}
.teacher-instructions ol{margin:.2rem 0 0;padding-left:1.35rem;font-weight:850;line-height:1.45;}
.back-study-link{position:relative;z-index:1;text-decoration:none;}

.final-board-shell{grid-template-columns:minmax(720px,1fr) 360px;gap:.7rem;padding:.7rem;}
.final-board-shell .board-command-bar{min-height:66px;padding:.52rem .75rem;}
.final-board-shell .command-home{white-space:nowrap;}
.final-board-shell .command-actions{gap:.4rem;}
.final-board-shell .command-btn{min-height:40px;}
.final-board-shell .full-board-stage{border-radius:30px;}
.final-board-shell .full-board-image{width:min(100%,calc((100vh - 92px) * 1.792));max-height:calc(100vh - 92px);}
.final-board-shell .full-overlays,
.final-board-shell .full-active-glow,
.final-board-shell .full-pawns-layer{width:min(100%,calc((100vh - 92px) * 1.792));aspect-ratio:2048 / 1143;max-height:calc(100vh - 92px);}
.final-board-shell .board-question-card{width:min(40%,540px);max-height:62%;}
.final-board-shell .board-question-card h1{font-size:clamp(2.55rem,3.6vw,4.2rem);}
.final-board-shell .board-question-card p{font-size:clamp(.92rem,1vw,1.02rem);}
.final-board-shell .board-side-panel{grid-template-rows:auto auto auto auto minmax(0,1fr);gap:.62rem;}
.final-board-shell .golden-dice-panel,.final-board-shell .solo-deck-panel,.final-board-shell .power-status-panel,.final-board-shell .study-drawer,.final-board-shell .score-panel-full{border:1px solid rgba(226,198,132,.34);border-radius:24px;background:linear-gradient(145deg,rgba(255,250,238,.95),rgba(225,209,180,.9));box-shadow:0 18px 42px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.75);padding:.78rem;}
.final-board-shell .golden-dice-button{height:156px;background:radial-gradient(circle at 50% 25%,rgba(245,215,128,.22),transparent 45%),#2a170e;}
.final-board-shell .golden-dice-button img{object-fit:contain;padding:.15rem;}
.final-board-shell .golden-dice-button:disabled{cursor:not-allowed;filter:saturate(.75) brightness(.82);}
.final-board-shell .dice-number{right:10px;bottom:9px;width:50px;height:50px;}
.power-status-panel h2,.study-drawer h2{margin:0 0 .35rem;font-family:var(--ad-title);font-size:2.15rem;line-height:.9;color:var(--navy);}
.power-status-panel p,.study-drawer p{margin:.2rem 0;color:#46413a;font-weight:850;line-height:1.28;}
.study-drawer{max-height:230px;overflow:auto;}
.solo-end-actions{display:grid;gap:.45rem;margin-top:.55rem;}
.solo-end-actions a{display:block;}
.final-board-shell .score-panel-full{overflow:auto;}
.final-board-shell .score-title-row h2{font-size:3.15rem;}
.final-board-shell .score-board-full{gap:.4rem;margin:.55rem 0;}
.final-board-shell .full-team-score{padding:.52rem;border-radius:16px;}
.final-board-shell .full-team-score b{font-size:1.18rem;}
.final-board-shell .board-card-actions .btn{min-height:42px;}
.final-board-shell .support-box{margin-top:.55rem;padding:.65rem;border-radius:16px;background:rgba(24,38,74,.08);font-weight:850;color:#3f403c;}
.final-board-shell .support-box ul{margin:.35rem 0 0;padding-left:1.15rem;}

@media (max-width:1180px){
  .game-control-final .control-hero,.final-control-grid{grid-template-columns:1fr;}
  .game-control-final .mode-choice-grid{grid-template-columns:repeat(3,1fr);}
  .game-control-final .mode-choice-card{min-height:230px;}
  .game-control-final .mode-choice-card img{height:132px;}
  .final-board-shell{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:auto;}
  .full-board-page{overflow:auto;}
  .final-board-shell .board-command-bar{grid-template-columns:1fr;}
  .final-board-shell .command-actions{justify-content:flex-start;}
  .final-board-shell .full-board-stage{min-height:660px;}
  .final-board-shell .board-side-panel{grid-template-columns:repeat(2,minmax(260px,1fr));grid-template-rows:auto;}
  .final-board-shell .score-panel-full{grid-column:1/-1;max-height:none;}
  .final-board-shell .board-question-card{width:min(76%,560px);max-height:50%;}
}
@media (max-width:760px){
  .game-control-final .mode-choice-grid,.team-name-fields{grid-template-columns:1fr;}
  .game-control-final .mode-choice-card{min-height:240px;}
  .game-control-final .mode-choice-card img{height:150px;}
  .team-preview-head{display:block;}
  .setup-action-row{display:grid;}
  .final-board-shell{padding:.5rem;}
  .final-board-shell .full-board-stage{min-height:540px;border-radius:22px;}
  .final-board-shell .board-question-card{width:min(92%,430px);max-height:58%;padding:.78rem;border-radius:22px;}
  .final-board-shell .board-question-card h1{font-size:2.45rem;}
  .final-board-shell .board-card-actions{grid-template-columns:1fr;}
  .final-board-shell .board-side-panel{grid-template-columns:1fr;}
  .final-board-shell .golden-dice-button{height:145px;}
}

/* === BOARD V2 — interaction, movement, one-die, score/power-up safeguards === */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
.board-v2 .board-command-bar{background:linear-gradient(135deg,rgba(11,20,44,.98),rgba(22,35,72,.95));border:1px solid rgba(226,198,132,.38);box-shadow:0 18px 44px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.06);}
.board-v2 .current-turn-block{min-width:0;}
.board-v2 .current-turn-block strong{font-size:clamp(1.15rem,1.55vw,1.55rem);color:#fff7dd;}
.board-v2 .hud-result-line{display:block;margin-top:.18rem;padding:.25rem .65rem;border-radius:999px;background:rgba(226,198,132,.14);color:#ffe7a8;font-weight:950;line-height:1.25;box-shadow:inset 0 0 0 1px rgba(226,198,132,.2);}
.board-v2 .hud-result-line[data-kind="good"]{background:rgba(120,147,123,.24);color:#eaffde;}
.board-v2 .hud-result-line[data-kind="bad"]{background:rgba(217,130,115,.24);color:#ffe4df;}
.board-v2 .hud-result-line[data-kind="info"]{background:rgba(226,198,132,.14);color:#ffe7a8;}
.board-v2 .danger-command{background:linear-gradient(145deg,#d98273,#874436)!important;color:#fff8e8!important;border-color:rgba(255,255,255,.2)!important;}
.board-v2 .full-board-stage{box-shadow:0 28px 70px rgba(0,0,0,.42),inset 0 0 0 1px rgba(226,198,132,.24);background:radial-gradient(circle at 50% 50%,rgba(246,228,181,.1),transparent 38%),linear-gradient(145deg,#130e12,#21160e 58%,#0c1428);}
.board-v2 .board-legend{position:absolute;left:50%;bottom:1.1rem;transform:translateX(-50%);z-index:8;display:flex;gap:.35rem;flex-wrap:wrap;justify-content:center;max-width:86%;padding:.35rem .55rem;border-radius:999px;background:rgba(11,20,44,.72);border:1px solid rgba(226,198,132,.28);backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.3);pointer-events:none;}
.board-v2 .board-legend span{font-size:.68rem;line-height:1;text-transform:uppercase;letter-spacing:.055em;font-weight:950;color:#fff7dd;padding:.27rem .45rem;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
.board-v2 .key-vocab{background:rgba(200,164,106,.35)}
.board-v2 .key-passive{background:rgba(85,116,138,.42)}
.board-v2 .key-used{background:rgba(120,147,123,.42)}
.board-v2 .key-review{background:rgba(217,130,115,.42)}
.board-v2 .key-power{background:rgba(230,197,107,.46)}
.board-v2 .full-overlays .board-space{border-radius:50%;outline:none;}
.board-v2 .full-overlays .board-space span{position:absolute;left:50%;top:-1.9rem;transform:translateX(-50%) translateY(4px);opacity:0;pointer-events:none;white-space:nowrap;padding:.24rem .48rem;border-radius:999px;background:rgba(11,20,44,.92);color:#fff7dd;font-size:.68rem;font-weight:950;box-shadow:0 8px 20px rgba(0,0,0,.35);transition:opacity .18s ease,transform .18s ease;}
.board-v2 .full-overlays .board-space:hover span,.board-v2 .full-overlays .board-space:focus-visible span{opacity:1;transform:translateX(-50%) translateY(0);}
.board-v2 .board-space::after{box-shadow:0 0 0 2px rgba(255,242,194,.72),0 0 18px rgba(226,198,132,.72),inset 0 0 16px rgba(255,242,194,.25);}
.board-v2 .board-space.space-risk::after{box-shadow:0 0 0 2px rgba(217,130,115,.78),0 0 18px rgba(217,130,115,.62),inset 0 0 16px rgba(217,130,115,.22);}
.board-v2 .board-space.space-bonus::after{box-shadow:0 0 0 2px rgba(255,226,147,.88),0 0 20px rgba(255,226,147,.72),inset 0 0 18px rgba(255,226,147,.28);}
.board-v2 .full-active-glow::after{animation:activeSpacePulse 1.25s ease-in-out infinite;}
@keyframes activeSpacePulse{0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.78}50%{transform:translate(-50%,-50%) scale(1.13);opacity:1}}

.board-v2 .board-question-card{background:linear-gradient(160deg,rgba(255,249,232,.98),rgba(226,211,181,.96));border:1px solid rgba(111,74,34,.22);box-shadow:0 22px 56px rgba(0,0,0,.34),0 0 0 5px rgba(11,20,44,.12),inset 0 1px 0 rgba(255,255,255,.75);}
.board-v2 .board-question-card::before{content:"";position:absolute;inset:.44rem;border-radius:inherit;border:1px solid rgba(200,164,106,.5);pointer-events:none;}
.board-v2 .question-topline{position:relative;z-index:1;}
.board-v2 .category-label,.board-v2 .points-label{box-shadow:0 5px 12px rgba(0,0,0,.12);}
.board-v2 .difficulty-easy .points-label{background:rgba(120,147,123,.18);}
.board-v2 .difficulty-medium .points-label{background:rgba(200,164,106,.25);}
.board-v2 .difficulty-hard .points-label{background:rgba(217,130,115,.22);}
.board-v2 .difficulty-challenge .points-label{background:#111b36;color:#ffe7a8;}
.board-v2 .power-tools{position:relative;z-index:1;margin-top:.55rem;padding:.65rem;border-radius:18px;background:rgba(24,38,74,.08);display:grid;gap:.5rem;}
.board-v2 .power-tools label{font-weight:950;color:#18264a;display:grid;gap:.28rem;}
.board-v2 .power-tools select{border-radius:14px;border:1px solid rgba(24,38,74,.2);padding:.56rem;background:#fff8e8;font-weight:900;color:#111b36;}
.board-v2 .power-once-note{font-weight:900;color:#6f4a22;}
.board-v2 #applyPowerBtn.is-used,.board-v2 #applyPowerBtn:disabled{opacity:.68;filter:saturate(.75);cursor:not-allowed;}
.board-v2 .board-card-actions button:disabled,.board-v2 .score-action-grid button:disabled,.board-v2 #drawCardBtn:disabled{opacity:.5;filter:saturate(.7);cursor:not-allowed;transform:none;}
.board-v2 #nextTeamBtn.is-ready{animation:nextTeamReady 1.05s ease-in-out infinite;}
@keyframes nextTeamReady{0%,100%{box-shadow:0 12px 28px rgba(200,164,106,.25)}50%{box-shadow:0 16px 36px rgba(200,164,106,.55)}}

.board-v2 .golden-dice-panel{position:relative;overflow:hidden;}
.board-v2 .golden-dice-panel::before{content:"";position:absolute;inset:0;background:url('../assets/images/game/customer-tokens.webp') center/cover no-repeat;opacity:.08;pointer-events:none;}
.board-v2 .golden-dice-button{position:relative;overflow:hidden;border:1px solid rgba(226,198,132,.34);box-shadow:0 15px 34px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;}
.board-v2 .golden-dice-button:not(:disabled):hover{transform:translateY(-3px) scale(1.015);box-shadow:0 20px 44px rgba(0,0,0,.34),0 0 24px rgba(226,198,132,.25);}
.board-v2 .golden-dice-button:not(:disabled):active{transform:translateY(1px) scale(.985);}
.board-v2 .golden-dice-button img{object-fit:cover;filter:saturate(1.08) contrast(1.02);}
.board-v2 .golden-dice-button.rolling{animation:diceRollV2 .78s cubic-bezier(.34,1.56,.64,1);}
@keyframes diceRollV2{0%{transform:rotate(0deg) scale(1)}18%{transform:rotate(-9deg) scale(1.08) translateY(-7px)}42%{transform:rotate(12deg) scale(.96) translateY(3px)}70%{transform:rotate(-7deg) scale(1.05) translateY(-4px)}100%{transform:rotate(0) scale(1)}}
.board-v2 .dice-pip-face{position:absolute;right:.7rem;bottom:.7rem;width:60px;height:60px;border-radius:16px;background:linear-gradient(145deg,#f8d98a,#9d6b28);border:1px solid rgba(255,247,221,.78);box-shadow:0 12px 24px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.65);display:block;}
.board-v2 .dice-ready-dot{position:absolute;inset:0;display:grid;place-items:center;font:950 .75rem var(--ad-body);letter-spacing:.06em;text-transform:uppercase;color:#111b36;}
.board-v2 .pip{position:absolute;width:9px;height:9px;border-radius:50%;background:#111b36;box-shadow:inset 0 1px 1px rgba(255,255,255,.24),0 1px 2px rgba(0,0,0,.28);}
.board-v2 .pip.tl{left:13px;top:13px}.board-v2 .pip.tr{right:13px;top:13px}.board-v2 .pip.ml{left:13px;top:25px}.board-v2 .pip.mm{left:25px;top:25px}.board-v2 .pip.mr{right:13px;top:25px}.board-v2 .pip.bl{left:13px;bottom:13px}.board-v2 .pip.br{right:13px;bottom:13px}
.board-v2[data-phase="rolling"] .golden-dice-button,.board-v2[data-phase="moving"] .golden-dice-button,.board-v2[data-phase="answering"] .golden-dice-button{filter:saturate(.85) brightness(.9);}

.board-v2 .full-pawn{position:absolute;left:var(--x);top:var(--y);width:52px;height:58px;transform:translate(-50%,-50%);display:grid;place-items:center;z-index:7;filter:drop-shadow(0 10px 12px rgba(0,0,0,.35));transition:left .22s ease,top .22s ease,transform .22s ease;}
.board-v2 .full-pawn::before{content:"";position:absolute;width:42px;height:42px;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.75),transparent 30%),linear-gradient(145deg,var(--pawn-color),#111b36);border:2px solid rgba(255,234,166,.86);box-shadow:0 8px 18px rgba(0,0,0,.3),inset 0 -4px 10px rgba(0,0,0,.18);}
.board-v2 .full-pawn::after{content:"";position:absolute;bottom:2px;width:36px;height:12px;border-radius:999px;background:linear-gradient(145deg,#f5d683,#9a6c2e);border:1px solid rgba(255,245,212,.6);}
.board-v2 .full-pawn .pawn-icon{position:absolute;top:11px;color:#fff8dc;text-shadow:0 1px 3px rgba(0,0,0,.45);font-weight:950;font-size:1rem;line-height:1;}
.board-v2 .full-pawn small{position:absolute;bottom:0;z-index:2;min-width:30px;text-align:center;padding:.06rem .22rem;border-radius:999px;background:#111b36;color:#ffe7a8;font-size:.58rem;font-weight:950;line-height:1.25;border:1px solid rgba(255,230,164,.55);}
.board-v2 .full-pawn.is-active{transform:translate(-50%,-50%) scale(1.1);}
.board-v2 .full-pawn.is-active::before{box-shadow:0 0 0 5px rgba(255,231,168,.24),0 12px 24px rgba(0,0,0,.35),inset 0 -4px 10px rgba(0,0,0,.18);}
.board-v2 .full-pawn.is-moving{animation:pawnMoveBounce .23s ease-in-out;}
@keyframes pawnMoveBounce{0%,100%{transform:translate(-50%,-50%) scale(1.06)}50%{transform:translate(-50%,-68%) scale(1.18)}}

.board-v2 .full-team-score{grid-template-columns:auto 1fr auto;column-gap:.55rem;align-items:center;border:1px solid rgba(24,38,74,.08);background:linear-gradient(145deg,rgba(255,255,255,.65),rgba(246,236,215,.62));}
.board-v2 .full-team-score.is-active{box-shadow:0 0 0 2px rgba(200,164,106,.65),0 14px 24px rgba(0,0,0,.12);}
.board-v2 .team-token{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--team-color),#111b36);border:2px solid rgba(255,231,168,.85);box-shadow:0 6px 14px rgba(0,0,0,.18);}
.board-v2 .team-token i{font-style:normal;color:#fff8dc;font-weight:950;font-size:.95rem;line-height:1;}
.board-v2 .full-team-score b{color:#111b36;background:linear-gradient(145deg,#fff1bb,#d1a84d);border-radius:999px;padding:.2rem .48rem;min-width:44px;text-align:center;}
.board-v2 .power-status-panel small{display:block;margin-top:.3rem;color:#7c5c25;font-weight:900;}
.board-v2.solo-mode .golden-dice-panel{display:none;}
.board-v2.solo-mode #nextTeamBtn{display:none;}
.board-v2.solo-mode .manual-score-btn{display:none;}
.board-v2.solo-mode .score-action-grid{grid-template-columns:1fr;}
.board-v2.solo-mode .board-legend{display:none;}

@media (max-width:1180px){
  .board-v2 .board-legend{bottom:.65rem;}
  .board-v2 .dice-pip-face{width:54px;height:54px;}
  .board-v2 .full-pawn{width:46px;height:52px;}
}
@media (max-width:760px){
  .board-v2 .board-legend{display:none;}
  .board-v2 .dice-pip-face{width:48px;height:48px;border-radius:13px;}
  .board-v2 .pip{width:7px;height:7px;}
  .board-v2 .pip.tl{left:10px;top:10px}.board-v2 .pip.tr{right:10px;top:10px}.board-v2 .pip.ml{left:10px;top:20px}.board-v2 .pip.mm{left:20px;top:20px}.board-v2 .pip.mr{right:10px;top:20px}.board-v2 .pip.bl{left:10px;bottom:10px}.board-v2 .pip.br{right:10px;bottom:10px}
}

/* === Board V3 full-screen classroom game fix === */
.board-v3.full-board-page{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 50% 0%,rgba(226,198,132,.14),transparent 30rem),linear-gradient(145deg,#0b142c 0%,#18264a 42%,#2a170e 100%);}
.board-v3 .board-game-shell-v3{height:100vh;display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;gap:.45rem;padding:.45rem;max-width:none;width:100%;}
.board-v3 .board-top-hud{grid-column:1;min-height:82px;display:grid;grid-template-columns:minmax(92px,auto) minmax(230px,.75fr) minmax(300px,1fr) minmax(210px,auto) minmax(300px,auto);gap:.55rem;align-items:center;border-radius:22px;padding:.46rem .6rem;background:linear-gradient(145deg,rgba(10,18,39,.97),rgba(24,38,74,.93));box-shadow:0 18px 44px rgba(0,0,0,.32),inset 0 0 0 1px rgba(226,198,132,.26);}
.board-v3 .command-home,.board-v3 .command-btn{white-space:nowrap;min-height:38px;padding:.5rem .72rem;font-size:.78rem;}
.board-v3 .hud-turn-block{min-width:0;}
.board-v3 .hud-turn-block strong{font-size:clamp(1.05rem,2vw,1.55rem);line-height:1;color:#f5d780;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.board-v3 .hud-result-line{display:block;width:100%;margin-top:.2rem;padding:.28rem .48rem;border-radius:999px;background:rgba(255,248,232,.08);color:#fff6d8!important;font-size:clamp(.72rem,1vw,.88rem);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.board-v3 .hud-score-strip{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;padding:.35rem .5rem;border-radius:18px;background:rgba(255,248,232,.08);border:1px solid rgba(226,198,132,.2);}
.board-v3 .score-title-mini{display:grid;gap:.05rem;align-content:center;color:#ffe7a8;text-transform:uppercase;letter-spacing:.055em;font-weight:950;}
.board-v3 .score-title-mini span{font-size:.76rem;}
.board-v3 .score-title-mini small{font-size:.66rem;color:rgba(255,248,232,.78);}
.board-v3 .top-score-board{display:flex;align-items:center;gap:.35rem;margin:0;overflow-x:auto;scrollbar-width:thin;padding:.1rem;}
.board-v3 .top-score-board .full-team-score{min-width:118px;max-width:170px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;padding:.42rem .48rem;border-radius:15px;background:linear-gradient(145deg,rgba(255,248,232,.92),rgba(226,211,181,.85));box-shadow:0 9px 18px rgba(0,0,0,.14);}
.board-v3 .top-score-board .full-team-score strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#111b36;}
.board-v3 .top-score-board .full-team-score small{font-size:.61rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.board-v3 .top-score-board .full-team-score b{font-size:1rem;min-width:38px;padding:.14rem .38rem;}
.board-v3 .top-score-board .team-token{width:30px;height:30px;}
.board-v3 .hud-dice-area{display:grid;grid-template-columns:72px minmax(105px,auto);align-items:center;gap:.55rem;padding:.32rem .48rem;border-radius:18px;background:linear-gradient(145deg,rgba(255,248,232,.13),rgba(226,198,132,.08));border:1px solid rgba(226,198,132,.24);}
.board-v3 .hud-dice-button{width:72px;height:72px;border-radius:18px;background:radial-gradient(circle at center,rgba(255,246,211,.28),rgba(42,23,14,.35));box-shadow:0 12px 28px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,248,232,.34);}
.board-v3 .hud-dice-button img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 8px 10px rgba(0,0,0,.28)) saturate(1.08);}
.board-v3 .hud-dice-button:not(:disabled):hover{transform:translateY(-2px) scale(1.04);box-shadow:0 16px 32px rgba(0,0,0,.36),0 0 22px rgba(226,198,132,.3);}
.board-v3 .hud-dice-button:not(:disabled):active{transform:translateY(1px) scale(.97);}
.board-v3 .hud-dice-button:disabled{opacity:.72;cursor:not-allowed;filter:saturate(.78) brightness(.9);}
.board-v3 .hud-dice-button.rolling{animation:diceRollV3 .82s cubic-bezier(.34,1.56,.64,1);}
@keyframes diceRollV3{0%{transform:rotate(0deg) scale(1)}15%{transform:rotate(-16deg) translateY(-7px) scale(1.08)}35%{transform:rotate(18deg) translateY(2px) scale(.96)}56%{transform:rotate(-13deg) translateY(-5px) scale(1.05)}76%{transform:rotate(9deg) translateY(1px) scale(.98)}100%{transform:rotate(0deg) scale(1)}}
.board-v3 .dice-pip-face{right:-.2rem;bottom:-.18rem;width:32px;height:32px;border-radius:9px;background:linear-gradient(145deg,#fff0b4,#c89736);}
.board-v3 .dice-ready-dot{font-size:.48rem;}
.board-v3 .pip{width:5px;height:5px;}
.board-v3 .pip.tl{left:7px;top:7px}.board-v3 .pip.tr{right:7px;top:7px}.board-v3 .pip.ml{left:7px;top:13.5px}.board-v3 .pip.mm{left:13.5px;top:13.5px}.board-v3 .pip.mr{right:7px;top:13.5px}.board-v3 .pip.bl{left:7px;bottom:7px}.board-v3 .pip.br{right:7px;bottom:7px}
.board-v3 .dice-status-copy{display:grid;gap:.08rem;color:#fff8e8;}
.board-v3 .dice-status-copy strong{font-size:.9rem;line-height:1.1;font-weight:950;color:#ffe7a8;}
.board-v3 .dice-status-copy small{font-size:.68rem;text-transform:uppercase;letter-spacing:.075em;font-weight:950;color:rgba(255,248,232,.72);}
.board-v3 .hud-actions{justify-content:flex-end;gap:.35rem;}
.board-v3 .board-stage-v3{grid-row:2;min-height:0;border-radius:28px;background:radial-gradient(circle at 50% 50%,rgba(255,248,232,.12),transparent 38%),url('../assets/images/game/board-walnut-room.webp') center/cover no-repeat,#2a170e;box-shadow:0 24px 68px rgba(0,0,0,.42),inset 0 0 0 1px rgba(226,198,132,.25);}
.board-v3 .full-board-image{width:min(100%,calc((100vh - 142px) * 1.792));max-height:calc(100vh - 142px);border-radius:24px;filter:drop-shadow(0 24px 36px rgba(0,0,0,.42));}
.board-v3 .full-overlays,.board-v3 .full-active-glow,.board-v3 .full-pawns-layer{width:min(100%,calc((100vh - 142px) * 1.792));aspect-ratio:2048/1143;max-height:calc(100vh - 142px);}
.board-v3 .board-question-card{width:clamp(360px,33.5vw,560px);max-height:min(64%,570px);aspect-ratio:auto;left:50%;top:50%;transform:translate(-50%,-50%);padding:clamp(.85rem,1.4vw,1.18rem);border-radius:26px;background:linear-gradient(160deg,rgba(255,250,235,.985),rgba(230,215,185,.965));box-shadow:0 22px 56px rgba(0,0,0,.38),0 0 0 5px rgba(11,20,44,.14),inset 0 1px 0 rgba(255,255,255,.78);}
.board-v3 .board-question-card::after{content:"Card Deck";position:absolute;right:.85rem;top:.78rem;font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:rgba(111,74,34,.72);}
.board-v3 .board-question-card h1{font-size:clamp(2rem,3vw,3.6rem);line-height:.88;margin:.35rem 0 .35rem;}
.board-v3 .board-question-card p{font-size:clamp(.9rem,1.15vw,1.05rem);line-height:1.35;}
.board-v3 .question-topline{padding-right:4.8rem;}
.board-v3 .board-answer-options{gap:.38rem;margin-top:.55rem;}
.board-v3 .board-answer-options .answer-btn{padding:.52rem .68rem;border-radius:14px;font-size:.85rem;}
.board-v3 .board-card-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin-top:.58rem;}
.board-v3 .board-card-actions .btn{min-height:38px;padding:.48rem .52rem;font-size:.78rem;}
.board-v3 .board-feedback{font-size:.88rem;line-height:1.3;min-height:1.1rem;margin-top:.36rem;}
.board-v3 .support-box{font-size:.82rem;line-height:1.25;max-height:92px;overflow:auto;}
.board-v3 .full-overlays .board-space{border-radius:50%;outline:none;}
.board-v3 .full-overlays .board-space::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,236,170,.72);box-shadow:0 0 24px rgba(226,198,132,.65),inset 0 0 18px rgba(255,245,212,.22);opacity:0;transform:scale(.78);transition:opacity .18s ease,transform .18s ease;}
.board-v3 .full-overlays .board-space:hover::before,.board-v3 .full-overlays .board-space:focus-visible::before,.board-v3 .full-overlays .board-space.is-selected::before{opacity:1;transform:scale(1);}
.board-v3 .full-overlays .board-space.was-clicked::before{animation:spaceClickPulse .55s ease-out;}
@keyframes spaceClickPulse{0%{opacity:1;transform:scale(.78)}50%{opacity:1;transform:scale(1.22)}100%{opacity:1;transform:scale(1)}}
.board-v3 .full-overlays .board-space span{font-size:.68rem;top:-1.85rem;background:rgba(10,18,39,.94);border:1px solid rgba(226,198,132,.3);}
.board-v3 .full-active-glow::after{animation:activeSpacePulse 1.1s ease-in-out infinite;}
.board-v3 .full-pawn{width:46px;height:54px;z-index:7;}
.board-v3 .full-pawn small{font-size:.56rem;}
.board-v3 .board-legend{bottom:.7rem;padding:.28rem .44rem;}
.board-v3 .solo-card-drawer{position:absolute;left:50%;bottom:.75rem;z-index:9;transform:translateX(-50%);display:flex;align-items:center;gap:.45rem;width:auto;max-width:min(94%,760px);padding:.52rem .65rem;border-radius:999px;background:rgba(10,18,39,.92);border:1px solid rgba(226,198,132,.34);box-shadow:0 14px 34px rgba(0,0,0,.3);color:#fff8e8;}
.board-v3 .solo-card-drawer label{font-size:.72rem;color:#ffe7a8;margin:0;white-space:nowrap;}
.board-v3 .solo-card-drawer select{min-width:190px;border-radius:999px;padding:.52rem .7rem;border:1px solid rgba(226,198,132,.28);background:#fff8e8;color:#111b36;font-weight:900;}
.board-v3 .solo-card-drawer p{color:#ffe7a8;margin:0 .25rem;font-size:.8rem;white-space:nowrap;}
.board-v3 .solo-end-actions{display:flex;gap:.35rem;align-items:center;}
.board-v3 .board-power-chip{position:absolute;right:1rem;top:1rem;z-index:9;width:min(290px,30vw);padding:.65rem .75rem;border-radius:20px;background:linear-gradient(145deg,rgba(255,250,238,.96),rgba(230,213,179,.92));border:1px solid rgba(226,198,132,.42);box-shadow:0 18px 42px rgba(0,0,0,.28);color:#111b36;}
.board-v3 .board-power-chip h2{margin:0 0 .25rem;font-size:1.8rem;color:#111b36;line-height:.9;}
.board-v3 .board-power-chip p{margin:0;color:#4e4436;font-weight:900;}
.board-v3 .board-study-drawer{position:absolute;left:1rem;top:1rem;z-index:10;width:min(350px,34vw);max-height:min(70%,460px);overflow:auto;padding:.85rem;border-radius:22px;background:linear-gradient(145deg,rgba(255,250,238,.98),rgba(230,213,179,.95));border:1px solid rgba(226,198,132,.42);box-shadow:0 20px 48px rgba(0,0,0,.32);color:#111b36;}
.board-v3 .board-study-drawer h2{margin:0 0 .4rem;font-size:2.3rem;line-height:.9;color:#111b36;}
.board-v3 .board-study-drawer p{margin:.42rem 0;color:#3c3a34;font-weight:800;line-height:1.35;}
.board-v3 .board-bottom-controls{display:flex;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.18rem .45rem;border-radius:20px;background:rgba(10,18,39,.72);border:1px solid rgba(226,198,132,.18);box-shadow:0 12px 28px rgba(0,0,0,.25);}
.board-v3 .board-bottom-controls .btn,.board-v3 .board-bottom-controls .command-btn{min-height:38px;padding:.48rem .9rem;}
.board-v3 #nextTeamBtn.is-ready{animation:nextTeamReady 1.05s ease-in-out infinite;}
.board-v3.solo-mode .hud-dice-area,.board-v3.solo-mode #nextTeamBtn,.board-v3.solo-mode .manual-score-btn,.board-v3.solo-mode .board-legend,.board-v3.solo-mode .full-pawns-layer{display:none!important;}
.board-v3.solo-mode .board-top-hud{grid-template-columns:minmax(92px,auto) minmax(230px,.75fr) minmax(310px,1fr) minmax(250px,auto);}
.board-v3.solo-mode .hud-actions{grid-column:auto;}
.board-v3.solo-mode .board-space{cursor:default;}
.board-v3.solo-mode .top-score-board .full-team-score{min-width:190px;}
.board-v3.solo-mode .board-bottom-controls{display:none;}
.board-v3[data-phase="rolling"] .hud-dice-button,.board-v3[data-phase="moving"] .hud-dice-button,.board-v3[data-phase="answering"] .hud-dice-button{filter:saturate(.82) brightness(.9);}
.board-v3 .hidden{display:none!important;}
@media (max-width:1280px){
  .board-v3 .board-top-hud{grid-template-columns:auto minmax(210px,.8fr) minmax(250px,1fr) minmax(180px,auto);}
  .board-v3 .hud-actions{grid-column:1 / -1;justify-content:center;}
  .board-v3 .board-question-card{width:clamp(340px,38vw,520px);}
}
@media (max-width:980px){
  .board-v3.full-board-page{overflow:auto;}
  .board-v3 .board-game-shell-v3{height:auto;min-height:100vh;grid-template-rows:auto auto auto;}
  .board-v3 .board-top-hud,.board-v3.solo-mode .board-top-hud{grid-template-columns:1fr;align-items:stretch;}
  .board-v3 .hud-score-strip{grid-template-columns:1fr;}
  .board-v3 .hud-dice-area{width:max-content;max-width:100%;}
  .board-v3 .board-stage-v3{min-height:720px;}
  .board-v3 .full-board-image,.board-v3 .full-overlays,.board-v3 .full-active-glow,.board-v3 .full-pawns-layer{width:min(100%,960px);max-height:none;}
  .board-v3 .board-question-card{width:min(86%,520px);max-height:50%;}
  .board-v3 .board-card-actions{grid-template-columns:repeat(2,1fr);}
  .board-v3 .solo-card-drawer{position:relative;left:auto;bottom:auto;transform:none;margin:0 auto 1rem;border-radius:24px;flex-wrap:wrap;justify-content:center;}
}
@media (max-width:640px){
  .board-v3 .board-stage-v3{min-height:620px;border-radius:22px;}
  .board-v3 .board-question-card{width:min(92%,430px);padding:.8rem;}
  .board-v3 .board-question-card h1{font-size:2.25rem;}
  .board-v3 .board-card-actions{grid-template-columns:1fr;}
  .board-v3 .board-study-drawer,.board-v3 .board-power-chip{left:.75rem;right:.75rem;top:.75rem;width:auto;max-width:none;}
  .board-v3 .top-score-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;}
  .board-v3 .top-score-board .full-team-score{max-width:none;min-width:0;}
}

/* === BOARD GAME V4 cleanup — center-panel card, real 2x2 choices, clean overlays, cropped pieces === */
.board-v3 .full-overlays .board-space,
.board-v3 .full-overlays .board-space:focus,
.board-v3 .full-overlays .board-space:hover{
  background:transparent!important;
  border:0!important;
  color:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
  overflow:visible!important;
}
.board-v3 .full-overlays .board-space::after{
  content:""!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  opacity:0!important;
}
.board-v3 .full-overlays .board-space span{
  position:absolute!important;
  left:50%!important;
  top:-1.95rem!important;
  transform:translateX(-50%) translateY(5px)!important;
  opacity:0!important;
  pointer-events:none!important;
  white-space:nowrap!important;
  padding:.24rem .48rem!important;
  border-radius:999px!important;
  background:rgba(10,18,39,.94)!important;
  color:#fff8e8!important;
  border:1px solid rgba(226,198,132,.42)!important;
  box-shadow:0 10px 20px rgba(0,0,0,.32)!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
.board-v3 .full-overlays .board-space:hover span,
.board-v3 .full-overlays .board-space:focus-visible span,
.board-v3 .full-overlays .board-space.is-selected span{
  opacity:1!important;
  transform:translateX(-50%) translateY(0)!important;
}
.board-v3 .full-overlays .board-space::before{
  inset:-9px!important;
  border-radius:50%!important;
  border:2px solid rgba(255,236,170,.82)!important;
  background:radial-gradient(circle,rgba(255,235,166,.22),rgba(226,198,132,.08) 58%,transparent 72%)!important;
  box-shadow:0 0 24px rgba(226,198,132,.76),inset 0 0 16px rgba(255,248,232,.22)!important;
}

/* The article is now an invisible board-sized layer; the inner div sits exactly in the board's ivory center panel. */
.board-v3 .board-question-card{
  position:absolute!important;
  z-index:6!important;
  left:50%!important;
  top:50%!important;
  width:min(100%,calc((100vh - 142px) * 1.792))!important;
  aspect-ratio:2048/1143!important;
  max-height:calc(100vh - 142px)!important;
  transform:translate(-50%,-50%)!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  pointer-events:none!important;
}
.board-v3 .question-card-inner{
  position:absolute;
  left:20.3%;
  top:23.7%;
  width:59.6%;
  height:51.2%;
  display:flex;
  flex-direction:column;
  padding:clamp(.62rem,1.1vw,1.05rem) clamp(.85rem,1.55vw,1.45rem);
  border-radius:clamp(18px,3vw,38px);
  background:linear-gradient(145deg,rgba(255,248,232,.18),rgba(255,248,232,.05));
  border:0;
  box-shadow:none;
  overflow:hidden;
  pointer-events:auto;
}
.board-v3 .board-question-card::before,
.board-v3 .board-question-card::after{display:none!important;content:none!important;}
.board-v3 .question-topline{
  padding-right:0!important;
  margin-bottom:.26rem!important;
  flex:0 0 auto;
}
.board-v3 .category-label,
.board-v3 .points-label{
  font-size:clamp(.66rem,.82vw,.88rem)!important;
  padding:.25rem .58rem!important;
  line-height:1.05!important;
  max-width:48%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.board-v3 .board-question-card h1{
  font-size:clamp(1.72rem,2.65vw,3.15rem)!important;
  line-height:.86!important;
  margin:.12rem 0 .26rem!important;
  letter-spacing:.01em;
  flex:0 0 auto;
}
.board-v3 .board-question-card p{
  font-size:clamp(.78rem,1.02vw,1rem)!important;
  line-height:1.25!important;
  margin:.08rem 0 .34rem!important;
  flex:0 0 auto;
}
.board-v3 .board-answer-options{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.38rem .48rem!important;
  margin:.2rem 0 .36rem!important;
  flex:1 1 auto;
  min-height:0;
  align-content:start;
}
.board-v3 .board-answer-options .answer-btn{
  min-height:clamp(38px,5.15vh,56px)!important;
  padding:.45rem .68rem!important;
  border-radius:15px!important;
  font-size:clamp(.75rem,.92vw,.92rem)!important;
  line-height:1.12!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.board-v3 .support-box{
  margin:.25rem 0!important;
  max-height:none!important;
  overflow:visible!important;
  font-size:clamp(.72rem,.9vw,.88rem)!important;
  line-height:1.2!important;
}
.board-v3 .board-card-actions{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:.38rem!important;
  margin-top:auto!important;
  flex:0 0 auto;
}
.board-v3 .board-card-actions .btn{
  min-height:clamp(34px,4.6vh,46px)!important;
  padding:.38rem .42rem!important;
  border-radius:999px!important;
  font-size:clamp(.68rem,.83vw,.84rem)!important;
  line-height:1.05!important;
}
.board-v3 .board-feedback{
  min-height:clamp(26px,4vh,38px)!important;
  margin:.3rem 0 0!important;
  padding:.36rem .58rem!important;
  font-size:clamp(.72rem,.86vw,.88rem)!important;
  line-height:1.13!important;
  overflow:hidden!important;
  flex:0 0 auto;
}
.board-v3 .power-tools{
  margin:.18rem 0!important;
  padding:.45rem .55rem!important;
  border-radius:16px!important;
  background:rgba(24,38,74,.07)!important;
  display:grid;
  gap:.35rem;
}
.board-v3 .power-tools label{display:grid;gap:.25rem;font-weight:900;color:#142247;}
.board-v3 .power-tools select{border-radius:12px;border:1px solid rgba(24,38,74,.18);padding:.38rem .48rem;background:#fff8e8;font-weight:900;color:#142247;}
.board-v3 .power-once-note{font-size:.72rem;font-weight:900;color:#6f4a22;}

.board-v3 .solo-deck-choice-panel{display:grid;gap:.34rem;color:#142247;}
.board-v3 .solo-deck-choice-panel>strong{font-size:clamp(.76rem,.95vw,.94rem);text-transform:uppercase;letter-spacing:.05em;color:#6f4a22;}
.board-v3 .solo-deck-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.36rem;}
.board-v3 .solo-deck-choice{
  display:grid;
  gap:.1rem;
  text-align:left;
  border:1px solid rgba(200,164,106,.42);
  border-radius:14px;
  padding:.42rem .5rem;
  background:rgba(255,248,232,.68);
  color:#142247;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}
.board-v3 .solo-deck-choice span{font-weight:950;font-size:clamp(.7rem,.84vw,.86rem);line-height:1.08;}
.board-v3 .solo-deck-choice small{font-weight:800;color:#5d5f63;font-size:clamp(.58rem,.7vw,.72rem);line-height:1.08;}
.board-v3 .solo-deck-choice:hover,.board-v3 .solo-deck-choice:focus-visible,.board-v3 .solo-deck-choice.is-selected{background:linear-gradient(145deg,#fff4c5,#e0bd63);border-color:rgba(111,74,34,.44);transform:translateY(-1px);}

/* One clean cropped die only: no artificial pip badge placed over the image. */
.board-v3 .hud-dice-button{
  width:60px!important;
  height:60px!important;
  padding:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background:#25180f!important;
}
.board-v3 .hud-dice-button img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  padding:0!important;
}
.board-v3 .dice-pip-face{display:none!important;}
.board-v3 .dice-status-copy strong{font-size:.86rem!important;}

/* Cropped visual team pieces from the uploaded assets. */
.board-v3 .full-pawn{
  width:clamp(44px,4.2vw,62px)!important;
  height:clamp(44px,4.2vw,62px)!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,rgba(255,248,232,.86),rgba(200,164,106,.32))!important;
  border:2px solid rgba(255,231,168,.9)!important;
  box-shadow:0 13px 20px rgba(0,0,0,.36),0 0 0 4px rgba(17,27,54,.18)!important;
  overflow:visible!important;
}
.board-v3 .full-pawn::before,.board-v3 .full-pawn::after{display:none!important;content:none!important;}
.board-v3 .full-pawn .pawn-piece{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
  display:block;
  filter:saturate(1.06) contrast(1.03);
}
.board-v3 .full-pawn small{
  position:absolute!important;
  left:50%!important;
  bottom:-.42rem!important;
  transform:translateX(-50%)!important;
  z-index:2!important;
  min-width:32px!important;
  padding:.08rem .28rem!important;
  border-radius:999px!important;
  background:#111b36!important;
  color:#ffe7a8!important;
  border:1px solid rgba(255,230,164,.62)!important;
  font-size:.58rem!important;
  font-weight:950!important;
  line-height:1.2!important;
}
.board-v3 .full-pawn.is-active{box-shadow:0 0 0 5px rgba(245,215,128,.34),0 16px 28px rgba(0,0,0,.38)!important;}
.board-v3 .team-token.piece-token{overflow:hidden;padding:0;background:#111b36;border:2px solid rgba(255,231,168,.85);}
.board-v3 .team-token.piece-token img{width:100%;height:100%;object-fit:cover;display:block;}
.board-v3 .team-token.piece-token i{display:none;}

@media (max-width:980px){
  .board-v3 .board-question-card{width:min(100%,960px)!important;max-height:none!important;}
  .board-v3 .question-card-inner{left:9%;top:23%;width:82%;height:51%;padding:.7rem .9rem;}
  .board-v3 .solo-deck-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  .board-v3 .question-card-inner{left:6%;top:24%;width:88%;height:50%;padding:.55rem .65rem;border-radius:18px;}
  .board-v3 .board-answer-options{grid-template-columns:1fr!important;gap:.28rem!important;}
  .board-v3 .board-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .board-v3 .solo-deck-choice-grid{grid-template-columns:1fr;}
}

/* === BOARD GAME V5 dice + speaking-only cleanup === */
.board-v3 .hud-dice-button{
  perspective:520px!important;
  width:76px!important;
  height:76px!important;
  padding:8px!important;
  border-radius:20px!important;
  overflow:visible!important;
  background:radial-gradient(circle at 50% 28%,rgba(255,240,180,.22),rgba(31,20,11,.78) 62%)!important;
  border:1px solid rgba(255,230,164,.44)!important;
}
.board-v3 .hud-dice-button img{display:none!important;}
.board-v3 .rolling-die-cube{
  --die-size:56px;
  position:relative;
  width:var(--die-size);
  height:var(--die-size);
  display:block;
  transform-style:preserve-3d;
  transform:rotateX(-18deg) rotateY(26deg);
  transition:transform .38s cubic-bezier(.22,1,.36,1),filter .22s ease;
  filter:drop-shadow(0 13px 16px rgba(0,0,0,.36));
}
.board-v3 .rolling-die-cube.is-rolling{
  animation:realDieRoll 1.05s cubic-bezier(.22,.85,.24,1) both;
}
@keyframes realDieRoll{
  0%{transform:translateY(0) rotateX(-18deg) rotateY(26deg) rotateZ(0deg)}
  18%{transform:translateY(-15px) rotateX(165deg) rotateY(120deg) rotateZ(30deg)}
  40%{transform:translateY(5px) rotateX(340deg) rotateY(245deg) rotateZ(-18deg)}
  64%{transform:translateY(-8px) rotateX(520deg) rotateY(420deg) rotateZ(22deg)}
  82%{transform:translateY(2px) rotateX(690deg) rotateY(545deg) rotateZ(-8deg)}
  100%{transform:translateY(0) rotateX(-18deg) rotateY(26deg) rotateZ(0)}
}
.board-v3 .die-face{
  position:absolute;
  inset:0;
  border-radius:14px;
  display:block;
  background:
    radial-gradient(circle at 28% 22%,rgba(255,249,213,.72),transparent 20%),
    linear-gradient(145deg,#ffe19a 0%,#c08a31 42%,#81501d 100%);
  border:1px solid rgba(255,240,185,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset -9px -10px 16px rgba(68,39,13,.32),inset 8px 7px 12px rgba(255,246,198,.18);
  backface-visibility:hidden;
}
.board-v3 .face-1{transform:translateZ(28px)}
.board-v3 .face-2{transform:rotateY(90deg) translateZ(28px)}
.board-v3 .face-3{transform:rotateX(90deg) translateZ(28px)}
.board-v3 .face-4{transform:rotateX(-90deg) translateZ(28px)}
.board-v3 .face-5{transform:rotateY(-90deg) translateZ(28px)}
.board-v3 .face-6{transform:rotateY(180deg) translateZ(28px)}
.board-v3 .rolling-die-cube.die-result-1{transform:rotateX(-18deg) rotateY(26deg)}
.board-v3 .rolling-die-cube.die-result-2{transform:rotateX(-18deg) rotateY(-64deg)}
.board-v3 .rolling-die-cube.die-result-3{transform:rotateX(-108deg) rotateY(26deg)}
.board-v3 .rolling-die-cube.die-result-4{transform:rotateX(72deg) rotateY(26deg)}
.board-v3 .rolling-die-cube.die-result-5{transform:rotateX(-18deg) rotateY(116deg)}
.board-v3 .rolling-die-cube.die-result-6{transform:rotateX(-18deg) rotateY(206deg)}
.board-v3 .die-face .pip{
  position:absolute!important;
  width:9px!important;
  height:9px!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 30%,#1d315a,#071022 70%)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.18),0 1px 1px rgba(255,239,178,.18)!important;
  display:block!important;
}
.board-v3 .die-face .pip.tl{left:12px!important;top:12px!important}.board-v3 .die-face .pip.tr{right:12px!important;top:12px!important}.board-v3 .die-face .pip.ml{left:12px!important;top:23.5px!important}.board-v3 .die-face .pip.mm{left:23.5px!important;top:23.5px!important}.board-v3 .die-face .pip.mr{right:12px!important;top:23.5px!important}.board-v3 .die-face .pip.bl{left:12px!important;bottom:12px!important}.board-v3 .die-face .pip.br{right:12px!important;bottom:12px!important}
.board-v3 .hud-dice-button.rolling{animation:dieButtonBounce 1.05s ease both!important;}
@keyframes dieButtonBounce{0%,100%{transform:translateY(0) scale(1)}24%{transform:translateY(-4px) scale(1.06)}48%{transform:translateY(2px) scale(.98)}72%{transform:translateY(-2px) scale(1.02)}}
.board-v3 .card-production .board-answer-options{display:none!important;}
.board-v3 .card-production .questionPrompt,
.board-v3 .card-production #questionPrompt{font-size:clamp(.95rem,1.25vw,1.16rem)!important;}
.board-v3 .card-production .support-box{display:block!important;background:rgba(255,248,232,.42)!important;border:1px solid rgba(200,164,106,.25)!important;border-radius:14px!important;padding:.42rem .58rem!important;}
.board-v3 .card-production .support-box ul{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.28rem!important;margin:.25rem 0 0!important;padding-left:1rem!important;}
.board-v3 .card-production .support-box li{font-size:clamp(.62rem,.78vw,.78rem)!important;line-height:1.12!important;}
@media (max-width:640px){
  .board-v3 .card-production .support-box ul{grid-template-columns:1fr!important;}
}

/* === BOARD GAME V6 edge cleanup — no exposed side-room background, board fills available stage === */
.board-v3 .board-stage-v3{
  background:#120d0b!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}
.board-v3 .board-stage-v3::before{
  background:radial-gradient(circle at 50% 50%,rgba(255,238,180,.10),transparent 42%),linear-gradient(180deg,rgba(6,10,20,.08),rgba(0,0,0,.18))!important;
  z-index:2!important;
  pointer-events:none!important;
}
.board-v3 .full-board-image{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  border-radius:0!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.38))!important;
}
.board-v3 .full-overlays,
.board-v3 .full-active-glow,
.board-v3 .full-pawns-layer,
.board-v3 .board-question-card{
  width:100%!important;
  aspect-ratio:2048/1143!important;
  max-width:none!important;
  max-height:none!important;
  height:auto!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
}
.board-v3 .question-card-inner{
  left:7.2%!important;
  top:24.4%!important;
  width:85.6%!important;
  height:48.8%!important;
  border-radius:clamp(20px,4.2vw,58px)!important;
}
.board-v3 .board-answer-options{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media (max-width:980px){
  .board-v3 .full-board-image,
  .board-v3 .full-overlays,
  .board-v3 .full-active-glow,
  .board-v3 .full-pawns-layer,
  .board-v3 .board-question-card{
    width:100%!important;
    max-width:none!important;
  }
  .board-v3 .question-card-inner{
    left:7.2%!important;
    top:24.4%!important;
    width:85.6%!important;
    height:48.8%!important;
  }
}
@media (max-width:640px){
  .board-v3 .question-card-inner{
    left:6.6%!important;
    top:25%!important;
    width:86.8%!important;
    height:47.8%!important;
  }
}

/* === BOARD GAME V7 FINAL CLEANUP — compact HUD, contained board, real center card === */
.board-clean.full-board-page{
  min-height:100vh!important;
  overflow:hidden!important;
  background:radial-gradient(circle at 50% 0%,rgba(226,198,132,.12),transparent 28rem),linear-gradient(145deg,#081229 0%,#111b36 50%,#24170f 100%)!important;
}
.board-clean .board-game-shell-v3{
  height:100vh!important;
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-rows:minmax(62px,76px) minmax(0,1fr)!important;
  gap:.35rem!important;
  padding:.35rem!important;
  overflow:hidden!important;
}
.board-clean .board-top-hud{
  min-height:0!important;
  height:100%!important;
  max-height:76px!important;
  display:grid!important;
  grid-template-columns:auto minmax(155px,.72fr) minmax(220px,1.05fr) auto auto!important;
  gap:.42rem!important;
  align-items:center!important;
  padding:.34rem .46rem!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(8,16,35,.98),rgba(19,31,65,.95))!important;
  border:1px solid rgba(226,198,132,.24)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.33),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.board-clean .command-home,.board-clean .command-btn{
  min-height:34px!important;
  padding:.42rem .6rem!important;
  border-radius:999px!important;
  font-size:.72rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.board-clean .hud-turn-block strong{
  font-size:clamp(.98rem,1.45vw,1.35rem)!important;
  line-height:1!important;
}
.board-clean .hud-turn-block .eyebrow{font-size:.62rem!important;line-height:1!important;}
.board-clean .hud-result-line{
  font-size:clamp(.65rem,.85vw,.78rem)!important;
  padding:.18rem .42rem!important;
  margin-top:.14rem!important;
  max-width:100%!important;
}
.board-clean .hud-score-strip{
  min-height:0!important;
  height:58px!important;
  padding:.24rem .36rem!important;
  gap:.36rem!important;
  border-radius:15px!important;
}
.board-clean .score-title-mini span{font-size:.64rem!important;}
.board-clean .score-title-mini small{font-size:.55rem!important;}
.board-clean .top-score-board{gap:.24rem!important;padding:0!important;}
.board-clean .top-score-board .full-team-score{
  min-width:92px!important;
  max-width:138px!important;
  padding:.28rem .34rem!important;
  border-radius:12px!important;
  gap:.22rem!important;
}
.board-clean .top-score-board .team-token{width:24px!important;height:24px!important;}
.board-clean .top-score-board .full-team-score strong{font-size:.68rem!important;}
.board-clean .top-score-board .full-team-score small{font-size:.52rem!important;}
.board-clean .top-score-board .full-team-score b{font-size:.84rem!important;min-width:30px!important;padding:.1rem .26rem!important;}
.board-clean .hud-dice-area{
  height:58px!important;
  grid-template-columns:52px minmax(74px,auto)!important;
  gap:.35rem!important;
  padding:.22rem .34rem!important;
  border-radius:15px!important;
}
.board-clean .hud-dice-button{
  width:52px!important;
  height:52px!important;
  padding:6px!important;
  border-radius:14px!important;
  overflow:visible!important;
  background:radial-gradient(circle at 45% 25%,rgba(255,238,171,.25),rgba(35,22,11,.82) 66%)!important;
  border:1px solid rgba(255,230,164,.38)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.13)!important;
}
.board-clean .rolling-die-cube{--die-size:38px!important;width:38px!important;height:38px!important;}
.board-clean .face-1{transform:translateZ(19px)!important}.board-clean .face-2{transform:rotateY(90deg) translateZ(19px)!important}.board-clean .face-3{transform:rotateX(90deg) translateZ(19px)!important}.board-clean .face-4{transform:rotateX(-90deg) translateZ(19px)!important}.board-clean .face-5{transform:rotateY(-90deg) translateZ(19px)!important}.board-clean .face-6{transform:rotateY(180deg) translateZ(19px)!important}
.board-clean .die-face{border-radius:10px!important;}
.board-clean .die-face .pip{width:6px!important;height:6px!important;}
.board-clean .die-face .pip.tl{left:8px!important;top:8px!important}.board-clean .die-face .pip.tr{right:8px!important;top:8px!important}.board-clean .die-face .pip.ml{left:8px!important;top:16px!important}.board-clean .die-face .pip.mm{left:16px!important;top:16px!important}.board-clean .die-face .pip.mr{right:8px!important;top:16px!important}.board-clean .die-face .pip.bl{left:8px!important;bottom:8px!important}.board-clean .die-face .pip.br{right:8px!important;bottom:8px!important}
.board-clean .dice-status-copy strong{font-size:.76rem!important;}
.board-clean .dice-status-copy small{font-size:.55rem!important;}
.board-clean .hud-actions{gap:.25rem!important;}
.board-clean .board-stage-v3{
  position:relative!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  padding:.08rem!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:#120d0b!important;
  box-shadow:0 18px 46px rgba(0,0,0,.4),inset 0 0 0 1px rgba(226,198,132,.18)!important;
}
.board-clean .board-stage-v3::before{display:none!important;content:none!important;}
.board-clean .board-frame{
  position:relative!important;
  width:min(100%,calc((100vh - 84px) * 1.792))!important;
  max-width:100%!important;
  aspect-ratio:2048/1143!important;
  max-height:calc(100vh - 84px)!important;
  border-radius:18px!important;
  overflow:visible!important;
}
.board-clean .full-board-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:18px!important;
  display:block!important;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.38))!important;
}
.board-clean .full-overlays,.board-clean .full-active-glow,.board-clean .full-pawns-layer{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  left:0!important;
  top:0!important;
  transform:none!important;
  z-index:4!important;
}
.board-clean .full-active-glow,.board-clean .full-pawns-layer{pointer-events:none!important;}
.board-clean .board-question-card{
  position:absolute!important;
  z-index:6!important;
  left:50%!important;
  top:52%!important;
  transform:translate(-50%,-50%)!important;
  width:clamp(420px,48%,680px)!important;
  max-width:54%!important;
  max-height:56%!important;
  aspect-ratio:auto!important;
  padding:0!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,rgba(255,249,234,.98),rgba(231,215,181,.97))!important;
  border:2px solid rgba(200,164,106,.58)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.7)!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}
.board-clean .board-question-card::before,.board-clean .board-question-card::after{display:none!important;content:none!important;}
.board-clean .question-card-inner{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  height:auto!important;
  max-height:calc((100vh - 84px) * .48)!important;
  padding:clamp(.68rem,1.05vw,1rem) clamp(.82rem,1.3vw,1.18rem)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:auto!important;
  display:flex!important;
  flex-direction:column!important;
}
.board-clean .question-topline{display:flex!important;justify-content:space-between!important;gap:.5rem!important;margin-bottom:.28rem!important;padding-right:0!important;}
.board-clean .category-label,.board-clean .points-label{font-size:clamp(.66rem,.82vw,.82rem)!important;padding:.26rem .58rem!important;border-radius:999px!important;}
.board-clean .board-question-card h1{font-size:clamp(1.9rem,3vw,3.25rem)!important;line-height:.9!important;margin:.15rem 0 .38rem!important;}
.board-clean .board-question-card p{font-size:clamp(.82rem,1.05vw,1.02rem)!important;line-height:1.28!important;margin:.08rem 0 .46rem!important;}
.board-clean .board-answer-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.44rem .52rem!important;margin:.15rem 0 .48rem!important;}
.board-clean .board-answer-options .answer-btn{min-height:40px!important;padding:.5rem .64rem!important;border-radius:14px!important;font-size:clamp(.74rem,.88vw,.9rem)!important;line-height:1.15!important;}
.board-clean .support-box{max-height:88px!important;overflow:auto!important;margin:.24rem 0!important;padding:.42rem .58rem!important;border-radius:14px!important;background:rgba(24,38,74,.07)!important;}
.board-clean .board-card-actions{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:.36rem!important;margin-top:auto!important;}
.board-clean .board-card-actions .btn{min-height:36px!important;padding:.4rem .44rem!important;border-radius:999px!important;font-size:.72rem!important;line-height:1.05!important;}
.board-clean .board-card-actions .next-turn-button.hidden{display:none!important;}
.board-clean .board-card-actions:has(.next-turn-button.hidden){grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.board-clean .board-feedback{min-height:28px!important;margin:.42rem 0 0!important;padding:.38rem .55rem!important;border-radius:14px!important;font-size:.75rem!important;line-height:1.15!important;}
.board-clean .board-bottom-controls,.board-clean .board-hidden-controls,.board-clean .board-legend{display:none!important;}
.board-clean .solo-card-drawer{position:absolute!important;left:-9999px!important;bottom:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.board-clean .board-power-chip{display:none!important;}
.board-clean .board-study-drawer{right:.8rem!important;top:.8rem!important;left:auto!important;max-width:320px!important;z-index:8!important;}
.board-clean .full-overlays .board-space{background:transparent!important;border:0!important;box-shadow:none!important;outline:none!important;opacity:1!important;border-radius:50%!important;color:transparent!important;}
.board-clean .full-overlays .board-space::after{display:none!important;content:none!important;}
.board-clean .full-overlays .board-space::before{content:""!important;position:absolute!important;inset:-7px!important;border-radius:50%!important;border:1px solid rgba(255,232,156,.72)!important;background:radial-gradient(circle,rgba(255,235,164,.26),rgba(226,198,132,.08) 55%,transparent 75%)!important;box-shadow:0 0 18px rgba(226,198,132,.55),inset 0 0 10px rgba(255,248,232,.16)!important;opacity:0!important;transform:scale(.84)!important;transition:opacity .16s ease,transform .16s ease!important;}
.board-clean .full-overlays .board-space:hover::before,.board-clean .full-overlays .board-space:focus-visible::before,.board-clean .full-overlays .board-space.was-clicked::before{opacity:1!important;transform:scale(1)!important;}
.board-clean .full-overlays .board-space.is-selected::before{opacity:0!important;}
.board-clean .full-overlays .board-space span{opacity:0!important;pointer-events:none!important;position:absolute!important;left:50%!important;top:-1.75rem!important;transform:translateX(-50%) translateY(4px)!important;white-space:nowrap!important;padding:.22rem .45rem!important;border-radius:999px!important;background:rgba(8,16,35,.94)!important;color:#fff8e8!important;border:1px solid rgba(226,198,132,.34)!important;box-shadow:0 8px 18px rgba(0,0,0,.32)!important;font-size:.62rem!important;font-weight:950!important;transition:opacity .16s ease,transform .16s ease!important;}
.board-clean .full-overlays .board-space:hover span,.board-clean .full-overlays .board-space:focus-visible span{opacity:1!important;transform:translateX(-50%) translateY(0)!important;}
.board-clean .full-overlays .board-space.is-selected span{opacity:0!important;}
.board-clean .full-active-glow::after{border:1px solid rgba(255,232,156,.8)!important;box-shadow:0 0 16px rgba(226,198,132,.55)!important;background:radial-gradient(circle,rgba(255,235,164,.20),transparent 66%)!important;animation:none!important;}
.board-clean .full-active-glow.is-visible::after{animation:spaceClickPulse .75s ease-out both!important;}
.board-clean .full-pawn{width:clamp(34px,3.2vw,48px)!important;height:clamp(34px,3.2vw,48px)!important;z-index:5!important;}
.board-clean .full-pawn small{font-size:.48rem!important;min-width:42px!important;bottom:-.5rem!important;}
.board-clean.solo-mode .top-score-board .full-team-score small{display:none!important;}
.board-clean.solo-mode .hud-score-strip{grid-template-columns:auto minmax(120px,1fr)!important;}
.board-clean.solo-mode .board-card-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
@media (max-width:1180px){
  .board-clean.full-board-page{overflow:auto!important;}
  .board-clean .board-game-shell-v3{height:auto!important;min-height:100vh!important;grid-template-rows:auto auto!important;overflow:visible!important;}
  .board-clean .board-top-hud{height:auto!important;max-height:none!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .board-clean .board-frame{width:min(100%,960px)!important;max-height:none!important;}
  .board-clean .board-question-card{width:min(52%,620px)!important;min-width:360px!important;}
}
@media (max-width:720px){
  .board-clean .board-top-hud{grid-template-columns:1fr!important;}
  .board-clean .board-question-card{width:76%!important;max-width:none!important;min-width:0!important;top:53%!important;}
  .board-clean .board-answer-options{grid-template-columns:1fr!important;}
  .board-clean .board-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* Final board hotspot cleanup: remove the visible oval glow completely. */
.board-clean .full-active-glow,
.board-clean .full-active-glow::before,
.board-clean .full-active-glow::after,
.board-clean .active-glow,
.board-clean .active-glow::before,
.board-clean .active-glow::after{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  box-shadow:none!important;
  border:0!important;
  background:transparent!important;
  animation:none!important;
}
.board-clean .full-overlays .board-space::before,
.board-clean .full-overlays .board-space::after,
.board-clean .full-overlays .board-space:hover::before,
.board-clean .full-overlays .board-space:focus-visible::before,
.board-clean .full-overlays .board-space.was-clicked::before,
.board-clean .full-overlays .board-space.is-selected::before{
  display:none!important;
  content:none!important;
  opacity:0!important;
  visibility:hidden!important;
  box-shadow:none!important;
  border:0!important;
  background:transparent!important;
  animation:none!important;
}
.board-clean .full-overlays .board-space:hover span,
.board-clean .full-overlays .board-space:focus-visible span{
  opacity:1!important;
  transform:translateX(-50%) translateY(0)!important;
}
.board-clean .full-overlays .board-space.was-clicked span{
  opacity:0!important;
}

/* === Mode display + 3D moving marker pass === */
.board-clean .full-overlays .board-space::after{display:none!important;content:none!important;}
.board-clean .full-overlays .board-space::before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:88%!important;
  height:88%!important;
  transform:translate(-50%,-50%) scale(.72)!important;
  border-radius:50%!important;
  border:1px solid rgba(255,233,160,.62)!important;
  background:radial-gradient(circle,rgba(255,239,180,.22),rgba(226,198,132,.08) 48%,transparent 72%)!important;
  box-shadow:0 0 16px rgba(226,198,132,.42),inset 0 0 10px rgba(255,248,232,.12)!important;
  opacity:0!important;
  visibility:visible!important;
  pointer-events:none!important;
  transition:opacity .16s ease,transform .16s ease!important;
  animation:none!important;
}
.board-clean.team-mode .full-overlays .board-space:hover::before,
.board-clean.team-mode .full-overlays .board-space:focus-visible::before,
.board-clean.class-mode .full-overlays .board-space:hover::before,
.board-clean.class-mode .full-overlays .board-space:focus-visible::before{
  opacity:.95!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
.board-clean.team-mode .full-overlays .board-space.was-clicked::before,
.board-clean.class-mode .full-overlays .board-space.was-clicked::before{
  opacity:1!important;
  animation:bbSpaceCirclePulse .58s ease-out both!important;
}
.board-clean .full-overlays .board-space.is-selected::before{opacity:0!important;animation:none!important;}
.board-clean.solo-mode .full-overlays{pointer-events:none!important;}
.board-clean.solo-mode .full-overlays .board-space span{display:none!important;}
@keyframes bbSpaceCirclePulse{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.65)}
  38%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(1.18)}
}
.board-clean .full-pawn{
  width:clamp(42px,4.1vw,68px)!important;
  height:clamp(58px,6.2vw,96px)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform:translate(-50%,-58%) translateZ(0) scale(.95)!important;
  transition:left .25s ease,top .25s ease,transform .25s ease,filter .25s ease!important;
  perspective:500px!important;
  z-index:7!important;
}
.board-clean .full-pawn::before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:4px!important;
  width:72%!important;
  height:18%!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.42),rgba(0,0,0,.12) 50%,transparent 72%)!important;
  filter:blur(1px)!important;
  opacity:.85!important;
}
.board-clean .full-pawn::after{
  display:block!important;
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:4px!important;
  width:86%!important;
  height:28%!important;
  transform:translateX(-50%) scale(.84)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(255,229,148,.55),rgba(226,198,132,.18) 48%,transparent 72%)!important;
  box-shadow:0 0 20px rgba(226,198,132,.6)!important;
  opacity:0!important;
  transition:opacity .2s ease,transform .2s ease!important;
  pointer-events:none!important;
}
.board-clean .full-pawn.is-active{
  transform:translate(-50%,-62%) translateZ(0) scale(1.04)!important;
  filter:drop-shadow(0 16px 14px rgba(0,0,0,.32))!important;
}
.board-clean .full-pawn.is-active::after{
  opacity:1!important;
  transform:translateX(-50%) scale(1)!important;
  animation:bbActivePieceGlow 1.65s ease-in-out infinite!important;
}
.board-clean .full-pawn .pawn-piece{
  position:absolute!important;
  left:50%!important;
  bottom:11px!important;
  width:112%!important;
  height:112%!important;
  object-fit:contain!important;
  border-radius:0!important;
  transform:translateX(-50%) rotateX(2deg)!important;
  transform-origin:50% 88%!important;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.38)) saturate(1.08) contrast(1.03)!important;
  background:transparent!important;
  pointer-events:none!important;
}
.board-clean .full-pawn.is-active .pawn-piece{animation:bbPieceIdle 1.9s ease-in-out infinite!important;}
.board-clean .full-pawn.is-moving{z-index:10!important;}
.board-clean .full-pawn.is-moving .pawn-piece{animation:bbPieceMove .24s ease-in-out!important;}
.board-clean .full-pawn small{
  left:50%!important;
  bottom:-.12rem!important;
  transform:translateX(-50%)!important;
  min-width:max-content!important;
  padding:.12rem .42rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,rgba(8,16,35,.96),rgba(22,35,72,.94))!important;
  color:#ffe7a8!important;
  border:1px solid rgba(226,198,132,.58)!important;
  box-shadow:0 8px 14px rgba(0,0,0,.24)!important;
  font-size:clamp(.48rem,.72vw,.66rem)!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}
.board-clean.solo-mode .full-pawn small{content:"Solo"!important;}
.board-clean.solo-mode .teamCountBadge{display:none!important;}
.board-clean.solo-mode .score-title-mini small{display:none!important;}
.board-clean.solo-mode #teamCountBadge{display:none!important;}
@keyframes bbActivePieceGlow{
  0%,100%{opacity:.72;transform:translateX(-50%) scale(.92)}
  50%{opacity:1;transform:translateX(-50%) scale(1.08)}
}
@keyframes bbPieceIdle{
  0%,100%{transform:translateX(-50%) translateY(0) rotateX(2deg)}
  50%{transform:translateX(-50%) translateY(-4px) rotateX(2deg)}
}
@keyframes bbPieceMove{
  0%,100%{transform:translateX(-50%) translateY(0) rotateZ(0deg) scale(1)}
  45%{transform:translateX(-50%) translateY(-12px) rotateZ(-3deg) scale(1.06)}
  70%{transform:translateX(-50%) translateY(-6px) rotateZ(3deg) scale(1.03)}
}
.board-clean .top-score-board .team-token.piece-token{
  border-radius:12px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.board-clean .top-score-board .team-token.piece-token img{
  width:130%!important;
  height:130%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 4px 4px rgba(0,0,0,.28))!important;
  transform:translate(-10%,-8%)!important;
}

/* === Dice-only HUD fix: compact cubic die, no text beside it === */
.board-clean .board-top-hud{
  grid-template-columns:auto minmax(155px,.74fr) minmax(220px,1.05fr) 58px auto!important;
}
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  width:58px!important;
  min-width:58px!important;
  height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  grid-template-columns:none!important;
  gap:0!important;
  padding:0!important;
  border-radius:16px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.board-clean .dice-status-copy,
.board-v3 .dice-status-copy{
  display:none!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  min-height:54px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  perspective:420px!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{
  content:""!important;
  position:absolute!important;
  width:40px!important;
  height:11px!important;
  left:50%!important;
  bottom:1px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.42),rgba(0,0,0,.16) 52%,transparent 72%)!important;
  filter:blur(.2px)!important;
  opacity:.86!important;
  pointer-events:none!important;
}
.board-clean .rolling-die-cube,
.board-v3 .rolling-die-cube{
  --die-size:42px!important;
  width:42px!important;
  height:42px!important;
  transform-style:preserve-3d!important;
  transform:rotateX(-20deg) rotateY(32deg)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 10px 12px rgba(0,0,0,.38)) saturate(1.08)!important;
}
.board-clean .die-face,
.board-v3 .die-face{
  position:absolute!important;
  inset:0!important;
  border-radius:11px!important;
  background:
    radial-gradient(circle at 24% 20%,rgba(255,251,218,.85),transparent 17%),
    linear-gradient(145deg,#ffe6a8 0%,#d9a74b 34%,#9b681f 76%,#6b4114 100%)!important;
  border:1px solid rgba(255,239,188,.78)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    inset -7px -8px 12px rgba(70,40,12,.34),
    inset 7px 6px 10px rgba(255,247,202,.2)!important;
  backface-visibility:hidden!important;
}
.board-clean .face-1,.board-v3 .face-1{transform:translateZ(21px)!important}
.board-clean .face-2,.board-v3 .face-2{transform:rotateY(90deg) translateZ(21px)!important}
.board-clean .face-3,.board-v3 .face-3{transform:rotateX(90deg) translateZ(21px)!important}
.board-clean .face-4,.board-v3 .face-4{transform:rotateX(-90deg) translateZ(21px)!important}
.board-clean .face-5,.board-v3 .face-5{transform:rotateY(-90deg) translateZ(21px)!important}
.board-clean .face-6,.board-v3 .face-6{transform:rotateY(180deg) translateZ(21px)!important}
.board-clean .rolling-die-cube.die-result-1,.board-v3 .rolling-die-cube.die-result-1{transform:rotateX(-20deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-2,.board-v3 .rolling-die-cube.die-result-2{transform:rotateX(-20deg) rotateY(-58deg)!important}
.board-clean .rolling-die-cube.die-result-3,.board-v3 .rolling-die-cube.die-result-3{transform:rotateX(-110deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-4,.board-v3 .rolling-die-cube.die-result-4{transform:rotateX(70deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-5,.board-v3 .rolling-die-cube.die-result-5{transform:rotateX(-20deg) rotateY(122deg)!important}
.board-clean .rolling-die-cube.die-result-6,.board-v3 .rolling-die-cube.die-result-6{transform:rotateX(-20deg) rotateY(212deg)!important}
.board-clean .rolling-die-cube.is-rolling,
.board-v3 .rolling-die-cube.is-rolling{
  animation:cubicBoardDieRoll 1.08s cubic-bezier(.18,.86,.24,1) both!important;
}
@keyframes cubicBoardDieRoll{
  0%{transform:translate3d(0,0,0) rotateX(-20deg) rotateY(32deg) rotateZ(0deg)}
  14%{transform:translate3d(-3px,-16px,0) rotateX(164deg) rotateY(128deg) rotateZ(28deg)}
  30%{transform:translate3d(4px,1px,0) rotateX(328deg) rotateY(252deg) rotateZ(-18deg)}
  48%{transform:translate3d(-2px,-11px,0) rotateX(492deg) rotateY(392deg) rotateZ(24deg)}
  66%{transform:translate3d(3px,2px,0) rotateX(652deg) rotateY(516deg) rotateZ(-12deg)}
  84%{transform:translate3d(0,-5px,0) rotateX(766deg) rotateY(642deg) rotateZ(8deg)}
  100%{transform:translate3d(0,0,0) rotateX(812deg) rotateY(752deg) rotateZ(0deg)}
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:cubicDieButtonLift 1.08s ease both!important;
}
@keyframes cubicDieButtonLift{
  0%,100%{transform:translateY(0) scale(1)}
  22%{transform:translateY(-3px) scale(1.03)}
  50%{transform:translateY(1px) scale(.98)}
  76%{transform:translateY(-2px) scale(1.01)}
}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-cube,
.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-cube{
  filter:drop-shadow(0 12px 14px rgba(0,0,0,.42)) drop-shadow(0 0 10px rgba(226,198,132,.45)) saturate(1.12)!important;
}
.board-clean .die-face .pip,
.board-v3 .die-face .pip{
  width:6.6px!important;
  height:6.6px!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 30%,#1a2d57,#061024 72%)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.18),0 1px 1px rgba(255,239,178,.20)!important;
}
.board-clean .die-face .pip.tl,.board-v3 .die-face .pip.tl{left:8px!important;top:8px!important}
.board-clean .die-face .pip.tr,.board-v3 .die-face .pip.tr{right:8px!important;top:8px!important}
.board-clean .die-face .pip.ml,.board-v3 .die-face .pip.ml{left:8px!important;top:17px!important}
.board-clean .die-face .pip.mm,.board-v3 .die-face .pip.mm{left:17px!important;top:17px!important}
.board-clean .die-face .pip.mr,.board-v3 .die-face .pip.mr{right:8px!important;top:17px!important}
.board-clean .die-face .pip.bl,.board-v3 .die-face .pip.bl{left:8px!important;bottom:8px!important}
.board-clean .die-face .pip.br,.board-v3 .die-face .pip.br{right:8px!important;bottom:8px!important}

/* === Dice interaction fix — image-based premium die, no visible text beside it === */
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  grid-template-columns:1fr!important;
  place-items:center!important;
  width:62px!important;
  min-width:62px!important;
  height:62px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  width:60px!important;
  height:60px!important;
  min-width:60px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  border:0!important;
  border-radius:18px!important;
  background:transparent!important;
  box-shadow:none!important;
  perspective:760px!important;
  cursor:pointer!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{
  content:none!important;
}
.board-clean .hud-dice-button:disabled,
.board-v3 .hud-dice-button:disabled{
  cursor:not-allowed!important;
  opacity:.78!important;
}
.board-clean .die-image-stage,
.board-v3 .die-image-stage{
  width:58px!important;
  height:58px!important;
  display:grid!important;
  place-items:center!important;
  transform-style:preserve-3d!important;
  perspective:760px!important;
  border-radius:18px!important;
}
.board-clean .rolling-die-image,
.board-v3 .rolling-die-image{
  width:58px!important;
  height:58px!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:18px!important;
  transform-origin:50% 55%!important;
  transform-style:preserve-3d!important;
  will-change:transform,filter!important;
  filter:drop-shadow(0 9px 12px rgba(0,0,0,.38)) saturate(1.08) contrast(1.03)!important;
  backface-visibility:hidden!important;
}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-image,
.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-image{
  transform:translateY(-2px) rotateX(10deg) rotateY(-10deg) scale(1.035)!important;
  filter:drop-shadow(0 12px 16px rgba(0,0,0,.46)) drop-shadow(0 0 10px rgba(226,198,132,.38)) saturate(1.12)!important;
}
.board-clean .rolling-die-image.die-result-1,
.board-v3 .rolling-die-image.die-result-1{transform:rotateX(0deg) rotateY(0deg) rotateZ(0deg)!important;}
.board-clean .rolling-die-image.die-result-2,
.board-v3 .rolling-die-image.die-result-2{transform:rotateX(8deg) rotateY(-12deg) rotateZ(1deg)!important;}
.board-clean .rolling-die-image.die-result-3,
.board-v3 .rolling-die-image.die-result-3{transform:rotateX(-7deg) rotateY(13deg) rotateZ(-1deg)!important;}
.board-clean .rolling-die-image.die-result-4,
.board-v3 .rolling-die-image.die-result-4{transform:rotateX(11deg) rotateY(9deg) rotateZ(-2deg)!important;}
.board-clean .rolling-die-image.die-result-5,
.board-v3 .rolling-die-image.die-result-5{transform:rotateX(-10deg) rotateY(-9deg) rotateZ(2deg)!important;}
.board-clean .rolling-die-image.die-result-6,
.board-v3 .rolling-die-image.die-result-6{transform:rotateX(5deg) rotateY(16deg) rotateZ(0deg)!important;}
.board-clean .rolling-die-image.is-rolling,
.board-v3 .rolling-die-image.is-rolling{
  animation:premiumImageDieRoll 1.02s cubic-bezier(.17,.84,.22,1) both!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:premiumImageDieButtonBounce 1.02s ease both!important;
}
@keyframes premiumImageDieRoll{
  0%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg) scale(1);filter:drop-shadow(0 9px 12px rgba(0,0,0,.38)) saturate(1.08)}
  13%{transform:translate3d(0,-13px,16px) rotateX(122deg) rotateY(84deg) rotateZ(-9deg) scale(1.05)}
  29%{transform:translate3d(4px,-19px,24px) rotateX(264deg) rotateY(212deg) rotateZ(14deg) scale(1.08)}
  46%{transform:translate3d(-5px,-10px,18px) rotateX(428deg) rotateY(356deg) rotateZ(-16deg) scale(1.04)}
  64%{transform:translate3d(3px,-4px,9px) rotateX(592deg) rotateY(502deg) rotateZ(9deg) scale(.99)}
  80%{transform:translate3d(0,-9px,14px) rotateX(716deg) rotateY(646deg) rotateZ(-5deg) scale(1.03)}
  91%{transform:translate3d(0,2px,0) rotateX(790deg) rotateY(728deg) rotateZ(2deg) scale(.98)}
  100%{transform:translate3d(0,0,0) rotateX(812deg) rotateY(752deg) rotateZ(0deg) scale(1)}
}
@keyframes premiumImageDieButtonBounce{
  0%,100%{transform:translateY(0) scale(1)}
  18%{transform:translateY(-4px) scale(1.04)}
  50%{transform:translateY(1px) scale(.98)}
  78%{transform:translateY(-2px) scale(1.015)}
}


/* === Dice visibility fix: real visible cubic die in HUD, no side text === */
.board-clean .hud-dice-area,.board-v3 .hud-dice-area{
  width:64px!important;min-width:64px!important;height:64px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important;
}
.board-clean .hud-dice-button,.board-v3 .hud-dice-button{
  position:relative!important;width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;display:grid!important;place-items:center!important;overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;perspective:520px!important;cursor:pointer!important;
}
.board-clean .die-image-stage,.board-v3 .die-image-stage{
  width:50px!important;height:50px!important;display:grid!important;place-items:center!important;position:relative!important;overflow:visible!important;transform-style:preserve-3d!important;
}
.board-clean .rolling-die-cube,.board-v3 .rolling-die-cube{
  --die-size:44px!important;position:relative!important;display:block!important;width:44px!important;height:44px!important;transform-style:preserve-3d!important;transform-origin:center center!important;transition:transform .28s cubic-bezier(.22,1,.36,1),filter .18s ease!important;filter:drop-shadow(0 11px 12px rgba(0,0,0,.42)) saturate(1.12)!important;z-index:2!important;
}
.board-clean .hud-dice-button::before,.board-v3 .hud-dice-button::before{
  content:""!important;position:absolute!important;width:42px!important;height:10px!important;left:50%!important;bottom:4px!important;transform:translateX(-50%)!important;border-radius:50%!important;background:radial-gradient(ellipse,rgba(0,0,0,.42),rgba(0,0,0,.14) 54%,transparent 74%)!important;pointer-events:none!important;
}
.board-clean .die-face,.board-v3 .die-face{
  position:absolute!important;inset:0!important;display:block!important;border-radius:12px!important;background:radial-gradient(circle at 24% 18%,rgba(255,252,222,.88),transparent 18%),linear-gradient(145deg,#ffe9ad 0%,#d7a445 38%,#9b651e 76%,#6b4215 100%)!important;border:1px solid rgba(255,242,190,.82)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.58),inset -8px -9px 13px rgba(67,39,13,.34),inset 7px 6px 10px rgba(255,247,207,.22)!important;backface-visibility:hidden!important;
}
.board-clean .face-1,.board-v3 .face-1{transform:translateZ(22px)!important}
.board-clean .face-2,.board-v3 .face-2{transform:rotateY(90deg) translateZ(22px)!important}
.board-clean .face-3,.board-v3 .face-3{transform:rotateX(90deg) translateZ(22px)!important}
.board-clean .face-4,.board-v3 .face-4{transform:rotateX(-90deg) translateZ(22px)!important}
.board-clean .face-5,.board-v3 .face-5{transform:rotateY(-90deg) translateZ(22px)!important}
.board-clean .face-6,.board-v3 .face-6{transform:rotateY(180deg) translateZ(22px)!important}
.board-clean .rolling-die-cube.die-result-1,.board-v3 .rolling-die-cube.die-result-1{transform:rotateX(-20deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-2,.board-v3 .rolling-die-cube.die-result-2{transform:rotateX(-20deg) rotateY(-58deg)!important}
.board-clean .rolling-die-cube.die-result-3,.board-v3 .rolling-die-cube.die-result-3{transform:rotateX(-110deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-4,.board-v3 .rolling-die-cube.die-result-4{transform:rotateX(70deg) rotateY(32deg)!important}
.board-clean .rolling-die-cube.die-result-5,.board-v3 .rolling-die-cube.die-result-5{transform:rotateX(-20deg) rotateY(122deg)!important}
.board-clean .rolling-die-cube.die-result-6,.board-v3 .rolling-die-cube.die-result-6{transform:rotateX(-20deg) rotateY(212deg)!important}
.board-clean .die-face .pip,.board-v3 .die-face .pip{
  position:absolute!important;width:6.6px!important;height:6.6px!important;border-radius:50%!important;background:radial-gradient(circle at 35% 30%,#273d69,#071022 72%)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.2),0 1px 1px rgba(255,235,170,.22)!important;display:block!important;
}
.board-clean .die-face .pip.tl,.board-v3 .die-face .pip.tl{left:8px!important;top:8px!important}
.board-clean .die-face .pip.tr,.board-v3 .die-face .pip.tr{right:8px!important;top:8px!important}
.board-clean .die-face .pip.ml,.board-v3 .die-face .pip.ml{left:8px!important;top:18.5px!important}
.board-clean .die-face .pip.mm,.board-v3 .die-face .pip.mm{left:18.5px!important;top:18.5px!important}
.board-clean .die-face .pip.mr,.board-v3 .die-face .pip.mr{right:8px!important;top:18.5px!important}
.board-clean .die-face .pip.bl,.board-v3 .die-face .pip.bl{left:8px!important;bottom:8px!important}
.board-clean .die-face .pip.br,.board-v3 .die-face .pip.br{right:8px!important;bottom:8px!important}
.board-clean .rolling-die-cube.is-rolling,.board-v3 .rolling-die-cube.is-rolling{animation:visibleCubicDiceRoll 1.05s cubic-bezier(.18,.86,.24,1) both!important}
@keyframes visibleCubicDiceRoll{
  0%{transform:translate3d(0,0,0) rotateX(-20deg) rotateY(32deg) rotateZ(0deg)}
  14%{transform:translate3d(-4px,-15px,0) rotateX(175deg) rotateY(126deg) rotateZ(28deg)}
  31%{transform:translate3d(4px,2px,0) rotateX(352deg) rotateY(258deg) rotateZ(-18deg)}
  49%{transform:translate3d(-2px,-11px,0) rotateX(520deg) rotateY(405deg) rotateZ(22deg)}
  67%{transform:translate3d(3px,2px,0) rotateX(690deg) rotateY(535deg) rotateZ(-12deg)}
  84%{transform:translate3d(0,-5px,0) rotateX(796deg) rotateY(660deg) rotateZ(8deg)}
  100%{transform:translate3d(0,0,0) rotateX(812deg) rotateY(752deg) rotateZ(0deg)}
}
.board-clean .hud-dice-button.rolling,.board-v3 .hud-dice-button.rolling{animation:visibleCubicDiceLift 1.05s ease both!important}
@keyframes visibleCubicDiceLift{0%,100%{transform:translateY(0) scale(1)}24%{transform:translateY(-3px) scale(1.04)}52%{transform:translateY(1px) scale(.98)}76%{transform:translateY(-2px) scale(1.02)}}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-cube,.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-cube{filter:drop-shadow(0 13px 14px rgba(0,0,0,.45)) drop-shadow(0 0 10px rgba(226,198,132,.55)) saturate(1.16)!important}


/* === FINAL DICE ASSET SELECTION FIX: use the full 3D golden die image only === */
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  width:76px!important;
  min-width:76px!important;
  height:76px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  width:74px!important;
  height:74px!important;
  min-width:74px!important;
  min-height:74px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
  perspective:900px!important;
  cursor:pointer!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{
  content:none!important;
}
.board-clean .die-image-stage,
.board-v3 .die-image-stage{
  width:72px!important;
  height:72px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  transform-style:preserve-3d!important;
  perspective:900px!important;
}
.board-clean .hud-dice-button img.rolling-die-image,
.board-v3 .hud-dice-button img.rolling-die-image,
.board-clean .rolling-die-image,
.board-v3 .rolling-die-image{
  display:block!important;
  width:72px!important;
  height:72px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:15px!important;
  background:transparent!important;
  transform-origin:50% 62%!important;
  transform-style:preserve-3d!important;
  backface-visibility:hidden!important;
  will-change:transform,filter!important;
  filter:drop-shadow(0 12px 13px rgba(0,0,0,.46)) saturate(1.08) contrast(1.04)!important;
}
.board-clean .rolling-die-image.die-result-1,
.board-v3 .rolling-die-image.die-result-1{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg) scale(1)!important;}
.board-clean .rolling-die-image.die-result-2,
.board-v3 .rolling-die-image.die-result-2{transform:translate3d(0,0,0) rotateX(4deg) rotateY(-9deg) rotateZ(1deg) scale(1)!important;}
.board-clean .rolling-die-image.die-result-3,
.board-v3 .rolling-die-image.die-result-3{transform:translate3d(0,0,0) rotateX(-5deg) rotateY(10deg) rotateZ(-1deg) scale(1)!important;}
.board-clean .rolling-die-image.die-result-4,
.board-v3 .rolling-die-image.die-result-4{transform:translate3d(0,0,0) rotateX(7deg) rotateY(8deg) rotateZ(-1deg) scale(1)!important;}
.board-clean .rolling-die-image.die-result-5,
.board-v3 .rolling-die-image.die-result-5{transform:translate3d(0,0,0) rotateX(-7deg) rotateY(-8deg) rotateZ(1deg) scale(1)!important;}
.board-clean .rolling-die-image.die-result-6,
.board-v3 .rolling-die-image.die-result-6{transform:translate3d(0,0,0) rotateX(5deg) rotateY(12deg) rotateZ(0deg) scale(1)!important;}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-image,
.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-image{
  transform:translateY(-3px) rotateX(8deg) rotateY(-10deg) scale(1.04)!important;
  filter:drop-shadow(0 15px 16px rgba(0,0,0,.52)) drop-shadow(0 0 12px rgba(226,198,132,.42)) saturate(1.12) contrast(1.04)!important;
}
.board-clean .rolling-die-image.is-rolling,
.board-v3 .rolling-die-image.is-rolling{
  animation:fullGoldenDieAssetRoll 1.05s cubic-bezier(.17,.84,.22,1) both!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:fullGoldenDieButtonLift 1.05s ease both!important;
}
@keyframes fullGoldenDieAssetRoll{
  0%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg) scale(1);filter:drop-shadow(0 12px 13px rgba(0,0,0,.46)) saturate(1.08) contrast(1.04)}
  12%{transform:translate3d(-2px,-14px,16px) rotateX(118deg) rotateY(92deg) rotateZ(-8deg) scale(1.06)}
  27%{transform:translate3d(4px,-22px,26px) rotateX(252deg) rotateY(214deg) rotateZ(15deg) scale(1.10)}
  43%{transform:translate3d(-5px,-12px,18px) rotateX(418deg) rotateY(348deg) rotateZ(-16deg) scale(1.05)}
  61%{transform:translate3d(3px,-3px,8px) rotateX(574deg) rotateY(492deg) rotateZ(9deg) scale(.99)}
  78%{transform:translate3d(0,-9px,14px) rotateX(702deg) rotateY(626deg) rotateZ(-5deg) scale(1.03)}
  91%{transform:translate3d(0,2px,0) rotateX(782deg) rotateY(714deg) rotateZ(2deg) scale(.98)}
  100%{transform:translate3d(0,0,0) rotateX(806deg) rotateY(744deg) rotateZ(0deg) scale(1)}
}
@keyframes fullGoldenDieButtonLift{
  0%,100%{transform:translateY(0) scale(1)}
  18%{transform:translateY(-4px) scale(1.04)}
  50%{transform:translateY(1px) scale(.98)}
  78%{transform:translateY(-2px) scale(1.015)}
}

/* === A2 opinion/power-up card redesign === */
.board-clean .board-question-card{
  background:linear-gradient(145deg,#fff8e8 0%,#f3e6c9 100%)!important;
  border:2px solid rgba(200,164,106,.72)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
.board-clean .question-card-inner{
  gap:.34rem!important;
  color:#142247!important;
}
.board-clean .question-topline{
  align-items:center!important;
  margin-bottom:.12rem!important;
}
.board-clean .category-label,
.board-clean .points-label{
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(200,164,106,.34)!important;
  color:#142247!important;
  font-weight:950!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65)!important;
}
.board-clean .board-question-card h1{
  font-family:"Bebas Neue",Impact,sans-serif!important;
  letter-spacing:.025em!important;
  color:#142247!important;
  text-transform:uppercase!important;
}
.board-clean .board-question-card p#questionPrompt,
.board-clean .board-question-card #questionPrompt{
  font-weight:900!important;
  color:#2a344e!important;
  max-width:95%!important;
}
.board-clean .card-review .question-card-inner,
.board-clean .card-production .question-card-inner,
.board-clean .card-special .question-card-inner{
  padding:clamp(.78rem,1.18vw,1.08rem) clamp(1rem,1.55vw,1.35rem)!important;
}
.board-clean .card-review .board-answer-options,
.board-clean .card-production .board-answer-options,
.board-clean .card-special .board-answer-options{
  display:none!important;
}
.board-clean .card-review .support-box,
.board-clean .card-production .support-box{
  display:block!important;
  max-height:none!important;
  overflow:visible!important;
  background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,248,232,.42))!important;
  border:1px solid rgba(200,164,106,.34)!important;
  border-radius:16px!important;
  padding:.5rem .65rem!important;
  margin:.2rem 0 .42rem!important;
}
.board-clean .card-review .support-box strong,
.board-clean .card-production .support-box strong{
  display:block!important;
  margin-bottom:.28rem!important;
  color:#7b5524!important;
  font-size:.78rem!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
.board-clean .card-review .support-box ul,
.board-clean .card-production .support-box ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.3rem .36rem!important;
}
.board-clean .card-review .support-box li,
.board-clean .card-production .support-box li{
  background:rgba(255,255,255,.68)!important;
  border:1px solid rgba(20,34,71,.08)!important;
  border-radius:999px!important;
  padding:.3rem .48rem!important;
  font-size:clamp(.68rem,.8vw,.82rem)!important;
  font-weight:900!important;
  color:#142247!important;
  line-height:1.05!important;
}
.board-clean .card-special{
  background:linear-gradient(145deg,#fff3c7,#e5bf65)!important;
  border-color:rgba(126,82,30,.45)!important;
}
.board-clean .card-special .category-label,
.board-clean .card-special .points-label{
  background:rgba(20,34,71,.92)!important;
  color:#fff8e8!important;
  border-color:rgba(255,248,232,.18)!important;
}
.board-clean .card-special #questionPrompt{
  background:rgba(255,248,232,.52)!important;
  border-radius:16px!important;
  padding:.62rem .78rem!important;
  border:1px solid rgba(126,82,30,.16)!important;
}
.board-clean .card-special .power-tools{
  background:rgba(255,255,255,.38)!important;
  border:1px solid rgba(126,82,30,.18)!important;
  border-radius:16px!important;
  padding:.54rem!important;
  margin:.2rem 0 .45rem!important;
}
.board-clean .card-special .power-tools .btn{
  width:100%!important;
  min-height:42px!important;
  font-size:.9rem!important;
}
.board-clean .power-once-note{
  display:block!important;
  margin-top:.3rem!important;
  color:#6f4a22!important;
  font-weight:900!important;
  text-align:center!important;
}
@media (max-width:740px){
  .board-clean .card-review .support-box ul,
  .board-clean .card-production .support-box ul{grid-template-columns:1fr!important;}
}


/* === AUTHORITATIVE DICE REBUILD: HTML/CSS 3D golden cube with matching result faces === */
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  width:72px!important;
  min-width:72px!important;
  height:72px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  position:relative!important;
  width:70px!important;
  min-width:70px!important;
  height:70px!important;
  min-height:70px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:18px!important;
  background:transparent!important;
  box-shadow:none!important;
  perspective:760px!important;
  cursor:pointer!important;
}
.board-clean .hud-dice-button:disabled,
.board-v3 .hud-dice-button:disabled{
  cursor:not-allowed!important;
  opacity:.82!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:3px!important;
  width:52px!important;
  height:12px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.46),rgba(0,0,0,.14) 55%,transparent 74%)!important;
  filter:blur(.15px)!important;
  opacity:.86!important;
  pointer-events:none!important;
}
.board-clean .die-image-stage,
.board-v3 .die-image-stage{
  width:60px!important;
  height:60px!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  overflow:visible!important;
  transform-style:preserve-3d!important;
  perspective:760px!important;
  border-radius:16px!important;
}
.board-clean .die-image-stage img,
.board-v3 .die-image-stage img,
.board-clean .rolling-die-image,
.board-v3 .rolling-die-image{
  display:none!important;
}
.board-clean .rolling-die-cube,
.board-v3 .rolling-die-cube{
  --die-size:52px!important;
  --half-die:26px!important;
  position:relative!important;
  display:block!important;
  width:var(--die-size)!important;
  height:var(--die-size)!important;
  transform-style:preserve-3d!important;
  transform-origin:center center!important;
  transform:rotateX(-15deg) rotateY(14deg)!important;
  transition:transform .36s cubic-bezier(.22,1,.36,1),filter .22s ease!important;
  will-change:transform,filter!important;
  filter:drop-shadow(0 12px 13px rgba(0,0,0,.46)) saturate(1.12) contrast(1.04)!important;
  z-index:2!important;
}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-cube,
.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-cube{
  transform:translateY(-3px) rotateX(-18deg) rotateY(24deg) scale(1.04)!important;
  filter:drop-shadow(0 15px 16px rgba(0,0,0,.5)) drop-shadow(0 0 10px rgba(226,198,132,.48)) saturate(1.15)!important;
}
.board-clean .die-face,
.board-v3 .die-face{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  border-radius:14px!important;
  background:
    radial-gradient(circle at 23% 18%,rgba(255,254,222,.88),transparent 19%),
    linear-gradient(145deg,#ffe9ab 0%,#dba84a 34%,#a36a21 72%,#6b4215 100%)!important;
  border:1px solid rgba(255,242,190,.86)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    inset -9px -10px 15px rgba(63,36,11,.34),
    inset 8px 7px 11px rgba(255,247,207,.22),
    0 0 0 1px rgba(89,54,17,.12)!important;
  backface-visibility:hidden!important;
}
.board-clean .face-1,.board-v3 .face-1{transform:translateZ(var(--half-die))!important}
.board-clean .face-2,.board-v3 .face-2{transform:rotateY(90deg) translateZ(var(--half-die))!important}
.board-clean .face-3,.board-v3 .face-3{transform:rotateX(90deg) translateZ(var(--half-die))!important}
.board-clean .face-4,.board-v3 .face-4{transform:rotateX(-90deg) translateZ(var(--half-die))!important}
.board-clean .face-5,.board-v3 .face-5{transform:rotateY(-90deg) translateZ(var(--half-die))!important}
.board-clean .face-6,.board-v3 .face-6{transform:rotateY(180deg) translateZ(var(--half-die))!important}
.board-clean .die-face .pip,
.board-v3 .die-face .pip{
  position:absolute!important;
  display:block!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 30%,#334a78,#071022 73%)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.2),0 1px 1px rgba(255,235,170,.22)!important;
}
.board-clean .die-face .pip.tl,.board-v3 .die-face .pip.tl{left:10px!important;top:10px!important}
.board-clean .die-face .pip.tr,.board-v3 .die-face .pip.tr{right:10px!important;top:10px!important}
.board-clean .die-face .pip.ml,.board-v3 .die-face .pip.ml{left:10px!important;top:22px!important}
.board-clean .die-face .pip.mm,.board-v3 .die-face .pip.mm{left:22px!important;top:22px!important}
.board-clean .die-face .pip.mr,.board-v3 .die-face .pip.mr{right:10px!important;top:22px!important}
.board-clean .die-face .pip.bl,.board-v3 .die-face .pip.bl{left:10px!important;bottom:10px!important}
.board-clean .die-face .pip.br,.board-v3 .die-face .pip.br{right:10px!important;bottom:10px!important}
/* Keep the rolled number face as the front/most readable face. */
.board-clean .rolling-die-cube.die-result-1,.board-v3 .rolling-die-cube.die-result-1{transform:rotateX(-15deg) rotateY(14deg)!important}
.board-clean .rolling-die-cube.die-result-2,.board-v3 .rolling-die-cube.die-result-2{transform:rotateX(-15deg) rotateY(-76deg)!important}
.board-clean .rolling-die-cube.die-result-3,.board-v3 .rolling-die-cube.die-result-3{transform:rotateX(-105deg) rotateY(14deg)!important}
.board-clean .rolling-die-cube.die-result-4,.board-v3 .rolling-die-cube.die-result-4{transform:rotateX(75deg) rotateY(14deg)!important}
.board-clean .rolling-die-cube.die-result-5,.board-v3 .rolling-die-cube.die-result-5{transform:rotateX(-15deg) rotateY(104deg)!important}
.board-clean .rolling-die-cube.die-result-6,.board-v3 .rolling-die-cube.die-result-6{transform:rotateX(-15deg) rotateY(194deg)!important}
.board-clean .rolling-die-cube.is-rolling,
.board-v3 .rolling-die-cube.is-rolling{
  animation:bbAuthoritativeCubeRoll 1.05s cubic-bezier(.16,.86,.24,1) both!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:bbAuthoritativeDiceLift 1.05s ease both!important;
}
@keyframes bbAuthoritativeCubeRoll{
  0%{transform:translate3d(0,0,0) rotateX(-15deg) rotateY(14deg) rotateZ(0deg) scale(1)}
  13%{transform:translate3d(-3px,-18px,0) rotateX(155deg) rotateY(126deg) rotateZ(23deg) scale(1.07)}
  29%{transform:translate3d(4px,-5px,0) rotateX(330deg) rotateY(248deg) rotateZ(-16deg) scale(.98)}
  46%{transform:translate3d(-2px,-14px,0) rotateX(506deg) rotateY(405deg) rotateZ(18deg) scale(1.04)}
  64%{transform:translate3d(3px,2px,0) rotateX(662deg) rotateY(538deg) rotateZ(-11deg) scale(.99)}
  82%{transform:translate3d(0,-8px,0) rotateX(790deg) rotateY(676deg) rotateZ(8deg) scale(1.03)}
  92%{transform:translate3d(0,2px,0) rotateX(860deg) rotateY(742deg) rotateZ(-2deg) scale(.98)}
  100%{transform:translate3d(0,0,0) rotateX(900deg) rotateY(810deg) rotateZ(0deg) scale(1)}
}
@keyframes bbAuthoritativeDiceLift{
  0%,100%{transform:translateY(0) scale(1)}
  20%{transform:translateY(-4px) scale(1.04)}
  50%{transform:translateY(1px) scale(.98)}
  76%{transform:translateY(-2px) scale(1.015)}
}
@media (max-width:760px){
  .board-clean .hud-dice-area,.board-v3 .hud-dice-area{width:62px!important;min-width:62px!important;height:62px!important;}
  .board-clean .hud-dice-button,.board-v3 .hud-dice-button{width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;}
  .board-clean .rolling-die-cube,.board-v3 .rolling-die-cube{--die-size:46px!important;--half-die:23px!important;width:46px!important;height:46px!important;}
  .board-clean .die-face .pip,.board-v3 .die-face .pip{width:7px!important;height:7px!important;}
}

/* === FINAL DICE CORRECTION: full front-facing golden cube, never edge-thin === */
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  width:72px!important;
  min-width:72px!important;
  height:72px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  width:70px!important;
  height:70px!important;
  min-width:70px!important;
  min-height:70px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  perspective:680px!important;
  cursor:pointer!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:5px!important;
  width:52px!important;
  height:13px!important;
  transform:translateX(-50%)!important;
  border-radius:999px!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.44),rgba(0,0,0,.14) 58%,transparent 76%)!important;
  opacity:.82!important;
  pointer-events:none!important;
}
.board-clean .die-image-stage,
.board-v3 .die-image-stage{
  width:62px!important;
  height:62px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  perspective:680px!important;
  transform-style:preserve-3d!important;
}
.board-clean .die-image-stage img,
.board-v3 .die-image-stage img,
.board-clean .rolling-die-image,
.board-v3 .rolling-die-image,
.board-clean .rolling-die-cube .die-face,
.board-v3 .rolling-die-cube .die-face{
  display:none!important;
}
.board-clean .rolling-die-cube,
.board-v3 .rolling-die-cube{
  position:relative!important;
  display:block!important;
  width:54px!important;
  height:54px!important;
  transform-style:preserve-3d!important;
  transform-origin:50% 58%!important;
  transform:translate3d(0,0,0) rotateX(-10deg) rotateY(-12deg) rotateZ(0deg)!important;
  transition:transform .28s cubic-bezier(.22,1,.36,1),filter .18s ease!important;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.48)) saturate(1.14) contrast(1.04)!important;
  will-change:transform,filter!important;
}
.board-clean .rolling-die-cube .die-front,
.board-v3 .rolling-die-cube .die-front{
  position:absolute!important;
  inset:4px!important;
  display:block!important;
  border-radius:14px!important;
  background:
    radial-gradient(circle at 26% 18%,rgba(255,255,225,.9),transparent 18%),
    linear-gradient(145deg,#fff0b2 0%,#e0ae4e 38%,#a87326 70%,#6f4519 100%)!important;
  border:1px solid rgba(255,241,185,.95)!important;
  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.58),
    inset -8px -9px 13px rgba(72,41,12,.34),
    inset 7px 6px 10px rgba(255,245,197,.25),
    0 1px 0 rgba(255,255,255,.22)!important;
  z-index:3!important;
}
.board-clean .rolling-die-cube .die-top,
.board-v3 .rolling-die-cube .die-top{
  position:absolute!important;
  left:10px!important;
  top:-1px!important;
  width:38px!important;
  height:12px!important;
  display:block!important;
  border-radius:11px 11px 5px 5px!important;
  background:linear-gradient(155deg,#fff2bb,#c18a31)!important;
  transform:skewX(-32deg)!important;
  opacity:.86!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;
  z-index:1!important;
}
.board-clean .rolling-die-cube .die-side,
.board-v3 .rolling-die-cube .die-side{
  position:absolute!important;
  right:-1px!important;
  top:11px!important;
  width:12px!important;
  height:38px!important;
  display:block!important;
  border-radius:5px 11px 11px 5px!important;
  background:linear-gradient(160deg,#c9963a,#754616)!important;
  transform:skewY(-32deg)!important;
  opacity:.88!important;
  box-shadow:inset -2px -2px 5px rgba(0,0,0,.2)!important;
  z-index:1!important;
}
.board-clean .rolling-die-cube .die-front .pip,
.board-v3 .rolling-die-cube .die-front .pip{
  position:absolute!important;
  width:8px!important;
  height:8px!important;
  border-radius:50%!important;
  display:none!important;
  background:radial-gradient(circle at 35% 30%,#394f7c,#071126 72%)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.22),0 1px 1px rgba(255,232,170,.24)!important;
}
.board-clean .rolling-die-cube .die-front .pip.tl,.board-v3 .rolling-die-cube .die-front .pip.tl{left:9px!important;top:9px!important}
.board-clean .rolling-die-cube .die-front .pip.tr,.board-v3 .rolling-die-cube .die-front .pip.tr{right:9px!important;top:9px!important}
.board-clean .rolling-die-cube .die-front .pip.ml,.board-v3 .rolling-die-cube .die-front .pip.ml{left:9px!important;top:19px!important}
.board-clean .rolling-die-cube .die-front .pip.mm,.board-v3 .rolling-die-cube .die-front .pip.mm{left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important}
.board-clean .rolling-die-cube .die-front .pip.mr,.board-v3 .rolling-die-cube .die-front .pip.mr{right:9px!important;top:19px!important}
.board-clean .rolling-die-cube .die-front .pip.bl,.board-v3 .rolling-die-cube .die-front .pip.bl{left:9px!important;bottom:9px!important}
.board-clean .rolling-die-cube .die-front .pip.br,.board-v3 .rolling-die-cube .die-front .pip.br{right:9px!important;bottom:9px!important}
.board-clean .rolling-die-cube[data-value="1"] .pip.mm,
.board-v3 .rolling-die-cube[data-value="1"] .pip.mm,
.board-clean .rolling-die-cube.die-result-1 .pip.mm,
.board-v3 .rolling-die-cube.die-result-1 .pip.mm{display:block!important}
.board-clean .rolling-die-cube[data-value="2"] .pip.tl,
.board-clean .rolling-die-cube[data-value="2"] .pip.br,
.board-v3 .rolling-die-cube[data-value="2"] .pip.tl,
.board-v3 .rolling-die-cube[data-value="2"] .pip.br{display:block!important}
.board-clean .rolling-die-cube[data-value="3"] .pip.tl,
.board-clean .rolling-die-cube[data-value="3"] .pip.mm,
.board-clean .rolling-die-cube[data-value="3"] .pip.br,
.board-v3 .rolling-die-cube[data-value="3"] .pip.tl,
.board-v3 .rolling-die-cube[data-value="3"] .pip.mm,
.board-v3 .rolling-die-cube[data-value="3"] .pip.br{display:block!important}
.board-clean .rolling-die-cube[data-value="4"] .pip.tl,
.board-clean .rolling-die-cube[data-value="4"] .pip.tr,
.board-clean .rolling-die-cube[data-value="4"] .pip.bl,
.board-clean .rolling-die-cube[data-value="4"] .pip.br,
.board-v3 .rolling-die-cube[data-value="4"] .pip.tl,
.board-v3 .rolling-die-cube[data-value="4"] .pip.tr,
.board-v3 .rolling-die-cube[data-value="4"] .pip.bl,
.board-v3 .rolling-die-cube[data-value="4"] .pip.br{display:block!important}
.board-clean .rolling-die-cube[data-value="5"] .pip.tl,
.board-clean .rolling-die-cube[data-value="5"] .pip.tr,
.board-clean .rolling-die-cube[data-value="5"] .pip.mm,
.board-clean .rolling-die-cube[data-value="5"] .pip.bl,
.board-clean .rolling-die-cube[data-value="5"] .pip.br,
.board-v3 .rolling-die-cube[data-value="5"] .pip.tl,
.board-v3 .rolling-die-cube[data-value="5"] .pip.tr,
.board-v3 .rolling-die-cube[data-value="5"] .pip.mm,
.board-v3 .rolling-die-cube[data-value="5"] .pip.bl,
.board-v3 .rolling-die-cube[data-value="5"] .pip.br{display:block!important}
.board-clean .rolling-die-cube[data-value="6"] .pip.tl,
.board-clean .rolling-die-cube[data-value="6"] .pip.tr,
.board-clean .rolling-die-cube[data-value="6"] .pip.ml,
.board-clean .rolling-die-cube[data-value="6"] .pip.mr,
.board-clean .rolling-die-cube[data-value="6"] .pip.bl,
.board-clean .rolling-die-cube[data-value="6"] .pip.br,
.board-v3 .rolling-die-cube[data-value="6"] .pip.tl,
.board-v3 .rolling-die-cube[data-value="6"] .pip.tr,
.board-v3 .rolling-die-cube[data-value="6"] .pip.ml,
.board-v3 .rolling-die-cube[data-value="6"] .pip.mr,
.board-v3 .rolling-die-cube[data-value="6"] .pip.bl,
.board-v3 .rolling-die-cube[data-value="6"] .pip.br{display:block!important}
.board-clean .rolling-die-cube.die-result-1,
.board-clean .rolling-die-cube.die-result-2,
.board-clean .rolling-die-cube.die-result-3,
.board-clean .rolling-die-cube.die-result-4,
.board-clean .rolling-die-cube.die-result-5,
.board-clean .rolling-die-cube.die-result-6,
.board-v3 .rolling-die-cube.die-result-1,
.board-v3 .rolling-die-cube.die-result-2,
.board-v3 .rolling-die-cube.die-result-3,
.board-v3 .rolling-die-cube.die-result-4,
.board-v3 .rolling-die-cube.die-result-5,
.board-v3 .rolling-die-cube.die-result-6{
  transform:translate3d(0,0,0) rotateX(-10deg) rotateY(-12deg) rotateZ(0deg)!important;
}
.board-clean .hud-dice-button:not(:disabled):hover .rolling-die-cube,
.board-v3 .hud-dice-button:not(:disabled):hover .rolling-die-cube{
  transform:translate3d(0,-3px,0) rotateX(-14deg) rotateY(-18deg) rotateZ(2deg) scale(1.04)!important;
  filter:drop-shadow(0 15px 14px rgba(0,0,0,.52)) drop-shadow(0 0 9px rgba(226,198,132,.5)) saturate(1.18)!important;
}
.board-clean .rolling-die-cube.is-rolling,
.board-v3 .rolling-die-cube.is-rolling{
  animation:bbFullFaceDiceRoll 1.02s cubic-bezier(.16,.86,.24,1) both!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:bbFullFaceDiceLift 1.02s ease both!important;
}
@keyframes bbFullFaceDiceRoll{
  0%{transform:translate3d(0,0,0) rotateX(-10deg) rotateY(-12deg) rotateZ(0deg) scale(1)}
  16%{transform:translate3d(-3px,-17px,0) rotateX(24deg) rotateY(20deg) rotateZ(112deg) scale(1.09)}
  34%{transform:translate3d(4px,-4px,0) rotateX(-18deg) rotateY(-26deg) rotateZ(218deg) scale(.98)}
  52%{transform:translate3d(-2px,-13px,0) rotateX(28deg) rotateY(-18deg) rotateZ(328deg) scale(1.05)}
  72%{transform:translate3d(2px,2px,0) rotateX(-12deg) rotateY(22deg) rotateZ(420deg) scale(.99)}
  88%{transform:translate3d(0,-7px,0) rotateX(18deg) rotateY(-16deg) rotateZ(492deg) scale(1.03)}
  100%{transform:translate3d(0,0,0) rotateX(-10deg) rotateY(-12deg) rotateZ(720deg) scale(1)}
}
@keyframes bbFullFaceDiceLift{
  0%,100%{transform:translateY(0) scale(1)}
  22%{transform:translateY(-4px) scale(1.03)}
  52%{transform:translateY(1px) scale(.985)}
  78%{transform:translateY(-2px) scale(1.015)}
}
@media (max-width:760px){
  .board-clean .hud-dice-area,.board-v3 .hud-dice-area{width:62px!important;min-width:62px!important;height:62px!important;}
  .board-clean .hud-dice-button,.board-v3 .hud-dice-button{width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;}
  .board-clean .rolling-die-cube,.board-v3 .rolling-die-cube{width:48px!important;height:48px!important;}
  .board-clean .rolling-die-cube .die-front .pip,.board-v3 .rolling-die-cube .die-front .pip{width:7px!important;height:7px!important;}
}

/* === Final A2 opinion/model-answer card fixes === */
.board-clean .board-question-card{
  top:49%!important;
  width:clamp(430px,48%,660px)!important;
  max-height:60%!important;
}
.board-clean .question-card-inner{
  max-height:calc((100vh - 84px) * .54)!important;
  overflow:hidden!important;
}
.board-clean .card-review .question-card-inner,
.board-clean .card-production .question-card-inner{
  padding:clamp(.62rem,.95vw,.9rem) clamp(.82rem,1.2vw,1.1rem)!important;
  gap:.25rem!important;
}
.board-clean .card-review .board-question-card h1,
.board-clean .card-production .board-question-card h1,
.board-clean .card-review h1,
.board-clean .card-production h1{
  font-size:clamp(1.8rem,2.7vw,3rem)!important;
  margin:.08rem 0 .26rem!important;
}
.board-clean .card-review #questionPrompt,
.board-clean .card-production #questionPrompt{
  font-size:clamp(.82rem,1vw,.98rem)!important;
  line-height:1.22!important;
  margin:.02rem 0 .24rem!important;
}
.board-clean .card-review .support-box,
.board-clean .card-production .support-box{
  background:rgba(255,255,255,.40)!important;
  border:1px solid rgba(200,164,106,.18)!important;
  box-shadow:none!important;
  padding:.38rem .5rem!important;
  margin:.08rem 0 .28rem!important;
}
.board-clean .card-review .support-box strong,
.board-clean .card-production .support-box strong{
  font-size:.68rem!important;
  margin-bottom:.22rem!important;
  color:#7b5524!important;
}
.board-clean .card-review .support-box ul,
.board-clean .card-production .support-box ul{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.22rem .28rem!important;
}
.board-clean .card-review .support-box li,
.board-clean .card-production .support-box li{
  padding:.22rem .42rem!important;
  font-size:clamp(.62rem,.74vw,.76rem)!important;
  line-height:1.05!important;
}
.board-clean .model-answer-label{
  display:inline-flex!important;
  align-items:center!important;
  margin-right:.45rem!important;
  padding:.16rem .48rem!important;
  border-radius:999px!important;
  background:rgba(200,164,106,.22)!important;
  color:#7b5524!important;
  border:1px solid rgba(200,164,106,.3)!important;
  font-size:.7em!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
.board-clean .card-special{
  background:linear-gradient(145deg,#fff8e8 0%,#f3e6c9 100%)!important;
  border-color:rgba(200,164,106,.65)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
.board-clean .card-special .power-tools{
  background:rgba(255,255,255,.42)!important;
  border:1px solid rgba(200,164,106,.18)!important;
  box-shadow:none!important;
  padding:.45rem!important;
  margin:.2rem 0 .35rem!important;
}
.board-clean .power-once-note{
  display:block!important;
  color:#7b5524!important;
  font-size:.72rem!important;
  font-weight:900!important;
  text-align:center!important;
}
.board-clean .full-overlays .board-space,
.board-clean .full-overlays .board-space:focus,
.board-clean .full-overlays .board-space:active{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.board-clean .full-overlays .board-space:focus-visible{
  outline:0!important;
  box-shadow:none!important;
}
@media (max-width:760px){
  .board-clean .question-card-inner{overflow:auto!important;}
}

/* === Final board UI cleanup: dice, help removal, card fit, and smoother interaction === */
.board-clean #studyHelpBtn,
.board-clean #studyDrawer,
.board-clean .board-study-drawer,
.board-clean .study-drawer{
  display:none!important;
}
.board-clean .board-top-hud,
.board-v3 .board-top-hud{
  grid-template-columns:minmax(92px,auto) minmax(220px,.75fr) minmax(290px,1fr) 76px minmax(280px,auto)!important;
  gap:.42rem!important;
  min-height:68px!important;
  padding:.34rem .48rem!important;
}
.board-clean .hud-actions,
.board-v3 .hud-actions{gap:.32rem!important;}
.board-clean .hud-actions .command-btn,
.board-v3 .hud-actions .command-btn{padding:.55rem .72rem!important;}
.board-clean .hud-dice-area,
.board-v3 .hud-dice-area{
  width:68px!important;
  min-width:68px!important;
  height:68px!important;
  margin-left:-.5rem!important;
  justify-self:center!important;
}
.board-clean .hud-dice-button,
.board-v3 .hud-dice-button{
  width:64px!important;
  min-width:64px!important;
  height:64px!important;
  min-height:64px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:18px!important;
  overflow:visible!important;
  cursor:pointer!important;
  background:linear-gradient(145deg,#0a142e,#1c2e58)!important;
  border:1px solid rgba(226,198,132,.46)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 9px 20px rgba(0,0,0,.34)!important;
}
.board-clean .hud-dice-button::before,
.board-v3 .hud-dice-button::before{display:none!important;content:none!important;}
.board-clean .die-image-stage,
.board-v3 .die-image-stage{
  display:grid!important;
  place-items:center!important;
  width:62px!important;
  height:62px!important;
  overflow:visible!important;
  perspective:700px!important;
}
.board-clean img.rolling-die-image,
.board-v3 img.rolling-die-image,
.board-clean .rolling-die-image,
.board-v3 .rolling-die-image{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:58px!important;
  height:58px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:14px!important;
  transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 9px 9px rgba(0,0,0,.42)) saturate(1.18) contrast(1.05)!important;
  will-change:transform,filter!important;
}
.board-clean .hud-dice-button:not(:disabled):hover img.rolling-die-image,
.board-v3 .hud-dice-button:not(:disabled):hover img.rolling-die-image{
  transform:translate3d(0,-3px,0) rotateX(6deg) rotateY(-8deg) scale(1.04)!important;
  filter:drop-shadow(0 13px 12px rgba(0,0,0,.48)) drop-shadow(0 0 8px rgba(226,198,132,.48)) saturate(1.22)!important;
}
.board-clean .hud-dice-button.rolling img.rolling-die-image,
.board-v3 .hud-dice-button.rolling img.rolling-die-image,
.board-clean img.rolling-die-image.is-rolling,
.board-v3 img.rolling-die-image.is-rolling{
  animation:bbPremiumDiceImageRoll 1.42s cubic-bezier(.17,.78,.18,1) both!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation:bbDiceButtonLift 1.42s ease both!important;
}
@keyframes bbPremiumDiceImageRoll{
  0%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg) scale(1)}
  14%{transform:translate3d(-4px,-13px,0) rotateX(45deg) rotateY(70deg) rotateZ(75deg) scale(1.08)}
  30%{transform:translate3d(5px,-2px,0) rotateX(155deg) rotateY(150deg) rotateZ(160deg) scale(.98)}
  47%{transform:translate3d(-3px,-16px,0) rotateX(250deg) rotateY(245deg) rotateZ(250deg) scale(1.07)}
  64%{transform:translate3d(4px,1px,0) rotateX(335deg) rotateY(340deg) rotateZ(335deg) scale(.99)}
  82%{transform:translate3d(0,-8px,0) rotateX(390deg) rotateY(420deg) rotateZ(410deg) scale(1.03)}
  100%{transform:translate3d(0,0,0) rotateX(360deg) rotateY(360deg) rotateZ(360deg) scale(1)}
}
@keyframes bbDiceButtonLift{
  0%,100%{transform:translateY(0)}
  22%{transform:translateY(-4px)}
  55%{transform:translateY(1px)}
  78%{transform:translateY(-2px)}
}
.board-clean .board-question-card,
.board-clean .card-special,
.board-v3 .board-question-card{
  left:50%!important;
  top:48.5%!important;
  width:clamp(390px,43.5%,620px)!important;
  max-height:52%!important;
  transform:translate(-50%,-50%)!important;
  overflow:hidden!important;
}
.board-clean .question-card-inner,
.board-v3 .question-card-inner{
  max-height:100%!important;
  overflow:hidden!important;
  padding:clamp(.58rem,.95vw,.92rem) clamp(.72rem,1.1vw,1rem)!important;
  gap:.22rem!important;
}
.board-clean .board-question-card h1,
.board-v3 .board-question-card h1{
  font-size:clamp(1.85rem,2.65vw,3rem)!important;
  line-height:.9!important;
  margin:.05rem 0 .28rem!important;
}
.board-clean .board-question-card #questionPrompt,
.board-v3 .board-question-card #questionPrompt{
  font-size:clamp(.78rem,1vw,.98rem)!important;
  line-height:1.22!important;
  margin:.03rem 0 .25rem!important;
}
.board-clean .board-card-actions,
.board-v3 .board-card-actions{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:.32rem!important;
  margin:.22rem 0 .18rem!important;
}
.board-clean .board-card-actions .btn,
.board-v3 .board-card-actions .btn{
  min-height:34px!important;
  padding:.42rem .5rem!important;
  font-size:clamp(.68rem,.86vw,.82rem)!important;
  border-radius:999px!important;
}
.board-clean .board-card-actions .next-turn-button:not(.hidden),
.board-v3 .board-card-actions .next-turn-button:not(.hidden){grid-column:1/-1!important;}
.board-clean .card-special .power-tools,
.board-v3 .card-special .power-tools{
  padding:.38rem!important;
  margin:.16rem 0 .24rem!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.38)!important;
}
.board-clean .card-special .power-tools .btn,
.board-v3 .card-special .power-tools .btn{
  min-height:38px!important;
  padding:.5rem .75rem!important;
}
.board-clean .feedback.board-feedback,
.board-v3 .feedback.board-feedback{
  min-height:28px!important;
  padding:.32rem .55rem!important;
  font-size:clamp(.67rem,.82vw,.78rem)!important;
  line-height:1.15!important;
}
.board-clean .support-box,
.board-v3 .support-box{max-height:118px!important;overflow:hidden!important;}
.board-clean .full-pawn,
.board-v3 .full-pawn{transition:left .42s cubic-bezier(.22,.9,.24,1),top .42s cubic-bezier(.22,.9,.24,1),transform .42s cubic-bezier(.22,.9,.24,1)!important;}
@media (max-width:920px){
  .board-clean .board-top-hud,.board-v3 .board-top-hud{grid-template-columns:1fr 1fr!important;height:auto!important;max-height:none!important;}
  .board-clean .hud-dice-area,.board-v3 .hud-dice-area{margin-left:0!important;justify-self:start!important;}
  .board-clean .board-question-card,.board-v3 .board-question-card{width:68%!important;max-height:54%!important;}
}
@media (max-width:760px){
  .board-clean .board-question-card,.board-v3 .board-question-card{width:82%!important;min-width:0!important;max-height:58%!important;}
  .board-clean .question-card-inner,.board-v3 .question-card-inner{overflow:auto!important;}
  .board-clean .board-card-actions,.board-v3 .board-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
.board-clean .board-power-chip,
.board-v3 .board-power-chip,
.board-clean #powerStatus,
.board-v3 #powerStatus{display:none!important;}

/* === GAME CONTROL ROOM V2 — clean mode setup + matching metallic checkers === */
.game-setup-v2 .control-room-shell.clean-control-room{
  max-width:1280px;
  margin:0 auto;
  padding:1rem clamp(.9rem,2vw,1.6rem) 1.2rem;
  display:grid;
  gap:1rem;
}
.game-setup-v2 .clean-control-hero{
  min-height:170px!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
  align-items:center;
}
.game-setup-v2 .clean-control-hero h1{
  font-size:clamp(3.6rem,8.2vw,6.9rem)!important;
  margin:.05rem 0 .1rem;
}
.game-setup-v2 .control-subtitle{font-weight:900;color:#efe0ba;max-width:620px;}
.game-setup-v2 .clean-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(220px,1fr))!important;
  gap:clamp(.75rem,1.35vw,1.05rem)!important;
}
.game-setup-v2 .clean-mode-card{
  min-height:252px!important;
  display:grid!important;
  grid-template-rows:1fr auto auto!important;
  place-items:center!important;
  align-items:center!important;
  gap:.48rem!important;
  padding:1rem!important;
  border-radius:30px!important;
  overflow:hidden!important;
  background:linear-gradient(160deg,rgba(255,250,235,.96),rgba(225,210,181,.9))!important;
  border:1px solid rgba(226,198,132,.48)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.75)!important;
}
.game-setup-v2 .clean-mode-card.is-active,
.game-setup-v2 .clean-mode-card:hover,
.game-setup-v2 .clean-mode-card:focus-visible{
  transform:translateY(-2px)!important;
  box-shadow:0 24px 54px rgba(0,0,0,.28),0 0 0 3px rgba(226,198,132,.35),inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.game-setup-v2 .clean-mode-card > span:not(.mode-checker-stack){
  font-size:clamp(2.25rem,3vw,3.4rem)!important;
  line-height:.9!important;
  font-family:var(--ad-title)!important;
  color:#101933!important;
  text-align:center!important;
  z-index:1!important;
}
.game-setup-v2 .clean-mode-card small{
  color:#594a32!important;
  font-size:.86rem!important;
  font-weight:900!important;
  line-height:1.25!important;
  padding:0!important;
  max-width:260px!important;
}
.game-setup-v2 .mode-checker-stack{
  width:100%;
  min-height:128px;
  display:flex;
  align-items:end;
  justify-content:center;
  gap:0;
  position:relative;
  z-index:1;
}
.game-setup-v2 .mode-checker-stack img{
  width:auto!important;
  height:142px!important;
  max-width:118px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.3));
  padding:0!important;
}
.game-setup-v2 .mode-checker-group img{margin-inline:-.62rem;}
.game-setup-v2 .mode-checker-class{gap:0;}
.game-setup-v2 .mode-checker-class img{height:120px!important;max-width:82px!important;margin-inline:-.58rem;}
.game-setup-v2 .clean-setup-panel{
  display:grid;
  gap:.85rem;
  padding:clamp(1rem,2vw,1.45rem)!important;
  border-radius:30px!important;
}
.game-setup-v2 .clean-panel-headline{display:flex;align-items:end;justify-content:space-between;gap:1rem;}
.game-setup-v2 .clean-panel-headline h2{margin:0;font-size:clamp(2.8rem,5.2vw,4.6rem);line-height:.9;color:#111b36;}
.game-setup-v2 .clean-setup-toolbar{
  display:grid;
  grid-template-columns:minmax(240px,1fr) minmax(180px,.35fr);
  gap:.8rem;
  align-items:end;
  position:relative;
  z-index:1;
}
.game-setup-v2 .control-field.hidden{display:none!important;}
.player-setup-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(210px,1fr));
  gap:.78rem;
}
.player-setup-grid.mode-solo{grid-template-columns:minmax(240px,420px);}
.player-setup-grid.mode-class{grid-template-columns:repeat(3,minmax(200px,1fr));}
.checker-player-card{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:.75rem;
  align-items:center;
  min-height:138px;
  padding:.82rem;
  border-radius:24px;
  border:1px solid rgba(17,27,54,.13);
  background:linear-gradient(145deg,rgba(255,249,232,.88),rgba(255,255,255,.56));
  box-shadow:0 12px 28px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.8);
}
.checker-player-card.is-inactive{opacity:.58;filter:saturate(.72);}
.checker-preview-frame{
  min-height:112px;
  display:grid;
  place-items:end center;
  border-radius:20px;
  background:radial-gradient(circle at 50% 72%,rgba(0,0,0,.18),transparent 34%),linear-gradient(145deg,rgba(17,27,54,.96),rgba(36,22,14,.94));
  overflow:visible;
  border:1px solid rgba(226,198,132,.3);
}
.checker-preview-img{
  width:76px!important;
  height:112px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 10px 9px rgba(0,0,0,.38));
  transform:translateY(3px);
}
.checker-player-fields{display:grid;gap:.48rem;}
.checker-player-fields label{display:grid;gap:.22rem;font-weight:950;color:#4b463c;}
.checker-player-fields label > span{
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:.68rem;
  color:#6f4a22;
}
.checker-player-fields input,
.checker-player-fields select{
  width:100%;
  border:1px solid rgba(24,38,74,.16);
  border-radius:15px;
  padding:.62rem .72rem;
  background:rgba(255,255,255,.82);
  color:#111b36;
  font:900 .92rem var(--ad-body);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.checker-player-fields input[readonly],
.checker-player-fields select:disabled{opacity:1;color:#111b36;background:rgba(255,248,232,.78);}
.player-active-toggle{display:flex!important;align-items:center!important;gap:.42rem!important;font-size:.78rem!important;color:#111b36!important;}
.player-active-toggle input{width:auto!important;box-shadow:none!important;}
.clean-launch-row{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
  gap:.65rem;
  position:relative;
  z-index:1;
}
.clean-launch-row .big-launch{min-width:220px;}

/* Board V4 checker consistency */
.board-clean.solo-mode .full-pawns-layer,
.board-v3.solo-mode .full-pawns-layer{display:block!important;}
.board-clean .full-pawn .pawn-piece,
.board-v3 .full-pawn .pawn-piece{object-fit:contain!important;}
.board-clean .top-score-board .team-token.piece-token img,
.board-v3 .top-score-board .team-token.piece-token img{object-fit:contain!important;}
.board-clean .top-score-board .full-team-score.is-active{box-shadow:0 10px 20px rgba(0,0,0,.18),0 0 0 2px rgba(226,198,132,.52)!important;}
.board-clean .top-score-board .full-team-score b::after{content:" Customers";font-size:.52em;font-weight:900;opacity:.82;margin-left:.18rem;}
.board-clean .team-token.piece-token{overflow:visible!important;}

@media (max-width:980px){
  .game-setup-v2 .clean-control-hero{grid-template-columns:1fr!important;}
  .game-setup-v2 .clean-mode-grid{grid-template-columns:1fr!important;}
  .player-setup-grid,.player-setup-grid.mode-class{grid-template-columns:repeat(2,minmax(210px,1fr));}
  .game-setup-v2 .clean-setup-toolbar{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .player-setup-grid,.player-setup-grid.mode-solo,.player-setup-grid.mode-class{grid-template-columns:1fr;}
  .checker-player-card{grid-template-columns:82px minmax(0,1fr);}
  .checker-preview-img{width:68px!important;height:102px!important;}
  .game-setup-v2 .mode-checker-class img{height:96px!important;max-width:64px!important;margin-inline:-.5rem;}
  .clean-launch-row{display:grid;grid-template-columns:1fr;}
  .clean-launch-row .big-launch{width:100%;}
}

/* === One-shot game page and board deck repair === */
.premium-game-entry{
  background:
    radial-gradient(circle at 16% 0%,rgba(26,64,124,.5),transparent 30%),
    radial-gradient(circle at 84% 8%,rgba(150,82,42,.38),transparent 34%),
    linear-gradient(135deg,#061329 0%,#12172c 48%,#201523 100%)!important;
}
.premium-control-room{
  width:min(1220px,94vw)!important;
  margin:0 auto!important;
  padding:clamp(1.2rem,2.4vw,2.4rem) 0 3rem!important;
  display:grid!important;
  gap:clamp(1.1rem,2vw,1.8rem)!important;
}
.game-hero-stage{
  position:relative!important;
  min-height:clamp(300px,42vw,500px)!important;
  overflow:hidden!important;
  border-radius:34px!important;
  border:1px solid rgba(226,198,132,.58)!important;
  background:#0b1832!important;
  box-shadow:0 28px 75px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.2)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px)!important;
  align-items:end!important;
  padding:clamp(1.4rem,3vw,2.6rem)!important;
}
.game-hero-media{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
}
.game-hero-media video,
.game-hero-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  opacity:.64!important;
  filter:saturate(.92) contrast(1.05) brightness(.7)!important;
  transform:scale(1.02)!important;
}
.game-hero-media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(90deg,rgba(6,19,41,.94) 0%,rgba(6,19,41,.58) 44%,rgba(6,19,41,.15) 100%),
    linear-gradient(0deg,rgba(6,19,41,.82),transparent 58%)!important;
}
.hero-gold-orb{
  position:absolute!important;
  width:170px!important;
  height:170px!important;
  border-radius:999px!important;
  background:radial-gradient(circle,rgba(255,229,155,.26),transparent 66%)!important;
  filter:blur(1px)!important;
  animation:bbHeroFloat 7s ease-in-out infinite!important;
}
.hero-orb-one{right:10%;top:12%!important;animation-delay:-1s!important}
.hero-orb-two{left:44%;bottom:8%!important;width:110px!important;height:110px!important;animation-delay:-3s!important}
@keyframes bbHeroFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-14px,0)}}
.game-hero-copy,
.hero-status-card{position:relative!important;z-index:2!important;}
.game-hero-copy h1{
  margin:.1rem 0 0!important;
  font-family:'Bebas Neue','Montserrat',sans-serif!important;
  font-size:clamp(4.8rem,12vw,10rem)!important;
  line-height:.82!important;
  letter-spacing:.035em!important;
  color:#fff4cf!important;
  text-shadow:0 8px 32px rgba(0,0,0,.48),0 0 28px rgba(226,198,132,.28)!important;
}
.hero-subtitle{
  margin:.6rem 0 0!important;
  font-family:'Montserrat',sans-serif!important;
  font-size:clamp(1.15rem,2.4vw,2rem)!important;
  color:#e8c67a!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
.hero-instruction{
  max-width:560px!important;
  margin:.55rem 0 0!important;
  color:#f5ead0!important;
  font-weight:800!important;
  font-size:clamp(.98rem,1.35vw,1.14rem)!important;
}
.hero-status-card{
  justify-self:end!important;
  align-self:end!important;
  background:rgba(255,248,230,.92)!important;
  border:1px solid rgba(226,198,132,.62)!important;
  box-shadow:0 18px 35px rgba(0,0,0,.28)!important;
}
.premium-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(1rem,2vw,1.4rem)!important;
}
.premium-mode-card{
  position:relative!important;
  min-height:clamp(210px,23vw,270px)!important;
  padding:1.2rem 1rem 1rem!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:.22rem!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.88),rgba(255,247,222,.32) 28%,transparent 52%),
    linear-gradient(145deg,#fbf3dd,#d9c9a8)!important;
  border:1px solid rgba(255,241,190,.72)!important;
  box-shadow:0 20px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.7)!important;
  color:#101b38!important;
  cursor:pointer!important;
  overflow:hidden!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
.premium-mode-card::before{
  content:""!important;
  position:absolute!important;
  inset:auto 10% 18% 10%!important;
  height:26%!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.28),transparent 66%)!important;
  filter:blur(9px)!important;
  opacity:.42!important;
}
.premium-mode-card:hover,
.premium-mode-card.is-active{
  transform:translateY(-5px)!important;
  border-color:rgba(226,198,132,.98)!important;
  box-shadow:0 26px 50px rgba(0,0,0,.36),0 0 0 3px rgba(226,198,132,.16),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.premium-mode-card > span:not(.mode-checker-stack){
  position:relative!important;
  z-index:2!important;
  font-family:'Bebas Neue','Montserrat',sans-serif!important;
  font-size:clamp(2.6rem,4.4vw,4rem)!important;
  line-height:.88!important;
  letter-spacing:.05em!important;
  color:#101b38!important;
  text-shadow:0 1px 0 rgba(255,255,255,.55)!important;
}
.premium-mode-card small{
  position:relative!important;
  z-index:2!important;
  color:#6f5834!important;
  font-size:.88rem!important;
  font-weight:900!important;
  text-align:center!important;
}
.premium-mode-card .mode-checker-stack{
  position:absolute!important;
  inset:1rem 0 auto!important;
  height:clamp(120px,14vw,165px)!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:clamp(.12rem,.65vw,.42rem)!important;
  z-index:2!important;
  pointer-events:none!important;
}
.premium-mode-card .mode-checker-stack img{
  height:100%!important;
  width:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 14px 15px rgba(0,0,0,.38)) saturate(1.08) contrast(1.04)!important;
  transform-origin:50% 94%!important;
}
.premium-mode-card .mode-checker-group img{height:92%!important;margin-inline:-.36rem!important;}
.premium-mode-card .mode-checker-class img{height:80%!important;margin-inline:-.58rem!important;}
.premium-mode-card .mode-checker-stack img:nth-child(2n){transform:translateY(2px)}
.premium-setup-panel{
  margin-top:.4rem!important;
  padding:clamp(1.25rem,2.3vw,1.8rem)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 16% 0%,rgba(255,255,255,.8),transparent 30%),
    linear-gradient(145deg,#fbf1d7,#ddd0af)!important;
  border:1px solid rgba(226,198,132,.72)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.3)!important;
}
.premium-panel-headline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  margin-bottom:1rem!important;
}
.premium-panel-headline h2{
  margin:0!important;
  font-family:'Bebas Neue','Montserrat',sans-serif!important;
  font-size:clamp(2.2rem,4.2vw,4.8rem)!important;
  letter-spacing:.035em!important;
  line-height:.88!important;
  color:#111c39!important;
}
.setup-hint{margin:.25rem 0 0!important;color:#6e5a38!important;font-weight:800!important;}
.premium-setup-toolbar{
  display:grid!important;
  grid-template-columns:2fr minmax(180px,.7fr)!important;
  gap:1rem!important;
  align-items:end!important;
  margin-bottom:1rem!important;
}
.premium-setup-panel .control-field span,
.checker-player-fields label span{
  font-family:'Montserrat',sans-serif!important;
  color:#7f5a20!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  font-size:.78rem!important;
  text-transform:uppercase!important;
}
.premium-setup-panel select,
.premium-setup-panel input{
  font-family:'Inter',sans-serif!important;
  font-size:1rem!important;
  font-weight:800!important;
  color:#111c39!important;
  border-radius:16px!important;
  border:1px solid rgba(16,27,57,.13)!important;
  background:rgba(255,252,244,.78)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;
}
.premium-setup-panel .player-setup-grid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;
  gap:.9rem!important;
}
.premium-setup-panel .player-setup-grid.mode-solo{grid-template-columns:minmax(260px,420px)!important;}
.premium-setup-panel .checker-player-card{
  display:grid!important;
  grid-template-columns:82px minmax(0,1fr)!important;
  align-items:center!important;
  gap:.85rem!important;
  padding:.85rem!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(255,252,243,.9),rgba(255,246,223,.64))!important;
  border:1px solid rgba(226,198,132,.42)!important;
  box-shadow:0 13px 26px rgba(61,39,16,.16)!important;
}
.premium-setup-panel .checker-preview-frame{
  width:76px!important;
  height:112px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
}
.premium-setup-panel .checker-preview-img{
  max-width:100%!important;
  max-height:112px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 10px rgba(0,0,0,.28))!important;
}
.premium-launch-row{margin-top:1rem!important;display:flex!important;justify-content:flex-end!important;gap:.8rem!important;}
.premium-launch-row .big-launch{
  min-width:210px!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#f4d889,#c69239)!important;
  color:#101b38!important;
  box-shadow:0 16px 26px rgba(134,88,20,.28)!important;
}

/* Premium board deck/card center */
.board-clean .board-question-card{
  width:min(760px,58vw)!important;
  max-width:calc(100% - 26vw)!important;
  min-height:250px!important;
  max-height:min(440px,56vh)!important;
  padding:0!important;
  border-radius:30px!important;
  background:linear-gradient(145deg,#fff6df,#ecd9b0)!important;
  border:1px solid rgba(226,198,132,.86)!important;
  box-shadow:0 24px 58px rgba(0,0,0,.33),inset 0 1px 0 rgba(255,255,255,.72)!important;
  overflow:visible!important;
}
.board-clean .board-question-card .question-card-inner{
  position:relative!important;
  padding:clamp(1rem,1.55vw,1.45rem)!important;
  display:grid!important;
  gap:.72rem!important;
  min-height:250px!important;
}
.board-clean .board-question-card.is-ready{
  width:min(520px,42vw)!important;
  min-height:310px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.board-clean .board-question-card.is-ready .question-card-inner{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0 0 .4rem!important;
}
.premium-card-deck-stage{
  position:relative!important;
  width:min(340px,100%)!important;
  height:190px!important;
  margin:0 auto .25rem!important;
  perspective:900px!important;
  display:none!important;
}
.board-clean .board-question-card.is-ready .premium-card-deck-stage,
.board-clean .board-question-card.is-revealing .premium-card-deck-stage,
.board-clean .board-question-card.is-shuffling .premium-card-deck-stage{
  display:block!important;
}
.deck-shadow{
  position:absolute!important;
  left:50%!important;
  bottom:10px!important;
  width:82%!important;
  height:26px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(0,0,0,.36),rgba(0,0,0,.12) 56%,transparent 76%)!important;
  filter:blur(2px)!important;
}
.deck-stack{position:absolute!important;left:50%!important;top:50%!important;width:210px!important;height:132px!important;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg)!important;transform-style:preserve-3d!important;}
.deck-stack span,.deck-layer,.deck-card-top,.reveal-card-back,.reveal-card-front{
  position:absolute!important;inset:0!important;border-radius:18px!important;
  background:
    linear-gradient(90deg,transparent 10%,rgba(13,28,58,.85) 10.5%,rgba(13,28,58,.85) 13%,transparent 13.5%,transparent 86.5%,rgba(13,28,58,.85) 87%,rgba(13,28,58,.85) 89.5%,transparent 90%),
    linear-gradient(180deg,transparent 10%,rgba(180,134,50,.9) 10.5%,rgba(180,134,50,.9) 13%,transparent 13.5%,transparent 86.5%,rgba(180,134,50,.9) 87%,rgba(180,134,50,.9) 89.5%,transparent 90%),
    radial-gradient(circle at 50% 50%,rgba(255,248,224,.8),rgba(246,235,204,.98))!important;
  border:2px solid rgba(255,248,224,.98)!important;
  box-shadow:0 6px 0 #d0b98d,0 12px 20px rgba(0,0,0,.28)!important;
}
.deck-layer.layer-4{transform:translate3d(-8px,12px,-14px)!important}.deck-layer.layer-3{transform:translate3d(-4px,8px,-10px)!important}.deck-layer.layer-2{transform:translate3d(0,4px,-6px)!important}.deck-layer.layer-1{transform:translate3d(3px,1px,-2px)!important}
.deck-card-top{transform:translate3d(6px,-4px,3px);display:grid!important;place-items:center!important;}
.deck-card-border{position:absolute!important;inset:16px!important;border-radius:13px!important;border:2px solid rgba(16,31,64,.9)!important;box-shadow:inset 0 0 0 2px rgba(193,143,49,.75)!important;}
.deck-card-label{position:relative!important;font-family:'Bebas Neue',sans-serif!important;font-size:1.55rem!important;letter-spacing:.07em!important;color:#102046!important;opacity:.82!important;}
.reveal-card-shell{position:absolute!important;left:50%!important;top:50%!important;width:220px!important;height:140px!important;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg)!important;transform-style:preserve-3d!important;opacity:0!important;}
.reveal-card-back,.reveal-card-front{backface-visibility:hidden!important;box-shadow:0 18px 30px rgba(0,0,0,.28)!important;}
.reveal-card-front{display:grid!important;place-items:center!important;transform:rotateY(180deg)!important;background:linear-gradient(145deg,#fff9e9,#f0deb8)!important;font-family:'Montserrat',sans-serif!important;color:#102046!important;font-weight:900!important;}
.board-clean .board-question-card.is-revealing .reveal-card-shell{animation:bbCardFlipReveal .88s cubic-bezier(.18,.88,.28,1) both!important;}
.board-clean .board-question-card.is-revealing .deck-card-top{animation:bbDeckTopLift .88s cubic-bezier(.18,.88,.28,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-main{animation:bbDeckMainShuffle 1s cubic-bezier(.2,.8,.25,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-left{opacity:1!important;animation:bbDeckLeftShuffle 1s cubic-bezier(.2,.8,.25,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-right{opacity:1!important;animation:bbDeckRightShuffle 1s cubic-bezier(.2,.8,.25,1) both!important;}
.deck-left,.deck-right{opacity:0!important;}
@keyframes bbCardFlipReveal{0%{opacity:0;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg) translateY(0) rotateY(0)}22%{opacity:1;transform:translate(-50%,-82%) rotateX(55deg) rotateZ(-3deg) translateY(-20px) rotateY(0)}64%{opacity:1;transform:translate(-50%,-92%) rotateX(28deg) rotateZ(2deg) translateY(-34px) rotateY(178deg)}100%{opacity:0;transform:translate(-50%,-98%) rotateX(10deg) rotateZ(0) translateY(-42px) rotateY(180deg)}}
@keyframes bbDeckTopLift{0%{transform:translate3d(6px,-4px,3px)}45%{transform:translate3d(12px,-26px,28px) rotateZ(3deg)}100%{transform:translate3d(6px,-4px,3px)}}
@keyframes bbDeckLeftShuffle{0%,100%{opacity:0;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg)}20%,68%{opacity:1;transform:translate(-118%,-50%) rotateX(62deg) rotateZ(-12deg)}42%{opacity:1;transform:translate(-88%,-50%) rotateX(62deg) rotateZ(-4deg)}}
@keyframes bbDeckRightShuffle{0%,100%{opacity:0;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg)}20%,68%{opacity:1;transform:translate(18%,-50%) rotateX(62deg) rotateZ(8deg)}42%{opacity:1;transform:translate(-8%,-50%) rotateX(62deg) rotateZ(1deg)}}
@keyframes bbDeckMainShuffle{0%,100%{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg)}38%{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(4deg) scale(.96)}72%{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-7deg) scale(1.02)}}
.board-clean .board-question-card.is-ready .question-topline,
.board-clean .board-question-card.is-ready .board-answer-options,
.board-clean .board-question-card.is-ready .support-box,
.board-clean .board-question-card.is-ready .power-tools,
.board-clean .board-question-card.is-ready .board-card-actions,
.board-clean .board-question-card.is-ready .points-label,
.board-clean .board-question-card.is-ready .category-label{display:none!important;}
.board-clean .board-question-card.is-ready h1{
  font-size:clamp(2rem,3.2vw,3.2rem)!important;
  color:#fff4cf!important;
  text-shadow:0 4px 18px rgba(0,0,0,.54)!important;
  text-align:center!important;
}
.board-clean .board-question-card.is-ready #questionPrompt,
.board-clean .board-question-card.is-ready .board-feedback{
  max-width:360px!important;
  text-align:center!important;
  color:#f8ecd0!important;
  background:rgba(8,16,35,.72)!important;
  border:1px solid rgba(226,198,132,.44)!important;
  border-radius:999px!important;
  padding:.45rem .9rem!important;
}
.board-clean .board-question-card.is-revealed .premium-card-deck-stage{display:none!important;}
.board-clean .board-question-card.is-revealed .question-topline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;}
.board-clean .board-question-card h1{font-size:clamp(2.1rem,3.15vw,3.65rem)!important;line-height:.9!important;margin:.05rem 0!important;color:#112040!important;}
.board-clean .board-question-card #questionPrompt{font-size:clamp(.98rem,1.18vw,1.16rem)!important;line-height:1.25!important;color:#1d2a4b!important;font-weight:900!important;margin:0!important;}
.board-clean .support-box{padding:.62rem .72rem!important;border-radius:16px!important;background:rgba(255,252,242,.74)!important;border:1px solid rgba(226,198,132,.28)!important;}
.board-clean .support-box strong{display:block!important;color:#8a5c18!important;text-transform:uppercase!important;letter-spacing:.05em!important;font-size:.72rem!important;margin-bottom:.36rem!important;}
.answer-help-chips{display:flex!important;flex-wrap:wrap!important;gap:.35rem!important;}
.answer-help-chips span{display:inline-flex!important;align-items:center!important;min-height:1.55rem!important;padding:.24rem .62rem!important;border-radius:999px!important;background:#fffaf0!important;color:#102046!important;font-weight:900!important;font-size:.78rem!important;border:1px solid rgba(16,31,64,.1)!important;}
.board-clean .board-card-actions{display:flex!important;flex-wrap:wrap!important;gap:.5rem!important;margin-top:.15rem!important;}
.board-clean .board-card-actions .btn{min-height:2.25rem!important;padding:.48rem .88rem!important;border-radius:999px!important;font-size:.82rem!important;}
.board-clean .board-card-actions .hidden{display:none!important;}
.board-clean .board-feedback{margin-top:.1rem!important;min-height:2rem!important;padding:.45rem .7rem!important;border-radius:999px!important;font-size:.78rem!important;}
.board-clean .category-label,.board-clean .points-label{font-size:.76rem!important;padding:.24rem .62rem!important;border-radius:999px!important;}
.board-clean .full-pawn{width:clamp(34px,3.2vw,52px)!important;height:clamp(56px,5.4vw,84px)!important;}
.board-clean .full-pawn .pawn-piece{height:118%!important;width:118%!important;}
.board-clean .top-score-board .team-token.piece-token img{width:116%!important;height:160%!important;transform:translate(-7%,-18%)!important;}
.board-clean .full-team-score{min-width:0!important;}
.board-clean .full-team-score strong{font-size:.78rem!important;}
.board-clean .full-team-score small{font-size:.63rem!important;}
.board-clean .full-team-score b{font-size:.98rem!important;}

/* Shiny metallic gold die correction */
.board-clean .rolling-die-cube .die-front,
.board-v3 .rolling-die-cube .die-front{
  background:
    radial-gradient(circle at 22% 16%,rgba(255,255,238,.96),transparent 17%),
    radial-gradient(circle at 72% 72%,rgba(255,224,130,.32),transparent 38%),
    linear-gradient(140deg,#fff6c8 0%,#e8bf62 25%,#b47a27 52%,#6d4215 74%,#f1d27c 100%)!important;
  border-color:rgba(255,245,198,.98)!important;
  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.72),
    inset -9px -10px 15px rgba(70,39,11,.42),
    inset 8px 7px 13px rgba(255,250,210,.28),
    0 1px 0 rgba(255,255,255,.22),
    0 0 14px rgba(226,198,132,.25)!important;
}
.board-clean .rolling-die-cube .die-top,
.board-v3 .rolling-die-cube .die-top{background:linear-gradient(155deg,#fff7c9,#d2a145 58%,#8a561d)!important;}
.board-clean .rolling-die-cube .die-side,
.board-v3 .rolling-die-cube .die-side{background:linear-gradient(160deg,#d8aa4f,#7a4a18 72%,#4f2f0e)!important;}
.board-clean .rolling-die-cube .die-front .pip,
.board-v3 .rolling-die-cube .die-front .pip{background:radial-gradient(circle at 35% 30%,#4e6390,#061126 72%)!important;}
.board-clean .command-actions.hud-actions{gap:.45rem!important;}
.board-clean .command-actions.hud-actions .command-btn{white-space:nowrap!important;}

@media (max-width:860px){
  .game-hero-stage{grid-template-columns:1fr!important;min-height:420px!important;}
  .hero-status-card{justify-self:start!important;margin-top:1rem!important;}
  .premium-mode-grid{grid-template-columns:1fr!important;}
  .premium-setup-toolbar{grid-template-columns:1fr!important;}
  .premium-setup-panel .player-setup-grid,.premium-setup-panel .player-setup-grid.mode-solo{grid-template-columns:1fr!important;}
  .board-clean .board-question-card,.board-clean .board-question-card.is-ready{width:min(92vw,520px)!important;max-width:92vw!important;}
  .premium-card-deck-stage{height:160px!important;transform:scale(.86)!important;transform-origin:center bottom!important;}
}

/* === Game setup visual redesign: mode art, mode tabs, compact premium forms === */
.control-room-page.mode-solo{
  --setup-accent:#2b62c6;
  --setup-accent-2:#102f70;
  --setup-accent-soft:rgba(43,98,198,.16);
  --setup-accent-glow:rgba(75,126,224,.34);
}
.control-room-page.mode-teams{
  --setup-accent:#d29a31;
  --setup-accent-2:#8d5d12;
  --setup-accent-soft:rgba(210,154,49,.18);
  --setup-accent-glow:rgba(226,183,82,.34);
}
.control-room-page.mode-class{
  --setup-accent:#a72d36;
  --setup-accent-2:#641821;
  --setup-accent-soft:rgba(167,45,54,.17);
  --setup-accent-glow:rgba(194,62,76,.32);
}
.setup-redesign{
  gap:clamp(1rem,1.8vw,1.5rem)!important;
}
.refined-game-hero{
  min-height:clamp(340px,39vw,470px)!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:end!important;
}
.refined-game-hero .game-hero-media video{
  opacity:.72!important;
  filter:saturate(.98) contrast(1.08) brightness(.64)!important;
}
.refined-game-hero .game-hero-media::after{
  background:
    linear-gradient(90deg,rgba(7,18,38,.96) 0%,rgba(7,18,38,.72) 42%,rgba(7,18,38,.26) 100%),
    linear-gradient(0deg,rgba(7,18,38,.88),rgba(7,18,38,.16) 58%)!important;
}
.refined-hero-copy{max-width:820px!important;}
.refined-hero-copy .eyebrow{
  color:#e9c979!important;
  letter-spacing:.34em!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-weight:900!important;
}
.refined-hero-copy h1{
  font-family:'Archivo Black','Bebas Neue','Montserrat',sans-serif!important;
  font-size:clamp(4.4rem,11vw,9.4rem)!important;
  letter-spacing:-.045em!important;
  line-height:.86!important;
  max-width:760px!important;
}
.refined-hero-copy .hero-subtitle{
  color:#f3d987!important;
  font-size:clamp(1rem,1.65vw,1.55rem)!important;
  letter-spacing:.02em!important;
}
.refined-hero-copy .hero-instruction{
  max-width:720px!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:clamp(.95rem,1.25vw,1.12rem)!important;
  color:#fff4d2!important;
}
.mode-art-grid{
  align-items:stretch!important;
  gap:clamp(.85rem,1.65vw,1.2rem)!important;
}
.mode-art-card{
  min-height:clamp(235px,24vw,310px)!important;
  display:grid!important;
  grid-template-rows:minmax(150px,1fr) auto auto!important;
  align-items:end!important;
  justify-items:center!important;
  padding:clamp(.85rem,1.3vw,1.05rem)!important;
  gap:.35rem!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 50% 10%,rgba(255,255,255,.88),rgba(247,237,207,.38) 42%,transparent 70%),
    linear-gradient(145deg,#fff5d9 0%,#dccba6 100%)!important;
  border:1px solid rgba(255,241,190,.78)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.mode-art-card::before{display:none!important;}
.mode-art-card::after{
  content:""!important;
  position:absolute!important;
  inset:12px!important;
  border:1px solid rgba(255,255,255,.62)!important;
  border-radius:24px!important;
  pointer-events:none!important;
}
.mode-art-card:hover,
.mode-art-card.is-active{
  transform:translateY(-4px)!important;
  border-color:rgba(255,229,148,.95)!important;
  box-shadow:0 26px 54px rgba(0,0,0,.36),0 0 0 3px var(--setup-accent-soft),0 0 32px var(--setup-accent-glow),inset 0 1px 0 rgba(255,255,255,.76)!important;
}
.mode-art-card > .mode-art-frame{
  position:relative!important;
  z-index:2!important;
  width:min(72%,210px)!important;
  aspect-ratio:1/1!important;
  display:grid!important;
  place-items:center!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:#0d1a34!important;
  box-shadow:0 18px 26px rgba(0,0,0,.28),0 0 0 1px rgba(255,241,190,.42)!important;
  align-self:center!important;
}
.mode-art-card > .mode-art-frame img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#0d1a34!important;
  filter:saturate(1.03) contrast(1.02)!important;
  transform:scale(1.005)!important;
}
.mode-art-card > .mode-card-title{
  position:relative!important;
  z-index:2!important;
  font-family:'Bebas Neue','Archivo Black','Montserrat',sans-serif!important;
  font-size:clamp(2.25rem,3.6vw,3.55rem)!important;
  line-height:.9!important;
  letter-spacing:.055em!important;
  color:#111c39!important;
  text-shadow:0 1px 0 rgba(255,255,255,.58)!important;
}
.mode-art-card small{
  max-width:260px!important;
  margin:0 auto!important;
  color:#6c5632!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.86rem!important;
  font-weight:850!important;
  line-height:1.25!important;
}
.refined-setup-panel{
  position:relative!important;
  overflow:hidden!important;
  padding:clamp(1rem,1.8vw,1.55rem)!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(255,255,255,.84),transparent 28%),
    radial-gradient(circle at 96% 8%,var(--setup-accent-soft),transparent 28%),
    linear-gradient(145deg,#fff5dc 0%,#e4d5b5 100%)!important;
  border-color:rgba(236,211,146,.76)!important;
  box-shadow:0 24px 54px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.refined-setup-panel::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  height:5px!important;
  background:linear-gradient(90deg,var(--setup-accent-2),var(--setup-accent),#f2d88a)!important;
}
.setup-mode-tabs{
  position:relative!important;
  z-index:1!important;
  width:max-content!important;
  max-width:100%!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.35rem!important;
  padding:.32rem!important;
  margin:0 0 .95rem!important;
  border-radius:999px!important;
  background:rgba(14,24,49,.1)!important;
  border:1px solid rgba(16,27,57,.1)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;
}
.mode-tab-btn{
  min-height:2.2rem!important;
  padding:.48rem .88rem!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,252,242,.62)!important;
  color:#46516d!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.78rem!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.mode-tab-btn:hover{transform:translateY(-1px)!important;background:rgba(255,252,242,.9)!important;}
.mode-tab-btn.is-active{
  color:#fff8dc!important;
  background:linear-gradient(145deg,var(--setup-accent),var(--setup-accent-2))!important;
  box-shadow:0 10px 20px var(--setup-accent-glow),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
.refined-panel-headline{
  align-items:end!important;
  margin-bottom:1rem!important;
}
.mode-setup-badge{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  background:linear-gradient(145deg,rgba(255,252,241,.8),var(--setup-accent-soft))!important;
  color:var(--setup-accent-2)!important;
  border:1px solid rgba(16,27,57,.08)!important;
}
.refined-panel-headline h2{
  margin:.2rem 0 0!important;
  font-family:'Bebas Neue','Archivo Black','Montserrat',sans-serif!important;
  font-size:clamp(2.3rem,4vw,4.35rem)!important;
  color:#111c39!important;
  letter-spacing:.035em!important;
}
.refined-panel-headline .setup-hint{
  max-width:560px!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.95rem!important;
  color:#6a5736!important;
  font-weight:800!important;
}
.setup-summary-note{
  min-width:220px!important;
  max-width:330px!important;
  padding:.78rem .95rem!important;
  border-radius:20px!important;
  background:rgba(255,252,242,.7)!important;
  border:1px solid rgba(236,211,146,.52)!important;
  box-shadow:0 12px 22px rgba(75,48,16,.12)!important;
}
.setup-summary-note strong,
.setup-summary-note small{display:block!important;}
.setup-summary-note strong{
  color:#111c39!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.95rem!important;
  font-weight:950!important;
}
.setup-summary-note small{
  margin-top:.15rem!important;
  color:#7b6138!important;
  font-size:.78rem!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.refined-setup-toolbar{
  grid-template-columns:minmax(220px,1fr) minmax(160px,260px)!important;
  gap:.85rem!important;
  align-items:end!important;
  margin-bottom:clamp(.8rem,1.5vw,1.1rem)!important;
}
.refined-setup-panel .control-field{
  display:grid!important;
  gap:.34rem!important;
}
.refined-setup-panel .control-field span,
.refined-setup-panel .checker-player-fields label span{
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.68rem!important;
  letter-spacing:.075em!important;
  color:#76551d!important;
}
.refined-setup-panel select,
.refined-setup-panel input{
  min-height:2.75rem!important;
  padding:.58rem .78rem!important;
  border-radius:14px!important;
  background:rgba(255,253,247,.82)!important;
  color:#111c39!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.92rem!important;
  font-weight:850!important;
  border:1px solid rgba(16,27,57,.12)!important;
}
.refined-setup-panel select:focus,
.refined-setup-panel input:focus{
  outline:none!important;
  border-color:var(--setup-accent)!important;
  box-shadow:0 0 0 3px var(--setup-accent-soft),inset 0 1px 0 rgba(255,255,255,.75)!important;
}
.refined-player-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;
  gap:.75rem!important;
  align-items:stretch!important;
}
.control-room-page.mode-solo .refined-player-grid{grid-template-columns:minmax(260px,430px)!important;}
.control-room-page.mode-teams .refined-player-grid{grid-template-columns:repeat(3,minmax(205px,1fr))!important;}
.control-room-page.mode-class .refined-player-grid{grid-template-columns:repeat(3,minmax(180px,1fr))!important;}
.refined-setup-panel .checker-player-card{
  position:relative!important;
  grid-template-columns:66px minmax(0,1fr)!important;
  gap:.72rem!important;
  min-height:142px!important;
  padding:.72rem!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(255,255,255,.8),transparent 34%),
    linear-gradient(145deg,rgba(255,253,246,.92),rgba(246,232,199,.68))!important;
  border:1px solid rgba(226,198,132,.4)!important;
  box-shadow:0 12px 24px rgba(71,47,18,.13)!important;
  overflow:hidden!important;
}
.refined-setup-panel .checker-player-card::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:5px!important;
  background:linear-gradient(180deg,var(--checker-color),rgba(226,198,132,.74))!important;
}
.refined-setup-panel .checker-player-card.is-inactive{opacity:.62!important;filter:saturate(.72)!important;}
.refined-setup-panel .checker-preview-frame{
  width:62px!important;
  height:102px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(14,27,55,.92),rgba(14,27,55,.72))!important;
  border:1px solid rgba(255,238,184,.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 18px rgba(0,0,0,.16)!important;
  overflow:visible!important;
}
.refined-setup-panel .checker-preview-img{
  max-height:94px!important;
  width:auto!important;
  max-width:74px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.3))!important;
}
.refined-setup-panel .checker-player-fields{
  display:grid!important;
  gap:.48rem!important;
  align-content:center!important;
}
.refined-setup-panel .checker-player-fields label{display:grid!important;gap:.24rem!important;}
.refined-setup-panel .checker-player-fields input,
.refined-setup-panel .checker-player-fields select{
  min-height:2.38rem!important;
  border-radius:13px!important;
  font-size:.86rem!important;
  padding:.46rem .62rem!important;
}
.refined-setup-panel .player-active-toggle{
  width:max-content!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:.42rem!important;
  margin-top:.05rem!important;
  cursor:pointer!important;
  color:#111c39!important;
}
.refined-setup-panel .player-active-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.refined-setup-panel .player-active-toggle span{
  min-height:1.85rem!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:.34rem .72rem!important;
  border-radius:999px!important;
  background:rgba(16,27,57,.11)!important;
  color:#48516b!important;
  border:1px solid rgba(16,27,57,.09)!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.72rem!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
.refined-setup-panel .player-active-toggle input:checked + span{
  background:linear-gradient(145deg,var(--setup-accent),var(--setup-accent-2))!important;
  color:#fff7d9!important;
  box-shadow:0 8px 16px var(--setup-accent-glow)!important;
}
.refined-launch-row{
  align-items:center!important;
  justify-content:flex-end!important;
  gap:.7rem!important;
  margin-top:clamp(.9rem,1.5vw,1.2rem)!important;
  padding-top:.95rem!important;
  border-top:1px solid rgba(16,27,57,.08)!important;
}
.refined-launch-row .light-command{
  min-height:2.8rem!important;
  padding:.65rem 1rem!important;
  border-radius:999px!important;
  background:rgba(255,252,244,.75)!important;
  color:#28324e!important;
  border:1px solid rgba(16,27,57,.1)!important;
  box-shadow:0 8px 16px rgba(0,0,0,.08)!important;
}
.refined-launch-row .big-launch{
  min-height:3.1rem!important;
  min-width:clamp(170px,18vw,230px)!important;
  background:linear-gradient(145deg,var(--setup-accent),var(--setup-accent-2))!important;
  color:#fff8dc!important;
  border:1px solid rgba(255,241,190,.38)!important;
  box-shadow:0 16px 28px var(--setup-accent-glow),inset 0 1px 0 rgba(255,255,255,.22)!important;
  letter-spacing:.065em!important;
}
.refined-launch-row .big-launch:hover{transform:translateY(-2px)!important;}
@media (max-width:1080px){
  .mode-art-card > .mode-art-frame{width:min(68%,180px)!important;}
  .control-room-page.mode-teams .refined-player-grid,
  .control-room-page.mode-class .refined-player-grid{grid-template-columns:repeat(2,minmax(190px,1fr))!important;}
}
@media (max-width:760px){
  .refined-game-hero{min-height:390px!important;border-radius:26px!important;padding:1.15rem!important;}
  .refined-hero-copy h1{font-size:clamp(4rem,19vw,6rem)!important;}
  .mode-art-grid{grid-template-columns:1fr!important;}
  .mode-art-card{min-height:245px!important;}
  .mode-art-card > .mode-art-frame{width:min(58%,172px)!important;}
  .refined-panel-headline{display:grid!important;align-items:start!important;}
  .setup-summary-note{max-width:none!important;width:100%!important;}
  .refined-setup-toolbar{grid-template-columns:1fr!important;}
  .control-room-page.mode-solo .refined-player-grid,
  .control-room-page.mode-teams .refined-player-grid,
  .control-room-page.mode-class .refined-player-grid{grid-template-columns:1fr!important;}
  .refined-launch-row{justify-content:stretch!important;flex-direction:column-reverse!important;align-items:stretch!important;}
  .refined-launch-row .big-launch,
  .refined-launch-row .light-command{width:100%!important;}
}

/* Setup cleanup: checker colors are fixed by mode/team, so the noisy color dropdowns are removed. */
.refined-setup-panel .checker-player-card.fixed-checker-card{
  min-height:118px!important;
  grid-template-columns:70px minmax(0,1fr)!important;
}
.refined-setup-panel .fixed-checker-card .checker-preview-frame{
  width:66px!important;
  height:104px!important;
  background:linear-gradient(180deg,rgba(255,252,241,.55),rgba(16,27,57,.14))!important;
  border-color:rgba(226,198,132,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 10px 18px rgba(41,28,12,.12)!important;
}
.refined-setup-panel .fixed-checker-card .checker-preview-img{
  max-height:98px!important;
  max-width:70px!important;
  filter:drop-shadow(0 9px 8px rgba(0,0,0,.24)) saturate(1.08) contrast(1.04)!important;
}
.refined-setup-panel .assigned-checker-note{
  width:max-content!important;
  max-width:100%!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:.42rem!important;
  margin:.06rem 0 0!important;
  padding:.34rem .62rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.48)!important;
  border:1px solid rgba(16,27,57,.08)!important;
  color:#725024!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.refined-setup-panel .assigned-checker-dot{
  width:.54rem!important;
  height:.54rem!important;
  flex:0 0 auto!important;
  border-radius:999px!important;
  background:var(--checker-color)!important;
  box-shadow:0 0 0 2px rgba(226,198,132,.42), inset 0 1px 0 rgba(255,255,255,.38)!important;
}
@media (max-width:720px){
  .refined-setup-panel .assigned-checker-note{font-size:.62rem!important;}
}

/* Final setup logic cleanup: Players mode is individual players, not teams. */
.control-room-page.mode-teams .player-setup-grid,
.control-room-page.mode-teams .refined-player-grid{
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;
}
.control-room-page.mode-solo .player-count-field,
.control-room-page.mode-class .player-count-field{display:none!important;}
.control-room-page.mode-teams .player-count-field{display:grid!important;}
.refined-setup-panel .assigned-checker-note{display:none!important;}
.refined-setup-panel .checker-player-card.fixed-checker-card{min-height:112px!important;}
.refined-setup-panel .checker-player-fields{gap:.38rem!important;}
.game-setup-v2 .clean-mode-card img{
  width:min(82%,230px)!important;
  height:clamp(118px,14vw,170px)!important;
  object-fit:contain!important;
  background:transparent!important;
  border-radius:0!important;
  filter:drop-shadow(0 16px 18px rgba(20,14,5,.26))!important;
}
.game-setup-v2 .clean-mode-card > span:not(.mode-checker-stack){margin-top:.15rem!important;}
.game-setup-v2 .clean-control-hero{grid-template-columns:1fr!important;}
.game-setup-v2 .clean-control-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 78% 22%,rgba(226,198,132,.18),transparent 26%),radial-gradient(circle at 20% 84%,rgba(33,58,105,.28),transparent 30%);
}
.game-setup-v2 .clean-control-hero > div{position:relative;z-index:1;}
@media (min-width:1180px){
  .control-room-page.mode-teams .player-setup-grid{grid-template-columns:repeat(4,minmax(190px,1fr))!important;}
}

/* === Board card UX refinement: safe center, automatic answers, slower movement === */
.board-clean .full-pawns-layer,
.board-clean .full-pawn{
  z-index:12!important;
}
.board-clean .board-question-card{
  z-index:8!important;
  top:50.5%!important;
  width:clamp(340px,40vw,560px)!important;
  max-width:46%!important;
  max-height:49%!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
.board-clean .board-question-card.is-ready{
  width:clamp(320px,34vw,500px)!important;
  max-width:42%!important;
  max-height:43%!important;
}
.board-clean .question-card-inner{
  max-height:calc((100vh - 100px) * .44)!important;
  overflow:auto!important;
  scrollbar-width:thin!important;
  padding:clamp(.58rem,.88vw,.82rem) clamp(.7rem,1.05vw,1rem)!important;
}
.board-clean .question-topline{
  margin-bottom:.16rem!important;
}
.board-clean .category-label,
.board-clean .points-label{
  font-size:clamp(.58rem,.72vw,.72rem)!important;
  padding:.22rem .5rem!important;
}
.board-clean .board-question-card h1{
  font-size:clamp(1.52rem,2.25vw,2.55rem)!important;
  line-height:.95!important;
  margin:.04rem 0 .24rem!important;
}
.board-clean .board-question-card p#questionPrompt,
.board-clean .board-question-card #questionPrompt{
  font-size:clamp(.78rem,.92vw,.92rem)!important;
  line-height:1.24!important;
  margin:.02rem 0 .32rem!important;
  max-width:100%!important;
}
.board-clean .board-answer-options{
  grid-template-columns:1fr!important;
  gap:.34rem!important;
  margin:.08rem 0 .32rem!important;
}
.board-clean .board-answer-options .answer-btn{
  min-height:36px!important;
  padding:.45rem .58rem!important;
  text-align:left!important;
  border-radius:13px!important;
  font-size:clamp(.72rem,.84vw,.86rem)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(255,248,232,.62))!important;
  border:1px solid rgba(20,34,71,.12)!important;
  color:#142247!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.board-clean .board-answer-options .answer-btn:not(:disabled):hover,
.board-clean .board-answer-options .answer-btn:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(200,164,106,.58)!important;
  box-shadow:0 8px 14px rgba(20,34,71,.12),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
.board-clean .answer-btn.correct{
  background:linear-gradient(145deg,#ddf7df,#a8d8ad)!important;
  border-color:#2d8f45!important;
  color:#113d20!important;
  box-shadow:0 0 0 2px rgba(45,143,69,.16),inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.board-clean .answer-btn.wrong{
  background:linear-gradient(145deg,#ffe0da,#efa99b)!important;
  border-color:#c84835!important;
  color:#58190f!important;
  box-shadow:0 0 0 2px rgba(200,72,53,.14),inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.board-clean .board-card-actions{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:.32rem!important;
  margin-top:.28rem!important;
}
.board-clean .board-card-actions .btn{
  min-height:34px!important;
  padding:.34rem .44rem!important;
  font-size:.68rem!important;
}
.board-clean .board-question-card.is-objective-card #teacherCorrectBtn,
.board-clean .board-question-card.is-objective-card #teacherWrongBtn,
.board-clean .board-question-card.is-ready #teacherCorrectBtn,
.board-clean .board-question-card.is-ready #teacherWrongBtn{
  display:none!important;
}
.board-clean .board-question-card.is-objective-card .board-card-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.board-clean .board-question-card.is-objective-card .board-card-actions #nextTeamBtn:not(.hidden){
  grid-column:1/-1!important;
}
.board-clean .support-box{
  max-height:76px!important;
  padding:.36rem .5rem!important;
  margin:.12rem 0 .22rem!important;
}
.board-clean .answer-help-chips{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.24rem!important;
}
.board-clean .answer-help-chips span{
  display:block!important;
  padding:.24rem .42rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.68)!important;
  border:1px solid rgba(20,34,71,.08)!important;
  font-size:clamp(.62rem,.74vw,.76rem)!important;
  line-height:1.05!important;
  font-weight:900!important;
  color:#142247!important;
}
.board-clean .board-feedback{
  min-height:26px!important;
  margin:.28rem 0 0!important;
  padding:.34rem .48rem!important;
  font-size:.7rem!important;
  line-height:1.14!important;
}
/* Different but related card category treatments */
.board-clean .card-vocab{
  background:linear-gradient(145deg,#fff9e8 0%,#f5e5bf 100%)!important;
  border-color:rgba(194,143,53,.68)!important;
}
.board-clean .card-vocab .category-label{background:#10214a!important;color:#fff8e8!important;}
.board-clean .card-passive,
.board-clean .card-usedto{
  background:linear-gradient(145deg,#f4f8ff 0%,#dfe9fb 100%)!important;
  border-color:rgba(65,98,158,.48)!important;
}
.board-clean .card-passive .category-label,
.board-clean .card-usedto .category-label{background:#173a72!important;color:#fff8e8!important;}
.board-clean .card-review{
  background:linear-gradient(145deg,#fff8ea 0%,#efe0c1 100%)!important;
  border-color:rgba(183,126,46,.55)!important;
}
.board-clean .card-review .category-label{background:#8a5b1d!important;color:#fff8e8!important;}
.board-clean .card-production{
  background:linear-gradient(145deg,#fff2ee 0%,#ead0c7 100%)!important;
  border-color:rgba(142,54,58,.5)!important;
}
.board-clean .card-production .category-label{background:#742b35!important;color:#fff8e8!important;}
.board-clean .card-special{
  background:linear-gradient(145deg,#fff6d7 0%,#e5c16d 100%)!important;
  border-color:rgba(151,103,31,.62)!important;
}
/* Slower, smoother visual movement for dice and player indicators. */
.board-clean .full-pawn{
  transition:left .58s cubic-bezier(.22,1,.36,1),top .58s cubic-bezier(.22,1,.36,1),transform .58s ease!important;
}
.board-clean .full-pawn.is-moving .pawn-piece{
  animation:bbPieceMove .52s ease-in-out!important;
}
.board-clean .rolling-die-cube.is-rolling,
.board-v3 .rolling-die-cube.is-rolling{
  animation-duration:1.55s!important;
}
.board-clean .hud-dice-button.rolling,
.board-v3 .hud-dice-button.rolling{
  animation-duration:1.55s!important;
}
@media (max-width:1180px){
  .board-clean .board-question-card{width:clamp(320px,46%,540px)!important;max-width:52%!important;}
}
@media (max-width:720px){
  .board-clean .board-question-card,
  .board-clean .board-question-card.is-ready{
    width:82%!important;
    max-width:none!important;
    max-height:54%!important;
    top:53%!important;
  }
  .board-clean .answer-help-chips{grid-template-columns:1fr!important;}
  .board-clean .board-card-actions,
  .board-clean .board-question-card.is-objective-card .board-card-actions{grid-template-columns:1fr!important;}
}

/* === Final classroom-safe game fixes: mode flow, hints, scoring UI === */
.game-setup-v2 .video-control-hero{position:relative;overflow:hidden;min-height:clamp(260px,34vw,420px)!important;display:grid;place-items:center;padding:clamp(2rem,4vw,4rem)!important;background:#0c1831!important;isolation:isolate;}
.game-setup-v2 .control-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.48;filter:saturate(1.06) contrast(1.08);z-index:-2;}
.game-setup-v2 .video-control-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(232,196,122,.22),transparent 35%),linear-gradient(180deg,rgba(8,15,31,.45),rgba(8,15,31,.92));z-index:-1;}
.game-setup-v2 .control-hero-copy{text-align:center;max-width:880px;margin-inline:auto;}
.game-setup-v2 .setup-step-heading{text-align:center;margin:clamp(1.2rem,3vw,2.5rem) auto 1rem;max-width:880px;color:#f8ecd1;}
.game-setup-v2 .setup-step-heading .step-kicker{display:inline-flex;padding:.28rem .72rem;border-radius:999px;background:rgba(214,169,86,.18);border:1px solid rgba(232,196,122,.38);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#f3d58c;}
.game-setup-v2 .setup-step-heading h2{margin:.45rem 0 .2rem;font-family:"Playfair Display",serif;font-size:clamp(2rem,4.2vw,4rem);line-height:.95;color:#fff1c6;}
.game-setup-v2 .setup-step-heading p{margin:0;color:rgba(255,248,225,.82);font-weight:700;}
.game-setup-v2 .clean-mode-grid{align-items:stretch;gap:clamp(1rem,2vw,1.6rem)!important;}
.game-setup-v2 .clean-mode-card{min-height:clamp(210px,23vw,310px)!important;padding:clamp(1rem,2vw,1.4rem)!important;justify-content:space-between!important;}
.game-setup-v2 .clean-mode-card img{width:min(92%,260px)!important;height:auto!important;max-height:210px!important;object-fit:contain!important;margin:auto!important;filter:drop-shadow(0 18px 26px rgba(0,0,0,.28));}
.game-setup-v2 .clean-mode-card small{font-size:clamp(.86rem,1.05vw,1rem)!important;color:#fff0c7!important;max-width:21ch;margin:.45rem auto 0;text-align:center;line-height:1.25;}
.game-setup-v2 .clean-mode-card > span:not(.mode-checker-stack){display:none!important;}
.game-setup-v2 .control-field > span{font-size:.78rem!important;letter-spacing:.06em;text-transform:uppercase;color:#7b572b;font-weight:950;}
.game-setup-v2 .solo-checker-choice{display:flex;flex-wrap:wrap;gap:.38rem;margin-top:.55rem;}
.game-setup-v2 .checker-dot-choice{width:42px;height:42px;border-radius:14px;border:1px solid rgba(129,90,40,.2);background:linear-gradient(145deg,rgba(255,249,230,.82),rgba(225,204,163,.62));box-shadow:0 8px 14px rgba(0,0,0,.12);padding:.16rem;cursor:pointer;}
.game-setup-v2 .checker-dot-choice img{width:100%;height:100%;object-fit:contain;display:block;}
.game-setup-v2 .checker-dot-choice.is-selected{box-shadow:0 0 0 3px rgba(202,157,70,.5),0 10px 18px rgba(0,0,0,.16);transform:translateY(-2px);}
.game-setup-v2 .checker-player-card input{font-weight:850!important;}

.board-clean .hint-icon-btn{width:40px!important;min-width:40px!important;height:40px!important;border-radius:999px!important;padding:0!important;font-size:1.1rem!important;font-weight:950!important;line-height:1!important;background:linear-gradient(145deg,#fff8d8,#d6aa4f)!important;color:#102040!important;border:1px solid rgba(80,54,18,.32)!important;box-shadow:0 10px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.8)!important;}
.board-clean .board-card-actions{align-items:center!important;gap:.48rem!important;}
.board-clean .board-question-card{width:clamp(340px,42vw,520px)!important;max-width:54vw!important;max-height:58%!important;top:50%!important;z-index:6!important;}
.board-clean .pawns-layer,.board-clean .full-pawns-layer{z-index:8!important;pointer-events:none!important;}
.board-clean .active-glow{z-index:7!important;}
.board-clean .board-question-card #questionPrompt{font-size:clamp(.88rem,1.02vw,1.03rem)!important;line-height:1.28!important;}
.board-clean .board-answer-options .answer-btn{min-height:42px!important;}
.board-clean .hud-actions .command-btn{background:linear-gradient(145deg,rgba(255,246,219,.94),rgba(217,190,132,.86))!important;border:1px solid rgba(113,76,28,.32)!important;color:#102040!important;font-weight:950!important;box-shadow:0 10px 18px rgba(0,0,0,.16)!important;}
.board-clean .hud-actions .danger-command{background:linear-gradient(145deg,rgba(87,24,33,.92),rgba(151,54,54,.86))!important;color:#fff3d0!important;border-color:rgba(255,214,135,.25)!important;}
.board-clean .points-label{white-space:nowrap!important;}
.board-clean .card-vocab .category-label{background:#163d73!important;color:#fff5d7!important;}
.board-clean .card-passive .category-label,.board-clean .card-usedto .category-label{background:#51306f!important;color:#fff5d7!important;}
.board-clean .card-review .category-label{background:#93611e!important;color:#fff5d7!important;}
.board-clean .card-production .category-label{background:#7d2435!important;color:#fff5d7!important;}
@media (max-width:980px){.board-clean .board-question-card{width:min(78vw,520px)!important;max-width:78vw!important;max-height:58%!important;}}
@media (max-width:720px){.game-setup-v2 .clean-mode-card img{max-height:170px!important}.board-clean .board-question-card{width:min(92vw,460px)!important;max-width:92vw!important;max-height:62%!important;}}


/* === Small dropdown wording + premium setup/deck refinements === */
.sr-only{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.premium-setup-heading{
  display:flex!important;
  align-items:center!important;
  gap:clamp(.8rem,1.5vw,1.25rem)!important;
  padding:clamp(1rem,1.8vw,1.45rem)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,rgba(255,248,223,.88),rgba(221,194,130,.58))!important;
  border:1px solid rgba(229,203,139,.74)!important;
  box-shadow:0 20px 44px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.setup-orb-icon{
  width:clamp(58px,6vw,82px)!important;
  aspect-ratio:1!important;
  border-radius:24px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  background:
    radial-gradient(circle at 38% 30%,rgba(255,255,238,.88),transparent 19%),
    linear-gradient(145deg,#07152d,#10244b 55%,#050b1d)!important;
  border:2px solid rgba(239,210,133,.88)!important;
  box-shadow:0 16px 30px rgba(0,0,0,.24),0 0 24px rgba(222,184,92,.34),inset 0 1px 0 rgba(255,255,255,.18)!important;
  position:relative!important;
  overflow:hidden!important;
}
.setup-orb-icon::before{
  content:""!important;
  position:absolute!important;
  inset:18%!important;
  border:2px solid rgba(239,210,133,.9)!important;
  border-radius:50%!important;
  box-shadow:0 0 0 6px rgba(255,249,220,.08),inset 0 0 18px rgba(239,210,133,.24)!important;
}
.setup-orb-icon::after{
  content:"◆"!important;
  position:absolute!important;
  inset:auto!important;
  color:#f7df94!important;
  font-family:'Playfair Display',serif!important;
  font-weight:800!important;
  font-size:clamp(1.6rem,2.5vw,2.25rem)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.6)!important;
}
.setup-orb-core{opacity:0!important;}
.setup-heading-copy{min-width:0!important;}
.setup-heading-copy p{margin:.2rem 0 0!important;}
.refined-setup-panel .control-field select option[disabled],
.solo-deck-panel select option[disabled]{color:#77664e!important;font-weight:800!important;}
.solo-checker-placeholder{
  display:block!important;
  width:100%!important;
  margin:0 0 .45rem!important;
  color:#7a551c!important;
  font-size:.72rem!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
}
.solo-checker-choice{align-items:center!important;}
.board-clean .premium-card-deck-stage{filter:drop-shadow(0 22px 22px rgba(0,0,0,.18))!important;}
.board-clean .deck-stack{transform:translate(calc(-50% + var(--deck-lift,0px)),-50%) rotateX(62deg) rotateZ(calc(-5deg + var(--deck-tilt,0deg)))!important;}
.board-clean .deck-card-top::before,
.board-clean .reveal-card-back::before,
.board-clean .reveal-card-front::before{
  content:""!important;
  position:absolute!important;
  inset:10px!important;
  border-radius:14px!important;
  border:1px solid rgba(184,132,46,.72)!important;
  background:
    radial-gradient(circle at 12% 12%,rgba(184,132,46,.78) 0 2px,transparent 3px),
    radial-gradient(circle at 88% 12%,rgba(184,132,46,.78) 0 2px,transparent 3px),
    radial-gradient(circle at 12% 88%,rgba(184,132,46,.78) 0 2px,transparent 3px),
    radial-gradient(circle at 88% 88%,rgba(184,132,46,.78) 0 2px,transparent 3px)!important;
  pointer-events:none!important;
}
.board-clean .deck-left{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-9deg) scale(.92);}
.board-clean .deck-right{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(7deg) scale(.92);}
.board-clean .board-question-card.is-shuffling .deck-card-top{animation:bbDeckRiffle .22s ease-in-out 4 alternate!important;}
@keyframes bbDeckRiffle{from{filter:brightness(.96);transform:translate3d(6px,-4px,3px) rotateZ(-1deg)}to{filter:brightness(1.08);transform:translate3d(10px,-12px,18px) rotateZ(2deg)}}
@media (max-width:760px){
  .premium-setup-heading{align-items:flex-start!important;}
  .setup-orb-icon{width:56px!important;border-radius:18px!important;}
}

/* === Unified premium mode card set — 4:3 menu cards === */
.game-setup-v2 .control-room-shell.clean-control-room{
  max-width:min(1280px,calc(100vw - clamp(32px,5vw,96px)))!important;
  gap:clamp(.8rem,1.6vw,1.25rem)!important;
}
.game-setup-v2 .unified-mode-grid,
.game-setup-v2 .clean-mode-grid.unified-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,clamp(280px,26vw,360px))!important;
  gap:clamp(18px,2vw,32px)!important;
  justify-content:center!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
.game-setup-v2 .unified-mode-card,
.game-setup-v2 .clean-mode-card.unified-mode-card{
  width:clamp(280px,26vw,360px)!important;
  aspect-ratio:4/3!important;
  min-height:0!important;
  height:auto!important;
  display:grid!important;
  grid-template-rows:42% 14% 20% 16%!important;
  align-items:center!important;
  justify-items:center!important;
  gap:0!important;
  padding:clamp(18px,2vw,28px)!important;
  border-radius:22px!important;
  overflow:hidden!important;
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.62),transparent 28%),
    linear-gradient(145deg,#F8EBCB 0%,#F4E7C7 48%,#EFE0B8 100%)!important;
  border:2px solid #C5A35A!important;
  box-shadow:18px 22px 42px rgba(11,29,58,.22),inset 0 0 0 1px rgba(255,255,255,.45),inset 0 2px 0 rgba(255,255,255,.58)!important;
  transform:translateY(0)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.game-setup-v2 .unified-mode-card::before{
  content:""!important;
  position:absolute!important;
  inset:10px!important;
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.45)!important;
  pointer-events:none!important;
  z-index:-1!important;
}
.game-setup-v2 .unified-mode-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(115deg,transparent 0 36%,rgba(255,255,255,.18) 42%,transparent 51%),
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.45),transparent 16%)!important;
  opacity:.65!important;
  pointer-events:none!important;
  z-index:-1!important;
}
.game-setup-v2 .unified-mode-card:hover,
.game-setup-v2 .unified-mode-card:focus-visible{
  transform:translateY(-4px)!important;
  box-shadow:20px 28px 54px rgba(11,29,58,.28),0 0 14px rgba(214,175,71,.25),inset 0 0 0 1px rgba(255,255,255,.55)!important;
}
.game-setup-v2 .unified-mode-card.is-active{
  border:3px solid #D6AF47!important;
  box-shadow:20px 28px 56px rgba(11,29,58,.30),0 0 16px rgba(214,175,71,.35),inset 0 0 0 1px rgba(255,255,255,.52)!important;
}
.game-setup-v2 .clean-mode-card > .mode-art,
.game-setup-v2 .clean-mode-card > .mode-card-title,
.game-setup-v2 .clean-mode-card > .mode-card-action{
  display:flex!important;
}
.game-setup-v2 .mode-art{
  width:clamp(116px,44%,166px)!important;
  aspect-ratio:1!important;
  align-self:center!important;
  justify-self:center!important;
  position:relative!important;
  align-items:center!important;
  justify-content:center!important;
  filter:drop-shadow(0 15px 18px rgba(11,29,58,.28))!important;
  background:transparent!important;
}
.game-setup-v2 .mode-art::before,
.game-setup-v2 .mode-art::after,
.game-setup-v2 .mode-art span::before,
.game-setup-v2 .mode-art span::after{
  box-sizing:border-box!important;
}
.game-setup-v2 .mode-card-title{
  align-self:center!important;
  justify-self:center!important;
  margin:0!important;
  font-family:"Montserrat",Inter,sans-serif!important;
  font-size:clamp(1.18rem,1.55vw,1.58rem)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  text-align:center!important;
  color:#0B1D3A!important;
  text-transform:none!important;
}
.game-setup-v2 .unified-mode-card small,
.game-setup-v2 .clean-mode-card.unified-mode-card small{
  align-self:center!important;
  justify-self:center!important;
  max-width:25ch!important;
  margin:0!important;
  padding:0 .35rem!important;
  text-align:center!important;
  color:#6B3F12!important;
  font-family:Inter,Montserrat,sans-serif!important;
  font-size:clamp(.82rem,.95vw,.96rem)!important;
  line-height:1.22!important;
  font-weight:850!important;
}
.game-setup-v2 .mode-card-action{
  align-self:end!important;
  justify-self:center!important;
  width:min(82%,220px)!important;
  height:clamp(38px,3.4vw,46px)!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#0B1D3A,#142D57)!important;
  color:#FFF2C2!important;
  border:1.5px solid #D4AF37!important;
  box-shadow:0 10px 20px rgba(11,29,58,.18),inset 0 1px 0 rgba(255,255,255,.12)!important;
  font-family:Montserrat,Inter,sans-serif!important;
  font-size:clamp(.82rem,.92vw,.95rem)!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  text-align:center!important;
  transition:filter .2s ease,box-shadow .2s ease!important;
}
.game-setup-v2 .unified-mode-card:hover .mode-card-action,
.game-setup-v2 .unified-mode-card:focus-visible .mode-card-action{
  filter:brightness(1.08)!important;
  box-shadow:0 12px 24px rgba(11,29,58,.22),0 0 16px rgba(212,175,55,.22),inset 0 1px 0 rgba(255,255,255,.16)!important;
}

/* CSS-drawn matching icon set */
.game-setup-v2 .mode-art-solo::before{
  content:""!important;
  width:58%!important;
  height:72%!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 35% 25%,rgba(255,255,255,.22),transparent 18%),
    linear-gradient(145deg,#10264c,#081832 70%,#071225)!important;
  border:3px solid #D4AF37!important;
  box-shadow:0 0 0 6px rgba(255,242,194,.18),0 12px 20px rgba(11,29,58,.30),inset 0 0 0 2px rgba(255,255,255,.10)!important;
  transform:rotate(-5deg)!important;
}
.game-setup-v2 .mode-art-solo::after{
  content:""!important;
  position:absolute!important;
  width:42%!important;
  height:54%!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,#FFF5D7,#EFE0B8)!important;
  border:2px solid rgba(212,175,55,.75)!important;
  transform:translate(16%,8%) rotate(4deg)!important;
  box-shadow:0 8px 14px rgba(11,29,58,.18)!important;
}
.game-setup-v2 .solo-card-mark{
  position:absolute!important;
  z-index:2!important;
  width:42%!important;
  aspect-ratio:1!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#FFF2C2,#C8962F)!important;
  color:#0B1D3A!important;
  border:2px solid rgba(11,29,58,.28)!important;
  font-family:"Playfair Display",serif!important;
  font-weight:900!important;
  font-size:clamp(2rem,3.2vw,3rem)!important;
  line-height:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.45)!important;
}
.game-setup-v2 .player-card-left,
.game-setup-v2 .player-card-right{
  position:absolute!important;
  width:40%!important;
  height:58%!important;
  border-radius:15px!important;
  border:3px solid #D4AF37!important;
  background:linear-gradient(145deg,#10264c,#071832)!important;
  box-shadow:0 12px 18px rgba(11,29,58,.26),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.game-setup-v2 .player-card-left{left:14%!important;transform:rotate(-9deg)!important;}
.game-setup-v2 .player-card-right{right:14%!important;transform:rotate(9deg)!important;background:linear-gradient(145deg,#6e1f27,#32101b)!important;}
.game-setup-v2 .player-card-left::before,
.game-setup-v2 .player-card-right::before{
  content:""!important;
  position:absolute!important;
  inset:18%!important;
  border-radius:10px!important;
  border:2px solid rgba(255,242,194,.8)!important;
  background:radial-gradient(circle at 50% 48%,rgba(212,175,55,.65) 0 18%,transparent 20%)!important;
}
.game-setup-v2 .player-versus{
  position:absolute!important;
  z-index:2!important;
  display:grid!important;
  place-items:center!important;
  width:44%!important;
  aspect-ratio:1!important;
  border-radius:50%!important;
  background:radial-gradient(circle,#FFF2C2,#C99635 70%,#86580e)!important;
  color:#0B1D3A!important;
  border:2px solid rgba(11,29,58,.25)!important;
  box-shadow:0 8px 18px rgba(11,29,58,.28),0 0 18px rgba(212,175,55,.28)!important;
  font-family:Montserrat,Inter,sans-serif!important;
  font-size:clamp(1.1rem,1.8vw,1.55rem)!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
}
.game-setup-v2 .mode-art-class{
  gap:7%!important;
  align-items:flex-end!important;
}
.game-setup-v2 .class-piece{
  position:relative!important;
  width:24%!important;
  height:62%!important;
  border-radius:45% 45% 16% 16%!important;
  background:linear-gradient(145deg,#10264c,#071832)!important;
  border:2px solid #D4AF37!important;
  box-shadow:0 12px 18px rgba(11,29,58,.24),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.game-setup-v2 .class-piece::before{
  content:""!important;
  position:absolute!important;
  width:76%!important;
  aspect-ratio:1!important;
  left:12%!important;
  top:-27%!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#FFF2C2,#C79633)!important;
  border:2px solid rgba(11,29,58,.20)!important;
}
.game-setup-v2 .class-piece::after{
  content:""!important;
  position:absolute!important;
  left:-18%!important;
  right:-18%!important;
  bottom:-13%!important;
  height:20%!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#FFF2C2,#B98122)!important;
  border:2px solid rgba(11,29,58,.16)!important;
}
.game-setup-v2 .class-piece-two{height:76%!important;background:linear-gradient(145deg,#0f3a2c,#0a211d)!important;}
.game-setup-v2 .class-piece-three{background:linear-gradient(145deg,#6e1f27,#32101b)!important;}

@media (max-width:1160px){
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
  }
}
@media (max-width:720px){
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
    max-width:420px!important;
    justify-self:center!important;
  }
}

/* === Mode selection landing flow fix: full hero, existing icons, clean options === */
.game-setup-v2 .control-room-shell.clean-control-room{
  max-width:none!important;
  width:100%!important;
  padding:0!important;
  gap:0!important;
}
.game-setup-v2 .video-control-hero{
  min-height:100vh!important;
  height:100vh!important;
  width:100%!important;
  border-radius:0!important;
  margin:0!important;
  padding:clamp(3rem,7vw,6rem) clamp(1.2rem,4vw,4.5rem)!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
}
.game-setup-v2 .control-hero-copy{
  display:grid!important;
  justify-items:center!important;
  align-content:center!important;
  gap:clamp(.8rem,1.6vw,1.2rem)!important;
  max-width:min(960px,92vw)!important;
}
.game-setup-v2 .video-control-hero h1,
.game-setup-v2 .control-hero-copy h1{
  margin:.2rem 0 0!important;
  font-size:clamp(4.8rem,12vw,10rem)!important;
  line-height:.84!important;
}
.game-setup-v2 .control-subtitle{
  max-width:760px!important;
  margin:0 auto!important;
  color:#fff2c9!important;
  font-weight:850!important;
  font-size:clamp(1rem,1.45vw,1.35rem)!important;
}
.choose-mode-cta{
  margin-top:clamp(.75rem,1.8vw,1.35rem)!important;
  min-height:clamp(3rem,4.5vw,3.7rem)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(10px,1.1vw,14px)!important;
  padding:.64rem clamp(1rem,2.3vw,1.55rem)!important;
  border-radius:999px!important;
  border:1.5px solid rgba(255,242,194,.72)!important;
  background:linear-gradient(145deg,rgba(255,246,214,.95),rgba(214,175,71,.92))!important;
  color:#0B1D3A!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-size:clamp(.98rem,1.24vw,1.15rem)!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
  box-shadow:0 18px 34px rgba(0,0,0,.28),0 0 22px rgba(214,175,71,.28),inset 0 1px 0 rgba(255,255,255,.75)!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.choose-mode-cta:hover,
.choose-mode-cta:focus-visible{
  transform:translateY(-2px)!important;
  filter:brightness(1.04)!important;
  box-shadow:0 22px 42px rgba(0,0,0,.34),0 0 28px rgba(214,175,71,.34),inset 0 1px 0 rgba(255,255,255,.84)!important;
}
.choose-mode-cta .choose-mode-cta-icon,
.game-setup-v2 .premium-setup-heading .setup-orb-icon{
  width:clamp(26px,2.4vw,34px)!important;
  height:clamp(26px,2.4vw,34px)!important;
  border-radius:12px!important;
  border-width:1.5px!important;
  box-shadow:0 8px 16px rgba(0,0,0,.18),0 0 12px rgba(214,175,71,.22),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.choose-mode-cta .setup-orb-icon::before,
.game-setup-v2 .premium-setup-heading .setup-orb-icon::before{
  inset:22%!important;
  border-width:1.5px!important;
  box-shadow:0 0 0 4px rgba(255,249,220,.08),inset 0 0 10px rgba(239,210,133,.22)!important;
}
.choose-mode-cta .setup-orb-icon::after,
.game-setup-v2 .premium-setup-heading .setup-orb-icon::after{
  font-size:clamp(.95rem,1.35vw,1.25rem)!important;
}
.hero-scroll-hint{
  margin:.1rem 0 0!important;
  color:rgba(255,246,214,.76)!important;
  font-size:.82rem!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.hero-scroll-hint::after{
  content:"";
  display:block;
  width:10px;
  height:10px;
  margin:.55rem auto 0;
  border-right:2px solid rgba(255,246,214,.72);
  border-bottom:2px solid rgba(255,246,214,.72);
  transform:rotate(45deg);
}
.game-setup-v2 .premium-setup-heading{
  scroll-margin-top:clamp(18px,3vw,44px)!important;
  max-width:min(1160px,calc(100vw - clamp(28px,7vw,120px)))!important;
  margin:clamp(2.2rem,5vw,4rem) auto clamp(1rem,2vw,1.4rem)!important;
  padding:clamp(.72rem,1.3vw,1rem) clamp(1rem,2vw,1.35rem)!important;
  justify-content:center!important;
  text-align:left!important;
  border-radius:999px!important;
}
.game-setup-v2 .setup-heading-copy{
  display:grid!important;
  gap:.12rem!important;
}
.game-setup-v2 .setup-heading-copy .step-kicker,
.game-setup-v2 .badge,
.game-setup-v2 .mode-setup-badge{
  display:inline-flex!important;
  width:max-content!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:1.38rem!important;
  padding:.22rem .62rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#E6C773,#D6AF47)!important;
  color:#0B1D3A!important;
  border:1px solid #FFF2C2!important;
  box-shadow:0 8px 16px rgba(11,29,58,.13),inset 0 1px 0 rgba(255,255,255,.55)!important;
  font-size:clamp(10px,.8vw,12px)!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
.game-setup-v2 .premium-setup-heading h2{
  margin:.12rem 0 0!important;
  color:#0B1D3A!important;
  font-family:'Playfair Display','Montserrat',serif!important;
  font-size:clamp(1.35rem,2.4vw,2rem)!important;
  line-height:1!important;
}
.game-setup-v2 .premium-setup-heading p{
  color:#6B3F12!important;
  font-size:.86rem!important;
  font-weight:800!important;
}
.game-setup-v2 .unified-mode-grid,
.game-setup-v2 .clean-mode-grid.unified-mode-grid{
  grid-template-columns:repeat(3,clamp(280px,26vw,360px))!important;
  gap:clamp(18px,2vw,32px)!important;
  justify-content:center!important;
  align-items:stretch!important;
  max-width:min(1160px,calc(100vw - clamp(28px,7vw,120px)))!important;
  margin:0 auto!important;
  padding:0 0 clamp(1.6rem,3vw,2.6rem)!important;
  overflow:visible!important;
}
.game-setup-v2 .unified-mode-card,
.game-setup-v2 .clean-mode-card.unified-mode-card{
  width:clamp(280px,26vw,360px)!important;
  aspect-ratio:4/3!important;
  min-height:0!important;
  height:auto!important;
  grid-template-rows:42% 12% 20% 16%!important;
  padding:clamp(18px,2vw,28px)!important;
  gap:0!important;
  border-radius:22px!important;
  border:2px solid #C5A35A!important;
  background:linear-gradient(145deg,#F8EBCB 0%,#F4E7C7 48%,#EFE0B8 100%)!important;
  box-shadow:18px 22px 42px rgba(11,29,58,.22),inset 0 0 0 1px rgba(255,255,255,.45),inset 0 2px 0 rgba(255,255,255,.58)!important;
  overflow:hidden!important;
}
.game-setup-v2 .unified-mode-card::before{
  inset:10px!important;
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.45)!important;
}
.game-setup-v2 .unified-mode-card.is-active{
  border:3px solid #D6AF47!important;
  box-shadow:20px 28px 56px rgba(11,29,58,.30),0 0 16px rgba(214,175,71,.35),inset 0 0 0 1px rgba(255,255,255,.52)!important;
}
.game-setup-v2 .unified-mode-card .selected-check{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:4!important;
  width:clamp(22px,2vw,28px)!important;
  height:clamp(22px,2vw,28px)!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:#D6AF47!important;
  color:#0B1D3A!important;
  border:1px solid #FFF2C2!important;
  box-shadow:0 8px 16px rgba(11,29,58,.18)!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-weight:950!important;
  opacity:0!important;
  transform:scale(.82)!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
.game-setup-v2 .unified-mode-card.is-active .selected-check{
  opacity:1!important;
  transform:scale(1)!important;
}
.game-setup-v2 .clean-mode-card > .mode-art-frame,
.game-setup-v2 .unified-mode-card > .mode-art-frame{
  display:grid!important;
  place-items:center!important;
  width:clamp(118px,45%,170px)!important;
  aspect-ratio:1!important;
  align-self:center!important;
  justify-self:center!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
  filter:drop-shadow(0 14px 18px rgba(11,29,58,.24))!important;
  z-index:2!important;
}
.game-setup-v2 .clean-mode-card > .mode-art-frame img,
.game-setup-v2 .unified-mode-card > .mode-art-frame img{
  display:block!important;
  width:78%!important;
  height:78%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 13px 16px rgba(11,29,58,.22))!important;
}
.game-setup-v2 .unified-mode-card .mode-card-title{
  color:#0B1D3A!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-size:clamp(1.1rem,1.45vw,1.45rem)!important;
  letter-spacing:.02em!important;
  font-weight:950!important;
  text-align:center!important;
}
.game-setup-v2 .unified-mode-card small{
  color:#6B3F12!important;
  font-size:clamp(.8rem,.9vw,.94rem)!important;
  line-height:1.22!important;
  max-width:24ch!important;
  padding:0 .3rem!important;
  margin:0!important;
  align-self:center!important;
}
.game-setup-v2 .mode-card-action{
  align-self:end!important;
  width:min(82%,220px)!important;
  height:clamp(38px,3.3vw,46px)!important;
  background:linear-gradient(145deg,#0B1D3A,#142D57)!important;
  color:#FFF2C2!important;
  border:1.5px solid #D4AF37!important;
  border-radius:14px!important;
}
.game-setup-v2 .refined-setup-panel.is-hidden,
.game-setup-v2 #setupPanel.is-hidden{
  display:none!important;
}
.game-setup-v2 .refined-setup-panel{
  max-width:min(1160px,calc(100vw - clamp(28px,7vw,120px)))!important;
  margin:0 auto clamp(2rem,4vw,3rem)!important;
}
.game-setup-v2 .refined-panel-headline{
  margin-bottom:clamp(.9rem,1.6vw,1.25rem)!important;
}
.game-setup-v2 .refined-setup-toolbar{
  grid-template-columns:minmax(220px,1fr) minmax(170px,280px)!important;
  align-items:end!important;
}
.game-setup-v2 .refined-launch-row{
  justify-content:flex-end!important;
  align-items:center!important;
}
@media (max-width:1040px){
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(210px,1fr))!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
  }
}
@media (max-width:760px){
  .game-setup-v2 .video-control-hero{min-height:100vh!important;height:100vh!important;padding-inline:1rem!important;}
  .game-setup-v2 .video-control-hero h1{font-size:clamp(4rem,19vw,6rem)!important;}
  .game-setup-v2 .premium-setup-heading{border-radius:24px!important;align-items:center!important;max-width:calc(100vw - 2rem)!important;}
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
    max-width:min(420px,calc(100vw - 2rem))!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
  }
  .game-setup-v2 .refined-setup-panel{max-width:calc(100vw - 2rem)!important;}
  .game-setup-v2 .refined-setup-toolbar{grid-template-columns:1fr!important;}
}

/* === Premium setup/header polish + smoother card-shuffle animation === */
:root{
  --bb-ink:#0B1D3A;
  --bb-cream:#F8EBCB;
  --bb-cream-2:#EFE0B8;
  --bb-gold:#D6AF47;
  --bb-gold-dark:#9A6A20;
}

.game-setup-v2 .bb-topbar.control-topbar{
  left:clamp(14px,2vw,28px)!important;
  right:clamp(14px,2vw,28px)!important;
  top:clamp(12px,1.6vw,22px)!important;
  width:auto!important;
  padding:.62rem .8rem!important;
  border:1px solid rgba(255,242,194,.30)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(9,18,40,.86),rgba(20,42,78,.72))!important;
  box-shadow:0 18px 36px rgba(4,9,24,.30), inset 0 1px 0 rgba(255,255,255,.10)!important;
  backdrop-filter:blur(14px) saturate(1.08)!important;
}
.game-setup-v2 .bb-brand{
  width:2.45rem!important;
  height:2.45rem!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:radial-gradient(circle at 28% 20%,#fff4c2 0 12%,#d9b95f 38%,#8d5a19 100%)!important;
  color:#0B1D3A!important;
  border:1px solid rgba(255,242,194,.78)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.64)!important;
}
.game-setup-v2 .bb-nav a{
  border-radius:999px!important;
  padding:.62rem .95rem!important;
  color:#FFF2C2!important;
  font-weight:900!important;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease!important;
}
.game-setup-v2 .bb-nav a:hover,
.game-setup-v2 .bb-nav a:focus-visible,
.game-setup-v2 .bb-nav a.is-active{
  background:linear-gradient(135deg,rgba(255,242,194,.16),rgba(214,175,71,.26))!important;
  box-shadow:inset 0 0 0 1px rgba(255,242,194,.28)!important;
  transform:translateY(-1px)!important;
}

.game-setup-v2 .video-control-hero::after{
  content:""!important;
  position:absolute!important;
  width:min(420px,38vw)!important;
  height:min(260px,24vw)!important;
  right:clamp(1rem,5vw,5rem)!important;
  bottom:clamp(1rem,5vw,4rem)!important;
  background:url('../assets/images/ui/question-board-game-concept.webp') center/contain no-repeat!important;
  opacity:.18!important;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.45)) saturate(1.08)!important;
  transform:rotate(-3deg)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.game-setup-v2 .control-hero-copy{position:relative!important;z-index:2!important;}
.game-setup-v2 .choose-mode-cta{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border:1.5px solid rgba(255,242,194,.86)!important;
  background:
    linear-gradient(135deg,rgba(255,250,229,.98),rgba(236,205,125,.98) 48%,rgba(188,128,32,.96))!important;
  box-shadow:0 20px 38px rgba(0,0,0,.32),0 0 28px rgba(214,175,71,.24),inset 0 1px 0 rgba(255,255,255,.76)!important;
}
.game-setup-v2 .choose-mode-cta::after{
  content:""!important;
  position:absolute!important;
  inset:-60% -20%!important;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.45) 48%,transparent 62%)!important;
  transform:translateX(-72%) rotate(6deg)!important;
  opacity:.48!important;
  transition:transform .55s cubic-bezier(.2,.8,.2,1)!important;
  z-index:-1!important;
}
.game-setup-v2 .choose-mode-cta:hover::after,
.game-setup-v2 .choose-mode-cta:focus-visible::after{transform:translateX(72%) rotate(6deg)!important;}
.game-setup-v2 .choose-mode-cta .setup-orb-icon,
.game-setup-v2 .premium-setup-heading .setup-orb-icon{
  background:linear-gradient(145deg,#0B1D3A,#17305d)!important;
  border-color:rgba(214,175,71,.78)!important;
  box-shadow:0 9px 18px rgba(0,0,0,.24),0 0 18px rgba(214,175,71,.20),inset 0 1px 0 rgba(255,255,255,.13)!important;
}
.game-setup-v2 .choose-mode-cta .setup-orb-icon::before,
.game-setup-v2 .premium-setup-heading .setup-orb-icon::before{
  content:""!important;
  position:absolute!important;
  inset:25% 18% 31% 18%!important;
  border-radius:4px!important;
  background:linear-gradient(145deg,#fff7dc,#d7b76a)!important;
  border:1px solid rgba(16,31,64,.38)!important;
  box-shadow:4px 4px 0 rgba(255,248,220,.78),7px 7px 0 rgba(214,175,71,.50),0 6px 12px rgba(0,0,0,.22)!important;
  transform:rotate(-6deg)!important;
}
.game-setup-v2 .choose-mode-cta .setup-orb-icon::after,
.game-setup-v2 .premium-setup-heading .setup-orb-icon::after{
  content:"?"!important;
  position:absolute!important;
  left:50%!important;
  top:48%!important;
  transform:translate(-50%,-50%)!important;
  color:#0B1D3A!important;
  font-family:'Playfair Display',serif!important;
  font-weight:900!important;
  font-size:clamp(.78rem,1vw,1rem)!important;
  text-shadow:none!important;
}
.game-setup-v2 .premium-setup-heading{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,rgba(255,247,220,.97),rgba(239,224,184,.94))!important;
  border:1.5px solid rgba(197,163,90,.88)!important;
  box-shadow:0 20px 44px rgba(11,29,58,.14),inset 0 1px 0 rgba(255,255,255,.70)!important;
}
.game-setup-v2 .premium-setup-heading::after{
  content:""!important;
  position:absolute!important;
  right:1rem!important;
  top:50%!important;
  width:110px!important;
  height:76px!important;
  transform:translateY(-50%) rotate(-5deg)!important;
  background:url('../assets/images/ui/question-cards-reference.webp') center/contain no-repeat!important;
  opacity:.14!important;
  pointer-events:none!important;
}
.game-setup-v2 .refined-setup-panel{
  border:1.5px solid rgba(197,163,90,.88)!important;
  background:linear-gradient(145deg,rgba(255,247,222,.98),rgba(238,221,177,.98))!important;
  box-shadow:0 24px 54px rgba(11,29,58,.16),inset 0 1px 0 rgba(255,255,255,.70)!important;
}
.game-setup-v2 .refined-setup-toolbar select{
  border:1px solid rgba(11,29,58,.14)!important;
  box-shadow:0 10px 24px rgba(11,29,58,.10),inset 0 1px 0 rgba(255,255,255,.72)!important;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease!important;
}
.game-setup-v2 .refined-setup-toolbar select:hover,
.game-setup-v2 .refined-setup-toolbar select:focus{
  border-color:rgba(214,175,71,.72)!important;
  box-shadow:0 14px 28px rgba(11,29,58,.13),0 0 0 3px rgba(214,175,71,.18),inset 0 1px 0 rgba(255,255,255,.76)!important;
  transform:translateY(-1px)!important;
}
.game-setup-v2 .refined-launch-row .big-launch,
.game-setup-v2 .refined-launch-row .command-btn{
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease!important;
}
.game-setup-v2 .refined-launch-row .big-launch:hover,
.game-setup-v2 .refined-launch-row .command-btn:hover{
  transform:translateY(-2px)!important;
  filter:brightness(1.03)!important;
}

.board-clean .board-top-hud{
  border:1px solid rgba(255,242,194,.26)!important;
  background:linear-gradient(135deg,rgba(9,18,40,.90),rgba(18,39,74,.82))!important;
  box-shadow:0 18px 44px rgba(3,8,20,.36), inset 0 1px 0 rgba(255,255,255,.10)!important;
  backdrop-filter:blur(14px) saturate(1.08)!important;
}
.board-clean .command-home,
.board-clean .command-actions.hud-actions .command-btn{
  min-height:2.55rem!important;
  border-radius:999px!important;
  border:1px solid rgba(255,242,194,.32)!important;
  background:linear-gradient(145deg,rgba(255,242,194,.13),rgba(214,175,71,.13) 46%,rgba(11,29,58,.30))!important;
  color:#FFF2C2!important;
  box-shadow:0 10px 22px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.10)!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-weight:900!important;
  letter-spacing:.015em!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease!important;
}
.board-clean .command-home:hover,
.board-clean .command-home:focus-visible,
.board-clean .command-actions.hud-actions .command-btn:hover,
.board-clean .command-actions.hud-actions .command-btn:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(214,175,71,.72)!important;
  background:linear-gradient(145deg,rgba(255,242,194,.20),rgba(214,175,71,.22) 48%,rgba(22,48,88,.44))!important;
  box-shadow:0 16px 30px rgba(0,0,0,.30),0 0 18px rgba(214,175,71,.18),inset 0 1px 0 rgba(255,255,255,.14)!important;
}
.board-clean .command-actions.hud-actions .danger-command{
  background:linear-gradient(145deg,rgba(128,26,35,.76),rgba(75,14,24,.80))!important;
  border-color:rgba(255,194,194,.25)!important;
}
.board-clean .command-actions.hud-actions .danger-command:hover,
.board-clean .command-actions.hud-actions .danger-command:focus-visible{
  border-color:rgba(255,220,196,.55)!important;
  box-shadow:0 16px 30px rgba(0,0,0,.30),0 0 18px rgba(166,54,54,.24),inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.board-clean .hud-turn-block,
.board-clean .hud-score-strip{
  border:1px solid rgba(255,242,194,.20)!important;
  background:linear-gradient(145deg,rgba(255,242,194,.10),rgba(11,29,58,.14))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}

.board-clean .premium-card-deck-stage::before{
  content:""!important;
  position:absolute!important;
  inset:10px 18px 0!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center,rgba(214,175,71,.16),rgba(11,29,58,.03) 56%,transparent 72%)!important;
  opacity:.9!important;
  transform:translateY(12px)!important;
  pointer-events:none!important;
}
.board-clean .premium-card-deck-stage::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:48%!important;
  width:330px!important;
  height:150px!important;
  border-radius:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg) scale(.82)!important;
  border:1px solid rgba(214,175,71,.0)!important;
  opacity:0!important;
  pointer-events:none!important;
}
.board-clean .board-question-card.is-shuffling .premium-card-deck-stage::after{
  border-color:rgba(214,175,71,.55)!important;
  box-shadow:0 0 24px rgba(214,175,71,.34), inset 0 0 22px rgba(255,242,194,.16)!important;
  animation:bbShuffleGoldSweep .72s cubic-bezier(.4,.0,.2,1) both!important;
}
.board-clean .board-question-card.is-shuffling .deck-main{animation:bbDeckMainShuffleFluid .72s cubic-bezier(.4,.0,.2,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-left{opacity:1!important;animation:bbDeckLeftShuffleFluid .72s cubic-bezier(.4,.0,.2,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-right{opacity:1!important;animation:bbDeckRightShuffleFluid .72s cubic-bezier(.4,.0,.2,1) both!important;}
.board-clean .board-question-card.is-shuffling .deck-card-top{animation:bbDeckRiffleFluid .72s cubic-bezier(.4,.0,.2,1) both!important;}

/* Gold sweep ring pulse — one clean pulse, not three orbits. */
@keyframes bbShuffleGoldSweep{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}
  30%{opacity:.95;transform:translate(-50%,-50%) scale(1.05)}
  70%{opacity:.55;transform:translate(-50%,-50%) scale(1.0)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.92)}
}

/* Main card: tilts upright during the riffle (45° instead of 62°) so lateral
   spread reads clearly, then settles back to the resting 62°. */
@keyframes bbDeckMainShuffleFluid{
  0%   {transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg) scale(1)}
  20%  {transform:translate(-50%,-52%) rotateX(50deg) rotateZ(-2deg) scale(1.02)}
  50%  {transform:translate(-50%,-55%) rotateX(45deg) rotateZ(3deg)  scale(1.05)}
  80%  {transform:translate(-50%,-49%) rotateX(58deg) rotateZ(-9deg) scale(.99)}
  100% {transform:translate(-50%,-50%) rotateX(62deg) rotateZ(-5deg) scale(1)}
}

/* Left half: fans out left with strong Z-tilt, swings back across the deck
   in the riffle interleave, then fades as it stacks back in. */
@keyframes bbDeckLeftShuffleFluid{
  0%   {opacity:0; transform:translate(-50%,-50%)   rotateX(50deg) rotateZ(-5deg)  scale(.94)}
  18%  {opacity:1; transform:translate(-95%,-58%)   rotateX(45deg) rotateZ(-18deg) scale(.96)}
  50%  {opacity:1; transform:translate(-35%,-55%)   rotateX(45deg) rotateZ(0deg)   scale(.98)}
  78%  {opacity:.85; transform:translate(-70%,-50%) rotateX(55deg) rotateZ(-10deg) scale(.96)}
  100% {opacity:0; transform:translate(-50%,-50%)   rotateX(62deg) rotateZ(-5deg)  scale(.94)}
}

/* Right half: mirror — fans out right, swings back across, restacks. */
@keyframes bbDeckRightShuffleFluid{
  0%   {opacity:0; transform:translate(-50%,-50%)   rotateX(50deg) rotateZ(-5deg) scale(.94)}
  18%  {opacity:1; transform:translate(-5%,-58%)    rotateX(45deg) rotateZ(14deg) scale(.96)}
  50%  {opacity:1; transform:translate(-65%,-55%)   rotateX(45deg) rotateZ(-2deg) scale(.98)}
  78%  {opacity:.85; transform:translate(-30%,-50%) rotateX(55deg) rotateZ(6deg)  scale(.96)}
  100% {opacity:0; transform:translate(-50%,-50%)   rotateX(62deg) rotateZ(-5deg) scale(.94)}
}

/* Top card: pops up during the riffle, brightens, drops back. */
@keyframes bbDeckRiffleFluid{
  0%   {filter:brightness(1);    transform:translate3d(0,0,0) rotateZ(0)}
  35%  {filter:brightness(1.08); transform:translate3d(2px,-10px,15px) rotateZ(-2deg)}
  65%  {filter:brightness(1.10); transform:translate3d(-2px,-14px,22px) rotateZ(2deg)}
  100% {filter:brightness(1);    transform:translate3d(0,0,0) rotateZ(0)}
}
@media (max-width:760px){
  .game-setup-v2 .video-control-hero::after{width:68vw!important;height:42vw!important;right:50%!important;bottom:1rem!important;transform:translateX(50%) rotate(-3deg)!important;opacity:.10!important;}
  .game-setup-v2 .premium-setup-heading::after{display:none!important;}
  .board-clean .command-actions.hud-actions .command-btn{min-height:2.35rem!important;padding-inline:.68rem!important;}
}

/* === Final classroom HUD/card refinements: solo HUD, class score wrap, transparent tokens, no inner scroll === */
.board-clean.solo-mode .board-top-hud{
  grid-template-columns:auto minmax(280px,1fr) auto auto!important;
  min-height:76px!important;
  gap:.7rem!important;
  padding:.5rem .75rem!important;
}
.board-clean.solo-mode .hud-turn-block{
  justify-self:start!important;
  max-width:520px!important;
}
.board-clean.solo-mode .hud-score-strip{
  grid-template-columns:1fr!important;
  width:auto!important;
  min-width:0!important;
  max-width:220px!important;
  padding:.18rem!important;
  border-radius:18px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  justify-self:end!important;
}
.board-clean.solo-mode .hud-score-strip .score-title-mini{display:none!important;}
.board-clean.solo-mode .top-score-board{
  display:flex!important;
  overflow:visible!important;
  padding:0!important;
  gap:0!important;
}
.board-clean.solo-mode .top-score-board .solo-score-card,
.board-clean.solo-mode .top-score-board .full-team-score{
  min-width:168px!important;
  max-width:210px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:.46rem!important;
  row-gap:.02rem!important;
  padding:.38rem .52rem!important;
  border-radius:16px!important;
}
.board-clean.solo-mode .top-score-board .team-token{grid-row:1 / span 2!important;width:30px!important;height:30px!important;}
.board-clean.solo-mode .top-score-board strong{font-size:.78rem!important;line-height:1.05!important;}
.board-clean.solo-mode .top-score-board small{font-size:.58rem!important;line-height:1!important;}
.board-clean.solo-mode .top-score-board b{grid-row:1 / span 2!important;font-size:1rem!important;min-width:2.2rem!important;text-align:center!important;}
.board-clean.solo-mode .hud-dice-area{justify-self:center!important;}
.board-clean.solo-mode .hud-actions{justify-self:end!important;display:flex!important;align-items:center!important;gap:.5rem!important;}

.board-clean.class-mode .hud-score-strip,
.board-clean.team-mode .hud-score-strip{
  overflow:visible!important;
  min-width:0!important;
}
.board-clean.class-mode .top-score-board,
.board-clean.team-mode .top-score-board{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(104px,1fr))!important;
  align-items:center!important;
  gap:.36rem!important;
  overflow:visible!important;
  scrollbar-width:none!important;
  padding:.05rem!important;
  width:100%!important;
}
.board-clean.class-mode .top-score-board::-webkit-scrollbar,
.board-clean.team-mode .top-score-board::-webkit-scrollbar{display:none!important;}
.board-clean.class-mode .top-score-board .full-team-score,
.board-clean.team-mode .top-score-board .full-team-score{
  min-width:0!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  column-gap:.36rem!important;
  padding:.32rem .42rem!important;
  border-radius:14px!important;
}
.board-clean.class-mode .top-score-board .team-token,
.board-clean.team-mode .top-score-board .team-token{grid-row:1 / span 2!important;width:26px!important;height:28px!important;align-self:center!important;}
.board-clean.class-mode .top-score-board strong,
.board-clean.team-mode .top-score-board strong{font-size:.72rem!important;line-height:1.05!important;}
.board-clean.class-mode .top-score-board small,
.board-clean.team-mode .top-score-board small{font-size:.54rem!important;line-height:1!important;}
.board-clean.class-mode .top-score-board b,
.board-clean.team-mode .top-score-board b{grid-row:1 / span 2!important;align-self:center!important;font-size:.92rem!important;min-width:1.7rem!important;padding:.08rem .22rem!important;}

/* Remove the square/card container behind board tokens. */
.board-clean .full-pawn,
.board-v3 .full-pawn{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  filter:drop-shadow(0 12px 11px rgba(0,0,0,.36))!important;
}
.board-clean .full-pawn .pawn-piece,
.board-v3 .full-pawn .pawn-piece{
  width:100%!important;
  height:118%!important;
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  filter:saturate(1.08) contrast(1.04) drop-shadow(0 8px 8px rgba(0,0,0,.26))!important;
}
.board-clean .full-pawn.is-active,
.board-v3 .full-pawn.is-active{
  box-shadow:none!important;
  filter:drop-shadow(0 0 10px rgba(245,215,128,.55)) drop-shadow(0 14px 12px rgba(0,0,0,.38))!important;
}
.board-clean .full-pawn.is-active::after,
.board-v3 .full-pawn.is-active::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:50%!important;
  bottom:.2rem!important;
  width:44px!important;
  height:12px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse,rgba(245,215,128,.55),rgba(245,215,128,.16) 55%,transparent 78%)!important;
  z-index:-1!important;
}
.board-clean .full-pawn small,
.board-v3 .full-pawn small{
  bottom:-.55rem!important;
  box-shadow:0 5px 10px rgba(0,0,0,.28)!important;
}
.board-clean .team-token.piece-token,
.board-v3 .team-token.piece-token{
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}
.board-clean .team-token.piece-token img,
.board-v3 .team-token.piece-token img{
  width:100%!important;
  height:120%!important;
  transform:none!important;
  object-fit:contain!important;
  filter:drop-shadow(0 4px 4px rgba(0,0,0,.22))!important;
}

/* Wider, compact active card: avoid internal scrolling on classroom screens. */
.board-clean .board-question-card:not(.is-ready),
.board-v3.board-clean .board-question-card:not(.is-ready){
  width:clamp(620px,68vw,900px)!important;
  max-width:76vw!important;
  max-height:min(500px,61vh)!important;
  min-height:0!important;
  top:49%!important;
}
.board-clean .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{
  overflow:visible!important;
  display:grid!important;
  grid-template-rows:auto auto auto minmax(0,auto) auto auto auto!important;
  gap:clamp(.34rem,.75vw,.58rem)!important;
  padding:clamp(.75rem,1.1vw,1.05rem) clamp(1rem,1.6vw,1.35rem)!important;
  min-height:0!important;
}
.board-clean .board-question-card:not(.is-ready) h1{font-size:clamp(1.75rem,2.5vw,3rem)!important;margin:0!important;line-height:.92!important;}
.board-clean .board-question-card:not(.is-ready) #questionPrompt{font-size:clamp(.9rem,1.05vw,1.06rem)!important;line-height:1.18!important;}
.board-clean .board-answer-options,
.board-v3 .board-answer-options{gap:.30rem!important;margin-top:.1rem!important;}
.board-clean .board-answer-options .answer-btn,
.board-v3 .board-answer-options .answer-btn{
  min-height:40px!important;
  padding:.42rem .62rem!important;
  border-radius:13px!important;
  font-size:.82rem!important;
  line-height:1.12!important;
}
.board-clean .support-box,
.board-v3 .support-box{max-height:78px!important;overflow:visible!important;padding:.44rem .62rem!important;}
.board-clean .board-card-actions,
.board-v3 .board-card-actions{gap:.36rem!important;margin-top:0!important;align-items:center!important;}
.board-clean .board-card-actions .btn,
.board-v3 .board-card-actions .btn{min-height:36px!important;padding:.38rem .72rem!important;font-size:.78rem!important;}
.board-clean .board-feedback,
.board-v3 .board-feedback{
  min-height:1.7rem!important;
  padding:.34rem .62rem!important;
  margin-top:0!important;
  font-size:.76rem!important;
  line-height:1.16!important;
  white-space:normal!important;
}
@media (min-width:1120px){
  .board-clean.class-mode .board-top-hud{grid-template-columns:auto minmax(220px,.75fr) minmax(620px,2.1fr) minmax(76px,auto) minmax(285px,auto)!important;}
  .board-clean.team-mode .board-top-hud{grid-template-columns:auto minmax(240px,1fr) minmax(460px,1.4fr) minmax(76px,auto) minmax(285px,auto)!important;}
}
@media (max-width:900px){
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){width:min(92vw,680px)!important;max-width:92vw!important;max-height:58vh!important;}
  .board-clean .board-question-card:not(.is-ready) .question-card-inner{overflow:auto!important;}
}

/* === FINAL CARD SAFE-AREA PATCH — keep question card inside board center === */
.board-clean .command-home,
.board-v3 .command-home{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:106px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0 .95rem!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,#25304a 0%,#17213a 58%,#10182c 100%)!important;
  border:1px solid rgba(226,198,132,.42)!important;
  color:#fff3c7!important;
  font-size:.78rem!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:0 10px 20px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.board-clean .command-home:hover,
.board-clean .command-home:focus-visible,
.board-v3 .command-home:hover,
.board-v3 .command-home:focus-visible{
  transform:translateY(-1px)!important;
  background:linear-gradient(145deg,#33405e 0%,#1c2a4a 60%,#111b36 100%)!important;
  border-color:rgba(245,215,128,.68)!important;
  box-shadow:0 14px 24px rgba(0,0,0,.36),0 0 0 3px rgba(226,198,132,.18),inset 0 1px 0 rgba(255,255,255,.18)!important;
}

.board-clean.class-mode .hud-score-strip,
.board-clean.team-mode .hud-score-strip{
  height:auto!important;
  min-height:58px!important;
  max-height:74px!important;
  overflow:hidden!important;
  padding:.25rem .36rem!important;
}
.board-clean.class-mode .top-score-board,
.board-clean.team-mode .top-score-board{
  display:grid!important;
  align-items:center!important;
  gap:.24rem!important;
  width:100%!important;
  max-height:66px!important;
  overflow:hidden!important;
  padding:0!important;
}
.board-clean.class-mode .top-score-board{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.board-clean.team-mode .top-score-board{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.board-clean.class-mode .top-score-board .full-team-score,
.board-clean.team-mode .top-score-board .full-team-score{
  min-width:0!important;
  max-width:none!important;
  min-height:28px!important;
  height:30px!important;
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr) auto!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  column-gap:.3rem!important;
  padding:.18rem .32rem!important;
  border-radius:999px!important;
  overflow:hidden!important;
}
.board-clean.class-mode .top-score-board .team-token,
.board-clean.team-mode .top-score-board .team-token{
  grid-row:1!important;
  width:22px!important;
  height:24px!important;
  align-self:center!important;
}
.board-clean.class-mode .top-score-board .team-token img,
.board-clean.team-mode .top-score-board .team-token img{
  width:100%!important;
  height:116%!important;
  object-fit:contain!important;
}
.board-clean.class-mode .top-score-board strong,
.board-clean.team-mode .top-score-board strong{
  grid-row:1!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.66rem!important;
  line-height:1!important;
}
.board-clean.class-mode .top-score-board small,
.board-clean.team-mode .top-score-board small{
  display:none!important;
}
.board-clean.class-mode .top-score-board b,
.board-clean.team-mode .top-score-board b{
  grid-row:1!important;
  align-self:center!important;
  justify-self:end!important;
  min-width:1.45rem!important;
  padding:.08rem .22rem!important;
  border-radius:999px!important;
  font-size:.76rem!important;
  line-height:1!important;
  text-align:center!important;
}

.board-clean .board-question-card:not(.is-ready),
.board-v3.board-clean .board-question-card:not(.is-ready){
  left:50%!important;
  top:42.5%!important;
  transform:translate(-50%,-50%)!important;
  width:min(72%,820px)!important;
  max-width:72%!important;
  max-height:52%!important;
  min-height:0!important;
  height:auto!important;
  border-radius:24px!important;
  overflow:hidden!important;
  z-index:6!important;
}
.board-clean.solo-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.solo-mode .board-question-card:not(.is-ready){
  width:min(68%,760px)!important;
  max-width:68%!important;
  top:43%!important;
  max-height:54%!important;
}
.board-clean.team-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.team-mode .board-question-card:not(.is-ready){
  width:min(70%,790px)!important;
  max-width:70%!important;
}
.board-clean.class-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.class-mode .board-question-card:not(.is-ready){
  width:min(72%,820px)!important;
  max-width:72%!important;
}
.board-clean .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
  gap:clamp(.22rem,.55vw,.42rem)!important;
  padding:clamp(.68rem,1vw,.95rem) clamp(.9rem,1.35vw,1.2rem)!important;
}
.board-clean .board-question-card:not(.is-ready) .question-topline,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-topline{
  flex:0 0 auto!important;
  margin:0!important;
}
.board-clean .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-question-card:not(.is-ready) h1{
  flex:0 0 auto!important;
  font-size:clamp(1.75rem,2.35vw,2.75rem)!important;
  line-height:.92!important;
  margin:.02rem 0 .08rem!important;
}
.board-clean .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{
  flex:0 0 auto!important;
  max-width:100%!important;
  font-size:clamp(.82rem,.98vw,1rem)!important;
  line-height:1.22!important;
  margin:0!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:clamp(118px,19vh,190px)!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:.28rem!important;
  margin:.05rem 0 .12rem!important;
  overflow:auto!important;
  scrollbar-width:thin!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options:empty,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options:empty{
  display:none!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn{
  min-height:36px!important;
  padding:.42rem .58rem!important;
  border-radius:13px!important;
  font-size:clamp(.72rem,.84vw,.86rem)!important;
  line-height:1.12!important;
}
.board-clean .board-question-card:not(.is-ready) .support-box,
.board-v3.board-clean .board-question-card:not(.is-ready) .support-box,
.board-clean .board-question-card:not(.is-ready) .power-tools,
.board-v3.board-clean .board-question-card:not(.is-ready) .power-tools{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:clamp(80px,18vh,170px)!important;
  overflow:auto!important;
  margin:.05rem 0 .12rem!important;
  scrollbar-width:thin!important;
}
.board-clean .board-question-card:not(.is-ready) .support-box.hidden,
.board-v3.board-clean .board-question-card:not(.is-ready) .support-box.hidden,
.board-clean .board-question-card:not(.is-ready) .power-tools.hidden,
.board-v3.board-clean .board-question-card:not(.is-ready) .power-tools.hidden{
  display:none!important;
}
.board-clean .board-card-actions,
.board-v3.board-clean .board-card-actions,
.board-clean .board-question-card:not(.is-ready) .board-card-actions,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-card-actions{
  flex:0 0 auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.38rem!important;
  margin:.08rem 0 0!important;
  padding:0!important;
  width:100%!important;
  position:static!important;
}
.board-clean .board-card-actions .btn,
.board-v3.board-clean .board-card-actions .btn{
  flex:0 1 auto!important;
  min-height:34px!important;
  padding:.38rem .68rem!important;
  border-radius:999px!important;
  font-size:clamp(.68rem,.8vw,.78rem)!important;
  line-height:1!important;
  position:static!important;
}
.board-clean .hint-icon-btn,
.board-v3.board-clean .hint-icon-btn{
  flex:0 0 38px!important;
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 22%,#fff7c8 0%,#e7bd62 48%,#a06f24 100%)!important;
  border:1px solid rgba(86,58,18,.38)!important;
  color:#102040!important;
  font-size:1.04rem!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:0 8px 14px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.78)!important;
  position:static!important;
  transform:none!important;
}
.board-clean .hint-icon-btn:hover,
.board-clean .hint-icon-btn:focus-visible,
.board-v3.board-clean .hint-icon-btn:hover,
.board-v3.board-clean .hint-icon-btn:focus-visible{
  transform:translateY(-1px)!important;
  box-shadow:0 11px 18px rgba(0,0,0,.26),0 0 0 3px rgba(226,198,132,.2),inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.board-clean .hint-icon-btn.hidden,
.board-v3.board-clean .hint-icon-btn.hidden,
.board-clean .board-card-actions .hidden,
.board-v3.board-clean .board-card-actions .hidden{
  display:none!important;
}
.board-clean .board-question-card:not(.is-ready) .board-feedback,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-feedback{
  flex:0 0 auto!important;
  margin:.12rem 0 0!important;
  min-height:1.55rem!important;
  padding:.3rem .55rem!important;
  font-size:clamp(.66rem,.78vw,.76rem)!important;
  line-height:1.14!important;
  overflow:hidden!important;
}
.board-clean .pawns-layer,
.board-clean .full-pawns-layer,
.board-v3.board-clean .pawns-layer,
.board-v3.board-clean .full-pawns-layer{
  z-index:7!important;
  pointer-events:none!important;
}

@media (max-width:1180px){
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){
    width:min(78%,760px)!important;
    max-width:78%!important;
    top:44%!important;
    max-height:54%!important;
  }
  .board-clean .board-question-card:not(.is-ready) h1,
  .board-v3.board-clean .board-question-card:not(.is-ready) h1{font-size:clamp(1.55rem,2.8vw,2.35rem)!important;}
}
@media (max-width:920px){
  .board-clean.class-mode .top-score-board{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .board-clean.team-mode .top-score-board{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){
    width:min(86vw,680px)!important;
    max-width:86vw!important;
    top:46%!important;
    max-height:56%!important;
  }
  .board-clean .board-question-card:not(.is-ready) .question-card-inner,
  .board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{overflow:auto!important;}
}
@media (max-width:720px){
  .board-clean .command-home,
  .board-v3 .command-home{width:100%!important;}
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){
    width:min(92vw,560px)!important;
    max-width:92vw!important;
    top:49%!important;
    max-height:60%!important;
  }
  .board-clean .board-question-card:not(.is-ready) .board-card-actions,
  .board-v3.board-clean .board-question-card:not(.is-ready) .board-card-actions{gap:.3rem!important;}
  .board-clean .board-card-actions .btn,
  .board-v3.board-clean .board-card-actions .btn{min-height:34px!important;padding:.36rem .56rem!important;}
  .board-clean .hint-icon-btn,
  .board-v3.board-clean .hint-icon-btn{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;}
}

/* === Final mode-card icon placement fix: keep 4:3 ratio, show uploaded icons, move descriptions down === */
.game-setup-v2 .unified-mode-grid,
.game-setup-v2 .clean-mode-grid.unified-mode-grid{
  grid-template-columns:repeat(3,clamp(300px,29vw,390px))!important;
  gap:clamp(20px,2.25vw,36px)!important;
  align-items:stretch!important;
}
.game-setup-v2 .unified-mode-card,
.game-setup-v2 .clean-mode-card.unified-mode-card{
  width:clamp(300px,29vw,390px)!important;
  aspect-ratio:4/3!important;
  min-height:0!important;
  height:auto!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  align-items:stretch!important;
  justify-items:center!important;
  gap:clamp(.45rem,.9vw,.75rem)!important;
  padding:clamp(14px,1.45vw,21px)!important;
  overflow:hidden!important;
}
.game-setup-v2 .unified-mode-card .selected-check{
  top:12px!important;
  right:12px!important;
}
.game-setup-v2 .clean-mode-card > .mode-art-frame,
.game-setup-v2 .unified-mode-card > .mode-art-frame{
  grid-row:1!important;
  grid-column:1!important;
  width:min(66%,210px)!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  align-self:end!important;
  justify-self:center!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 14px 18px rgba(11,29,58,.22))!important;
  z-index:3!important;
}
.game-setup-v2 .clean-mode-card > .mode-art-frame img,
.game-setup-v2 .unified-mode-card > .mode-art-frame img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:20px!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
}
.game-setup-v2 .unified-mode-card > .mode-card-title,
.game-setup-v2 .clean-mode-card.unified-mode-card > .mode-card-title,
.game-setup-v2 .unified-mode-card > .mode-card-action,
.game-setup-v2 .clean-mode-card.unified-mode-card > .mode-card-action{
  display:none!important;
}
.game-setup-v2 .unified-mode-card small,
.game-setup-v2 .clean-mode-card.unified-mode-card small{
  grid-row:2!important;
  grid-column:1!important;
  align-self:end!important;
  justify-self:center!important;
  display:block!important;
  width:min(88%,29ch)!important;
  max-width:29ch!important;
  min-height:2.35em!important;
  margin:0 0 clamp(.35rem,.7vw,.65rem)!important;
  padding:0!important;
  color:#6B3F12!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:clamp(.84rem,.98vw,1rem)!important;
  line-height:1.22!important;
  font-weight:900!important;
  text-align:center!important;
  z-index:3!important;
}
@media (max-width:1040px){
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
    max-width:calc(100vw - 2rem)!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
  }
  .game-setup-v2 .clean-mode-card > .mode-art-frame,
  .game-setup-v2 .unified-mode-card > .mode-art-frame{
    width:min(62%,178px)!important;
  }
}
@media (max-width:760px){
  .game-setup-v2 .unified-mode-grid,
  .game-setup-v2 .clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
    max-width:min(430px,calc(100vw - 2rem))!important;
  }
  .game-setup-v2 .unified-mode-card,
  .game-setup-v2 .clean-mode-card.unified-mode-card{
    width:100%!important;
    aspect-ratio:4/3!important;
  }
  .game-setup-v2 .clean-mode-card > .mode-art-frame,
  .game-setup-v2 .unified-mode-card > .mode-art-frame{
    width:min(64%,198px)!important;
  }
}

/* === Emergency fix: force the uploaded mode icons to show above the descriptions ===
   Earlier cleanup hid direct span children on clean mode cards. These images are also spans,
   so this higher-specificity override restores only the icon frame. */
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  grid-row:1!important;
  grid-column:1!important;
  width:min(70%,230px)!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  align-self:center!important;
  justify-self:center!important;
  place-items:center!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  border-radius:24px!important;
  box-shadow:none!important;
  filter:drop-shadow(0 16px 20px rgba(11,29,58,.28))!important;
  position:relative!important;
  z-index:5!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame > img,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame > img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:22px!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
  position:relative!important;
  z-index:6!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > small{
  grid-row:2!important;
  align-self:end!important;
  margin-bottom:clamp(.45rem,.8vw,.75rem)!important;
}
@media (max-width:1040px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame,
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    width:min(68%,205px)!important;
  }
}
@media (max-width:760px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame,
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    width:min(68%,220px)!important;
  }
}


/* === Final clean mode icons: remove hero hint, crop-safe icon placement, no overlap === */
.game-setup-v2 .hero-scroll-hint{
  display:none!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
  grid-template-columns:repeat(3,clamp(300px,29vw,390px))!important;
  gap:clamp(22px,2.4vw,34px)!important;
  align-items:stretch!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
  width:clamp(300px,29vw,390px)!important;
  aspect-ratio:4/3!important;
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:clamp(16px,1.55vw,22px)!important;
  overflow:hidden!important;
  position:relative!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  place-items:center!important;
  flex:0 0 auto!important;
  width:clamp(112px,36%,150px)!important;
  height:auto!important;
  aspect-ratio:auto!important;
  align-self:center!important;
  justify-self:center!important;
  margin:clamp(4px,.7vw,10px) auto clamp(10px,1vw,14px)!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 16px 18px rgba(7,18,35,.32))!important;
  z-index:4!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame > img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:clamp(150px,17vw,205px)!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-title,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-action{
  display:none!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > small{
  display:block!important;
  flex:0 0 auto!important;
  width:min(88%,30ch)!important;
  max-width:30ch!important;
  min-height:2.4em!important;
  margin:auto auto clamp(.45rem,.8vw,.72rem)!important;
  padding:0!important;
  color:#6B3F12!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:clamp(.85rem,.98vw,1rem)!important;
  font-weight:900!important;
  line-height:1.22!important;
  text-align:center!important;
  text-shadow:0 1px 0 rgba(255,250,230,.55)!important;
  position:relative!important;
  z-index:5!important;
}
@media (max-width:1040px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
    max-width:calc(100vw - 2rem)!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
    width:100%!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    width:clamp(104px,34%,138px)!important;
  }
}
@media (max-width:760px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
    max-width:min(430px,calc(100vw - 2rem))!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
    width:100%!important;
    aspect-ratio:4/3!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    width:clamp(118px,36%,156px)!important;
  }
}

/* === Premium unified player tokens: selection panel + board integration === */
.game-setup-v2 .refined-setup-panel{
  background:
    radial-gradient(circle at 10% 0%,rgba(255,255,255,.72),transparent 32%),
    linear-gradient(145deg,#F8EBCB 0%,#EFE0B8 100%)!important;
  border:1px solid rgba(214,175,71,.62)!important;
  box-shadow:0 24px 52px rgba(7,15,34,.24),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.game-setup-v2 .refined-setup-panel .mode-setup-badge,
.game-setup-v2 .refined-setup-panel .checker-player-fields label > span,
.game-setup-v2 .refined-setup-panel .control-field > span{
  color:#6B3F12!important;
}
.game-setup-v2 .refined-setup-panel input,
.game-setup-v2 .refined-setup-panel select,
.game-setup-v2 .refined-setup-panel .checker-player-fields input,
.game-setup-v2 .refined-setup-panel .checker-player-fields select{
  background:#FFFDF6!important;
  color:#0B1D3A!important;
  border:1px solid rgba(107,63,18,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 8px 16px rgba(77,47,15,.08)!important;
}
.game-setup-v2 .refined-setup-panel .checker-player-card.fixed-checker-card{
  grid-template-columns:clamp(88px,8vw,118px) minmax(0,1fr)!important;
  min-height:clamp(150px,13vw,176px)!important;
  padding:clamp(.78rem,1.2vw,1rem)!important;
  gap:clamp(.72rem,1.1vw,1rem)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 15% 6%,rgba(255,255,255,.84),transparent 35%),
    linear-gradient(145deg,#F8EBCB 0%,#EFE0B8 100%)!important;
  border:1px solid rgba(197,163,90,.55)!important;
  box-shadow:0 16px 30px rgba(62,38,12,.16),inset 0 1px 0 rgba(255,255,255,.74)!important;
  overflow:visible!important;
}
.game-setup-v2 .refined-setup-panel .checker-player-card.fixed-checker-card::before{
  width:4px!important;
  border-radius:999px!important;
  inset:16px auto 16px 0!important;
  background:linear-gradient(180deg,#D6AF47,var(--checker-color),#C5A35A)!important;
  opacity:.95!important;
}
.game-setup-v2 .refined-setup-panel .checker-preview-frame,
.game-setup-v2 .refined-setup-panel .fixed-checker-card .checker-preview-frame{
  width:clamp(86px,8vw,116px)!important;
  height:clamp(118px,10vw,148px)!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:24px!important;
  background:
    radial-gradient(ellipse at 50% 80%,rgba(107,63,18,.16),transparent 54%),
    linear-gradient(145deg,rgba(255,253,246,.84),rgba(247,233,200,.86))!important;
  border:1px solid rgba(197,163,90,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 14px 22px rgba(52,32,10,.14)!important;
  overflow:visible!important;
}
.game-setup-v2 .refined-setup-panel .checker-preview-img,
.game-setup-v2 .refined-setup-panel .fixed-checker-card .checker-preview-img{
  width:clamp(86px,8vw,120px)!important;
  height:clamp(86px,8vw,120px)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  background:transparent!important;
  filter:drop-shadow(0 10px 9px rgba(41,25,8,.28)) saturate(1.08) contrast(1.05)!important;
}
.game-setup-v2 .refined-setup-panel .checker-player-fields{
  align-content:center!important;
  gap:clamp(.42rem,.8vw,.62rem)!important;
}
.game-setup-v2 .refined-setup-panel .checker-player-fields label > span{
  font-size:.72rem!important;
  letter-spacing:.08em!important;
  font-weight:950!important;
}
.game-setup-v2 .refined-setup-panel .checker-player-fields input{
  min-height:2.6rem!important;
  border-radius:15px!important;
  font-weight:900!important;
}
.game-setup-v2 .solo-checker-choice{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:clamp(8px,1vw,14px)!important;
  margin-top:.28rem!important;
}
.game-setup-v2 .solo-checker-placeholder{
  width:100%!important;
  margin:0 0 .16rem!important;
  color:#6B3F12!important;
  font-size:.68rem!important;
  letter-spacing:.08em!important;
  line-height:1.1!important;
}
.game-setup-v2 .checker-dot-choice{
  width:clamp(44px,4vw,58px)!important;
  height:clamp(44px,4vw,58px)!important;
  aspect-ratio:1/1!important;
  flex:0 0 auto!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  padding:0!important;
  background:#F7E9C8!important;
  border:1.5px solid #C5A35A!important;
  box-shadow:inset 0 2px 4px rgba(255,255,255,.76),inset 0 -4px 9px rgba(107,63,18,.12),0 8px 14px rgba(10,18,38,.14)!important;
  overflow:visible!important;
  cursor:pointer!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.game-setup-v2 .checker-dot-choice img{
  width:92%!important;
  height:92%!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  filter:drop-shadow(0 4px 4px rgba(45,28,9,.25))!important;
  transform:none!important;
}
.game-setup-v2 .checker-dot-choice:hover,
.game-setup-v2 .checker-dot-choice:focus-visible{
  transform:translateY(-1px)!important;
  border-color:#D6AF47!important;
  box-shadow:0 0 10px rgba(214,175,71,.32),inset 0 2px 4px rgba(255,255,255,.78),inset 0 -4px 9px rgba(107,63,18,.12),0 10px 16px rgba(10,18,38,.16)!important;
}
.game-setup-v2 .checker-dot-choice.is-selected{
  border:3px solid #D6AF47!important;
  box-shadow:0 0 12px rgba(214,175,71,.45),inset 0 2px 4px rgba(255,255,255,.76),inset 0 -4px 9px rgba(107,63,18,.12),0 10px 18px rgba(10,18,38,.18)!important;
  transform:translateY(-1px)!important;
}
.control-room-page.mode-class .refined-player-grid,
.control-room-page.mode-class .player-setup-grid{
  grid-template-columns:repeat(3,minmax(230px,1fr))!important;
}
.control-room-page.mode-teams .refined-player-grid,
.control-room-page.mode-teams .player-setup-grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
}
.control-room-page.mode-solo .refined-player-grid,
.control-room-page.mode-solo .player-setup-grid{
  grid-template-columns:minmax(280px,480px)!important;
}
.board-clean .full-pawn,
.board-v3 .full-pawn{
  width:clamp(42px,3.8vw,62px)!important;
  height:clamp(58px,5.8vw,88px)!important;
  overflow:visible!important;
}
.board-clean .full-pawn .pawn-piece,
.board-v3 .full-pawn .pawn-piece{
  width:112%!important;
  height:112%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:saturate(1.08) contrast(1.04) drop-shadow(0 8px 8px rgba(0,0,0,.28))!important;
}
.board-clean .team-token.piece-token,
.board-v3 .team-token.piece-token{
  display:grid!important;
  place-items:center!important;
  aspect-ratio:1/1!important;
  overflow:visible!important;
}
.board-clean .team-token.piece-token img,
.board-v3 .team-token.piece-token img,
.board-clean .top-score-board .team-token.piece-token img,
.board-v3 .top-score-board .team-token.piece-token img{
  width:92%!important;
  height:92%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:drop-shadow(0 4px 4px rgba(0,0,0,.24))!important;
}
@media (max-width:1080px){
  .control-room-page.mode-class .refined-player-grid,
  .control-room-page.mode-class .player-setup-grid{
    grid-template-columns:repeat(2,minmax(220px,1fr))!important;
  }
}
@media (max-width:720px){
  .control-room-page.mode-solo .refined-player-grid,
  .control-room-page.mode-teams .refined-player-grid,
  .control-room-page.mode-class .refined-player-grid,
  .control-room-page.mode-solo .player-setup-grid,
  .control-room-page.mode-teams .player-setup-grid,
  .control-room-page.mode-class .player-setup-grid{
    grid-template-columns:1fr!important;
  }
  .game-setup-v2 .refined-setup-panel .checker-player-card.fixed-checker-card{
    grid-template-columns:86px minmax(0,1fr)!important;
  }
}

/* === FINAL OVERRIDE: polished mode-selection cards, visible titles/descriptions, clean indicators === */
.game-setup-v2 .hero-scroll-hint{
  display:none!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(260px,360px))!important;
  gap:clamp(20px,2.4vw,34px)!important;
  justify-content:center!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:min(1180px,calc(100vw - clamp(28px,7vw,120px)))!important;
  margin:0 auto!important;
  padding:0 0 clamp(3rem,5vw,5rem)!important;
  overflow:visible!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
  width:100%!important;
  min-width:0!important;
  min-height:clamp(390px,35vw,450px)!important;
  height:auto!important;
  aspect-ratio:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(.55rem,1vw,.8rem)!important;
  padding:clamp(20px,2vw,28px)!important;
  border-radius:28px!important;
  overflow:hidden!important;
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 18% 8%,rgba(255,255,255,.68),transparent 27%),
    linear-gradient(145deg,#F8EBCB 0%,#F3E5C0 52%,#EFE0B8 100%)!important;
  border:2px solid #C5A35A!important;
  box-shadow:
    0 22px 44px rgba(7,15,34,.23),
    inset 0 0 0 1px rgba(255,255,255,.50),
    inset 0 2px 0 rgba(255,255,255,.66)!important;
  transform:none!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card::before{
  content:""!important;
  position:absolute!important;
  inset:10px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.50)!important;
  pointer-events:none!important;
  z-index:-1!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(115deg,transparent 0 36%,rgba(255,255,255,.18) 43%,transparent 52%),
    radial-gradient(circle at 80% 10%,rgba(214,175,71,.16),transparent 22%)!important;
  pointer-events:none!important;
  opacity:.75!important;
  z-index:-1!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card:hover,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card:focus-visible{
  transform:translateY(-4px)!important;
  border-color:#D6AF47!important;
  box-shadow:
    0 28px 56px rgba(7,15,34,.29),
    0 0 18px rgba(214,175,71,.28),
    inset 0 0 0 1px rgba(255,255,255,.56),
    inset 0 2px 0 rgba(255,255,255,.70)!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card.is-active{
  border:3px solid #D6AF47!important;
  box-shadow:
    0 30px 60px rgba(7,15,34,.32),
    0 0 18px rgba(214,175,71,.42),
    inset 0 0 0 1px rgba(255,255,255,.58)!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame{
  flex:0 0 auto!important;
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  place-items:center!important;
  width:100%!important;
  max-width:clamp(205px,20vw,250px)!important;
  height:clamp(170px,17vw,220px)!important;
  aspect-ratio:auto!important;
  margin:0 0 clamp(.45rem,.9vw,.7rem)!important;
  padding:clamp(12px,1.2vw,18px)!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 28% 18%,rgba(255,242,194,.13),transparent 27%),
    linear-gradient(145deg,#0B1D3A 0%,#10284F 58%,#071225 100%)!important;
  border:1.5px solid rgba(214,175,71,.72)!important;
  box-shadow:
    0 16px 28px rgba(7,15,34,.27),
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 0 0 1px rgba(255,242,194,.08)!important;
  filter:none!important;
  position:relative!important;
  z-index:2!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame::after,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame::after{
  content:""!important;
  position:absolute!important;
  left:16%!important;
  right:16%!important;
  bottom:10%!important;
  height:12%!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.32),transparent 70%)!important;
  pointer-events:none!important;
  z-index:1!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame > img,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > span.mode-art-frame > img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:86%!important;
  height:86%!important;
  max-width:86%!important;
  max-height:86%!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 14px 14px rgba(0,0,0,.28)) saturate(1.05) contrast(1.04)!important;
  transform:none!important;
  position:relative!important;
  z-index:2!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-title{
  flex:0 0 auto!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#0B1D3A!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-size:clamp(1.28rem,1.75vw,1.65rem)!important;
  line-height:1.05!important;
  letter-spacing:.01em!important;
  font-weight:950!important;
  text-align:center!important;
  text-transform:none!important;
  text-shadow:0 1px 0 rgba(255,255,255,.64)!important;
  position:relative!important;
  z-index:4!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > small{
  flex:0 0 auto!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:min(92%,31ch)!important;
  max-width:31ch!important;
  min-height:0!important;
  margin:0 auto clamp(.55rem,1vw,.85rem)!important;
  padding:0!important;
  color:#6B3F12!important;
  font-family:'Inter','Montserrat',sans-serif!important;
  font-size:clamp(.88rem,1vw,1rem)!important;
  line-height:1.28!important;
  font-weight:850!important;
  text-align:center!important;
  text-shadow:0 1px 0 rgba(255,250,230,.62)!important;
  position:relative!important;
  z-index:4!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-action{
  flex:0 0 auto!important;
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(84%,224px)!important;
  min-height:clamp(38px,3.4vw,46px)!important;
  margin:auto auto 0!important;
  padding:.52rem 1rem!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,#0B1D3A 0%,#142D57 100%)!important;
  color:#FFF2C2!important;
  border:1.5px solid #D4AF37!important;
  box-shadow:0 12px 22px rgba(11,29,58,.22),inset 0 1px 0 rgba(255,255,255,.13)!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-size:clamp(.82rem,.92vw,.95rem)!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  text-align:center!important;
  text-transform:none!important;
  position:relative!important;
  z-index:4!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .selected-check{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  width:clamp(28px,2.35vw,34px)!important;
  height:clamp(28px,2.35vw,34px)!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 32% 22%,#FFF2C2,#D6AF47 54%,#9A6A20 100%)!important;
  color:#0B1D3A!important;
  border:1.5px solid rgba(255,242,194,.88)!important;
  box-shadow:0 10px 18px rgba(11,29,58,.22),0 0 12px rgba(214,175,71,.36),inset 0 1px 0 rgba(255,255,255,.72)!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-size:.92rem!important;
  font-weight:950!important;
  line-height:1!important;
  opacity:0!important;
  transform:scale(.82)!important;
  transition:opacity .18s ease,transform .18s ease!important;
  z-index:8!important;
}
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card.is-active > .selected-check,
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card[aria-pressed="true"] > .selected-check{
  opacity:1!important;
  transform:scale(1)!important;
}
.game-setup-v2 .bb-footer,
.bb-footer{
  position:relative!important;
  z-index:1!important;
}
@media (max-width:1080px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
    max-width:calc(100vw - 2rem)!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
    min-height:clamp(360px,38vw,420px)!important;
    padding:clamp(18px,1.8vw,22px)!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    max-width:clamp(168px,20vw,215px)!important;
    height:clamp(150px,17vw,190px)!important;
  }
}
@media (max-width:780px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
    max-width:min(430px,calc(100vw - 2rem))!important;
    gap:1.1rem!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card{
    min-height:360px!important;
  }
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid > .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
    max-width:220px!important;
    height:178px!important;
  }
}

/* === FINAL CONTROLLED REPAIR: original asset indicators + safe card/header layout === */
/* Mode cards: center the group and remove the tiny invented check indicator. */
.game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(280px,360px))!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:clamp(20px,2.2vw,34px)!important;
  width:min(1180px,calc(100vw - 48px))!important;
  max-width:min(1180px,calc(100vw - 48px))!important;
  margin:clamp(1rem,2.2vh,1.6rem) auto clamp(3rem,6vh,5rem)!important;
  padding:0!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card{
  width:100%!important;
  min-height:clamp(360px,37vw,430px)!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:clamp(20px,2vw,28px)!important;
  gap:clamp(.55rem,1vw,.85rem)!important;
  overflow:hidden!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > .selected-check{
  display:none!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame{
  flex:0 0 clamp(170px,18vw,215px)!important;
  width:min(82%,250px)!important;
  height:clamp(170px,18vw,215px)!important;
  margin:0 auto clamp(.25rem,.8vw,.55rem)!important;
  padding:clamp(14px,1.2vw,18px)!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > .mode-art-frame > img{
  width:84%!important;
  height:84%!important;
  max-width:84%!important;
  max-height:84%!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-title{
  flex:0 0 auto!important;
  margin:0!important;
  line-height:1.06!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > small{
  flex:0 0 auto!important;
  display:block!important;
  margin:0 auto!important;
  width:min(92%,31ch)!important;
  max-width:31ch!important;
  min-height:2.6em!important;
  line-height:1.28!important;
}
.game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card > .mode-card-action{
  margin:auto auto 0!important;
}
.game-setup-v2 .premium-setup-heading{
  margin:clamp(2rem,5vh,3.8rem) auto clamp(.9rem,1.8vh,1.3rem)!important;
}
@media (max-width:1080px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:repeat(3,minmax(220px,1fr))!important;
    width:calc(100vw - 32px)!important;
    max-width:calc(100vw - 32px)!important;
  }
  .game-setup-v2 .mode-choice-card.clean-mode-card.unified-mode-card{min-height:360px!important;}
}
@media (max-width:780px){
  .game-setup-v2 .mode-choice-grid.clean-mode-grid.unified-mode-grid{
    grid-template-columns:1fr!important;
    width:min(430px,calc(100vw - 28px))!important;
    max-width:min(430px,calc(100vw - 28px))!important;
  }
}

/* Board safe-area: keep the card in the middle tray, below the top board icons. */
.board-clean .board-question-card:not(.is-ready),
.board-v3.board-clean .board-question-card:not(.is-ready){
  left:50%!important;
  top:62.5%!important;
  transform:translate(-50%,-50%)!important;
  width:min(62%,780px)!important;
  max-width:62%!important;
  max-height:42%!important;
  min-width:520px!important;
  z-index:12!important;
  overflow:hidden!important;
}
.board-clean.solo-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.solo-mode .board-question-card:not(.is-ready){
  width:min(60%,740px)!important;
  max-width:60%!important;
  top:62.5%!important;
}
.board-clean.team-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.team-mode .board-question-card:not(.is-ready),
.board-clean.class-mode .board-question-card:not(.is-ready),
.board-v3.board-clean.class-mode .board-question-card:not(.is-ready){
  width:min(62%,780px)!important;
  max-width:62%!important;
  top:62.5%!important;
}
.board-clean .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
  padding:clamp(.66rem,1vw,.9rem) clamp(.9rem,1.3vw,1.16rem)!important;
  gap:clamp(.28rem,.58vw,.46rem)!important;
}

/* Real card header rows: player/points row, category row, then title. No overlaps. */
.board-clean .board-question-card:not(.is-ready) .question-topline,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-topline{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:.22rem!important;
  align-items:start!important;
  margin:0 0 .08rem!important;
  padding:0!important;
  width:100%!important;
}
.board-clean .question-player-row,
.board-v3.board-clean .question-player-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:.5rem!important;
  width:100%!important;
  min-width:0!important;
}
.board-clean .question-category-row,
.board-v3.board-clean .question-category-row{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
}
.board-clean .player-card-label,
.board-v3.board-clean .player-card-label,
.board-clean .category-label,
.board-v3.board-clean .category-label,
.board-clean .points-label,
.board-v3.board-clean .points-label{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  max-width:100%!important;
  white-space:nowrap!important;
  border-radius:999px!important;
  font-family:'Montserrat','Inter',sans-serif!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  line-height:1!important;
}
.board-clean .player-card-label,
.board-v3.board-clean .player-card-label{
  flex:0 1 auto!important;
  padding:.26rem .64rem!important;
  color:#FFF2C2!important;
  background:linear-gradient(145deg,#0B1D3A,#142D57)!important;
  border:1px solid rgba(214,175,71,.68)!important;
  font-size:clamp(.68rem,.82vw,.82rem)!important;
  box-shadow:0 6px 12px rgba(0,0,0,.18)!important;
}
.board-clean .points-label,
.board-v3.board-clean .points-label{
  flex:0 0 auto!important;
  padding:.26rem .64rem!important;
  color:#0B1D3A!important;
  background:rgba(255,253,246,.94)!important;
  border:1px solid rgba(214,175,71,.34)!important;
  font-size:clamp(.66rem,.78vw,.78rem)!important;
}
.board-clean .category-label,
.board-v3.board-clean .category-label{
  padding:.25rem .62rem!important;
  color:#FFF2C2!important;
  background:linear-gradient(145deg,#102D5C,#0B1D3A)!important;
  border:1px solid rgba(214,175,71,.48)!important;
  font-size:clamp(.66rem,.78vw,.78rem)!important;
}
.board-clean .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-question-card:not(.is-ready) h1{
  flex:0 0 auto!important;
  margin:.02rem 0 .04rem!important;
  font-size:clamp(1.65rem,2.15vw,2.48rem)!important;
  line-height:.95!important;
  letter-spacing:.01em!important;
}
.board-clean .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{
  flex:0 0 auto!important;
  font-size:clamp(.84rem,.98vw,1rem)!important;
  line-height:1.23!important;
  margin:0!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:clamp(112px,17vh,168px)!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:.3rem!important;
  margin:.03rem 0 .08rem!important;
  overflow:auto!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn{
  min-height:34px!important;
  padding:.4rem .58rem!important;
  border-radius:13px!important;
  font-size:clamp(.72rem,.82vw,.84rem)!important;
  line-height:1.12!important;
}
.board-clean .board-card-actions,
.board-v3.board-clean .board-card-actions,
.board-clean .board-question-card:not(.is-ready) .board-card-actions,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-card-actions{
  flex:0 0 auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.38rem!important;
  margin:.06rem 0 0!important;
  padding:0!important;
}
.board-clean .board-question-card:not(.is-ready) .board-feedback,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-feedback{
  flex:0 0 auto!important;
  margin:.08rem 0 0!important;
  min-height:1.45rem!important;
  padding:.28rem .54rem!important;
  overflow:hidden!important;
}

/* Restore asset-based board indicators: use the image assets only, make them readable, and keep them behind the question card. */
.board-clean .pawns-layer,
.board-clean .full-pawns-layer,
.board-v3.board-clean .pawns-layer,
.board-v3.board-clean .full-pawns-layer{
  z-index:7!important;
  pointer-events:none!important;
}
.board-clean .full-pawn,
.board-v3.board-clean .full-pawn{
  width:clamp(58px,5.2vw,88px)!important;
  height:clamp(82px,7.6vw,126px)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  z-index:7!important;
  transform:translate(-50%,-66%) translateZ(0)!important;
  filter:drop-shadow(0 14px 12px rgba(0,0,0,.35))!important;
}
.board-clean .full-pawn .pawn-piece,
.board-v3.board-clean .full-pawn .pawn-piece{
  display:block!important;
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:140%!important;
  height:140%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:translateX(-50%)!important;
  background:transparent!important;
  border:0!important;
  filter:saturate(1.08) contrast(1.04) drop-shadow(0 8px 8px rgba(0,0,0,.28))!important;
}
.board-clean .full-pawn small,
.board-v3.board-clean .full-pawn small{
  display:none!important;
}
.board-clean .full-pawn.is-active,
.board-v3.board-clean .full-pawn.is-active{
  transform:translate(-50%,-68%) translateZ(0) scale(1.06)!important;
  filter:drop-shadow(0 0 12px rgba(245,215,128,.55)) drop-shadow(0 16px 14px rgba(0,0,0,.38))!important;
}
.board-clean .full-pawn.is-active::after,
.board-v3.board-clean .full-pawn.is-active::after{
  width:64%!important;
  height:12%!important;
  bottom:2px!important;
}
@media (max-width:1180px){
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){
    width:min(72vw,760px)!important;
    max-width:72vw!important;
    min-width:0!important;
    top:62%!important;
    max-height:46%!important;
  }
}
@media (max-width:760px){
  .board-clean .board-question-card:not(.is-ready),
  .board-v3.board-clean .board-question-card:not(.is-ready){
    width:min(92vw,560px)!important;
    max-width:92vw!important;
    min-width:0!important;
    top:58%!important;
    max-height:58%!important;
  }
  .board-clean .board-question-card:not(.is-ready) .question-card-inner,
  .board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{overflow:auto!important;}
}

/* === Solo start clarity repair: no repeated instruction, clear first action === */
.board-clean.solo-mode .board-question-card{
  width:clamp(520px,42%,640px)!important;
  max-width:48%!important;
  top:52%!important;
}
.board-clean.solo-mode .question-card-inner{
  overflow:hidden!important;
  justify-content:center!important;
  gap:.52rem!important;
}
.board-clean.solo-mode .question-topline{
  margin-bottom:.16rem!important;
}
.board-clean.solo-mode .points-label:empty{
  display:none!important;
}
.board-clean.solo-mode .board-question-card h1{
  text-align:center!important;
  margin:.08rem 0 .18rem!important;
  font-size:clamp(2.25rem,3.2vw,3.6rem)!important;
}
.board-clean.solo-mode .board-question-card p{
  text-align:center!important;
  margin:0 0 .24rem!important;
  font-weight:900!important;
  color:#4d3a23!important;
}
.board-clean.solo-mode .support-box{
  max-height:none!important;
  overflow:visible!important;
  margin:.1rem 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.board-clean .solo-start-panel{
  display:grid!important;
  justify-items:center!important;
  gap:.55rem!important;
  width:min(100%,560px)!important;
  margin:0 auto!important;
  color:#142247!important;
}
.board-clean .solo-start-copy{
  display:grid!important;
  justify-items:center!important;
  gap:.16rem!important;
  padding:.46rem .9rem!important;
  border-radius:999px!important;
  background:rgba(10,18,39,.72)!important;
  color:#fff8e8!important;
  border:1px solid rgba(226,198,132,.48)!important;
  box-shadow:0 10px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.board-clean .solo-start-copy strong{
  font-size:clamp(.78rem,.96vw,.95rem)!important;
  line-height:1!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
}
.board-clean .solo-start-copy span{
  font-size:clamp(.72rem,.86vw,.86rem)!important;
  line-height:1!important;
  font-weight:900!important;
  color:#ffe7a8!important;
}
.board-clean .solo-start-draw{
  width:min(100%,280px)!important;
  min-height:46px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:2px solid rgba(255,231,168,.95)!important;
  background:linear-gradient(145deg,#ffe7a8 0%,#d8ac43 50%,#a56e20 100%)!important;
  color:#111b36!important;
  font-size:clamp(.9rem,1.1vw,1.05rem)!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  box-shadow:0 14px 24px rgba(0,0,0,.28),0 0 18px rgba(214,175,71,.32),inset 0 1px 0 rgba(255,255,255,.55)!important;
  cursor:pointer!important;
}
.board-clean .solo-start-draw:hover,.board-clean .solo-start-draw:focus-visible{
  transform:translateY(-1px)!important;
  box-shadow:0 18px 28px rgba(0,0,0,.32),0 0 24px rgba(214,175,71,.46),inset 0 1px 0 rgba(255,255,255,.62)!important;
}
.board-clean .solo-change-deck{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:.3rem!important;
  max-width:100%!important;
}
.board-clean .solo-deck-chip{
  min-height:28px!important;
  padding:.28rem .55rem!important;
  border-radius:999px!important;
  border:1px solid rgba(200,164,106,.55)!important;
  background:rgba(255,253,246,.72)!important;
  color:#142247!important;
  font-size:clamp(.62rem,.72vw,.72rem)!important;
  font-weight:950!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
  cursor:pointer!important;
}
.board-clean .solo-deck-chip.is-selected{
  background:#111b36!important;
  color:#ffe7a8!important;
  border-color:rgba(255,231,168,.72)!important;
}
.board-clean.solo-mode .board-feedback{
  text-align:center!important;
  width:max-content!important;
  max-width:100%!important;
  margin:.12rem auto 0!important;
  min-height:0!important;
  padding:.32rem .68rem!important;
}
@media (max-width:1180px){
  .board-clean.solo-mode .board-question-card{width:min(62%,620px)!important;max-width:none!important;}
}
@media (max-width:720px){
  .board-clean.solo-mode .board-question-card{width:82%!important;min-width:0!important;}
  .board-clean .solo-change-deck{display:none!important;}
}

/* Solo ready card must show the actual start controls. */
.board-clean.solo-mode .board-question-card.is-ready .question-card-inner{
  justify-content:flex-end!important;
  align-items:center!important;
  gap:.42rem!important;
  padding:0 0 .46rem!important;
  overflow:visible!important;
}
.board-clean.solo-mode .board-question-card.is-ready .support-box{
  display:block!important;
  max-width:min(92%,560px)!important;
}
.board-clean.solo-mode .board-question-card.is-ready .board-card-actions{
  display:none!important;
}
.board-clean.solo-mode .board-question-card.is-ready #questionPrompt,
.board-clean.solo-mode .board-question-card.is-ready .board-feedback{
  color:#f8ecd0!important;
  background:rgba(8,16,35,.72)!important;
  border:1px solid rgba(226,198,132,.44)!important;
}
.board-clean.solo-mode .board-question-card.is-ready .premium-card-deck-stage{
  margin-bottom:.1rem!important;
}

/* === Gameplay board inner-center card repair (no page/card scrolling, all modes) ===
   The cream board well in brand-board-final.webp is the positioning container.
   Source image measured at 2048x1143: x 449, y 279, w 1151, h 584. */
.board-clean .board-frame,
.board-v3.board-clean .board-frame{
  position:relative!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area,
.board-v3.board-clean .board-inner-center-area{
  position:absolute!important;
  left:21.9%!important;
  top:24.4%!important;
  width:56.2%!important;
  height:51.1%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  z-index:8!important;
  pointer-events:none!important;
}
.board-clean .board-inner-center-area .board-question-card,
.board-v3.board-clean .board-inner-center-area .board-question-card,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready),
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready),
.board-clean.solo-mode .board-inner-center-area .board-question-card:not(.is-ready),
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card:not(.is-ready),
.board-clean.team-mode .board-inner-center-area .board-question-card:not(.is-ready),
.board-v3.board-clean.team-mode .board-inner-center-area .board-question-card:not(.is-ready),
.board-clean.class-mode .board-inner-center-area .board-question-card:not(.is-ready),
.board-v3.board-clean.class-mode .board-inner-center-area .board-question-card:not(.is-ready){
  position:relative!important;
  left:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:min(94%,760px)!important;
  max-width:94%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:90%!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  pointer-events:auto!important;
  border-radius:clamp(18px,2.1vw,26px)!important;
}
.board-clean .board-inner-center-area .board-question-card.is-ready,
.board-v3.board-clean .board-inner-center-area .board-question-card.is-ready{
  width:min(90%,620px)!important;
  max-width:90%!important;
  max-height:90%!important;
  min-height:0!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .question-card-inner,
.board-v3.board-clean .board-inner-center-area .question-card-inner,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .question-card-inner{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  top:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(.22rem,.48vw,.42rem)!important;
  padding:clamp(.62rem,.95vw,.9rem) clamp(.78rem,1.25vw,1.12rem)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.board-clean .board-inner-center-area .board-question-card.is-ready .question-card-inner,
.board-v3.board-clean .board-inner-center-area .board-question-card.is-ready .question-card-inner{
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  gap:clamp(.24rem,.6vw,.5rem)!important;
}
.board-clean .board-inner-center-area .question-topline,
.board-v3.board-clean .board-inner-center-area .question-topline,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .question-topline,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .question-topline{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:.5rem!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
}
.board-clean .board-inner-center-area .category-label,
.board-clean .board-inner-center-area .points-label,
.board-v3.board-clean .board-inner-center-area .category-label,
.board-v3.board-clean .board-inner-center-area .points-label{
  font-size:clamp(.6rem,.72vw,.78rem)!important;
  line-height:1!important;
  padding:.24rem .56rem!important;
  max-width:50%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.board-clean .board-inner-center-area .board-question-card h1,
.board-v3.board-clean .board-inner-center-area .board-question-card h1,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) h1{
  flex:0 0 auto!important;
  font-size:clamp(1.35rem,2.05vw,2.55rem)!important;
  line-height:.92!important;
  margin:.02rem 0 .04rem!important;
  max-width:100%!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .board-question-card #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card #questionPrompt,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) #questionPrompt{
  flex:0 0 auto!important;
  font-size:clamp(.76rem,.9vw,.98rem)!important;
  line-height:1.18!important;
  margin:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .board-question-card.is-ready h1,
.board-v3.board-clean .board-inner-center-area .board-question-card.is-ready h1{
  font-size:clamp(1.7rem,3vw,3.1rem)!important;
  margin:.04rem 0!important;
  text-align:center!important;
}
.board-clean .board-inner-center-area .board-question-card.is-ready #questionPrompt,
.board-clean .board-inner-center-area .board-question-card.is-ready .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-question-card.is-ready #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card.is-ready .board-feedback{
  max-width:min(92%,390px)!important;
  font-size:clamp(.68rem,.85vw,.88rem)!important;
  line-height:1.12!important;
  margin:0!important;
  padding:.36rem .7rem!important;
}
.board-clean .board-inner-center-area .premium-card-deck-stage,
.board-v3.board-clean .board-inner-center-area .premium-card-deck-stage{
  height:clamp(112px,16vw,176px)!important;
  margin:0 auto!important;
  transform:scale(.9)!important;
  transform-origin:center center!important;
}
.board-clean .board-inner-center-area .board-answer-options,
.board-v3.board-clean .board-inner-center-area .board-answer-options,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:clamp(.22rem,.45vw,.34rem)!important;
  margin:.02rem 0 .04rem!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  scrollbar-width:auto!important;
}
.board-clean .board-inner-center-area .board-answer-options:empty,
.board-v3.board-clean .board-inner-center-area .board-answer-options:empty{
  display:none!important;
}
.board-clean .board-inner-center-area .board-answer-options .answer-btn,
.board-v3.board-clean .board-inner-center-area .board-answer-options .answer-btn,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options .answer-btn{
  min-height:clamp(30px,3.2vw,38px)!important;
  padding:clamp(.32rem,.55vw,.46rem) clamp(.52rem,.8vw,.68rem)!important;
  font-size:clamp(.68rem,.78vw,.84rem)!important;
  line-height:1.12!important;
  border-radius:12px!important;
}
.board-clean .board-inner-center-area .support-box,
.board-clean .board-inner-center-area .power-tools,
.board-v3.board-clean .board-inner-center-area .support-box,
.board-v3.board-clean .board-inner-center-area .power-tools,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .support-box,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .power-tools,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .support-box,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .power-tools{
  flex:0 0 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  margin:.02rem 0 .04rem!important;
  padding:.36rem .52rem!important;
  font-size:clamp(.66rem,.78vw,.82rem)!important;
  line-height:1.14!important;
  border-radius:12px!important;
}
.board-clean .board-inner-center-area .support-box.hidden,
.board-clean .board-inner-center-area .power-tools.hidden,
.board-v3.board-clean .board-inner-center-area .support-box.hidden,
.board-v3.board-clean .board-inner-center-area .power-tools.hidden{
  display:none!important;
}
.board-clean .board-inner-center-area .board-card-actions,
.board-v3.board-clean .board-inner-center-area .board-card-actions,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-card-actions,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-card-actions{
  flex:0 0 auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(.24rem,.45vw,.38rem)!important;
  margin:.02rem 0 0!important;
  padding:0!important;
  width:100%!important;
  position:static!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .board-card-actions .btn,
.board-v3.board-clean .board-inner-center-area .board-card-actions .btn{
  flex:0 1 auto!important;
  min-height:clamp(30px,3vw,36px)!important;
  padding:clamp(.3rem,.5vw,.4rem) clamp(.52rem,.75vw,.68rem)!important;
  font-size:clamp(.64rem,.72vw,.76rem)!important;
  line-height:1!important;
  position:static!important;
}
.board-clean .board-inner-center-area .hint-icon-btn,
.board-v3.board-clean .board-inner-center-area .hint-icon-btn{
  flex:0 0 clamp(32px,3.1vw,38px)!important;
  width:clamp(32px,3.1vw,38px)!important;
  min-width:clamp(32px,3.1vw,38px)!important;
  height:clamp(32px,3.1vw,38px)!important;
  min-height:clamp(32px,3.1vw,38px)!important;
}
.board-clean .board-inner-center-area .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-feedback,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-feedback{
  flex:0 0 auto!important;
  min-height:0!important;
  margin:.04rem 0 0!important;
  padding:.28rem .52rem!important;
  font-size:clamp(.62rem,.72vw,.74rem)!important;
  line-height:1.12!important;
  overflow:visible!important;
  white-space:normal!important;
}
@media (max-width:1180px){
  .board-clean.full-board-page{overflow:hidden!important;}
  .board-clean .board-game-shell-v3{height:100vh!important;min-height:0!important;grid-template-rows:minmax(62px,auto) minmax(0,1fr)!important;overflow:hidden!important;}
  .board-clean .board-frame{width:min(100%,calc((100vh - 86px) * 1.792))!important;max-height:calc(100vh - 86px)!important;}
  .board-clean .board-inner-center-area .board-question-card,
  .board-v3.board-clean .board-inner-center-area .board-question-card{width:94%!important;max-width:94%!important;max-height:92%!important;}
}
@media (max-width:720px){
  .board-clean .board-inner-center-area .board-question-card,
  .board-v3.board-clean .board-inner-center-area .board-question-card{width:96%!important;max-width:96%!important;max-height:94%!important;}
  .board-clean .board-inner-center-area .question-card-inner,
  .board-v3.board-clean .board-inner-center-area .question-card-inner{padding:.48rem .56rem!important;gap:.18rem!important;}
  .board-clean .board-inner-center-area .board-question-card h1,
  .board-v3.board-clean .board-inner-center-area .board-question-card h1{font-size:clamp(1.2rem,4.5vw,1.65rem)!important;}
}


/* === SAFE FIX: solo mechanism, no board deck selector, no model-answer UI, clear solo score/progress === */
.board-clean.solo-mode .hud-score-strip{
  width:min(420px,34vw)!important;
  min-width:310px!important;
  grid-template-columns:1fr!important;
  justify-self:end!important;
}
.board-clean.solo-mode .top-score-board{
  width:100%!important;
  display:block!important;
  overflow:visible!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:38px auto minmax(94px,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:.55rem!important;
  row-gap:.05rem!important;
  padding:.5rem .7rem!important;
  border-radius:18px!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .team-token{
  grid-row:1 / span 2!important;
  width:36px!important;
  height:36px!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score b{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  font-size:1.15rem!important;
  min-width:2.2rem!important;
  padding:0!important;
  background:transparent!important;
  color:#111b36!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score b::after{content:""!important;}
.board-clean.solo-mode .top-score-board .solo-progress-score strong{
  grid-column:3!important;
  grid-row:1!important;
  font-size:.74rem!important;
  text-align:left!important;
  color:#111b36!important;
  white-space:nowrap!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score small{
  display:block!important;
  grid-column:3!important;
  grid-row:2!important;
  font-size:.66rem!important;
  line-height:1.05!important;
  color:#4f402a!important;
  white-space:nowrap!important;
}
.board-clean.solo-mode .full-pawns-layer{display:block!important;}
.board-clean.solo-mode .full-pawn small{display:none!important;}
.board-clean.solo-mode .hud-dice-area,
.board-clean.solo-mode #nextTeamBtn,
.board-clean.solo-mode .manual-score-btn,
.board-clean.solo-mode .board-legend{display:none!important;}
.board-clean .solo-change-deck,
.board-clean .solo-deck-chip{display:none!important;}
.board-clean .solo-start-clean{gap:.7rem!important;}
.board-clean .solo-start-copy strong{font-size:clamp(.9rem,1.1vw,1.08rem)!important;}
.board-clean .solo-start-copy span{font-size:clamp(.8rem,.95vw,.95rem)!important;}
.board-clean .solo-self-check{
  display:grid!important;
  gap:.22rem!important;
  max-width:min(100%,620px)!important;
  margin:.15rem auto .25rem!important;
  padding:.5rem .7rem!important;
  border-radius:18px!important;
  background:rgba(10,18,39,.08)!important;
  border:1px solid rgba(200,164,106,.35)!important;
  color:#142247!important;
  text-align:left!important;
}
.board-clean .solo-self-check strong{
  color:#6b3f12!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-size:.74rem!important;
  text-align:center!important;
}
.board-clean .solo-self-check span{
  font-size:clamp(.68rem,.8vw,.82rem)!important;
  line-height:1.22!important;
  font-weight:850!important;
}
.board-clean .solo-self-check span::before{
  content:"✓";
  display:inline-grid;
  place-items:center;
  width:1.05rem;
  height:1.05rem;
  margin-right:.35rem;
  border-radius:50%;
  background:#f7e9c8;
  border:1px solid rgba(200,164,106,.65);
  color:#0b1d3a;
  font-size:.7rem;
}
.board-clean .board-question-card .model-answer-label{display:none!important;}
.board-clean .board-question-card.is-ready #questionPrompt:empty,
.board-clean .board-question-card.is-ready .board-feedback:empty{display:none!important;}
.board-clean.solo-mode .board-question-card.is-ready h1{margin-bottom:.25rem!important;}


/* === Final Solo mechanism + card center safety repair === */
.board-clean .board-inner-center-area,
.board-v3.board-clean .board-inner-center-area{
  align-items:center!important;
  justify-content:center!important;
}
.board-clean .board-inner-center-area .board-question-card,
.board-v3.board-clean .board-inner-center-area .board-question-card{
  margin:auto!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .question-card-inner,
.board-v3.board-clean .board-inner-center-area .question-card-inner{
  overflow:visible!important;
}
.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready .question-card-inner,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready .question-card-inner{
  justify-content:center!important;
  align-items:center!important;
  padding:clamp(.35rem,.8vw,.75rem)!important;
  gap:clamp(.28rem,.65vw,.55rem)!important;
}
.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready{
  width:min(90%,620px)!important;
  max-width:90%!important;
  max-height:90%!important;
}
.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready .premium-card-deck-stage,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready .premium-card-deck-stage{
  height:clamp(96px,13vw,150px)!important;
  margin:0 auto!important;
  transform:scale(.84)!important;
}
.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready h1,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready h1{
  font-size:clamp(1.75rem,2.9vw,3rem)!important;
  margin:0!important;
}
.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready #questionPrompt,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-question-card.is-ready #questionPrompt{
  display:none!important;
}
.board-clean .solo-start-copy strong{font-size:clamp(.72rem,.9vw,.9rem)!important;}
.board-clean .solo-start-copy span{font-size:clamp(.66rem,.78vw,.78rem)!important;}
.board-clean .solo-setup-link{
  display:inline-grid!important;
  place-items:center!important;
  min-height:38px!important;
  padding:.45rem .8rem!important;
  border-radius:999px!important;
  text-decoration:none!important;
  font-weight:950!important;
  color:#ffe7a8!important;
  background:#111b36!important;
  border:1px solid rgba(226,198,132,.55)!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score{
  display:grid!important;
  grid-template-columns:auto auto auto!important;
  grid-template-rows:auto auto!important;
  column-gap:.42rem!important;
  row-gap:.08rem!important;
  align-items:center!important;
  min-width:clamp(260px,23vw,360px)!important;
  max-width:none!important;
  padding:.42rem .7rem!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .team-token{display:none!important;}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-mode{
  grid-column:1 / -1!important;
  font-size:clamp(.72rem,.82vw,.9rem)!important;
  color:#111b36!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  overflow:visible!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score b{
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  color:#111b36!important;
  font-size:clamp(1rem,1.2vw,1.28rem)!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score b::after{content:""!important;}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-customers{
  grid-column:2!important;
  grid-row:2!important;
  color:#111b36!important;
  font-size:clamp(.62rem,.72vw,.78rem)!important;
  font-weight:950!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score small{
  display:inline!important;
  grid-column:3!important;
  grid-row:2!important;
  color:#111b36!important;
  font-size:clamp(.62rem,.72vw,.78rem)!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.board-clean.solo-mode .board-card-actions .next-turn-button,
.board-v3.board-clean.solo-mode .board-card-actions .next-turn-button{
  background:linear-gradient(145deg,#ffe7a8 0%,#d8ac43 55%,#a56e20 100%)!important;
  color:#111b36!important;
  border:2px solid rgba(255,231,168,.9)!important;
  box-shadow:0 10px 18px rgba(0,0,0,.22),0 0 14px rgba(214,175,71,.35)!important;
}
.board-clean .board-card-actions .btn.hidden,
.board-v3.board-clean .board-card-actions .btn.hidden{display:none!important;}
.board-clean .board-inner-center-area .support-box .solo-self-check + .answer-help-block{margin-top:.28rem!important;}

/* === FINAL CONTROLLED REPAIR: visible Solo Next Card, clean HUD, contained open cards === */
.board-clean.solo-mode .board-top-hud,
.board-v3.board-clean.solo-mode .board-top-hud{
  grid-template-columns:126px minmax(300px,1fr) minmax(260px,330px) minmax(300px,auto)!important;
  gap:.55rem!important;
  align-items:center!important;
  overflow:hidden!important;
}
.board-clean.solo-mode .hud-dice-area,
.board-v3.board-clean.solo-mode .hud-dice-area{display:none!important;}
.board-clean.solo-mode .hud-score-strip,
.board-v3.board-clean.solo-mode .hud-score-strip{
  justify-self:end!important;
  width:min(330px,23vw)!important;
  max-width:330px!important;
  min-width:260px!important;
  overflow:visible!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.board-clean.solo-mode .top-score-board,
.board-v3.board-clean.solo-mode .top-score-board{width:100%!important;display:block!important;overflow:visible!important;}
.board-clean.solo-mode .top-score-board .solo-progress-score,
.board-v3.board-clean.solo-mode .top-score-board .solo-progress-score{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-rows:auto auto!important;
  gap:.1rem .55rem!important;
  align-items:center!important;
  padding:.45rem .72rem!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-mode,
.board-v3.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-mode{
  grid-column:1 / -1!important;
  font-size:.72rem!important;
  line-height:1!important;
  letter-spacing:.05em!important;
  color:#111b36!important;
  white-space:nowrap!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-score,
.board-v3.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-score{
  grid-column:1!important;
  grid-row:2!important;
  display:inline-flex!important;
  align-items:baseline!important;
  gap:.25rem!important;
  font-size:.72rem!important;
  font-weight:950!important;
  color:#111b36!important;
  white-space:nowrap!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-score b,
.board-v3.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-score b{
  display:inline!important;
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  font-size:1.15rem!important;
  color:#111b36!important;
  line-height:1!important;
}
.board-clean.solo-mode .top-score-board .solo-progress-score .solo-chip-customers{display:none!important;}
.board-clean.solo-mode .top-score-board .solo-progress-score small,
.board-v3.board-clean.solo-mode .top-score-board .solo-progress-score small{
  grid-column:2!important;
  grid-row:2!important;
  justify-self:end!important;
  font-size:.68rem!important;
  line-height:1!important;
  color:#111b36!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.board-clean.solo-mode .hud-actions,
.board-v3.board-clean.solo-mode .hud-actions{
  justify-self:end!important;
  display:flex!important;
  gap:.45rem!important;
  min-width:0!important;
}

.board-clean.team-mode .board-top-hud,
.board-v3.board-clean.team-mode .board-top-hud{
  grid-template-columns:126px minmax(250px,.9fr) minmax(520px,1.7fr) 76px minmax(300px,auto)!important;
}
.board-clean.class-mode .board-top-hud,
.board-v3.board-clean.class-mode .board-top-hud{
  grid-template-columns:126px minmax(250px,.8fr) minmax(600px,2fr) 76px minmax(300px,auto)!important;
}
.board-clean.team-mode .hud-score-strip,
.board-clean.class-mode .hud-score-strip,
.board-v3.board-clean.team-mode .hud-score-strip,
.board-v3.board-clean.class-mode .hud-score-strip{
  min-height:56px!important;
  overflow:hidden!important;
  padding:.35rem .48rem!important;
}
.board-clean.team-mode .top-score-board,
.board-clean.class-mode .top-score-board,
.board-v3.board-clean.team-mode .top-score-board,
.board-v3.board-clean.class-mode .top-score-board{
  display:grid!important;
  gap:.35rem!important;
  overflow:hidden!important;
  align-items:center!important;
}
.board-clean.team-mode .top-score-board{grid-template-columns:repeat(2,minmax(150px,1fr))!important;}
.board-clean.class-mode .top-score-board{grid-template-columns:repeat(3,minmax(132px,1fr))!important;}
.board-clean .top-score-board .clean-hud-score,
.board-v3.board-clean .top-score-board .clean-hud-score{
  height:34px!important;
  min-height:34px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:.35rem!important;
  padding:.28rem .52rem!important;
  border-radius:999px!important;
  overflow:hidden!important;
}
.board-clean .top-score-board .clean-hud-score strong,
.board-v3.board-clean .top-score-board .clean-hud-score strong{
  font-size:.72rem!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.board-clean .top-score-board .clean-hud-score .hud-customer-score,
.board-v3.board-clean .top-score-board .clean-hud-score .hud-customer-score{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:.22rem!important;
  font-size:.62rem!important;
  font-weight:950!important;
  line-height:1!important;
  white-space:nowrap!important;
  color:#111b36!important;
}
.board-clean .top-score-board .clean-hud-score .hud-customer-score b,
.board-v3.board-clean .top-score-board .clean-hud-score .hud-customer-score b{
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  font-size:.92rem!important;
  line-height:1!important;
  color:#111b36!important;
}

.board-clean .board-inner-center-area,
.board-v3.board-clean .board-inner-center-area{
  left:21.9%!important;
  top:24.4%!important;
  width:56.2%!important;
  height:51.1%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.board-clean .board-inner-center-area .board-question-card,
.board-v3.board-clean .board-inner-center-area .board-question-card,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready),
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready){
  width:min(98%,820px)!important;
  max-width:98%!important;
  max-height:96%!important;
  overflow:hidden!important;
  margin:auto!important;
}
.board-clean .board-inner-center-area .question-card-inner,
.board-v3.board-clean .board-inner-center-area .question-card-inner{
  overflow:hidden!important;
  gap:clamp(.16rem,.36vw,.3rem)!important;
  padding:clamp(.48rem,.82vw,.76rem) clamp(.72rem,1.12vw,1rem)!important;
}
.board-clean .board-inner-center-area .board-question-card h1,
.board-v3.board-clean .board-inner-center-area .board-question-card h1{
  font-size:clamp(1.55rem,2.15vw,2.45rem)!important;
  line-height:.92!important;
  margin:0!important;
}
.board-clean .board-inner-center-area .board-question-card #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card #questionPrompt{
  font-size:clamp(.76rem,.88vw,.94rem)!important;
  line-height:1.16!important;
}
.board-clean .board-inner-center-area .support-box,
.board-v3.board-clean .board-inner-center-area .support-box{
  overflow:visible!important;
  max-height:none!important;
  padding:.32rem .48rem!important;
  margin:0!important;
}
.board-clean .solo-self-check,
.board-v3.board-clean .solo-self-check{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.18rem .45rem!important;
  padding:.22rem .36rem!important;
  border-radius:12px!important;
  background:rgba(20,32,65,.07)!important;
}
.board-clean .solo-self-check strong,
.board-v3.board-clean .solo-self-check strong{
  grid-column:1 / -1!important;
  text-align:center!important;
  font-size:.64rem!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#6b3f12!important;
}
.board-clean .solo-self-check span,
.board-v3.board-clean .solo-self-check span{
  font-size:clamp(.62rem,.72vw,.76rem)!important;
  line-height:1.08!important;
  font-weight:850!important;
  color:#111b36!important;
}
.board-clean .solo-self-check span::before,
.board-v3.board-clean .solo-self-check span::before{
  content:'✓'!important;
  display:inline-grid!important;
  place-items:center!important;
  width:.95rem!important;
  height:.95rem!important;
  margin-right:.25rem!important;
  border-radius:50%!important;
  background:#f7e9c8!important;
  border:1px solid rgba(200,164,106,.65)!important;
  color:#0b1d3a!important;
  font-size:.62rem!important;
}
.board-clean .answer-help-block,
.board-v3.board-clean .answer-help-block{margin-top:.22rem!important;}
.board-clean .answer-help-block strong,
.board-v3.board-clean .answer-help-block strong{
  display:block!important;
  margin:0 0 .18rem!important;
  font-size:.66rem!important;
  line-height:1!important;
  color:#6b3f12!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
.board-clean .answer-help-chips,
.board-v3.board-clean .answer-help-chips{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.22rem .38rem!important;
}
.board-clean .answer-help-chips span,
.board-v3.board-clean .answer-help-chips span{
  min-height:26px!important;
  padding:.3rem .46rem!important;
  border-radius:999px!important;
  font-size:clamp(.62rem,.72vw,.76rem)!important;
  line-height:1.05!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.board-clean .board-inner-center-area .board-card-actions,
.board-v3.board-clean .board-inner-center-area .board-card-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.35rem!important;
  margin:.06rem 0 0!important;
  overflow:visible!important;
}
.board-clean.solo-mode .board-card-actions .next-turn-button:not(.hidden),
.board-v3.board-clean.solo-mode .board-card-actions .next-turn-button:not(.hidden),
.board-clean.solo-mode .board-card-actions .next-turn-button.is-solo-next,
.board-v3.board-clean.solo-mode .board-card-actions .next-turn-button.is-solo-next{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:180px!important;
  min-height:40px!important;
  padding:.52rem 1.15rem!important;
  font-size:.9rem!important;
  font-weight:950!important;
  opacity:1!important;
  visibility:visible!important;
  flex:0 0 auto!important;
}
.board-clean.solo-mode .board-card-actions .next-turn-button.hidden,
.board-v3.board-clean.solo-mode .board-card-actions .next-turn-button.hidden{display:none!important;}
.board-clean .board-inner-center-area .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-feedback{
  max-height:2.25rem!important;
  overflow:hidden!important;
  font-size:clamp(.6rem,.68vw,.72rem)!important;
  line-height:1.08!important;
  padding:.25rem .45rem!important;
  margin:0!important;
}
.board-clean .board-inner-center-area .is-opinion-card .board-feedback,
.board-v3.board-clean .board-inner-center-area .is-opinion-card .board-feedback{
  max-height:1.75rem!important;
}
@media (max-width:1180px){
  .board-clean.solo-mode .board-top-hud,
  .board-v3.board-clean.solo-mode .board-top-hud,
  .board-clean.team-mode .board-top-hud,
  .board-v3.board-clean.team-mode .board-top-hud,
  .board-clean.class-mode .board-top-hud,
  .board-v3.board-clean.class-mode .board-top-hud{grid-template-columns:1fr!important;overflow:visible!important;}
  .board-clean.solo-mode .hud-score-strip,
  .board-v3.board-clean.solo-mode .hud-score-strip{justify-self:start!important;width:min(100%,330px)!important;}
}

/* 2026-06-22 gameplay readability patch: question text clearer, title less dominant */
.board-clean .board-inner-center-area .board-question-card h1,
.board-v3.board-clean .board-inner-center-area .board-question-card h1{
  font-size:clamp(1.2rem,1.65vw,1.95rem)!important;
  line-height:1!important;
  margin:.04rem 0 .24rem!important;
  letter-spacing:.01em!important;
}
.board-clean .board-inner-center-area .board-question-card #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card #questionPrompt,
.board-clean .board-inner-center-area .board-question-card p#questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card p#questionPrompt{
  font-size:clamp(1.02rem,1.32vw,1.28rem)!important;
  line-height:1.28!important;
  margin:.08rem 0 .55rem!important;
  font-weight:950!important;
  letter-spacing:.005em!important;
  color:#111b36!important;
}
.board-clean .board-inner-center-area .answer-option,
.board-v3.board-clean .board-inner-center-area .answer-option,
.board-clean .board-inner-center-area .choice-button,
.board-v3.board-clean .board-inner-center-area .choice-button{
  font-size:clamp(.92rem,1.05vw,1.08rem)!important;
  line-height:1.18!important;
}

/* === FINAL QUESTION READABILITY BALANCE — all gameplay cards ===
   Decision: reduce the card title so it stops competing with the actual task,
   and make the question sentence the primary reading target.
   Desktop target: title about 22–33px; question about 17–21px. */
.board-clean .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-question-card:not(.is-ready) h1{
  font-size:clamp(1.4rem,1.9vw,2.05rem)!important;
  line-height:.95!important;
  margin:.02rem 0 .04rem!important;
  letter-spacing:.01em!important;
}
.board-clean .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{
  font-size:clamp(1.08rem,1.45vw,1.28rem)!important;
  line-height:1.28!important;
  font-weight:950!important;
  letter-spacing:.005em!important;
  max-width:100%!important;
  text-align:center!important;
  text-wrap:balance!important;
}
.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn{
  font-size:clamp(.9rem,1.02vw,1rem)!important;
  line-height:1.18!important;
  min-height:40px!important;
}
.board-clean .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{
  gap:clamp(.24rem,.5vw,.38rem)!important;
}
@media (max-width:920px){
  .board-clean .board-question-card:not(.is-ready) h1,
  .board-v3.board-clean .board-question-card:not(.is-ready) h1{font-size:clamp(1.25rem,2.4vw,1.7rem)!important;}
  .board-clean .board-question-card:not(.is-ready) #questionPrompt,
  .board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{font-size:clamp(1rem,2vw,1.12rem)!important;line-height:1.24!important;}
  .board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
  .board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn{font-size:.9rem!important;}
}
@media (max-width:720px){
  .board-clean .board-question-card:not(.is-ready) h1,
  .board-v3.board-clean .board-question-card:not(.is-ready) h1{font-size:1.22rem!important;}
  .board-clean .board-question-card:not(.is-ready) #questionPrompt,
  .board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{font-size:.96rem!important;line-height:1.22!important;}
}

/* === 2026-06-22 PATCH: make Solo Next Card visibly appear inside gameplay card ===
   Cause: older rules hid #nextTeamBtn in solo mode with ID specificity.
   This final rule only shows it after JS removes .hidden. */
.board-clean.solo-mode .board-card-actions #nextTeamBtn.next-turn-button:not(.hidden),
.board-v3.board-clean.solo-mode .board-card-actions #nextTeamBtn.next-turn-button:not(.hidden){
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  flex:1 1 220px!important;
  min-width:min(100%,220px)!important;
  min-height:44px!important;
  padding:.62rem 1.25rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#ffe7a8 0%,#d8ac43 55%,#a56e20 100%)!important;
  color:#111b36!important;
  border:2px solid rgba(255,231,168,.92)!important;
  box-shadow:0 10px 18px rgba(0,0,0,.22),0 0 14px rgba(214,175,71,.38)!important;
  font-size:clamp(.92rem,1.05vw,1.08rem)!important;
  font-weight:950!important;
  line-height:1!important;
}
.board-clean.solo-mode .board-card-actions #nextTeamBtn.next-turn-button.hidden,
.board-v3.board-clean.solo-mode .board-card-actions #nextTeamBtn.next-turn-button.hidden{
  display:none!important;
}
.board-clean.solo-mode .board-question-card:not(.is-ready) .board-card-actions,
.board-v3.board-clean.solo-mode .board-question-card:not(.is-ready) .board-card-actions{
  justify-content:flex-start!important;
  align-items:center!important;
  gap:.4rem!important;
}


/* === 2026-06-22 PATCH: clickable Solo Next Card button inside card ===
   Keep this as a real in-card action, not only status text. */
.board-clean .board-inner-center-area .power-tools.solo-next-panel,
.board-v3.board-clean .board-inner-center-area .power-tools.solo-next-panel{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:.18rem 0 .1rem!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  position:relative!important;
  z-index:80!important;
  pointer-events:auto!important;
}
.board-clean .board-inner-center-area .solo-inline-next-btn,
.board-v3.board-clean .board-inner-center-area .solo-inline-next-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:min(100%,260px)!important;
  min-height:46px!important;
  padding:.68rem 1.45rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#ffe7a8 0%,#d8ac43 55%,#a56e20 100%)!important;
  color:#111b36!important;
  border:2px solid rgba(255,231,168,.94)!important;
  box-shadow:0 12px 20px rgba(0,0,0,.24),0 0 16px rgba(214,175,71,.42)!important;
  font-size:clamp(1rem,1.18vw,1.14rem)!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
}
.board-clean .board-inner-center-area .solo-inline-next-btn:disabled,
.board-v3.board-clean .board-inner-center-area .solo-inline-next-btn:disabled{
  opacity:.72!important;
  cursor:wait!important;
}

/* === 2026-06-22 TYPOGRAPHY ONLY PATCH — no card size/layout changes ===
   Applied after Solo Next Card patch. Purpose: reduce gameplay-card titles,
   make the actual question easier to read, and left-align the question sentence
   across Solo Study, Player Challenge, and Class Play. This does not change
   card width/height, board placement, mode logic, deck logic, or scoring. */
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) h1,
.board-clean .board-question-card:not(.is-ready) h1,
.board-v3.board-clean .board-question-card:not(.is-ready) h1{
  font-size:clamp(1.22rem,1.52vw,1.72rem)!important;
  line-height:1!important;
  margin:.02rem 0 .16rem!important;
  text-align:center!important;
  letter-spacing:.008em!important;
}
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) #questionPrompt,
.board-clean .board-question-card:not(.is-ready) #questionPrompt,
.board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt,
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) p#questionPrompt,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) p#questionPrompt{
  align-self:stretch!important;
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(1.12rem,1.42vw,1.34rem)!important;
  line-height:1.32!important;
  margin:.08rem 0 .6rem!important;
  text-align:left!important;
  text-wrap:normal!important;
  font-weight:950!important;
  color:#111b36!important;
}
.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-inner-center-area .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn,
.board-v3.board-clean .board-question-card:not(.is-ready) .board-answer-options .answer-btn{
  font-size:clamp(.94rem,1.05vw,1.06rem)!important;
  line-height:1.2!important;
}
@media (max-width:920px){
  .board-clean .board-question-card:not(.is-ready) h1,
  .board-v3.board-clean .board-question-card:not(.is-ready) h1{font-size:clamp(1.16rem,2.15vw,1.48rem)!important;}
  .board-clean .board-question-card:not(.is-ready) #questionPrompt,
  .board-v3.board-clean .board-question-card:not(.is-ready) #questionPrompt{font-size:clamp(1rem,1.9vw,1.14rem)!important;line-height:1.28!important;}
}

/* === 2026-06-22 HUD THEME POLISH — all gameplay modes, no size/text changes ===
   Scope: visual color polish + subtle Unit 9 board-game motion for Solo, Player Challenge,
   and Class Play. This intentionally does not change card sizes, HUD text, HTML text,
   deck logic, scoring, or mode logic. */
.board-clean.solo-mode .board-top-hud,
.board-clean.team-mode .board-top-hud,
.board-clean.class-mode .board-top-hud,
.board-v3.board-clean.solo-mode .board-top-hud,
.board-v3.board-clean.team-mode .board-top-hud,
.board-v3.board-clean.class-mode .board-top-hud{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(245,215,128,.20),transparent 32%),
    radial-gradient(circle at 78% 100%,rgba(125,36,53,.18),transparent 38%),
    linear-gradient(145deg,rgba(9,18,40,.98),rgba(15,32,65,.96) 54%,rgba(8,16,35,.98))!important;
  border-color:rgba(245,215,128,.38)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.36),0 0 0 1px rgba(255,242,194,.07),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
.board-clean.solo-mode .board-top-hud::before,
.board-clean.team-mode .board-top-hud::before,
.board-clean.class-mode .board-top-hud::before,
.board-v3.board-clean.solo-mode .board-top-hud::before,
.board-v3.board-clean.team-mode .board-top-hud::before,
.board-v3.board-clean.class-mode .board-top-hud::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,242,194,.14) 48%,transparent 58%,transparent 100%)!important;
  transform:translateX(-120%)!important;
  animation:bbHudGoldSweep 7.5s ease-in-out infinite!important;
}
.board-clean.solo-mode .board-top-hud::after,
.board-clean.team-mode .board-top-hud::after,
.board-clean.class-mode .board-top-hud::after,
.board-v3.board-clean.solo-mode .board-top-hud::after,
.board-v3.board-clean.team-mode .board-top-hud::after,
.board-v3.board-clean.class-mode .board-top-hud::after{
  content:""!important;
  position:absolute!important;
  inset:1px!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  box-shadow:inset 0 0 18px rgba(245,215,128,.08),inset 0 -1px 0 rgba(125,36,53,.26)!important;
}
.board-clean .hud-turn-block,
.board-clean .hud-score-strip,
.board-v3.board-clean .hud-turn-block,
.board-v3.board-clean .hud-score-strip{
  position:relative!important;
  background:
    linear-gradient(145deg,rgba(255,248,226,.12),rgba(214,175,71,.08) 44%,rgba(9,18,40,.18))!important;
  border-color:rgba(245,215,128,.27)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 8px 18px rgba(0,0,0,.15)!important;
}
.board-clean .hud-score-strip,
.board-v3.board-clean .hud-score-strip{
  background:
    linear-gradient(145deg,rgba(255,248,226,.94),rgba(232,216,180,.90) 58%,rgba(202,176,121,.86))!important;
  border-color:rgba(96,65,22,.28)!important;
  box-shadow:0 10px 20px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 rgba(96,65,22,.18)!important;
}
.board-clean .hud-score-strip::before,
.board-v3.board-clean .hud-score-strip::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.26) 46%,transparent 62%)!important;
  transform:translateX(-135%)!important;
  animation:bbScoreSoftShine 8s ease-in-out infinite!important;
}
.board-clean .score-title-mini,
.board-v3.board-clean .score-title-mini{
  color:#102040!important;
  text-shadow:0 1px 0 rgba(255,255,255,.62)!important;
}
.board-clean .score-title-mini small,
.board-v3.board-clean .score-title-mini small{color:#513617!important;}
.board-clean .top-score-board .full-team-score,
.board-v3.board-clean .top-score-board .full-team-score{
  background:linear-gradient(145deg,rgba(255,253,244,.98),rgba(239,224,184,.94))!important;
  border:1px solid rgba(104,70,25,.22)!important;
  color:#0B1D3A!important;
  box-shadow:0 7px 14px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.76)!important;
}
.board-clean .top-score-board .full-team-score.is-active,
.board-v3.board-clean .top-score-board .full-team-score.is-active{
  border-color:rgba(214,175,71,.72)!important;
  box-shadow:0 8px 16px rgba(0,0,0,.18),0 0 12px rgba(214,175,71,.34),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
.board-clean .top-score-board .full-team-score b,
.board-v3.board-clean .top-score-board .full-team-score b{
  color:#0B1D3A!important;
  background:linear-gradient(145deg,#FFF2C2,#D4AF37)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.55)!important;
}
.board-clean .top-score-board .team-token img,
.board-v3.board-clean .top-score-board .team-token img,
.board-clean .pawns-layer img,
.board-clean .full-pawns-layer img,
.board-v3.board-clean .pawns-layer img,
.board-v3.board-clean .full-pawns-layer img{
  filter:saturate(1.16) contrast(1.06) drop-shadow(0 5px 7px rgba(0,0,0,.26)) drop-shadow(0 0 5px rgba(214,175,71,.22))!important;
}
.board-clean .pawns-layer img,
.board-clean .full-pawns-layer img,
.board-v3.board-clean .pawns-layer img,
.board-v3.board-clean .full-pawns-layer img{
  animation:bbTokenPremiumPulse 4.8s ease-in-out infinite!important;
}
.board-clean .command-home,
.board-clean .command-actions.hud-actions .command-btn,
.board-v3.board-clean .command-home,
.board-v3.board-clean .command-actions.hud-actions .command-btn{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(145deg,rgba(38,48,74,.96),rgba(20,30,54,.94) 58%,rgba(12,20,38,.98))!important;
  border-color:rgba(245,215,128,.42)!important;
  color:#FFF2C2!important;
  text-shadow:0 1px 0 rgba(0,0,0,.38)!important;
  box-shadow:0 10px 20px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.13)!important;
}
.board-clean .command-actions.hud-actions #soundBtn{
  background:linear-gradient(145deg,rgba(36,62,72,.96),rgba(17,40,55,.94) 58%,rgba(12,24,39,.98))!important;
}
.board-clean .command-actions.hud-actions #shuffleBtn{
  background:linear-gradient(145deg,rgba(63,53,38,.97),rgba(37,34,42,.94) 58%,rgba(15,22,38,.98))!important;
}
.board-clean .command-actions.hud-actions .danger-command,
.board-v3.board-clean .command-actions.hud-actions .danger-command{
  background:linear-gradient(145deg,rgba(137,36,48,.95),rgba(93,20,34,.96) 58%,rgba(50,12,22,.98))!important;
  border-color:rgba(255,205,146,.36)!important;
  color:#FFF2C2!important;
}
.board-clean .command-home::after,
.board-clean .command-actions.hud-actions .command-btn::after,
.board-v3.board-clean .command-home::after,
.board-v3.board-clean .command-actions.hud-actions .command-btn::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(115deg,transparent 0%,rgba(255,242,194,.20) 48%,transparent 62%)!important;
  transform:translateX(-140%)!important;
  transition:transform .55s ease!important;
}
.board-clean .command-home:hover::after,
.board-clean .command-home:focus-visible::after,
.board-clean .command-actions.hud-actions .command-btn:hover::after,
.board-clean .command-actions.hud-actions .command-btn:focus-visible::after,
.board-v3.board-clean .command-home:hover::after,
.board-v3.board-clean .command-home:focus-visible::after,
.board-v3.board-clean .command-actions.hud-actions .command-btn:hover::after,
.board-v3.board-clean .command-actions.hud-actions .command-btn:focus-visible::after{
  transform:translateX(140%)!important;
}
.board-clean .command-actions.hud-actions #shuffleBtn:not(:disabled){
  animation:bbShuffleButtonBreath 6.6s ease-in-out infinite!important;
}
.board-clean .full-board-stage,
.board-v3.board-clean .full-board-stage{
  position:relative!important;
}
.board-clean .full-board-stage::after,
.board-v3.board-clean .full-board-stage::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 21% 20%,rgba(255,242,194,.055),transparent 9%),
    radial-gradient(circle at 78% 72%,rgba(214,175,71,.055),transparent 10%),
    linear-gradient(120deg,transparent 44%,rgba(255,242,194,.035) 50%,transparent 57%)!important;
  animation:bbBoardAmbientGlow 9s ease-in-out infinite!important;
  mix-blend-mode:screen!important;
}
@keyframes bbHudGoldSweep{0%,22%{transform:translateX(-120%);opacity:0}34%{opacity:1}52%{transform:translateX(120%);opacity:.75}100%{transform:translateX(120%);opacity:0}}
@keyframes bbScoreSoftShine{0%,30%{transform:translateX(-135%);opacity:0}42%{opacity:.75}58%{transform:translateX(135%);opacity:.34}100%{transform:translateX(135%);opacity:0}}
@keyframes bbTokenPremiumPulse{0%,100%{filter:saturate(1.16) contrast(1.06) drop-shadow(0 5px 7px rgba(0,0,0,.26)) drop-shadow(0 0 5px rgba(214,175,71,.20))}50%{filter:saturate(1.25) contrast(1.08) drop-shadow(0 6px 8px rgba(0,0,0,.28)) drop-shadow(0 0 10px rgba(214,175,71,.34))}}
@keyframes bbShuffleButtonBreath{0%,100%{box-shadow:0 10px 20px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.13)}50%{box-shadow:0 10px 20px rgba(0,0,0,.28),0 0 14px rgba(214,175,71,.22),inset 0 1px 0 rgba(255,255,255,.15)}}
@keyframes bbBoardAmbientGlow{0%,100%{opacity:.58}50%{opacity:.9}}
@media (prefers-reduced-motion:reduce){
  .board-clean .board-top-hud::before,
  .board-v3.board-clean .board-top-hud::before,
  .board-clean .hud-score-strip::before,
  .board-v3.board-clean .hud-score-strip::before,
  .board-clean .pawns-layer img,
  .board-clean .full-pawns-layer img,
  .board-v3.board-clean .pawns-layer img,
  .board-v3.board-clean .full-pawns-layer img,
  .board-clean .command-actions.hud-actions #shuffleBtn:not(:disabled),
  .board-clean .full-board-stage::after,
  .board-v3.board-clean .full-board-stage::after{
    animation:none!important;
  }
}

/* === 2026-06-22 FINAL COMBINED HUD + TOKEN + SETUP CONTRAST PATCH ===
   Scope: applies to Solo Study, Player Challenge, and Class Play. Does not change
   gameplay-card size, questions, deck setup logic, scoring logic, or board image. */

/* 1) Icon-only command controls: Game Setup, Sound, Shuffle, New Game. Same visual size. */
.board-clean .board-top-hud .command-home.icon-command,
.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command,
.board-v3.board-clean .board-top-hud .command-home.icon-command,
.board-v3.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command{
  width:50px!important;
  min-width:50px!important;
  max-width:50px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:15px!important;
  font-size:0!important;
  text-decoration:none!important;
}
.board-clean .board-top-hud .command-icon,
.board-v3.board-clean .board-top-hud .command-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:1.25rem!important;
  line-height:1!important;
  color:#FFF2C2!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.42));
  position:relative!important;
  z-index:2!important;
}
.board-clean .board-top-hud #newRoundBtn .command-icon,
.board-v3.board-clean .board-top-hud #newRoundBtn .command-icon{font-size:1.35rem!important;}
.board-clean .board-top-hud #shuffleBtn .command-icon,
.board-v3.board-clean .board-top-hud #shuffleBtn .command-icon{font-size:1.18rem!important;}
.board-clean .board-top-hud #soundBtn[aria-pressed="false"] .command-icon,
.board-v3.board-clean .board-top-hud #soundBtn[aria-pressed="false"] .command-icon{opacity:.9!important;}
.board-clean .board-top-hud .hud-actions,
.board-v3.board-clean .board-top-hud .hud-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:.38rem!important;
  min-width:0!important;
}
.board-clean .board-top-hud,
.board-v3.board-clean .board-top-hud{
  grid-template-columns:auto minmax(210px,.82fr) minmax(320px,1.45fr) auto auto!important;
}

/* 2) Compact non-solo score chips: token + short label + score + customer icon. */
.board-clean.team-mode .hud-score-strip,
.board-clean.class-mode .hud-score-strip,
.board-v3.board-clean.team-mode .hud-score-strip,
.board-v3.board-clean.class-mode .hud-score-strip{
  grid-template-columns:minmax(0,1fr)!important;
  height:58px!important;
  min-width:0!important;
  overflow:visible!important;
}
.board-clean.team-mode .score-title-mini,
.board-clean.class-mode .score-title-mini,
.board-v3.board-clean.team-mode .score-title-mini,
.board-v3.board-clean.class-mode .score-title-mini{display:none!important;}
.board-clean.team-mode .top-score-board,
.board-v3.board-clean.team-mode .top-score-board{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(80px,1fr))!important;
  gap:.28rem!important;
  overflow:visible!important;
  align-items:center!important;
}
.board-clean.class-mode .top-score-board,
.board-v3.board-clean.class-mode .top-score-board{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(64px,1fr))!important;
  gap:.24rem!important;
  overflow:visible!important;
  align-items:center!important;
}
.board-clean .top-score-board .compact-score-chip,
.board-v3.board-clean .top-score-board .compact-score-chip{
  min-width:0!important;
  max-width:none!important;
  width:100%!important;
  height:26px!important;
  min-height:26px!important;
  display:grid!important;
  grid-template-columns:20px auto minmax(18px,auto) 14px!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  column-gap:.22rem!important;
  padding:.12rem .28rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,rgba(255,252,239,.98),rgba(232,214,174,.96))!important;
  border:1px solid rgba(123,81,28,.24)!important;
  box-shadow:0 5px 10px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.8)!important;
  overflow:hidden!important;
}
.board-clean .top-score-board .compact-score-chip.is-active,
.board-v3.board-clean .top-score-board .compact-score-chip.is-active{
  border-color:rgba(214,175,71,.86)!important;
  box-shadow:0 6px 12px rgba(0,0,0,.16),0 0 12px rgba(214,175,71,.42),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
.board-clean .top-score-board .compact-score-chip .team-token,
.board-v3.board-clean .top-score-board .compact-score-chip .team-token{
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  border-radius:50%!important;
}
.board-clean .top-score-board .compact-score-chip .team-token img,
.board-v3.board-clean .top-score-board .compact-score-chip .team-token img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.board-clean .top-score-board .compact-score-chip .team-short-label,
.board-v3.board-clean .top-score-board .compact-score-chip .team-short-label{
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:950!important;
  color:#0B1D3A!important;
  white-space:nowrap!important;
}
.board-clean .top-score-board .compact-score-chip b,
.board-v3.board-clean .top-score-board .compact-score-chip b{
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  color:#0B1D3A!important;
  font-size:.84rem!important;
  line-height:1!important;
  text-align:right!important;
}
.board-clean .top-score-board .compact-score-chip .customer-mini-icon,
.board-v3.board-clean .top-score-board .compact-score-chip .customer-mini-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:13px!important;
  height:13px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#FFF2C2,#D4AF37)!important;
  color:#5B3410!important;
  font-size:.52rem!important;
  line-height:1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.66)!important;
}
.board-clean .top-score-board .compact-score-chip small,
.board-v3.board-clean .top-score-board .compact-score-chip small{display:none!important;}
.board-clean .top-score-board .compact-score-chip.is-active small,
.board-v3.board-clean .top-score-board .compact-score-chip.is-active small{
  display:none!important;
}

/* 3) Keep action buttons and status inside gameplay cards. No size change to the card itself. */
.board-clean .board-inner-center-area .board-card-actions,
.board-v3.board-clean .board-inner-center-area .board-card-actions{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  z-index:90!important;
  align-self:stretch!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.34rem!important;
  margin-top:.18rem!important;
  margin-bottom:0!important;
  pointer-events:auto!important;
}
.board-clean .board-inner-center-area .board-card-actions .btn,
.board-v3.board-clean .board-inner-center-area .board-card-actions .btn{
  position:relative!important;
  z-index:91!important;
  pointer-events:auto!important;
}
.board-clean .board-inner-center-area .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-feedback{
  position:relative!important;
  z-index:80!important;
  align-self:stretch!important;
  margin-top:.18rem!important;
  margin-bottom:0!important;
  pointer-events:none!important;
}
.board-clean .board-question-card.is-opinion-card .support-box,
.board-v3.board-clean .board-question-card.is-opinion-card .support-box{
  max-height:116px!important;
  overflow:hidden!important;
}
.board-clean .board-question-card.is-opinion-card .board-card-actions,
.board-v3.board-clean .board-question-card.is-opinion-card .board-card-actions{
  margin-top:.18rem!important;
}

/* 4) Setup contrast: red/burgundy ACTIVE toggles use light readable text. */
.refined-setup-panel .player-active-toggle input:checked + span,
.game-setup-v2 .player-active-toggle input:checked + span,
.player-active-toggle input:checked + span,
.refined-setup-panel .premium-toggle input:checked + span,
.premium-toggle input:checked + span{
  color:#FFF3CF!important;
  text-shadow:0 1px 2px rgba(0,0,0,.48)!important;
  border-color:rgba(255,232,168,.32)!important;
}

/* 5) Teal replacement for the old purple marker across setup and board UI. */
[style*="#5B2EFF"],
[style*="rgb(91, 46, 255)"]{--checker-color:#008C9E!important;--team-color:#008C9E!important;}
.refined-setup-panel .checker-player-card[style*="#008C9E"] .checker-preview-frame,
.refined-setup-panel .checker-player-card[style*="0, 140, 158"] .checker-preview-frame{
  background:linear-gradient(180deg,rgba(0,74,86,.92),rgba(0,140,158,.42))!important;
}

/* === 2026-06-22 FINAL START PATCH — compact HUD, clear start action, teal token, contained controls ===
   Scope: UI only. No gameplay-card size changes, no question/deck/scoring logic changes. */

/* HUD layout: fixed control areas so score chips cannot squeeze the dice/actions. */
.board-clean .board-top-hud,
.board-v3.board-clean .board-top-hud{
  grid-template-columns:52px minmax(230px,.82fr) minmax(410px,1.38fr) 74px minmax(162px,auto)!important;
  column-gap:.46rem!important;
  align-items:center!important;
}
.board-clean .hud-turn-block,
.board-v3.board-clean .hud-turn-block{
  min-width:0!important;
  padding:.34rem .48rem!important;
  border-radius:12px!important;
  background:linear-gradient(120deg,rgba(255,255,255,.055),rgba(255,248,232,.025))!important;
  border:1px solid rgba(226,198,132,.16)!important;
}
.board-clean .hud-score-strip,
.board-v3.board-clean .hud-score-strip{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  background:linear-gradient(145deg,rgba(255,248,232,.10),rgba(20,34,71,.22))!important;
  border:1px solid rgba(226,198,132,.24)!important;
}
.board-clean .hud-dice-area,
.board-v3.board-clean .hud-dice-area{
  width:72px!important;
  min-width:72px!important;
  justify-self:center!important;
}
.board-clean .hud-actions,
.board-v3.board-clean .hud-actions{
  width:162px!important;
  min-width:162px!important;
  justify-content:flex-end!important;
}
.board-clean .board-top-hud .command-home.icon-command,
.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command,
.board-v3.board-clean .board-top-hud .command-home.icon-command,
.board-v3.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command{
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  height:42px!important;
  min-height:42px!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,rgba(26,43,83,.96),rgba(11,29,58,.92))!important;
  border:1px solid rgba(226,198,132,.35)!important;
  box-shadow:0 9px 18px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.09)!important;
}
.board-clean .board-top-hud .command-actions.hud-actions #newRoundBtn.icon-command,
.board-v3.board-clean .board-top-hud .command-actions.hud-actions #newRoundBtn.icon-command{
  background:linear-gradient(145deg,#8B1028,#5a0b19)!important;
  border-color:rgba(255,231,168,.25)!important;
}
.board-clean .board-top-hud .command-home.icon-command:hover,
.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command:hover,
.board-v3.board-clean .board-top-hud .command-home.icon-command:hover,
.board-v3.board-clean .board-top-hud .command-actions.hud-actions .command-btn.icon-command:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 13px 22px rgba(0,0,0,.32),0 0 14px rgba(226,198,132,.18),inset 0 1px 0 rgba(255,255,255,.12)!important;
}

/* Compact score grid: icon + short label + score + star. No tiny repeated words. */
.board-clean.team-mode .top-score-board.score-players.count-2,
.board-v3.board-clean.team-mode .top-score-board.score-players.count-2{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(116px,1fr))!important;
  grid-auto-rows:26px!important;
  gap:.25rem!important;
}
.board-clean.team-mode .top-score-board.score-players.count-3,
.board-v3.board-clean.team-mode .top-score-board.score-players.count-3{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(100px,1fr))!important;
  grid-auto-rows:26px!important;
  gap:.25rem!important;
}
.board-clean.team-mode .top-score-board.score-players.count-4,
.board-v3.board-clean.team-mode .top-score-board.score-players.count-4{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(126px,1fr))!important;
  grid-auto-rows:25px!important;
  gap:.22rem .28rem!important;
}
.board-clean.class-mode .top-score-board.score-class,
.board-v3.board-clean.class-mode .top-score-board.score-class{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(86px,1fr))!important;
  grid-auto-rows:25px!important;
  gap:.22rem .25rem!important;
}
.board-clean .top-score-board .compact-score-chip,
.board-v3.board-clean .top-score-board .compact-score-chip{
  grid-template-columns:18px 28px minmax(20px,1fr) 14px!important;
  height:25px!important;
  min-height:25px!important;
  padding:.1rem .3rem!important;
  column-gap:.24rem!important;
  border:1px solid rgba(123,81,28,.26)!important;
  background:linear-gradient(145deg,#fffdf3,#e7d3a7)!important;
  overflow:hidden!important;
}
.board-clean .top-score-board .compact-score-chip .team-token,
.board-v3.board-clean .top-score-board .compact-score-chip .team-token{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
}
.board-clean .top-score-board .compact-score-chip .team-short-label,
.board-v3.board-clean .top-score-board .compact-score-chip .team-short-label{
  font-size:.7rem!important;
  letter-spacing:.01em!important;
}
.board-clean .top-score-board .compact-score-chip b,
.board-v3.board-clean .top-score-board .compact-score-chip b{
  font-size:.88rem!important;
  font-weight:950!important;
  justify-self:end!important;
}
.board-clean .top-score-board .compact-score-chip small,
.board-v3.board-clean .top-score-board .compact-score-chip small{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  height:0!important;
  overflow:hidden!important;
}
.board-clean .top-score-board .compact-score-chip.is-active,
.board-v3.board-clean .top-score-board .compact-score-chip.is-active{
  background:linear-gradient(145deg,#fff8db,#eacb76)!important;
  border-color:#D6AF47!important;
  box-shadow:0 0 0 2px rgba(214,175,71,.35),0 8px 15px rgba(0,0,0,.18),0 0 12px rgba(214,175,71,.36)!important;
}
.board-clean .top-score-board .compact-score-chip.is-active .team-short-label::after,
.board-v3.board-clean .top-score-board .compact-score-chip.is-active .team-short-label::after{
  content:""!important;
  display:inline-block!important;
  width:5px!important;
  height:5px!important;
  margin-left:4px!important;
  border-radius:50%!important;
  background:#8B1028!important;
  box-shadow:0 0 6px rgba(139,16,40,.45)!important;
}

/* Clear start card action for Player Challenge and Class Play. */
.board-clean .board-question-card.is-deck-ready .support-box,
.board-v3.board-clean .board-question-card.is-deck-ready .support-box{
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:.15rem 0 0!important;
  margin:.2rem 0 0!important;
  max-height:none!important;
  overflow:visible!important;
}
.board-clean .board-start-action-panel,
.board-v3.board-clean .board-start-action-panel{
  display:grid!important;
  place-items:center!important;
  gap:.42rem!important;
  width:100%!important;
}
.board-clean .board-start-roll-btn,
.board-v3.board-clean .board-start-roll-btn{
  min-width:clamp(150px,18vw,230px)!important;
  min-height:42px!important;
  padding:.62rem 1.15rem!important;
  border-radius:999px!important;
  font-size:clamp(.9rem,1vw,1.08rem)!important;
  letter-spacing:.02em!important;
  background:linear-gradient(145deg,#FFE49C,#D4AF37 58%,#9B681F)!important;
  color:#0B1D3A!important;
  border:1px solid rgba(255,242,190,.7)!important;
  box-shadow:0 12px 22px rgba(0,0,0,.22),0 0 18px rgba(214,175,71,.28),inset 0 1px 0 rgba(255,255,255,.62)!important;
}
.board-clean .board-start-roll-btn:hover,
.board-v3.board-clean .board-start-roll-btn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 16px 26px rgba(0,0,0,.28),0 0 20px rgba(214,175,71,.36),inset 0 1px 0 rgba(255,255,255,.7)!important;
}
.board-clean .board-start-action-panel small,
.board-v3.board-clean .board-start-action-panel small{
  color:#5C3E1F!important;
  font-size:.74rem!important;
  font-weight:900!important;
  text-align:center!important;
}
.board-clean .board-question-card.is-deck-ready .board-feedback,
.board-v3.board-clean .board-question-card.is-deck-ready .board-feedback{
  display:none!important;
}

/* Ensure gameplay actions never drop outside the card. */
.board-clean .board-inner-center-area .board-card-actions,
.board-v3.board-clean .board-inner-center-area .board-card-actions{
  position:relative!important;
  z-index:92!important;
  margin-top:.22rem!important;
  margin-bottom:0!important;
  transform:none!important;
}
.board-clean .board-inner-center-area .board-card-actions .btn,
.board-v3.board-clean .board-inner-center-area .board-card-actions .btn{
  pointer-events:auto!important;
}
.board-clean .board-inner-center-area .board-feedback,
.board-v3.board-clean .board-inner-center-area .board-feedback{
  position:relative!important;
  z-index:80!important;
  margin-top:.2rem!important;
  margin-bottom:0!important;
}

/* Stronger setup contrast for red ACTIVE toggles. */
.refined-setup-panel .player-active-toggle input:checked + span,
.game-setup-v2 .player-active-toggle input:checked + span,
.player-active-toggle input:checked + span,
.refined-setup-panel .premium-toggle input:checked + span,
.premium-toggle input:checked + span{
  color:#FFF8E8!important;
  text-shadow:0 1px 2px rgba(0,0,0,.62)!important;
  font-weight:950!important;
}

/* The old purple team slot now displays as teal everywhere, including setup previews. */
.refined-setup-panel .checker-player-card[style*="#008C9E"] .checker-preview-frame,
.refined-setup-panel .checker-player-card[style*="0, 140, 158"] .checker-preview-frame,
.checker-player-card[style*="#008C9E"] .checker-preview-frame{
  background:linear-gradient(180deg,rgba(0,61,70,.92),rgba(0,140,158,.32))!important;
}
@media (max-width:1180px){
  .board-clean .board-top-hud,
  .board-v3.board-clean .board-top-hud{
    grid-template-columns:52px minmax(190px,1fr) minmax(300px,1.25fr) 72px minmax(152px,auto)!important;
  }
  .board-clean.team-mode .top-score-board.score-players.count-3,
  .board-v3.board-clean.team-mode .top-score-board.score-players.count-3,
  .board-clean.class-mode .top-score-board.score-class,
  .board-v3.board-clean.class-mode .top-score-board.score-class{
    grid-template-columns:repeat(3,minmax(72px,1fr))!important;
  }
}

/* PATCH 2026-06-22 — make HUD action icons readable on the navy header and add subtle brand-game motion. */
.board-clean .command-actions.hud-actions,
.board-v3.board-clean .command-actions.hud-actions{
  isolation:isolate!important;
}
.board-clean .command-actions.hud-actions .command-btn,
.board-v3.board-clean .command-actions.hud-actions .command-btn,
.board-clean .command-home.icon-command,
.board-v3.board-clean .command-home.icon-command{
  position:relative!important;
  width:clamp(42px,3.7vw,54px)!important;
  height:clamp(42px,3.7vw,54px)!important;
  min-width:clamp(42px,3.7vw,54px)!important;
  min-height:clamp(42px,3.7vw,54px)!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:15px!important;
  color:#FFF6D8!important;
  border:1.5px solid rgba(255,226,149,.72)!important;
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.35),transparent 30%),
    linear-gradient(145deg,#244560 0%,#112B44 46%,#071A2C 100%)!important;
  box-shadow:
    0 10px 20px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,246,216,.10),
    0 0 16px rgba(214,175,71,.18),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -8px 16px rgba(0,0,0,.24)!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
.board-clean .command-actions.hud-actions .command-btn::before,
.board-v3.board-clean .command-actions.hud-actions .command-btn::before,
.board-clean .command-home.icon-command::before,
.board-v3.board-clean .command-home.icon-command::before{
  content:""!important;
  position:absolute!important;
  inset:3px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:linear-gradient(110deg,transparent 0%,rgba(255,244,205,.18) 44%,transparent 58%)!important;
  background-size:230% 100%!important;
  opacity:.72!important;
  pointer-events:none!important;
  animation:bbHudSheen 5.5s ease-in-out infinite!important;
}
.board-clean .command-actions.hud-actions .command-icon,
.board-v3.board-clean .command-actions.hud-actions .command-icon,
.board-clean .command-home.icon-command .command-icon,
.board-v3.board-clean .command-home.icon-command .command-icon{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  font-size:clamp(1.08rem,1.45vw,1.38rem)!important;
  line-height:1!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45)) drop-shadow(0 0 6px rgba(255,226,149,.36))!important;
  transform:translateZ(0)!important;
}
.board-clean .command-actions.hud-actions #soundBtn,
.board-v3.board-clean .command-actions.hud-actions #soundBtn{
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.35),transparent 30%),
    linear-gradient(145deg,#1E5F68 0%,#0F3F4A 48%,#082432 100%)!important;
}
.board-clean .command-actions.hud-actions #shuffleBtn,
.board-v3.board-clean .command-actions.hud-actions #shuffleBtn{
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.35),transparent 30%),
    linear-gradient(145deg,#2A62A8 0%,#173C72 48%,#0A1D3B 100%)!important;
}
.board-clean .command-actions.hud-actions .danger-command,
.board-v3.board-clean .command-actions.hud-actions .danger-command{
  background:
    radial-gradient(circle at 28% 18%,rgba(255,255,255,.30),transparent 30%),
    linear-gradient(145deg,#A73538 0%,#7B1727 50%,#3F0A16 100%)!important;
  border-color:rgba(255,218,151,.72)!important;
  color:#FFF2C8!important;
}
.board-clean .command-actions.hud-actions .command-btn:hover,
.board-clean .command-actions.hud-actions .command-btn:focus-visible,
.board-v3.board-clean .command-actions.hud-actions .command-btn:hover,
.board-v3.board-clean .command-actions.hud-actions .command-btn:focus-visible,
.board-clean .command-home.icon-command:hover,
.board-clean .command-home.icon-command:focus-visible,
.board-v3.board-clean .command-home.icon-command:hover,
.board-v3.board-clean .command-home.icon-command:focus-visible{
  transform:translateY(-1px)!important;
  box-shadow:
    0 14px 24px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,246,216,.18),
    0 0 22px rgba(214,175,71,.34),
    inset 0 1px 0 rgba(255,255,255,.32),
    inset 0 -8px 16px rgba(0,0,0,.22)!important;
}
.board-clean .command-actions.hud-actions .command-btn:active,
.board-v3.board-clean .command-actions.hud-actions .command-btn:active,
.board-clean .command-home.icon-command:active,
.board-v3.board-clean .command-home.icon-command:active{
  transform:translateY(1px) scale(.98)!important;
}

/* Gentle board-game atmosphere: luxury desk glow, gold shimmer, and branded token pulse. */
.board-clean .board-top-hud,
.board-v3.board-clean .board-top-hud{
  box-shadow:
    0 12px 26px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 28px rgba(214,175,71,.10)!important;
}
.board-clean .board-top-hud::after,
.board-v3.board-clean .board-top-hud::after{
  animation:bbHudLineGlow 4.8s ease-in-out infinite!important;
}
.board-clean .board-frame::before,
.board-v3.board-clean .board-frame::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  z-index:18!important;
  background:
    radial-gradient(circle at 48% 42%,rgba(255,230,158,.10),transparent 34%),
    radial-gradient(circle at 12% 18%,rgba(64,184,196,.08),transparent 22%),
    radial-gradient(circle at 86% 82%,rgba(199,64,70,.07),transparent 24%)!important;
  mix-blend-mode:screen!important;
  opacity:.55!important;
  animation:bbBoardAmbient 7.5s ease-in-out infinite!important;
}
.board-clean .premium-card-deck-stage,
.board-v3.board-clean .premium-card-deck-stage{
  animation:bbDeckBreath 4.6s ease-in-out infinite!important;
  transform-origin:center center!important;
}
.board-clean .full-pawns-layer img,
.board-v3.board-clean .full-pawns-layer img,
.board-clean .pawns-layer img,
.board-v3.board-clean .pawns-layer img{
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.36)) drop-shadow(0 0 6px rgba(214,175,71,.22))!important;
}
.board-clean .full-pawns-layer img:first-child,
.board-v3.board-clean .full-pawns-layer img:first-child,
.board-clean .pawns-layer img:first-child,
.board-v3.board-clean .pawns-layer img:first-child{
  animation:bbActiveTokenPulse 2.6s ease-in-out infinite!important;
}
.board-clean .hud-score-chip.active,
.board-v3.board-clean .hud-score-chip.active,
.board-clean .score-pill.active,
.board-v3.board-clean .score-pill.active,
.board-clean .score-chip.active,
.board-v3.board-clean .score-chip.active{
  animation:bbActiveScorePulse 2.8s ease-in-out infinite!important;
}
@keyframes bbHudSheen{
  0%,38%{background-position:170% 0;opacity:.22;}
  52%{background-position:35% 0;opacity:.92;}
  100%{background-position:-90% 0;opacity:.24;}
}
@keyframes bbHudLineGlow{
  0%,100%{opacity:.42;filter:blur(.2px);}
  50%{opacity:.86;filter:blur(0);}
}
@keyframes bbBoardAmbient{
  0%,100%{opacity:.42;transform:scale(1);}
  50%{opacity:.68;transform:scale(1.012);}
}
@keyframes bbDeckBreath{
  0%,100%{transform:translateY(0) scale(1);filter:drop-shadow(0 12px 14px rgba(0,0,0,.22));}
  50%{transform:translateY(-3px) scale(1.01);filter:drop-shadow(0 16px 17px rgba(0,0,0,.28));}
}
@keyframes bbActiveTokenPulse{
  0%,100%{transform:translateY(0) scale(1);}
  50%{transform:translateY(-1px) scale(1.025);}
}
@keyframes bbActiveScorePulse{
  0%,100%{box-shadow:0 0 0 rgba(214,175,71,0),0 7px 13px rgba(0,0,0,.16);}
  50%{box-shadow:0 0 18px rgba(214,175,71,.34),0 9px 16px rgba(0,0,0,.20);}
}
@media (prefers-reduced-motion:reduce){
  .board-clean .command-actions.hud-actions .command-btn::before,
  .board-v3.board-clean .command-actions.hud-actions .command-btn::before,
  .board-clean .command-home.icon-command::before,
  .board-v3.board-clean .command-home.icon-command::before,
  .board-clean .board-top-hud::after,
  .board-v3.board-clean .board-top-hud::after,
  .board-clean .board-frame::before,
  .board-v3.board-clean .board-frame::before,
  .board-clean .premium-card-deck-stage,
  .board-v3.board-clean .premium-card-deck-stage,
  .board-clean .full-pawns-layer img:first-child,
  .board-v3.board-clean .full-pawns-layer img:first-child,
  .board-clean .pawns-layer img:first-child,
  .board-v3.board-clean .pawns-layer img:first-child,
  .board-clean .hud-score-chip.active,
  .board-v3.board-clean .hud-score-chip.active,
  .board-clean .score-pill.active,
  .board-v3.board-clean .score-pill.active,
  .board-clean .score-chip.active,
  .board-v3.board-clean .score-chip.active{
    animation:none!important;
  }
}


/* === Patch: remove power-up one-use wording and lift start-card action only === */
.board-clean .power-once-note,
.board-v3.board-clean .power-once-note{
  display:none!important;
}
.board-clean .board-question-card.is-deck-ready .board-start-action-panel,
.board-v3.board-clean .board-question-card.is-deck-ready .board-start-action-panel{
  transform:translateY(-0.65rem)!important;
}
.board-clean .board-question-card.is-deck-ready .support-box,
.board-v3.board-clean .board-question-card.is-deck-ready .support-box{
  margin-top:-0.15rem!important;
}
.board-clean .board-question-card.is-deck-ready .board-start-action-panel small,
.board-v3.board-clean .board-question-card.is-deck-ready .board-start-action-panel small{
  display:block!important;
  margin-top:-0.1rem!important;
}


/* === PATCH: single clickable Solo Next Card button ===
   Removes the duplicate fake/blocked Next Card. The existing #nextTeamBtn is moved
   into the in-card powerTools area so there is one real clickable action only. */
.board-clean.solo-mode .board-inner-center-area .power-tools.solo-next-panel #nextTeamBtn,
.board-v3.board-clean.solo-mode .board-inner-center-area .power-tools.solo-next-panel #nextTeamBtn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,260px)!important;
  min-width:min(100%,220px)!important;
  min-height:46px!important;
  padding:.68rem 1.45rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#ffe7a8 0%,#d8ac43 55%,#a56e20 100%)!important;
  color:#111b36!important;
  border:2px solid rgba(255,231,168,.94)!important;
  box-shadow:0 12px 20px rgba(0,0,0,.24),0 0 16px rgba(214,175,71,.42)!important;
  font-size:clamp(1rem,1.18vw,1.14rem)!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
  flex:0 0 auto!important;
  opacity:1!important;
  visibility:visible!important;
}
.board-clean.solo-mode .board-inner-center-area .power-tools.solo-next-panel #nextTeamBtn.hidden,
.board-v3.board-clean.solo-mode .board-inner-center-area .power-tools.solo-next-panel #nextTeamBtn.hidden{
  display:none!important;
}
.board-clean.solo-mode .board-inner-center-area .board-card-actions #nextTeamBtn,
.board-v3.board-clean.solo-mode .board-inner-center-area .board-card-actions #nextTeamBtn{
  display:none!important;
}

/* === FINAL PATCH: reliable clickable Solo Next Card only === */
.board-clean.solo-mode #soloDeckPanel,
.board-v3.board-clean.solo-mode #soloDeckPanel{
  display:none!important;
}
.board-clean.solo-mode .board-card-actions #nextTeamBtn,
.board-v3.board-clean.solo-mode .board-card-actions #nextTeamBtn{
  display:none!important;
}
.board-clean.solo-mode .board-inner-center-area #powerTools.solo-next-panel,
.board-v3.board-clean.solo-mode .board-inner-center-area #powerTools.solo-next-panel{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:.22rem 0 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  position:relative!important;
  z-index:999!important;
  pointer-events:auto!important;
}
.board-clean.solo-mode .board-inner-center-area #soloInlineNextBtn,
.board-v3.board-clean.solo-mode .board-inner-center-area #soloInlineNextBtn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,270px)!important;
  min-height:46px!important;
  padding:.68rem 1.45rem!important;
  border-radius:999px!important;
  background:linear-gradient(145deg,#ffe8aa 0%,#d8ad45 56%,#a86f21 100%)!important;
  color:#111b36!important;
  border:2px solid rgba(255,236,178,.96)!important;
  box-shadow:0 12px 22px rgba(0,0,0,.26),0 0 16px rgba(214,175,71,.45)!important;
  font-size:clamp(1rem,1.18vw,1.14rem)!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:1000!important;
}
.board-clean.solo-mode .board-inner-center-area #soloInlineNextBtn:disabled,
.board-v3.board-clean.solo-mode .board-inner-center-area #soloInlineNextBtn:disabled{
  opacity:.74!important;
  cursor:wait!important;
}


/* Writing page revision: second model review + yellow sentence-starter highlights */
.writing-page .model-subtitle{
  margin:1.05rem 0 .25rem;
  font-family:"Bebas Neue", Impact, sans-serif;
  font-size:clamp(1.35rem,2vw,1.8rem);
  color:#142247;
  letter-spacing:.02em;
}
.writing-page .expr-highlight{
  display:inline;
  padding:.08rem .32rem;
  border-radius:999px;
  background:#ffe66d;
  color:#142247;
  font-weight:900;
  box-shadow:inset 0 0 0 1px rgba(20,34,71,.1);
}
.writing-page .model-paragraph-second{
  margin-top:.45rem;
}

/* Writing page: animated Ladder Ideas visual */
.idea-card .ladder-video{
  width:100%;
  height:clamp(280px,32vh,340px);
  object-fit:contain;
  border-radius:18px;
  background:#fff8e8;
  display:block;
  transform-origin:center;
}
@media (max-width:1100px){
  .idea-card .ladder-video{height:220px;}
}

/* Writing page fix: cropped Ladder Ideas video + Step 4 write flow */
.writing-page .idea-card.ladder-video-card{
  overflow:hidden;
}
.writing-page .ladder-video-frame{
  width:100%;
  height:270px;
  border-radius:18px;
  background:#fff8e8;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
}
.writing-page .idea-card .ladder-video{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  border-radius:18px;
  background:#fff8e8;
  display:block;
}
@media (max-width:1100px){
  .writing-page .ladder-video-frame{height:220px;}
}

.writing-page .write-review-intro{
  margin:.05rem 0 .55rem;
  color:#26324b;
  font-weight:850;
  line-height:1.45;
}
.writing-page .review-write-flow{
  display:grid;
  gap:.42rem;
  margin-top:.25rem;
}
.writing-page .write-flow-line{
  margin:0;
  padding:.56rem .72rem;
  border-radius:15px;
  background:rgba(255,255,255,.54);
  border:1px solid rgba(20,34,71,.08);
  line-height:1.32;
  font-weight:850;
  color:#142247;
}
.writing-page .write-flow-line strong{
  font-weight:950;
}
.writing-page .write-topic,
.writing-page .write-conclusion{
  color:#d94a3a;
  margin-left:0;
}
.writing-page .write-reason{
  color:#2f63c6;
  margin-left:.7rem;
}
.writing-page .write-example{
  color:#2e8b57;
  margin-left:1.35rem;
}
.writing-page .write-drawback{
  color:#111;
  margin-left:.7rem;
}
@media (max-width:680px){
  .writing-page .write-reason,
  .writing-page .write-drawback{margin-left:.35rem;}
  .writing-page .write-example{margin-left:.7rem;}
}

/* Final writing Step 4 colour correction */
.writing-page .write-topic,
.writing-page .write-topic strong,
.writing-page .write-conclusion,
.writing-page .write-conclusion strong{
  color:#d94a3a!important;
}
.writing-page .write-reason,
.writing-page .write-reason strong{
  color:#2f63c6!important;
}
.writing-page .write-example,
.writing-page .write-example strong{
  color:#2e8b57!important;
}
.writing-page .write-drawback,
.writing-page .write-drawback strong{
  color:#111!important;
}


/* === Controlled QA fixes: Solo button reliability, QR footer, and writing video crop === */
.writing-page .idea-card .ladder-video{
  object-fit:cover!important;
  object-position:center center!important;
}
.board-clean .board-question-card:not(.is-ready) .question-card-inner,
.board-v3.board-clean .board-question-card:not(.is-ready) .question-card-inner{
  overflow:visible!important;
}
.board-clean.solo-mode #soloInlineNextBtn,
.board-v3.board-clean.solo-mode #soloInlineNextBtn{
  pointer-events:auto!important;
  position:relative!important;
  z-index:20!important;
}
.final-index .bb-footer{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:1rem!important;
}
.footer-signature-line{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1.1rem;
  min-width:0;
}
.footer-qr{
  display:flex;
  align-items:center;
  gap:.55rem;
  margin-left:auto;
}
.qr-open-button{
  display:flex;
  align-items:center;
  gap:.45rem;
  border:1px solid rgba(226,198,132,.55);
  border-radius:14px;
  background:rgba(255,248,232,.08);
  color:#fff8e8;
  padding:.28rem .48rem;
  cursor:pointer;
  font:inherit;
  font-weight:900;
  box-shadow:0 10px 18px rgba(0,0,0,.22);
}
.qr-open-button:hover,.qr-open-button:focus-visible{
  outline:0;
  border-color:rgba(255,230,142,.9);
  background:rgba(255,248,232,.14);
  box-shadow:0 0 0 3px rgba(226,198,132,.18),0 12px 22px rgba(0,0,0,.26);
}
.footer-qr-img{
  width:46px;
  height:46px;
  border-radius:8px;
  background:#fff;
  padding:3px;
  image-rendering:pixelated;
}
.footer-qr-label{
  white-space:nowrap;
  font-size:.78rem;
  letter-spacing:.01em;
}
.qr-modal[hidden]{display:none!important;}
.qr-modal{
  position:fixed;
  inset:0;
  z-index:2000;
  display:grid;
  place-items:center;
  padding:1.25rem;
}
.qr-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,8,19,.74);
  backdrop-filter:blur(5px);
}
.qr-modal-card{
  position:relative;
  width:min(92vw,420px);
  border-radius:26px;
  border:1px solid rgba(226,198,132,.45);
  background:linear-gradient(160deg,#fff9e8,#efe1bd);
  color:#142247;
  padding:1rem;
  text-align:center;
  box-shadow:0 28px 70px rgba(0,0,0,.46);
}
.qr-modal-card h2{
  margin:.25rem 2.6rem .25rem;
  font-family:"Bebas Neue",Impact,sans-serif;
  font-size:2.3rem;
  color:#142247;
}
.qr-modal-card p{
  margin:.2rem 0 .8rem;
  font-weight:850;
  color:#33405e;
}
.qr-large-img{
  width:min(72vw,300px);
  height:min(72vw,300px);
  background:#fff;
  border-radius:16px;
  padding:10px;
  box-shadow:inset 0 0 0 1px rgba(20,34,71,.12);
  image-rendering:pixelated;
}
.qr-close-button{
  position:absolute;
  top:.75rem;
  right:.75rem;
  width:38px;
  height:38px;
  border-radius:50%;
  border:0;
  background:#142247;
  color:#fff8e8;
  font-size:1.35rem;
  font-weight:950;
  cursor:pointer;
}
@media (max-width:680px){
  .final-index .bb-footer{
    justify-content:center!important;
    flex-direction:column!important;
    min-height:128px!important;
  }
  .footer-signature-line{flex-direction:column;gap:.1rem;}
  .footer-qr{margin-left:0;}
  .footer-qr-img{width:42px;height:42px;}
}

/* === Controlled QA responsive overflow fixes === */
.game-setup-v2 .bb-topbar.control-topbar{
  box-sizing:border-box!important;
  left:auto!important;
  right:auto!important;
  width:calc(100% - 28px)!important;
  max-width:calc(100% - 28px)!important;
  margin-inline:auto!important;
}
@media (min-width:1180px){
  .game-setup-v2 .bb-topbar.control-topbar{
    width:calc(100% - 56px)!important;
    max-width:calc(100% - 56px)!important;
  }
}
.writing-page .ideas-large{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.writing-page .idea-card,
.writing-page .ladder-video-frame,
.writing-page .idea-card img,
.writing-page .idea-card video{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media (max-width:680px){
  .writing-page .ideas-large{
    grid-template-columns:minmax(0,1fr)!important;
  }
}
.final-index,
.final-index .index-main,
.final-index .bb-footer{
  max-width:100%!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}

/* Writing page: animated Wheel Ideas visual */
.writing-page .idea-card.wheel-video-card{
  overflow:hidden;
}
.writing-page .wheel-video-frame{
  width:100%;
  height:270px;
  border-radius:18px;
  background:#fff8e8;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
}
.writing-page .idea-card .wheel-video{
  width:100%;
  height:100%;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:18px;
  background:#fff8e8;
  display:block;
}
@media (max-width:1100px){
  .writing-page .wheel-video-frame{height:220px;}
}

/* === Writing page visual correction: show the full animated ladder and wheel === */
.writing-page .idea-card.ladder-video-card,
.writing-page .idea-card.wheel-video-card{
  overflow:visible!important;
}
.writing-page .ladder-video-frame,
.writing-page .wheel-video-frame{
  width:100%!important;
  aspect-ratio:1 / 1!important;
  height:auto!important;
  max-height:none!important;
  border-radius:18px!important;
  background:#fff8e8!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.writing-page .idea-card .ladder-video,
.writing-page .idea-card .wheel-video{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#fff8e8!important;
  border-radius:18px!important;
  display:block!important;
}
@media (max-width:1100px){
  .writing-page .ladder-video-frame,
  .writing-page .wheel-video-frame{
    height:auto!important;
  }
}

/* === Writing Toolkit V2: vocabulary left, expressions middle, sentence help right === */
.writing-page .toolkit-redesign-v2{
  padding-bottom:1.1rem;
}

.writing-page .toolkit-redesign-v2 .toolkit-three-columns{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) minmax(280px,1fr);
  gap:1rem;
  align-items:start;
}

.writing-page .toolkit-redesign-v2 .compact-toolkit-card{
  align-self:start;
  min-height:0;
  height:auto;
  padding:1rem;
  background:rgba(255,255,255,.56);
}

.writing-page .toolkit-redesign-v2 .compact-toolkit-card h3{
  margin-bottom:.45rem;
}

.writing-page .toolkit-mini-note{
  margin:.05rem 0 .75rem;
  color:#5c503d;
  font-size:.86rem;
  line-height:1.3;
  font-weight:850;
}

.writing-page .toolkit-vocab-groups,
.writing-page .sentence-help-stack{
  display:grid;
  gap:.55rem;
}

.writing-page .vocab-group{
  border-radius:16px;
  padding:.6rem .64rem;
  background:rgba(255,248,232,.78);
  border:1px solid rgba(214,170,90,.22);
}

.writing-page .vocab-group h4{
  margin:0 0 .38rem;
  color:#142247;
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.writing-page .mini-chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:.32rem;
}

.writing-page .mini-chip-cloud span{
  display:inline-flex;
  border-radius:999px;
  padding:.31rem .48rem;
  background:rgba(255,255,255,.68);
  border:1px solid rgba(214,170,90,.25);
  color:#142247;
  font-size:.8rem;
  font-weight:850;
  line-height:1.1;
}

.writing-page .toolkit-redesign-v2 .expression-stack{
  display:grid;
  grid-template-columns:1fr;
  gap:.55rem;
}

.writing-page .toolkit-redesign-v2 .expression-stack > div,
.writing-page .sentence-help-card{
  border-radius:16px;
  padding:.62rem .68rem;
  background:rgba(255,248,232,.78);
  border:1px solid rgba(20,34,71,.08);
}

.writing-page .toolkit-redesign-v2 .expression-stack p{
  margin:.2rem 0;
  font-size:.88rem;
  line-height:1.25;
  font-weight:850;
}

.writing-page .sentence-help-card{
  display:grid;
  gap:.25rem;
  color:#142247;
}

.writing-page .sentence-help-card strong{
  font-size:.78rem;
  line-height:1.15;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.writing-page .sentence-help-card span{
  font-size:.94rem;
  line-height:1.2;
  font-weight:950;
}

.writing-page .sentence-help-card small{
  font-size:.78rem;
  line-height:1.25;
  color:#5c503d;
  font-weight:850;
}

.writing-page .sentence-help-card em{
  display:block;
  margin-top:.08rem;
  font-style:normal;
  font-size:.82rem;
  line-height:1.25;
  color:#142247;
  font-weight:780;
  opacity:.92;
}

.writing-page .simple-pattern strong,
.writing-page .simple-pattern span{color:#d94a3a;}
.writing-page .compound-pattern strong,
.writing-page .compound-pattern span,
.writing-page .semicolon-pattern strong,
.writing-page .semicolon-pattern span{color:#2f63c6;}
.writing-page .complex-pattern strong,
.writing-page .complex-pattern span{color:#2e8b57;}

@media (max-width:1100px){
  .writing-page .toolkit-redesign-v2 .toolkit-three-columns{
    grid-template-columns:1fr 1fr;
  }

  .writing-page .toolkit-redesign-v2 .toolkit-sentence-right{
    grid-column:1 / -1;
  }

  .writing-page .sentence-help-stack{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:720px){
  .writing-page .toolkit-redesign-v2 .toolkit-three-columns,
  .writing-page .sentence-help-stack{
    grid-template-columns:1fr;
  }

  .writing-page .toolkit-redesign-v2 .toolkit-sentence-right{
    grid-column:auto;
  }
}

/* === Writing page: split model reviews into clear stacked cards === */
.writing-page .model-reviews-split{
  display:block;
}

.writing-page .model-color-key{
  display:flex;
  flex-wrap:wrap;
  gap:.42rem;
  margin:.35rem 0 1rem;
}

.writing-page .model-color-key span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:.36rem .62rem;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(20,34,71,.08);
  font-size:.82rem;
  line-height:1.1;
  font-weight:900;
}

.writing-page .model-color-key .key-topic{color:#d94a3a;}
.writing-page .model-color-key .key-reason{color:#2f63c6;}
.writing-page .model-color-key .key-detail{color:#2e8b57;}
.writing-page .model-color-key .key-weak{color:#111;}
.writing-page .model-color-key .key-starter{background:#ffe66d;color:#142247;}

.writing-page .model-review-stack{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
}

.writing-page .model-review-card{
  border-radius:22px;
  padding:1rem 1.05rem;
  background:rgba(255,255,255,.48);
  border:1px solid rgba(20,34,71,.08);
  box-shadow:0 12px 26px rgba(20,34,71,.08), inset 0 1px 0 rgba(255,255,255,.55);
}

.writing-page .model-card-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.75rem;
  margin-bottom:.55rem;
  padding-bottom:.5rem;
  border-bottom:1px solid rgba(20,34,71,.08);
}

.writing-page .model-card-head h3{
  margin:0;
  font-family:"Bebas Neue", Impact, sans-serif;
  color:#142247;
  font-size:clamp(1.55rem,2.4vw,2.15rem);
  line-height:.95;
  letter-spacing:.02em;
}

.writing-page .model-card-head p{
  margin:0;
  color:#5c503d;
  font-size:.92rem;
  line-height:1.25;
  font-weight:900;
  text-align:right;
}

.writing-page .model-review-card .model-paragraph{
  margin:.35rem 0 0;
}

.writing-page .model-review-card .word-count{
  margin:.85rem 0 0;
}

@media (max-width:760px){
  .writing-page .model-card-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .writing-page .model-card-head p{
    text-align:left;
  }

  .writing-page .model-review-card{
    padding:.9rem;
  }
}
