:root{--paper:#fff;--paper-raised:#f8fafc;--ink:#0f172a;--ink-quiet:#64748b;--rule:#e2e8f0;--resolve:#2563eb;--resolve-wash:#2563eb14;--resolve-fill:#2563eb;--resolve-fill-ink:#fff;--severity-error:#b91c1c;--severity-warn:#b45309;--severity-clean:#15803d;--tok-keyword:#7c19e6;--tok-name:#0060df;--tok-property:#0d7a6f;--tok-string:#067a3e;--tok-number:#c2410c;--tok-arrow:#d10f5c;--tok-punctuation:#737373;--measure:68ch;--gutter:clamp(1.25rem, 5vw, 5rem);--section-gap:clamp(5rem, 12vw, 9rem);--font-display:ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;--font-body:var(--font-display);--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--paper:#181818;--paper-raised:#202020;--ink:#f1f1f1;--ink-quiet:#a3a3a3;--rule:#333;--resolve:#60a5fa;--resolve-wash:#60a5fa1f;--resolve-fill:#1d4ed8;--resolve-fill-ink:#eff6ff;--severity-error:#f87171;--severity-warn:#fbbf24;--severity-clean:#4ade80;--tok-keyword:#c98bff;--tok-name:#6ec6ff;--tok-property:#4fe0c4;--tok-string:#7ee787;--tok-number:#ffb454;--tok-arrow:#ff7b9c;--tok-punctuation:#8b8b8b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#181818;--paper-raised:#202020;--ink:#f1f1f1;--ink-quiet:#a3a3a3;--rule:#333;--resolve:#60a5fa;--resolve-wash:#60a5fa1f;--resolve-fill:#1d4ed8;--resolve-fill-ink:#eff6ff;--severity-error:#f87171;--severity-warn:#fbbf24;--severity-clean:#4ade80;--tok-keyword:#c98bff;--tok-name:#6ec6ff;--tok-property:#4fe0c4;--tok-string:#7ee787;--tok-number:#ffb454;--tok-arrow:#ff7b9c;--tok-punctuation:#8b8b8b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}body{overflow-wrap:break-word;background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:17px;line-height:1.65;display:flex;overflow-x:hidden}:where(a){color:inherit}:where(a,button):focus-visible{outline:2px solid var(--resolve);outline-offset:3px;border-radius:3px}.skip-link{background:var(--resolve);color:#fff;z-index:100;padding:.75rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.site-header .button-primary{justify-content:normal;align-items:normal;padding:.45rem .95rem;font-size:.875rem;display:block}.site-header{z-index:30;height:56px;padding:0 max(var(--gutter), calc((100% - 1400px) / 2 + var(--gutter)));background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;font-size:16px;line-height:1.7;display:flex;position:sticky;top:0}.wordmark{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);white-space:nowrap;align-items:baseline;font-size:1.25rem;font-weight:600;text-decoration:none;display:flex}.wordmark-figure{color:var(--ink)}.wordmark-it{color:var(--resolve)}.site-nav{align-items:center;gap:.75rem;display:flex}.site-nav>a:not(.button-primary){color:var(--ink-quiet);text-decoration:none}.site-nav>a:not(.button-primary):hover{color:var(--ink)}.toggle{border:1px solid var(--rule);width:34px;height:34px;color:var(--ink-quiet);cursor:pointer;background:0 0;border-radius:999px;place-items:center;display:grid}.toggle:hover{color:var(--ink);border-color:var(--ink-quiet)}.toggle svg{fill:none;stroke:currentColor;stroke-width:2.04px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.icon-moon,:root[data-theme=dark] .icon-sun{display:none}:root[data-theme=dark] .icon-moon{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun{display:none}:root:not([data-theme=light]) .icon-moon{display:block}}.button-primary{background:var(--resolve-fill);color:var(--resolve-fill-ink);letter-spacing:.01em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.5rem 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.button-primary:hover{filter:brightness(1.08)}.button-primary.large{padding:.8rem 1.5rem;font-size:1rem}.hero-actions>.button-primary.large,.hero-actions>.button-quiet{justify-content:center;min-width:9rem;padding-block:.8rem;padding-inline:1.25rem}.button-quiet{border:1px solid var(--rule);color:var(--ink-quiet);border-radius:999px;align-items:center;padding:.8rem 1.5rem;font-size:1rem;text-decoration:none;display:inline-flex}.button-quiet:hover{color:var(--ink);border-color:var(--ink-quiet)}@media (width<=560px){.site-nav>a:not(.button-primary){display:none}.site-nav{gap:.5rem}}main{display:block}main>section{padding-inline:var(--gutter);padding-block:var(--section-gap);max-width:1400px;margin-inline:auto}main>section+section{border-top:1px solid var(--rule)}.hero-copy,.pair-half,.rule,.state,.package,.faq-list dd{min-width:0}.hero{padding-block:clamp(3rem, 8vw, 5.5rem) var(--section-gap);text-align:center;flex-direction:column;align-items:center;display:flex}.hero-copy{flex-direction:column;align-items:center;display:flex}.hero-headline{letter-spacing:-.035em;text-wrap:balance;max-width:18ch;margin:0 0 1.25rem;font-size:clamp(2.5rem,7vw,4.25rem);font-weight:700;line-height:1.05}.hero-sub{text-align:center;max-width:54ch;color:var(--ink-quiet);text-wrap:pretty;margin:0 0 2.25rem;font-size:clamp(1.0625rem,1.6vw,1.25rem)}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.pair-plate{background:var(--rule);border:1px solid var(--rule);text-align:left;border-radius:16px;grid-template-columns:minmax(0,1fr);gap:1px;width:100%;margin:clamp(2.5rem,6vw,4rem) 0 0;display:grid;overflow:hidden}@media (width>=880px){.pair-plate,.pair-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.pair-half{background:var(--paper);flex-direction:column;display:flex}.pair-half>:not(.pair-label){padding:clamp(1.25rem,3vw,2rem)}.pair-label{border-bottom:1px solid var(--rule);color:var(--ink-quiet);letter-spacing:.01em;margin:0;padding:.75rem clamp(1.25rem,3vw,2rem);font-size:.8125rem;font-weight:500}.pair-source{font-family:var(--font-mono);tab-size:2;margin:0;font-size:clamp(.8125rem,1.4vw,.9375rem);line-height:1.7;overflow-x:auto}.pair-source code{font:inherit}.pair-figure{flex:1;align-items:center;width:100%;display:flex}.pair-figure svg{width:100%;height:auto;display:block}@media (width>=760px){.rule-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=820px){.state-list{grid-template-columns:repeat(3,minmax(0,1fr))}}:root:lang(ja) .section-headline,:root:lang(ja) .hero-headline,:root:lang(ja) .closing-headline{letter-spacing:-.01em;word-break:normal;overflow-wrap:normal;line-break:strict;white-space:pre-line;max-width:26ch;line-height:1.4}:root:lang(ja) body{line-height:1.85}.site-footer{padding:.75rem var(--gutter);border-top:1px solid var(--rule);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem 1rem;margin-top:auto;display:flex}.site-footer .wordmark{font-size:.9375rem}.footer-legal{color:var(--ink-quiet);flex-wrap:wrap;justify-content:center;gap:.25rem .75rem;margin:0;font-size:.8125rem;display:flex}:root:lang(zh-Hans) body,:root:lang(zh-Hans) button,:root:lang(zh-Hans) input{font-family:ui-sans-serif,system-ui,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,sans-serif}:root:lang(zh-Hant) body,:root:lang(zh-Hant) button,:root:lang(zh-Hant) input{font-family:ui-sans-serif,system-ui,PingFang TC,Microsoft JhengHei,Noto Sans TC,sans-serif}:root:lang(ko) body,:root:lang(ko) button,:root:lang(ko) input{font-family:ui-sans-serif,system-ui,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,sans-serif}.tok-keyword{color:var(--tok-keyword);font-weight:600}.tok-name{color:var(--tok-name);font-weight:600}.tok-property{color:var(--tok-property)}.tok-identifier{color:var(--tok-name)}.tok-string{color:var(--tok-string)}.tok-number{color:var(--tok-number)}.tok-punctuation{color:var(--tok-punctuation)}.tok-arrow{color:var(--tok-arrow);font-weight:600}
