:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-hero:clamp(2.5rem, 3.4vw + 1rem, 4.25rem);--text-display-s:clamp(2.25rem, 4vw + .5rem, 3.75rem);--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--text-section:clamp(2rem, 2.5vw + 1rem, 3.5rem);--text-title:clamp(1.25rem, .75vw + .875rem, 1.625rem);--text-lead:clamp(1.125rem, .35vw + 1rem, 1.375rem);--font-display:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--font-body:"Figtree", ui-sans-serif, system-ui, sans-serif;--font-outlier:"JetBrains Mono", ui-monospace, monospace;--display-weight:400;--tracking-display:-.035em;--color-paper:oklch(13.2% .022 258);--color-paper-2:oklch(16.4% .024 258);--color-paper-3:oklch(20.5% .025 258);--color-band:oklch(19.6% .024 258);--color-exhibit:oklch(20% .023 258);--color-ink:oklch(93.5% .004 90);--color-ink-2:oklch(82% .018 255);--color-muted:oklch(72% .02 255);--color-rule:oklch(27% .024 258);--color-rule-2:oklch(22.5% .024 258);--color-accent:oklch(91% .23 125);--color-accent-2:oklch(95% .19 120);--color-accent-soft:oklch(25% .065 145);--color-accent-ink:oklch(13% .03 125);--color-verse-b:oklch(86% .06 210);--color-verse-b-soft:oklch(26% .04 230);--color-focus:oklch(94% .2 125);--color-error:oklch(72% .16 28);--color-success:oklch(76% .1 164);--color-overlay:oklch(7% .02 258/.76);--color-nav:oklch(14.8% .023 258/.9);--color-scrollbar:oklch(40% .025 258);--rk-bg:oklch(11.5% .004 95);--rk-panel:oklch(14.5% .004 95);--rk-panel-2:oklch(17.5% .004 95);--rk-ink:oklch(93.5% .018 95);--rk-muted:oklch(67% .012 95);--rk-dim:oklch(45% .009 95);--rk-line:oklch(25% .007 95);--rk-line-soft:oklch(19.5% .006 95);--rk-acid:oklch(91% .23 125);--rk-acid-ink:oklch(12% .04 125);--rk-focus:oklch(94% .2 125);--rk-noise:oklch(100% 0 0/.03);--rk-overlay:oklch(8% .002 95/.92);--metal-hi:oklch(44% .012 255);--metal-lo:oklch(25% .014 255);--edge-light:inset 0 1px 0 oklch(93.5% .012 85/.1);--shadow-part:0 1px 2px oklch(7% .02 258/.36);--shadow-panel:0 18px 42px -24px oklch(7% .02 258/.72);--shadow-card:var(--shadow-panel);--container:1440px;--gutter:84px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--radius-card:20px;--radius-part:8px;--radius-pill:999px;--rule-hair:1px;--nav-height:64px;--dock-height:64px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px;--nav-height:56px}}@media (width<=40rem){:root{--gutter:16px;--gap-columns:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px}}*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--color-paper);min-height:100%;scroll-padding-top:calc(var(--nav-height) + var(--space-md));scrollbar-color:var(--color-scrollbar) var(--color-paper);scrollbar-width:thin}body{background:var(--color-paper);min-height:100dvh;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;font-weight:400;line-height:1.6}::selection{background:var(--color-accent);color:var(--color-accent-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}:target{scroll-margin-top:calc(var(--nav-height) + var(--space-lg))}a{color:inherit;-webkit-text-decoration-color:var(--color-muted);text-decoration-color:var(--color-muted);text-decoration-thickness:var(--rule-hair);text-underline-offset:.18em}a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}h1,h2,h3,h4,h5,h6{min-width:0;color:var(--color-ink);font-family:var(--font-display);font-weight:var(--display-weight);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);font-weight:500;line-height:1.2}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}.lead{max-width:52ch;color:var(--color-ink-2);font-size:var(--text-lead);line-height:1.5}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{color:inherit;font:inherit;margin:0}button,select{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled=true]{opacity:.55;cursor:not-allowed}input,select,textarea{min-height:52px;padding-inline:var(--space-md);border:var(--rule-hair) solid var(--color-rule);background:var(--color-paper-3);color:var(--color-ink);transition:border-color var(--dur-micro) var(--ease-out);border-radius:12px}input::placeholder,textarea::placeholder{color:var(--color-muted)}input:hover,select:hover,textarea:hover{border-color:var(--color-rule-2)}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-accent-soft);outline:2px solid var(--color-focus);outline-offset:2px}select{appearance:none;border-color:var(--color-rule);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none'%3E%3Cpath d='M4 6.5 L8 10.5 L12 6.5' stroke='%23788aa6' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-inline-end:44px}select:focus-visible{background-position:right 16px center}textarea{resize:none;min-height:132px;padding-block:14px;line-height:1.6}[aria-invalid=true]{border-color:var(--color-error)}button:active:not(:disabled),[role=button]:active:not([aria-disabled=true]){transform:translateY(1px)}.container,.site-wrap{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.num,.figure,td.num{font-family:var(--font-outlier);font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (pointer:coarse){button,[role=button],a{min-height:48px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.skip-link{z-index:var(--z-tooltip);min-height:44px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-part);background:var(--color-accent);color:var(--color-accent-ink);box-shadow:none;transform:translateY(calc(-100% - var(--space-lg)));transition:transform var(--dur-short) var(--ease-out);font-weight:500;text-decoration:none;position:fixed;inset-block-start:var(--space-sm);inset-inline-start:var(--space-md)}.skip-link:focus-visible{transform:translateY(0)}.app-content{min-width:0;min-height:calc(100dvh - var(--nav-height));overflow-x:clip}body .site-wrap{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}body .site-nav{z-index:var(--z-sticky-nav);height:var(--nav-height);background:var(--color-nav);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;inset-block-start:0}body .site-nav__row{align-items:stretch;gap:var(--gap-columns);min-height:var(--nav-height);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}body .site-nav__brand{min-width:0;min-height:44px;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:var(--tracking-display);white-space:nowrap;justify-self:start;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}body .site-nav__brand:hover{color:var(--color-accent);text-decoration:none}body .site-nav__tools,body .site-nav__actions,body .site-nav__links{align-items:stretch;gap:var(--space-xs);display:flex}body .site-nav__tools{justify-content:center}body .site-nav__actions{justify-content:flex-end}body .site-nav__link{min-height:44px;padding-inline:var(--space-md);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:0;white-space:nowrap;transition:color var(--dur-micro) var(--ease-out);align-items:center;font-weight:500;text-decoration:none;display:inline-flex;position:relative}body .site-nav__link:hover{color:var(--color-ink);text-decoration:none}body .site-nav__link[aria-current=page]{color:var(--color-accent)}body .site-nav__signin{box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;padding-inline-end:0}body .site-nav__signin:hover{background:0 0}body .site-nav__signin:active{transform:translateY(1px)}body .site-nav__signin:disabled{cursor:not-allowed;opacity:.55}body .site-nav__menu-button{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper-2);min-width:44px;min-height:44px;color:var(--color-ink);box-shadow:var(--edge-light);justify-content:center;align-self:center;padding:0;display:none}body .site-nav__menu-button:hover{border-color:var(--color-muted);background:var(--color-paper-3)}.site-nav__menu-lines{gap:var(--space-2xs);width:18px;display:grid}.site-nav__menu-lines:before,.site-nav__menu-lines:after{background:var(--color-ink);content:"";height:1px;display:block}.mobile-menu{width:min(26rem, calc(100% - (2 * var(--gutter))));max-height:calc(100dvh - (2 * var(--space-md)));margin:var(--space-md) var(--gutter) auto auto;border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper-2);color:var(--color-ink);box-shadow:var(--shadow-panel);padding:0}.mobile-menu::backdrop{background:var(--color-overlay)}.mobile-menu__inner{gap:var(--space-lg);padding:var(--space-lg);display:grid}.mobile-menu__head{justify-content:space-between;align-items:center;gap:var(--space-md);border-block-end:var(--rule-hair) solid var(--color-rule);padding-block-end:var(--space-md);display:flex}.mobile-menu__brand{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500}.mobile-menu__close{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper-3);min-width:44px;min-height:44px;color:var(--color-ink);font-size:var(--text-xl);padding:0;line-height:1}.mobile-menu__links{display:grid}.mobile-menu__link{border-block-end:var(--rule-hair) solid var(--color-rule);min-height:52px;color:var(--color-ink-2);font-size:var(--text-md);align-items:center;font-weight:500;text-decoration:none;display:flex;position:relative}.mobile-menu__link[aria-current=page],.mobile-menu__link:hover{color:var(--color-ink);text-decoration:none}.mobile-menu__link[aria-current=page]:before{inset-inline-start:0;inset-block:var(--space-md);background:var(--color-accent);content:"";width:2px;position:absolute}.mobile-menu__controls{gap:var(--space-md);display:grid}.mobile-menu__signin{cursor:pointer;text-align:start;background:0 0;border:0;width:100%;padding:0}.mobile-menu__signin:active{transform:translateY(1px)}.auth-dialog{width:min(32rem, calc(100% - (2 * var(--gutter))));border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-paper-2);height:fit-content;max-height:min(80dvh,40rem);color:var(--color-ink);box-shadow:var(--shadow-panel);margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.auth-dialog::backdrop{background:var(--color-overlay)}.auth-dialog[open]{animation:auth-dialog-enter var(--dur-long) var(--ease-out)}.auth-dialog__surface{gap:var(--space-lg);padding:var(--space-xl);display:grid}.auth-dialog__head{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);display:flex}.auth-dialog__title{min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--display-weight);text-wrap:balance;overflow-wrap:break-word;margin:0;line-height:1.1}.auth-dialog__close{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper-3);min-width:44px;min-height:44px;color:var(--color-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--text-xl);transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out);flex:none;padding:0;line-height:1}.auth-dialog__close:hover{background:var(--color-rule)}.auth-dialog__close:active{transform:translateY(1px)}.auth-dialog__close:disabled{cursor:not-allowed;opacity:.55}.auth-dialog__body{max-width:42ch;color:var(--color-ink-2);font-size:var(--text-md);margin:0;line-height:1.55}.auth-dialog__form{gap:var(--space-sm);display:grid}.auth-dialog__label{color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-sm);font-weight:500}.auth-dialog__input{width:100%;min-height:52px;padding-inline:var(--space-md);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-part);outline-offset:-3px;background:var(--color-paper-3);color:var(--color-ink);caret-color:var(--color-accent);font:inherit;transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);outline:2px solid #0000}.auth-dialog__input:hover{background:var(--color-rule-2)}.auth-dialog__input:focus-visible{border-color:var(--color-ink-2);outline-color:var(--color-focus)}.auth-dialog__input:disabled{cursor:not-allowed;opacity:.55}.auth-dialog[data-state=sending] .auth-dialog__input{cursor:wait}.auth-dialog[data-state=error] .auth-dialog__input{border-color:var(--color-error)}.auth-dialog[data-state=success] .auth-dialog__input{border-color:var(--color-success)}.auth-dialog__social{gap:12px;margin-block:24px;display:grid}.auth-dialog__google{border:1px solid var(--rk-line);background:var(--rk-panel);min-height:52px;color:var(--rk-ink);font:500 var(--text-md) var(--font-body);cursor:pointer}.auth-dialog__google:hover{border-color:var(--rk-acid)}.auth-dialog__google:focus-visible{outline:2px solid var(--rk-focus);outline-offset:2px}.auth-dialog__google:disabled{opacity:.55;cursor:wait}.auth-dialog__divider{color:var(--rk-muted);font-size:var(--text-sm);margin:0}.auth-dialog__submit{min-height:52px;padding-inline:var(--space-lg);border:var(--rule-hair) solid transparent;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer;font-family:var(--font-body);font-size:var(--text-md);white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-micro) var(--ease-out), opacity var(--dur-micro) var(--ease-out);font-weight:500}.auth-dialog__submit:hover{background:var(--color-accent-2)}.auth-dialog__submit:active{transform:translateY(1px)}.auth-dialog__submit:focus-visible,.auth-dialog__close:focus-visible,.mobile-menu__signin:focus-visible,body .site-nav__signin:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.auth-dialog__submit:disabled{cursor:not-allowed;opacity:.55}.auth-dialog__submit[aria-busy=true]{cursor:wait}.auth-dialog[data-state=error] .auth-dialog__submit{border-color:var(--color-error)}.auth-dialog[data-state=success] .auth-dialog__submit{border-color:var(--color-success)}.auth-dialog__status{min-height:1lh;color:var(--color-muted);font-size:var(--text-sm);margin:0;line-height:1.45}.auth-dialog[data-state=error] .auth-dialog__status{color:var(--color-error)}.auth-dialog[data-state=success] .auth-dialog__status{color:var(--color-success)}@keyframes auth-dialog-enter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}body .locale-switcher{min-height:36px;padding:var(--space-3xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper-2);align-items:center;gap:0;display:inline-flex}body .locale-switcher__btn{min-width:44px;min-height:32px;padding-inline:var(--space-sm);border-radius:var(--radius-pill);box-shadow:none;color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);background:0 0;border:0;font-weight:500}body .locale-switcher__btn:hover{background:var(--color-paper-3);color:var(--color-ink)}body .locale-switcher__btn.is-active{background:var(--color-accent-soft);box-shadow:none;color:var(--color-accent)}body .locale-switcher__btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.mobile-tool-dock{display:none}body .site-footer{min-height:240px;padding-block:var(--space-2xl) var(--space-xl);background:var(--color-paper-2);color:var(--color-ink);margin-block-start:var(--section-gap-s)}body .site-footer__grid{gap:var(--gap-columns);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}body .site-footer__mast{place-content:start;gap:var(--space-sm);display:grid}body .site-footer__brand{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:var(--tracking-display);font-weight:500}body .site-footer__tagline{max-width:36ch;color:var(--color-ink-2);font-size:var(--text-md)}body .site-footer__disclosure{max-width:42ch;color:var(--color-muted);font-size:var(--text-sm);margin-block-start:var(--space-md)}body .site-footer__index{gap:var(--space-lg);display:grid}body .site-footer__legal{gap:var(--space-sm) var(--space-lg);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}body .site-footer__link{min-height:44px;color:var(--color-ink-2);font-size:var(--text-sm);white-space:nowrap;font-weight:500;line-height:44px;text-decoration-color:#0000}body .site-footer__link:hover,body .site-footer__link[aria-current=page]{color:var(--color-ink);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}body .site-footer__meta{justify-content:space-between;align-items:center;gap:var(--space-md) var(--space-lg);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;margin:0;padding-block-start:0;display:flex}body .site-footer__meta p{margin:0}@media (width<=60rem){body .site-nav__row{justify-content:space-between;gap:var(--space-md);display:flex}body .site-nav__tools,body .site-nav__actions,body .site-nav__links{display:none}body .site-nav__menu-button{display:inline-flex}body .site-footer{padding-block:var(--space-xl) calc(var(--space-xl) + env(safe-area-inset-bottom));margin-block-start:var(--section-gap-s)}body .site-footer__grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr)}body .site-footer__meta{align-items:flex-start}.mobile-tool-dock{z-index:calc(var(--z-sticky-nav) + 1);min-height:calc(var(--dock-height) + env(safe-area-inset-bottom));padding:var(--space-2xs) var(--gutter) env(safe-area-inset-bottom);border-block-start:var(--rule-hair) solid var(--color-rule);background:var(--color-paper-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:fixed;inset-block-end:0;inset-inline:0}.mobile-tool-dock__link{min-width:0;min-height:48px;padding-inline:var(--space-xs);color:var(--color-muted);font-size:var(--text-sm);text-align:center;white-space:nowrap;justify-content:center;align-items:center;font-weight:500;text-decoration:none;display:flex;position:relative}.mobile-tool-dock__link[aria-current=page]{color:var(--color-accent)}body:has(.mobile-tool-dock) .site-footer{padding-block-end:calc(var(--dock-height) + var(--space-xl) + env(safe-area-inset-bottom))}.app-content--dock{padding-block-end:calc(var(--dock-height) + env(safe-area-inset-bottom))}}@media (width<=40rem){.mobile-menu{width:calc(100% - (2 * var(--gutter)))}.auth-dialog{width:100%;max-width:none;max-height:calc(100dvh - var(--space-xl));border-radius:var(--radius-card) var(--radius-card) 0 0;border-block-end:0;border-inline:0;margin:0;inset-block:auto 0}.auth-dialog__surface{padding:var(--space-lg) var(--gutter) calc(var(--space-lg) + env(safe-area-inset-bottom))}body .site-footer__legal{gap:0 var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}body .site-footer__meta{display:grid}}@media (prefers-reduced-motion:reduce){.skip-link,.auth-dialog__close,.auth-dialog__input,.auth-dialog__submit{transition:none}.auth-dialog[open]{animation:none}}.shell{width:100%;max-width:var(--container);min-height:calc(100dvh - var(--nav-height));padding:var(--space-2xl) var(--gutter) var(--section-gap-s);margin-inline:auto}
