.hero{position:relative;padding-block:clamp(2.5rem,1.5rem + 4vw,5rem) clamp(2.5rem,2rem + 3vw,4.5rem);background:linear-gradient(to bottom,transparent 0,var(--color-bg) 100%),repeating-linear-gradient(to bottom,transparent 0 31px,color-mix(in srgb,var(--color-rule) 55%,transparent) 31px 32px);border-bottom:1px solid var(--color-rule)}.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:var(--space-7) clamp(2rem,4vw,4rem);align-items:start}.hero__copy{display:grid;gap:var(--space-5);align-content:start;padding-top:var(--space-2)}.hero__title{font-size:var(--text-3xl);line-height:1.04;letter-spacing:-.025em;font-weight:720;max-width:16ch}.hero__sub{font-size:var(--text-md);line-height:1.6;color:var(--color-ink-muted);max-width:58ch}.assurances{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);list-style:none;padding:0;font-size:var(--text-sm);color:var(--color-ink-muted)}.assurances li{display:inline-flex;align-items:center;gap:.4rem}.assurances .icon{color:var(--status-free)}@media (max-width: 62rem){.hero__grid{grid-template-columns:minmax(0,1fr)}.hero__title{max-width:20ch}}.ledger{border:1px solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-raised);overflow:hidden;min-width:0}.ledger__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.7rem var(--space-4);border-bottom:1px solid var(--color-ink);background:var(--color-surface-sunken)}.ledger__title{font:600 var(--text-xs)/1.3 var(--font-mono);color:var(--color-ink)}.ledger__sub{color:var(--color-ink-subtle);font-weight:500}.ledger__sub::before{content:"· "}.stamp{display:inline-block;padding:.1rem .45rem;border:1.5px solid var(--status-paid);color:var(--status-paid);font:600 var(--text-2xs)/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;transform:rotate(-2deg);border-radius:2px}.ledger__table{font-size:var(--text-sm)}.ledger__table thead th{white-space:nowrap;padding:.45rem var(--space-4);font:600 var(--text-2xs)/1.3 var(--font-mono);color:var(--color-ink-subtle);border-bottom:1px solid var(--color-rule)}.ledger__table thead th:last-child{text-align:right}.ledger__table td{padding:.6rem var(--space-4);border-bottom:1px dashed var(--color-rule);vertical-align:top}.ledger__table tbody tr:last-child td{border-bottom:0}.ledger__host{font:500 .8125rem/1.4 var(--font-mono);color:var(--color-ink);white-space:nowrap}.ledger__host span{display:block;color:var(--color-ink-subtle);font-weight:400}.ledger__subj{font:400 .78rem/1.45 var(--font-mono);color:var(--color-ink-muted);overflow-wrap:anywhere}.ledger__status{text-align:right;white-space:nowrap}.ledger__foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:.6rem var(--space-4);border-top:1px solid var(--color-rule);font-size:var(--text-xs);color:var(--color-ink-subtle)}@media (max-width: 36rem){.ledger__table thead{display:none}.ledger__table,.ledger__table tbody,.ledger__table tr{display:block}.ledger__table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem var(--space-3);padding:.6rem var(--space-4);border-bottom:1px dashed var(--color-rule)}.ledger__table tbody tr:last-child{border-bottom:0}.ledger__table td{padding:0;border:0}.ledger__subj{grid-column:1 / -1;grid-row:2}.ledger__host span{display:inline;margin-left:.4rem}}.dates{background:var(--color-surface);border-bottom:1px solid var(--color-rule)}.dates__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.dates__item{position:relative;display:grid;gap:.2rem;align-content:start;padding:var(--space-5) var(--space-5) var(--space-5) 0}.dates__item + .dates__item{padding-left:var(--space-5);border-left:1px solid var(--color-rule)}.dates__item::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--status-review-line)}.dates__item--paid_license::before{background:var(--status-paid)}.dates__item--at_risk::before{background:var(--status-risk)}.dates__date{font:600 var(--text-sm)/1.3 var(--font-mono);color:var(--color-ink);font-variant-numeric:tabular-nums}.dates__label{font:650 var(--text-base)/1.3 var(--font-display);letter-spacing:-.01em}.dates__text{font-size:var(--text-sm);color:var(--color-ink-muted)}@media (max-width: 56rem){.dates__list{grid-template-columns:repeat(2,minmax(0,1fr))}.dates__item:nth-child(3){padding-left:0;border-left:0}.dates__item:nth-child(n+3){border-top:1px solid var(--color-rule)}}@media (max-width: 30rem){.dates__list{grid-template-columns:minmax(0,1fr)}.dates__item,.dates__item + .dates__item{padding:var(--space-4) 0;border-left:0}.dates__item + .dates__item{border-top:1px solid var(--color-rule)}}.facts{margin-top:var(--space-5)}.card--note{background:var(--color-surface-sunken);box-shadow:none}.never{margin-top:var(--space-5);padding:var(--space-3) var(--space-4);border:1px dashed var(--color-rule-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-ink-muted)}.steps{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:step}.step{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:var(--space-4);padding-block:var(--space-5);border-top:1px solid var(--color-rule)}.step:first-child{border-top:0;padding-top:0}.step__marker{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1.5px solid var(--color-ink);border-radius:50%;font:600 var(--text-sm)/1 var(--font-mono);background:var(--color-surface)}.step__body{display:grid;gap:var(--space-3);min-width:0}.step__body>p{max-width:var(--measure);color:var(--color-ink-muted)}.cmd-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-block:var(--space-2)}@media (max-width: 64rem){.cmd-pair{grid-template-columns:minmax(0,1fr)}}@media (max-width: 36rem){.step{grid-template-columns:minmax(0,1fr);gap:var(--space-3)}}.plan-notes{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-5);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--color-ink-muted)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6);align-items:start}@media (max-width: 60rem){.split{grid-template-columns:minmax(0,1fr)}}.closing{padding-block:clamp(3rem,2rem + 4vw,5rem);background:var(--color-code-bg);color:var(--color-code-ink)}.closing__inner{display:grid;gap:var(--space-4);justify-items:start}.closing h2{color:#FFFFFF;font-size:var(--text-2xl);max-width:22ch}.closing p{color:var(--color-code-dim);font-size:var(--text-md)}.closing .btn--primary{--btn-bg:#FFFFFF;--btn-ink:#0D1230;--btn-border:#FFFFFF}.closing .btn--primary:hover{--btn-bg:#E4E7F3;--btn-border:#E4E7F3}.closing .btn--secondary{--btn-bg:transparent;--btn-ink:#FFFFFF;--btn-border:#5B638C;box-shadow:none}.closing .btn--secondary:hover{--btn-bg:rgb(255 255 255 / .08);--btn-border:#9DA5C4}.closing :focus-visible{outline-color:#B9C4FF}.page-body{padding-block:var(--space-7) var(--space-8)}.page-body--flush{padding-top:0}.layout-aside{display:grid;grid-template-columns:minmax(0,1fr) 17rem;gap:var(--space-7);align-items:start}.layout-aside>aside{position:sticky;top:calc(var(--header-h) + var(--space-5));display:grid;gap:var(--space-4)}@media (max-width: 60rem){.layout-aside{grid-template-columns:minmax(0,1fr)}.layout-aside>aside{position:static}}.prose{color:var(--color-ink)}.prose>p,.prose>ul,.prose>ol{color:var(--color-ink)}.prose h2{font-size:var(--text-xl);scroll-margin-top:calc(var(--header-h) + 1rem)}.prose h3{font-size:var(--text-lg);scroll-margin-top:calc(var(--header-h) + 1rem)}.prose .table-scroll,.prose .cmd,.prose .callout{margin-block:var(--space-5)}.prose blockquote{padding-left:var(--space-4);border-left:2px solid var(--color-accent-line);color:var(--color-ink-muted)}.prose .anchor{margin-left:.35rem;color:var(--color-ink-subtle);text-decoration:none;opacity:0;font-weight:400}.prose :is(h2,h3):hover .anchor,.prose .anchor:focus-visible{opacity:1}.summary-box{padding:var(--space-4) var(--space-5);border:1px solid var(--color-rule-strong);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-surface)}.kv{display:grid;grid-template-columns:minmax(9rem,max-content) minmax(0,1fr);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.kv>dt,.kv>dd{margin:0;padding:.7rem var(--space-4);border-bottom:1px solid var(--color-rule)}.kv>dt{font:500 var(--text-sm)/1.6 var(--font-mono);color:var(--color-ink-subtle);background:var(--color-surface-sunken)}.kv>dt:last-of-type,.kv>dd:last-of-type{border-bottom:0}@media (max-width: 36rem){.kv{grid-template-columns:minmax(0,1fr)}.kv>dt{border-bottom:0;padding-bottom:.2rem}}.side-card{padding:var(--space-4);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-sm)}.side-card h2,.side-card .side-card__title{font:600 var(--text-2xs)/1.3 var(--font-mono);color:var(--color-ink-subtle);margin-bottom:var(--space-2)}.side-card p + p{margin-top:var(--space-2)}.side-card address{font-style:normal}.guide-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-4)}.guide-card{display:grid;gap:var(--space-2);padding:var(--space-5)}.guide-card h2{font-size:var(--text-lg)}.guide-card__meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);font:500 var(--text-xs)/1.5 var(--font-mono);color:var(--color-ink-subtle)}.tags{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:0}.tags li{padding:.05rem .45rem;border:1px solid var(--color-rule);border-radius:var(--radius-xs);font:500 var(--text-2xs)/1.6 var(--font-mono);color:var(--color-ink-muted)}.article-head{padding-block:var(--space-6) var(--space-6);border-bottom:1px solid var(--color-rule);background:var(--color-surface)}.article-head .wrap{display:grid;gap:var(--space-3)}.article-head h1{max-width:30ch}.article-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);font:500 var(--text-xs)/1.5 var(--font-mono);color:var(--color-ink-subtle)}.article-meta strong{color:var(--color-ink);font-weight:600}.verified{display:inline-flex;align-items:center;gap:.35rem}.verified .icon{color:var(--status-free)}.article-grid{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:var(--space-7);align-items:start;padding-block:var(--space-6) var(--space-8)}.article-grid>.toc{position:sticky;top:calc(var(--header-h) + var(--space-5));max-height:calc(100vh - var(--header-h) - 3rem);overflow:auto}.article-body{min-width:0;max-width:46rem}.article-body>.prose{max-width:none}.article-body>.prose>p:first-child{font-size:var(--text-md);line-height:1.6}@media (max-width: 62rem){.article-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-5)}.article-grid>.toc{position:static;max-height:none}}.toc{font-size:var(--text-sm)}.toc__title{font:600 var(--text-2xs)/1.3 var(--font-mono);color:var(--color-ink-subtle);margin-bottom:var(--space-2)}.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:.1rem;border-left:1px solid var(--color-rule)}.toc ol ol{border-left:0;padding-left:var(--space-3);margin-block:.1rem}.toc a{display:block;padding:.25rem 0 .25rem var(--space-3);margin-left:-1px;border-left:2px solid transparent;color:var(--color-ink-muted);text-decoration:none;line-height:1.4}.toc a:hover{color:var(--color-link);border-left-color:var(--color-accent-line)}@media (max-width: 62rem){.toc{padding:var(--space-4);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}}.key-facts th[scope="row"]{width:36%;font-weight:600;color:var(--color-ink);vertical-align:top}@media (max-width: 36rem){.key-facts th[scope="row"]{width:42%}}.answer{padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6);border:1px solid var(--color-accent-line);border-radius:var(--radius-md);background:var(--color-accent-soft)}.answer__label{font:600 var(--text-2xs)/1.3 var(--font-mono);color:var(--color-link);margin-bottom:var(--space-2)}.answer p{color:var(--color-ink)}.author-box{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-4);align-items:start;margin-top:var(--space-7);padding:var(--space-5);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.author-box__mono{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--color-btn-primary);color:var(--color-on-accent);font:650 1rem/1 var(--font-display);letter-spacing:.02em}.author-box__name{font:650 var(--text-base)/1.3 var(--font-display)}.author-box p{font-size:var(--text-sm);color:var(--color-ink-muted)}.cta-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4) var(--space-6);align-items:center;margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-code-bg);color:var(--color-code-ink)}.cta-panel h2{color:#FFFFFF;font-size:var(--text-lg)}.cta-panel p{color:var(--color-code-dim);font-size:var(--text-sm);margin-top:var(--space-1)}.cta-panel .btn--primary{--btn-bg:#FFFFFF;--btn-ink:#0D1230;--btn-border:#FFFFFF}.cta-panel .btn--primary:hover{--btn-bg:#E4E7F3;--btn-border:#E4E7F3}.cta-panel :focus-visible{outline-color:#B9C4FF}@media (max-width: 40rem){.cta-panel{grid-template-columns:minmax(0,1fr)}}.related{margin-top:var(--space-7)}.related h2{font-size:var(--text-lg);margin-bottom:var(--space-3)}.changelog{list-style:none;margin:0;padding:0;display:grid}.release{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:var(--space-5);padding-block:var(--space-5);border-top:1px solid var(--color-rule)}.release:first-child{border-top:0;padding-top:0}.release__meta{display:grid;gap:.35rem;align-content:start}.release__date{font:600 var(--text-sm)/1.3 var(--font-mono);font-variant-numeric:tabular-nums}.release__kind{justify-self:start}.release__body{display:grid;gap:var(--space-2);max-width:var(--measure)}.release__body h2{font-size:var(--text-lg)}.release__body h2 code{font-size:.85em}@media (max-width: 40rem){.release{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}}.tag-kind{display:inline-block;padding:.1rem .45rem;border:1px solid var(--color-rule-strong);border-radius:var(--radius-xs);font:600 var(--text-2xs)/1.5 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted)}.doc .prose>h2{font-size:var(--text-lg);margin-top:var(--space-6)}.doc .prose li::marker{color:var(--color-ink-subtle)}.not-found{padding-block:var(--space-9)}.not-found .wrap{display:grid;gap:var(--space-4);justify-items:start}.not-found__code{font:600 var(--text-sm)/1 var(--font-mono);color:var(--color-ink-subtle);letter-spacing:.08em}.not-found ul{display:grid;gap:var(--space-2)}
