:root{color-scheme:dark;--bg: #04121a;--bg-elev: #071b25;--bg-elev-2: #0a2431;--surface: rgba(255, 255, 255, .045);--surface-strong: rgba(255, 255, 255, .08);--line: rgba(160, 205, 220, .14);--line-strong: rgba(160, 205, 220, .26);--text: #e9f3f5;--text-muted: #97adb6;--text-dim: #6f8893;--aqua: #59e0c8;--aqua-strong: #2ec7ac;--aqua-soft: rgba(89, 224, 200, .12);--gold: #ffb46b;--gold-soft: rgba(255, 180, 107, .12);--blue: #79c4ff;--danger: #ff8080;--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--radius-pill: 999px;--shadow: 0 24px 80px rgba(0, 0, 0, .45);--shadow-soft: 0 12px 40px rgba(0, 0, 0, .28);--maxw: 1160px;--gutter: clamp(20px, 4vw, 40px);--section-y: clamp(52px, 6.5vw, 92px);--font-sans: system-ui, -apple-system, "Segoe UI Variable", "Segoe UI", "Inter", "Noto Sans SC", "Noto Sans JP", "Hiragino Sans", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, "Cascadia Code", "SFMono-Regular", Menlo, Consolas, monospace;--step--1: clamp(.8rem, .78rem + .1vw, .875rem);--step-0: clamp(1rem, .97rem + .16vw, 1.0625rem);--step-1: clamp(1.15rem, 1.08rem + .35vw, 1.35rem);--step-2: clamp(1.45rem, 1.28rem + .85vw, 1.9rem);--step-3: clamp(1.9rem, 1.55rem + 1.7vw, 2.75rem);--step-4: clamp(2.5rem, 1.85rem + 3.2vw, 4.2rem);--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100vh;background:radial-gradient(1100px 700px at 72% -8%,rgba(46,199,172,.13),transparent 62%),radial-gradient(900px 620px at 4% 18%,rgba(121,196,255,.09),transparent 58%),var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit}a{color:inherit;text-decoration-color:#59e0c866;text-underline-offset:3px}a:hover{text-decoration-color:var(--aqua)}::selection{background:#59e0c847;color:#fff}:focus-visible{outline:2px solid var(--aqua);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{width:min(100% - var(--gutter) * 2,var(--maxw));margin-inline:auto}.section{padding-block:var(--section-y)}.section--tight{padding-block:calc(var(--section-y) * .6)}.section-head{max-width:720px;margin-bottom:clamp(28px,4vw,46px)}.section-head--center{margin-inline:auto;text-align:center}h1,h2,h3,h4{font-weight:620;line-height:1.12;letter-spacing:-.022em;text-wrap:balance}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1);letter-spacing:-.012em}p{text-wrap:pretty}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--aqua);font-size:var(--step--1);font-weight:600;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor;opacity:.7}.lede{margin-top:20px;max-width:62ch;color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.muted{color:var(--text-muted)}.small{font-size:var(--step--1);color:var(--text-dim)}.mono{font-family:var(--font-mono);font-size:.88em}.btn{--btn-bg: var(--surface);--btn-fg: var(--text);--btn-border: var(--line-strong);display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border:1px solid var(--btn-border);border-radius:var(--radius-pill);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--step-0);font-weight:560;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease)}.btn:hover{transform:translateY(-1px);border-color:var(--aqua)}.btn:active{transform:translateY(0)}.btn--primary{--btn-bg: linear-gradient(180deg, #6ff0d8, #2ec7ac);--btn-fg: #032a24;--btn-border: transparent;font-weight:650;box-shadow:0 10px 30px #2ec7ac40}.btn--primary:hover{box-shadow:0 14px 40px #2ec7ac61}.btn--ghost{--btn-bg: transparent}.btn--small{min-height:38px;padding:0 16px;font-size:var(--step--1)}.btn[aria-disabled=true]{opacity:.55;pointer-events:none}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--aqua);font-weight:560;text-decoration:none}.text-link:hover{text-decoration:underline}.card{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--surface),rgba(255,255,255,.015));padding:clamp(22px,3vw,32px)}.grid{display:grid;gap:clamp(16px,2.4vw,24px)}.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.stack>*+*{margin-top:1rem}.prose{max-width:72ch;color:#d5e4e8}.prose>*+*{margin-top:1.15em}.prose h2{margin-top:2.2em;font-size:var(--step-2)}.prose h3{margin-top:1.8em}.prose p,.prose li{line-height:1.75}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose a{color:var(--aqua)}.prose blockquote{border-left:2px solid var(--aqua);padding-left:1.1em;color:var(--text-muted);font-style:italic}.prose code{padding:.15em .4em;border-radius:6px;background:#ffffff12;font-family:var(--font-mono);font-size:.88em}.prose pre{overflow-x:auto;padding:1.1em 1.25em;border:1px solid var(--line);border-radius:var(--radius);background:#031017;font-size:.86em}.prose pre code{padding:0;background:none}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.4em}.prose table{width:100%;border-collapse:collapse;font-size:.94em}.prose th,.prose td{border-bottom:1px solid var(--line);padding:.6em .5em;text-align:left}.prose img{border-radius:var(--radius)}.skip-link{position:absolute;left:16px;top:-100px;z-index:100;padding:10px 16px;border-radius:var(--radius-sm);background:var(--aqua);color:#032a24;font-weight:600;text-decoration:none;transition:top .15s var(--ease)}.skip-link:focus{top:16px}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:#04121ab8;backdrop-filter:blur(14px) saturate(140%)}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:24px;min-height:68px}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:10px;font-weight:650;letter-spacing:-.02em;text-decoration:none;flex-shrink:0}.brand__text[data-astro-cid-3ef6ksr2]{font-size:1.02rem}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:26px;margin-left:12px}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--text-muted);font-size:.94rem;font-weight:500;text-decoration:none;transition:color .16s var(--ease)}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover,.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2][aria-current=page]{color:var(--text)}.actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:18px;margin-left:auto}.langs[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface)}.lang[data-astro-cid-3ef6ksr2]{padding:5px 9px;border-radius:var(--radius-pill);color:var(--text-dim);font-size:.76rem;font-weight:600;letter-spacing:.02em;text-decoration:none;transition:color .16s var(--ease),background-color .16s var(--ease)}.lang[data-astro-cid-3ef6ksr2]:hover{color:var(--text)}.lang[data-astro-cid-3ef6ksr2].is-current{background:var(--surface-strong);color:var(--text)}.mobile[data-astro-cid-3ef6ksr2]{display:none;margin-left:auto}.mobile[data-astro-cid-3ef6ksr2] summary[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:0 10px;border:1px solid var(--line);border-radius:12px;cursor:pointer;list-style:none}.mobile[data-astro-cid-3ef6ksr2] summary[data-astro-cid-3ef6ksr2]::-webkit-details-marker{display:none}.mobile[data-astro-cid-3ef6ksr2] summary[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{height:1.5px;background:var(--text);border-radius:2px}.mobile-panel[data-astro-cid-3ef6ksr2]{position:absolute;left:0;right:0;top:100%;display:grid;gap:18px;padding:22px var(--gutter) 28px;border-bottom:1px solid var(--line);background:#05151dfa;backdrop-filter:blur(16px)}.mobile-panel[data-astro-cid-3ef6ksr2] nav[data-astro-cid-3ef6ksr2]{display:grid;gap:4px}.mobile-panel[data-astro-cid-3ef6ksr2] nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding:12px 2px;border-bottom:1px solid var(--line);color:var(--text);font-size:1.05rem;text-decoration:none}.mobile-langs[data-astro-cid-3ef6ksr2]{display:flex;gap:8px}.mobile-langs[data-astro-cid-3ef6ksr2] .lang[data-astro-cid-3ef6ksr2]{flex:1;padding:9px;text-align:center;border:1px solid var(--line)}@media(max-width:960px){.nav[data-astro-cid-3ef6ksr2],.header-cta[data-astro-cid-3ef6ksr2],.langs[data-astro-cid-3ef6ksr2]{display:none}.mobile[data-astro-cid-3ef6ksr2]{display:block}}.site-footer[data-astro-cid-sz7xmlte]{margin-top:clamp(60px,8vw,110px);border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.footer-top[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,1fr));gap:clamp(28px,5vw,64px);padding-block:clamp(44px,6vw,72px)}.brand[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:10px;font-weight:650;letter-spacing:-.02em;text-decoration:none}.brand__text[data-astro-cid-sz7xmlte]{font-size:1rem}.footer-tagline[data-astro-cid-sz7xmlte]{margin-top:14px;max-width:26ch;color:var(--text-muted);font-size:.95rem}.footer-made[data-astro-cid-sz7xmlte]{margin-top:18px;color:var(--text-dim);font-size:.82rem}.footer-col[data-astro-cid-sz7xmlte]{display:grid;align-content:start;gap:10px}.footer-col[data-astro-cid-sz7xmlte] h2[data-astro-cid-sz7xmlte]{margin-bottom:6px;color:var(--text-dim);font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted);font-size:.93rem;text-decoration:none;width:fit-content}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:22px 34px;border-top:1px solid var(--line);color:var(--text-dim);font-size:.82rem}.footer-note[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:inherit;text-decoration:none}.footer-note[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text-muted)}@media(max-width:820px){.footer-top[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr}.footer-brand[data-astro-cid-sz7xmlte]{grid-column:1 / -1}}.lang-hint[data-astro-cid-4pis2pj6]{position:fixed;left:50%;bottom:20px;z-index:60;display:flex;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:10px 12px 10px 18px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:#081c26eb;box-shadow:var(--shadow-soft);backdrop-filter:blur(14px);transform:translate(-50%)}.lang-hint[data-astro-cid-4pis2pj6][hidden]{display:none}.lang-hint[data-astro-cid-4pis2pj6] p[data-astro-cid-4pis2pj6]{color:var(--text-muted);font-size:.9rem;white-space:nowrap}.lang-hint__close[data-astro-cid-4pis2pj6]{width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:var(--text-dim);font-size:1.1rem;line-height:1;cursor:pointer}.lang-hint__close[data-astro-cid-4pis2pj6]:hover{color:var(--text);background:var(--surface)}@media(max-width:520px){.lang-hint[data-astro-cid-4pis2pj6] p[data-astro-cid-4pis2pj6]{white-space:normal}}
