:root{color-scheme:light dark;--color-bg:#fdfcfa;--color-bg-elevated:#f4f1ea;--color-text:#1c1a17;--color-text-muted:#625d54;--color-border:#e4dfd4;--color-accent:#a8461f;--color-accent-contrast:#fff9f2;--color-link-visited:#7a4a8f;--font-sans:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Meiryo, sans-serif;--content-width:720px;--gutter:16px;--radius:10px}@media (prefers-color-scheme:dark){:root{--color-bg:#17140f;--color-bg-elevated:#221e17;--color-text:#f0ece3;--color-text-muted:#b3aa9c;--color-border:#3a352b;--color-accent:#e5945f;--color-accent-contrast:#17140f;--color-link-visited:#c79fe0}}*{box-sizing:border-box}html{color-scheme:light dark}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.8}.wrap{max-width:var(--content-width);padding-inline:var(--gutter);margin-inline:auto}img,svg{max-width:100%;height:auto}h1,h2,h3{font-weight:700;line-height:1.4}h1{margin:.4em 0 .6em;font-size:1.75rem}h2{margin:1.8em 0 .6em;font-size:1.3rem}p{margin:0 0 1em}a{color:var(--color-accent);text-underline-offset:.15em}a:visited{color:var(--color-link-visited)}a:hover,a:focus-visible{text-decoration-thickness:2px}ul,ol{padding-inline-start:1.3em}.skip-link{z-index:100;background:var(--color-accent);color:var(--color-accent-contrast);border-radius:var(--radius);padding:.6em 1em;position:absolute;top:auto;left:-999px}.skip-link:focus{left:var(--gutter);top:var(--gutter)}.site-header{border-bottom:1px solid var(--color-border)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5em 1em;padding-block:1em;display:flex}.brand{color:var(--color-text);letter-spacing:.02em;font-size:1.15rem;font-weight:700;text-decoration:none}.brand:visited{color:var(--color-text)}.site-nav{flex-wrap:wrap;gap:.3em 1.1em;font-size:.92rem;display:flex}.site-nav a{color:var(--color-text-muted);text-decoration:none}.site-nav a:visited{color:var(--color-text-muted)}.site-nav a:hover,.site-nav a:focus-visible{color:var(--color-accent)}main{min-height:60vh;padding-block:2em 4em}.hero{margin-bottom:1.6em}.hero .tagline{color:var(--color-text-muted);margin:0;font-size:1.05rem}.article-list{flex-direction:column;gap:1.1em;margin:0;padding:0;list-style:none;display:flex}.article-card{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-elevated)}.article-card>a{color:inherit;padding:1em 1.1em;text-decoration:none;display:block}.article-card>a:visited{color:inherit}.article-card h2{margin:.3em 0 .35em;font-size:1.08rem}.article-card p{color:var(--color-text-muted);margin:0;font-size:.95rem}.meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.6em;margin:0;font-size:.85rem;display:flex}time{white-space:nowrap}.topic-badge,.format-badge{border:1px solid var(--color-border);background:var(--color-bg);white-space:nowrap;border-radius:999px;padding:.15em .6em;font-size:.78rem;display:inline-block}.format-badge{border-color:var(--color-accent);color:var(--color-accent)}article>header{margin-bottom:1.4em}article>header h1{margin-top:.3em}.lead{color:var(--color-text-muted);font-size:1.05rem}.prose :is(h2,h3){scroll-margin-top:1em}.prose pre{border-radius:var(--radius);padding:1em;overflow-x:auto}.prose code{font-size:.9em}.prose blockquote{border-inline-start:3px solid var(--color-border);color:var(--color-text-muted);margin-inline:0;padding-inline-start:1em}.sources{border-top:1px solid var(--color-border);margin-top:2.4em;padding-top:1.2em}.sources ul{padding-inline-start:1.2em}.sources .publisher{color:var(--color-text-muted);font-size:.92em}.subscribe{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius);margin:1.6em 0 2em;padding:1.2em 1.3em}.subscribe h2{margin:0 0 .4em;font-size:1.1rem}.subscribe p{margin:0 0 .9em}.subscribe-form{flex-wrap:wrap;gap:.6em;display:flex}.subscribe-form input[type=email]{min-width:0;font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);flex:220px;padding:.55em .8em}.subscribe-form button{font:inherit;border-radius:var(--radius);background:var(--color-accent);color:var(--color-accent-contrast);cursor:pointer;border:0;padding:.55em 1.2em;font-weight:600}.subscribe-form button:disabled{opacity:.6;cursor:default}.subscribe-form .hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.subscribe-note,.subscribe-status{color:var(--color-text-muted);margin:.7em 0 0;font-size:.85rem}.subscribe-status:empty{display:none}.site-footer{border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:.85rem}.site-footer .wrap{padding-block:1.4em}.site-footer p{margin:.2em 0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
