@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--color-paper:lab(96.5939% -.359416 4.5732);--color-paper-2:lab(93.1373% -.459075 6.11203);--color-paper-3:lab(89.68% -.546932 7.65988);--color-surface:lab(98.8899% -.248998 3.04233);--color-surface-raised:lab(97.7658% -.412107 5.34056);--color-ink:lab(7.20838% -1.0453 -4.15414);--color-ink-2:lab(28.0588% -1.59785 -5.63849);--color-muted:lab(39.6643% -1.45194 -4.95859);--color-rule:lab(83.8683% -.497282 6.89006);--color-rule-strong:lab(68.8197% -.586003 9.24708);--color-navy:lab(7.99713% .22655 -18.9615);--color-navy-2:lab(13.7354% .0745058 -22.7743);--color-navy-3:lab(20.6116% -.0234544 -27.6176);--color-navy-ink:lab(95.3643% -2.02951 -5.15827);--color-navy-muted:lab(72.1557% -4.32202 -11.5582);--color-accent:lab(84.3328% 3.40465 86.5733);--color-accent-deep:lab(60.9681% 4.37623 77.3673);--color-accent-soft:lab(93.4007% -.943661 27.7111);--color-accent-ink:lab(11.9058% 1.80068 11.7233);--color-cyan:lab(60.4609% -20.7041 -52.7663);--color-cyan-deep:lab(38.2532% -12.2379 -42.3289);--color-cyan-soft:lab(93.1991% -9.20838 -12.9778);--color-coral:lab(60.2732% 77.3247 33.2065);--color-coral-deep:lab(36.7046% 54.5726 26.4886);--color-coral-soft:lab(93.7463% 14.2901 6.07328);--color-mint:lab(78.8297% -48.1495 31.5686);--color-mint-deep:lab(35.2786% -34.6654 19.8684);--color-mint-soft:lab(94.6677% -10.3559 6.60875);--color-error:lab(37.7106% 60.507 37.7457);--color-error-soft:lab(93.8226% 12.3712 6.39064);--color-success:lab(35.397% -37.9962 21.8541);--color-success-soft:lab(94.6677% -10.3559 6.60875);--color-focus:lab(35.3532% -3.40526 -51.3924);--font-display:"Plus Jakarta Sans", "Arial Rounded MT Bold", sans-serif;--font-body:"Plus Jakarta Sans", "Avenir Next", sans-serif;--font-label:"JetBrains Mono", "SFMono-Regular", monospace;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--text-xs:.72rem;--text-sm:.84rem;--text-base:1rem;--text-md:1.2rem;--text-lg:1.45rem;--text-xl:1.8rem;--text-2xl:2.25rem;--text-3xl:2.8rem;--text-display:clamp(2rem, 4vw, 3.2rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--rule-hair:1px;--rule-strong:2px;--radius-input:.75rem;--radius-card:1.25rem;--radius-card-lg:1.75rem;--radius-pill:999px;--shadow-card:0 .75rem 2rem -1rem lab(7.20838% -1.0453 -4.15414/.16);--shadow-card-hover:0 1rem 2.5rem -1rem lab(7.20838% -1.0453 -4.15414/.2);--shadow-panel:0 1.5rem 4rem -1.5rem lab(2.96511% -.641435 -8.81186/.3);--shadow-button:0 .25rem 0 0 var(--color-accent-deep), 0 .375rem .75rem -.1875rem lab(60.9681% 4.37623 77.3673/.42);--shadow-button-hover:0 .375rem 0 0 var(--color-accent-deep), 0 .75rem 1.375rem -.25rem lab(60.9681% 4.37623 77.3673/.38);--shadow-button-active:0 .0625rem 0 0 var(--color-accent-deep), 0 .125rem .375rem -.125rem lab(60.9681% 4.37623 77.3673/.35);--tap-size:2.75rem;--side-rail:16.5rem;--shell:105rem;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500}*,:before,:after{box-sizing:border-box}html,body{min-width:20rem;margin:0;overflow-x:clip}html{scroll-behavior:smooth}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);font-feature-settings:"ss01" on, "cv11" on;font-variant-numeric:tabular-nums;line-height:1.55}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button,a{white-space:nowrap}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{overflow-wrap:anywhere;min-width:0;font-family:var(--font-display);letter-spacing:-.025em;font-style:normal}:is(button:focus-visible,a:focus-visible,select:focus-visible){outline:var(--rule-strong) solid var(--color-focus);outline-offset:var(--space-2xs)}.app-shell{min-height:100svh}.mobile-header{z-index:var(--z-sticky);min-height:4.25rem;padding:var(--space-sm) var(--space-md);background:var(--color-navy);color:var(--color-navy-ink);justify-content:space-between;align-items:center;display:flex;position:sticky;inset-block-start:0}.mobile-brand,.brand{align-items:center;gap:var(--space-sm);font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.03em;font-weight:700;line-height:1.05;display:inline-flex}.mobile-brand{min-height:var(--tap-size)}.mobile-brand strong,.brand strong{color:var(--color-cyan);font-weight:700;display:block}.brand-mark{background:var(--color-accent);width:2.5rem;height:2.5rem;color:var(--color-accent-ink);transition:transform var(--dur-short) var(--ease-out);border-radius:.85rem;flex:none;place-items:center;display:grid;position:relative}:is(.mobile-brand:focus-visible .brand-mark,.brand:focus-visible .brand-mark){transform:rotate(-4deg)}.brand-mark__cap{border:var(--rule-strong) solid currentColor;border-block-end:0;width:1.45rem;height:.82rem;position:absolute;inset-block-start:.6rem;transform:rotate(-8deg)skew(-10deg)}.brand-mark__face{border:var(--rule-strong) solid currentColor;border-radius:.3rem .3rem .55rem .55rem;justify-content:space-evenly;align-items:center;width:1.15rem;height:.82rem;display:flex;position:absolute;inset-block-end:.52rem}.brand-mark__face span{border-radius:var(--radius-pill);background:currentColor;width:.14rem;height:.14rem}.icon-button{width:var(--tap-size);height:var(--tap-size);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-surface);cursor:pointer;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out);flex:none;place-items:center;display:inline-grid;position:relative}.icon-button:active{transform:translateY(var(--space-3xs))}.icon-button--nav{border-color:color-mix(in oklch, var(--color-navy-ink) 22%, transparent);background:var(--color-navy-2);color:var(--color-navy-ink)}.nav-scrim{z-index:calc(var(--z-sticky) - 1);background:color-mix(in oklch, var(--color-navy) 78%, transparent);border:0;width:100%;position:fixed;inset:0}.side-rail{z-index:var(--z-sticky);width:min(86%, var(--side-rail));padding:var(--space-lg) var(--space-md);background:var(--color-navy);color:var(--color-navy-ink);transition:transform var(--dur-short) var(--ease-out);flex-direction:column;display:flex;position:fixed;inset-block:0;inset-inline-start:0;overflow-y:auto;transform:translate(-100%)}.side-rail.is-open{transform:translate(0)}.brand{min-height:var(--tap-size);padding-inline:var(--space-xs)}.brand__text{display:block}.primary-nav{gap:var(--space-2xs);margin-block-start:var(--space-xl);display:grid}.nav-item,.rail-link{min-height:var(--tap-size);align-items:center;gap:var(--space-sm);border-radius:var(--radius-input);width:100%;color:var(--color-navy-muted);cursor:pointer;text-align:start;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);background:0 0;border:0;font-weight:600;display:flex}.nav-item{padding:var(--space-sm)}.nav-item.is-active{background:var(--color-navy-3);color:var(--color-navy-ink);box-shadow:inset var(--space-2xs) 0 0 var(--color-accent)}.nav-item:not(:disabled):active,.rail-link:not(:disabled):active{transform:translateY(var(--space-3xs))}.nav-item:disabled,.rail-link:disabled{cursor:not-allowed;opacity:.62}.nav-item__status{padding:var(--space-3xs) var(--space-xs);border:var(--rule-hair) solid color-mix(in oklch, var(--color-navy-ink) 22%, transparent);border-radius:var(--radius-pill);font-size:var(--text-xs);margin-inline-start:auto;font-weight:500}.side-rail__bottom{gap:var(--space-xs);margin-block-start:auto;padding-block-start:var(--space-xl);display:grid}.profile-card{align-items:center;gap:var(--space-sm);min-height:4rem;padding:var(--space-sm);border:var(--rule-hair) solid color-mix(in oklch, var(--color-navy-ink) 22%, transparent);border-radius:var(--radius-card);background:var(--color-navy-2);cursor:pointer;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out);display:flex;position:relative}.profile-card:focus-within,.child-switcher:focus-within{outline:var(--rule-strong) solid var(--color-focus);outline-offset:var(--space-2xs)}.profile-card:active,.child-switcher:active{transform:translateY(var(--space-3xs))}.profile-card select,.child-switcher select{opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;inset:0}.profile-card__text,.child-switcher__copy{min-width:0;margin-inline-end:auto;line-height:1.25;display:grid}.profile-card__text span:first-child{color:var(--color-navy-ink);font-weight:700}.profile-card__text span:last-child{color:var(--color-navy-muted);font-size:var(--text-sm)}.rail-link{padding:var(--space-xs) var(--space-sm)}.rail-link span{border-radius:var(--radius-pill);background:var(--color-cyan);min-width:1.5rem;min-height:1.5rem;color:var(--color-accent-ink);font-size:var(--text-xs);place-items:center;margin-inline-start:auto;display:inline-grid}.dashboard{width:100%;max-width:var(--shell);padding:var(--space-lg) var(--space-md) var(--space-2xl);margin-inline:auto}.topbar{gap:var(--space-lg);display:grid}.demo-chip{align-items:center;gap:var(--space-xs);width:fit-content;padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink-2);font-size:var(--text-xs);letter-spacing:.02em;margin-block-end:var(--space-sm);display:inline-flex}.demo-chip span{border-radius:var(--radius-pill);background:var(--color-mint-deep);width:.48rem;height:.48rem}.topbar h1{font-size:clamp(1.75rem, 5vw, var(--text-2xl));line-height:1.1}.topbar__copy>p{color:var(--color-muted);margin-block-start:var(--space-xs)}.topbar__actions{align-items:center;gap:var(--space-sm);display:flex}.child-switcher{min-height:var(--tap-size);align-items:center;gap:var(--space-sm);min-width:0;padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card);transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out);flex:auto;display:flex;position:relative}.avatar,.teacher-avatar{border-radius:var(--radius-pill);background:var(--color-cyan-soft);width:2.25rem;height:2.25rem;color:var(--color-cyan-deep);font-size:var(--text-sm);flex:none;place-items:center;font-weight:700;display:inline-grid}.avatar--small{background:var(--color-accent);width:2rem;height:2rem;color:var(--color-accent-ink)}.child-switcher__copy span{color:var(--color-muted);font-size:var(--text-xs)}.child-switcher__copy strong{font-size:var(--text-sm)}.notification-wrap{position:relative}.notification-dot{border:var(--rule-strong) solid var(--color-paper);border-radius:var(--radius-pill);background:var(--color-coral);width:1.15rem;height:1.15rem;color:var(--color-accent-ink);place-items:center;font-size:.65rem;font-weight:700;display:grid;position:absolute;inset-block-start:-.2rem;inset-inline-end:-.2rem}.notification-panel{z-index:var(--z-dropdown);gap:var(--space-xs);width:min(18rem,100vw - 2rem);padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-panel);font-size:var(--text-sm);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-xs));inset-inline-end:0}.notification-panel span{color:var(--color-muted)}.subject-strip{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);margin-block-start:var(--space-xl);display:grid}.subject-stat,.week-stat,.continue-card,.teacher-note,.streak-card,.recommendations,.week-card,.activity-section{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.subject-stat{gap:var(--space-xs);min-height:8.25rem;padding:var(--space-md);background:var(--color-surface);display:grid}.subject-stat[data-tone=pear]{background:var(--color-accent-soft)}.subject-stat[data-tone=cyan]{background:var(--color-cyan-soft)}.subject-stat[data-tone=coral]{background:var(--color-coral-soft)}.subject-stat__top{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.subject-stat__top span,.week-stat span,.streak-card span{color:var(--color-ink-2);font-size:var(--text-sm);font-weight:600}.subject-stat__top strong{font-family:var(--font-display);font-size:var(--text-xl);line-height:1}.subject-stat p,.week-stat p,.streak-card p{color:var(--color-muted);font-size:var(--text-xs)}.progress-track{border-radius:var(--radius-pill);background:color-mix(in oklch, var(--color-ink) 10%, transparent);height:.42rem;overflow:clip}.progress-track span{width:var(--progress);border-radius:inherit;background:var(--color-cyan-deep);height:100%;display:block}.subject-stat[data-tone=pear] .progress-track span{background:var(--color-accent-deep)}.subject-stat[data-tone=coral] .progress-track span{background:var(--color-coral-deep)}.week-stat{align-items:center;gap:var(--space-md);min-height:8.25rem;padding:var(--space-md);background:var(--color-navy);color:var(--color-navy-ink);display:flex}.week-stat__icon{background:var(--color-accent);width:3rem;height:3rem;color:var(--color-accent-ink);border-radius:1rem;flex:none;place-items:center;display:grid}.week-stat span,.week-stat p{color:var(--color-navy-muted)}.week-stat strong{margin-block:var(--space-2xs);font-family:var(--font-display);font-size:var(--text-xl);line-height:1;display:block}.workbench-grid,.detail-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);margin-block-start:var(--space-lg);display:grid}.continue-card{background:var(--color-surface);min-width:0;display:grid;position:relative;overflow:clip}.continue-card__copy{z-index:var(--z-raised);padding:var(--space-lg);position:relative}.lesson-path{align-items:center;gap:var(--space-xs);color:var(--color-cyan-deep);font-size:var(--text-sm);font-weight:600;display:flex}.continue-card h2{max-width:17ch;font-size:clamp(1.6rem, 5vw, var(--text-2xl));margin-block-start:var(--space-md);line-height:1.1}.continue-card__copy>p{color:var(--color-muted);margin-block-start:var(--space-sm)}.lesson-progress{max-width:29rem;margin-block-start:var(--space-lg)}.lesson-progress__labels{justify-content:space-between;gap:var(--space-md);color:var(--color-ink-2);font-size:var(--text-sm);margin-block-end:var(--space-xs);display:flex}.progress-track--large{background:var(--color-paper-3);height:.58rem}.continue-card__actions,.dialog-actions{gap:var(--space-sm);flex-wrap:wrap;margin-block-start:var(--space-lg);display:flex}.btn{--btn-face:var(--color-accent);--btn-ink:var(--color-accent-ink);--btn-edge:var(--color-accent-deep);min-height:var(--tap-size);justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-pill);background:var(--btn-face);color:var(--btn-ink);box-shadow:var(--shadow-button);cursor:pointer;isolation:isolate;transition:transform .14s var(--ease-out), box-shadow .14s var(--ease-out), background-color .16s var(--ease-out);border:0;font-weight:700;display:inline-flex;transform:translateY(0)}.btn:active{box-shadow:var(--shadow-button-active);transition-duration:70ms;transform:translateY(.1875rem)}.btn:focus-visible{outline:.1875rem solid var(--color-focus);outline-offset:var(--space-2xs)}.btn:disabled,.btn[aria-disabled=true]{box-shadow:0 .25rem 0 0 var(--color-rule-strong);cursor:not-allowed;opacity:.5;transform:none}.btn--soft{--btn-face:var(--color-surface);--btn-ink:var(--color-ink);--btn-edge:var(--color-rule-strong);border:var(--rule-hair) solid var(--color-rule);box-shadow:0 .2rem 0 0 var(--color-rule-strong)}.btn__arrow{transition:transform var(--dur-micro) var(--ease-out)}.lesson-visual{min-height:17rem;margin:0 var(--space-lg) var(--space-lg);border-radius:var(--radius-card);background:var(--color-cyan-soft);position:relative;overflow:clip}.fraction-orbit{border-radius:var(--radius-pill);font-family:var(--font-display);place-items:center;font-weight:700;display:grid;position:absolute}.fraction-orbit--one{background:var(--color-accent);width:7rem;height:7rem;color:var(--color-accent-ink);inset-block-start:2.25rem;inset-inline-start:12%;transform:rotate(-7deg)}.fraction-orbit--one i{width:2.35rem;height:var(--rule-strong);background:currentColor}.fraction-orbit--two{background:var(--color-coral);width:5.2rem;height:5.2rem;color:var(--color-accent-ink);font-size:var(--text-xl);inset-block-end:2.4rem;inset-inline-end:12%;transform:rotate(6deg)}.lesson-visual__line{border-block-start:var(--rule-strong) dashed var(--color-cyan-deep);width:28%;position:absolute;inset-block-start:48%;inset-inline-start:38%;transform:rotate(18deg)}.study-buddy{border:var(--rule-strong) solid var(--color-ink);background:var(--color-mint);width:3.4rem;height:3.4rem;transition:transform var(--dur-short) var(--ease-out);border-radius:45% 55% 48% 52%;position:absolute;inset-block-end:1.2rem;inset-inline-start:1.2rem;transform:rotate(-5deg)}.study-buddy>span{border-radius:var(--radius-pill);background:var(--color-ink);width:.28rem;height:.35rem;position:absolute;inset-block-start:1.15rem}.study-buddy>span:first-child{inset-inline-start:.95rem}.study-buddy>span:nth-child(2){inset-inline-end:.95rem}.study-buddy i{border-block-end:var(--rule-strong) solid var(--color-ink);border-radius:var(--radius-pill);width:.85rem;height:.35rem;position:absolute;inset-block-start:1.9rem;inset-inline-start:1.2rem}.right-stack{gap:var(--space-lg);display:grid}.teacher-note,.streak-card,.recommendations,.week-card,.activity-section{background:var(--color-surface);padding:var(--space-lg)}.teacher-note{background:var(--color-paper-2)}.teacher-note__heading{align-items:center;gap:var(--space-sm);display:flex}.teacher-note__heading>div{margin-inline-end:auto;display:grid}.teacher-note__heading span{color:var(--color-muted);font-size:var(--text-xs)}.teacher-note>p{color:var(--color-ink-2);margin-block-start:var(--space-md)}.text-link{min-height:var(--tap-size);align-items:center;gap:var(--space-xs);color:var(--color-cyan-deep);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:color-mix(in oklch, var(--color-cyan) 45%, transparent);text-decoration-color:color-mix(in oklch, var(--color-cyan) 45%, transparent);text-underline-offset:var(--space-2xs);background:0 0;border:0;padding:0;font-weight:700;display:inline-flex}.text-link:disabled{cursor:not-allowed;opacity:.5}.text-link:not(:disabled):active,.recommendation-row:not(:disabled):active{transform:translateY(var(--space-3xs))}.streak-card{align-items:center;gap:var(--space-md);background:var(--color-coral-soft);display:flex}.streak-card__icon{background:var(--color-coral);width:3.2rem;height:3.2rem;color:var(--color-accent-ink);border-radius:42% 58% 52% 48%;flex:none;place-items:center;display:grid;transform:rotate(-5deg)}.streak-card strong{font-family:var(--font-display);font-size:var(--text-lg);display:block}.section-heading{gap:var(--space-md);grid-template-columns:minmax(0,1fr);align-items:end;display:grid}.section-heading h2{font-size:var(--text-lg);line-height:1.15}.section-heading p{color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-2xs)}.section-heading--compact{justify-content:space-between;align-items:flex-start;display:flex}.recommendation-list{gap:var(--space-xs);margin-block-start:var(--space-lg);display:grid}.recommendation-row{align-items:center;gap:var(--space-sm);width:100%;min-height:4.75rem;padding:var(--space-sm);border:var(--rule-hair) solid transparent;border-radius:var(--radius-input);background:var(--color-paper-2);cursor:pointer;text-align:start;transition:transform var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.recommendation-row[data-tone=cyan]{background:var(--color-cyan-soft)}.recommendation-row[data-tone=pear]{background:var(--color-accent-soft)}.recommendation-row[data-tone=coral]{background:var(--color-coral-soft)}.recommendation-row:disabled{cursor:not-allowed;opacity:.72}.recommendation-row__index{font-size:var(--text-xs);font-weight:700}.recommendation-row>span:nth-child(2){min-width:0;display:grid}.recommendation-row small{color:var(--color-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.roadmap-chip{padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.week-numbers{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-lg);display:grid}.week-numbers>div{padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-accent-soft)}.week-numbers>div:last-child{background:var(--color-cyan-soft)}.week-numbers strong{font-family:var(--font-display);font-size:var(--text-2xl);line-height:1;display:block}.week-numbers span{color:var(--color-muted);font-size:var(--text-xs)}.day-strip{gap:var(--space-2xs);grid-template-columns:repeat(7,minmax(0,1fr));margin-block-start:var(--space-lg);display:grid}.day-strip span{aspect-ratio:1;border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-muted);font-size:var(--text-xs);place-items:center;font-weight:700;display:grid}.day-strip span.is-active{background:var(--color-mint);color:var(--color-ink)}.activity-section{margin-block-start:var(--space-lg)}.activity-summary{align-items:center;gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-sm);display:inline-flex}.activity-list{margin-block-start:var(--space-lg);display:grid}.activity-row{align-items:center;gap:var(--space-sm);padding-block:var(--space-sm);border-block-start:var(--rule-hair) dashed var(--color-rule);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.activity-row__mark{background:var(--color-paper-2);width:2.2rem;height:2.2rem;font-size:var(--text-sm);border-radius:.7rem;place-items:center;font-weight:700;display:grid}.activity-row>div{min-width:0;display:grid}.activity-row>div span,.activity-row time{color:var(--color-muted);font-size:var(--text-xs)}.foot-stmt{gap:var(--space-xl);padding:var(--space-2xl) 0 var(--space-lg);display:grid}.foot-stmt__line{max-width:28ch;font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.65rem,4vw,2.8rem);font-weight:600;line-height:1.08}.foot-stmt__meta{gap:var(--space-xs);border-block-start:var(--rule-hair) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm);flex-direction:column;padding-block-start:var(--space-sm);display:flex}.practice-dialog{border-radius:var(--radius-card-lg);width:min(42rem,100% - 2rem);max-height:min(88svh,46rem);color:var(--color-ink);background:0 0;border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:visible}.practice-dialog::backdrop{background:color-mix(in oklch, var(--color-navy) 78%, transparent)}.practice-dialog__surface{max-height:min(88svh,46rem);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card-lg);background:var(--color-paper);box-shadow:var(--shadow-panel);overflow-y:auto}.dialog-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.dialog-heading h2{font-size:var(--text-xl);margin-block-start:var(--space-2xs);line-height:1.12}.meta-label,.question-count{color:var(--color-muted);font-family:var(--font-label);font-size:var(--text-xs);letter-spacing:.02em}.icon-button--quiet{background:var(--color-paper-2)}.question-block{margin-block-start:var(--space-xl)}.question-prompt{font-family:var(--font-display);font-size:clamp(1.6rem, 6vw, var(--text-2xl));letter-spacing:-.03em;margin-block-start:var(--space-sm);font-weight:700}.answer-grid{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));margin-block-start:var(--space-lg);display:grid}.answer-option{align-items:center;gap:var(--space-sm);min-height:4rem;padding:var(--space-sm);border:var(--rule-strong) solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-surface);cursor:pointer;text-align:start;transition:transform var(--dur-micro) var(--ease-out), background-color var(--dur-short) var(--ease-out);font-weight:700;display:flex}.answer-option:active{transform:translateY(var(--space-3xs))}.answer-option[data-state=selected]{border-color:var(--color-cyan-deep);background:var(--color-cyan-soft)}.answer-option[data-state=success]{border-color:var(--color-success);background:var(--color-success-soft)}.answer-option[data-state=error]{border-color:var(--color-error);background:var(--color-error-soft)}.answer-option__marker{border:var(--rule-strong) solid currentColor;border-radius:var(--radius-pill);flex:none;place-items:center;width:1.65rem;height:1.65rem;display:grid}.feedback{align-items:flex-start;gap:var(--space-sm);min-height:4.75rem;padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper-2);color:var(--color-ink-2);margin-block-start:var(--space-lg);display:flex;position:relative}.feedback[data-state=success]{background:var(--color-success-soft);color:var(--color-success)}.feedback[data-state=error]{background:var(--color-error-soft);color:var(--color-error)}.feedback p{color:var(--color-ink-2);font-size:var(--text-sm)}.dialog-actions{justify-content:flex-end}.star-burst{background:linear-gradient(90deg, transparent 47%, var(--color-coral) 47% 53%, transparent 53%), linear-gradient(0deg, transparent 47%, var(--color-coral) 47% 53%, transparent 53%);pointer-events:none;width:1.5rem;height:1.5rem;animation:star-burst var(--dur-long) var(--ease-out) forwards;position:absolute;inset-block-start:-.8rem;inset-inline-end:1rem}@keyframes star-burst{0%{opacity:1;transform:scale(0)rotate(0)}60%{opacity:.9;transform:scale(1.2)rotate(35deg)}to{opacity:0;transform:scale(1.4)rotate(45deg)}}@media (hover:hover) and (pointer:fine){.brand:hover .brand-mark,.mobile-brand:hover .brand-mark{transform:rotate(-4deg)}.icon-button:hover{background:var(--color-paper-2);transform:translateY(-.0625rem)}.icon-button--nav:hover{background:var(--color-navy-3)}.nav-item:not(:disabled):hover,.rail-link:not(:disabled):hover{background:var(--color-navy-2);color:var(--color-navy-ink);transform:translateX(var(--space-3xs))}.profile-card:hover,.child-switcher:hover{background:var(--color-paper-2)}.profile-card:hover{background:var(--color-navy-3)}.btn:not(:disabled):hover{box-shadow:var(--shadow-button-hover);transform:translateY(-.125rem)}.btn:hover .btn__arrow,.text-link:hover svg{transform:translateX(var(--space-2xs))}.continue-card:hover .study-buddy{transform:rotate(4deg)translateY(-.2rem)}.recommendation-row:not(:disabled):hover{background:var(--color-paper-3);transform:translateY(-.125rem)}.answer-option:hover{background:var(--color-paper-2)}}@media (min-width:40rem){.dashboard{padding-inline:var(--space-lg)}.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center}.topbar__actions{justify-content:flex-end}.child-switcher{flex:none;min-width:12.5rem}.subject-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.continue-card{grid-template-columns:minmax(0,1.35fr) minmax(14rem,.85fr)}.lesson-visual{min-height:0;margin:var(--space-lg) var(--space-lg) var(--space-lg) 0}.section-heading:not(.section-heading--compact){grid-template-columns:minmax(0,1fr) auto}.foot-stmt__meta{flex-direction:row;justify-content:space-between}}@media (min-width:60rem){.mobile-header,.nav-scrim{display:none}.side-rail{width:var(--side-rail);transform:none}.dashboard{width:calc(100% - var(--side-rail));max-width:calc(var(--shell) - var(--side-rail));padding:var(--space-xl) var(--space-xl) var(--space-2xl);margin-inline-start:var(--side-rail);margin-inline-end:auto}.subject-strip{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(13rem,1.15fr)}.workbench-grid{grid-template-columns:minmax(0,2.2fr) minmax(15rem,.85fr)}.detail-grid{grid-template-columns:minmax(0,1.65fr) minmax(17rem,.75fr)}.right-stack{grid-template-rows:minmax(0,1fr) auto}}@media (min-width:90rem){.dashboard{padding-inline:var(--space-2xl)}.continue-card__copy,.teacher-note,.streak-card,.recommendations,.week-card,.activity-section{padding:var(--space-xl)}}@media (pointer:coarse){.btn,.nav-item,.rail-link,.text-link,.answer-option,.recommendation-row{min-height:3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.star-burst{display:none}}
