@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Coding-For-MBA/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Coding-For-MBA/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Coding-For-MBA/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Coding-For-MBA/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Coding-For-MBA/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Coding-For-MBA/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Coding-For-MBA/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Coding-For-MBA/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--ink-50: #f5f5f7;--ink-100: #d4d4dc;--ink-200: #a8a8b4;--ink-300: #6d6d77;--ink-400: #4a4a52;--ink-500: #3a3a42;--ink-600: #26262c;--ink-700: #1b1b20;--ink-800: #131316;--ink-900: #0b0b0c;--bone-50: #faf6ec;--bone-100: #f1ece0;--bone-200: #e8e4d8;--bone-300: #d4cdb8;--bone-400: #b8b09b;--bone-500: #9b9582;--bone-700: #6b6754;--bone-900: #2c2a22;--signal-300: #e8ff7f;--signal-500: #d4ff3f;--signal-700: #a8cc0f;--signal-900: #586a08;--amber-500: #ffb000;--ruby-500: #ff4d4d;--teal-500: #3fbfa0}:root{--bg-primary: var(--ink-900);--bg-secondary: var(--ink-900);--bg-card: var(--ink-800);--bg-card-hover: var(--ink-700);--bg-surface: var(--ink-800);--bg-code: var(--ink-700);--surface-paper: var(--ink-900);--surface-ink: var(--ink-800);--text-primary: var(--bone-200);--text-secondary: var(--bone-500);--text-muted: var(--bone-700);--text-heading: var(--bone-100);--text-on-accent: var(--ink-900);--text-on-brand: var(--ink-900);--accent-primary: var(--signal-500);--accent-secondary: var(--signal-300);--accent-tertiary: var(--amber-500);--accent-signal: var(--signal-500);--accent-amber: var(--amber-500);--accent-glow: rgba(212, 255, 63, .18);--border-subtle: rgba(232, 228, 216, .08);--border-card: rgba(232, 228, 216, .14);--border-active: rgba(212, 255, 63, .45);--rule-hairline: 1px solid var(--border-subtle);--rule-strong: 1px solid var(--border-card);--gradient-hero: none;--gradient-card: none;--gradient-glow: none;--gradient-logo: none;--gradient-concept-bg: radial-gradient(ellipse at 30% 20%, rgba(212, 255, 63, .06), transparent 50%), radial-gradient(ellipse at 70% 80%, rgba(255, 176, 0, .04), transparent 50%);--reading-theme-bg-primary: var(--ink-900);--reading-theme-bg-surface: var(--ink-800);--reading-theme-bg-card: var(--ink-800);--reading-theme-bg-card-hover: var(--ink-700);--reading-theme-bg-code: var(--ink-700);--reading-theme-accent-primary: var(--signal-300);--reading-theme-accent-secondary: var(--bone-300);--reading-theme-accent-tertiary: var(--amber-500);--reading-theme-border-subtle: rgba(232, 228, 216, .06);--reading-theme-border-card: rgba(232, 228, 216, .1);--reading-theme-border-active: rgba(212, 255, 63, .32);--reading-theme-accent-glow: rgba(212, 255, 63, .08);--shadow-card: 0 1px 0 0 var(--border-subtle);--shadow-elevated: 0 12px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 0 1px var(--border-active);--sidebar-width: 280px;--navbar-height: 72px;--content-max-width: 1180px;--reading-max-width: 68ch;--page-padding: clamp(1rem, 3vw, 2.25rem);--grid-col: minmax(0, 1fr);--grid-gutter: clamp(1rem, 2vw, 2rem);--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 10px;--motion-duration-instant: 0ms;--motion-duration-fast: .15s;--motion-duration-standard: .22s;--motion-duration-slow: .36s;--motion-duration-skeleton: 1.4s;--motion-duration-view-transition: .18s;--motion-duration-card-entrance: .42s;--motion-easing-standard: cubic-bezier(.32, .72, 0, 1);--motion-easing-emphasized: cubic-bezier(.22, 1, .36, 1);--motion-duration-active-fast: var(--motion-duration-fast);--motion-duration-active-standard: var(--motion-duration-standard);--motion-duration-active-slow: var(--motion-duration-slow);--motion-duration-active-skeleton: var(--motion-duration-skeleton);--motion-duration-active-view-transition: var(--motion-duration-view-transition);--motion-duration-active-card-entrance: var(--motion-duration-card-entrance);--transition-fast: var(--motion-duration-fast) var(--motion-easing-standard);--transition-base: var(--motion-duration-standard) var(--motion-easing-standard);--transition-slow: var(--motion-duration-slow) var(--motion-easing-standard);--font-display: "Fraunces Variable", "Fraunces", "Iowan Old Style", "Source Serif Pro", Georgia, serif;--font-body: var(--font-display);--font-mono: "JetBrains Mono Variable", "JetBrains Mono", "IBM Plex Mono", "Berkeley Mono", ui-monospace, monospace;--font-ui: var(--font-mono);--app-font-size: 1rem;--density-scale: 1;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.55;--leading-relaxed: 1.7;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .06em;--tracking-mono: .01em}[data-palette=terminal-dark]{--bg-primary: var(--ink-900);--bg-secondary: var(--ink-900);--bg-card: var(--ink-800);--bg-card-hover: var(--ink-700);--bg-surface: var(--ink-800);--bg-code: var(--ink-700);--surface-paper: var(--ink-900);--surface-ink: var(--ink-800);--text-primary: var(--bone-200);--text-secondary: var(--bone-500);--text-muted: var(--bone-700);--text-heading: var(--bone-100);--text-on-accent: var(--ink-900);--text-on-brand: var(--ink-900);--accent-primary: var(--signal-500);--accent-secondary: var(--signal-300);--accent-tertiary: var(--amber-500);--accent-glow: rgba(212, 255, 63, .18);--border-subtle: rgba(232, 228, 216, .08);--border-card: rgba(232, 228, 216, .14);--border-active: rgba(212, 255, 63, .45);--gradient-hero: none;--gradient-card: none;--gradient-glow: none;--gradient-logo: none;--shadow-card: 0 1px 0 0 var(--border-subtle);--shadow-elevated: 0 12px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 0 1px var(--border-active);--reading-bg-primary: var(--ink-900);--reading-bg-surface: var(--ink-800);--reading-bg-code: var(--ink-700);--reading-border-subtle: rgba(232, 228, 216, .06);--reading-border-card: rgba(232, 228, 216, .1);--reading-border-active: rgba(212, 255, 63, .32);--reading-accent-glow: rgba(212, 255, 63, .08)}[data-palette=bone-light]{--bg-primary: var(--bone-50);--bg-secondary: var(--bone-100);--bg-card: #fbfaf2;--bg-card-hover: var(--bone-100);--bg-surface: var(--bone-50);--bg-code: var(--bone-200);--surface-paper: var(--bone-50);--surface-ink: #fbfaf2;--text-primary: var(--ink-800);--text-secondary: var(--ink-500);--text-muted: var(--ink-400);--text-heading: var(--ink-900);--text-on-accent: var(--ink-900);--text-on-brand: var(--ink-900);--accent-primary: var(--ink-900);--accent-secondary: var(--ink-700);--accent-tertiary: var(--signal-700);--accent-glow: rgba(11, 11, 12, .12);--border-subtle: rgba(11, 11, 12, .1);--border-card: rgba(11, 11, 12, .16);--border-active: var(--ink-900);--gradient-hero: none;--gradient-card: none;--gradient-glow: none;--gradient-logo: none;--shadow-card: 0 1px 0 0 var(--border-subtle);--shadow-elevated: 0 16px 40px rgba(11, 11, 12, .08);--shadow-glow: 0 0 0 1px var(--ink-900);--reading-bg-primary: var(--bone-50);--reading-bg-surface: #fbfaf2;--reading-bg-code: var(--bone-200);--reading-border-subtle: rgba(11, 11, 12, .08);--reading-border-card: rgba(11, 11, 12, .12);--reading-border-active: var(--ink-900);--reading-accent-glow: rgba(11, 11, 12, .04);--reading-theme-bg-primary: var(--bone-50);--reading-theme-bg-surface: #fbfaf2;--reading-theme-bg-card: #fbfaf2;--reading-theme-bg-card-hover: var(--bone-100);--reading-theme-bg-code: var(--bone-200);--reading-theme-accent-primary: var(--ink-900);--reading-theme-accent-secondary: var(--ink-700);--reading-theme-accent-tertiary: var(--signal-700);--reading-theme-border-subtle: rgba(11, 11, 12, .08);--reading-theme-border-card: rgba(11, 11, 12, .12);--reading-theme-border-active: var(--ink-900);--reading-theme-accent-glow: rgba(11, 11, 12, .04)}[data-palette=peach-sorbet]{--bg-primary: #fff8f5;--bg-secondary: #fff0ea;--bg-card: #ffeee6;--bg-card-hover: #ffe4d9;--bg-surface: #fff5f0;--bg-code: #fde8df;--text-primary: #4a2520;--text-secondary: #7a4a40;--text-muted: #8b5f54;--text-heading: #2d1510;--accent-primary: #9e4c49;--accent-secondary: #b05f55;--accent-tertiary: #a54f3a;--accent-glow: rgba(240, 128, 128, .25);--border-subtle: rgba(240, 128, 128, .18);--border-card: rgba(240, 128, 128, .24);--border-active: rgba(240, 128, 128, .5);--gradient-hero: linear-gradient(135deg, #f08080 0%, #f4978e 35%, #f8ad9d 65%, #ffdab9 100%);--gradient-card: linear-gradient( 145deg, rgba(240, 128, 128, .06) 0%, rgba(244, 151, 142, .03) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(240, 128, 128, .04), transparent 40% );--shadow-card: 0 1px 3px rgba(180, 80, 60, .08);--shadow-elevated: 0 4px 16px rgba(180, 80, 60, .12);--shadow-glow: 0 0 20px rgba(240, 128, 128, .12);--gradient-logo: linear-gradient(135deg, #f08080, #ffdab9);--reading-bg-primary: #fff3ee;--reading-bg-surface: #fff8f5;--reading-bg-code: #fde8df;--reading-border-subtle: rgba(240, 128, 128, .12);--reading-border-card: rgba(240, 128, 128, .18);--reading-border-active: rgba(240, 128, 128, .42);--reading-accent-glow: rgba(240, 128, 128, .08);--text-on-accent: #ffffff;--text-on-brand: #2d1510;--reading-theme-bg-primary: #fff3ee;--reading-theme-bg-surface: #fff8f5;--reading-theme-bg-card: #fff8f5;--reading-theme-bg-card-hover: #ffeee6;--reading-theme-bg-code: #fde8df;--reading-theme-accent-primary: #9e4c49;--reading-theme-accent-secondary: #b05f55;--reading-theme-accent-tertiary: #a54f3a;--reading-theme-border-subtle: rgba(240, 128, 128, .12);--reading-theme-border-card: rgba(240, 128, 128, .18);--reading-theme-border-active: rgba(240, 128, 128, .42);--reading-theme-accent-glow: rgba(240, 128, 128, .08)}[data-palette=gradient-blues]{--bg-primary: #0a0a1a;--bg-secondary: #0c0c20;--bg-card: #12122a;--bg-card-hover: #1a1a36;--bg-surface: #0f0f24;--bg-code: #111128;--text-primary: #e2e2f0;--text-secondary: #9b9bc0;--text-muted: #7e7ea3;--text-heading: #f0f0fa;--accent-primary: #7b80eb;--accent-secondary: #6930c3;--accent-tertiary: #48bfe3;--accent-glow: rgba(94, 96, 206, .25);--border-subtle: rgba(150, 160, 210, .12);--border-card: rgba(150, 160, 210, .18);--border-active: rgba(94, 96, 206, .4);--gradient-hero: linear-gradient(135deg, #7400b8 0%, #5e60ce 40%, #48bfe3 70%, #80ffdb 100%);--gradient-card: linear-gradient( 145deg, rgba(94, 96, 206, .08) 0%, rgba(105, 48, 195, .04) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(94, 96, 206, .06), transparent 40% );--shadow-card: 0 4px 24px rgba(0, 0, 0, .3);--shadow-elevated: 0 8px 40px rgba(0, 0, 0, .4);--shadow-glow: 0 0 40px rgba(94, 96, 206, .15);--gradient-logo: linear-gradient(135deg, #6930c3, #80ffdb);--reading-bg-primary: #090918;--reading-bg-surface: #0f0f24;--reading-bg-code: #12122a;--reading-border-subtle: rgba(150, 160, 210, .1);--reading-border-card: rgba(150, 160, 210, .14);--reading-border-active: rgba(94, 96, 206, .26);--reading-accent-glow: rgba(94, 96, 206, .1);--text-on-accent: #0a1020;--reading-theme-bg-primary: #090918;--reading-theme-bg-surface: #0f0f24;--reading-theme-bg-card: #12122a;--reading-theme-bg-card-hover: #1a1a36;--reading-theme-bg-code: #111128;--reading-theme-accent-primary: #7b80eb;--reading-theme-accent-secondary: #6930c3;--reading-theme-accent-tertiary: #48bfe3;--reading-theme-border-subtle: rgba(150, 160, 210, .1);--reading-theme-border-card: rgba(150, 160, 210, .14);--reading-theme-border-active: rgba(94, 96, 206, .26);--reading-theme-accent-glow: rgba(94, 96, 206, .1)}[data-palette=neon-party]{--bg-primary: #050510;--bg-secondary: #070715;--bg-card: #0c0c1e;--bg-card-hover: #121228;--bg-surface: #080818;--bg-code: #0a0a1c;--text-primary: #e0e0f8;--text-secondary: #9090c0;--text-muted: #7676be;--text-heading: #f0f0ff;--accent-primary: #00ccff;--accent-secondary: #cc00ff;--accent-tertiary: #00ffcc;--accent-glow: rgba(0, 204, 255, .3);--border-subtle: rgba(0, 204, 255, .15);--border-card: rgba(0, 204, 255, .2);--border-active: rgba(0, 204, 255, .5);--gradient-hero: linear-gradient(135deg, #cc00ff 0%, #00ccff 35%, #00ffcc 65%, #ffff00 100%);--gradient-card: linear-gradient( 145deg, rgba(0, 204, 255, .08) 0%, rgba(204, 0, 255, .04) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(0, 204, 255, .07), transparent 40% );--shadow-card: 0 4px 24px rgba(0, 0, 0, .4);--shadow-elevated: 0 8px 40px rgba(0, 0, 0, .5);--shadow-glow: 0 0 40px rgba(0, 204, 255, .2);--gradient-logo: linear-gradient(135deg, #cc00ff, #00ccff);--reading-bg-primary: #030308;--reading-bg-surface: #080818;--reading-bg-code: #0c0c1e;--reading-border-subtle: rgba(0, 204, 255, .1);--reading-border-card: rgba(0, 204, 255, .15);--reading-border-active: rgba(0, 204, 255, .35);--reading-accent-glow: rgba(0, 204, 255, .1);--text-on-accent: #04111a;--reading-theme-bg-primary: #030308;--reading-theme-bg-surface: #080818;--reading-theme-bg-card: #0c0c1e;--reading-theme-bg-card-hover: #121228;--reading-theme-bg-code: #0a0a1c;--reading-theme-accent-primary: #00ccff;--reading-theme-accent-secondary: #cc00ff;--reading-theme-accent-tertiary: #00ffcc;--reading-theme-border-subtle: rgba(0, 204, 255, .1);--reading-theme-border-card: rgba(0, 204, 255, .15);--reading-theme-border-active: rgba(0, 204, 255, .35);--reading-theme-accent-glow: rgba(0, 204, 255, .1)}[data-palette=deep-ocean-blue]{--bg-primary: #060e18;--bg-secondary: #091320;--bg-card: #0f1e2e;--bg-card-hover: #162638;--bg-surface: #0c1825;--bg-code: #0a1520;--text-primary: #c8e6e8;--text-secondary: #7ab0b5;--text-muted: #6c9aa1;--text-heading: #e0f0f2;--accent-primary: #42b7b3;--accent-secondary: #3d949b;--accent-tertiary: #48bfe3;--accent-glow: rgba(0, 100, 102, .3);--border-subtle: rgba(100, 180, 185, .12);--border-card: rgba(100, 180, 185, .18);--border-active: rgba(0, 100, 102, .45);--gradient-hero: linear-gradient(135deg, #006466 0%, #1b3a4b 40%, #272640 70%, #4d194d 100%);--gradient-card: linear-gradient(145deg, rgba(0, 100, 102, .1) 0%, rgba(39, 38, 64, .05) 100%);--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(0, 100, 102, .07), transparent 40% );--shadow-card: 0 4px 24px rgba(0, 0, 0, .35);--shadow-elevated: 0 8px 40px rgba(0, 0, 0, .45);--shadow-glow: 0 0 40px rgba(0, 100, 102, .2);--gradient-logo: linear-gradient(135deg, #006466, #4d194d);--reading-bg-primary: #04090f;--reading-bg-surface: #0c1825;--reading-bg-code: #0f1e2e;--reading-border-subtle: rgba(100, 180, 185, .1);--reading-border-card: rgba(100, 180, 185, .14);--reading-border-active: rgba(0, 100, 102, .3);--reading-accent-glow: rgba(0, 100, 102, .1);--text-on-accent: #031217;--reading-theme-bg-primary: #04090f;--reading-theme-bg-surface: #0c1825;--reading-theme-bg-card: #0f1e2e;--reading-theme-bg-card-hover: #162638;--reading-theme-bg-code: #0a1520;--reading-theme-accent-primary: #42b7b3;--reading-theme-accent-secondary: #3d949b;--reading-theme-accent-tertiary: #48bfe3;--reading-theme-border-subtle: rgba(100, 180, 185, .1);--reading-theme-border-card: rgba(100, 180, 185, .14);--reading-theme-border-active: rgba(0, 100, 102, .3);--reading-theme-accent-glow: rgba(0, 100, 102, .1)}[data-palette=pastel-dreamland]{--bg-primary: #faf7fd;--bg-secondary: #f4effa;--bg-card: #ede5f7;--bg-card-hover: #e4d9f2;--bg-surface: #f8f3fc;--bg-code: #f0eaf8;--text-primary: #3d2356;--text-secondary: #6a3e8c;--text-muted: #7d5b9a;--text-heading: #280e3e;--accent-primary: #6c4aa3;--accent-secondary: #8b4d6a;--accent-tertiary: #4b6f9f;--accent-glow: rgba(155, 114, 207, .28);--border-subtle: rgba(155, 114, 207, .18);--border-card: rgba(155, 114, 207, .25);--border-active: rgba(155, 114, 207, .5);--gradient-hero: linear-gradient(135deg, #cdb4db 0%, #ffc8dd 35%, #ffafcc 60%, #a2d2ff 100%);--gradient-card: linear-gradient( 145deg, rgba(155, 114, 207, .06) 0%, rgba(232, 120, 158, .03) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(155, 114, 207, .04), transparent 40% );--shadow-card: 0 1px 3px rgba(100, 50, 150, .08);--shadow-elevated: 0 4px 16px rgba(100, 50, 150, .1);--shadow-glow: 0 0 20px rgba(155, 114, 207, .15);--gradient-logo: linear-gradient(135deg, #cdb4db, #a2d2ff);--reading-bg-primary: #f5f0fa;--reading-bg-surface: #faf7fd;--reading-bg-code: #f0eaf8;--reading-border-subtle: rgba(155, 114, 207, .14);--reading-border-card: rgba(155, 114, 207, .2);--reading-border-active: rgba(155, 114, 207, .44);--reading-accent-glow: rgba(155, 114, 207, .08);--text-on-accent: #ffffff;--text-on-brand: #280e3e;--reading-theme-bg-primary: #f5f0fa;--reading-theme-bg-surface: #faf7fd;--reading-theme-bg-card: #faf7fd;--reading-theme-bg-card-hover: #ede5f7;--reading-theme-bg-code: #f0eaf8;--reading-theme-accent-primary: #6c4aa3;--reading-theme-accent-secondary: #8b4d6a;--reading-theme-accent-tertiary: #4b6f9f;--reading-theme-border-subtle: rgba(155, 114, 207, .14);--reading-theme-border-card: rgba(155, 114, 207, .2);--reading-theme-border-active: rgba(155, 114, 207, .44);--reading-theme-accent-glow: rgba(155, 114, 207, .08)}[data-palette=golden-summer-fields]{--bg-primary: #fefae0;--bg-secondary: #faf5d0;--bg-card: #faedcd;--bg-card-hover: #f5e5b8;--bg-surface: #fdf8e8;--bg-code: #f5eccc;--text-primary: #3b2f10;--text-secondary: #6a5020;--text-muted: #86662e;--text-heading: #261e08;--accent-primary: #7f5b22;--accent-secondary: #654a1c;--accent-tertiary: #5d6f36;--accent-glow: rgba(184, 133, 58, .28);--border-subtle: rgba(180, 140, 80, .18);--border-card: rgba(180, 140, 80, .26);--border-active: rgba(184, 133, 58, .5);--gradient-hero: linear-gradient(135deg, #d4a373 0%, #e9edc9 35%, #fefae0 65%, #ccd5ae 100%);--gradient-card: linear-gradient( 145deg, rgba(212, 163, 115, .07) 0%, rgba(204, 213, 174, .04) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(212, 163, 115, .04), transparent 40% );--shadow-card: 0 1px 3px rgba(100, 70, 20, .08);--shadow-elevated: 0 4px 16px rgba(100, 70, 20, .1);--shadow-glow: 0 0 20px rgba(212, 163, 115, .12);--gradient-logo: linear-gradient(135deg, #d4a373, #ccd5ae);--reading-bg-primary: #fdf7d8;--reading-bg-surface: #fefae0;--reading-bg-code: #f5eccc;--reading-border-subtle: rgba(180, 140, 80, .14);--reading-border-card: rgba(180, 140, 80, .2);--reading-border-active: rgba(184, 133, 58, .44);--reading-accent-glow: rgba(212, 163, 115, .08);--text-on-accent: #ffffff;--text-on-brand: #261e08;--reading-theme-bg-primary: #fdf7d8;--reading-theme-bg-surface: #fefae0;--reading-theme-bg-card: #fefae0;--reading-theme-bg-card-hover: #faedcd;--reading-theme-bg-code: #f5eccc;--reading-theme-accent-primary: #7f5b22;--reading-theme-accent-secondary: #654a1c;--reading-theme-accent-tertiary: #5d6f36;--reading-theme-border-subtle: rgba(180, 140, 80, .14);--reading-theme-border-card: rgba(180, 140, 80, .2);--reading-theme-border-active: rgba(184, 133, 58, .44);--reading-theme-accent-glow: rgba(212, 163, 115, .08)}[data-palette=light-steel]{--bg-primary: #f8f9fa;--bg-secondary: #e9ecef;--bg-card: #ffffff;--bg-card-hover: #dee2e6;--bg-surface: #f4f5f7;--bg-code: #e9ecef;--text-primary: #212529;--text-secondary: #495057;--text-muted: #5f6670;--text-heading: #0d1117;--accent-primary: #495057;--accent-secondary: #343a40;--accent-tertiary: #5f6670;--accent-glow: rgba(73, 80, 87, .2);--border-subtle: rgba(73, 80, 87, .12);--border-card: rgba(73, 80, 87, .18);--border-active: rgba(73, 80, 87, .42);--gradient-hero: linear-gradient(135deg, #495057 0%, #6c757d 35%, #adb5bd 65%, #dee2e6 100%);--gradient-card: linear-gradient( 145deg, rgba(73, 80, 87, .05) 0%, rgba(108, 117, 125, .03) 100% );--gradient-glow: radial-gradient( 600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(73, 80, 87, .03), transparent 40% );--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--shadow-elevated: 0 4px 16px rgba(0, 0, 0, .12);--shadow-glow: 0 0 20px rgba(73, 80, 87, .1);--gradient-logo: linear-gradient(135deg, #495057, #adb5bd);--reading-bg-primary: #f0f1f3;--reading-bg-surface: #f8f9fa;--reading-bg-code: #e9ecef;--reading-border-subtle: rgba(73, 80, 87, .1);--reading-border-card: rgba(73, 80, 87, .15);--reading-border-active: rgba(73, 80, 87, .36);--reading-accent-glow: rgba(73, 80, 87, .06);--text-on-accent: #ffffff;--text-on-brand: #0d1117;--reading-theme-bg-primary: #f0f1f3;--reading-theme-bg-surface: #f8f9fa;--reading-theme-bg-card: #f8f9fa;--reading-theme-bg-card-hover: #dee2e6;--reading-theme-bg-code: #e9ecef;--reading-theme-accent-primary: #495057;--reading-theme-accent-secondary: #343a40;--reading-theme-accent-tertiary: #5f6670;--reading-theme-border-subtle: rgba(73, 80, 87, .1);--reading-theme-border-card: rgba(73, 80, 87, .15);--reading-theme-border-active: rgba(73, 80, 87, .36);--reading-theme-accent-glow: rgba(73, 80, 87, .06)}@media(prefers-reduced-motion:reduce){:root{--motion-duration-active-fast: var(--motion-duration-instant);--motion-duration-active-standard: var(--motion-duration-instant);--motion-duration-active-slow: var(--motion-duration-instant);--motion-duration-active-skeleton: var(--motion-duration-instant);--motion-duration-active-view-transition: var(--motion-duration-instant);--motion-duration-active-card-entrance: var(--motion-duration-instant)}}html{scroll-behavior:smooth;font-size:var(--app-font-size, 1rem);background:var(--surface-paper)}body{font-family:var(--font-body);font-feature-settings:"ss01" on,"ss02" on,"kern" on,"liga" on;background:var(--surface-paper);color:var(--text-primary);line-height:calc(var(--leading-normal) * var(--density-scale, 1));letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:underline;text-decoration-color:var(--accent-primary);text-decoration-thickness:1px;text-underline-offset:.2em;transition:text-decoration-color var(--transition-fast),color var(--transition-fast)}a:hover{text-decoration-thickness:2px;color:var(--accent-primary)}[data-palette-type=light] a:hover{color:var(--text-heading)}img{max-width:100%;height:auto}::selection{background:var(--accent-primary);color:var(--text-on-accent)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.num,.font-mono,[class*=ticker],[class*=dashboard-tile]{font-variant-numeric:tabular-nums}.skip-to-content{position:absolute;top:-100%;left:1rem;z-index:10000;padding:.625rem 1.25rem;background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-sm);font-family:var(--font-mono);font-weight:600;font-size:.8125rem;letter-spacing:var(--tracking-wide);text-transform:uppercase;transition:top .18s ease}.skip-to-content:focus{top:.75rem;color:var(--text-on-accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-loader{display:flex;justify-content:center;align-items:center;min-height:40vh}.page-loader-spinner{width:28px;height:28px;border:2px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-card);border:2px solid transparent;background-clip:content-box;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted);background-clip:content-box}.app-layout{display:flex;min-height:100vh;background:var(--surface-paper)}.main-content{flex:1;margin-left:var(--sidebar-width);padding-top:var(--navbar-height);width:100%;min-height:100vh;min-width:0;transition:margin-left var(--transition-base)}.main-content>*{min-width:0}.main-content:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.page-container{width:min(100%,var(--content-max-width));margin:0 auto;padding:clamp(2rem,4vw,3.5rem) var(--page-padding) clamp(3rem,6vw,5rem)}.page-container.lesson-with-toc{width:min(100%,calc(var(--content-max-width) + 260px + 2rem))}.lesson-reading-surface{--bg-primary: var(--reading-theme-bg-primary);--bg-surface: var(--reading-theme-bg-surface);--bg-card: var(--reading-theme-bg-card);--bg-card-hover: var(--reading-theme-bg-card-hover);--bg-code: var(--reading-theme-bg-code);--accent-primary: var(--reading-theme-accent-primary);--accent-secondary: var(--reading-theme-accent-secondary);--accent-tertiary: var(--reading-theme-accent-tertiary);--border-subtle: var(--reading-theme-border-subtle);--border-card: var(--reading-theme-border-card);--border-active: var(--reading-theme-border-active);--accent-glow: var(--reading-theme-accent-glow);--gradient-card: none;--gradient-glow: none;--shadow-card: 0 1px 0 0 var(--border-subtle);--shadow-glow: none}.lesson-reading-surface.page-container{background:var(--bg-primary)}.eyebrow{font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.display-headline{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 380;font-size:clamp(2.5rem,6vw,5.5rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text-heading)}.display-numeral{font-family:var(--font-display);font-weight:280;font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 280;font-size:clamp(7rem,14vw,16rem);line-height:.85;letter-spacing:-.04em;color:var(--text-heading);font-variant-numeric:lining-nums}.kicker{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent-primary);display:inline-flex;align-items:center;gap:.5rem}.kicker:before{content:"";display:inline-block;width:8px;height:8px;background:var(--accent-primary);border-radius:50%;flex-shrink:0}.hairline{border:0;border-top:1px solid var(--border-subtle);margin:0}.hairline-strong{border:0;border-top:1px solid var(--border-card);margin:0}.section-header{display:grid;gap:.5rem;margin:0 0 1.25rem;max-width:70ch}.section-header h1,.section-header h2{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 380;font-size:clamp(1.875rem,4vw,3rem);line-height:var(--leading-tight);letter-spacing:-.025em;color:var(--text-heading);margin:0}.section-header h2{font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:-.02em}.section-header p{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 24,"SOFT" 50;font-size:clamp(1rem,1.2vw,1.125rem);line-height:var(--leading-snug);color:var(--text-secondary);margin:0;max-width:60ch}.hero-cta-link,.continue-banner-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.125rem;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;text-decoration:none;border-radius:var(--radius-sm);background:var(--accent-primary);color:var(--text-on-accent);border:1px solid var(--accent-primary);transition:background var(--transition-fast);min-height:44px}.hero-cta-link:hover,.continue-banner-cta:hover{background:var(--signal-300);color:var(--text-on-accent);text-decoration:none}[data-palette-type=light] .hero-cta-link,[data-palette-type=light] .continue-banner-cta{background:var(--ink-900);color:var(--bone-50);border-color:var(--ink-900)}[data-palette-type=light] .hero-cta-link:hover,[data-palette-type=light] .continue-banner-cta:hover{background:var(--ink-700);color:var(--bone-50)}.continue-banner{display:grid;gap:.625rem;padding:1.25rem 1.5rem;background:var(--surface-paper);border:1px solid var(--border-card);border-left:3px solid var(--accent-primary);border-radius:0;margin:1rem 0}.continue-banner-title{font-family:var(--font-mono);font-size:.625rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent-primary);margin:0}.continue-banner-subtitle{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 24,"SOFT" 30;font-size:1.0625rem;letter-spacing:-.005em;color:var(--text-heading);margin:0;line-height:var(--leading-tight)}.difficulty-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:var(--radius-sm);white-space:nowrap}.meta-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:var(--tracking-mono);color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);white-space:nowrap}.lesson-meta-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.625rem}.day-link-check{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;color:var(--accent-primary);font-family:var(--font-mono);font-weight:700;font-size:.75rem}.navbar{position:fixed;top:0;left:var(--sidebar-width);right:0;height:var(--navbar-height);background:var(--surface-ink);border-bottom:1px solid var(--border-card);display:flex;flex-direction:column;z-index:200;transition:left var(--transition-base);isolation:isolate}.status-ticker{display:flex;align-items:center;gap:.75rem;height:28px;padding:0 1.25rem;border-bottom:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:var(--tracking-mono);color:var(--text-muted);text-transform:lowercase;background:var(--surface-ink);font-variant-numeric:tabular-nums;overflow:hidden;white-space:nowrap}.ticker-cell{display:inline-flex;align-items:center;gap:.4rem;flex-shrink:0}.ticker-brand{color:var(--text-secondary);font-weight:600}.ticker-dot{width:6px;height:6px;background:var(--accent-primary);border-radius:50%;box-shadow:0 0 6px var(--accent-glow);flex-shrink:0;animation:ticker-pulse 2.4s ease-in-out infinite}@keyframes ticker-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.ticker-dot{animation:none}}.ticker-sep{color:var(--text-muted);opacity:.5}.ticker-path{color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden;min-width:0}.ticker-spacer{flex:1}.ticker-label{color:var(--text-muted);text-transform:uppercase;font-size:.6875rem;letter-spacing:var(--tracking-wide)}.ticker-blocks{color:var(--accent-primary);letter-spacing:1px;font-size:.6875rem;line-height:1}.ticker-value{color:var(--text-primary);font-weight:600}.ticker-of{color:var(--text-muted);font-weight:400}.navbar-row{flex:1;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem 0 1rem;gap:1rem;min-width:0}.navbar-row-left{display:flex;align-items:center;gap:.875rem;min-width:0}.navbar-row-right{display:flex;align-items:center;gap:1rem;min-width:0}.navbar-brand{display:inline-flex;align-items:center;gap:.625rem;color:var(--text-heading);text-decoration:none;font-family:var(--font-display);font-weight:480;font-variation-settings:"opsz" 24;font-size:1.0625rem;letter-spacing:-.01em}.navbar-brand:hover{color:var(--text-heading);text-decoration:none}.brand-mark{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:.6875rem;letter-spacing:0;color:var(--accent-primary);border:1px solid var(--accent-primary);padding:.125rem .4rem;border-radius:var(--radius-sm);text-transform:uppercase;line-height:1}.brand-wordmark{white-space:nowrap}.navbar-hamburger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast)}.navbar-hamburger:hover{color:var(--text-heading);border-color:var(--border-card);background:var(--bg-card-hover)}.navbar-hamburger svg{width:18px;height:18px}.navbar-search-form{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--border-subtle);background:var(--surface-paper);border-radius:var(--radius-sm);padding:.35rem .5rem .35rem .625rem;font-family:var(--font-mono);transition:border-color var(--transition-fast);min-width:0}.navbar-search-form:focus-within{border-color:var(--accent-primary)}.navbar-search-prompt{color:var(--accent-primary);font-weight:700;font-size:.875rem;line-height:1}.navbar-search-input{border:none;outline:none;background:transparent;color:var(--text-primary);font:inherit;font-size:.8125rem;width:280px;min-width:0}.navbar-search-input::placeholder{color:var(--text-muted);opacity:.7}.navbar-search-shortcut{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-muted);border:1px solid var(--border-subtle);padding:.125rem .4rem;border-radius:3px;line-height:1}.navbar-search-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.125rem .25rem;font-size:.75rem;line-height:1}.navbar-search-clear:hover{color:var(--text-heading)}.navbar-links{display:flex;align-items:center;gap:.125rem;font-family:var(--font-mono)}.navbar-links a{position:relative;display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast)}.navbar-links a:hover{color:var(--text-heading);background:var(--bg-card-hover);text-decoration:none}.navbar-links a.active{color:var(--text-on-accent);background:var(--accent-primary)}.navbar-links a.active:before{content:"";position:absolute;left:.5rem;width:4px;height:4px;background:var(--text-on-accent)}.navbar-link-external{color:var(--text-muted)!important}@media(max-width:1100px){.navbar-search-input{width:200px}.navbar-links a{padding:.45rem .55rem}}@media(max-width:900px){.navbar-search-form{display:none}}@media(max-width:700px){.status-ticker{gap:.5rem;padding:0 .75rem;font-size:.625rem}.ticker-blocks,.ticker-of,.ticker-path{display:none}.navbar-links a{font-size:.6875rem;padding:.4rem .45rem}.brand-wordmark{display:none}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--surface-ink);border-right:1px solid var(--border-card);z-index:210;display:flex;flex-direction:column;overflow:hidden;transition:transform var(--transition-base)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1.125rem;border-bottom:1px solid var(--border-card);height:var(--navbar-height);flex-shrink:0}.sidebar-brand{display:inline-flex;align-items:center;gap:.625rem;text-decoration:none;color:inherit;min-width:0}.sidebar-brand:hover{text-decoration:none}.sidebar-brand-mark{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.6875rem;font-weight:700;line-height:1;color:var(--accent-primary);border:1px solid var(--accent-primary);padding:.3rem .45rem;border-radius:var(--radius-sm);text-transform:uppercase;flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column;min-width:0}.sidebar-brand-name{font-family:var(--font-display);font-size:.9375rem;font-weight:480;font-variation-settings:"opsz" 24;color:var(--text-heading);letter-spacing:-.01em;line-height:1.1}.sidebar-brand-meta{font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:var(--tracking-wide);color:var(--text-muted);text-transform:uppercase;margin-top:.125rem}.sidebar-close{display:none;background:none;border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;padding:.4rem;min-width:40px;min-height:40px;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.sidebar-close:hover{color:var(--text-heading);border-color:var(--border-card)}.sidebar-nav{flex:1;overflow-y:auto;padding:.75rem 0 1.5rem;scrollbar-gutter:stable;font-family:var(--font-mono)}.tree-section{margin-bottom:1.25rem}.tree-section-label{padding:.625rem 1.125rem .4rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.tree-item{display:flex;align-items:center;gap:.625rem;padding:.4rem 1.125rem;font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary);text-decoration:none;border-left:2px solid transparent;transition:color var(--transition-fast),background var(--transition-fast),border-left-color var(--transition-fast);white-space:nowrap;overflow:hidden}.tree-item:hover{color:var(--text-heading);background:var(--bg-card-hover);text-decoration:none}.tree-item.active{color:var(--accent-primary);background:var(--bg-card-hover);border-left-color:var(--accent-primary)}.tree-glyph{font-family:var(--font-mono);width:1ch;font-size:.875rem;text-align:center;color:var(--text-muted);flex-shrink:0}.tree-item:hover .tree-glyph,.tree-item.active .tree-glyph{color:var(--accent-primary)}.tree-label{text-overflow:ellipsis;overflow:hidden;letter-spacing:var(--tracking-mono)}.phase-group{margin-bottom:1px}.phase-toggle{width:100%;display:flex;align-items:center;gap:.5rem;padding:.4rem 1.125rem;background:none;border:none;border-left:2px solid transparent;cursor:pointer;color:var(--text-secondary);font-family:var(--font-mono);font-size:.75rem;font-weight:500;text-align:left;transition:color var(--transition-fast),background var(--transition-fast),border-left-color var(--transition-fast)}.phase-toggle:hover,.phase-toggle.active,.phase-toggle.open{color:var(--text-heading);background:var(--bg-card-hover)}.phase-toggle.active{border-left-color:var(--accent-primary)}.phase-toggle-arrow{display:inline-flex;align-items:center;justify-content:center;width:12px;color:var(--text-muted);transition:transform var(--transition-fast);flex-shrink:0}.phase-toggle.open .phase-toggle-arrow{transform:rotate(90deg);color:var(--accent-primary)}.phase-toggle-num{font-family:var(--font-mono);font-weight:700;color:var(--accent-primary);font-size:.6875rem;letter-spacing:0;flex-shrink:0;font-variant-numeric:tabular-nums}.phase-toggle-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-weight:480;font-variation-settings:"opsz" 18;font-size:.875rem;letter-spacing:-.005em;color:inherit;text-transform:none}.phase-toggle-progress{font-family:var(--font-mono);font-size:.625rem;letter-spacing:var(--tracking-mono);color:var(--text-muted);flex-shrink:0;font-variant-numeric:tabular-nums}.phase-due{color:var(--accent-tertiary);margin-left:.2rem}.phase-days{overflow:hidden}.day-link{display:flex;align-items:baseline;gap:.5rem;padding:.3rem 1.125rem .3rem 2.5rem;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);white-space:nowrap;overflow:hidden;border-left:2px solid transparent}.day-link:hover{color:var(--text-heading);background:var(--bg-card-hover);text-decoration:none}.day-link.active{color:var(--accent-primary);background:var(--bg-card-hover);border-left-color:var(--accent-primary)}.day-link--overview{color:var(--text-secondary)}.day-link-prefix{width:1ch;text-align:center;color:var(--text-muted);flex-shrink:0;font-size:.6875rem}.day-link-prefix.completed{color:var(--accent-primary)}.day-link-num{font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:500;font-size:.6875rem;flex-shrink:0}.day-link.active .day-link-num,.day-link:hover .day-link-num{color:var(--accent-primary)}.day-link-text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;text-transform:lowercase;letter-spacing:var(--tracking-mono)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#000000b3;z-index:190}.search-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh}.search-palette{width:100%;max-width:640px;background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);overflow:hidden;display:flex;flex-direction:column;max-height:70vh}.search-input-wrapper{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border-subtle)}.search-icon{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.search-input{flex:1;background:none;border:none;outline:none;font-size:1rem;color:var(--text-primary);font-family:var(--font-body)}.search-input::placeholder{color:var(--text-muted)}.search-kbd{font-family:var(--font-mono);font-size:.7rem;padding:.15rem .4rem;background:#94a3b81a;border:1px solid var(--border-subtle);border-radius:4px;color:var(--text-muted);flex-shrink:0}.search-close-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);padding:.25rem;margin-left:.25rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.search-close-btn:hover{background:#94a3b81a;color:var(--text-primary)}.search-close-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-primary);background:#94a3b81a}.search-close-btn svg{width:18px;height:18px}.search-results{overflow-y:auto;padding:.5rem}.search-result-item{width:100%;text-align:left;display:block;padding:.75rem 1rem;border-radius:var(--radius-md);background:none;border:none;border-left:3px solid transparent;cursor:pointer;color:var(--text-primary);font-family:var(--font-body);transition:background var(--transition-fast)}.search-result-item:hover,.search-result-item.active{background:#4361ee1a;border-left-color:var(--accent-primary)}.search-result-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent-primary);background:#4361ee1a;border-left-color:var(--accent-primary)}.search-result-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.search-result-day{font-size:.75rem;font-weight:600;color:var(--accent-primary);white-space:nowrap}.search-result-title{font-weight:600;font-size:.9rem;color:var(--text-heading);flex:1;min-width:0}.search-result-badge{font-size:.65rem;padding:.1rem .4rem;border-radius:4px;font-weight:600;flex-shrink:0}.search-result-snippet{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-result-tags{display:flex;gap:.35rem;margin-top:.35rem;flex-wrap:wrap}.search-result-tag{font-size:.65rem;padding:.1rem .4rem;background:#94a3b814;border-radius:4px;color:var(--text-muted)}.search-result-tag.matched{background:#4361ee26;color:var(--accent-tertiary)}.search-empty{padding:3rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;color:var(--text-muted);font-size:.95rem}.search-empty-icon{width:48px;height:48px;color:var(--border-active);opacity:.8}.search-footer{display:flex;gap:1.25rem;padding:.6rem 1.25rem;border-top:1px solid var(--border-subtle);font-size:.75rem;color:var(--text-muted)}.search-footer kbd{font-family:var(--font-mono);font-size:.65rem;padding:.1rem .3rem;background:#94a3b81a;border:1px solid var(--border-subtle);border-radius:3px;margin-right:.3rem}.search-trigger{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#94a3b80f;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-body)}.search-trigger:hover{background:#4361ee1a;border-color:var(--border-active);color:var(--text-secondary)}.search-trigger svg{width:16px;height:16px}.search-trigger-shortcut{font-family:var(--font-mono);font-size:.65rem;padding:.1rem .35rem;background:#94a3b81a;border:1px solid var(--border-subtle);border-radius:3px}.search-page-form{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:1rem 0}.search-page-input{flex:1;min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);padding:.6rem .8rem;font:inherit}.search-page-submit{border:1px solid var(--border-active);background:#4361ee29;color:var(--text-heading);border-radius:var(--radius-sm);padding:.58rem .8rem;font:inherit;cursor:pointer}.search-page-header{margin-bottom:2rem}.search-page-header h1{font-size:1.75rem;color:var(--text-heading);margin-bottom:.5rem}.search-page-summary{color:var(--text-secondary);font-size:.9rem}.search-results-list{display:flex;flex-direction:column;gap:.75rem}.search-result-card{display:block;padding:1.25rem 1.5rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);transition:all var(--transition-fast)}.search-result-card:hover{background:var(--bg-card-hover);border-color:var(--border-active);box-shadow:var(--shadow-glow)}.search-result-card-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.search-result-card-day{font-size:.8rem;font-weight:700;color:var(--accent-primary)}.search-result-card-title{font-size:1.1rem;font-weight:600;color:var(--text-heading);flex:1;min-width:0}.search-result-card-snippet{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.5rem}.search-result-card-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.35rem}.search-result-card-phase{font-size:.75rem;color:var(--text-muted)}.search-highlight{background:#4361ee40;color:var(--accent-tertiary);border-radius:2px;padding:0 1px}.search-empty-page{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.search-empty-page p{margin-bottom:.5rem}@media(max-width:640px){.search-overlay{padding-top:5vh;padding-left:1rem;padding-right:1rem}.search-page-form{flex-direction:column;align-items:stretch}.search-page-submit{width:100%}.search-trigger-label,.search-trigger-shortcut{display:none}}.home-page{padding-top:clamp(2rem,4vw,3.5rem);padding-bottom:clamp(4rem,6vw,6rem)}.editorial-cover{position:relative;display:grid;gap:clamp(1.5rem,3vw,2.5rem);padding:clamp(1.5rem,3vw,2.5rem) 0 clamp(2.5rem,5vw,4rem);border-bottom:0}.cover-eyebrow{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.cover-issue{color:var(--accent-primary);background:var(--bg-card-hover);border:1px solid var(--border-active);padding:.25rem .5rem;font-weight:700;border-radius:var(--radius-sm)}.cover-divider{color:var(--text-muted);opacity:.5}.cover-title{font-family:var(--font-display);font-weight:360;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 360;font-size:clamp(2.75rem,8vw,7.5rem);line-height:.92;letter-spacing:-.035em;color:var(--text-heading);max-width:18ch}.cover-title em{font-style:italic;font-variation-settings:"opsz" 144,"SOFT" 100,"wght" 360;color:var(--accent-primary)}.cover-lede{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 24,"SOFT" 50,"wght" 380;font-size:clamp(1.0625rem,1.6vw,1.375rem);line-height:var(--leading-snug);letter-spacing:-.005em;color:var(--text-secondary);max-width:60ch}.cover-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.875rem 1.25rem;margin-top:.5rem}.action-primary,.action-secondary{display:inline-flex;align-items:center;gap:.625rem;font-family:var(--font-mono);font-size:.8125rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;text-decoration:none;padding:.85rem 1.25rem;border-radius:var(--radius-sm);transition:transform var(--transition-fast),background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);min-height:44px}.action-primary{background:var(--accent-primary);color:var(--text-on-accent);border:1px solid var(--accent-primary)}.action-primary:hover{background:var(--signal-300);border-color:var(--signal-300);text-decoration:none;color:var(--text-on-accent)}.action-glyph{font-family:var(--font-mono);font-weight:700;font-size:.95rem}.action-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-card)}.action-secondary:hover{color:var(--text-heading);border-color:var(--accent-primary);text-decoration:none}.cover-rule{margin:clamp(2rem,4vw,3rem) 0}.terminal-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-card);margin:0}.dashboard-tile{display:flex;flex-direction:column;gap:.625rem;padding:1.125rem 1.25rem;background:var(--surface-paper);text-decoration:none;color:var(--text-primary);transition:background var(--transition-fast),color var(--transition-fast);min-height:130px}.dashboard-tile:hover{background:var(--bg-card-hover);text-decoration:none;color:var(--text-heading)}.dashboard-tile--highlight{background:var(--surface-ink)}.dashboard-tile-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dashboard-tile-label{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.dashboard-tile-symbol{font-family:var(--font-mono);color:var(--accent-primary);font-size:.875rem;line-height:1}.dashboard-tile-value{display:flex;align-items:baseline;gap:.4rem;margin-top:auto;font-variant-numeric:tabular-nums}.dashboard-tile-figure{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 96,"SOFT" 0,"wght" 380;font-size:clamp(1.875rem,3.4vw,2.625rem);line-height:.95;letter-spacing:-.025em;color:var(--text-heading)}.dashboard-tile-link{color:inherit;text-decoration:none}.dashboard-tile-link:hover{color:var(--accent-primary);text-decoration:none}.dashboard-tile-empty{color:var(--text-muted)}.dashboard-tile-unit{font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--text-muted)}.dashboard-tile-footer{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:var(--tracking-mono);color:var(--text-muted);border-top:1px solid var(--border-subtle);padding-top:.625rem;min-height:2.4em}.curriculum-section{margin-top:clamp(2rem,4vw,3rem)}.section-masthead{display:grid;gap:.625rem;margin-bottom:clamp(1.5rem,3vw,2.5rem);max-width:70ch}.section-eyebrow{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.section-headline{font-family:var(--font-display);font-weight:360;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 360;font-size:clamp(2.25rem,5vw,4rem);line-height:var(--leading-tight);letter-spacing:-.03em;color:var(--text-heading)}.section-lede{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 24,"SOFT" 50;font-size:1.0625rem;line-height:var(--leading-snug);color:var(--text-secondary);max-width:60ch}.map-list-toggle{display:grid;gap:1.25rem}.map-list-toggle-bar{display:inline-flex;align-self:flex-start;gap:0;border:1px solid var(--border-card);border-radius:var(--radius-sm);padding:0;background:var(--surface-paper)}.map-list-toggle-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;padding:.55rem 1.125rem;cursor:pointer;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);transition:color var(--transition-fast),background var(--transition-fast);min-height:44px}.map-list-toggle-btn:hover{color:var(--text-heading)}.map-list-toggle-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.map-list-toggle-btn.active{color:var(--text-on-accent);background:var(--accent-primary)}.map-list-toggle-glyph{color:inherit;font-size:.875rem;line-height:1}.map-list-toggle-panel{min-height:200px}.phases-grid-editorial{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-card)}.phase-card-editorial{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:1.25rem;align-items:start;padding:1.5rem 1.5rem 1.75rem;background:var(--surface-paper);text-decoration:none;color:inherit;overflow:hidden;transition:background var(--transition-fast)}.phase-card-editorial:hover{background:var(--bg-card-hover);text-decoration:none;color:inherit}.phase-card-numeral{font-family:var(--font-display);font-weight:220;font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 220;font-size:clamp(4rem,7vw,6.5rem);line-height:.85;letter-spacing:-.06em;color:var(--text-heading);font-variant-numeric:lining-nums tabular-nums}.phase-card-editorial:hover .phase-card-numeral{color:var(--accent-primary)}.phase-card-body{display:grid;gap:.75rem;min-width:0}.phase-card-kicker{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.625rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin:0}.kicker-dot{width:6px;height:6px;background:var(--accent-primary);border-radius:50%;display:inline-block}.phase-card-title{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 36,"SOFT" 30,"wght" 460;font-size:1.375rem;line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--text-heading);margin:0}.phase-card-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:.625rem;margin:.5rem 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.phase-card-meta div{min-width:0}.phase-card-meta dt{font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.phase-card-meta dd{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.phase-card-bar{height:2px;background:var(--border-subtle);margin-top:.5rem;overflow:hidden}.phase-card-bar-fill{height:100%;background:var(--accent-primary);transition:width var(--transition-base)}.phase-card-arrow{font-family:var(--font-mono);font-size:1.125rem;color:var(--text-muted);align-self:center;transition:transform var(--transition-fast),color var(--transition-fast)}.phase-card-editorial:hover .phase-card-arrow{color:var(--accent-primary);transform:translate(4px)}.map-view-frame{border:1px solid var(--border-card);background:var(--surface-paper);padding:1rem;background-image:var(--gradient-concept-bg)}.map-view-caption{margin-top:1rem;font-family:var(--font-mono);font-size:.75rem;letter-spacing:var(--tracking-mono);color:var(--text-muted);max-width:60ch}@media(max-width:720px){.cover-title{font-size:clamp(2.25rem,11vw,3.75rem)}.terminal-dashboard{grid-template-columns:repeat(2,1fr)}.phase-card-editorial{grid-template-columns:1fr;gap:.5rem}.phase-card-numeral{font-size:4rem}.phase-card-arrow{display:none}.phases-grid-editorial{grid-template-columns:1fr}}.lesson-header{margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-card)}.lesson-masthead{display:grid;gap:.875rem;margin:1rem 0 1.25rem;max-width:32em}.lesson-kicker{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin:0}.lesson-kicker-link{color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast)}.lesson-kicker-link:hover{color:var(--accent-primary);text-decoration:none}.lesson-kicker-divider{margin:0 .4rem;opacity:.5}.lesson-kicker-title{color:var(--text-secondary)}.lesson-headline{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 380;font-size:clamp(2rem,4.5vw,3.5rem);line-height:var(--leading-tight);letter-spacing:-.025em;color:var(--text-heading);margin:0}.lesson-deck{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 24,"SOFT" 50,"wght" 380;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:var(--leading-snug);color:var(--text-secondary);margin:0;font-style:italic}.lesson-byline{display:flex;flex-wrap:wrap;gap:1.25rem 1.75rem;margin:.75rem 0 0;padding:.875rem 0 0;border-top:1px solid var(--border-subtle);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.byline-item dt{font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin-bottom:.15rem}.byline-item dd{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.byline-difficulty{display:inline-block;padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:.75rem!important}.lesson-header-controls{display:grid;gap:.875rem;margin-top:1.25rem}.lesson-complete-btn{display:inline-flex;align-items:center;gap:.5rem;align-self:flex-start;padding:.7rem 1rem;background:transparent;border:1px solid var(--border-card);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-secondary);transition:all var(--transition-fast);min-height:44px}.lesson-complete-btn:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.lesson-complete-btn.completed{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.lesson-complete-glyph{font-family:var(--font-mono);font-weight:700;font-size:1rem;line-height:1}.lesson-tags-row{display:flex;flex-wrap:wrap;gap:.4rem}.lesson-tag{padding:.2rem .55rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:var(--tracking-mono);text-transform:lowercase;color:var(--text-secondary);background:transparent}.lesson-breadcrumb{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:var(--tracking-mono);color:var(--text-muted);margin:0 0 .5rem;list-style:none;padding:0;text-transform:lowercase}.breadcrumb-item{display:inline-flex;align-items:center;gap:.5rem}.lesson-breadcrumb a{color:var(--text-muted);text-decoration:none}.lesson-breadcrumb a:hover{color:var(--accent-primary);text-decoration:underline}.lesson-breadcrumb .sep{color:var(--border-card)}.lesson-nav{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:3rem;padding-top:0;border-top:1px solid var(--border-card);background:var(--border-subtle);border-bottom:1px solid var(--border-card)}.lesson-nav-btn{display:flex;flex-direction:column;gap:.4rem;padding:1.25rem 1.5rem;background:var(--surface-paper);text-decoration:none;transition:background var(--transition-fast);min-height:88px}.lesson-nav-btn:hover{background:var(--bg-card-hover);text-decoration:none}.lesson-nav-btn.next{text-align:right;grid-column:2}.lesson-nav-label{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent-primary)}.lesson-nav-title{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 24,"SOFT" 30;font-size:1rem;letter-spacing:-.01em;color:var(--text-heading);line-height:var(--leading-tight)}.lesson-main-content>article{max-width:var(--reading-max-width)}.reading-mode{--shadow-card: none}.reading-mode .lesson-header{border-bottom-color:var(--border-subtle)}.reading-mode-exit{position:sticky;top:calc(var(--navbar-height) + .5rem);z-index:20;margin:0 0 .75rem auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-card);border-radius:var(--radius-sm);padding:.5rem 1rem;background:var(--surface-ink);color:var(--text-secondary);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer}.reading-mode-exit:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.reading-muted{opacity:.4;filter:saturate(.55);transition:opacity var(--transition-fast)}@media(max-width:720px){.lesson-nav{grid-template-columns:1fr}.lesson-nav-btn.next{grid-column:1;text-align:left}}.phase-spread{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start;padding:clamp(1.5rem,3vw,2.25rem) 0 clamp(2rem,4vw,3rem)}.phase-spread-numeral{font-family:var(--font-display);font-weight:200;font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 200;font-size:clamp(8rem,18vw,18rem);line-height:.82;letter-spacing:-.06em;color:var(--text-heading);font-variant-numeric:lining-nums tabular-nums;align-self:start}.phase-spread-body{display:grid;gap:1rem;min-width:0;padding-top:.5rem}.phase-spread-kicker{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin:0}.phase-spread-title{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 380;font-size:clamp(2rem,5vw,4rem);line-height:var(--leading-tight);letter-spacing:-.03em;color:var(--text-heading);margin:0}.phase-spread-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:1.25rem 1.75rem;margin:.75rem 0 0;padding:1rem 0 0;border-top:1px solid var(--border-subtle);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.phase-spread-meta div{min-width:0}.phase-spread-meta dt{font-size:.5625rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin-bottom:.2rem}.phase-spread-meta dd{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.phase-spread-difficulty{display:inline-block;padding:.15rem .55rem;border-radius:var(--radius-sm);font-size:.75rem!important}.phase-spread-bar{margin-top:.5rem;height:2px;background:var(--border-subtle);overflow:hidden}.phase-spread-bar-fill{height:100%;background:var(--accent-primary);transition:width var(--transition-base)}.section-masthead--inline{margin:2rem 0 1.25rem}.phase-lessons-section{margin-top:clamp(2rem,4vw,3rem)}.phase-lessons-list{list-style:none;padding:0;margin:0;border:1px solid var(--border-card);background:var(--surface-paper)}.lesson-row{display:grid;grid-template-columns:3rem 5.5rem minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:.875rem 1.25rem;border-top:1px solid var(--border-subtle);text-decoration:none;color:inherit;font-family:var(--font-mono);transition:background var(--transition-fast),color var(--transition-fast)}.phase-lessons-list>div:first-child .lesson-row{border-top:none}.lesson-row:hover{background:var(--bg-card-hover);text-decoration:none;color:inherit}.lesson-row-marker{font-family:var(--font-mono);font-size:.75rem;font-weight:700;color:var(--text-muted);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-mono);text-align:center}.lesson-row--done .lesson-row-marker{color:var(--accent-primary)}.lesson-row-day{font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);font-variant-numeric:tabular-nums}.lesson-row-title{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 24,"SOFT" 30;font-size:1.0625rem;letter-spacing:-.005em;color:var(--text-heading);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.lesson-row:hover .lesson-row-title{color:var(--accent-primary)}.lesson-row-duration{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.lesson-row-arrow{font-family:var(--font-mono);font-size:1rem;color:var(--text-muted);transition:transform var(--transition-fast),color var(--transition-fast)}.lesson-row:hover .lesson-row-arrow{color:var(--accent-primary);transform:translate(3px)}.phase-solutions-section{margin-top:clamp(2rem,4vw,3rem);padding-top:clamp(1.5rem,3vw,2rem);border-top:1px solid var(--border-card);display:grid;gap:1rem;align-items:start}.phase-solutions-section .action-secondary{justify-self:flex-start}.phase-overview-article{margin-top:clamp(2rem,4vw,3rem);padding-top:clamp(1.5rem,3vw,2rem);border-top:1px solid var(--border-card)}@media(max-width:720px){.phase-spread{grid-template-columns:1fr}.phase-spread-numeral{font-size:6rem}.lesson-row{grid-template-columns:2.25rem 1fr auto;gap:.75rem}.lesson-row-day,.lesson-row-duration{display:none}}.curriculum-cover{margin:clamp(1rem,2vw,2rem) 0 clamp(1.5rem,3vw,2.5rem)}.curriculum-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-card);margin:0 0 clamp(2rem,4vw,3rem)}.curriculum-stat{display:grid;gap:.5rem;padding:1.25rem 1.25rem 1.125rem;background:var(--surface-paper)}.curriculum-stat-label{font-family:var(--font-mono);font-size:.625rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin:0}.curriculum-stat-value{font-family:var(--font-display);font-weight:240;font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 240;font-size:clamp(2.5rem,4vw,3.5rem);line-height:.9;letter-spacing:-.04em;color:var(--text-heading);font-variant-numeric:lining-nums tabular-nums;margin:.25rem 0}.curriculum-stat-bar{height:2px;background:var(--border-subtle);overflow:hidden}.curriculum-stat-bar-fill{height:100%;background:var(--accent-primary);transition:width var(--transition-base)}.curriculum-stat-note{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:var(--tracking-mono);color:var(--text-muted);margin:0}.curriculum-timeline{display:grid;gap:1px;background:var(--border-subtle);border:1px solid var(--border-card)}.curriculum-phase{background:var(--surface-paper);padding:1.5rem 1.5rem 1.25rem;display:grid;gap:1.25rem}.curriculum-phase--complete{background:var(--surface-ink)}.curriculum-phase-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;align-items:start;text-decoration:none;color:inherit}.curriculum-phase-header:hover{text-decoration:none;color:inherit}.curriculum-phase-num{font-family:var(--font-display);font-weight:220;font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 220;font-size:clamp(3.5rem,6vw,5.5rem);line-height:.85;letter-spacing:-.05em;color:var(--text-heading);font-variant-numeric:lining-nums tabular-nums;align-self:start}.curriculum-phase-header:hover .curriculum-phase-num{color:var(--accent-primary)}.curriculum-phase-headline{display:grid;gap:.625rem;min-width:0}.curriculum-phase-title{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 60,"SOFT" 30,"wght" 460;font-size:clamp(1.375rem,2vw,1.75rem);letter-spacing:-.015em;color:var(--text-heading);line-height:var(--leading-tight);margin:0}.curriculum-phase-meta{display:flex;flex-wrap:wrap;gap:.875rem 1.5rem;margin:.25rem 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.curriculum-phase-meta div{min-width:0}.curriculum-phase-meta dt{font-size:.5625rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin-bottom:.15rem}.curriculum-phase-meta dd{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.curriculum-phase-status{display:inline-flex;align-items:center;gap:.25rem;font-family:var(--font-mono);font-size:.625rem;font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:.15rem .5rem;margin-left:.5rem;border-radius:var(--radius-sm)}.curriculum-phase-status--done{color:var(--text-on-accent);background:var(--accent-primary)}.curriculum-phase-status--active{color:var(--accent-tertiary);border:1px solid var(--accent-tertiary)}.curriculum-phase-bar{margin-top:.25rem;height:2px;background:var(--border-subtle);overflow:hidden}.curriculum-phase-bar-fill{height:100%;background:var(--accent-primary);transition:width var(--transition-base)}.curriculum-days{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle)}.curriculum-day-link{display:grid;grid-template-columns:2.25rem 4rem minmax(0,1fr);align-items:center;gap:.5rem;padding:.6rem .875rem;background:var(--surface-paper);text-decoration:none;color:inherit;font-family:var(--font-mono);font-size:.75rem;transition:background var(--transition-fast)}.curriculum-day-link:hover{background:var(--bg-card-hover);text-decoration:none;color:inherit}.curriculum-day-marker{font-family:var(--font-mono);font-size:.625rem;font-weight:700;color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums}.curriculum-day-link--done .curriculum-day-marker{color:var(--accent-primary)}.curriculum-day-num{font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-muted);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-variant-numeric:tabular-nums}.curriculum-day-title{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 18,"SOFT" 30;font-size:.9375rem;letter-spacing:-.005em;color:var(--text-primary);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.curriculum-day-link:hover .curriculum-day-title{color:var(--accent-primary)}@media(max-width:720px){.curriculum-phase-header{grid-template-columns:1fr}.curriculum-phase-num{font-size:3.25rem}.curriculum-day-link{grid-template-columns:2rem 1fr}.curriculum-day-num{display:none}}.progress-mobile-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}@media(min-width:640px){.progress-mobile-stats-grid{grid-template-columns:repeat(4,1fr)}}.progress-mobile-stat-card{border-radius:var(--radius-lg);padding:1rem;display:flex;flex-direction:column;gap:.375rem;position:relative;overflow:hidden;transition:transform var(--transition-base)}.progress-mobile-stat-card:hover{transform:translateY(-2px)}.progress-mobile-stat-icon{font-size:1.25rem}.progress-mobile-stat-value{font-size:1.5rem;font-weight:800;color:var(--text-heading);line-height:1.1;margin:0}.progress-mobile-stat-label{font-size:.6875rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin:0}.progress-bar-wrapper{display:flex;align-items:center;gap:.75rem;width:100%}.progress-bar-track{flex:1;height:8px;background:#94a3b81a;border-radius:100px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--accent-primary);background-image:var(--gradient-hero);border-radius:100px;transition:width var(--transition-slow);min-width:0}.progress-bar-label{font-size:.75rem;color:var(--text-muted);white-space:nowrap;font-weight:500}.lesson-complete-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:100px;color:var(--text-secondary);font-family:var(--font-body);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.lesson-complete-btn:hover{border-color:var(--border-active);color:var(--text-primary);background:var(--bg-card-hover)}.lesson-complete-btn.completed{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.lesson-complete-btn.completed:hover{background:#22c55e26}.progress-stats-card{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap;padding:2rem;background:var(--gradient-card);border:1px solid var(--border-card);border-radius:var(--radius-xl);margin-bottom:1.5rem}.progress-stat-big{text-align:center}.progress-stat-value{display:block;font-size:2.25rem;font-weight:800;color:var(--text-heading);line-height:1.2}.progress-stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.progress-heatmap{display:flex;flex-direction:column;gap:.5rem}.heatmap-phase{display:flex;align-items:center;gap:.75rem}.heatmap-phase-label{display:flex;align-items:center;gap:.375rem;min-width:3.5rem;font-size:.75rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.heatmap-cells{display:flex;gap:3px;flex-wrap:wrap}.heatmap-cell{width:20px;height:20px;border-radius:3px;background:#94a3b814;border:1px solid rgba(148,163,184,.1);transition:all var(--transition-fast);cursor:pointer;display:block}.heatmap-cell:hover{border-color:var(--border-active);transform:scale(1.2)}.heatmap-cell.done{background:#4361ee99;border-color:#4361eecc}.heatmap-cell.done:hover{background:#4361eecc}.progress-phases-list{display:flex;flex-direction:column;gap:.75rem}.progress-phase-row{display:flex;align-items:center;gap:1.25rem;padding:1rem 1.25rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:all var(--transition-fast)}.progress-phase-row:hover{border-color:var(--border-active);background:var(--bg-card-hover)}.progress-phase-info{display:flex;align-items:center;gap:.75rem;min-width:260px}.progress-phase-icon{font-size:1.25rem;flex-shrink:0}.progress-phase-name{font-size:.875rem;font-weight:600;color:var(--text-primary)}.hero-continue{margin-top:1rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.hero-continue a{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.5rem;background:var(--bg-card);border:1px solid var(--border-active);color:var(--accent-tertiary);font-weight:600;font-size:.875rem;border-radius:100px;transition:all var(--transition-base)}.hero-continue a:hover{background:#4361ee1a;color:var(--accent-primary)}.progress-clear-btn{padding:.5rem 1.5rem;background:none;border:1px solid rgba(239,68,68,.3);border-radius:100px;color:#ef4444;font-family:var(--font-body);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.progress-clear-btn:hover{background:#ef44441a;border-color:#ef444480}.day-link-check{margin-left:auto;color:#22c55e;font-size:.75rem;flex-shrink:0}.phase-toggle-progress{font-size:.625rem;color:var(--text-muted);margin-left:auto;margin-right:.25rem;white-space:nowrap}.phase-card-progress{margin-top:.75rem}@media(max-width:640px){.progress-stats-card{gap:1.5rem;padding:1.25rem}.progress-stat-value{font-size:1.75rem}.progress-phase-row{flex-direction:column;align-items:flex-start}.progress-phase-info{min-width:auto}.heatmap-cell{width:16px;height:16px}}.preferences-card{margin-top:2.5rem;padding:1.25rem;border:1px solid var(--border-card);border-radius:var(--radius-lg);background:var(--bg-card)}.preferences-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:calc(1rem * var(--density-scale))}.preferences-field--palette{grid-column:1 / -1}.palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem;margin-top:.25rem}.palette-swatch-btn{display:flex;flex-direction:column;gap:.35rem;background:var(--bg-surface);border:2px solid var(--border-card);border-radius:var(--radius-md);padding:.5rem .6rem;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);text-align:left}.palette-swatch-btn:hover{border-color:var(--accent-primary)}.palette-swatch-btn--active{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.palette-swatch-strip{display:flex;height:18px;border-radius:var(--radius-sm);overflow:hidden;width:100%}.palette-swatch-color{flex:1}.palette-swatch-name{font-size:.78rem;color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preferences-field{display:flex;flex-direction:column;gap:.45rem;font-size:.875rem;color:var(--text-secondary)}.preferences-field select{border:1px solid var(--border-card);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font:inherit;padding:.45rem .6rem}.preferences-field select:focus,.preferences-field input:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.preferences-toggle-row{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary)}.preferences-toggle small{color:var(--text-muted)}.learning-analytics-card{margin-top:2rem;padding:1.25rem;border:1px solid var(--border-card);border-radius:var(--radius-lg);background:var(--bg-card)}.learning-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.learning-analytics-chart{width:100%;margin-top:1rem}.learning-analytics-bar{fill:#4361eea6}.learning-analytics-label{font-size:.625rem;fill:var(--text-muted)}.gamification-card{margin-top:2rem;padding:1.25rem;border:1px solid var(--border-card);border-radius:var(--radius-lg);background:var(--bg-card)}.gamification-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.xp-milestone-track{width:100%;margin:1rem 0;height:10px;border-radius:100px;background:#94a3b826;overflow:hidden}.xp-milestone-fill{height:100%;background:var(--gradient-hero);border-radius:inherit;transition:width var(--transition-base)}.daily-challenge-card{margin-top:1rem;padding:.875rem;border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-elevated);display:flex;align-items:center;justify-content:space-between;gap:1rem}.badge-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.badge-chip{border:1px solid var(--border-card);background:var(--bg-surface);border-radius:var(--radius-md);padding:.6rem .75rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem}.markdown-body{font-family:var(--font-display);font-weight:380;font-variation-settings:"opsz" 16,"SOFT" 50,"wght" 380;line-height:var(--leading-relaxed);color:var(--text-primary);max-width:var(--reading-max-width);font-size:clamp(1.0625rem,1rem + .2vw,1.125rem);letter-spacing:-.005em}.markdown-body>*:first-child{margin-top:0}.markdown-body>p:first-of-type:first-letter{font-family:var(--font-display);font-variation-settings:"opsz" 144,"SOFT" 0,"wght" 320;font-size:4.5em;line-height:.85;float:left;margin:.05em .12em 0 -.04em;color:var(--accent-primary);font-weight:320}@media(max-width:720px){.markdown-body>p:first-of-type:first-letter{font-size:3em}}.markdown-body h1{font-family:var(--font-display);font-weight:360;font-variation-settings:"opsz" 144,"SOFT" 30,"wght" 360;font-size:clamp(2rem,1.6rem + 1.5vw,2.75rem);color:var(--text-heading);margin:1.5rem 0 1rem;line-height:var(--leading-tight);letter-spacing:-.025em}.markdown-body h2{font-family:var(--font-display);font-weight:420;font-variation-settings:"opsz" 60,"SOFT" 30,"wght" 420;font-size:clamp(1.4rem,1.2rem + .7vw,1.875rem);color:var(--text-heading);margin:3rem 0 1rem;padding-top:1rem;padding-bottom:0;border-top:1px solid var(--border-card);border-bottom:none;letter-spacing:-.015em;line-height:var(--leading-tight)}.markdown-body h3{font-family:var(--font-display);font-weight:460;font-variation-settings:"opsz" 36,"SOFT" 30,"wght" 460;font-size:clamp(1.18rem,1.08rem + .45vw,1.4rem);color:var(--text-heading);margin:2.25rem 0 .75rem;letter-spacing:-.01em;line-height:var(--leading-tight)}.markdown-body h4{font-family:var(--font-display);font-weight:520;font-variation-settings:"opsz" 24,"SOFT" 30,"wght" 520;font-size:1.0625rem;color:var(--text-heading);margin:1.75rem 0 .5rem}.markdown-body p{margin-bottom:1.15rem;color:var(--text-primary)}.markdown-body ul,.markdown-body ol{padding-left:1.5rem;margin-bottom:1.2rem}.markdown-body li{margin-bottom:.45rem}.markdown-body li>ul,.markdown-body li>ol{margin-top:.375rem;margin-bottom:0}.markdown-body strong{font-weight:700;font-variation-settings:"opsz" 16,"SOFT" 30,"wght" 700;color:var(--text-heading)}.markdown-body em{font-style:italic;font-variation-settings:"opsz" 16,"SOFT" 100,"wght" 380;color:var(--text-primary)}.markdown-body blockquote{border:none;border-left:2px solid var(--accent-primary);padding:.5rem 0 .5rem 1.5rem;margin:2rem 0 2rem -.5rem;background:transparent;border-radius:0;color:var(--text-heading);font-family:var(--font-display);font-variation-settings:"opsz" 36,"SOFT" 100,"wght" 400;font-style:italic;font-size:clamp(1.125rem,1.05rem + .4vw,1.375rem);line-height:var(--leading-snug);letter-spacing:-.015em}.markdown-body blockquote p{color:inherit;margin-bottom:.5rem}.markdown-body blockquote p:last-child{margin-bottom:0}.markdown-body hr{border:none;border-top:1px solid var(--border-card);margin:2.5rem 0}.markdown-body code:not(pre code){font-family:var(--font-mono);font-size:.85em;padding:.1em .35em;background:var(--bg-code);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--accent-primary);overflow-wrap:anywhere;word-break:break-word;font-variant-numeric:tabular-nums}.markdown-body pre{margin:1.25rem 0;max-width:100%;overflow-x:auto;padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border-card);background:var(--bg-code);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.markdown-body pre code,.markdown-body pre code *{white-space:inherit;overflow-wrap:inherit;word-break:inherit}.markdown-body .code-block--wrapped{margin:1.75rem 0;max-width:100%;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-card);background:var(--bg-code);position:relative}.markdown-body .code-block--wrapped:before{content:"EXHIBIT";position:absolute;top:-8px;left:1rem;padding:0 .45rem;background:var(--surface-paper);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);color:var(--accent-primary);text-transform:uppercase;z-index:1}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem .5rem;background:transparent;border-bottom:1px solid var(--border-subtle)}.code-block-lang{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.code-block-copy{background:none;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:.25rem .55rem;transition:all var(--transition-fast)}.code-block-copy:hover{background:var(--bg-card-hover);color:var(--accent-primary);border-color:var(--accent-primary)}.markdown-body .code-block--wrapped pre{margin:0!important;max-width:100%;padding:1rem!important;background:transparent!important;border:none!important;border-radius:0!important;overflow-x:visible;white-space:pre-wrap;overflow-wrap:anywhere}.markdown-body .code-block--wrapped pre code{font-family:var(--font-mono)!important;font-size:.875rem!important;line-height:1.75!important;white-space:inherit!important;overflow-wrap:anywhere!important;word-break:break-word!important}.markdown-body .code-block--wrapped pre code *{white-space:inherit!important;overflow-wrap:inherit!important;word-break:inherit!important}.markdown-body .code-block--wrapped code[class*=language-]{white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important}.markdown-body .code-block--wrapped code[class*=language-] *{white-space:inherit!important;overflow-wrap:inherit!important;word-break:inherit!important}@media(max-width:640px){.markdown-body .code-block--wrapped pre{white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important}.markdown-body .code-block--wrapped pre code{white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important;font-size:.8125rem!important;line-height:1.6!important}}.markdown-body .table-wrapper{overflow-x:auto;margin:1.5rem 0;max-width:100%;border-radius:var(--radius-sm);border:1px solid var(--border-card)}.markdown-body table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.8125rem;letter-spacing:var(--tracking-mono)}.markdown-body thead th,.markdown-body tbody td{line-height:1.5}.markdown-body thead th{background:var(--surface-ink);padding:.65rem 1rem;text-align:left;font-family:var(--font-mono);font-weight:600;font-size:.6875rem;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-card);white-space:nowrap}.markdown-body tbody td{padding:.55rem 1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.markdown-body tbody tr:last-child td{border-bottom:none}.markdown-body tbody tr:hover{background:var(--bg-card-hover)}.markdown-body details{margin:1rem 0;padding:0;border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden}.markdown-body details summary{padding:.75rem 1.25rem;background:#4361ee0f;cursor:pointer;font-weight:600;color:var(--accent-tertiary);transition:background var(--transition-fast);list-style:none;display:flex;align-items:center;gap:.5rem}.markdown-body details summary::-webkit-details-marker{display:none}.markdown-body details summary:before{content:"▶";font-size:.625rem;transition:transform var(--transition-fast)}.markdown-body details[open] summary:before{transform:rotate(90deg)}.markdown-body details summary:hover{background:#4361ee1a}.markdown-body details>*:not(summary){padding:0 1.25rem}.markdown-body details>p:last-child{padding-bottom:1rem}.markdown-body input[type=checkbox]{appearance:none;width:1rem;height:1rem;border:2px solid var(--border-card);border-radius:3px;margin-right:.375rem;vertical-align:middle;position:relative}.markdown-body input[type=checkbox]:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.markdown-body input[type=checkbox]:checked:after{content:"✓";position:absolute;top:-2px;left:1px;font-size:.75rem;color:#fff}.markdown-body :is(h1,h2,h3,h4){scroll-margin-top:calc(var(--navbar-height) + 1.25rem)}@media(max-width:900px){.markdown-body{max-width:100%;font-size:clamp(.98rem,.94rem + .28vw,1.03rem)}}.lesson-reading-surface .markdown-body{line-height:1.92;font-size:clamp(1.02rem,.99rem + .2vw,1.1rem)}.lesson-reading-surface .markdown-body p{margin-bottom:1.2rem;color:color-mix(in srgb,var(--text-primary) 96%,white 4%)}.lesson-reading-surface .markdown-body h2{margin-top:2.65rem;border-bottom-color:color-mix(in srgb,var(--border-subtle) 84%,transparent)}.lesson-reading-surface .markdown-body blockquote{border-left-color:color-mix(in srgb,var(--accent-primary) 72%,var(--border-subtle) 28%);background:color-mix(in srgb,var(--accent-primary) 6%,transparent);color:color-mix(in srgb,var(--text-secondary) 94%,white 6%)}.lesson-reading-surface .markdown-body code:not(pre code){border-color:color-mix(in srgb,var(--border-card) 88%,transparent);color:color-mix(in srgb,var(--accent-tertiary) 88%,var(--text-primary) 12%)}.lesson-reading-surface .markdown-body .code-block--wrapped,.lesson-reading-surface .markdown-body .table-wrapper,.lesson-reading-surface .markdown-body details{border-color:color-mix(in srgb,var(--border-card) 84%,transparent);box-shadow:none}.lesson-reading-surface .markdown-body thead th{background:color-mix(in srgb,var(--accent-primary) 5%,transparent);border-bottom-color:color-mix(in srgb,var(--border-card) 88%,transparent)}.lesson-reading-surface .markdown-body tbody tr:hover{background:transparent}.lesson-reading-surface .markdown-body details summary{background:color-mix(in srgb,var(--accent-primary) 4%,transparent)}.lesson-reading-surface .markdown-body details summary:hover{background:color-mix(in srgb,var(--accent-primary) 6%,transparent)}.heading-anchor-link{display:inline-block;margin-left:.4em;opacity:0;color:var(--text-muted);text-decoration:none;font-size:.65em;font-weight:400;font-family:var(--font-mono);transition:opacity var(--transition-fast),color var(--transition-fast);vertical-align:middle;user-select:none}.heading-anchor-link:before{content:"#"}.heading-with-anchor:hover .heading-anchor-link,.heading-with-anchor:focus-within .heading-anchor-link{opacity:1}.heading-anchor-link:hover{color:var(--accent-primary)}.code-block-content{position:relative}.code-block-content--collapsed{max-height:20rem;overflow:hidden}.code-block-content--collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4rem;background:linear-gradient(to bottom,transparent,var(--bg-code));pointer-events:none}.code-block-expand-btn{display:block;width:100%;padding:.45rem 1rem;background:transparent;border:none;border-top:1px solid var(--border-subtle);color:var(--accent-primary);font-family:var(--font-mono);font-size:.6875rem;font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer;transition:background var(--transition-fast);text-align:center}.code-block-expand-btn:hover{background:var(--bg-card-hover)}.code-block--wrapped[data-wrap=false]{overflow-x:auto}.code-block--wrapped[data-wrap=false] pre,.code-block--wrapped[data-wrap=false] pre code,.code-block--wrapped[data-wrap=false] pre code *{white-space:pre!important;overflow-wrap:normal!important;word-break:normal!important}.zoomable-image{cursor:zoom-in;transition:opacity var(--transition-fast)}.zoomable-image:hover{opacity:.88}.image-zoom-overlay{position:fixed;inset:0;background:#000000e0;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out;padding:2rem;animation:zoom-overlay-in .15s ease}@keyframes zoom-overlay-in{0%{opacity:0}to{opacity:1}}.image-zoom-content{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:var(--radius-sm);cursor:default;box-shadow:0 25px 60px #0009;animation:zoom-content-in .15s ease}@keyframes zoom-content-in{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}.image-zoom-close{position:absolute;top:1rem;right:1rem;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.875rem;padding:.4rem .65rem;transition:background var(--transition-fast);font-family:var(--font-mono)}.image-zoom-close:hover{background:#ffffff38}.python-runner{margin-top:.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem}.python-runner__btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .9rem;font-size:.875rem;font-weight:600;font-family:var(--font-body);color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--motion-duration-active-fast) var(--motion-easing-standard)}.python-runner__btn:hover:not(:disabled){box-shadow:0 2px 10px #22c55e4d}.python-runner__btn:active:not(:disabled),.code-playground__btn:active,.exercise-widget__solution-btn:active,.code-block-copy:active{transform:scale(.97)}.python-runner__btn:disabled{opacity:.7;cursor:not-allowed}.python-runner__shortcut{font-family:var(--font-mono);font-size:.65rem;padding:.1rem .35rem;background:#0003;border-radius:3px;opacity:.9}.python-runner__icon{display:block}.python-runner__spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:pySpinner .6s linear infinite}@keyframes pySpinner{to{transform:rotate(360deg)}}.python-runner__output{width:100%;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-code)}.python-runner__output-header{padding:.25rem .6rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);background:#0000001f}.python-runner__stdout,.python-runner__error{margin:0;padding:.5rem .6rem;font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.python-runner__stdout{color:var(--teal-500)}.python-runner__stdout--empty{color:var(--text-muted);font-style:italic}.python-runner__error{color:var(--ruby-500);background:color-mix(in srgb,var(--ruby-500) 6%,transparent)}.code-playground{margin:.75rem 0;border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-card)}.code-playground__toolbar{display:flex;align-items:center;justify-content:space-between;padding:.35rem .6rem;background:#00000026;border-bottom:1px solid var(--border-subtle)}.code-playground__label{font-size:.6875rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.code-playground__actions{display:flex;gap:.35rem}.code-playground__btn{padding:.2rem .5rem;font-size:.8125rem;font-family:var(--font-body);font-weight:600;color:var(--text-muted);background:transparent;border:1px solid var(--border-subtle);border-radius:4px;cursor:pointer;transition:all var(--motion-duration-active-fast) var(--motion-easing-standard)}.code-playground__btn:hover{color:var(--text-primary);background:var(--bg-card-hover)}.code-playground__btn--confirm{color:#fca5a5!important;border-color:#ef444480!important;background:#ef44441a!important}.code-playground__btn--confirm:hover{color:#fecaca!important;background:#ef444433!important;border-color:#ef4444b3!important}.code-playground__editor-area{position:relative;min-height:60px}.code-playground__highlight{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:var(--bg-code)}.code-playground__textarea{position:relative;display:block;width:100%;min-height:60px;padding:.6rem .75rem;font-family:var(--font-mono);font-size:.875rem;line-height:1.6;color:transparent;caret-color:var(--text-primary);background:transparent;border:none;resize:vertical;outline:none;tab-size:4;z-index:1}.code-playground__textarea:focus{box-shadow:inset 0 0 0 1px var(--accent-primary)}.code-playground__preview{background:var(--bg-code)}.code-playground .python-runner{padding:.4rem .6rem}.code-playground__expected{border-top:1px solid var(--border-subtle)}.code-playground__expected-header{padding:.25rem .6rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-tertiary);background:color-mix(in srgb,var(--accent-tertiary) 4%,transparent);border-bottom:1px solid var(--border-subtle)}.code-playground__expected-body{margin:0;padding:.5rem .6rem;font-family:var(--font-mono);font-size:.75rem;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap}.exercise-widget{margin:1rem 0;border:1px solid color-mix(in srgb,var(--accent-primary) 15%,transparent);border-radius:var(--radius-md);overflow:hidden;background:color-mix(in srgb,var(--accent-primary) 3%,transparent)}.exercise-widget__header{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--accent-primary) 6%,transparent);border-bottom:1px solid color-mix(in srgb,var(--accent-primary) 8%,transparent)}.exercise-widget__icon{font-size:1rem}.exercise-widget__title{margin:0;font-size:.8125rem;font-weight:700;color:var(--text-heading)}.exercise-widget__goal{padding:.5rem .75rem 0;font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.exercise-widget__instructions{padding:.25rem .75rem .5rem;font-size:.75rem;color:var(--text-muted);line-height:1.5}.exercise-widget__instructions p{margin:.15rem 0}.exercise-widget .code-playground{margin:0;border:none;border-top:1px solid var(--border-subtle);border-radius:0}.exercise-widget__quiz-stats{display:flex;flex-direction:column;gap:.2rem;padding:.45rem .75rem;font-size:.7rem;color:var(--text-muted);border-top:1px solid var(--border-subtle)}.exercise-widget__solution{padding:.5rem .75rem;border-top:1px solid var(--border-subtle)}.exercise-widget__solution-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.75rem;font-family:var(--font-body);font-weight:600;color:var(--accent-tertiary);background:color-mix(in srgb,var(--accent-tertiary) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent-tertiary) 15%,transparent);border-radius:4px;cursor:pointer;transition:all var(--motion-duration-active-fast) var(--motion-easing-standard)}.exercise-widget__solution-btn:hover{background:color-mix(in srgb,var(--accent-tertiary) 12%,transparent)}.exercise-widget__solution-panel{overflow:hidden;margin-top:.5rem}.mastery-check{margin:.75rem 0;border:1px solid color-mix(in srgb,var(--amber-500) 15%,transparent);border-radius:var(--radius-md);overflow:hidden;background:color-mix(in srgb,var(--amber-500) 2%,transparent);transition:border-color var(--motion-duration-active-standard) var(--motion-easing-standard)}.mastery-check--revealed{border-color:color-mix(in srgb,var(--teal-500) 20%,transparent)}.mastery-check__header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--amber-500) 4%,transparent);border-bottom:1px solid color-mix(in srgb,var(--amber-500) 8%,transparent)}.mastery-check__badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:.625rem;font-weight:800;color:var(--amber-500);background:color-mix(in srgb,var(--amber-500) 10%,transparent);border:1px solid color-mix(in srgb,var(--amber-500) 20%,transparent);border-radius:50%}.mastery-check__title{margin:0;font-size:.8125rem;font-weight:700;color:var(--text-heading)}.mastery-check__question{padding:.5rem .75rem;font-size:.8125rem;color:var(--text-primary);line-height:1.5}.mastery-check__question p{margin:.15rem 0}.mastery-check__playground{padding:0 .75rem .25rem}.mastery-check__playground .code-playground{margin:0}.mastery-check__check-btn{display:inline-block;margin:.25rem .75rem .5rem;padding:.35rem .9rem;font-size:.75rem;font-family:var(--font-body);font-weight:700;color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--motion-duration-active-fast) var(--motion-easing-standard)}.mastery-check__check-btn:hover{box-shadow:0 2px 10px #f59e0b40}.mastery-check__check-btn--revealed{background:linear-gradient(135deg,#22c55e,#16a34a)}.mastery-check__check-btn--revealed:hover{box-shadow:0 2px 10px #22c55e40}.mastery-check__answer{border-top:1px solid color-mix(in srgb,var(--teal-500) 10%,transparent);animation:fadeSlideIn var(--motion-duration-active-fast) ease-out}.mastery-check__answer-label{padding:.25rem .75rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-500);background:color-mix(in srgb,var(--teal-500) 4%,transparent);border-bottom:1px solid color-mix(in srgb,var(--teal-500) 8%,transparent)}.mastery-check__answer-body{padding:.5rem .75rem;font-size:.8125rem;color:var(--text-primary);line-height:1.5}.mastery-check__answer-body p{margin:.15rem 0}.code-block-try-btn{padding:.2rem .5rem;font-size:.625rem;font-weight:700;font-family:var(--font-body);color:var(--teal-500);background:color-mix(in srgb,var(--teal-500) 8%,transparent);border:1px solid color-mix(in srgb,var(--teal-500) 20%,transparent);border-radius:4px;cursor:pointer;transition:all var(--motion-duration-active-fast) var(--motion-easing-standard);text-transform:uppercase;letter-spacing:.04em}.code-block-try-btn:hover{background:color-mix(in srgb,var(--teal-500) 15%,transparent);border-color:color-mix(in srgb,var(--teal-500) 35%,transparent)}.code-block-inline-playground{border-top:1px solid var(--border-subtle);animation:fadeSlideIn var(--motion-duration-active-fast) ease-out}.code-block-inline-playground .code-playground{margin:0;border:none;border-radius:0}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.code-playground__toolbar{flex-direction:column;gap:.3rem;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.mastery-check__answer,.code-block-inline-playground{animation:none!important}.python-runner__btn,.code-playground__btn,.exercise-widget__solution-btn,.mastery-check,.mastery-check__check-btn,.code-block-try-btn{transition:none!important}}.exercises-notebooks{margin-bottom:1.5rem;padding:1.25rem;border:1px solid var(--border-card);border-radius:var(--radius-lg);background:var(--gradient-card)}.exercises-notebooks__title{margin:0 0 .75rem;font-size:1rem;font-weight:700;color:var(--text-heading)}.exercises-notebooks__grid{display:flex;flex-wrap:wrap;gap:.5rem}.exercises-notebook-link{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.8125rem;font-weight:600;color:var(--accent-tertiary);background:#a78bfa14;border:1px solid rgba(167,139,250,.18);border-radius:var(--radius-sm);text-decoration:none;transition:all var(--transition-fast)}.exercises-notebook-link:hover{background:#a78bfa29;border-color:#a78bfa59;transform:translateY(-1px)}.exercises-low-scoring{margin-bottom:1rem;padding:.9rem 1rem;border:1px solid var(--border-card);border-radius:var(--radius-md);background:#f59e0b0f}.exercises-low-scoring h3{margin:0 0 .35rem;font-size:.9rem}.exercises-low-scoring p{margin:0 0 .5rem;font-size:.8rem;color:var(--text-secondary)}.exercises-low-scoring ul{margin:0;padding-left:1rem;font-size:.8rem;color:var(--text-secondary)}.exercises-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.exercises-filter-group{display:flex;flex-direction:column;gap:.25rem}.exercises-filter-group label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.exercises-filter-group select,.exercises-filter-group input{padding:.45rem .75rem;font-size:.8125rem;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast)}.exercises-filter-group select:focus,.exercises-filter-group input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.exercises-filter-search{flex:1;min-width:180px}.exercises-filter-search input{width:100%}.exercises-count{font-size:.8125rem;color:var(--text-muted);margin-bottom:1rem}.exercises-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.exercise-card{display:flex;flex-direction:column;padding:1rem 1.125rem;border:1px solid var(--border-card);border-radius:var(--radius-md);background:var(--bg-card);transition:all var(--transition-base)}.exercise-card:hover{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:var(--shadow-card);transform:translateY(-2px)}.exercise-card__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.exercise-card__phase{font-size:.75rem;font-weight:600;color:var(--text-muted)}.exercise-card__title{margin:0 0 .35rem;font-size:.9375rem;font-weight:700;color:var(--text-heading);line-height:1.3}.exercise-card__goal{margin:0 0 .75rem;font-size:.8125rem;color:var(--text-secondary);line-height:1.45;flex:1}.exercise-card__footer{margin-top:auto}.exercise-card__link{font-size:.8125rem;font-weight:600;color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}.exercise-card__link:hover{color:var(--accent-tertiary)}.exercises-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:.9375rem}.nb-container{display:flex;flex-direction:column;gap:0}.nb-cell{border:1px solid var(--border-card);border-radius:var(--radius-md);overflow:hidden;margin-bottom:.75rem}.nb-cell--markdown{background:transparent;border-color:transparent}.nb-cell--markdown .markdown-body{padding:0}.nb-cell--code{background:var(--bg-card)}.nb-cell__header{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:#00000026;border-bottom:1px solid var(--border-subtle)}.nb-cell__badge{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-tertiary);padding:.1rem .45rem;border:1px solid rgba(167,139,250,.2);border-radius:3px;background:#a78bfa0f}.nb-cell__exec{font-size:.6875rem;font-family:var(--font-mono);color:var(--text-muted)}.nb-cell__code{background:var(--bg-code)}.nb-output{border-top:1px solid var(--border-subtle)}.nb-output__label{padding:.2rem .75rem;font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#22c55e;background:#22c55e0a;border-bottom:1px solid var(--border-subtle)}.nb-output__text{margin:0;padding:.6rem .75rem;font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;color:#a7f3d0;white-space:pre-wrap;word-break:break-word}.nb-output__error{margin:0;padding:.6rem .75rem;font-family:var(--font-mono);font-size:.8125rem;line-height:1.5;color:#fca5a5;background:#ef44440a;white-space:pre-wrap;word-break:break-word}@media(max-width:600px){.exercises-grid{grid-template-columns:1fr}.exercises-filters,.exercises-notebooks__grid{flex-direction:column}}.cs-tabs{display:flex;gap:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--border-subtle);padding-bottom:0}.cs-tab{padding:.55rem 1.1rem;font-size:.875rem;font-weight:600;font-family:var(--font-body);color:var(--text-muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);margin-bottom:-1px}.cs-tab:hover{color:var(--text-primary)}.cs-tab--active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.cs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.cs-card{display:flex;flex-direction:column;padding:1.125rem 1.25rem;border:1px solid var(--border-card);border-radius:var(--radius-md);background:var(--bg-card);transition:all var(--transition-base)}.cs-card:hover{border-color:var(--border-active);background:var(--bg-card-hover);box-shadow:var(--shadow-card)}.cs-card__header{flex:1}.cs-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.6rem}.cs-card__title{margin:0 0 .4rem;font-size:1rem;font-weight:700;color:var(--text-heading);line-height:1.35}.cs-card__phases{margin:0 0 .75rem;font-size:.8rem;color:var(--text-muted);line-height:1.4}.cs-card__footer{margin-top:auto;padding-top:.75rem}.cs-card__expand-btn{font-size:.8125rem;font-weight:600;font-family:var(--font-body);color:var(--accent-primary);background:transparent;border:none;cursor:pointer;padding:0;transition:color var(--transition-fast)}.cs-card__expand-btn:hover{color:var(--accent-tertiary)}.cs-card__content{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}@media(max-width:600px){.cs-grid{grid-template-columns:1fr}.cs-tabs{gap:0}.cs-tab{flex:1;text-align:center;padding:.5rem;font-size:.8125rem}}.review-page .review-card{background:var(--surface-elevated, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1rem;display:grid;gap:1rem}.review-card-meta{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-secondary, #6b7280)}.review-answer{background:var(--surface-subtle, #f9fafb);border-radius:10px;padding:.75rem}.review-answer-btn,.review-action-btn{border:1px solid var(--border-color, #d1d5db);border-radius:8px;padding:.55rem .8rem;font-weight:600;background:var(--surface-elevated, #fff)}.review-actions{display:flex;gap:.5rem;flex-wrap:wrap}.review-again{border-color:#ef4444}.review-hard{border-color:#f59e0b}.review-good{border-color:#10b981}.review-easy{border-color:#3b82f6}.sidebar-review-stats{padding:0 1.25rem .75rem;color:var(--text-secondary, #6b7280)}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-card);border-radius:50%;color:var(--text-secondary);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);box-shadow:var(--shadow-card);z-index:100}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--bg-card-hover);border-color:var(--border-active);color:var(--accent-tertiary)}.back-to-top:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-primary)}.lesson-with-toc{display:grid;grid-template-columns:minmax(0,min(var(--content-max-width),76ch)) 260px;gap:2rem;align-items:start}.lesson-main-content{min-width:0}.toc{position:sticky;top:calc(var(--navbar-height) + 1.5rem);width:260px;max-height:calc(100vh - var(--navbar-height) - 3rem);overflow-y:auto;scrollbar-width:none;padding:1rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);font-size:.875rem}.toc::-webkit-scrollbar{display:none}.toc-title{font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.75rem}.toc-list{list-style:none;padding:0;margin:0}.toc-list li{margin-bottom:.25rem}.toc-list li.toc-sub{padding-left:.75rem}.toc-link{display:block;min-height:44px;padding:.5rem .625rem;font-size:.875rem;color:var(--text-muted);text-decoration:none;border-left:2px solid transparent;border-radius:2px;transition:color var(--transition-fast),border-color var(--transition-fast);line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.toc-link:hover{color:var(--text-primary)}.toc-link.active{color:var(--accent-tertiary);border-left-color:var(--accent-primary)}.not-found{text-align:center;padding:3rem 1rem}.not-found-code{font-size:4rem;margin-bottom:1rem;background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.not-found-message{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2rem}.not-found-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem}.not-found-suggestions{text-align:left;max-width:600px;margin:0 auto}.not-found-suggestions h2{font-size:1.125rem;margin-bottom:1rem;color:var(--text-heading)}.not-found-phases{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.5rem}.not-found-phase-link{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8125rem;text-decoration:none;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.not-found-phase-link:hover{border-color:var(--border-active);background:var(--bg-card-hover);color:var(--text-primary)}.not-found-tip{text-align:center;color:var(--text-muted);font-size:.875rem}.not-found-tip kbd{padding:.125rem .375rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:4px;font-family:var(--font-mono);font-size:.75rem}@media(max-width:1200px){.lesson-with-toc{grid-template-columns:1fr}.toc{position:sticky;bottom:1rem;top:auto;width:100%;max-height:none;margin-top:1rem;padding:.75rem;z-index:30}.toc-compact .toc-title{display:none}.toc-toggle{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;border-radius:var(--radius-sm);border:1px solid var(--border-card);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer}.toc-toggle:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-primary)}.toc-toggle-chevron{transition:transform var(--transition-fast)}.toc-toggle-chevron.open{transform:rotate(180deg)}.toc-panel{max-height:0;overflow:hidden;opacity:0;transition:max-height var(--transition-base),opacity var(--transition-base),margin-top var(--transition-base)}.toc-panel.open{max-height:min(50vh,420px);opacity:1;overflow-y:auto;margin-top:.625rem}.toc-panel .toc-list li{margin-bottom:.125rem}.toc-panel .toc-link{padding-block:.625rem}}@media(max-width:768px){.toc{display:none}.back-to-top{bottom:calc(64px + 1rem);right:1.25rem}}@media(max-width:640px){.not-found-phases{grid-template-columns:1fr}}body.sidebar-open{overflow:hidden}@media(max-width:1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay.visible,.sidebar-close{display:block}.main-content{margin-left:0}.navbar{left:0}.navbar-hamburger{display:flex}.navbar-links{display:none}.phases-grid{grid-template-columns:1fr}.day-link{padding-top:.625rem;padding-bottom:.625rem;min-height:44px;display:flex;align-items:center}.phase-toggle{min-height:44px}}@media(max-width:640px){:root{--page-padding: 1rem}.hero{padding:2.5rem 1.25rem 2rem}.hero h1{font-size:1.75rem}.hero-stats{gap:1.5rem}.lesson-nav{grid-template-columns:1fr}.lesson-nav-btn.next{grid-column:1;text-align:left}.curriculum-days,.phase-lessons-grid{grid-template-columns:1fr}.curriculum-timeline{padding-left:1.25rem}.curriculum-phase:before{left:-1.25rem}.day-card{min-height:44px}.curriculum-day-link{min-height:44px;padding-top:.625rem;padding-bottom:.625rem}}.reading-time{display:inline-flex;align-items:center;gap:.35rem;font-variant-numeric:tabular-nums}.prerequisite-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.75rem;padding:.625rem .875rem;background:color-mix(in srgb,var(--amber-500) 6%,transparent);border:1px solid color-mix(in srgb,var(--amber-500) 15%,transparent);border-radius:var(--radius-md)}.prerequisite-label{font-size:.8125rem;font-weight:600;color:var(--amber-500);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.prerequisite-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.1875rem .625rem;background:color-mix(in srgb,var(--amber-500) 10%,transparent);border:1px solid color-mix(in srgb,var(--amber-500) 20%,transparent);border-radius:100px;font-size:.8125rem;font-weight:500;color:var(--amber-500);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.prerequisite-pill:hover{background:color-mix(in srgb,var(--amber-500) 18%,transparent);border-color:color-mix(in srgb,var(--amber-500) 40%,transparent);color:var(--accent-tertiary);transform:translateY(-1px)}.prerequisite-pill:before{content:"📋";font-size:.8125rem}.related-lessons{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border-subtle)}.related-lessons-title{font-size:1rem;font-weight:700;color:var(--text-heading);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.related-lessons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.related-lesson-card{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-fast)}.related-lesson-card:hover{border-color:var(--border-active);background:var(--bg-card-hover);transform:translateY(-2px);box-shadow:var(--shadow-elevated)}.related-lesson-day{font-size:.8125rem;font-weight:600;color:var(--accent-tertiary);text-transform:uppercase;letter-spacing:.5px}.related-lesson-title{font-size:.8125rem;font-weight:600;color:var(--text-primary);line-height:1.3}.related-lesson-meta{display:flex;align-items:center;gap:.5rem;margin-top:.125rem}.related-lesson-badge{font-size:.8125rem;padding:.1875rem .5rem;border-radius:100px;font-weight:600}.related-lesson-tags{display:flex;gap:.25rem;flex-wrap:wrap}.related-tag{font-size:.8125rem;padding:.125rem .5rem;background:color-mix(in srgb,var(--accent-primary) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent-primary) 12%,transparent);border-radius:100px;color:var(--accent-tertiary)}.related-tag.shared{background:#22c55e1a;border-color:#22c55e33;color:#4ade80}.concept-graph-page{max-width:1200px;margin:0 auto;padding:var(--page-padding)}.concept-graph-header{margin-bottom:1.5rem}.concept-graph-header h1{font-size:1.75rem;font-weight:800;background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.concept-graph-header p{color:var(--text-secondary);font-size:.9375rem;line-height:1.5}.concept-graph-controls{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.concept-graph-search{flex:1;min-width:200px;padding:.5rem .875rem;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:var(--font-body);outline:none;transition:border-color var(--transition-fast)}.concept-graph-search:focus{border-color:var(--border-active)}.concept-graph-search::placeholder{color:var(--text-muted)}.concept-graph-legend{display:flex;gap:.75rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary);cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.legend-item:hover{background:#ffffff0d}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.concept-graph-container{position:relative;width:100%;height:600px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);overflow:hidden}.concept-graph-container svg{width:100%;height:100%;cursor:grab}.concept-graph-container svg:active{cursor:grabbing}.graph-edge{stroke:#94a3b826;stroke-width:1.5;fill:none}.graph-edge.highlighted{stroke:var(--accent-primary);stroke-width:2;stroke-opacity:.6}.graph-node{cursor:pointer;transition:filter var(--transition-fast)}.graph-node:hover{filter:brightness(1.3)}.graph-node circle{stroke:#ffffff26;stroke-width:1.5;transition:all var(--transition-fast)}.graph-node:hover circle{stroke:#ffffff80;stroke-width:2.5}.graph-node text{fill:var(--text-primary);font-size:8px;font-weight:600;text-anchor:middle;pointer-events:none;user-select:none}.graph-node-label{fill:var(--text-secondary)!important;font-size:6.5px!important;font-weight:400!important}.graph-tooltip{position:absolute;padding:.625rem .875rem;background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-elevated);pointer-events:none;z-index:10;max-width:220px;opacity:0;transition:opacity var(--transition-fast)}.graph-tooltip.visible{opacity:1}.graph-tooltip-title{font-size:.75rem;font-weight:700;color:var(--text-heading);margin-bottom:.25rem}.graph-tooltip-concepts{display:flex;flex-wrap:wrap;gap:.25rem}.graph-tooltip-concept{font-size:.8125rem;padding:.125rem .5rem;background:#4361ee1a;border-radius:100px;color:var(--accent-tertiary)}.graph-node.dimmed circle{opacity:.2}.graph-node.dimmed text{opacity:.15}.graph-edge.dimmed{opacity:.05}.glossary-term{position:relative;border-bottom:1px dashed var(--accent-tertiary);cursor:help;color:inherit}.glossary-term:after{content:attr(data-definition);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px) scale(.95);padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-elevated);color:var(--text-primary);font-size:.75rem;line-height:1.4;white-space:normal;width:max-content;max-width:260px;z-index:20;opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast)}.glossary-term:hover:after{opacity:1;transform:translate(-50%) translateY(0) scale(1)}.glossary-term:first-child:after{left:0;transform:translate(0) translateY(4px) scale(.95)}.glossary-term:first-child:hover:after{transform:translate(0) translateY(0) scale(1)}@media(max-width:768px){.related-lessons-grid{grid-template-columns:1fr}.concept-graph-container{height:400px}.prerequisite-bar{flex-direction:column;align-items:flex-start}.concept-graph-controls{flex-direction:column;align-items:stretch}}@media(prefers-reduced-motion:reduce){.related-lesson-card:hover,.prerequisite-pill:hover{transform:none}.glossary-term:after{transition:none}}.skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--bg-card) 78%,white 22%);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,color-mix(in srgb,var(--bg-card-hover) 45%,white 55%) 45%,transparent 72%);transform:translate(-130%);animation:skeletonShimmer var(--motion-duration-active-skeleton) infinite}.skeleton-text{height:16px;margin-bottom:10px;width:100%}.skeleton-heading{height:32px;margin-bottom:16px;width:60%}.skeleton-block{height:120px;margin-bottom:16px;width:100%;border-radius:var(--radius-md)}.skeleton-card{height:200px;border-radius:var(--radius-lg)}.page-skeleton{max-width:var(--content-max-width);margin:2rem auto;padding:0 var(--page-padding)}@keyframes skeletonShimmer{0%{transform:translate(-130%)}to{transform:translate(130%)}}@media(prefers-reduced-motion:reduce){.skeleton:after{animation:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}.stats-bar-fill,.stats-phase-card{transition:none!important}}.glass-card{position:relative;background:var(--surface-paper);border:1px solid var(--border-card);border-radius:var(--radius-sm);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:9999;background:transparent;pointer-events:none;opacity:.6}.scroll-progress.lesson-progress{height:4px;opacity:1}.scroll-progress-bar{height:100%;background:var(--accent-primary);transition:width var(--motion-duration-active-fast) linear;border-radius:0 2px 2px 0}.scroll-progress.lesson-progress .scroll-progress-bar{background-color:var(--accent-primary);background-image:var(--gradient-hero)}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--bg-secondary);border-top:1px solid var(--border-card);padding:4px 0;padding-bottom:env(safe-area-inset-bottom,4px);backdrop-filter:blur(12px)}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;font-size:.75rem;color:var(--text-muted);text-decoration:none;transition-duration:var(--motion-duration-active-fast);transition-timing-function:var(--motion-easing-standard);flex:1;min-height:44px;justify-content:center}.mobile-nav-item svg{width:20px;height:20px}.mobile-nav-item.active{color:var(--accent-primary)}@media(max-width:768px){.mobile-nav{display:flex;justify-content:space-around}.main-content{padding-bottom:72px!important}}::view-transition-old(root){animation:fade-out var(--motion-duration-active-view-transition) ease-out}::view-transition-new(root){animation:fade-in var(--motion-duration-active-view-transition) ease-in}@keyframes fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.content-stats-page{max-width:var(--content-max-width);margin:0 auto;padding:2rem var(--page-padding)}.content-stats-page h1{font-size:2rem;color:var(--accent-primary);margin-bottom:.25rem}.stats-subtitle{color:var(--text-secondary);margin-bottom:2rem}.stats-hero-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2.5rem}.stats-hero-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;box-shadow:var(--shadow-card)}.stats-hero-value{font-size:2rem;font-weight:700;color:var(--accent-primary);line-height:1.1}.stats-hero-label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stats-section{margin-bottom:2.5rem}.stats-section h2{font-size:1.3rem;color:var(--text-heading);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.stats-bar-chart{display:flex;flex-direction:column;gap:.75rem}.stats-bar-row{display:flex;align-items:center;gap:.75rem}.stats-bar-label{width:100px;font-size:.85rem;color:var(--text-secondary);text-transform:capitalize;flex-shrink:0}.stats-bar-track{flex:1;height:24px;background:var(--bg-surface);border-radius:var(--radius-sm);overflow:hidden}.stats-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--motion-duration-active-slow) ease-out}.stats-bar-beginner{background:#34d399}.stats-bar-intermediate{background:#fbbf24}.stats-bar-advanced{background:#f87171}.stats-bar-unknown{background:var(--accent-primary)}.stats-bar-value{width:32px;text-align:right;font-weight:600;font-size:.85rem;color:var(--text-primary)}.stats-phase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.stats-phase-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:1rem;text-decoration:none;transition-duration:var(--motion-duration-active-fast);transition-timing-function:var(--motion-easing-standard)}.stats-phase-card:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-elevated)}.stats-phase-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.stats-phase-icon{font-size:1.2rem}.stats-phase-num{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stats-phase-title{font-weight:600;color:var(--text-primary);margin-bottom:.5rem;font-size:.9rem}.stats-phase-meta{display:flex;gap:.75rem;font-size:.75rem;color:var(--text-muted)}.stats-tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.stats-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);color:var(--accent-tertiary);white-space:nowrap}.stats-tag-count{font-size:.65rem;color:var(--text-muted);background:var(--bg-surface);padding:1px 5px;border-radius:99px}.stats-concepts-grid{display:flex;flex-wrap:wrap;gap:.5rem}.stats-concept-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-md);font-size:.85rem;color:var(--text-primary)}.stats-concept-count{font-size:.7rem;font-weight:600;color:var(--accent-primary);background:var(--accent-glow);padding:2px 6px;border-radius:99px}@media(max-width:640px){.stats-hero-grid{grid-template-columns:repeat(2,1fr)}}.shortcut-overlay-backdrop{position:fixed;inset:0;z-index:1200;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:1rem}.shortcut-overlay-dialog{width:min(640px,100%);max-height:min(85vh,700px);overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-elevated);padding:1.25rem}.shortcut-overlay-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.shortcut-overlay-header h2{margin:0}.shortcut-overlay-close{border:1px solid var(--border-card);border-radius:var(--radius-sm);padding:.35rem .6rem;background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;cursor:pointer}.shortcut-overlay-group+.shortcut-overlay-group{margin-top:1rem}.shortcut-overlay-group h3{margin:0 0 .4rem;color:var(--text-secondary);font-size:.95rem}.shortcut-overlay-group ul{margin:0;padding:0;list-style:none}.shortcut-overlay-group li{display:grid;grid-template-columns:92px 1fr;gap:.75rem;align-items:center;padding:.4rem 0;border-top:1px solid var(--border-subtle)}.shortcut-overlay-keys kbd{display:inline-block;min-width:28px;text-align:center;background:var(--bg-secondary);border:1px solid var(--border-card);border-radius:6px;padding:.2rem .45rem;font-family:inherit;font-size:.82rem}@media(pointer:fine){.custom-cursor-active,.custom-cursor-active *{cursor:none!important}}.custom-cursor-dot{position:fixed;top:-4px;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--accent-primary);pointer-events:none;z-index:99999;will-change:transform;mix-blend-mode:difference;opacity:0}.custom-cursor-ring{position:fixed;top:-20px;left:-20px;width:40px;height:40px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--accent-primary) 50%,transparent);pointer-events:none;z-index:99998;will-change:transform;opacity:0;transition:border-color var(--transition-fast),width var(--motion-duration-active-fast),height var(--motion-duration-active-fast),opacity var(--motion-duration-active-fast)}.custom-cursor-active .custom-cursor-dot,.custom-cursor-active .custom-cursor-ring{opacity:1}.custom-cursor-ring--hover{border-color:var(--accent-primary)}@media(prefers-reduced-motion:reduce){.custom-cursor-dot,.custom-cursor-ring{display:none}}.empty-state-illustration{width:min(220px,100%);height:auto;margin:0 auto .75rem;display:block}.empty-state-line{stroke:#94a3b8a6;stroke-width:5;stroke-linecap:round;animation:emptyStatePulse 1.9s ease-in-out infinite}.empty-state-dot{animation:emptyStateFloat 2.4s ease-in-out infinite}@keyframes emptyStatePulse{0%,to{opacity:.42}50%{opacity:1}}@keyframes emptyStateFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.empty-state-line,.empty-state-dot{animation:none!important}}@media print{.navbar,.sidebar,.mobile-nav,.scroll-progress,.search-trigger,.search-palette-overlay,.lesson-nav,.back-to-top,.prerequisite-pills,.related-lessons,.lesson-complete-btn,.skip-to-content,.theme-toggle,.navbar-hamburger{display:none!important}:root,[data-palette]{--bg-primary: #fff !important;--bg-secondary: #fff !important;--bg-card: #fff !important;--bg-surface: #fff !important;--bg-code: #f5f5f5 !important;--text-primary: #111 !important;--text-secondary: #333 !important;--text-muted: #666 !important;--text-heading: #000 !important;--border-card: #ddd !important;--border-subtle: #eee !important;--shadow-card: none !important;--shadow-elevated: none !important}body{background:#fff!important;color:#000!important;font-size:12pt!important;line-height:1.5!important}.app-layout{display:block!important}.main-content{margin:0!important;padding:.5in!important;max-width:100%!important}.lesson-container{max-width:100%!important;padding:0!important}pre,code{font-size:9pt!important;white-space:pre-wrap!important;word-wrap:break-word!important;border:1px solid #ddd!important;background:#f8f8f8!important;color:#333!important}a[href^=http]:after{content:" (" attr(href) ")";font-size:8pt;color:#666;word-break:break-all}h1,h2,h3{page-break-after:avoid;color:#000!important}.lesson-body{page-break-inside:auto}img{max-width:100%!important;page-break-inside:avoid}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp var(--motion-duration-active-card-entrance) ease-out forwards}.phase-card{animation:fadeInUp var(--motion-duration-active-standard) ease-out backwards}.phase-card:nth-child(1){animation-delay:.05s}.phase-card:nth-child(2){animation-delay:.1s}.phase-card:nth-child(3){animation-delay:.15s}.phase-card:nth-child(4){animation-delay:.2s}.phase-card:nth-child(5){animation-delay:.25s}.phase-card:nth-child(6){animation-delay:.3s}.phase-card:nth-child(7){animation-delay:.35s}.phase-card:nth-child(8){animation-delay:.4s}.phase-card:nth-child(9){animation-delay:.45s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.animate-in,.phase-card{animation:none!important}.phase-card{animation-delay:0s!important}}
