/* Article components are scoped to sb-*. No homepage behaviour is imported. */
html {scroll-behavior:smooth;scroll-padding-top:110px;}
body.sb-page {margin:0;color:var(--fg);background:var(--bg);font-family:var(--font-sans);font-size:17px;line-height:1.65;letter-spacing:0;overflow-x:hidden;}
.sb-page *, .sb-page *::before, .sb-page *::after {box-sizing:border-box;}
.sb-page::before {content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 86% 4%,color-mix(in srgb,var(--green) 8%,transparent),transparent 38%),radial-gradient(ellipse at 6% 40%,color-mix(in srgb,var(--blue) 5%,transparent),transparent 38%);}
.sb-page::after {display:none;}
.sb-page a {color:inherit;text-decoration:none;}
.sb-page button {font:inherit;cursor:pointer;}
.sb-page a:focus-visible,.sb-page button:focus-visible,.sb-page summary:focus-visible {outline:2px solid var(--green);outline-offset:5px;}
.sb-page ::selection {background:color-mix(in srgb,var(--green) 35%,transparent);}
.sb-wrap {width:min(1180px,calc(100% - 64px));margin-inline:auto;}
.sb-skip {position:fixed;left:20px;top:-100px;background:var(--fg);color:var(--bg)!important;padding:12px 20px;border-radius:8px;z-index:100;}
.sb-skip:focus {top:20px;}
.sb-nav {position:fixed;left:50%;top:18px;transform:translateX(-50%);width:min(calc(100% - 32px),1180px);z-index:40;display:flex;align-items:center;gap:12px;padding:6px;border:1px solid var(--line);border-radius:999px;background:linear-gradient(120deg,color-mix(in srgb,var(--panel-strong) 90%,transparent),color-mix(in srgb,var(--panel) 78%,transparent));backdrop-filter:blur(30px) saturate(1.35);box-shadow:0 18px 64px var(--shadow);}
.sb-brand {display:flex;align-items:center;justify-content:center;flex:none;min-width:68px;min-height:36px;padding:6px 12px;border-radius:999px;background:var(--fg);color:var(--bg)!important;font:800 .8rem var(--font-mono);letter-spacing:.06em;}
.sb-nav-links {display:flex;align-items:center;justify-content:center;gap:8px;flex:1;}
.sb-nav-links a {padding:9px 12px;border-radius:999px;font:700 .67rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.sb-nav-links a:hover {color:var(--fg);background:var(--line);}
.sb-actions {display:flex;align-items:center;gap:5px;padding:3px;border:1px solid var(--line);border-radius:999px;}
.sb-languages {display:flex;gap:2px;}
.sb-language {display:grid;place-items:center;min-width:31px;min-height:30px;border-radius:999px;font:800 .68rem var(--font-mono);color:var(--muted)!important;}
.sb-language[aria-current="page"] {background:var(--fg);color:var(--bg)!important;}
.sb-theme {display:flex;align-items:center;justify-content:space-between;position:relative;width:60px;height:32px;border:1px solid var(--line);border-radius:999px;padding:0 7px;background:transparent;color:var(--fg);}
.sb-theme::before {content:"";position:absolute;left:3px;top:3px;width:24px;height:24px;border-radius:50%;background:var(--line);transition:transform .2s;}
[data-theme-mode="light"] .sb-theme::before {transform:translateX(27px);}
.sb-theme svg {width:15px;height:15px;position:relative;z-index:1;}
.sb-menu-button {display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:8px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--fg);}
.sb-menu-button svg {width:19px;height:19px;}
.sb-mobile-menu {position:fixed;z-index:39;inset:75px 9px auto auto;width:min(340px,calc(100% - 18px));max-height:calc(100dvh - 90px);overflow:auto;background:var(--bg);border:1px solid var(--line-strong);box-shadow:0 24px 80px var(--shadow);border-radius:12px;padding:20px;}
.sb-mobile-menu[hidden] {display:none;}
.sb-mobile-menu a {display:block;padding:10px 4px;border-bottom:1px solid var(--line);font-size:.93rem;}
.sb-mobile-menu .sb-eyebrow {margin-bottom:10px;}
.sb-progress {position:fixed;left:0;right:0;top:0;height:2px;z-index:50;background:transparent;}
.sb-progress span {display:block;width:0;height:100%;background:linear-gradient(90deg,var(--green),var(--blue),var(--pink));}
.sb-hero {padding-top:145px;padding-bottom:45px;position:relative;}
.sb-eyebrow {font:750 .69rem/1.5 var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--green);}
.sb-hero .sb-eyebrow {display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.sb-category {color:var(--muted);letter-spacing:.09em;}
.sb-title {font-family:var(--font-display);font-size:clamp(3.1rem,6.4vw,6.1rem);font-weight:790;line-height:.97;letter-spacing:-.065em;margin:30px 0 28px;max-width:1180px;text-wrap:balance;}
.sb-title span {display:block;}
.sb-title .sb-accent {color:var(--green);}
.sb-hero-lead {font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.65;max-width:710px;color:var(--muted);margin:0 0 26px;}
.sb-meta {display:flex;align-items:center;gap:22px;flex-wrap:wrap;font:500 .72rem var(--font-mono);color:var(--muted);}
.sb-author {display:flex;align-items:center;gap:10px;color:var(--fg);}
.sb-avatar {width:33px;height:33px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;font:700 .58rem var(--font-mono);}
.sb-meta time::before,.sb-readtime::before {content:"/";margin-right:15px;color:var(--line-strong);}
.sb-hero-cta {display:flex;align-items:center;gap:12px;margin-top:29px;flex-wrap:wrap;}
.sb-button {display:inline-flex;align-items:center;gap:18px;min-height:43px;padding:11px 19px;border:1px solid var(--fg);border-radius:999px;background:var(--fg);color:var(--bg)!important;font-size:.81rem;font-weight:700;line-height:1.35;transition:transform .2s,background .2s;}
.sb-button:hover {transform:translateY(-2px);}
.sb-button svg {width:17px;height:17px;}
.sb-button.sb-ghost {background:transparent;border-color:var(--line-strong);color:var(--fg)!important;}
.sb-cover {margin:0 auto 0;}
.sb-cover-frame {overflow:hidden;border-radius:8px;border:1px solid var(--line);position:relative;background:#12241e;}
.sb-cover img {width:100%;height:auto;max-height:760px;display:block;object-fit:cover;object-position:50% 51%;filter:saturate(.8);}
[data-theme-mode="dark"] .sb-cover img {filter:saturate(.65) brightness(.81);}
.sb-cover-frame::after {content:"";position:absolute;inset:0;box-shadow:inset 0 0 50px rgba(0,0,0,.15);pointer-events:none;}
.sb-cover figcaption {font:.67rem/1.6 var(--font-mono);color:var(--muted);margin-top:11px;}
.sb-benefits {display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:27px;padding:25px 0 29px;border-bottom:1px solid var(--line);}
.sb-benefit {display:flex;gap:14px;align-items:baseline;font-size:.85rem;font-weight:640;}
.sb-benefit span {font:.65rem var(--font-mono);color:var(--green);}
.sb-layout {display:grid;grid-template-columns:205px minmax(0,1fr);gap:66px;align-items:start;padding-top:70px;}
.sb-toc {position:sticky;top:103px;max-height:calc(100dvh - 125px);overflow:auto;scrollbar-width:thin;}
.sb-toc h2 {font:750 .64rem var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 20px;}
.sb-toc nav {display:flex;flex-direction:column;border-left:1px solid var(--line);}
.sb-toc a {font-size:.78rem;line-height:1.5;padding:8px 0 8px 15px;color:var(--muted);border-left:2px solid transparent;margin-left:-1px;}
.sb-toc a:hover,.sb-toc a[aria-current="location"] {color:var(--fg);border-left-color:var(--green);}
.sb-toc-tools {border-top:1px solid var(--line);margin-top:20px;padding-top:12px;}
.sb-toc-tools a {font:600 .63rem var(--font-mono);display:block;border:0;padding:9px 0;}
.sb-article {min-width:0;}
.sb-section {margin:0 0 72px;padding-top:51px;border-top:1px solid var(--line);scroll-margin-top:106px;}
.sb-section#intro {padding-top:0;border-top:0;margin-bottom:54px;}
.sb-section-no {display:block;color:var(--green);font:700 .67rem var(--font-mono);letter-spacing:.12em;margin-bottom:17px;}
.sb-section h2 {font-size:clamp(2rem,3.1vw,2.95rem);font-weight:770;letter-spacing:-.047em;line-height:1.09;max-width:30ch;margin:0 0 30px;text-wrap:balance;}
.sb-section h3 {font-size:clamp(1.42rem,2.2vw,1.92rem);line-height:1.2;font-weight:730;letter-spacing:-.035em;margin:51px 0 22px;scroll-margin-top:104px;text-wrap:balance;}
.sb-section p {max-width:73ch;font-size:1.055rem;line-height:1.8;margin:0 0 22px;color:color-mix(in srgb,var(--fg) 90%,var(--muted));}
.sb-section p strong {font-weight:720;color:var(--fg);}
.sb-section#intro p:first-child {font-size:1.35rem;line-height:1.68;letter-spacing:-.016em;color:var(--fg);}
.sb-section p a:not(sup a) {text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px;}
.sb-section sup {vertical-align:super;font-size:.62em;line-height:0;margin-left:3px;}
.sb-section sup a {color:var(--green);font-family:var(--font-mono);padding:0 1px;}
.sb-section p code,.sb-section td code {font: .78em/1.6 var(--font-mono);border:1px solid var(--line);background:var(--panel);padding:2px 4px;border-radius:4px;overflow-wrap:anywhere;word-break:break-word;color:var(--fg);box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.sb-quote {margin:31px 0 34px;padding:24px 27px 6px;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:0 8px 8px 0;background:linear-gradient(120deg,color-mix(in srgb,var(--green) 6%,transparent),var(--panel));}
.sb-quote p {font-size:1.09rem;line-height:1.8;}
#north-star .sb-quote {padding:27px 31px 8px;}
#north-star .sb-quote p {font-size:1.43rem;line-height:1.55;font-weight:550;letter-spacing:-.02em;}
.sb-figure {margin:37px 0 43px;}
.sb-image-button {border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg2);padding:0;width:100%;display:block;position:relative;color:var(--fg);}
.sb-image-button img {display:block;width:100%;height:auto;}
.sb-zoom-hint {position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:999px;font:600 .61rem var(--font-mono);background:var(--bg);color:var(--muted);}
.sb-zoom-hint svg {width:12px;height:12px;}
.sb-figure figcaption {display:grid;grid-template-columns:auto 1fr;gap:14px;font-size:.76rem;line-height:1.65;color:var(--muted);margin-top:13px;}
.sb-figure-num {color:var(--green);font:700 .64rem/1.75 var(--font-mono);white-space:nowrap;}
.sb-code {margin:25px 0 32px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:color-mix(in srgb,var(--bg2) 85%,var(--bg));}
.sb-code-bar {display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:38px;padding:7px 14px;border-bottom:1px solid var(--line);font:500 .6rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);}
.sb-copy {background:transparent;color:var(--muted);font:600 .64rem var(--font-mono)!important;border:0;padding:6px 2px;}
.sb-copy:hover {color:var(--green);}
.sb-code pre {margin:0;padding:20px;overflow:auto;max-height:600px;tab-size:2;font:.75rem/1.85 var(--font-mono);color:var(--fg);}
.sb-code pre code {font:inherit;}
.sb-key {color:var(--green);}.sb-string {color:var(--blue);}.sb-literal {color:var(--hot);}
.sb-table-wrap {overflow:auto;border:1px solid var(--line);border-radius:8px;margin:28px 0;}
.sb-table {border-collapse:collapse;width:100%;min-width:660px;font-size:.81rem;line-height:1.6;}
.sb-table th {text-align:left;background:var(--panel-strong);font:650 .68rem/1.5 var(--font-mono);color:var(--fg);padding:15px;}
.sb-table td {padding:15px;vertical-align:top;border-top:1px solid var(--line);color:var(--muted);}
.sb-table td:first-child {width:25%;font-weight:650;color:var(--fg);}
.sb-proof {margin:39px 0 50px;padding:25px;background:linear-gradient(125deg,var(--panel-strong),var(--panel));border:1px solid var(--line);border-radius:8px;}
.sb-proof-kicker {display:flex;justify-content:space-between;gap:15px;margin:0 0 16px;font:650 .55rem/1.6 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--green);}
.sb-proof h4 {font-size:1.62rem;line-height:1.15;letter-spacing:-.04em;margin:0 0 21px;}
.sb-proof-question {font-size:.82rem;line-height:1.5;border:1px solid var(--line);padding:13px 14px;border-radius:8px;margin-bottom:18px;color:var(--fg);}
.sb-proof-frame {border:1px solid var(--line);border-radius:8px;overflow:hidden;}
.sb-windowbar {display:flex;align-items:center;gap:5px;padding:12px 13px;background:var(--line);}
.sb-windowbar i {display:block;width:7px;height:7px;border-radius:50%;background:var(--hot);opacity:.65;}
.sb-windowbar i:nth-child(2) {background:var(--gold);}.sb-windowbar i:nth-child(3) {background:var(--green);}
.sb-windowbar span {margin-left:7px;font:550 .58rem/1.4 var(--font-mono);color:var(--muted);overflow-wrap:anywhere;}
.sb-proof-grid {display:grid;grid-template-columns:1fr 1fr;}
.sb-proof-pane {padding:20px 18px;min-width:0;}
.sb-proof-pane + .sb-proof-pane {border-left:1px solid var(--line);background:color-mix(in srgb,var(--green) 5%,transparent);}
.sb-proof-label {font:700 .57rem/1.5 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--green);display:block;margin-bottom:12px;}
.sb-proof h5 {font-size:1.11rem;line-height:1.3;margin:0 0 15px;letter-spacing:-.025em;}
.sb-section .sb-proof p {font-size:.78rem;line-height:1.7;margin:0 0 13px;}
.sb-proof-time {font-size:1.85rem;font-weight:720;letter-spacing:-.05em;}
.sb-proof pre {font:.6rem/1.8 var(--font-mono);overflow:auto;margin:0 0 14px;white-space:pre;}
.sb-proof-route {display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);}
.sb-route-node {padding:14px 12px;font:600 .57rem/1.5 var(--font-mono);overflow-wrap:anywhere;}
.sb-route-node + .sb-route-node {border-left:1px solid var(--line);}
.sb-route-node span {display:block;font:.7rem/1.5 var(--font-sans);color:var(--muted);margin-top:6px;}
.sb-section .sb-proof .sb-proof-note {margin:17px 0 15px;font-size:.74rem;color:var(--muted);}
.sb-proof-footer {font:450 .54rem/1.6 var(--font-mono);color:var(--muted);padding-top:12px;border-top:1px solid var(--line);}
.sb-proof-export {width:1200px!important;margin:0 auto!important;padding:55px!important;}
.sb-proof-export .sb-proof {margin:0!important;}
.sb-proof-export .sb-proof h4 {font-size:2.3rem;}
.sb-proof-export .sb-proof-question {font-size:1.1rem;}
.sb-proof-export .sb-proof p {font-size:1rem;}
.sb-proof-export .sb-proof pre {font-size:.85rem;}
.sb-proof-export .sb-proof h5 {font-size:1.5rem;}
.sb-proof-export .sb-proof-pane {padding:30px;}
.sb-proof-export .sb-route-node {font-size:.8rem;}.sb-proof-export .sb-route-node span {font-size:.9rem;}
.sb-sources {border-top:1px solid var(--line);padding:40px 0;scroll-margin-top:105px;}
.sb-sources h2 {font-size:1.75rem;letter-spacing:-.035em;line-height:1.2;margin:0 0 18px;}
.sb-sources > p {font-size:.83rem;color:var(--muted);max-width:70ch;}
.sb-source {display:grid;grid-template-columns:30px 1fr;gap:10px;padding:15px 0;border-bottom:1px solid var(--line);scroll-margin-top:106px;}
.sb-source-num {font:600 .66rem var(--font-mono);color:var(--green);padding-top:4px;}
.sb-source-title {font-size:.85rem;line-height:1.5;font-weight:650;}
.sb-source-title a {text-underline-offset:3px;}.sb-source-title a:hover {text-decoration:underline;}
.sb-source p {font-size:.76rem;line-height:1.65;color:var(--muted);margin:5px 0 0;}
.sb-source:target {background:color-mix(in srgb,var(--green) 9%,transparent);}
.sb-end {margin-top:70px;padding:65px 0 70px;border-top:1px solid var(--line);}
.sb-end h2 {font-size:clamp(2.2rem,4.8vw,4.5rem);line-height:1.05;max-width:22ch;letter-spacing:-.055em;margin:22px 0;}
.sb-end p {font-size:1rem;line-height:1.7;color:var(--muted);max-width:580px;}
.sb-end-actions {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:27px;}
.sb-footer {display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0 35px;border-top:1px solid var(--line);font:450 .65rem/1.5 var(--font-mono);color:var(--muted);}
.sb-footer .sb-brand {min-width:auto;min-height:30px;font-size:.68rem;margin-right:10px;}
.sb-footer a:not(.sb-brand):hover {color:var(--fg);}
.sb-dialog {position:fixed;inset:0;width:calc(100% - 40px);height:calc(100% - 40px);max-width:1600px;max-height:1400px;margin:auto;padding:0;border:1px solid var(--line-strong);border-radius:10px;background:var(--bg);color:var(--fg);overflow:hidden;}
.sb-dialog::backdrop {background:rgba(0,0,0,.72);backdrop-filter:blur(10px);}
.sb-dialog-head {position:absolute;inset:0 0 auto;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 18px;background:var(--bg);border-bottom:1px solid var(--line);font:.7rem var(--font-mono);}
.sb-dialog-close {border:1px solid var(--line);border-radius:999px;background:transparent;padding:9px 15px;color:var(--fg);font:.75rem var(--font-sans)!important;}
.sb-dialog-scroll {height:100%;padding-top:62px;overflow:auto;}
.sb-dialog img {display:block;margin:auto;width:100%;min-width:850px;height:auto;}
.sb-live-region {position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:12px 20px;background:var(--fg);color:var(--bg);border-radius:999px;font-size:.8rem;z-index:70;}
.sb-live-region:empty {display:none;}
@media(min-width:1450px){.sb-layout {grid-template-columns:210px minmax(0,1fr);gap:76px;}.sb-section p {font-size:1.1rem;}}
@media(max-width:1050px){.sb-layout {gap:38px;grid-template-columns:170px minmax(0,1fr);}.sb-toc a {font-size:.72rem;}.sb-title {font-size:6.5vw;}.sb-proof {padding:19px;}.sb-proof-grid {grid-template-columns:1fr;}.sb-proof-pane + .sb-proof-pane {border-left:0;border-top:1px solid var(--line);}}
@media(max-width:820px){.sb-wrap {width:calc(100% - 44px);}.sb-nav {top:10px;width:calc(100% - 18px);gap:7px;padding:6px;}.sb-brand {min-width:58px;min-height:34px;font-size:.72rem;}.sb-nav-links {display:none;}.sb-actions {margin-left:auto;}.sb-menu-button {display:flex;}.sb-hero {padding-top:111px;padding-bottom:32px;}.sb-category {display:none;}.sb-title {font-size:clamp(3.2rem,8vw,5rem);line-height:1;letter-spacing:-.063em;margin:23px 0;}.sb-hero-lead {font-size:1.08rem;max-width:52ch;}.sb-meta {font-size:.65rem;gap:13px;}.sb-meta time::before,.sb-readtime::before {margin-right:9px;}.sb-cover img {height:350px;object-position:center;}.sb-benefits {grid-template-columns:1fr;gap:13px;padding:23px 0;}.sb-benefit {font-size:.84rem;}.sb-layout {display:block;padding-top:46px;}.sb-toc {display:none;}.sb-section {padding-top:33px;margin-bottom:49px;}.sb-section-no {margin-bottom:15px;font-size:.64rem;}.sb-section h2 {font-size:clamp(2rem,5.3vw,2.75rem);max-width:27ch;margin-bottom:24px;line-height:1.1;}.sb-section h3 {font-size:1.55rem;margin-top:39px;}.sb-section p {font-size:1rem;line-height:1.82;margin-bottom:22px;}.sb-section#intro p:first-child {font-size:1.18rem;}.sb-quote,#north-star .sb-quote {padding:22px 20px 4px;}.sb-quote p {font-size:1.02rem;}#north-star .sb-quote p {font-size:1.3rem;}.sb-figure {margin:30px -7px 35px;}.sb-figure figcaption {gap:10px;font-size:.72rem;padding:0 7px;}.sb-zoom-hint {font-size:0;padding:8px;border-radius:50%;}.sb-zoom-hint svg {width:16px;height:16px;}.sb-proof {margin:30px -7px 38px;padding:19px 15px;}.sb-proof h4 {font-size:1.43rem;}.sb-proof-grid {grid-template-columns:1fr 1fr;}.sb-proof-pane + .sb-proof-pane {border-left:1px solid var(--line);border-top:0;}.sb-code pre {font-size:.71rem;padding:16px;}.sb-end {padding:42px 0;margin-top:30px;}.sb-footer {flex-wrap:wrap;gap:15px;font-size:.62rem;}.sb-dialog {width:calc(100% - 12px);height:calc(100% - 12px);}.sb-dialog img {min-width:1000px;}.sb-dialog-head {font-size:.64rem;padding:11px 12px;}}
@media(max-width:520px){.sb-wrap {width:calc(100% - 40px);}.sb-hero .sb-eyebrow {font-size:.58rem;}.sb-title {font-size:clamp(2.6rem,11.25vw,3.8rem);line-height:1.035;text-wrap:balance;}.sb-title span {max-width:16ch;}.sb-hero-lead {font-size:1.02rem;}.sb-meta {gap:12px;}.sb-readtime {margin-left:43px;}.sb-readtime::before {content:none;}.sb-cover img {height:270px;}.sb-cover figcaption {font-size:.58rem;}.sb-section h2 {font-size:2.02rem;}.sb-section h3 {font-size:1.39rem;}.sb-proof-grid {grid-template-columns:1fr;}.sb-proof-pane + .sb-proof-pane {border-left:0;border-top:1px solid var(--line);}.sb-proof-kicker {font-size:.5rem;}.sb-proof-route {grid-template-columns:1fr;}.sb-route-node + .sb-route-node {border-left:0;border-top:1px solid var(--line);}.sb-route-node {display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:.56rem;padding:12px;}.sb-route-node span {margin:0;text-align:right;max-width:45%;font-size:.64rem;}.sb-proof .sb-proof-time {font-size:1.7rem;}.sb-proof pre {font-size:.68rem;}.sb-proof h5 {font-size:1.2rem;}.sb-proof .sb-proof-note {font-size:.75rem;}.sb-code pre {font-size:.67rem;}.sb-quote {margin:26px 0;}#north-star .sb-quote p {font-size:1.21rem;}.sb-figure-num {font-size:.56rem;}.sb-nav {max-width:520px;}.sb-footer {display:grid;grid-template-columns:1fr auto;}.sb-footer .sb-footer-motto {grid-column:1/-1;}}
@media(prefers-reduced-motion:reduce){html {scroll-behavior:auto;} .sb-page *, .sb-page *::before,.sb-page *::after {transition:none!important;animation:none!important;}}
@media print{.sb-nav,.sb-toc,.sb-progress,.sb-mobile-menu,.sb-hero-cta,.sb-copy,.sb-zoom-hint,.sb-end,.sb-dialog {display:none!important;}.sb-page {color:#111;background:white;}.sb-wrap {width:100%;}.sb-layout {display:block;}.sb-hero {padding-top:0;}.sb-title {font-size:32pt;}.sb-section {margin-bottom:20pt;padding-top:15pt;}.sb-section h2 {font-size:22pt;}.sb-section p {font-size:11pt;line-height:1.5;}.sb-section h2,.sb-section h3 {break-after:avoid;}.sb-proof,.sb-figure {break-inside:avoid;}.sb-code pre {max-height:none;white-space:pre-wrap;}.sb-cover img {height:220px;} }

/* Reading UX pass: keep the viewport, not an incidental overflow ancestor,
   as the sticky reference. Scoped to this module, not the homepage. */
html.sb-document {overflow-x:clip;overflow-y:visible;scroll-padding-top:var(--sb-anchor-offset,104px);}
body.sb-page {overflow:visible;}
.sb-page #sb-shell,.sb-page #sb-shell>main {overflow:visible;}
.sb-page .sb-layout {align-items:start;overflow:visible;}
.sb-page .sb-toc {position:sticky;top:var(--sb-sticky-top,104px);align-self:start;display:flex;flex-direction:column;max-height:calc(100vh - var(--sb-sticky-top,104px) - 24px);max-height:calc(100dvh - var(--sb-sticky-top,104px) - 24px);overflow:visible;min-height:0;}
.sb-toc-heading {display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 18px;flex:none;}
.sb-toc-heading h2 {margin:0;font-size:10px;letter-spacing:.12em;}
.sb-toc-heading [data-toc-count] {font:500 9px/1.4 var(--font-mono);color:var(--green);white-space:nowrap;}
.sb-toc nav {overflow:auto;min-height:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;}
.sb-toc nav a {position:relative;min-height:36px;transition:color .2s,background .2s,border-color .2s;border-left-width:2px;padding-block:9px;}
.sb-toc nav a[aria-current="location"] {color:var(--fg);font-weight:650;background:linear-gradient(90deg,color-mix(in srgb,var(--green) 10%,transparent),transparent 95%);border-left-color:var(--green);}
.sb-toc-tools {flex:none;margin-top:18px;padding-top:10px;}
.sb-toc-tools a {font-size:10px;line-height:1.55;padding:8px 0;}
.sb-toc-tools [aria-current="location"] {color:var(--green);}
.sb-page .sb-section,.sb-page .sb-section h3,.sb-page .sb-sources,.sb-page .sb-source,.sb-page .ar-flow-figure {scroll-margin-top:24px;}
.sb-page .sb-mobile-menu a[aria-current="location"] {color:var(--green);background:color-mix(in srgb,var(--green) 7%,transparent);border-left:2px solid var(--green);padding-left:12px;}
.sb-page .sb-chapter-bar {display:none;}
@media(max-width:820px){
 .sb-page .sb-toc {display:none;}
 .sb-page .sb-chapter-bar:not([hidden]) {position:fixed;z-index:38;display:flex;align-items:center;gap:12px;top:calc(var(--sb-nav-bottom,61px) + 8px);left:50%;transform:translateX(-50%);width:min(calc(100% - 26px),510px);min-height:40px;padding:9px 13px;border:1px solid var(--line);border-radius:5px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(20px);color:var(--fg);box-shadow:0 8px 24px color-mix(in srgb,var(--shadow) 38%,transparent);font:500 12px/1.35 var(--font-sans);text-align:left;}
 .sb-chapter-index {flex:none;font:650 9px/1.4 var(--font-mono);color:var(--green);letter-spacing:.04em;}
 .sb-chapter-name {flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 .sb-chapter-bar>span:last-child {color:var(--green);font-size:18px;line-height:1;}
 .sb-page .sb-mobile-menu {top:calc(var(--sb-nav-bottom,61px) + 8px);max-height:calc(100dvh - var(--sb-nav-bottom,61px) - 24px);}
 .sb-is-reading .sb-mobile-menu {top:calc(var(--sb-nav-bottom,61px) + 56px);max-height:calc(100dvh - var(--sb-nav-bottom,61px) - 74px);}
}
@supports not (overflow:clip) {html.sb-document {overflow-x:visible;}}
@media print {.sb-page .sb-toc,.sb-page .sb-chapter-bar {display:none!important;}}

html.sb-document {scrollbar-gutter:stable;background:var(--bg);}
@media(max-width:820px){html.sb-document {scrollbar-gutter:auto;}}

/* Concise editorial introduction; same tokens, no separate visual system. */
.sb-summary{position:relative;margin:0 0 clamp(44px,6vw,70px);padding:24px 0 26px;border-block:1px solid var(--line);display:grid;gap:18px;scroll-margin-top:130px;}
.sb-summary-label{display:flex;gap:10px;align-items:center;color:var(--green);}
.sb-summary .sb-summary-label h2{margin:0;font:760 .72rem/1.45 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--green);}
.sb-summary-label>span{font:600 1.05rem var(--font-mono);}
.sb-summary-copy{max-width:68ch;}
.sb-summary .sb-summary-copy p{margin:0;font-size:clamp(1.02rem,1.2vw,1.13rem);line-height:1.7;color:var(--fg);}
.sb-summary .sb-summary-copy p+p{margin-top:12px;color:var(--muted);}
.sb-updated{font-size:.8rem;color:var(--muted);}
.sb-author a:hover{text-decoration:underline;text-underline-offset:4px;}
@media(max-width:600px){.sb-summary{padding-block:20px;gap:14px}.sb-summary .sb-summary-copy p{font-size:1rem;line-height:1.7}.sb-updated{font-size:.76rem;}}
/* The new cover is already graded for the site: do not darken it twice. */
.sb-page .sb-cover img{filter:none;max-height:none;aspect-ratio:16/9;height:auto;object-position:center;}
@media(max-width:520px){.sb-page .sb-cover img{aspect-ratio:4/3;}}

/* Outcome-led navigation: editorial links, never a simulated assistant UI. */
.sb-usecases{margin:42px 0 12px;padding:28px 0;border-block:1px solid var(--line);}
.sb-usecases>header{margin-bottom:22px;}
.sb-article .sb-usecases h3{margin:10px 0;font:750 clamp(1.5rem,3vw,2rem)/1.12 var(--font-display);letter-spacing:-.025em;}
.sb-usecases>header>p{color:var(--muted);font-size:.94rem;line-height:1.55;margin:0;max-width:64ch;}
.sb-usecase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.sb-usecase{--case-accent:var(--green);position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:20px;border:1px solid var(--line);border-left:2px solid var(--case-accent);border-radius:3px;background:linear-gradient(135deg,color-mix(in srgb,var(--case-accent) 4%,var(--bg2)),var(--bg));transition:border-color .2s,background .2s;}
.sb-usecase[data-tone="gold"]{--case-accent:var(--gold);}.sb-usecase[data-tone="blue"]{--case-accent:var(--blue);}.sb-usecase[data-tone="violet"]{--case-accent:var(--violet);}
.sb-usecase:hover,.sb-usecase:focus-visible{border-color:var(--case-accent);background:color-mix(in srgb,var(--case-accent) 7%,var(--bg));}
.sb-usecase-label{display:flex;align-items:center;gap:10px;color:var(--case-accent);font:650 .66rem/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;}
.sb-usecase-label b{font-weight:500;color:var(--muted);}.sb-usecase-label i{margin-left:auto;font-style:normal;font-size:1rem;}
.sb-usecase>strong{font:730 clamp(1.05rem,1.7vw,1.23rem)/1.32 var(--font-display);color:var(--fg);text-wrap:pretty;}
.sb-usecase>p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55;}
.sb-usecase-evidence{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);font:500 .63rem/1.5 var(--font-mono);color:var(--muted);}
:root[data-theme-mode="light"] .sb-usecase{background:linear-gradient(135deg,color-mix(in srgb,var(--case-accent) 3%,white),white);box-shadow:0 4px 18px rgba(25,39,33,.025);}
:root[data-theme-mode="light"] .sb-usecase:hover{background:color-mix(in srgb,var(--case-accent) 5%,white);}
@media(max-width:600px){.sb-usecase-grid{grid-template-columns:1fr;}.sb-usecase{padding:19px;gap:12px;}.sb-usecases{margin-top:32px;}.sb-usecase>strong{font-size:1.13rem;}}
@media(prefers-reduced-motion:reduce){.sb-usecase{transition:none;}}
