.week-overview{border:1px solid var(--line);background:var(--white);padding:26px;border-radius:8px;margin:0 0 36px}.week-settings{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin:20px 0}.week-settings .fine{display:block}.week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.week-days button{border:1px solid var(--line);border-radius:5px;background:var(--paper);text-align:left;padding:13px 10px;color:var(--ink);cursor:pointer}.week-days button[aria-selected=true]{background:var(--green);color:white}.week-days strong{display:block;font-size:13px}.week-days span{display:block;font-size:10px;margin-top:6px}.week-days .day-check{font-size:9px;opacity:.8}.week-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:20px}.week-actions select{width:110px;margin:0}.grocery-section{margin-top:50px;border-top:1px solid var(--line);padding-top:35px}.grocery-cost{display:flex;flex-wrap:wrap;gap:25px;background:var(--lime);padding:20px 24px;border-radius:6px;margin:20px 0}.grocery-cost strong{display:block;font:normal 30px Georgia,serif}.grocery-cost span{font-size:12px}.grocery-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0}.grocery-actions a{font-size:12px}.grocery-card{background:var(--white);border:1px solid var(--line);border-radius:6px;margin:12px 0;padding:20px}.grocery-card-head{display:flex;justify-content:space-between;gap:20px}.grocery-card h3{font:600 16px system-ui;margin:0 0 4px}.grocery-card .buy{font-size:16px;font-weight:600;text-align:right;white-space:nowrap}.grocery-card .buy small{display:block;font-size:11px;font-weight:normal}.grocery-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:15px}.grocery-card summary{font-size:12px;margin-top:12px}.allocations{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:15px 0}.allocations div{background:var(--paper);padding:10px;font-size:11px;border-radius:4px}.allocations strong,.allocations span{display:block}.allocations span{color:var(--muted);font-size:10px}.grocery-card li{font-size:12px}.pantry-editor,.prep-week{border:1px solid var(--line);border-radius:6px;padding:20px;margin:20px 0}.pantry-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.prep-week p,.prep-week li{font-size:13px}.prep-week summary,.pantry-editor summary{font-weight:600}.shopping-unavailable{opacity:.6}.grocery-card .package-note{font-size:11px;color:var(--muted);margin:8px 0}.grocery-fields .readout{font:normal 21px Georgia,serif;margin:12px 0}.week-day-label{font-size:13px;color:var(--muted)}@media(max-width:780px){.week-overview{padding:18px}.week-settings{grid-template-columns:1fr;gap:6px}.week-days{grid-template-columns:repeat(4,1fr)}.week-days button{padding:10px 7px}.week-actions{gap:8px}.grocery-fields{grid-template-columns:1fr 1fr}.allocations{grid-template-columns:repeat(4,1fr)}.pantry-list{grid-template-columns:1fr 1fr}.grocery-card{padding:15px}.grocery-card-head{gap:10px}.grocery-card .buy{font-size:13px}.grocery-section .section-title{display:block}.grocery-cost{gap:20px}.week-overview .section-title{display:block}.week-overview .primary{margin-top:10px}.hero{padding-bottom:22px}}
.household-settings{border-top:1px solid var(--line);padding-top:18px;margin:15px 0}.household-settings summary{cursor:pointer;font-weight:600;font-size:13px}.member-card{border:1px solid var(--line);border-radius:6px;padding:16px;margin:12px 0}.member-fields{display:grid;grid-template-columns:2fr 1fr;gap:15px}.member-slots{display:flex;flex-wrap:wrap;gap:12px}.member-slots label{display:flex;gap:5px;align-items:center;text-transform:capitalize}.member-slots input{width:auto;margin:0}.member-targets{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:10px}.household-summary{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0}.person-summary{background:var(--paper);padding:13px;border-radius:5px;flex:1;min-width:180px}.person-summary strong{display:block;font-size:13px}.person-summary p{font-size:11px;margin:5px 0}@media(max-width:780px){.member-targets{grid-template-columns:1fr 1fr}.member-fields{grid-template-columns:1fr}.household-summary{display:block}.person-summary{margin-top:8px}}

.allergen-fields{border:1px solid var(--line,#ddd);border-radius:8px;padding:12px;display:flex;flex-wrap:wrap;gap:12px}.allergen-fields label{display:flex;align-items:center;gap:6px}.allergen-fields input{width:auto}.allergy-notice{border-left:3px solid #b58c34;padding:8px 12px;margin-top:12px;background:#fff9e9}.allergy-conflict{border-color:#af3c31;background:#fff0ed}.personal-add{display:grid;grid-template-columns:1fr 2fr 1fr auto;gap:12px;align-items:end;margin:14px 0}.personal-add input,.personal-add select{width:100%;min-width:0}.personal-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0}.personal-meals-panel{margin:20px 0}.personal-meals-panel>summary{font-weight:700;cursor:pointer}.person-summary{min-width:0;overflow-wrap:anywhere}@media(max-width:760px){.personal-add{grid-template-columns:1fr}.allergen-fields{gap:10px}.personal-row{align-items:flex-start}}
.person-picker{padding:18px 20px;border:2px solid var(--green);border-radius:7px;background:var(--white);margin:20px 0}.person-picker label{font-size:16px;font-weight:700}.person-picker select{max-width:420px;font-size:17px}.person-picker p{margin:0}.section-title .primary{white-space:normal;max-width:240px}#person-menu-title,#person-nutrition-title{overflow-wrap:anywhere}
