*{box-sizing:border-box}body{margin:0;background:#f5f2eb;color:#29382f;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.7}header{max-width:1180px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9ddd1}.brand{text-decoration:none;color:inherit;font-weight:800;font-size:23px;letter-spacing:-1px}.brand span{color:#c16c3d}.edition{font-size:12px;color:#697467}main{max-width:1180px;margin:auto;padding:0 28px}.hero{position:relative;padding:54px 0 38px;overflow:hidden}.eyebrow{font-size:11px;letter-spacing:3px;color:#7b715d}h1{font-size:clamp(32px,4.4vw,53px);line-height:1.35;letter-spacing:.01em;margin:18px 0}p{color:#647062}.hero p{font-size:15px}.plate{position:absolute;right:6%;top:40px;width:250px;height:250px;border-radius:50%;border:17px solid #e9e2d5;background:#fdfaf2;box-shadow:0 8px 24px #3838210b,inset 0 0 0 2px #d8d0bd;display:grid;place-items:center;transform:rotate(9deg)}.plate div{text-align:center;font-size:19px}.plate strong{font-size:36px;font-weight:500}.plate span{display:block;font-size:10px;margin-top:12px;color:#a0744d}.layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.panel{background:#fffef9;border:1px solid #e3e3d9;padding:26px;border-radius:18px;margin-bottom:18px}.sectionhead{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.sectionhead>span{font-size:12px;color:#a4714a;border:1px solid #d6c4ae;border-radius:50%;width:28px;height:28px;display:grid;place-items:center}h2{font-size:18px;margin:0}.sectionhead small{font-size:10px;color:#818779}.sub{margin-top:22px}.sub h2{font-size:14px}.choices{display:flex;flex-wrap:wrap;gap:9px}button,select,input,textarea{font:inherit}button{cursor:pointer}.choices button{background:#f8f7ef;color:#445142;border:1px solid #d8ddcf;padding:10px 14px;border-radius:9px;font-size:13px}.choices button[aria-pressed=true]{background:#31533d;color:white;border-color:#31533d}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d09a60;outline-offset:3px}.hint{font-size:11px;line-height:1.7;color:#787e71;margin:12px 0 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{font-size:13px;display:block;margin-bottom:13px;font-weight:600}label small{font-weight:400;color:#7c8376;font-size:10px}select,input,textarea{width:100%;border:1px solid #d7ddd0;background:white;color:#2f3e31;border-radius:8px;padding:11px;margin-top:7px;font-size:14px}textarea{resize:vertical}#pantry{margin-top:0}label[for=pantry],label[for=avoid]{margin:20px 0 0}.textbutton{border:0;background:none;color:#936033;padding:7px 0;font-size:12px}.primary,.secondary{width:100%;padding:16px 20px;border-radius:10px;font-size:14px;font-weight:650}.primary{background:#31533d;color:white;border:1px solid #31533d;display:flex;justify-content:space-between}.secondary{background:transparent;color:#31533d;border:1px solid #b6c1ac;margin-top:10px}.center{text-align:center}aside{position:sticky;top:20px}.empty{border:1px dashed #c6cbbd;border-radius:20px;min-height:520px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.big{font-size:65px}.empty p{font-size:13px;line-height:2}.mini{border-top:1px solid #d4d8cc;margin-top:40px;padding-top:25px;font-size:13px;color:#9a7551}.recipe{background:#fffef9;border:1px solid #dde1d5;border-radius:20px;overflow:hidden}.dishhero{background:#e8eddf;padding:30px}.dishhero .big{float:right;font-size:48px}.dishhero small{font-size:10px;letter-spacing:2px;color:#718565}.dishhero h2{font-size:25px;line-height:1.5;margin-top:12px;max-width:330px}.dishhero p{font-size:13px}.meta{font-size:12px;color:#526745}.body{padding:26px}.reason{background:#f2f4eb;padding:14px;font-size:13px;border-radius:8px;margin:0 0 18px}.warning{font-size:12px;background:#fbf0df;border-left:3px solid #bf8f51;padding:12px;margin:12px 0}h3{font-size:14px;margin-top:24px}ul{padding-left:20px}li{font-size:13px;margin:8px 0}ol{padding-left:22px}table{width:100%;border-collapse:collapse;font-size:13px}td{padding:7px 2px;border-bottom:1px solid #efefe5}td:last-child{text-align:right}.tag{font-size:10px;background:#eaf0e1;padding:3px 6px;border-radius:5px}.noresult{padding:30px;background:#fffef9;border:1px solid #d8ddcf;border-radius:18px}footer{font-size:11px;color:#7e8577;line-height:1.9;padding:40px 0 32px;max-width:860px}footer a{color:#687861}@media(max-width:760px){header{padding:18px}.edition{font-size:10px}main{padding:0 18px}.hero{padding:35px 0 20px}.plate{width:115px;height:115px;border-width:8px;right:0;top:34px;opacity:.7}.plate div{font-size:10px}.plate strong{font-size:18px}.plate span{display:none}h1{font-size:31px;max-width:280px}.hero p{font-size:12px}.layout{grid-template-columns:1fr}.panel{padding:20px}aside{position:static}.empty{min-height:260px}.mini{margin-top:12px;padding-top:12px}.dishhero h2{font-size:23px}button{min-height:44px}}

summary{cursor:pointer;font-weight:700}fieldset{border:1px solid #d8ddcf;border-radius:10px;margin:16px 0}legend{font-size:13px}.checks{display:flex;flex-wrap:wrap;gap:10px}.checks label{display:flex;align-items:center;gap:5px}.checks input,.stockrow input{width:auto;margin:0}.stockrow{display:grid;grid-template-columns:1.3fr 1fr 45px 60px;align-items:center;gap:6px;border-bottom:1px solid #eee;padding:6px 0;font-size:12px}.stockrow label{margin:0;display:flex;gap:4px;align-items:center;font-size:11px}.stockrow select{margin:0;padding:7px}.stockhead{font-size:10px;color:#6b7568}aside{position:static}.meal{padding:16px 0;border-bottom:1px solid #ddd}.meal h3{margin:4px 0;font-size:19px}.meal button{width:auto;padding:6px 12px;font-size:12px}.badge{font-size:12px;color:#6b7568}.body details{margin:16px 0}.fields{margin-top:15px}#saveStatus{font-size:12px}#saved{font-size:11px;color:#60765e}.primary:disabled{opacity:.6}@media(max-width:450px){.stockrow{grid-template-columns:1fr 75px 40px 58px}.stockrow label{font-size:10px}}
[hidden]{display:none!important}.tabs{display:flex;gap:6px;border-bottom:1px solid #c9d0bf;margin:16px 0 24px;overflow:auto}.tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:16px;white-space:nowrap;color:#65715d;font-weight:650}.tabs button[aria-selected=true]{border-color:#31533d;color:#31533d;background:#e9edde;border-radius:9px 9px 0 0}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.toolbar button{border:1px solid #bcc7b2;border-radius:8px;background:#fffdf7;padding:10px 16px;color:#31533d}.scope{border-top:1px solid #dde2d3;margin-top:24px;padding-top:18px}.scope-label{display:inline-block;background:#edf0e5;color:#506447;border-radius:5px;font-size:12px;padding:3px 10px;margin-bottom:14px}.today .scope-label{background:#fbecd8;color:#875a36}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips label{position:relative;display:flex;margin:0;font-weight:500}.chips input{position:absolute;opacity:0;width:1px;height:1px}.chips span{display:block;border:1px solid #d4dccb;padding:8px 12px;border-radius:8px;background:#fff;font-size:13px}.chips input:checked+span{background:#31533d;color:white;border-color:#31533d}.chips input:focus-visible+span{outline:3px solid #c99559;outline-offset:2px}.chips input:disabled+span{opacity:.4}.checkline{display:flex;gap:8px;align-items:center;margin-top:20px}.checkline input{width:auto;margin:0}.inventory-head,.inventory-row{display:grid;grid-template-columns:1fr 90px 70px;gap:12px;align-items:center;border-bottom:1px solid #eceee4;padding:6px 0;font-size:13px}.inventory-head{font-size:11px;color:#7a826d}.inventory-row select{margin:0;padding:8px}.inventory-row input{width:18px;height:18px;justify-self:center;margin:0}.actionbar{padding:16px 0}.actionbar>p{font-size:13px}.layout{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.panel h2{font-size:23px}.hero{padding:35px 0 24px}h1{font-size:42px}.hero p{font-size:14px}small{font-weight:400;font-size:11px}.panel{min-width:0}#saveStatus{max-width:500px}@media(max-width:760px){.layout{grid-template-columns:1fr}.tabs{position:sticky;top:0;background:#f5f2eb;z-index:2}.tabs button{padding:12px 10px;font-size:12px}.hero h1{font-size:30px}.toolbar button{font-size:12px}.panel h2{font-size:21px}.chips span{padding:9px 11px}.inventory-row{gap:8px}}
.entry-field{padding:12px;margin:16px 0}.entry-row{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:8px;align-items:center;margin-bottom:8px}.entry-row input{margin:0}.add-entry{background:transparent;border:1px dashed #9aaa90;padding:7px 12px;border-radius:7px;color:#31533d;font-size:12px}.remove-entry{background:#f4f2eb;border:1px solid #d7dbcf;border-radius:7px;min-height:36px;color:#67705f}.tool-entry{display:grid;grid-template-columns:130px minmax(0,1fr) 36px;gap:8px;align-items:center;margin-bottom:10px}.tool-entry input,.tool-entry select{margin:0}.catalog-group{border:1px solid #dee3d6;border-radius:8px;margin-bottom:9px;padding:11px 12px}.catalog-group summary{font-size:14px;display:list-item}.catalog-group summary small{float:right;color:#74816b}.catalog-group .chips{padding-top:12px}.hero h1{font-size:36px}.hero{padding:26px 0 20px}@media(max-width:480px){.tool-entry{grid-template-columns:1fr 36px}.tool-entry select{grid-column:1/-1}.hero h1{font-size:29px}}

@media(max-width:760px){input,textarea,select{font-size:16px}button,.chips span{min-height:44px}.feedback .chips{gap:10px}.toolbar{gap:8px}.tabs button{min-height:48px}}
