.container-doc{max-width:1180px}.doc{--stage-gap:clamp(22px, 2.2vw, 36px);--pane-col:1.3fr;padding-bottom:80px}.doc-main{min-width:0}:root[data-motion=reduce]{scroll-behavior:auto}.doc .prose :is(h2,h3,h4){scroll-margin-top:calc(var(--stick-top,116px) + 12px)}.doc .prose>:is(p,ul,ol,.tldr,.callout){max-width:900px}.lesson-hero{border-bottom:1px solid var(--border);margin-top:28px;position:relative;padding:8px 0 18px!important}.lesson-hero h1{font-size:clamp(34px,4.6vw,46px);line-height:1.08;margin-top:6px!important}.lesson-hero .lede{max-width:62ch;color:var(--muted);text-wrap:pretty;font-size:18px;line-height:1.6}@media (max-width:640px){.lesson-hero{padding:4px 0 16px!important}}.sec-card{--kind:var(--accent);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);scroll-margin-top:calc(var(--stick-top,116px) + 2px);padding:22px 28px 20px;transition:border-color .25s;position:relative}.sec-card[data-kind=visual]{--kind:var(--tone-sd)}.sec-card[data-kind=code]{--kind:var(--accent)}.sec-card[data-kind=practice]{--kind:var(--accent-2)}.prose>.sec-card{margin-top:22px}.sec-card>*+*{margin-top:10px}.sec-card>:last-child,.sec-body>:last-child,.sec-fit>:last-child{margin-bottom:0}@media (max-width:640px){.sec-card{border-radius:18px;padding:16px 16px 14px}}.sec-head{flex-wrap:wrap;align-items:center;gap:10px;min-height:26px;display:flex}.sec-n{font:700 12.5px var(--font-mono);letter-spacing:.02em;color:var(--kind);background:color-mix(in srgb, var(--kind) 11%, transparent);border-radius:999px;padding:2px 10px;transition:background .25s,color .25s}.sec-kind{font:500 13px var(--font-sans);color:var(--muted);align-items:center;gap:5px;display:inline-flex}.sec-kind svg{color:var(--kind)}.sec-tick{font:650 12px var(--font-sans);color:var(--good-ink);background:color-mix(in srgb, var(--good) 12%, transparent);animation:pop-in .35s var(--ease-spring);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:2px 10px 2px 7px;display:inline-flex}.sec-body>*+*{margin-top:1em}.sec-body>h2:first-child{letter-spacing:-.015em;scroll-margin-top:calc(var(--stick-top,116px) + 12px);font-size:clamp(24px,2.8vw,30px);margin:0 0 4px!important}.sec-body>h3:first-child{margin-top:0}.sec-body>:is(p,ul,ol,blockquote):not(.steps){max-width:74ch}.sec-body>ul>li::marker{color:var(--kind)}.sec-body>ol>li::marker{color:var(--kind);font-weight:700}.sec-body>.table-wrap :is(td,th) code{overflow-wrap:anywhere}.sec-fit{min-width:0;container:stage/inline-size}.sec-body{min-width:0}.sec-card .sec-fit>*{margin-top:0;margin-bottom:0}.sec-card .sec-fit>*+*{margin-top:18px}.sec-body+.sec-stage{margin-top:1.4em}.sec-row{flex-direction:column;display:flex}.sec-row>.sec-body{display:contents}.sec-row>.sec-body>:first-child{order:0}.sec-row>.sec-body>:not(:first-child){order:2}.sec-row>.sec-stage{order:1;margin:14px 0 22px}.sec-row>.sec-body>:nth-child(2){margin-top:0}.sec-row+.sec-row{border-top:1px solid var(--border);margin-top:26px;padding-top:24px}.sec-row>.sec-body>h2+:is(p,ul,ol),.sec-body>h2:first-child+:is(p,ul,ol){font-size:1.06em}.sec-more{border-top:1px dashed var(--border);padding-top:4px}.sec-more>summary{cursor:pointer;font:600 14px var(--font-sans);color:var(--kind);border-radius:999px;align-items:center;gap:7px;margin-top:4px;padding:6px 12px 6px 8px;list-style:none;transition:background .15s;display:inline-flex}.sec-more>summary::-webkit-details-marker{display:none}.sec-more>summary:before{content:"";width:7px;height:7px;transition:transform .2s var(--ease-out);border:2px solid;border-width:0 2px 2px 0;transform:rotate(-45deg)}.sec-more[open]>summary:before{transform:rotate(45deg)translate(-2px,-2px)}.sec-more>summary:hover{background:color-mix(in srgb, var(--kind) 9%, transparent)}.sec-more>summary:focus-visible{outline:2px solid var(--kind);outline-offset:2px}.sec-more[open]>summary{margin-bottom:4px}.sec-more-body>*+*{margin-top:1em}.sec-more-body>:is(p,ul,ol,blockquote){max-width:64ch}.sec-more[open] .sec-more-body{animation:more-in .3s var(--ease-out) both}@keyframes more-in{0%{opacity:0;transform:translateY(-4px)}}:root[data-motion=reduce] .sec-more[open] .sec-more-body{animation:none}@media print{.sec-more>summary{display:none}.sec-more{border:0}}.steps[data-compact]{gap:8px}.steps[data-compact] .step:before{margin-top:2px}.steps[data-compact] details.step-body>summary{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:4px 8px 4px 0;list-style:none;display:flex}.steps[data-compact] details.step-body>summary::-webkit-details-marker{display:none}.steps[data-compact] details.step-body>summary h4{margin:0!important}.steps[data-compact] details.step-body>summary:after{content:"+";font:700 16px var(--font-mono);color:var(--kind,var(--accent));margin-left:auto;padding-left:8px}.steps[data-compact] details.step-body[open]>summary:after{content:"–"}.steps[data-compact] details.step-body>summary:hover h4{color:var(--kind,var(--accent))}.steps[data-compact] details.step-body>summary:focus-visible{outline:2px solid var(--kind,var(--accent));outline-offset:2px}.steps[data-compact] .step-more{animation:more-in .3s var(--ease-out) both;padding:4px 0 6px}.steps[data-compact] .step-more>*+*{margin-top:.7em}:root[data-motion=reduce] .steps[data-compact] .step-more{animation:none}@media print{.steps[data-compact] details.step-body>summary:after{display:none}}.sec-card :is(.flow:not(.flow--compact),.widget,.chart,.quiz,.followups,.table-wrap,.callout,.code-block,.code-tabs,.req-grid section){box-shadow:none}.sec-card .flow:not(.flow--compact){padding-left:10px;padding-right:10px}.rail{display:none}@media (min-width:1080px){.doc-cols{grid-template-columns:250px minmax(0,1fr);align-items:start;column-gap:clamp(24px,3vw,48px);margin-top:18px;display:grid}.doc{--stick-top:78px}.doc .reader-bar{display:none}.rail{top:var(--stick-top);max-height:calc(100dvh - var(--stick-top) - 16px);scrollbar-width:thin;flex-direction:column;gap:12px;padding-bottom:8px;display:flex;position:sticky;overflow:auto}.rail .rb-pages{align-self:flex-start}.rail-head{font:600 13px var(--font-sans);color:var(--muted);justify-content:space-between;gap:8px;padding:0 8px;display:flex}.rail-list{border-left:2px solid var(--border);margin:0;padding:0 0 0 2px;list-style:none}.rail-list button{width:100%;color:var(--muted);text-align:left;font:550 13.5px/1.35 var(--font-sans);cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;align-items:flex-start;gap:9px;margin-left:-2px;padding:7px 8px 7px 10px;transition:color .15s,background .15s;display:flex}.rail-list button:hover{color:var(--fg);background:var(--card-2)}.rail-list button[aria-current=step]{color:var(--fg);border-left-color:var(--accent);background:0 0;font-weight:650}.rail-n{width:20px;height:20px;font:700 10.5px var(--font-mono);border:1px solid var(--border-strong);color:var(--muted);border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.rail-n[data-got=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.rail-list button[aria-current=step] .rail-n:not([data-got=true]){border-color:var(--accent);color:var(--accent)}}.reader[data-mode=scroll] .sec-card[data-current]{border-color:color-mix(in srgb, var(--kind) 40%, var(--border))}.sec-card[data-current] .sec-n{background:var(--kind);color:var(--accent-ink)}.sec-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px 16px;padding-top:14px;display:flex;margin-top:22px!important}.got-btn{font:650 14px var(--font-sans);border:1.5px solid var(--border-strong);background:var(--card);color:var(--fg);cursor:pointer;border-radius:999px;align-items:center;gap:9px;padding:6px 16px 6px 7px;transition:border-color .15s,background .2s,transform .15s;display:inline-flex}.got-btn:hover{border-color:var(--accent)}.got-btn:active{transform:scale(.96)}.got-box{border:1.5px solid var(--border-strong);color:#0000;border-radius:50%;place-items:center;width:24px;height:24px;transition:background .2s,border-color .2s,color .2s;display:grid;position:relative}.got-btn:hover .got-box{color:color-mix(in srgb, var(--accent) 55%, transparent);border-color:var(--accent)}.got-btn[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 11%, var(--card));border-color:var(--accent)}.got-btn[aria-pressed=true] .got-box{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:pop-in .45s var(--ease-spring)}.got-btn[aria-pressed=true] .got-box:after{content:"";border:2px solid var(--accent);pointer-events:none;border-radius:50%;animation:.6s ease-out forwards burst;position:absolute;inset:-2px}.sec-next{color:var(--fg);font:600 14px var(--font-sans);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;margin-left:auto;padding:6px 4px;display:inline-flex}.sec-next .muted{font-weight:500}.sec-next svg{transition:transform .2s var(--ease-out);color:var(--accent)}.sec-next:hover svg{transform:translate(3px)}@keyframes pop-in{0%{transform:scale(.55)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes burst{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}.reader-bar{z-index:30;border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:8px;margin:14px 0 0;padding:4px;display:flex;position:sticky;top:64px}.reader-bar.is-celebrating{border-color:var(--good);animation:1.2s ease-out 2 glow}@keyframes glow{50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--good) 22%, transparent), var(--shadow)}}.rb-pages{border:1px solid var(--border);height:36px;color:var(--fg);font:600 13.5px var(--font-sans);cursor:pointer;background:0 0;border-radius:10px;flex:none;align-items:center;gap:7px;padding:0 12px 0 10px;transition:border-color .15s,background .15s;display:inline-flex}.rb-pages:hover{border-color:var(--accent)}.rb-pages svg{color:var(--accent)}.rb-pages-n{font:600 12px var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums}.rb-progress{flex:none;display:grid}.rb-where{flex:auto;min-width:0;position:relative}.rb-current{width:100%;min-height:36px;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:4px 10px 4px 6px;display:flex}.rb-current:hover:not(:disabled){background:var(--card-2)}.rb-current:disabled{opacity:1;cursor:default}.rb-count{font:700 13px var(--font-mono);color:var(--accent);background:color-mix(in srgb, var(--accent) 11%, transparent);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:3px 10px}.rb-of{color:var(--muted);font-weight:600}.rb-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;animation:title-in .35s var(--ease-out);flex:1;font-size:14.5px;font-weight:650;line-height:1.35;overflow:hidden}.rb-chev{color:var(--muted);flex:none;transition:transform .2s}.rb-current[aria-expanded=true] .rb-chev{transform:rotate(180deg)}@keyframes title-in{0%{opacity:0;transform:translateY(6px)}}.rb-menu{border:1px solid var(--border-strong);background:var(--card);width:min(440px,100vw - 40px);max-height:min(70vh,640px);box-shadow:var(--shadow-lg);animation:menu-in .18s var(--ease-out);border-radius:16px;padding:6px;position:absolute;top:calc(100% + 10px);left:0;overflow:auto}.rb-menu-head{font:600 13px var(--font-sans);color:var(--muted);justify-content:space-between;gap:12px;margin:4px 10px 6px;display:flex}.rb-menu ol{margin:0;padding:0;list-style:none}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}.rb-menu button{width:100%;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.rb-menu button:hover,.rb-menu button[aria-current=step]{background:var(--card-2)}.rb-menu button[aria-current=step]{font-weight:650}.rb-menu-extra{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.rb-menu-n{border:1px solid var(--border-strong);width:22px;height:22px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.rb-menu-n[data-got=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.rb-menu button[aria-current=step] .rb-menu-n:not([data-got=true]){border-color:var(--accent);color:var(--accent)}.rb-track{display:none}@media (min-width:1080px){.rb-where{flex:0 auto;max-width:46%}.rb-track{flex:1 1 0;justify-content:flex-end;align-items:center;gap:4px;min-width:120px;height:38px;padding:0 8px;display:flex}.rb-track button{background:var(--border);cursor:pointer;min-width:6px;max-width:44px;height:6px;transition:background .2s, height .25s var(--ease-out), box-shadow .2s;border:0;border-radius:999px;flex:1 1 0;padding:0;position:relative}.rb-track button:after{content:"";position:absolute;inset:-14px -2px}.rb-track button[data-past]{background:color-mix(in srgb, var(--accent) 30%, var(--border))}.rb-track button[data-got]{background:var(--accent)}.rb-track button[data-current]{background:var(--accent);height:12px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.rb-track button:hover{background:color-mix(in srgb, var(--accent) 70%, var(--border))}}.rb-party{color:var(--accent-2);animation:pop-in .5s var(--ease-spring);flex:none}@media (max-width:760px){.rb-pages-label{display:none}.rb-pages{padding:0 10px}}@media (max-width:560px){.rb-pages-n,.rb-progress{display:none}.rb-current{gap:8px;padding-right:4px}}.progress-ring{display:block;overflow:visible}.pr-track{fill:none;stroke:var(--border);stroke-width:3.5px}.pr-fill{fill:none;stroke:var(--accent);stroke-width:3.5px;stroke-linecap:round;transform-origin:50%;transition:stroke-dashoffset .7s var(--ease-out), stroke .3s;transform:rotate(-90deg)}.progress-ring[data-full=true] .pr-fill{stroke:var(--good)}.progress-ring text{font:700 11px var(--font-sans);fill:var(--fg)}.page-drawer{border:0;border-right:1px solid var(--border);background:var(--card);width:min(360px,88vw);height:100dvh;max-height:none;color:var(--fg);box-shadow:var(--shadow-lg);overscroll-behavior:contain;border-radius:0 20px 20px 0;margin:0;padding:0;position:fixed;inset:0 auto 0 0;overflow:auto}.page-drawer:popover-open{flex-direction:column;display:flex}.page-drawer::backdrop{background:#1e140861}.pd-head{z-index:1;background:var(--card);justify-content:space-between;align-items:center;gap:8px;padding:14px 12px 8px 22px;display:flex;position:sticky;top:0}.pd-head h2{font:600 13px var(--font-sans);color:var(--muted);margin:0}.pd-list{gap:2px;margin:0;padding:4px 12px 16px;font-size:14.5px;list-style:none;display:grid}.pd-list a{color:var(--fg);border-radius:10px;align-items:center;gap:12px;padding:8px 10px;line-height:1.35;text-decoration:none;display:flex}.pd-list a:hover{background:var(--card-2)}.pd-list a[aria-current=page]{background:var(--card-2);box-shadow:inset 3px 0 0 var(--accent);font-weight:650}.pd-list .dot-n{border:1px solid var(--border-strong);width:24px;height:24px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.pd-list .dot-n[data-done=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.pd-list a[aria-current=page] .dot-n:not([data-done=true]){border-color:var(--accent);color:var(--accent)}.pd-foot{border-top:1px solid var(--border);background:var(--card);justify-content:space-between;gap:8px;margin-top:auto;padding:12px 16px 16px;display:flex;position:sticky;bottom:0}@media (prefers-reduced-motion:no-preference){:root:not([data-motion=reduce]) .page-drawer{transition:translate .32s var(--ease-out), display .32s allow-discrete, overlay .32s allow-discrete;translate:-105%}:root:not([data-motion=reduce]) .page-drawer:popover-open{translate:0}:root:not([data-motion=reduce]) .page-drawer::backdrop{transition:background .32s, display .32s allow-discrete, overlay .32s allow-discrete}@starting-style{:root:not([data-motion=reduce]) .page-drawer:popover-open{translate:-105%}:root:not([data-motion=reduce]) .page-drawer:popover-open::backdrop{background:#1e140800}}}@media (prefers-reduced-motion:reduce){.reader .sec-card,.reader .sec-card :is(.sec-head,.sec-body,.sec-foot),.rb-title,.rb-menu,.sec-tick,.got-box,.got-box:after,.rb-party,.reader-bar.is-celebrating,.sec-body:before{animation:none!important}.sec-card:before,.reader .sec-stage{transition:none!important}}:root[data-motion=reduce] :is(.reader .sec-card,.reader .sec-card :is(.sec-head,.sec-body,.sec-foot),.rb-title,.rb-menu,.sec-tick,.got-box,.rb-party,.reader-bar.is-celebrating){animation:none!important}:root[data-motion=reduce] .sec-card:before,:root[data-motion=reduce] .reader .sec-stage{transition:none!important}@media print{.sec-card{box-shadow:none;break-inside:auto}.doc-cols{display:block!important}.reader .sec-stage,.reader .sec-stage[hidden]{opacity:1!important;width:auto!important;height:auto!important;margin-top:1.4em!important;display:block!important;position:static!important;overflow:visible!important}.reader .sec-fit{width:auto!important;margin:0!important;transform:none!important}.reader .sec-fit>[data-pane-off]{display:block!important}}.lesson-hero{position:relative}.hero-doodle{opacity:.95;pointer-events:none;position:absolute;top:14px;right:18px}@media (max-width:900px){.hero-doodle{display:none}}@media (min-width:901px){.lesson-hero:has(.hero-doodle)>.lede{max-width:calc(100% - 190px)}.lesson-hero:has(.hero-doodle)>h1{max-width:calc(100% - 190px)}}.saycard{border:1px solid var(--border);box-shadow:inset 4px 0 0 var(--hl);border-radius:var(--radius);background:var(--card);margin:0 0 18px;padding:14px 18px}.saycard-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.saycard-head .eyebrow{margin:0}.saycard-answer{margin:0 0 12px;font-size:18px;line-height:1.6}.saycard-numbers{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.saycard-numbers li{background:var(--card-2);border-radius:10px;gap:1px;margin:0;padding:8px 10px;display:grid}.saycard-numbers b{color:var(--accent);font-size:18px}.saycard-numbers span{color:var(--muted);font-size:12.5px;line-height:1.3}.saycard-cols{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px;display:grid}.saycard h4{color:var(--muted);margin:0 0 4px;font-size:13px;font-weight:600}.saycard ul:not(.saycard-numbers){gap:4px;margin:0;padding-left:18px;font-size:14px;display:grid}.saycard-mention p{background:color-mix(in srgb, var(--hl) 20%, transparent);border-radius:10px;margin:0;padding:10px 14px;font-size:14.5px}@media (max-width:720px){.saycard-cols{grid-template-columns:minmax(0,1fr)}}.doc:has(.saycard) .tldr{display:none}@media print{.saycard{break-inside:avoid}}.saycard-more{margin-top:2px}.saycard-more>summary{cursor:pointer;color:var(--accent);padding:4px 0;font-size:13.5px;font-weight:600;list-style:none}.saycard-more>summary::-webkit-details-marker{display:none}.saycard-more>summary:before{content:"+ "}.saycard-more[open]>summary:before{content:"− "}.saycard-more[open]>summary{margin-bottom:8px}.cardcheck{border:1px solid var(--border);border-radius:var(--radius);background:var(--card-2);gap:10px;margin:18px 0 4px;padding:14px 16px;display:grid}.cardcheck-q{gap:2px;margin:0;font-weight:600;line-height:1.4;display:grid}.cardcheck-q .eyebrow{margin:0}.cardcheck-options{flex-wrap:wrap;gap:8px;display:flex}.cardcheck-opt{border:1px solid var(--border);background:var(--card);color:inherit;font:inherit;cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;display:inline-flex}.cardcheck-opt:not(:disabled):hover{border-color:var(--accent)}.cardcheck-opt:disabled{cursor:default}.cardcheck-opt[data-state=right]{border-color:var(--good);background:color-mix(in srgb, var(--good) 14%, var(--card))}.cardcheck-opt[data-state=wrong]{border-color:var(--critical);background:color-mix(in srgb, var(--critical) 12%, var(--card))}.cardcheck-opt[data-state=idle]{opacity:.55}.cardcheck-why{color:var(--muted);min-height:0;margin:0;font-size:14px;line-height:1.5}.cardcheck-why:empty{display:none}@media print{.cardcheck{display:none}}.ex{max-width:760px;padding-block:28px 48px}.ex h1{margin:2px 0 8px}.ex-steps-preview{gap:4px;margin:14px 0;padding-left:22px;display:grid}.ex-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.ex-dots{flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:flex}.ex-dots li{color:var(--muted);align-items:center;gap:6px;margin:0;padding-right:8px;font-size:13px;display:flex}.ex-dots button{border:1.5px solid var(--border-strong);background:var(--card);width:26px;height:26px;color:var(--fg);font:600 12px var(--font-sans);cursor:pointer;border-radius:50%}.ex-dots li[aria-current=step] button{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.ex-dots li[data-done] button{border-color:var(--good);color:var(--good)}.ex-dots li[aria-current=step] span{color:var(--fg);font-weight:600}.ex-prompt{font-family:var(--font-display);font-variation-settings:"SOFT" 60;margin:0 0 8px;font-size:24px;font-weight:600;line-height:1.3}.ex-timer{font:600 15px var(--font-mono,monospace);margin:0 0 12px}.ex-timer[data-over]{color:var(--warning)}.ex-text{border:1px solid var(--border-strong);background:var(--card);width:100%;color:var(--fg);font:inherit;resize:vertical;border-radius:10px;margin-top:12px;padding:12px 14px;line-height:1.5}.ex-aloud{background:var(--card-2);border:1px dashed var(--border-strong);border-radius:10px;margin:12px 0;padding:14px 16px}.ex-hint{margin-top:10px}.ex-hint p{background:color-mix(in srgb, var(--hl) 20%, transparent);border-radius:10px;margin:8px 0 0;padding:10px 14px}.ex-checklist{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.ex-checklist li{margin:0}.ex-checklist label{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.ex-score{margin:10px 0 18px;font-size:17px}.lesson-hero .meta-row{gap:8px 10px;margin-top:12px}.lesson-hero .meta-row+.meta-row{margin-top:10px}
.home{padding-bottom:24px}.home [data-track=dsa],.next-card[data-track=dsa]{--tone:var(--tone-dsa)}.home [data-track=sd],.next-card[data-track=sd]{--tone:var(--tone-sd)}.home [data-track=build]{--tone:var(--tone-build)}.home [data-track=shorts],.home [data-track=recent],.next-card[data-track=shorts],.next-card[data-track=recent]{--tone:var(--accent-2)}.home h2{text-wrap:balance}.h-head{max-width:620px;margin:0 0 24px}.h-head h2{margin:6px 0 10px;font-size:clamp(28px,3.4vw,36px);line-height:1.12}.h-head p:not(.eyebrow){color:var(--muted);margin:0;font-size:17px;line-height:1.6}.home .eyebrow{align-items:center;gap:6px;margin:0;display:inline-flex}.home>section{margin-top:96px}.home>section.h-hero{margin-top:0}.h-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);align-items:center;gap:56px;padding:64px 0 8px;display:grid}.h-hero-copy h1{letter-spacing:-.025em;text-wrap:balance;margin:14px 0 20px;font-size:clamp(40px,5.2vw,64px);line-height:1.04}.h-mark{white-space:nowrap;background:linear-gradient(transparent 62%, var(--hl-soft) 62%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em;position:relative}.h-lede{color:var(--muted);text-wrap:pretty;max-width:500px;margin:0;font-size:18.5px;line-height:1.65}.h-hero-copy .hero-cta{align-items:center;gap:12px 22px;margin-top:32px}.h-hero-copy .btn{padding:12px 22px;font-size:15px}.h-hero-copy .hero-cta .link{align-items:center;gap:6px;font-size:15px;display:inline-flex}.h-stage{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-2);gap:10px;padding:10px;display:grid;position:relative}.h-pane{border-radius:var(--radius);background:var(--card);min-width:0;padding:12px 14px 10px}.h-pane-label{font:650 13px var(--font-sans);color:var(--tone);align-items:center;gap:6px;margin:0 0 4px;display:flex}.h-pane-label span{font:500 13px var(--font-sans);color:var(--muted);margin-left:auto}.h-pane .flow{margin:0!important}.h-pane>:last-child{margin-bottom:0}@media (max-width:960px){.h-hero{grid-template-columns:minmax(0,1fr);gap:36px;padding-top:36px}.h-stage{max-width:640px}.home>section{margin-top:72px}}@media (max-width:640px){.h-hero-copy h1{font-size:clamp(36px,10.5vw,46px)}.h-lede{font-size:17px}.h-mark{white-space:normal}.h-stage{padding:8px}.h-pane[data-track=sd]{display:none}}.next-up{margin-top:56px}.next-up-title{font-family:var(--font-sans);color:var(--muted);letter-spacing:0;margin:0 0 12px;font-size:14px;font-weight:600}.next-up-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.next-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);grid-template-rows:auto auto auto;gap:4px;height:100%;padding:16px 18px;display:grid!important}.next-card-eyebrow{font:600 13px var(--font-sans);color:var(--tone);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.next-card-title{white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:650;line-height:1.35;overflow:hidden}.next-card-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:14px;display:flex;overflow:hidden}.next-card-meta svg{color:var(--tone);transition:transform .25s var(--ease-out);flex:none;margin-left:auto}.next-card:hover .next-card-meta svg{transform:translate(4px)}@media (max-width:860px){.next-up-list{grid-template-columns:minmax(0,1fr);gap:10px}}.h-tracks{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;scroll-margin-top:80px;display:grid;margin-top:40px!important}.t-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);flex-direction:column;gap:12px;padding:32px 32px 28px;display:flex;position:relative}.t-card .eyebrow{color:var(--tone)}.t-card h2{margin:0;font-size:clamp(26px,2.8vw,32px);line-height:1.12}.t-pitch{color:var(--muted);margin:0 0 6px;font-size:16px;line-height:1.6}.t-card .hero-cta{align-items:center;gap:12px 22px;margin-top:auto;padding-top:8px}.t-route{margin:4px 0 0;padding:0;list-style:none;position:relative}.t-route:before{content:"";background:color-mix(in srgb, var(--tone) 28%, var(--border));border-radius:2px;width:2px;position:absolute;top:18px;bottom:18px;left:11px}.t-stop{color:var(--fg);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;margin:0 -10px 0 0;padding:9px 10px 9px 38px;text-decoration:none;transition:background-color .15s;display:grid;position:relative}.t-stop:before{content:"";background:var(--card);border:3px solid var(--tone);box-sizing:border-box;width:14px;height:14px;transition:transform .25s var(--ease-spring);border-radius:50%;margin-top:-7px;position:absolute;top:50%;left:5px}.t-stop-title{font-size:16px;font-weight:650}.t-stop-note{color:var(--muted);grid-column:1;font-size:14px}.t-stop svg{color:var(--tone);opacity:0;transition:opacity .2s, transform .25s var(--ease-out);grid-area:1/2/span 2;transform:translate(-4px)}.t-stop:hover{background:var(--card-2)}.t-stop:hover:before{transform:scale(1.2)}.t-stop:hover svg,.t-stop:focus-visible svg{opacity:1;transform:none}.meter{gap:6px;display:grid}.meter-bar{background:var(--card-2);border-radius:999px;height:6px;position:relative;overflow:hidden}.meter-bar>span{border-radius:inherit;background:var(--tone);transition:width .5s var(--ease-out);position:absolute;inset:0 auto 0 0}.meter-text{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;overflow:hidden}@media (max-width:1100px){.h-tracks{grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.h-tracks{grid-template-columns:minmax(0,1fr)}.t-card{padding:24px 20px 22px}}.play-row+.play-row{margin-top:28px}.play-row-title{color:var(--muted);align-items:center;gap:8px;margin:0 0 12px;font-size:14px;font-weight:600;display:flex}.play-row-title:before{content:"";background:var(--tone);border-radius:50%;width:8px;height:8px}.play-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.play-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);flex-direction:column;gap:3px;height:100%;padding:8px 8px 14px;display:flex!important}.play-art{background:color-mix(in srgb, var(--tone) 6%, var(--card-2));border-radius:9px;margin-bottom:8px;display:block;overflow:hidden}.play-title{padding:0 6px;font-size:15px;font-weight:650;line-height:1.25}.play-hook{color:var(--muted);padding:0 6px;font-size:13.5px;line-height:1.45}@media (max-width:960px){.play-grid{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:30%;grid-auto-flow:column;margin:0 -20px;padding:2px 20px 10px;scroll-padding:0 20px;overflow-x:auto}.play-grid::-webkit-scrollbar{display:none}.play-grid>li{scroll-snap-align:start}}@media (max-width:640px){.play-grid{grid-auto-columns:62%}}.pa{aspect-ratio:160/96;fill:none;stroke-linecap:round;stroke-linejoin:round;width:100%;height:auto;display:block}.pa *{transform-box:fill-box}.pa-frame{stroke:var(--border-strong);stroke-width:1.5px;fill:var(--card)}.pa-line{stroke:var(--border-strong);stroke-width:1.5px}.pa-dash{stroke:var(--border-strong);stroke-width:1.2px;stroke-dasharray:3 4}.pa-block{fill:var(--card-2);stroke:var(--border-strong);stroke-width:1.5px}.pa-cell{fill:var(--card);stroke:var(--border-strong);stroke-width:1.5px}.pa-hot{fill:var(--tone);stroke:none}.pa-glass{fill:var(--card);opacity:.7}.pa-coin{fill:var(--accent-2);stroke:none}.pa-dot{fill:var(--border-strong);stroke:none}.pa-call{fill:var(--accent-2);animation:1.6s ease-in-out infinite pa-blink}.pa-pin{fill:var(--accent-2);stroke:var(--card);stroke-width:1.5px}.pa-ring{fill:none;stroke:var(--tone);stroke-width:2px;transform-origin:50%;animation:2.4s ease-out infinite pa-ripple}.pa-match{stroke:var(--tone);stroke-width:2px;stroke-dasharray:4 4;animation:1s linear infinite pa-dashflow}.pa-node{fill:var(--card);stroke:var(--tone);stroke-width:2px;animation:pa-light 4s var(--ease-out) infinite;animation-delay:calc(var(--r) * .55s)}.pa-win{fill:color-mix(in srgb, var(--tone) 16%, transparent);stroke:var(--tone);stroke-width:2px;animation:pa-slide 5s var(--ease-out) infinite}.pa-range{fill:color-mix(in srgb, var(--tone) 14%, transparent);stroke:var(--tone);stroke-width:2px;vector-effect:non-scaling-stroke;transform-origin:100%;animation:pa-halve 4.8s var(--ease-out) infinite}.pa-target{fill:color-mix(in srgb, var(--accent-2) 30%, var(--card))}.pa-pair{animation:4.8s ease-in-out infinite pa-pair}.pa-fill{animation:4.8s ease-out infinite pa-fill;animation-delay:calc(var(--d) * .22s)}.pa-corner{stroke:var(--tone);stroke-width:2.2px}.pa-bridge{stroke:var(--tone);stroke-width:2.5px;stroke-dasharray:90;animation:pa-bridge 4.4s var(--ease-out) infinite}.pa-merge{fill:var(--k-gateway);animation:pa-merge 4.4s var(--ease-out) infinite}.pa-ledger{stroke:var(--tone);stroke-width:2.5px;stroke-dasharray:34;animation:4.4s ease-out infinite pa-ledger}.pa-check{stroke:var(--good-ink);stroke-width:3px;stroke-dasharray:24;animation:4.4s ease-out infinite pa-check}.pa-park{animation:pa-park 5s var(--ease-out) infinite}.pa-lift-a{animation:pa-lift-a 6s var(--ease-out) infinite}.pa-lift-b{animation:pa-lift-b 6s var(--ease-out) infinite}.pa-coin:not(.pa-pay-2):not(.pa-right){animation:3.6s ease-in infinite pa-coin}.pa-drop{animation:3.6s cubic-bezier(.5,0,.9,.4) infinite pa-drop}.pa-driver{animation:pa-drive 4s var(--ease-out) infinite}.pa-pay-1{animation:pa-pay 4.4s var(--ease-out) infinite}.pa-pay-2{animation:pa-retry 4.4s var(--ease-out) infinite}.pa-rank-up{animation:pa-up 4.4s var(--ease-out) infinite}.pa-rank-down{animation:pa-down 4.4s var(--ease-out) infinite}.pa-left{animation:pa-left 4.8s var(--ease-out) infinite}.pa-right{animation:pa-right 4.8s var(--ease-out) infinite}.pa-win-r{animation:pa-slide 5s var(--ease-out) infinite}@keyframes pa-blink{50%{opacity:.25}}@keyframes pa-ripple{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(3.2)}}@keyframes pa-dashflow{to{stroke-dashoffset:-16px}}@keyframes pa-light{0%,8%{fill:var(--card)}18%,70%{fill:var(--tone)}85%,to{fill:var(--card)}}@keyframes pa-slide{0%,14%{transform:none}22%,34%{transform:translate(18.5px)}42%,54%{transform:translate(37px)}62%,74%{transform:translate(55.5px)}82%,94%{transform:translate(74px)}to{transform:none}}@keyframes pa-halve{0%,16%{transform:none}26%,42%{transform:scaleX(.5)}52%,68%{transform:translate(-37px)scaleX(.25)}78%,92%{transform:translate(-37px)scaleX(.13)}to{transform:none}}@keyframes pa-pair{0%,60%{fill:var(--card)}68%,92%{fill:color-mix(in srgb, var(--tone) 40%, var(--card))}to{fill:var(--card)}}@keyframes pa-left{0%,14%{transform:none}24%,40%{transform:translate(20.5px)}50%,92%{transform:translate(41px)}to{transform:none}}@keyframes pa-right{0%,30%{transform:none}40%,92%{transform:translate(-41px)}to{transform:none}}@keyframes pa-fill{0%,6%{fill:var(--card)}14%,80%{fill:color-mix(in srgb, var(--tone) 32%, var(--card))}92%,to{fill:var(--card)}}@keyframes pa-bridge{0%,20%{stroke-dashoffset:90px}45%,88%{stroke-dashoffset:0}to{stroke-dashoffset:90px}}@keyframes pa-merge{0%,42%{fill:var(--k-gateway)}55%,88%{fill:var(--tone)}to{fill:var(--k-gateway)}}@keyframes pa-park{0%{opacity:0;transform:translate(-80px,36px)}8%{opacity:1}40%{transform:translateY(36px)}58%,90%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes pa-lift-a{0%,10%{transform:none}30%,45%{transform:translateY(-35px)}65%,80%{transform:translateY(-52.5px)}to{transform:none}}@keyframes pa-lift-b{0%,15%{transform:none}35%,55%{transform:translateY(35px)}75%,90%{transform:translateY(62px)}to{transform:none}}@keyframes pa-coin{0%{opacity:0;transform:translateY(-34px)}15%{opacity:1}35%{opacity:1;transform:none}45%,to{opacity:0;transform:none}}@keyframes pa-drop{0%,45%{transform:none}70%,92%{transform:translateY(51px)}to{transform:none}}@keyframes pa-drive{0%,25%{transform:none}70%,92%{transform:translate(-40px,-24px)}to{transform:none}}@keyframes pa-pay{0%{opacity:0;transform:none}6%{opacity:1}30%{transform:translate(36px)}50%{transform:translate(36px)}72%,to{opacity:0;transform:translate(90px)}}@keyframes pa-retry{0%,30%{opacity:0;transform:none}36%{opacity:1}58%{opacity:1;transform:translate(36px)}70%,to{opacity:0;transform:translate(36px)}}@keyframes pa-ledger{0%,60%{stroke-dashoffset:34px}72%,94%{stroke-dashoffset:0}to{stroke-dashoffset:34px}}@keyframes pa-check{0%,56%{stroke-dashoffset:24px}66%,94%{stroke-dashoffset:0}to{stroke-dashoffset:24px}}@keyframes pa-up{0%,20%{transform:none}45%,85%{transform:translateY(-22px)}to{transform:none}}@keyframes pa-down{0%,20%{transform:none}45%,85%{transform:translateY(22px)}to{transform:none}}.h-shorts{border-radius:var(--radius-lg);background:var(--card-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;padding:44px 44px 14px;display:grid}.h-shorts-copy{padding-bottom:30px}.h-shorts-copy .eyebrow{color:var(--accent-2)}.h-shorts-copy h2{margin:8px 0 12px;font-size:clamp(28px,3.4vw,36px);line-height:1.12}.h-shorts-copy p:not(.eyebrow){color:var(--muted);max-width:420px;margin:0 0 24px;font-size:17px;line-height:1.6}@media (max-width:860px){.h-shorts{grid-template-columns:minmax(0,1fr);gap:8px;padding:28px 20px 0}}.teaser{place-items:center;padding:10px 0 40px;display:grid;position:relative}.teaser-stack{width:min(380px,100%);height:360px;position:relative}.teaser-card{--tone:var(--accent);border-radius:var(--radius-lg);color:var(--fg);background:var(--card);border:1px solid var(--border);border-top:4px solid var(--tone);box-shadow:var(--shadow-lg);animation:deal 12s var(--ease-out) infinite;animation-delay:calc(var(--d) * -4s);flex-direction:column;gap:8px;padding:22px 24px;text-decoration:none;display:flex;position:absolute;inset:0;overflow:hidden}.teaser-card[data-track=System\ design]{--tone:var(--tone-sd)}.teaser-card[data-track=JavaScript]{--tone:var(--accent-2)}.teaser-card[data-track=Building\ blocks]{--tone:var(--k-gateway)}.teaser-card .short-chip{align-self:flex-start}.teaser-card h3{letter-spacing:-.015em;text-wrap:balance;margin:4px 0 2px;font-size:21px;line-height:1.2}.teaser-card ul{color:color-mix(in srgb, var(--fg) 85%, var(--muted));gap:7px;margin:0;padding:0;font-size:14px;line-height:1.45;list-style:none;display:grid}.teaser-card li{-webkit-line-clamp:2;-webkit-box-orient:vertical;padding-left:18px;display:-webkit-box;position:relative;overflow:hidden}.teaser-card li:before{content:"";background:var(--tone);border-radius:50%;width:6px;height:6px;position:absolute;top:.6em;left:3px}.teaser-card code{font:.86em var(--font-mono);background:var(--card-2);border-radius:5px;padding:0 .3em}.teaser-swipe{color:var(--tone);align-items:center;gap:6px;margin-top:auto;font-size:13.5px;font-weight:650;display:inline-flex}.teaser-card:hover{border-color:var(--tone)}@keyframes deal{0%,28%{opacity:1;z-index:3;transform:none}33%{opacity:0;z-index:3;transform:translate(-70%)rotate(-12deg)}34%{opacity:0;z-index:1;transform:translateY(36px)scale(.88)}40%,61%{opacity:.55;z-index:1;transform:translateY(36px)scale(.88)}66%,94%{opacity:.85;z-index:2;transform:translateY(18px)scale(.94)}to{opacity:1;z-index:3;transform:none}}.teaser:hover .teaser-card{animation-play-state:paused}@media (max-width:900px){.teaser-stack{height:330px}}@media (prefers-reduced-motion:reduce){.pa *,.teaser-card{animation:none!important}.teaser-card:nth-child(2){z-index:-1;transform:translateY(18px)scale(.94)}.teaser-card:nth-child(3){z-index:-2;transform:translateY(36px)scale(.88)}.pa-park{opacity:1}}:root[data-motion=reduce] :is(.pa *,.teaser-card){animation:none!important}:root[data-motion=reduce] .teaser-card:nth-child(2){z-index:-1;transform:translateY(18px)scale(.94)}:root[data-motion=reduce] .teaser-card:nth-child(3){z-index:-2;transform:translateY(36px)scale(.88)}.glossary-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin:8px 0 0;display:grid}.glossary-term{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);flex-direction:column;gap:4px;padding:16px 18px;scroll-margin-top:80px;transition:border-color .2s;display:flex}.glossary-term:hover{border-color:var(--border-strong)}.glossary-term:target{border-color:var(--accent);background:color-mix(in srgb, var(--hl) 14%, var(--card))}.glossary-term dt{font-weight:650}.glossary-term dd{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.glossary-links{flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:6px;display:flex;margin-top:auto!important}.glossary-links .link{align-items:center;gap:4px;font-size:13.5px;display:inline-flex}.glossary-short{font:650 12.5px var(--font-sans);color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:999px;align-items:center;gap:4px;padding:3px 10px 3px 8px;text-decoration:none;display:inline-flex}.glossary-short:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}
html:has(.shorts-app){overflow:hidden}body:has(.shorts-app) .site-footer{display:none}.shorts-app{--slide-w:min(620px, calc(100vw - 220px));--gap:28px;grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:calc(100dvh - 58px);display:grid;position:relative;overflow:hidden}@media (max-width:899px){.shorts-app{--slide-w:calc(100vw - 28px);--gap:10px}}.shorts-top{align-items:center;gap:10px;width:100%;max-width:1180px;margin:0 auto;padding:10px 16px 8px;display:flex}.shorts-filters{scrollbar-width:none;flex-wrap:nowrap;flex:1;min-width:0;padding:2px;overflow-x:auto}.shorts-filters::-webkit-scrollbar{display:none}@media (max-width:640px){.shorts-filters{padding-right:24px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}}.shorts-filters .chip{white-space:nowrap;align-items:center;gap:6px;transition:background .2s,color .2s,border-color .2s,transform .15s;display:inline-flex}.shorts-filters .chip:active{transform:scale(.95)}.chip-count{background:var(--accent);min-width:18px;height:18px;color:var(--accent-ink);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-grid}.chip[aria-pressed=true] .chip-count{background:var(--accent-ink);color:var(--accent)}.shorts-tools{flex:none;align-items:center;gap:4px;display:flex}.shorts-count{font:500 13px var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;padding:0 4px}.shorts-count b{color:var(--fg);font-weight:700}.shorts-progress{background:var(--border);border-radius:3px;justify-self:center;width:calc(100% - 32px);max-width:1148px;height:3px;overflow:hidden}.shorts-progress span{transform-origin:0;background:var(--accent);height:100%;transition:transform .45s var(--ease-out);display:block}.shorts-stage{min-width:0;min-height:0;position:relative}.shorts-track{gap:var(--gap);height:100%;padding:14px calc((100% - var(--slide-w)) / 2) 12px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;display:flex;position:relative;overflow:auto hidden}.shorts-track::-webkit-scrollbar{display:none}.short{--tone:var(--accent);flex:0 0 var(--slide-w);scroll-snap-align:center;scroll-snap-stop:always;overscroll-behavior-y:contain;scrollbar-width:thin;border:1px solid var(--border);border-top:4px solid var(--tone);height:100%;box-shadow:var(--shadow-lg);background:var(--card);transition:opacity .35s var(--ease-out), transform .35s var(--ease-out);border-radius:24px;overflow:hidden auto;container-type:size}.short[data-track=System\ design]{--tone:var(--tone-sd)}.short[data-track=JavaScript]{--tone:var(--accent-2)}.short[data-track=Building\ blocks]{--tone:var(--k-gateway)}.short:not([data-active=true]){opacity:.45;cursor:pointer;transform:scale(.94)}.short:focus-visible{outline-offset:-3px}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){:root:not([data-motion=reduce]) .short{transition:none;animation:linear both slide-focus;animation-timeline:view(inline)}:root:not([data-motion=reduce]) .short:not([data-active=true]){opacity:1;transform:none}}}@keyframes slide-focus{0%{opacity:.3;transform:scale(.9)}50%{opacity:1;transform:none}to{opacity:.3;transform:scale(.9)}}.short-hero{flex-direction:column;padding:26px 30px 6px;display:flex}.short-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.short-chip{font:650 13px var(--font-sans);color:var(--tone);background:color-mix(in srgb, var(--tone) 10%, transparent);border-radius:999px;align-items:center;gap:6px;padding:3px 12px;display:inline-flex}.short-state{font:600 12px var(--font-sans);color:var(--muted);align-items:center;gap:4px;margin-left:auto;display:inline-flex}.short-state--got{color:var(--good-ink);background:color-mix(in srgb, var(--good) 12%, transparent);animation:pop-in .4s var(--ease-spring);border-radius:999px;padding:2px 10px 2px 7px}.short-title{letter-spacing:-.02em;text-wrap:balance;margin:16px 0 12px;font-size:clamp(25px,5.6cqw,36px);line-height:1.12}.short-hook{color:var(--muted);text-wrap:pretty;margin:0 0 18px;font-size:16.5px;line-height:1.55}.short-points{counter-reset:pt;gap:9px;margin:0;padding:0;list-style:none;display:grid}.short-points li{counter-increment:pt;border-radius:var(--radius);text-wrap:pretty;background:var(--card-2);padding:12px 16px 12px 48px;font-size:16px;line-height:1.55;position:relative}.short-points li:before{content:counter(pt);width:24px;height:24px;font:700 12px var(--font-sans);color:var(--tone);background:color-mix(in srgb, var(--tone) 14%, transparent);border-radius:50%;place-items:center;display:grid;position:absolute;top:11px;left:12px}.short[data-active=true] .short-points li{animation:point-in .55s var(--ease-out) backwards;animation-delay:calc(80ms + var(--j,0) * 90ms)}@keyframes point-in{0%{opacity:0;transform:translateY(14px)}}.short :is(li,p) strong{color:var(--fg);background:linear-gradient(transparent 56%, var(--hl-soft) 56%);border-radius:2px;padding:0 .1em}.short :not(pre)>code{font:.88em var(--font-mono);background:var(--card-2);overflow-wrap:anywhere;border-radius:6px;padding:.06em .36em}.short-more-hint{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin:auto 0 0;padding-top:14px;font-size:13px;font-weight:600;display:none}.short-more-hint svg{animation:1.4s ease-in-out infinite nudge}@keyframes nudge{50%{transform:translateY(4px)}}.short-more{gap:16px;padding:18px 30px 28px;display:grid}.short-group{border-top:1px solid var(--border);padding-top:16px}.short-group h3{font:650 14px var(--font-sans);color:var(--tone);margin:0 0 8px}.short-group ul{gap:7px;margin:0;padding-left:1.15em;font-size:15.5px;line-height:1.55;display:grid}.short-group li::marker{color:var(--tone)}.short-code{margin:0!important}.short-code pre{font-size:12.5px!important}.short-say{border-radius:0 var(--radius) var(--radius) 0;background:color-mix(in srgb, var(--hl) 16%, var(--card));border-left:4px solid var(--hl);align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.short-say>svg{color:var(--accent-2);flex:none;margin-top:3px}.short-say strong{background:0 0;margin-bottom:2px;font-size:13.5px;display:block}.short-say p{margin:0;font-size:15px;line-height:1.55}.short-source{border-radius:var(--radius);color:var(--accent-ink);background:var(--accent);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-weight:650;text-decoration:none;transition:background-color .2s;display:flex}.short-source small{opacity:.85;font-size:12.5px;font-weight:500;display:block}.short-source:hover{background:color-mix(in srgb, var(--accent) 86%, var(--fg))}.short-source svg{transition:transform .2s var(--ease-out);flex:none}.short-source:hover svg{transform:translate(4px)}.short--end{text-align:center;--tone:var(--good);place-items:center;display:grid}.short--end .short-card{justify-items:center;gap:6px;padding:30px;display:grid}.short--end h2{margin:8px 0 0;font-size:26px}.short--end .hero-cta{justify-content:center}.end-badge{width:64px;height:64px;color:var(--accent-ink);background:var(--accent);box-shadow:0 0 0 10px color-mix(in srgb, var(--accent) 13%, transparent);border-radius:50%;place-items:center;display:grid}.end-badge--muted{color:var(--muted);background:var(--card-2);box-shadow:0 0 0 10px color-mix(in srgb, var(--border) 50%, transparent)}.short--end[data-active=true] .end-badge{animation:pop-in .6s var(--ease-spring)}.shorts-arrow{z-index:4;border:1px solid var(--border);background:var(--card);width:48px;height:48px;color:var(--fg);box-shadow:var(--shadow);cursor:pointer;transition:transform .2s var(--ease-out), border-color .15s, opacity .2s;border-radius:50%;place-items:center;margin-top:-24px;display:grid;position:absolute;top:50%}.shorts-arrow:hover:not(:disabled){border-color:var(--border-strong);transform:scale(1.05)}.shorts-arrow:active:not(:disabled){transform:scale(.94)}.shorts-arrow--prev{left:max(16px, calc(50% - var(--slide-w) / 2 - 84px))}.shorts-arrow--next{right:max(16px, calc(50% - var(--slide-w) / 2 - 84px))}.shorts-arrow:disabled{opacity:0;pointer-events:none}.shorts-dock{padding:6px 12px calc(10px + env(safe-area-inset-bottom));justify-content:center;align-items:center;gap:6px;display:flex}.dock-btn{min-height:42px;color:var(--muted);font:600 14px var(--font-sans);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;text-decoration:none;transition:color .15s,background .15s,border-color .15s,transform .15s;display:inline-flex}.dock-btn:hover{color:var(--fg);background:var(--card-2)}.dock-btn:active{transform:scale(.94)}.dock-btn[aria-pressed=true]{color:var(--accent)}.dock-got{color:var(--fg);background:var(--card);border:1.5px solid var(--border-strong);padding-left:7px}.dock-got:hover{border-color:var(--accent)}.dock-got[aria-pressed=true]{color:var(--fg);background:color-mix(in srgb, var(--accent) 10%, var(--card));border-color:var(--accent)}.dock-got[aria-pressed=true] .got-box{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:pop-in .45s var(--ease-spring)}.dock-got[aria-pressed=true] .got-box:after{content:"";border:2px solid var(--accent);border-radius:50%;animation:.6s ease-out forwards burst;position:absolute;inset:-2px}.dock-empty{align-items:center;min-height:42px;font-size:14px;display:inline-flex}.shorts-toast{z-index:6;color:var(--bg);background:var(--fg);box-shadow:var(--shadow-lg);animation:toast-in .3s var(--ease-out);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;position:absolute;bottom:76px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}.swipe-hint{z-index:5;pointer-events:none;place-items:end center;padding-bottom:36px;display:grid;position:absolute;inset:0}.swipe-hint-card{text-align:center;color:var(--bg);background:color-mix(in srgb, var(--fg) 86%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-lg);animation:toast-in .45s var(--ease-out) .8s backwards;border-radius:22px;justify-items:center;gap:8px;padding:18px 26px;font-size:15px;line-height:1.5;display:grid}.swipe-hint-card p{margin:0}.swipe-hint-card kbd{color:inherit;border-color:color-mix(in srgb, var(--bg) 50%, transparent)}.swipe-hand{animation:1.8s ease-in-out infinite hand-swipe}@keyframes hand-swipe{0%,to{transform:translate(16px)rotate(10deg)}50%{transform:translate(-16px)rotate(-10deg)}}.only-mouse{display:none}@media (hover:hover) and (pointer:fine){.only-touch{display:none}.only-mouse{display:block}}@media (max-width:899px){.shorts-top{padding:8px 12px 6px}.shorts-progress{width:calc(100% - 24px)}.shorts-track{padding-top:10px;padding-bottom:6px}.short{border-radius:24px}.short-hero{min-height:calc(100cqh - 2px);padding:20px 20px 14px}.short-more-hint{display:flex}.short-more{padding:12px 20px 24px}.short-points li{padding:10px 12px 10px 44px;font-size:15.5px}.short-title{font-size:clamp(22px,7.2cqw,30px)}.shorts-arrow{display:none}.dock-btn{border-radius:14px;flex-direction:column;gap:2px;min-height:0;padding:6px 10px;font-size:11.5px}.dock-got{border-radius:999px;flex-direction:row;gap:7px;padding:7px 16px 7px 7px;font-size:14px}.shorts-toast{bottom:84px}}@media (hover:none){.shorts-arrow{display:none}}@media (prefers-reduced-motion:reduce){.short,.short-points li,.short-more-hint svg,.swipe-hand,.swipe-hint-card,.short-state--got,.end-badge,.dock-got .got-box,.dock-got .got-box:after,.shorts-toast{animation:none!important}}:root[data-motion=reduce] :is(.short,.short-points li,.short-more-hint svg,.swipe-hand,.swipe-hint-card,.short-state--got,.end-badge,.dock-got .got-box,.shorts-toast){animation:none!important}
.sec-stage .controls>.control,.sec-stage .seg{max-width:100%}
.code-tabs{container-type:inline-size}.code-tabs__head{border-bottom:1px solid var(--code-border);background:color-mix(in srgb, var(--code-bg) 55%, var(--card));flex-wrap:wrap;align-items:center;gap:6px 10px;padding:6px 8px 6px 10px;display:flex}.code-tabs__head .copy-btn{margin-left:auto;position:static}.code-lang{border:1px solid var(--code-border);background:var(--code-bg);border-radius:9px;gap:2px;max-width:100%;padding:2px;display:inline-flex}.code-lang [role=radio]{min-height:28px;color:var(--muted);font:600 12.5px/1.2 var(--font-sans);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;padding:3px 11px;transition:background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.code-lang [role=radio]:hover{color:var(--fg)}.code-lang [role=radio][aria-checked=true]{background:var(--card);color:var(--fg);box-shadow:inset 0 0 0 1px var(--border-strong), 0 1px 2px #0000000f}.code-lang [role=radio]:focus-visible,.code-tabs [role=tab]:focus-visible,.copy-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}[data-motion=reduce] .code-lang [role=radio]{transition:none}@media (prefers-reduced-motion:reduce){.code-lang [role=radio]{transition:none}}.code-tabs__bar{border-bottom:1px solid var(--code-border);background:color-mix(in srgb, var(--code-bg) 70%, var(--card));align-items:center;gap:6px;display:flex}.code-tabs__bar>[role=tablist]{scrollbar-width:thin;background:0 0;border-bottom:0;flex:auto;min-width:0}.code-tabs__bar>.copy-btn{flex:none;margin-right:8px;position:static}.code-tabs [role=tab]:hover{color:var(--fg)}.code-tabs__panel{scrollbar-width:thin;max-height:min(520px,62dvh);overflow:auto}.code-tabs__panel pre{width:max-content;min-width:100%;overflow:visible}.code-block:not(.code-tabs)>div>pre{scrollbar-width:thin;max-height:min(520px,62dvh);overflow:auto}.code-block:not(.code-tabs):not(.run-code)>figcaption{text-overflow:ellipsis;white-space:nowrap;padding-right:84px;display:block;overflow:hidden}.code-tabs__panel:focus-visible,.code-block pre:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@container (max-width:440px){.code-tabs__head{padding:6px}.code-lang{flex:auto}.code-lang [role=radio]{flex:auto;justify-content:center;padding:3px 8px}.code-tabs [role=tablist]{padding-left:6px}.code-tabs [role=tab]{padding:4px 8px}.code-tabs pre{padding:12px;font-size:12px}}
.site-nav{z-index:40;background:color-mix(in srgb, var(--bg) 94%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-nav[data-menu-open]{background:var(--bg)}.nav-bar{align-items:center;gap:6px;height:58px;display:flex}.nav-bar ul{margin:0;padding:0;list-style:none}.brand{white-space:nowrap;letter-spacing:-.01em;flex:none;align-items:center;gap:10px;margin-right:10px;font-weight:700;text-decoration:none;display:flex}.brand-mark{width:28px;height:28px;transition:transform .35s var(--ease-spring);place-items:center;display:grid}.brand:hover .brand-mark{transform:rotate(-10deg)scale(1.06)}.logo{display:block;overflow:visible}.logo-base{stroke:#fff;stroke-opacity:.34}.logo-comet{stroke:#ffe3a1;stroke-dasharray:16 200;stroke-dashoffset:16px;animation:4s linear infinite logo-comet}.logo-node,.logo-ring{transform-box:fill-box;transform-origin:50%}.logo-node{animation:4s ease-out infinite logo-pop}.logo-ring{opacity:0;animation:4s ease-out infinite logo-ring}.logo-d2{animation-delay:1.4s}.logo-d3{animation-delay:2.8s}@keyframes logo-comet{0%{stroke-dashoffset:16px}70%{stroke-dashoffset:-84px}85%,to{stroke-dashoffset:-100px}}@keyframes logo-pop{0%{transform:scale(1)}5%{transform:scale(1.3)}18%,to{transform:scale(1)}}@keyframes logo-ring{0%{opacity:.9;transform:scale(1)}16%,to{opacity:0;transform:scale(2.1)}}@media (prefers-reduced-motion:reduce){.logo-comet,.logo-ring{display:none}.logo-node{animation:none}.logo-base{stroke-opacity:.9}}:root[data-motion=reduce] :is(.logo-comet,.logo-ring){display:none}:root[data-motion=reduce] .logo-node{animation:none}:root[data-motion=reduce] .logo-base{stroke-opacity:.9}.nav-main{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.nav-doors{align-items:center;gap:2px;display:flex}.nav-door{--tone:var(--tone-dsa);height:36px;color:var(--fg);font:650 14px var(--font-sans);white-space:nowrap;border-radius:10px;align-items:center;padding:0 14px;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}li[data-track=sd]>.nav-door{--tone:var(--tone-sd)}li[data-track=build]>.nav-door{--tone:var(--tone-build)}.nav-door:hover{background:color-mix(in srgb, var(--tone) 10%, transparent);color:var(--tone)}.nav-module{--tone:var(--tone-dsa);align-items:center;gap:2px;min-width:0;display:flex}.nav-module[data-track=sd]{--tone:var(--tone-sd)}.nav-module[data-track=build]{--tone:var(--tone-build)}.nav-all{height:36px;color:var(--muted);font:600 13.5px var(--font-sans);white-space:nowrap;border-radius:10px;flex:none;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.nav-all:hover{color:var(--fg);background:var(--card-2)}.nav-module-name{height:36px;font:700 14px var(--font-sans);white-space:nowrap;color:var(--tone);background:color-mix(in srgb, var(--tone) 11%, transparent);border-radius:10px;flex:none;align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.nav-module-name:hover{background:color-mix(in srgb, var(--tone) 18%, transparent)}.nav-bar-items{align-items:center;gap:1px;min-width:0;display:flex;margin-left:6px!important}.nav-bar-items>li>a,.nav-more>summary{height:36px;color:var(--muted);font:600 14px var(--font-sans);white-space:nowrap;cursor:pointer;border-radius:10px;align-items:center;gap:4px;padding:0 11px;text-decoration:none;list-style:none;transition:color .15s,background-color .15s;display:inline-flex}.nav-more>summary::-webkit-details-marker{display:none}.nav-bar-items>li>a:hover,.nav-more>summary:hover,.nav-more[open]>summary{color:var(--fg);background:var(--card-2)}.nav-bar-items>li>a[aria-current],.nav-more>summary[data-active]{color:var(--tone);background:color-mix(in srgb, var(--tone) 10%, transparent)}.nav-more{position:relative}.nav-more>summary svg{transition:transform .2s var(--ease-out)}.nav-more[open]>summary svg{transform:rotate(180deg)}.nav-more-list{z-index:5;background:var(--bg);border:1px solid var(--border);min-width:300px;box-shadow:var(--shadow-lg);animation:nav-panel-in .18s var(--ease-out);border-radius:14px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0}.nav-more-list a{color:var(--fg);font:600 14px var(--font-sans);border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;display:flex}.nav-more-list a:hover{background:var(--card-2);color:var(--tone)}.nav-more-list a[aria-current]{color:var(--tone);background:color-mix(in srgb, var(--tone) 10%, transparent)}.nav-more-list small{font:400 12.5px var(--font-sans);color:var(--muted);margin-top:1px;display:block}@keyframes nav-panel-in{0%{opacity:0;transform:translateY(-6px)}}.nav-shorts{height:34px;font:650 14px var(--font-sans);color:var(--fg);border:1px solid var(--border-strong);background:0 0;border-radius:10px;flex:none;align-items:center;gap:5px;margin-left:4px;padding:0 13px 0 11px;text-decoration:none;display:inline-flex}.nav-shorts svg{color:var(--accent-2)}.nav-shorts:hover{border-color:var(--fg);background:var(--card)}.nav-shorts[aria-current],.nav-shorts:active{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.nav-shorts[aria-current] svg{color:inherit}.site-nav[data-track] .brand-text,.site-nav[data-track] .nav-shorts span,.site-nav[data-track] .nav-all span{display:none}.site-nav[data-track] .nav-shorts{padding:0 9px}@media (max-width:1180px){.nav-shorts span,.nav-all span,.brand-text{display:none}.nav-shorts{padding:0 9px}}@media (max-width:1000px){.nav-bar-items>li>a,.nav-more>summary{padding:0 8px;font-size:13.5px}.nav-module-name{padding:0 9px}.nav-shorts{margin-left:0}.nav-module{min-width:0}}.nav-tools{flex:none;align-items:center;gap:4px;margin-left:auto;display:flex}.search-btn{border:1px solid var(--border);height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:8px;padding:0 10px 0 12px;font-size:13px;transition:border-color .15s,color .15s;display:inline-flex}.search-btn:hover{border-color:var(--border-strong);color:var(--fg);background:var(--card)}.menu-toggle{display:none!important}@media (max-width:1000px){.search-btn .label{display:none}}@keyframes nav-fade{0%{opacity:0}}.nav-group-title{font:650 12.5px var(--font-sans);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:12px 0 4px;padding:0 8px}.nav-drawer-group ul{margin:0;padding:0;list-style:none}.nav-link{min-height:44px;color:var(--fg);border-radius:9px;align-items:center;gap:9px;padding:6px 8px;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;display:flex}.nav-link:hover{background:var(--card-2)}.nav-link[aria-current=page]{background:color-mix(in srgb, var(--tone,var(--accent)) 10%, transparent);color:var(--tone,var(--accent))}.nav-label{flex:1;min-width:0}.nav-label small{color:var(--muted);margin-top:1px;font-size:12.5px;font-weight:400;display:block}@media (max-width:860px){.nav-main,.nav-desktop-only{display:none!important}.menu-toggle{display:inline-grid!important}.nav-main{flex:1;justify-content:flex-end}.search-btn{justify-content:center;width:36px;padding:0}.search-btn .label,.search-btn kbd{display:none}.site-nav .container.nav-bar{padding-left:16px;padding-right:12px}}@media (max-width:420px){.brand-text{font-size:15px}.brand{gap:8px;margin-right:4px}.nav-shorts{padding:0 11px 0 9px;font-size:13.5px}}@media (max-width:360px){.nav-shorts span{display:none}.nav-shorts{padding:0 9px}}.nav-drawer-scrim{z-index:70;background:#1e14086b;animation:.2s ease-out nav-fade;position:fixed;inset:0}.nav-drawer{z-index:71;background:var(--bg);border-left:1px solid var(--border);width:min(440px,100%);height:100dvh;box-shadow:var(--shadow-lg);animation:nav-drawer-in .3s var(--ease-out);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes nav-drawer-in{0%{opacity:0;transform:translate(40px)}}.nav-drawer-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;height:58px;padding:0 12px 0 16px;display:flex}.nav-drawer-head .icon-btn{width:40px;height:40px}.nav-drawer-body{overscroll-behavior:contain;flex:1;padding:14px 16px 24px;overflow-y:auto}.nav-drawer-search{border:1px solid var(--border-strong);background:var(--card);width:100%;height:46px;color:var(--muted);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:10px;margin-bottom:10px;padding:0 14px;font-size:15px;display:flex}.nav-acc{border-bottom:1px solid var(--border)}.nav-acc-h{font-size:inherit;margin:0}.nav-acc-btn,.nav-acc-link{width:100%;min-height:60px;color:var(--fg);font:700 18px var(--font-sans);letter-spacing:-.01em;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:8px 4px;text-decoration:none;display:flex}.nav-acc-btn>span,.nav-acc-link>span:not(.nav-acc-zap){flex:1}.nav-acc-btn small,.nav-acc-link small{font:400 13px var(--font-sans);color:var(--muted);letter-spacing:0;margin-top:1px;display:block}.nav-acc-btn svg{color:var(--muted);transition:transform .25s var(--ease-out)}.nav-acc-btn[aria-expanded=true] svg{transform:rotate(180deg)}.nav-acc-btn[data-active]{color:var(--tone,var(--accent))}.nav-acc[data-track=sd]{--tone:var(--tone-sd)}.nav-acc[data-track=build]{--tone:var(--tone-build)}.nav-acc[data-track=dsa]{--tone:var(--tone-dsa)}.nav-sketch{display:none!important}@media (min-width:1500px){.nav-sketch{display:inline-flex!important}}.nav-acc-link{border-bottom:1px solid var(--border)}.nav-acc-zap{width:34px;height:34px;color:var(--accent-ink);background:var(--accent);border-radius:10px;flex:none;place-items:center;display:grid}.nav-acc-link[aria-current]{color:var(--accent)}.nav-drawer-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--card-2);flex-wrap:wrap;flex:none;gap:8px;display:flex}.nav-drawer-foot .btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}@media (max-width:380px){@media (prefers-reduced-motion:reduce){.nav-more-list,.nav-drawer,.nav-drawer-scrim{animation:none}.nav-more>summary svg,.nav-acc-btn svg,.brand-mark{transition:none}}:root[data-motion=reduce] :is(.nav-more-list,.nav-drawer,.nav-drawer-scrim){animation:none}:root[data-motion=reduce] :is(.nav-more>summary svg,.nav-acc-btn svg,.brand-mark){transition:none}.cmdk-overlay{z-index:90!important}@media print{.nav-drawer,.nav-drawer-scrim{display:none!important}}@media (min-width:1500px){@media (max-width:640px){.nav-shorts span{display:none}.nav-shorts{padding:0 9px}}@media (max-width:380px){.brand-text{display:none}}a.nav-acc-btn{color:inherit;text-decoration:none}}}
.hub[data-track=dsa]{--tone:var(--tone-dsa)}.hub[data-track=sd]{--tone:var(--tone-sd)}.hub{padding-bottom:24px}.hub .eyebrow{color:var(--tone);margin:0}.hub-cards{margin:18px 0 0;padding:0;list-style:none}.hub-cards>li{min-width:0}.hub-head{padding-bottom:6px}.hub-head .lede{text-wrap:pretty}.hub-facts{flex-wrap:wrap;gap:6px 28px;margin:20px 0 0;padding:0;list-style:none;display:flex}.hub-facts li{color:var(--muted);font-size:14px}.hub-facts b{color:var(--fg);font-variant-numeric:tabular-nums;font-size:15px}.hub-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:44px;padding:52px 0 10px;display:grid}.hub-hero h1{letter-spacing:-.025em;text-wrap:balance;margin:10px 0 16px;font-size:clamp(36px,5vw,56px);line-height:1.05}.hub-hero .lede{color:var(--muted);text-wrap:pretty;max-width:520px;margin:0;font-size:18px}.hub-hero .hero-cta{margin-top:22px}.hub-visual{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-2);min-width:0;padding:10px}.hub-visual .flow{margin:0!important}@media (max-width:960px){.hub-hero{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:30px}}@media (max-width:640px){.hub[data-track=sd] .hub-visual{display:none}}.hub-tabs{margin:14px 0 4px}.hub-tabs ul{scrollbar-width:none;gap:6px;margin:0 -16px;padding:2px 16px 6px;list-style:none;display:flex;overflow-x:auto}.hub-tabs ul::-webkit-scrollbar{display:none}.hub-tabs a{white-space:nowrap;color:var(--muted);background:var(--card-2);border-radius:999px;padding:6px 14px;font-size:13.5px;font-weight:600;text-decoration:none;display:block}.hub-tabs a:hover{color:var(--fg)}.hub-tabs a[aria-current]{color:var(--accent-ink);background:var(--tone);border-color:var(--tone)}@media (min-width:861px){.hub-tabs{display:none}}.hub-jump{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.hub-jump a{color:var(--fg);background:var(--card-2);border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.hub-jump a span{font:650 11.5px var(--font-mono);color:var(--tone)}.hub-jump a:hover{background:color-mix(in srgb, var(--tone) 11%, transparent)}.pattern-group{scroll-margin-top:70px}.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 0;padding:0;list-style:none;display:grid}.entry{grid-template-columns:auto minmax(0,1fr);align-content:start;column-gap:12px;height:100%;display:grid!important}.entry-icon{width:40px;height:40px;color:var(--tone);background:color-mix(in srgb, var(--tone) 11%, transparent);border-radius:10px;grid-row:1/span 2;place-items:center;display:grid}.entry-count{font:600 13px var(--font-sans);color:var(--tone)}.entry-title{letter-spacing:-.01em;margin:0;font-size:19px}.entry p{color:var(--muted);grid-column:1/-1;margin:10px 0 0;font-size:14.5px;line-height:1.5}@media (max-width:960px){.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.entry-grid{grid-template-columns:minmax(0,1fr)}}.hub .next-up{margin-top:30px}.focus-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;display:grid}.focus-blurb{margin:8px 0 0;font-weight:600}.focus ol{color:var(--muted);gap:3px;margin:8px 0 0;padding-left:1.3em;font-size:14.5px;display:grid}.focus a{color:var(--fg);text-decoration:none}.focus a:hover{color:var(--tone);text-decoration:underline}.topic-card,.q-card{flex-direction:column;gap:6px;height:100%;padding:20px 22px 18px;display:flex!important}.tc-top{align-items:center;gap:8px;display:flex}.tc-num{font:700 13px var(--font-mono);color:var(--tone,var(--accent));background:color-mix(in srgb, var(--tone,var(--accent)) 11%, transparent);border-radius:999px;padding:2px 10px}.tc-min{color:var(--muted);align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.tc-done{font:650 12px var(--font-sans);color:var(--good-ink);background:color-mix(in srgb, var(--good) 12%, transparent);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:2px 10px 2px 7px;display:inline-flex}.tc-title{letter-spacing:-.01em;margin:8px 0 2px;font-size:19px;line-height:1.28}.topic-card p,.q-card p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.topic-card .tags,.q-card .tags{flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:10px;display:flex}.tc-go{color:var(--tone,var(--accent));align-items:center;gap:6px;margin-top:auto;padding-top:12px;font-size:14px;font-weight:650;display:inline-flex}.topic-card .tags+.tc-go{margin-top:0}.tc-go svg{transition:transform .25s var(--ease-out)}.card-link:hover .tc-go svg{transform:translate(4px)}.grid-auto>.card-link,.grid-auto>li>.card-link{height:100%}.q-card .row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.badge-lld{color:var(--fg);border-color:var(--border-strong)}.hub-count{color:var(--muted);margin:0;font-size:14px}.hub .filters{border-radius:var(--radius);background:var(--card-2);padding:10px}.hub-empty{grid-column:1/-1}.metro{border-radius:var(--radius-lg)!important}.shorts-strip{border-radius:var(--radius);background:var(--card-2);color:var(--fg);flex-wrap:wrap;align-items:center;gap:14px;margin:20px 0 4px;padding:14px 18px;text-decoration:none;display:flex}.shorts-strip .ss-icon{width:40px;height:40px;color:var(--accent-2);background:color-mix(in srgb, var(--accent-2) 12%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.shorts-strip p{min-width:200px;color:var(--muted);flex:1;margin:0;font-size:14.5px}.shorts-strip p b{color:var(--fg);font-size:15.5px;display:block}.shorts-strip .tc-go{color:var(--accent-2);margin-top:0;padding-top:0}.roadmap{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:18px 0 0;padding:0;list-style:none;display:grid}.roadmap .card{border-radius:var(--radius-lg);flex-direction:column;gap:6px;height:100%;display:flex}.roadmap .icon{background:color-mix(in srgb, var(--accent) 11%, transparent);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.roadmap-title{letter-spacing:-.01em;margin:0;font-size:19px}.roadmap p{color:var(--muted);flex:1;margin:0;font-size:14.5px}.next-problem{flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;display:flex}.next-problem-title{flex-wrap:wrap;align-items:center;gap:8px;margin-right:auto;font-size:17px;font-weight:650;display:inline-flex}.track-progress{margin:0;font-size:14px;color:var(--muted)!important}.track-progress strong{color:var(--fg)}.path-group h3{color:var(--muted);margin:26px 0 10px;font-size:14px;font-weight:600}.path-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.path-list a{color:var(--fg);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:11px 16px;text-decoration:none;transition:border-color .2s;display:flex}.path-list a:hover{border-color:var(--border-strong)}.path-n{border:1px solid var(--border-strong);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:grid}.path-list a:hover .path-n{border-color:var(--accent);color:var(--accent)}.path-title{flex:1;font-size:15px;font-weight:600}.path-meta{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.path-meta .dsa-progress-bar{width:60px}.pattern-card{flex-direction:column;height:100%;display:flex!important}.pattern-card h3{margin:6px 0;font-size:18px}.pattern-card p{color:var(--muted);margin:0;font-size:14.5px}.pattern-card .tags{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.pattern-card-foot{align-items:center;gap:10px;padding-top:12px;font-size:13px;display:flex;margin-top:auto!important}.pattern-card-foot .dsa-progress-bar{flex:1}.tc-partial{color:var(--muted);background:var(--card-2)}.pg-steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0 0 22px;list-style:none;display:grid;padding:0!important}.pg-steps li{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--muted);grid-template-columns:26px 1fr;gap:2px 10px;padding:14px 16px;font-size:14px;display:grid;margin:0!important}.pg-steps li b{color:var(--fg)}.pg-steps li>span:last-child{grid-column:2}.pg-step-num{background:color-mix(in srgb, var(--accent) 11%, transparent);width:26px;height:26px;color:var(--accent);font:700 13px var(--font-sans);border-radius:50%;grid-row:span 2;place-items:center;display:grid}.pg-reqs{color:var(--muted);font-size:13.5px;margin:4px 0 0!important;padding-left:18px!important}.pg-reqs li{margin:0!important}.pg-from{margin-top:8px;font-size:12.5px}.pg-card{flex-direction:column;gap:6px;height:100%;display:flex!important}.pg-cta{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:10px;display:flex}.more-ways{border-top:1px solid var(--border);margin-top:48px}.more-ways>summary{cursor:pointer;font:650 17px var(--font-sans);justify-content:space-between;align-items:center;gap:12px;padding:18px 2px;list-style:none;display:flex}.more-ways>summary::-webkit-details-marker{display:none}.more-ways>summary small{font:400 14px var(--font-sans);color:var(--muted)}.more-ways>summary:after{content:"+";font:400 22px var(--font-sans);color:var(--muted)}.more-ways[open]>summary:after{content:"−"}
.rd{gap:22px;margin-top:12px;display:grid}.rd-track{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:16px 18px 12px}.rd-head{grid-template-columns:auto auto 1fr;align-items:baseline;gap:4px 14px;margin-bottom:10px;display:grid}.rd-head h3{margin:0;font-size:17px}.rd-total{color:var(--muted);font-size:14px}.rd-total b{color:var(--fg);font-size:20px}.rd-meter{background:var(--card-2);border:1px solid var(--border);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.rd-meter>span{background:var(--tone,var(--accent));height:100%;display:block}.rd-count{grid-column:1/-1;font-size:13px}.rd-group{margin-top:10px}.rd-group-name{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:650}.rd-tiles{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.rd-tiles li{margin:0}.rd-tile{text-align:left;border:1px solid var(--border);width:100%;color:var(--fg);font:inherit;cursor:pointer;background:color-mix(in srgb, var(--good) calc(var(--score) * 0.55%), var(--card-2));border-radius:9px;flex-direction:column;gap:1px;padding:7px 9px;display:flex}.rd-tile:hover{border-color:var(--accent)}.rd-tile[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent)}.rd-name{font-size:12.5px;font-weight:600;line-height:1.25}.rd-score{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.rd-detail{justify-items:start;gap:10px;padding:14px 16px;display:grid}.rd-detail-head{justify-content:space-between;align-items:baseline;gap:12px;width:100%;display:flex}.rd-detail h4{margin:0;font-size:16px}.rd-evidence{gap:4px;width:100%;margin:0;padding:0;list-style:none;display:grid}.rd-evidence li{grid-template-columns:20px 1fr auto;align-items:center;gap:8px;margin:0;font-size:14px;display:grid}.rd-check{border:1px solid var(--border-strong);border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.rd-evidence li[data-ok] .rd-check{background:var(--good);border-color:var(--good);color:#fff}.rd-open{font-size:13px}.pl{gap:12px;display:grid}.pl-form{gap:12px;max-width:560px;padding:18px 20px;display:grid}.pl-form h3{margin:0}.pl-form fieldset{border:0;gap:6px;margin:0;padding:0;display:grid}.pl-form legend{margin-bottom:4px;font-weight:600}.pl-check{align-items:center;gap:8px;display:flex}.pl-field{gap:4px;font-size:14px;display:grid}.pl-field select{border:1px solid var(--border-strong);background:var(--card);color:var(--fg);font:inherit;border-radius:8px;max-width:220px;padding:8px 10px}.pl-actions{flex-wrap:wrap;gap:8px;display:flex}.pl-summary{justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.pl-summary p{margin:0}.pl-next{border-color:var(--accent);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;padding:14px 18px;display:grid;color:var(--fg)!important;text-decoration:none!important}.pl-next .eyebrow{grid-column:1;margin:0}.pl-next-title{grid-column:1;font-size:18px;font-weight:650}.pl-next .muted{grid-column:1}.pl-next svg{color:var(--accent);grid-area:1/2/span 3}.pl-warn{border-left:4px solid var(--warning);padding:12px 16px}.pl-warn p{margin:4px 0}.pl-weeks{gap:12px;margin:0;padding:0;list-style:none;display:grid}.pl-week{padding:12px 16px;margin:0!important}.pl-week h4{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 8px;font-size:15px;display:flex}.pl-week h4 .muted{margin-left:auto;font-size:13px;font-weight:500}.pl-now{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);font-size:11px;font-weight:700}.pl-week ul{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.pl-week li{border-bottom:1px solid var(--border);margin:0}.pl-week li:last-child{border-bottom:0}.pl-item{grid-template-columns:96px 1fr auto;align-items:center;gap:10px;padding:8px 2px;display:grid;color:var(--fg)!important;text-decoration:none!important}.pl-item:hover .pl-label{color:var(--accent)}.pl-kind{color:var(--muted);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.pl-min{font-size:13px}.pl-weak{margin:0;font-size:14px}.pl-mock{justify-items:start;gap:10px;padding:14px 18px;display:grid}.pl-mock p{align-items:flex-start;gap:8px;margin:0;display:flex}.pl-history{gap:2px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.pl-history li{margin:0}@media (max-width:560px){.pl-item{grid-template-columns:1fr auto}.pl-kind{grid-column:1/-1}}.mk-types{border:0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0 0 14px;padding:0;display:grid}.mk-type{cursor:pointer;gap:4px;padding:12px 14px;display:grid;position:relative}.mk-type input{opacity:0;cursor:pointer;position:absolute;inset:0}.mk-type[data-on]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--card))}.mk-type:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.mk-setup{justify-items:start;gap:12px;padding:16px 18px;display:grid}.mk-setup-head{flex-wrap:wrap;align-items:flex-end;gap:12px;width:100%;display:flex}.mk-setup-head h3{margin:0 auto 0 0}.mk-items{gap:6px;margin:0;padding-left:22px;list-style:decimal;display:grid}.mk-items li{margin:0}.mk-items .muted{font-size:13.5px;display:block}.mk-rules{align-items:center;gap:6px;margin:0;font-size:13.5px;display:flex}.mk-hist{cursor:default;grid-template-columns:minmax(150px,220px) minmax(0,1fr) auto!important}.mockbar{z-index:40;min-width:220px;max-width:300px;box-shadow:var(--shadow,0 8px 28px #0000002e);gap:8px;padding:10px 12px;display:grid;position:fixed;bottom:16px;right:16px}.mockbar-head{align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.mockbar-time{font:700 18px var(--font-mono,monospace);font-variant-numeric:tabular-nums;margin-left:auto}.mockbar-time[data-low]{color:var(--critical)}.mockbar-items{gap:2px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.mockbar-items li{margin:0}.mockbar-items a[aria-current=page]{font-weight:700}.mockbar-actions{gap:6px;display:flex}@media (max-width:640px){.mockbar{max-width:none;bottom:8px;left:8px;right:8px}}.db-list{gap:12px;margin:0 0 16px;padding:0;list-style:none;display:grid}.db-item{padding:14px 18px;margin:0!important}.db-item h3{align-items:center;gap:8px;margin:0 0 4px;font-size:17px;display:flex}.db-item p{margin:4px 0}.db-sub{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px;font-weight:650;margin-top:10px!important}.db-missed{gap:4px;margin:0;padding-left:18px;font-size:14px;display:grid}.db-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}
.prose>.sec-card{margin-top:var(--space-cards)}.sec-card{padding:28px 32px 24px}.sec-head{margin-bottom:10px}.sec-body>h2:first-child{margin:4px 0 12px!important}@media (max-width:640px){:root{--space-cards:20px}.sec-card{padding:20px 18px 16px}}.sec-body{font-size:17px;line-height:1.72}.sec-body>:is(p,ul,ol,blockquote):not(.steps){max-width:64ch}.sec-body>*+*{margin-top:1.1em}.sec-body li+li{margin-top:.5em}.sec-body>h3{margin-top:1.8em}.sec-body>h3+*{margin-top:.5em}@media (max-width:640px){.sec-body{font-size:16.5px;line-height:1.66}}.sec-foot{padding-top:16px;margin-top:28px!important}.sec-body+.sec-stage{margin-top:1.7em}.sec-card .sec-fit>*+*{margin-top:22px}.doc .prose>:is(p,ul,ol,.tldr,.callout){max-width:760px}.seg button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-height:30px;line-height:1.2;display:inline-flex}.saycard-answer{font-family:var(--font-sans);max-width:62ch;margin-bottom:16px;font-size:17.5px;font-weight:500;line-height:1.62}.saycard-cols{gap:20px}.primer-fold{margin:0 0 var(--space-cards);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:hidden}.primer-fold-head{width:100%;color:var(--fg);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:14px 22px;display:flex}.primer-fold-head:hover{background:var(--card-2)}.primer-fold-head .eyebrow{color:var(--accent-2)}.primer-fold-head b{flex:1;font-size:16.5px}.primer-chev{color:var(--muted);transition:transform .2s var(--ease-out);flex:none}.primer-fold:not([data-open]) .primer-chev{transform:rotate(-90deg)}.primer-fold>.primer{padding:8px 24px 24px}.primer{gap:24px;display:grid}.primer-top{align-items:center;gap:28px;display:flex}.primer-top>*{min-width:0}.primer-idea,.primer-analogy{overflow-wrap:anywhere}.primer-top>div:last-child{gap:12px;min-width:0;display:grid}.primer-idea{font-family:var(--font-display);font-variation-settings:"SOFT" 60;letter-spacing:-.01em;margin:0;font-size:clamp(21px,2.4vw,25px);font-weight:600;line-height:1.32}.primer-analogy{color:var(--muted);border-left:3px solid var(--hl);margin:0;padding-left:16px;font-size:16.5px;line-height:1.6}.primer-flow{min-width:0}.primer-flow>*{margin:0}.primer-remember{counter-reset:rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.primer-remember li{counter-increment:rem;border-radius:var(--radius);background:var(--card-2);margin:0;padding:14px 16px 14px 50px;font-size:15.5px;font-weight:560;line-height:1.45;position:relative}.primer-remember li:before{content:counter(rem);background:color-mix(in srgb, var(--accent) 14%, transparent);width:24px;height:24px;color:var(--accent);font:700 13px var(--font-mono);border-radius:50%;place-items:center;display:grid;position:absolute;top:13px;left:14px}.primer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.primer-cols>div{border-radius:var(--radius);background:var(--card-2);padding:16px 20px}.primer-cols>div:last-child{background:color-mix(in srgb, var(--hl) 14%, var(--card))}.primer-cols h3{color:var(--muted);margin:0 0 6px;font-size:13px;font-weight:600}.primer-cols p{margin:0;line-height:1.58}.primer-say{border-radius:0 var(--radius) var(--radius) 0;border-left:4px solid var(--hl);background:color-mix(in srgb, var(--hl) 14%, var(--card));margin:0;padding:16px 22px;font-size:17px;font-weight:500;line-height:1.58}.primer-say .eyebrow{margin-bottom:4px;display:block}.primer-more{flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;display:flex}.primer-more li{margin:0}.primer-open{margin:0;font-size:14.5px}.primer-open .link,.primer-more .link{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.primer-page{max-width:920px;padding-block:24px 64px}.primer-page h1{margin:10px 0 18px;font-size:clamp(32px,5vw,44px)}.primer-back{align-items:center;gap:6px;font-size:14px;display:inline-flex}.primer-page .prev-next{margin-top:36px}.basics-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none;display:grid}.basics-grid>li{margin:0;display:flex}.basics-card{flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:20px 22px 18px;display:flex}.basics-card h2{margin:6px 0 0;font-size:20px}.basics-card p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.basics-card .tc-go{margin-top:auto;padding-top:8px}@media (max-width:720px){.primer-top{flex-direction:column;align-items:stretch;gap:14px}.primer-remember,.primer-cols{grid-template-columns:minmax(0,1fr)}.primer-fold>.primer{padding:6px 16px 18px}.primer-fold-head{padding:12px 16px}.primer-fold-head .eyebrow{display:none}}@media (prefers-reduced-motion:reduce){.primer-chev{transition:none}}@media print{.primer-fold-head{display:none}}
.story{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);margin-bottom:var(--space-cards,36px);padding:22px 26px 24px}.story-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.story-top .eyebrow{color:var(--accent);margin:0}.story-count{font:600 13px var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;margin:0}.story-bar{background:var(--card-2);border-radius:99px;height:4px;margin:10px 0 18px;position:relative;overflow:hidden}.story-bar-split{background:var(--card);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.story-bar span{background:var(--accent);height:100%;transition:width .4s var(--ease-out);border-radius:99px;display:block}.story-step{animation:st-in .45s var(--ease-out) both;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:28px;display:grid}.story-stage{border-radius:var(--radius-lg);background:var(--card-2);place-items:center;min-width:0;min-height:300px;padding:18px;display:grid;position:relative}.story-stage>*{width:100%;min-width:0;transition:filter .45s var(--ease-out), opacity .45s}.story-stage[data-locked]>*{filter:blur(11px);opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none}.story-stage[data-locked]:after{content:"Take a guess to reveal";font:700 17px var(--font-sans);color:var(--fg);text-align:center;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.story-skip{color:var(--muted);font:600 14px var(--font-sans);cursor:pointer;background:0 0;border:0;justify-self:start;padding:4px 0;text-decoration:underline}.story-stage[data-kind=flow]{padding:8px}.story-words{align-content:center;gap:10px;min-width:0;display:grid}.story-tag{font:650 13px var(--font-sans);background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--accent);border-radius:99px;justify-self:start;margin:0;padding:3px 12px}.story-tag[data-tag=pain],.story-tag[data-tag=catch]{background:color-mix(in srgb, var(--k-cache) 13%, transparent);color:var(--critical-ink)}.story-tag[data-tag=learn]{background:color-mix(in srgb, var(--hl) 28%, transparent);color:var(--accent-2)}.story-tag[data-tag=skip]{background:color-mix(in srgb, var(--accent-2) 14%, transparent);color:var(--warning-ink)}.story-head{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.4vw,36px);line-height:1.12}.story-line{color:color-mix(in srgb, var(--fg) 88%, var(--muted));max-width:34ch;margin:0;font-size:19px;line-height:1.5}.story-say{margin:0;font-size:18.5px;font-weight:500;line-height:1.55}.story-mention{border-radius:0 var(--radius) var(--radius) 0;border-left:3px solid var(--hl);background:color-mix(in srgb, var(--hl) 16%, transparent);margin:4px 0 0;padding:12px 16px;font-size:15px;line-height:1.55}.story-predict{border-radius:var(--radius);background:var(--card-2);gap:10px;margin-top:6px;padding:16px 18px;display:grid}.story-q{margin:0;font-size:16.5px;font-weight:650}.story-opts{gap:8px;display:grid}.story-opts button{text-align:left;border:1.5px solid var(--border);background:var(--card);color:var(--fg);font:550 15.5px/1.35 var(--font-sans);cursor:pointer;border-radius:10px;padding:11px 16px;transition:border-color .15s,background .2s,transform .15s}.story-opts button:not(:disabled):hover{border-color:var(--accent)}.story-opts button:disabled{cursor:default}.story-opts button[data-state=right]{border-color:var(--good);background:color-mix(in srgb, var(--good) 14%, var(--card))}.story-opts button[data-state=wrong]{border-color:var(--critical);background:color-mix(in srgb, var(--critical) 11%, var(--card))}.story-opts button[data-state=dim]{opacity:.55}.story-why{animation:st-in .35s var(--ease-out) both;margin:0;font-size:15.5px;line-height:1.5}.story-nav{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:18px;display:grid}.story-nav .btn{min-height:46px;padding-inline:20px;font-size:16px}.story-dots{flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;display:flex;margin:0!important;padding:0!important}.story-dots li{display:flex;margin:0!important}.story-dots button{border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:50%;width:12px;height:12px;padding:0;position:relative}.story-dots button:after{content:"";position:absolute;inset:-9px}.story-dots li[data-part-start]{border-left:1px solid var(--border-strong);padding-left:12px;margin-left:12px!important}.story-dots button[data-done]{background:color-mix(in srgb, var(--accent) 45%, transparent);border-color:var(--accent)}.story-dots button[aria-current=step]{background:var(--accent);border-color:var(--accent);transform:scale(1.3)}.story-end{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:15px;display:flex}.story-end .link{cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:6px;font-weight:650;display:inline-flex}@keyframes st-in{0%{opacity:0;transform:translateY(10px)}}@keyframes st-pop{0%{opacity:0;transform:scale(.6)}60%{transform:scale(1.08)}to{opacity:1;transform:none}}@keyframes st-slide{0%{opacity:0;transform:translate(-18px)}}@keyframes st-grow{0%{width:0}}.st-ico{color:#fff;background:var(--good-ink);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;display:inline-grid}.st-ico[data-tone=bad]{background:var(--critical)}.st-ico[data-tone=warn]{background:var(--accent-2)}.st-ico[data-tone=info]{background:var(--tone-sd)}.st-doodle{animation:st-pop .55s var(--ease-spring) both;place-items:center;display:grid}.st-doodle svg{max-width:100%;height:auto}.st-sum ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.st-sum li,.st-sum-result{background:var(--card);border:1px solid var(--border);animation:st-slide .4s var(--ease-out) both;animation-delay:calc(var(--i) * .5s + .1s);border-radius:12px;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 14px;font-size:17px;display:flex}.st-sum li b,.st-sum-result b{font:700 19px var(--font-mono);color:var(--accent);white-space:nowrap}.st-sum-result{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--card));margin:12px 0 0;font-weight:650}.st-sum-result b{font-size:24px}.st-stamp,.st-verdict{animation:st-pop .5s var(--ease-spring) both;animation-delay:calc(var(--i,0) * .5s + .2s);border:2px solid;border-radius:99px;align-items:center;gap:10px;margin:14px 0 0;padding:8px 16px 8px 10px;font-size:17px;font-weight:700;display:inline-flex;transform:rotate(-1.5deg)}.st-stamp[data-tone=good],.st-verdict[data-tone=good]{color:var(--good-ink);background:color-mix(in srgb, var(--good) 11%, transparent)}.st-stamp[data-tone=bad],.st-verdict[data-tone=bad]{color:var(--critical-ink);background:color-mix(in srgb, var(--critical) 9%, transparent)}.st-stamp[data-tone=warn],.st-verdict[data-tone=warn]{color:var(--warning-ink);background:color-mix(in srgb, var(--accent-2) 11%, transparent)}.st-stamp[data-tone=info],.st-verdict[data-tone=info]{color:var(--k-client);background:color-mix(in srgb, var(--k-client) 9%, transparent)}.st-bars{gap:16px;margin:0;padding:0;list-style:none;display:grid}.st-bars li{animation:st-in .4s var(--ease-out) both;animation-delay:calc(var(--i) * .25s);grid-template-columns:minmax(70px,110px) minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.st-bar-label{font-size:15.5px;font-weight:600}.st-bar-track{background:var(--card);border:1px solid var(--border);border-radius:9px;height:26px;overflow:hidden}.st-bar-fill{height:100%;width:var(--w);background:var(--k-client);animation:st-grow .9s var(--ease-out) both;animation-delay:calc(var(--i) * .25s + .15s);border-radius:8px;display:block}.st-bar-fill[data-tone=good]{background:var(--good)}.st-bar-fill[data-tone=bad]{background:var(--critical)}.st-bar-fill[data-tone=warn]{background:var(--accent-2)}.st-bars b{font:700 16px var(--font-mono);white-space:nowrap}.st-verdicts{gap:10px;margin:0;padding:0;list-style:none;display:grid}.st-verdicts li{background:var(--card);border:1.5px solid var(--border);animation:st-slide .4s var(--ease-out) both;animation-delay:calc(var(--i) * .4s + .1s);border-radius:14px;grid-template-columns:auto minmax(0,auto) minmax(0,1fr);align-items:center;gap:10px;padding:10px 14px;display:grid}.st-verdicts li[data-tone=good]{border-color:color-mix(in srgb, var(--good) 55%, var(--border))}.st-verdicts li[data-tone=bad]{border-color:color-mix(in srgb, var(--critical) 55%, var(--border))}.st-verdicts li[data-tone=warn]{border-color:color-mix(in srgb, var(--accent-2) 55%, var(--border))}.st-verdicts b{font:700 15px var(--font-mono)}.st-verdicts span:last-child{color:var(--muted);font-size:15px;line-height:1.35}.st-versus{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.st-versus>div{background:var(--card);border:1.5px solid var(--border);animation:st-in .45s var(--ease-out) both;animation-delay:calc(var(--c) * .35s);border-radius:16px;padding:14px}.st-versus>[data-side=left]{border-color:color-mix(in srgb, var(--critical) 45%, var(--border))}.st-versus>[data-side=right]{border-color:color-mix(in srgb, var(--good) 55%, var(--border))}.st-versus h4{letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px;font-size:14px}.st-versus [data-side=left] h4{color:var(--critical-ink)}.st-versus [data-side=right] h4{color:var(--good-ink)}.st-versus ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.st-versus li{animation:st-slide .4s var(--ease-out) both;animation-delay:calc(var(--i) * .35s + .4s);font-size:16px;line-height:1.35}.st-meter{text-align:center;gap:8px;display:grid}.st-meter-label{color:var(--muted);margin:0;font-weight:600}.st-meter-value{font:700 clamp(34px, 5vw, 46px)/1 var(--font-mono);color:var(--accent);margin:0}.st-meter-value span{color:var(--muted);font-size:.4em;font-family:var(--font-sans)}.st-meter input[type=range]{width:100%;height:34px;accent-color:var(--accent);cursor:grab}.st-meter-scale{font:600 12px var(--font-mono);color:var(--muted);justify-content:space-between;margin-top:-6px;display:flex}.st-meter .st-verdict{justify-self:center;margin-top:6px}.st-hint{color:var(--muted);margin:0;font-size:13px}.st-numbers{gap:12px;margin:0;padding:0;list-style:none;display:grid}.st-numbers li{background:var(--card);border:1px solid var(--border);animation:st-pop .5s var(--ease-spring) both;animation-delay:calc(var(--i) * .25s);border-radius:14px;gap:2px;padding:12px 16px;display:grid}.st-numbers b{font:700 26px var(--font-mono);color:var(--accent)}.st-numbers span{color:var(--muted);font-size:15px}.st-trace,.st-classes{min-width:0}.st-trace .algo,.st-classes .flow{box-shadow:none;background:0 0;border:0;margin:0}.st-classes .uml-stage-bar,.st-classes .uml-stage-note{display:none}.story-step--learn{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:stretch;gap:36px;min-height:340px}.story-step--learn .story-words{order:1;align-content:center;gap:14px}.story-step--learn .story-stage{background:color-mix(in srgb, var(--hl) 15%, var(--card));border-left:4px solid var(--hl);border-radius:0 var(--radius-lg) var(--radius-lg) 0;order:2;align-content:center;place-items:center start;gap:8px;min-height:280px;padding:26px 28px}.story-step--learn .story-stage>*{width:auto}.story-step--learn .story-stage .doodle{place-self:center;margin-bottom:4px}.story-eg-label{font:650 13px var(--font-sans);color:var(--accent-2);margin:0}.story-eg-title{font-family:var(--font-display);font-variation-settings:"SOFT" 60;letter-spacing:-.01em;margin:0;font-size:clamp(20px,2.4vw,25px);font-weight:600;line-height:1.2}.story-eg{color:color-mix(in srgb, var(--fg) 90%, var(--muted));margin:0;font-size:17.5px;line-height:1.6}.story-body{color:color-mix(in srgb, var(--fg) 92%, var(--muted));max-width:40ch;margin:0;font-size:19px;line-height:1.65}@media (max-width:860px){.story-step,.story-step--learn{grid-template-columns:minmax(0,1fr);gap:16px}.story-step--learn .story-stage{min-height:0;padding:20px}.story-body{max-width:none;font-size:18px}.story-stage{min-height:220px;padding:14px}.story-line{max-width:none;font-size:18px}}@media (max-width:560px){.story{border-radius:18px;padding:14px 14px 16px}.story-nav{grid-template-columns:auto minmax(0,1fr)}.story-dots{display:none}.story-nav .btn:last-child{justify-content:center}.st-versus{grid-template-columns:minmax(0,1fr)}.st-verdicts li{grid-template-columns:auto minmax(0,1fr)}.st-verdicts span:last-child{grid-column:2}.st-bars li{grid-template-columns:minmax(0,1fr) auto}.st-bar-label{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.story *,.story{transition:none!important;animation:none!important}}:root[data-motion=reduce] .story *{transition:none!important;animation:none!important}@media print{.doc[data-view=story] :is(.doc-cols .prose,.rail,.saycard){display:block!important}.story-panel{display:none}}
.reach{gap:22px;display:grid}.reach-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.reach-title{letter-spacing:.07em;text-transform:uppercase;color:var(--accent-2);align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.reach-meter{font:600 12.5px var(--font-mono);color:var(--muted);align-items:center;gap:8px;display:inline-flex}.reach-dots{gap:4px;display:inline-flex}.reach-dots i{background:var(--border-strong);width:18px;height:6px;transition:background .3s var(--ease-out), transform .3s var(--ease-spring);border-radius:99px}.reach-dots i[data-on]{background:var(--good);transform:scaleY(1.3)}.prose .reach-list,.prose .reach-cards{margin:0;padding:0;list-style:none}.reach-list{gap:8px;display:grid}.prose .reach-list>li,.prose .reach-cards>li{margin:0}.reach-list>li:before{content:none}.reach-signal{text-align:left;cursor:pointer;border-radius:var(--radius);border:1px solid var(--border);background:var(--card-2);width:100%;color:var(--fg);font:inherit;transition:border-color .2s, background .2s, transform .2s var(--ease-out);align-items:flex-start;gap:12px;padding:11px 14px;line-height:1.5;display:flex}.reach-signal:hover{border-color:var(--border-strong);transform:translate(2px)}.reach-signal:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reach-signal[aria-pressed=true]{border-color:color-mix(in srgb, var(--good) 55%, var(--border));background:color-mix(in srgb, var(--good) 11%, var(--card))}.reach-tick{width:24px;height:24px;font:700 12px var(--font-mono);color:var(--muted);border:1.5px solid var(--border-strong);background:var(--card);transition:background .2s, color .2s, border-color .2s, transform .3s var(--ease-spring);border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.reach-signal[aria-pressed=true] .reach-tick{background:var(--good);border-color:var(--good);color:#fff;transform:scale(1.1)}.reach-text code{font-size:.88em}.reach-key{background:linear-gradient(transparent 55%, var(--hl-soft) 55%);color:inherit;padding:0 2px;font-weight:650}.reach-verdict{color:var(--muted);align-items:center;gap:7px;margin:12px 0 0;font-size:13.5px;transition:color .2s;display:flex}.reach-verdict[data-hot]{color:var(--good-ink);font-weight:600}.reach-keys{border-top:1px dashed var(--border-strong);flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0 0;padding-top:12px;display:flex}.reach-keys>span{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-right:4px;font-size:12px;font-weight:700}.reach-keys>b{background:var(--hl-soft);color:var(--fg);border-radius:99px;padding:2px 10px;font-size:12.5px;font-weight:650}.reach-cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.prose .reach-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow);animation:reach-in .45s var(--ease-out) both;animation-delay:calc(var(--i) * 55ms);transition:border-color .2s, transform .2s var(--ease-out), box-shadow .2s;align-content:start;gap:6px;margin:0;padding:13px 15px;display:grid}.reach-card:before{content:none}.reach-card:hover{border-color:var(--accent);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.reach-card>strong{font-size:15px;line-height:1.3}.prose .reach-card>strong,.prose .reach-text>strong{background:0 0;padding:0}.reach-card>p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.reach-card>p small{letter-spacing:.07em;text-transform:uppercase;color:var(--accent-2);margin-bottom:1px;font-size:10.5px;font-weight:700;display:block}.reach-chips{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.reach-chips>span{background:color-mix(in srgb, var(--accent) 10%, var(--card));color:var(--accent);border-radius:99px;padding:2px 9px;font-size:12px;font-weight:600}@keyframes reach-in{0%{opacity:0;transform:translateY(8px)}}:root[data-motion=reduce] :is(.reach-card,.reach-signal,.reach-tick,.reach-dots i){transition:none;animation:none}@media (prefers-reduced-motion:reduce){:is(.reach-card,.reach-signal,.reach-tick,.reach-dots i){transition:none;animation:none}}
:root{--tone-build:#c2410c}[data-theme=dark]{--tone-build:#ff9b6b}:root:has(main[data-track=sd]){--bg:#f2f6f9;--card:#fff;--card-2:#e8eef4;--border:#d8e1ea;--border-strong:#b6c5d3;--fg:#0e1b2a;--muted:#4a5d70;--accent:#0b6e8a;--tone-sd:#0b6e8a;--accent-ink:#fff;--code-bg:#eaf0f5;--code-border:#d8e1ea;--grid:#e2e9f0;--axis:#b6c5d3;--shadow:0 1px 2px #0e1b2a0f;--radius:14px;--radius-lg:20px}[data-theme=dark]:has(main[data-track=sd]){--bg:#0b1520;--card:#111f2d;--card-2:#0e1a26;--border:#223548;--border-strong:#35506a;--fg:#e8f0f7;--muted:#9db3c6;--accent:#5cc8e6;--tone-sd:#5cc8e6;--accent-ink:#052029;--code-bg:#0e1a26;--code-border:#223548;--grid:#1a2a3a;--axis:#35506a;--shadow:0 1px 2px #0006}:root:has(main[data-track=build]){--bg:#fcf8f1;--card:#fffefb;--card-2:#f5eee2;--border:#eadfce;--border-strong:#d6c6ab;--accent:#c2410c;--accent-ink:#fff;--accent-2:#7a4b00;--radius:14px;--radius-lg:20px}[data-theme=dark]:has(main[data-track=build]){--bg:#17120e;--card:#201914;--card-2:#1b1511;--border:#342a21;--border-strong:#4a3c2d;--accent:#ff9b6b;--accent-ink:#2a0f02;--accent-2:#f0b35a}main[data-track=sd],main[data-track=build]{--font-display:var(--font-bricolage), var(--font-sans);--tone:var(--accent)}main[data-track=sd] :is(h1,h2,h3,h4,.tc-title,.entry-title),main[data-track=build] :is(h1,h2,h3,h4){font-family:var(--font-display);font-variation-settings:normal}main[data-track=sd] :is(h1,h2),main[data-track=build] :is(h1,h2){letter-spacing:-.03em;font-weight:700}main[data-track=sd] :is(h3,h4),main[data-track=build] :is(h3,h4){letter-spacing:-.015em;font-weight:650}main[data-track=sd] .page-head h1,main[data-track=sd] .hub-hero h1,main[data-track=build] .page-head h1,main[data-track=build] .hub-hero h1{font-size:clamp(34px,5.2vw,58px);line-height:1.04}main[data-track=sd] .eyebrow,main[data-track=build] .eyebrow{color:var(--tone);letter-spacing:.02em;font-weight:700}main[data-track=sd] .lede,main[data-track=build] .lede{font-size:19px;line-height:1.55}main[data-track=sd] .grad,main[data-track=build] .grad{color:var(--tone)}main[data-track=sd] .section-title,main[data-track=build] .section-title{margin-top:56px;font-size:26px}main[data-track=sd] .card,main[data-track=build] .card{box-shadow:var(--shadow);border-radius:var(--radius)}main[data-track=sd] .card-link,main[data-track=build] .card-link{transition:border-color .2s, box-shadow .25s var(--ease-out), transform .25s var(--ease-out)}main[data-track=sd] .card-link:hover,main[data-track=build] .card-link:hover{box-shadow:0 14px 30px -16px color-mix(in srgb, var(--tone) 45%, transparent);border-color:var(--tone);transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){main[data-track] .card-link:hover{transform:none}}:root[data-motion=reduce] main[data-track] .card-link:hover{transform:none}main[data-track=sd] .hub-hero,main[data-track=build] .hub-hero{position:relative}main[data-track=sd] .hub-hero:before,main[data-track=build] .hub-hero:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(color-mix(in srgb, var(--tone) 22%, transparent) 1px, transparent 1.2px);background-size:22px 22px;position:absolute;inset:0 -20px;-webkit-mask-image:linear-gradient(#000 30%,#0000);mask-image:linear-gradient(#000 30%,#0000)}main[data-track=sd] .hub-visual,main[data-track=build] .hub-visual{background:var(--card);border-radius:var(--radius-lg);box-shadow:var(--shadow)}main[data-track=sd] .btn-primary,main[data-track=build] .btn-primary{border-radius:12px}main[data-track=sd] .q-card .tags{opacity:.85}main[data-track=sd] .tc-title{font-size:20px}main[data-track=sd] .tc-num{font-family:var(--font-display)}.nav-panel[data-track=build] .nav-link:hover,.nav-acc[data-track=build] .nav-link:hover{color:var(--tone-build)}.nav-panel[data-track=build] .nav-link[aria-current=page],.nav-acc[data-track=build] .nav-link[aria-current=page]{background:color-mix(in srgb, var(--tone-build) 10%, transparent);color:var(--tone-build)}.nav-panel[data-track=build] .nav-hub,.nav-acc[data-track=build] .nav-hub,.nav-acc[data-track=build] .nav-acc-btn[data-active]{color:var(--tone-build)}.hub[data-track=sd] .route,.hub[data-track=build] .route{margin-top:34px}.route-title{margin:0 0 14px;font-size:22px}.route-steps{counter-reset:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.route-step{border-radius:var(--radius);background:var(--card);border:1px solid var(--border);height:100%;color:var(--fg);box-shadow:var(--shadow);transition:border-color .2s, transform .25s var(--ease-out);gap:12px;padding:16px 16px 16px 14px;text-decoration:none;display:flex;position:relative}a.route-step:hover{border-color:var(--tone);transform:translateY(-3px)}.route-steps li:not(:last-child) .route-step:after{content:"";background:var(--border-strong);width:14px;height:2px;position:absolute;top:28px;right:-13px}.route-n{width:30px;height:30px;font:700 14px var(--font-display);color:var(--accent-ink);background:var(--tone);border-radius:50%;flex:none;place-items:center;display:grid}.route-body{color:var(--muted);gap:2px;min-width:0;font-size:14px;line-height:1.45;display:grid}.route-body b{color:var(--fg);font:650 16px var(--font-display)}.route-body small{color:var(--tone);font-size:12.5px;font-weight:650}@media (max-width:960px){.route-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.route-steps li .route-step:after{display:none}}@media (max-width:520px){.route-steps{grid-template-columns:minmax(0,1fr)}}.entry-group{margin-top:44px}.group-head{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-bottom:14px;display:flex}.group-head h2,.group-head h3{margin:0;font-size:26px}.group-head h3{font-size:22px}.group-head p{color:var(--muted);margin:0;font-size:15px}.entry-group[data-group=learn]{--tone:var(--tone-sd)}.entry-group[data-group=practice]{--tone:#6d4fd6}.entry-group[data-group=keep]{--tone:#a5500a}[data-theme=dark] .entry-group[data-group=practice]{--tone:#b39cff}[data-theme=dark] .entry-group[data-group=keep]{--tone:#f0b35a}.entry-group .entry{padding:22px}.entry-group .entry-icon{width:46px;height:46px;color:var(--tone);background:color-mix(in srgb, var(--tone) 12%, var(--card));border-radius:14px}.entry-group .entry-count{flex-wrap:wrap;align-self:center;align-items:center;gap:8px;display:flex}.entry-flag{color:var(--accent-ink);background:var(--tone);border-radius:999px;padding:1px 8px;font-size:11.5px;font-style:normal;font-weight:700}.entry-group .entry-title{grid-column:2;font-size:21px}.entry-go{color:var(--tone);grid-column:1/-1;align-items:center;gap:6px;margin-top:14px;font-size:14px;font-weight:650;display:inline-flex}.entry-go svg{transition:transform .25s var(--ease-out)}.card-link:hover .entry-go svg{transform:translate(4px)}.entry-group .entry p{margin-top:10px}.entry-group .entry-grid{margin-top:0}.entry-group[data-group=keep] .entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:640px){.entry-group[data-group=keep] .entry-grid{grid-template-columns:minmax(0,1fr)}}.build-banner{border-radius:var(--radius-lg);color:var(--fg);background:color-mix(in srgb, var(--tone-build) 9%, var(--card));border:1px solid color-mix(in srgb, var(--tone-build) 35%, var(--border));--tone:var(--tone-build);flex-wrap:wrap;align-items:center;gap:16px;margin-top:44px;padding:20px 24px;text-decoration:none;display:flex}.build-banner>span:nth-child(2){flex:1;gap:2px;min-width:220px;display:grid}.build-banner b{font:700 18px var(--font-display)}.build-banner small{color:var(--muted);font-size:14.5px}.build-banner .tc-go{color:var(--tone-build);margin:0;padding:0}.build-banner-icon{width:46px;height:46px;color:var(--accent-ink);background:var(--tone-build);border-radius:14px;place-items:center;display:grid}main[data-track=sd] .lab-head{padding:22px 0 0}main[data-track=sd] .lab-head h1{margin:4px 0 6px;font-size:clamp(28px,4vw,40px)}main[data-track=sd] .lab-head .lede{margin:0;font-size:16px}main[data-track=sd] .lab{height:max(620px,100dvh - 208px)}main[data-track=sd] .lab-modes button{font-weight:650}main[data-track=sd] .hld-node,main[data-track=sd] .hld-node .label{font-family:var(--font-sans);font-style:normal}@keyframes module-enter{0%{transform:translateY(14px)}to{transform:none}}.module-enter{animation:module-enter .45s var(--ease-out) both}@media (prefers-reduced-motion:reduce){.module-enter{animation:none}}:root[data-motion=reduce] .module-enter{animation:none}
