.site-header[data-astro-cid-3ef6ksr2]{border-bottom:1px solid var(--c-border);background:var(--c-bg)}.header-inner[data-astro-cid-3ef6ksr2]{max-width:1140px;margin:0 auto;padding:.85rem 1.25rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem}.logo[data-astro-cid-3ef6ksr2]{color:var(--c-text);display:inline-flex;align-items:center;gap:.55rem}.logo[data-astro-cid-3ef6ksr2]:hover{text-decoration:none}.logo-mark[data-astro-cid-3ef6ksr2]{display:inline-block;background:var(--c-text);color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;font-weight:700;padding:.18rem .4rem;border-radius:4px;letter-spacing:.05em}.logo-text[data-astro-cid-3ef6ksr2] strong[data-astro-cid-3ef6ksr2]{font-size:1rem}.main-nav[data-astro-cid-3ef6ksr2]{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding:.4rem .7rem;color:var(--c-text);font-size:.9rem;border-radius:5px;text-decoration:none;border:1px solid transparent}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{background:var(--c-input-hover-bg);text-decoration:none}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].active{background:var(--c-tip-bg);border-color:var(--c-tip-border);color:var(--c-text);font-weight:600}.theme-toggle[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:.25rem;border:1px solid var(--c-border);background:var(--c-input-bg);color:var(--c-text);border-radius:5px;cursor:pointer;padding:0}.theme-toggle[data-astro-cid-3ef6ksr2]:hover{background:var(--c-input-hover-bg)}.theme-toggle[data-astro-cid-3ef6ksr2] [data-astro-cid-3ef6ksr2][data-icon]{display:none;line-height:0}:root[data-theme=light] .theme-toggle[data-astro-cid-3ef6ksr2] [data-astro-cid-3ef6ksr2][data-icon=moon],:root[data-theme=dark] .theme-toggle[data-astro-cid-3ef6ksr2] [data-astro-cid-3ef6ksr2][data-icon=sun]{display:inline-flex}@media (max-width:880px){.main-nav[data-astro-cid-3ef6ksr2]{gap:.15rem}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding:.35rem .55rem;font-size:.85rem}.logo-text[data-astro-cid-3ef6ksr2] strong[data-astro-cid-3ef6ksr2]{font-size:.9rem}}@media (max-width:580px){.header-inner[data-astro-cid-3ef6ksr2]{padding:.65rem .75rem;flex-direction:column;align-items:flex-start}.main-nav[data-astro-cid-3ef6ksr2]{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.15rem}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{white-space:nowrap;flex-shrink:0}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--c-border);margin-top:4rem;background:var(--c-bg-tool)}.footer-inner[data-astro-cid-sz7xmlte]{max-width:var(--max-content);margin:0 auto;padding:2rem 1rem 1rem;display:grid;grid-template-columns:1fr 1fr 2fr;gap:2rem}.footer-block[data-astro-cid-sz7xmlte] h2[data-astro-cid-sz7xmlte]{font-size:.95rem;margin:0 0 .5rem;text-transform:uppercase;color:var(--c-muted)}.footer-block[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0}.footer-block[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{margin:.25rem 0}.privacy-note[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{font-size:.9rem;color:var(--c-muted);margin:0;display:inline-flex;align-items:center;gap:.5rem}.copyright[data-astro-cid-sz7xmlte]{border-top:1px solid var(--c-border);text-align:center;padding:1rem;color:var(--c-muted)}@media (max-width:640px){.footer-inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:1.5rem}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_assets/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_assets/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_assets/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_assets/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_assets/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--c-text:#1a1a1a;--c-muted:#6a737d;--c-border:#e1e4e8;--c-bg:#ffffff;--c-bg-tool:#fafbfc;--c-accent:#2d6dd4;--c-accent-hover:#1f5cbb;--c-error:#c5424c;--c-error-bg:#fbeef0;--c-error-text:#86181d;--c-success:#3a9d54;--c-success-hover:#2e8d44;--c-warning-bg:#fbf2dc;--c-warning-border:#d39235;--c-card-bg:#f5f4ee;--c-card-border:#d6dade;--c-card-header:#ebe9df;--c-tip-bg:#fff8e6;--c-tip-border:#e6dfc4;--c-input-bg:#ffffff;--c-input-hover-bg:#f6f8fa;--c-shadow-card:rgba(60, 50, 30, .08);--max-content:860px}:root[data-theme=dark]{--c-text:#e8e5dc;--c-muted:#9a948a;--c-border:#2d2820;--c-bg:#0f0d08;--c-bg-tool:#161310;--c-accent:#6499f1;--c-accent-hover:#7eaef5;--c-error:#e87580;--c-error-bg:#2a1419;--c-error-text:#ffb4be;--c-success:#5fbb75;--c-success-hover:#6ec985;--c-warning-bg:#2a200e;--c-warning-border:#6e5828;--c-card-bg:#1c1813;--c-card-border:#2d2820;--c-card-header:#2a241c;--c-tip-bg:#2b2515;--c-tip-border:#5b4f2a;--c-input-bg:#2a241c;--c-input-hover-bg:#332d24;--c-shadow-card:rgba(0, 0, 0, .4)}:root{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Geist Variable,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--c-text);background:var(--c-bg);font-feature-settings:"cv11"}a,button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}button:not([disabled]):active,a.primary-btn:active,a.secondary-btn:active,.mode-btn:not([disabled]):active,.action-btn:not([disabled]):active{transform:translateY(1px)}a{color:var(--c-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.25;margin-top:2rem;margin-bottom:1rem;text-wrap:balance}h1{font-size:2rem;letter-spacing:-.015em}h2{font-size:1.5rem}h3{font-size:1.2rem}time,.char-count,table td,.last-updated{font-variant-numeric:tabular-nums}main{max-width:var(--max-content);margin:0 auto;padding:1rem}code,kbd,pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}pre{background:var(--c-bg-tool);padding:1rem;border-radius:6px;overflow-x:auto}:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}table{border-collapse:collapse;width:100%;margin:1rem 0}th,td{border:1px solid var(--c-border);padding:.5rem .75rem;text-align:left}th{background:var(--c-bg-tool)}ol.howto{list-style:none;counter-reset:howto-counter;padding-left:0;margin:1rem 0}ol.howto li{counter-increment:howto-counter;position:relative;padding:.6rem .75rem .6rem 2.75rem;margin:.5rem 0;background:var(--c-bg-tool);border-left:3px solid var(--c-accent);border-radius:4px}ol.howto li:before{content:counter(howto-counter);position:absolute;left:.75rem;top:.5rem;width:1.5rem;height:1.5rem;background:var(--c-accent);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.page-grid{max-width:1140px;margin:0 auto;padding:1rem;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:2rem;align-items:start}.page-grid main{max-width:none;margin:0;padding:0;min-width:0}@media (max-width:1024px){.page-grid{grid-template-columns:1fr;gap:1.5rem}}