.site-footer[data-astro-cid-oenwriqq]{border-top:1px solid var(--color-border);background:var(--color-surface);margin-top:clamp(48px,7vw,80px)}.footer-grid[data-astro-cid-oenwriqq]{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.8fr);gap:clamp(24px,5vw,64px);padding-block:clamp(36px,5vw,56px);display:grid}.footer-logo[data-astro-cid-oenwriqq]{color:var(--color-text);letter-spacing:.05em;align-items:center;gap:9px;font-size:.875rem;font-weight:700;text-decoration:none;display:inline-flex}.footer-mark[data-astro-cid-oenwriqq]{background:var(--color-primary);color:#fff;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}.footer-subtitle[data-astro-cid-oenwriqq]{color:var(--color-text);margin-top:6px;font-size:.8125rem;font-weight:600}.footer-heading[data-astro-cid-oenwriqq]{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:.6875rem;font-weight:600}.footer-list[data-astro-cid-oenwriqq]{gap:8px;margin:0;padding:0;list-style:none;display:grid}.footer-list--secondary[data-astro-cid-oenwriqq]{border-top:1px solid var(--color-border);margin-top:14px;padding-top:12px}.footer-list[data-astro-cid-oenwriqq] a[data-astro-cid-oenwriqq]{color:var(--color-text-muted);font-size:.8125rem;text-decoration:none}.footer-list[data-astro-cid-oenwriqq] a[data-astro-cid-oenwriqq]:hover{color:var(--color-link);text-underline-offset:.2em;text-decoration:underline}.footer-bottom[data-astro-cid-oenwriqq]{border-top:1px solid var(--color-border);color:var(--color-text-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;padding-block:18px;font-size:.75rem;display:flex}.footer-built[data-astro-cid-oenwriqq]{font-family:var(--font-mono);font-size:.6875rem}.footer-top[data-astro-cid-oenwriqq]{color:var(--color-text-muted);text-decoration:none}.footer-top[data-astro-cid-oenwriqq]:hover{color:var(--color-link)}@media (width<=767px){.footer-grid[data-astro-cid-oenwriqq]{grid-template-columns:1fr 1fr}.footer-brand[data-astro-cid-oenwriqq]{grid-column:1/-1}.footer-built[data-astro-cid-oenwriqq]{display:none}}@media (width<=420px){.footer-grid[data-astro-cid-oenwriqq]{grid-template-columns:1fr}}.lang-switch[data-astro-cid-ecceicg2]{border-left:1px solid var(--color-border);font-family:var(--font-mono);align-items:center;gap:4px;padding-left:12px;font-size:.75rem;display:inline-flex}.lang-switch__current[data-astro-cid-ecceicg2]{min-height:32px;color:var(--color-text);align-items:center;padding:4px;font-weight:700;display:inline-flex}.lang-switch__sep[data-astro-cid-ecceicg2]{color:var(--color-border-strong)}.lang-switch__link[data-astro-cid-ecceicg2]{min-height:32px;color:var(--color-text-subtle);align-items:center;padding:4px;text-decoration:none;display:inline-flex}.lang-switch__link[data-astro-cid-ecceicg2]:hover{color:var(--color-link);text-decoration:underline}.site-header[data-astro-cid-isef26zo]{z-index:40;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:relative}.header-inner[data-astro-cid-isef26zo]{height:var(--header-height);align-items:center;gap:20px;display:flex}.brand[data-astro-cid-isef26zo]{color:var(--color-text);align-items:center;gap:10px;margin-right:auto;text-decoration:none;display:inline-flex}.brand-mark[data-astro-cid-isef26zo]{background:var(--color-primary);color:#fff;border-radius:6px;place-items:center;width:26px;height:26px;display:grid}.brand-text[data-astro-cid-isef26zo]{letter-spacing:.05em;white-space:nowrap;font-size:.9375rem;font-weight:700}.brand-sep[data-astro-cid-isef26zo]{color:var(--color-text-subtle);margin:0 3px;font-weight:400}.nav-list[data-astro-cid-isef26zo]{align-items:center;gap:1px;margin:0;padding:0;list-style:none;display:flex}.nav-link[data-astro-cid-isef26zo]{min-height:40px;color:var(--color-text-muted);white-space:nowrap;transition:background-color .16s var(--ease), color .16s var(--ease);border-radius:6px;align-items:center;padding:8px 10px;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.nav-link[data-astro-cid-isef26zo]:hover{background:var(--color-surface-muted);color:var(--color-text)}.nav-link[data-astro-cid-isef26zo][aria-current=page]{background:var(--color-primary-soft);color:var(--color-primary-hover);font-weight:600}.nav-mobile-extra[data-astro-cid-isef26zo]{display:none}.header-actions[data-astro-cid-isef26zo]{align-items:center;gap:4px;display:flex}.icon-link[data-astro-cid-isef26zo]{width:44px;height:44px;color:var(--color-text-muted);border-radius:6px;place-items:center;text-decoration:none;display:grid}.icon-link[data-astro-cid-isef26zo]:hover{background:var(--color-surface-muted);color:var(--color-text)}.header-lang[data-astro-cid-isef26zo]{border-left:1px solid var(--color-border);margin-left:4px;padding-left:8px}.nav-toggle[data-astro-cid-isef26zo]{width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;border:0;border-radius:6px;display:none;position:relative}.nav-toggle[data-astro-cid-isef26zo]:hover{background:var(--color-surface-muted)}.nav-toggle-bar[data-astro-cid-isef26zo]{width:18px;height:2px;transition:transform .16s var(--ease), opacity .16s var(--ease);background:currentColor;border-radius:2px;position:absolute;left:13px}.nav-toggle-bar[data-astro-cid-isef26zo]:first-child{top:15px}.nav-toggle-bar[data-astro-cid-isef26zo]:nth-child(2){top:21px}.nav-toggle-bar[data-astro-cid-isef26zo]:nth-child(3){top:27px}[data-astro-cid-isef26zo][data-nav-open=true] .nav-toggle-bar[data-astro-cid-isef26zo]:first-child{transform:translateY(6px)rotate(45deg)}[data-astro-cid-isef26zo][data-nav-open=true] .nav-toggle-bar[data-astro-cid-isef26zo]:nth-child(2){opacity:0}[data-astro-cid-isef26zo][data-nav-open=true] .nav-toggle-bar[data-astro-cid-isef26zo]:nth-child(3){transform:translateY(-6px)rotate(-45deg)}@media (width<=1023px){.nav-toggle[data-astro-cid-isef26zo]{display:block}.nav[data-astro-cid-isef26zo]{border-bottom:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);padding:12px 16px 20px;display:none;position:absolute;top:100%;left:0;right:0}[data-astro-cid-isef26zo][data-nav-open=true] .nav[data-astro-cid-isef26zo]{display:block}.nav-list[data-astro-cid-isef26zo]{flex-direction:column;align-items:stretch;gap:2px}.nav-link[data-astro-cid-isef26zo]{min-height:44px;padding:10px 12px;font-size:.9375rem}.nav-mobile-extra[data-astro-cid-isef26zo]{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:14px;display:flex}.nav-search-mobile[data-astro-cid-isef26zo]{color:var(--color-text-muted);font-size:.875rem;text-decoration:none}.header-lang[data-astro-cid-isef26zo]{display:none}}@media (width<=420px){.brand-text[data-astro-cid-isef26zo]{font-size:.875rem}}.prose{color:var(--color-text);overflow-wrap:anywhere;font-size:1.0625rem}:lang(ja) .prose{letter-spacing:.012em;line-height:1.88}:lang(en) .prose{letter-spacing:0;line-height:1.72}.prose>*+*{margin-top:1.35em}.prose>:first-child{margin-top:0}.prose h2,.prose h3,.prose h4{color:var(--color-text);scroll-margin-top:calc(var(--header-height) + 24px)}.prose h2{border-bottom:1px solid var(--color-border);letter-spacing:-.02em;margin-top:2.6em;padding-bottom:.45em;font-size:clamp(1.5rem,2.6vw,1.75rem)}.prose h3{letter-spacing:-.015em;margin-top:2.1em;font-size:clamp(1.25rem,2.2vw,1.375rem)}.prose h4{margin-top:1.8em;font-size:1.0625rem}.prose p{margin-block:0}.prose a{color:var(--color-link);text-underline-offset:.2em;text-decoration:underline #93c5fd}.prose a:hover{text-decoration-color:currentColor}.prose strong{font-weight:700}.prose ul,.prose ol{padding-left:1.5em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--color-primary)}.prose blockquote{border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-primary-soft);color:var(--color-text-muted);margin-block:2em;padding:18px 22px}.prose blockquote>:first-child{margin-top:0}.prose blockquote>:last-child{margin-bottom:0}.prose :not(pre)>code{border:1px solid var(--color-border);background:var(--color-surface-muted);color:var(--color-text);word-break:break-word;border-radius:4px;padding:.15em .4em;font-size:.86em}.prose hr{border:0;border-top:1px solid var(--color-border);margin-block:2.6em}.prose img{border:1px solid var(--color-border);border-radius:var(--radius-md);width:auto;max-width:100%;height:auto}.prose figure{margin-block:2em}.prose figcaption{color:var(--color-text-subtle);text-align:center;margin-top:10px;font-size:.8125rem}.table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin-block:2em;overflow-x:auto}.table-scroll:focus-visible{outline-offset:2px}.table-scroll table{border-collapse:collapse;width:100%;font-size:.9375rem;line-height:1.65}.table-scroll th,.table-scroll td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:11px 16px}.table-scroll th{background:var(--color-surface-muted);color:var(--color-text);white-space:nowrap;font-weight:600}.table-scroll tr:last-child td{border-bottom:0}.code-block{border-radius:var(--radius-md);background:var(--color-code-bg);box-shadow:var(--shadow-card);margin-block:2em;overflow:hidden}.code-block__bar{background:#0f1a2e;border-bottom:1px solid #e2e8f01f;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:0 8px 0 16px;display:flex}.code-block__lang{color:#94a3b8;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem}.code-block__copy{color:#cbd5e1;min-height:28px;font-family:var(--font-sans);transition:background-color .16s var(--ease), color .16s var(--ease);border:1px solid #e2e8f02e;border-radius:4px;padding:0 10px;font-size:.6875rem;font-weight:600}.code-block__copy:hover{color:#fff;background:#e2e8f01f}.code-block__copy[data-copied=true]{color:#6ee7b7;border-color:#34d399}.code-block pre{color:var(--color-code-text);tab-size:2;margin:0;padding:18px 20px;font-size:.875rem;line-height:1.7;overflow-x:auto;background:var(--color-code-bg)!important}.code-block pre code{min-width:max-content;font-family:var(--font-mono);display:block}@media (width<=639px){.prose{font-size:1rem}.code-block{border-radius:0;margin-inline:-16px}.code-block pre{font-size:.8125rem}.table-scroll{border-inline:0;border-radius:0;margin-inline:-16px}}.callout{border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary-soft);margin-block:2em;padding:16px 18px}.callout__label{color:var(--color-primary-hover);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.6875rem;font-weight:700;display:block}.callout__body>:first-child{margin-top:0}.callout__body>:last-child{margin-bottom:0}.callout--tip{border-left-color:var(--color-success);background:var(--color-success-soft)}.callout--tip .callout__label{color:var(--color-success)}.callout--warning{border-left-color:var(--color-warning);background:var(--color-warning-soft)}.callout--warning .callout__label{color:var(--color-warning)}.callout--danger{border-left-color:var(--color-danger);background:var(--color-danger-soft)}.callout--danger .callout__label{color:var(--color-danger)}
