:root{color-scheme:light;--bg: #f7f7f2;--surface: #ffffff;--surface-muted: #eeeee7;--text: #151713;--muted: #62675c;--line: #d8d8ce;--accent: #0f766e;--accent-strong: #0a4f49;--code-bg: #151713;--code-text: #eef6ed;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;background:var(--bg);color:var(--text);font-size:16px;scroll-behavior:smooth}body{min-height:100dvh;margin:0;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-color:color-mix(in srgb,var(--accent) 55%,transparent);text-underline-offset:.18em}a:hover{color:var(--accent-strong)}img{display:block;max-width:100%}code,pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}pre{overflow-x:auto;border-radius:8px;padding:1rem;background:var(--code-bg);color:var(--code-text)}.site-shell{width:min(1120px,calc(100% - 32px));margin-inline:auto}.site-header{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent)}.site-nav{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:inline-flex;min-width:0;align-items:center;gap:.65rem;font-size:1.05rem;font-weight:700;letter-spacing:0;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--text);border-radius:8px;background:var(--text);color:var(--surface);font-size:.85rem}.nav-links{display:flex;flex-shrink:0;align-items:center;gap:1rem;color:var(--muted);font-size:.95rem}.nav-links a{text-decoration:none}.hero{display:grid;min-height:min(680px,calc(100dvh - 68px));align-items:center;padding-block:clamp(3rem,8vw,6rem)}.hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:clamp(2rem,7vw,5rem);align-items:end}.hero h1{max-width:11ch;margin:0;font-size:clamp(3rem,9vw,6.8rem);line-height:.96;letter-spacing:0}.hero p{max-width:35rem;margin:1.35rem 0 0;color:var(--muted);font-size:clamp(1.05rem,2vw,1.2rem)}.hero-panel{border-left:2px solid var(--text);padding-left:1.35rem}.hero-panel strong{display:block;margin-bottom:.5rem;font-size:1rem}.hero-panel span{color:var(--muted)}.section{padding-block:clamp(3rem,7vw,5rem);border-top:1px solid var(--line)}.section h2{max-width:720px;margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.4rem);line-height:1;letter-spacing:0}.post-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);background:var(--line)}.post-card{display:flex;min-height:260px;flex-direction:column;justify-content:space-between;padding:clamp(1.1rem,3vw,1.5rem);background:var(--surface);text-decoration:none}.post-card:hover{color:var(--text);background:#fbfbf7}.post-card time{color:var(--muted);font-size:.9rem}.post-card h3{margin:.85rem 0 .65rem;font-size:1.35rem;line-height:1.15}.post-card p{margin:0;color:var(--muted)}.tag-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.tag{border:1px solid var(--line);border-radius:999px;padding:.25rem .65rem;color:var(--muted);font-size:.82rem}.article-header{padding-block:clamp(3rem,8vw,6rem);border-bottom:1px solid var(--line)}.article-header h1{max-width:980px;margin:0;font-size:clamp(2.8rem,8vw,6rem);line-height:.98;letter-spacing:0}.article-meta{margin:0 0 1rem;color:var(--muted)}.article-description{max-width:680px;margin:1.5rem 0 0;color:var(--muted);font-size:1.15rem}.article-body{width:min(760px,calc(100% - 32px));margin:0 auto;padding-block:clamp(2.5rem,7vw,5rem)}.article-body h2,.article-body h3{margin-top:2.2em;line-height:1.18}.article-body p,.article-body li{color:color-mix(in srgb,var(--text) 78%,var(--muted))}.site-footer{border-top:1px solid var(--line);padding-block:2rem;color:var(--muted);font-size:.92rem}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem}.record-links{display:flex;flex-wrap:wrap;gap:.85rem}@media(max-width:780px){.site-shell{width:min(100% - 24px,1120px)}.site-nav,.nav-links{gap:.8rem}.brand{gap:.5rem;font-size:.95rem}.hero-inner,.post-list{grid-template-columns:1fr}.hero h1{max-width:9ch}.hero-panel{border-left:0;border-top:2px solid var(--text);padding:1rem 0 0}.post-card{min-height:220px}}
