
.planner-hero{background:#eeece3;padding:82px 8% 62px}
.planner-hero h1{font:600 clamp(48px,6vw,78px)/1.02 'Playfair Display';letter-spacing:-.05em;margin:20px 0}
.planner-hero h1 em,.section-head h2 em,.shop-panel h2 em{color:#e66b36;font-weight:500}
.planner-hero>p{max-width:520px;color:#77786e;font-size:14px;line-height:1.8}
.planner-stats{display:flex;gap:28px;margin-top:30px;color:#77786e;font-size:11px}
.planner-stats b{font:600 24px 'Playfair Display';color:#262820;margin-right:5px}
.planner-layout{padding:65px 8% 85px;display:grid;grid-template-columns:1.55fr .8fr;gap:42px;align-items:start}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}
.section-head h2,.shop-panel h2{font:600 clamp(34px,4vw,48px)/1.05 'Playfair Display';letter-spacing:-.04em;margin:12px 0}
.soft-button{border:1px solid #d8d4c9;background:#fffdf8;padding:10px 14px;border-radius:22px;font:11px 'DM Sans';cursor:pointer}
.soft-button:hover{background:#282b24;color:white}
.week-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.day-card{background:#f0eee7;border:1px solid #e4e1d7;padding:17px;min-height:145px}
.day-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}
.day-top b{font:600 18px 'Playfair Display'}
.day-top span{font-size:9px;letter-spacing:.12em;color:#929187;text-transform:uppercase}
.meal-slot{background:#fffdf8;padding:12px;margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.meal-slot span{font-size:11px;line-height:1.4}
.meal-slot small{display:block;color:#8a897f;font-size:9px;margin-top:4px}
.meal-slot button{border:0;background:transparent;color:#e66b36;font-size:17px;cursor:pointer}
.add-meal{border:1px dashed #c9c5b9;background:transparent;width:100%;padding:12px;margin-top:8px;color:#77786e;font:11px 'DM Sans';cursor:pointer}
.add-meal:hover{border-color:#e66b36;color:#e66b36}
.shop-panel{background:#eeece3;padding:25px;position:sticky;top:20px}
.shop-panel h2{font-size:36px}
.muted{font-size:11px;color:#77786e;line-height:1.7}
.shop-actions{display:flex;gap:8px;margin:20px 0}
.shop-actions .soft-button{background:#fffdf8}
.shopping-list{border-top:1px solid #d9d5ca;padding-top:12px;max-height:480px;overflow:auto}
.shop-item{display:flex;align-items:flex-start;gap:9px;padding:9px 0;border-bottom:1px solid #dedbd1;font-size:11px;line-height:1.5}
.shop-item input{accent-color:#e66b36;margin-top:2px}
.shop-item.checked span{text-decoration:line-through;color:#99978c}
.empty{font-size:11px;color:#8a897f;padding:15px 0}
.shop-footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font-size:10px;color:#77786e}
.text-button,.text-link{border:0;background:none;color:#262820;font:600 11px 'DM Sans';cursor:pointer;text-decoration:none}
.ideas-section{padding:0 8% 90px}
.idea-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.idea-card{background:#f0eee7;cursor:pointer}
.idea-card img{width:100%;height:175px;object-fit:cover;display:block}
.idea-card div{padding:14px}
.idea-card small{font-size:8px;letter-spacing:.13em;color:#e66b36}
.idea-card h3{font:600 21px 'Playfair Display';margin:7px 0}
.idea-card p{font-size:10px;color:#77786e;line-height:1.6;margin:0}
@media(max-width:900px){.planner-layout{grid-template-columns:1fr}.shop-panel{position:static}.week-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.planner-hero{padding:55px 7%}.planner-layout{padding:45px 7%}.week-grid,.idea-grid{grid-template-columns:1fr}.ideas-section{padding:0 7% 65px}.section-head{align-items:start;gap:12px;flex-direction:column}}
