:root{--unit:#1769aa;--unit-dark:#0d487b;--unit-soft:#e8f3fc;--unit-orange:#f39a3c;--unit-line:#cbddea}
.units-page{background:#f7fafd}.units-page button{font:inherit}.units-page [hidden]{display:none!important}.units-page .button{background:var(--unit)}.units-page .button:hover{background:var(--unit-dark)}.units-page .button.secondary{border-color:var(--unit-line);background:#fff;color:var(--ink)}.units-page .eyebrow{border-color:#b9d8ef;color:var(--unit-dark)}
.units-hero{padding:clamp(52px,7vw,88px) 0;border-bottom:1px solid var(--unit-line);background:radial-gradient(circle at 84% 18%,rgba(243,154,60,.23),transparent 26%),radial-gradient(circle at 10% 84%,rgba(23,105,170,.14),transparent 30%),linear-gradient(135deg,#f5fbff,#eef7ff 62%,#fff8ee)}.units-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(34px,6vw,76px);align-items:center}.grade-line{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:19px}.grade-line span{padding:6px 11px;border:1px solid #b9d8ef;border-radius:999px;background:rgba(255,255,255,.8);color:var(--unit-dark);font-size:.82rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.grade-line span:first-child{border-color:var(--unit);background:var(--unit);color:#fff}.units-hero h1{font-size:clamp(2.4rem,5vw,4.65rem)}.units-hero p{max-width:680px;margin:22px 0 0;color:var(--muted);font-size:clamp(1.05rem,2vw,1.25rem)}
.hero-conversion{padding:clamp(26px,4vw,42px);border:1px solid #bcd7ea;border-radius:28px;background:#fff;box-shadow:0 24px 60px rgba(13,72,123,.16);text-align:center}.hero-conversion span,.hero-conversion strong{display:block;padding:15px;border-radius:14px;font-family:"Cambria Math",Cambria,serif;font-size:clamp(1.6rem,4vw,2.5rem)}.hero-conversion span{background:#f2f6f9}.hero-conversion strong{background:var(--unit-soft);color:var(--unit-dark)}.hero-conversion div{margin:9px;color:var(--unit-orange);font-weight:900}.hero-conversion small{display:block;margin-top:17px;color:var(--muted)}
.units-heading{max-width:800px}.unit-browser{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px}.unit-tabs{display:grid;gap:9px;align-content:start}.unit-tab{min-height:48px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:850;text-align:left;cursor:pointer}.unit-tab:hover{border-color:#8bbde1}.unit-tab.is-active{border-color:var(--unit);background:var(--unit);color:#fff;box-shadow:0 8px 20px rgba(23,105,170,.18)}.unit-stage{min-height:330px;padding:clamp(24px,4vw,42px);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(16,42,67,.07)}.stage-kicker{color:var(--unit-dark);font-size:.8rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.unit-stage h3{margin-top:8px;font-size:clamp(1.5rem,3vw,2.1rem)}.unit-stage p{color:var(--muted)}.unit-ladder{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:28px}.ladder-unit{min-width:67px;padding:14px 10px;border-radius:12px;background:var(--unit-soft);color:var(--unit-dark);font-family:"Cambria Math",Cambria,serif;font-size:1.25rem;font-weight:900;text-align:center}.ladder-arrow{display:grid;gap:0;color:var(--muted);font-size:.68rem;text-align:center}.ladder-arrow strong{color:var(--unit-orange);font-size:1.2rem}.stage-note{margin-top:24px;padding:13px 15px;border-radius:12px;background:#fff5e7;color:#704100}
.training-section{border-block:1px solid var(--unit-line);background:#edf5fb}.training-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start}.training-sidebar{display:grid;gap:14px}.player-card,.level-picker,.session-card,.unit-reminder{padding:18px;border:1px solid var(--unit-line);border-radius:17px;background:#fff}.player-card{display:grid;grid-template-columns:48px 1fr;gap:11px 13px;align-items:center}.player-avatar{display:grid;grid-row:span 2;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--unit),#519bd3);color:#fff;font-size:1.45rem;font-weight:900;box-shadow:0 8px 18px rgba(23,105,170,.22)}.sidebar-label{display:block;margin-bottom:10px;color:var(--muted);font-size:.76rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.player-card .sidebar-label{margin:0}.player-card strong{color:var(--unit-dark)}.player-card small{grid-column:1/-1;color:var(--muted);font-size:.76rem}.xp-line{grid-column:1/-1;height:7px;overflow:hidden;border-radius:999px;background:#e5edf3}.xp-line span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--unit-orange),#ffc879);transition:width .35s ease}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:11px;background:#edf1f5}.segmented-control button{padding:8px 5px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.86rem;font-weight:800;cursor:pointer}.segmented-control button.is-active{background:#fff;color:var(--unit-dark);box-shadow:0 2px 7px rgba(16,42,67,.12)}.session-head{display:flex;justify-content:space-between;gap:12px;font-weight:800}.progress-track{height:9px;margin:13px 0 15px;overflow:hidden;border-radius:999px;background:#e5edf3}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--unit),#64a8da);transition:width .3s ease}.game-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;text-align:center}.game-stats div{display:grid;grid-template-columns:auto auto;justify-content:center;gap:3px;padding:7px 3px;border-radius:9px;background:#f3f7fa;color:var(--unit-dark)}.game-stats small{grid-column:1/-1;color:var(--muted);font-size:.66rem}.hearts{grid-column:1/-1;color:#e34d59;font-size:.82rem;white-space:nowrap}.unit-reminder{border-color:#edcf9a;background:#fff9ee}.unit-reminder strong{color:#794600}.unit-reminder p{margin:7px 0 0;color:#675437;font-size:.87rem}
.unit-challenge{min-height:580px;padding:clamp(22px,4vw,38px);border:1px solid #c6ddec;border-radius:22px;background:#fff;box-shadow:0 18px 45px rgba(13,72,123,.09)}.challenge-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted);font-size:.84rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.task-badge{padding:5px 10px;border-radius:999px;background:var(--unit-soft);color:var(--unit-dark)}.category-icon{display:grid;width:48px;height:48px;margin:32px auto 8px;place-items:center;border-radius:50%;background:var(--unit-soft);color:var(--unit-dark);font-size:1.45rem;font-weight:900}.conversion-task{color:var(--ink);font-family:"Cambria Math",Cambria,serif;font-size:clamp(2rem,6vw,3.7rem);font-weight:850;text-align:center}.challenge-question{margin:18px auto 0;color:var(--muted);font-weight:700;text-align:center}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:25px}.choice-button{min-height:60px;padding:11px;border:1px solid #c8d8e4;border-radius:12px;background:#fff;color:var(--ink);font-size:1.05rem;font-weight:850;cursor:pointer}.choice-button:hover{border-color:var(--unit);background:#f6fbff}.choice-button.is-correct{border-color:#3e9e8d;background:#e8f7f3;color:#075e51}.choice-button.is-wrong{border-color:#d97068;background:#fff0ef;color:#9c251c}.number-entry{max-width:600px;margin:25px auto 0}.number-entry>label{display:block;margin-bottom:7px;color:var(--muted);font-size:.8rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.number-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:stretch}.number-input-row input{min-width:0;width:100%;padding:13px 15px;border:2px solid #b9d1e2;border-radius:12px;color:var(--ink);font-size:1.25rem;font-weight:800}.number-input-row input:focus{border-color:var(--unit);outline:3px solid rgba(23,105,170,.14)}.number-input-row input.is-wrong{border-color:#d45d54;animation:shake .24s ease}.answer-unit{display:grid;min-width:58px;place-items:center;border-radius:10px;background:var(--unit-soft);color:var(--unit-dark);font-family:"Cambria Math",Cambria,serif;font-size:1.15rem;font-weight:900}.keyboard-hint{margin:7px 2px 0;color:var(--muted);font-size:.8rem}.decimal-pad{display:none}.feedback-box,.solution-box{margin-top:18px;padding:13px 15px;border-radius:12px;font-weight:750}.feedback-box.success{background:#e8f7f3;color:#075e51}.feedback-box.error{background:#fff0ef;color:#9c251c}.feedback-box.hint{background:#fff5e7;color:#704100}.solution-box{border-left:4px solid var(--unit);background:#f0f7fc;color:var(--ink)}.challenge-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-top:22px}.hint-button{padding:9px 12px;border:0;background:transparent;color:var(--unit-dark);font-weight:850;cursor:pointer}.reward-pop{position:fixed;z-index:40;top:45%;left:50%;padding:11px 18px;border-radius:999px;background:#153c5b;color:#fff;font-weight:900;pointer-events:none;transform:translate(-50%,-50%);animation:reward .8s ease both}.confetti-layer{position:fixed;z-index:35;inset:0;overflow:hidden;pointer-events:none}.confetti-piece{position:absolute;top:-20px;width:9px;height:16px;border-radius:3px;animation:fall 1.2s ease-in forwards}
.strategy-section{background:#fff}.strategy-card{padding:clamp(24px,5vw,48px);border:1px solid #c6ddec;border-radius:25px;background:linear-gradient(135deg,#f8fcff,#eaf5fd)}.strategy-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.strategy-steps div{position:relative;padding:20px 18px 20px 68px;border-radius:15px;background:#fff}.strategy-steps span{position:absolute;top:17px;left:17px;display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--unit);color:#fff;font-weight:900}.strategy-steps strong,.strategy-steps small{display:block}.strategy-steps small{margin-top:4px;color:var(--muted);line-height:1.45}
@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@keyframes reward{0%{opacity:0;transform:translate(-50%,-20%) scale(.75)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}100%{opacity:0;transform:translate(-50%,-85%)}}@keyframes fall{to{transform:translateY(105vh) rotate(520deg);opacity:.2}}
@media(max-width:900px){.units-hero-grid,.training-layout{grid-template-columns:1fr}.hero-conversion{max-width:620px}}
@media(max-width:680px){.unit-browser{grid-template-columns:1fr}.unit-tabs{grid-template-columns:repeat(3,1fr)}.unit-tab{text-align:center}.choice-grid{grid-template-columns:1fr}.strategy-steps{grid-template-columns:1fr}.number-input-row{grid-template-columns:minmax(0,1fr) auto}.number-input-row .button,.keyboard-hint{display:none}.decimal-pad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:11px;padding:10px;border-radius:15px;background:#1d3346}.decimal-pad button{min-height:47px;border:0;border-radius:9px;background:#fff;color:#193044;font-weight:900;box-shadow:0 2px 0 #b1c0cc}.decimal-pad .pad-back{background:#e7edf2}.decimal-pad .pad-clear{grid-column:span 2;background:#e7edf2}.decimal-pad .pad-submit{grid-column:span 2;background:var(--unit);color:#fff;box-shadow:0 2px 0 var(--unit-dark)}}
@media(prefers-reduced-motion:reduce){.reward-pop,.confetti-piece,.number-input-row input.is-wrong{animation:none}}
