:root{--bg:#fdf7f2;--bg-elev:#fffdfa;--text:#1f2937;--muted:#5b6472;--primary:#f1525c;--accent:#20c7de;--border:#e3d5ce}:root[data-theme=dark]{--bg:#0b1220;--bg-elev:#111827;--text:#e2e8f0;--muted:#94a3b8;--primary:#ff6470;--accent:#67e8f9;--border:#1f2937}:root{--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--container:920px;--shadow:0 10px 30px rgba(0, 0, 0, 0.16)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:radial-gradient(80vw 40vw at 10% -10%,rgba(241,82,92,.14),transparent 55%),radial-gradient(80vw 40vw at 100% -20%,rgba(32,199,222,.11),transparent 60%),var(--bg);background-repeat:no-repeat;background-size:cover,cover,auto;line-height:1.72;letter-spacing:.005em;min-height:100dvh}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--container);margin:0 auto;padding:1.2rem}.site-header{position:sticky;top:0;z-index:30;backdrop-filter:blur(8px);background:color-mix(in oklab,var(--bg) 84%,transparent);border-bottom:1px solid var(--border)}.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.brand{display:inline-flex;gap:.55rem;align-items:center;font-weight:800;letter-spacing:.2px}.brand-mark{min-width:42px;height:34px;display:grid;place-items:center;padding:0 .45rem;border-radius:999px;background:linear-gradient(135deg,var(--primary),#ff7a62);box-shadow:var(--shadow);font-size:.95rem}.nav{display:flex;gap:.5rem;flex-wrap:wrap}.nav a{padding:.5rem .82rem;min-height:42px;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:.95rem}.nav a:hover{border-color:var(--primary);text-decoration:none}.nav a.active{border-color:color-mix(in oklab,var(--primary) 65%,var(--border));background:color-mix(in oklab,var(--primary) 10%,var(--bg-elev))}.theme-toggle{border:1px solid var(--border);color:var(--text);background:var(--bg-elev);border-radius:999px;padding:.42rem .7rem;cursor:pointer}.theme-toggle:hover{border-color:var(--primary)}main.container{padding-top:1.8rem;min-height:calc(100dvh - 180px)}.hero{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.6rem;background:linear-gradient(160deg,color-mix(in oklab,var(--bg-elev) 90%,var(--primary) 10%),var(--bg-elev));box-shadow:var(--shadow);margin-bottom:1.25rem}.hero h1{margin:0 0 .68rem;font-size:clamp(1.45rem,2vw + 1rem,2.3rem);line-height:1.16}.hero p{margin:0;color:var(--muted);max-width:62ch;line-height:1.7}.grid{display:grid;gap:1rem}@media(min-width:860px){.grid.two{grid-template-columns:2fr 1fr}}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem 1.1rem;box-shadow:var(--shadow)}.card h2,.card h3,.card h4{margin:.15rem 0 .55rem;line-height:1.22}.card p{margin:0 0 .82rem}.card p:last-child{margin-bottom:0}.muted{color:var(--muted)}.meta{font-size:.92rem;color:var(--muted);margin-bottom:.62rem;letter-spacing:.01em}.stack{display:grid;gap:.92rem}article.prose h1{font-size:clamp(1.6rem,2vw + 1rem,2.4rem);margin-bottom:.45rem;line-height:1.16}article.prose p{margin:0 0 1.05rem;max-width:70ch}article.prose ul,article.prose ol{margin:0 0 1rem 1.2rem}article.prose li+li{margin-top:.35rem}article.prose img{max-width:100%;border-radius:12px}article.prose pre{overflow-x:auto;border-radius:12px;padding:.9rem;border:1px solid var(--border);background:color-mix(in oklab,var(--bg-elev) 86%,black 14%)}article.prose code{font-family:jetbrains mono,ui-monospace,SFMono-Regular,Menlo,monospace}.site-footer{margin-top:2rem;border-top:1px solid var(--border);color:var(--muted)}.kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid var(--border);border-radius:6px;padding:.1rem .33rem;font-size:.85rem}@media(max-width:720px){.container{padding:.9rem}.header-row{gap:.6rem;align-items:center}.brand{order:1}.theme-toggle{order:2;margin-left:auto}.nav{order:3;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:.62rem;padding:.1rem .15rem .35rem;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch;background:linear-gradient(to right,color-mix(in oklab,var(--bg) 92%,transparent),transparent 14%),linear-gradient(to left,color-mix(in oklab,var(--bg) 92%,transparent),transparent 14%);background-repeat:no-repeat;background-size:28px 100%,28px 100%;background-position:0,100%}.nav a{white-space:nowrap;scroll-snap-align:start;min-height:44px;padding:.56rem .92rem}.hero{padding:1.05rem;border-radius:14px}.card{padding:.9rem .95rem}main.container{min-height:calc(100dvh - 210px)}}