@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#1d2b24;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f6f2;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(at 6% -8%,#e5eee5 0,#0000 34%),#f4f6f2;min-width:320px;margin:0}.app-shell{max-width:1080px;margin:0 auto;padding:48px 32px 30px}.top{justify-content:space-between;align-items:flex-end;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:.16em;color:#658072;font-size:11px;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-1.4px;margin:7px 0 6px;font:800 34px Manrope,sans-serif}.top p,.muted{color:#77827b;margin-bottom:0;font-size:14px}.summary{color:#244b39;gap:28px;font-size:20px;font-weight:700;display:flex}.summary span{text-align:center}.summary small{color:#879189;margin-top:3px;font-size:11px;font-weight:500;display:block}.tabs{border-bottom:1px solid #dce3dc;gap:7px;margin-bottom:15px;display:flex}.tabs button{color:#77827b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:13px 18px;font:600 14px DM Sans}.tabs button.active{color:#20533e;border-color:#2c684d}.badge{color:#2c684d;background:#e2eee5;border-radius:20px;place-items:center;min-width:19px;height:19px;margin-left:7px;font-size:11px;display:inline-grid}.notice{color:#2b684d;min-height:28px;padding:4px 2px;font-size:13px}.layout{grid-template-columns:minmax(270px,.85fr) minmax(0,1.5fr);gap:18px;display:grid}.panel{background:#ffffffeb;border:1px solid #e7ebe6;border-radius:16px;padding:24px;box-shadow:0 8px 24px #29422b08}.panel h2{letter-spacing:-.3px;margin-bottom:6px;font:700 18px Manrope,sans-serif}.form-panel{align-self:start}.form-panel form{gap:15px;margin-top:21px;display:grid}.form-panel label{color:#58665d;gap:7px;font-size:12px;font-weight:600;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}input,select,textarea{color:#27352d;background:#f8faf7;border:1px solid #e1e7e0;border-radius:9px;outline:none;width:100%;padding:11px 12px;font:14px DM Sans}input:focus,select:focus,textarea:focus{border-color:#7da28c;box-shadow:0 0 0 3px #477b5515}textarea{resize:vertical;line-height:1.55}.primary{color:#fff;cursor:pointer;background:#286447;border:0;border-radius:9px;padding:12px 15px;font:600 13px DM Sans;transition:background .15s}.primary:hover{background:#1d5238}.primary span{margin-left:5px;font-size:17px}.section-heading{justify-content:space-between;margin-bottom:17px;display:flex}.items{gap:9px;display:grid}.item,.shopping-row{border:1px solid #edf0ec;border-radius:11px;align-items:center;gap:12px;padding:12px;display:flex}.food-icon{color:#34704f;background:#edf4ee;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:16px;display:grid}.item-name{flex:1;gap:3px;min-width:0;display:grid}.item-name strong{font-size:14px}.item-name small{color:#919a93;font-size:11px}.amount{color:#345943;font-size:14px;font-weight:700}.amount small{color:#879189;font-size:12px;font-weight:500}.delete{color:#a0aaa2;cursor:pointer;background:0 0;border:0;padding:0 5px;font-size:21px}.delete:hover,.delete-text:hover{color:#a13f35}.empty{text-align:center;color:#68766e;flex-direction:column;justify-content:center;align-items:center;min-height:200px;display:flex}.empty>span{color:#43815b;background:#eff5ef;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:14px;font-size:22px;display:grid}.empty strong{color:#35473b;font:700 14px Manrope}.empty p{color:#8b958e;margin:6px 0 0;font-size:12px}.meal-card{border:1px solid #edf0ec;border-radius:12px;padding:15px}.meal-day{text-transform:uppercase;letter-spacing:.1em;color:#5d806c;font-size:10px;font-weight:700}.meal-title{margin-top:5px;font:700 15px Manrope}.ingredient-summary{color:#818b83;margin-top:6px;font-size:12px;line-height:1.5}.actions{align-items:center;gap:14px;margin-top:13px;display:flex}.small{padding:9px 13px}.delete-text{color:#89938b;cursor:pointer;background:0 0;border:0;font:600 12px DM Sans}.shopping-panel{margin-top:0}.shopping-row input{max-width:135px}.shopping-row .primary{white-space:nowrap}footer{text-align:center;color:#9aa49c;padding:24px 0 0;font-size:11px}@media (width<=720px){.app-shell{padding:28px 16px}.top{flex-direction:column;align-items:flex-start;gap:20px}h1{font-size:29px}.summary{gap:24px}.layout{grid-template-columns:1fr}.panel{padding:19px}.shopping-row{flex-wrap:wrap}.shopping-row .item-name{min-width:calc(100% - 55px)}.shopping-row input{flex:1;max-width:none}.tabs button{padding:12px 15px}}
