:root{--color-paper:#f3efe6;--color-panel:#fffdf8;--color-ink:#171717;--color-muted:#716d65;--color-deep-field:#122f25;--color-hunter:#214c3a;--color-nen:#b9d533;--color-scarlet:#d8423b;--color-field-gold:#d4ae39;--color-map:#4d9690;--color-blue-pencil:#5a82a8;--color-mustard:#d6a92f;--color-olive:#69734b;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--content-width:1180px;--reading-width:760px;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;--border:2px solid var(--color-ink);--shadow-paper:10px 12px 0 #1717171a}*{box-sizing:border-box}html{background:var(--color-paper);scroll-behavior:smooth}body{color:var(--color-ink);background:linear-gradient(#214c3a08 1px, transparent 1px), linear-gradient(90deg, #214c3a08 1px, transparent 1px), var(--color-paper);font-family:var(--font-sans);background-size:32px 32px;margin:0;line-height:1.7}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,input{font:inherit}:focus-visible{outline:3px solid var(--color-nen);outline-offset:4px}img{max-width:100%;height:auto}main{min-height:70vh}.container{width:min(calc(100% - 32px), var(--content-width));margin-inline:auto}.reading-container{width:min(calc(100% - 32px), var(--reading-width));margin-inline:auto}.eyebrow{font:800 .72rem/1.2 var(--font-mono);letter-spacing:.1em;color:var(--color-hunter)}.page-title{letter-spacing:-.07em;margin:.3em 0;font-size:clamp(2.8rem,9vw,6.8rem);line-height:.9}.lead{max-width:760px;font-size:clamp(1.05rem,2.2vw,1.35rem)}.section{padding-block:clamp(64px,10vw,120px)}.grid{gap:20px;display:grid}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.card{border:var(--border);border-radius:var(--radius-md);background:var(--color-panel);min-height:240px;box-shadow:var(--shadow-paper);flex-direction:column;justify-content:space-between;padding:24px;text-decoration:none;display:flex}.card--hunter{background:var(--color-hunter);color:#fff}.card--hunter .eyebrow{color:var(--color-nen)}.card h2,.card h3{margin:.5rem 0;line-height:1.05}.meta{flex-wrap:wrap;gap:8px;display:flex}.tag{font:800 .65rem/1 var(--font-mono);border:1px solid;border-radius:999px;padding:5px 9px;display:inline-flex}.button{border:var(--border);background:var(--color-nen);color:var(--color-deep-field);border-radius:999px;justify-content:center;align-items:center;padding:10px 16px;font-weight:900;text-decoration:none;display:inline-flex}.prose h2{margin-top:2.2em}.prose blockquote{border-left:5px solid var(--color-hunter);margin-inline:0;padding-left:20px;font-size:1.2rem;font-weight:700}.notice{border-left:6px solid var(--color-field-gold);background:#fff7d1;padding:16px 18px}.site-header{z-index:20;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#122f25eb;border-bottom:1px solid #ffffff2e;position:sticky;top:0}.site-nav{justify-content:space-between;align-items:center;gap:20px;min-height:68px;display:flex}.site-brand{letter-spacing:-.06em;font-size:1.8rem;font-weight:950;text-decoration:none}.site-brand span{color:var(--color-nen)}.site-links{font:800 .72rem/1 var(--font-mono);gap:18px;display:flex}.site-links a{opacity:.78;text-decoration:none}.site-links a:hover{opacity:1;color:var(--color-nen)}.breadcrumbs{color:var(--color-muted);padding-block:18px;font-size:.78rem}.breadcrumbs ol{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.site-footer{background:var(--color-ink);color:#fff;margin-top:80px;padding-block:44px}.footer-grid{flex-wrap:wrap;justify-content:space-between;gap:24px;display:flex}.reading-nav{border-top:1px solid #17171733;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:64px;padding-top:24px;display:grid}.reading-nav>:last-child{text-align:right}@media (max-width:700px){.site-links{display:none}.page-title{font-size:clamp(3rem,18vw,5rem)}.reading-nav{grid-template-columns:1fr 1fr}.reading-nav>:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
