:root{color-scheme:light;--bg:#f6f7fb;--card:#fff;--text:#1a1c23;--muted:#606878;--accent:#3b5bdb;--accent2:#e7ecff;--ok:#167a43;--warn:#b85f00;--bad:#c52222;--line:#dfe3eb}
*{box-sizing:border-box;min-width:0}html,body{height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--text);font:16px/1.45 -apple-system,system-ui,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}html:has(body.parent-page),body.parent-page{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
body.age-junior{--accent:#7c3aed;--accent2:#f0e9ff;--bg:#fbf8ff;background-image:radial-gradient(circle at 10% 0,#ffe8cc 0,transparent 28%),radial-gradient(circle at 90% 8%,#e5dbff 0,transparent 30%)}
body.age-middle{--accent:#3b5bdb;--accent2:#e7ecff;--bg:#f5f7ff;background-image:radial-gradient(circle at 5% 0,#dbeafe 0,transparent 30%),radial-gradient(circle at 95% 12%,#e9d5ff 0,transparent 28%)}
body.age-senior{--accent:#2563eb;--accent2:#e0edff;--bg:#f3f6fb;background-image:linear-gradient(135deg,rgba(37,99,235,.07),transparent 38%),radial-gradient(circle at 90% 0,rgba(20,184,166,.10),transparent 28%)}
.wrap{max-width:640px;margin:0 auto;padding:16px}
h1{font-size:22px;margin:8px 0 4px}h2{font-size:18px;margin:0 0 8px}.muted{color:var(--muted);font-size:14px}
.card{background:color-mix(in srgb,var(--card) 96%,transparent);border:1px solid var(--line);border-radius:18px;padding:16px;margin:12px 0;box-shadow:0 8px 24px rgba(29,44,90,.045);transition:transform .22s ease,box-shadow .22s ease}
label{display:block;margin:10px 0;font-size:14px;color:var(--muted)}input,select,textarea{display:block;width:100%;margin-top:4px;padding:10px 12px;font:inherit;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text)}
.btn{display:inline-block;padding:10px 16px;border:0;border-radius:10px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer;box-shadow:0 5px 12px color-mix(in srgb,var(--accent) 24%,transparent);transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}
.btn.sec{background:var(--accent2);color:var(--accent)}.btn:disabled{opacity:.5}
.btn:not(:disabled):hover{filter:brightness(1.04);transform:translateY(-1px)}.btn:not(:disabled):active,.tabs button:active,.icon:active,.back-link:active,.report-link:active{animation:button-press .2s ease;transform:translateY(2px) scale(.96);box-shadow:none}
.report-link{display:block;margin:8px 0 0 auto;padding:4px 0;border:0;background:none;color:var(--muted);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}.report-link:disabled{opacity:.7;text-decoration:none}
.err{color:var(--bad);font-size:14px;min-height:1em}.hidden{display:none!important}hr{border:0;border-top:1px solid var(--line);margin:14px 0}
/* app */
.app{display:flex;flex-direction:column;height:100dvh;max-width:640px;margin:0 auto}
.top{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--card)}
.top .streak{font-size:14px;color:var(--muted)}
.tabs{display:flex;border-bottom:1px solid var(--line);background:var(--card)}
.tabs button{flex:1;padding:10px;border:0;background:none;font:inherit;color:var(--muted);border-bottom:2px solid transparent}
.tabs button.on{color:var(--accent);border-color:var(--accent);font-weight:600}.tab:not(.hidden){animation:page-in .28s ease both}
.student-nav{flex-shrink:0}.student-nav button{cursor:pointer}.student-nav-icon,.student-nav-label-mobile{display:none}
.student-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:10px}
.tab{display:flex;flex-direction:column;flex:1;min-height:0}
.pane{flex:1;overflow:auto;padding:12px 14px;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.practice-active #tutor-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.practice-active #practice{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}
.practice-active #practice>.card{flex:none;margin:0 0 10px}
.practice-active #msgs-practice{flex:1;min-height:90px;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 8px 0;scrollbar-gutter:stable}
.practice-active #pr-compose{flex:none}
.lesson-plan-card{padding:12px 14px!important}.lesson-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.lesson-plan-head h2{margin:0;font-size:16px}.lesson-plan-head p{margin:2px 0 0}.lesson-plan-timer{flex:none;padding:5px 9px;border-radius:999px;background:var(--accent2);color:var(--accent);font-size:12px;font-weight:700}.lesson-plan-progress{height:5px;margin:9px 0;background:var(--line);border-radius:999px;overflow:hidden}.lesson-plan-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),#8b5cf6);border-radius:inherit;transition:width .35s ease}.lesson-plan-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0;padding:0;list-style:none}.lesson-plan-stages li{display:grid;justify-items:center;align-content:start;min-width:0;gap:3px;color:var(--muted);text-align:center}.lesson-plan-stages li span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line);border-radius:50%;background:var(--card);font-size:10px;font-weight:800}.lesson-plan-stages li b{max-width:100%;font-size:10px;line-height:1.15}.lesson-plan-stages li.done,.lesson-plan-stages li.now{color:var(--accent)}.lesson-plan-stages li.done span{border-color:var(--accent);background:var(--accent);color:#fff}.lesson-plan-stages li.done span{font-size:0}.lesson-plan-stages li.done span:after{content:'✓';font-size:11px}.lesson-plan-stages li.now span{border:2px solid var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}
.msgs{display:flex;flex-direction:column;gap:8px}
.m{max-width:85%;padding:9px 12px;border-radius:14px;white-space:pre-wrap;word-break:break-word}
.m.u{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}
.m.a{align-self:flex-start;background:#fff;color:#1a1c23;border:1px solid var(--line);border-bottom-left-radius:4px}
.m img{max-width:100%;border-radius:8px;display:block;margin-bottom:6px}
.compose{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line);background:var(--card);align-items:flex-end}
.compose textarea{flex:1;margin:0;resize:none;max-height:120px}
.practice-compose-field{flex:1;margin:0;color:var(--text);font-size:12px;font-weight:700}.practice-compose-field span{display:block;margin:0 0 4px 2px}.practice-compose-field textarea{font-weight:400}
.app-toast{position:fixed;z-index:10000;left:50%;bottom:20px;max-width:min(90vw,520px);padding:11px 16px;border-radius:12px;background:#20242e;color:#fff;box-shadow:0 12px 35px rgba(0,0,0,.25);opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:opacity .2s ease,transform .2s ease}.app-toast.show{opacity:1;transform:translate(-50%,0)}.app-toast.success{background:var(--ok)}.app-toast.error{background:var(--bad)}
.icon{width:42px;height:42px;border-radius:10px;border:1px solid var(--line);background:var(--bg);font-size:20px;flex:none}
.pill{display:inline-block;padding:2px 8px;border-radius:99px;font-size:12px;background:var(--accent2);color:var(--accent)}
.topic{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);gap:8px}
.topic small{color:var(--muted)}
.dot{width:10px;height:10px;border-radius:50%;flex:none}
.s-unknown{background:#cbd5e1}.s-weak{background:var(--bad)}.s-partial{background:var(--warn)}.s-mastered{background:var(--ok)}
.big{font-size:32px;font-weight:700}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.q{font-size:18px;padding:14px;background:var(--accent2);color:var(--text);border-radius:12px;margin:8px 0;overflow-wrap:anywhere}
.diag-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin:10px 0 6px}.diag-meta span{padding:4px 8px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:800}.diag-meta strong{font-size:16px;color:var(--text)}.diag-meta small{flex-basis:100%;color:var(--muted);font-size:13px}.diag-question>small{display:block;margin-bottom:5px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.diag-history{display:grid;gap:5px;margin-top:14px}.diag-history h3{margin:0 0 3px;font-size:13px}.diag-history>div{display:grid;grid-template-columns:24px 1fr 22px;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#1a1c23}.diag-history span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--accent2);color:var(--accent);font-size:11px}.diag-history b{overflow-wrap:anywhere;font-size:13px}.diag-history em{color:var(--accent);font-style:normal;font-weight:900;text-align:center}.diag-result h2{margin-top:10px}.diag-score{padding:12px;border-radius:12px;background:var(--accent2);color:var(--text)}.diag-review{display:grid;gap:10px}.diag-review article{padding:12px;border:1px solid var(--line);border-left:4px solid var(--bad);border-radius:12px;background:#fff;color:#1a1c23}.diag-review article.correct{border-left-color:var(--ok)}.diag-review article.disputed{border-left-color:var(--warn)}.diag-review header{display:flex;justify-content:space-between;gap:8px}.diag-review header span{color:var(--muted);font-size:12px;font-weight:700}.diag-review p{margin:8px 0;overflow-wrap:anywhere}.diag-review dl{display:grid;gap:6px;margin:0}.diag-review dl>div{display:grid;grid-template-columns:110px 1fr;gap:8px}.diag-review dt{color:var(--muted);font-size:12px}.diag-review dd{margin:0;overflow-wrap:anywhere}.diag-puzzle-result{margin:14px 0;padding:13px;border-radius:12px;background:#fff7d6;color:#44370c}.diag-puzzle-result h3{margin:0 0 8px}.diag-puzzle-result p{margin:5px 0}
.math-frac{display:inline-grid;grid-template-rows:auto auto;vertical-align:middle;margin:0 .14em;text-align:center;line-height:.92;font-size:.82em;font-family:Georgia,"Times New Roman",serif}.math-frac>span{display:block;min-width:1.15em}.math-frac>span:first-child{padding:0 .16em .09em;border-bottom:1.5px solid currentColor}.math-frac>span:last-child{padding:.09em .16em 0}.q .math-frac{font-size:.86em}.typing-help{margin:8px 0;padding:9px 11px;border-radius:10px;background:color-mix(in srgb,var(--accent2) 60%,var(--card));color:var(--muted);font-size:13px}
.practice-answer textarea{min-height:64px;resize:vertical}.practice-answer .btn{align-self:stretch}
.thinking-note{margin:8px 0;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--accent2) 60%,var(--card));color:var(--muted);font-size:13px}.thinking-checkin{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:12px;background:var(--card);font-size:13px}.thinking-checkin .btn{flex:none;padding:7px 10px;font-size:12px}
.ev{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.ev time{color:var(--muted);font-size:12px;display:block}
.parent-insight{margin:8px 0;padding:11px 12px;border-left:4px solid var(--warn);border-radius:10px;background:color-mix(in srgb,var(--accent2) 45%,var(--card))}.parent-insight b,.parent-insight small{display:block}.parent-insight small{margin-top:3px;color:var(--muted)}.parent-insight p{margin:7px 0 0;font-size:14px}
.k-task_done,.k-topic_mastered{border-left:3px solid var(--ok);padding-left:8px}.k-task_abandoned,.k-refusal{border-left:3px solid var(--bad);padding-left:8px}.k-hint{border-left:3px solid var(--warn);padding-left:8px}
.subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.subject-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0 14px}.subject-choice label{display:flex;align-items:center;gap:7px;padding:9px;border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:13px}.subject-choice input{width:auto;margin:0}.schedule-completed{opacity:.65}.schedule-overdue{border-left:3px solid var(--warn)}
.schedule-edit-row{display:grid;grid-template-columns:minmax(140px,1.4fr) 145px 110px 70px;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.schedule-edit-row input{margin:0;padding:9px;font-size:14px}.schedule-edit-row>span{color:var(--muted);font-size:13px}.schedule-edit-row small{grid-column:1/-1;color:var(--muted)}
@media(max-width:700px){.schedule-edit-row{grid-template-columns:1fr 1fr}.schedule-edit-row>b,.schedule-edit-row>small{grid-column:1/-1}}
.schedule-week{display:grid;min-width:0;gap:8px;margin:14px 0}.schedule-week h4{margin:2px 0;color:var(--muted)}.schedule-session{display:grid;min-width:0;max-width:100%;grid-template-columns:minmax(120px,.75fr) minmax(150px,1.4fr) minmax(0,auto);gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}.schedule-session-date,.schedule-session-copy{display:grid;min-width:0;gap:3px}.schedule-session-copy b,.schedule-session-copy small{overflow-wrap:anywhere}.schedule-session-date span,.schedule-session-copy small{color:var(--muted)}.schedule-session-meta{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.schedule-session-meta span,.schedule-session-meta em{font-size:12px}.schedule-session-meta em{padding:5px 8px;border-radius:999px;background:var(--bg);color:var(--muted);font-style:normal}.schedule-session.schedule-overdue{border-color:color-mix(in srgb,var(--warn) 45%,var(--line));background:color-mix(in srgb,var(--warn) 5%,var(--card))}.schedule-session.schedule-late{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.schedule-move-controls{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.schedule-move-controls label{color:var(--muted);font-size:12px}.schedule-move-controls input{margin:5px 0 0}.schedule-move-controls small{grid-column:1/-1;color:var(--muted)}
@media(max-width:720px){.schedule-session{grid-template-columns:1fr}.schedule-session-meta{justify-content:space-between;flex-wrap:wrap}.schedule-move-controls{grid-template-columns:1fr}.schedule-move-controls small{grid-column:auto}.schedule-session-meta .btn{width:100%}}
.preferred-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.preferred-day{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;max-width:100%;margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:12px;color:var(--text);overflow:hidden}.preferred-day input[type=checkbox]{width:auto;margin:0}.preferred-day input[type=time]{grid-column:1/-1;width:100%;max-width:100%;min-width:0;margin:0;-webkit-appearance:none}.preferred-day:not(:has(input[type=checkbox]:checked)) input[type=time]{display:none}@media(max-width:520px){.preferred-days{grid-template-columns:1fr}}
.subject-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;min-height:150px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(29,44,90,.05);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.subject-card:before{content:"";position:absolute;z-index:-1;width:100px;height:100px;right:-28px;top:-30px;border-radius:50%;background:var(--accent2);transition:transform .35s ease}.subject-card:hover,.subject-card:focus-visible{transform:translateY(-4px);box-shadow:0 16px 34px rgba(42,63,130,.14);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.subject-card:hover:before,.subject-card:focus-visible:before{transform:scale(1.35)}.subject-card:active{transform:scale(.98)}
.subject-card .subject-icon,.subject-hero .subject-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--accent2);color:var(--accent);font-size:22px;font-weight:700}
.all-subjects summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}.all-subjects summary::-webkit-details-marker{display:none}.all-subjects:not([open]){padding-bottom:16px}.subject-card.extra-subject{opacity:.68}.subject-card.in-plan:after{content:"в плане";position:absolute;right:10px;top:10px;padding:3px 7px;border-radius:9px;background:var(--accent2);color:var(--accent);font-size:9px;font-weight:800}
.subject-name{font-size:17px;font-weight:700;margin-top:12px}.subject-state{color:var(--muted);font-size:12px;margin-top:3px;min-height:34px}
.progress{display:block;width:100%;height:6px;margin-top:auto;background:var(--line);border-radius:9px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#8b5cf6);border-radius:inherit;transition:width .7s cubic-bezier(.2,.8,.2,1)}
.parent-dashboard{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--accent) 4%,var(--card))}.parent-recommendation{display:grid;gap:5px;padding:13px;border-radius:13px;background:var(--card)}.parent-recommendation small,.parent-progress-card small,.parent-attendance small{color:var(--muted)}.parent-recommendation p,.parent-progress-card p,.parent-support{margin:4px 0;color:var(--muted)}.parent-attendance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.parent-attendance>div{display:grid;gap:4px;padding:10px;border-radius:12px;background:var(--card)}.parent-attendance b{font-size:22px}.parent-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.parent-progress-card{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.parent-progress-card .progress{height:8px}
.parent-notifications{display:grid;gap:8px;margin:12px 0}.parent-notifications h3{margin:0}.parent-notification{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.parent-notification.level-action{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--card))}.parent-notification p{margin:5px 0 0;color:var(--muted)}.parent-notification .btn{flex:none}.parent-all-good{padding:10px 12px;border-radius:12px;background:color-mix(in srgb,#22c55e 8%,var(--card));color:var(--muted)}
.parent-page-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.parent-page-head h1{margin-bottom:10px}.parent-page-head span{color:var(--muted)}.parent-kid{display:grid;gap:14px;margin-bottom:28px}.parent-kid>.card,.parent-kid>.billing-card{margin:0}.parent-overview>h2{margin-bottom:14px}.child-access{display:grid;gap:12px;margin:0 0 16px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--accent) 5%,#fff)}.child-access>div:first-child{display:grid;gap:2px}.child-access small{color:var(--accent);font-weight:800;text-transform:uppercase}.child-share{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.child-share input{min-width:0;margin:0;background:#fff;font-size:14px}.child-share .btn{white-space:nowrap}.parent-onboarding{margin:0 0 16px;padding:20px;border-radius:20px;background:linear-gradient(135deg,#eef1ff,#ecfbf6);color:#1a1c23}.parent-onboarding-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.parent-onboarding-head small{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.parent-onboarding-head h2{margin:5px 0 0;font-size:21px}.parent-onboarding-head>span{flex:none;padding:7px 10px;border-radius:999px;background:#fff;color:var(--accent);font-size:12px;font-weight:800}.parent-onboarding>p{max-width:720px;margin:12px 0;color:#4f596c}.parent-onboarding ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;counter-reset:onboarding;list-style:none}.parent-onboarding li{position:relative;min-height:66px;padding:11px 12px 11px 43px;border:1px solid rgba(59,91,219,.12);border-radius:13px;background:rgba(255,255,255,.74);font-size:13px}.parent-onboarding li:before{content:counter(onboarding);counter-increment:onboarding;position:absolute;left:11px;top:11px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:800}
.program-step,.parent-settings{margin:0 0 16px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:18px;background:#fff}.program-step{display:grid;gap:13px}.step-heading{display:flex;align-items:flex-start;gap:11px}.step-heading>div{display:grid;gap:3px}.step-heading small{color:var(--accent);font-weight:800;text-transform:uppercase}.step-heading h3,.step-heading p{margin:0}.step-heading p{color:var(--muted)}.parent-settings{padding-top:0}.parent-settings>summary{display:flex;align-items:center;gap:11px;padding:15px 0;cursor:pointer;list-style:none}.parent-settings>summary::-webkit-details-marker{display:none}.parent-settings>summary>span:last-child{display:grid;gap:2px}.parent-settings>summary small{color:var(--muted);font-weight:400}.setup-step{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:10px;background:var(--accent);color:#fff;font-weight:800}.setup-section-title{align-items:flex-start;justify-content:space-between;margin-top:5px}.setup-section-title>div{flex:1}.setup-section-title p{margin:4px 0}.setup-section-title .btn{flex:none}
.messenger-connect{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:18px 0}.messenger-connect>div{grid-column:1/-1}.messenger-connect h3,.messenger-connect p{margin:4px 0}.messenger-connect>div>small{color:var(--accent);font-weight:800;text-transform:uppercase}.messenger-connect>div>p{color:var(--muted)}.messenger-option{display:grid;grid-template-rows:auto;gap:12px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.messenger-option-head{display:flex;align-items:center;gap:11px;min-height:52px}.messenger-option-head>div{display:grid;gap:2px}.messenger-option-head b{font-size:16px}.messenger-option-head small{color:var(--muted);font-size:12px}.messenger-mark{display:block;flex:none;width:48px;height:48px;border-radius:14px;object-fit:contain}.messenger-actions{display:grid;grid-auto-rows:minmax(44px,auto);gap:8px}.messenger-actions .btn{display:grid;place-items:center;width:100%;min-height:44px;padding:9px 10px;white-space:normal}.messenger-option .btn:disabled{opacity:1;background:#f0f2f7;color:#7c8494;box-shadow:none}.messenger-option>[data-messenger-result]{align-self:stretch;margin:0;padding-top:11px;border-top:1px solid var(--line);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.billing-card{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:14px;margin:18px 0;padding:22px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:20px;background:linear-gradient(135deg,var(--accent2),#fff)}.billing-head>small{color:var(--accent);font-weight:800;text-transform:uppercase}.billing-card h2{margin:5px 0}.billing-card h3{margin:6px 0 0;font-size:15px}.billing-card p{margin:0;color:var(--muted)}.billing-card .trial-kept{padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.82);color:var(--text)}.payment-assurances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.payment-assurances article{padding:13px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:14px;background:rgba(255,255,255,.78)}.payment-assurances b{display:block;margin-bottom:5px}.payment-assurances p{font-size:13px;line-height:1.45}.payment-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.payment-plan{margin:0;cursor:pointer}.payment-plan input{position:absolute;opacity:0;pointer-events:none}.payment-plan span{display:grid;gap:4px;height:100%;min-height:96px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.payment-plan input:checked+span{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.payment-plan strong{font-size:19px}.payment-plan small{color:var(--muted);font-size:11px}.payment-actions{display:flex;align-items:center;gap:9px}.payment-actions .btn{min-height:44px}.billing-card>[data-payment-result]{padding-top:10px;border-top:1px solid var(--line)}.parent-career{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;margin:16px 0;padding:18px;border-radius:18px;background:linear-gradient(135deg,#f1efff,#eaf9f5)}.parent-career small{color:var(--accent);font-weight:800;text-transform:uppercase}.parent-career h3{margin:5px 0}.parent-career p{grid-column:1/-1;margin:0;color:var(--muted);line-height:1.5}.parent-career-market{display:grid;grid-template-columns:auto auto;align-content:center;gap:3px 9px}.parent-career-market b{color:var(--accent)}.parent-career-market span{color:var(--muted);font-size:10px}
@media(max-width:650px){.parent-attendance{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-progress-grid{grid-template-columns:1fr}}
@media(max-width:650px){.parent-notification{align-items:flex-start;flex-direction:column}.parent-notification .btn{width:100%}}
@media(max-width:780px){.messenger-connect,.payment-plans,.payment-assurances,.parent-onboarding ol{grid-template-columns:1fr}.messenger-option{min-height:0}.billing-card,.parent-career{grid-template-columns:1fr}.payment-actions{align-items:stretch;flex-direction:column}.payment-actions .btn{width:100%}.parent-career-market{grid-template-columns:auto 1fr}.parent-onboarding-head,.setup-section-title{align-items:stretch;flex-direction:column}.parent-onboarding-head>span{align-self:flex-start}.setup-section-title .btn{width:100%}.child-share{grid-template-columns:1fr}.child-share .btn{width:100%}.parent-page-head{align-items:flex-start;flex-direction:column;gap:0}}
.back-link{border:0;background:none;color:var(--accent);font:inherit;padding:6px 0;cursor:pointer}.subject-hero{display:flex;align-items:center;gap:14px}.subject-hero h2{margin:0}
@media(max-width:380px){.subject-grid{grid-template-columns:1fr}}
.honor-board{background:linear-gradient(160deg,var(--card),color-mix(in srgb,var(--accent2) 55%,var(--card)))}.trophy-shelf{margin:10px 0}.trophy-shelf summary{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.55);cursor:pointer;list-style:none}.trophy-shelf summary::-webkit-details-marker{display:none}.trophy-shelf summary small{color:var(--muted)}.trophy-shelf.current summary{color:var(--accent);font-weight:700}.shelf{position:relative;padding:8px}
.trophy-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}.trophy{text-align:center;transition:transform .22s ease,filter .22s ease}.trophy.earned:hover{transform:translateY(-5px) rotate(-1deg)}.trophy-art{position:relative;aspect-ratio:1}.trophy-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 7px rgba(35,28,19,.18))}.trophy-art b{position:absolute;right:3px;bottom:3px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--card);border:2px solid var(--accent);color:var(--accent);font-size:11px}.trophy strong{display:block;font-size:11px;line-height:1.2}.trophy small{display:block;color:var(--muted);font-size:9px;line-height:1.15;margin-top:3px}.trophy.locked{filter:grayscale(1);opacity:.28}@media(max-width:480px){.trophy-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.trophy strong{font-size:9px}.trophy small{display:none}}
.journey{position:relative;padding:4px 0}.journey:before{content:"";position:absolute;left:22px;top:24px;bottom:24px;width:4px;border-radius:9px;background:linear-gradient(var(--ok),var(--accent),var(--line))}.journey-step{position:relative;display:flex;align-items:center;width:100%;gap:12px;margin:8px 0;padding:10px 12px 10px 5px;border:0;border-radius:15px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background .2s ease,transform .2s ease}.journey-step:hover,.journey-step.open{background:var(--accent2);transform:translateX(3px)}.journey-node{z-index:1;display:grid;place-items:center;width:38px;height:38px;flex:none;border:4px solid var(--card);border-radius:50%;background:#cbd5e1;color:#fff;font-size:12px;font-weight:800;box-shadow:0 2px 7px rgba(0,0,0,.15)}.state-mastered .journey-node{background:var(--ok)}.state-checked .journey-node,.state-partial .journey-node{background:var(--accent)}.state-weak .journey-node{background:var(--bad)}.journey-copy{display:flex;flex:1;flex-direction:column}.journey-copy small{color:var(--muted)}.journey-copy em{display:none;margin-top:4px;color:var(--muted);font-size:13px;font-style:normal}.journey-step.open .journey-copy em{display:block;animation:page-in .2s ease}.journey-percent{font-size:13px;font-weight:700;color:var(--accent)}
.sound-toggle[aria-pressed="false"]{filter:grayscale(1)}.top.celebrate{animation:achievement-pop .8s ease}.confetti-layer{position:fixed;z-index:9999;inset:0;pointer-events:none;overflow:hidden}.confetti-layer i{position:absolute;left:var(--x);top:-18px;width:9px;height:15px;border-radius:2px;animation:confetti-fall 1.6s var(--delay) cubic-bezier(.15,.7,.35,1) forwards}
.puzzle-start-card{background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--accent2) 45%,var(--card)))}.puzzle-question{font-size:18px;line-height:1.5}.puzzle-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.puzzle-compose textarea{min-height:112px;margin:0;resize:vertical;line-height:1.45}.lesson-next{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--accent) 8%,var(--card))}.lesson-next small,.lesson-next span{color:var(--muted)}.lesson-next b{color:var(--accent);font-size:16px}.today-compact{display:flex;flex-direction:column;gap:2px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:14px}.puzzle-reward{display:flex;align-items:center;gap:12px;margin-top:12px;padding:11px 13px;border-radius:16px;background:color-mix(in srgb,#ffd43b 14%,var(--card));border:1px solid color-mix(in srgb,#d69e00 25%,var(--line))}.puzzle-reward>div{display:flex;flex-direction:column}.puzzle-reward small,.puzzle-reward span{color:var(--muted);font-size:11px}.puzzle-reward b{font-size:15px}.puzzle-reward.waiting .medal-large{filter:grayscale(.7);opacity:.52}.puzzle-reward.missed{background:var(--bg)}.puzzle-reward.missed .medal-large{filter:grayscale(1);opacity:.38}.puzzle-reward.won{animation:achievement-pop .8s ease}.medal-large,.medal-mini{position:relative;display:grid;place-items:center;flex:none;border-radius:50%;color:#8a5a00!important;background:radial-gradient(circle at 35% 25%,#fff4a3 0,#ffd43b 42%,#e59b00 78%,#9c6200 100%);border:3px solid #ffe77a;box-shadow:inset 0 0 0 3px #c98000,0 6px 12px rgba(113,70,0,.22);font-weight:900}.medal-large{width:54px;height:54px;font-size:25px}.medal-large:before,.medal-large:after{content:"";position:absolute;z-index:-1;top:40px;width:18px;height:27px;background:#3b5bdb}.medal-large:before{left:7px;transform:rotate(10deg)}.medal-large:after{right:7px;transform:rotate(-10deg)}.medal-mini{width:34px;height:34px;font-size:16px}.puzzle-medals{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:13px;background:var(--bg);color:var(--muted)}.puzzle-medals div{display:flex;flex-direction:column}.puzzle-medals small{font-size:11px}.puzzle-medals:not(.earned) .medal-mini{filter:grayscale(1);opacity:.35}.puzzle-medals.earned{color:var(--text);background:color-mix(in srgb,#ffd43b 16%,var(--card))}
.child-next-notice{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.child-next-notice small{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.child-next-notice span{color:var(--muted)}.child-next-notice em{color:var(--text);font-style:normal;font-weight:700}.child-next-notice.tone-active{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));box-shadow:0 5px 16px color-mix(in srgb,var(--accent) 10%,transparent)}.child-next-notice.tone-success{background:color-mix(in srgb,#22c55e 8%,var(--card))}
@media(max-width:520px){.puzzle-compose{grid-template-columns:1fr}.puzzle-compose .btn{width:100%}}
.medal-large.bronze,.medal-mini.bronze{color:#5c2f12!important;background:radial-gradient(circle at 32% 25%,#ffd2a1,#bd6b32 48%,#693315);border-color:#e59a61;box-shadow:inset 0 0 0 3px #87451f,0 6px 12px rgba(91,48,18,.25)}
.medal-large.silver,.medal-mini.silver{color:#3d4754!important;background:radial-gradient(circle at 32% 25%,#fff,#cbd5e1 48%,#718096);border-color:#eef2f7;box-shadow:inset 0 0 0 3px #8793a3,0 6px 12px rgba(56,68,82,.23)}
.medal-large.gold,.medal-mini.gold{color:#805300!important;background:radial-gradient(circle at 32% 25%,#fff7ad,#ffd43b 48%,#b36b00);border-color:#ffe77a;box-shadow:inset 0 0 0 3px #c98000,0 6px 12px rgba(113,70,0,.22)}
.medal-large.crystal,.medal-mini.crystal{color:#315f83!important;background:linear-gradient(135deg,#fff 5%,#b8edff 34%,#bda8ff 65%,#e8fbff);border-color:#dffaff;box-shadow:inset 0 0 0 3px #88c8e8,0 0 18px rgba(112,208,255,.55)}
.medal-large.legendary,.medal-mini.legendary{color:#fff5bd!important;background:conic-gradient(from 20deg,#ff4d6d,#845ef7,#22b8cf,#51cf66,#ffd43b,#ff4d6d);border-color:#fff3bf;box-shadow:inset 0 0 0 3px #7c3aed,0 0 23px rgba(132,94,247,.7);animation:legendary-pulse 1.8s ease-in-out infinite}
.trophy-svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 8px 8px rgba(30,41,59,.22))}.trophy-svg .trophy-symbol{fill:#fff;font-size:25px;font-weight:900}.trophy-svg .theme-mark{fill:#fff;font-size:12px}.trophy-svg .grade-mark{fill:var(--muted);font-size:10px;font-weight:800}.trophy-svg-locked{filter:grayscale(1);opacity:.55}.trophy.earned .trophy-float{transform-box:fill-box;transform-origin:center;animation:trophy-float 3.2s ease-in-out infinite}.trophy.earned:hover .trophy-float{animation:trophy-flight 1.15s cubic-bezier(.2,.8,.2,1)}.award-particles{fill:#fff;opacity:.75;transform-box:fill-box;transform-origin:center}.effect-stars .award-particles{animation:award-stars 3s linear infinite}.effect-orbit .award-particles{animation:award-orbit 4s linear infinite}.effect-sparks .award-particles{animation:award-sparks 1.7s ease-in-out infinite}.effect-snow .award-particles{animation:award-snow 2.5s linear infinite}
.medal-svg{width:52px;height:62px;flex:none;overflow:visible;filter:drop-shadow(0 6px 7px rgba(30,41,59,.2))}.puzzle-reward .medal-svg{width:65px;height:77px}.medal-svg .medal-emblem{fill:#fff;font-size:27px;font-weight:900;paint-order:stroke;stroke:rgba(0,0,0,.18);stroke-width:1px}.medal-svg .medal-number{fill:var(--muted);font-size:8px;font-weight:800}.medal-legendary{animation:legendary-pulse 1.8s ease-in-out infinite}.medal-crystal .medal-spin{animation:crystal-shimmer 2.3s ease-in-out infinite}.medal-entry:hover .medal-spin{transform-box:fill-box;transform-origin:center;animation:medal-turn .8s ease}
.medal-collection{display:grid;gap:7px;margin-top:9px}.medal-entry{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.medal-entry>div{display:flex;min-width:0;flex-direction:column}.medal-entry small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.medal-entry em{color:var(--accent);font-size:10px;font-style:normal}
.tariff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px}.tariff-card{display:flex;gap:10px;align-items:flex-start;margin:0;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.tariff-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(42,77,170,.08)}.tariff-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.tariff-card input{width:auto;margin:3px 0 0;accent-color:var(--accent)}.tariff-card span{display:grid;min-width:0;gap:4px}.tariff-card small,.tariff-card em{color:var(--muted);font-style:normal}.tariff-card strong{color:var(--accent)}.tariff-usage,.tariff-warning{padding:12px 14px;border-radius:14px;overflow-wrap:anywhere}.tariff-usage{background:var(--accent2)}.tariff-warning{color:#7a3d00;background:#fff2df;border:1px solid #f2c078}
@media(max-width:520px){#pr-compose{align-items:stretch;flex-direction:column}#pr-compose .btn{width:100%;padding:9px}.app-toast{bottom:14px}}
@media(max-width:720px){.tariff-grid{grid-template-columns:1fr}}
@media(max-width:520px){.lesson-plan-card{padding:10px!important}.lesson-plan-head p{font-size:12px}.lesson-plan-stages{gap:2px}.lesson-plan-stages li b{font-size:9px}.lesson-plan-stages li span{width:20px;height:20px}.thinking-checkin{align-items:stretch;flex-direction:column}.thinking-checkin .btn{width:100%}}
@media(max-height:720px){.practice-active #practice>.card{padding:12px}.practice-active #practice>.card .q{padding:10px;margin:6px 0}.practice-active #practice>.card .muted{margin:6px 0}.lesson-plan-card{padding:8px 12px!important}.lesson-plan-progress{margin:6px 0}.lesson-plan-stages li b{font-size:9px}.lesson-plan-stages li span{width:18px;height:18px}}
@keyframes page-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes button-press{0%{transform:translateY(-1px) scale(1)}45%{transform:translateY(2px) scale(.95)}100%{transform:translateY(1px) scale(.98)}}@keyframes achievement-pop{0%,100%{transform:none}35%{transform:scale(1.025);box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 15%,transparent)}}@keyframes confetti-fall{to{transform:translateY(105vh) rotate(var(--spin));opacity:.15}}@keyframes legendary-pulse{0%,100%{filter:hue-rotate(0);transform:scale(1)}50%{filter:hue-rotate(35deg);transform:scale(1.07) rotate(3deg)}}@keyframes trophy-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes trophy-flight{0%{transform:none}38%{transform:translateY(-18px) rotate(8deg) scale(1.12)}70%{transform:translateY(-7px) rotate(-5deg) scale(1.06)}100%{transform:none}}@keyframes award-stars{to{transform:rotate(360deg)}}@keyframes award-orbit{50%{transform:rotate(180deg) scale(1.18)}to{transform:rotate(360deg)}}@keyframes award-sparks{0%,100%{opacity:.25;transform:scale(.75)}50%{opacity:1;transform:scale(1.35)}}@keyframes award-snow{from{transform:translateY(-8px)}to{transform:translateY(22px);opacity:.12}}@keyframes medal-turn{50%{transform:rotateY(180deg) scale(1.12)}to{transform:rotateY(360deg)}}@keyframes crystal-shimmer{0%,100%{filter:brightness(1)}50%{filter:brightness(1.35) drop-shadow(0 0 5px #7dd3fc)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* university catalog inside the student cabinet */
.university-pane{gap:0;padding-bottom:40px}.university-cabinet-head{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,var(--soft),#e9f8f4)}.university-cabinet-head h2{margin:10px 0 5px;font-size:27px}.university-cabinet-head p{max-width:620px;margin:0;line-height:1.5}.university-cabinet-mark{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:20px;background:var(--card);color:var(--accent);font-size:32px;font-weight:900;box-shadow:0 10px 25px rgba(42,77,170,.1)}
.university-cabinet-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(150px,1fr) minmax(150px,1fr);gap:10px}.university-cabinet-filters label{margin:0;font-size:12px}.university-cabinet-filters input,.university-cabinet-filters select{margin-top:5px;background:var(--bg)}.university-cabinet-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 2px 10px}.university-cabinet-title h2{margin:0;font-size:21px}.university-cabinet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.university-cabinet-card{display:flex;min-width:0;flex-direction:column;margin:0}.university-card-head{display:flex;align-items:flex-start;gap:12px}.university-card-logo{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:var(--soft);color:var(--accent);font-size:11px;font-weight:900;text-align:center}.university-card-head h3{margin:1px 0 4px;font-size:16px;line-height:1.3}.university-card-head small{color:var(--muted)}.university-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0}.university-card-tags span{padding:4px 7px;border-radius:99px;background:var(--bg);color:var(--muted);font-size:9px}.university-professions{display:grid;gap:5px;margin-bottom:14px}.university-professions h4{margin:0 0 3px;font-size:12px}.profession-market{border:1px solid var(--line);border-radius:11px;background:var(--bg)}.profession-market summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;cursor:pointer;list-style:none}.profession-market summary::-webkit-details-marker{display:none}.profession-market summary b{font-size:11px}.profession-market summary span{flex:none;color:var(--accent);font-size:9px;font-weight:700}.profession-market[open] summary{border-bottom:1px solid var(--line)}.profession-market>div{padding:8px 10px}.profession-market p{margin:0;color:var(--muted);font-size:10px;line-height:1.45}.profession-market p+p{margin-top:6px}.profession-market strong{color:var(--ink)}.career-choice{margin-top:8px;padding:6px 8px;border:0;border-radius:8px;background:var(--accent2);color:var(--accent);font-size:10px;font-weight:800;cursor:pointer}.university-registry-note{margin:4px 0 14px;padding:10px;border-radius:11px;background:var(--bg);color:var(--muted);font-size:10px;line-height:1.45}.university-card-contact{display:grid;gap:3px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font-size:11px}.university-card-contact a,.university-data-note a{color:var(--accent);text-decoration:none}.university-card-actions{display:flex;gap:7px;margin-top:12px}.university-card-actions .btn{flex:1;padding:8px;font-size:11px;text-align:center;text-decoration:none}.university-cabinet-empty{text-align:center}.university-data-note{margin-top:12px;font-size:11px}.university-data-note p{line-height:1.5}.university-data-note>div{display:flex;flex-wrap:wrap;gap:15px}
.career-profile-card>h2{margin-bottom:5px}.career-profile-card>p{line-height:1.5}.career-market{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.career-market>div{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:14px;background:var(--bg)}.career-market small{color:var(--muted)}.career-market b{color:var(--accent)}.career-market span{color:var(--muted);font-size:10px;line-height:1.4}.career-subjects{display:flex;flex-wrap:wrap;gap:6px}.career-subjects span{padding:6px 9px;border-radius:99px;background:var(--accent2);color:var(--accent);font-size:11px;font-weight:700}.career-next{padding-left:20px;color:var(--muted);font-size:12px;line-height:1.7}.career-universities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.career-universities a{display:flex;flex-direction:column;padding:10px;border:1px solid var(--line);border-radius:12px;color:var(--text);text-decoration:none}.career-universities span{color:var(--muted);font-size:10px}
@media(max-width:720px){.university-cabinet-filters,.university-cabinet-grid,.career-market,.career-universities{grid-template-columns:1fr}.university-cabinet-mark{display:none}.profession-market summary{align-items:flex-start;flex-direction:column;gap:3px}.university-card-actions{flex-direction:column}}

@media(max-width:700px){
  .app{height:100svh;max-width:100%}.pane{padding:10px;overflow-x:hidden}.card{padding:13px;margin:9px 0}.row{max-width:100%}
  .practice-active #tutor-pane{display:block;overflow-y:auto;-webkit-overflow-scrolling:touch}.practice-active #practice{display:block;overflow:visible}.practice-active #msgs-practice{min-height:120px;overflow:visible}.practice-active #pr-compose{position:sticky;bottom:0;z-index:5}
  #diag-answer-row,.practice-answer{align-items:stretch}#diag-answer-row input,.practice-answer textarea{flex-basis:100%!important}.diag-review dl>div{grid-template-columns:1fr;gap:1px}.diag-review header{align-items:flex-start;flex-direction:column}
  input,select,textarea{font-size:16px}.compose{padding-bottom:max(10px,env(safe-area-inset-bottom))}
}

/* One navigation row, kept below the scrollable content and the answer composer. */
@media(max-width:700px){
  .student-page{--student-nav-height:68px}
  .student-page .app{height:var(--student-viewport-height,100dvh);padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .student-page .top,.student-page .compose{flex-shrink:0}
  .student-page .top{gap:8px}.student-page .top #hello{font-size:14px;overflow-wrap:anywhere}.student-page .top #logout{flex-shrink:0}
  .student-page .student-nav{order:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;min-height:calc(var(--student-nav-height) + env(safe-area-inset-bottom));padding:6px 2px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);border-bottom:0;box-shadow:0 -4px 18px rgba(29,44,90,.05)}
  .student-page .student-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:55px;padding:4px 2px;border:0;border-radius:10px;font-size:clamp(10px,2.7vw,12px);line-height:1.2;color:var(--muted);touch-action:manipulation}
  .student-page .student-nav button.on{color:var(--accent);background:var(--accent2);font-weight:700}
  .student-page .student-nav-icon{display:block;width:23px;height:23px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .student-page .student-nav-label{display:none}.student-page .student-nav-label-mobile{display:block;white-space:nowrap}
  .student-page .compose{padding-bottom:10px}
  .student-page .pane{scroll-padding-bottom:12px}
  .student-page .app-toast{bottom:calc(var(--student-nav-height) + env(safe-area-inset-bottom) + 12px)}
}

/* public marketing pages */
html:has(body.public-page),body.public-page{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth}
body.public-page{--ink:#14213d;--violet:#6254e7;--violet-dark:#4937c9;--mint:#38c7a5;background:#fbfbff;color:var(--ink)}
.magic-cursor{display:none;position:fixed;z-index:9999;top:0;left:0;width:48px;height:48px;pointer-events:none;opacity:0;transform:translate3d(-80px,-80px,0);transition:opacity .14s ease}.magic-cursor.visible{opacity:1}.magic-cursor svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 4px 5px rgba(55,39,135,.28));transform-origin:8px 9px;transition:transform .18s ease}.magic-cursor.casting svg{transform:rotate(-18deg) scale(1.08)}.wand-glow{fill:none;stroke:#dcd7ff;stroke-width:8;stroke-linecap:round}.wand-stick{fill:none;stroke:#6554dd;stroke-width:4;stroke-linecap:round}.wand-tip{fill:#ffd84d;stroke:#fff7c2;stroke-width:1}.wand-star{fill:#8c7cff}.magic-cursor circle{fill:#38c7a5}.cursor-spark{position:fixed;z-index:9998;display:block;pointer-events:none;color:#ffd84d;font-style:normal;font-size:14px;line-height:1;text-shadow:0 0 7px currentColor;animation:cursor-sparkle .7s cubic-bezier(.16,.8,.32,1) forwards}.cursor-spark.spark-2{color:#8c7cff;font-size:11px}.cursor-spark.spark-3{color:#38c7a5;font-size:9px}@keyframes cursor-sparkle{0%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotate(0)}18%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--spark-x)),calc(-50% + var(--spark-y))) scale(1.15) rotate(145deg)}}
@media (pointer:fine) and (prefers-reduced-motion:no-preference){body.landing-page.magic-cursor-ready,body.landing-page.magic-cursor-ready a,body.landing-page.magic-cursor-ready button{cursor:none}.landing-page.magic-cursor-ready .magic-cursor{display:block}}
.marketing-shell{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.marketing-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px max(24px,calc((100% - 1160px)/2));border-bottom:1px solid rgba(98,84,231,.1);background:rgba(251,251,255,.88);backdrop-filter:blur(18px)}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:17px;font-weight:800;text-decoration:none}.brand>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--violet),#8c7cff);color:#fff;font-size:15px;box-shadow:0 8px 22px rgba(98,84,231,.22)}
.marketing-header nav,.marketing-footer nav{display:flex;align-items:center;gap:24px}.marketing-header nav>a:not(.btn),.marketing-footer nav a{color:#566078;font-size:14px;font-weight:600;text-decoration:none}.marketing-header nav>a:not(.btn):hover,.marketing-footer nav a:hover{color:var(--violet)}
.btn-small{padding:9px 15px!important;border-radius:99px!important;background:var(--violet)!important}.btn-small:hover,.btn-small:focus-visible{background:var(--violet-dark)!important;color:#fff!important}.btn-large{padding:14px 22px;border-radius:14px;background:var(--violet);font-size:16px;text-decoration:none}.btn-large:hover{background:var(--violet-dark);color:#fff}
.marketing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);align-items:center;gap:60px;min-height:700px;padding-block:80px 100px}.eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--violet);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.eyebrow:before{content:"";width:22px;height:2px;background:currentColor}.hero-copy h1,.review-hero h1{max-width:760px;margin:18px 0 22px;font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.055em}.hero-copy h1 em{color:var(--violet);font-style:normal}.hero-lead{max-width:600px;margin:0;color:#5e6678;font-size:19px;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:32px}.text-link{color:var(--ink);font-size:14px;font-weight:750;text-decoration:none}.text-link span{display:inline-block;margin-left:4px;color:var(--violet)}.trust-row{display:flex;gap:22px;margin-top:28px;color:#667085;font-size:13px}.trust-row span:before{color:var(--mint)}
.product-visual{position:relative;min-height:540px}.visual-glow{position:absolute;inset:12% 0 5%;border-radius:50%;background:radial-gradient(circle,rgba(98,84,231,.2),rgba(56,199,165,.09) 42%,transparent 70%);filter:blur(7px)}.phone-card{position:absolute;z-index:2;top:20px;right:38px;width:min(360px,85%);padding:20px;border:1px solid rgba(98,84,231,.14);border-radius:32px;background:#fff;box-shadow:0 34px 80px rgba(56,50,126,.19);transform:rotate(2deg)}.phone-head{display:flex;align-items:center;gap:11px;padding-bottom:15px}.phone-head>div{display:flex;flex:1;flex-direction:column}.phone-head small{color:#8991a3;font-size:11px}.avatar-dot{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#eeeaff;color:var(--violet);font-weight:900}.online-dot{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(56,199,165,.12)}.lesson-progress{height:5px;margin-bottom:18px;border-radius:99px;background:#edeef4;overflow:hidden}.lesson-progress i{display:block;width:67%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--mint))}.chat-bubble{max-width:88%;margin:10px 0;padding:12px 14px;border-radius:16px;background:#f2f3f8;color:#4b5366;font-size:13px;line-height:1.45}.chat-bubble.tutor{border-bottom-left-radius:5px}.chat-bubble.child{margin-left:auto;border-bottom-right-radius:5px;background:var(--violet);color:#fff}.chat-bubble.accent-bubble{background:#edf9f5}.answer-bar{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding:12px 12px 12px 15px;border:1px solid #e7e8ee;border-radius:15px;color:#a0a5b0;font-size:12px}.answer-bar b{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:var(--violet);color:#fff;font-size:16px}.floating-card{position:absolute;z-index:3;padding:14px 16px;border:1px solid rgba(98,84,231,.12);border-radius:17px;background:rgba(255,255,255,.95);box-shadow:0 20px 45px rgba(56,50,126,.15);backdrop-filter:blur(10px)}.floating-card span,.floating-card small{display:block;color:#8b92a1;font-size:10px}.floating-card b{display:block;margin:4px 0;color:var(--ink);font-size:13px}.progress-card{top:85px;left:0;width:175px;transform:rotate(-4deg)}.progress-card>div{height:5px;margin-top:9px;border-radius:99px;background:#eceef3}.progress-card i{display:block;width:80%;height:100%;border-radius:inherit;background:var(--mint)}.parent-card{right:0;bottom:46px;width:205px;transform:rotate(-2deg)}
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);width:min(1240px,calc(100% - 40px));margin:0 auto;padding:30px 40px;border:1px solid rgba(98,84,231,.1);border-radius:24px;background:#fff;box-shadow:0 18px 55px rgba(56,50,126,.07)}.stats-strip>div{display:flex;flex-direction:column;align-items:center;padding:7px 20px;text-align:center}.stats-strip>div+div{border-left:1px solid #eaebf1}.stats-strip b{color:var(--violet);font-size:28px}.stats-strip span{color:#7c8495;font-size:12px}
.marketing-section{padding-block:120px}.section-heading{max-width:720px;margin:0 auto 54px;text-align:center}.section-heading .eyebrow:before{display:none}.section-heading h2,.split-copy h2,.pilot-cta h2,.review-status h2,.review-empty h2{margin:14px 0 16px;font-size:clamp(32px,4vw,50px);line-height:1.12;letter-spacing:-.04em}.section-heading p,.split-copy>p{color:#697184;font-size:17px;line-height:1.65}.steps-grid,.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps-grid article,.feature-grid article{padding:26px;border:1px solid #ececf4;border-radius:22px;background:#fff;transition:transform .2s ease,box-shadow .2s ease}.steps-grid article:hover,.feature-grid article:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(56,50,126,.09)}.step-number{color:var(--violet);font-size:12px;font-weight:900}.steps-grid h3,.feature-grid h3{margin:30px 0 9px;font-size:18px}.steps-grid p,.feature-grid p,.review-criteria p{margin:0;color:#72798b;font-size:14px;line-height:1.6}
.split-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;padding-block:60px 130px}.parent-preview{padding:24px;border:1px solid rgba(98,84,231,.14);border-radius:28px;background:linear-gradient(155deg,#fff,#f2f0ff);box-shadow:0 28px 70px rgba(56,50,126,.12)}.preview-top{display:flex;justify-content:space-between;color:#81889a;font-size:12px}.preview-focus{margin-top:25px;padding:18px;border-radius:18px;background:#fff}.preview-focus small,.preview-next span{display:block;color:var(--violet);font-size:10px;font-weight:800;text-transform:uppercase}.preview-focus b{display:block;margin:6px 0;font-size:21px}.preview-focus p{margin:0;color:#71798a;font-size:13px;line-height:1.55}.preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-block:12px}.preview-metrics>div{display:flex;flex-direction:column;padding:13px;border-radius:15px;background:#fff}.preview-metrics b{font-size:22px}.preview-metrics span{color:#858c9b;font-size:10px}.preview-next{padding:16px;border-radius:16px;background:#e5f7f1}.preview-next b{display:block;margin-top:5px;font-size:13px}.check-list{display:grid;gap:12px;margin:26px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:29px;color:#525b70}.check-list li:before{content:"✓";position:absolute;left:0;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dcf7ee;color:#149b7c;font-size:11px;font-weight:900}
.feature-grid{grid-template-columns:repeat(3,1fr)}.feature-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#eeeaff;color:var(--violet);font-size:21px;font-weight:900}.feature-grid h3{margin-top:22px}.pilot-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:90px;padding:54px 60px;border-radius:30px;background:linear-gradient(135deg,#5142cf,#7568ed 62%,#4dbea6);color:#fff}.pilot-cta .eyebrow{color:#dcd8ff}.pilot-cta h2{margin-bottom:8px}.pilot-cta p{max-width:650px;margin:0;color:#e7e5ff}.light-button{flex:none;background:#fff!important;color:var(--violet)!important;box-shadow:none}.marketing-footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding-block:28px;border-top:1px solid #e8e9f1}.marketing-footer p{margin:0;color:#848b9a;font-size:12px}
.motivation-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-block:65px 130px}.motivation-copy h2,.career-card h2,.university-roadmap h2{margin:14px 0 17px;font-size:clamp(32px,4vw,50px);line-height:1.12;letter-spacing:-.04em}.motivation-copy>p,.career-card p,.university-roadmap p{color:#697184;font-size:17px;line-height:1.65}.reward-showcase{position:relative;min-height:440px;padding:30px;border-radius:32px;background:radial-gradient(circle at 80% 15%,rgba(255,212,59,.25),transparent 27%),linear-gradient(145deg,#eeeaff,#e8f9f4)}.puzzle-preview{position:absolute;z-index:1;top:38px;left:35px;width:72%;padding:22px;border:1px solid rgba(98,84,231,.12);border-radius:22px;background:#fff;box-shadow:0 20px 50px rgba(56,50,126,.12);transform:rotate(-2deg)}.puzzle-preview span,.puzzle-preview small,.trophy-preview small,.medal-preview small{display:block;color:#8a91a1;font-size:11px}.puzzle-preview b{display:block;margin:12px 0;font-size:18px;line-height:1.4}.trophy-preview,.medal-preview{position:absolute;z-index:2;display:flex;align-items:center;gap:14px;padding:15px 17px;border:1px solid rgba(98,84,231,.12);border-radius:18px;background:#fff;box-shadow:0 18px 38px rgba(56,50,126,.14)}.trophy-preview{right:25px;bottom:115px;transform:rotate(3deg)}.medal-preview{left:28px;bottom:35px;transform:rotate(-2deg)}.trophy-preview span,.medal-preview span{display:flex;flex-direction:column}.trophy-preview em{color:#8a91a1;font-size:10px;font-style:normal}.landing-award-art{display:grid;place-items:center;flex:none;width:64px;height:72px}.landing-award-art .trophy-svg{width:64px;height:76px}.landing-award-art .medal-svg{width:58px;height:70px}
.career-section{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:16px;padding-bottom:110px}.career-card{display:grid;grid-template-columns:auto 1fr;gap:24px;padding:42px;border:1px solid #e9e8f5;border-radius:28px;background:#fff}.career-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#e8f8f3;color:#18987b;font-size:25px;font-weight:900}.career-card h2{font-size:clamp(30px,3.5vw,46px)}.career-example{align-self:stretch;padding:30px;border-radius:28px;background:#171d33;color:#fff}.career-example>span{color:#9e96ff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.career-example p{margin:60px 0 0;font-size:18px;line-height:1.6}
.university-roadmap{display:grid;grid-template-columns:1fr minmax(340px,.75fr);align-items:center;gap:60px;margin-bottom:110px;padding:50px;border:1px dashed rgba(98,84,231,.35);border-radius:30px;background:linear-gradient(135deg,#faf9ff,#f0fbf8)}.roadmap-label{display:inline-flex;padding:7px 11px;border-radius:99px;background:#e9e5ff;color:var(--violet);font-size:11px;font-weight:900;text-transform:uppercase}.university-link{display:inline-block;margin-top:7px;color:var(--violet)}.university-mock{display:grid;gap:10px;padding:20px;border:1px solid #e8e7f1;border-radius:20px;background:#fff;box-shadow:0 18px 45px rgba(56,50,126,.08)}.university-mock>div{display:flex;flex-direction:column;padding:12px 14px;border-radius:12px;background:#f6f6fa}.university-mock span,.university-mock small{color:#8b92a1;font-size:10px}.university-mock b{margin-top:3px;font-size:13px}.university-search-button{display:block;padding:12px;border-radius:12px;background:var(--violet);color:#fff!important;font-weight:800;text-align:center;text-decoration:none}.university-mock small{line-height:1.45}
.pricing-section{padding-top:30px}.pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pricing-grid article{position:relative;display:flex;min-height:215px;flex-direction:column;padding:25px;border:1px solid #e7e8f1;border-radius:23px;background:#fff;box-shadow:0 14px 38px rgba(56,50,126,.06)}.pricing-grid article>span{color:var(--violet);font-size:12px;font-weight:900;text-transform:uppercase}.pricing-grid h3{margin:18px 0 14px;font-size:27px}.pricing-grid h3 small{color:#7d8494;font-size:13px;font-weight:600}.pricing-grid p{margin:0;color:#687185;font-size:14px;line-height:1.5}.pricing-grid b{margin-top:auto;padding-top:20px;font-size:13px}.pricing-featured{border-color:#8f84ef!important;background:linear-gradient(155deg,#fff,#f2f0ff)!important}.pricing-featured:after{content:"Популярный";position:absolute;top:18px;right:18px;padding:5px 8px;border-radius:99px;background:#e8e4ff;color:var(--violet);font-size:9px;font-weight:900;text-transform:uppercase}.pricing-terms{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:22px;color:#687185;font-size:13px}.pricing-terms p{margin:0}.pricing-terms b{color:var(--ink)}
.legal-main{padding-block:72px 110px}.legal-hero{max-width:820px;margin-bottom:34px}.legal-hero h1{margin:16px 0 18px;font-size:clamp(38px,6vw,68px);line-height:1.05;letter-spacing:-.05em}.legal-hero p{max-width:720px;color:#667085;font-size:17px;line-height:1.65}.legal-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.65fr);align-items:start;gap:22px}.legal-content,.legal-details{padding:30px;border:1px solid #e7e8f1;border-radius:24px;background:#fff;box-shadow:0 16px 40px rgba(56,50,126,.06)}.legal-content{display:grid;gap:28px}.legal-content section{scroll-margin-top:100px}.legal-content h2,.legal-details h2{margin:0 0 12px;font-size:21px}.legal-content p,.legal-content li,.legal-details p{color:#596276;font-size:15px;line-height:1.65}.legal-content p{margin:0}.legal-content ul{display:grid;gap:8px;margin:0;padding-left:20px}.legal-details{position:sticky;top:92px}.legal-details dl{display:grid;gap:15px;margin:0}.legal-details dt{color:#8a91a1;font-size:11px;font-weight:800;text-transform:uppercase}.legal-details dd{margin:4px 0 0;color:#272c38;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.legal-details a{color:var(--violet)}.legal-updated{margin-top:22px!important;padding-top:18px;border-top:1px solid #ececf3;font-size:12px!important}
.join-page{background:radial-gradient(circle at 50% -10%,#ebe8ff,transparent 40%),#fbfbff!important}.join-wrap{padding-top:36px}.join-back{display:inline-block;margin-bottom:10px;color:var(--violet);font-size:13px;font-weight:700;text-decoration:none}
.password-field{position:relative;display:block}.password-field input{padding-right:54px}.password-visibility{position:absolute;right:8px;top:50%;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:21px;line-height:1;transform:translateY(-50%);cursor:pointer}.password-visibility:hover{background:var(--accent2);color:var(--accent)}.vk-confirmation{margin-top:18px;padding:18px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:16px;background:var(--accent2)}.vk-confirmation code{display:inline-block;padding:8px 12px;border-radius:10px;background:#fff;font-size:20px;font-weight:800;letter-spacing:.08em}.vk-confirmation.connected{border-color:var(--ok);background:#eefaf2}.vk-confirmation .row{margin-top:12px}
.review-main{padding-block:90px 120px}.review-hero{max-width:850px;padding-bottom:70px}.review-hero h1{font-size:clamp(46px,7vw,78px)}.review-hero p{max-width:720px;color:#667084;font-size:19px;line-height:1.65}.review-status{padding:48px;border:1px solid #ececf4;border-radius:28px;background:#fff}.status-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:99px;background:#e6f8f3;color:#15846b;font-size:11px;font-weight:800;text-transform:uppercase}.status-badge i{width:7px;height:7px;border-radius:50%;background:#28bd99;box-shadow:0 0 0 4px rgba(40,189,153,.14)}.review-status h2{max-width:650px}.review-criteria{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:35px}.review-criteria article{padding:22px;border-radius:18px;background:#f7f7fb}.review-criteria b{display:block;margin-bottom:7px}.review-empty{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:25px;margin-top:22px;padding:36px 42px;border-radius:26px;background:#eeebff}.review-empty h2{margin:0 0 8px;font-size:28px}.review-empty p{max-width:650px;margin:0;color:#686f82}.quote-mark{align-self:start;color:var(--violet);font:80px/.8 Georgia,serif}
@media(max-width:900px){.marketing-header nav>a:not(.btn){display:none}.marketing-hero{grid-template-columns:1fr;gap:30px;padding-top:60px}.hero-copy{max-width:720px}.product-visual{width:min(570px,100%);margin:auto}.steps-grid{grid-template-columns:repeat(2,1fr)}.split-section,.motivation-section{grid-template-columns:1fr;gap:48px}.split-copy{grid-row:1}.career-section,.university-roadmap,.legal-layout{grid-template-columns:1fr}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-details{position:static}.review-empty{grid-template-columns:auto 1fr}.review-empty .btn{grid-column:2;width:max-content}.marketing-footer{grid-template-columns:1fr auto}.marketing-footer p{display:none}}
@media(max-width:650px){.marketing-shell{width:min(100% - 28px,1160px)}.marketing-header{padding:12px 14px}.brand{font-size:15px}.marketing-header nav{gap:10px}.marketing-hero{min-height:auto;padding-block:55px 65px}.hero-copy h1{font-size:45px}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{align-items:flex-start;flex-direction:column;gap:8px}.product-visual{min-height:480px}.phone-card{right:0;width:88%;padding:16px}.progress-card{top:65px}.parent-card{right:2px;bottom:30px}.stats-strip{grid-template-columns:repeat(2,1fr);padding:22px 12px}.stats-strip>div:nth-child(3){border-left:0}.stats-strip>div:nth-child(n+3){border-top:1px solid #eaebf1}.marketing-section{padding-block:82px}.steps-grid,.feature-grid,.pricing-grid{grid-template-columns:1fr}.split-section{padding-bottom:90px}.preview-metrics{grid-template-columns:1fr}.motivation-section{padding-bottom:90px}.reward-showcase{min-height:430px;padding:20px}.puzzle-preview{left:18px;width:84%}.trophy-preview{right:12px}.medal-preview{left:12px}.career-section{padding-bottom:82px}.career-card{grid-template-columns:1fr;padding:28px 23px}.career-example{padding:25px}.career-example p{margin-top:30px}.university-roadmap{gap:30px;margin-bottom:82px;padding:30px 22px}.legal-main{padding-block:48px 80px}.legal-content,.legal-details{padding:22px}.pilot-cta{align-items:flex-start;flex-direction:column;padding:34px 26px}.pilot-cta .btn{width:100%;text-align:center}.marketing-footer{grid-template-columns:1fr}.marketing-footer nav{align-items:flex-start;flex-direction:column;gap:12px}.review-main{padding-block:60px 80px}.review-hero h1{font-size:46px}.review-hero p{font-size:16px}.review-status{padding:27px 20px}.review-criteria{grid-template-columns:1fr}.review-empty{grid-template-columns:1fr;padding:28px}.review-empty .quote-mark{display:none}.review-empty .btn{grid-column:auto;width:100%;text-align:center}}
.marketing-footer{grid-template-columns:auto minmax(260px,1fr) auto}.footer-business{display:flex;min-width:0;flex-direction:column;gap:3px;color:#687185;font-size:12px;line-height:1.45}.footer-business b{color:#323847;font-size:13px}.footer-business a{width:max-content;color:var(--violet);text-decoration:none}.footer-business a:hover{text-decoration:underline}
.consent-list{display:grid;gap:10px;margin:18px 0}.consent-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);line-height:1.45;cursor:pointer}.consent-option input[type=checkbox]{width:19px;height:19px;margin:1px 0 0;accent-color:var(--accent)}.consent-option a{color:var(--accent);font-weight:700}.consent-option b{font-size:12px}.consent-option:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent);outline-offset:2px}.consent-option:has(input:checked){border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent2) 58%,var(--card))}
@media(max-width:900px){.marketing-footer{grid-template-columns:auto 1fr}.marketing-footer nav{grid-column:1/-1}.footer-business{align-items:flex-end;text-align:right}}
@media(max-width:650px){.marketing-footer{grid-template-columns:1fr}.footer-business{align-items:flex-start;text-align:left}.marketing-footer nav{grid-column:auto}}
.receipt-email{display:grid;gap:5px;max-width:460px;margin:0}.receipt-email input{margin:0;background:#fff}.receipt-email small{color:var(--muted);font-size:11px}
.parent-panel[hidden],.parent-onboarding[hidden]{display:none!important}
.parent-nav{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0;padding-bottom:14px;border-bottom:1px solid var(--line)}
.parent-nav button{border:1px solid var(--line);border-radius:12px;padding:11px 15px;background:#fff;color:var(--text);font:inherit;font-weight:650;cursor:pointer}
.parent-nav button[aria-current=true]{background:var(--accent);border-color:var(--accent);color:#fff}
.parent-nav button:focus-visible{outline:3px solid #7b89ff;outline-offset:2px}
.parent-panel{min-width:0}.parent-panel>.card{margin-top:18px}.parent-panel>.messenger-connect{margin-top:0}
.notification-preferences{display:grid;gap:10px;margin-block:18px}.notification-preferences label{display:flex;align-items:flex-start;gap:10px;color:var(--text);line-height:1.5}
.notification-preferences input[type=checkbox]{width:19px;height:19px;flex:0 0 19px;margin:2px 0}.notification-preferences .btn{justify-self:start}
@media(max-width:650px){.parent-nav{gap:6px}.parent-nav button{font-size:13px;padding:10px}.parent-panel .child-share{flex-wrap:wrap}.parent-panel .card{padding:14px}}
