:root{--ink:#122033;--muted:#5d6f86;--green:#1496ad;--green2:#0f7a8c;--lime:#d8f4fa;--paper:#f4f7fc;--line:#d5deeb;--orange:#f0c75e;--pink:#f5e1df;--blue:#e5edf8;--white:#fff;--shadow:0 6px 24px #0a162805;font-family:ui-rounded,'SF Pro Rounded','Avenir Next',Avenir,'Segoe UI',sans-serif;font-synthesis:none;color:var(--ink);background:var(--paper);font-weight:500}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2ec8e0;outline-offset:4px}button svg,a svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:800;letter-spacing:-.035em}h1{font-size:38px;line-height:1.14}h2{font-size:24px}h3{font-size:18px}p{line-height:1.6}.muted{color:var(--muted)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:800}.icon{width:21px;height:21px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.pin-text{font-weight:800;letter-spacing:-.04em;line-height:1}
.topic-icon .icon,.workshop-icon .icon,.world-symbol .icon,.plan-symbol .icon,.badge-icon .icon,.spiel-pin .icon,.spiel-lock-visual .icon{width:1.15em;height:1.15em}
.topic-icon,.workshop-icon,.world-symbol,.plan-symbol{line-height:1}.skip-link{position:fixed;top:-80px;left:20px;background:white;padding:16px;z-index:99}.skip-link:focus{top:15px}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:31px 22px;display:flex;flex-direction:column;gap:32px;position:fixed;inset:0 auto 0 0;width:236px;z-index:10}.logo{display:flex;align-items:center;gap:11px;font-size:24px;font-weight:850;letter-spacing:-1px}.logo img{width:39px;height:39px}.brand-sub{color:var(--muted);font-size:11px;letter-spacing:.02em;margin:5px 0 0 50px}.nav-label{font-size:10px;letter-spacing:.13em;font-weight:800;color:#95a197;margin:0 14px 11px}.nav{display:grid;gap:7px}.nav a{display:flex;align-items:center;gap:13px;padding:13px 14px;border-radius:11px;font-size:13px;color:#68776e;transition:.2s}.nav a:hover{background:#f5f7f0;color:var(--green)}.nav a.active{background:#edf3e7;color:var(--green);font-weight:750}.nav a.active:before{content:'';position:absolute;left:0;width:4px;height:22px;border-radius:0 3px 3px 0;background:var(--green)}.nav .small-pill{margin-left:auto;background:white;font-size:9px;border-radius:5px;padding:3px 5px;color:var(--green)}.sidebar-bottom{margin-top:auto}.side-note{background:#f8f8f2;border-radius:13px;padding:17px 15px;font-size:12px;line-height:1.6;color:#6c796d;margin-bottom:18px}.side-note svg{color:#b7bd7a;margin-bottom:7px}.side-footer{font-size:10px;color:#94a097;padding-left:14px}.content{grid-column:2;min-width:0}.topbar{height:88px;padding:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px;background:var(--paper)}.topbar-text{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px}.topbar-text b{color:var(--ink);font-weight:700}.top-actions{display:flex;align-items:center;gap:16px}.top-stat{font-size:12px;display:flex;align-items:center;gap:6px}.top-stat .icon{width:18px;height:18px;color:#bb853e}.separator{height:24px;width:1px;background:var(--line)}.profile{display:flex;align-items:center;gap:9px;background:none;border:0;padding:0;font-size:12px;font-weight:750}.avatar{width:36px;height:36px;background:#f2e8cc;border-radius:50%;display:grid;place-items:center;font-size:20px}.main{max-width:1330px;margin:0 auto;padding:32px 42px 42px}.welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:25px}.welcome h1{font-size:29px}.welcome p{font-size:13px;margin-top:7px;color:var(--muted)}.date-pill{display:flex;gap:7px;align-items:center;font-size:11px;border:1px solid var(--line);padding:8px 11px;border-radius:8px;white-space:nowrap}.date-pill svg{width:15px;height:15px}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 256px;gap:25px}.hero{border-radius:19px;background:#e9efdb;min-height:260px;position:relative;overflow:hidden;padding:31px 30px;display:flex;align-items:center}.hero-copy{position:relative;z-index:1;max-width:58%}.hero .eyebrow{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:#4e6c46;margin-bottom:15px}.hero h2{font-size:35px;line-height:1.13;letter-spacing:-1.3px;margin-bottom:12px}.hero p{font-size:12px;max-width:260px;color:#5e735b;line-height:1.65;margin-bottom:22px}.hero-art{position:absolute;width:48%;right:0;bottom:-1%;height:100%;}.btn{border:1px solid transparent;border-radius:9px;padding:12px 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:750;background:var(--green);color:white;transition:background .15s,transform .15s;line-height:1.3}.btn:hover{background:var(--green2);transform:translateY(-1px)}.btn svg{width:17px;height:17px}.btn.secondary{background:#fff;border-color:var(--line);color:var(--green)}.btn.secondary:hover{background:#f2f6ec}.btn.soft{background:#e8f4fb;color:var(--green)}.btn.soft:hover{background:#d5eef6}.btn.text{background:transparent;color:var(--green);padding:7px 0}.btn.danger{background:#b75246}.btn.large{padding:15px 23px;font-size:14px}.full{width:100%}.section-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 16px}.section-top h2{font-size:18px}.section-top p{font-size:11px;color:var(--muted);margin-top:5px}.section-top a{font-size:11px;display:flex;align-items:center;gap:4px}.section-top a svg{width:14px;height:14px}.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.topic-card{background:white;border:1px solid var(--line);border-radius:14px;padding:20px 17px;display:flex;flex-direction:column;min-width:0;transition:.2s;position:relative}.topic-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #173f3709;border-color:#c8d5c0}.topic-icon{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;font-size:25px;font-weight:550;margin-bottom:18px}.topic-icon.plus{background:#f6ebce;color:#b38a2d}.topic-icon.minus{background:var(--pink);color:#c58a87}.topic-icon.zero{background:#e9edf9;color:#8885ba;font-size:20px}.topic-card h3{font-size:16px;letter-spacing:-.025em;margin-bottom:7px}.topic-card p{font-size:11px;color:var(--muted);line-height:1.5;min-height:33px}.topic-meta{margin-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8b968d}.topic-meta .icon{height:17px;width:17px;color:var(--green)}.focus-tag{position:absolute;right:12px;top:15px;font-size:8px;letter-spacing:.03em;background:#f2f1fb;color:#8580a8;padding:4px 6px;border-radius:5px}.wide-card{margin-top:18px;background:white;border:1px solid var(--line);border-radius:13px;padding:18px 20px;display:flex;align-items:center;gap:15px}.wide-card .file-art{width:45px;height:48px;display:grid;place-items:center;border-radius:11px;background:#f5f6ed;color:#8c9b61}.wide-card h3{font-size:14px}.wide-card p{font-size:11px;color:var(--muted);margin-top:4px}.wide-card .btn{margin-left:auto;white-space:nowrap}.rail{display:grid;align-content:start;gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:var(--shadow)}.rail .card{padding:21px}.card h3{font-size:15px}.small-caption{font-size:11px;color:var(--muted);line-height:1.5}.goal-ring{position:relative;width:120px;height:120px;margin:22px auto 15px;display:grid;place-items:center}.goal-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.goal-ring .ring-number{font-size:29px;font-weight:800;letter-spacing:-1px;text-align:center}.goal-ring .ring-number small{display:block;letter-spacing:0;font-size:10px;font-weight:500;color:var(--muted);margin-top:4px}.goal-description{text-align:center;font-size:11px;color:var(--muted);line-height:1.6;margin-bottom:18px}.daily-title{display:flex;align-items:center;justify-content:space-between}.daily-title .icon{height:19px;width:19px;color:#8c9c6c}.badge-row{display:flex;gap:10px;align-items:center;margin:18px 0}.badge-icon{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#f6edd7;color:#ba9650}.badge-icon.locked{background:#f3f3ef;color:#adb4aa}.badge-icon .icon{height:21px;width:21px}.badge-row p{font-size:11px;font-weight:750;margin-bottom:4px}.badge-row span{font-size:10px;color:var(--muted)}.rail-link{font-size:10px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;margin-top:8px}.rail-link svg{width:13px;height:13px}.tip-card{background:transparent;border:1px dashed #d0d9c7;border-radius:13px;padding:17px}.tip-card .eyebrow{font-size:9px;color:#7a896b;margin-bottom:8px;display:flex;gap:6px;align-items:center}.tip-card .icon{width:14px;height:14px}.tip-card p{font-size:11px;color:#6f7c68;line-height:1.7}.bottom-note{margin-top:30px;display:flex;align-items:center;gap:6px;font-size:10px;color:#9aa395}.bottom-note svg{height:12px;width:12px}.page-intro{margin:4px 0 28px}.page-intro .eyebrow{color:#7f936f;margin-bottom:10px}.page-intro h1{font-size:33px}.page-intro p{color:var(--muted);font-size:13px;max-width:680px;margin-top:11px}.practice-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.choice-card{border:1px solid var(--line);background:white;border-radius:16px;padding:27px;display:flex;gap:20px;align-items:flex-start;transition:.2s}.choice-card:hover{border-color:#b5c9aa;transform:translateY(-2px)}.choice-card .topic-icon{flex-shrink:0;margin:0}.choice-card h3{font-size:20px}.choice-card p{font-size:12px;color:var(--muted);margin:9px 0 20px;line-height:1.7}.choice-card .eyebrow{font-size:9px;color:#799068;margin-bottom:8px}.choice-card .btn{font-size:11px}.session-top{display:flex;align-items:center;gap:20px;margin-bottom:24px}.session-top .btn{padding:8px 11px}.session-meter{height:7px;border-radius:8px;background:#e5eadc;flex:1;overflow:hidden}.session-meter span{display:block;background:#94b56c;height:100%;transition:width .3s}.session-count{font-size:12px;white-space:nowrap;color:var(--muted)}.exercise-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.exercise-card{text-align:center;padding:30px 35px}.exercise-card .eyebrow{font-size:10px;color:#8c977a}.exercise-card h2{font-size:24px;margin:12px 0 8px}.exercise-card .instruction{font-size:12px;color:var(--muted);margin-bottom:21px}.math-board{display:grid;grid-template-columns:32px repeat(var(--cols,5),48px);width:max-content;margin:24px auto;font-variant-numeric:tabular-nums;gap:0;align-items:center;justify-items:center;font-weight:650}.math-board .place{font-size:10px;color:#8e9c8b;height:30px;font-weight:600}.math-board .number{font-size:27px;width:48px;height:46px;display:grid;place-items:center}.math-board .operator{font-size:23px}.math-board .carry-cell{height:37px;width:48px;display:grid;place-items:center}.math-board .carry{width:32px;height:29px;border:1px dashed #cdd5c5;border-radius:5px;background:#fafbf7;font-size:20px;font-weight:500;line-height:1;padding:0}.math-board .carry:hover{background:#e6eddc}.math-board .carry.on{border-style:solid;border-color:#9aaa84;background:#ecf3e3}.math-board .math-rule{grid-column:1/-1;width:100%;border-top:2px solid var(--ink);height:10px}.math-board .digit{width:43px;height:49px;text-align:center;border:1px solid #cbd5c4;border-radius:7px;font-size:25px;background:#fff;color:var(--ink);padding:0;appearance:textfield}.math-board .digit::-webkit-inner-spin-button{display:none}.math-board .digit:focus{outline:2px solid #9bbd74;outline-offset:1px;border-color:#88a964;background:#fafcf7}.math-board .answer-cell{height:54px}.math-board .highlight{background:#f4f0cd;border-radius:4px}.math-board .carry-display{font-size:24px}.math-board .result-display{font-size:27px;width:48px;height:48px;display:grid;place-items:center}.math-board .digit.error{border-color:#ca8771;background:#fff7f2}.exercise-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:15px}.feedback{margin:20px auto 0;max-width:470px;border-radius:10px;padding:13px 15px;font-size:12px;line-height:1.65;text-align:left}.feedback.success{background:#eff6e5;color:#386232}.feedback.hint{background:#fff4df;color:#806b37}.feedback.error{background:#fbeddf;color:#8a583d}.feedback b{font-weight:800}.help-aside h3{margin-bottom:11px;font-size:16px}.help-aside p{font-size:12px;color:var(--muted)}.help-aside .rule-list{list-style:none;padding:0;margin:19px 0;display:grid;gap:16px}.rule-list li{display:flex;gap:9px;font-size:12px;line-height:1.6;color:#61735d}.rule-list .step-number{background:#eff3e6;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:10px;font-weight:800}.help-aside .btn{margin-top:15px}.compact-form{display:flex;justify-content:center;gap:9px;margin:30px 0}.big-answer{width:180px;padding:12px;font-size:29px;border:1px solid #becdb4;border-radius:9px;text-align:center;color:var(--ink)}.equation-big{font-size:39px;letter-spacing:-1px;margin:35px 0 20px}.tutor-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:25px;align-items:start}.tutor-board{padding:38px 30px;min-height:378px;text-align:center}.tutor-board .math-board{transform:scale(1.15);transform-origin:top center;margin-bottom:50px}.tutor-board h3{font-size:15px;margin-bottom:35px}.tutor-explain{padding:27px}.tutor-explain .eyebrow{color:#9a9e65;margin-bottom:14px}.tutor-explain h2{font-size:26px;margin-bottom:15px}.tutor-explain .step-equation{font-size:29px;font-weight:800;letter-spacing:-.05em;background:#f3f5e9;padding:17px;border-radius:9px;margin:18px 0}.tutor-explain p{font-size:13px;color:#65745f}.step-dots{display:flex;gap:8px;margin:24px 0}.step-dot{width:29px;height:7px;border-radius:5px;background:#e5e9dd}.step-dot.active{background:#7b9c5b}.button-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}.lesson-note{font-size:12px;line-height:1.8;margin-top:25px;padding:22px 0;border-top:1px solid var(--line);color:var(--muted)}.lesson-note summary{cursor:pointer;font-weight:750;color:var(--ink)}.lesson-note p{margin-top:12px}.form-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px;align-items:start}.form-card h3{margin-bottom:22px}.field{display:grid;gap:8px;margin:19px 0}.field label,.field-label{font-size:12px;font-weight:750}.field input,.field select{border:1px solid #d9e0d1;border-radius:8px;padding:11px 12px;background:white;color:var(--ink);width:100%;min-height:41px}.field .small-caption{font-size:10px}.checkbox{display:flex;gap:9px;align-items:center;font-size:12px;margin:15px 0;line-height:1.5}.checkbox input{accent-color:var(--green);width:16px;height:16px}.print-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.worksheet-preview{background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:28px;min-height:485px}.sheet-head{display:flex;justify-content:space-between;gap:15px}.sheet-head .eyebrow{font-size:8px;color:#8a9586}.worksheet-preview h3{font-size:21px;margin:7px 0 12px}.worksheet-preview .meta{font-size:10px;color:var(--muted);line-height:1.8}.mini-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px 13px;margin-top:28px}.mini-task{text-align:right;font-family:ui-monospace,monospace;font-size:18px;letter-spacing:3px;line-height:1.6}.mini-task .minus-line{border-bottom:1px solid #849477;padding-bottom:3px}.mini-task small{display:block;font-family:inherit;letter-spacing:0;text-align:left;font-size:9px;color:#8a9586;margin-bottom:5px}.mini-task .result-line{height:27px;color:var(--green);font-weight:700}.sheet-note{font-size:11px;color:var(--muted);margin-top:25px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.stat-card{padding:22px;background:white;border:1px solid var(--line);border-radius:14px}.stat-card .eyebrow{font-size:9px;color:#87917a;margin-bottom:14px}.stat-card strong{font-size:30px;letter-spacing:-1px;display:block}.stat-card p{font-size:11px;color:var(--muted);margin-top:6px}.progress-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px}.chart{display:flex;align-items:end;justify-content:space-between;gap:14px;height:176px;padding-top:25px}.chart-column{flex:1;text-align:center;position:relative;height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:9px}.chart-bar{width:100%;max-width:35px;background:#b9c99e;border-radius:5px 5px 0 0;min-height:3px}.chart-value{font-size:10px;color:#6c7d5c}.chart-label{font-size:10px;color:#7f8a74}.skill-row{margin-top:25px}.skill-heading{display:flex;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:9px}.skill-meter{height:6px;background:#f1f3ec;border-radius:7px;overflow:hidden}.skill-meter span{display:block;height:100%;background:#b9cca0}.empty-state{text-align:center;padding:40px 25px}.empty-state .topic-icon{margin:0 auto 20px}.empty-state h2{font-size:25px;margin-bottom:13px}.empty-state p{font-size:13px;max-width:440px;margin:0 auto 23px;color:var(--muted)}.achievements{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:19px}.achievement{padding:23px 12px;background:white;border:1px solid var(--line);border-radius:14px;text-align:center}.achievement .badge-icon{margin:0 auto 15px;width:48px;height:48px}.achievement h3{font-size:13px}.achievement p{font-size:11px;color:var(--muted);margin-top:8px}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:23px;align-items:start}.notice{font-size:12px;color:var(--muted);line-height:1.75;margin:17px 0}.notice strong{color:var(--ink)}.download-link{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:14px 0;font-size:12px}.download-link:last-child{border:0}.download-link svg{width:17px;height:17px;color:#7e9568}.danger-zone{margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.danger-zone p{font-size:11px;color:var(--muted);margin:9px 0 14px}.summary{text-align:center;padding:45px 25px}.summary .big-star{font-size:58px;color:#d2a152;margin-bottom:20px}.summary h1{font-size:34px}.summary p{font-size:14px;color:var(--muted);margin:15px 0 28px}.summary-stats{display:flex;justify-content:center;gap:45px;margin-bottom:30px}.summary-stats b{display:block;font-size:30px}.summary-stats span{font-size:11px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--green);color:white;border-radius:11px;padding:14px 22px;font-size:13px;z-index:50;opacity:0;transition:.2s;box-shadow:0 7px 25px #12352c25;max-width:90vw}#toast.show{transform:translateX(-50%) translateY(0);opacity:1}.mobile-nav{display:none}#print-root{display:none}.saved-note{font-size:11px;color:#79936b;margin-top:12px;min-height:18px}.badge{font-size:10px;padding:6px 9px;border-radius:6px;background:#edf3e7;color:var(--green);display:inline-block}.error-banner{padding:13px;background:#fff0db;color:#855c2c;font-size:12px;text-align:center;border-bottom:1px solid #f2dfbf}
@media(min-width:1450px){.main{padding-top:39px}.hero{min-height:290px}.hero h2{font-size:43px}.hero p{font-size:13px}.topic-card{padding:24px 20px}.topic-card h3{font-size:18px}.topic-card p{font-size:12px}.hero-copy{max-width:57%}.dashboard-columns{grid-template-columns:minmax(0,1fr) 275px}.topic-icon{width:47px;height:47px}.topbar{padding:0 52px}}
@media(max-width:1180px){.sidebar{width:210px;padding:27px 16px}.shell{grid-template-columns:210px minmax(0,1fr)}.main{padding:28px}.topbar{padding:0 28px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 225px;gap:18px}.hero{padding:27px 23px;min-height:252px}.hero h2{font-size:31px}.topic-grid{gap:10px}.topic-card{padding:17px 13px}.topic-card h3{font-size:14px}.topic-card p{font-size:10px}.focus-tag{font-size:7px;right:9px;top:12px}.wide-card{padding:16px;gap:11px}.wide-card .btn{font-size:10px}.wide-card p{font-size:10px}.exercise-layout{grid-template-columns:minmax(0,1fr) 235px}.exercise-card{padding:28px 20px}.tutor-layout{grid-template-columns:minmax(0,1fr) 295px}.form-layout{grid-template-columns:280px minmax(0,1fr)}.mini-task-grid{gap:20px 10px}.mini-task{font-size:15px;letter-spacing:2px}.progress-layout{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:980px){.dashboard-columns{grid-template-columns:1fr}.rail{grid-template-columns:repeat(2,minmax(0,1fr))}.rail .tip-card{display:none}.goal-ring{width:100px;height:100px;margin:14px auto 12px}.goal-description{margin-bottom:10px}.badge-row{margin:17px 0}.hero-art{width:45%}.hero-copy{max-width:60%}.hero p{max-width:280px}.topic-card h3{font-size:17px}.topic-card p{font-size:11px}.welcome h1{font-size:25px}.date-pill{display:none}.exercise-layout,.tutor-layout,.form-layout,.progress-layout{grid-template-columns:1fr}.help-aside .rule-list{grid-template-columns:repeat(3,1fr)}.help-aside .btn{margin-top:0}.tutor-explain{display:block}.form-card .form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.form-card .field{margin:9px 0}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-choices{gap:12px}.choice-card{padding:20px;gap:13px}.choice-card h3{font-size:17px}.settings-layout{grid-template-columns:1fr}.topbar-text{font-size:11px}.profile .profile-name{display:none}}
@media(max-width:700px){.shell{display:block}.sidebar{display:none}.content{display:block}.topbar{height:71px;padding:0 20px;background:white}.topbar-text{font-weight:800;font-size:20px;color:var(--ink);letter-spacing:-.7px}.topbar-text .top-crumb{display:none}.topbar-text:before{content:'';width:30px;height:30px;background:url('/icon.png') center/contain no-repeat;border-radius:8px}.top-actions{gap:12px}.top-stat{font-size:11px}.separator{display:none}.profile .avatar{width:32px;height:32px;font-size:18px}.main{padding:24px 19px 100px}.welcome{margin-bottom:20px}.welcome h1{font-size:25px}.welcome p{font-size:12px;line-height:1.7;max-width:260px}.hero{min-height:260px;padding:25px 22px}.hero h2{font-size:32px}.hero p{font-size:11px;max-width:190px}.hero-art{width:45%;right:-3%;bottom:-3%;height:84%}.hero-copy{max-width:67%}.hero .eyebrow{font-size:8px}.hero .btn{font-size:11px;padding:11px 14px}.topic-grid{grid-template-columns:1fr;gap:10px}.topic-card{display:grid;grid-template-columns:44px 1fr;gap:0 14px;padding:17px;align-items:center}.topic-card .topic-icon{grid-row:1/3;margin:0;width:42px;height:42px}.topic-card h3{font-size:16px;align-self:end;padding-right:65px}.topic-card p{grid-column:2;min-height:0;font-size:11px}.topic-meta{grid-column:2;margin-top:12px}.focus-tag{font-size:8px;right:13px;top:13px}.wide-card{align-items:flex-start;flex-wrap:wrap}.wide-card .btn{margin-left:60px;font-size:11px;padding:10px 14px}.wide-card h3{font-size:14px}.wide-card p{font-size:11px}.rail{gap:12px}.rail .card{padding:17px}.rail h3{font-size:14px}.badge-row{gap:8px}.badge-row p{font-size:10px}.badge-row span{font-size:9px}.badge-icon{width:30px;height:30px}.goal-ring{margin-top:18px}.goal-description{font-size:10px}.rail-link{font-size:9px}.bottom-note{font-size:9px;line-height:1.6}.section-top{margin-top:25px}.section-top h2{font-size:18px}.section-top a{font-size:10px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:72px;background:#ffffffed;backdrop-filter:blur(15px);border-top:1px solid var(--line);justify-content:space-around;align-items:center;z-index:15;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:flex;flex-direction:column;gap:5px;align-items:center;font-size:9px;color:#819077;padding:9px 10px;border-radius:10px}.mobile-nav a.active{color:var(--green);background:#eff4e8;font-weight:750}.mobile-nav svg{width:20px;height:20px}.page-intro h1{font-size:29px}.page-intro p{font-size:12px}.practice-choices{grid-template-columns:1fr}.choice-card{padding:23px}.choice-card h3{font-size:20px}.choice-card p{font-size:12px;margin-bottom:17px}.session-top{gap:12px}.session-count{font-size:10px}.session-top .btn{padding:8px}.exercise-card{padding:25px 12px}.exercise-card h2{font-size:23px}.math-board{grid-template-columns:27px repeat(var(--cols,5),44px);margin:24px auto}.math-board .number,.math-board .carry-cell,.math-board .result-display{width:44px}.math-board .digit{width:39px;height:46px}.exercise-actions .btn{font-size:12px;padding:13px}.exercise-card .instruction{font-size:11px}.help-aside .rule-list{grid-template-columns:1fr}.tutor-board .math-board{transform:scale(1.05)}.tutor-board{padding:27px 10px;min-height:340px}.tutor-explain h2{font-size:24px}.tutor-explain .step-equation{font-size:26px}.mini-task-grid{grid-template-columns:repeat(2,1fr);gap:25px 23px}.mini-task{font-size:20px;letter-spacing:4px}.worksheet-preview{padding:23px}.form-card .form-fields{display:block}.form-card .field{margin:19px 0}.form-card .btn{width:100%}.stats-grid{gap:11px}.stat-card{padding:19px}.stat-card strong{font-size:26px}.stat-card .eyebrow{font-size:8px}.achievements{grid-template-columns:repeat(2,1fr);gap:12px}.settings-layout .card{padding:23px}.summary h1{font-size:28px}.summary-stats{gap:24px}.equation-big{font-size:31px}#toast{bottom:88px;font-size:12px}}
@media(max-width:700px){.topbar-text:after{content:'Schlaunauten';font-size:17px;letter-spacing:-.7px}.topbar-text{gap:7px}.top-actions{gap:9px}.top-stat{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{@page{size:A4;margin:16mm}body{background:white;color:black;font-family:Arial,sans-serif}#app,#toast,.skip-link{display:none!important}#print-root{display:block;color:black}.print-page{break-after:page;page-break-after:always}.print-page:last-child{break-after:auto;page-break-after:auto}.print-page h1{font-size:23px;color:black;margin-bottom:7px;letter-spacing:-.4px}.print-page h2{font-size:15px;letter-spacing:0;margin:22px 0 13px}.print-sub{font-size:11px;margin-bottom:18px;color:#333}.print-name{display:flex;justify-content:space-between;font-size:12px;margin:22px 0 18px}.print-instruction{font-size:11px;margin:12px 0 16px}.print-mental{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:14px}.print-tasks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 20px}.print-task{break-inside:avoid;page-break-inside:avoid}.print-task>small{display:block;font-size:11px;font-weight:bold;margin-bottom:9px}.print-board{display:grid;grid-template-columns:22px repeat(5,25px);grid-auto-rows:25px;width:147px;background-image:linear-gradient(#ddd 1px,transparent 1px),linear-gradient(90deg,#ddd 1px,transparent 1px);background-size:25px 25px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;font-family:Arial,sans-serif;font-size:20px;text-align:center;align-items:center;font-variant-numeric:tabular-nums}.print-board span{height:25px;display:grid;place-items:center}.print-board .print-line{grid-column:1/-1;border-bottom:1.3px solid #222}.print-story{margin:23px 0 10px;font-size:13px;line-height:1.7;break-inside:avoid}.print-workspace{height:100px;background-image:linear-gradient(#ddd 1px,transparent 1px),linear-gradient(90deg,#ddd 1px,transparent 1px);background-size:20px 20px;margin:14px 0}.print-answer{font-size:12px;margin:15px 0 24px}.print-footer{font-size:10px;margin-top:22px;display:flex;justify-content:space-between;color:#555}.print-solutions{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px;font-size:13px;margin:17px 0 30px}.print-score{font-size:13px;text-align:right;margin-top:25px}.print-explanation{font-size:12px;line-height:1.7}}

.beta-mark{margin-left:8px;font-size:9px;letter-spacing:.08em;background:#edf3e7;color:var(--green);padding:3px 6px;border-radius:5px;font-weight:800;vertical-align:middle}
.sync-state{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.sync-dot{width:7px;height:7px;border-radius:50%;background:#9bb56c}.sync-state[data-state="pending"] .sync-dot,.sync-state[data-state="syncing"] .sync-dot{background:#d2a35a}.sync-state[data-state="unavailable"] .sync-dot{background:#c8756b}
.inline-button{background:none;border:0;padding:0;color:var(--green);text-decoration:underline;font:inherit;cursor:pointer}
.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}
.boot-screen{min-height:70vh;display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;padding:40px 24px}.boot-screen h1{font-size:28px}.boot-screen p{color:var(--muted);font-size:14px}
.learning-hero{background:linear-gradient(135deg,#e8f4fb 0%,#f4f7fc 55%,#eef2f8 100%)}
.world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.world-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px;min-height:180px;transition:.2s}.world-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #173f3709;border-color:#c8d5c0}
.world-card-top{display:flex;justify-content:space-between;align-items:flex-start}.world-card-top .icon{width:18px;height:18px;color:var(--green)}
.world-symbol{display:inline-grid;place-items:center;min-width:48px;height:48px;padding:0 10px;border-radius:14px;background:#f4f0e2;font-weight:800;font-size:18px;letter-spacing:-.04em}
.math-world .world-symbol,.world-card.math-world .world-symbol,.course-card.math-world .topic-icon,.subject-progress.math-world .world-symbol,.recommendation-strip.math-world .world-symbol,.plan-symbol.math-world{background:#eef4df;color:#5f7340}
.german-world .world-symbol,.world-card.german-world .world-symbol,.course-card.german-world .topic-icon,.subject-progress.german-world .world-symbol,.recommendation-strip.german-world .world-symbol,.plan-symbol.german-world,.language-exercise.german-world{--accent:#98645c}
.german-world .world-symbol,.course-card.german-world .topic-icon,.subject-progress.german-world .world-symbol,.recommendation-strip.german-world .world-symbol,.plan-symbol.german-world{background:#f6e5de;color:#98645c}
.english-world .world-symbol,.world-card.english-world .world-symbol,.course-card.english-world .topic-icon,.subject-progress.english-world .world-symbol,.recommendation-strip.english-world .world-symbol,.plan-symbol.english-world{background:#e7eaf7;color:#6c739b}
.world-card h3{font-size:18px}.world-card p{font-size:12px;color:var(--muted);line-height:1.55;flex:1}
.world-card-bottom{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#8b968d;border-top:1px solid var(--line);padding-top:12px}
.next-step{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 20px;display:flex;align-items:center;gap:16px}.next-step .step-number{width:42px;height:42px;border-radius:12px;background:#f5f6ed;display:grid;place-items:center;color:#8c9b61;flex-shrink:0}.next-step h3{font-size:16px;margin:4px 0 6px}.next-step p{font-size:12px;color:var(--muted)}.next-step .btn{margin-left:auto;white-space:nowrap}
.workshop-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.workshop-row a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:14px;align-items:center;transition:.2s}.workshop-row a:hover{border-color:#b5c9aa;transform:translateY(-2px)}.workshop-row h3{font-size:15px}.workshop-row p{font-size:11px;color:var(--muted);margin-top:4px}.workshop-icon{width:44px;height:44px;border-radius:12px;background:#eef3e4;display:grid;place-items:center;font-weight:800;color:#6d7f4f;flex-shrink:0}.workshop-row .icon{margin-left:auto;color:var(--green);width:18px;height:18px}
.week-plan{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:22px}
.plan-day{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 12px;min-height:170px;display:flex;flex-direction:column;gap:8px}.plan-day.is-today{border-color:#9bb56c;box-shadow:0 0 0 2px #edf3e7}.day-label{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a9688;display:flex;justify-content:space-between;gap:6px;align-items:center}.plan-symbol{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#f5f6ed;font-weight:800}.plan-day h3{font-size:14px}.plan-day p{font-size:11px;color:var(--muted);line-height:1.45;flex:1}.plan-day .btn{margin-top:auto}
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.course-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;gap:14px;transition:.2s}.course-card:hover{transform:translateY(-2px);border-color:#c8d5c0}.course-card .topic-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-weight:800;background:#f4f0e2;flex-shrink:0}.course-card h3{font-size:16px;margin:6px 0}.course-card p{font-size:12px;color:var(--muted);line-height:1.55}.course-bottom{margin-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8b968d}.course-bottom .icon{width:16px;height:16px;color:var(--green)}
.recommendation-strip{margin:8px 0 6px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;gap:16px;align-items:center}.recommendation-strip h3{font-size:17px;margin:4px 0 6px}.recommendation-strip p{font-size:12px;color:var(--muted)}.recommendation-strip .btn{margin-left:auto;white-space:nowrap}
.language-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.language-layout.has-passage{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.reading-passage{line-height:1.7}.reading-passage h2{font-size:22px;margin:8px 0 14px}.reading-passage p{font-size:15px;white-space:pre-wrap}.reading-reminder{margin-top:18px;display:flex;gap:8px;align-items:center;font-size:12px;color:#7a896b;background:#f7f8f2;border-radius:10px;padding:12px}
.language-exercise h2{font-size:22px;margin:8px 0 16px}.sentence-display{font-size:18px;background:#f7f8f2;border-radius:12px;padding:14px 16px;margin-bottom:16px}
.audio-panel{background:#f3f5fb;border-radius:14px;padding:18px;margin-bottom:16px;display:grid;gap:12px;justify-items:start}.audio-panel .icon{color:#6c739b}.audio-panel p{font-size:13px;color:#5f6688}
.answer-options{display:grid;gap:10px}.answer-option{display:flex;align-items:center;gap:12px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-size:14px;font-weight:650}.answer-option.selected{border-color:#9bb56c;background:#f4f8ec}.answer-option.correct{border-color:#8aaa5d;background:#eef5e2}.option-letter{width:28px;height:28px;border-radius:8px;background:#f0f3e8;display:grid;place-items:center;font-size:12px;font-weight:800;color:#6d7d68;flex-shrink:0}
.sentence-builder{min-height:58px;border:1px dashed #cfd8c4;border-radius:12px;padding:12px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;background:#fbfcf8}.builder-placeholder{color:var(--muted);font-size:13px;align-self:center}
.word-bank{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.word-token{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:700}.word-token.chosen{background:#edf3e7;border-color:#b7c9a4}.word-token:disabled{opacity:.45}
.exercise-footer{margin-top:18px;display:flex;gap:8px;align-items:center;font-size:12px;color:#7f8b79}
.subject-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:8px}.subject-progress .subject-title{display:flex;gap:12px;align-items:center;margin-bottom:16px}.subject-progress .subject-title h2{font-size:18px}.subject-progress .subject-title p{font-size:12px;color:var(--muted)}
.activity-week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:16px;text-align:center}.activity-week span{display:block;font-size:10px;color:var(--muted)}.activity-dot{width:36px;height:36px;margin:0 auto 6px;border-radius:50%;background:#f0f3e8;display:grid;place-items:center;font-size:12px;font-weight:750;color:#7d8a74}.activity-dot.done{background:#dbeaa5;color:#4f6238}
.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-grid a,.menu-grid .menu-exit{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;gap:14px;align-items:center;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}.menu-grid h3{font-size:15px}.menu-grid p{font-size:11px;color:var(--muted);margin-top:3px}.menu-grid .menu-exit{grid-column:1/-1;border-style:dashed;opacity:.92}.menu-grid .menu-exit .icon{width:28px;height:28px;color:var(--amber);flex-shrink:0}
.modal-backdrop{position:fixed;inset:0;background:#173f3780;display:grid;place-items:center;padding:24px;z-index:40}.modal-card{background:#fff;border-radius:18px;padding:24px;width:min(440px,100%);box-shadow:0 20px 50px #173f3720}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.modal-head h2{font-size:22px}.profile-list{display:grid;gap:10px;margin-bottom:18px}.profile-choice{display:flex;gap:12px;align-items:center;padding:12px;border-radius:12px;border:1px solid var(--line);background:#fff;text-align:left}.profile-choice.active{border-color:#9bb56c;background:#f4f8ec}.profile-choice b{display:block;font-size:14px}.profile-choice small{color:var(--muted);font-size:11px}.recovery-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;background:#f7f8f2;border-radius:12px;padding:16px;word-break:break-all;margin:16px 0;line-height:1.6}.narrow-card{max-width:420px}.plan-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:1180px){.world-grid,.course-grid,.subject-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-plan{grid-template-columns:repeat(4,minmax(0,1fr))}.language-layout.has-passage{grid-template-columns:1fr}}
@media(max-width:980px){.workshop-row,.menu-grid{grid-template-columns:1fr}.recommendation-strip{flex-wrap:wrap}.recommendation-strip .btn{margin-left:0}}
@media(max-width:700px){.world-grid,.course-grid,.subject-progress-grid,.week-plan{grid-template-columns:1fr}.next-step{flex-wrap:wrap}.next-step .btn{margin-left:0;width:100%}.plan-day{min-height:0}.activity-dot{width:30px;height:30px}}

.mini-badges{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px;min-height:28px;align-items:center}
.mini-badge{display:inline-flex;align-items:center;gap:6px;background:#f4f8ec;color:#5f7340;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750}
.mini-badge .icon{width:14px;height:14px}
.earned-strip{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:8px 0 18px;min-height:20px}
.avatar-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px}
.avatar-option{display:grid;justify-items:center;gap:6px;cursor:pointer;padding:10px 6px;border-radius:12px;border:1px solid var(--line);background:#fff}
.avatar-option input{position:absolute;opacity:0;pointer-events:none}
.avatar-option:has(input:checked),.avatar-option:has(input:focus-visible){border-color:#9bb56c;background:#f4f8ec;outline:none;box-shadow:0 0 0 2px #edf3e7}
.avatar-option .avatar{width:44px;height:44px;font-size:24px}
.avatar-option small{font-size:10px;color:var(--muted);font-weight:700}
.welcome-card{width:min(480px,100%)}.welcome-hero{text-align:center;margin-bottom:18px}.welcome-hero .icon{width:28px;height:28px;color:#8c9b61;margin-bottom:8px}.welcome-hero h2{font-size:26px;margin:8px 0}.welcome-hero .eyebrow{color:#7a896b}
.achievement.earned .badge-icon{background:#dbeaa5;color:#4f6238}
@media(max-width:700px){.avatar-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
