:root{--ink:#17352d;--muted:#597067;--line:#d8e4dc;--paper:#f6faf7;--mint:#dff4e8;--accent:#117a52;--danger:#9d3d32}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Apple SD Gothic Neo,sans-serif;line-height:1.55}button,input{font:inherit}button{border:0;border-radius:10px;background:var(--accent);color:white;cursor:pointer;font-weight:700;padding:11px 14px}button:hover{filter:brightness(.94)}main{width:min(100%,720px);margin:0 auto;padding:24px 16px 56px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,7vw,3rem);line-height:1.15;letter-spacing:-.05em}h2{font-size:1.38rem;letter-spacing:-.03em}h3{font-size:1rem}.hero{padding:24px 4px 10px}.helper,.hero>p:last-child,.unit{color:var(--muted)}.eyebrow{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:7px}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 32px}.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.danger{background:white;color:var(--danger);border:1px solid #e9c7c1}.detail-heading,.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.search-label input{width:140px;border:1px solid var(--line);border-radius:10px;background:white;padding:10px}.ingredient-grid,.recipe-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.blocked-recipe,.detail,.empty,.ingredient-card,.notice,.recipe-card{border:1px solid var(--line);border-radius:16px;background:white;padding:16px}.ingredient-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.ingredient-title span{color:var(--accent);background:var(--mint);border-radius:999px;font-size:.73rem;font-weight:700;padding:3px 8px}fieldset{border:0;display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;padding:0}legend{font-size:.84rem;font-weight:700;margin-bottom:4px}.field-label,fieldset label{font-size:.88rem}.field-label{display:block;font-weight:700}.field-label input{display:block;width:100%;margin-top:4px;border:1px solid var(--line);border-radius:8px;padding:9px}.unit{font-size:.85rem;margin:8px 0 0}.results{margin-top:40px}.empty{background:#fffdf5;border-color:#ebdfae}.recipe-card{display:flex;flex-direction:column}.recipe-card p{color:var(--muted);flex:1 1}.result-group{margin-top:24px}.blocked-recipe{border-left:4px solid #e6ad42;margin:9px 0;padding:12px}.blocked-recipe p{color:var(--muted);margin-bottom:0;font-size:.9rem}.detail{border-color:#a7d5b8;margin-top:28px}.detail ol,.detail ul{padding-left:20px}.safety{background:#fff5d9;border-radius:9px;color:#684f13;font-size:.9rem;padding:10px}.notice{margin-top:28px;background:#edf6f0;font-size:.9rem}.notice p{margin-bottom:0;color:var(--muted)}.sr-only{clip:rect(0,0,0,0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:440px){main{padding:16px 12px 40px}.section-heading{align-items:stretch;flex-direction:column}.search-label input{width:100%}.toolbar button{flex:1 1;font-size:.85rem;padding:10px 8px}}