:root{color-scheme:light dark;--bg: #f8f7f3;--surface: #ffffff;--text: #1d1b16;--muted: #666257;--border: #ddd8cc;--accent: #136f63;--accent-strong: #0d4f47;--max-width: 1080px}@media(prefers-color-scheme:dark){:root{--bg: #141411;--surface: #1f1f1a;--text: #f2efe7;--muted: #b8b1a2;--border: #38352d;--accent: #64c4b2;--accent-strong: #95ddcf}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:var(--accent);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--accent-strong)}.site-header,.site-footer,main{width:min(100% - 32px,var(--max-width));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}.brand{color:var(--text);font-weight:750;text-decoration:none}nav{display:flex;flex-wrap:wrap;gap:12px 18px;justify-content:flex-end}nav a{color:var(--muted);text-decoration:none}nav a[aria-current=page],nav a:hover{color:var(--text)}main{min-height:70vh}.hero{padding:80px 0 56px}.hero h1{max-width:680px;margin:0;font-size:clamp(2.1rem,4.5vw,3.5rem);line-height:1.08}.page-header h1{max-width:840px;margin:0;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1.02}.hero p,.page-header p{max-width:720px;margin:20px 0 0;color:var(--muted);font-size:1.1rem}.page-header{padding:52px 0 32px;border-bottom:1px solid var(--border)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:36px 0 72px}.panel,.entry-card{border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 86%,transparent);padding:22px}.entry-card{position:relative;transition:border-color .16s ease,transform .16s ease}.entry-card:hover,.entry-card:focus-within{border-color:var(--accent);transform:translateY(-2px)}.panel h2,.entry-card h2{margin:0 0 10px;line-height:1.2}.panel p,.entry-card p{margin:0;color:var(--muted)}.entry-list{display:grid;gap:18px;margin:32px 0 72px}.entry-card h2 a{color:var(--text);text-decoration:none}.entry-card h2 a:after{position:absolute;inset:0;content:""}.entry-card h2 a:hover{color:var(--accent)}.entry-card h2 a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.entry-action{display:inline-flex;align-items:center;gap:6px;margin-top:20px;color:var(--accent);font-size:.92rem;font-weight:700}.entry-card:hover .entry-action span,.entry-card:focus-within .entry-action span{transform:translate(3px)}.entry-action span{transition:transform .16s ease}.meta{color:var(--muted);font-size:.94rem}.tags{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:16px 0 0;list-style:none}.tags li{border:1px solid var(--border);border-radius:999px;padding:3px 10px;color:var(--muted);font-size:.85rem}.content{max-width:760px;margin:40px auto 72px}.back-link{display:inline-flex;align-items:center;gap:8px;margin:0 0 24px;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:650;padding:0;cursor:pointer}.back-link:hover{color:var(--text)}.back-link:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.content h1{margin:0 0 12px;font-size:clamp(2.1rem,5vw,3.8rem);line-height:1.08}.content article{margin-top:34px}.content article :is(h2,h3){margin-top:2rem;line-height:1.2}.content article :is(p,ul,ol){color:color-mix(in srgb,var(--text) 88%,var(--muted))}.content article img{max-width:100%;border-radius:8px}.content article :not(pre)>code{border-radius:5px;background:color-mix(in srgb,var(--border) 45%,transparent);padding:.15em .3em}.content article pre{margin:1.5rem 0;border:1px solid var(--border);border-radius:8px;padding:1rem}.content article pre code{display:block;min-width:max-content;padding:0;background:transparent}.astro-code,.astro-code span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}@media(prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark);background-color:var(--shiki-dark-bg)}}.comments{margin-top:56px;padding-top:28px;border-top:1px solid var(--border)}.site-footer{padding:36px 0 48px;border-top:1px solid var(--border);color:var(--muted);font-size:.94rem}@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column}nav{justify-content:flex-start}.hero{padding-top:48px}.grid{grid-template-columns:1fr}}
