.planner-workspace{--pw-paper:var(--paper);--pw-ink:var(--ink);--pw-line:var(--line);--pw-lime:var(--lime);gap:24px;min-width:0;display:grid}.planner-heading{color:var(--pw-ink);padding:4px 4px 0}.planner-heading h2{letter-spacing:-.035em;margin:0 0 8px;font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.09}.planner-heading p{opacity:.75;font-size:14px}.planner-sections{border:1px solid var(--pw-line);background:var(--pw-paper);border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:6px;display:grid}.planner-sections button{min-height:48px;color:var(--pw-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-weight:650;display:flex}.planner-sections button[aria-pressed=true]{background:var(--pw-lime);color:var(--lime-ink)}.planner-sections button:focus-visible{outline-offset:2px;outline:2px solid}.planner-panel[hidden]{display:none}.planner-panel{min-width:0}.planner-diary{border-top:1px solid var(--pw-line);padding-top:20px}.planner-diary>summary{cursor:pointer;padding:10px 0;font-weight:600}.planner-diary .week-grid{margin-top:18px}.planner-workspace .meal-planner-intro{border-radius:22px}.planner-workspace .meal-planner-intro h2{font-size:28px}:root[data-theme=dark] .planner-workspace{--pw-paper:var(--paper);--pw-ink:var(--ink);--pw-line:var(--line)}@media (prefers-color-scheme:dark){:root[data-theme=system] .planner-workspace{--pw-paper:var(--paper);--pw-ink:var(--ink);--pw-line:var(--line)}}@media (max-width:560px){.planner-workspace{gap:18px}.planner-sections{gap:2px;padding:4px}.planner-sections button{gap:5px;font-size:12px}.planner-sections svg{width:17px}.planner-heading h2{font-size:26px}.planner-workspace .day-toolbar{flex-wrap:wrap}}
.shopping-plan .shopping-settings>summary{min-height:44px;padding:12px 0;font-weight:600}.shopping-settings>div{padding:12px 0 20px}.shopping-trip{border:1px solid var(--line);background:var(--paper);border-radius:20px;overflow:hidden}.shopping-trip>header{background:var(--mint);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.shopping-trip h3{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.shopping-trip>header>span{color:var(--muted);font-size:11px}.shopping-purchase{border-top:1px solid var(--line);align-items:flex-start;gap:12px;padding:18px;display:flex}.shopping-purchase>input{width:24px;height:24px;accent-color:var(--green);cursor:pointer;flex:0 0 24px;margin:0}.shopping-purchase-content{flex:1;min-width:0}.shopping-purchase-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.shopping-purchase-title>strong{overflow-wrap:anywhere;line-height:1.4}.shopping-purchase-title>b{white-space:nowrap;color:var(--ink);font-variant-numeric:tabular-nums;font-size:16px}.shopping-purchase p{margin:6px 0;font-size:12px;line-height:1.5}.shopping-purchase small{color:var(--muted);overflow-wrap:anywhere;font-size:11px;display:block}.shopping-purchase a{align-items:center;gap:4px;min-height:32px;font-size:12px;display:inline-flex}.shopping-purchase .button{margin-top:10px;font-size:11px}.shopping-purchase.is-checked{opacity:.6}.shopping-purchase.is-checked .shopping-purchase-title>strong{text-decoration:line-through}.shopping-unscheduled{border:1px dashed var(--line);border-radius:18px;padding:18px}.shopping-unscheduled h3{margin:0;font-size:16px}.shopping-unscheduled p{color:var(--muted);font-size:12px}.shopping-unscheduled ul{margin:0;padding:0;list-style:none}.shopping-unscheduled li{flex-wrap:wrap;justify-content:space-between;gap:6px;padding:8px 0;font-size:12px;display:flex}.shopping-empty{text-align:center;color:var(--muted);padding:24px}@media (max-width:380px){.shopping-purchase{gap:8px;padding:14px 10px}.shopping-purchase-title{gap:8px}.shopping-purchase-title>b{font-size:14px}.shopping-trip>header{padding:14px 10px}}.shopping-usage>summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:12px;display:list-item}.shopping-usage ul{margin:0 0 8px;padding:0;list-style:none}.shopping-usage li{border-top:1px solid var(--line);padding:8px 0;font-size:12px}.shopping-usage li small{margin-top:4px;line-height:1.5}
.recipe-card-heading{align-items:center;gap:16px;min-width:0;display:flex}.recipe-card-heading>div{flex:1;min-width:0}.recipe-card-heading h3{overflow-wrap:anywhere;margin:0}@media (max-width:380px){.recipe-card-heading{gap:12px}.recipe-card-heading h3{font-size:21px}}.planned-meal-card{padding:14px}.planned-meal-card>summary{cursor:pointer;list-style:none}.planned-meal-card>summary::-webkit-details-marker{display:none}.planned-meal-card>summary:focus-visible{outline:3px solid var(--green);outline-offset:5px;border-radius:12px}.meal-preview-label{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.planned-meal-card .recipe-card-heading h3{font-size:20px}.meal-preview-energy{color:var(--muted);margin:8px 0 0;font-size:11px}.meal-expand{color:var(--muted);flex:0 0 16px}.planned-meal-card[open] .meal-expand{transform:rotate(180deg)}.meal-expanded{border-top:1px solid var(--line);margin-top:16px;padding-top:20px}@media (max-width:380px){.planned-meal-card .recipe-card-heading h3{font-size:18px}.planned-meal-card .recipe-card-heading{gap:10px}}
.recipe-details>summary{min-height:44px;padding-block:10px;font-weight:600}.recipe-preparation{padding-top:14px}.recipe-quantities{flex-wrap:wrap;gap:6px;display:flex}.recipe-quantities button{border:1px solid var(--line);background:0 0;border-radius:12px;min-height:44px;padding:8px 12px;font-size:12px}.recipe-quantities button[aria-pressed=true]{background:var(--mint);border-color:var(--green);color:var(--ink)}.recipe-ingredients{margin:4px 0;padding:0;list-style:none}.recipe-ingredients li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;display:flex}.recipe-ingredients li span{overflow-wrap:anywhere;min-width:0}.recipe-ingredients strong{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px}.recipe-preparation h4{margin:8px 0 0}.recipe-variants{border-left:2px solid var(--line);padding-left:12px}.recipe-variants>details{padding:10px 0}.recipe-variants>details>summary{overflow-wrap:anywhere;min-height:44px}.recipe-variants>details>summary span{color:var(--muted);margin:4px 0 0 18px;font-size:13px;display:block}.planned-meal-card h3{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:400;line-height:1.2}.planned-meal-card .meal-nutrition{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin:0;font-size:12px;display:flex}.meal-nutrition strong{color:var(--ink);font-size:16px}.planned-meal-card .meal-portion{color:var(--muted);margin:0;font-size:12px}.planned-meal-day{align-items:center;gap:12px;margin:12px 0 0;display:flex}.planned-meal-day b{background:var(--mint);width:44px;height:44px;color:var(--ink);border-radius:14px;place-items:center;font-size:20px;font-weight:500;display:grid}.planned-meal-day span{text-transform:capitalize;font-size:13px;font-weight:600}
.meal-planner-wizard,.meal-planner-intro{--mp-paper:var(--paper);--mp-ink:var(--ink);--mp-muted:var(--muted);--mp-line:var(--line);--mp-lime:var(--lime);background:var(--mp-paper);color:var(--mp-ink);border:1px solid var(--mp-line);border-radius:28px;overflow:hidden}.meal-planner-wizard{isolation:isolate;width:100%;max-width:760px;margin:0 auto}.mp-header{justify-content:space-between;align-items:center;padding:18px 28px;display:flex}.mp-eyebrow{letter-spacing:.16em;color:var(--mp-muted);font-size:10px;font-weight:700}.mp-icon{border:1px solid var(--mp-line);width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.mp-progress{background:var(--mp-line);height:3px;margin:0 28px}.mp-progress>span{background:var(--mp-ink);height:100%;transition:width .25s;display:block}.mp-body{min-height:475px;padding:32px 38px 44px}.mp-step{color:var(--mp-muted);letter-spacing:.16em;font-size:11px}.mp-body h2,.meal-planner-intro h2{letter-spacing:-.04em;color:inherit;outline:none;margin:16px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,5vw,45px);font-weight:400;line-height:1.09}.mp-description{color:var(--mp-muted);max-width:480px;margin-bottom:30px;font-size:15px;line-height:1.6}.mp-small{color:var(--mp-muted);font-size:12px;line-height:1.6}.mp-footer{padding:18px 28px calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--mp-line);align-items:center;gap:14px;display:flex}.mp-primary{background:var(--mp-lime);min-height:52px;color:var(--lime-ink);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:13px 25px;font-size:14px;font-weight:700;display:inline-flex}.mp-footer .mp-primary{flex:1}.mp-secondary{border:1px solid var(--mp-line);color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:13px 24px}.meal-planner-wizard button:disabled{opacity:.48;cursor:default}.meal-planner-wizard button:focus-visible,.meal-planner-wizard input:focus-visible,.meal-planner-wizard textarea:focus-visible{outline-offset:4px;outline:3px solid #62842c}.mp-location{text-align:center}.mp-location-mark{background:var(--mint);width:90px;height:90px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.mp-location label,.mp-budget label{color:var(--mp-muted);letter-spacing:.06em;font-size:12px;display:block}.meal-planner-wizard input.mp-postal{text-align:center;letter-spacing:.09em;width:100%;max-width:260px;margin:8px auto 10px;padding:10px;font-family:Georgia,serif;font-size:43px;display:block;border:0!important;border-bottom:1px solid var(--mp-line)!important;color:inherit!important;background:0 0!important;border-radius:0!important}.mp-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mp-choice,.mp-store{border:1px solid var(--mp-line);min-height:108px;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:14px;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px;padding:20px;display:flex;position:relative}.mp-choice strong,.mp-store strong{font-size:14px}.mp-choice.is-selected,.mp-store.is-selected{border-color:var(--mp-ink);box-shadow:inset 0 0 0 1px var(--mp-ink);background:var(--mint)}.mp-check{position:absolute;top:12px;right:12px}.mp-store small{color:var(--mp-muted);font-size:12px;line-height:1.5}.mp-store-mark{color:#fff;background:#d92b29;place-items:center;width:42px;height:42px;font-size:29px;font-weight:900;display:grid}.mp-wide{grid-column:1/-1}.mp-people{text-align:center}.mp-counter{justify-content:center;align-items:center;gap:36px;display:flex}.mp-counter strong{font-family:Georgia,serif;font-size:110px;font-weight:400;line-height:1.2}.mp-diners{flex-wrap:wrap;justify-content:center;gap:10px;margin:26px 0;display:flex}.mp-diners span{background:var(--mint);color:#607847;border-radius:50%;place-items:center;width:50px;height:50px;display:grid}.mp-stack{flex-direction:column;gap:22px;display:flex}.mp-stack fieldset{border:0;min-width:0;margin:0;padding:0}.mp-stack legend,.mp-stack label{margin-bottom:12px;font-size:13px;font-weight:600}.mp-stack label input,.mp-stack label textarea{width:100%;color:inherit;border:1px solid var(--mp-line);font:inherit;background:0 0;border-radius:12px;margin-top:10px;padding:12px;display:block}.mp-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.mp-days button{border:1px solid var(--mp-line);aspect-ratio:1;min-height:38px;color:inherit;cursor:pointer;background:0 0;border-radius:50%;padding:0;font-size:12px}.mp-days button.is-selected{background:var(--mp-ink);color:var(--mp-paper);border-color:var(--mp-ink)}.mp-budget{text-align:center;padding:22px 0}.mp-budget>strong{letter-spacing:-.04em;margin:14px 0 36px;font-family:Georgia,serif;font-size:64px;font-weight:400;display:block}.mp-budget strong small{font-family:var(--font);font-size:24px}.mp-budget input{accent-color:#6c8b34;cursor:pointer;width:100%}.mp-range-label{color:var(--mp-muted);justify-content:space-between;margin:10px 0 24px;font-size:11px;display:flex}.mp-budget>p{font-size:13px}.mp-compact{flex-direction:row;justify-content:space-between;align-items:center;min-height:62px;padding:14px;font-size:13px}.mp-kitchen{width:90%;max-width:390px;margin:6px auto 12px;transform:perspective(800px)rotateY(-8deg)}.mp-shelf{color:#67724b;border-bottom:7px solid #baaa90;gap:42px;margin:0 8px 42px;padding:5px 20px;font-size:34px;display:flex}.mp-kitchen-counter{background:#e7dfce;border:2px solid #5f6555;border-radius:7px 7px 0 0;justify-content:space-around;align-items:center;padding:10px;display:flex}.mp-stove{color:#88907a;border-radius:6px;padding:4px 12px;font-size:28px;line-height:1.05}.mp-stove.on{color:#4f672c;background:#d3e5a9}.mp-sink{text-align:center;color:#7d887a;border-bottom:4px solid #86917f;width:65px;font-size:52px;line-height:.7}.mp-cabinets{background:#dbd9c7;border:2px solid #5f6555;border-top:0;grid-template-columns:1.4fr 1fr 1fr;display:grid}.mp-cabinets>div{border-right:1px solid #5f6555;height:95px;padding:8px}.mp-cabinets>div:last-child{border:0}.mp-cabinets>div.on{background:#d3e5a9}.mp-cabinets span{text-align:center;color:#5f6555;line-height:1;display:block}.mp-cabinets i{background:#a8b49a;border:2px solid #6f795f;border-radius:5px;height:47px;margin:8px 4px;display:block}.mp-review{flex-direction:column;gap:0;display:flex}.mp-review>div{border-bottom:1px solid var(--mp-line);grid-template-columns:24px 1fr auto;align-items:center;gap:14px;padding:16px 0;font-size:14px;display:grid}.mp-review svg{width:20px;color:var(--mp-muted)}.mp-review strong{text-align:right}.mp-review .mp-review-budget{grid-template-columns:1fr auto;padding:23px 0}.mp-review-budget strong{font-family:Georgia,serif;font-size:30px;font-weight:400}.mp-review>p{margin-top:20px}.mp-error{color:#863e25;background:#f3e4d9;border-radius:12px;margin-top:24px;padding:14px;font-size:13px;line-height:1.5}.mp-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:15px;display:flex}.mp-loading p{max-width:400px;color:var(--mp-muted);line-height:1.6}.mp-orbit{border:1px solid var(--mp-line);color:#617743;background:#ecf0df;border-radius:50%;place-items:center;width:150px;height:150px;display:grid;position:relative}.mp-orbit-leaf{animation:2s ease-in-out infinite mp-float;position:absolute;top:15px;right:-10px}.meal-planner-intro{justify-content:space-between;align-items:center;gap:24px;padding:34px;display:flex}.meal-planner-intro p{color:var(--mp-muted);font-size:14px;line-height:1.6}.meal-planner-intro h2{font-size:34px}.meal-planner-intro .mp-primary{flex-shrink:0}@keyframes mp-float{50%{transform:translateY(-10px)rotate(12deg)}}:root[data-theme=dark] .meal-planner-wizard,:root[data-theme=dark] .meal-planner-intro{--mp-paper:var(--paper);--mp-ink:var(--ink);--mp-muted:var(--muted);--mp-line:var(--line)}.meal-planner-wizard .mp-primary{background:var(--mp-lime);color:var(--lime-ink)}:root[data-theme=dark] .mp-choice.is-selected,:root[data-theme=dark] .mp-store.is-selected{background:#38442b}@media (max-width:560px){.mp-header{padding:14px 20px}.mp-progress{margin:0 20px}.mp-body{min-height:440px;padding:27px 22px 32px}.mp-body h2{font-size:34px}.mp-description{margin-bottom:25px;font-size:14px}.mp-footer{padding-left:20px;padding-right:20px}.mp-choice,.mp-store{min-height:104px;padding:16px}.mp-choice strong{font-size:13px}.mp-compact{min-height:65px;padding:12px}.meal-planner-intro{flex-direction:column;align-items:stretch;padding:25px}.mp-review>div{gap:9px;font-size:12px}.mp-counter{gap:24px}.mp-days{gap:4px}.mp-days button{min-height:32px}.mp-budget>strong{font-size:57px}}@media (prefers-reduced-motion:reduce){.mp-orbit-leaf{animation:none}.mp-progress>span{transition:none}.mp-kitchen{transform:none}}.meal-planner-wizard .mp-footer{text-align:left;color:var(--mp-ink);flex-direction:row;justify-content:flex-start;margin:0}@media (max-width:380px){.mp-days{grid-template-columns:repeat(4,minmax(44px,1fr))}.mp-days button{aspect-ratio:auto;border-radius:999px;min-height:44px}}@media (prefers-color-scheme:dark){:root[data-theme=system] .meal-planner-wizard,:root[data-theme=system] .meal-planner-intro{--mp-paper:var(--paper);--mp-ink:var(--ink);--mp-muted:var(--muted);--mp-line:var(--line)}:root[data-theme=system] .mp-choice.is-selected,:root[data-theme=system] .mp-store.is-selected{background:#38442b}}.mp-store-search{min-height:260px;color:var(--mp-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.mp-store-search svg{animation:2s ease-in-out infinite mp-float}@media (prefers-reduced-motion:reduce){.mp-store-search svg{animation:none}}.mp-options{grid-template-columns:repeat(2,minmax(0,1fr))}.mp-store{overflow-wrap:anywhere;min-width:0}.mp-warning{color:#5a4300;background:#fff4d6;border-radius:12px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}:root[data-theme=dark] .mp-warning{color:#ffe6a8;background:#4a3a12}@media (prefers-color-scheme:dark){:root[data-theme=system] .mp-warning{color:#ffe6a8;background:#4a3a12}}
:is(.household-panel label:has(>textarea),.household-panel label:has(>select),.household-panel label:has(>input:not([type=checkbox]))){flex-direction:column;align-items:stretch;gap:8px;font-size:13px;display:flex}.household-panel label>textarea,.household-panel label>select,.household-panel label>input:not([type=checkbox]){width:100%;min-width:0;font-size:16px}.household-panel details>.stack{padding-top:16px}.household-panel>.panel-head h2,.household-panel>h3{align-items:center;gap:9px;display:flex}.household-panel .shopping-row{min-height:48px}.household-panel .shopping-row input{flex-shrink:0}.household-panel .shopping-row span{overflow-wrap:anywhere}
