.math-game-screen{position:fixed;z-index:50;inset:0;overflow:auto;background:linear-gradient(145deg,#fff8df,#eaf8e7);padding:18px clamp(22px,5vw,70px)}
.math-game-header{height:58px;max-width:1180px;margin:auto;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:18px}.math-game-header>a{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;font-size:1.5rem;font-weight:900;box-shadow:var(--soft-shadow)}.math-game-header>div{display:flex;align-items:center;gap:14px}.math-game-header>div>span{font-weight:900;white-space:nowrap}.math-score-pill{background:#fff;padding:9px 14px;border-radius:999px;font-weight:900;box-shadow:var(--soft-shadow)}
.math-stage{max-width:1180px;min-height:calc(100vh - 94px);margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);grid-template-rows:auto 1fr;gap:16px 46px;align-items:center}.math-prompt{grid-column:1/-1;display:flex;align-items:center;gap:14px;justify-content:center;text-align:center}.math-prompt h1{font:700 clamp(2rem,4vw,3.6rem)/1 var(--font-display);margin:0}.math-skill{position:absolute;left:max(22px,5vw);top:82px;border-radius:999px;background:var(--mint);padding:7px 12px;color:var(--green-dark);font-weight:900}.math-prompt .sound-button{flex:0 0 auto;width:58px;height:58px;font-size:1.35rem}
.math-stage.no-stimulus{grid-template-columns:1fr}.math-stage.no-stimulus .math-answer-area{grid-column:1/-1;width:min(100%,760px);margin:auto}.math-workspace[hidden]{display:none}
.math-workspace{min-height:430px;border-radius:42px;background:#fff;display:grid;place-items:center;align-content:center;gap:22px;padding:30px;box-shadow:var(--shadow);overflow:hidden}.math-object-grid{width:100%;display:grid;grid-template-columns:repeat(5,minmax(52px,1fr));gap:16px;place-items:center}.math-object-grid span{font-size:clamp(2.8rem,5vw,5rem);filter:drop-shadow(0 7px 4px rgba(56,74,59,.12))}.math-expression{font:800 clamp(4rem,8vw,7rem)/1 var(--font-display);color:#e68742;text-align:center}.math-statement,.math-question-text{font:700 clamp(2rem,4vw,3.6rem)/1.1 var(--font-display);text-align:center;color:var(--ink)}
.math-groups{width:100%;display:flex;justify-content:center;align-items:center;gap:clamp(14px,3vw,34px);flex-wrap:wrap}.math-object-group{display:grid;gap:8px;justify-items:center}.math-object-items{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(7px,1.2vw,14px);max-width:500px}.math-object-item{position:relative;display:grid;place-items:center;min-width:44px;min-height:44px;font-size:clamp(2.5rem,4.5vw,4.8rem);line-height:1;filter:drop-shadow(0 6px 4px rgba(56,74,59,.12))}.math-object-item.crossed::before,.math-object-item.crossed::after{content:"";position:absolute;z-index:2;width:112%;height:5px;border-radius:9px;background:#e84d59;left:-6%;top:50%;transform:rotate(42deg)}.math-object-item.crossed::after{transform:rotate(-42deg)}.object-square{width:58px;height:58px;border:5px solid #507c72;background:#fff}.object-cup{width:52px;height:46px;margin:5px;border:5px solid #507c72;border-top-width:3px;border-radius:5px 5px 18px 18px;background:#ffd1df}.object-cup::before{content:"";position:absolute;right:-18px;width:19px;height:24px;border:5px solid #507c72;border-left:0;border-radius:0 14px 14px 0}.object-saucer{width:66px;height:22px;margin:17px 2px;border:5px solid #507c72;border-radius:50%;background:#a9d9ec}.math-group-connector{font:700 clamp(1.4rem,2.5vw,2.2rem) var(--font-display);color:var(--green-dark)}.math-sequence,.math-scene{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.math-sequence span{min-width:64px;padding:12px;border-radius:16px;background:#fff3c9;text-align:center;font:800 2.4rem var(--font-display)}.math-scene span{font-size:clamp(3rem,7vw,6rem)}.math-clock{font-size:clamp(8rem,18vw,15rem);line-height:1}.math-data-chart{min-width:min(100%,460px);overflow:hidden;border:4px solid #507c72;border-radius:20px;background:#fff}.math-data-chart>strong{display:block;padding:11px;text-align:center;background:#dff2dc;font:800 1.35rem var(--font-display)}.math-data-chart>div{display:grid;grid-template-columns:minmax(110px,.8fr) 1.2fr;border-top:3px solid #507c72}.math-data-chart b,.math-data-chart span{padding:12px 16px;font-size:1.3rem}.math-data-chart b{border-right:3px solid #507c72}.math-data-chart span{letter-spacing:7px}
.math-object-group.is-crossout-sequence{position:relative;grid-template-columns:1fr;align-items:center;row-gap:18px}.math-object-group.is-crossout-sequence .math-object-items{grid-column:1;flex-wrap:nowrap}.math-object-group.is-crossout-sequence .math-object-item.crossed::before{transform-origin:center;animation:draw-cross-forward .42s cubic-bezier(.16,1,.3,1) calc(.7s + var(--cross-index) * .65s) both}.math-object-group.is-crossout-sequence .math-object-item.crossed::after{transform-origin:center;animation:draw-cross-back .42s cubic-bezier(.16,1,.3,1) calc(.82s + var(--cross-index) * .65s) both}.math-crossout-question{grid-column:1;grid-row:2;display:grid;place-items:center;width:clamp(58px,8vw,88px);height:clamp(58px,8vw,88px);border-radius:24px;background:#fff0bd;color:#d66d35;font:800 clamp(3rem,6vw,5.2rem)/1 var(--font-display);box-shadow:0 14px 30px rgba(102,78,39,.15);animation:reveal-crossout-question .5s cubic-bezier(.16,1,.3,1) calc(1.18s + var(--cross-count) * .65s) both}@keyframes draw-cross-forward{from{opacity:0;transform:rotate(42deg) scaleX(0)}to{opacity:1;transform:rotate(42deg) scaleX(1)}}@keyframes draw-cross-back{from{opacity:0;transform:rotate(-42deg) scaleX(0)}to{opacity:1;transform:rotate(-42deg) scaleX(1)}}@keyframes reveal-crossout-question{from{opacity:0;transform:scale(.72);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.math-object-group.is-crossout-sequence .math-object-item.crossed::before,.math-object-group.is-crossout-sequence .math-object-item.crossed::after,.math-crossout-question{animation-duration:.01ms;animation-delay:0s;filter:none}}
.math-answer-area{display:grid;grid-template-columns:repeat(2,minmax(135px,1fr));gap:16px;align-content:center}.math-answer-button{min-height:112px;border:4px solid transparent;border-radius:28px;background:#fff;padding:15px;display:grid;place-items:center;gap:8px;font:700 2rem var(--font-display);box-shadow:var(--soft-shadow);transition:.2s}.math-answer-button:hover{transform:translateY(-3px)}.math-answer-button.wrong{border-color:#ef7890;background:#ffe3e8;animation:shake .3s}.math-answer-button.correct,.math-answer-button.selected{border-color:#70ba66;background:var(--mint);transform:scale(1.05)}.math-answer-button:disabled{opacity:.45}.math-option-visual{display:grid;place-items:center;font-size:3.4rem;min-width:76px;min-height:76px}.shape-circle{width:76px;height:76px;border-radius:50%;background:#ff9bb9}.shape-square{width:76px;height:76px;background:#75c77b}.shape-rectangle{width:108px;height:70px;background:#80b8ef}.shape-triangle{width:0;height:0;border-left:42px solid transparent;border-right:42px solid transparent;border-bottom:72px solid #f2c453}.visual-snake-short::before,.visual-snake-long::before{content:"〰";font:900 5rem/1 serif;color:#72a568}.visual-snake-long{transform:scaleX(1.65)}.visual-line-short::before,.visual-line-long::before{content:"";display:block;width:70px;height:9px;border-radius:9px;background:#658b85}.visual-line-long::before{width:125px}.visual-symmetry-vertical::before,.visual-symmetry-horizontal::before,.visual-symmetry-diagonal::before{content:"★";display:grid;place-items:center;width:100px;height:100px;font-size:6rem;color:#f4c451;-webkit-text-stroke:2px #836a30;background:linear-gradient(90deg,transparent 48%,#e65d6b 48% 52%,transparent 52%)}.visual-symmetry-horizontal::before{background:linear-gradient(0deg,transparent 48%,#e65d6b 48% 52%,transparent 52%)}.visual-symmetry-diagonal::before{background:linear-gradient(45deg,transparent 48%,#e65d6b 48% 52%,transparent 52%)}.visual-repeat{width:auto;max-width:260px;min-height:auto;letter-spacing:4px;line-height:1.25}.math-confirm-button{grid-column:1/-1;min-height:72px;border:0;border-radius:22px;background:#66b772;color:#fff;font:800 1.5rem var(--font-display);box-shadow:var(--soft-shadow)}
.math-answer-area.three-options{grid-template-columns:repeat(3,minmax(0,1fr))}.math-answer-area.three-options .math-answer-button{min-width:0}
.math-answer-area.vertical-compare{grid-template-columns:1fr;width:min(100%,880px)!important;gap:18px}.math-answer-area.vertical-compare .math-answer-button{min-height:190px;padding:10px 24px}.math-option-image{display:block;width:min(100%,760px);height:165px;object-fit:contain;pointer-events:none;user-select:none}
.math-number-displays{grid-column:1/-1;display:flex;gap:12px}.math-number-display{flex:1;min-height:100px;border:4px solid transparent;border-radius:26px;background:#fff;display:grid;place-items:center;font:800 4.5rem var(--font-display);color:#e68742}.math-number-display.active{border-color:#70ba66}.math-number-pad{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.math-number-pad button{min-height:64px;border:0;border-radius:18px;background:#fff;font:800 1.7rem var(--font-display);box-shadow:var(--soft-shadow)}.math-order-output{grid-column:1/-1;min-height:58px;text-align:center;font:700 1.35rem var(--font-display);color:var(--green-dark)}
.math-start-overlay{position:fixed;z-index:55;inset:0;background:linear-gradient(145deg,#f9d978,#ffb9ce);display:grid;place-content:center;justify-items:center;text-align:center;gap:18px}.math-start-overlay[hidden]{display:none}.math-start-overlay>span,.math-empty>span{font-size:7rem}.math-start-overlay h1{font:700 clamp(3rem,7vw,6rem)/.95 var(--font-display);margin:0}.button.giant{font-size:1.5rem;padding:18px 36px}.math-final-score{display:grid;gap:5px;margin:12px}.math-final-score b{font:800 2.6rem var(--font-display)}.math-final-score strong{font-size:1.25rem}.math-empty{min-height:75vh;display:grid;place-content:center;justify-items:center;text-align:center;gap:15px}.math-empty h1{font:700 3rem var(--font-display)}
.math-hero-stack>div:nth-child(1){background:#ffdda1}.math-hero-stack>div:nth-child(2){background:#d8efcf}.math-hero-stack>div:nth-child(3){background:#ffd5e1}.math-hero-stack span{color:#385c50;font-size:2.1rem}.book-art{font-size:2.25rem;line-height:.8}
.compact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.math-exercise-list{display:grid;gap:14px}.math-admin-card{display:grid;grid-template-columns:52px 1fr auto;gap:15px;align-items:center;background:#fff;border-radius:22px;padding:18px;box-shadow:var(--soft-shadow)}.math-admin-order{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:var(--yellow-soft);font:800 1.25rem var(--font-display)}.math-admin-info h3{margin:3px 0;font:700 1.18rem var(--font-display)}.math-admin-info p{margin:2px 0;color:var(--muted);font-weight:700}.math-edit-form{max-height:75vh;overflow:auto}.math-exercise-form small{color:var(--muted);font-size:.72rem}
@media(max-width:760px){.math-stage{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:14px;padding-top:30px}.math-prompt{grid-column:1}.math-workspace{min-height:280px}.math-answer-area{grid-template-columns:repeat(2,1fr)}.math-answer-button{min-height:86px}.math-skill{top:73px}.compact-form-grid,.math-admin-card{grid-template-columns:1fr}.math-admin-order{display:none}}
@media(orientation:landscape) and (min-width:768px) and (max-height:850px){.math-stage{min-height:calc(100vh - 78px);grid-template-rows:70px 1fr}.math-workspace{min-height:360px}.math-answer-button{min-height:92px}.math-start-overlay>span{font-size:5rem}}
.skill-progress-list{display:grid;gap:12px;margin-top:18px}.skill-progress-row{display:grid;grid-template-columns:minmax(145px,1fr) minmax(120px,1.4fr) 44px;align-items:center;gap:12px}.skill-progress-row strong,.skill-progress-row small{display:block}.skill-progress-row small{color:var(--muted);font-size:.7rem}.skill-progress-track{height:12px;border-radius:99px;background:#edf1e9;overflow:hidden}.skill-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8dd27c,#56b56a)}.skill-progress-row>b{text-align:right;color:var(--green-dark)}
