:root{--bg:#f7f5f2;--surface:#fff;--text:#1f1d1a;--muted:#6f6a63;--border:#e3dfd8;--accent:#c2541b;--accent-text:#fff;--chip:#f1e6dc;--ok:#2f7a3b;--danger:#b3261e;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}@media (prefers-color-scheme:dark){:root{--bg:#181614;--surface:#23201d;--text:#ece8e3;--muted:#a39d95;--border:#3a3530;--accent:#e0793f;--accent-text:#1a0f08;--chip:#3b2c22;--ok:#7cc58a;--danger:#f2867d}}*{box-sizing:border-box}body{background:var(--bg);margin:0}header{align-items:center;gap:12px;max-width:640px;margin:0 auto;padding:16px;display:flex}.brand{color:var(--text);margin-right:auto;font-size:1.2rem;font-weight:700;text-decoration:none}main{max-width:640px;margin:0 auto;padding:0 16px 48px}a{color:var(--accent)}h1{margin:0 0 16px;font-size:1.5rem}h2{color:var(--muted);margin:20px 0 8px;font-size:1rem}button,.button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 14px;text-decoration:none}button:disabled{opacity:.6;cursor:default}.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.danger{color:var(--danger)}button.link{color:var(--muted);background:0 0;border:none;padding:0;text-decoration:underline}input,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;padding:8px 10px}label,.field{flex-direction:column;gap:4px;margin-bottom:14px;font-weight:600;display:flex}label input,label textarea,.field .ingredient-input{font-weight:400}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.login{max-width:360px;margin:15vh auto 0}.actions{gap:8px;margin-top:20px;display:flex}.error{color:var(--danger)}.empty{color:var(--muted);text-align:center;padding:32px 0}.filter{margin-bottom:16px}.filter-label{justify-content:space-between;margin-bottom:4px;font-weight:600;display:flex}.ingredient-input{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-wrap:wrap;gap:6px;padding:6px;display:flex}.ingredient-input input{border:none;outline:none;flex:1;min-width:120px;padding:4px}.ingredient-input:focus-within{outline:2px solid var(--accent);outline-offset:-1px}.chip{background:var(--chip);border-radius:999px;align-items:center;gap:2px;padding:2px 4px 2px 10px;display:inline-flex}.chip button{color:var(--muted);background:0 0;border:none;padding:0 6px}.recipe-list{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.recipe-list li+li{border-top:1px solid var(--border)}.recipe-list a{color:var(--text);flex-direction:column;padding:12px 16px;text-decoration:none;display:flex}.recipe-list a:hover{background:var(--bg)}.recipe-name{font-weight:600}.missing{color:var(--muted);font-size:.9rem}.complete{color:var(--ok);font-size:.9rem}.ingredients{margin:0;padding-left:20px}.ingredients .have{color:var(--ok)}.ingredients .have:after{content:" ✓"}.note{white-space:pre-wrap;margin:0}.back{margin-bottom:12px;text-decoration:none;display:inline-block}
