:root{color-scheme:light dark;--bg: #f6f2e9;--surface: #fffdf8;--surface-2: #ede6d7;--primary: #2c6b5b;--primary-dark: #22564a;--on-primary: #ffffff;--accent: #9a7632;--accent-soft: #c9a14f;--text: #1b2436;--secondary: #5d6575;--border: rgb(27 36 54 / 11%);--link: #22665a;--plus: #2c6b5b;--minus: #b0473d;--hero-bg: #24324d;--hero-bg-2: #141c2c;--hero-text: #f6f0e2;--hero-secondary: #b4bccb;--hero-gold: #d8b465;--radius: 18px;--radius-sm: 12px;--shadow: 0 1px 2px rgb(27 36 54 / 5%), 0 8px 24px rgb(27 36 54 / 6%);--content-width: 1040px;--reading-width: 780px}@media(prefers-color-scheme:dark){:root{--bg: #0e1420;--surface: #161f30;--surface-2: #212b40;--primary: #4fa58e;--primary-dark: #3d8c77;--on-primary: #0e1420;--accent: #d8b465;--accent-soft: #d8b465;--text: #f1ece0;--secondary: #9ca5b6;--border: rgb(241 236 224 / 9%);--link: #7fcab4;--plus: #5fb79f;--minus: #e07a6e;--hero-bg: #1c2840;--hero-bg-2: #0e1420;--shadow: none}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Segoe UI,Noto Sans JP,Helvetica Neue,Arial,Yu Gothic,Meiryo,sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}h1,h2,h3{line-height:1.3;margin:0;letter-spacing:-.01em}p{margin:0}a{color:var(--link);text-underline-offset:3px}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px;border-radius:6px}.container{width:100%;max-width:var(--content-width);margin-inline:auto;padding-inline:20px}.reading{width:100%;max-width:var(--reading-width);margin-inline:auto;padding-inline:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.section-title{font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);font-weight:800}.section-lead{color:var(--secondary);margin-top:8px}.page-header{background:radial-gradient(120% 120% at 20% 0%,var(--hero-bg) 0%,var(--hero-bg-2) 100%);color:var(--hero-text);padding-block:48px}.page-header h1{font-size:clamp(1.75rem,1.4rem + 1.6vw,2.5rem);font-weight:800}.page-header .page-header-sub{margin-top:8px;color:var(--hero-secondary);font-size:.9375rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
