.landing-page{--landing-ink:#212542;--landing-muted:#666b81;--landing-purple:#5947d8;--landing-orange:#ff744f;background:#fffdf9;color:var(--landing-ink)}
.landing-page .site-header{background:#fffdf9ed;border-bottom-color:#f1e8df}
.landing-page .brand{color:var(--landing-ink)}
.landing-page .brand-mark{background:#5746cf;border-radius:12px;transform:rotate(-7deg)}
.landing-page .nav-actions .btn-primary{background:#5947d8;box-shadow:none;border-radius:100px}
.landing-page .public-nav a,.landing-page .nav-login{color:#51556b}
.landing-page .public-nav a:hover,.landing-page .nav-login:hover{color:#5947d8}
.landing-page .btn:focus-visible,.landing-page a:focus-visible,.landing-page summary:focus-visible{outline:3px solid #f9a97f;outline-offset:4px}
.landing-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 13%,#ffe2ce 0,transparent 25%),radial-gradient(circle at 87% 75%,#eae3ff 0,transparent 35%),#fffaf2}
.landing-hero:before{content:"";position:absolute;inset:0;opacity:.36;background-image:radial-gradient(#d5c9ae 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,#000,transparent 70%);pointer-events:none}
.landing-hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;min-height:650px;padding-block:82px 94px}
.landing-kicker,.landing-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#6a55c6}
.landing-kicker{padding:8px 15px;border-radius:40px;background:#f0eaff;border:1px solid #e4dcff}
.landing-kicker span{color:#fc825f;font-size:19px;line-height:1}
.landing-hero h1{font-size:clamp(44px,5.2vw,72px);line-height:1.43;letter-spacing:-2.5px;margin:24px 0 19px;color:var(--landing-ink)}
.landing-hero h1 span{position:relative;color:#ed684d;white-space:nowrap}
.landing-hero h1 span:after{content:"";position:absolute;right:3%;left:2%;height:9px;bottom:1px;background:#ffd96b;border-radius:50%;transform:rotate(-2deg);z-index:-1}
.landing-hero-copy>p{max-width:540px;color:#5d6279;font-size:17px;line-height:2.1;margin-bottom:0}
.landing-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:30px}
.landing-main-button{background:#5947d8;color:#fff;border-radius:16px 16px 16px 5px;padding:16px 25px;font-size:15px;box-shadow:0 12px 0 #ded8ff}
.landing-main-button:hover{background:#4937c6;box-shadow:0 9px 0 #ded8ff;transform:translateY(3px)}
.landing-text-link{font-weight:800;color:#5143b1;display:inline-flex;align-items:center;gap:8px}
.landing-text-link:hover{text-decoration:underline}
.landing-hero-note{margin-top:47px;color:#777387;font-size:12px;font-weight:700}
.landing-hero-note span{color:#ff8460;margin-left:5px}
.landing-hero-art{height:510px;position:relative;display:grid;place-items:center;isolation:isolate}
.landing-hero-art:before{content:"";position:absolute;width:440px;height:440px;max-width:96%;background:#dcd2ff;border-radius:44% 56% 49% 51%/45% 44% 56% 55%;transform:rotate(-13deg);z-index:-2}
.landing-hero-art:after{content:"";position:absolute;width:350px;height:350px;max-width:80%;border:2px dashed #c9b9f5;border-radius:50%;transform:rotate(18deg);z-index:-1}
.study-board{position:relative;width:min(390px,84%);padding:21px;border:2px solid #272949;border-radius:23px;background:#fff;box-shadow:11px 12px 0 #252545;transform:rotate(-4deg);z-index:1}
.study-board-head{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px dashed #e0dfeb}
.board-avatar{display:grid;place-items:center;width:39px;height:39px;flex:none;color:#fff;background:#ff7757;border-radius:13px;font-size:23px}
.study-board-head strong,.study-board-head small,.board-task strong,.board-task small{display:block}
.study-board-head strong{font-size:14px}.study-board-head small,.board-task small{font-size:10px;color:#868aa0}.board-menu{margin-right:auto;color:#a1a0b8;letter-spacing:2px}
.board-progress{padding:18px 0}.board-progress-label{display:flex;justify-content:space-between;font-size:11px;color:#6c6e87}.board-progress-label strong{color:#5a49ce}.board-progress-track{height:11px;border-radius:30px;background:#e9e5ff;margin-top:9px;overflow:hidden}.board-progress-track span{display:block;width:67%;height:100%;background:#7663e8;border-radius:30px}
.board-tasks{display:grid;gap:8px}.board-task{display:flex;align-items:center;gap:11px;padding:11px 10px;border:1px solid #edeaf6;border-radius:12px;background:#faf9ff}.board-task strong{font-size:11px;line-height:1.5}.task-check{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;flex:none;background:#d7f6df;color:#208d65;font-size:17px;font-weight:800}.board-task.next .task-check{background:#fff0df;color:#e38543}.task-tag{font-size:9px;color:#258968;background:#e2f8e9;padding:3px 7px;border-radius:20px;margin-right:auto;white-space:nowrap}.task-arrow{margin-right:auto;color:#6b59d8}
.board-bottom{margin-top:15px;border-radius:10px;background:#fff2d8;padding:10px;color:#9c662a;font-weight:800;font-size:10px}.board-bottom span{color:#f3a037;font-size:15px}
.art-sticker{position:absolute;z-index:2;background:#fff;border:2px solid #292844;border-radius:11px;padding:9px 15px;font-weight:800;box-shadow:5px 5px 0 #292844;white-space:nowrap}.art-sticker-top{top:27px;right:0;color:#c15d3d;transform:rotate(7deg)}.art-sticker-bottom{bottom:35px;left:0;color:#5949aa;transform:rotate(6deg)}
.art-star{position:absolute;top:20px;left:80px;color:#ffab59;font-size:44px}.art-squiggle{position:absolute;bottom:25px;right:45px;color:#ff8365;font-size:55px;transform:rotate(-25deg)}.art-loop{position:absolute;bottom:48px;left:92px;width:60px;height:28px;border-bottom:3px solid #f2a251;border-radius:50%;transform:rotate(-30deg)}
.landing-ribbon{background:#5846d5;color:#fff;transform:rotate(-1.2deg) scale(1.02);position:relative;z-index:2}.landing-ribbon .container{min-height:59px;display:flex;align-items:center;justify-content:space-around;gap:18px;flex-wrap:wrap;font-size:14px;font-weight:800}.landing-ribbon i{font-style:normal;color:#ffcf76}
.landing-section{padding:104px 0;scroll-margin-top:90px}.landing-section-head{text-align:center;max-width:640px;margin:0 auto 44px}.landing-section h2,.landing-final h2{font-size:clamp(30px,3.5vw,46px);line-height:1.5;letter-spacing:-1px;margin:10px 0 12px;color:var(--landing-ink)}.landing-section-head h2 span,.landing-how h2 span{color:#ee7654}.landing-section p{color:var(--landing-muted);font-size:15px;line-height:2}
.landing-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.landing-feature-card{position:relative;min-height:335px;border:1px solid #292944;border-radius:25px;padding:24px 27px;box-shadow:6px 7px 0 #292944;transition:transform .2s,box-shadow .2s}.landing-feature-card:hover{transform:translateY(-5px);box-shadow:6px 12px 0 #292944}.landing-feature-card.peach{background:#fff0e5}.landing-feature-card.lilac{background:#f0eaff}.landing-feature-card.mint{background:#e6f8ed}.landing-feature-illustration{display:grid;place-items:center;width:72px;height:72px;border:2px solid #292944;border-radius:21px;background:#fff;font-size:40px;color:#ed7656;transform:rotate(-8deg);box-shadow:4px 4px 0 #292944;margin-bottom:25px}.lilac .landing-feature-illustration{color:#715ee0;transform:rotate(8deg)}.mint .landing-feature-illustration{color:#32a583}.feature-number{font-size:11px;font-weight:800;color:#776b87}.landing-feature-card h3{font-size:22px;margin:4px 0 8px;color:#272743}.landing-feature-card p{font-size:13px;min-height:74px;margin-bottom:14px;color:#626276}.landing-feature-card a{display:inline-flex;align-items:center;gap:6px;color:#4c3fad;font-weight:800;font-size:12px}.landing-feature-card a:hover{text-decoration:underline}
.landing-how{background:#fff9ee}.landing-how-grid,.landing-moment-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.landing-how-copy p{max-width:470px}.landing-how-copy .btn{margin-top:15px}.landing-steps{position:relative;display:grid;gap:15px}.landing-steps:before{content:"";position:absolute;right:27px;top:34px;bottom:34px;border-right:2px dashed #cfc5f5}.landing-step{position:relative;display:flex;align-items:center;gap:19px;background:#fff;border:1px solid #ede6db;border-radius:18px;padding:20px;box-shadow:0 10px 26px #5d508010}.step-badge{display:grid;place-items:center;width:53px;height:53px;border-radius:15px;flex:none;color:#fff;font-size:23px;font-weight:800}.step-badge.orange{background:#fc835d}.step-badge.purple{background:#7764d9}.step-badge.green{background:#43b68f}.landing-step h3{font-size:17px;margin:0 0 2px}.landing-step p{font-size:12px;margin:0}
.landing-moment{background:#fff}.landing-question-card{max-width:510px;background:#f3efff;border:2px solid #2d2a4b;border-radius:25px;padding:25px;box-shadow:8px 9px 0 #2d2a4b;transform:rotate(-2deg)}.question-card-title{font-size:12px;font-weight:800;color:#5a4bb1;margin-bottom:24px}.question-card-title span{font-size:22px;color:#f18b64}.question-student{background:#6653d8;color:#fff;border-radius:15px 15px 4px 15px;padding:12px 18px;margin-right:auto;width:fit-content;max-width:85%;font-weight:700;font-size:13px}.question-answer{background:#fff;border-radius:15px 15px 15px 4px;padding:15px 18px;margin-top:14px;max-width:94%;box-shadow:0 7px 20px #38336112}.question-answer strong{font-size:12px;color:#5a4ac4}.question-answer p{font-size:12px;margin:4px 0 0;line-height:1.9}.question-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.question-chips span{border:1px solid #d7ceef;background:#fff;border-radius:30px;padding:5px 10px;color:#74659e;font-weight:700;font-size:10px}.landing-moment-copy p{max-width:440px}.landing-moment-copy .landing-text-link{margin-top:9px}
.landing-faq{background:#fff9f1}.landing-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.landing-faq-list details{background:#fff;border:1px solid #e5ded6;border-radius:15px;margin-bottom:12px;padding:18px 22px}.landing-faq-list details[open]{border-color:#bdb0ee;box-shadow:0 7px 20px #4a3c7d0b}.landing-faq-list summary{font-weight:800;cursor:pointer;font-size:14px}.landing-faq-list details p{font-size:12px;margin:9px 0 0}
.landing-final{background:#5846d5;color:#fff;overflow:hidden;text-align:center}.landing-final-inner{position:relative;padding:84px 0}.landing-final .landing-label{color:#ffdf90}.landing-final h2{color:#fff}.landing-final p{color:#e9e5ff;font-size:15px;margin-bottom:28px}.landing-final-button{background:#fff;color:#4f3dc5;border-radius:15px;padding:14px 29px;box-shadow:0 8px 0 #3525a0}.landing-final-button:hover{background:#fff6e9;box-shadow:0 5px 0 #3525a0;transform:translateY(3px)}.landing-final-doodle,.landing-final-spark{position:absolute;color:#ffc66c;font-size:70px}.landing-final-doodle{right:8%;top:44px}.landing-final-spark{left:10%;bottom:40px}
.landing-page .site-footer{background:#24223e}
html[data-theme="dark"] .landing-page{--landing-ink:#f1ecff;--landing-muted:#bac0d5;background:#121624}
html[data-theme="dark"] .landing-page .site-header{background:#1b2235ee;border-color:#34364e}
html[data-theme="dark"] .landing-hero{background:radial-gradient(circle at 15% 15%,#40304e 0,transparent 30%),radial-gradient(circle at 85% 70%,#302c58 0,transparent 35%),#1b1c31}
html[data-theme="dark"] .landing-page .public-nav a,html[data-theme="dark"] .landing-page .nav-login,html[data-theme="dark"] .landing-hero-copy>p,html[data-theme="dark"] .landing-hero-note{color:#c2bfd3}
html[data-theme="dark"] .landing-kicker{background:#383052;border-color:#51436e;color:#ddd1ff}
html[data-theme="dark"] .landing-ribbon,html[data-theme="dark"] .landing-final{background:#4335a2}
html[data-theme="dark"] .landing-features,html[data-theme="dark"] .landing-moment{background:#151827}
html[data-theme="dark"] .landing-how,html[data-theme="dark"] .landing-faq{background:#1b1b2c}
html[data-theme="dark"] .landing-feature-card.peach{background:#49342f}html[data-theme="dark"] .landing-feature-card.lilac{background:#38304e}html[data-theme="dark"] .landing-feature-card.mint{background:#263d3b}
html[data-theme="dark"] .landing-feature-card,html[data-theme="dark"] .study-board,html[data-theme="dark"] .landing-question-card{border-color:#77708f;box-shadow:6px 7px 0 #100f1d}
html[data-theme="dark"] .landing-feature-card h3,html[data-theme="dark"] .landing-step h3{color:#f1ecff}
html[data-theme="dark"] .landing-feature-card p,html[data-theme="dark"] .landing-step p{color:#c0bad0}
html[data-theme="dark"] .study-board,html[data-theme="dark"] .landing-step,html[data-theme="dark"] .landing-faq-list details,html[data-theme="dark"] .question-answer{background:#282b43;color:#f2edff;border-color:#49445f}
html[data-theme="dark"] .board-task{background:#30324a;border-color:#4b4863}html[data-theme="dark"] .board-task small,html[data-theme="dark"] .study-board-head small{color:#bab7ce}
html[data-theme="dark"] .board-progress-label{color:#c8c1d7}html[data-theme="dark"] .landing-question-card{background:#302b4b}html[data-theme="dark"] .question-chips span{background:#38334e;border-color:#5b5374;color:#dfd4ff}
@media(max-width:950px){.landing-hero-grid{gap:20px}.landing-hero h1{font-size:clamp(38px,5vw,56px)}.landing-hero-art{height:470px}.art-sticker-top{right:4px}.art-sticker-bottom{left:3px}.landing-how-grid,.landing-moment-grid{gap:40px}}
@media(max-width:760px){.landing-hero-grid{grid-template-columns:1fr;padding-block:58px 65px}.landing-hero-art{height:480px;max-width:520px;width:100%;margin:auto}.landing-feature-grid{grid-template-columns:1fr}.landing-feature-card{min-height:auto}.landing-feature-card p{min-height:0}.landing-how-grid,.landing-moment-grid,.landing-faq-grid{grid-template-columns:1fr;gap:42px}.landing-moment-copy{grid-row:1}.landing-question-card{margin:auto}.landing-ribbon .container{padding-block:14px}.landing-ribbon{transform:none}}
@media(max-width:560px){.landing-hero-grid{padding-top:45px}.landing-hero h1{font-size:39px;letter-spacing:-1px}.landing-hero-copy>p{font-size:14px}.landing-hero-actions{gap:18px}.landing-main-button{font-size:13px;padding:14px 17px}.landing-hero-note{margin-top:29px}.landing-hero-art{height:410px}.study-board{width:84%;padding:14px}.board-task{padding:8px}.board-task strong{font-size:10px}.art-sticker{font-size:10px;padding:6px 9px}.art-sticker-top{top:15px}.art-sticker-bottom{bottom:15px}.art-star{left:35px}.art-squiggle{right:15px}.landing-ribbon .container{font-size:11px;gap:8px}.landing-ribbon i:nth-of-type(2){display:none}.landing-section{padding:72px 0}.landing-feature-card{padding:22px}.landing-how-copy .btn{margin-top:8px}.landing-question-card{padding:17px}.landing-faq-grid{gap:22px}.landing-final-inner{padding:75px 0}.landing-final-doodle{right:-10px;top:14px;font-size:42px}.landing-final-spark{left:3px;bottom:8px;font-size:36px}}
@media(prefers-reduced-motion:reduce){.landing-page *, .landing-page *:before,.landing-page *:after{scroll-behavior:auto;transition:none!important}}
