:root{color-scheme:dark;--ink-0:oklch(14% 0.004 60);--ink-1:oklch(18% 0.005 60);--ink-2:oklch(23% 0.006 60);--ink-3:oklch(30% 0.006 60);--ink-4:oklch(42% 0.006 60);--ink-5:oklch(62% 0.005 60);--ink-6:oklch(70% 0.004 60);--ink-7:oklch(82% 0.003 60);--ink-8:oklch(91% 0.003 60);--ink-9:oklch(97% 0.002 60);--bg:var(--ink-0);--bg-raised:var(--ink-1);--surface:var(--ink-1);--surface-hi:var(--ink-2);--fg:var(--ink-9);--fg-mute:var(--ink-6);--fg-dim:var(--ink-5);--line:oklch(97% 0.002 60 / 0.11);--line-strong:oklch(97% 0.002 60 / 0.2);--line-width:1px;--fx-ink:oklch(97% 0.002 60 / 0.15);--fx-canvas:oklch(97% 0.002 60);--accent:oklch(62.7% 0.237 32.1);--accent-bright:oklch(70% 0.22 34);--accent-dim:oklch(48% 0.19 31);--accent-ink:oklch(13% 0.004 68);--accent-text:oklch(62.7% 0.237 32.1);--accent-on-tint:oklch(69% 0.2 34);--accent-wash:oklch(62.7% 0.237 32.1 / 0.1);--accent-line:oklch(62.7% 0.237 32.1 / 0.5);--ok:oklch(76% 0.17 150);--warn:oklch(82% 0.16 85);--danger:var(--accent);--s-1:0.25rem;--s-2:0.5rem;--s-3:0.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:8rem;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--font-sans:'Rubik',ui-sans-serif,'Segoe UI',system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;--font-cjk:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans CJK SC','Source Han Sans SC',sans-serif;--step-display:clamp(2.5rem,1.4rem + 3.4vw,4.25rem);--step-h1:clamp(2rem,1.3rem + 2.6vw,3.25rem);--step-h2:clamp(1.625rem,1.2rem + 1.8vw,2.375rem);--step-h3:clamp(1.25rem,1.05rem + 0.8vw,1.5rem);--step-body:1.0625rem;--step-small:0.9375rem;--step-eyebrow:0.75rem;--step-micro:0.6875rem;--leading-display:0.92;--leading-heading:1.08;--leading-body:1.65;--track-display:-0.03em;--track-heading:-0.02em;--track-eyebrow:0.18em;--dur-fast:130ms;--dur-base:220ms;--dur-slow:420ms;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-ui:cubic-bezier(0.4,0,0.2,1);--measure:38em;--page-max:1200px;--page-wide:1360px;--gutter:clamp(1rem,4vw,2.5rem);--header-h:60px;--shadow:none;--shadow-lift:none;--dot:oklch(97% 0.002 60 / 0.055);--dot-size:22px}:root[data-theme='light']{color-scheme:light;--ink-0:oklch(98.2% 0.003 68);--ink-1:oklch(100% 0 0);--ink-2:oklch(95.5% 0.003 68);--ink-3:oklch(90% 0.004 68);--ink-4:oklch(76% 0.005 68);--ink-5:oklch(52% 0.006 68);--ink-6:oklch(44% 0.006 68);--ink-7:oklch(30% 0.005 68);--ink-8:oklch(21% 0.004 68);--ink-9:oklch(13% 0.004 68);--bg:var(--ink-0);--bg-raised:var(--ink-1);--surface:var(--ink-1);--surface-hi:var(--ink-2);--line:var(--ink-9);--line-strong:var(--ink-9);--line-width:2px;--fx-ink:oklch(13% 0.004 68 / 0.055);--fx-canvas:oklch(13% 0.004 68);--accent:oklch(62.7% 0.237 32.1);--accent-bright:oklch(58% 0.225 32);--accent-dim:oklch(46% 0.19 31);--accent-ink:oklch(13% 0.004 68);--accent-text:oklch(54% 0.225 32);--accent-on-tint:oklch(50% 0.21 32);--accent-wash:oklch(62.7% 0.237 32.1 / 0.07);--accent-line:oklch(58% 0.225 32 / 0.55);--ok:oklch(50% 0.15 150);--warn:oklch(66% 0.16 78);--dot:oklch(13% 0.004 68 / 0.09)}:root[data-theme='dark']{color-scheme:dark}@media (max-width:48rem),(pointer:coarse){:root{--step-micro:0.75rem}}*,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + var(--s-5));-moz-tab-size:2;tab-size:2}body{min-height:100dvh;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--step-body);line-height:var(--leading-body);font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-image:radial-gradient(circle at 1px 1px,var(--dot) 1px,transparent 0);background-size:var(--dot-size) var(--dot-size);overflow-x:hidden}:root:lang(zh) body,[lang='zh']{font-family:var(--font-cjk);--leading-body:1.75;--track-display:-0.01em;--track-heading:0}img,picture,svg,video,canvas{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}ul[role='list'],ol[role='list']{list-style:none;padding:0}[hidden]{display:none !important}@font-face{font-family:'Rubik';src:url('/fonts/rubik-latin.woff2') format('woff2');font-weight:300 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Rubik';src:url('/fonts/rubik-latin-ext.woff2') format('woff2');font-weight:300 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Rubik';src:url('/fonts/rubik-cyrillic.woff2') format('woff2');font-weight:300 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Rubik';src:url('/fonts/rubik-cyrillic-ext.woff2') format('woff2');font-weight:300 900;font-display:swap;unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'JetBrains Mono';src:url('/fonts/jetbrains-mono-latin.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'JetBrains Mono';src:url('/fonts/jetbrains-mono-latin-ext.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'JetBrains Mono';src:url('/fonts/jetbrains-mono-cyrillic.woff2') format('woff2');font-weight:400 700;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}h1,h2,h3,h4{font-weight:800;line-height:var(--leading-heading);letter-spacing:var(--track-heading);text-wrap:balance}h1{font-size:var(--step-h1)}h2{font-size:var(--step-h2)}h3{font-size:var(--step-h3);font-weight:700}p{text-wrap:pretty}:is(h2,h3,h4):not(:first-child){margin-top:var(--s-6)}:is(h2,h3,h4) + *{margin-top:var(--s-3)}a{color:inherit;text-decoration-color:var(--accent-line);text-decoration-thickness:2px;text-underline-offset:0.22em;transition:text-decoration-color var(--dur-fast) var(--ease-ui)}a:hover{text-decoration-color:var(--accent)}strong,b{font-weight:700}code,kbd,samp,pre{font-family:var(--font-mono);font-size:0.9em}.num,time,td.num{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}::selection{background:var(--accent);color:var(--accent-ink)}:root{accent-color:var(--accent);caret-color:var(--accent);scrollbar-color:var(--ink-4) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ink-4);border:3px solid var(--bg);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--ink-5)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--r-xs)}:focus:not(:focus-visible){outline:none}.wrap{width:100%;max-width:var(--page-max);margin-inline:auto;padding-inline:var(--gutter)}.wrap--wide{max-width:var(--page-wide)}.wrap--prose{max-width:var(--measure)}.section{padding-block:clamp(var(--s-7),6vw,var(--s-9))}.section--tight{padding-block:clamp(var(--s-6),4vw,var(--s-7))}.stack>* + *{margin-top:var(--flow,var(--s-4))}.skip-link{position:absolute;top:-100px;left:var(--s-4);z-index:100;padding:var(--s-3) var(--s-4);background:var(--accent);color:var(--accent-ink);font-weight:700;border-radius:0 0 var(--r-sm) var(--r-sm);transition:top var(--dur-base) var(--ease-out)}.skip-link:focus{top:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){:root{--dur-fast:1ms;--dur-base:1ms;--dur-slow:1ms}.float,.drift,.marquee__track,.blink,.scan{animation:none !important}html{scroll-behavior:auto}.reveal{opacity:1 !important;transform:none !important}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.eyebrow{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--step-eyebrow);font-weight:500;letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--fg-mute)}.eyebrow::before{content:'';width:1.5rem;height:2px;background:var(--accent);flex:none}.eyebrow--plain::before{display:none}.card{position:relative;padding:var(--s-5);background:var(--surface);border:var(--line-width) solid var(--line);border-radius:var(--r-lg);transition:border-color var(--dur-base) var(--ease-ui),transform var(--dur-fast) var(--ease-out)}@media (min-width:48rem){.card{padding:var(--s-6)}}.card--flush{padding:0;overflow:hidden}a.card,.card--interactive{display:block;text-decoration:none}a.card:hover,.card--interactive:hover{border-color:var(--accent);transform:translateY(-2px)}.card--accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.card--accent .eyebrow,.card--accent .card__meta{color:oklch(100% 0 0 / 0.75)}.card--accent .eyebrow::before{background:var(--accent-ink)}.card__tag{position:absolute;top:var(--s-3);right:var(--s-4);font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.1em;text-transform:uppercase;color:var(--fg-dim)}.card__meta{font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.08em;text-transform:uppercase;color:var(--fg-dim)}.bento{display:grid;gap:var(--s-4);grid-template-columns:1fr}@media (min-width:40rem){.bento{grid-template-columns:repeat(2,1fr);gap:var(--s-5)}.bento__item--wide{grid-column:span 2}}@media (min-width:64rem){.bento{grid-template-columns:repeat(6,1fr)}.bento__item{grid-column:span 2}.bento__item--wide{grid-column:span 3}.bento__item--full{grid-column:1 / -1}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:48px;padding:var(--s-3) var(--s-5);border:var(--line-width) solid var(--line);border-radius:var(--r-sm);background:transparent;color:var(--fg);font-weight:600;font-size:var(--step-small);text-decoration:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease-ui),border-color var(--dur-fast) var(--ease-ui),transform var(--dur-fast) var(--ease-ui)}.btn:hover{background:var(--surface-hi);border-color:var(--line-strong)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-bright);border-color:var(--accent-bright)}.btn--ghost{border-color:transparent;padding-inline:var(--s-3)}.btn--ghost:hover{border-color:var(--line)}.btn--sm{min-height:38px;padding:var(--s-2) var(--s-4);font-size:var(--step-eyebrow)}.btn[disabled],.btn[aria-disabled='true']{opacity:0.45;pointer-events:none}.btn--icon{padding:0;width:48px;min-height:48px;flex:none}.btn--icon svg{width:20px;height:20px}.chip{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-3);border:var(--line-width) solid var(--line);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.06em;text-transform:uppercase;color:var(--fg-mute);background:var(--surface)}.chip--accent{border-color:var(--accent-line);color:var(--accent-text)}.dot{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none}@media (prefers-reduced-motion:no-preference){.dot--live{animation:pulse 2.6s var(--ease-ui) infinite}}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.45;transform:scale(0.82)}}.field{display:flex;flex-direction:column;gap:var(--s-2)}.field__label{font-family:var(--font-mono);font-size:var(--step-eyebrow);letter-spacing:0.1em;text-transform:uppercase;color:var(--fg-mute)}.input{width:100%;min-height:52px;padding:var(--s-3) var(--s-4);background:var(--bg-raised);color:var(--fg);border:var(--line-width) solid var(--line);border-radius:var(--r-sm);font-size:1rem;transition:border-color var(--dur-fast) var(--ease-ui)}.input::placeholder{color:var(--fg-dim);font-family:var(--font-mono);font-size:var(--step-small)}.input:hover{border-color:var(--line-strong)}.input[aria-invalid='true']{border-color:var(--accent)}.field__error{display:flex;align-items:flex-start;gap:var(--s-2);font-size:var(--step-small);color:var(--accent-text)}.field__hint{font-size:var(--step-small);color:var(--fg-mute)}.lookup{display:flex;flex-wrap:wrap;gap:var(--s-3)}.lookup .input{flex:1 1 18rem;min-width:0}.lookup .btn{flex:0 0 auto}.accordion{border:var(--line-width) solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.accordion__item + .accordion__item{border-top:var(--line-width) solid var(--line)}.accordion__item>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) var(--s-5);min-height:56px;cursor:pointer;font-weight:600;list-style:none;transition:background var(--dur-fast) var(--ease-ui)}.accordion__item>summary::-webkit-details-marker{display:none}.accordion__item>summary:hover{background:var(--surface-hi)}.accordion__sign{position:relative;flex:none;width:22px;height:22px;border:2px solid var(--line-strong);border-radius:50%;transition:transform var(--dur-base) var(--ease-out)}.accordion__sign::before,.accordion__sign::after{content:'';position:absolute;inset:50% 25%;height:2px;margin-top:-1px;background:currentColor}.accordion__sign::after{transform:rotate(90deg);transition:opacity var(--dur-fast) var(--ease-ui)}.accordion__item[open] .accordion__sign{transform:rotate(180deg);border-color:var(--accent);color:var(--accent-text)}.accordion__item[open] .accordion__sign::after{opacity:0}.accordion__body{padding:0 var(--s-5);color:var(--fg-mute);max-width:var(--measure)}.accordion__body::after{content:'';display:block;height:var(--s-5)}@media (prefers-reduced-motion:no-preference){.accordion:not([data-accordion-js]) .accordion__item[open] .accordion__body{animation:disclose var(--dur-base) var(--ease-out)}}.accordion__item.is-closing .accordion__sign{transform:none;border-color:var(--line-strong);color:inherit}.accordion__item.is-closing .accordion__sign::after{opacity:1}@keyframes disclose{from{opacity:0;transform:translateY(-6px)}}.skeleton{--skeleton-h:1rem;height:var(--skeleton-h);border-radius:var(--r-xs);background:var(--surface-hi);position:relative;overflow:hidden}.skeleton--text{--skeleton-h:0.9rem;margin-block:0.35rem}.skeleton--title{--skeleton-h:1.6rem;width:60%}.skeleton--avatar{--skeleton-h:44px;width:44px;border-radius:50%}.skeleton--block{--skeleton-h:180px;border-radius:var(--r-md)}@media (prefers-reduced-motion:no-preference){.skeleton::after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(
90deg,transparent,var(--ink-3) 50%,transparent
);animation:shimmer 1.6s infinite}}@keyframes shimmer{to{transform:translateX(100%)}}.mascot{display:block;width:100%;height:auto}@media (prefers-reduced-motion:no-preference){.float{animation:float 7s ease-in-out infinite}.float--slow{animation-duration:11s}.float--offset{animation-delay:-3.5s}}@keyframes float{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-14px) rotate(1.2deg)}}.js .reveal{opacity:0;transform:translateY(18px)}.js .reveal.is-in{opacity:1;transform:none;transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay,0ms)}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee__track{display:flex;gap:var(--s-6);width:max-content;animation:marquee 38s linear infinite}.marquee:hover .marquee__track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}.code{position:relative;background:var(--ink-1);border:var(--line-width) solid var(--line);border-radius:var(--r-md);overflow:hidden;font-size:var(--step-small);line-height:1.7;tab-size:2}.code>pre{margin:0;padding:var(--s-4);overflow-x:auto}.copy-btn{position:absolute;top:var(--s-2);inset-inline-end:var(--s-2);z-index:2;padding:2px var(--s-3);min-height:26px;font-size:var(--step-micro);background:var(--ink-2);opacity:0;transition:opacity var(--dur-fast) var(--ease-ui)}:root[data-theme='light'] .copy-btn{background:var(--ink-2)}.code:hover>.copy-btn,.code:focus-within>.copy-btn,.copy-btn:focus-visible{opacity:1}@media (hover:none){.copy-btn{opacity:1}}.code code{font-size:inherit;white-space:pre}.code .c-key{color:var(--accent-text)}.code .c-str{color:var(--ok)}.code .c-com{color:var(--fg-dim)}.code .c-num{color:var(--warn)}.copy-btn{align-self:flex-end;flex:none;margin:var(--s-2) var(--s-2) 0;padding:2px var(--s-3);min-height:26px;font-size:var(--step-micro)}.table-scroll{overflow-x:auto;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}.table-scroll>.table{min-width:34rem}.table{width:100%;border-collapse:collapse;font-size:var(--step-small)}.table thead th{text-align:left;white-space:nowrap;font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.1em;text-transform:uppercase;color:var(--fg-mute);font-weight:500;padding:var(--s-2) var(--s-4) var(--s-3) 0;border-bottom:var(--line-width) solid var(--line-strong)}.table th[scope='row']{text-align:left;font-size:var(--step-small);font-weight:600;color:var(--fg);padding:var(--s-3) var(--s-4) var(--s-3) 0;border-top:1px solid var(--line);vertical-align:top;overflow-wrap:break-word}.table td{padding:var(--s-3) var(--s-4) var(--s-3) 0;border-top:1px solid var(--line);vertical-align:top}.table td:last-child{padding-right:0;min-width:18ch;max-width:var(--measure)}.table tbody tr{transition:background var(--dur-fast) var(--ease-ui)}.table tbody tr:hover{background:var(--surface-hi)}.table code{color:var(--accent-text);overflow-wrap:break-word}.callout{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-4);border:var(--line-width) solid var(--accent-line);border-radius:var(--r-md);background:var(--accent-wash);font-size:var(--step-small)}.callout>div{min-width:0}.callout>:first-child{margin-top:0}.callout>div,.callout>p{padding-inline-start:var(--s-1)}.callout p{max-width:var(--measure)}.callout__label{font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.12em;text-transform:uppercase;color:var(--accent-on-tint);font-weight:600}.callout--note{border-color:var(--line-strong);background:var(--surface-hi)}.callout--note .callout__label{color:var(--fg-mute)}.prose{max-width:var(--measure);color:var(--fg-mute)}.prose>* + *{margin-top:var(--s-4)}.prose:is(h2,h3){color:var(--fg)}.prose ul,.prose ol{padding-left:1.35em}.prose li + li{margin-top:var(--s-2)}.prose a{color:var(--fg);text-decoration:underline}@media (pointer:coarse),(max-width:48rem){.btn--sm,.lang__button,.hero__example,.format-tabs__tab,.chip[href],.site-foot__col a{min-height:44px}.hero__example{display:inline-flex;align-items:center;padding-inline:var(--s-4)}.brand{padding-block:var(--s-2)}}.result__head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.result__avatar{width:44px;height:44px;border-radius:50%;border:var(--line-width) solid var(--line);flex:none}.result__who{display:grid;min-width:0}.result__who b{font-weight:600}.result__who span{font-size:var(--step-small);color:var(--fg-mute)}.result__head .chip{margin-inline-start:auto}.result__text{white-space:pre-wrap;overflow-wrap:anywhere}.result__media{display:grid;gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(45%,1fr));margin-top:var(--s-4)}.result__media img,.result__media video{width:100%;border:var(--line-width) solid var(--line);border-radius:var(--r-md);background:#000}.result__metrics{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--line);font-family:var(--font-mono);font-size:var(--step-micro);color:var(--fg-dim)}.result__metrics b{color:var(--fg);font-weight:500}.result__downloads{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-4)}.thread{display:grid;gap:var(--s-4);margin:var(--s-4) 0 0;padding:0;list-style:none;max-height:32rem;overflow-y:auto;scrollbar-width:thin}.thread__post{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-3);padding-bottom:var(--s-4);border-bottom:1px solid var(--line)}.thread__post:last-child{border-bottom:0;padding-bottom:0}.thread__n{font-family:var(--font-mono);font-size:var(--step-micro);line-height:1.8;color:var(--accent-text)}.thread__body p{margin:0;font-size:var(--step-small);white-space:pre-wrap}.thread__body .result__media{margin-top:var(--s-3)}.thread__metrics{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-4);margin-top:var(--s-2);font-family:var(--font-mono);font-size:var(--step-micro);color:var(--fg-dim)}.thread__metrics b{color:var(--fg-mute);font-weight:500}.result__tabs{margin-top:var(--s-5)}.result__tabs pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:22rem;overflow-y:auto;font-family:var(--font-mono);font-size:var(--step-small)}.result__links{margin-top:var(--s-4);font-size:var(--step-small)}@media (pointer:coarse),(max-width:48rem){.crumbs a,.result__links a,.lang__item,.format-tabs__tab,.site-foot__col a{min-height:44px;display:inline-flex;align-items:center}.site-foot__col a,.lang__item{display:flex}.brand{min-height:44px}}.steps__list{display:grid;margin:0;padding:0;list-style:none;border:var(--line-width) solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}@media (min-width:56rem){.steps__list{grid-template-columns:repeat(3,1fr)}}.step{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-5)}.step + .step{border-top:var(--line-width) solid var(--line)}@media (min-width:56rem){.step + .step{border-top:0;border-left:var(--line-width) solid var(--line)}}.step__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);margin-bottom:var(--s-2);min-height:clamp(52px,6vw,72px)}.step__num{font-family:var(--font-mono);font-size:1.875rem;font-weight:700;line-height:1;color:var(--accent-text)}.step__art{width:auto;height:clamp(52px,6vw,72px);max-width:40%;object-fit:contain;object-position:right center;flex:none}.step h3{font-size:1.0625rem}.step p{max-width:21em;font-size:var(--step-small);color:var(--fg-mute)}.bento__cell{color:inherit;text-decoration:none}.bento__bg{position:absolute;inset:0;z-index:0;opacity:0.7;pointer-events:none}.bento__cell>:not(.bento__bg,.mascot--placed){position:relative;z-index:1}.bento__head{display:flex;align-items:center;gap:var(--s-3);min-height:0}.bento__head .card__tag,.mcp-tile__text .card__tag{position:static;margin-inline-end:auto}.bento__mark{width:auto;height:clamp(30px,3.4vw,40px);max-width:3.5rem;object-fit:contain;object-position:right center;flex:none;opacity:0.9}.bento h3{font-size:1.0625rem}.bento p{max-width:var(--measure);font-size:var(--step-small);color:var(--fg-mute)}.bento__link{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;margin-top:var(--s-2);margin-bottom:calc(-1 * var(--s-3));padding-top:0;font-family:var(--font-mono);font-size:var(--step-micro);color:var(--accent-text);text-decoration:none}.bento__link svg{transition:translate var(--dur-base) var(--ease-out)}.bento__cell:hover .bento__link svg{translate:4px 0}.mini-metrics{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);margin-top:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--line);font-family:var(--font-mono);font-size:var(--step-micro);color:var(--fg-dim)}.mini-metrics b{color:var(--fg);font-weight:500}.mini-thread{margin-top:var(--s-3);padding:0;list-style:none;display:grid;gap:var(--s-2);font-size:var(--step-micro);color:var(--fg-dim)}.mini-thread li{display:flex;gap:var(--s-3);align-items:baseline;padding-bottom:var(--s-2);border-bottom:1px solid var(--line)}.mini-thread__n{font-family:var(--font-mono);color:var(--accent-text);flex:none}.mini-thread__more{border-bottom:0;font-family:var(--font-mono);color:var(--fg-mute)}.mini-files{margin-top:var(--s-3);padding:0;list-style:none;display:grid;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--step-micro)}.mini-files li{display:flex;justify-content:space-between;padding:var(--s-2) var(--s-3);border:1px solid var(--line);border-radius:var(--r-xs);color:var(--fg-dim)}.mini-files b{color:var(--accent-text);font-weight:500}.mini-rail{margin-top:var(--s-3)}.mini-rail__bar{height:8px;border:1px solid var(--line-strong);border-radius:var(--r-pill);overflow:hidden}.mini-rail__bar span{display:block;height:100%;background:var(--accent)}.mini-rail .card__meta{margin-top:var(--s-2)}.mini-chips{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-3)}.mini-batch{display:grid;gap:var(--s-2);margin:0;padding:0;list-style:none;font-family:var(--font-mono);font-size:var(--step-micro);color:var(--fg-dim)}.mini-batch li{display:flex;align-items:baseline;gap:var(--s-3);padding-bottom:var(--s-2);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.mini-batch li:last-child{border-bottom:0;padding-bottom:0}.mini-batch__ok,.mini-batch__bad{flex:none;min-width:2.5rem}.mini-batch__ok{color:var(--ok)}.mini-batch__bad{color:var(--accent-text)}.format-switch{display:grid;gap:var(--s-3);margin-top:auto}.format-switch .mini-headers dd code{color:var(--fg-mute);overflow-wrap:anywhere}.chip--btn{cursor:pointer;font:inherit;font-family:var(--font-mono);font-size:var(--step-micro);transition:border-color var(--dur-fast) var(--ease-ui),color var(--dur-fast) var(--ease-ui),background var(--dur-fast) var(--ease-ui)}.chip--btn:hover{border-color:var(--line-strong);color:var(--fg)}.chip--btn[aria-pressed='true']{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-text)}.mini-headers{display:grid;gap:var(--s-2);margin:0;font-family:var(--font-mono);font-size:var(--step-micro)}.mini-headers>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s-2);padding-bottom:var(--s-2);border-bottom:1px solid var(--line)}.mini-headers dt{color:var(--fg-dim)}.mini-headers dd{margin:0;color:var(--fg-mute)}.mini-poll{display:grid;gap:var(--s-2);margin-top:auto}.mini-poll__row{display:grid;grid-template-columns:minmax(0,7rem) minmax(0,1fr) auto;align-items:center;gap:var(--s-3);font-size:var(--step-micro);color:var(--fg-mute)}.mini-poll__bar{height:6px;border-radius:var(--r-pill);background:var(--surface-hi);overflow:hidden}.mini-poll__bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.mini-poll__row .num{font-family:var(--font-mono);color:var(--fg);font-weight:500}.mini-poll .card__meta{margin-top:var(--s-1)}@media (max-width:40rem){.mini-poll__row{grid-template-columns:minmax(0,5rem) minmax(0,1fr) auto}}.bento__cell>.mini-poll,.bento__cell>.mini-metrics,.bento__cell>.mini-thread,.bento__cell>.mini-files,.bento__cell>.mini-batch,.bento__cell>.mini-headers,.bento__cell>.mini-rail,.bento__cell>.mini-chips{margin-top:auto}.bento__cell>.mini-poll ~ .mini-metrics,.bento__cell>.mini-batch ~ .mini-rail,.bento__cell>.mini-headers ~ .mini-chips{margin-top:0}.badges{margin-top:var(--s-4)}.badges__viewport{display:flex;gap:var(--s-4);overflow:hidden}.badges__track{display:flex;align-items:center;gap:var(--s-4);margin:0;padding:0;list-style:none;flex:none}.badges__track--clone{display:none}.badges__item img{display:block;height:auto;max-width:100%;opacity:0.88;transition:opacity var(--dur-base) var(--ease-ui)}.badges__item a:hover img,.badges__item a:focus-visible img{opacity:1}.badges--scrolling .badges__viewport{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.badges--scrolling .badges__track{animation:badge-drift var(--badge-duration,40s) linear infinite}.badges--scrolling .badges__track--clone{display:flex}.badges--scrolling:hover .badges__track{animation-play-state:paused}@keyframes badge-drift{from{transform:translateX(0)}to{transform:translateX(calc(-100% - var(--s-4)))}}@media (prefers-reduced-motion:reduce){.badges--scrolling .badges__track{animation:none}.badges--scrolling .badges__track--clone{display:none}.badges--scrolling .badges__viewport{overflow-x:auto;mask-image:none;-webkit-mask-image:none}}.fx-host{position:relative;isolation:isolate}.fx-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.fx-layer--grid{pointer-events:none}.fx-layer--noise{opacity:0.55;mix-blend-mode:overlay}[data-theme='light'] .fx-layer--noise{opacity:0.4;mix-blend-mode:multiply}.fx-host>:not(.fx-layer,.fx-beams,.fx-bg,.mascot--placed){position:relative;z-index:1}.fx-bg{position:absolute;inset:0;pointer-events:none;z-index:0;color:var(--fx-ink)}:root[data-theme='light'] .fx-layer--canvas{opacity:0.5}.fx-fade-b{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 100%)}.fx-fade-t{-webkit-mask-image:linear-gradient(to top,#000 0%,#000 45%,transparent 100%);mask-image:linear-gradient(to top,#000 0%,#000 45%,transparent 100%)}.fx-fade-radial{-webkit-mask-image:radial-gradient(ellipse at center,#000 0%,transparent 72%);mask-image:radial-gradient(ellipse at center,#000 0%,transparent 72%)}.fx-fade-edges{-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.fx-cell{fill:var(--accent-wash);transition:x 180ms var(--ease-out),y 180ms var(--ease-out)}.reveal{opacity:0;transform:translate3d(0,18px,0);transition:opacity 620ms var(--ease-out) var(--reveal-delay,0ms),transform 620ms var(--ease-out) var(--reveal-delay,0ms);will-change:opacity,transform}.reveal.is-in{opacity:1;transform:none;will-change:auto}.js .enter>*{opacity:0;transform:translate3d(0,14px,0)}.js .enter.is-entered>*{opacity:1;transform:none;transition:opacity 700ms var(--ease-out) var(--enter-delay,0ms),transform 700ms var(--ease-out) var(--enter-delay,0ms)}.js .enter--art{opacity:0;transform:translate3d(0,22px,0) scale(0.97)}.js .enter--art.is-entered{opacity:1;transform:none;transition:opacity 900ms var(--ease-out) 120ms,transform 900ms var(--ease-out) 120ms}@media (prefers-reduced-motion:reduce){.js .enter>*,.js .enter--art{transform:none}.js .enter.is-entered>*,.js .enter--art.is-entered{transform:none;transition:opacity 200ms linear}}.fx-spark{position:fixed;inset:0;width:100%;height:100%;display:block;pointer-events:none;user-select:none;z-index:50}::view-transition-group(root),::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:0}::view-transition-new(root){z-index:1;clip-path:var(--theme-vt-from,circle(150% at 50% 50%))}[data-theme-vt='active'] *,[data-theme-vt='active'] *::before,[data-theme-vt='active'] *::after{transition:none !important}.fx-unit{display:inline-block;opacity:0;filter:blur(9px);transform:translate3d(0,0.35em,0);animation:fx-unit-in 620ms var(--ease-out) forwards}@keyframes fx-unit-in{to{opacity:1;filter:blur(0);transform:none}}.fx-reveal{display:inline-block;vertical-align:bottom;white-space:nowrap;max-width:100%}.fx-reveal__text{display:inline-block;color:var(--fg);white-space:inherit;max-width:100%}@supports (background-clip:text) or (-webkit-background-clip:text){.fx-reveal__text{background-image:linear-gradient(90deg,var(--fg),var(--fg));background-clip:text;-webkit-background-clip:text;color:transparent;padding-bottom:0.06em;margin-bottom:-0.06em}}.fx-reveal[data-typing='true'] .fx-reveal__text::after{content:'';display:inline-block;width:0.07em;height:0.78em;margin-inline-start:0.06em;translate:0 0.04em;background:var(--accent);animation:fx-caret 900ms steps(1) infinite}@keyframes fx-caret{0%,50%{opacity:1}50.01%,100%{opacity:0}}.fx-reveal__ghost{position:absolute;visibility:hidden;white-space:nowrap;pointer-events:none}[data-fx='tilt']{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transform-style:preserve-3d;transition:transform 320ms var(--ease-out)}.btn-shimmer{--shimmer-colour:var(--accent-bright);--shimmer-speed:3.2s;--shimmer-radius:var(--r-pill);--shimmer-bg:var(--ink-1);--shimmer-cut:1.5px;--spread:110deg;position:relative;z-index:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);overflow:hidden;white-space:nowrap;cursor:pointer;padding:0.85rem 1.6rem;border:0;border-radius:var(--shimmer-radius);background:var(--shimmer-bg);color:var(--fg);font:inherit;font-weight:600;letter-spacing:-0.01em;transform:translate3d(0,0,0);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);box-shadow:inset 0 -8px 10px oklch(100% 0 0 / 0.12),0 1px 2px oklch(0% 0 0 / 0.4)}.btn-shimmer:hover{transform:translate3d(0,-1px,0);box-shadow:inset 0 -6px 10px oklch(100% 0 0 / 0.25),0 6px 18px oklch(0% 0 0 / 0.35)}.btn-shimmer:active{transform:translate3d(0,1px,0) scale(0.985);box-shadow:inset 0 -10px 10px oklch(100% 0 0 / 0.25)}@property --shimmer-angle{syntax:'<angle>';initial-value:0deg;inherits:false}.btn-shimmer__spark{position:absolute;inset:0;z-index:-30;pointer-events:none;border-radius:inherit;padding:var(--shimmer-cut);background:conic-gradient(
from var(--shimmer-angle),transparent 0deg,var(--shimmer-colour) calc(var(--spread) * 0.45),var(--shimmer-colour) calc(var(--spread) * 0.55),transparent var(--spread),transparent 360deg
);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:fx-shimmer-spin var(--shimmer-speed) linear infinite}@keyframes fx-shimmer-spin{to{--shimmer-angle:360deg}}.btn-shimmer__glow{position:absolute;inset:0;z-index:-20;border-radius:inherit;background:var(--shimmer-colour);filter:blur(30px);opacity:0.1;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}.btn-shimmer:hover .btn-shimmer__glow{opacity:0.22}.btn-shimmer>:not(.btn-shimmer__spark,.btn-shimmer__glow){position:relative;z-index:1}.btn-hover{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;padding:0.85rem 1.6rem 0.85rem 2.75rem;border:var(--line-width) solid var(--line-strong);border-radius:var(--r-pill);background:transparent;color:var(--fg);font:inherit;font-weight:600;letter-spacing:-0.01em;transition:border-color var(--dur-base) var(--ease-ui)}.btn-hover__dot{position:absolute;left:1.1rem;top:50%;width:9px;height:9px;margin-top:-4.5px;border-radius:50%;background:var(--accent);transition:transform 380ms var(--ease-ui);transform-origin:center;pointer-events:none}.btn-hover__label,.btn-hover__hover{display:inline-flex;align-items:center;gap:var(--s-2);transition:transform 320ms var(--ease-ui),opacity 320ms var(--ease-ui)}.btn-hover__hover{position:absolute;inset:0;justify-content:center;color:var(--accent-ink);transform:translate3d(48px,0,0);opacity:0}.btn-hover:hover .btn-hover__dot{transform:scale(100.8)}.btn-hover:hover .btn-hover__label{transform:translate3d(48px,0,0);opacity:0}.btn-hover:hover .btn-hover__hover{transform:translate3d(0,0,0);opacity:1}.btn-hover:hover{border-color:var(--accent)}.btn-hover:active{transform:scale(0.985)}.btn-pulse{--pulse-colour:var(--accent);--pulse-duration:2.2s;--pulse-distance:12px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-3);min-height:52px;padding:0.9rem 1.9rem 0.9rem 1.6rem;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font:inherit;font-size:1rem;font-weight:700;letter-spacing:-0.01em;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-ui)}.btn-pulse::before,.btn-pulse::after{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;animation:fx-pulse-ripple var(--pulse-duration) cubic-bezier(0.16,1,0.3,1) infinite}.btn-pulse::after{animation-delay:calc(var(--pulse-duration) / -2)}@keyframes fx-pulse-ripple{0%{box-shadow:0 0 0 0 color-mix(in oklch,var(--pulse-colour) 65%,transparent)}100%{box-shadow:0 0 0 var(--pulse-distance) color-mix(in oklch,var(--pulse-colour) 0%,transparent)}}.btn-pulse:hover{background:var(--accent-bright);transform:translate3d(0,-2px,0)}.btn-pulse:active{transform:translate3d(0,0,0) scale(0.97)}.btn-pulse:focus-visible{outline:2px solid var(--fg);outline-offset:4px}.btn-pulse__icon{display:inline-flex;animation:fx-heartbeat var(--pulse-duration) ease-in-out infinite}@keyframes fx-heartbeat{0%,44%,100%{scale:1}10%{scale:1.24}20%{scale:1}30%{scale:1.14}}.btn-pulse:hover .btn-pulse__icon{animation-duration:calc(var(--pulse-duration) / 2)}.fx-beams{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.fx-beam__wire{fill:none;stroke:var(--line-strong);stroke-width:1.5;stroke-opacity:0.35;stroke-linecap:round}.fx-beam__pulse{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round}.beam-map{position:relative;isolation:isolate}.beam-map>:not(.fx-beams,.fx-bg){position:relative;z-index:1}.beam-node{display:grid;place-items:center;width:4rem;height:4rem;border-radius:var(--r-lg);border:var(--line-width) solid var(--line-strong);background:var(--surface);transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.beam-node:hover{transform:translateY(-2px);border-color:var(--accent-line)}.beam-node img,.beam-node svg{width:2.4rem;height:2.4rem;object-fit:contain}.beam-node svg{width:1.5rem;height:1.5rem;color:var(--accent-text)}.beam-node--hub{width:6rem;height:6rem;border-color:var(--accent-line);background:var(--bg-raised)}.beam-node--hub img{width:4rem;height:4rem}.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--s-4)}.bento__cell>*,.bento__cell>:is(h2,h3,h4,p,ul,ol,dl){margin-top:0;margin-bottom:0}.bento__cell{position:relative;display:flex;flex-direction:column;gap:var(--s-4);overflow:hidden;padding:var(--s-5);border:var(--line-width) solid var(--line);border-radius:var(--r-lg);background:var(--surface);isolation:isolate;transition:border-color var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out)}.bento__cell::before{content:'';position:absolute;inset:-1px;z-index:-1;border-radius:inherit;opacity:0;background:radial-gradient(
260px circle at var(--mx,50%) var(--my,50%),var(--accent-wash),transparent 70%
);transition:opacity var(--dur-base) var(--ease-ui);pointer-events:none}.bento__cell:hover{border-color:var(--accent-line);transform:translateY(-3px)}.bento__cell:hover::before{opacity:1}.bento__cell:focus-within{border-color:var(--accent-line)}.bento__cell--full{grid-column:span 12}.bento__cell--half{grid-column:span 6}.bento__cell--third{grid-column:span 4}.bento__cell--two-thirds{grid-column:span 8}.bento__cell--quarter{grid-column:span 3}.bento__cell--tall{grid-row:span 2}@media (max-width:900px){.bento__cell--third,.bento__cell--two-thirds,.bento__cell--quarter{grid-column:span 6}}@media (max-width:620px){.bento{gap:var(--s-3)}.bento__cell,.bento__cell--half,.bento__cell--third,.bento__cell--two-thirds,.bento__cell--quarter{grid-column:span 12}.bento__cell--tall{grid-row:span 1}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.reveal.is-in{transform:none;transition:none}.fx-unit{opacity:1;filter:none;transform:none;animation:none}.btn-shimmer__spark{animation:none;opacity:0.5}[data-fx='tilt']{transform:none}.btn-hover__dot{transition:none}.btn-pulse::before,.btn-pulse::after,.btn-pulse__icon{animation:none}.btn-pulse::before{box-shadow:0 0 0 5px color-mix(in oklch,var(--pulse-colour) 28%,transparent)}.bento__cell:hover{transform:none}}.has-mascot{position:relative}.has-mascot--bleed{overflow:visible}.mascot--placed{position:absolute;pointer-events:none;user-select:none;z-index:0}.mascot--shadow{filter:drop-shadow(0 12px 24px oklch(0% 0 0 / 0.45))}[data-theme='light'] .mascot--shadow{filter:drop-shadow(0 12px 24px oklch(0% 0 0 / 0.18))}.mascot--peek{top:-3.25rem;inset-inline-end:-2rem;width:6.25rem;height:auto;transform:rotate(6deg)}.mascot--peek-left{inset-inline-end:auto;inset-inline-start:-2rem;transform:rotate(-6deg) scaleX(-1)}.mascot--peek-bottom{top:auto;bottom:-2.5rem;transform:rotate(-4deg)}.mascot--peek-lg{width:8.5rem;top:-4.5rem}.mascot--peek-sm{width:4.5rem;top:-2.25rem}@media (max-width:48rem){.mascot--peek{top:-1.5rem;inset-inline-end:-0.35rem;width:3.25rem}.mascot--peek-left{inset-inline-start:-0.35rem}.mascot--peek-lg{width:4rem;top:-2rem}.mascot--peek-sm{width:2.75rem;top:-1.25rem}}.mascot--corner{bottom:-0.75rem;inset-inline-end:-0.5rem;width:6.5rem;height:auto;opacity:0.5;transition:opacity var(--dur-slow) var(--ease-out),scale var(--dur-slow) var(--ease-out)}.has-mascot:hover>.mascot--corner,.bento__cell:hover>.mascot--corner{opacity:0.85;scale:1.05}:root[data-theme='light'] .mascot--corner{opacity:0.75}:root[data-theme='light'] .has-mascot:hover>.mascot--corner,:root[data-theme='light'] .bento__cell:hover>.mascot--corner{opacity:1}.mascot--corner-start{inset-inline-end:auto;inset-inline-start:-0.5rem;transform:scaleX(-1)}.mascot--corner-lg{width:9rem}.mascot--corner-top{bottom:auto;top:-0.75rem;transform:rotate(8deg)}@media (max-width:48rem){.mascot--corner{width:4.5rem}.mascot--corner-lg{width:5.5rem}}.mascot--upright{width:auto;height:8rem}@media (max-width:48rem){.mascot--upright{height:4rem}}.mascot--gutter{top:50%;inset-inline-start:-4rem;width:13rem;height:auto;translate:0 -50%;opacity:0.9}:root[data-theme='light'] .mascot--gutter{opacity:1}.mascot--gutter-end{inset-inline-start:auto;inset-inline-end:-4rem;transform:scaleX(-1)}.mascot--gutter-top{top:12%;translate:0 0}.mascot--gutter-bottom{top:auto;bottom:-2rem;translate:0 0}@media (max-width:64rem){.mascot--gutter{display:none}}.mascot--perch{top:-2.75rem;inset-inline-start:50%;width:5.5rem;height:auto;translate:-50% 0;z-index:-1;transform:rotate(-8deg);transition:top var(--dur-base) var(--ease-out),scale var(--dur-base) var(--ease-out)}.has-mascot:hover>.mascot--perch,.bento__cell:hover>.mascot--perch{top:-3.25rem;scale:1.06}@media (max-width:48rem){.mascot--perch{width:3.5rem;top:-1.75rem}.has-mascot:hover>.mascot--perch{top:-2rem;scale:1}}.mascot-drop{position:relative;height:8.5rem;overflow:hidden;pointer-events:none}.mascot-drop__figure{position:absolute;inset-inline-end:8%;top:0;width:8rem;height:auto;translate:0 -110%}.mascot-drop.is-in .mascot-drop__figure{animation:mascot-drop 2s var(--ease-out) 0.2s forwards,mascot-swing 2.6s ease-in-out 2.1s 2}@keyframes mascot-drop{to{translate:0 -4%}}@keyframes mascot-swing{0%,100%{rotate:0deg}50%{rotate:5deg}}@media (max-width:48rem){.mascot-drop{height:6rem}.mascot-drop__figure{width:5.5rem;inset-inline-end:4%}}.mascot--seam{top:-3.5rem;inset-inline-start:50%;width:7rem;height:auto;translate:-50% 0}@media (max-width:48rem){.mascot--seam{width:4.5rem;top:-2.25rem}}.mascot--inline{width:clamp(3.5rem,10vw,5.5rem);height:auto;flex:none}.mascot--inline-lg{width:clamp(5rem,16vw,9rem)}.mascot--bob{animation:mascot-bob 6s var(--bob-delay,0s) ease-in-out infinite}@keyframes mascot-bob{0%,100%{translate:0 0}50%{translate:0 -8px}}.mascot--perch.mascot--bob,.mascot--seam.mascot--bob{animation-name:mascot-bob-centred}@keyframes mascot-bob-centred{0%,100%{translate:-50% 0}50%{translate:-50% -8px}}.mascot--gutter.mascot--bob{animation-name:mascot-bob-mid}@keyframes mascot-bob-mid{0%,100%{translate:0 -50%}50%{translate:0 calc(-50% - 10px)}}.mascot--sway{animation:mascot-sway 9s var(--bob-delay,0s) ease-in-out infinite;transform-origin:50% 0}@keyframes mascot-sway{0%,100%{rotate:-3deg}50%{rotate:3deg}}.mascot--spin{animation:mascot-spin 50s linear infinite}@keyframes mascot-spin{to{rotate:360deg}}.mascot--react{transition:rotate var(--dur-slow) var(--ease-out),scale var(--dur-slow) var(--ease-out)}.has-mascot:hover>.mascot--react{rotate:-6deg;scale:1.08}.brand__cloud,.wordmark__cloud{display:inline-block;width:1.2em;height:auto;vertical-align:-0.14em;margin-inline:0.04em}.wordmark__cloud{width:0.55em;vertical-align:-0.02em;margin-inline:0.06em;opacity:0.75}@media (prefers-reduced-motion:reduce){.mascot--bob,.mascot--sway,.mascot--spin,.mascot-drop.is-in .mascot-drop__figure{animation:none}.mascot-drop__figure{translate:0 -4%}.mascot--react,.mascot--corner,.mascot--perch{transition:none}}.site-head{position:sticky;top:0;z-index:40;background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}@supports not (backdrop-filter:blur(1px)){.site-head{background:var(--bg)}}.site-head__inner{display:flex;align-items:center;gap:var(--s-4);min-height:var(--header-h)}.brand{display:inline-flex;align-items:center;gap:var(--s-2);text-decoration:none;flex:none}.brand__mark{width:30px;height:auto;flex:none}.brand__text{font-family:var(--font-mono);font-weight:700;font-size:0.95rem;letter-spacing:-0.02em}.brand__dot{color:var(--accent-text)}.site-nav{margin-inline-start:auto}.site-nav__list{display:flex;align-items:center;gap:var(--s-1);list-style:none;margin:0;padding:0}.site-nav__list a{display:block;padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);font-size:var(--step-small);color:var(--fg-mute);text-decoration:none;transition:color var(--dur-fast) var(--ease-ui)}.site-nav__list a:hover{color:var(--fg)}.site-nav__list a[aria-current='page']{color:var(--fg);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}.site-head__tools{display:flex;align-items:center;gap:var(--s-1);flex:none}.site-head .site-nav + .site-head__tools{margin-inline-start:0}.theme-toggle{position:relative}.theme-toggle__sun,.theme-toggle__moon{display:grid;place-items:center;transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.theme-toggle__moon{position:absolute;inset:0}.theme-toggle__sun{opacity:1;transform:none}.theme-toggle__moon{opacity:0;transform:rotate(-90deg) scale(0.5)}:root[data-theme='light'] .theme-toggle__sun{opacity:0;transform:rotate(90deg) scale(0.5)}:root[data-theme='light'] .theme-toggle__moon{opacity:1;transform:none}.lang{position:relative}.lang__button{list-style:none;gap:var(--s-2)}.lang__button::-webkit-details-marker{display:none}.lang__current{font-family:var(--font-mono);font-size:var(--step-micro);letter-spacing:0.08em}.lang__caret{width:6px;height:6px;margin-inline-start:-2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;rotate:45deg;translate:0 -1px;transition:rotate var(--dur-base) var(--ease-out),translate var(--dur-base) var(--ease-out)}.lang[open] .lang__caret{rotate:-135deg;translate:0 1px}.flag{display:block;flex:none;border-radius:2px;box-shadow:inset 0 0 0 0.5px oklch(0% 0 0 / 0.35)}.lang__menu{position:absolute;top:calc(100% + var(--s-2));inset-inline-end:0;z-index:50;min-width:12.5rem;padding:var(--s-1);margin:0;list-style:none;background:var(--bg-raised);border:var(--line-width) solid var(--line);border-radius:var(--r-md);box-shadow:0 18px 40px -22px oklch(0% 0 0 / 0.7);transform-origin:top right;animation:lang-open 260ms var(--ease-out) both}.lang--scripted .lang__menu,.lang--scripted .lang__menu li{animation:none}@keyframes lang-open{from{opacity:0;scale:0.94;translate:0 -8px}}.lang__menu li{animation:lang-row 260ms var(--ease-out) both;animation-delay:calc(60ms + var(--row,0) * 34ms)}@keyframes lang-row{from{opacity:0;translate:0 -6px}}.lang__item{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);font-size:var(--step-small);text-decoration:none;color:var(--fg-mute);transition:background var(--dur-fast) var(--ease-ui),color var(--dur-fast) var(--ease-ui)}.lang__item:hover{background:var(--surface-hi);color:var(--fg)}.lang__item[aria-current='true']{color:var(--accent-text)}.lang__name{flex:1 1 auto}.lang__code{font-family:var(--font-mono);font-size:var(--step-micro);color:var(--fg-dim)}@media (prefers-reduced-motion:reduce){.lang__menu{animation:lang-fade 140ms linear both}.lang__menu li{animation:none}.lang__caret{transition:none}}@keyframes lang-fade{from{opacity:0}}.nav-toggle{display:none}.nav-toggle__close{display:none}.nav-toggle[aria-expanded='true'] .nav-toggle__open{display:none}.nav-toggle[aria-expanded='true'] .nav-toggle__close{display:block}@media (max-width:61.99rem){.nav-toggle{display:inline-flex}.site-nav{position:fixed;inset:var(--header-h) 0 auto 0;margin:0;padding:var(--s-4) var(--gutter) var(--s-6);background:var(--bg);border-bottom:var(--line-width) solid var(--line);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out),visibility var(--dur-base)}.site-nav.is-open{transform:none;opacity:1;visibility:visible}.site-nav__list{flex-direction:column;align-items:stretch;gap:0}.site-nav__list a{padding:var(--s-4) var(--s-2);font-size:1.0625rem;border-bottom:1px solid var(--line);border-radius:0}.site-nav__list a[aria-current='page']{box-shadow:inset 3px 0 0 var(--accent);padding-inline-start:var(--s-4)}}.page-head{position:relative;padding-block:clamp(var(--s-6),7vw,var(--s-9));border-bottom:1px solid var(--line);background:var(--bg-raised);overflow:hidden}.page-head__inner{display:flex;align-items:center;gap:var(--s-6)}.page-head__text{flex:1 1 auto;min-width:0}.page-head h1{margin-top:var(--s-3)}.page-head__lead{margin-top:var(--s-4);max-width:23em;color:var(--fg-mute);font-size:1.125rem}.page-head__art{flex:0 0 auto;width:clamp(110px,20vw,210px)}@media (max-width:47.99rem){.page-head__art{display:none}}.hero{position:relative;padding-block:clamp(var(--s-7),7vw,var(--s-9)) clamp(var(--s-6),4vw,var(--s-7));overflow:hidden}.hero__texture{position:absolute;inset:0;background-image:var(--hero-texture);background-size:cover;background-position:center;opacity:0.55;mix-blend-mode:screen;pointer-events:none;mask-image:radial-gradient(120% 90% at 62% 8%,#000 18%,transparent 78%)}:root[data-theme='light'] .hero__texture{filter:invert(1);mix-blend-mode:multiply;opacity:0.3}.hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-7);align-items:center}@media (min-width:62rem){.hero__inner{grid-template-columns:minmax(0,1.2fr) minmax(0,0.8fr);gap:var(--s-8)}}.hero h1{font-size:var(--step-display);line-height:var(--leading-display);letter-spacing:var(--track-display);font-weight:900;margin-top:var(--s-4)}.hero__sub{margin-top:var(--s-5);max-width:23em;font-size:1.1875rem;color:var(--fg-mute)}.hero__form{margin-top:var(--s-6)}.hero__note{margin-top:var(--s-3);font-size:var(--step-small);color:var(--fg-dim)}.hero__examples{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:var(--s-4)}.hero__example{font-family:var(--font-mono);font-size:var(--step-micro);padding:var(--s-1) var(--s-3);border:1px solid var(--line);border-radius:var(--r-pill);background:none;color:var(--fg-mute);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-ui),color var(--dur-fast) var(--ease-ui)}.hero__example:hover{border-color:var(--accent);color:var(--accent-text)}.hero__art{position:relative}@media (max-width:61.99rem){.hero__art{max-width:min(15rem,62vw);margin-inline:auto;order:-1}}@media (max-width:61.99rem){.hero{padding-block:var(--s-6) var(--s-7)}}.site-foot{margin-top:var(--s-9);border-top:1px solid var(--line);background:var(--bg-raised);overflow:hidden;padding-block-start:var(--s-8)}.site-foot__grid{display:grid;gap:var(--s-6);grid-template-columns:1fr}@media (min-width:40rem){.site-foot__grid{grid-template-columns:repeat(3,1fr)}.site-foot__brand{grid-column:span 3}}@media (min-width:62rem){.site-foot__grid{grid-template-columns:2.2fr repeat(3,1fr)}.site-foot__brand{grid-column:auto}}.site-foot__blurb{margin-top:var(--s-4);max-width:17em;font-size:var(--step-small);color:var(--fg-mute)}.site-foot__brand .chip{margin-top:var(--s-4)}.site-foot__social{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:var(--s-5) 0 0;padding:0;list-style:none}.social-dot{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);color:var(--fg-dim);background:var(--bg-raise,transparent);transition:color 0.18s ease,border-color 0.18s ease,background-color 0.18s ease}.social-dot .icon{transform:translate(var(--gx,0),var(--gy,0)) scale(var(--gs,1));transition:transform 0.28s cubic-bezier(0.22,1,0.36,1);will-change:transform}.social-dot:hover,.social-dot:focus-visible{color:var(--accent,currentColor);border-color:var(--accent,var(--line));background:color-mix(in srgb,var(--accent,currentColor) 10%,transparent)}@media (prefers-reduced-motion:reduce){.social-dot .icon{transform:none;transition:none}}.site-foot__head{font-family:var(--font-mono);font-size:var(--step-micro);font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--fg-dim);margin-bottom:var(--s-3)}.site-foot__col ul{display:grid;gap:var(--s-1);margin:0;padding:0}.site-foot__col a{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) 0;font-size:var(--step-small);color:var(--fg-mute);text-decoration:none}.site-foot__col a:hover{color:var(--accent-text)}.site-foot__col svg{flex:none;opacity:0.7}.wordmark{position:relative;margin-top:var(--s-8);user-select:none;line-height:0.8}.wordmark__text{display:block;font-family:var(--font-mono);font-size:clamp(3.5rem,17vw,15rem);font-weight:700;letter-spacing:-0.04em;line-height:0.85;text-align:center;white-space:nowrap;color:var(--fg);opacity:0.09}.wordmark__part::before{content:attr(data-part)}.site-foot__bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-3);margin-top:var(--s-6);padding-block:var(--s-5);border-top:1px solid var(--line);font-family:var(--font-mono);font-size:var(--step-eyebrow);color:var(--fg-dim)}.site-foot__built{letter-spacing:0.01em;color:var(--fg-dim)}.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin:0 0 var(--s-4);padding:0;list-style:none;font-family:var(--font-mono);font-size:var(--step-eyebrow);color:var(--fg-mute)}.crumbs li + li::before{content:'/';margin-right:var(--s-2);color:var(--accent-text)}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--fg)}.crumbs [aria-current='page']{color:var(--fg)}.rule{display:block;width:2.5rem;height:3px;margin-bottom:var(--s-4);background:var(--accent)}.section__head--center .rule{margin-inline:auto}.section__head{max-width:23em;margin-bottom:var(--s-6)}.section__head h2{margin-top:var(--s-3)}.section__head p,.section__lead{margin-top:var(--s-4);color:var(--fg-mute)}.section__head:has(.section__lead){max-width:var(--measure)}.section__head--center{margin-inline:auto;text-align:center}.section__head--center .eyebrow{justify-content:center}@media (max-width:48rem),(pointer:coarse){.site-foot__col a{min-height:44px}.site-foot__brand .brand,.site-head .brand{min-height:44px;min-width:44px}.section__lead a,.callout a,.docs__enterprise a,.card a:not(.btn):not(.bento__cell){display:inline-flex;align-items:center;min-height:44px}.crumbs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}.chip--btn,.copy-btn{min-height:44px}:not(pre)>code{font-size:var(--step-micro)}}