:root{--font-sans:system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;--font-mono:ui-monospace, "SF Mono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius-1:4px;--radius-2:8px;--radius-3:14px;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.75rem;--leading-tight:1.25;--leading-normal:1.7;--c-bg:#fbfaf7;--c-surface:#fff;--c-surface-2:#f2efe9;--c-border:#e0dbd1;--c-ink:#201d18;--c-ink-2:#574f45;--c-ink-3:#726957;--c-accent:#7a5c2e;--c-accent-ink:#fff;--c-accent-quiet:#efe6d5;--c-focus:#2b6cb0;--transition:.14s ease;--measure:68ch;--container:60rem;--shadow-1:0 1px 2px #201d180f, 0 2px 8px #201d180d}@media (prefers-color-scheme:dark){:root{--c-bg:#17150f;--c-surface:#201d16;--c-surface-2:#2a261d;--c-border:#3a352a;--c-ink:#efe9dd;--c-ink-2:#c3bcaa;--c-ink-3:#8f8676;--c-accent:#d8b477;--c-accent-ink:#17150f;--c-accent-quiet:#322a1c;--c-focus:#7fb0e0;--shadow-1:0 1px 2px #0000004d, 0 2px 10px #00000040}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--c-bg);color:var(--c-ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3{line-height:var(--leading-tight);letter-spacing:-.01em;font-weight:680}a{color:var(--c-accent);text-underline-offset:2px;transition:color var(--transition)}a:hover{color:var(--c-ink)}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px;border-radius:var(--radius-1)}.skip-link{left:var(--space-3);top:calc(-1 * var(--space-8));z-index:10;background:var(--c-surface);color:var(--c-ink);padding:var(--space-2) var(--space-4);border:1px solid var(--c-border);border-radius:var(--radius-2);transition:top var(--transition);position:absolute}.skip-link:focus{top:var(--space-3)}.container{width:100%;max-width:var(--container);padding-inline:var(--space-5);margin-inline:auto}.site-header{border-bottom:1px solid var(--c-border);background:color-mix(in srgb, var(--c-bg) 88%, transparent)}.site-header__inner{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-block:var(--space-4);display:flex}.site-header__brand{font-weight:720;font-size:var(--text-lg);color:var(--c-ink);letter-spacing:-.02em;text-decoration:none}.site-header__tag{color:var(--c-ink-3);font-size:var(--text-xs);margin-left:var(--space-2);font-weight:450}.lang-switch{font-size:var(--text-sm)}.btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-2);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-ink);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);text-decoration:none;display:inline-flex}.btn:hover{background:var(--c-surface-2)}.btn--primary{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink)}.btn--primary:hover{filter:brightness(1.05);color:var(--c-accent-ink)}.btn[aria-disabled=true],.btn:disabled{cursor:not-allowed;opacity:.65;background:var(--c-surface-2);color:var(--c-ink-3);border-color:var(--c-border)}.badge{align-items:center;gap:var(--space-1);font-size:var(--text-xs);padding:2px var(--space-2);border:1px solid var(--c-border);background:var(--c-surface-2);color:var(--c-ink-2);letter-spacing:.01em;border-radius:999px;display:inline-flex}.badge--preparing{background:var(--c-accent-quiet);border-color:color-mix(in srgb, var(--c-accent) 30%, var(--c-border));color:var(--c-accent)}.site-footer{margin-top:var(--space-9);border-top:1px solid var(--c-border);background:var(--c-surface);color:var(--c-ink-2);font-size:var(--text-sm)}.site-footer__inner{padding-block:var(--space-6);gap:var(--space-3);display:grid}.site-footer__honesty{max-width:var(--measure)}.site-footer__links{gap:var(--space-4);flex-wrap:wrap;display:flex}
