.cx{color:var(--color-ink-primary);padding-block:28px 120px}.cx-grid{grid-template-columns:minmax(0,760px) 280px;justify-content:space-between;align-items:start;gap:56px;display:grid}@media (max-width:1020px){.cx-grid{grid-template-columns:minmax(0,1fr);gap:0}.cx-rail{display:none}}.cx-article{min-width:0}.cx-crumbs ol{font:500 12px var(--font-mono);color:var(--color-ink-muted);flex-wrap:wrap;gap:6px;display:flex}.cx-crumbs li+li:before{content:"›";margin-right:6px}.cx-crumbs a:hover{color:var(--color-ink-primary)}.cx-eyebrow{font:500 12px var(--font-mono);color:var(--color-ink-muted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:20px;display:flex}.cx-tag{border:1px solid color-mix(in oklab, var(--color-brand) 45%, transparent);background:var(--color-brand-subtle);height:20px;color:var(--color-brand-ink);font:500 11px var(--font-mono);border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.cx-tag.is-deep{border-color:var(--color-line-strong);background:var(--color-surface-raised);color:var(--color-ink-secondary)}.cx-h1{letter-spacing:-.03em;text-wrap:balance;color:var(--color-brand-ink);margin-top:10px;font-size:clamp(34px,5vw,54px);font-weight:800;line-height:1.1}.cx-known-tick{border:1.5px solid var(--color-line-strong);color:#0000;border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.cx-known[aria-pressed=true]{border-color:var(--color-signal-ok)}.cx-known[aria-pressed=true] .cx-known-tick{border-color:var(--color-signal-ok);background:var(--color-signal-ok);color:var(--color-surface-page)}.cx-lede{max-width:60ch;color:var(--color-ink-secondary);margin-top:14px;font-size:20px;line-height:1.5}.cx-lede strong{color:var(--color-brand-ink);font-weight:600}.cx-ctas{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.cx-btn{border:1px solid var(--color-line-strong);background:var(--color-surface-page);height:38px;font:600 14px var(--font-sans);color:var(--color-ink-primary);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.cx-btn:hover{border-color:var(--color-ink-muted)}.cx-btn.is-primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-on-brand)}.cx-btn.is-sm{height:32px;padding:0 12px;font-size:13px}.cx a:focus-visible,.cx button:focus-visible,.cx-table:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:6px}.cx-sec{gap:14px;margin-top:64px;scroll-margin-top:80px;display:grid}.cx-sec>*{min-width:0}.cx-kicker,.cx-k{font:500 11px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted)}.cx-sec>.cx-kicker{color:var(--color-brand-ink);font-size:12px;font-weight:600}.cx-sec>h2{letter-spacing:-.02em;text-wrap:balance;margin-top:-6px;font-size:28px;font-weight:700;line-height:1.2}.cx-md,.cx-sec li{max-width:66ch;color:var(--color-ink-secondary);line-height:1.65}.cx-md strong,.cx-sec b{color:var(--color-brand-ink);font-weight:600}.cx-md code,.cx-sec code,.cx-quiz code,.cx-keep code{font-family:var(--font-mono);font-size:.9em}.cx-md>*+*{margin-top:10px}.cx-pull{border-left:4px solid var(--color-brand);background:var(--color-brand-subtle);border-radius:4px 12px 12px 4px;margin:10px 0;padding:20px 24px}.cx-pull-k{font:500 11px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-brand-ink);margin-bottom:6px}.cx-pull .cx-pull-t,.cx-pull .cx-pull-t p{letter-spacing:-.01em;max-width:40ch;color:var(--color-ink-primary);text-wrap:balance;margin:0;font-size:22px;font-weight:700;line-height:1.35}.cx-pull .cx-pull-t strong{color:var(--color-brand-ink);font-weight:700}@media (max-width:640px){.cx-pull{padding:16px 18px}.cx-pull .cx-pull-t,.cx-pull .cx-pull-t p{font-size:19px}}.cx-inline,.cx-inline>p{display:inline}.cx-note{color:var(--color-ink-muted);font-size:13px}.cx-demo{border:1px solid var(--color-line-hairline);background:var(--color-surface-canvas);border-radius:14px;margin:6px 0 0;overflow:hidden}.cx-demo-top{border-bottom:1px solid var(--color-line-hairline);background:var(--color-surface-raised);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:10px 14px;display:flex}.cx-demo-label{font:500 12px var(--font-mono);color:var(--color-ink-muted)}.cx-demo-ctl{gap:6px;display:flex}.cx-demo-body{padding:16px}.cx-demo-read{border-top:1px solid var(--color-line-hairline);background:var(--color-surface-raised);color:var(--color-ink-secondary);flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding:12px 14px;font-size:14px;display:flex}.cx-big{font:700 26px var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--color-ink-primary)}.cx-big.is-bad{color:var(--color-signal-critical)}.cx-big.is-ok{color:var(--color-signal-ok)}.cx-servers{gap:8px;display:grid}.cx-server{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:8px;display:grid}.cx-server-name{font:700 12px var(--font-mono);padding-top:4px}.cx-keys{flex-wrap:wrap;gap:4px;min-height:26px;display:flex}.cx-key{font:500 11px var(--font-mono);border:1px solid var(--color-line-strong);background:var(--color-surface-page);color:var(--color-ink-secondary);border-radius:5px;padding:3px 6px;transition:background .3s,border-color .3s}.cx-key[data-moved=true]{background:color-mix(in oklab, var(--color-signal-critical) 14%, transparent);border-color:color-mix(in oklab, var(--color-signal-critical) 55%, transparent);color:var(--color-ink-primary)}.cx-ring-wrap{grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:center;gap:20px;display:grid}@media (max-width:640px){.cx-ring-wrap{grid-template-columns:1fr}}.cx-ring{width:100%;max-width:320px;height:auto;margin:0 auto;display:block}.cx-ring-track{fill:none;stroke:var(--color-line-strong);stroke-width:2px}.cx-ring-key{stroke:var(--color-surface-canvas);stroke-width:1.5px}.cx-ring-key[data-moved=true]{stroke:var(--color-signal-critical);stroke-width:2.5px}.cx-ring-server{stroke:var(--color-surface-canvas);stroke-width:2.5px}.cx-ring-label{font:700 11px var(--font-mono);fill:var(--color-ink-primary)}.cx-legend{color:var(--color-ink-secondary);gap:6px;font-size:13px;display:grid}.cx-legend li{align-items:center;gap:8px;display:flex}.cx-sw{border-radius:50%;flex:none;width:10px;height:10px}.cx-compare{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.cx-compare>div{border:1px solid var(--color-line-hairline);background:var(--color-surface-page);border-radius:10px;padding:10px 12px}.cx-bars{gap:8px;display:grid}.cx-bar{font:700 12px var(--font-mono);grid-template-columns:36px minmax(0,1fr) 52px;align-items:center;gap:10px;display:grid}.cx-bar-track{background:var(--color-surface-sunken);border-radius:99px;height:12px;position:relative;overflow:hidden}.cx-bar-fill{border-radius:99px;transition:width .35s;position:absolute;inset:0 auto 0 0}.cx-bar-fair{background:var(--color-ink-primary);width:2px;position:absolute;top:-3px;bottom:-3px;left:50%}.cx-bar-v{text-align:right;font-variant-numeric:tabular-nums;color:var(--color-ink-secondary);font-weight:500}.cx-sec ol.cx-steps{counter-reset:s;gap:10px;padding:0;list-style:none;display:grid}.cx-steps li{counter-increment:s;padding-left:40px;position:relative}.cx-steps li:before{content:counter(s);width:26px;height:26px;font:600 12px var(--font-mono);color:var(--color-brand-ink);background:var(--color-brand-subtle);border-radius:50%;place-items:center;display:grid;position:absolute;top:1px;left:0}.cx-table{border:1px solid var(--color-line-hairline);border-radius:12px;overflow-x:auto}.cx-table table{border-collapse:collapse;width:100%;font-size:14px}.cx-table thead th{text-align:left;font:500 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);background:var(--color-surface-sunken);border-bottom:1px solid var(--color-line-hairline);padding:10px 14px}.cx-table tbody th{text-align:left;color:var(--color-ink-primary);font-weight:600}.cx-table tbody th,.cx-table td{border-bottom:1px solid var(--color-line-hairline);vertical-align:top;color:var(--color-ink-secondary);padding:10px 14px}.cx-table tbody tr:last-child>*{border-bottom:0}.cx-table .cx-md{color:inherit;line-height:inherit}.cx-system{border:1px solid var(--color-line-hairline);background:var(--color-surface-raised);border-radius:14px;gap:8px;padding:16px;display:grid}.cx-system h3{font-size:17px;font-weight:600}.cx-system-btns{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.cx-quiz{gap:14px;display:grid}.cx-q{border:1px solid var(--color-line-hairline);background:var(--color-surface-raised);border-radius:12px;min-width:0;padding:14px 16px}.cx-q-t{float:left;width:100%;color:var(--color-ink-primary);margin-bottom:4px;padding:0;font-weight:600;line-height:1.4}.cx-q-t+*{clear:both}.cx-opts{gap:6px;margin-top:10px;display:grid}.cx-opt{text-align:left;border:1px solid var(--color-line-strong);background:var(--color-surface-page);color:var(--color-ink-secondary);border-radius:8px;padding:8px 12px;font-size:14px}.cx-opt:hover:not(:disabled){border-color:var(--color-ink-muted);color:var(--color-ink-primary)}.cx-opt:disabled{cursor:default}.cx-opt[data-state=right]{border-color:var(--color-signal-ok);background:color-mix(in oklab, var(--color-signal-ok) 10%, transparent);color:var(--color-ink-primary)}.cx-opt[data-state=wrong]{border-color:var(--color-signal-critical);background:color-mix(in oklab, var(--color-signal-critical) 8%, transparent)}.cx-why{color:var(--color-ink-secondary);margin-top:8px;font-size:14px}.cx-score{border:1px solid var(--color-line-hairline);color:var(--color-ink-secondary);border-radius:12px;padding:12px 16px;font-size:14px}.cx-sec ul.cx-keep,.sbs-sec ul.cx-keep{gap:10px;padding:0;list-style:none;display:grid}.cx-keep li{border-left:3px solid var(--color-brand);background:var(--color-surface-raised);color:var(--color-ink-primary);border-radius:0 10px 10px 0;padding:12px 14px}.cx-read-marker{height:1px}.cx-next{grid-template-columns:1fr 1fr;gap:12px;margin-top:40px;display:grid}@media (max-width:640px){.cx-next{grid-template-columns:1fr}}.cx-nx{border:1px solid var(--color-line-hairline);background:var(--color-surface-raised);border-radius:12px;gap:4px;padding:14px;display:grid}.cx-nx.is-next{text-align:right}.cx-nx:hover{border-color:var(--color-line-strong)}.cx-nx span{font:500 11px var(--font-mono);color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.06em}.cx-nx b{color:var(--color-ink-primary);font-size:15px}.cx-plain{margin-top:32px}.cx-rail{gap:18px;padding-top:8px;display:grid;position:sticky;top:76px}.cx-path{border:1px solid var(--color-line-hairline);background:var(--color-surface-raised);border-radius:14px;padding:14px}.cx-path-t{font:500 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);justify-content:space-between;gap:8px;display:flex}.cx-path ol{gap:2px;margin-top:10px;font-size:13px;display:grid}.cx-path li{color:var(--color-ink-secondary);align-items:center;gap:8px;padding:3px 0;display:flex}.cx-path li a:hover{color:var(--color-ink-primary)}.cx-dot{border:1.5px solid var(--color-line-strong);border-radius:50%;flex:none;place-items:center;width:16px;height:16px;font-size:10px;line-height:1;display:grid}.cx-path li[data-status=read] .cx-dot,.cx-path li[data-status=known] .cx-dot{background:var(--color-signal-ok);border-color:var(--color-signal-ok);color:var(--color-surface-page)}.cx-path li[data-now=true]{color:var(--color-ink-primary);font-weight:600}.cx-path li[data-now=true] .cx-dot{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-subtle)}.cx-toc .cx-k{margin-bottom:8px}.cx-toc ol{border-left:1px solid var(--color-line-hairline);gap:2px;font-size:13px;display:grid}.cx-toc a{color:var(--color-ink-secondary);border-left:2px solid #0000;margin-left:-1px;padding:4px 12px;display:block}.cx-toc a:hover{color:var(--color-ink-primary)}.cx-toc a[aria-current]{color:var(--color-ink-primary);border-left-color:var(--color-brand)}@media (prefers-reduced-motion:reduce){.cx-key,.cx-bar-fill{transition:none}}.cx-fig{border:1px solid var(--color-line-hairline);background:var(--color-surface-canvas);border-radius:14px;margin:6px 0 0;overflow:hidden}.cx-fig-body{justify-items:center;padding:18px 16px;display:grid;overflow-x:auto}.cx-fig-body>*{min-width:0;max-width:100%}.cx-fig figcaption{border-top:1px solid var(--color-line-hairline);background:var(--color-surface-raised);color:var(--color-ink-secondary);padding:10px 14px;font-size:14px}.cx-fig{--fg-tone:var(--color-line-strong)}.fg-svg{max-width:100%;height:auto;overflow:visible}.fg-svg.is-tall{display:none}@media (max-width:640px){.fg-svg.is-wide{display:none}.fg-svg.is-tall{display:block}}.fg-box rect,.fg-box path{fill:var(--color-surface-raised);stroke:var(--fg-tone);stroke-width:1.5px}.fg-box[class*=is-] rect,.fg-box[class*=is-] path{fill:color-mix(in oklab, var(--fg-tone) 12%, var(--color-surface-raised))}.fg-box.is-muted rect,.fg-box.is-muted path{stroke-dasharray:4 3;fill:var(--color-surface-canvas)}.fg-box .fg-rim{fill:none;stroke:var(--fg-tone);stroke-width:1.2px}.fg-dot circle{fill:var(--color-ink-primary)}.fg-dot .fg-ring{fill:none;stroke:var(--color-ink-primary);stroke-width:1.5px}.fg-t{font:600 13px var(--font-sans);fill:var(--color-ink-primary)}.fg-sub{font:500 11px var(--font-mono);fill:var(--color-ink-secondary)}.fg-arrow{--fg-tone:var(--color-ink-muted)}.fg-arrow polyline{fill:none;stroke:var(--fg-tone);stroke-width:1.5px;stroke-linejoin:round}.fg-arrow polygon{fill:var(--fg-tone)}.fg-arrow.is-dash polyline{stroke-dasharray:5 4}.fg-label{font:500 12px var(--font-sans);fill:var(--color-ink-secondary);paint-order:stroke;stroke:var(--color-surface-canvas);stroke-width:5px;stroke-linejoin:round}.fg-label.is-good,.fg-label.is-bad,.fg-label.is-focus{fill:var(--color-ink-primary)}.fg-seq{--lanes:2;grid-template-columns:repeat(calc(var(--lanes) * 2), minmax(0, 1fr));row-gap:6px;width:100%;max-width:640px;display:grid}.fg-lane-h{grid-row:1;justify-content:center;padding-bottom:6px;display:flex}.fg-lane-h span{border:1.5px solid var(--color-line-strong);background:var(--color-surface-raised);font:600 13px var(--font-sans);color:var(--color-ink-primary);text-align:center;border-radius:8px;padding:6px 10px}.fg-life{pointer-events:none;position:relative}.fg-life:before{content:"";border-left:1.5px dashed var(--color-line-strong);position:absolute;top:0;bottom:0;left:50%}.fg-msg,.fg-self{z-index:1;position:relative}.fg-msg{--fg-tone:var(--color-ink-muted);align-content:end;min-height:34px;padding-bottom:2px;display:grid}.fg-msg span{text-align:center;color:var(--color-ink-secondary);padding:0 6px 3px;font-size:13px;line-height:1.3}.fg-msg[class*=is-]:not(.is-back):not(.is-left) span,.fg-msg.is-good span,.fg-msg.is-bad span,.fg-msg.is-focus span{color:var(--color-ink-primary)}.fg-msg i{border-top:1.5px solid var(--fg-tone);height:0;display:block;position:relative}.fg-msg.is-back i{border-top-style:dashed}.fg-msg i:after{content:"";border:5px solid #0000;border-left:7px solid var(--fg-tone);border-right:0;position:absolute;top:-5.5px;right:-1px}.fg-msg.is-left i:after{border-left:0;border-right:7px solid var(--fg-tone);left:-1px;right:auto}.fg-self{justify-content:center;align-items:center;min-height:30px;display:flex}.fg-self span{overflow-wrap:anywhere;border:1px solid color-mix(in oklab, var(--fg-tone) 60%, transparent);background:color-mix(in oklab, var(--fg-tone) 10%, var(--color-surface-raised));width:max-content;max-width:min(180px,100%);font:500 12px var(--font-mono);color:var(--color-ink-primary);text-align:center;border-radius:6px;flex:none;padding:3px 8px}.fg-self:not([class*=is-]) span{--fg-tone:var(--color-line-strong)}.fg-plot{width:100%}.fg-plot svg{max-width:100%;height:auto;display:block;overflow:visible}.fg-grid{stroke:var(--color-line-hairline)}.fg-tick{font:500 11px var(--font-mono);fill:var(--color-ink-muted)}.fg-axis{font:500 12px var(--font-sans);fill:var(--color-ink-secondary)}.fg-line{fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;stroke:var(--fg-line)}.fg-line.s1,.fg-key.s1{--fg-line:var(--demo-s1)}.fg-line.s2,.fg-key.s2{--fg-line:var(--demo-s4)}.fg-line.s3,.fg-key.s3{--fg-line:var(--demo-s3)}.fg-line.s4,.fg-key.s4{--fg-line:var(--demo-s2)}.fg-line[class*=is-],.fg-key[class*=is-]{--fg-line:var(--fg-tone)}.fg-mark line{stroke:var(--color-ink-muted);stroke-dasharray:4 4}.fg-mark text{font:500 11px var(--font-mono);fill:var(--color-ink-secondary)}.fg-legend{color:var(--color-ink-secondary);flex-wrap:wrap;gap:4px 16px;margin:0 0 8px;padding:0;font-size:13px;list-style:none;display:flex}.fg-key{align-items:center;gap:6px;display:inline-flex}.fg-key:before{content:"";background:var(--fg-line);border-radius:2px;width:14px;height:3px}.fg-bars{gap:8px;width:100%;max-width:640px;margin:0;display:grid}.fg-bar{--fg-tone:var(--demo-s1);grid-template-columns:minmax(80px,28%) 1fr;align-items:center;gap:10px;display:grid}.fg-bar dt{color:var(--color-ink-primary);text-align:right;font-size:13px}.fg-bar dd{flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0;margin:0;display:flex}.fg-bar-fill{background:var(--fg-tone);border-radius:4px;flex:none;height:14px}.fg-bar-v{font:500 12px var(--font-mono);color:var(--color-ink-secondary);white-space:nowrap}.cx-fig .is-focus{--fg-tone:var(--demo-s1)}.cx-fig .is-good{--fg-tone:var(--color-signal-ok)}.cx-fig .is-bad{--fg-tone:var(--color-signal-critical)}.cx-fig .is-muted{--fg-tone:var(--color-ink-muted)}.cx-fig .fg-bar.is-muted{--fg-tone:var(--color-line-strong)}.cx-langs{z-index:5;border:1px solid var(--color-line-hairline);background:color-mix(in oklab, var(--color-surface-canvas) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 18px -12px color-mix(in oklab, var(--color-ink-primary) 45%, transparent);border-radius:10px;justify-self:end;padding:3px;position:sticky;top:72px}.cx-code4{border:1px solid var(--color-line-hairline);background:var(--color-surface-raised);border-radius:12px;min-width:0;overflow:hidden}.cx-code4-hd{border-bottom:1px solid var(--color-line-hairline);color:var(--color-ink-muted);justify-content:space-between;gap:12px;padding:7px 12px;font-size:12px;font-weight:600;display:flex}.cx-code4-hd span:last-child{font-family:var(--font-mono);font-weight:500}.cx-code4-body{padding:12px 0;font-size:13.5px;line-height:1.6;overflow-x:auto}.cx-code4-body .line{padding:0 14px}.cx-code4-body:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px}.cx-rf{border:1px solid var(--color-line-hairline);background:var(--color-surface-canvas);border-radius:14px;overflow:hidden}.cx-rf-tabs{border-bottom:1px solid var(--color-line-hairline);background:var(--color-surface-raised);scrollbar-width:thin;display:flex;overflow-x:auto}.cx-rf-tabs button{text-align:left;color:var(--color-ink-secondary);cursor:pointer;border-bottom:2px solid #0000;flex:1 0 150px;gap:2px;padding:10px 14px;font-size:13px;line-height:1.35;display:grid}.cx-rf-tabs button b{color:var(--color-ink-muted);font-size:11px;font-weight:600}.cx-rf-tabs button[aria-selected=true]{color:var(--color-ink-primary);border-bottom-color:var(--color-brand);background:var(--color-surface-canvas)}.cx-rf-tabs button[aria-selected=true] b{color:var(--color-brand-ink)}.cx-rf-tabs button:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px}.cx-rf-body{gap:14px;padding:18px;display:grid}.cx-rf-grid{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.cx-rf-grid>*{min-width:0}.cx-rf-fig{margin:0}.cx-rf-nav{justify-content:space-between;gap:10px;display:flex}.cx-rf-nav button{border:1px solid var(--color-line-strong);color:var(--color-ink-primary);background:var(--color-surface-raised);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.cx-rf-nav button:disabled{opacity:.4;cursor:default}.cx-rf-nav button:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.cx-out{border:1px solid var(--color-line-hairline);background:var(--color-surface-sunken);border-radius:12px;margin:0;overflow:hidden}.cx-out pre{font:13px/1.6 var(--font-mono);color:var(--color-ink-primary);margin:0;padding:12px 14px;overflow-x:auto}.cx-out pre:before{content:"Output";font:600 11px var(--font-sans);color:var(--color-ink-muted);margin-bottom:6px;display:block}.cx-out figcaption{border-top:1px solid var(--color-line-hairline);color:var(--color-ink-secondary);padding:9px 14px;font-size:14px}
.sbs{--sbs-top:0px;min-height:calc(100vh - var(--sbs-top));grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.sbs-art{min-width:0;color:var(--ink-primary);padding:24px 24px 80px 28px;overflow-x:hidden}.sbs-crumbs{font:500 12px var(--font-mono);color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sbs-crumbs a{color:var(--ink-muted)}.sbs-crumbs .sbs-home{margin-right:6px}.pl-home{display:none}.sbs-h1{letter-spacing:-.025em;margin-top:12px;font-size:34px;font-weight:800;line-height:1.05}.sbs-lede{color:var(--ink-secondary);max-width:60ch;margin-top:10px;font-size:18px;line-height:1.55}.sbs-lede strong{color:var(--ink-primary)}.sbs-meta{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.sbs-pill{border:1px solid var(--line-hairline);height:24px;font:500 12px/1 var(--font-mono);color:var(--ink-secondary);white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.sbs-pill.is-brand{color:var(--brand-ink);border-color:color-mix(in srgb, var(--brand) 35%, transparent);background:var(--brand-subtle)}.sbs-sec{flex-direction:column;gap:14px;margin-top:36px;display:flex}.sbs-sec>h2{letter-spacing:-.015em;font-size:20px;font-weight:700}.sbs-kicker{color:var(--brand-ink);font-size:12px;font-weight:600}.sbs-sec .cx-md{color:var(--ink-secondary);line-height:1.6}.sbs-sec .cx-md strong{color:var(--ink-primary);font-weight:600}.sbs-jump{border:1px solid var(--line-hairline);background:var(--surface-page);height:28px;color:var(--brand-ink);border-radius:6px;align-self:flex-start;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;font-weight:500;display:inline-flex}.sbs-jump svg{width:12px;height:12px}.sbs-jump:hover{border-color:var(--brand)}.sbs-callout{border-left:4px solid var(--brand);background:var(--brand-subtle);border-radius:4px 12px 12px 4px;padding:18px 22px}.sbs-callout-k{font:500 11px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink);margin-bottom:6px}.sbs-sec .sbs-callout-t,.sbs-callout-t p{letter-spacing:-.01em;color:var(--ink-primary);text-wrap:balance;font-size:17px;font-weight:700;line-height:1.35}.sbs-callout-t strong{color:var(--brand-ink)}.sbs-signals{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sbs-signal{border:1px solid var(--line-hairline);background:var(--surface-raised);border-radius:12px;padding:12px 14px}.sbs-sec .sbs-signal-t{font:600 13px var(--font-mono);color:var(--ink-primary)}.sbs-sec .sbs-signal-d{margin-top:2px;font-size:14px}.sbs-traps{grid-template-columns:1fr;gap:10px;display:grid}.sbs-trap{border:1px solid var(--line-hairline);background:var(--surface-raised);border-radius:12px;padding:14px}.sbs-trap b{margin-bottom:4px;font-size:14px;display:block}.sbs-sec .sbs-trap-d{font-size:13.5px}.sbs-code{border:1px solid var(--line-hairline);background:var(--surface-canvas);font:13.5px/24px var(--font-mono);border-radius:12px;margin:0;padding:14px 0;overflow-x:auto}.sbs-code figcaption{font:600 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);padding:0 16px 6px}.sbs-code ol{list-style:none}.sbs-code li{white-space:pre;grid-template-columns:34px 1fr;padding-right:16px;display:grid}.sbs-n{text-align:right;color:var(--ink-muted);-webkit-user-select:none;user-select:none;padding-right:12px}.sbs-pgroup{flex-direction:column;gap:8px;display:flex}.sbs-pgroup h3{align-items:center;gap:10px;font-size:15px;font-weight:650;display:flex}.sbs-pgroup ol{flex-direction:column;gap:8px;display:flex}.sbs-sub{font:500 12px var(--font-mono);color:var(--ink-muted)}.sbs-prob{border:1px solid var(--line-hairline);background:var(--surface-raised);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:12px 14px;display:grid}.sbs-prob-act{align-items:center;gap:14px;display:flex}.sbs-prob.is-done{background:color-mix(in srgb, var(--signal-ok) 10%, var(--surface-raised));border-color:color-mix(in srgb, var(--signal-ok) 35%, transparent)}.sbs-prob-t{font-size:14px;font-weight:600}.sbs-tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.sbs-tag{border:1px solid var(--line-hairline);height:20px;font:500 11px var(--font-mono);color:var(--ink-secondary);border-radius:5px;align-items:center;padding:0 7px;display:inline-flex}.sbs-tag.is-cur{border-color:color-mix(in srgb, var(--brand) 40%, transparent);color:var(--brand-ink);background:var(--brand-subtle)}.sbs-lc,.pl-lc{border:1px solid var(--line-strong);height:30px;color:var(--ink-primary);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;display:inline-flex}.sbs-lc:hover,.pl-lc:hover{border-color:var(--brand);text-decoration:none}.sbs-lc svg,.pl-lc svg{width:14px;height:14px}.sbs-solved{color:var(--ink-secondary);white-space:nowrap;cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.sbs-solved input{width:18px;height:18px;accent-color:var(--signal-ok)}.sbs-locked{border:1px dashed var(--line-strong);color:var(--ink-secondary);border-radius:12px;padding:12px 14px;font-size:13.5px}.sbs-why{max-width:70ch;color:var(--ink-muted);font-size:13px}.sbs-next{border:1px solid var(--line-hairline);background:var(--surface-raised);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding:18px;display:flex}.sbs-eyebrow,.pl-eyebrow{font:600 11px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.sbs-next-t{font-size:18px;font-weight:700}.pl{top:var(--sbs-top);height:calc(100vh - var(--sbs-top));border-left:1px solid var(--line-hairline);background:var(--surface-page);flex-direction:column;align-self:start;min-width:0;display:flex;position:sticky;overflow:hidden}.pl-head{border-bottom:1px solid var(--line-hairline);background:var(--surface-canvas);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.pl-sw{background:var(--surface-sunken);border:1px solid var(--line-hairline);border-radius:8px;gap:2px;padding:3px;display:flex}.pl-sw button{border-radius:6px;align-items:center;height:26px;padding:0 7px;display:inline-flex}.pl-sw button[aria-pressed=true]{background:var(--surface-overlay);box-shadow:var(--shadow-elevation-1)}.pl-diff{height:20px;font:600 10.5px var(--font-mono);white-space:nowrap;border-radius:6px;align-items:center;padding:0 7px;display:inline-flex}.pl-diff.is-easy{color:var(--signal-ok);background:color-mix(in srgb, var(--signal-ok) 14%, transparent)}.pl-diff.is-medium{color:var(--signal-warn);background:color-mix(in srgb, var(--signal-warn) 16%, transparent)}.pl-diff.is-hard{color:var(--signal-critical);background:color-mix(in srgb, var(--signal-critical) 14%, transparent)}.pl-diff.is-none{color:var(--ink-secondary);background:var(--surface-page)}.pl-grow{flex:1}.pl-prob{color:var(--ink-secondary);padding:10px 14px 0;font-size:13px;line-height:1.5}.pl-prob b{color:var(--ink-primary);font-weight:600}.pl-io{font:500 12px var(--font-mono);color:var(--ink-muted);overflow-wrap:anywhere;margin-top:2px}.pl-stage{background-color:var(--surface-canvas);background-image:radial-gradient(var(--grid-dot) 1px, transparent 1px);background-size:16px 16px;flex:none;max-height:58%;padding:20px 14px 14px;overflow:auto}.pl-narr{text-align:center;max-width:70ch;min-height:42px;color:var(--ink-primary);text-wrap:balance;margin:18px auto 0;font-size:14px;line-height:1.5}.pl-narr b{color:var(--brand-ink)}.pl-narr code{font:500 .92em var(--font-mono)}.pl-cols{border-top:1px solid var(--line-hairline);flex:1;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);min-height:0;display:grid}.pl-pseudo{border-right:1px solid var(--line-hairline);min-height:0;font:12.5px/22px var(--font-mono);padding:12px 0;list-style:none;overflow:auto}.pl-pseudo li{white-space:pre;color:var(--ink-primary);grid-template-columns:34px 1fr;padding-right:16px;display:grid}.pl-pseudo li.is-on{background:var(--brand-subtle);box-shadow:inset 3px 0 0 var(--brand)}.pl-n{text-align:right;color:var(--ink-muted);-webkit-user-select:none;user-select:none;padding-right:12px}.tp-kw{color:var(--code-kw);font-weight:600}.tp-str{color:var(--code-str)}.tp-cm{color:var(--ink-muted);font-style:italic}.pl-vars{flex-direction:column;gap:10px;min-height:0;padding:12px;display:flex;overflow:auto}.pl-var{font:500 13px var(--font-mono);grid-template-columns:90px 1fr;align-items:baseline;gap:10px;display:grid}.pl-k{color:var(--ink-muted);overflow-wrap:anywhere}.pl-v{color:var(--ink-primary);overflow-wrap:anywhere}.pl-v.is-flash{animation:pl-flash .6s var(--ease-standard)}@keyframes pl-flash{0%{background:var(--brand-subtle)}to{background:0 0}}.pl-calls{font:500 12px var(--font-mono);color:var(--ink-muted);flex-direction:column-reverse;gap:3px;list-style:none;display:flex}.pl-calls li{border:1px solid var(--line-hairline);border-radius:6px;padding:3px 8px}.pl-calls li.is-top{color:var(--ink-primary);border-color:var(--brand)}.pl-done{background:color-mix(in srgb, var(--signal-ok) 14%, transparent);color:var(--ink-primary);border-radius:10px;margin-top:auto;padding:10px 12px;font-size:13px}.pl-controls{border-top:1px solid var(--line-hairline);background:var(--surface-canvas);flex-wrap:wrap;flex:none;align-items:center;gap:6px;padding:10px 12px;display:flex}.pl-btn{border:1px solid var(--line-hairline);background:var(--surface-page);width:34px;height:34px;color:var(--ink-primary);border-radius:8px;grid-auto-flow:column;place-items:center;display:inline-grid}.pl-btn svg{width:16px;height:16px}.pl-btn .pl-second{margin-left:-11px}.pl-btn:hover:not(:disabled){border-color:var(--line-strong)}.pl-btn:disabled{opacity:.4}.pl-btn.is-play{background:var(--brand-gradient);width:auto;color:var(--on-brand);border:0;align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex}.pl-btn.is-play svg{width:14px;height:14px}.pl-scrub{min-width:120px;accent-color:var(--brand);flex:1}.pl-stepno{text-align:right;min-width:78px;font:500 12px var(--font-mono);color:var(--ink-muted)}.pl-speed{gap:2px;display:inline-flex}.pl-speed button{height:26px;font:500 12px var(--font-mono);color:var(--ink-muted);border-radius:6px;padding:0 6px}.pl-speed button[aria-pressed=true]{color:var(--ink-primary);background:var(--surface-sunken)}.pl-hint{font:500 11.5px var(--font-mono);color:var(--ink-muted);white-space:nowrap}.tp-stage{flex-direction:column;align-items:center;gap:16px;display:flex}.tp-box{max-width:100%;margin:0;overflow-x:auto}.tp-box figcaption{font:600 10.5px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:4px}.tp-empty{font:500 12px var(--font-mono);color:var(--ink-muted)}.tp-cells{gap:5px;width:max-content;padding-top:22px;padding-bottom:18px;list-style:none;display:flex}.tp-cell{border:1.5px solid var(--line-strong);background:var(--surface-page);min-width:42px;height:42px;font:600 15px var(--font-mono);color:var(--ink-primary);transition:background .2s var(--ease-standard), border-color .2s var(--ease-standard), transform .2s var(--ease-standard), box-shadow .2s var(--ease-standard);border-radius:8px;place-items:center;padding:0 6px;display:grid;position:relative}.tp-cell.is-in{background:color-mix(in srgb, var(--brand) 14%, var(--surface-page));border-color:color-mix(in srgb, var(--brand) 50%, var(--line-strong))}.tp-cell.is-seen{border-color:var(--signal-flow);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-flow) 25%, transparent)}.tp-cell.is-put{border-color:var(--signal-ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-ok) 25%, transparent);transform:translateY(-3px)}.tp-cell.is-out{background:0 0;border-style:dashed}.tp-ix{font:500 10px var(--font-mono);color:var(--ink-muted);position:absolute;bottom:-18px}.tp-ptrs{gap:2px;display:flex;position:absolute;top:-24px}.tp-ptr{min-width:22px;height:18px;font:700 10px var(--font-mono);color:var(--surface-page);background:var(--ink-primary);border-radius:5px;place-items:center;padding:0 5px;display:inline-grid}.tp-ptr+.tp-ptr{background:var(--brand);color:var(--on-brand)}.tp-nodes{display:block;overflow:visible}.tp-node rect{fill:var(--surface-page);stroke:var(--line-strong);stroke-width:1.5px}.tp-node text{font:600 15px var(--font-mono);fill:var(--ink-primary)}.tp-node.is-start rect{stroke-width:2.5px}.tp-node.is-seen rect{stroke:var(--signal-flow)}.tp-node.is-put rect{stroke:var(--signal-ok);stroke-width:2.5px}.tp-ptr-t{font:700 11px var(--font-mono);fill:var(--brand-ink)}.tp-arrow{fill:none;stroke:var(--ink-secondary);stroke-width:1.5px}.tp-arrow.is-back{stroke:var(--brand)}.tp-arrowhead{fill:var(--ink-secondary)}.tp-nothing text{font:500 12px var(--font-mono);fill:var(--ink-muted)}.tp-buckets{flex-direction:column;gap:4px;list-style:none;display:flex}.tp-bucket{align-items:center;gap:8px;min-height:28px;display:flex}.tp-bix{border:1.5px solid var(--line-strong);background:var(--surface-sunken);width:26px;height:26px;font:600 12px var(--font-mono);color:var(--ink-secondary);border-radius:6px;place-items:center;display:inline-grid}.tp-bucket.is-seen .tp-bix{border-color:var(--signal-flow)}.tp-bucket.is-put .tp-bix{border-color:var(--signal-ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-ok) 25%, transparent)}.tp-chain{flex-wrap:wrap;gap:4px;display:flex}.tp-item{border:1px solid var(--line-strong);background:var(--surface-page);font:500 13px var(--font-mono);color:var(--ink-primary);border-radius:6px;padding:3px 8px}.tp-none{color:var(--ink-muted)}.tp-net{display:block;overflow:visible}.tp-vertex circle{fill:var(--surface-page);stroke:var(--line-strong);stroke-width:1.5px}.tp-vertex text{font:600 14px var(--font-mono);fill:var(--ink-primary)}.tp-vertex.is-done circle{fill:color-mix(in srgb, var(--signal-ok) 16%, var(--surface-page));stroke:color-mix(in srgb, var(--signal-ok) 60%, var(--line-strong))}.tp-vertex.is-active circle{fill:color-mix(in srgb, var(--brand) 16%, var(--surface-page));stroke:var(--brand)}.tp-vertex.is-seen circle{stroke:var(--signal-flow);stroke-width:2.5px}.tp-vertex.is-put circle{stroke:var(--signal-ok);stroke-width:2.5px}.tp-vertex .tp-note{font:600 11px var(--font-mono);fill:var(--brand-ink)}.tp-link-w{font:600 11px var(--font-mono);fill:var(--ink-secondary)}.tp-grid{border-collapse:separate;border-spacing:4px;font:600 14px var(--font-mono)}.tp-grid th{font:500 10px var(--font-mono);color:var(--ink-muted);text-align:center}.tp-gcell{border:1.5px solid var(--line-strong);background:var(--surface-page);text-align:center;min-width:36px;height:36px;color:var(--ink-primary);border-radius:7px;padding:0 6px;position:relative}.tp-gcell.is-seen{border-color:var(--signal-flow);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-flow) 25%, transparent)}.tp-gcell.is-put{border-color:var(--signal-ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-ok) 25%, transparent)}.tp-gptr{font:700 9.5px var(--font-mono);color:var(--on-brand);background:var(--brand);white-space:nowrap;border-radius:4px;padding:0 4px;position:absolute;top:-10px;left:50%;transform:translate(-50%)}@media (max-width:1100px){.sbs-signals,.pl-cols{grid-template-columns:1fr}.pl-vars{display:none}.pl-pseudo{border-right:0}}@media (max-width:760px){.sbs{flex-direction:column;min-height:0;display:flex}.sbs .pl{z-index:3;border-left:0;border-bottom:1px solid var(--line-hairline);height:auto;box-shadow:var(--shadow-elevation-2);order:-1;align-self:stretch}.sbs-art{padding-inline:16px}.sbs-crumbs .sbs-home{display:none}.pl-head .pl-home{display:flex}.sbs-prob{grid-template-columns:auto minmax(0,1fr)}.sbs-prob-act{grid-column:2}.sbs-h1{font-size:30px}.pl-cols,.pl-prob,.pl-stepno,.pl-speed,.pl-hint{display:none}.pl-stage{max-height:46vh;padding:16px 10px 8px}.tp-cell{min-width:34px;height:36px;font-size:13px}.pl-narr{min-height:36px;margin-top:12px;font-size:13px}}.sbs-signal-t p,.sbs-signal-d p,.sbs-trap-d p,.sbs-callout-t p,.sbs-lede p{font:inherit;color:inherit;letter-spacing:inherit;margin:0}.pl-stage,.pl-pseudo,.pl-vars,.sbs-code,.tp-box{scrollbar-width:thin;scrollbar-color:transparent transparent}.pl-stage:hover,.pl-pseudo:hover,.pl-vars:hover,.sbs-code:hover,.tp-box:hover,.pl-stage:focus-within,.pl-pseudo:focus-within,.pl-vars:focus-within,.sbs-code:focus-within,.tp-box:focus-within{scrollbar-color:color-mix(in srgb, var(--ink-muted) 55%, transparent) transparent}
