*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body{margin:0;font-family:var(--font-body, "PingFang SC", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);font-size:var(--font-size-body, 16px);line-height:var(--line-height-body, 1.7);color:var(--color-text, #1c1917);background:var(--color-bg, #ffffff)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading, inherit);line-height:var(--line-height-heading, 1.3);margin:0 0 .5em;color:var(--color-heading, inherit)}p{margin:0 0 1em}a{color:var(--color-link, #3b82f6);text-decoration:none}a:hover{text-decoration:underline}img,svg,video{max-width:100%;height:auto;display:block}code,pre,kbd,samp{font-family:var(--font-mono, "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace)}pre{overflow-x:auto;padding:16px;border-radius:8px;background:var(--color-code-bg, #0d1117);color:var(--color-code-text, #e6edf3);line-height:1.5}table{border-collapse:collapse;width:100%;margin:1em 0}th,td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--color-border, #e5e7eb)}th{font-weight:600;background:var(--color-table-head, transparent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-focus, #3b82f6);outline-offset:2px}.container{width:100%;max-width:var(--container-max, 1200px);margin:0 auto;padding:0 16px}@media(min-width:768px){.container{padding:0 24px}}.reading-column{max-width:var(--reading-column-max, 720px);margin:0 auto}.visually-hidden{position:absolute;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-mhufuizj]{background:var(--color-header-bg, var(--color-surface, #ffffff));border-bottom:1px solid var(--color-border, #e5e7eb);position:sticky;top:0;z-index:50}.site-header__inner[data-astro-cid-mhufuizj]{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:12px;padding-bottom:12px}.site-header__brand[data-astro-cid-mhufuizj]{display:flex;flex-direction:column;text-decoration:none;color:inherit;flex-shrink:0}.site-header__brand-name[data-astro-cid-mhufuizj]{font-weight:700;font-size:18px;color:var(--color-heading, inherit)}.site-header__brand-tagline[data-astro-cid-mhufuizj]{font-size:12px;color:var(--color-text-muted, #57534e);margin-top:2px}.site-header__nav-list[data-astro-cid-mhufuizj]{list-style:none;margin:0;padding:0;display:flex;gap:4px;overflow-x:auto}.site-header__nav-link[data-astro-cid-mhufuizj]{display:inline-block;padding:8px 12px;border-radius:6px;color:var(--color-text, inherit);text-decoration:none;font-size:14px;white-space:nowrap}.site-header__nav-link[data-astro-cid-mhufuizj]:hover{background:var(--color-surface-2, #f5f5f7);text-decoration:none}.site-header__nav-link--active[data-astro-cid-mhufuizj]{color:var(--color-accent, #3b82f6);font-weight:600}@media(max-width:640px){.site-header__brand-tagline[data-astro-cid-mhufuizj]{display:none}}.site-footer[data-astro-cid-cqrsdqgj]{margin-top:80px;padding:40px 0 24px;background:var(--color-footer-bg, var(--color-surface-2, #f5f5f7));color:var(--color-footer-text, var(--color-text-muted, #57534e));font-size:14px}.site-footer__inner[data-astro-cid-cqrsdqgj]{display:grid;grid-template-columns:1fr;gap:24px}@media(min-width:768px){.site-footer__inner[data-astro-cid-cqrsdqgj]{grid-template-columns:1.2fr 1fr 1fr}}.site-footer__col--brand[data-astro-cid-cqrsdqgj] .site-footer__brand[data-astro-cid-cqrsdqgj]{font-weight:600;color:var(--color-heading, inherit);margin:0 0 4px}.site-footer__domain[data-astro-cid-cqrsdqgj]{margin:0}.site-footer__links[data-astro-cid-cqrsdqgj]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}.site-footer__meta[data-astro-cid-cqrsdqgj]{margin:0 0 4px}.site-footer__disclosure[data-astro-cid-cqrsdqgj]{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border, #e5e7eb);font-size:12px}.site-footer__disclosure[data-astro-cid-cqrsdqgj] p[data-astro-cid-cqrsdqgj]{margin:0}.site-main{min-height:60vh;padding-top:24px;padding-bottom:64px}@media(min-width:768px){.site-main{padding-top:40px}}:root{--color-bg: #0d1117;--color-surface: #161b22;--color-surface-2: #1f2937;--color-text: #e6edf3;--color-text-muted: #7d8590;--color-heading: #f3f4f6;--color-border: #30363d;--color-link: #58a6ff;--color-accent: #3b82f6;--color-accent-2: #2563eb;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-code-bg: #010409;--color-code-text: #c9d1d9;--color-header-bg: #161b22;--color-footer-bg: #161b22;--color-table-head: #1f2937;--color-focus: #58a6ff;--font-body: "Inter", "PingFang SC", "Noto Sans SC", -apple-system, system-ui, sans-serif;--font-heading: "Inter", "PingFang SC", "Noto Sans SC", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--font-size-body: 16px;--line-height-body: 1.7;--line-height-heading: 1.3;--container-max: 1200px;--reading-column-max: 720px;color-scheme:dark}body{background:var(--color-bg);color:var(--color-text)}h1{font-size:32px}h2{font-size:24px;margin-top:32px}h3{font-size:20px;margin-top:24px}@media(min-width:768px){h1{font-size:40px}h2{font-size:28px}}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.status-dot--ok{background:var(--color-success)}.status-dot--warn{background:var(--color-warning)}.status-dot--err{background:var(--color-error)}.error-code{display:inline-block;padding:2px 8px;border-radius:4px;background:#ef444426;color:#fca5a5;font-family:var(--font-mono);font-size:13px;border:1px solid rgba(239,68,68,.3)}.article-body :is(p,ul,ol){font-size:16px;line-height:1.75}.article-body a{color:var(--color-link);border-bottom:1px solid rgba(88,166,255,.3)}.article-body a:hover{text-decoration:none;border-bottom-color:var(--color-link)}.article-body :is(blockquote){border-left:3px solid var(--color-accent);padding:8px 16px;margin:16px 0;background:var(--color-surface);color:var(--color-text-muted)}.article-body code:not(pre code){background:var(--color-surface);padding:2px 6px;border-radius:4px;font-size:.92em;color:#ffa657}
