:root{--ink: #16130f;--ink-soft: #4a423a;--muted: #857b70;--line: #eee7dd;--bg: #ffffff;--bg-soft: #faf5ee;--cream: #fbf4ea;--surface: #ffffff;--orange: #f2b059;--sky: #4ca7d5;--accent: #ef7a3d;--accent-strong: #e0642a;--secondary: #ff9800;--brand-gradient: linear-gradient(120deg, #f7b25a 0%, #ef7a3d 48%, #4ca7d5 130%);--radius: 16px;--radius-lg: 28px;--shadow-sm: 0 2px 10px rgba(22, 19, 15, .06);--shadow: 0 18px 44px -20px rgba(22, 19, 15, .28);--shadow-accent: 0 12px 26px -10px rgba(239, 122, 61, .5);--maxw: 720px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media(prefers-color-scheme:dark){:root{--ink: #f4efe8;--ink-soft: #d4cabd;--muted: #9d9284;--line: #2a2620;--bg: #14110d;--bg-soft: #1b1712;--cream: #1b1712;--surface: #1e1a14;--shadow-sm: 0 2px 10px rgba(0, 0, 0, .4);--shadow: 0 18px 44px -20px rgba(0, 0, 0, .6)}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:var(--sky);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.2;color:var(--ink);font-weight:800;letter-spacing:-.02em}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.wide{max-width:1080px}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:999px;font-weight:700;font-size:16px;cursor:pointer;border:1px solid transparent;transition:transform .12s ease,box-shadow .2s ease,background .2s ease}.btn:hover{text-decoration:none;transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-accent)}.btn-primary:hover{background:var(--accent-strong)}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-sm)}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}.site-header .inner{max-width:1080px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;color:var(--ink);letter-spacing:-.02em}.brand:hover{text-decoration:none}.brand img{height:30px;width:auto;display:block}.nav a{color:var(--ink-soft);font-weight:600;margin-left:22px;font-size:15px}.site-footer{border-top:1px solid var(--line);margin-top:80px;padding:40px 20px;color:var(--muted);font-size:14px;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-bottom:16px}.footer-links a{color:var(--ink-soft);font-weight:600}.footer-copy{margin-top:8px;opacity:.8}.prose{font-size:18px;color:var(--ink-soft)}.prose h2{margin-top:2em;font-size:26px}.prose h3{margin-top:1.6em;font-size:21px}.prose p,.prose ul,.prose ol{margin:1em 0}.prose img{border-radius:var(--radius);margin:1.5em 0}.prose blockquote{border-left:3px solid var(--orange);margin:1.5em 0;padding:.2em 1.2em;color:var(--muted);font-style:italic}.prose code{background:var(--bg-soft);padding:2px 6px;border-radius:6px;font-size:.9em}.prose pre{background:var(--bg-soft);padding:16px;border-radius:var(--radius);overflow-x:auto;border:1px solid var(--line)}.footer-linkbtn{background:none;border:none;padding:0;font:inherit;color:var(--ink-soft);font-weight:600;cursor:pointer;text-decoration:underline}.consent-banner{position:fixed;z-index:50;left:16px;right:16px;bottom:16px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 32px #0000002e;padding:18px 20px}.consent-banner[hidden]{display:none}.consent-inner{max-width:var(--maxw);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.consent-text{flex:1 1 320px;margin:0;font-size:14px;line-height:1.55;color:var(--ink-soft)}.consent-actions{display:flex;gap:10px;flex-shrink:0}.consent-btn{font:inherit;font-size:14px;font-weight:600;padding:9px 18px;border-radius:999px;cursor:pointer;border:1px solid var(--line)}.consent-btn-ghost{background:transparent;color:var(--ink-soft)}.consent-btn-solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}@media(max-width:520px){.consent-actions{width:100%}.consent-btn{flex:1}}
