[hidden]{display:none!important}.decision-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}.model-board{min-width:0;padding:22px;background:linear-gradient(140deg,var(--aqua-soft),#fff 75%)}.model-board h2,.decision-controls h2{font:800 20px Nunito,sans-serif;margin:0 0 14px}.decision-controls{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.decision-choices{display:grid;gap:10px}.decision-choice{font-weight:700;line-height:1.4;text-align:left;padding:14px;background:#fff;border:2px solid var(--line);border-radius:13px;color:var(--ink);min-height:48px}.decision-choice:hover{border-color:var(--violet);background:var(--violet-soft)}.decision-choice:disabled{cursor:default}.decision-choice.correct{border-color:var(--green);background:var(--green-soft)}.decision-choice.wrong{border-color:var(--coral);background:var(--coral-soft)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--aqua-deep);outline-offset:3px}.quantity-cards{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.quantity-card{background:#fff;border:1px solid var(--line);padding:18px;border-radius:16px;flex:1;min-width:110px}.quantity-card strong{display:block;font:900 36px Nunito,sans-serif}.quantity-card span{font-size:16px}.candidate-tools{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}.candidate-tools input{font:800 20px Nunito,sans-serif;min-width:0;width:100px;border:2px solid var(--line);padding:8px;border-radius:10px;color:var(--ink);background:#fff}.candidate-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.candidate-chips button{border:1px solid var(--line);background:#fff;border-radius:9px;min-height:38px;min-width:38px;color:var(--ink);font-weight:700}.candidate-chips button[aria-pressed=true]{border-color:var(--violet);background:var(--violet-soft)}.model-row{background:#fff;border:1px solid var(--line);border-radius:13px;margin:10px 0;padding:12px}.model-row strong{display:block;margin-bottom:7px}.partition-strip{display:flex;gap:3px;flex-wrap:wrap;margin:8px 0}.partition-strip span{width:18px;height:22px;border-radius:4px;background:var(--aqua);border:1px solid var(--aqua-deep)}.partition-strip span.remainder{background:var(--coral-soft);border-color:var(--coral)}.model-row:nth-child(2) .partition-strip span:not(.remainder){background:var(--violet-soft);border-color:var(--violet)}.time-marks{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.time-marks span{padding:5px 8px;border-radius:8px;background:var(--violet-soft)}.time-marks span.common{background:var(--green-soft);border:1px solid var(--green);font-weight:800}.model-caption{line-height:1.5;margin:10px 0 0}.decision-feedback{margin-top:18px;min-height:60px;padding:16px;display:block;font-size:17px;border-radius:13px;background:var(--amber-soft);color:var(--ink)}.decision-feedback.ok{background:var(--green-soft)}.decision-feedback.error{background:var(--coral-soft)}.takeaway{padding:18px;border-left:4px solid var(--violet);background:var(--violet-soft);border-radius:12px;margin-top:14px;line-height:1.6}.finish-panel{padding:40px 22px;text-align:center}.finish-panel h2{font-family:Nunito,sans-serif}.finish-panel p{max-width:720px;margin:20px auto;font-size:19px;line-height:1.5}.finish-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.game-shell{min-height:0}.bottom{justify-content:flex-end}#calculationPrompt{line-height:1.6}.phase-step{font-size:13px}#modelIntro p{line-height:1.5}@media(max-width:760px){.decision-layout{grid-template-columns:minmax(0,1fr)}.model-board,.decision-controls{padding:16px}.phase-track{margin:12px 8px}.phase-step{font-size:11px;gap:4px}.phase-step b{flex-shrink:0}.quantity-card strong{font-size:30px}.play{padding:14px}.topbar .back{font-size:12px;padding:8px}.mission strong{font-size:17px}.candidate-tools .tool{flex:1}}
.story-art{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:15px}.art-caption{color:var(--muted);font-size:13px;margin:7px 0!important}.quantity-cards{margin:12px 0}.model-board{display:block}

/* Shared game styles hide .next; this activity uses the hidden attribute. */
#nextBtn:not([hidden]){display:block;margin-top:14px;min-width:190px}
