:root{--ink:#242338;--muted:#747388;--line:#e9e7f1;--paper:#fbfaf8;--violet:#6c55d9;--violet-dark:#5540bd;--violet-pale:#f0ecff;--coral:#ef765f;--green:#208f79;--gold:#d79429}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:system-ui,-apple-system,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:29px 20px;z-index:20;display:flex;flex-direction:column}.side-brand{display:flex;align-items:center;gap:12px;padding:0 10px 30px}.side-brand>div:nth-child(2){display:flex;flex-direction:column;font:800 20px/20px Manrope}.side-brand span{color:var(--violet)}.side-brand>button{display:none;margin-left:auto;border:0;background:none}.logo{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:white;background:linear-gradient(145deg,#7761e7,#5841be);box-shadow:0 8px 18px #6c55d930;font:700 25px Georgia;transform:rotate(-3deg)}.logo span{transform:rotate(3deg)}nav{display:grid;grid-gap:7px;gap:7px}.nav-item{border:0;background:transparent;border-radius:12px;display:flex;align-items:center;gap:13px;padding:13px 14px;color:#79778b;font-weight:600;text-align:left}.nav-item svg{width:20px}.nav-item.active{background:var(--violet-pale);color:var(--violet-dark)}.level-card{margin-top:34px;border-top:1px solid var(--line);padding:25px 9px}.level-card>span{display:block;color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.12em;margin-bottom:10px}.level-card div{display:flex;background:#f4f3f7;padding:4px;border-radius:10px}.level-card button{flex:1 1;padding:7px;border:0;background:none;color:var(--muted);border-radius:7px;font-weight:700}.level-card button.active{color:var(--violet);background:#fff;box-shadow:0 2px 8px #29244212}.side-tip{margin-top:auto;display:flex;gap:10px;background:#fff8e7;color:#6c5a31;padding:14px;border-radius:14px;font-size:12px}.side-tip svg{width:18px;flex:0 0 auto;color:var(--gold)}.side-tip p{margin:0;line-height:1.55}main{margin-left:248px;min-height:100vh}.topbar{height:74px;background:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);justify-content:flex-end;padding:0 42px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.top-actions,.topbar{display:flex;align-items:center}.top-actions{gap:20px;color:var(--muted);font-size:12px}.streak{display:flex;align-items:center;gap:6px;color:#b95b40;font-weight:700}.streak svg{fill:#ef765f;stroke:#ef765f}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#ded8f8;color:var(--violet-dark);font-weight:700}.brand-mobile,.menu-button{display:none}.page{max-width:1240px;margin:0 auto;padding:42px 48px 80px}.page.compact{max-width:1080px}.hero{background:#ece8ff;border-radius:27px;min-height:330px;display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden;position:relative}.hero-copy{padding:45px 52px;z-index:2}.eyebrow,.kicker{display:flex;align-items:center;gap:7px;color:var(--violet);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800}h1,h2,h3{font-family:Manrope,sans-serif}.hero h1{margin:12px 0;font-size:clamp(36px,4vw,55px);line-height:1.05;letter-spacing:-.045em}.hero h1 em{color:var(--violet);font-style:normal}.hero p{max-width:570px;line-height:1.65;color:#67647e;margin:0 0 25px}.primary,.secondary{border:0;border-radius:12px;padding:13px 18px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:10px}.primary{background:var(--violet);color:#fff;box-shadow:0 8px 20px #6c55d92b}.primary:hover{background:var(--violet-dark);transform:translateY(-1px)}.primary:disabled{opacity:.45;transform:none;cursor:not-allowed}.primary svg,.secondary svg{width:18px}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.math-card{position:relative;min-height:330px;background:linear-gradient(135deg,#6550cb,#8e77ee);-webkit-clip-path:ellipse(82% 90% at 100% 50%);clip-path:ellipse(82% 90% at 100% 50%)}.shape{position:absolute;color:white;font:700 22px Manrope;z-index:2}.triangle{top:75px;left:36%}.circle{top:44px;right:18%;font:700 40px Georgia}.root{bottom:70px;left:29%}.graph{bottom:44px;right:19%;font-size:45px}.orbit{position:absolute;border:1px solid #ffffff38;border-radius:50%}.orbit.one{width:290px;height:290px;top:20px;right:-20px}.orbit.two{width:170px;height:170px;top:80px;right:40px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:15px;gap:15px;margin:22px 0 52px}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;align-items:center;gap:13px}.stat>div{width:42px;height:42px;display:grid;place-items:center;border-radius:12px}.stat svg{width:21px}.stat section{display:flex;flex-direction:column}.stat strong{font:800 20px Manrope}.stat span{color:var(--muted);font-size:11px}.stat.violet>div{background:#eeeaff;color:var(--violet)}.stat.gold>div{background:#fff3d7;color:var(--gold)}.stat.coral>div{background:#ffebe7;color:var(--coral)}.stat.green>div{background:#e6f7f3;color:var(--green)}.page-title,.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px}.page-title h1,.section-heading h2{margin:5px 0 0;font-size:30px;letter-spacing:-.03em}.page-title{align-items:center;margin:10px 0 30px}.page-title h1{font-size:40px}.page-title p{color:var(--muted);margin:7px 0 0}.level-switch{background:#eceaf1;padding:4px;border-radius:10px;display:flex;gap:2px}.level-switch button{border:0;background:none;padding:7px 14px;border-radius:7px;color:var(--muted);font-weight:700}.level-switch button.active{background:#fff;color:var(--violet);box-shadow:0 2px 8px #1d183512}.level-switch.large button{padding:9px 20px}.domain-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.domain-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;position:relative;transition:.2s;min-height:210px;cursor:pointer}.domain-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px #26203c0e}.domain-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.domain-icon svg{width:21px}.domain-count{position:absolute;right:18px;top:22px;color:var(--muted);font-size:11px}.domain-card h3{font-size:17px;margin:20px 0 7px}.domain-card p{font-size:12px;line-height:1.5;color:var(--muted);height:36px;overflow:hidden}.mini-progress{height:5px;background:#eeeef2;border-radius:10px;overflow:hidden;margin:16px 0 7px}.mini-progress span{display:block;height:100%;border-radius:10px}.domain-card small{color:var(--muted);font-size:10px}.search{background:#fff;border:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:13px;margin-bottom:34px}.search svg{color:#9996a8;width:19px}.search input{border:0;outline:0;width:100%;background:transparent;color:var(--ink)}.notion-group{margin:0 0 35px}.group-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.group-title>span{width:9px;height:9px;border-radius:50%}.group-title h2{font-size:18px;margin:0}.group-title small{color:var(--muted)}.notion-list{display:grid;grid-gap:8px;gap:8px}.notion-row{display:flex;align-items:center;gap:15px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);padding:14px 16px;border-radius:14px;color:var(--ink)}.notion-row:hover{border-color:#cfc7f3}.notion-number{width:34px;height:34px;border-radius:10px;background:#f3f2f6;color:#8b899a;display:grid;place-items:center;flex:0 0 auto;font-weight:700;font-size:13px}.notion-number.done{background:#e4f6f0;color:var(--green)}.notion-number svg{width:17px}.notion-info{display:flex;flex-direction:column;gap:3px;flex:1 1}.notion-info small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:520px}.duration{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:11px}.duration svg{width:15px}.notion-row>svg{width:18px;color:#aaa8b5}.score-pill{background:var(--violet-pale);color:var(--violet);padding:5px 9px;border-radius:20px;font-size:11px;font-weight:700}.back{display:inline-flex;align-items:center;gap:7px;border:0;background:none;color:var(--muted);padding:0;margin-bottom:28px}.back svg{width:18px}.reading{max-width:900px}.lesson-head{text-align:center;max-width:700px;margin:0 auto}.lesson-domain{color:var(--violet);background:var(--violet-pale);padding:6px 11px;border-radius:20px;font-size:11px;font-weight:700}.lesson-head h1{font-size:42px;letter-spacing:-.04em;margin:18px 0 8px}.lesson-head p{color:var(--muted);line-height:1.6}.lesson-meta{display:flex;justify-content:center;gap:22px;color:var(--muted);font-size:12px}.lesson-meta span{display:flex;align-items:center;gap:5px}.lesson-meta svg{width:16px}.path-steps{margin:35px auto;max-width:540px;justify-content:center;color:#aaa8b5;font-size:12px;font-weight:700}.path-steps,.path-steps span{display:flex;align-items:center}.path-steps span{gap:7px;white-space:nowrap}.path-steps span:first-child{color:var(--green)}.path-steps span:first-child svg{background:var(--green);color:#fff;border-radius:50%;padding:2px}.path-steps svg{width:18px}.path-steps i{height:1px;background:var(--line);width:70px;margin:0 10px}.course-paper{background:#fff;border:1px solid var(--line);border-radius:20px;padding:15px 40px}.course-paper section{display:grid;grid-template-columns:38px 1fr;grid-gap:15px;gap:15px;padding:27px 0;border-bottom:1px solid var(--line)}.course-paper section:last-child{border:0}.section-number{width:31px;height:31px;border-radius:9px;background:var(--violet-pale);color:var(--violet);display:grid;place-items:center;font-weight:800}.course-paper h2{font-size:19px;margin:3px 0 10px}.course-paper p{white-space:pre-line;line-height:1.75;margin:0;color:#57556a}.course-paper section.remember{margin:18px -20px;padding:22px 20px;border:0;border-radius:15px;background:#fff8df}.course-paper .remember .section-number{background:#f4d986;color:#795f17}.lesson-action{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding:23px 26px;background:#fff;border:1px solid var(--line);border-radius:17px}.lesson-action>div{display:flex;flex-direction:column}.lesson-action span{font-size:12px;color:var(--muted);margin-top:3px}.quiz-page{max-width:860px}.exercise-head,.quiz-top{display:flex;align-items:end;justify-content:space-between}.exercise-head h1,.quiz-top h1{font-size:33px;margin:8px 0}.quiz-top h1 small{font-size:15px;color:var(--muted)}.quiz-percent{font:800 20px Manrope;color:var(--violet)}.quiz-progress{height:7px;border-radius:10px;background:#e9e7ef;margin:15px 0 30px;overflow:hidden}.quiz-progress span{height:100%;display:block;background:linear-gradient(90deg,#6c55d9,#9b88ef);border-radius:10px}.question-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px 40px}.question-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:var(--violet-pale);color:var(--violet)}.question-icon.green{background:#e5f7f2;color:var(--green)}.question-card h2{font-size:22px;line-height:1.45;margin:22px 0}.choices{display:grid;grid-gap:10px;gap:10px}.choices button{display:flex;align-items:center;gap:13px;text-align:left;border:1px solid var(--line);background:#fff;padding:13px;border-radius:12px;color:var(--ink)}.choices button>span{width:31px;height:31px;border-radius:8px;background:#f4f3f7;display:grid;place-items:center;font-weight:700;color:var(--muted)}.choices button>svg{margin-left:auto;width:18px}.choices button.selected{border-color:var(--violet);background:#faf9ff}.choices button.selected>span{background:var(--violet);color:#fff}.choices button.correct{border-color:#66b6a5;background:#eefaf7}.choices button.correct>span{background:var(--green);color:#fff}.choices button.wrong{border-color:#e99c8f;background:#fff4f2}.feedback{padding:15px 17px;border-radius:12px;margin-top:15px}.feedback p{margin:5px 0 0;font-size:13px}.feedback.good{background:#eaf8f4;color:#236d5e}.feedback.bad{background:#fff1ee;color:#9f503e}.question-action{display:flex;justify-content:flex-end;margin-top:24px}.result-page{text-align:center;max-width:620px;padding-top:110px}.result-badge{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;margin:0 auto 25px;background:#fff1ee;color:var(--coral);transform:rotate(-5deg)}.result-badge svg{width:38px;height:38px;transform:rotate(5deg)}.result-badge.passed{background:#fff4d9;color:var(--gold)}.result-page .kicker{justify-content:center}.result-page h1{font-size:65px;margin:8px 0}.result-page>p{color:var(--muted);line-height:1.7;max-width:500px;margin:0 auto 25px}.result-actions{display:flex;gap:10px;justify-content:center}.difficulty{display:flex;gap:5px;background:#eeecf2;padding:4px;border-radius:10px}.difficulty button{border:0;background:none;color:var(--muted);padding:8px 12px;border-radius:7px;font-size:11px;font-weight:700}.difficulty button.active{background:#fff;color:var(--violet);box-shadow:0 2px 6px #3331}.exercise-head{margin-bottom:25px}.exercise-number{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-top:20px}.answer{display:flex;flex-direction:column;gap:7px;margin-top:25px}.answer span{font-size:12px;font-weight:700}.answer input{border:1px solid var(--line);border-radius:11px;padding:13px;outline:0}.answer input:focus{border-color:var(--violet)}.correction{margin-top:18px;background:#eef9f6;border-radius:13px;padding:17px;color:#326c60}.correction p{white-space:pre-line;line-height:1.6}.correction span{font-size:12px}.progress-hero{background:linear-gradient(135deg,#6550cb,#8c76e7);color:#fff;border-radius:22px;padding:38px;display:flex;align-items:center;gap:35px}.progress-ring{width:135px;height:135px;border-radius:50%;background:conic-gradient(#fff var(--p),#ffffff30 0);display:grid;place-items:center;position:relative;flex:0 0 auto}.progress-ring:after{content:"";position:absolute;width:101px;height:101px;background:#745fd2;border-radius:50%}.progress-ring span{z-index:1;font:800 25px Manrope}.progress-hero h2{font-size:26px;margin:0}.progress-hero p{color:#eeeaff}.progress-badges{display:flex;gap:10px;flex-wrap:wrap}.progress-badges span{display:flex;align-items:center;gap:6px;background:#ffffff1c;padding:7px 10px;border-radius:8px;font-size:11px}.progress-badges svg{width:15px}.progress-list{margin-top:25px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px}.progress-list h2{font-size:20px}.progress-list>div{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid var(--line)}.progress-list p{display:flex;flex-direction:column;gap:2px;flex:1 1;margin:0}.progress-list p small{color:var(--muted)}.progress-list>div>b{font-size:12px;color:var(--muted)}.loader{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:17px}.loader strong{font-family:Manrope}.loader>span{width:100px;height:4px;border-radius:10px;background:linear-gradient(90deg,var(--violet) 50%,#eee 50%)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,#eeeaff 0,transparent 32%),var(--paper)}.auth-panel{width:min(100%,440px);background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:0 24px 70px #30264d16}.auth-panel>.logo{margin-bottom:26px}.auth-panel h1{font-size:32px;letter-spacing:-.04em;margin:8px 0}.auth-panel>p{color:var(--muted);line-height:1.6}.auth-panel form{display:grid;grid-gap:16px;gap:16px;margin:25px 0}.auth-panel label{display:grid;grid-gap:7px;gap:7px;font-size:12px;font-weight:700}.auth-panel input{width:100%;border:1px solid var(--line);border-radius:11px;padding:13px;outline:0;color:var(--ink);background:#fff}.auth-panel input:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-pale)}.auth-panel form .primary{width:100%;margin-top:3px}.auth-panel>small{display:block;text-align:center;color:var(--muted)}.auth-error{background:#fff0ed;color:#9a4839;padding:11px 13px;border-radius:10px;font-size:12px}.logout-button{border:0;background:transparent;color:var(--muted);padding:7px;display:grid;place-items:center;border-radius:8px}.logout-button:hover{background:#f1eff6;color:var(--violet)}.logout-button svg{width:18px}.student-goal{display:flex;align-items:center;gap:11px;background:#ffffff80;border:1px solid #ffffffb0;border-radius:12px;padding:11px 14px;margin:0 0 20px;max-width:520px}.student-goal>svg{color:var(--violet);width:21px}.student-goal>span{display:flex;flex-direction:column}.student-goal small{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:800}.student-goal strong{font-size:13px}.level-card button:disabled,.level-switch button:disabled{opacity:.35;cursor:not-allowed}.nav-overlay{display:none}@media(max-width:1050px){.domain-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}.math-card{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:40px}.version{display:none}}@media(max-width:760px){.sidebar{transform:translateX(-105%);transition:.25s;width:280px}.sidebar.open{transform:translateX(0)}.nav-overlay,.side-brand>button{display:block}.nav-overlay{position:fixed;inset:0;border:0;background:#24223880;z-index:19}main{margin-left:0}.topbar{height:64px;padding:0 18px;justify-content:space-between}.menu-button{display:grid;border:0;background:none;padding:5px}.brand-mobile{display:flex;align-items:center;gap:9px;font:800 15px Manrope}.brand-mobile .logo{width:31px;height:31px;border-radius:9px;font-size:18px}.top-actions{gap:10px}.top-actions .streak{font-size:0}.top-actions .streak svg{width:20px}.page{padding:25px 18px 60px}.hero{border-radius:20px}.hero-copy{padding:30px 24px}.hero h1{font-size:37px}.hero .primary{width:100%}.stats-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:38px}.stat{padding:12px;gap:9px}.stat>div{width:35px;height:35px}.stat strong{font-size:16px}.page-title,.section-heading{align-items:flex-start;gap:15px}.section-heading h2{font-size:24px}.domain-grid{grid-template-columns:1fr}.domain-card{min-height:190px}.page-title{flex-direction:column}.page-title h1{font-size:34px}.duration,.notion-info small{display:none}.notion-row{padding:12px}.lesson-head h1{font-size:32px}.course-paper{padding:5px 20px}.course-paper section{grid-template-columns:32px 1fr;gap:10px}.course-paper p{font-size:14px}.lesson-action{flex-direction:column;align-items:stretch;gap:16px}.path-steps i{width:20px}.question-card{padding:25px 19px}.exercise-head,.quiz-top{align-items:flex-start}.exercise-head h1,.quiz-top h1{font-size:27px}.exercise-head{flex-direction:column;gap:15px}.difficulty{width:100%}.difficulty button{flex:1 1;padding:8px 4px}.result-page{padding-top:65px}.progress-hero{flex-direction:column;text-align:center;padding:28px 18px}.progress-badges{justify-content:center}}