@import "https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600;700;800&display=swap";:root{--ml-white:#fff;--ml-green-50:#f1faf4;--ml-green-100:#ddf1e4;--ml-green-700:#0b6b3a;--ml-green-800:#084f2b;--ml-green-600:#17703f;--ml-ink:#0e1a14;--ml-ink-muted:#3d4d44;--ml-line:#d3e2d8;--ml-line-strong:#7d9486;--ml-disabled-bg:#e6ece8;--ml-disabled-fg:#5f6e65;--ml-red-700:#b42318;--ml-red-50:#fdecea;--ml-amber-800:#7a4b00;--ml-amber-100:#fff3cd;--bg:var(--ml-white);--surface:var(--ml-green-50);--fg:var(--ml-ink);--fg-muted:var(--ml-ink-muted);--fg-on-accent:var(--ml-white);--accent:var(--ml-green-700);--accent-hover:var(--ml-green-800);--accent-soft:var(--ml-green-100);--border:var(--ml-line);--border-strong:var(--ml-line-strong);--focus-ring:var(--ml-green-700);--success:var(--ml-green-600);--success-soft:var(--ml-green-100);--warning:var(--ml-amber-800);--warning-soft:var(--ml-amber-100);--danger:var(--ml-red-700);--danger-soft:var(--ml-red-50);--disabled-bg:var(--ml-disabled-bg);--disabled-fg:var(--ml-disabled-fg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark],[data-theme=dark]{--ml-night-bg:#0b1510;--ml-night-surface:#132219;--ml-night-ink:#e9f5ee;--ml-night-muted:#a8bdb0;--ml-night-accent:#5cd08e;--ml-night-accent-hover:#7bdda6;--ml-night-accent-soft:#1a3a28;--ml-night-line:#2a3f33;--ml-night-line-strong:#4f6b5c;--ml-night-success:#6fd89a;--ml-night-warning:#ffc861;--ml-night-warning-soft:#3a2e0b;--ml-night-danger:#ff8b80;--ml-night-danger-soft:#3d1a17;--ml-night-disabled-bg:#1c2b23;--ml-night-disabled-fg:#6e8478;--bg:var(--ml-night-bg);--surface:var(--ml-night-surface);--fg:var(--ml-night-ink);--fg-muted:var(--ml-night-muted);--fg-on-accent:var(--ml-night-bg);--accent:var(--ml-night-accent);--accent-hover:var(--ml-night-accent-hover);--accent-soft:var(--ml-night-accent-soft);--border:var(--ml-night-line);--border-strong:var(--ml-night-line-strong);--focus-ring:var(--ml-night-accent-hover);--success:var(--ml-night-success);--success-soft:var(--ml-night-accent-soft);--warning:var(--ml-night-warning);--warning-soft:var(--ml-night-warning-soft);--danger:var(--ml-night-danger);--danger-soft:var(--ml-night-danger-soft);--disabled-bg:var(--ml-night-disabled-bg);--disabled-fg:var(--ml-night-disabled-fg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--ml-font-body:"Source Sans 3", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ml-font-display:"Source Sans 3", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ml-font-option-2:"Atkinson Hyperlegible Next", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ml-weight-regular:400;--ml-weight-semibold:600;--ml-weight-bold:700;--ml-weight-display:800;--ml-text-xs:.8125rem;--ml-text-sm:.9375rem;--ml-text-base:1.0625rem;--ml-text-lg:1.25rem;--ml-text-xl:1.5rem;--ml-text-2xl:2rem;--ml-text-3xl:2.5rem;--ml-text-4xl:3.25rem;--ml-lh-tight:1.15;--ml-lh-body:1.6;--ml-tracking-tight:-.01em;--ml-tracking-eyebrow:.08em;--ml-measure:68ch}@media (width>=720px){:root{--ml-text-base:1.125rem;--ml-text-3xl:3rem;--ml-text-4xl:3.75rem}}:root{--ml-space-1:4px;--ml-space-2:8px;--ml-space-3:12px;--ml-space-4:16px;--ml-space-5:24px;--ml-space-6:32px;--ml-space-7:48px;--ml-space-8:64px;--ml-gutter:16px;--ml-container:960px;--ml-tap-min:44px}@media (width>=720px){:root{--ml-gutter:24px}}:root{--ml-radius-sm:6px;--ml-radius-md:12px;--ml-radius-lg:16px;--ml-radius-pill:999px;--ml-border-width:1px;--ml-border-selected:2px;--ml-focus-width:3px;--ml-focus-offset:2px;--ml-duration-fast:.15s;--ml-duration-base:.22s;--ml-ease:cubic-bezier(.2, .6, .2, 1)}@media (prefers-reduced-motion:reduce){:root{--ml-duration-fast:0s;--ml-duration-base:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--ml-font-body);font-size:var(--ml-text-base);font-weight:var(--ml-weight-regular);line-height:var(--ml-lh-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{font-family:var(--ml-font-display);font-weight:var(--ml-weight-display);line-height:var(--ml-lh-tight);letter-spacing:var(--ml-tracking-tight);margin:0 0 var(--ml-space-4);color:var(--fg)}p{margin:0 0 var(--ml-space-4);max-width:var(--ml-measure)}a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}a:hover{color:var(--accent-hover)}:focus-visible{outline:var(--ml-focus-width) solid var(--focus-ring);outline-offset:var(--ml-focus-offset)}::selection{background:var(--accent-soft);color:var(--fg)}img,svg{max-width:100%;height:auto;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}html{scroll-padding-top:var(--ml-space-5)}body{min-width:0}#root{min-height:100svh}h1{font-size:var(--ml-text-3xl);text-wrap:balance}h2{font-size:var(--ml-text-2xl);text-wrap:balance}h3{font-size:var(--ml-text-xl)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:var(--accent-soft)}button{cursor:pointer}button,.btn,summary{min-height:var(--ml-tap-min);min-width:var(--ml-tap-min)}button:disabled{cursor:not-allowed;background:var(--disabled-bg);color:var(--disabled-fg);border-color:var(--border)}a,button{overflow-wrap:anywhere}button,.btn{transition:background-color var(--ml-duration-fast) var(--ml-ease), border-color var(--ml-duration-fast) var(--ml-ease)}svg{flex-shrink:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:-100px;left:var(--ml-gutter);z-index:10;padding:var(--ml-space-3);background:var(--bg);position:absolute}.skip-link:focus{top:var(--ml-space-2)}.btn{justify-content:center;align-items:center;gap:var(--ml-space-2);padding:var(--ml-space-3) var(--ml-space-5);border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm);font-weight:var(--ml-weight-bold);line-height:1.3;text-decoration:none;display:inline-flex}.btn-primary{color:var(--fg-on-accent);background:var(--accent);border-color:var(--accent)}.btn-primary:hover{color:var(--fg-on-accent);background:var(--accent-hover);border-color:var(--accent-hover)}.btn-secondary,.btn-ghost{background:var(--bg);color:var(--accent)}.btn-secondary:hover,.btn-ghost:hover{background:var(--accent-soft);color:var(--accent-hover)}.eyebrow,.gate-eyebrow{color:var(--accent);font-weight:var(--ml-weight-bold);font-size:var(--ml-text-sm)}.hub-meta,.gate-sub,.form-note{color:var(--fg-muted);font-size:var(--ml-text-sm)}.actions,.gate-actions{gap:var(--ml-space-3);flex-wrap:wrap;align-items:center;display:flex}.page-width{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));margin-inline:auto}.site-footer{border-top:1px solid var(--border);margin-top:var(--ml-space-8);padding:var(--ml-space-5) var(--ml-gutter);gap:var(--ml-space-4);font-size:var(--ml-text-sm);color:var(--fg-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.site-footer p{margin:0}.site-footer a{min-height:var(--ml-tap-min);align-items:center;display:inline-flex}.status-note{padding:var(--ml-space-4);background:var(--warning-soft);color:var(--warning);border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm)}.site-header,.learn-header{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));padding-block:var(--ml-space-4);justify-content:space-between;align-items:center;gap:var(--ml-space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;margin-inline:auto;display:flex}.wordmark{align-items:center;gap:var(--ml-space-2);min-height:var(--ml-tap-min);color:var(--fg);font:var(--ml-weight-display) var(--ml-text-xl) / 1 var(--ml-font-display);letter-spacing:var(--ml-tracking-tight);text-decoration:none;display:inline-flex}.wordmark:hover{color:var(--fg)}.wordmark-chip{background:var(--accent);color:var(--fg-on-accent);padding:var(--ml-space-2);border-radius:var(--ml-radius-sm)}.learn-nav{gap:var(--ml-space-2);flex-wrap:wrap;align-items:center;display:flex}.learn-nav a{align-items:center;gap:var(--ml-space-2);padding:var(--ml-space-2);min-height:var(--ml-tap-min);font-size:var(--ml-text-sm);font-weight:var(--ml-weight-semibold);text-decoration:none;display:inline-flex}.learn-nav a[aria-current=page]{text-underline-offset:6px;text-decoration:underline}.theme-toggle{padding:var(--ml-space-2);border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm);background:var(--bg);color:var(--fg);font-size:var(--ml-text-sm)}.theme-toggle:hover{background:var(--surface)}.hero{padding-block:var(--ml-space-8);gap:var(--ml-space-6);display:grid}.hero h1{max-width:16ch;font-size:var(--ml-text-4xl)}.lead{font-size:var(--ml-text-lg);color:var(--fg-muted)}.hero-path{background:var(--surface);border:1px solid var(--border);padding:var(--ml-space-5);border-radius:var(--ml-radius-md)}.hero-path ol{margin:0;padding:0;list-style:none}.hero-path li{gap:var(--ml-space-3);padding-block:var(--ml-space-3);border-bottom:1px solid var(--border);align-items:baseline;display:flex}.hero-path li:last-child{border-bottom:0}.path-code{color:var(--accent);font-weight:var(--ml-weight-display)}.section{padding-block:var(--ml-space-7);border-top:1px solid var(--border)}.section h2{max-width:24ch}.learning-steps{padding-left:var(--ml-space-5);gap:var(--ml-space-5);display:grid}.learning-steps h3{margin-bottom:var(--ml-space-2)}.learning-steps p{color:var(--fg-muted)}.coaching-offer{background:var(--surface);padding:var(--ml-space-5);border:1px solid var(--border);border-radius:var(--ml-radius-md)}.book-main{padding-top:var(--ml-space-7)}.book-grid{gap:var(--ml-space-5);margin-block:var(--ml-space-6);display:grid}.book-card{padding:var(--ml-space-5);border:1px solid var(--border);border-radius:var(--ml-radius-md);background:var(--surface)}.book-card p{color:var(--fg-muted)}.book-cta{padding-block:var(--ml-space-6);border-top:1px solid var(--border)}@media (width>=720px){.hero{grid-template-columns:1.3fr 1fr;align-items:center}.book-grid{grid-template-columns:1fr 1fr}.learning-steps{gap:var(--ml-space-6);grid-template-columns:repeat(3,1fr)}}@media (width<=450px){.learn-nav{justify-content:space-between;width:100%}.hero h1{font-size:var(--ml-text-3xl)}.actions .btn,.gate-actions .btn{width:100%}}.hub{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));padding-top:var(--ml-space-7);margin-inline:auto}.hub-intro{margin-bottom:var(--ml-space-7)}.hub-lead{color:var(--fg-muted)}.hub-list{gap:var(--ml-space-5);padding:0;list-style:none;display:grid}.hub-card{border:1px solid var(--border);border-radius:var(--ml-radius-md);padding:var(--ml-space-5);background:var(--bg)}.hub-card-head{align-items:baseline;gap:var(--ml-space-3);flex-wrap:wrap;display:flex}.hub-card-head>div{flex:220px;min-width:0}.hub-card h2{font-size:var(--ml-text-xl);margin-bottom:var(--ml-space-2)}.hub-index{color:var(--accent);font-weight:var(--ml-weight-display)}.hub-domain,.hub-goal{color:var(--fg-muted)}.hub-status{gap:var(--ml-space-2);font-size:var(--ml-text-sm);align-items:center;display:flex}.hub-status.is-done{color:var(--success)}.hub-actions{align-items:center;gap:var(--ml-space-3);margin-top:var(--ml-space-4);flex-wrap:wrap;display:flex}.progress-bar{height:var(--ml-space-2);background:var(--accent-soft);border-radius:var(--ml-radius-pill);margin-block:var(--ml-space-3);overflow:hidden}.progress-bar>span{background:var(--accent);height:100%;display:block}.learn-meter{align-items:center;gap:var(--ml-space-3);font-size:var(--ml-text-sm);color:var(--fg-muted);width:100%;display:flex}.learn-meter .progress-bar{width:120px;margin:0}.learn-unit-nav{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));margin:var(--ml-space-5) auto}.learn-unit-nav-list{gap:var(--ml-space-2);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.learn-unit-nav-pill{align-items:center;gap:var(--ml-space-2);width:100%;padding:var(--ml-space-3);text-align:left;background:var(--bg);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm);font-size:var(--ml-text-sm);display:flex}.learn-unit-nav-pill:hover:enabled{background:var(--surface)}.learn-unit-nav-pill-active{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent)}.learn-unit-nav-num{font-weight:var(--ml-weight-bold);min-width:16px}.learn-lesson-grid{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));gap:var(--ml-space-6);margin-inline:auto;display:grid}.learn-lesson-main{min-width:0}.learn-lesson-main h1{font-size:var(--ml-text-2xl)}.learn-lesson-sidebar{font-size:var(--ml-text-sm)}.learn-lesson-sidebar summary{cursor:pointer;color:var(--accent);font-weight:var(--ml-weight-bold);align-items:center;display:flex}.learn-path-modules{margin:0;padding:0;list-style:none}.learn-path-modules li{border-bottom:1px solid var(--border)}.learn-path-modules a,.learn-path-locked{gap:var(--ml-space-2);padding-block:var(--ml-space-3);min-height:var(--ml-tap-min);align-items:center;display:flex}.learn-path-modules .is-current{font-weight:var(--ml-weight-bold)}.learn-path-locked{color:var(--fg-muted)}.unit-bullets{padding-left:var(--ml-space-5);max-width:var(--ml-measure)}.unit-bullets li{margin-bottom:var(--ml-space-3)}.unit-prose{white-space:pre-line}.unit-video-block{margin-top:var(--ml-space-6)}.video-heading{font-size:var(--ml-text-xl)}.video-frame{aspect-ratio:16/9;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm);overflow:hidden}.video-frame iframe,.video-frame>div{border:0;width:100%;height:100%}.video-embed .actions{margin-block:var(--ml-space-3)}.video-status{padding:var(--ml-space-4)}.video-error{color:var(--danger);background:var(--danger-soft);padding:var(--ml-space-4);border-radius:var(--ml-radius-sm)}.check-questions{margin-top:var(--ml-space-6);padding-top:var(--ml-space-5);border-top:1px solid var(--border)}.check-list{padding-left:var(--ml-space-5)}.check-list li{padding-block:var(--ml-space-4)}.check-ts{min-height:var(--ml-tap-min);margin-right:var(--ml-space-3);align-items:center;display:inline-flex}.check-answer{padding:var(--ml-space-4);background:var(--surface);border-radius:var(--ml-radius-sm);margin-top:var(--ml-space-3)}.lesson-player-actions{align-items:center;gap:var(--ml-space-4);padding-top:var(--ml-space-5);margin-top:var(--ml-space-5);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.studio-passed-note{align-items:center;gap:var(--ml-space-2);color:var(--success);margin:0;display:flex}.studio-empty{width:min(100% - var(--ml-gutter) * 2, var(--ml-container));margin:var(--ml-space-8) auto}.gate-questions{padding-left:var(--ml-space-5)}.gate-questions>li{padding-block:var(--ml-space-5);border-top:1px solid var(--border)}.q-field{border:0;min-width:0;margin:0;padding:0}.q-prompt{font-weight:var(--ml-weight-bold);margin-bottom:var(--ml-space-4)}.q-options,.q-yesno{gap:var(--ml-space-3);display:grid}.q-yesno{grid-template-columns:1fr 1fr}.q-choice,.q-option{padding:var(--ml-space-3) var(--ml-space-4);border:1px solid var(--border-strong);background:var(--bg);color:var(--fg);border-radius:var(--ml-radius-sm);text-align:left;gap:var(--ml-space-3);align-items:center;display:flex}.q-choice:hover:enabled,.q-option:hover:enabled{background:var(--surface)}.q-choice.is-selected,.q-option.is-selected{border:2px solid var(--accent);background:var(--accent-soft);color:var(--fg)}.q-choice.is-correct,.q-option.is-correct{border-color:var(--success);background:var(--success-soft);color:var(--success)}.q-choice.is-wrong,.q-option.is-wrong{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.q-hint{font-size:var(--ml-text-sm);color:var(--fg-muted)}.q-check{border:1px solid var(--border-strong);border-radius:var(--ml-radius-sm);justify-content:center;align-items:center;width:20px;min-width:20px;height:20px;display:inline-flex}.exam-fail-screen{padding:var(--ml-space-5);border:1px solid var(--danger);background:var(--danger-soft);border-radius:var(--ml-radius-md)}.exam-fail-screen ul{padding-left:var(--ml-space-5)}.exam-fail-screen li{margin-bottom:var(--ml-space-3)}.gate-pass{padding:var(--ml-space-5);background:var(--success-soft);border:1px solid var(--success);border-radius:var(--ml-radius-md)}@media (width>=720px){.learn-unit-nav-list{grid-template-columns:repeat(4,1fr)}.learn-lesson-grid{grid-template-columns:210px minmax(0,1fr);align-items:start}}.module-level{margin-bottom:var(--ml-space-7)}.hub-card h3{margin-bottom:var(--ml-space-2)}
