:root{--paper:#f7f5ef;--paper-deep:#ebe8de;--white:#fffefa;--ink:#173d33;--ink-soft:#315a4e;--muted:#64746b;--line:#dedfd4;--leaf:#bdd9a5;--lime:#e4f17f;--coral:#b04b35;--sky:#bfdce2;--shadow:0 18px 55px #173d3317;--font-display:Georgia, "Times New Roman", serif;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{background:var(--paper);min-width:320px}body{color:var(--ink);background:radial-gradient(ellipse at 75% -12%, #e4f17f36, transparent 37rem), var(--paper);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}::selection{color:var(--ink);background:var(--lime)}.site-shell{width:min(1180px,100% - 48px);margin:0 auto}.topbar{justify-content:space-between;align-items:center;height:82px;display:flex}.brand{letter-spacing:-.055em;align-items:center;gap:10px;font-size:19px;font-weight:760;display:inline-flex}.brand-mark{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:12px 12px 12px 4px;place-items:center;font-size:22px;line-height:1;display:grid;transform:rotate(-4deg)}.nav-links{color:var(--ink-soft);align-items:center;gap:30px;font-size:13px;font-weight:650;display:flex}.nav-link:hover{color:var(--coral)}.button{background:var(--ink);min-height:46px;color:var(--white);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 20px;font-size:13px;font-weight:750;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{background:#245647;transform:translateY(-2px);box-shadow:0 9px 20px #173d3326}.button:disabled{opacity:.58;cursor:wait;box-shadow:none;transform:none}.button-light{background:var(--white);color:var(--ink);border:1px solid var(--line)}.button-light:hover{background:#fff}.button-accent{background:var(--coral);color:#fff}.button-accent:hover{background:#d8684e}.button-small{min-height:39px;padding:0 16px}.eyebrow{color:var(--ink-soft);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800}.display{font-family:var(--font-display);letter-spacing:-.055em;margin:0;font-weight:500}.hero{grid-template-columns:1.03fr .97fr;align-items:center;gap:50px;min-height:615px;padding:35px 0 68px;display:grid;position:relative}.hero-copy{z-index:1;position:relative}.hero h1{max-width:620px;margin:20px 0;font-size:clamp(52px,6.7vw,82px);line-height:.99}.hero h1 em{color:var(--coral);font-weight:500}.hero-description{max-width:470px;color:var(--ink-soft);font-size:17px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:11px;margin-top:30px;display:flex}.trust-note{color:var(--muted);margin-top:18px;font-size:11px}.hero-art{place-items:center;min-height:460px;display:grid;position:relative}.orbit{aspect-ratio:1;border:1px dashed #b6c4ac;border-radius:50%;width:min(90%,420px);position:absolute;transform:rotate(-12deg)}.orbit:before,.orbit:after{content:"";border:1px solid #d5dbc8;border-radius:50%;position:absolute;inset:14%}.orbit:after{inset:29%}.lesson-card{z-index:1;background:var(--white);width:min(360px,83%);box-shadow:var(--shadow);border:1px solid #173d3317;border-radius:26px;padding:25px;position:relative;transform:rotate(2deg)}.card-kicker{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:10px;font-weight:750;display:flex}.spark-dot{background:var(--lime);width:33px;height:33px;color:var(--ink);border-radius:50%;place-items:center;font-size:20px;display:grid}.lesson-card h2{font-family:var(--font-display);letter-spacing:-.04em;margin:20px 0 5px;font-size:31px;font-weight:500}.lesson-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.fraction-row{align-items:center;gap:8px;margin:23px 0 22px;display:flex}.fraction-tile{width:55px;height:55px;color:var(--ink);font-family:var(--font-display);background:#edf2e4;border-radius:15px;place-items:center;font-size:20px;display:grid}.fraction-tile:nth-child(2){background:#f8e6dc}.fraction-tile:nth-child(3){background:#e1edf0}.fraction-operator{color:#96a397;font-size:17px}.progress-track{background:#edf0e9;border-radius:99px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--ink);width:67%;height:100%}.progress-caption{color:var(--muted);justify-content:space-between;margin-top:8px;font-size:10px;display:flex}.orbit-label{z-index:2;background:var(--white);border:1px solid #173d3314;border-radius:99px;align-items:center;gap:8px;padding:10px 13px;font-size:11px;font-weight:730;display:flex;position:absolute;box-shadow:0 8px 22px #173d3314}.orbit-label span{background:var(--leaf);border-radius:50%;place-items:center;width:23px;height:23px;font-size:12px;display:grid}.orbit-label.one{top:16%;right:2%;transform:rotate(5deg)}.orbit-label.two{bottom:17%;left:3%;transform:rotate(-7deg)}.orbit-label.three{bottom:14%;right:3%;transform:rotate(4deg)}.section-intro{max-width:600px;margin-bottom:30px}.section-intro h2{margin:12px 0;font-size:clamp(34px,4vw,48px);line-height:1.08}.section-intro p{color:var(--muted);margin:0;line-height:1.7}.steps-section{padding:30px 0 90px}.steps-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.step-card{border:1px solid var(--line);background:#fffefabf;border-radius:22px;min-height:200px;padding:24px}.step-number{color:var(--coral);font-family:var(--font-display);font-size:28px}.step-card h3{letter-spacing:-.025em;margin:20px 0 8px;font-size:17px}.step-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.pricing-section{background:var(--ink);color:var(--white);border-radius:26px;grid-template-columns:1fr auto;align-items:center;gap:30px;margin-bottom:86px;padding:32px 38px;display:grid}.pricing-section h2{font-family:var(--font-display);letter-spacing:-.04em;margin:0 0 6px;font-size:32px;font-weight:500}.pricing-section p{color:#c1d3c9;margin:0;font-size:13px}.price{text-align:right;white-space:nowrap}.price strong{font-family:var(--font-display);font-size:36px;font-weight:500}.price span{color:#c1d3c9;font-size:11px}.footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:22px 0 30px;font-size:11px;display:flex}.footer-note{max-width:540px;line-height:1.55}.auth-shell{place-items:center;min-height:100vh;padding:28px;display:grid}.auth-card{border:1px solid var(--line);background:var(--white);width:min(100%,440px);box-shadow:var(--shadow);border-radius:26px;padding:35px}.auth-card h1{margin:24px 0 8px;font-size:39px;line-height:1.06}.auth-copy{color:var(--muted);margin:0 0 25px;font-size:13px;line-height:1.6}.form-field{gap:7px;margin:15px 0;display:grid}.form-field label{font-size:12px;font-weight:750}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--line);width:100%;min-height:47px;color:var(--ink);background:#fff;border-radius:12px;padding:10px 13px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--ink-soft);outline:2px solid #315a4e26}.auth-submit{width:100%;margin-top:9px}.form-message{color:#8d3926;background:#f9e8e1;border-radius:11px;margin:13px 0;padding:11px 13px;font-size:12px;line-height:1.5}.form-message.success{color:var(--ink);background:#eaf2df}.auth-switch{color:var(--muted);text-align:center;margin:20px 0 0;font-size:12px}.auth-switch a{color:var(--ink);text-underline-offset:3px;font-weight:750;text-decoration:underline}.setup-card{border:1px solid var(--line);background:var(--white);border-radius:22px;max-width:660px;margin:13vh auto;padding:34px}.setup-card h1{font-family:var(--font-display);margin:14px 0;font-size:39px;font-weight:500}.setup-card p{color:var(--ink-soft);line-height:1.7}.setup-card code{overflow-wrap:anywhere;background:var(--paper-deep);border-radius:5px;padding:2px 6px;font-size:12px}.app-shell{width:min(1240px,100% - 42px);margin:0 auto}.app-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:74px;display:flex}.app-top-actions{align-items:center;gap:13px;display:flex}.user-chip{color:var(--ink-soft);align-items:center;gap:9px;font-size:12px;display:inline-flex}.user-avatar{background:var(--leaf);width:31px;height:31px;color:var(--ink);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.app-main{padding:40px 0 80px}.dashboard-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px;display:flex}.dashboard-heading h1{margin:10px 0 4px;font-size:clamp(37px,5vw,56px);line-height:1}.dashboard-heading p{color:var(--muted);margin:9px 0 0;font-size:13px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);align-items:start;gap:17px;display:grid}.panel{border:1px solid var(--line);background:var(--white);border-radius:22px}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.panel-heading h2{letter-spacing:-.02em;margin:0;font-size:15px}.panel-heading span{color:var(--muted);font-size:11px}.learner-list{gap:0;display:grid}.learner-card{border-bottom:1px solid #edeee7}.learner-card:last-child{border-bottom:0}.learner-row{border-bottom:1px solid #edeee7;align-items:center;gap:14px;padding:18px 22px;display:flex}.learner-card .learner-row,.learner-row:last-child{border-bottom:0}.learner-initial{background:var(--sky);width:43px;height:43px;color:var(--ink);font-family:var(--font-display);border-radius:15px;flex:none;place-items:center;font-size:19px;display:grid}.learner-row:nth-child(2n) .learner-initial{background:#f8e4d8}.learner-info{flex:1;min-width:0}.learner-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.learner-info span{color:var(--muted);margin-top:4px;font-size:11px;display:block}.row-actions{gap:7px;display:flex}.learner-progress{padding:0 22px 18px 79px}.progress-summary{justify-content:space-between;gap:12px;margin-bottom:10px;font-size:10px;display:flex}.progress-summary strong{color:var(--ink)}.progress-summary span{color:var(--muted)}.focus-note{color:var(--ink-soft);margin:10px 0 0;font-size:10px;line-height:1.5}.pet-picker{border-top:1px solid var(--line);margin-top:15px;padding-top:13px}.pet-items{flex-wrap:wrap;gap:6px;display:flex}.pet-item{min-width:62px;color:var(--ink);cursor:pointer;background:#f4f4ed;border:1px solid #0000;border-radius:11px;justify-items:center;gap:4px;padding:7px 8px;display:grid}.pet-item>span{font-size:16px}.pet-item small{color:var(--muted);font-size:8px}.pet-item.selected{border-color:var(--ink-soft);background:#edf3e6}.pet-item:disabled:not(.selected){cursor:not-allowed;opacity:.5}.pet-error{color:#8d3926;margin:8px 0 0;font-size:10px}.text-link{color:var(--ink-soft);text-underline-offset:3px;font-size:11px;font-weight:740;text-decoration:underline}.empty-state{text-align:center;padding:36px 22px}.empty-icon{background:var(--lime);width:54px;height:54px;color:var(--ink);border-radius:18px;place-items:center;margin:0 auto 13px;font-size:25px;display:grid}.empty-state h3{font-family:var(--font-display);margin:0 0 7px;font-size:24px;font-weight:500}.empty-state p{max-width:350px;color:var(--muted);margin:0 auto 18px;font-size:12px;line-height:1.6}.side-stack{gap:15px;display:grid}.plan-card{background:var(--ink);color:var(--white);padding:21px}.plan-card .eyebrow{color:var(--lime)}.plan-card h3{font-family:var(--font-display);margin:15px 0 7px;font-size:26px;font-weight:500}.plan-card p{color:#c0d2c8;margin:0;font-size:12px;line-height:1.6}.plan-card .button{background:var(--lime);color:var(--ink);margin-top:18px}.insight-card{padding:20px}.insight-card h3{margin:0 0 8px;font-size:13px}.insight-card p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.notice{color:#77432c;background:#fff2e9;border:1px solid #e8c1a8;border-radius:12px;margin:18px 0;padding:13px 15px;font-size:12px;line-height:1.55}.scan-layout{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);align-items:start;gap:20px;display:grid}.scan-panel{padding:23px}.scan-panel h2{margin:0 0 6px;font-size:17px}.scan-panel>p{color:var(--muted);margin:0 0 22px;font-size:12px;line-height:1.6}.file-drop{text-align:center;background:#fafbf6;border:1px dashed #aeb9a9;border-radius:18px;place-items:center;min-height:210px;padding:23px;display:grid}.file-drop input{max-width:100%;color:var(--muted);margin-top:14px;font-size:11px}.file-drop strong{margin-top:12px;font-size:12px;display:block}.file-drop span{color:var(--muted);margin-top:6px;font-size:11px;display:block}.result-list{gap:10px;margin-top:16px;display:grid}.result-item{border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px}.result-item strong{font-size:12px}.result-item p{color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.5}.form-actions{flex-wrap:wrap;gap:10px;margin-top:17px;display:flex}.interest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.interest-choice{border:1px solid var(--line);min-height:39px;color:var(--ink-soft);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.interest-choice input{accent-color:var(--ink)}.plan-list{color:var(--ink-soft);gap:10px;margin:20px 0;padding-left:20px;font-size:12px;line-height:1.6;display:grid}.price-line{margin:22px 0 16px}.price-line strong{color:var(--ink);font-size:15px}.price-line span{color:var(--muted);font-size:12px}.lesson-text{color:var(--ink-soft);font-family:var(--font-display);white-space:pre-wrap;font-size:20px;line-height:1.6}.quiz-question{border:1px solid var(--line);border-radius:15px;margin:20px 0;padding:17px}.quiz-question legend{max-width:100%;padding:0 5px;font-size:13px;font-weight:700}.quiz-choice{color:var(--ink-soft);align-items:flex-start;gap:9px;margin:11px 0;font-size:12px;line-height:1.5;display:flex}.quiz-choice input{accent-color:var(--ink)}.back-link{color:var(--ink-soft);margin-bottom:20px;font-size:12px;font-weight:700;display:inline-flex}.muted{color:var(--muted)}@media (max-width:850px){.hero{grid-template-columns:1fr;gap:0;padding-top:40px}.hero-copy{max-width:660px}.hero-art{min-height:420px}.dashboard-grid,.scan-layout{grid-template-columns:1fr}}@media (max-width:620px){.site-shell{width:min(100% - 32px,1180px)}.topbar{height:70px}.nav-links{gap:12px}.nav-links>a:not(.button){display:none}.nav-links .button{min-height:39px;padding:0 14px;font-size:11px}.hero{min-height:auto;padding:46px 0 45px}.hero h1{font-size:clamp(48px,13vw,68px)}.hero-description{font-size:15px}.hero-art{width:100%;min-width:0;min-height:355px;margin:6px 0 0;overflow:clip}.lesson-card{padding:19px}.lesson-card h2{font-size:27px}.orbit-label{padding:8px 10px;font-size:9px}.orbit-label.one{right:-2%}.steps-section{padding:20px 0 58px}.steps-grid{grid-template-columns:1fr}.step-card{min-height:auto;padding:20px}.step-card h3{margin:11px 0 7px}.pricing-section{grid-template-columns:1fr;gap:20px;margin-bottom:55px;padding:25px}.price{text-align:left}.footer{flex-direction:column}.auth-shell{padding:17px}.auth-card{padding:25px}.app-shell{width:calc(100% - 28px)}.app-topbar{height:66px}.user-chip>span:last-child{display:none}.app-main{padding-top:29px}.dashboard-heading{flex-direction:column;align-items:start}.learner-row{flex-wrap:wrap;align-items:start;padding:15px}.row-actions{width:100%;padding-left:57px}.learner-progress{padding:0 15px 16px}.panel-heading{padding:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
