:root{color-scheme:light dark;--paper: #ffffff;--paper-2: #f6f6f4;--paper-3: #eeeeeb;--ink: #16181d;--ink-2: #4b5058;--ink-3: #626873;--line: #e2e3e6;--line-2: #cfd1d6;--accent: #0b57d0;--accent-ink: #ffffff;--accent-soft: #e8f0fe;--pass: #1a7f4b;--pass-soft: #e5f4ea;--fail: #b3261e;--fail-soft: #fbe9e7;--warn: #8a5a00;--warn-soft: #fff3d6;--jade: #0f8a5f;--jade-ink: #0a5c3f;--jade-soft: #e4f4ec;--jade-line: #9dd6bb;--radius: 10px;--radius-sm: 6px;--measure: 62ch;--max: 1120px;--gutter: clamp(16px, 4vw, 40px);--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper: #111318;--paper-2: #171a20;--paper-3: #1f232b;--ink: #eceef2;--ink-2: #b4b9c2;--ink-3: #848a95;--line: #2a2f38;--line-2: #3a404b;--accent: #8ab4f8;--accent-ink: #0b1a33;--accent-soft: #1b2740;--pass: #6fcf97;--pass-soft: #14301f;--fail: #f28b82;--fail-soft: #3a1a17;--warn: #f2c66d;--warn-soft: #3a2c0f;--jade: #4fc79a;--jade-ink: #9fe3c6;--jade-soft: #0f2a20;--jade-line: #1f5c44}}:root[data-theme=dark]{--paper: #111318;--paper-2: #171a20;--paper-3: #1f232b;--ink: #eceef2;--ink-2: #b4b9c2;--ink-3: #848a95;--line: #2a2f38;--line-2: #3a404b;--accent: #8ab4f8;--accent-ink: #0b1a33;--accent-soft: #1b2740;--pass: #6fcf97;--pass-soft: #14301f;--fail: #f28b82;--fail-soft: #3a1a17;--warn: #f2c66d;--warn-soft: #3a2c0f;--jade: #4fc79a;--jade-ink: #9fe3c6;--jade-soft: #0f2a20;--jade-line: #1f5c44}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 var(--font);font-feature-settings:"kern","liga","calt";text-rendering:optimizeLegibility}img,svg,video{max-width:100%;display:block}a{color:var(--accent);text-decoration:none;text-underline-offset:3px}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:600;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere}p,li,dd,dt,figcaption,a,button,th,td,summary{overflow-wrap:anywhere}.btn,.status,.pill{overflow-wrap:normal;white-space:nowrap}.table-scroll{overflow-x:auto;max-width:100%}h1{font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.06}h2{font-size:clamp(1.6rem,2.6vw,2.25rem);line-height:1.15}h3{font-size:1.2rem;line-height:1.3;letter-spacing:-.01em}p{margin:0}p+p{margin-top:.9em}ul,ol{margin:0;padding:0}code,kbd{font-family:var(--mono);font-size:.9em;background:var(--paper-3);padding:.1em .4em;border-radius:4px}pre{margin:0;font-family:var(--mono);font-size:.85rem;line-height:1.5;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;white-space:pre-wrap;overflow-wrap:break-word}@container site (max-width: 600px){pre{font-size:.74rem;padding:12px}}pre code{background:none;padding:0;font-size:inherit}hr{border:0;border-top:1px solid var(--line);margin:0}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--ink-3);font-weight:500;font-size:.85rem}.site-root{container:site / inline-size}.wrap{width:min(var(--max),100% - 2 * var(--gutter));margin-inline:auto}.measure{max-width:var(--measure)}.muted{color:var(--ink-2)}.small{font-size:.92rem}.lede{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5;color:var(--ink-2)}.skip{position:absolute;left:12px;top:-48px;max-width:calc(100% - 24px);background:var(--paper);color:var(--ink);padding:8px 12px;border:1px solid var(--line-2);border-radius:var(--radius-sm);z-index:50}.skip:focus{top:12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink);font:inherit;font-weight:500;line-height:1;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;min-height:44px}.btn:hover{background:var(--paper-2);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(.95)}.status{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;font-size:.85rem;font-weight:500;border:1px solid transparent;white-space:nowrap}.status.pass{color:var(--pass);background:var(--pass-soft)}.status.fail{color:var(--fail);background:var(--fail-soft)}.status.warn{color:var(--warn);background:var(--warn-soft)}.status.neutral{color:var(--ink-2);background:var(--paper-3)}section.band{padding-block:clamp(56px,8vw,104px)}section.band.alt{background:var(--paper-2);border-block:1px solid var(--line)}.section-head{max-width:56ch;margin-bottom:clamp(28px,4vw,48px)}.section-head h2+p{margin-top:12px}.kicker{display:block;font-size:.9rem;color:var(--ink-3);margin-bottom:10px;font-weight:500}.grid{display:grid;gap:clamp(20px,3vw,40px)}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid>*{min-width:0}@container site (max-width: 860px){.grid.two,.grid.three{grid-template-columns:minmax(0,1fr)}}.checklist{list-style:none;display:grid;gap:12px}.checklist li{position:relative;padding-left:28px}.checklist li:before{content:"";position:absolute;left:0;top:.42em;width:16px;height:16px;border-radius:50%;background:var(--pass-soft);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%231a7f4b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E")}.checklist li b{font-weight:600;color:var(--ink)}.tap{display:inline-block;padding-block:4px;min-height:24px}.checklist li span{color:var(--ink-2)}.frame{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper)}.frame img{width:100%;height:auto}.frame figcaption{padding:10px 14px;border-top:1px solid var(--line);color:var(--ink-3);font-size:.85rem}@container site (max-width: 640px){body{font-size:16px}th,td{padding:8px}}
