.plates{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));align-items:start;display:grid}.plates .sheet-fig{min-width:0;margin:0}.plates .plate-form{--cf-accent:var(--hue-3)}.plates .plate-faq{--faq-accent:var(--hue-4)}figure.plate{margin:0 0 var(--space-5)}figure.plate figcaption{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-2)}.code .tok-key{color:var(--accent)}.spec-wrap{margin:0 0 var(--space-4);overflow-x:auto}.notice .notice-kind{margin-bottom:var(--space-1);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;display:block}.notice.draft{background:var(--accent-soft)}.swatches{gap:var(--space-3);margin:0 0 var(--space-5);grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));display:grid}.swatch{border:var(--stroke) solid var(--rule);border-radius:var(--radius);background:var(--paper);color:var(--ink);font-size:var(--text-xs)}.swatch i{border-bottom:var(--stroke) solid var(--rule);height:3.25rem;display:block}.swatch span{padding:var(--space-2) var(--space-3);font-family:var(--font-mono);display:block}.theme-pane{padding:var(--space-5);margin:0 0 var(--space-5);background:var(--paper);color:var(--ink);border:var(--stroke) solid var(--rule);border-radius:var(--radius)}.type-sample{margin:0 0 var(--space-4);font-family:var(--font-display);font-weight:700;line-height:1.1}.sample-h1{font-size:var(--text-hero);letter-spacing:-.03em}.sample-h2{font-size:var(--text-2xl)}.sample-h3{font-size:var(--text-xl)}.space-bar{background:var(--accent);height:.75rem;display:inline-block}.hero.solo{grid-template-columns:minmax(0,1fr)}.flow-note{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-left:3px solid var(--accent);color:var(--ink-2)}.platform-index{gap:var(--space-2) var(--space-4);margin:0 0 var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.platform-index a{padding:var(--space-1) 0;display:inline-block}.checklist{max-width:var(--measure);padding-left:var(--space-5)}.checklist li{margin-bottom:var(--space-2)}

@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2")}:root,[data-theme=light]{color-scheme:light;--paper:#fbfaf6;--paper-2:#f2efe6;--ink:#16140f;--ink-2:#4d493e;--rule:#8c8676;--hair:#d9d4c6;--accent:#b23c06;--accent-ink:#fff;--accent-soft:#f6e1d3;--focus:#16140f;--hue-1:#6d28d9;--hue-2:#c2410c;--hue-3:#1d4ed8;--hue-4:#0a7d5a;--tint-1:#ece6fb;--tint-2:#fde9d9;--tint-3:#e0e9fd;--tint-4:#d6f1e5;--on-hue:#fff;--panel-bg:#16140f;--panel-fg:#f0ede4;--panel-fg-2:#c9c3b3;--panel-accent:#ff9055;--panel-rule:#4a463b;--term-bg:#0b0c0e;--term-fg:#a8f0c8;--term-prompt:#9aa0ac;--term-edge:#2c2f36;--grad-1:#c2410c;--grad-2:#b45309;--grad-3:#be123c;--on-grad:#fff;--grad-warm:linear-gradient(120deg, var(--grad-1), var(--grad-2) 55%, var(--grad-3));--grad-wash:linear-gradient(160deg, var(--tint-2), var(--paper) 70%);--glow-color:#c2410c61;--glow-soft:0 0 2.5rem var(--glow-color);--glow-strong:0 0 1rem var(--glow-color), 0 0 4rem var(--glow-color);--shadow-color:#16140f47;--shadow-deep:0 1.5rem 3rem -1rem var(--shadow-color), 0 .5rem 1rem -.5rem var(--shadow-color)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#14120e;--paper-2:#1d1a14;--ink:#f0ede4;--ink-2:#b7b1a2;--rule:#7f7968;--hair:#34302a;--accent:#ff9055;--accent-ink:#14120e;--accent-soft:#3a2415;--focus:#f0ede4;--hue-1:#c4b5fd;--hue-2:#fdba74;--hue-3:#93c5fd;--hue-4:#6ee7b7;--tint-1:#2a2147;--tint-2:#3b2314;--tint-3:#16264a;--tint-4:#103325;--on-hue:#14120e;--panel-bg:#1d1a14;--panel-fg:#f0ede4;--panel-fg-2:#b7b1a2;--panel-accent:#ff9055;--panel-rule:#4a463b;--term-bg:#0b0c0e;--term-fg:#a8f0c8;--term-prompt:#9aa0ac;--term-edge:#2c2f36;--grad-1:#ff9055;--grad-2:#fbbf24;--grad-3:#fb7185;--on-grad:#14120e;--grad-warm:linear-gradient(120deg, var(--grad-1), var(--grad-2) 55%, var(--grad-3));--grad-wash:linear-gradient(160deg, var(--tint-2), var(--paper) 70%);--glow-color:#ff905573;--glow-soft:0 0 2.5rem var(--glow-color);--glow-strong:0 0 1rem var(--glow-color), 0 0 4rem var(--glow-color);--shadow-color:#0009;--shadow-deep:0 1.5rem 3rem -1rem var(--shadow-color), 0 .5rem 1rem -.5rem var(--shadow-color)}}[data-theme=dark]{color-scheme:dark;--paper:#14120e;--paper-2:#1d1a14;--ink:#f0ede4;--ink-2:#b7b1a2;--rule:#7f7968;--hair:#34302a;--accent:#ff9055;--accent-ink:#14120e;--accent-soft:#3a2415;--focus:#f0ede4;--hue-1:#c4b5fd;--hue-2:#fdba74;--hue-3:#93c5fd;--hue-4:#6ee7b7;--tint-1:#2a2147;--tint-2:#3b2314;--tint-3:#16264a;--tint-4:#103325;--on-hue:#14120e;--panel-bg:#1d1a14;--panel-fg:#f0ede4;--panel-fg-2:#b7b1a2;--panel-accent:#ff9055;--panel-rule:#4a463b;--term-bg:#0b0c0e;--term-fg:#a8f0c8;--term-prompt:#9aa0ac;--term-edge:#2c2f36;--grad-1:#ff9055;--grad-2:#fbbf24;--grad-3:#fb7185;--on-grad:#14120e;--grad-warm:linear-gradient(120deg, var(--grad-1), var(--grad-2) 55%, var(--grad-3));--grad-wash:linear-gradient(160deg, var(--tint-2), var(--paper) 70%);--glow-color:#ff905573;--glow-soft:0 0 2.5rem var(--glow-color);--glow-strong:0 0 1rem var(--glow-color), 0 0 4rem var(--glow-color);--shadow-color:#0009;--shadow-deep:0 1.5rem 3rem -1rem var(--shadow-color), 0 .5rem 1rem -.5rem var(--shadow-color)}:root{--font-display:"Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-text:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:clamp(1.2rem, 1.1rem + .5vw, 1.4rem);--text-xl:clamp(1.5rem, 1.3rem + 1vw, 2rem);--text-2xl:clamp(1.9rem, 1.5rem + 2vw, 2.9rem);--text-hero:clamp(2.4rem, 1.7rem + 3.6vw, 4.6rem);--text-h3:clamp(1.375rem, 1.2rem + .7vw, 1.75rem);--leading-head:1.15;--leading-text:1.6;--leading-note:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2.25rem;--space-7:3.5rem;--space-8:5.5rem;--page-max:74rem;--measure:38rem;--measure-note:72ch;--gutter:clamp(1rem, 4vw, 2.5rem);--radius:2px;--stroke:1px;--target:2.75rem;--section-pad:clamp(2.5rem, 1rem + 4.5vw, 4.5rem);--flow-block:clamp(2.25rem, 1.5rem + 2.4vw, 3.5rem);--flow-head:var(--space-3);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:linear(0, .25 8%, .72 22%, 1.04 36%, 1.06 44%, .99 62%, 1 80%, 1);--dur-short:.16s;--dur-medium:.42s;--dur-long:.8s;--dur-scene:1.4s;--dur-ambient:10s}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-text);font-size:100%;line-height:var(--leading-text);color:var(--ink);background:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:var(--space-7)}body{font-size:var(--text-base);margin:0}main{display:block}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:var(--leading-head);letter-spacing:-.025em;text-wrap:balance;margin:0}h1{font-size:var(--text-hero);letter-spacing:-.03em;line-height:1}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-h3)}h2+p,h3+p{margin-top:var(--flow-head)}p{margin:0 0 var(--space-4)}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}code,pre,kbd{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius)}::selection{background:var(--accent);color:var(--accent-ink)}.skip{left:var(--space-3);z-index:10;padding:var(--space-2) var(--space-4);background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--text-sm);position:absolute;top:-4rem}.skip:focus{top:var(--space-3)}.wrap{width:100%;max-width:var(--page-max);padding:0 var(--gutter);margin:0 auto}.wrap.narrow{max-width:calc(var(--measure) + 2 * var(--gutter))}.mono{font-family:var(--font-mono)}figure{margin:0}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--ink-2);font-size:var(--text-sm)}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.draft-banner{padding:var(--space-2) var(--gutter);text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);background:var(--accent-soft);color:var(--ink);border-bottom:var(--stroke) solid var(--accent);margin:0}header.site{z-index:3;border-bottom:var(--stroke) solid var(--hair);position:relative}header.site .bar{align-items:center;gap:var(--space-3) var(--space-5);padding-top:var(--space-4);padding-bottom:var(--space-4);flex-wrap:wrap;display:flex}header.site .brand{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--ink);margin-right:auto;line-height:1;text-decoration:none}header.site .brand span{color:var(--accent)}header.site nav ul{gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}header.site nav a{padding:var(--space-1) 0;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink);border-bottom:var(--stroke) solid transparent;text-decoration:none;display:inline-block}header.site nav a:hover,header.site nav a[aria-current]{border-bottom-color:var(--accent)}.lang{gap:var(--space-1);font-family:var(--font-mono);font-size:var(--text-sm);margin:0;padding:0;list-style:none;display:flex}.lang a{text-align:center;border:var(--stroke) solid var(--rule);border-radius:var(--radius);min-width:2.75rem;min-height:2.75rem;color:var(--ink);line-height:2.75rem;text-decoration:none;display:inline-block}.lang [aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}header.site .account-in{padding:0 var(--space-2);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);text-decoration:none}header.site .account-in:hover{color:var(--accent)}header.site .account-up{border-radius:999px;min-height:2.5rem;padding:0 1.1rem;line-height:2.5rem}header.site .tools{align-items:center;gap:var(--space-2);display:flex}.theme-toggle{border:1px solid var(--rule);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;place-items:center;padding:0;transition:border-color .16s,background-color .16s;display:inline-grid}.theme-toggle[hidden]{display:none}.theme-toggle:hover{border-color:var(--accent);background:var(--accent-soft)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.theme-toggle .icon-sun,.theme-toggle[data-shown=dark] .icon-moon{display:none}.theme-toggle[data-shown=dark] .icon-sun{display:block}.lang-select[hidden]{display:none}.lang-select select{appearance:none;border:1px solid var(--rule);background-color:#0000;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);height:2.5rem;color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);cursor:pointer;background-position:calc(100% - 1rem) 55%,calc(100% - .7rem) 55%;background-repeat:no-repeat;background-size:.3rem .3rem;border-radius:999px;padding:0 2.1rem 0 .9rem;transition:border-color .16s}.lang-select select:hover{border-color:var(--accent)}.lang-select option{background:var(--paper);color:var(--ink)}footer.site{margin-top:var(--space-8);padding:var(--space-6) 0 var(--space-7);border-top:var(--stroke) solid var(--ink);font-size:var(--text-sm)}footer.site .cols{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));display:grid}footer.site h2{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin-bottom:var(--space-3)}footer.site ul{margin:0;padding:0;list-style:none}footer.site li{margin-bottom:var(--space-2)}footer.site .fine{margin:var(--space-6) 0 0;color:var(--ink-2)}.hero{gap:var(--space-6);padding-top:var(--space-7);padding-bottom:var(--space-7);display:grid}@media (width>=62rem){.hero{align-items:start;column-gap:var(--space-7);padding-top:var(--space-8);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}.hero>*,.sheet-section>*{min-width:0}.hero .label{margin:0 0 var(--space-4)}.hero .lede{max-width:var(--measure);margin:var(--space-5) 0 var(--space-5);font-size:var(--text-lg);color:var(--ink-2);line-height:1.5}.actions{align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.sheet-fig{margin:0 0 var(--space-5);padding:var(--space-4);border:var(--stroke) solid var(--ink);background:var(--paper-2);position:relative}.sheet-fig:before,.sheet-fig:after{content:"";border:2px solid var(--accent);width:.9rem;height:.9rem;position:absolute}.sheet-fig:before{border-bottom:0;border-right:0;top:-2px;left:-2px}.sheet-fig:after{border-top:0;border-left:0;bottom:-2px;right:-2px}.sheet-fig figcaption{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-2)}.made-fig{max-width:34rem}.sheet-fig .snap{border:var(--stroke) solid var(--rule);--snap-radius:2px}.button{border:var(--stroke) solid var(--accent);border-radius:var(--radius);min-height:2.75rem;font:inherit;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent-ink);background:var(--accent);cursor:pointer;padding:.65rem 1.1rem;text-decoration:none;display:inline-block}.button:hover{text-underline-offset:.2em;text-decoration:underline}.button.quiet{color:var(--ink);border-color:var(--ink);background:0 0}.button:disabled{opacity:.6;cursor:not-allowed}button.button[hidden]{display:none}.sheet-section{gap:var(--space-4) var(--space-6);padding-top:var(--section-pad);padding-bottom:var(--section-pad);border-top:var(--stroke) solid var(--hair);display:grid}@media (width>=62rem){.sheet-section{grid-template-columns:minmax(0,17rem) minmax(0,1fr)}.sheet-section .rail{top:var(--space-5);align-self:start;position:sticky}}.sheet-section .folio{margin:0 0 var(--space-3)}.sheet-section h2{font-size:var(--text-xl)}.sheet-section .body>:last-child{margin-bottom:0}.sheet-section .body>p{max-width:var(--measure)}.sheet-section .body>*+*{margin-top:var(--flow-block)}.sheet-section .body>p:first-child+*{margin-top:var(--space-5)}.sheet-section :is(.pf-tag,.pf-note,.ar-note,.sf-note,.bk-outcome,.bk-replay,.dt-caption,.undo-note){max-width:var(--measure-note);line-height:var(--leading-note)}.code{margin:0 0 var(--space-4);border:var(--stroke) solid var(--rule);border-radius:var(--radius);background:var(--paper-2)}.code .code-title{padding:var(--space-2) var(--space-4);border-bottom:var(--stroke) solid var(--hair);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-2);margin:0}.code pre{padding:var(--space-4);font-size:var(--text-sm);tab-size:2;margin:0;line-height:1.55;overflow-x:auto}.code pre:focus-visible{outline-offset:-3px}table.spec{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums}table.spec caption{padding-bottom:var(--space-2);text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-2)}table.spec th,table.spec td{padding:var(--space-3) var(--space-4) var(--space-3) 0;text-align:left;vertical-align:top;border-top:var(--stroke) solid var(--hair)}table.spec thead th{border-top:var(--stroke) solid var(--ink);border-bottom:var(--stroke) solid var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);font-weight:400}table.spec tbody th{white-space:nowrap;font-weight:600}table.spec tbody tr:last-child>*{border-bottom:var(--stroke) solid var(--ink)}table.spec .num{font-family:var(--font-mono)}.notice{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:var(--stroke) solid var(--rule);border-left:4px solid var(--accent);border-radius:var(--radius);background:var(--paper-2);font-size:var(--text-sm)}.notice>:last-child{margin-bottom:0}.steps:not(.snap *){padding:var(--space-2) var(--space-5);counter-reset:step;background:var(--panel-bg);color:var(--panel-fg);border:var(--stroke) solid var(--panel-rule);border-radius:10px;grid-template-columns:minmax(0,1fr);gap:0;margin:0;list-style:none;display:grid}.steps:not(.snap *) li{padding:var(--space-4) 0 var(--space-4) 3.25rem;border-top:1px dashed var(--panel-rule);color:var(--panel-fg-2);position:relative}.steps:not(.snap *) li:first-child{border-top:0}.steps:not(.snap *) li:before{counter-increment:step;content:counter(step, decimal-leading-zero) / "";left:0;top:var(--space-4);border:2px solid var(--panel-accent);width:2.25rem;height:2.25rem;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--panel-accent);place-items:center;display:grid;position:absolute}.steps:not(.snap *) strong{margin-bottom:var(--space-1);font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.015em;color:var(--panel-fg);line-height:1.2;display:block}.steps:not(.snap *) .term{margin:var(--space-3) 0 0}.steps:not(.snap *) a{color:var(--panel-accent)}dl.faq{margin:0}dl.faq dt{margin-top:var(--space-4);font-weight:600}dl.faq dd{margin:var(--space-1) 0 0;max-width:var(--measure);color:var(--ink-2)}form[data-abuse-form],form[data-subscribe-form]{gap:var(--space-4);max-width:28rem;display:grid}form[data-abuse-form][hidden],form[data-subscribe-form][hidden]{display:none}label{gap:var(--space-1);font-weight:600;display:grid}input[type=email],input[type=url],input[type=text],select,textarea{border:var(--stroke) solid var(--rule);border-radius:var(--radius);font:inherit;color:var(--ink);background:var(--paper);padding:.65rem .75rem}label small{color:var(--ink-2);font-weight:400}label.consent{gap:var(--space-2);align-items:flex-start;font-weight:400;display:flex}.status{min-height:1.5rem;margin:0}.prompt-label{margin:var(--space-4) 0 var(--space-1);font-weight:600}.prompt{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);background:var(--paper-2);border:var(--stroke) solid var(--rule);border-radius:var(--radius);overflow-wrap:anywhere}.prompt code{font-size:var(--text-sm);user-select:all}.agent-links a{margin-right:var(--space-4)}section.first{padding:var(--space-6) 0 0}section.first h1{font-size:var(--text-2xl);margin-bottom:var(--space-4)}[data-legal-text]{max-width:var(--measure);overflow-wrap:anywhere}[data-legal-text] table,[data-legal-text] pre{max-width:100%;display:block;overflow-x:auto}.flow{gap:var(--space-5);margin:0 0 var(--space-4);padding:0;list-style:none;display:grid}.flow li{gap:var(--space-1) var(--space-5);padding:var(--space-3) var(--space-4);border:var(--stroke) solid var(--rule);border-radius:var(--radius);background:var(--paper-2);border-left:6px solid var(--hue-1);display:grid;position:relative}.flow li:nth-child(4n+2){border-left-color:var(--hue-2)}.flow li:nth-child(4n+3){border-left-color:var(--hue-3)}.flow li:nth-child(4n){border-left-color:var(--hue-4)}.flow li+li:before{content:"↓" / "";top:calc(-1 * var(--space-5));left:var(--space-4);height:var(--space-5);line-height:var(--space-5);font-family:var(--font-mono);color:var(--accent);position:absolute}.flow .label{margin:0}.flow strong{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);line-height:1.25}@media (width>=40rem){.flow li{grid-template-columns:11rem minmax(0,1fr);align-items:baseline}}.platform{padding-top:var(--space-5);margin-top:var(--space-5);border-top:var(--stroke) solid var(--hair)}.platform h3{margin:0 0 var(--space-3);scroll-margin-top:var(--space-5)}.platform h3:focus{outline:2px solid var(--accent);outline-offset:4px}.platform h4{margin:var(--space-4) 0 var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-weight:400}.platform ul{margin:0 0 var(--space-3);padding-left:var(--space-5);max-width:var(--measure)}.platform p{max-width:var(--measure)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}a,.button{transition:color .12s,background-color .12s,border-color .12s}}@media print{.draft-banner,header.site nav,.lang{display:none}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes reveal-in{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}@keyframes draw-line{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.timeline li,.recipe,.layers li{animation:linear both reveal-in view();animation-range:entry entry 45%}.timeline:before{animation:linear both draw-line view();animation-range:entry 10% cover 60%}}}.sheet-section.stage-section{display:block}.stage-head{text-align:center;max-width:46rem;margin:0 auto}.stage-section h2{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2rem,1.2rem + 3.2vw,3.6rem);line-height:1.05}.stage-lede{margin:var(--space-4) auto 0;max-width:var(--measure);font-size:var(--text-lg);color:var(--ink-2)}.stage-more{text-align:center;color:var(--ink-2)}@media (width<=40rem){header.site .bar{gap:var(--space-2) var(--space-3);padding-top:var(--space-3);padding-bottom:var(--space-3)}header.site nav:not(.lang-nav){scrollbar-width:none;order:3;width:100%;overflow-x:auto}header.site nav ul{gap:var(--space-4);flex-wrap:nowrap}header.site nav a{white-space:nowrap}header.site .tools{gap:var(--space-1)}header.site .account-in{padding:0 var(--space-1)}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}[data-stagger]>:first-child{--i:0}[data-stagger]>:nth-child(2){--i:1}[data-stagger]>:nth-child(3){--i:2}[data-stagger]>:nth-child(4){--i:3}[data-stagger]>:nth-child(5){--i:4}[data-stagger]>:nth-child(6){--i:5}[data-stagger]>:nth-child(7){--i:6}[data-stagger]>:nth-child(8){--i:7}[data-stagger]>:nth-child(9){--i:8}[data-stagger]>:nth-child(10){--i:9}[data-stagger]>:nth-child(11){--i:10}[data-stagger]>:nth-child(12){--i:11}@media (prefers-reduced-motion:no-preference){.is-offscreen,.is-offscreen *{animation-play-state:paused}@keyframes reveal-rise{0%{opacity:0;transform:translateY(var(--reveal-distance,1.5rem))}}@keyframes reveal-clip{0%{clip-path:inset(0 0 100%)}}@keyframes parallax-drift{0%{transform:translateY(calc(var(--parallax,3rem) * -1))}to{transform:translateY(var(--parallax,3rem))}}@supports (animation-timeline:view()){[data-reveal]{animation:linear both reveal-rise view();animation-range:entry entry 55%}[data-reveal=clip]{animation-name:reveal-clip}[data-stagger]>*{animation:linear both reveal-rise view();animation-range:entry calc(var(--i,0) * 6%) entry calc(50% + var(--i,0) * 6%)}[data-parallax]{animation:linear both parallax-drift view();animation-range:cover}}@supports not (animation-timeline:view()){.js-motion [data-reveal],.js-motion [data-stagger]>*{opacity:0;transform:translateY(var(--reveal-distance,1.5rem));transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out);transition-delay:calc(var(--i,0) * 70ms)}.js-motion [data-reveal=clip]{opacity:1;clip-path:inset(0 0 100%);transition:clip-path var(--dur-long) var(--ease-out);transform:none}.js-motion [data-reveal][data-in-view],.js-motion [data-stagger][data-in-view]>*{opacity:1;clip-path:none;transform:none}}[data-pointer]>[data-depth]{translate:calc(var(--px,0) * var(--depth,12) * 1px) calc(var(--py,0) * var(--depth,12) * 1px);transition:translate var(--dur-medium) var(--ease-out)}}.chapter-bar{--cb-bg:var(--paper);--cb-fg:var(--ink);--cb-accent:var(--accent);--cb-edge:var(--hair);z-index:8;background:var(--cb-bg);color:var(--cb-fg);border-bottom:var(--stroke) solid var(--cb-edge);font-family:var(--font-mono);font-size:var(--text-sm);visibility:hidden;opacity:0;position:fixed;inset:0 0 auto;transform:translateY(-100%)}.chapter-bar[data-tone=dark]{--cb-bg:var(--panel-bg);--cb-fg:var(--panel-fg);--cb-accent:var(--panel-accent);--cb-edge:var(--panel-rule)}.chapter-bar[data-on]{visibility:visible;opacity:1;transform:none}.chapter-bar :focus-visible{outline-color:var(--cb-fg)}.cb-row{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:var(--page-max);padding:0 var(--gutter);min-height:2.75rem;margin:0 auto;display:flex;position:relative}.cb-now{align-items:baseline;gap:.6rem;min-width:0;margin:0;display:flex}.cb-now b{color:var(--cb-accent)}.cb-now span{font-family:var(--font-body,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cb-up{border:1px solid var(--cb-edge);width:2rem;height:2rem;color:var(--cb-fg);border-radius:50%;flex:none;place-items:center;transition:border-color .16s,color .16s;display:inline-grid}.cb-up:hover{border-color:var(--cb-accent);color:var(--cb-accent)}.cb-up svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}@media (prefers-reduced-motion:no-preference){.chapter-bar{transition:opacity var(--dur-medium) var(--ease-out), transform var(--dur-medium) var(--ease-out), visibility 0s linear var(--dur-medium)}.chapter-bar[data-on]{transition:opacity var(--dur-medium) var(--ease-out), transform var(--dur-medium) var(--ease-out)}}body[data-has-chapters] main [id]{scroll-margin-top:3.5rem}@media print{.chapter-bar{display:none}}footer.site{margin-top:var(--space-8);padding:var(--space-7) 0 var(--space-7);background:var(--panel-bg);color:var(--panel-fg);border-top:0}footer.site :focus-visible{outline-color:var(--panel-fg)}footer.site .mark{margin:0 0 var(--space-6);font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.03em;font-weight:700;line-height:1}footer.site .mark span{color:var(--panel-accent)}footer.site h2{color:var(--panel-fg-2)}footer.site a{color:var(--panel-fg)}footer.site a:hover{color:var(--panel-accent)}footer.site .fine{padding-top:var(--space-4);border-top:var(--stroke) solid var(--panel-rule);color:var(--panel-fg-2)}@media (width<=52rem),(pointer:coarse){:root header.site .brand,:root header.site nav a,:root .platform-index a,:root .start-links a,:root .obj-see{min-width:var(--target);min-height:var(--target);justify-content:center;align-items:center;display:inline-flex}:root header.site nav a{padding-block:0}:root header.site nav ul{column-gap:var(--space-3);row-gap:0}:root .skip,:root .scene-chip,:root .dt-field input[type=text],:root .dt-check,:root .dt-filter label{min-height:var(--target)}:root .dt-filter label{min-width:var(--target)}}

.playground-slot{min-height:var(--playground-min,31rem)}.bench{background:var(--paper-2);border:var(--stroke) solid var(--ink);border-radius:10px;position:relative;overflow:hidden}.bench-bar{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:var(--stroke) solid var(--ink);background:var(--paper);flex-wrap:wrap;display:flex}.bench-tag{font-size:var(--text-sm);color:var(--ink)}.bench-tabs,.bench-controls fieldset{gap:var(--space-1) var(--space-2);border:0;flex-wrap:wrap;min-width:0;margin:0;padding:0;display:flex}.bench-controls legend{margin-bottom:var(--space-2);font-weight:700;font-size:var(--text-sm);padding:0}.bench legend .mono{margin-left:var(--space-1);font-weight:400;font-size:var(--text-xs);color:var(--ink-2)}.bench-tabs legend{margin:0}.bench-tabs input[type=radio],.bench-controls input[type=radio]{opacity:0;width:1px;height:1px;margin:0;position:absolute}.bench-tabs label,.bench-controls fieldset label{align-items:center;gap:var(--space-2);min-height:2.75rem;padding:0 var(--space-3);border:var(--stroke) solid var(--rule);background:var(--paper-2);font-size:var(--text-sm);color:var(--ink);cursor:pointer;border-radius:999px;font-weight:600;display:inline-flex}.bench-tabs input[type=radio]:checked+label,.bench-controls fieldset input[type=radio]:checked+label{background:var(--ink);color:var(--paper-2);border-color:var(--ink)}.bench-tabs input[type=radio]:focus-visible+label,.bench-controls input[type=radio]:focus-visible+label{outline:3px solid var(--focus);outline-offset:2px}.bench-controls fieldset label i{background:var(--swatch);border:2px solid var(--paper-2);outline:1px solid var(--rule);border-radius:50%;width:.9rem;height:.9rem}.bench-body{display:grid}.bench-controls{gap:var(--space-4);padding:var(--space-4);border-bottom:var(--stroke) solid var(--hair);align-content:start;display:grid}.bench-stage{padding:var(--space-4);background:var(--paper);background-image:radial-gradient(var(--hair) 1px, transparent 1px);background-size:14px 14px;align-content:start;min-height:24rem;display:grid}@media (width>=52rem){.bench-body{grid-template-columns:17rem minmax(0,1fr)}.bench-controls{border-bottom:0;border-right:var(--stroke) solid var(--hair)}}.bench-stage .pane{grid-area:1/1;min-width:0}.pg-multi .pg-demo{display:none}.pg-multi:has(input[data-demo-tab=finance]:checked) .pg-demo[data-demo=finance],.pg-multi:has(input[data-demo-tab=form]:checked) .pg-demo[data-demo=form],.pg-multi:has(input[data-demo-tab=quote]:checked) .pg-demo[data-demo=quote],.pg-multi:has(input[data-demo-tab=quiz]:checked) .pg-demo[data-demo=quiz],.pg-multi:has(input[data-demo-tab=counter]:checked) .pg-demo[data-demo=counter]{display:block}.pg-multi>.bench-bar{border-bottom:var(--stroke) solid var(--ink)}.pg-multi .pg-demo+.pg-demo{border-top:0}.pg-controls-title{font-size:var(--text-xs);color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;margin:0}.pg-field{gap:var(--space-1);display:grid}.pg-field>label,.pg-check{font-weight:700;font-size:var(--text-sm)}.pg-field input,.pg-field textarea{box-sizing:border-box;width:100%;min-height:2.75rem;padding:var(--space-2) var(--space-3);border:var(--stroke) solid var(--rule);background:var(--paper-2);color:var(--ink);font:inherit;font-size:var(--text-sm);border-radius:8px}.pg-field textarea{resize:vertical;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:var(--text-xs)}.pg-field input:focus-visible,.pg-field textarea:focus-visible,.pg-check input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.pg-field small{color:var(--ink-2);font-size:var(--text-xs)}.pg-check{align-items:center;gap:var(--space-2);cursor:pointer;min-height:2.75rem;display:flex}.pg-check input{width:1.25rem;height:1.25rem;accent-color:var(--accent);margin:0}.pg-nojs{font-size:var(--text-xs);color:var(--ink-2);margin:0}.bench-controls :disabled{opacity:1;cursor:not-allowed}.pane-preview{align-content:start;justify-items:center;display:grid}.pg-figure{width:min(100%,26rem);margin:0}.pg-pictures{display:grid}.pg-pictures .snap{border:var(--stroke) solid var(--rule);border-radius:8px;width:100%}.pg-pictures .snap[hidden]{display:none}.pg-figure figcaption,.pg-note,.pg-intro{margin:var(--space-3) 0 0;font-size:var(--text-xs);color:var(--ink-2)}.pane-preview .live-demo{color:#1f2937;background:#fff;width:min(100%,26rem);margin:0}.pane-preview .live-demo figcaption{color:#4b5563}.pane-code,.pane-css,.pane-data{padding:var(--space-4);background:var(--paper-2);border:var(--stroke) solid var(--rule);border-radius:8px;align-self:start;display:none}.pg-demo:has(input[data-view=code]:checked) .pane-preview,.pg-demo:has(input[data-view=css]:checked) .pane-preview,.pg-demo:has(input[data-view=data]:checked) .pane-preview{visibility:hidden}.pg-demo:has(input[data-view=code]:checked) .pane-code,.pg-demo:has(input[data-view=css]:checked) .pane-css,.pg-demo:has(input[data-view=data]:checked) .pane-data{display:block}.pane .pg-intro:first-child{margin-top:0}.pane-code .code pre{max-height:22rem;overflow:auto}.pg-fw-tabs{margin:var(--space-3) 0}.pg-fw{display:none}.pg-demo:has(input[data-fw=html]:checked) .pg-fw[data-fw=html],.pg-demo:has(input[data-fw=native]:checked) .pg-fw[data-fw=native],.pg-demo:has(input[data-fw=react18]:checked) .pg-fw[data-fw=react18],.pg-demo:has(input[data-fw=react19]:checked) .pg-fw[data-fw=react19],.pg-demo:has(input[data-fw=vue]:checked) .pg-fw[data-fw=vue],.pg-demo:has(input[data-fw=angular]:checked) .pg-fw[data-fw=angular],.pg-demo:has(input[data-fw=svelte]:checked) .pg-fw[data-fw=svelte]{display:block}.pg-fw .code+.code{margin-top:var(--space-3)}.pg-notes{margin:var(--space-3) 0 0;padding-left:var(--space-5);font-size:var(--text-xs);color:var(--ink-2)}.pg-notes:empty{display:none}.pane-code .term{margin-top:var(--space-2)}.pane-data h3{margin:0 0 var(--space-2)}@media (prefers-reduced-motion:reduce){.bench *{transition:none;animation:none}}

.gallery [hidden]{display:none!important}.gal-tools{gap:var(--space-4);margin:0 0 var(--space-6);padding:var(--space-4);border:var(--stroke) solid var(--rule);background:var(--paper-2);display:grid}@media (width>=52rem){.gal-tools{grid-template-columns:minmax(0,1fr) minmax(14rem,22rem);align-items:end}.gal-tools .gal-cats{grid-column:1}}.gal-search{gap:var(--space-1);display:grid}.gal-search label{font-weight:700;font-size:var(--text-sm)}.gal-search input{box-sizing:border-box;width:100%;min-height:2.75rem;padding:var(--space-2) var(--space-3);border:var(--stroke) solid var(--rule);background:var(--paper);color:var(--ink);font:inherit;border-radius:8px}.gal-count,.gal-note,.gal-empty{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-2);margin:0}.gal-tools .gal-count{grid-column:1/-1}.gal-empty{margin-bottom:var(--space-5);font-size:var(--text-sm)}.gal-group{margin:0 0 var(--space-7)}.gal-group h2{margin:0 0 var(--space-1)}.gal-blurb{margin:0 0 var(--space-4);color:var(--ink-2)}.gal-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));margin:0;padding:0;list-style:none;display:grid}.gal-card{gap:var(--space-2);min-width:0;padding:var(--space-4);border:var(--stroke) solid var(--ink);background:var(--paper-2);flex-direction:column;display:flex;position:relative}.gal-card:hover{border-color:var(--accent)}.gal-card h3{font-family:var(--font-display);font-size:var(--text-lg);margin:0;line-height:1.2}.gal-card h3 a:after{content:"";position:absolute;inset:0}.gal-card p{margin:0}.gal-tag{font-size:var(--text-xs);color:var(--ink-2)}.gal-card-text{border-color:var(--hair);border-left:3px solid var(--accent)}.gal-more{margin:var(--space-4) 0 0;font-weight:600}.gal-pic{border:var(--stroke) solid var(--rule);background:#fff;height:13rem;position:relative;overflow:hidden}.gal-pic .snap{pointer-events:none}.gal-desc{max-width:var(--measure);margin:0 0 var(--space-4);color:var(--ink)}.gal-links{gap:var(--space-2) var(--space-5);margin:0 0 var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.gal-links .mono{margin-left:var(--space-2);font-size:var(--text-xs);color:var(--ink-2)}.prompt.multiline code{white-space:pre-wrap;display:block}.gal-families{margin:0 0 var(--space-6)}.gal-families-title{margin:0 0 var(--space-2);font-size:var(--text-sm);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);font-weight:700}.gal-families ul{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.family-head{view-transition-name:family-head}

.snap{box-sizing:border-box;color-scheme:light;color:#1f2937;letter-spacing:normal;text-transform:none;text-align:left;text-wrap:wrap;border-radius:var(--snap-radius,0);background:#fff;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:block;overflow:hidden}.snap.snap :where(div,span,h1,h2,h3,p,a,label,input,select,textarea,button,fieldset,legend,form,section,aside,output,small,strong,b,i,em,ul,ol,li,option){all:revert}.snap.snap :where(input[type=radio],input[type=checkbox]){margin:.15em .35em 0 0}.snap.snap :where(input:not([type=radio],[type=checkbox],[type=range]),select,textarea){color:#1f2937;background:#fff}.snap-host{position:relative}.snap-host:has(>.snap[hidden]){display:none}.snap.is-snap-off,.snap.is-snap-off *,.snap.is-snap-off :before,.snap.is-snap-off :after,.snap.is-snap-heavy,.snap.is-snap-heavy *,.snap.is-snap-heavy :before,.snap.is-snap-heavy :after,.snap-host.is-snap-off .snap,.snap-host.is-snap-off .snap *,.snap-host.is-snap-off .snap :before,.snap-host.is-snap-off .snap :after,.snap-host.is-snap-paused .snap,.snap-host.is-snap-paused .snap *,.snap-host.is-snap-paused .snap :before,.snap-host.is-snap-paused .snap :after{animation-play-state:paused!important}.snap-motion-toggle{z-index:1;box-sizing:border-box;color:#1f2937;cursor:pointer;opacity:.85;background:#fff;border:1px solid #94a3b8;border-radius:50%;place-items:center;block-size:1.75rem;min-block-size:0;inline-size:1.75rem;padding:0;display:grid;position:absolute;inset-block-start:.5rem;inset-inline-end:.5rem}.snap-motion-toggle:hover,.snap-motion-toggle:focus-visible{opacity:1}.snap-motion-toggle:focus-visible{outline-offset:2px;outline:3px solid #4f46e5}.snap-motion-toggle:before{content:"";border-inline:.18rem solid;block-size:.6rem;inline-size:.5rem;display:block}.snap-motion-toggle.is-paused:before{border:.32rem solid #0000;border-left:.5rem solid;border-right-width:0;block-size:0;inline-size:0;margin-inline-start:.12rem}

.snap-text-scramble.snap-text-scramble{contain:content;display:block}.snap-text-scramble.snap-text-scramble[hidden]{display:none}.snap-text-scramble.snap-text-scramble .root{--a:var(--tsc-accent,#34d399);--n:var(--tsc-noise,#818cf8);color:var(--tsc-text,#f8fafc);background-color:var(--tsc-surface,#0b1020);border-radius:var(--tsc-radius,20px);background-image:radial-gradient(circle at 85% 0,#818cf859,#818cf800 55%);justify-items:start;gap:1.4em;padding:2em 1.6em 1.4em;font:medium/1.4 system-ui,sans-serif;display:grid;overflow:hidden}.snap-text-scramble.snap-text-scramble h2{letter-spacing:-.02em;flex-wrap:wrap;align-items:baseline;gap:0 .35em;margin:0;font-size:2.4em;font-weight:800;line-height:1.1;display:flex}.snap-text-scramble.snap-text-scramble .vis{--w:8;min-width:calc(var(--w) * .62em);color:var(--a);text-shadow:0 0 24px color-mix(in srgb, var(--a) 55%, transparent);white-space:pre;font-family:ui-monospace,Menlo,monospace;font-weight:700;display:inline-block}.snap-text-scramble.snap-text-scramble .vis.noise{color:var(--n);text-shadow:none}.snap-text-scramble.snap-text-scramble .sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.snap-text-scramble.snap-text-scramble .bar{flex-wrap:wrap;align-items:center;gap:.6em;display:flex}.snap-text-scramble.snap-text-scramble .btn{color:var(--a);cursor:pointer;background-color:#0000;border:1px solid #34d39999;border-radius:999px;padding:.5em 1.1em;font-family:inherit;font-size:.85em;font-weight:700}.snap-text-scramble.snap-text-scramble .btn:focus-visible{outline-offset:2px;outline:3px solid #fff}.snap-text-scramble.snap-text-scramble .dots{gap:.4em;margin-left:auto;display:flex}.snap-text-scramble.snap-text-scramble .dot{background-color:#475569;border-radius:50%;width:.55em;height:.55em}.snap-text-scramble.snap-text-scramble .dot.on{background-color:var(--a)}@keyframes snap-text-scramble-tsc-in{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(.35em)}to{opacity:1;clip-path:inset(0);transform:none}}@media (prefers-reduced-motion:no-preference){.snap-text-scramble.snap-text-scramble .vis{animation:.6s cubic-bezier(.2,.8,.2,1) both snap-text-scramble-tsc-in}}.snap-text-typewriter.snap-text-typewriter{contain:content;display:block}.snap-text-typewriter.snap-text-typewriter[hidden]{display:none}.snap-text-typewriter.snap-text-typewriter .root{--a:var(--tw-accent,#f59e0b);color:var(--tw-text,#f9fafb);background-color:var(--tw-surface,#111827);border-radius:var(--tw-radius,18px);background-image:linear-gradient(#ffffff12,#0000 40%);justify-items:start;gap:1.2em;padding:1.8em 1.4em 1.3em;font:medium/1.4 system-ui,sans-serif;display:grid;overflow:hidden}.snap-text-typewriter.snap-text-typewriter h2{gap:.25em;margin:0;font-size:1.15em;font-weight:600;line-height:1.3;display:grid}.snap-text-typewriter.snap-text-typewriter .lead{opacity:.8;font-size:.95em}.snap-text-typewriter.snap-text-typewriter .type{--n:20;--dur:1s;height:1.5em;display:block;position:relative}.snap-text-typewriter.snap-text-typewriter .line{width:calc(var(--n) * 1ch);max-width:100%;color:var(--a);white-space:pre;clip-path:inset(0);font-family:ui-monospace,Menlo,monospace;font-size:1.25em;font-weight:700;display:block;overflow:hidden}.snap-text-typewriter.snap-text-typewriter .caret{background-color:var(--a);border-radius:1px;width:.12em;height:1.3em;position:absolute;top:.1em;left:0}.snap-text-typewriter.snap-text-typewriter .bar{align-items:center;gap:.7em;display:flex}.snap-text-typewriter.snap-text-typewriter .btn{color:var(--a);cursor:pointer;background-color:#0000;border:1px solid #f59e0b99;border-radius:999px;padding:.45em 1em;font-family:inherit;font-size:.8em;font-weight:700}.snap-text-typewriter.snap-text-typewriter .btn:focus-visible{outline-offset:2px;outline:3px solid #fff}@keyframes snap-text-typewriter-tw-type{0%{clip-path:inset(0 100% 0 0)}}@keyframes snap-text-typewriter-tw-move{0%{transform:translate(0)}to{transform:translateX(calc(var(--n) * 1ch))}}@keyframes snap-text-typewriter-tw-blink{50%{opacity:0}}@media (prefers-reduced-motion:no-preference){.snap-text-typewriter.snap-text-typewriter .line{animation:snap-text-typewriter-tw-type var(--dur) steps(var(--n), end) both}.snap-text-typewriter.snap-text-typewriter .caret{animation:snap-text-typewriter-tw-move var(--dur) steps(var(--n), end) both, snap-text-typewriter-tw-blink .9s step-end calc(var(--dur) + .1s) infinite}}@media (prefers-reduced-motion:reduce){.snap-text-typewriter.snap-text-typewriter .caret{display:none}}.snap-text-highlight-draw.snap-text-highlight-draw{contain:content;display:block}.snap-text-highlight-draw.snap-text-highlight-draw[hidden]{display:none}.snap-text-highlight-draw.snap-text-highlight-draw .root{--a:var(--th-a,#fde047);--b:var(--th-b,#f472b6);--c:var(--th-c,#38bdf8);color:var(--th-text,#0f172a);background-color:var(--th-surface,#fff);border-radius:var(--th-radius,18px);border:1px solid #e2e8f0;justify-items:start;gap:1em;padding:1.6em 1.4em 1.2em;font:medium/1.5 system-ui,sans-serif;display:grid;overflow:hidden}.snap-text-highlight-draw.snap-text-highlight-draw p{letter-spacing:-.01em;margin:0;font-size:1.55em;font-weight:700;line-height:1.6}.snap-text-highlight-draw.snap-text-highlight-draw .m{--k:0;--ink:var(--a);isolation:isolate;color:inherit;white-space:nowrap;background-color:#0000;padding:0 .12em;position:relative}.snap-text-highlight-draw.snap-text-highlight-draw .c1{--ink:var(--b)}.snap-text-highlight-draw.snap-text-highlight-draw .c2{--ink:var(--c)}.snap-text-highlight-draw.snap-text-highlight-draw .ink{z-index:-1;width:100%;position:absolute;left:0;right:0;overflow:visible}.snap-text-highlight-draw.snap-text-highlight-draw .marker .ink{height:.75em;bottom:.05em}.snap-text-highlight-draw.snap-text-highlight-draw .marker .ink path{stroke-width:12px;opacity:.8}.snap-text-highlight-draw.snap-text-highlight-draw .ink path{fill:none;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;vector-effect:non-scaling-stroke}.snap-text-highlight-draw.snap-text-highlight-draw .btn{color:inherit;cursor:pointer;background-color:#0000;border:2px solid #0f172a;border-radius:999px;padding:.5em 1.1em;font-family:inherit;font-size:.85em;font-weight:700}.snap-text-highlight-draw.snap-text-highlight-draw .btn:focus-visible{outline-offset:3px;outline:3px solid #4f46e5}@keyframes snap-text-highlight-draw-th-draw{0%{stroke-dashoffset:1px}}@media (prefers-reduced-motion:no-preference){.snap-text-highlight-draw.snap-text-highlight-draw .ink path{animation:snap-text-highlight-draw-th-draw .7s cubic-bezier(.5, 0, .2, 1) calc(var(--k) * .45s + .2s) both}}.snap-text-path.snap-text-path{contain:content;display:block}.snap-text-path.snap-text-path[hidden]{display:none}.snap-text-path.snap-text-path .root{--a:var(--tp-accent,#7c3aed);--g:var(--tp-guide,#fb923c);background-color:var(--tp-surface,#fff);border-radius:var(--tp-radius,20px);border:1px solid #e2e8f0;place-items:center;padding:1.2em;display:grid;overflow:hidden}.snap-text-path.snap-text-path .fig{width:100%;max-width:26em;height:auto;display:block}.snap-text-path.snap-text-path .guide{fill:none;stroke:var(--g);stroke-width:2px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}.snap-text-path.snap-text-path .txt{fill:var(--a);letter-spacing:.02em;font-family:system-ui,sans-serif;font-weight:700}.snap-text-path.snap-text-path .spin{transform-box:view-box;transform-origin:50%}@keyframes snap-text-path-tp-draw{0%{stroke-dashoffset:1px}}@keyframes snap-text-path-tp-fade{0%{opacity:0}}@keyframes snap-text-path-tp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:no-preference){.snap-text-path.snap-text-path .guide{animation:1.4s cubic-bezier(.5,0,.2,1) both snap-text-path-tp-draw}.snap-text-path.snap-text-path .txt{animation:.8s ease-out .9s both snap-text-path-tp-fade}.snap-text-path.snap-text-path .ring .spin{animation:40s linear infinite snap-text-path-tp-spin}}.snap-spotlight-reveal.snap-spotlight-reveal{contain:content;display:block}.snap-spotlight-reveal.snap-spotlight-reveal[hidden]{display:none}.snap-spotlight-reveal.snap-spotlight-reveal .root{--a:var(--sr-accent,#a78bfa);--r:8em;--x:30%;--y:45%;color:#94a3b8;background-color:var(--sr-surface,#0b1020);border-radius:var(--sr-radius,20px);touch-action:pan-y;padding:1.6em;font:medium/1.45 system-ui,sans-serif;position:relative;overflow:hidden}.snap-spotlight-reveal.snap-spotlight-reveal .root:focus-visible{outline-offset:-6px;outline:3px solid #fff}.snap-spotlight-reveal.snap-spotlight-reveal .layer{gap:1em;display:grid}.snap-spotlight-reveal.snap-spotlight-reveal .lit{color:#f8fafc;background-color:#0b1020;background-image:radial-gradient(circle at var(--x) var(--y), #a78bfa59, #a78bfa00 60%);clip-path:circle(var(--r) at var(--x) var(--y));pointer-events:none;padding:1.6em;position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.snap-spotlight-reveal.snap-spotlight-reveal .root:not(.live) .lit{animation:9s ease-in-out infinite alternate snap-spotlight-reveal-sr-drift}}.snap-spotlight-reveal.snap-spotlight-reveal h2{margin:0;font-size:1.5em;line-height:1.2}.snap-spotlight-reveal.snap-spotlight-reveal .hint{margin:0;font-size:.85em}.snap-spotlight-reveal.snap-spotlight-reveal .cards{grid-template-columns:repeat(auto-fit,minmax(9em,1fr));gap:.8em;display:grid}.snap-spotlight-reveal.snap-spotlight-reveal .card{border:1px solid #334155;border-radius:14px;gap:.2em;padding:.9em 1em;display:grid}.snap-spotlight-reveal.snap-spotlight-reveal .lit .card{border-color:var(--a);box-shadow:0 0 28px color-mix(in srgb, var(--a) 35%, transparent);background-color:#a78bfa2e}.snap-spotlight-reveal.snap-spotlight-reveal h3{margin:0;font-size:1em}.snap-spotlight-reveal.snap-spotlight-reveal .lit h3{color:var(--a)}.snap-spotlight-reveal.snap-spotlight-reveal .card p{margin:0;font-size:.88em}@keyframes snap-spotlight-reveal-sr-drift{0%{clip-path:circle(var(--r) at 18% 35%)}50%{clip-path:circle(var(--r) at 60% 70%)}to{clip-path:circle(var(--r) at 88% 40%)}}@media (prefers-reduced-motion:reduce){.snap-spotlight-reveal.snap-spotlight-reveal .lit{clip-path:none;background-image:none}}.snap-cursor-trail.snap-cursor-trail{contain:content;display:block}.snap-cursor-trail.snap-cursor-trail[hidden]{display:none}.snap-cursor-trail.snap-cursor-trail .root{text-align:center;color:#f8fafc;background-color:var(--ct-surface,#0f172a);border-radius:var(--ct-radius,20px);touch-action:none;place-items:center;min-height:14em;padding:1.4em;font:medium/1.4 system-ui,sans-serif;display:grid;position:relative;overflow:hidden}.snap-cursor-trail.snap-cursor-trail .root:focus-visible{outline-offset:-6px;outline:3px solid #fff}.snap-cursor-trail.snap-cursor-trail .copy{pointer-events:none;gap:.3em;display:grid;position:relative}.snap-cursor-trail.snap-cursor-trail h2{margin:0;font-size:1.6em}.snap-cursor-trail.snap-cursor-trail p{color:#cbd5e1;margin:0;font-size:.85em}.snap-cursor-trail.snap-cursor-trail .dot{--k:0;--c:#22d3ee;background-color:var(--c);width:1.1em;height:1.1em;box-shadow:0 0 14px var(--c);pointer-events:none;border-radius:50%;margin:-.55em 0 0 -.55em;position:absolute;top:0;left:0}@keyframes snap-cursor-trail-ct-pulse{50%{transform:scale(1.35)}}@media (prefers-reduced-motion:no-preference){.snap-cursor-trail.snap-cursor-trail .demo .dot{animation:snap-cursor-trail-ct-pulse 2.4s ease-in-out calc(var(--k) * .12s) infinite}}
