:root{--bg:var(--gray-0);--fg:var(--gray-9);--muted:var(--gray-6);--surface:#fff;--border:var(--gray-3);--accent:var(--blue-7);--accent-fg:#fff}
@media (prefers-color-scheme:dark){:root{--bg:var(--gray-12);--fg:var(--gray-1);--muted:var(--gray-5);--surface:var(--gray-11);--border:var(--gray-8);--accent:var(--blue-5);--accent-fg:var(--gray-12)}}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans,system-ui,sans-serif);font-size:var(--font-size-1);line-height:1.6}
img{max-width:100%;height:auto}
a{color:var(--accent)}
.site-header{padding:var(--size-3) var(--size-4);border-bottom:1px solid var(--border);font-weight:700}
.site-header a{color:inherit;text-decoration:none}
main{max-width:40rem;margin:var(--size-5) auto;padding:0 var(--size-4)}
h1,h2{line-height:1.2}
.btn,button,input,select,textarea{font:inherit}
.btn,button{display:inline-block;padding:var(--size-2) var(--size-4);border:1px solid var(--border);border-radius:var(--radius-2);background:var(--surface);color:var(--fg);cursor:pointer;text-decoration:none}
.btn:hover,button:hover{border-color:var(--accent)}
.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}
form{display:inline-block;margin:0}
.actions{display:flex;gap:var(--size-2);flex-wrap:wrap}
