:root{--font-body:var(--font-geist-mono), "Courier New", monospace;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:clamp(1.5rem, 2.4vw, 2.05rem);--text-3xl:clamp(2.4rem, 4.6vw, 4.25rem);--line-dim:rgb(var(--line-rgb) / .16);--line-mid:rgb(var(--line-rgb) / .34);--surface-1:rgb(var(--panel-rgb) / .5);--surface-2:rgb(var(--panel-strong-rgb) / .92);--space-section:clamp(3.5rem, 8vw, 7rem);--glow-shadow:5px 5px 0 rgb(var(--shadow-rgb) / .85);--accent-text:var(--line)}:root[data-theme=light]{--accent-text:#0a6c8f;--glow-shadow:5px 5px 0 rgb(var(--shadow-rgb) / .18)}h2,h3,.eyebrow,.primary-action,.secondary-action,.roadmap-topbar,.roadmap-back,.panel-heading,.map-density-options button,.map-density-label,.map-density-tooltip b,.track-group-summary h3,.coming-soon-label,.account-trigger,.account-menu-user b,.account-menu a,.account-menu button,.account-login,.settings-list dt,.auth-form label,.auth-card>span,.plan-head,.skill-lesson-back,.skill-discover,.skill-tabs button,.solve-tabs button,.skill-solve,.skill-workbench-check,.ui-dropdown,.skill-status-trigger,.skill-status-kicker,.skill-status-current strong,.skill-status-rail b,.skill-status-decay p,.inspector-kicker,.inspector-skill em b,.skill-band-legend,.branch-context h2,.sidebar-toggle,.sidebar-dismiss,.inspector-detail h3,.badge-card h3,.badge-family-card h3,.badge-ladder-row h3,.badge-admin-row h3,.vault-module h3,.activity-stats span,.profile-stats span,.profile-tracks b,.profile-actions a,.profile-id,.language-picker legend,.language-chip{font-family:var(--font-body);letter-spacing:.005em}h2,h3{font-weight:700}.eyebrow{font-size:var(--text-sm);letter-spacing:.02em;margin-bottom:.9rem;font-weight:500}h1,.site-brand,.cta-strip h2,.plan-price,.home-steps b{font-family:var(--font-display)}:root .page-shell h1,:root .cta-strip h2{text-shadow:3px 3px 0 rgb(var(--shadow-rgb) / .55)}:root[data-theme=light] .page-shell h1,:root[data-theme=light] .cta-strip h2{text-shadow:none}:root .subpage-hero h1{font-size:var(--text-3xl);line-height:1.04}:root .subpage-hero p:not(.eyebrow){font-size:var(--text-lg);line-height:1.65}.primary-action,.secondary-action{font-size:var(--text-sm);gap:.5rem;font-weight:700}.secondary-action{border:1px solid var(--line-mid);box-shadow:none;background:0 0}.secondary-action:hover,.secondary-action:focus-visible{border-color:var(--line);color:var(--green);box-shadow:none;outline:none;transform:none}.primary-action:focus-visible,.secondary-action:focus-visible{outline:2px solid var(--line);outline-offset:3px}.pricing-signal,.pricing-card,.pricing-compare,.pricing-note,.subpage-signal,.feature-page-card,.feature-principles,.daily-plan,.daily-stats,.badge-rack,.profile-card,.roadmap-hero aside,.skill-map-track,.problem-list{border:1px solid var(--line-dim);background:var(--surface-1);box-shadow:none}.pricing-card.featured,.auth-card,.skill-check,.home-lesson-card{border:1px solid var(--line);background:var(--surface-2);box-shadow:var(--glow-shadow)}.cta-strip{border:0;border-top:1px solid var(--line-dim);box-shadow:none;padding:var(--space-section) 0 0;background:0 0}:root .cta-strip h2{font-size:var(--text-2xl)}.pricing-card h2{font-family:var(--font-display)}.pricing-card.featured:before{content:none}.roadmap-topbar{border-bottom:1px solid var(--line-dim);background:rgb(var(--bg-rgb) / .82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-brand{width:fit-content;color:var(--foreground);align-items:center;gap:.65rem;font-size:1.2rem;font-weight:700;display:inline-flex}.site-brand-mark{border:1px solid var(--line);height:1.9rem;color:var(--accent-text);place-items:center;padding:0 .4rem;font-size:.8rem;display:inline-grid}.site-brand:hover,.site-brand:focus-visible{color:var(--green);text-shadow:2px 0 #ff4f7073, -2px 0 rgb(var(--line-rgb) / .5);outline:none}.site-nav{justify-content:center;min-width:0;display:flex}.app-nav{gap:.25rem}.app-nav a{color:var(--muted);font-size:var(--text-sm);letter-spacing:.01em;padding:.55rem .75rem;font-weight:600;position:relative}.app-nav a[aria-current=page]{color:var(--foreground)}.app-nav a[aria-current=page]:after{content:"";background:var(--green);height:2px;position:absolute;bottom:.2rem;left:.75rem;right:.75rem}.site-nav-toggle,.site-nav-menu{display:none}.account-nav{align-items:center;gap:1rem;display:inline-flex}.account-login{font-size:var(--text-sm);font-weight:600}.account-cta{border:2px solid var(--ink);background:var(--green-fill);min-height:36px;color:var(--ink);font-size:var(--text-sm);box-shadow:3px 3px 0 var(--cta-shadow);align-items:center;padding:0 .85rem;font-weight:700;display:inline-flex}.account-cta:hover,.account-cta:focus-visible{box-shadow:1px 1px 0 var(--cta-shadow);outline:none;transform:translate(2px,2px)}@media (max-width:760px){.app-header,.roadmap-topbar{flex-wrap:nowrap;gap:.75rem}.roadmap-topbar .app-nav{display:none}.app-header-end,.roadmap-topbar>.account-nav{order:2;margin-left:auto}.roadmap-topbar>.site-brand{flex:1}.site-nav{order:3}.app-nav{display:none}.site-nav-toggle{border:1px solid var(--line-mid);width:44px;height:44px;color:var(--foreground);cursor:pointer;background:0 0;place-items:center;display:inline-grid}.site-nav-menu{border-bottom:1px solid var(--line-mid);background:rgb(var(--panel-strong-rgb));box-shadow:0 12px 24px rgb(var(--shadow-rgb) / .5);display:grid;position:absolute;top:100%;left:0;right:0}.site-nav-menu a{border-top:1px solid var(--line-dim);min-height:52px;color:var(--foreground);font-size:var(--text-base);align-items:center;padding:0 clamp(1rem,4vw,1.5rem);font-weight:600;display:flex}.site-nav-menu a[aria-current=page]{color:var(--green);box-shadow:inset 3px 0 0 var(--green)}.account-login{align-items:center;min-height:44px;display:inline-flex}.account-cta,.site-brand-mark{display:none}}.home-shell{overflow:visible}.home-hero,.home-steps,.home-lesson,.home-features,.home-footer{width:var(--content-width);max-width:1280px;margin:0 auto}.home-shell .cta-strip{max-width:1280px}.home-hero{padding:clamp(3rem, 9vw, 8rem) 0 var(--space-section);grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.home-hero h1{color:var(--foreground);margin:0;font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.02}.home-hero h1 span{color:var(--green)}.home-hero .lede{max-width:40rem;color:var(--muted);font-size:var(--text-lg);margin:1.5rem 0 0;line-height:1.65}.home-hero .hero-actions{flex-wrap:wrap;gap:1rem;margin-top:2.25rem}.home-hero-note{color:var(--dim);font-size:var(--text-sm);margin:1rem 0 0}.home-map{border:1px solid var(--line);background:var(--surface-2);box-shadow:var(--glow-shadow);margin:0;padding:1.5rem}.home-map figcaption{color:var(--dim);font-size:var(--text-sm);justify-content:space-between;align-items:baseline;margin-bottom:1.25rem;display:flex}.home-map figcaption b{color:var(--foreground);font-family:var(--font-display);font-size:2.2rem;line-height:1}.home-map ul{gap:.95rem;margin:0;padding:0;list-style:none;display:grid}.home-map li{--level:var(--green);font-size:var(--text-sm);grid-template-columns:8.5rem minmax(0,1fr) 3.5rem;align-items:center;gap:.85rem;display:grid}.home-map li[data-level=shaky]{--level:var(--yellow)}.home-map li[data-level=gap]{--level:var(--red)}.home-map li i{background:var(--track);height:10px}.home-map li em{background:var(--level);height:100%;display:block}.home-map li small{color:var(--level);font-size:var(--text-xs);text-align:right}.home-map p{border-top:1px solid var(--line-dim);color:var(--dim);font-size:var(--text-sm);margin:1.4rem 0 0;padding-top:1rem}.home-map p strong{color:var(--accent-text);margin-left:.4rem}.home-steps{border-top:1px solid var(--line-dim);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.home-steps article{padding:2.25rem clamp(1rem,2.5vw,2rem) 2.5rem 0}.home-steps article+article{border-left:1px solid var(--line-dim);padding-left:clamp(1rem,2.5vw,2rem)}.home-steps b{color:var(--green);font-size:1.6rem}.home-steps h2{color:var(--foreground);font-size:var(--text-xl);margin:.75rem 0 .5rem}.home-steps p,.home-features p,.home-lesson-copy p:not(.eyebrow){color:var(--muted);font-size:var(--text-base);margin:0;line-height:1.65}.home-lesson{padding:var(--space-section) 0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.home-lesson-copy h2{color:var(--foreground);font-size:var(--text-2xl);margin:0 0 1rem;line-height:1.2}.home-lesson-copy .secondary-action{margin-top:1.75rem}.home-lesson-card{padding:clamp(1.25rem,3vw,2rem)}.home-lesson-card header{color:var(--dim);font-size:var(--text-xs);justify-content:space-between;gap:1rem;display:flex}.home-lesson-card h3{color:var(--foreground);font-family:var(--font-display);font-size:var(--text-xl);margin:.6rem 0 1rem}.home-lesson-card code{border:1px solid var(--line-dim);background:var(--code);color:var(--accent-text);padding:.05rem .35rem;font-size:.92em}.home-lesson-idea{border-left:3px solid var(--line);color:var(--muted);margin:0 0 1.25rem;padding-left:1rem;line-height:1.8}.home-trace{background:rgb(var(--code-rgb) / .6);gap:.65rem;margin:0;padding:1rem;display:grid}.home-trace div{grid-template-columns:4.5rem minmax(0,1fr);gap:1rem;display:grid}.home-trace dt{color:var(--green);font-size:var(--text-sm);font-weight:700}.home-trace dd{color:var(--foreground);margin:0;line-height:1.8}.home-lesson-drill{color:var(--foreground);margin:1.25rem 0 0}.home-lesson-drill span{color:var(--green);font-size:var(--text-sm);margin-right:.6rem;font-weight:700}.home-features{padding:var(--space-section) 0 0;border-top:1px solid var(--line-dim);grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem);display:grid}.home-features svg{color:var(--accent-text)}.home-features h2{color:var(--foreground);font-size:var(--text-lg);margin:1rem 0 .5rem}.home-shell .cta-strip{margin-top:var(--space-section);padding-bottom:var(--space-section);grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;align-items:center}.home-footer{border-top:1px solid var(--line-dim);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;padding:2rem 0 2.5rem;display:flex}.home-footer nav{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.home-footer nav a{color:var(--muted);font-size:var(--text-sm)}.home-footer nav a:hover{color:var(--green)}.home-footer p{color:var(--dim);font-size:var(--text-sm);margin:0}@media (max-width:980px){.home-hero,.home-lesson{grid-template-columns:minmax(0,1fr)}.home-features{grid-template-columns:repeat(2,minmax(0,1fr))}.home-shell .cta-strip{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.home-hero{padding-top:2.5rem}.home-hero .hero-actions>a{width:100%}.home-steps{grid-template-columns:minmax(0,1fr)}.home-steps article,.home-steps article+article{border-left:0;padding:1.75rem 0}.home-steps article+article{border-top:1px solid var(--line-dim)}.home-features{grid-template-columns:minmax(0,1fr)}.home-map li{grid-template-columns:8.25rem minmax(0,1fr) 3rem}}@media (prefers-reduced-motion:reduce){.account-cta:hover,.account-cta:focus-visible{transform:none}}.roadmap-next{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.85rem;margin:0 0 1.5rem;display:grid}.roadmap-next-card{appearance:none;border:1px solid var(--line-dim);background:var(--surface-1);color:var(--foreground);font:inherit;text-align:left;cursor:pointer;gap:.4rem;padding:1rem 1.15rem;transition:border-color .12s,background .12s;display:grid}.roadmap-next-card.is-primary{border-color:var(--green);background:var(--green-soft);box-shadow:4px 4px 0 rgb(var(--neon-rgb) / .22)}.roadmap-next-card:hover,.roadmap-next-card:focus-visible{border-color:var(--line);outline:none}.roadmap-next-kicker{color:var(--dim);font-size:var(--text-xs);align-items:center;gap:.4rem;display:inline-flex}.roadmap-next-card strong{font-size:var(--text-lg);line-height:1.3}.roadmap-next-go{color:var(--green);font-size:var(--text-sm);align-items:center;gap:.35rem;font-weight:600;display:inline-flex}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}}@media (max-width:980px){.roadmap-grid:not(.is-practice) .workspace-sidebar:not(.is-open){display:none}.roadmap-grid:not(.is-practice) .workspace-sidebar.is-open{z-index:25;max-height:min(78dvh,680px);padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgb(var(--panel-strong-rgb));box-shadow:0 -18px 40px rgb(var(--shadow-rgb) / .55);animation:.18s ease-out sheet-up;position:fixed;inset:auto 0 0;overflow:auto}.roadmap-grid:not(.is-practice) .sidebar-dismiss{z-index:1;justify-self:end;min-height:44px;display:inline-flex;position:sticky;top:0}}@media (prefers-reduced-motion:reduce){.roadmap-grid:not(.is-practice) .workspace-sidebar.is-open{animation:none}}.skill-prose code.hljs,.skill-prose-inline code.hljs,.skill-constraint-line code.hljs,.skill-example code.hljs{background:rgb(var(--code-rgb) / .7);box-shadow:none;color:var(--foreground);padding:.04em .28em}.skill-prose .hljs-number,.skill-prose-inline .hljs-number,.skill-constraint-line .hljs-number,.skill-example .hljs-number{color:var(--foreground)}.skill-prose .hljs-variable,.skill-prose-inline .hljs-variable,.skill-constraint-line .hljs-variable,.skill-example .hljs-variable{color:var(--accent-text)}.problem-row{border-top-color:var(--line-dim);padding:.85rem 1rem}.problem-row[data-unlocked=false],.problem-row[data-unlocked=false]:hover,.problem-row[data-unlocked=false]:focus-within{opacity:1}.problem-row[data-unlocked=false]>svg{color:var(--dim)}.problem-row[data-unlocked=true]{background:var(--green-soft)}.problem-row h3 a{font-size:var(--text-base)}.problem-row header span:not(.problem-difficulty){color:var(--dim);font-size:var(--text-xs)}.problem-skill-gates{gap:.4rem;margin-top:.5rem}.problem-skill-gates li{border:1px solid var(--line-dim);background:var(--surface-1);padding:.15rem .5rem}.problem-skill-gates a,.problem-skill-gates li{font-size:var(--text-xs)}.problem-skill-gates a:hover,.problem-skill-gates a:focus-visible{color:var(--green);outline:none}.problem-skill-gates li[data-met=true]{border-color:rgb(var(--neon-rgb) / .4)}.problem-open{border:1px solid var(--line-dim);min-height:36px;padding:0 .6rem}.badge-ladder-more{margin-top:.25rem}.badge-ladder-more summary{min-height:40px;color:var(--dim);font-size:var(--text-sm);cursor:pointer;align-items:center;padding:0 .25rem;display:inline-flex}.badge-ladder-more summary:hover,.badge-ladder-more summary:focus-visible{color:var(--green);outline:none}.badge-ladder-more[open] summary{color:var(--muted)}@keyframes skeleton-pulse{50%{opacity:.45}}.page-skeleton{width:var(--content-width);gap:1rem;margin:0 auto;padding:clamp(3rem,7vw,6rem) 0;display:grid}.skeleton-line,.skeleton-row{background:var(--surface-1);border:1px solid var(--line-dim);animation:1.4s ease-in-out infinite skeleton-pulse;display:block}.skeleton-line.is-eyebrow{width:9rem;height:.9rem}.skeleton-line.is-title{width:min(36rem,90%);height:3.2rem}.skeleton-line.is-copy{width:min(44rem,95%);height:1.2rem;margin-bottom:1.5rem}.skeleton-rows{gap:.6rem;display:grid}.skeleton-row{height:3.4rem}@media (prefers-reduced-motion:reduce){.skeleton-line,.skeleton-row{animation:none}}
