:root{--cream: #faf6ec;--cream-panel: #fbf8ef;--lav: #eceaf7;--lav-panel: #efedf8;--lav-bar: #e6e3f4;--ink: #2c2b4d;--prose: #4a4868;--muted: #6c6a92;--faint: #8d8aa8;--violet: #8b86d6;--violet-light: #c5c2ec;--teal: #3fa39d;--coral: #df8567;--rule-cream: #e6e0cf;--rule-lav: #ddd9ef;--shadow: 0 18px 50px -24px rgba(44, 43, 77, 0.45);--font-head: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;--font-body: "Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;--font-doc: "Sora", "Helvetica Neue", Arial, sans-serif;--font-mono: "Space Mono", ui-monospace, "SF Mono", Menlo, monospace;--measure: 760px;--wide: 1180px;--gutter: 24px;--radius: 5px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:17.5px;line-height:1.7;color:var(--prose);background:var(--cream)}img,svg{max-width:100%}a{color:var(--ink);text-decoration-color:var(--violet);text-underline-offset:3px}a:hover{color:var(--violet)}h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);font-weight:600;line-height:1.15;margin:2.2em 0 .6em}h1{font-size:44px;letter-spacing:-1px;margin-top:0}h2{font-size:28px;letter-spacing:-0.4px}h3{font-size:21px;letter-spacing:-0.2px}p,ul,ol{margin:0 0 1.1em}code{font-family:var(--font-mono);font-size:.88em;background:rgba(139,134,214,.1);padding:.12em .38em;border-radius:3px}pre{font-family:var(--font-mono);font-size:14.5px;line-height:1.6;background:var(--cream-panel);border:1px solid var(--rule-cream);border-radius:var(--radius);padding:16px 18px;overflow-x:auto}pre code{background:none;padding:0}table{width:100%;border-collapse:collapse;font-size:16.5px;margin:0 0 1.4em}table th,table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--rule-cream)}table th{font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:400}.scroll-x{overflow-x:auto}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--teal);margin:0 0 10px}.eyebrow--violet{color:var(--violet)}.frame{max-width:var(--wide);margin:0 auto;padding-inline:var(--gutter)}.measure{max-width:var(--measure)}.lede{font-size:20px;line-height:1.6;color:var(--muted)}.site-header{border-bottom:1px solid var(--rule-cream)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;height:64px}.site-header__brand{display:flex;align-items:center;gap:11px;font-family:var(--font-head);font-weight:600;font-size:15px;letter-spacing:3px;text-transform:uppercase;color:var(--ink);text-decoration:none}.site-header__tag{font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--faint);padding-left:12px;border-left:1px solid var(--rule-cream)}@media(max-width: 900px){.site-header__tag{display:none}}.site-header__nav{display:flex;gap:22px;font-family:var(--font-head);font-size:14px}.site-header__nav a{color:var(--faint);text-decoration:none}.site-header__nav a[aria-current=page]{color:var(--ink);font-weight:500}.site-header__nav a:hover{color:var(--violet)}.mark{width:20px;height:20px;flex:none;animation:mark-spin 18s linear infinite}@keyframes mark-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.mark{animation:none}}.site-footer{margin-top:90px;border-top:1px solid var(--rule-cream);padding-block:26px 40px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--faint)}.site-footer__inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.howto{margin:22px 0 0;max-width:620px}.howto__lead{font-size:15px;line-height:1.5;color:var(--muted);margin:0 0 8px}.howto__say{font-family:var(--font-mono);font-size:13.5px;line-height:1.6;color:var(--ink);background:rgba(139,134,214,.09);border-left:2px solid var(--violet);border-radius:0 3px 3px 0;padding:11px 14px;margin:0}.page{padding-block:56px}.hero{position:relative;overflow:hidden;background:var(--cream-panel);border:1px solid var(--rule-cream);border-radius:var(--radius);box-shadow:var(--shadow);padding:54px 48px 58px;margin-bottom:64px}.hero__art{position:absolute;inset:0 -10% 0 auto;width:62%;pointer-events:none}@media(max-width: 900px){.hero__art{opacity:.35;width:100%;inset:0}}.hero__body{position:relative;max-width:560px}.hero h1{margin-bottom:18px}@media(max-width: 900px){.hero{padding:36px 24px 40px}}.hero__rule{display:block;margin:26px 0 10px}.pull{font-family:var(--font-head);font-style:italic;font-weight:500;font-size:21px;line-height:1.35;color:var(--ink);margin:0}.band{margin-bottom:64px}.band__head{margin-bottom:24px}.band h2{margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:20px}.card{position:relative;display:flex;flex-direction:column;background:var(--cream-panel);border:1px solid var(--rule-cream);border-radius:4px;padding:24px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}.card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.card__glyph{width:44px;height:44px;flex:none}.card__title{font-family:var(--font-head);font-size:23px;font-weight:600;line-height:1.15;color:var(--ink);margin:0 0 10px}.card__text{font-size:15.5px;line-height:1.6;color:var(--muted);margin:0}.card__foot{margin-top:auto;padding-top:18px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--violet)}a.card:hover{border-color:var(--violet);transform:translateY(-2px)}.chip{font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;border:1px solid currentColor;border-radius:999px;padding:3px 9px;white-space:nowrap;color:var(--teal)}.chip--coming{color:var(--coral)}.doc-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule-cream)}.doc-list li{border-bottom:1px solid var(--rule-cream)}.doc-list a{display:block;padding:22px 8px;text-decoration:none;transition:background .12s}.doc-list a:hover{background:var(--cream-panel)}.doc-list a:hover .doc-list__name{color:var(--violet)}.doc-list__name{display:block;font-family:var(--font-mono);font-size:18px;font-weight:700;letter-spacing:-0.2px;color:var(--ink);margin-bottom:7px}.doc-list__summary{display:block;font-size:17px;line-height:1.55;color:var(--muted);max-width:720px}@media(max-width: 900px){.doc-list a{padding:18px 4px}.doc-list__name{font-size:16px}.doc-list__summary{font-size:15.5px}}.band__note{margin:10px 0 0;font-size:16px;color:var(--muted)}.band__note a{color:var(--violet)}.hero__repo{margin:18px 0 0;font-family:var(--font-mono);font-size:13px;letter-spacing:.5px}.hero__repo a{color:var(--violet);text-decoration:none}.hero__repo a:hover{text-decoration:underline}.page .doc-manual{border-color:var(--rule-cream);background:var(--cream-panel)}.page .doc-manual .doc-manual__text{font-family:var(--font-body)}.pending{border-left:2px solid var(--coral);padding-left:16px;color:var(--muted);margin:0}.chip--draft{color:var(--coral);font-size:9.5px;padding:2px 7px;vertical-align:middle;margin-left:8px}.tiles{display:grid;grid-template-columns:repeat(auto-fill, minmax(310px, 1fr));gap:14px}.tile{display:block;background:var(--cream-panel);border:1px solid var(--rule-cream);border-radius:4px;padding:20px 20px 22px;text-decoration:none;transition:border-color .15s,transform .15s}.tile:hover{border-color:var(--violet);transform:translateY(-2px)}.tile:hover .tile__name{color:var(--violet)}.tile__name{font-family:var(--font-mono);font-size:16px;font-weight:700;letter-spacing:-0.2px;color:var(--ink)}.tile__summary{display:block;margin-top:9px;font-size:15px;line-height:1.5;color:var(--muted)}.tile .chip{margin-left:8px;vertical-align:2px}.chip--start{color:var(--teal)}.page-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;padding-bottom:20px;margin-bottom:30px;border-bottom:1px solid var(--rule-cream)}.page-head__name{margin:0;font-size:34px;letter-spacing:-0.8px}.page-head__repo{margin-left:auto;font-family:var(--font-mono);font-size:13px;letter-spacing:.5px;color:var(--violet);text-decoration:none}.page-head__repo:hover{text-decoration:underline}@media(max-width: 900px){.page-head{gap:8px}.page-head__name{font-size:28px}.page-head__repo{margin-left:0;flex-basis:100%}}.page-head__lede{margin:0 0 44px}.layout-doc{background:var(--lav);min-height:100vh}.layout-doc a{text-decoration-color:var(--violet)}.layout-doc pre{background:var(--lav-panel);border-color:var(--rule-lav)}.layout-doc table th,.layout-doc table td{border-bottom-color:var(--rule-lav)}.doc-bar{background:var(--lav-bar);border-bottom:1px solid var(--rule-lav)}.doc-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:54px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--muted)}.doc-bar__crumbs{display:flex;align-items:center;gap:8px;min-width:0}.doc-bar__crumbs a{color:var(--muted);text-decoration:none}.doc-bar__crumbs a:hover{color:var(--violet)}.doc-bar__crumbs strong{color:var(--ink);font-weight:700}.doc-bar__meta{color:var(--faint);white-space:nowrap}@media(max-width: 900px){.doc-bar__meta{display:none}}.doc{display:grid;grid-template-columns:96px minmax(0, 1fr) 308px;max-width:var(--wide);margin:0 auto;align-items:stretch}.doc--nonotes{grid-template-columns:96px minmax(0, 1fr)}.doc>.doc__rail{grid-row:1/-1}.doc>.doc__notes{grid-row:1/-1;grid-column:3}.doc>.doc__body{grid-column:2;grid-row:1}.doc>.doc-seq{grid-column:2;grid-row:2}@media(max-width: 900px){.doc{display:block;padding-inline:var(--gutter)}}.doc__rail{border-right:1px solid var(--rule-lav);background:var(--lav-panel);display:flex;justify-content:center;align-items:flex-start;padding-block:18px}.doc__rail img{width:auto;height:min(560px,100vh - 120px);position:sticky;top:18px}@media(max-width: 900px){.doc__rail{display:none}}.doc__body{padding:38px 44px 60px;font-family:var(--font-doc);font-size:17px}.doc__body>*{max-width:var(--measure)}.doc__body h1{font-family:var(--font-doc);font-size:33px;letter-spacing:-0.5px}.doc__body h2{font-family:var(--font-doc);font-size:23px}.doc__body h3{font-family:var(--font-doc);font-size:19px}@media(max-width: 900px){.doc__body{padding:30px 0 40px}}.doc__sub{font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--muted);margin:-6px 0 28px}.doc__notes{border-left:1px dashed var(--violet-light);background:var(--lav-panel);padding:38px 26px}@media(max-width: 900px){.doc__notes{border-left:0;border-top:1px dashed var(--violet-light);background:none;padding:24px 0 40px}}.note{display:flex;gap:13px;margin-bottom:22px}.note__n{flex:none;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--violet);color:var(--violet);font-family:var(--font-mono);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.note__title{font-family:var(--font-doc);font-size:15px;font-weight:600;color:var(--ink)}.note__text{font-family:var(--font-doc);font-size:14px;line-height:1.5;color:var(--muted);margin:2px 0 0}.note:nth-child(3n+2) .note__n{border-color:var(--teal);color:var(--teal)}.note:nth-child(3n) .note__n{border-color:var(--coral);color:var(--coral)}.doc-seq{display:flex;justify-content:space-between;gap:16px;margin:0 44px 60px;padding-top:18px;border-top:1px solid var(--rule-lav)}@media(max-width: 900px){.doc-seq{margin:0 0 40px}}.doc-seq{font-family:var(--font-mono);font-size:11px;letter-spacing:1px}.doc-seq a{color:var(--violet);text-decoration:none}.doc-seq a:hover{text-decoration:underline}.doc-manual{border:1px solid var(--violet-light);border-radius:var(--radius);background:var(--lav-panel);padding:16px 18px;margin:0 0 28px}.doc-manual p{margin:0}.doc-manual__label{font-family:var(--font-mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--violet)}.doc-manual__text{font-family:var(--font-doc);font-size:15px;line-height:1.5;color:var(--muted);margin-top:4px !important}.doc-manual__links{margin-top:10px !important;display:flex;gap:14px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.doc-manual__links a{color:var(--violet);text-decoration:none}.doc-manual__links a:hover{text-decoration:underline}.draft-note{border:1px solid var(--coral);border-radius:var(--radius);background:rgba(223,133,103,.08);padding:13px 16px;margin:0 0 24px;font-family:var(--font-doc);font-size:15px;line-height:1.5;color:var(--prose)}.draft-note strong{color:var(--ink)}/*# sourceMappingURL=main.css.map */