:root{--bg: #080a0c;--el: #0e1114;--el2: #14181c;--bd: #232a31;--bd2: #323b44;--tx: #f2f4f5;--tx2: #a7b0b8;--tx3: #8d969e;--gold: #d6a94e;--gold-ink: #14110a;--cu: #c8814a;--cy: #65c8d0;--ok: #7dc98a;--warn: #e6a05e;--err: #e5736a;--fn: #8fb2f7;--gold-soft: rgba(214,169,78,0.12);--cy-soft: rgba(101,200,208,0.1);--ok-soft: rgba(125,201,138,0.1);--shadow: 0 30px 80px -40px rgba(0,0,0,0.8);--font: ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono: ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace;color-scheme: dark}@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){--bg: #f7f6f2;--el: #ffffff;--el2: #efede6;--bd: #dedad0;--bd2: #c8c3b5;--tx: #14181b;--tx2: #4a535b;--tx3: #5c656d;--gold: #7b5709;--gold-ink: #ffffff;--cu: #8a4a17;--cy: #0b646e;--ok: #2a6d35;--warn: #9a4605;--err: #a3201a;--fn: #2250b8;--gold-soft: rgba(123,87,9,0.09);--cy-soft: rgba(11,100,110,0.08);--ok-soft: rgba(42,109,53,0.08);--shadow: 0 30px 70px -45px rgba(40,30,10,0.35);color-scheme: light}}:root[data-theme="light"]{--bg: #f7f6f2;--el: #ffffff;--el2: #efede6;--bd: #dedad0;--bd2: #c8c3b5;--tx: #14181b;--tx2: #4a535b;--tx3: #5c656d;--gold: #7b5709;--gold-ink: #ffffff;--cu: #8a4a17;--cy: #0b646e;--ok: #2a6d35;--warn: #9a4605;--err: #a3201a;--fn: #2250b8;--gold-soft: rgba(123,87,9,0.09);--cy-soft: rgba(11,100,110,0.08);--ok-soft: rgba(42,109,53,0.08);--shadow: 0 30px 70px -45px rgba(40,30,10,0.35);color-scheme: light}*,*::before,*::after{box-sizing: border-box}*{margin: 0}html{-webkit-text-size-adjust: 100%;scroll-padding-top: 76px}body{background: var(--bg);color: var(--tx);font: 400 1rem/1.65 var(--font);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;min-height: 100vh;display: flex;flex-direction: column}main{flex: 1 0 auto}a{color: var(--tx);text-decoration-color: var(--bd2);text-underline-offset: 3px;text-decoration-thickness: 1px}a:hover{text-decoration-color: var(--gold)}code,kbd,samp,.mono{font-family: var(--mono);font-size: 0.92em}code{background: var(--el2);border: 1px solid var(--bd);border-radius: 5px;padding: 0.05em 0.4em}:focus-visible{outline: 2px solid var(--gold);outline-offset: 3px;border-radius: 4px}::selection{background: var(--gold);color: var(--gold-ink)}img,svg{max-width: 100%}.skip{position: absolute;left: 12px;top: -80px;z-index: 300;background: var(--tx);color: var(--bg);padding: 10px 16px;border-radius: 8px;font-size: 0.9rem}.skip:focus{top: 12px}.wrap{width: 100%;max-width: 1120px;margin: 0 auto;padding: 0 clamp(18px,4vw,40px)}.prose{max-width: 720px}.site-header{position: sticky;top: 0;z-index: 100;background: color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter: blur(12px);backdrop-filter: blur(12px);border-bottom: 1px solid var(--bd)}.bar{display: flex;align-items: center;gap: clamp(12px,2vw,28px);min-height: 62px}.logo{display: inline-flex;align-items: center;gap: 10px;font-weight: 600;letter-spacing: 0.2em;font-size: 0.85rem;text-decoration: none}.logo svg{width: 26px;height: 26px}.logo .dot{fill: var(--gold)}.logo .cup{fill: none;stroke: currentColor;stroke-width: 1.7;stroke-linejoin: round}.primary{margin-left: auto}.primary ul{list-style: none;padding: 0;display: flex;flex-wrap: wrap;gap: 2px clamp(10px,1.6vw,22px)}.primary a{display: inline-block;padding: 8px 2px;font-size: 0.9rem;color: var(--tx2);text-decoration: none;border-bottom: 1px solid transparent}.primary a:hover{color: var(--tx)}.primary a[aria-current="page"]{color: var(--tx);border-bottom-color: var(--gold)}.tools{display: flex;gap: 8px;align-items: center}.ib{display: inline-flex;align-items: center;justify-content: center;min-width: 40px;height: 40px;padding: 0 10px;border: 1px solid var(--bd);border-radius: 9px;background: none;color: var(--tx2);font: inherit;font-size: 0.85rem;cursor: pointer}.ib:hover{color: var(--tx);border-color: var(--bd2);background: var(--el)}.ib svg{width: 18px;height: 18px;fill: none;stroke: currentColor;stroke-width: 1.6;stroke-linecap: round;stroke-linejoin: round}.menu-btn{display: none}h1,h2,h3,h4{font-weight: 650;letter-spacing: -0.025em;line-height: 1.12;color: var(--tx)}h1{font-size: clamp(2.1rem,5vw + 0.4rem,3.6rem);letter-spacing: -0.04em}h2{font-size: clamp(1.5rem,2.4vw + 0.7rem,2.1rem);margin-top: clamp(40px,6vw,72px);margin-bottom: 14px;scroll-margin-top: 80px}h3{font-size: 1.15rem;margin-top: 28px;margin-bottom: 8px}p,ul,ol,dl{margin-top: 12px;color: var(--tx2)}p:first-child,h2:first-child{margin-top: 0}li{margin-top: 6px}ul,ol{padding-left: 1.3em}strong{color: var(--tx);font-weight: 600}.lead{font-size: clamp(1.05rem,0.6vw + 0.95rem,1.25rem);color: var(--tx2);max-width: 60ch;margin-top: 18px}.eyebrow{font-family: var(--mono);font-size: 0.72rem;letter-spacing: 0.14em;text-transform: uppercase;color: var(--gold);font-weight: 500}.muted{color: var(--tx3)}.small{font-size: 0.88rem}.page{padding: clamp(36px,6vw,76px) 0 clamp(56px,8vw,110px)}.page > .wrap > header h1{margin-top: 10px}.crumbs{font-size: 0.85rem;color: var(--tx3);margin-bottom: 18px}.crumbs a{color: var(--tx2)}.claim{color: inherit}.callout{margin-top: 20px;padding: 16px 18px;border: 1px solid var(--bd2);border-left: 3px solid var(--gold);background: var(--el);border-radius: 10px;color: var(--tx2)}.callout p:first-child,.callout :first-child{margin-top: 0}.callout strong{color: var(--tx)}.callout.plain{border-left-color: var(--bd2)}.st{display: inline-flex;align-items: center;font-family: var(--mono);font-size: 0.68rem;letter-spacing: 0.1em;text-transform: uppercase;padding: 2px 8px;border-radius: 6px;border: 1px solid var(--bd2);color: var(--tx2);white-space: nowrap;line-height: 1.6}.st-VERIFIED{color: var(--ok);border-color: color-mix(in srgb,var(--ok) 50%,transparent);background: var(--ok-soft)}.st-IMPLEMENTED{color: var(--cy);border-color: color-mix(in srgb,var(--cy) 50%,transparent);background: var(--cy-soft)}.st-PREVIEW{color: var(--fn);border-color: color-mix(in srgb,var(--fn) 50%,transparent)}.st-PLANNED{color: var(--gold);border-color: color-mix(in srgb,var(--gold) 50%,transparent);background: var(--gold-soft)}.st-EXPERIMENTAL{color: var(--warn);border-color: color-mix(in srgb,var(--warn) 50%,transparent)}.st-OUTSIDE{color: var(--tx3);border-style: dashed}.st-ERROR{color: var(--err);border-color: color-mix(in srgb,var(--err) 50%,transparent)}.st-WARNING{color: var(--warn);border-color: color-mix(in srgb,var(--warn) 50%,transparent)}.st-HINT{color: var(--cy);border-color: color-mix(in srgb,var(--cy) 50%,transparent)}.hero{padding: clamp(44px,8vw,104px) 0 clamp(40px,6vw,80px);border-bottom: 1px solid var(--bd);background: radial-gradient(ellipse 70% 60% at 85% 0%,var(--gold-soft),transparent 70%)}.hero-grid{display: grid;grid-template-columns: minmax(0,1.05fr) minmax(0,0.95fr);gap: clamp(28px,5vw,72px);align-items: center}.hero h1 em{font-style: normal;color: var(--gold)}.btns{display: flex;gap: 10px;flex-wrap: wrap;margin-top: 28px}.btn{display: inline-flex;align-items: center;min-height: 44px;padding: 0 20px;border-radius: 10px;border: 1px solid var(--bd2);text-decoration: none;font-weight: 500;font-size: 0.95rem}.btn:hover{border-color: var(--tx3)}.btn.primary-btn{background: var(--gold);color: var(--gold-ink);border-color: var(--gold)}.btn.primary-btn:hover{filter: brightness(1.08)}.ribbon{list-style: none;padding: 0;margin-top: 30px;display: grid;gap: 8px}.ribbon li{margin: 0;display: flex;gap: 12px;align-items: baseline;font-size: 0.93rem;color: var(--tx2)}.ribbon .st{flex: none}.figure{border: 1px solid var(--bd2);border-radius: 14px;background: var(--el);box-shadow: var(--shadow);padding: clamp(14px,2.2vw,26px)}.page .figure,.band .figure{margin-top: 24px}.figure figcaption{margin-top: 12px;font-size: 0.85rem;color: var(--tx3)}.pipe{width: 100%;height: auto;display: block}.pipe .box{fill: var(--el2);stroke: var(--bd2);stroke-width: 1.2}.pipe .box-hot{fill: var(--gold-soft);stroke: var(--gold);stroke-width: 1.2}.pipe .box-sand{fill: none;stroke: var(--cy);stroke-width: 1.2;stroke-dasharray: 5 4}.pipe .lbl{fill: var(--tx);font: 600 12px var(--mono);letter-spacing: 0.04em}.pipe .sub{fill: var(--tx2);font: 400 11.5px var(--font)}.pipe .cap{fill: var(--tx3);font: 500 10.5px var(--mono);letter-spacing: 0.12em;text-transform: uppercase}.pipe .arrow{stroke: var(--gold);stroke-width: 1.6;fill: none}.pipe .head{fill: var(--gold)}.grid{display: grid;gap: 14px;margin-top: 22px}.grid.c2{grid-template-columns: repeat(2,minmax(0,1fr))}.grid.c3{grid-template-columns: repeat(3,minmax(0,1fr))}.card{border: 1px solid var(--bd);background: var(--el);border-radius: 12px;padding: 20px 22px}.card h2,.card h3{margin-top: 0;font-size: 1.15rem}.card p{font-size: 0.95rem}.card .st{margin-top: 12px}a.card{text-decoration: none;display: block}a.card:hover{border-color: var(--bd2)}.band{padding: clamp(30px,5vw,56px) 0}.band + .band{border-top: 1px solid var(--bd)}.tw{overflow-x: auto;margin-top: 18px;border: 1px solid var(--bd);border-radius: 12px;background: var(--el)}.tw:focus-visible{outline-offset: 0}table{border-collapse: collapse;width: 100%;min-width: 540px;font-size: 0.92rem}caption{text-align: left;padding: 14px 16px 6px;color: var(--tx3);font-size: 0.85rem}th,td{text-align: left;padding: 11px 16px;border-top: 1px solid var(--bd);vertical-align: top;color: var(--tx2)}thead th{border-top: 0;font-family: var(--mono);font-size: 0.7rem;letter-spacing: 0.1em;text-transform: uppercase;color: var(--tx3);font-weight: 500;white-space: nowrap}tbody th{color: var(--tx);font-weight: 600}td.num,th.num{text-align: right;font-variant-numeric: tabular-nums}.bar-cell{min-width: 150px}.stack{display: block;width: 100%;height: 12px}.stack .s-VERIFIED{fill: var(--ok)}.stack .s-IMPLEMENTED{fill: var(--cy)}.stack .s-PLANNED{fill: var(--gold)}.stack .s-OUTSIDE{fill: var(--bd2)}.legend{display: grid;gap: 10px;margin-top: 16px}.legend > div{display: grid;grid-template-columns: 150px minmax(0,1fr);gap: 12px;align-items: baseline}.legend dt{margin: 0}.legend dd{margin: 0;color: var(--tx2)}.filter{margin-top: 18px;display: flex;gap: 10px;align-items: center;flex-wrap: wrap}.filter label{color: var(--tx3);font-size: 0.88rem}.filter input{height: 42px;min-width: min(100%,280px);padding: 0 14px;border-radius: 9px;border: 1px solid var(--bd2);background: var(--el);color: var(--tx);font: inherit}.ec{font-family: var(--mono);font-size: 0.88rem;background: none;border: 0;padding: 0;color: var(--tx)}.template{font-family: var(--mono);font-size: 0.9rem;background: var(--el);border: 1px solid var(--bd2);border-radius: 10px;padding: 14px 16px;color: var(--tx);overflow-wrap: anywhere;margin-top: 12px}.ph{color: var(--cy)}.defs{display: grid;grid-template-columns: 160px minmax(0,1fr);gap: 8px 18px;margin-top: 18px}.defs dt{color: var(--tx3);font-size: 0.85rem;margin: 0}.defs dd{margin: 0;color: var(--tx)}.site-footer{border-top: 1px solid var(--bd);padding: 40px 0 34px;margin-top: auto;color: var(--tx3);font-size: 0.9rem}.fgrid{display: grid;grid-template-columns: 1.4fr 1fr 1fr 1fr;gap: 28px}.site-footer h2{font-family: var(--mono);font-size: 0.7rem;letter-spacing: 0.14em;text-transform: uppercase;color: var(--tx3);font-weight: 500;margin: 0 0 12px}.site-footer ul{list-style: none;padding: 0}.site-footer li{margin-top: 7px}.site-footer a{color: var(--tx2)}.site-footer p{color: var(--tx3);max-width: 38ch}.fine{margin-top: 28px;padding-top: 18px;border-top: 1px solid var(--bd);display: flex;flex-wrap: wrap;gap: 6px 22px}.pipe-narrow{display: none;max-width: 340px;margin: 0 auto}@media (max-width: 760px){.pipe-wide{display: none}.pipe-narrow{display: block}}.js-only{display: none}.js .js-only{display: flex}@media (max-width: 900px){.hero-grid,.grid.c2,.grid.c3{grid-template-columns: minmax(0,1fr)}.fgrid{grid-template-columns: repeat(2,minmax(0,1fr))}.fgrid > :first-child{grid-column: 1 / -1}.legend > div,.defs{grid-template-columns: minmax(0,1fr);gap: 2px}.js .menu-btn{display: inline-flex}.js .primary{display: none;position: absolute;left: 0;right: 0;top: 100%;background: var(--bg);border-bottom: 1px solid var(--bd);padding: 8px clamp(18px,4vw,40px) 16px;margin: 0}.js .primary.open{display: block}.js .primary ul{flex-direction: column}.js .primary a{padding: 12px 0;font-size: 1rem;width: 100%;border-bottom: 1px solid var(--bd)}.bar{flex-wrap: wrap;padding-top: 6px;padding-bottom: 6px}.primary{width: 100%;margin-left: 0;order: 3}.tools{margin-left: auto}}@media (prefers-reduced-motion: reduce){*{animation: none !important;transition: none !important;scroll-behavior: auto !important}}@media print{.site-header,.site-footer,.skip,.tools{display: none}body{background: #fff;color: #000}}.code-box{margin-top: 16px;border: 1px solid var(--bd2);border-radius: 10px;background: var(--el);overflow: hidden}.code-head{display: flex;align-items: center;justify-content: space-between;gap: 12px;padding: 6px 8px 6px 14px;border-bottom: 1px solid var(--bd)}.ib.copy{width: auto;min-width: 44px;min-height: 36px;padding: 0 12px;font-size: 0.85rem}pre.code{margin: 0;padding: 14px 16px;overflow-x: auto;max-width: 100%}pre.code:focus-visible{outline-offset: -3px}pre.code code{display: block;background: none;border: 0;padding: 0;font-size: 0.84rem;line-height: 1.55;white-space: pre;color: var(--tx)}.sample{margin-top: 40px;padding-top: 8px;border-top: 1px solid var(--bd)}.toc ol{margin: 12px 0 0;padding-left: 1.4em;columns: 2 220px}.toc li{break-inside: avoid;margin: 2px 0}.fam{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 28px;margin-top:26px;padding-top:18px;border-top:1px solid rgba(128,128,128,.28);font-size:13.5px;line-height:1.5}.fam .fam-l,.fam .fam-t{margin:0;max-width:none}.fam .fam-t{opacity:.72}.fam .fam-h{font-weight:700;color:inherit;text-decoration:none;border-bottom:1px solid currentColor}.fam .fam-ul{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0;padding:0;list-style:none}.fam .fam-ul li{margin:0;padding:0}.fam .fam-ul a{display:inline;padding:0;color:inherit;opacity:.72;text-decoration:none}.fam .fam-ul a:hover{opacity:1;text-decoration:underline}