:root{--ink:#163c35;--leaf:#34685a;--cream:#f8f6ef;--line:#d8ded3;--muted:#52665f}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 system-ui,sans-serif}header,main,footer{max-width:1160px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}header a{font-weight:750;letter-spacing:.13em;text-decoration:none}header span{display:block;font-size:11px;letter-spacing:.04em;font-weight:400}header .back{font-size:13px;letter-spacing:0}a{color:var(--ink);text-underline-offset:4px}.intro{padding:48px 0 25px;max-width:730px}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:750;color:var(--leaf)}h1{font:clamp(38px,6vw,70px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:18px 0}h1 em{font-weight:400;color:var(--leaf)}h2{font:29px/1.2 Georgia,serif;margin:10px 0 16px}.intro>p:last-child{font-size:19px;color:var(--muted);max-width:630px}.note{background:#edf0df;border-left:4px solid #6c8053;padding:18px 22px;font-size:14px;margin-bottom:30px}.layout{display:grid;grid-template-columns:1fr 1.18fr;gap:26px;align-items:start}.panel{border:1px solid var(--line);border-radius:16px;background:#fff;padding:28px}.muted{color:var(--muted);font-size:14px}label{display:block;font-size:13px;font-weight:700;margin:18px 0 6px}input,select{font:inherit;color:var(--ink);border:1px solid #a8b9b0;background:#fff;border-radius:7px;min-width:0;width:100%;padding:11px;min-height:46px}input:focus,select:focus,button:focus-visible,summary:focus-visible{outline:3px solid #bacaa0;outline-offset:3px}.two,.three{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.three label{font-size:11px}.hint{font-size:12px;color:var(--muted);margin:10px 0}button{background:var(--ink);color:white;padding:12px 18px;border:0;border-radius:7px;font:600 14px/1.5 system-ui;cursor:pointer;min-height:46px}form>button{width:100%;margin-top:20px}button:hover{background:var(--leaf)}button:disabled{opacity:.45;cursor:default}.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.secondary:hover{background:#edf0e9}.result{padding:18px;background:#f1f4ee;border-radius:8px;margin-top:20px;font-size:14px}.result strong{font-size:26px;display:block;font-family:Georgia,serif}.result p{margin:8px 0}.totals{display:grid;grid-template-columns:1fr 1fr;background:#e9f0e8;padding:22px;border-radius:10px;margin:24px 0 12px}.totals span{font:38px/1.1 Georgia,serif}.totals small{display:block;color:var(--muted);font-size:12px}.food-list{list-style:none;padding:0;margin:0}.food-list li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.food-list small{display:block;color:var(--muted)}.food-list .empty{color:var(--muted)}.food-list button{padding:5px 10px;font-size:12px}.actions{display:flex;gap:10px;margin:18px 0}.closing{padding:40px 0 26px;max-width:760px}.text-link{font-weight:600;font-size:15px}details{padding:18px 0;border-top:1px solid var(--line);font-size:13px;max-width:900px}summary{cursor:pointer;font-weight:650}footer{font-size:11px;letter-spacing:.08em;color:var(--muted);border-top:1px solid var(--line);margin-top:20px}@media(max-width:760px){header,main,footer{padding:20px}header{gap:15px}.layout{grid-template-columns:1fr}.panel{padding:22px}.intro{padding-top:28px}.three{gap:8px}header .back{max-width:115px;font-size:12px}}@media print{form,.actions,header .back,.food-list button{display:none}.layout{display:block}.panel{break-inside:avoid;margin-bottom:20px}body{background:white}}
