.prose{color:var(--ink-2);font-size:1.06rem;line-height:1.75}.prose>*{margin-block:0}.prose>*+*{margin-top:1.1em}.prose h2{letter-spacing:-.03em;color:var(--ink);margin-top:2.2em;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.15}.prose h3{color:var(--ink);margin-top:1.8em;font-size:1.2rem}.prose h2+*,.prose h3+*{margin-top:.7em}.prose strong{color:var(--ink)}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--accent)}.prose code{font-family:var(--mono);background:var(--code-bg);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:.1em .35em;font-size:.86em}.prose pre{font-family:var(--mono);border:1px solid var(--rule);border-radius:12px;padding:18px 20px;font-size:.9rem;overflow-x:auto;background:var(--code-bg)!important}.prose pre code{background:0 0;border:0;padding:0}.prose blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink);font-family:var(--display);letter-spacing:-.01em;border-radius:0 12px 12px 0;margin-inline:0;padding:14px 20px;font-size:1.15rem;font-weight:700}.prose blockquote p{margin:0}.prose blockquote+blockquote{margin-top:10px}.prose table{border-collapse:separate;border-spacing:0;background:var(--card);border:1px solid var(--rule);border-radius:14px;width:100%;font-size:.96rem;overflow:hidden}@media (width<=640px){.prose table{display:block;overflow-x:auto}}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:12px 16px}.prose thead th{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);background:var(--paper);font-size:.72rem;font-weight:500}.prose thead:not(:has(th:not(:empty))){display:none}.prose th[align=center],.prose td[align=center]{text-align:center}.prose tr:last-child td{border-bottom:0}.prose td:first-child{color:var(--ink);font-weight:600}.prose .pill{vertical-align:.05em}.media{margin:2em 0 0}.media img,.media__ratio{border-radius:var(--radius);border:1px solid var(--rule);background:var(--card);width:100%;box-shadow:var(--shadow)}.media__ratio{aspect-ratio:16/9;position:relative;overflow:hidden}.media__ratio iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.media figcaption{color:var(--ink-3);text-align:center;margin-top:10px;font-size:.88rem}.media+*{margin-top:2em}.prose [id]{scroll-margin-top:90px}.prose ol{counter-reset:step;padding-left:0;list-style:none}.prose ol>li{counter-increment:step;padding-left:44px;position:relative}.prose ol>li+li{margin-top:14px}.prose ol>li:before{content:counter(step);background:var(--accent-soft);width:28px;height:28px;color:var(--accent);font-family:var(--mono);border-radius:50%;place-items:center;font-size:.8rem;font-weight:600;display:grid;position:absolute;top:.1em;left:0}.prose .step-check{padding:14px 20px;font-size:.98rem}.prose .step-check>*{margin:0}.callout{border:1px solid var(--rule);background:var(--card);border-radius:14px;gap:12px;padding:16px 18px;font-size:.98rem;line-height:1.6;display:flex}.callout__label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;flex:none;min-width:64px;padding-top:.25em;font-size:.7rem;font-weight:600}.callout>div>*{margin:0}.callout>div>*+*{margin-top:.6em}.callout--note{border-color:#cfd2fb;border-left-color:var(--accent);box-shadow:inset 2px 0 0 var(--accent);background:#f4f5ff}.callout--note .callout__label{color:var(--accent)}.callout--tip{border-color:#bfe8cd;border-left-color:var(--st-approved);box-shadow:inset 2px 0 0 var(--st-approved);background:#f1fbf4}.callout--tip .callout__label{color:var(--st-approved)}.callout--warning{border-color:#f6d9a8;border-left-color:var(--st-stale);box-shadow:inset 2px 0 0 var(--st-stale);background:#fffaf0}.callout--warning .callout__label{color:var(--st-stale)}.prose .sources{color:var(--ink-3);font-size:.9rem}.prose .sources ol{counter-reset:src;padding-left:0;list-style:none}.prose .sources li{counter-increment:src;scroll-margin-top:calc(var(--header) + 24px);padding-left:2.2em;position:relative}.prose .sources li:before{content:counter(src);background:var(--accent-soft);min-width:1.5em;color:var(--accent);font:600 .72rem/1.4 var(--mono);text-align:center;border-radius:5px;padding:1px 4px;position:absolute;top:.15em;left:0}.prose .sources li:target{color:var(--ink)}.prose sup.cite{font-size:inherit;vertical-align:.5em;margin-left:2px;line-height:0}.prose sup.cite a{background:var(--accent-soft);min-width:1.45em;color:var(--accent);font:600 .68rem/1.35 var(--mono);text-align:center;border-radius:5px;padding:1px 4px;text-decoration:none;display:inline-block}.prose sup.cite a:hover{background:var(--accent);color:#fff}.prose sup.cite+sup.cite{margin-left:1px}.prose .demo__steps>li{padding-left:0}.prose .demo__steps>li:before{content:none}.prose .qs-map{margin-block:8px}.prose .qs-map .frame__body{padding:0;overflow-x:auto}.prose .qs-map table{border:0;border-radius:0;min-width:640px;font-size:.88rem;display:table}.prose .qs-map td,.prose .qs-map th{padding:10px 14px}.prose .qs-map code{white-space:nowrap}.qs-map__sum{border-top:1px solid var(--rule);color:var(--ink-3);margin:0;padding:12px 14px;font-size:.86rem}.qs-map__sum b{color:var(--ink)}.prose figure.frame{margin-block:12px 28px}.prose .frame__body>:first-child{margin-top:0}.prose .frame__body p{margin:0}.mock{gap:14px;font-size:.94rem;display:grid}.mock__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;font-weight:600;display:flex}.mock__who{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-3);margin-bottom:4px;font-size:.72rem;display:block}.mock__box{border:1px solid var(--rule);background:var(--code-bg);border-radius:10px;padding:12px 14px}.mock__box--answer{background:#f1fbf4;border-color:#bfe8cd}.mock__box--warn{background:#fffaf0;border-color:#f6d9a8}.mock__chips{flex-wrap:wrap;gap:8px;display:flex}.mock__list{gap:0;margin:0;padding:0;list-style:none;display:grid}.prose .mock__list>li{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin:0;padding:10px 0;display:flex}.prose .mock__list>li:first-child{border-top:0;padding-top:0}.prose .mock__list>li:before{content:none}.mock__meta{color:var(--ink-3);font-size:.84rem}.rule-preview{gap:10px;font-size:.94rem;display:grid}.rule-preview b{min-width:52px;display:inline-block}.rule-preview__act{gap:8px;padding-top:4px;display:flex}.prose .whatwhy{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}@media (width<=760px){.prose .whatwhy{grid-template-columns:1fr}}.prose .whatwhy>li{background:var(--card);border:1px solid var(--rule);border-radius:14px;align-content:start;gap:10px;margin:0;padding:16px;display:grid}.prose .whatwhy>li:before{content:none}.whatwhy__src{font-family:var(--mono);color:var(--ink-3);font-size:.72rem}.whatwhy__rule{color:var(--ink);font-weight:600;line-height:1.4}.whatwhy__why{border-top:1px dashed var(--rule-strong);color:var(--ink-3);align-items:center;gap:8px;padding-top:10px;font-size:.88rem;display:flex}.whatwhy__cap{color:var(--ink-3);margin-top:12px;font-size:.94rem}.prose a:not(.btn):not(sup a){transition:color .15s,text-decoration-thickness .15s,text-underline-offset .15s}.prose a[href^=\/]:not(.btn):hover,.prose a[href^=\#]:not(.btn):not(sup a):hover{text-underline-offset:4px;text-decoration-thickness:2px}.prose a[target=_blank]:not(.btn){position:relative}.prose a[target=_blank]:not(.btn):after{content:"↗";opacity:0;pointer-events:none;font-size:.72em;line-height:1;transition:opacity .2s,transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:.45em;right:-.95em;transform:translate(-4px,4px)}.prose a[target=_blank]:not(.btn):hover:after{opacity:1;transform:none}
