:root{--bg:#f7f7fc;--surface:#ffffff;--surface-2:#f0efff;--text:#20233a;--muted:#6d728a;--line:#e5e6f0;--primary:#6c4cf6;--primary-dark:#5636df;--primary-soft:#ebe7ff;--green:#16a36a;--green-soft:#e9f8f1;--yellow:#ffd94f;--orange:#ff9d57;--pink:#e95bbb;--blue:#4f8ff7;--danger:#d95363;--shadow:0 18px 60px rgba(43,38,88,0.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid rgba(108,76,246,.35);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{width:min(1120px,calc(100% - 32px));margin:0 auto}.eyebrow{font-size:12px;line-height:1.2;font-weight:850;text-transform:uppercase;letter-spacing:.11em;color:var(--primary)}.eyebrow.light{color:#ddd5ff}.muted{color:var(--muted)}.button,.header-cta,.light-button,.secondary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:0 18px;font-weight:800;border:0;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover,.header-cta:hover,.light-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button{background:var(--primary);color:white;box-shadow:0 9px 22px rgba(108,76,246,.22)}.primary-button:hover{background:var(--primary-dark)}.secondary-button{background:white;color:var(--text);border:1px solid var(--line)}.light-button{background:white;color:var(--primary-dark)}.compact-button{width:auto!important}.text-button{border:0;background:transparent;padding:8px 0;font-weight:750;color:var(--primary)}.text-button.danger{color:var(--danger)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(247,247,252,.9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(229,230,240,.8)}.header-inner{width:min(1120px,calc(100% - 32px));margin:0 auto;min-height:72px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:850;white-space:nowrap}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--primary);color:white;border-radius:11px;font-size:21px;box-shadow:0 8px 18px rgba(108,76,246,.2)}.brand-mark svg{display:block;width:100%;height:100%}.main-nav{margin-left:auto;display:flex;gap:22px;align-items:center;color:var(--muted);font-weight:700;font-size:14px}.main-nav a:hover{color:var(--text)}.header-cta{min-height:42px;padding-inline:15px;background:var(--text);color:white;font-size:14px}.landing-hero{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;grid-gap:52px;gap:52px;padding-top:82px;padding-bottom:88px}.hero-copy h1{margin:12px 0 22px;font-size:clamp(48px,6.5vw,78px);line-height:.98;letter-spacing:-.045em;max-width:760px}.hero-copy h1 em{font-style:normal;color:var(--primary)}.hero-copy>p{margin:0;max-width:690px;font-size:19px;line-height:1.65;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-button{min-height:54px;padding-inline:22px}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;color:var(--muted);font-size:13px;font-weight:700}.hero-art{justify-self:center;width:100%;max-width:560px}.hero-art svg{display:block;width:100%;height:auto}.hero-art .hop{stroke-dasharray:160;stroke-dashoffset:160;animation:hero-hop .7s ease-out forwards}.hero-art .hop-2{animation-delay:.5s}.hero-art .hop-3{animation-delay:1s}@keyframes hero-hop{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.hero-art .hop{animation:none;stroke-dashoffset:0}}.value-strip{background:var(--text);color:white}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:34px;gap:34px;padding-top:28px;padding-bottom:28px}.value-grid div{display:grid;grid-gap:5px;gap:5px}.value-grid strong{font-size:15px}.value-grid span{color:#cfd1df;font-size:13px;line-height:1.5}.landing-section{padding-top:84px;padding-bottom:88px}.landing-section-heading{display:grid;grid-template-columns:1fr .75fr;grid-gap:50px;gap:50px;align-items:flex-end;margin-bottom:30px}.cta-inner h2,.diagnostic-copy h2,.landing-section-heading h2,.map-hero h1,.parent-hero h1,.pricing-hero h1{margin:8px 0 0;font-size:clamp(34px,4vw,52px);line-height:1.05;letter-spacing:-.03em}.landing-section-heading>p{color:var(--muted);line-height:1.65;margin:0}.feature-skill-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:14px;gap:14px}.feature-skill-card{min-width:0;display:grid;grid-template-columns:58px 1fr auto;align-items:center;grid-gap:14px;gap:14px;background:white;border:1px solid var(--line);border-radius:18px;padding:17px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.feature-skill-card:hover{transform:translateY(-2px);border-color:#d5cffd;box-shadow:0 12px 30px rgba(43,38,88,.06)}.feature-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:17px;background:var(--primary-soft);font-size:26px}.feature-skill-card strong{font-size:16px}.feature-skill-card p{margin:4px 0 6px;color:var(--muted);font-size:13px;line-height:1.45}.feature-skill-card small{color:#9296a9;font-weight:700}.feature-arrow{font-size:23px;color:var(--primary)}.diagnostic-section{display:grid;grid-template-columns:1fr 1fr;grid-gap:70px;gap:70px;align-items:center;padding-top:34px;padding-bottom:100px}.diagnostic-visual{background:white;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.mini-question{font-size:36px;font-weight:900}.wrong-answer{margin:20px 0;width:max-content;border:2px solid #f2bcc5;background:#fff2f4;color:var(--danger);border-radius:13px;padding:8px 15px;font-size:25px;font-weight:850}.wrong-answer span{margin-left:8px}.thinking-path{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--muted)}.thinking-path span,.thinking-path strong{border-radius:10px;background:#f4f4f8;padding:9px 11px}.thinking-path .carry-chip{background:var(--primary-soft);color:var(--primary-dark)}.thinking-path strong{background:var(--green-soft);color:var(--green)}.diagnostic-copy p{color:var(--muted);line-height:1.7;font-size:17px}.diagnostic-copy a{color:var(--primary);font-weight:850}.cta-section{background:linear-gradient(135deg,#5b3be4,#7c5cf6);color:white}.cta-inner{padding-top:52px;padding-bottom:52px;display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-inner h2{max-width:700px}.cta-inner p{color:#ddd7ff}.onboarding-shell{display:grid;place-items:center;padding-top:60px;padding-bottom:60px}.onboarding-card{width:min(620px,100%);background:white;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:var(--shadow)}.onboarding-card h1{font-size:clamp(34px,6vw,50px);margin:8px 0 10px;letter-spacing:-.035em}.onboarding-illustration{position:relative;width:122px;height:122px;margin:0 auto 24px}.planet{inset:18px;background:var(--primary);color:white;place-items:center;font-size:42px;box-shadow:0 14px 32px rgba(108,76,246,.25)}.orbit-dot,.planet{position:absolute;border-radius:50%;display:grid;font-weight:900}.orbit-dot{width:34px;height:34px;place-items:center;color:var(--text)}.dot-a{top:0;right:9px;background:var(--yellow)}.dot-b{bottom:2px;left:4px;background:#b9f1dc}.dot-c{bottom:13px;right:0;background:#ffd6ee}.field-label,.grade-fieldset legend{display:block;font-size:13px;font-weight:850;margin:23px 0 8px;color:#484d64}.input{width:100%;min-height:54px;border:2px solid var(--line);background:white;border-radius:14px;padding:12px 15px;font-size:17px;color:var(--text)}.input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px rgba(108,76,246,.1)}.grade-fieldset{border:0;margin:0 0 22px;padding:0}.grade-options{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.grade-option{min-height:92px;border:2px solid var(--line);border-radius:16px;padding:14px;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-weight:750}.grade-option input{position:absolute;opacity:0;pointer-events:none}.grade-option.selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.grade-number{font-size:28px;font-weight:900}.onboarding-card .primary-button{width:100%}.map-layout{padding-top:54px;padding-bottom:80px}.map-hero{display:flex;justify-content:space-between;gap:30px;align-items:center}.map-hero p{color:var(--muted);font-size:17px}.xp-card{min-width:126px;display:grid;justify-items:center;grid-gap:2px;gap:2px;background:white;border:1px solid var(--line);border-radius:20px;padding:15px;box-shadow:0 10px 28px rgba(43,38,88,.06)}.xp-card>span{font-size:24px}.xp-card strong{font-size:25px}.xp-card small{color:var(--muted);font-weight:700}.map-summary{margin:28px 0 44px;display:grid;grid-template-columns:180px 180px 1fr;grid-gap:12px;gap:12px}.map-summary>div,.recommended-link{background:white;border:1px solid var(--line);border-radius:16px;padding:15px 17px}.map-summary>div{display:grid;grid-gap:2px;gap:2px}.map-summary strong{font-size:20px}.map-summary span{font-size:12px;color:var(--muted)}.recommended-link{color:var(--primary-dark);font-weight:850;display:flex;align-items:center;justify-content:center;text-align:center}.skill-section{margin-top:38px}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.section-heading h2{margin:0;font-size:23px}.section-number{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--text);color:white;font-weight:800;font-size:13px}.skill-path{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.skill-node{position:relative;min-width:0;display:grid;grid-template-columns:58px 1fr auto auto;align-items:center;grid-gap:13px;gap:13px;min-height:82px;background:white;border:1px solid var(--line);border-radius:18px;padding:12px 15px;transition:transform .15s ease,border-color .15s ease}.skill-node:hover{transform:translateY(-2px);border-color:#d7d0ff}.skill-node.recommended{border-color:#bfb2ff;background:linear-gradient(90deg,#fff,#f7f4ff)}.skill-orb{position:relative;width:52px;height:52px;display:grid;place-items:center}.skill-orb>span{position:relative;z-index:1;font-size:21px;font-weight:900}.skill-orb svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.orb-progress,.orb-track{fill:none;stroke-width:4}.orb-track{stroke:#ececf4}.orb-progress{stroke:var(--primary);stroke-linecap:round}.mastered .orb-progress{stroke:var(--green)}.mastered .skill-orb>span{color:var(--green)}.skill-node-title{font-weight:850}.skill-node-meta{font-size:12px;color:var(--muted);margin-top:3px}.recommended-badge{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;letter-spacing:.07em}.node-arrow{color:#a2a5b7;font-size:25px}.practice-shell{max-width:820px;margin:0 auto;padding:32px 0 70px}.practice-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.back-link{font-weight:800;color:var(--muted)}.practice-stats{display:flex;gap:10px}.practice-stats span{background:white;border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.skill-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.skill-heading h1{font-size:clamp(30px,5vw,45px);letter-spacing:-.035em;line-height:1.04;margin:7px 0 0}.mastery-pill{min-width:86px;background:white;border:1px solid var(--line);border-radius:15px;padding:9px 12px;display:grid;text-align:center}.mastery-pill strong{font-size:20px}.mastery-pill span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.progress{height:9px;background:#e7e7ef;border-radius:99px;overflow:hidden}.progress-large{margin-top:20px;height:11px}.bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--pink));border-radius:inherit;transition:width .3s ease}.level-row{display:flex;justify-content:space-between;gap:12px;margin:8px 2px 22px;color:var(--muted);font-size:11px;font-weight:750}.exercise-card{position:relative;overflow:hidden;background:white;border:1px solid var(--line);border-radius:26px;padding:clamp(20px,4vw,34px);box-shadow:var(--shadow)}.exercise-card.is-correct{border-color:#c2ead8}.question-header{display:flex;justify-content:space-between;align-items:center}.question-kicker{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900}.icon-button{width:44px;height:44px;border-radius:13px;border:1px solid var(--line);background:#fafafe}.question{margin:12px 0 22px;font-size:clamp(25px,4vw,36px);font-weight:900;line-height:1.22;letter-spacing:-.02em}.answer-area{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;margin-top:22px}.answer-input{text-align:center;font-size:28px;font-weight:850;min-width:0}.answer-area .primary-button{min-width:138px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:11px;gap:11px;margin-top:22px}.choice-button{min-height:60px;border:2px solid var(--line);background:white;border-radius:15px;font-size:20px;font-weight:850;color:var(--text)}.choice-button:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.help-row{display:flex;justify-content:center;margin-top:14px}.help-row .secondary-button{min-height:42px;font-size:13px}.hint-box{margin-top:13px;background:#fff9db;border:1px solid #f4e39c;border-radius:14px;padding:13px 15px;color:#685b24;line-height:1.5}.feedback-panel{display:grid;grid-template-columns:54px 1fr;grid-gap:13px;gap:13px;align-items:start;border-radius:17px;padding:17px;margin-top:22px}.feedback-panel.success{background:var(--green-soft);color:#126844}.feedback-panel.retry{background:#f3f1ff;color:#43348d;padding:clamp(20px,4vw,36px);border:3px solid #b5a6ef;grid-template-columns:1fr;scroll-margin-top:24px}.feedback-panel.retry .feedback-copy h2{font-size:clamp(26px,4vw,34px)}.feedback-panel.retry .feedback-copy p,.hint-box{font-size:clamp(21px,3vw,27px);line-height:1.65}.retry-clue,.retry-explanation{padding:20px;margin:18px 0;background:white;border-radius:16px}.retry-clue h3,.retry-explanation h3{margin:0 0 10px;font-size:24px}.feedback-panel.retry button{min-height:52px;margin:8px 8px 0 0}.grade-picker,.stage-picker{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.stage-picker button{flex:1 1 170px;display:grid;grid-gap:5px;gap:5px;text-align:left}.stage-picker small{white-space:normal}.grade-picker [aria-pressed=true],.stage-picker [aria-pressed=true]{background:#ebe6ff;border-color:#7451ca;color:#43348d}.curriculum-picker label{display:grid;grid-gap:8px;gap:8px}.area-comparison{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin:24px 0}.area-grid{display:grid;grid-gap:2px;gap:2px;margin-top:10px}.area-grid span{width:24px;height:24px;border:1px solid #7451ca;background:#d9cff7}.unit-area{width:100%;margin-inline:auto}.unit-area span{width:100%;height:auto;aspect-ratio:1}.hint-box{padding:22px}.feedback-icon{width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.7);display:grid;place-items:center;font-size:24px}.feedback-copy h2{margin:1px 0 5px;font-size:20px}.feedback-copy p{margin:5px 0;line-height:1.55}.diagnostic{background:rgba(255,255,255,.55);border-radius:10px;padding:9px 11px}.hint-inline{font-size:13px;opacity:.9}.next-button{width:100%;margin-top:13px}.celebration{position:absolute;inset:6px 12px auto;display:flex;justify-content:space-around;pointer-events:none;color:var(--yellow);animation:celebrate .8s ease both}.celebration span:nth-child(2n){color:var(--pink)}@keyframes celebrate{0%{opacity:0;transform:translateY(14px) scale(.7)}50%{opacity:1}to{opacity:.25;transform:translateY(-2px) scale(1)}}.visual-stage{margin:18px 0 10px;border-radius:20px;background:#fafafe;border:1px solid #eeeef6;padding:20px}.visual-instruction{text-align:center;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px}.equal-groups-stage .group-row{gap:12px}.equal-groups-stage .group-row,.item-group{display:flex;flex-wrap:wrap;justify-content:center}.item-group{min-width:100px;max-width:150px;min-height:100px;padding:14px;border:2px solid #dadbe6;border-radius:50%;gap:7px;align-content:center;background:white}.array-dot,.count-dot{border:0;border-radius:50%;background:var(--pink);box-shadow:inset 0 -3px 0 rgba(0,0,0,.06);transition:transform .12s ease,opacity .12s ease,box-shadow .12s ease}.count-dot{width:27px;height:27px}.array-dot:hover,.count-dot:hover{transform:scale(1.08)}.array-dot.counted,.count-dot.counted{background:var(--green);box-shadow:0 0 0 4px rgba(22,163,106,.13),inset 0 -3px 0 rgba(0,0,0,.06);transform:scale(1.05)}.count-badge{width:max-content;margin:14px auto 0;border-radius:999px;padding:7px 12px;background:white;border:1px solid var(--line);font-size:12px;color:var(--muted)}.count-badge strong{color:var(--text)}.array-stage{display:grid;justify-items:center}.array-labels{width:min(420px,100%);display:flex;justify-content:space-between;margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:800}.dot-array{width:min(380px,100%);display:grid;grid-gap:9px;gap:9px;justify-items:center;padding:18px;border:2px dashed #deddea;border-radius:18px;background:white}.array-dot{width:30px;height:30px}.dot-array.compact{gap:5px;padding:12px}.dot-array.compact .array-dot{width:22px;height:22px}.place-value-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.place-column{min-width:0;text-align:center;background:white;border:1px solid var(--line);border-radius:14px;padding:11px 7px}.place-label{color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;margin-bottom:10px}.blocks-wrap{min-height:105px;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:4px}.one-block{width:13px;height:13px;border-radius:3px;background:var(--pink)}.ten-block{width:10px;height:56px;border-radius:4px;background:repeating-linear-gradient(to bottom,var(--blue) 0,var(--blue) 4px,#8ab5ff 4px,#8ab5ff 5px)}.hundred-block{width:42px;height:42px;border-radius:6px;background-color:#8ee0c0;background-image:linear-gradient(#6fcba8 1px,transparent 0),linear-gradient(90deg,#6fcba8 1px,transparent 0);background-size:8px 8px}.thousand-block{width:48px;height:48px;border-radius:8px;background:linear-gradient(135deg,#ffcc55,#ffad55);box-shadow:inset -7px -7px 0 rgba(0,0,0,.08)}.place-count{margin-top:8px;font-size:19px;font-weight:900}.zero-placeholder{font-size:28px;font-weight:850;color:#c7c8d3;align-self:center}.operation-stage{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px;gap:12px;align-items:center}.operation-symbol{font-size:34px;font-weight:900;color:var(--primary)}.mini-base-ten{min-width:0;background:white;border:1px solid var(--line);border-radius:15px;padding:12px}.mini-number{text-align:center;font-size:20px;font-weight:900;margin-bottom:8px}.mini-blocks{display:grid;grid-gap:8px;gap:8px}.mini-ones,.mini-tens{min-height:44px;display:flex;flex-wrap:wrap;gap:4px;justify-content:center;align-items:center}.ten-stick{width:7px;height:43px;border-radius:3px;background:repeating-linear-gradient(to bottom,var(--blue) 0,var(--blue) 4px,#8bb6ff 4px,#8bb6ff 5px)}.unit-square{width:12px;height:12px;border-radius:3px;background:var(--pink)}.number-line-stage{padding:10px 12px 3px;overflow-x:auto}.number-line-stage svg{display:block;width:100%;min-width:460px}.number-line-main,.number-tick{stroke:#62677a;stroke-width:3;stroke-linecap:round}.number-tick{stroke-width:2}.number-highlight{fill:var(--primary)}.number-label{fill:var(--text);font-weight:800;font-size:14px}.fraction-stage{display:grid;justify-items:center;grid-gap:10px;gap:10px}.fraction-circle{width:min(210px,65vw)}.fraction-piece{fill:white;stroke:#cfd1de;stroke-width:3}.fraction-piece.filled{fill:var(--pink)}.fraction-bar{width:min(520px,100%);display:flex;min-height:82px;border:2px solid #cfd1de;border-radius:14px;overflow:hidden;background:white}.fraction-bar span{flex:1 1;border-right:2px solid #cfd1de}.fraction-bar span:last-child{border-right:0}.fraction-bar span.filled{background:var(--pink)}.fraction-caption{color:var(--muted);font-size:12px;font-weight:800}.money-stage{text-align:center}.money-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}.money-coin{width:64px;height:64px;border-radius:50%;place-items:center;border:4px double #bd8b22;background:#f7cd66;color:#674b0f}.money-coin,.money-note{display:grid;font-weight:900}.money-note{min-width:106px;height:58px;place-items:center;border:3px double #52aa7e;border-radius:9px;background:#ccebd9;color:#216746}.money-stage .visual-instruction{margin:15px 0 0}.clock-stage{display:grid;place-items:center}.clock-face{width:min(250px,72vw)}.clock-ring{fill:white;stroke:#d7d8e3;stroke-width:5}.clock-tick{stroke:#7f8396;stroke-width:3;stroke-linecap:round}.clock-number{fill:var(--text);font-size:17px;font-weight:850}.clock-hour{stroke:var(--text);stroke-width:8;stroke-linecap:round}.clock-minute{stroke:var(--primary);stroke-width:5;stroke-linecap:round}.clock-center{fill:var(--pink)}.parent-dashboard{padding:58px 0 80px}.parent-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.parent-hero>div:first-child{max-width:820px}.parent-hero p{color:var(--muted);line-height:1.65}.metric-grid{margin:30px 0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.metric-card{background:white;border:1px solid var(--line);border-radius:17px;padding:17px;display:grid;grid-gap:4px;gap:4px}.metric-icon{font-size:21px}.metric-card strong{font-size:24px}.metric-card>span:last-child{color:var(--muted);font-size:12px;font-weight:700}.insight-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:14px;gap:14px;margin:28px 0}.insight-card{background:white;border:1px solid var(--line);border-radius:19px;padding:22px}.insight-card.focus-card{background:linear-gradient(135deg,#f2efff,#fff);border-color:#d8d0ff}.insight-label{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.09em}.insight-card h2{margin:8px 0 5px}.insight-card p{color:var(--muted);line-height:1.55}.insight-card a{font-weight:850;color:var(--primary)}.parent-section{margin-top:32px}.section-heading-simple{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.section-heading-simple h2{margin:0}.section-heading-simple span{color:var(--muted);font-size:13px;font-weight:750}.mastery-list{display:grid;grid-gap:8px;gap:8px}.mastery-row{display:grid;grid-template-columns:44px 1fr 52px;grid-gap:13px;gap:13px;align-items:center;background:white;border:1px solid var(--line);border-radius:15px;padding:12px 14px}.mastery-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#f2f1f9}.mastery-main{min-width:0;display:grid;grid-gap:7px;gap:7px}.mastery-main strong{font-size:14px}.mastery-score{text-align:right;font-weight:900}.prototype-note{margin-top:30px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 18px;border:1px dashed #c9c5de;border-radius:15px;color:var(--muted)}.prototype-note strong{color:var(--text)}.prototype-note p{margin:4px 0 0;font-size:12px;line-height:1.5}.empty-state{background:white;border:1px solid var(--line);border-radius:22px;padding:35px;text-align:center}.empty-icon{font-size:42px}.empty-state h2{margin-bottom:8px}.empty-state p{color:var(--muted)}.pricing-page{padding-bottom:90px}.pricing-hero{text-align:center;max-width:820px;margin:0 auto;padding:76px 0 38px}.pricing-hero p{color:var(--muted);font-size:17px;line-height:1.6}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:15px;gap:15px;align-items:stretch}.price-card{position:relative;background:white;border:1px solid var(--line);border-radius:22px;padding:25px}.price-card.featured{border:2px solid var(--primary);box-shadow:0 18px 48px rgba(108,76,246,.13)}.price-badge{position:absolute;top:14px;right:14px;background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;letter-spacing:.06em}.price-name{font-size:14px;font-weight:850;color:var(--muted)}.price{margin:9px 0;font-size:30px;font-weight:900;letter-spacing:-.03em}.price small{font-size:13px;color:var(--muted)}.price-card p{color:var(--muted);min-height:48px;line-height:1.5}.price-card ul{list-style:none;padding:0;margin:22px 0;display:grid;grid-gap:10px;gap:10px}.price-card li:before{content:"✓";color:var(--green);font-weight:900;margin-right:8px}.price-button{width:100%}.disabled-label{display:block;padding:14px;border-radius:13px;background:#f3f3f7;color:var(--muted);text-align:center;font-size:12px;font-weight:750}@media (max-width:900px){.landing-hero{grid-template-columns:1fr;padding-top:54px}.hero-art{max-width:480px}.diagnostic-section,.landing-section-heading{grid-template-columns:1fr;gap:28px}.value-grid{gap:18px}.feature-skill-grid,.skill-path,.value-grid{grid-template-columns:1fr}.map-summary{grid-template-columns:1fr 1fr}.recommended-link{grid-column:1/-1}.metric-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:1fr;max-width:620px;margin:0 auto}.price-card p{min-height:0}}@media (max-width:680px){.header-inner,.shell{width:min(100% - 22px,1120px)}.site-header{position:static}.header-inner{min-height:62px;gap:10px}.main-nav{display:none}.header-cta{margin-left:auto;min-height:39px;font-size:12px}.brand{font-size:15px}.brand-mark{width:30px;height:30px;font-size:18px}.hero-copy h1{font-size:45px}.landing-hero{padding-top:42px;padding-bottom:58px;gap:36px}.hero-copy>p{font-size:17px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-button{width:100%}.landing-section{padding-top:58px;padding-bottom:64px}.feature-skill-card{grid-template-columns:48px 1fr auto}.feature-icon{width:48px;height:48px;border-radius:14px}.diagnostic-section{padding-bottom:70px}.cta-inner{align-items:stretch;flex-direction:column}.light-button{width:100%}.onboarding-shell{padding-top:20px}.onboarding-card{padding:24px 18px}.map-layout{padding-top:34px}.map-hero{align-items:flex-start}.map-hero h1{font-size:38px}.xp-card{min-width:94px}.map-summary{grid-template-columns:1fr 1fr}.skill-node{grid-template-columns:52px 1fr auto}.recommended-badge{display:none}.practice-shell{padding-top:18px}.skill-heading{align-items:flex-start}.mastery-pill{min-width:76px}.level-row{font-size:10px}.exercise-card{border-radius:21px}.answer-area{grid-template-columns:1fr}.answer-area .primary-button{width:100%}.choice-grid{grid-template-columns:1fr}.place-value-grid{grid-template-columns:repeat(2,1fr)}.operation-stage{grid-template-columns:1fr}.operation-symbol{text-align:center;line-height:1}.item-group{min-width:88px;min-height:88px;padding:10px}.count-dot{width:23px;height:23px}.parent-dashboard{padding-top:36px}.parent-hero{align-items:stretch;flex-direction:column}.metric-grid{grid-template-columns:repeat(2,1fr)}.insight-grid{grid-template-columns:1fr}.prototype-note{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.site-footer{border-top:1px solid var(--line);background:#f3f3f8}.footer-inner{width:min(1120px,calc(100% - 32px));margin:0 auto;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner>div{display:grid;grid-gap:3px;gap:3px}.footer-inner strong{font-size:14px}.footer-inner span{color:var(--muted);font-size:11px}.footer-inner nav{display:flex;gap:17px;color:var(--muted);font-size:12px;font-weight:750}.legal-page{max-width:820px;padding-top:70px;padding-bottom:90px}.legal-page h1{font-size:clamp(38px,6vw,58px);line-height:1.02;letter-spacing:-.04em;margin:10px 0 16px}.legal-lead{font-size:18px;color:var(--muted);line-height:1.65}.legal-page section{margin-top:32px}.legal-page h2{margin-bottom:8px;font-size:22px}.legal-page section p{color:var(--muted);line-height:1.72}@media (max-width:680px){.footer-inner{width:min(100% - 22px,1120px);align-items:flex-start;flex-direction:column;padding:20px 0}.legal-page{padding-top:45px}}.workspace-page{padding-top:42px;padding-bottom:60px}.stack{display:flex;flex-direction:column;gap:20px}.panel{background:#fff;border:1px solid #e6e1f1;border-radius:22px;padding:28px;box-shadow:0 8px 26px #26124706}.panel h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;margin:0 0 20px}.panel h2{font-size:1.5rem;margin:0 0 14px}.panel h3{font-size:1.15rem;margin:0 0 10px}.panel p{line-height:1.65}.panel .button,.panel .secondary-button{width:auto;display:inline-flex;align-items:center;justify-content:center}.auth-panel{max-width:560px;margin:0 auto}.auth-panel>.secondary-button{width:100%;margin-top:20px}.inline-form label,.stack label{display:flex;flex-direction:column;gap:8px;font-weight:650}.inline-form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin:20px 0}.inline-form label{flex:1 1;min-width:150px}.input{max-width:100%;font-family:inherit}select.input{background:#fff;padding:12px}textarea.input{min-height:110px;resize:vertical}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;font-weight:500!important}.checkbox-label input{margin-top:5px;width:20px;height:20px;flex-shrink:0}.workspace-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:12px}.workspace-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.045em;margin:12px 0}.workspace-hero p{max-width:760px;line-height:1.7;color:#655978}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));grid-gap:20px;gap:20px}.mini-card{border:1px solid #e6e1f1;border-radius:16px;padding:20px;background:#faf8ff}.mini-card small{display:block;margin-top:16px;color:#645676}.notice{border:1px solid #ded4ff;background:#f7f3ff;border-radius:16px;padding:20px;line-height:1.6;margin:18px 0}.notice code{font-size:1.3rem;overflow-wrap:anywhere}.muted{color:#746b82;font-size:.9rem;line-height:1.6}.status-message{position:-webkit-sticky;position:sticky;bottom:12px;background:#f7f3ff;padding:12px;border-radius:12px;white-space:pre-wrap}.status-message:empty{display:none}.table-scroll{width:100%;overflow:auto;margin:16px 0}table{border-collapse:collapse;width:100%;font-size:.9rem;text-align:left}td,th{padding:13px 12px;border-bottom:1px solid #e9e5f1;vertical-align:top;max-width:350px;overflow-wrap:anywhere}th{background:#f8f6fc;white-space:nowrap}caption,th{font-weight:700}caption{text-align:left;padding:12px 0}.cancellation-panel{background:#fbf8ff;padding:22px;border-radius:16px;margin:20px 0;border:1px solid #dfd6f0}.cancellation-panel .button,.cancellation-panel .secondary-button{margin:12px 12px 0 0}.cancellation-panel .text-button{display:block;padding:12px 0}.cancellation-panel label{display:block}.cancellation-panel select{margin-top:10px}.pricing-faq{margin-top:40px}details{border-bottom:1px solid #e9e4f0;padding:18px 0}summary{font-weight:700;cursor:pointer;line-height:1.5}details p{max-width:900px}.shape-stage svg{max-height:260px;width:100%;fill:#e4dcff;stroke:#6c4cf6;stroke-width:5;stroke-linejoin:round}.chart-row{display:grid;grid-template-columns:80px 1fr 40px;grid-gap:14px;gap:14px;align-items:center;width:100%;margin:16px 0}.chart-track{height:34px;border-radius:6px;background:#ece7f7;overflow:hidden}.chart-track span{display:block;height:100%;background:#6c4cf6;border-radius:6px}.classroom-shell{max-width:1160px;margin:auto}.projector .question{font-size:clamp(1.8rem,3.5vw,3rem);text-align:center;line-height:1.4}.projector .visual-stage{min-height:240px}.projector-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:26px 0}.projector-controls .button{width:auto}.answer-reveal{text-align:center;border-radius:16px;background:#f1fbf4;padding:22px}.answer-reveal strong{font-size:3.5rem;color:#13864c}.assignment-link{display:block;padding:15px 0;border-bottom:1px solid #e9e5f1;line-height:1.5}button:disabled{cursor:wait;opacity:.55}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #6c4cf6;outline-offset:4px}@media (max-width:700px){.workspace-page{padding-top:22px}.panel{padding:20px;border-radius:18px}.workspace-hero{display:block}.workspace-hero>.secondary-button{margin-top:12px}.main-nav{gap:10px;flex-wrap:wrap;font-size:.8rem}.header-inner{flex-wrap:wrap;gap:12px}.header-cta{margin-left:auto}.main-nav{order:3;width:100%;justify-content:space-between}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-stats{font-size:.8rem;flex-wrap:wrap}.projector-controls{gap:10px}.projector-controls button{width:100%}.chart-row{grid-template-columns:65px 1fr 25px}.footer-inner{gap:20px}.footer-inner,.footer-inner nav{flex-wrap:wrap}.inline-form label{min-width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.classroom-shell>.panel,.projector-controls,.site-footer,.site-header,.status-message{display:none}body{background:#fff;color:#000}.exercise-card,.panel{box-shadow:none;border:0;page-break-inside:avoid;break-inside:avoid}.workspace-page{padding:0}.table-scroll{overflow:visible}}.locale-bar{display:flex;justify-content:flex-end;padding:8px max(16px,calc((100vw - 1180px) / 2));background:#f5f3ff}.locale-bar select{font:inherit;border:1px solid #c8bcf4;border-radius:8px;padding:7px;background:white;min-height:40px}.paywall{border:3px solid #6c4cf6}