:root{--paper:#fbfaf5;--ink:#1d2a47;--ink-soft:#56638b;--panel:#2f5a9e;--panel-deep:#24477f;--tint:#edf1f8;--marker:#f0dc7e;--marker-deep:#ebd35f;--marker-ink:#f5e8a8;--olive:#c5c085;--link:#2f5a9e;--link-visited:#7a5cb8;--display:"Bricolage Grotesque", "Avenir Next", "Trebuchet MS", sans-serif;--body:"Instrument Sans", "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "IBM Plex Mono", SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html{background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{color:var(--ink);font-family:var(--body);margin:0;font-size:17.5px;line-height:1.6}::selection{background:var(--marker);color:var(--ink)}a:focus-visible,button:focus-visible{outline:2px solid var(--panel);outline-offset:2px;border-radius:3px}.masthead{border-bottom:1px solid #1d2a4717;justify-content:flex-start;max-width:1020px;margin:0 auto;padding:36px 32px 14px;display:flex}.masthead a{font-family:var(--display);color:var(--ink);align-items:center;gap:15px;font-size:31px;font-weight:700;text-decoration:none;display:inline-flex}.masthead a:visited{color:var(--ink)}.masthead a:hover{color:var(--panel-deep)}.masthead img{width:56px;height:49px;display:block}.page{grid-template-columns:164px minmax(0,68ch);gap:32px;max-width:1020px;margin:0 auto;padding:28px 32px 8px;display:grid}.sidebar{align-self:start;font-size:13px;line-height:1.45;position:sticky;top:28px}.sidebar section{padding:0 0 18px}.files{flex-direction:column;gap:8px;display:flex}.file-btn{background:var(--tint);font-family:var(--mono);color:var(--panel);border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;text-decoration:none;transition:background .15s ease-out;display:flex}.file-btn:visited{color:var(--panel)}.file-btn:hover{color:var(--panel-deep);background:#e2e9f5}.file-btn svg{opacity:.7;flex:none}.copy-btn{background:var(--marker);width:100%;font-family:var(--body);color:var(--ink);text-align:left;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:600;transition:background .15s ease-out;display:flex}.copy-btn:hover,.copy-btn:focus-visible{background:var(--marker-deep)}.copy-btn svg{flex:none}.toc{margin:0;padding:0;list-style:none}.toc a{color:var(--ink-soft);padding:4px 0;font-weight:500;text-decoration:none;display:block}.toc a:hover{color:var(--panel-deep)}.toc a.active{color:var(--panel);font-weight:700}.toc ul{margin:2px 0 8px;padding:0 0 0 12px;font-size:12.5px;list-style:none}.toc ul a{padding:3px 0}main h1{font-family:var(--display);letter-spacing:-.015em;color:var(--panel);text-wrap:balance;margin:0 0 30px;font-size:40px;font-weight:800;line-height:1.12;position:relative}main h1:after{content:"";background:var(--marker);border-radius:5px;width:4.2em;height:10px;position:absolute;bottom:-14px;left:-2px;transform:rotate(-4deg)}.spec-version{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-soft);white-space:nowrap;margin-left:12px;font-size:16px;font-weight:400}main h2{font-family:var(--display);letter-spacing:-.01em;color:var(--panel);text-wrap:balance;margin:56px 0 12px;scroll-margin-top:24px;font-size:26px;font-weight:700;line-height:1.2;position:relative}main h2:after{content:"";background:var(--marker);border-radius:4px;width:2.6em;height:8px;position:absolute;bottom:-10px;left:-2px;transform:rotate(-4deg)}main h2+p,main h2+table,main h2+ul{margin-top:26px}main h3{font-family:var(--display);color:var(--ink);text-wrap:balance;margin:34px 0 8px;scroll-margin-top:24px;font-size:20px;font-weight:600}main p{text-wrap:pretty;margin:0 0 16px}main p[id]{scroll-margin-top:24px}.preamble{color:var(--ink-soft);margin-bottom:8px;font-size:19px;line-height:1.55}main a{color:var(--link);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1.5px}main a:visited{color:var(--link-visited)}main a:hover{color:var(--panel-deep)}main ul{margin:0 0 16px;padding-left:24px}main li{text-wrap:pretty;margin-bottom:8px}main li::marker{color:var(--panel)}main hr{border:0;border-top:1px solid var(--olive);margin:44px 0 20px}main strong{color:var(--panel-deep)}table{border-collapse:separate;border-spacing:0;background:var(--tint);border-radius:10px;width:100%;margin:4px 0 20px;font-size:16px;overflow:hidden}th{text-align:left;color:var(--panel);font-size:14px;font-weight:600}th,td{padding:10px 16px}thead th{padding-top:14px}tbody td{border-top:1px solid #2f5a9e1a}tbody tr:last-child td{padding-bottom:14px}.ps{color:var(--ink-soft);max-width:58ch;margin-top:56px;font-size:15px;line-height:1.6}.ps-rule{border:0;border-top:1px solid var(--olive);margin:40px 0 0}footer{text-align:right;max-width:1020px;color:var(--ink-soft);margin:20px auto 0;padding:0 32px 72px;font-size:13.5px;line-height:1.8}footer a,footer a:visited{color:var(--ink-soft)}@media (width<=780px){.masthead{padding:24px 20px 6px}.masthead a{gap:11px;font-size:24px}.masthead img{width:44px;height:39px}.page{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px 20px 8px}footer{padding:0 20px 56px}.sidebar{position:static}.sidebar section{padding:0 0 8px}.toc{display:none}.files{flex-direction:row}.copy-btn{width:auto}main h1{font-size:32px}}@media print{.sidebar{display:none}.page{grid-template-columns:1fr}main h1:after,main h2:after{display:none}}@media (prefers-reduced-motion:reduce){.copy-btn,.file-btn{transition:none}}
