:root{--mp-green:#32675a;--mp-dark:#203a32;--mp-soft:#e6f0eb;--mp-cream:#fbf8f1;--mp-coral:#d8755b;--mp-line:#d9ded9;--mp-muted:#66736e}
#mp-app{position:fixed;inset:0;z-index:1280;background:rgba(18,35,29,.55);font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--mp-dark);padding-top:max(8px,env(safe-area-inset-top))}.mp-hidden{display:none!important}
.mp-shell{height:100%;max-width:900px;margin:auto;background:var(--mp-cream);border-radius:24px 24px 0 0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 60px rgba(18,38,31,.28)}
.mp-head{display:flex;align-items:center;gap:12px;padding:15px 17px;background:#fff;border-bottom:1px solid var(--mp-line)}.mp-head>div{flex:1}.mp-head h2{font:800 23px/1.15 Georgia,serif;margin:0}.mp-head p{font-size:12px;color:var(--mp-muted);margin:3px 0 0}.mp-close{width:40px;height:40px;border:0;border-radius:50%;background:#edf2ef;font-size:23px;color:var(--mp-dark)}
.mp-main-tabs,.mp-view-tabs{display:flex;gap:7px;overflow:auto;scrollbar-width:none}.mp-main-tabs{padding:10px 12px;background:#fff;border-bottom:1px solid var(--mp-line)}.mp-main-tabs button,.mp-view-tabs button{white-space:nowrap;border:1px solid var(--mp-line);background:#fff;border-radius:999px;padding:9px 13px;font-weight:800;color:var(--mp-dark)}.mp-main-tabs button.active,.mp-view-tabs button.active{background:var(--mp-green);border-color:var(--mp-green);color:#fff}
.mp-content{overflow:auto;padding:15px 15px 110px}.mp-pane{display:none}.mp-pane.active{display:block}.mp-pane>h3{font:800 26px/1.2 Georgia,serif;margin:0 0 4px}.mp-lead{color:var(--mp-muted);font-size:14px;margin:0 0 15px;line-height:1.45}
.mp-card{background:#fff;border:1px solid var(--mp-line);border-radius:17px;padding:14px;margin-bottom:13px;box-shadow:0 4px 15px rgba(40,64,56,.05)}.mp-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.mp-toolbar h4{font:800 19px/1.2 Georgia,serif;margin:0;flex:1;min-width:150px;text-align:center}.mp-icon{border:0;border-radius:10px;background:var(--mp-soft);color:var(--mp-green);padding:9px 12px;font-weight:900}.mp-btn{border:0;border-radius:11px;background:var(--mp-green);color:#fff;padding:11px 14px;font-weight:800;font-size:14px}.mp-btn.secondary{background:var(--mp-soft);color:var(--mp-green)}.mp-btn.coral{background:#fff0eb;color:#9e4835}.mp-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.mp-actions>*{flex:1;min-width:115px}
.mp-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.mp-weekday{text-align:center;font-size:10px;text-transform:uppercase;font-weight:900;color:#77827e;padding:3px}.mp-day{min-height:67px;background:#fff;border:1px solid var(--mp-line);border-radius:11px;padding:6px;display:flex;flex-direction:column;align-items:flex-start;color:var(--mp-dark)}.mp-day.muted{opacity:.28}.mp-day.selected{outline:3px solid #76a493;background:#f5faf7}.mp-day.today strong{background:var(--mp-coral);color:#fff;border-radius:99px;min-width:23px;height:23px;display:grid;place-items:center}.mp-day strong{font-size:12px}.mp-dots{display:flex;gap:3px;flex-wrap:wrap;margin-top:auto}.mp-dot{width:6px;height:6px;border-radius:50%;background:var(--mp-green)}.mp-count{font-size:9px;color:var(--mp-muted);margin-top:3px}
.mp-week-grid{display:grid;grid-template-columns:repeat(7,minmax(116px,1fr));gap:8px;overflow:auto;padding-bottom:5px}.mp-week-day{background:#fff;border:1px solid var(--mp-line);border-radius:13px;padding:10px;min-height:150px}.mp-week-day.selected{outline:2px solid var(--mp-green)}.mp-week-day button{border:0;background:none;font-weight:900;color:var(--mp-green);padding:0}.mp-mini-meal{font-size:10px;margin-top:8px;padding-top:7px;border-top:1px solid #edf0ed}.mp-mini-meal strong{display:block;color:var(--mp-dark)}
.mp-slot-list{display:grid;gap:8px}.mp-slot{border-left:4px solid var(--mp-green);padding:10px;background:#f7faf8;border-radius:0 11px 11px 0}.mp-slot>strong{display:block;font-size:12px;color:var(--mp-coral);text-transform:uppercase}.mp-meal-row{display:flex;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #e8ece9}.mp-meal-row:first-of-type{border-top:0}.mp-meal-row img{width:62px;height:44px;object-fit:cover;border-radius:8px}.mp-meal-main{flex:1;min-width:0}.mp-meal-main strong{display:block;font-size:13px}.mp-meal-main small{color:var(--mp-muted)}
.mp-field{display:flex;flex-direction:column;gap:5px;color:#53615d;font-size:12px;font-weight:900}.mp-field input,.mp-field select{width:100%;box-sizing:border-box;border:1px solid #cbd3ce;border-radius:11px;padding:11px 12px;background:#fff;color:var(--mp-dark);font:500 15px system-ui}.mp-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mp-grid .wide{grid-column:1/-1}.mp-slot-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.mp-slot-buttons button{border:1px solid var(--mp-line);border-radius:10px;background:#fff;padding:9px 3px;font-size:11px;font-weight:900}.mp-slot-buttons button.active{background:var(--mp-green);color:#fff;border-color:var(--mp-green)}
.mp-results{max-height:260px;overflow:auto;margin-top:8px}.mp-result{display:flex;gap:10px;align-items:center;width:100%;border:0;border-top:1px solid #edf0ed;background:#fff;text-align:left;padding:9px 2px;color:var(--mp-dark)}.mp-result img{width:64px;height:46px;border-radius:8px;object-fit:cover}.mp-result div{flex:1}.mp-result strong{display:block}.mp-result small{color:var(--mp-muted)}.mp-result.selected{background:#edf7f2}
.mp-shopping-head{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.mp-shopping-head .mp-field{flex:1;min-width:180px}.mp-dept{margin:15px 0 5px;color:var(--mp-green);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.mp-check-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-top:1px solid #edf0ed}.mp-check-row input{width:21px;height:21px;accent-color:var(--mp-green)}.mp-check-row div{flex:1}.mp-check-row small{display:block;color:var(--mp-muted)}.mp-check-row.done div{text-decoration:line-through;opacity:.55}.mp-empty{text-align:center;color:var(--mp-muted);padding:24px 8px}.mp-pill{display:inline-block;background:var(--mp-soft);color:var(--mp-green);border-radius:99px;padding:5px 8px;font-size:11px;font-weight:900;margin:3px 3px 0 0}
.mp-add-detail{width:100%;margin:0 0 18px;border:0;border-radius:13px;padding:13px 16px;background:var(--mp-green);color:#fff;font-weight:900;font-size:15px;box-shadow:0 6px 16px rgba(50,103,90,.2)}
@media(max-width:600px){#mp-app{padding:0}.mp-shell{border-radius:0}.mp-content{padding:13px 12px 110px}.mp-grid{grid-template-columns:1fr}.mp-grid .wide{grid-column:auto}.mp-calendar{gap:3px}.mp-day{min-height:59px;padding:5px}.mp-slot-buttons{grid-template-columns:repeat(2,1fr)}.mp-head h2{font-size:20px}}
