.privacy-banner{position:fixed;inset:auto 24px 24px auto;width:min(440px,calc(100vw - 48px));z-index:1000;max-width:520px;max-height:calc(100dvh - 40px);overflow-y:auto;margin:0;padding:20px 22px;border:1px solid #e5e2dc;border-radius:22px;background:#fffdfa;color:#2a2d3a;box-shadow:0 8px 32px #24212a1a;font:13px/1.5 IBM Plex Sans,sans-serif}.privacy-banner[data-expanded=true]{width:min(520px,calc(100vw - 48px))}.privacy-banner-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.privacy-banner h2{margin:0;font:600 16px/1.3 IBM Plex Sans,sans-serif;letter-spacing:-.02em}.privacy-summary{margin:8px 0 18px}.privacy-banner a{color:inherit;text-decoration:underline;text-underline-offset:3px}.privacy-actions{display:flex;gap:8px;flex-wrap:wrap}.privacy-actions button{flex:1 1 auto;min-height:44px;padding:10px 12px;border:1px solid #77736c;border-radius:22px;background:#fffdfa;color:inherit;font:500 13px/1.4 IBM Plex Sans,sans-serif;cursor:pointer}.privacy-actions button:hover{background:#ebe4f4;border-color:#776396}.privacy-banner :is(button,input,a):focus-visible,.privacy-footer button:focus-visible{outline:3px solid #67549a;outline-offset:3px}.privacy-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;margin:-8px -10px -8px 0;border:0;border-radius:8px;background:transparent;color:inherit;font-size:26px;cursor:pointer}.privacy-close:hover{background:#e7e1d8}.privacy-options{margin-block:18px;border-top:1px solid #d7d1c8}.privacy-essential,.privacy-option{padding:14px 0;border-bottom:1px solid #d7d1c8}.privacy-essential>span{float:right;color:#575d50;font-size:12px}.privacy-essential p{margin:4px 0 0;font-size:13px;color:#56555c}.privacy-option{display:flex;align-items:flex-start;gap:20px;cursor:pointer}.privacy-option>span{flex:1 1}.privacy-option strong{display:block;margin-bottom:4px}.privacy-option span span{display:block;font-size:13px;color:#56555c}.privacy-option input{appearance:none;flex:0 0 44px;width:44px;height:26px;margin:2px 0 0;border:1px solid #77736c;border-radius:20px;background:#d8d3cb;cursor:pointer}.privacy-option input:before{content:"";display:block;width:18px;height:18px;margin:3px;border-radius:50%;background:#fffdfa;box-shadow:0 1px 3px #0003}.privacy-option input:checked{background:#776396;border-color:#776396}.privacy-option input:checked:before{transform:translateX(18px)}.privacy-option input:disabled{opacity:.55;cursor:not-allowed}.privacy-note{margin:12px 0 0;font-size:12px;color:#56555c}.privacy-error{padding:10px;border-radius:8px;background:#f7e2da;color:#713c31}.privacy-footer{display:flex;justify-content:center;padding:12px}.privacy-footer button{min-height:44px;padding:8px;border:0;background:transparent;color:var(--app-ink-soft,#56555c);font:12px/1.4 IBM Plex Sans,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.privacy-withdrawal{margin:12px auto;max-width:620px;padding-inline:16px;font-size:12px;color:var(--app-ink-soft,#56555c)}@media (max-width:480px){.privacy-banner,.privacy-banner[data-expanded=true]{inset:auto 10px 10px;width:auto;padding:18px;max-height:calc(100dvh - 20px);border-radius:14px}.privacy-actions{display:grid;grid-template-columns:1fr 1fr}.privacy-actions button:last-child{grid-column:1/-1}}@media (forced-colors:active){.privacy-option input{appearance:auto}.privacy-option input:before{display:none}}:root{--canvas:#F7F8FA;--paper-soft:#FFFFFF;--paper-deep:#ECEEF3;--ink:#18130F;--ink-soft:#544D44;--ink-faint:#8D8375;--accent:#3C5A8C;--accent-soft:#EBEFF5;--warm:#C4733D;--warm-soft:#F5E8DC;--sage:#5C7A66;--sage-soft:#E5EEE6;--hair:rgba(24,19,15,0.09);--prac-console-bg:#1C1A17;--prac-console-ink:#E8E2D6;--prac-console-label:#8A8172;--prac-console-out:#D6CFC2;--prac-console-err:#E09563;--prac-console-hint:#8FAD98;--app-cream:#F7F8FA;--app-paper:#FFFFFF;--app-ink:#2A2D3A;--app-ink-soft:#5B5F72;--app-ink-faint:#A7ABBE;--app-hair:#E3E6ED;--app-lavender:#B8A8D9;--app-lav-d:#8A76B8;--app-lav-s:#EDE6F7;--app-sage:#9BB89B;--app-sage-d:#6D9070;--app-sage-s:#E2ECDF;--app-coral:#E8A598;--app-coral-d:#C47565;--app-coral-s:#F7E2DA;--app-butter:#F0D9A8;--app-butter-d:#C79F5E;--app-butter-s:#FBF0DA;--app-sky:#A8C5D9;--app-sky-d:#6A93B5;--app-sky-s:#E0ECF4;--app-lav-text:#725E9E;--app-lav-fill:#806CAD;--app-sage-text:#4F7153;--app-sage-fill:#5C7F60;--app-sky-text:#3C5A8C;--app-sky-fill:#527A9B;--app-butter-text:#89692D;--app-butter-fill:#96702E;--app-coral-text:#9E5142;--app-coral-fill:#AE6152;--app-fill-on:#fff;--app-muted-cream:#6A6D7F;--app-muted-paper:#6F7284;--app-bar-track:var(--app-hair);--app-field-line:#8A8798;--focus-ring:#2A2D3A;--focus-halo:#FBF9F4;--warm-fill:#B1622B;--fs-sans:"IBM Plex Sans",system-ui,-apple-system,sans-serif;--fs-mono:"IBM Plex Mono","SF Mono",Consolas,monospace;--fs-serif:"Instrument Serif","Fraunces",Georgia,serif;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:3px;--radius-md:6px;--radius-lg:10px;--radius-xl:12px;--radius-card:14px;--radius-panel:16px;--radius-2xl:20px;--radius-pill:9999px;--shadow-card:0 2px 8px rgba(0,0,0,0.04);--shadow-lift:0 8px 24px rgba(0,0,0,0.06);--shadow-pop:0 16px 40px rgba(138,118,184,0.18);--shadow-mascot:0 4px 8px rgba(24,19,15,0.15);--shadow-sheet:0 -10px 40px rgba(0,0,0,0.15);--shadow-phone:0 24px 60px -18px rgba(0,0,0,0.45);--motion-instant:100ms;--motion-quick:180ms;--motion-standard:250ms;--motion-deliberate:350ms;--motion-celebration:1100ms;--ease-standard:cubic-bezier(0.2,0.75,0.25,1);--ease-inout:cubic-bezier(0.42,0,0.58,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--sidebar-w:264px;--content-max:1000px;--tabbar-icon:22px;--tabbar-label:11px;--tabbar-label-lh:1.2;--tabbar-tab-pad:8px;--tabbar-tab-gap:4px;--tabbar-pad-top:10px;--tabbar-pad-bottom:max(22px,calc(10px + env(safe-area-inset-bottom)));--tabbar-border:1px;--tabbar-h:0px;--tabbar-gap:8px;--tabbar-clear:calc(var(--tabbar-h) + var(--tabbar-gap))}[data-theme=dark]{--canvas:#141210;--paper-soft:#1C1A17;--paper-deep:#262220;--ink:#F3EDE3;--ink-soft:#BCB3A2;--ink-faint:#7F7668;--accent:#8AAEE0;--accent-soft:#26324A;--warm:#E09563;--warm-soft:#3A2D22;--sage:#8FAD98;--sage-soft:#2A3B31;--hair:rgba(243,237,227,0.15);--prac-console-bg:#0E0C0B;--app-cream:#2E2A38;--app-paper:#3B3646;--app-ink:#F6F1E4;--app-ink-soft:#CFC7D6;--app-ink-faint:#A79EAF;--app-hair:#867F8F;--app-lavender:#C9B8EE;--app-lav-d:#E5D8FB;--app-lav-s:#4D3F6E;--app-sage:#A8D0A5;--app-sage-d:#CFE6CA;--app-sage-s:#3A4F3F;--app-coral:#F4B5A5;--app-coral-d:#FBD6C8;--app-coral-s:#5E3C33;--app-butter:#F7DFA8;--app-butter-d:#FCEDC7;--app-butter-s:#524328;--app-sky:#B8D5EA;--app-sky-d:#D9E9F6;--app-sky-s:#324253;--app-lav-text:var(--app-lav-d);--app-lav-fill:var(--app-lav-d);--app-sage-text:var(--app-sage-d);--app-sage-fill:var(--app-sage-d);--app-sky-text:var(--app-sky-d);--app-sky-fill:var(--app-sky-d);--app-butter-text:var(--app-butter-d);--app-butter-fill:var(--app-butter-d);--app-coral-text:var(--app-coral-d);--app-coral-fill:var(--app-coral-d);--app-fill-on:var(--app-cream);--app-muted-cream:#A79EAF;--app-muted-paper:#A79EAF;--focus-ring:#F6F1E4;--focus-halo:#2E2A38;--app-bar-track:#726C82;--app-field-line:#9A93A4;--warm-fill:var(--warm);--shadow-card:0 2px 8px rgba(0,0,0,0.30);--shadow-lift:0 8px 24px rgba(0,0,0,0.22);--shadow-pop:0 16px 40px rgba(201,184,238,0.28)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:hidden;scroll-padding-bottom:var(--tabbar-clear)}body{margin:0;font-family:var(--fs-sans);color:var(--app-ink);background:var(--app-cream);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}::selection{background:var(--accent-soft)}.serif{font-family:var(--fs-serif);font-weight:340}.kicker,.mono{font-family:var(--fs-mono)}.kicker{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--app-muted-cream)}.display{font-weight:340;letter-spacing:-.022em;line-height:1.05}.display,.em,em.em{font-family:var(--fs-serif)}.em,em.em{font-style:italic;color:var(--accent);font-weight:400}.code,code{font-family:var(--fs-mono);font-size:.86em;background:rgba(24,19,15,.05);padding:1px 5px;border-radius:3px}[data-theme=dark] code{background:rgba(243,237,227,.08)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-halo);border-radius:inherit}:focus:not(:focus-visible){outline:none}.skip-link{position:absolute;top:0;left:0;z-index:999;transform:translateY(-120%);margin:8px;padding:12px 18px;background:var(--app-paper);color:var(--app-ink);border:1px solid var(--app-hair);border-radius:12px;font:600 15px/1 var(--fs-sans);text-decoration:none;transition:transform var(--motion-quick) var(--ease-standard)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[role=button],a,button,input[type=checkbox],input[type=radio],summary{min-height:24px;min-width:24px}.prose a,li a,p a,span a{min-height:0;min-width:0}.app{display:flex;min-height:100vh;min-height:100dvh}.sidebar{position:sticky;top:0;align-self:flex-start;width:var(--sidebar-w);height:100vh;height:100dvh;flex:0 0 var(--sidebar-w);background:var(--app-paper);border-right:1px solid var(--app-hair);display:flex;flex-direction:column;padding:26px 16px;overflow-y:auto;scroll-padding:8px}.sidebar>*{flex-shrink:0}.sidebar .brand{display:flex;align-items:center;gap:10px;padding:4px 12px 26px}.brand .word{font-family:var(--fs-serif);font-size:28px;font-weight:360;letter-spacing:-.02em;color:var(--app-ink);line-height:1.1}.brand .word .dot{color:var(--app-lav-text)}.sidebar nav{display:flex;flex-direction:column;gap:4px}.navitem{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 14px;border-radius:var(--radius-card);color:var(--app-ink-soft);font-size:16px;font-weight:500;line-height:1.2;transition:background var(--motion-instant) var(--ease-standard),color var(--motion-instant) var(--ease-standard)}.navitem svg{width:22px;height:22px;stroke-width:1.7;flex:0 0 22px}.navitem>span:not(.badge){min-width:0}.navitem:hover{background:var(--app-cream);color:var(--app-ink)}.navitem.active{background:var(--app-ink);color:var(--app-cream)}.navitem .badge{margin-left:auto;flex:0 0 auto;font-family:var(--fs-mono);font-size:10px;background:var(--app-coral-fill);color:var(--app-fill-on);padding:1px 6px;border-radius:var(--radius-pill)}.sidebar .spacer{flex:1 1}.sidebar .rail-foot{gap:0}.rail-card,.sidebar .rail-foot{display:flex;flex-direction:column}.rail-card{background:var(--app-cream);border-radius:var(--radius-panel);padding:14px 14px 12px;gap:10px}.rail-card__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px}.rail-card__level{font-size:13px;font-weight:600;color:var(--app-ink)}.rail-card__xp{font-family:var(--fs-mono);font-size:11px;color:var(--app-muted-cream);min-width:0}.rail-meter{height:6px;background:var(--app-bar-track);overflow:hidden}.rail-meter,.rail-meter__fill{border-radius:var(--radius-pill)}.rail-meter__fill{height:100%;background:var(--app-lav-text)}.rail-streak{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--app-ink-soft)}.rail-streak__ico{width:20px;height:20px;flex:0 0 20px;border-radius:var(--radius-pill);background:var(--app-butter-s);color:var(--app-butter-text);display:grid;place-items:center;line-height:0}.rail-streak b{color:var(--app-ink)}.rail-foot .theme-toggle{margin-top:8px}.rail-user{display:flex;align-items:center;gap:10px;padding:14px 10px 0}.rail-user .avatar{width:34px;height:34px;flex:0 0 34px;border-radius:var(--radius-pill);background:var(--app-lav-s);color:var(--app-lav-text);display:grid;place-items:center;font-weight:600;font-size:13px}.rail-user__text{min-width:0;line-height:1.2}.rail-user__name{font-size:14px;font-weight:600;color:var(--app-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-user__plan{font-size:11px;color:var(--app-muted-paper)}.theme-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--app-muted-paper);padding:4px 10px;min-height:32px;background:none;border:0;cursor:pointer;text-align:left;font-family:inherit;transition:color var(--motion-instant) var(--ease-standard)}.theme-toggle b,.theme-toggle:hover{color:var(--app-ink-soft)}.theme-toggle b{font-weight:600}.theme-toggle__ico{display:inline-flex;align-items:center;justify-content:center;line-height:0}.theme-toggle__ico svg{display:block}.surface{flex:1 1;min-width:0;display:flex;flex-direction:column}.shell-brandbar{display:none}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:18px 32px 14px;background:linear-gradient(var(--app-cream) 70%,color-mix(in srgb,var(--app-cream) 0%,transparent));-webkit-backdrop-filter:saturate(1.1);backdrop-filter:saturate(1.1)}.topbar .title-block .kicker{margin-bottom:4px}.topbar .title-block :is(h1,p){margin:0;font-family:var(--fs-sans);font-weight:700;font-size:var(--platform-heading,30px);letter-spacing:-.018em;color:var(--app-ink);line-height:1.05}.topbar .cluster{display:flex;align-items:center;gap:8px}.page{flex:1 1;padding:4px 32px 120px}.page-narrow{max-width:var(--content-max);margin:0 auto}.tabbar{display:none}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:var(--radius-pill);font-family:var(--fs-mono);font-size:12px;font-weight:500;background:var(--app-paper);border:1px solid var(--app-hair);color:var(--app-ink)}.pill.pro{background:var(--app-lav-s);border-color:var(--app-lavender);color:var(--app-lav-d)}.pill.streak{background:var(--app-butter-s);border-color:rgba(199,159,94,.4);color:var(--app-butter-text)}.pill .muted{color:var(--app-muted-paper)}.icon-btn{width:40px;height:40px;border-radius:var(--radius-pill);background:var(--app-paper);border:1px solid var(--app-hair);display:grid;place-items:center;position:relative;color:var(--app-ink)}.icon-btn .dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--app-coral-d);box-shadow:0 0 0 2px var(--app-cream)}.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-pill);font-family:var(--fs-mono);font-size:11px;font-weight:500;letter-spacing:.02em}.chip.lavender{color:var(--app-lav-text);background:var(--app-lav-s)}.chip.sage{color:var(--app-sage-text);background:var(--app-sage-s)}.chip.coral{color:var(--app-coral-text);background:var(--app-coral-s)}.chip.butter{color:var(--app-butter-text);background:var(--app-butter-s)}.chip.sky{color:var(--app-sky-text);background:var(--app-sky-s)}.card{background:var(--app-paper);border:1px solid var(--app-hair);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--radius-pill);font-family:var(--fs-sans);font-size:15px;font-weight:500;transition:transform var(--motion-instant),opacity var(--motion-instant)}.btn:active{transform:translateY(1px)}.btn-block{width:100%}.btn-primary{background:var(--app-ink);color:var(--app-cream)}.btn-accent{background:var(--app-lav-fill);color:var(--app-fill-on)}.btn-success{background:var(--app-sage-fill);color:var(--app-fill-on)}.btn-danger{background:var(--app-coral-fill);color:var(--app-fill-on)}.btn-ghost{background:transparent;color:var(--app-ink-soft)}.btn-outline{background:transparent;color:var(--app-ink);border:1px solid var(--app-hair)}.btn:disabled{opacity:.4;pointer-events:none}.lesson-surface{background:var(--canvas);color:var(--ink)}.lbtn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:var(--radius-pill);font-family:var(--fs-sans);font-size:15px;font-weight:500}.lbtn-primary{background:var(--ink);color:var(--canvas)}.lbtn-accent{background:var(--accent)}.lbtn-accent,.lbtn-warm{color:var(--app-fill-on)}.lbtn-warm{background:var(--warm-fill)}.lbtn-outline{background:transparent;color:var(--ink);border:1px solid var(--hair)}.eyebrow{font-family:var(--fs-sans);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--accent);display:inline-flex;align-items:center;gap:6px}.eyebrow:before{content:"◆";font-size:7px;opacity:.6}.eyebrow.warm{color:var(--warm)}.eyebrow.sage{color:var(--sage)}.eyebrow.caps{text-transform:uppercase;letter-spacing:.15em}.eyebrow.caps:before{content:none}.lchip{display:inline-flex;padding:3px 9px;border-radius:var(--radius-pill);font-family:var(--fs-sans);font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft)}.lchip.warm{color:var(--warm);background:var(--warm-soft)}.lchip.sage{color:var(--sage);background:var(--sage-soft)}.option{display:flex;align-items:flex-start;gap:12px;padding:13px 16px;border-radius:var(--radius-xl);background:var(--paper-soft);border:1px solid var(--hair);color:var(--ink);font-size:15px;cursor:pointer;transition:background var(--motion-quick) var(--ease-standard),border-color var(--motion-quick) var(--ease-standard)}.option .bullet{flex:0 0 13px;width:13px;height:13px;margin-top:3px;border-radius:50%;border:1.5px solid var(--hair);transition:all var(--motion-quick) var(--ease-standard)}.option.selected{background:var(--accent-soft);border-color:var(--accent)}.option.selected .bullet{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 3px var(--accent-soft)}.option.correct{background:var(--sage-soft);border-color:var(--sage)}.option.correct .bullet{background:var(--sage);border-color:var(--sage);box-shadow:inset 0 0 0 3px var(--sage-soft)}.option.wrong{color:var(--ink-faint)}.option.wrong .bullet{border-color:var(--warm)}.option.dim{color:var(--ink-faint)}.goal{background:var(--warm-soft);border-left:2px solid var(--warm);border-radius:var(--radius-md);padding:10px 14px}.goal .lbl{font-family:var(--fs-sans);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--warm);margin-bottom:4px}.goal .txt{color:var(--ink-soft);font-size:13px;line-height:1.5}.goal .txt b{color:var(--warm);font-weight:600}.figure{background:var(--accent-soft);padding:18px 14px;place-items:center}.figure,.termcard .visual{border-radius:var(--radius-lg);display:grid}.termcard .visual{height:200px;background:linear-gradient(var(--accent-soft),var(--canvas));place-items:center}.termcard .term{font-family:var(--fs-serif);font-weight:400;font-size:40px;color:var(--ink);margin:22px 0 0;line-height:1.1}.termcard .def{font-size:15px;color:var(--ink);line-height:1.6;margin-top:6px}.termcard .like{margin-top:8px;padding-left:14px;border-left:3px solid var(--sage)}.termcard .like .lbl{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--sage)}.termcard .like .txt{font-family:var(--fs-serif);font-style:italic;font-size:16px;color:var(--ink-soft)}.godeeper{border:1px solid var(--accent);border-radius:var(--radius-lg);background:var(--canvas);padding:14px 16px}.godeeper.open{background:var(--accent-soft)}.godeeper summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;font-family:var(--fs-serif);font-style:italic;font-size:14px;color:var(--accent)}.godeeper summary::-webkit-details-marker{display:none}.godeeper summary .chev{transition:transform var(--motion-quick)}.godeeper[open] summary .chev{transform:rotate(90deg)}.lslider{appearance:none;width:100%;height:3px;border-radius:3px;background:var(--hair)}.lslider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--accent);border:2px solid var(--canvas);box-shadow:0 0 0 1px var(--accent)}.lslider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--accent);border:2px solid var(--canvas);box-shadow:0 0 0 1px var(--accent)}.reader{position:relative;width:100%;max-width:660px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;background:var(--canvas)}.reader .chrome-top{display:flex;align-items:center;gap:14px;padding:18px 24px 14px}.reader .chrome-top .x{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius-md);background:var(--paper-soft);border:1px solid var(--hair);font-size:20px;font-weight:300;color:var(--ink);line-height:1;transition:background var(--motion-quick) var(--ease-standard)}.reader .chrome-top .x:hover{background:var(--accent-soft)}.reader .progress{flex:1 1;height:5px;border-radius:var(--radius-pill);background:var(--hair);overflow:hidden}.reader .progress i{display:block;height:100%;background:var(--accent);transition:width var(--motion-standard) var(--ease-inout),background var(--motion-quick) var(--ease-standard)}.reader .progress.is-wrong i{background:var(--warm)}.reader .counter{font-family:var(--fs-mono);font-size:12px;color:var(--ink-soft)}.reader .counter b{color:var(--accent);font-weight:600}.reader .chrome-top+.rule{height:1px;background:var(--hair)}.reader .content{flex:1 1;display:flex;flex-direction:column;justify-content:center;padding:28px 24px;gap:16px}.reader .content.top{justify-content:flex-start;padding-top:32px}.reader .chrome-foot{border-top:1px solid var(--hair);padding:14px 20px 22px}.reader .cta{width:100%;padding:18px;border-radius:var(--radius-xl);font-family:var(--fs-sans);font-size:16px;font-weight:500;color:var(--canvas);background:var(--ink);text-align:center}.reader .cta.accent{background:var(--accent)}.reader .cta.disabled{background:var(--ink-faint);opacity:.5;pointer-events:none}.hook{font-weight:340;font-size:34px;line-height:1.12;letter-spacing:-.02em}.hook,.reveal-h{font-family:var(--fs-serif);color:var(--ink)}.reveal-h{font-weight:360;font-size:24px;line-height:1.35}.reveal-b{font-size:15px;line-height:1.58;color:var(--ink-soft)}.analogy{border-left:3px solid var(--sage);padding-left:14px}.feedback{border-radius:var(--radius-lg);padding:14px}.feedback.correct{background:var(--sage-soft)}.feedback.wrong{background:var(--warm-soft)}.feedback .tag{font-family:var(--fs-sans);font-size:11px;font-weight:600;letter-spacing:.1em}.feedback.correct .tag{color:var(--sage)}.feedback.wrong .tag{color:var(--warm)}.feedback .line{font-style:italic;font-size:17px;margin-top:6px}.feedback .line,.recap-cap{font-family:var(--fs-serif);color:var(--ink)}.recap-cap{font-weight:600;font-size:30px;line-height:1.22}.recap-b{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--ink);margin-top:12px}.recap-b .d{width:5px;height:5px;border-radius:50%;background:var(--accent);margin-top:8px;flex:0 0 5px}.tryit-stub{background:var(--paper-soft);border:1px dashed var(--hair);border-radius:var(--radius-lg);padding:24px;text-align:center;color:var(--ink-faint);display:flex;flex-direction:column;gap:6px;align-items:center}.tryit-stub .k{font-family:var(--fs-mono);font-size:10px;letter-spacing:.12em;color:var(--accent)}.tryit-stub .name{font-family:var(--fs-mono);font-size:12px;color:var(--ink-soft)}.tensor-greeting{display:flex;align-items:center;gap:14px;padding:14px}.tensor-greeting .quote{font-family:var(--fs-serif);font-style:italic;font-size:20px;color:var(--app-ink);line-height:1.25}.tensor-bubble{display:flex;align-items:flex-start;gap:12px}.tensor-bubble .bubble{position:relative;background:var(--app-paper);border:1.5px solid var(--app-hair);border-radius:12px;border-top-left-radius:4px;padding:12px 14px}.tensor-bubble .bubble:before{content:"";position:absolute;left:-8px;top:12px;width:9px;height:14px;background:var(--app-paper);clip-path:polygon(100% 0,100% 100%,0 50%)}axon-tensor{display:inline-block;line-height:0}@keyframes tensor-float{50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:no-preference){axon-tensor[float] svg{animation:tensor-float 3s var(--ease-inout) infinite}}.phone{width:300px;border-radius:38px;padding:10px;background:#0f0e0c;box-shadow:var(--shadow-phone)}.phone .screen{border-radius:30px;overflow:hidden;background:var(--app-cream);aspect-ratio:9/19.5}.browser{border-radius:12px;overflow:hidden;border:1px solid var(--app-hair);box-shadow:var(--shadow-phone)}.browser,.browser .bar{background:var(--app-paper)}.browser .bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--app-hair)}.browser .bar .d{width:10px;height:10px;border-radius:50%;background:var(--app-hair)}.browser .bar .url{margin-left:10px;font-family:var(--fs-mono);font-size:11px;color:var(--app-ink-faint)}.row{align-items:center}.col,.row{display:flex}.col{flex-direction:column}.gap-xs{gap:8px}.gap-sm{gap:12px}.gap-md{gap:16px}.gap-lg{gap:24px}.faint,.muted{color:var(--app-ink-soft)}.center{text-align:center}@media (max-width:860px){:root{--tabbar-h:calc(var(--tabbar-pad-top) + var(--tabbar-tab-pad) * 2 + var(--tabbar-icon) + var(--tabbar-tab-gap) + var(--tabbar-label) * var(--tabbar-label-lh) + var(--tabbar-pad-bottom) + var(--tabbar-border))}.surface{overflow-x:hidden}.sidebar{display:none}.shell-brandbar{display:flex;align-items:center;padding:22px 20px 0}.shell-brandbar .word{font-size:26px}.topbar{padding:10px 20px 12px;gap:8px 10px;flex-wrap:wrap;align-items:center}.topbar .title-block{min-width:0;flex:1 1 60%}.topbar .title-block :is(h1,p){font-size:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .cluster{flex:0 0 auto;margin-left:auto}.page{padding:4px 20px var(--tabbar-clear)}.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;padding:var(--tabbar-pad-top) 12px var(--tabbar-pad-bottom);gap:4px;background:linear-gradient(color-mix(in srgb,var(--app-cream) 85%,transparent),var(--app-cream));border-top:var(--tabbar-border) solid var(--app-hair);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tabbar .tab{position:relative;flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--tabbar-tab-gap);padding:var(--tabbar-tab-pad) 0;border-radius:var(--radius-xl);color:var(--app-ink-soft)}.tabbar .tab svg{width:var(--tabbar-icon);height:var(--tabbar-icon);stroke-width:1.7}.tabbar .tab span{font-size:var(--tabbar-label);font-weight:500;line-height:var(--tabbar-label-lh);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar .tab.active{background:var(--app-ink);color:var(--app-cream)}}@media (max-width:360px){.tabbar{padding-left:6px;padding-right:6px;gap:2px}}.prac-tabdot{position:absolute;top:4px;right:calc(50% - 16px);width:7px;height:7px;border-radius:50%;background:var(--app-coral-fill)}@media (max-width:440px){.topbar .cluster .pill:first-child{display:none}}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1.5px solid var(--app-ink)}.section-head__main{min-width:0}.section-head__kicker{font-size:10px;letter-spacing:.1em;color:var(--app-ink-faint);margin:0 0 3px}.section-head__kicker,.section-head__title{font-family:var(--fs-mono);font-weight:500;text-transform:uppercase}.section-head__title{margin:0;font-size:13px;line-height:1.2;letter-spacing:.08em;color:var(--app-ink)}.section-head__trailing{flex:0 0 auto;gap:var(--space-xs)}.opt,.section-head__trailing{display:flex;align-items:center}.opt{gap:var(--space-sm);width:100%;text-align:left;padding:14px 16px;border-radius:var(--radius-card);background:var(--app-paper);border:1.5px solid var(--app-hair);color:var(--app-ink);font-family:var(--fs-sans);font-size:15px;line-height:1.4;cursor:pointer;transition:background var(--motion-quick) var(--ease-standard),border-color var(--motion-quick) var(--ease-standard),color var(--motion-quick) var(--ease-standard),transform var(--motion-instant) var(--ease-standard)}.opt:active:not(:disabled){transform:translateY(1px)}.opt:disabled{cursor:default}.opt__leading{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.opt__label{flex:1 1 auto;min-width:0}.opt--selected{background:var(--app-lav-s);border-color:var(--app-lavender);color:var(--app-lav-d)}.opt--correct{background:var(--app-sage-s);border-color:var(--app-sage);color:var(--app-sage-d)}.opt--wrong{background:var(--app-coral-s);border-color:var(--app-coral);color:var(--app-coral-d)}.fb{display:flex;flex-direction:column;gap:var(--space-2xs);padding:14px 16px;border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.fb--correct{background:var(--app-sage-s)}.fb--wrong{background:var(--app-coral-s)}.fb__title{font-family:var(--fs-mono);font-size:11px;font-weight:600;letter-spacing:.06em}.fb--correct .fb__title{color:var(--app-sage-d)}.fb--wrong .fb__title{color:var(--app-coral-d)}.fb__body{font-size:14px;line-height:1.5;color:var(--app-ink)}.streak-flame{display:inline-block;vertical-align:middle;line-height:0}:root{--ease-exit:cubic-bezier(0.4,0,1,1)}.ax-rise{animation:ax-rise-in .55s var(--ease-standard) both;animation-delay:var(--ax-delay,0s)}@keyframes ax-rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.ax-stagger>*{animation:ax-rise-child .42s var(--ease-standard) both}.ax-stagger>:first-child{animation-delay:.03s}.ax-stagger>:nth-child(2){animation-delay:.08s}.ax-stagger>:nth-child(3){animation-delay:.14s}.ax-stagger>:nth-child(4){animation-delay:.2s}.ax-stagger>:nth-child(n+5){animation-delay:.26s}@keyframes ax-rise-child{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ax-advance-out{animation:ax-advance-out .14s var(--ease-exit) forwards}.ax-advance-in{animation:ax-advance-in var(--motion-standard) var(--ease-standard)}@keyframes ax-advance-out{to{opacity:0;transform:translateX(-28px)}}@keyframes ax-advance-in{0%{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}.opt{overflow:hidden}.opt,.opt>*{position:relative}.opt>*{z-index:1}.opt--correct:before{content:"";position:absolute;inset:0;z-index:0;background:var(--app-sage-s);transform:scaleX(0);transform-origin:left;animation:ax-sweep .34s var(--ease-standard) forwards}.opt--correct{animation:ax-commit-pop .38s var(--ease-spring)}.opt--wrong{animation:ax-shake .34s var(--ease-standard)}@keyframes ax-sweep{to{transform:scaleX(1)}}@keyframes ax-commit-pop{0%{transform:scale(1)}42%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes ax-shake{0%{transform:translateX(0)}15%{transform:translateX(-7px)}32%{transform:translateX(6px)}50%{transform:translateX(-4px)}68%{transform:translateX(3px)}85%{transform:translateX(-1px)}to{transform:translateX(0)}}.progress.is-wrong{animation:ax-bar-flash .34s var(--ease-standard)}@keyframes ax-bar-flash{0%,to{opacity:1}30%{opacity:.55}}.ax-tally{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:inline-block}.ax-tally--pop{animation:ax-tally-pop .42s var(--ease-spring)}@keyframes ax-tally-pop{0%{transform:scale(.94)}55%{transform:scale(1.07)}to{transform:scale(1)}}.ax-fill{transition:width .9s var(--ease-standard)}.ax-trace{stroke-dasharray:var(--ax-len,100);stroke-dashoffset:var(--ax-len,100);animation:ax-trace .62s var(--ease-standard) forwards;animation-delay:var(--ax-delay,0s)}@keyframes ax-trace{to{stroke-dashoffset:0}}.ax-land{animation:ax-land .52s var(--ease-spring)}@keyframes ax-land{0%{transform:scale(.78)}46%{transform:scale(1.07)}to{transform:scale(1)}}.ax-burst{position:absolute;inset:0;pointer-events:none;z-index:2}.ax-spark{position:absolute;left:50%;top:50%;width:3px;height:9px;margin:-4px 0 0 -1.5px;border-radius:2px;opacity:0;background:var(--ax-spark,var(--app-sage-d));animation:ax-burst .62s var(--ease-standard) forwards}@keyframes ax-burst{0%{transform:rotate(var(--ax-ang)) translateY(0) scaleY(.5);opacity:0}18%{opacity:1}to{transform:rotate(var(--ax-ang)) translateY(calc(-1 * var(--ax-dist)));opacity:0}}.ax-flicker{display:inline-block;transform-origin:50% 90%;animation:ax-flicker .9s var(--ease-standard) 2}@keyframes ax-flicker{0%{transform:scale(1) rotate(0)}22%{transform:scale(1.16) rotate(-4deg)}46%{transform:scale(.97) rotate(3deg)}70%{transform:scale(1.09) rotate(-2deg)}to{transform:scale(1) rotate(0)}}.ax-scrim{animation:ax-scrim-in var(--motion-quick) var(--ease-standard) both}.ax-sheet{animation:ax-sheet-in var(--motion-standard) var(--ease-standard) both}@keyframes ax-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes ax-sheet-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}.ax-fill-in{transform-origin:left center;animation:ax-fill-in .9s var(--ease-standard) both}@keyframes ax-fill-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.ax-skel{background:var(--app-hair);border-radius:var(--radius-md);opacity:0;animation:ax-skel 1.6s var(--ease-inout) .4s infinite}@keyframes ax-skel{0%,to{opacity:.55}50%{opacity:.9}}.ax-skel--text{height:12px}.ax-skel--round{border-radius:var(--radius-pill)}@keyframes ax-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.ax-rise{animation:ax-fade-in .2s linear both;animation-delay:0s}.ax-advance-out{animation:none;opacity:0}.ax-advance-in{animation:ax-fade-in .2s linear}.opt--correct,.opt--wrong,.progress.is-wrong{animation:none}.opt--correct:before{animation:none;transform:scaleX(1)}.ax-flicker,.ax-land,.ax-tally--pop{animation:none}.ax-stagger>*{animation:ax-fade-in .2s linear both;animation-delay:0s}.ax-spark{display:none}.ax-trace{animation:none;stroke-dashoffset:0}.ax-fill{transition:none}.ax-sheet{animation:ax-scrim-in .15s linear both}.ax-fill-in{animation:none;transform:none}.ax-skel{animation:none;opacity:.7}}html[data-reduced-motion=true] *,html[data-reduced-motion=true] :after,html[data-reduced-motion=true] :before{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}html[data-reduced-motion=true] .ax-spark{display:none}html[data-reduced-motion=true] .ax-trace{stroke-dashoffset:0}html[data-reduced-motion=true] .ax-skel{opacity:.7}