*{box-sizing:border-box}body{margin:0;background:#f6f5ef;color:#193b2c;font:15px Arial,sans-serif}header{padding:20px 5%;display:flex;gap:25px;align-items:center;background:#fff;border-bottom:1px solid #e1e5dc}header a:first-child{font-weight:bold;margin-right:auto}a{color:#20583d}main{max-width:1200px;padding:40px 24px;margin:auto}h1,h2{font-family:Georgia,serif;font-weight:normal}h1{font-size:34px;margin:12px 0}p{line-height:1.65;color:#607266}button,.button{display:inline-block;border:0;background:#194e35;color:#fff;padding:13px 18px;border-radius:8px;font:inherit;cursor:pointer;text-decoration:none}button:disabled{opacity:.5;cursor:wait}button:hover{background:#296448}.box,.product{background:#fff;border:1px solid #dfe5dc;border-radius:16px;padding:25px;margin-bottom:18px}#login{max-width:580px;margin:30px auto;text-align:center;padding:45px}#login img{object-fit:contain}.heading,.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center}.heading button{flex-shrink:0}small{letter-spacing:2px;color:#ac6b45}nav{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}nav button{background:#e4eade;color:#264b36}nav .active{background:#194e35;color:white}.product{display:grid;grid-template-columns:110px 1fr;gap:20px}.product img{width:110px;height:110px;object-fit:cover;border-radius:10px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:13px;font-weight:bold}input,select,textarea{display:block;width:100%;padding:11px;margin-top:7px;border:1px solid #ced8cd;border-radius:7px;font:inherit;color:#193b2c;background:#fff}textarea{min-height:70px}input[type=checkbox]{display:inline;width:auto;margin-right:8px}.wide{grid-column:1/-1}.actions{display:flex;gap:10px;align-items:center;margin-top:15px;flex-wrap:wrap}.danger{background:#f5e9e4;color:#8e3c2c}.hint{font-size:13px}.success{background:#e0efe1;padding:15px;border-radius:8px}.error{background:#fbe6df;color:#852c21;padding:15px;border-radius:8px}#status{position:sticky;top:10px;z-index:2}dialog{border:1px solid #ccd6c9;border-radius:16px;max-width:450px;padding:28px}dialog::backdrop{background:#102c2466}[hidden]{display:none!important}:focus-visible{outline:3px solid #b98455;outline-offset:3px}#audit p{border-bottom:1px solid #eee;padding:12px 0}@media(max-width:700px){header{padding:16px;gap:12px;font-size:12px}main{padding:22px 14px}.heading{display:block}.heading button{width:100%;margin-top:10px}.fields{grid-template-columns:1fr}.product{grid-template-columns:1fr;padding:18px}.product img{width:100%;height:180px}.wide{grid-column:auto}h1{font-size:29px}}
.unit-editor{margin:18px 0;border:1px solid #dfe5dc;border-radius:10px;padding:18px;background:#fafbf7}.unit-editor h3{margin:0 0 8px}.unit-row{padding:12px 0;border-top:1px solid #e3e8dd}.unit-row>.fields{padding:10px 0}.member-main{max-width:760px}.member-main form button[type=submit]{margin-top:20px}.member-main label{margin:14px 0}.member-main a{text-decoration:underline}.member-main #recovery-code{min-height:100px;word-break:break-all}

.recipe-editor{grid-column:1/-1;background:#f7f9f3;border:1px solid #dce5d6;border-radius:10px;padding:18px}.recipe-editor summary,.ingredient summary{cursor:pointer;font-weight:bold;line-height:1.6}.recipe-line{display:grid;grid-template-columns:1.3fr 1fr auto;gap:12px;align-items:end;margin:14px 0}.allergen-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 0}.ingredient details{margin:15px 0}.recipe-preview{padding:14px;background:#e7eee2;border-radius:6px}.recipe-editor label{margin:10px 0}@media(max-width:700px){.recipe-line{grid-template-columns:1fr}.allergen-checks{grid-template-columns:1fr}}
