:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#28253b;background:#f7f6fc;font-synthesis:none;--ink: #28253b;--muted: #74718a;--line: #e8e5f1;--surface: #ffffff;--surface-soft: #f7f5fd;--violet: #6152db;--violet-dark: #493abc;--violet-soft: #eeeafd;--mint: #27b58b;--mint-soft: #e0f8f0;--orange: #f59c42;--orange-soft: #fff0dc;--pink: #e95d94;--pink-soft: #ffe6ef;--blue: #438fe4;--blue-soft: #e5f1ff;--danger: #d84b62;--shadow-sm: 0 8px 24px rgba(48, 38, 92, .07);--shadow-md: 0 18px 50px rgba(48, 38, 92, .11)}*{box-sizing:border-box}html{min-width:320px;background:#f7f6fc}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(97,82,219,.28);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brandMark strong{font-family:ui-rounded,Avenir Next Rounded,Arial Rounded MT Bold,Inter,sans-serif}.appShell{min-height:100vh}.pageCanvas{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:44px 0 70px}.eyebrow{margin:0 0 7px;color:var(--violet);font-size:11px;font-weight:900;letter-spacing:.11em}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:10px max(24px,calc((100vw - 1220px)/2));border-bottom:1px solid rgba(232,229,241,.85);background:#ffffffe0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar__brand{justify-self:start;text-decoration:none}.brandMark{display:inline-flex;align-items:center;gap:10px;color:var(--ink)}.brandMark strong{font-size:22px;font-weight:900;letter-spacing:-.04em}.brandMark__face{position:relative;display:inline-block;width:40px;height:40px;border-radius:14px 14px 17px 13px;background:var(--violet);box-shadow:inset 0 -5px #22177b2e,0 7px 16px #6152db33;transform:rotate(-3deg)}.brandMark--compact .brandMark__face{width:68px;height:68px;border-radius:24px 24px 28px 20px}.brandMark__eye{position:absolute;top:13px;width:5px;height:7px;border-radius:50%;background:#fff}.brandMark--compact .brandMark__eye{top:23px;width:7px;height:10px}.brandMark__eye--left{left:11px}.brandMark__eye--right{right:11px}.brandMark--compact .brandMark__eye--left{left:20px}.brandMark--compact .brandMark__eye--right{right:20px}.brandMark__smile{position:absolute;left:15px;top:24px;width:11px;height:6px;border:2px solid #fff;border-top:0;border-radius:0 0 12px 12px}.brandMark--compact .brandMark__smile{left:26px;top:41px;width:17px;height:9px;border-width:3px;border-top:0}.brandMark__spark{position:absolute;color:#ffdc6f;right:-7px;top:-5px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.14))}.roleNav{display:flex;gap:5px;padding:5px;border-radius:16px;background:#f4f2fa}.roleNav__link{display:flex;align-items:center;gap:7px;min-width:92px;justify-content:center;padding:9px 13px;border-radius:12px;color:var(--muted);text-decoration:none;font-size:13px;font-weight:800}.roleNav__link--active{color:var(--violet);background:#fff;box-shadow:0 4px 12px #30265c14}.prototypeTools{justify-self:end;display:flex;align-items:center;gap:8px}.prototypeBadge,.chapterPill,.statusPill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800}.prototypeBadge{color:#6e6980;background:#f1eff7}.iconButton{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.mobileRoleNav{display:none}.routeLoading{display:grid;min-height:60vh;place-items:center;color:var(--violet);font-weight:900}.routeError{display:flex;min-height:100vh;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.routeError>span{display:grid;place-items:center;width:64px;height:64px;margin-bottom:18px;border-radius:20px;color:#b86217;background:var(--orange-soft)}.routeError h1{margin-bottom:7px}.routeError>p:not(.eyebrow){max-width:520px;color:var(--muted)}.primaryButton,.secondaryButton,.textButton{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;text-decoration:none;font-weight:900}.primaryButton{min-height:48px;padding:13px 20px;border-radius:15px;color:#fff;background:var(--violet);box-shadow:inset 0 -4px #261a8947,0 9px 18px #6152db38}.primaryButton:hover{background:var(--violet-dark);transform:translateY(-1px)}.primaryButton--light{color:var(--violet-dark);background:#fff;box-shadow:inset 0 -4px #ddd8f3,0 10px 24px #291c7d33}.primaryButton--light:hover{background:#faf9ff}.secondaryButton{min-height:42px;padding:10px 14px;border:1px solid var(--line);border-radius:13px;color:#5f5b72;background:#fff}.secondaryButton:hover{border-color:#cfc9e2;color:var(--violet)}.secondaryButton:disabled,.iconButton:disabled{opacity:.48;cursor:not-allowed}.secondaryButton--full{width:100%}.textButton{padding:5px 0;color:var(--violet);background:transparent}.studentWelcome{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:30px}.studentWelcome h1{margin:0 0 7px;font-size:clamp(30px,4vw,43px);line-height:1.05;letter-spacing:-.045em}.studentWelcome__lead{margin:0;color:var(--muted);font-size:16px}.studentStats{display:flex;gap:10px}.studentStat{display:flex;align-items:center;gap:9px;min-width:118px;padding:12px 15px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.studentStat svg{width:24px}.studentStat span{display:flex;flex-direction:column;font-size:12px;color:var(--muted)}.studentStat strong{color:var(--ink);font-size:18px}.studentStat--streak svg{color:var(--orange);fill:#ffc46b}.studentStat--xp svg{color:var(--violet);fill:#e8e3ff}.studentLayout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}.learningColumn{min-width:0}.nextLessonCard{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;overflow:hidden;padding:25px 26px;border-radius:27px;color:#fff;background:linear-gradient(135deg,#5e50d7,#7667eb 65%,#8477f2);box-shadow:0 19px 42px #5343c240}.nextLessonCard:after{content:"";position:absolute;width:190px;height:190px;right:17%;top:-110px;border:28px solid rgba(255,255,255,.07);border-radius:50%}.nextLessonCard__mascot{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px}.nextLessonCard__mascot .brandMark__face{background:#fff}.nextLessonCard__mascot .brandMark__eye{background:var(--violet)}.nextLessonCard__mascot .brandMark__smile{border-color:var(--violet)}.nextLessonCard__mascot span{padding:4px 8px;border-radius:8px;color:var(--violet-dark);background:#fff;font-size:10px;font-weight:900;transform:rotate(-2deg)}.nextLessonCard__content{position:relative;z-index:1}.nextLessonCard .eyebrow{color:#ddd8ff}.nextLessonCard h2{margin:0 0 3px;font-size:25px}.nextLessonCard p{margin-bottom:13px;color:#eeecff}.nextLessonCard .primaryButton{position:relative;z-index:1}.nextLessonCard--complete{display:block;text-align:center}.sessionMethod{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 2px 0}.sessionMethod div{display:flex;align-items:center;gap:8px;padding:11px;border:1px solid var(--line);border-radius:14px;background:#fff}.sessionMethod span{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:8px;color:#fff;background:var(--violet);font-size:11px;font-weight:900}.sessionMethod strong{font-size:11px}.progressBar__meta{display:flex;justify-content:space-between;gap:15px;margin-bottom:7px;color:var(--muted);font-size:12px;font-weight:700}.progressBar__track{height:10px;overflow:hidden;border-radius:99px;background:#eae7f3}.progressBar__track span{display:block;height:100%;border-radius:inherit;background:var(--violet);transition:width .35s ease}.progressBar--mint .progressBar__track span{background:var(--mint)}.progressBar--orange .progressBar__track span{background:var(--orange)}.nextLessonCard .progressBar__meta{color:#eeecff}.nextLessonCard .progressBar__track{background:#ffffff2e}.nextLessonCard .progressBar__track span{background:#fff}.sectionHeading{display:flex;justify-content:space-between;align-items:end;margin:38px 4px 15px}.sectionHeading h2{margin:0;font-size:25px}.chapterPill{color:var(--violet);background:var(--violet-soft)}.reinforcementPlan{display:grid;gap:11px}.sessionCard{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:86px;padding:13px 16px;border:1px solid var(--line);border-radius:20px;color:inherit;background:#fff;box-shadow:var(--shadow-sm);text-decoration:none}a.sessionCard{transition:transform .18s ease,border-color .18s ease}a.sessionCard:hover{transform:translateY(-2px);border-color:#cfc8f3}.sessionCard__number{display:grid;place-items:center;width:51px;height:51px;border-radius:17px;color:#fff;background:var(--violet);font-family:ui-rounded,sans-serif;font-size:20px;font-weight:900;box-shadow:inset 0 -4px #1e166e33}.sessionCard__number--completed{background:var(--mint)}.sessionCard__number--locked{color:#8c879c;background:#e6e3eb;box-shadow:none}.sessionCard__number--review{color:#ae631f;background:var(--orange-soft);box-shadow:none}.sessionCard__content{display:flex;min-width:0;flex-direction:column;gap:2px}.sessionCard__content small{color:var(--violet);font-size:10px;font-weight:900;letter-spacing:.07em}.sessionCard__content strong{font-family:ui-rounded,sans-serif;font-size:16px}.sessionCard__content>span{color:var(--muted);font-size:11px}.sessionCard__status{max-width:135px;color:var(--muted);font-size:10px;font-weight:800;text-align:right}.sessionCard--current{border:2px solid #cfc7fa;background:#f9f7ff}.sessionCard--locked{opacity:.6;box-shadow:none}.sessionCard--review{border-style:dashed;background:#fffcf8;box-shadow:none}.sessionCard--due{border-style:solid;border-color:#f2bd68;color:inherit;background:linear-gradient(135deg,#fff9ee,#fff4d8);text-decoration:none;box-shadow:0 10px 24px #da8b211f}.sessionCard--due:hover{transform:translateY(-2px);box-shadow:0 14px 28px #da8b212b}.sessionCard--due .sessionCard__status{color:#a65b16}.studentAside{display:flex;flex-direction:column;gap:15px;position:sticky;top:95px}.asideCard{padding:20px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.asideCard__icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:15px;border-radius:14px}.asideCard__icon--mint{color:#07805f;background:var(--mint-soft)}.asideCard__icon--orange{color:#c66a18;background:var(--orange-soft)}.asideCard h2{margin:0 0 5px;font-size:18px}.asideCard>p{margin:12px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.weeklyDots{display:flex;gap:8px;margin-top:17px}.weeklyDots span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;color:#9691a7;background:#f2f0f7;font-size:12px;font-weight:900}.weeklyDots span.isDone{color:#fff;background:var(--mint);box-shadow:inset 0 -3px #005c442b}.efficiencyNote{display:flex;gap:11px;padding:16px;border-radius:18px;color:#5d5872;background:var(--violet-soft);font-size:12px;line-height:1.45}.efficiencyNote svg{flex:0 0 auto;color:var(--violet)}.efficiencyNote p{margin:0}.currentCourseCard__status{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:7px 10px;border-radius:10px;color:#08795c;background:var(--mint-soft);font-size:11px;font-weight:900}.appShell:has(.lessonPage)>.topbar,.appShell:has(.lessonComplete)>.topbar,.appShell:has(.sessionBriefing)>.topbar,.appShell:has(.lessonPage)>.mobileRoleNav,.appShell:has(.lessonComplete)>.mobileRoleNav,.appShell:has(.sessionBriefing)>.mobileRoleNav{display:none}.sessionBriefing{position:relative;width:min(760px,calc(100% - 36px));min-height:100vh;margin:0 auto;padding:28px 0 48px;text-align:center}.sessionBriefing>.lessonClose{position:absolute;left:0;top:28px}.sessionBriefing__hero{padding:35px 40px 27px}.sessionBriefing__mascot{margin-bottom:15px}.sessionBriefing__hero h1{margin:0 0 8px;font-size:clamp(34px,6vw,50px);letter-spacing:-.05em}.sessionBriefing__hero>p:not(.eyebrow){max-width:610px;margin:0 auto;color:var(--muted);font-size:17px;line-height:1.55}.sessionBriefing__meta{display:flex;justify-content:center;gap:10px;margin-top:18px}.sessionBriefing__meta span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:12px;color:#625d74;background:#eeecf5;font-size:12px;font-weight:800}.sessionBriefing__plan{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:5px 0 24px;padding:18px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm);text-align:left}.sessionBriefing__plan h2{grid-column:1 / -1;margin:0 0 4px;font-size:18px;text-align:center}.sessionBriefing__plan>div{display:flex;flex-direction:column;gap:5px;padding:12px 8px;border-radius:15px;background:#f7f5fb}.sessionBriefing__plan>div>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:var(--violet);background:var(--violet-soft)}.sessionBriefing__plan strong{font-size:11px}.sessionBriefing__plan small{color:var(--muted);font-size:9px;line-height:1.35}.sessionBriefing__start{min-width:250px}.sessionBriefing__promise{margin:12px 0 0;color:var(--muted);font-size:11px}.reviewPromise{display:flex;gap:14px;align-items:flex-start;max-width:610px;margin:0 auto 25px;padding:18px;border:1px solid #f4d394;border-radius:20px;text-align:left;background:var(--orange-soft)}.reviewPromise>svg{flex:0 0 auto;color:#b86618}.reviewPromise strong{display:block;margin-bottom:4px}.reviewPromise p{margin:0;color:#6f593f;font-size:13px;line-height:1.5}.sessionPhaseBadge--review{color:#9c5719;background:var(--orange-soft)}.reviewComplete>svg{color:var(--orange)}.lessonPage{width:min(820px,calc(100% - 36px));min-height:100vh;margin:0 auto;padding:28px 0 160px}.lessonPage--empty{display:grid;place-content:center;text-align:center;min-height:80vh}.lessonHeader{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:54px}.lessonClose{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#77728a;background:#efedf5}.lessonProgress{height:13px;overflow:hidden;border-radius:99px;background:#e8e5f1}.lessonProgress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),#5cd3ad);transition:width .35s ease}.lessonCounter{color:var(--muted);font-size:13px;font-weight:800}.exerciseCard{max-width:700px;margin:0 auto}.sessionPhaseBadge{display:inline-flex;align-items:center;gap:7px;margin-bottom:15px;padding:8px 11px;border-radius:11px;color:#08775a;background:var(--mint-soft);font-size:11px;font-weight:900}.exerciseCard__topline{display:flex;justify-content:space-between;margin-bottom:14px}.exerciseType{color:var(--violet);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.exercisePoints{color:#bf6c19;font-size:12px;font-weight:900}.exerciseCard h1{margin-bottom:12px;font-size:clamp(29px,5vw,42px);letter-spacing:-.045em}.exercisePrompt{margin-bottom:22px;color:#4e4a5f;font-size:clamp(18px,3vw,23px);line-height:1.45}.mathSupport{margin:0 0 24px;padding:22px;border:2px solid #ddd7fa;border-radius:20px;color:var(--violet-dark);background:#f3f0ff;font-family:ui-rounded,sans-serif;font-size:20px;font-weight:900;text-align:center;white-space:pre-wrap}.recapCard{display:flex;gap:11px;margin:0 0 18px;padding:15px;border-radius:16px;color:#4d4770;background:var(--violet-soft)}.recapCard svg{flex:0 0 auto;color:var(--violet)}.recapCard p{margin:0;line-height:1.45}.choiceList{display:grid;gap:12px}.choiceButton{display:flex;align-items:center;gap:14px;width:100%;min-height:62px;padding:10px 16px;border:2px solid var(--line);border-bottom-width:4px;border-radius:17px;color:#484458;background:#fff;cursor:pointer;font-weight:800;text-align:left}.choiceButton>span{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;color:#7a758d;background:#f2f0f7}.choiceButton:hover{border-color:#c9c2ee;background:#fbfaff}.choiceButton--selected{border-color:var(--violet);color:var(--violet-dark);background:var(--violet-soft)}.choiceButton--selected>span{color:#fff;background:var(--violet)}.answerField{display:block;margin-top:8px}.answerField>span{display:block;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.answerField input{width:100%;min-height:70px;padding:13px 18px;border:2px solid var(--line);border-bottom-width:4px;border-radius:18px;color:var(--ink);background:#fff;font-family:ui-rounded,sans-serif;font-size:23px;font-weight:800}.answerField input:focus{border-color:var(--violet);outline:0}.hintButton{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:8px 0;border:0;color:#827c94;background:transparent;cursor:pointer;font-weight:800}.hintButton:hover{color:var(--violet)}.hintCard{display:flex;gap:11px;align-items:flex-start;margin-top:10px;padding:15px 17px;border-radius:16px;color:#6f511e;background:var(--orange-soft)}.hintCard svg{flex:0 0 auto}.hintCard p{margin:0;line-height:1.5}.feedbackDock{position:fixed;z-index:10;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:112px;padding:20px max(28px,calc((100vw - 820px)/2));border-top:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.feedbackDock--correct{border-color:#bdebdc;background:#e6f9f3f5}.feedbackDock--incorrect{border-color:#f3ced5;background:#fff0f3f5}.feedbackDock__message{display:flex;align-items:flex-start;gap:13px}.feedbackDock__icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:14px;color:#fff;background:var(--danger)}.feedbackDock--correct .feedbackDock__icon{background:var(--mint)}.feedbackDock__message strong{display:block;margin-bottom:3px;font-family:ui-rounded,sans-serif;font-size:18px}.feedbackDock__message p{max-width:570px;margin:0;color:#656074;line-height:1.45}.lessonEncouragement,.emptyAnswerMessage{margin:0;color:var(--muted);font-size:13px}.emptyAnswerMessage{color:var(--danger);font-weight:700}.lessonComplete{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:48px 20px;overflow:hidden;text-align:center}.lessonComplete__mascot{margin-bottom:16px;animation:mascotBounce .8s ease both}.lessonComplete>svg{color:var(--orange)}.lessonComplete h1{margin:4px 0 7px;font-size:clamp(34px,6vw,52px);letter-spacing:-.05em}.lessonComplete>p:not(.eyebrow){max-width:520px;color:var(--muted);font-size:17px}.completionStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(600px,100%);margin:20px 0 28px}.completionStats div{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.completionStats strong{font-family:ui-rounded,sans-serif;font-size:21px}.completionStats span{color:var(--muted);font-size:12px}.celebrationBurst span{position:absolute;color:var(--orange);font-size:24px;animation:floatIn 1.2s ease both}.celebrationBurst span:nth-child(1){left:16%;top:19%}.celebrationBurst span:nth-child(2){right:18%;top:25%;color:var(--mint);animation-delay:.1s}.celebrationBurst span:nth-child(3){left:24%;bottom:22%;color:var(--pink);animation-delay:.2s}.celebrationBurst span:nth-child(4){right:22%;bottom:18%;color:var(--violet);animation-delay:.3s}@keyframes mascotBounce{0%{transform:translateY(20px) scale(.8);opacity:0}60%{transform:translateY(-8px) scale(1.04)}to{transform:none;opacity:1}}@keyframes floatIn{0%{transform:translateY(25px) rotate(-20deg);opacity:0}to{transform:none;opacity:1}}.dashboardPageHeader{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:28px}.dashboardPageHeader h1{margin:0 0 5px;font-size:clamp(30px,4vw,42px);letter-spacing:-.045em}.dashboardPageHeader>div>p:last-child{margin:0;color:var(--muted)}.dashboardPanel{padding:23px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}.panelHeading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.panelHeading h2{margin:0;font-size:21px}.statusPill{color:#5e5a70;background:#f0eef5}.statusPill--good{color:#0c775a;background:var(--mint-soft)}.parentHero{display:grid;grid-template-columns:1.05fr 1.15fr 1.7fr;gap:12px;align-items:stretch;margin-bottom:22px;padding:14px;border-radius:28px;color:#fff;background:linear-gradient(135deg,#392d9d,#6351d9 55%,#7a68e7);box-shadow:0 20px 44px #4330a638}.parentHero__profile,.parentHero__summary,.parentHero__metrics{padding:18px;border-radius:19px;background:#ffffff17}.parentHero__profile{display:flex;align-items:center;gap:13px}.avatar{display:grid;place-items:center;flex:0 0 auto;width:58px;height:58px;border:4px solid rgba(255,255,255,.25);border-radius:20px;font-family:ui-rounded,sans-serif;font-size:25px;font-weight:900}.avatar--lina{color:#4f42b4;background:#ffdc7b}.parentHero .eyebrow{color:#dcd5ff}.parentHero__profile h2{margin:0 0 5px}.parentHero__profile .statusPill{padding:5px 8px;font-size:10px}.parentHero__summary{display:flex;align-items:center;gap:13px}.parentHero__icon{display:grid;place-items:center;flex:0 0 auto;width:43px;height:43px;border-radius:14px;color:#4d3fc0;background:#fff}.parentHero__summary strong{font-family:ui-rounded,sans-serif}.parentHero__summary p{margin:4px 0 0;color:#e6e2ff;font-size:12px;line-height:1.45}.parentHero__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.parentHero__metrics div{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.parentHero__metrics svg{width:18px;margin-bottom:4px;color:#d9d2ff}.parentHero__metrics strong{font-family:ui-rounded,sans-serif;font-size:20px}.parentHero__metrics span{color:#ddd8fa;font-size:10px}.parentGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.parentSkillList{display:grid;gap:9px;margin-bottom:20px}.parentSkill{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid transparent;border-radius:17px;background:#f8f7fb}.parentSkill--active{border-color:#d7d0fc;background:#f4f1ff}.parentSkill__symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;font-family:ui-rounded,sans-serif;font-weight:900}.parentSkill__symbol--mint{background:var(--mint)}.parentSkill__symbol--violet{background:var(--violet)}.parentSkill__symbol--orange{background:var(--orange)}.parentSkill__symbol--blue{background:var(--blue)}.parentSkill__symbol--pink{background:var(--pink)}.parentSkill>div{display:flex;flex-direction:column;gap:2px}.parentSkill>div span{color:var(--muted);font-size:11px}.parentSkill__state{color:var(--muted);font-size:11px;font-weight:800}.parentSkill__state.isComplete{color:var(--mint)}.parentInsight__alert{color:var(--orange)}.insightCard{padding:18px;border-radius:18px;background:var(--orange-soft)}.insightCard>span{display:inline-block;margin-bottom:12px;padding:7px 10px;border-radius:9px;color:#9d5818;background:#fff8ef;font-family:ui-rounded,sans-serif;font-weight:900}.insightCard h3{margin-bottom:6px}.insightCard p{margin:0;color:#70583f;font-size:13px;line-height:1.55}.parentAction{display:flex;gap:12px;margin-top:15px;padding:15px;border-radius:16px;background:var(--violet-soft)}.parentAction svg{flex:0 0 auto;color:var(--violet)}.parentAction p{margin:3px 0 0;color:#625d77;font-size:12px;line-height:1.5}.activityWeek{display:grid;grid-template-columns:repeat(7,1fr);gap:9px}.activityWeek div{display:flex;flex-direction:column;align-items:center;gap:6px}.activityWeek div>span{display:grid;place-items:center;width:40px;height:48px;border-radius:13px;color:#fff;background:#eeecf3;font-weight:900}.activityWeek div>span.isActive{background:var(--mint);box-shadow:inset 0 -4px #005a4224}.activityWeek strong{font-size:11px}.activityWeek small{color:var(--muted);font-size:9px}.calmNote{margin:18px 0 0;padding:12px;border-radius:13px;color:#666075;background:#f5f3f9;font-size:11px;line-height:1.5}.weeklyDigest{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;color:#fff;background:linear-gradient(135deg,#184e49,#237a67)}.weeklyDigest>svg{width:35px;height:35px}.weeklyDigest .eyebrow{color:#aee8d7}.weeklyDigest h2{margin:0 0 3px;font-size:18px}.weeklyDigest p{margin:0;color:#d2eee7;font-size:12px}.weeklyDigest .textButton{color:#fff}.digestPreview{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.digestPreview div{display:flex;flex-direction:column;gap:5px;padding:13px;border-radius:15px;background:#f7f5fb}.digestPreview span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.digestPreview strong{font-size:13px}.teacherHeader .primaryButton{min-width:175px}.teacherMetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:20px}.teacherMetrics article{display:flex;gap:13px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}.metricIcon{display:grid;place-items:center;flex:0 0 auto;width:43px;height:43px;border-radius:14px}.metricIcon--violet{color:var(--violet);background:var(--violet-soft)}.metricIcon--mint{color:#07805f;background:var(--mint-soft)}.metricIcon--orange{color:#bd661a;background:var(--orange-soft)}.metricIcon--blue{color:#2878c2;background:var(--blue-soft)}.teacherMetrics article>div{display:flex;flex-direction:column}.teacherMetrics small{color:var(--muted);font-size:10px;font-weight:800}.teacherMetrics strong{font-family:ui-rounded,sans-serif;font-size:24px}.teacherMetrics p{margin:-2px 0 0;color:var(--muted);font-size:10px}.exerciseEditor{margin-bottom:20px;padding:24px;border:2px solid #dcd6fa;border-radius:24px;background:#fff;box-shadow:var(--shadow-md)}.exerciseEditor form>label,.formGrid label{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;color:#5f5b70;font-size:12px;font-weight:800}.formGrid{display:grid;gap:13px}.formGrid--three{grid-template-columns:1fr 1fr 1.3fr}.formGrid--two{grid-template-columns:1fr 1fr}.exerciseEditor input,.exerciseEditor select,.exerciseEditor textarea{width:100%;border:1px solid #dcd8e8;border-radius:12px;padding:12px;color:var(--ink);background:#fbfaff}.exerciseEditor textarea{min-height:84px;resize:vertical}.exerciseEditor input:focus,.exerciseEditor select:focus,.exerciseEditor textarea:focus{border-color:var(--violet);outline:0}.editorActions{display:flex;justify-content:flex-end;gap:10px}.teacherLayout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.sessionProgram{grid-column:1 / -1}.teacherSessionList{display:grid;grid-template-columns:1fr 1fr;gap:12px}.teacherSessionList article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#f9f8fc}.teacherSessionList article>span:first-child{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;color:#fff;background:var(--violet);font-family:ui-rounded,sans-serif;font-weight:900}.teacherSessionList article>div{min-width:0}.teacherSessionList small{color:var(--violet);font-size:9px;font-weight:900}.teacherSessionList strong{display:block;margin:2px 0}.teacherSessionList p{margin:0;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.editorNotice{margin:-5px 0 16px;padding:11px 13px;border-radius:12px;color:#5e5873;background:var(--violet-soft);font-size:11px;line-height:1.45}.contentLibrary{padding:0;overflow:hidden}.contentLibrary__heading{padding:22px 22px 0}.libraryActions{display:flex;gap:7px}.exerciseTable{overflow-x:auto}.exerciseTable__header,.exerciseTable__row{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(105px,.7fr) minmax(120px,.75fr) 110px 36px;align-items:center;min-width:790px;gap:12px;padding:11px 18px}.exerciseTable__header{color:var(--muted);background:#f7f5fa;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.exerciseTable__row{min-height:68px;border-top:1px solid #efedf4;color:#686377;font-size:12px}.exerciseTable__row:hover{background:#fbfaff}.exerciseTable__row>div:first-child{display:flex;align-items:center;gap:11px;color:var(--ink)}.exerciseTable__row>div:first-child>span:last-child{display:flex;flex-direction:column;gap:2px}.exerciseTable__row small{color:var(--muted)}.exerciseKind{display:grid;place-items:center;flex:0 0 auto;width:41px;height:41px;border-radius:12px;font-size:10px;font-weight:900}.exerciseKind--single-choice{color:var(--violet);background:var(--violet-soft)}.exerciseKind--number{color:#087a5d;background:var(--mint-soft)}.exerciseKind--short-text{color:#b85f15;background:var(--orange-soft)}.publishToggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 8px;border:0;border-radius:9px;cursor:pointer;font-size:10px;font-weight:900}.publishToggle--published{color:#0c775a;background:var(--mint-soft)}.publishToggle--draft{color:#746f82;background:#eeecf3}.teacherAside{display:flex;flex-direction:column;gap:16px;position:sticky;top:94px}.teacherAlert .panelHeading svg{color:var(--orange)}.observationCard{padding:16px;border-radius:16px;background:var(--orange-soft)}.observationCard strong{display:block;margin-bottom:5px}.observationCard p{color:#70583f;font-size:12px;line-height:1.5}.observationCard--empty{text-align:center;background:#f4f2f8}.observationCard--empty svg{margin-bottom:8px;color:var(--violet)}.observationCard--empty p{color:var(--muted)}.observationLabel{display:inline-flex;align-items:center;gap:6px;color:#8d632f;font-size:10px;font-weight:800}.publishPanel{text-align:center}.publishPanel .metricIcon{margin:0 auto 13px}.publishPanel h2{margin-bottom:6px;font-size:19px}.publishPanel p{color:var(--muted);font-size:12px;line-height:1.5}.backLink{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;color:var(--violet);text-decoration:none;font-size:12px;font-weight:900}.curriculumNotice{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px;padding:20px 22px;border:1px solid #d9d2fc;border-radius:22px;background:var(--violet-soft)}.curriculumNotice>svg{flex:0 0 auto;color:var(--violet)}.curriculumNotice strong{display:block;margin-bottom:4px}.curriculumNotice p{margin:0;color:#635d77;font-size:13px;line-height:1.5}.curriculumMetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:20px}.curriculumMetrics>div{display:flex;flex-direction:column;gap:3px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}.curriculumMetrics strong{font-family:ui-rounded,sans-serif;font-size:27px}.curriculumMetrics span{color:var(--muted);font-size:11px}.curriculumFlow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin-bottom:22px;padding:22px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}.curriculumFlow .panelHeading{grid-column:1 / -1}.curriculumFlow .panelHeading>svg{color:var(--violet)}.curriculumFlow>div:not(.panelHeading){display:grid;grid-template-columns:auto 1fr;gap:2px 9px;align-items:center;min-height:72px;padding:12px;border-radius:16px;background:#f8f7fb}.curriculumFlow>div:not(.panelHeading)>span{grid-row:1 / 3;display:grid;place-items:center;width:30px;height:30px;border-radius:10px;color:#fff;background:var(--violet);font-weight:900}.curriculumFlow strong{font-size:12px}.curriculumFlow small{color:var(--muted);font-size:10px}.curriculumFlow>i{color:#a8a2b6;font-style:normal}.curriculumDomains{display:grid;grid-template-columns:1fr 1fr;gap:16px}.curriculumDomain{overflow:hidden;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:var(--shadow-sm)}.curriculumDomain>header{display:flex;gap:13px;align-items:center;padding:20px;background:#f8f7fb}.curriculumDomain>header>span{display:grid;place-items:center;flex:0 0 auto;width:43px;height:43px;border-radius:14px;color:#fff;background:var(--violet);font-family:ui-rounded,sans-serif;font-weight:900}.curriculumDomain--mint>header>span{background:var(--mint)}.curriculumDomain--orange>header>span{background:var(--orange)}.curriculumDomain--blue>header>span{background:var(--blue)}.curriculumDomain--pink>header>span{background:var(--pink)}.curriculumDomain h2{margin:0 0 3px;font-size:19px}.curriculumDomain header p{margin:0;color:var(--muted);font-size:11px}.curriculumChapterList{padding:8px 18px 16px}.curriculumChapterList details{border-bottom:1px solid #efedf4}.curriculumChapterList details:last-child{border-bottom:0}.curriculumChapterList summary{display:flex;gap:10px;align-items:center;padding:14px 2px;cursor:pointer;list-style:none}.curriculumChapterList summary::-webkit-details-marker{display:none}.curriculumChapterList summary>svg{flex:0 0 auto;color:#aaa4b8}.curriculumChapterList summary>span{display:flex;flex-direction:column;gap:2px}.curriculumChapterList summary strong{font-size:13px}.curriculumChapterList summary small{color:var(--muted);font-size:10px}.curriculumChapterList details[open] summary>svg{color:var(--mint)}.curriculumChapterList ul{margin:0 0 12px 28px;padding-left:18px;color:#635e72;font-size:12px;line-height:1.55}.curriculumChapterList details>p{margin:0 0 14px 28px;color:var(--violet);font-size:10px;font-weight:800}@media(max-width:980px){.studentLayout,.teacherLayout{grid-template-columns:1fr}.studentAside{position:static;display:grid;grid-template-columns:1fr 1fr}.efficiencyNote{grid-column:1 / -1}.teacherAside{position:static;display:grid;grid-template-columns:1fr 1fr}.teacherMetrics,.parentHero{grid-template-columns:1fr 1fr}.parentHero__metrics{grid-column:1 / -1}.parentGrid{grid-template-columns:1fr}.curriculumFlow{grid-template-columns:1fr 1fr}.curriculumFlow>i{display:none}}@media(max-width:760px){.pageCanvas{width:min(100% - 28px,660px);padding:28px 0 100px}.topbar{grid-template-columns:1fr auto;min-height:62px;padding:9px 15px}.roleNav,.prototypeBadge{display:none}.brandMark strong{font-size:20px}.brandMark__face{width:36px;height:36px}.brandMark__eye{top:11px}.brandMark__smile{top:21px;left:13px}.mobileRoleNav{position:fixed;z-index:30;left:0;right:0;bottom:0;display:flex;justify-content:space-around;padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobileRoleNav__link{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:68px;padding:5px 10px;border-radius:12px;color:var(--muted);text-decoration:none;font-size:10px;font-weight:800}.mobileRoleNav__link--active{color:var(--violet);background:var(--violet-soft)}.studentWelcome{align-items:flex-start}.studentStats{flex-direction:column}.studentStat{min-width:104px;padding:9px 12px}.studentStat span{flex-direction:row;gap:4px;align-items:baseline}.nextLessonCard{grid-template-columns:auto 1fr;padding:21px 18px}.nextLessonCard .primaryButton{grid-column:1 / -1;width:100%}.nextLessonCard__mascot .brandMark--compact .brandMark__face{width:58px;height:58px}.nextLessonCard__mascot .brandMark--compact .brandMark__eye{top:19px}.nextLessonCard__mascot .brandMark--compact .brandMark__eye--left{left:17px}.nextLessonCard__mascot .brandMark--compact .brandMark__eye--right{right:17px}.nextLessonCard__mascot .brandMark--compact .brandMark__smile{left:22px;top:35px}.studentAside{grid-template-columns:1fr}.efficiencyNote{grid-column:auto}.dashboardPageHeader{align-items:flex-start}.dashboardPageHeader .secondaryButton{display:none}.parentHero{grid-template-columns:1fr}.parentHero__metrics{grid-column:auto}.parentSkill{grid-template-columns:auto 1fr}.parentSkill__state{grid-column:2}.teacherHeader{align-items:stretch;flex-direction:column}.teacherHeader .primaryButton{width:100%}.teacherMetrics{grid-template-columns:1fr 1fr}.teacherAside,.teacherSessionList,.curriculumDomains{grid-template-columns:1fr}.curriculumMetrics{grid-template-columns:1fr 1fr}.curriculumFlow,.formGrid--three,.formGrid--two{grid-template-columns:1fr}.libraryActions{display:none}.lessonPage{width:min(100% - 28px,660px);padding-top:18px}.lessonHeader{margin-bottom:32px}.feedbackDock{align-items:stretch;flex-direction:column;gap:14px;padding:15px 18px calc(15px + env(safe-area-inset-bottom))}.feedbackDock .primaryButton{width:100%}.lessonEncouragement{display:none}.completionStats{grid-template-columns:1fr}}@media(max-width:520px){.studentWelcome{flex-direction:column;gap:17px}.studentStats{width:100%;flex-direction:row}.studentStat{flex:1}.nextLessonCard{grid-template-columns:1fr;text-align:center}.nextLessonCard__mascot{display:none}.nextLessonCard .primaryButton{grid-column:auto}.sectionHeading{margin-top:30px}.parentHero__metrics{grid-template-columns:repeat(3,1fr);padding:10px 4px}.parentHero__metrics strong{font-size:17px}.activityWeek{gap:4px}.activityWeek div>span{width:34px;height:41px}.weeklyDigest{grid-template-columns:auto 1fr}.weeklyDigest .textButton{grid-column:2;justify-self:start}.digestPreview,.teacherMetrics{grid-template-columns:1fr}.exerciseEditor{padding:18px}.curriculumMetrics{grid-template-columns:1fr}.editorActions{flex-direction:column-reverse}.editorActions button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
