*{box-sizing:border-box}
:root{--bg:#f7f4ef;--card:#fff;--text:#252321;--muted:#706a64;--accent:#7a4b2a;--border:#e2dbd3}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
.container{width:min(1180px,calc(100% - 28px));margin:auto}
header{background:#fff;border-bottom:1px solid var(--border);padding:17px 0}
.brand{color:var(--accent);font-weight:800;font-size:1.2rem;text-decoration:none}
.hero{padding:36px 0 20px}.hero h1{font-size:clamp(2rem,6vw,3.2rem);margin:0}.hero p{color:var(--muted);margin:5px 0}
.search-card,.panel,.empty{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:0 4px 18px #0000000b}
.search-row{display:grid;grid-template-columns:1fr auto;gap:10px}
input,select,button{font:inherit;min-height:46px;border:1px solid #ccc2b8;border-radius:10px;padding:9px 12px;background:white}
button{background:var(--accent);color:white;border:0;font-weight:700;padding-inline:22px;cursor:pointer}
.filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
label{display:block;font-weight:650;margin-bottom:5px}
.results-head{display:flex;justify-content:space-between;align-items:center;margin:25px 0 12px}.results-head h2{margin:0}
.results-head a,.back{color:var(--accent);font-weight:650;text-decoration:none}
.recipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.recipe-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;text-decoration:none;box-shadow:0 4px 18px #0000000b;transition:.15s}
.recipe-card:hover{transform:translateY(-2px)}
.recipe-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e9e3db}
.recipe-card div{padding:13px}.recipe-card h3{font-size:1.05rem;line-height:1.3;margin:0 0 6px}.recipe-card small{color:var(--muted)}
.empty{text-align:center;margin-bottom:40px}
.back{display:inline-block;margin:28px 0 15px}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.detail>img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e9e3db;border-radius:16px;box-shadow:0 4px 18px #0000000b}
.detail h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;margin:7px 0 15px}.detail small{color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{background:#ece5dc;color:#5e4633;border-radius:999px;padding:5px 10px;font-size:.85rem}
.facts{display:flex;gap:10px;margin-top:20px}.facts b{background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px 15px;text-align:center}.facts small{display:block}
.columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;margin:22px 0 50px}
.panel h2{margin-top:0}.panel ul{list-style:none;padding:0;margin:0}
.panel li{display:grid;grid-template-columns:120px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}
footer{border-top:1px solid var(--border);padding:28px 0;color:var(--muted);margin-top:30px}
@media(max-width:950px){.recipe-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.filters,.detail,.columns{grid-template-columns:1fr}.recipe-grid{grid-template-columns:repeat(2,1fr)}.detail>img{aspect-ratio:auto;max-height:70vh;object-fit:contain}.hero{padding-top:25px}}
@media(max-width:440px){.container{width:calc(100% - 16px)}.search-row{grid-template-columns:1fr}.recipe-grid{grid-template-columns:1fr}.recipe-card{display:grid;grid-template-columns:115px 1fr}.recipe-card img{height:100%;aspect-ratio:auto;min-height:115px;object-fit:contain}.detail h1{font-size:2rem}.panel{padding:16px}}
