:root{--bg:#fbf7f1;--fg:#2b2622;--muted:#7a6f66;--accent:#b5562b;--card:#fff;--line:#eadfd3}
@media (prefers-color-scheme:dark){:root{--bg:#1d1a17;--fg:#efe8e0;--muted:#a99d92;--accent:#e08a5c;--card:#26221e;--line:#3a332d}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.6 Georgia,"Iowan Old Style",serif}
a{color:var(--accent)}header,main,footer{max-width:760px;margin:0 auto;padding:0 20px}
header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;padding-top:28px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.brand{font-size:1.5rem;font-weight:bold;text-decoration:none;color:var(--fg)}.brand span{color:var(--accent)}
nav a{margin-left:16px;text-decoration:none;color:var(--muted);font-family:system-ui,sans-serif;font-size:.95rem}nav a:hover{color:var(--accent)}
h1{font-size:2rem;line-height:1.2;margin:32px 0 8px}h2{margin-top:32px}.lead{color:var(--muted);font-size:1.1rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:24px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px}
.card h3{margin:0 0 6px;font-size:1.1rem}.card p{margin:0;color:var(--muted);font-size:.95rem}
.meta{font-family:system-ui,sans-serif;font-size:.85rem;color:var(--muted)}
ul.ingredients li,ol.steps li{margin:4px 0}
footer{margin-top:48px;padding-top:16px;padding-bottom:32px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem;font-family:system-ui,sans-serif}
