:root{--ink:#0f1d2e;--ink-2:#33445a;--ink-3:#66768b;--line:#e3ded3;--line-2:#cfc8b9;--bg:#f8f6f1;--paper:#fff;--soft:#f1ede4;--navy:#12263f;--navy-2:#1b3a5e;--amber:#ffb81c;--amber-2:#ffd166;--amber-soft:#fff4d6;--green:#138a5a;--green-soft:#e3f5ec;--red:#c2412d;--red-soft:#fbe9e5;--blue:#2363c9;--radius:14px;--radius-lg:20px;--shadow:0 1px 2px #0f1d2e0f, 0 6px 20px #0f1d2e0f;--font:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--mono:"SF Mono", "JetBrains Mono", Consolas, "Courier New", monospace;--header-h:64px;--wrap:1200px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg);margin:0;font-size:16px;line-height:1.75}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;line-height:1.35}p{margin:0}code{font-family:var(--mono);background:var(--soft);border-radius:5px;padding:.1em .4em;font-size:.9em}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.skip{position:absolute;left:-999px}.skip:focus{z-index:100;background:var(--amber);color:var(--ink);border-radius:8px;padding:8px 12px;top:12px;left:12px}.muted{color:var(--ink-3)}.small{font-size:14px}.mono{font-family:var(--mono)}.btn{cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4em;padding:.7em 1.2em;font-size:15px;font-weight:700;transition:transform .15s,background .15s;display:inline-flex;text-decoration:none!important}.btn:hover{transform:translateY(-1px)}.btn--go{background:var(--amber);color:var(--ink)}.btn--go:hover{background:var(--amber-2)}.btn--dark{background:var(--navy);color:#fff}.btn--ghost{border-color:var(--line-2);color:var(--ink);background:var(--paper)}.btn--sm{padding:.45em .9em;font-size:14px}.btn--block{width:100%}.tag{background:var(--soft);color:var(--ink-2);border-radius:6px;padding:.15em .6em;font-size:12px;font-weight:700;display:inline-block}.tag--amber{background:var(--amber-soft);color:#8a5a00}.tag--green{background:var(--green-soft);color:var(--green)}.tag--red{background:var(--red-soft);color:var(--red)}.tag--navy{background:var(--navy);color:#fff}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg)}.sec{scroll-margin-top:calc(var(--header-h) + 16px);margin-top:56px}.sec:first-child{margin-top:0}.sec__head{margin-bottom:20px}.sec__kicker{font-family:var(--mono);color:#8a5a00;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.sec__title{margin-top:4px;font-size:26px}.sec__desc{color:var(--ink-2);max-width:760px;margin-top:8px}.prose{font-size:16.5px}.prose>*+*{margin-top:1.05em}.prose h2{scroll-margin-top:calc(var(--header-h) + 16px);margin-top:2.2em;padding-top:.4em;font-size:24px}.prose h2:before{content:"";background:var(--amber);border-radius:2px;width:36px;height:4px;margin-bottom:12px;display:block}.prose h3{scroll-margin-top:calc(var(--header-h) + 16px);margin-top:1.7em;font-size:19px}.prose h2+p,.prose h3+p{color:var(--ink-2);margin-top:.6em}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.35em}.prose strong{font-weight:700}.prose blockquote{border-left:4px solid var(--amber);background:var(--amber-soft);border-radius:0 10px 10px 0;margin:1.4em 0;padding:.8em 1.1em}.prose table{border-collapse:collapse;width:100%;font-size:15px;display:block;overflow-x:auto}@media (width>=720px){.prose table{display:table}}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:5em;padding:.6em .75em}.prose th{background:var(--soft);font-weight:700}.prose img{border:1px solid var(--line);border-radius:12px}.prose a{text-underline-offset:3px;text-decoration:underline}.tbl-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);-webkit-overflow-scrolling:touch;overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:14.5px}.tbl th,.tbl td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 14px}.tbl thead th{background:var(--navy);color:#fff;font-size:13.5px;font-weight:600}.tbl tbody tr:last-child td{border-bottom:0}.tbl tbody tr:hover{background:#fcfbf7}.tbl tr.is-top{background:var(--amber-soft)}.tbl .num{font-family:var(--mono);font-variant-numeric:tabular-nums}.grid{gap:18px;display:grid}@media (width>=720px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}}@media (width>=1000px){.grid--4{grid-template-columns:repeat(4,1fr)}}.layout{gap:40px;padding:32px 0 72px;display:grid}.layout__main{min-width:0}.layout__side{display:none}@media (width>=1040px){.layout{grid-template-columns:minmax(0,1fr) 300px}.layout__side{display:block}.side-sticky{top:calc(var(--header-h) + 20px);max-height:calc(100vh - var(--header-h) - 40px);scrollbar-width:thin;gap:18px;display:grid;position:sticky;overflow-y:auto}.toc-mobile{display:none}}.logo[data-astro-cid-f7espo7c]{color:var(--ink);align-items:center;gap:10px;display:inline-flex}.logo__text[data-astro-cid-f7espo7c]{flex-direction:column;line-height:1.05;display:flex}.logo__name[data-astro-cid-f7espo7c]{letter-spacing:.02em;font-size:19px;font-weight:800}.logo__brand[data-astro-cid-f7espo7c]{color:var(--ink-3);letter-spacing:.06em;font-size:11px;font-weight:700}.logo__brand[data-astro-cid-f7espo7c] b[data-astro-cid-f7espo7c]{color:#d99400}.logo--light[data-astro-cid-f7espo7c] .logo__name[data-astro-cid-f7espo7c]{color:#fff}.logo--light[data-astro-cid-f7espo7c] .logo__brand[data-astro-cid-f7espo7c]{color:#a8b6c8}.logo--light[data-astro-cid-f7espo7c] .logo__brand[data-astro-cid-f7espo7c] b[data-astro-cid-f7espo7c]{color:var(--amber)}.hd[data-astro-cid-nen7h5rs]{z-index:50;backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--line);background:#f8f6f1eb;position:sticky;top:0}.hd__in[data-astro-cid-nen7h5rs]{height:var(--header-h);align-items:center;gap:24px;display:flex}.hd__logo[data-astro-cid-nen7h5rs]{flex-shrink:0;text-decoration:none!important}.hd__nav[data-astro-cid-nen7h5rs]{flex:1;gap:4px;display:flex}.hd__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--ink-2);border-radius:8px;padding:6px 12px;font-size:15px;font-weight:600;text-decoration:none}.hd__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{background:var(--soft);color:var(--ink)}.hd__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs].is-on{color:var(--ink);background:var(--amber-soft);box-shadow:inset 0 -2px 0 var(--amber)}.hd__search[data-astro-cid-nen7h5rs]{color:var(--ink);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.hd__search[data-astro-cid-nen7h5rs]:hover{background:var(--soft)}.hd__toggle[data-astro-cid-nen7h5rs]{cursor:pointer;background:0 0;border:0;padding:8px;display:none}.hd__toggle[data-astro-cid-nen7h5rs] i[data-astro-cid-nen7h5rs]{background:var(--ink);border-radius:2px;width:22px;height:2px;margin:5px 0;display:block}@media (width<=960px){.hd__toggle[data-astro-cid-nen7h5rs]{margin-left:auto;display:block}.hd__search[data-astro-cid-nen7h5rs]{margin-left:auto}.hd__toggle[data-astro-cid-nen7h5rs]{margin-left:4px}.hd__nav[data-astro-cid-nen7h5rs]{left:0;right:0;top:var(--header-h);background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;padding:10px 16px 16px;display:none;position:absolute}.hd__nav[data-astro-cid-nen7h5rs].is-open{display:flex}.hd__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding:10px 12px}}.ft[data-astro-cid-jo6i4kqk]{background:var(--navy);color:#c4cfdc;margin-top:40px;padding:56px 0 28px;font-size:14.5px}.ft[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:#e6ecf3}.ft__grid[data-astro-cid-jo6i4kqk]{gap:32px;display:grid}@media (width>=900px){.ft__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:1.6fr repeat(4,1fr)}}.ft__about[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin-top:14px;line-height:1.7}.ft__note[data-astro-cid-jo6i4kqk]{color:#8fa0b5;font-size:13px}.ft__title[data-astro-cid-jo6i4kqk]{color:var(--amber);margin-bottom:10px;font-weight:700}.ft[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:7px;margin:0;padding:0;list-style:none;display:grid}.ft__bottom[data-astro-cid-jo6i4kqk]{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;padding-top:20px;font-size:13px;display:flex}.ft__links[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:14px;display:flex}
