:root{--navy:#073b4c;--navy2:#052b38;--teal:#0a9396;--teal2:#94d2bd;--ink:#15313b;--muted:#647780;--bg:#f4f8f8;--white:#fff;--line:#d9e6e7;--danger:#a12626;--shadow:0 18px 50px rgba(7,59,76,.11)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.site-header{height:76px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;font-weight:800}.brand strong,.brand small{display:block}.brand small{font-size:12px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.site-header nav{display:flex;align-items:center;gap:22px;font-weight:700;font-size:14px}.nav-cta{padding:10px 16px;border-radius:10px;background:var(--navy);color:#fff}.inline-form{display:inline}.link-button{border:0;background:transparent;font-weight:700;color:var(--ink);cursor:pointer}.hero{max-width:1180px;margin:0 auto;padding:88px 24px 68px;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.eyebrow{display:inline-block;color:var(--teal);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hero h1,.section-heading h1,.dashboard-top h1,.topic-hero h1,.lesson-header h1,.auth-card h1{font-size:clamp(38px,5vw,68px);line-height:1.03;margin:14px 0 20px;letter-spacing:-.045em}.hero h1 span{color:var(--teal)}.hero-copy>p{font-size:19px;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:12px;margin:30px 0}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:11px;padding:13px 20px;font-weight:800;cursor:pointer}.button.primary{background:var(--navy);color:#fff}.button.primary:hover{background:var(--teal)}.button.secondary{background:#fff;border-color:var(--line);color:var(--navy)}.button.small{padding:8px 12px;font-size:13px}.button.full{width:100%}.trust-row{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:13px;font-weight:700}.hero-panel{background:linear-gradient(145deg,var(--navy2),var(--navy));color:#fff;border-radius:28px;padding:30px;box-shadow:var(--shadow);transform:rotate(1deg)}.mini-header{display:flex;justify-content:space-between;align-items:center;color:var(--teal2);font-size:13px}.pill{background:rgba(148,210,189,.14);border:1px solid rgba(148,210,189,.35);padding:5px 9px;border-radius:999px}.hero-panel h3{font-size:30px;margin:48px 0 10px}.hero-panel p{color:#c8d8dc}.progress-line{height:8px;border-radius:999px;background:#dbe8e8;overflow:hidden}.progress-line span{display:block;height:100%;background:var(--teal)}.hero-panel .progress-line{background:rgba(255,255,255,.13);margin:22px 0}.lesson-preview{background:#fff;color:var(--navy);padding:20px;border-radius:16px;display:flex;flex-direction:column;gap:6px}.lesson-preview strong{font-size:24px}.lesson-preview small{color:var(--muted)}.features{max-width:1180px;margin:0 auto 70px;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.features article,.stats-grid article,.mode-grid article,.admin-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.feature-number{color:var(--teal);font-weight:900}.features h3{margin:14px 0 6px}.features p{margin:0;color:var(--muted)}.site-footer{text-align:center;padding:30px;color:var(--muted);font-size:13px}.auth-shell{min-height:calc(100vh - 130px);display:grid;place-items:center;padding:40px 20px}.auth-card{width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:var(--shadow)}.auth-card h1{font-size:42px}.auth-card>p{color:var(--muted)}.stack-form{display:grid;gap:18px;margin-top:26px}.stack-form label{font-size:14px;font-weight:800}.stack-form input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cbdadc;border-radius:10px;outline:none}.stack-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(10,147,150,.12)}.stack-form small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.auth-foot{text-align:center;font-size:14px}.auth-foot a{color:var(--teal);font-weight:800}.alert{padding:12px 14px;border-radius:10px;margin:16px 0}.alert.error{background:#fff0f0;color:var(--danger);border:1px solid #f1cccc}.grade-shell{max-width:1100px;margin:0 auto;padding:70px 24px}.section-heading.centered{text-align:center}.section-heading h1{font-size:50px}.section-heading p{color:var(--muted)}.grade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}.grade-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:24px;padding:30px;cursor:pointer;min-height:310px;display:flex;flex-direction:column;transition:.2s}.grade-card:hover,.grade-card.selected{transform:translateY(-5px);border-color:var(--teal);box-shadow:var(--shadow)}.grade-label{font-weight:800;color:var(--teal)}.grade-card strong{font-size:96px;line-height:1;margin:18px 0;color:var(--navy)}.grade-card small{font-size:16px;color:var(--muted)}.choose-link{margin-top:auto;font-weight:900;color:var(--teal)}.dashboard-shell,.content-shell,.lesson-shell{max-width:1180px;margin:0 auto;padding:52px 24px}.dashboard-top{display:flex;align-items:end;justify-content:space-between;gap:24px}.dashboard-top h1{font-size:52px}.dashboard-top p{color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.stats-grid article{display:flex;flex-direction:column;gap:6px}.stats-grid small{color:var(--muted);font-weight:800}.stats-grid strong{font-size:38px;color:var(--navy)}.stats-grid span{color:var(--muted);font-size:13px}.mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:34px 0 52px}.mode-grid article{position:relative}.mode-grid article>span{font-size:26px}.mode-grid h3{margin:14px 0 4px}.mode-grid p{margin:0;color:var(--muted);font-size:14px}.mode-grid .coming:after{content:"Next phase";position:absolute;top:14px;right:14px;font-size:10px;font-weight:900;text-transform:uppercase;color:var(--teal)}.term-section{margin:44px 0}.section-heading h2{margin:6px 0 18px;font-size:30px}.topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.topic-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;transition:.2s}.topic-card:hover{border-color:var(--teal);transform:translateY(-2px)}.topic-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#e9f6f3;color:var(--teal);font-weight:900}.topic-card h3{margin:0 0 5px}.topic-card p{margin:0 0 7px;color:var(--muted);font-size:14px}.topic-card small{color:var(--teal);font-weight:800}.arrow{font-size:24px}.back-link{display:inline-block;margin-bottom:24px;color:var(--teal);font-weight:800}.topic-hero{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;border-radius:24px;padding:38px}.topic-hero h1{font-size:50px;margin:10px 0}.topic-hero p{max-width:700px;color:#d5e2e5}.lesson-list{display:grid;gap:13px;margin-top:30px}.lesson-row{background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px;display:grid;grid-template-columns:18px 1fr auto;gap:16px;align-items:center}.lesson-row:hover{border-color:var(--teal)}.status-dot{width:12px;height:12px;border-radius:50%;background:#d6e1e2}.status-dot.done{background:var(--teal);box-shadow:0 0 0 5px rgba(10,147,150,.12)}.lesson-row small{color:var(--teal);font-weight:800}.lesson-row h3{margin:3px 0}.lesson-row p{margin:0;color:var(--muted);font-size:14px}.lesson-status{font-weight:900;color:var(--navy)}.empty-state{background:#fff;border:1px dashed #a9c6c8;text-align:center;border-radius:18px;padding:48px;margin-top:28px}.empty-state p{color:var(--muted);max-width:650px;margin:auto}.lesson-header{display:grid;grid-template-columns:1fr 340px;gap:30px;align-items:start}.lesson-header h1{font-size:50px}.lesson-header p{color:var(--muted)}.audio-card{background:var(--navy);color:#fff;border-radius:18px;padding:22px;position:sticky;top:100px}.audio-card>span{display:block;font-weight:900;margin-bottom:14px}.audio-actions{display:flex;gap:8px;flex-wrap:wrap}.audio-card label{display:flex;justify-content:space-between;align-items:center;margin-top:16px;color:#dbe9eb;font-size:13px}.audio-card select{padding:6px;border-radius:7px}.lesson-content{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px;margin-top:30px;font-size:17px}.lesson-content h2{font-size:30px;color:var(--navy)}.math{font-family:"Cambria Math",Georgia,serif;font-size:1.05em}.example,.practice{margin:24px 0;padding:22px;border-radius:14px}.example{background:#edf8f6;border-left:5px solid var(--teal)}.practice{background:#f7f8ed;border-left:5px solid #c8a720}.lesson-complete{display:flex;justify-content:flex-end;margin:24px 0}.complete-badge{padding:13px 18px;border-radius:11px;background:#e4f5f0;color:#087f72;font-weight:900}.admin-stats{grid-template-columns:repeat(4,1fr)}.admin-panel{margin-top:30px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}@media(max-width:900px){.hero,.lesson-header{grid-template-columns:1fr}.hero-panel{transform:none}.features,.grade-grid,.stats-grid,.admin-stats{grid-template-columns:1fr}.mode-grid{grid-template-columns:repeat(2,1fr)}.topic-grid{grid-template-columns:1fr}.audio-card{position:static}.dashboard-top{align-items:start;flex-direction:column}.site-header nav a:not(.nav-cta){display:none}}@media(max-width:600px){.hero{padding-top:50px}.hero h1{font-size:46px}.grade-card{min-height:240px}.grade-card strong{font-size:72px}.mode-grid{grid-template-columns:1fr}.topic-card{grid-template-columns:42px 1fr}.topic-card .arrow{display:none}.lesson-row{grid-template-columns:14px 1fr}.lesson-status{grid-column:2}.lesson-content{padding:22px}.site-header{padding:0 16px}.brand small{display:none}}
