:root{--paper: #ffffff;--paper-w: #fafafb;--ink: #16181b;--ink60: #4a4f57;--ink40: #62676e;--ink4: #eef0f2;--hair: #eceef1;--hair-s: #dcdfe4;--accent: #0f6b5c;--accent-tint-a: 9%;--accent-tint: color-mix(in srgb, var(--accent) var(--accent-tint-a), transparent);--danger: #bf3326;--danger-tint: #fbeae8;--on-accent: #ffffff;--btn-border: #b9bdc3;--scrim: rgba(17, 20, 24, .34);--r-s: 0px;--r-m: 0px;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-data: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--prose: 940px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--paper: #18191d;--paper-w: #191b1e;--ink: #e8e9eb;--ink60: #aeb3ba;--ink40: #9ea3aa;--ink4: #222428;--hair: #232529;--hair-s: #2e3036;--accent: #3fb39a;--accent-tint-a: 16%;--danger: #eb6b5e;--danger-tint: #3a1f1c;--on-accent: #08201a;--btn-border: #4a4e55;--scrim: rgba(0, 0, 0, .62);color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--paper-w);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.data{font-family:var(--font-data);font-size:.88em}h1,h2,h3{line-height:1.25;letter-spacing:-.01em;margin:0 0 .4em}h1{font-size:30px}h2{font-size:20px;margin-top:2.2em}h3{font-size:16px;margin-top:1.6em}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.rail{border-right:1px solid var(--hair);background:var(--paper);padding:20px 0;position:sticky;top:0;height:100vh;overflow-y:auto}.rail__mark{display:block;padding:0 20px 16px;border-bottom:1px solid var(--hair);margin-bottom:12px;color:var(--ink);font-weight:620;letter-spacing:-.015em}.rail__mark span{display:block;font-size:11px;font-weight:500;color:var(--ink40);letter-spacing:.06em;text-transform:uppercase}.rail__group{padding:10px 20px 4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink40)}.rail a{display:block;padding:5px 20px;color:var(--ink60);border-left:2px solid transparent}.rail a:hover{background:var(--ink4);text-decoration:none;color:var(--ink)}.rail a[aria-current=page]{color:var(--accent);border-left-color:var(--accent);background:var(--accent-tint)}main{padding:40px 48px 96px;max-width:none;min-width:0}main :where(.crumb,h1,h2,h3,p,ul,ol,.stats,.grid,.tablewrap,.fulldoc,.note,.live__gap){max-width:var(--prose)}main :where(.live) :where(p,ul,ol){max-width:none}.lede{color:var(--ink60);font-size:17px;max-width:68ch}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:14px;margin:20px 0}.grid--screens{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}.card--screen{padding:16px 18px}.card--screen .card__title{font-size:16px}.card{display:block;background:var(--paper);border:1px solid var(--hair-s);border-radius:var(--r-m);padding:14px 16px;color:var(--ink)}.card:hover{border-color:var(--accent);text-decoration:none}.card__title{font-weight:600;margin-bottom:3px}.card__sub{color:var(--ink60);font-size:13.5px}.card__meta{margin-top:9px;font-size:11px;color:var(--ink40);letter-spacing:.04em;text-transform:uppercase}.pill{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;letter-spacing:.03em;background:var(--accent-tint);color:var(--accent);border:1px solid transparent}.pill--support{background:var(--ink4);color:var(--ink60)}.tablewrap{overflow-x:auto;border:1px solid var(--hair-s);border-radius:var(--r-m);background:var(--paper);margin:12px 0 24px}table{border-collapse:collapse;width:100%;font-size:13.5px;table-layout:fixed}col.c-knob{width:19%}col.c-type{width:23%}col.c-default{width:13%}col.c-doc{width:45%}th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink40);font-weight:500;padding:9px 14px;border-bottom:1px solid var(--hair);white-space:nowrap}td{padding:9px 14px;border-bottom:1px solid var(--hair);vertical-align:top}tr:last-child td{border-bottom:0}td.knob{font-family:var(--font-data);color:var(--ink);overflow-wrap:anywhere}td.type{font-family:var(--font-data);color:var(--accent);overflow-wrap:anywhere}td.doc{color:var(--ink60)}.req{color:var(--danger);font-weight:600}.enums{margin-top:3px;font-size:11.5px;color:var(--ink40)}.crumb{font-size:12px;color:var(--ink40);margin-bottom:6px}.dscontrols{display:flex;gap:18px;flex-wrap:wrap;align-items:center;padding:12px 14px;margin:14px 0;background:var(--paper);border:1px solid var(--hair-s);border-radius:var(--r-m)}.dscontrols label{display:flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink40)}.dscontrols select{font-family:var(--font-data);font-size:12px;text-transform:none;letter-spacing:0;padding:3px 6px;color:var(--ink);background:var(--paper-w);border:1px solid var(--hair-s);border-radius:var(--r-s)}body.has-focus{overflow:hidden}body.has-focus .dscontrols{position:fixed;inset:0 0 auto;z-index:61;margin:0;border-width:0 0 1px;border-radius:0}body.has-focus main>*:not(.live--focused):not(.dscontrols):not([data-role=tdrawer]),body.has-focus .rail{visibility:hidden}.live__gap{font-size:13px;color:var(--ink40);border-left:2px solid var(--hair-s);padding-left:12px;margin:8px 0 20px}.fulldoc{margin:8px 0 14px;font-size:13.5px}.fulldoc summary{cursor:pointer;color:var(--ink40);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.fulldoc p{color:var(--ink60);border-left:1px solid var(--hair-s);padding-left:12px;margin:8px 0 0}code{background:var(--ink4);border-radius:var(--r-s);padding:1px 4px}.spec{font-family:var(--font-data);font-size:12px;color:var(--ink60);background:var(--ink4);border-radius:var(--r-s);padding:2px 6px}.note{border-left:2px solid var(--accent);background:var(--accent-tint);padding:10px 14px;border-radius:0 var(--r-s) var(--r-s) 0;margin:18px 0;color:var(--ink60)}.stats{display:flex;gap:28px;flex-wrap:wrap;margin:22px 0 8px;padding:14px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.stat__n{font-family:var(--font-data);font-size:22px;color:var(--ink)}.stat__l{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink40)}@media(max-width:860px){.shell{grid-template-columns:1fr}.rail{position:static;height:auto;border-right:0;border-bottom:1px solid var(--hair)}main{padding:24px 20px 64px}}.interact{border:1px solid var(--hair-s);border-radius:var(--r-m);background:var(--paper);padding:12px 16px;margin:12px 0;max-width:var(--prose)}.interact__label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.interact__list{margin:0;padding-left:18px;color:var(--ink60);font-size:13.5px}.interact__list li{margin:3px 0}kbd{font-family:var(--font-data);font-size:.85em;padding:1px 5px;color:var(--ink);background:var(--ink4);border:1px solid var(--hair-s);border-radius:var(--r-s)}.themebar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:8px 14px;margin:0 0 18px;background:var(--paper-w);border:1px solid var(--hair-s);border-radius:var(--r-m);position:sticky;top:0;z-index:5}.themebar__label{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink40)}.themebar__ctl{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink40)}.themebar__ctl select{font:inherit;font-size:12px;text-transform:none;letter-spacing:0;padding:3px 6px;color:var(--ink);background:var(--paper);border:1px solid var(--hair-s);border-radius:var(--r-s)}.themebar__btn{font:inherit;font-size:12px;padding:4px 10px;cursor:pointer;color:var(--ink);background:var(--paper);border:1px solid var(--btn-border);border-radius:var(--r-s)}.themebar__btn:hover{border-color:var(--accent)}.themebar__count{display:inline-block;margin-inline-start:6px;padding:0 5px;font-size:11px;color:var(--on-accent);background:var(--accent);border-radius:var(--r-s)}.tdrawer{width:min(680px,94vw);max-height:88vh;padding:0;color:var(--ink);background:var(--paper);border:1px solid var(--hair-s);border-radius:var(--r-m)}.tdrawer::backdrop{background:var(--scrim)}.tdrawer__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--hair-s);position:sticky;top:0;background:var(--paper)}.tdrawer__group,.tdrawer__contrast{padding:14px 18px;border-bottom:1px solid var(--hair)}.tdrawer__grouphead{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink60);cursor:pointer}.tdrawer__n{margin-inline-start:6px;color:var(--ink40)}.tdrawer__sub{margin:4px 0 10px;font-size:12px;line-height:1.45;color:var(--ink40)}.tdrawer__ratios{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px}.ratio{display:flex;align-items:baseline;gap:8px;font-size:12px}.ratio__n{font-family:var(--font-data);color:var(--ink)}.ratio__l{color:var(--ink40)}.ratio--bad .ratio__n{color:var(--danger);font-weight:600}.ratio--bad .ratio__l:after{content:" — fails AA";color:var(--danger)}.tdrawer__presets{display:flex;gap:8px;flex-wrap:wrap}.tdrawer__preset{font:inherit;font-size:12px;padding:5px 12px;cursor:pointer;color:var(--ink);background:var(--paper);border:1px solid var(--btn-border);border-radius:var(--r-s)}.tdrawer__preset:hover{border-color:var(--accent)}.tdrawer__tokens{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2px 18px}.trow{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:3px 0;font-family:var(--font-data);font-size:12px;color:var(--ink60)}.trow--set .trow__name{color:var(--accent);font-weight:600}.trow input[type=color]{width:44px;height:22px;padding:0;background:none;border:1px solid var(--hair-s);border-radius:var(--r-s);cursor:pointer}.trow input[type=number]{width:70px;font:inherit;padding:2px 4px;color:var(--ink);background:var(--paper-w);border:1px solid var(--hair-s);border-radius:var(--r-s)}.trow__reset{font:inherit;font-size:11px;padding:0;cursor:pointer;color:var(--accent);background:none;border:0;border-bottom:1px solid currentcolor}.trow__doc{grid-column:1 / -1;font-family:inherit;font-size:11px;line-height:1.35;color:var(--ink40);margin-block-end:4px}.tdrawer__seed{margin:0 0 10px;padding:10px 12px;overflow-x:auto;font-size:12px;color:var(--ink);background:var(--ink4);border-radius:var(--r-s)}.tdrawer__actions{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:860px){.themebar{position:static}}
