html[data-pantry-native=true]{--pantry-safe-top:env(safe-area-inset-top,0px);--pantry-safe-right:env(safe-area-inset-right,0px);--pantry-safe-bottom:env(safe-area-inset-bottom,0px);--pantry-safe-left:env(safe-area-inset-left,0px);--pantry-viewport-height:100dvh;--pantry-viewport-top:0px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--paper);-webkit-text-size-adjust:100%}html[data-pantry-native=true][data-pantry-keyboard=true]{--pantry-safe-bottom:0px}html[data-pantry-native=true][data-pantry-appearance=blue]{--pantry-status-color:#15678d}html[data-pantry-native=true][data-pantry-keyboard=true] body:before{content:"";top:var(--pantry-viewport-top);height:var(--pantry-safe-top);background:var(--pantry-status-color,var(--paper));pointer-events:none;z-index:2147483000;position:fixed;left:0;right:0}.native-keyboard-backdrop{display:none}html[data-pantry-native=true][data-pantry-keyboard=true] .native-keyboard-backdrop{top:calc(var(--pantry-viewport-top) + var(--pantry-viewport-height) + 44px);height:max(0px, calc(var(--pantry-native-viewport-height,100lvh) - var(--pantry-viewport-height) - 44px));background:var(--paper);touch-action:none;z-index:2147482999;display:block;position:fixed;left:0;right:0}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-empty,.native-keyboard-accessory{display:none}html[data-pantry-native=true][data-pantry-keyboard=true] .native-keyboard-accessory:popover-open{top:calc(var(--pantry-viewport-top) + var(--pantry-viewport-height));z-index:2147483001;width:auto;max-width:none;height:44px;padding-block:0;padding-inline:max(12px, var(--pantry-safe-left)) max(12px, var(--pantry-safe-right));background:var(--paper);box-shadow:inset 0 1px var(--line);border:0;justify-content:flex-end;margin:0;display:flex;position:fixed;bottom:auto;left:0;right:0}html[data-pantry-native=true] .native-keyboard-accessory button{min-width:72px;min-height:44px;color:var(--brand);padding:8px 12px;font-size:16px;font-weight:600}html[data-pantry-native=true] body{padding:var(--pantry-safe-top) var(--pantry-safe-right) var(--pantry-safe-bottom) var(--pantry-safe-left)}:is(html[data-pantry-native=true] body:has(.app-shell),html[data-pantry-native=true] body:has(#pantry-opening-v7),html[data-pantry-native=true] body:has([data-native-safe-page])){padding:0}html[data-pantry-native=true] input:not([type=checkbox]):not([type=radio]):not([type=range]),html[data-pantry-native=true] textarea,html[data-pantry-native=true] select{font-size:max(16px,1em)}html[data-pantry-native=true] .app-shell{--pantry-app-header-height:calc(76px + var(--pantry-safe-top));background:var(--paper);min-height:100dvh}html[data-pantry-native=true] .app-shell>.main-wrap{padding-top:var(--pantry-app-header-height)}html[data-pantry-native=true] .app-shell .topbar{z-index:125;height:var(--pantry-app-header-height);padding-top:calc(12px + var(--pantry-safe-top));padding-left:max(clamp(16px, 4vw, 48px), var(--pantry-safe-left));padding-right:max(clamp(16px, 4vw, 48px), var(--pantry-safe-right));position:fixed;top:0;left:0;right:0;transform:translateZ(0)}html[data-pantry-native=true] .app-shell .content{background:var(--paper);min-height:calc(100dvh - var(--pantry-app-header-height));padding-left:max(clamp(16px, 4vw, 48px), var(--pantry-safe-left));padding-right:max(clamp(16px, 4vw, 48px), var(--pantry-safe-right))}html[data-pantry-native=true] .kitchen-menu-options{max-height:calc(var(--pantry-viewport-height) - var(--pantry-safe-top) - 100px);overscroll-behavior:contain;overflow-y:auto}html[data-pantry-native=true] .primary-nav.mobile-nav{bottom:calc(16px + var(--pantry-safe-bottom));max-width:min(560px, calc(100% - var(--pantry-safe-left) - var(--pantry-safe-right) - 32px))}html[data-pantry-native=true] [data-native-search]{padding-top:max(14px, var(--pantry-safe-top));padding-right:max(18px, var(--pantry-safe-right));padding-bottom:max(12px, var(--pantry-safe-bottom));padding-left:max(18px, var(--pantry-safe-left));top:var(--pantry-viewport-top)!important;height:var(--pantry-viewport-height)!important}html[data-pantry-native=true] .modal-shade{top:var(--pantry-viewport-top);height:var(--pantry-viewport-height);padding-top:calc(12px + var(--pantry-safe-top));padding-right:max(12px, var(--pantry-safe-right));padding-bottom:calc(12px + var(--pantry-safe-bottom));padding-left:max(12px, var(--pantry-safe-left));bottom:auto}html[data-pantry-native=true] .modal-shade .modal{overscroll-behavior:contain;max-height:100%;margin-bottom:0;scroll-padding-block:16px}html[data-pantry-native=true] .modal-top .icon-btn{min-width:44px;min-height:44px}html[data-pantry-native=true] .modal-shade--with-nav{padding-bottom:calc(12px + var(--app-nav-clearance))}html[data-pantry-native=true][data-pantry-keyboard=true] .modal-shade--with-nav{padding-bottom:12px}html[data-pantry-native=true] [data-cooking-session]{padding-top:var(--pantry-safe-top);padding-left:var(--pantry-safe-left);padding-right:var(--pantry-safe-right);background:var(--brand)}html[data-pantry-native=true] [data-cooking-session]>[data-native-cooking-scroll]{background:var(--paper)}html[data-pantry-native=true] [data-native-cooking-overlay]{top:var(--pantry-viewport-top);height:var(--pantry-viewport-height);padding-top:calc(16px + var(--pantry-safe-top));padding-right:max(16px, var(--pantry-safe-right));padding-bottom:calc(16px + var(--app-nav-clearance,var(--pantry-safe-bottom)));padding-left:max(16px, var(--pantry-safe-left));bottom:auto}html[data-pantry-native=true] [data-native-cooking-overlay]>[role=dialog]{overscroll-behavior:contain;min-height:0;max-height:100%}html[data-pantry-native=true][data-pantry-keyboard=true] [data-native-cooking-overlay]{padding-bottom:16px}html[data-pantry-native=true] #pantry-opening-v7{padding-top:var(--pantry-safe-top);padding-left:var(--pantry-safe-left);padding-right:var(--pantry-safe-right)}html[data-pantry-native=true] #pantry-opening-v7:has(.po-global-nav[data-room=true]){background:#15678d}html[data-pantry-native=true] #pantry-opening-v7 .po-bottom{padding-bottom:max(14px, var(--pantry-safe-bottom))}html[data-pantry-native=true][data-pantry-keyboard=true] #pantry-opening-v7{height:var(--pantry-viewport-height)!important}html[data-pantry-native=true] .companion-panel{top:var(--pantry-viewport-top);height:var(--pantry-viewport-height);max-height:var(--pantry-viewport-height);bottom:auto}html[data-pantry-native=true] .companion-panel .companion-header{padding-top:calc(10px + var(--pantry-safe-top));padding-left:max(16px, var(--pantry-safe-left));padding-right:max(16px, var(--pantry-safe-right))}html[data-pantry-native=true] .companion-panel .companion-scroll,html[data-pantry-native=true] .companion-panel .parsley-composer-dock{padding-left:max(16px, var(--pantry-safe-left));padding-right:max(16px, var(--pantry-safe-right))}html[data-pantry-native=true] .parsley-composer-dock{padding-bottom:calc(12px + var(--pantry-safe-bottom))}html[data-pantry-native=true] .companion-panel textarea{font-size:16px}html[data-pantry-native=true][data-pantry-keyboard=true] .primary-nav.mobile-nav{display:none}@media (max-width:700px){html[data-pantry-native=true] .app-shell{--app-nav-clearance:calc(52px + var(--pantry-safe-bottom));--pantry-app-header-height:calc(70px + var(--pantry-safe-top))}html[data-pantry-native=true] .app-shell .topbar{padding-top:calc(10px + var(--pantry-safe-top))}html[data-pantry-native=true] .primary-nav.mobile-nav{max-width:none;padding-left:calc(16px + var(--pantry-safe-left));padding-right:calc(16px + var(--pantry-safe-right));padding-bottom:max(2px, var(--pantry-safe-bottom));bottom:0}}@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){html[data-pantry-native=true] .companion-panel{width:100%;inset-inline:0}html[data-pantry-native=true] .companion-context{display:none}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .companion-header{min-height:calc(44px + var(--pantry-safe-top));padding-block:var(--pantry-safe-top) 0}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .companion-heading strong{font-size:20px}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-role,html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-live-options{display:none}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .companion-header-actions button{width:44px;height:44px}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .companion-scroll{padding-block:0}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-composer-dock{max-height:calc(var(--pantry-viewport-height) - var(--pantry-safe-top) - 44px);padding-block:4px;overflow-y:auto}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:4px 8px;min-height:56px;padding:5px;display:grid;height:auto!important}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-composer-feedback{grid-column:1/-1;margin:0}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact .parsley-talk-button,html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact .parsley-send-button,html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-composer-middle{width:auto;min-height:44px;position:relative;inset:auto}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact .parsley-talk-button,html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact .parsley-send-button{width:44px;height:44px}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact .parsley-talk-button .parsley-portrait{width:36px;height:36px}html[data-pantry-native=true][data-pantry-keyboard=true] .parsley-panel .parsley-composer-compact textarea{max-height:44px;overflow-y:auto!important}}html[data-pantry-native=true] .app-shell .content[data-native-repaint=true]{background-image:linear-gradient(var(--paper), var(--paper))}
.pantry-feedback-dock{--feedback-bottom:24px;right:max(16px, env(safe-area-inset-right));bottom:var(--feedback-bottom);z-index:3500;width:min(420px,100vw - 32px);max-height:calc(100dvh - var(--feedback-bottom) - max(16px, env(safe-area-inset-top)));pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;overflow-y:auto}.pantry-feedback-slot{pointer-events:none;flex-direction:column;flex:none;align-items:center;gap:12px;min-width:0;display:flex}.pantry-feedback-slot>*{pointer-events:auto}.pantry-feedback-slot[data-feedback-kind=notice]{order:1}.pantry-feedback-slot[data-feedback-kind=activity]{order:2}.pantry-feedback-dock .pantry-correction-undo,.pantry-feedback-dock .kitchen-preparation-floating,.pantry-feedback-dock .kitchen-preparation-mini{max-width:100%;margin:0;position:static;inset:auto;transform:none}.pantry-feedback-dock .kitchen-preparation-floating{width:100%}.pantry-feedback-dock .kitchen-preparation-mini{margin-left:auto}.pantry-feedback-dock .pantry-correction-undo>span{overflow-wrap:anywhere;min-width:0}.pantry-feedback-dock .pantry-correction-undo button{flex:none}@media (max-width:900px){.pantry-feedback-dock{--feedback-bottom:calc(88px + env(safe-area-inset-bottom))}}
.journal-toolbar .pretty-select{flex-shrink:0;font-size:12px}.journal-toolbar .pretty-select-trigger{min-height:44px}.journal-toolbar .pretty-select-options{min-width:160px;left:auto;right:0}.journal-toolbar .pretty-select-options button{min-height:44px}.journal-grid{align-items:start}.journal-card--no-photo{border-top:3px solid var(--brand)}.journal-card--no-photo .journal-copy{padding-top:24px}.journal-card .journal-copy>p{color:var(--muted);-webkit-line-clamp:2;font-size:13px}.journal-saved-view{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;display:grid}.journal-saved-details{grid-column:1;min-width:0}.journal-saved-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.journal-saved-heading>div{min-width:0}.journal-saved-heading .eyebrow{color:var(--brand);margin-bottom:7px;font-size:11px;font-weight:700;display:block}.journal-saved-heading h3{-webkit-line-clamp:3;color:var(--ink);font:500 clamp(26px,3vw,34px)/1.12 var(--serif);overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.journal-saved-heading .journal-saved-title--long{font-size:clamp(23px,2.4vw,28px);line-height:1.16}.journal-saved-heading .journal-saved-title--very-long{font-size:clamp(20px,2.2vw,25px);line-height:1.18}.journal-saved-heading .journal-edit-button{flex-shrink:0;align-items:center;gap:6px;min-height:44px;padding:9px 13px;font-size:13px;display:inline-flex}.journal-saved-context{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;margin-top:20px;padding:12px 0;display:flex}.journal-saved-rating{align-items:center;gap:1px;min-height:40px;display:inline-flex}.journal-saved-rating button{width:39px;height:40px;color:var(--terra);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.journal-saved-rating button:hover{background:color-mix(in srgb,var(--terra) 9%,transparent)}.journal-saved-rating button[aria-pressed=false] svg{opacity:.7}.journal-saved-rating button:focus-visible,.journal-saved-more summary:focus-visible,.journal-saved-long-note summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.journal-saved-meta{flex-wrap:wrap;align-items:center;gap:10px 24px;margin:0;display:flex}.journal-saved-meta>div{align-items:baseline;gap:6px;display:flex}.journal-saved-meta dt{color:var(--muted);font-size:11px;font-weight:600}.journal-saved-meta dd{color:var(--ink);margin:0;font-size:13px;font-weight:650;line-height:1.4}.journal-saved-photo{aspect-ratio:16/9;object-fit:cover;border-radius:18px;grid-column:1;width:100%;max-height:310px;display:block}.journal-saved-content{grid-column:1;gap:20px;width:min(100%,720px);min-width:0;display:grid}.journal-saved-view--no-photo .journal-saved-content{width:min(100%,720px)}.journal-saved-estimate{border:1px solid var(--line);background:var(--white);border-radius:18px;min-width:0;padding:18px}.journal-saved-estimate-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.journal-saved-estimate-heading h4{color:var(--ink);font:500 23px/1.2 var(--font-serif),Georgia,serif;margin:0}.journal-saved-estimate-heading span{color:var(--muted);white-space:nowrap;font-size:11px}.journal-saved-nutrition{border-top:1px solid var(--line);margin-top:13px;padding-top:13px}.journal-saved-nutrition .journal-nutrition-macros{margin-bottom:0}.journal-saved-cost{border-top:1px solid var(--line);margin-top:14px}.journal-saved-nutrition+.journal-saved-cost{margin-top:16px}.journal-saved-cost .journal-price-details{width:100%;margin:0}.journal-saved-cost .journal-price-details>summary{min-height:48px}.journal-saved-cost .journal-price-summary{width:100%}.journal-saved-cost .journal-price-label{color:var(--ink);flex:1;font-size:13px;font-weight:700}.journal-saved-cost .journal-price-summary strong{color:var(--brand)}.journal-saved-story{min-width:0}.journal-saved-note h4,.journal-saved-next-time h4{color:var(--ink);margin:0 0 7px;font-size:13px;font-weight:700}.journal-saved-note p,.journal-saved-next-time p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.65}.journal-saved-long-note summary{min-height:36px;color:var(--brand);cursor:pointer;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.journal-saved-long-note summary::-webkit-details-marker{display:none}.journal-saved-more summary::-webkit-details-marker{display:none}.journal-saved-long-note .journal-note-open{display:none}.journal-saved-long-note[open] .journal-note-open{display:inline}.journal-saved-long-note[open] .journal-note-closed,.journal-saved-long-note .journal-saved-note-full,.journal-saved-long-note[open] .journal-saved-note-preview{display:none}.journal-saved-long-note[open] .journal-saved-note-full{display:block}.journal-saved-next-time{border-left:3px solid var(--brand);background:color-mix(in srgb,var(--brand) 5%,var(--white));border-radius:0 10px 10px 0;margin-top:17px;padding:13px 15px}.journal-saved-more{border-top:1px solid var(--line);margin-top:15px}.journal-saved-more summary{min-height:44px;color:var(--brand);cursor:pointer;align-items:center;font-size:12px;font-weight:700;list-style:none;display:flex}.journal-saved-more summary:after{content:"⌄";margin-left:7px;font-size:17px;line-height:1}.journal-saved-more[open] summary:after{transform:rotate(180deg)}.journal-saved-more .journal-saved-note{padding:4px 0 10px}.journal-saved-tags{flex-wrap:wrap;gap:7px;margin:5px 0 0;padding:0;list-style:none;display:flex}.journal-saved-tags li{max-width:100%;color:var(--muted);background:color-mix(in srgb,var(--line) 32%,transparent);overflow-wrap:anywhere;border-radius:20px;padding:4px 10px;font-size:11px}.journal-saved-view>.error{grid-column:1/-1;margin:0}@media (max-width:700px){.journal-saved-view{gap:17px}.journal-saved-heading h3{font-size:28px}.journal-saved-heading .journal-saved-title--long{font-size:23px}.journal-saved-heading .journal-saved-title--very-long{font-size:20px}.journal-saved-context{gap:8px;display:grid}.journal-saved-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;display:grid}.journal-saved-meta>div{gap:2px;min-width:0;display:grid}.journal-saved-photo{aspect-ratio:16/10;max-height:245px}.journal-saved-content{gap:17px}.journal-saved-estimate{padding:16px}}@media (max-width:390px){.journal-saved-context{gap:7px}.journal-saved-meta{gap:7px 12px}.journal-saved-heading{gap:10px}.journal-saved-heading h3{font-size:25px}.journal-saved-heading .journal-saved-title--long{font-size:21px}.journal-saved-heading .journal-saved-title--very-long{font-size:19px}.journal-saved-heading .journal-edit-button{padding:9px 11px}.journal-saved-photo{max-height:210px}.journal-saved-estimate{padding:14px}}@media (max-width:360px){.journal-toolbar{flex-wrap:wrap;gap:10px}.journal-toolbar .journal-search{flex-basis:100%}}
.plan-setup{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:22px 0 26px;display:grid}.plan-setup fieldset{border:0;min-width:0;margin:0;padding:0}.plan-setup legend{color:var(--ink);margin-bottom:9px;font-size:13px;font-weight:700}.plan-setup-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.plan-setup-options label{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:14px;align-items:flex-start;gap:8px;min-height:70px;padding:11px;display:flex}.plan-setup-options label:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,var(--white));box-shadow:inset 0 0 0 1px var(--brand)}.plan-setup-options input{accent-color:var(--brand);flex:none;margin:2px 0 0}.plan-setup-options strong,.plan-setup-options small{display:block}.plan-setup-options strong{color:var(--ink);font-size:12px;line-height:1.25}.plan-setup-options small{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.35}.plan-setup-action{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;display:flex}.plan-setup-action .btn{min-height:44px}.plan-setup-action small{max-width:32rem;color:var(--muted);font-size:11px;line-height:1.4}.plan-setup>.error,.plan-setup .plan-progress{grid-column:1/-1;margin:0;font-size:12px}.week-toolbar{margin:20px 0 19px}.week-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.week-grid .planned-meal{cursor:auto;min-height:0;padding:14px 15px}.week-grid .plan-preview{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:12px;padding:0;display:flex}.week-grid .plan-preview:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:8px}.week-grid .plan-preview-image{background:var(--paper);width:88px;height:88px;color:var(--brand);border-radius:13px;flex:none;place-items:center;display:grid;overflow:hidden}.week-grid .plan-preview-image .plan-photo{object-fit:cover;width:100%;height:100%;display:block}.week-grid .plan-preview-image>img:not(.plan-photo){object-fit:contain;width:100%;height:100%}.week-grid .plan-preview-copy{align-self:center;gap:5px;min-width:0;display:grid}.week-grid .plan-preview-copy strong{-webkit-line-clamp:3;font-family:var(--serif);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:18px;font-weight:400;line-height:1.16;display:-webkit-box;overflow:hidden}.week-grid .plan-preview-parts{-webkit-line-clamp:2;color:var(--muted);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.week-grid .plan-preview-link{color:var(--brand);align-items:center;gap:2px;font-size:12px;font-weight:700;display:inline-flex}.week-grid .plan-meta{margin:12px 0 8px;font-size:12px}.plan-needs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:11px 0 0;padding:11px 0}.plan-needs-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.plan-needs-top strong{color:var(--ink);font-size:11px}.plan-needs-top button{border:1px solid var(--brand);background:var(--white);min-height:34px;color:var(--brand);cursor:pointer;border-radius:10px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.plan-needs-top button:disabled{border-color:var(--line);color:var(--muted);cursor:default}.plan-needs details{margin-top:2px}.plan-needs summary{min-height:35px;color:var(--brand);cursor:pointer;align-items:center;font-size:11px;font-weight:650;display:inline-flex}.plan-needs ul{color:var(--ink);margin:0 0 4px;padding-left:17px;font-size:11px;line-height:1.6}.plan-pantry-ready{color:var(--brand);margin:10px 0 0;font-size:11px;font-weight:700}.week-grid .plan-cook-actions{gap:4px;margin-top:12px}.week-grid .plan-cook-actions .btn{min-height:42px;font-size:12px}.week-grid .plan-cook-actions .text-btn{min-height:35px;font-size:11px}.week-grid .day-actions{padding:10px 14px}.week-grid .day-actions button{min-height:34px;color:var(--brand);font-size:11px}@media (max-width:1050px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-setup{grid-template-columns:1fr}}@media (max-width:700px){.week-grid{grid-template-columns:minmax(0,1fr);gap:11px}.plan-setup{gap:12px;margin:16px 0 20px}.plan-setup-options label{min-height:64px;padding:9px}.week-nav{justify-content:space-between;width:100%}.week-nav h2{white-space:nowrap;font-size:20px}.week-nav .text-btn{margin-left:0}.week-grid .day-card{min-height:0}.week-grid .day-header{grid-row:1/3;padding:14px 8px}.week-grid .planned-meal{padding:13px 14px 9px}.week-grid .plan-preview-image{width:78px;height:78px}.week-grid .plan-preview-copy strong{font-size:17px}.week-grid .plan-meta{margin:9px 0 6px}.week-grid .day-actions{grid-column:2;padding:7px 14px}.week-grid .blank-day{min-height:125px}}@media (max-width:380px){.plan-setup-options small{font-size:9px}.plan-needs-top button{justify-content:center;width:100%}.week-grid .plan-preview{gap:9px}.week-grid .plan-preview-image{width:64px;height:64px}.week-grid .plan-preview-copy strong{font-size:16px}}.plan-setup>.field{max-width:240px;margin:0}.plan-day-preparing{align-items:center;min-height:150px;padding:14px;display:flex}.week-grid .plan-day-progress{background:var(--paper);border:0;border-radius:12px;height:92px;min-height:92px;max-height:92px}.week-grid .plan-day-progress .preparation-skillet{width:88px;height:72px;margin-left:4px}.week-grid .plan-day-progress .preparation-strip__status{text-align:left;align-items:flex-start;width:auto;min-width:0;padding:0 8px;position:static;left:auto;transform:none}.week-grid .plan-day-progress .preparation-strip__status strong{font-size:14px}.week-grid .plan-day-progress .preparation-strip__status span{font-size:12px}@media (max-width:700px){.week-grid .plan-day-preparing{min-height:125px;padding:10px}}.plan-cook-secondary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.plan-cook-secondary .plan-pantry-ready{margin:0}.plan-cook-secondary .text-btn{margin-left:auto}.plan-change-options{gap:12px;margin-top:18px;display:grid}.day-actions .plan-change-button{order:2;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin-left:auto;display:inline-flex}.week-grid .day-card{flex-direction:column;display:flex}.week-grid .day-header{border-right:0;border-bottom:1px solid var(--line);text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;padding:12px 15px}.week-grid .day-header>div{align-items:baseline;gap:10px;display:flex}.week-grid .day-header span{font-size:11px}.week-grid .day-header strong{font:600 16px var(--sans);margin:0}.week-grid .day-header small{color:var(--brand);font-size:11px}.week-grid .day-actions{flex-wrap:wrap;gap:8px 16px;margin-top:auto;display:flex}.week-grid .day-actions button{min-height:44px}.week-grid .blank-day{min-height:105px}.week-grid .night-out{padding:20px}.planner-shopping{border:1px solid var(--line);background:var(--white);border-radius:14px;margin:12px 0 18px}.planner-shopping summary{cursor:pointer;color:var(--brand);padding:14px;font-size:13px;font-weight:650}.planner-shopping-content{padding:0 14px 14px}.planner-shopping-content>.btn{min-height:44px}.planner-shopping ul{margin:12px 0 0;padding:0;list-style:none}.planner-shopping li{border-top:1px solid var(--line);align-items:center;gap:8px;padding:10px 0;display:flex}.planner-shopping li>span{flex:1;min-width:0}.planner-shopping li>img,.planner-shopping li>.pantry-ingredient-icon{object-fit:contain;flex:none;width:36px;height:36px}.planner-shopping li strong,.planner-shopping li small{overflow-wrap:anywhere;font-size:12px;display:block}.planner-shopping li small{color:var(--muted);margin-top:3px}.planner-shopping li button{flex:none;align-items:center;gap:4px;min-height:44px;display:flex}.planner-shopping li button:disabled{color:var(--muted);cursor:default}.plan-live-progress{border:1px solid var(--line);background:var(--white);border-radius:14px;grid-column:1/-1;padding:12px}.plan-live-progress .preparation-strip{height:85px;min-height:85px}.plan-live-progress p{color:var(--muted);margin:8px 0 0;font-size:12px}.plan-loading-spinner{animation:1s linear infinite plan-loading-spin}@keyframes plan-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.plan-loading-spinner{animation:none}}.plan-live-progress .preparation-strip__status{text-align:left;align-items:flex-start;width:auto;min-width:0;padding:0 12px;position:static;transform:none}.plan-live-progress .preparation-strip__status span{white-space:normal}.planner-shopping li>.pantry-ingredient-initial{flex:none;width:36px;height:36px}.planned-meal .planner-shopping summary{font-weight:400}.week-grid .plan-photo-pending{place-items:center;width:100%;height:100%;display:grid}.week-grid .plan-photo-pending .generated-image-placeholder{gap:0;padding:5px}.week-grid .plan-photo-pending .generated-image-placeholder__art{width:62px;max-width:100%}.week-grid .plan-photo-pending .generated-image-placeholder>strong{clip-path:inset(50%);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.planner-shopping-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 14px;padding:0 14px 10px;display:flex}.planner-shopping-actions .text-btn{text-align:left;align-items:center;gap:6px;min-height:44px;font-size:12px;display:inline-flex}.planner-shopping-actions>span{color:var(--muted);font-size:12px}
.journal-price-details{min-width:0;max-width:100%;margin-left:auto}.journal-price-details>summary{cursor:pointer;min-height:44px;color:var(--brand);border-radius:6px;align-items:center;list-style:none;display:flex}.journal-price-details>summary::-webkit-details-marker{display:none}.journal-price-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;font-size:13px;line-height:1.4;display:inline-flex}.journal-price-summary strong{font-weight:700}.journal-price-summary>svg{flex:none;margin-left:3px;transition:transform .18s}.journal-price-details[open]{flex-basis:100%;margin-left:0}.journal-price-details[open]>.journal-price-summary{justify-content:flex-start}.journal-price-details[open]>summary{justify-content:flex-end}.journal-price-details[open] .journal-price-summary>svg{transform:rotate(180deg)}.journal-price-body{border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:12px;margin-top:9px;padding:15px}.journal-price-intro{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.journal-price-intro h3{font-family:var(--sans);letter-spacing:0;font-size:14px;font-weight:650;line-height:1.4}.journal-price-intro>span{color:var(--muted);font-size:11px}.journal-price-provenance{color:var(--muted);margin:5px 0 13px;font-size:11px;line-height:1.55}.journal-price-dish+.journal-price-dish{margin-top:19px}.journal-price-dish-heading{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding-bottom:7px;display:grid}.journal-price-dish-heading h4{overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:650;line-height:1.45}.journal-price-dish-heading>span{white-space:nowrap;font-size:12px;font-weight:600}.journal-price-dish-heading small{font-weight:400}.journal-price-dish>ul{margin:0;padding:0;list-style:none}.journal-price-row{border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:10px 0;display:grid}.journal-price-row:last-child{border-bottom:0;padding-bottom:0}.journal-price-ingredient{overflow-wrap:anywhere;min-width:0;font-size:12px;line-height:1.45}.journal-price-ingredient>small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.journal-price-edit{min-width:64px;min-height:44px;color:var(--brand);white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:flex-end;align-items:center;gap:7px;margin:-5px -5px -5px 0;padding:5px;font-size:12px;font-weight:600;display:inline-flex}.journal-price-edit:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 7%,transparent)}.journal-price-value{white-space:nowrap;font-size:12px;font-weight:600}.journal-price-editor{border:1px solid var(--line);background:var(--paper);border-radius:9px;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;margin-top:2px;padding:11px;display:grid}.journal-price-editor>label{color:var(--muted);grid-column:1/-1;font-size:11px;font-weight:600}.journal-price-input{border:1px solid var(--line);background:var(--white);border-radius:7px;align-items:center;gap:5px;min-width:0;padding:0 10px;display:flex}.journal-price-input>span{color:var(--muted);font-size:14px}.journal-price-input>input{width:100%;min-width:0;min-height:44px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:7px 0;font-size:16px}.journal-price-input:focus-within{outline:2px solid var(--brand);outline-offset:2px}.journal-price-input>input:focus{box-shadow:none;outline:none}.journal-price-editor-actions{flex-wrap:wrap;gap:6px;display:flex}.journal-price-editor-actions>.btn{min-height:44px;padding:7px 10px;font-size:11px}.journal-price-error{color:var(--danger);grid-column:1/-1;font-size:11px;line-height:1.5}.journal-price-status{color:var(--success);margin-top:12px;font-size:11px;line-height:1.5}@media (max-width:420px){.journal-price-body{padding:12px}.journal-price-editor{grid-template-columns:minmax(0,1fr)}.journal-price-editor>label{grid-column:auto}.journal-price-editor-actions{justify-content:flex-end}.journal-price-error{grid-column:auto}.journal-price-dish-heading{gap:8px}.journal-price-dish-heading>span{font-size:11px}}@media (prefers-reduced-motion:reduce){.journal-price-summary>svg{transition:none}}
.journal-details-fields{border:0;min-width:0;margin:0;padding:0}.journal-note-error{margin:8px 0 16px}.journal-chef-input{min-width:0;margin:12px 0}.journal-entry-form .journal-editor{grid-template-columns:minmax(0,1fr);gap:12px}.journal-entry-form .journal-upload{box-sizing:border-box;min-height:120px;max-height:160px;margin:0;padding:12px;position:relative;overflow:hidden}.journal-entry-form .journal-upload img{object-fit:cover;width:100%;height:160px;display:block}.journal-entry-form .journal-upload.has-photo:after{content:"Change photo";color:var(--brand);pointer-events:none;background:#fffdf0eb;border-radius:9px;padding:5px 9px;font-size:12px;font-weight:700;position:absolute;bottom:10px;right:10px}.journal-photo-status{margin:5px 0 0}.journal-quick-facts,.journal-secondary-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.journal-quick-facts .field,.journal-secondary-facts .field{min-width:0}.journal-quick-facts input,.journal-secondary-facts input,.journal-secondary-facts select{min-width:0;max-width:100%}.journal-review-details{border-top:1px solid var(--line);margin-top:8px;padding:12px 0}.journal-review-details>summary{color:var(--brand);cursor:pointer;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;display:flex}.journal-review-details>summary span{max-width:55%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.journal-entry-form .journal-details-fields textarea{min-height:72px}.journal-chef-input .journal-chef-composer{box-sizing:border-box;border:1px solid var(--line);background:var(--white);border-radius:24px;align-items:center;min-width:0;min-height:80px;padding:16px 66px 16px 74px;display:flex;position:relative;box-shadow:0 3px 10px #78472207}.journal-chef-input .journal-chef-composer:focus-within{border-color:var(--brand)}.journal-chef-input .journal-chef-middle{flex:1;min-width:0}.journal-chef-input .journal-chef-middle textarea{box-sizing:border-box;width:100%;min-height:32px;max-height:140px;box-shadow:none;color:var(--ink);font:inherit;resize:none;background:0 0;border:0;border-radius:0;margin:0;padding:3px 0;font-size:16px;line-height:26px;display:block;overflow-y:hidden}.journal-chef-input .journal-chef-middle textarea:focus{box-shadow:none;border:0;outline:0}.journal-chef-input .journal-chef-middle textarea::placeholder{color:var(--muted);opacity:1}.journal-chef-input .journal-chef-middle textarea:placeholder-shown{text-align:center}.journal-chef-input .journal-chef-middle textarea[hidden]{display:none}.journal-chef-input .journal-chef-talk{isolation:isolate;box-sizing:border-box;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;display:grid;position:absolute;top:15px;left:11px}.journal-chef-input .journal-chef-talk .parsley-portrait{z-index:2;object-fit:cover;border-radius:50%;width:48px;height:48px;display:block;position:relative}.journal-chef-input .journal-chef-mic{z-index:3;box-sizing:border-box;border:2px solid var(--white);background:var(--brand);width:20px;height:20px;color:var(--white);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.journal-chef-input .journal-chef-submit{box-sizing:border-box;border:1px solid var(--brand);background:var(--brand);width:44px;height:44px;color:var(--white);cursor:pointer;border-radius:14px;place-items:center;padding:0;display:grid;position:absolute;top:17px;right:11px}.journal-chef-input .journal-chef-submit.is-recording{background:#c75039;border-color:#c75039}.journal-chef-input button:disabled{opacity:.45;cursor:default}.journal-chef-input button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.journal-chef-input .journal-chef-state{min-width:0}.journal-chef-input .journal-chef-status{min-height:44px;color:var(--brand);text-align:center;justify-content:center;align-items:center;gap:7px;font-size:14px;line-height:20px;display:flex}.journal-chef-input .journal-chef-status>span:first-child{overflow-wrap:anywhere;min-width:0}.journal-chef-input [data-state=listening] .journal-chef-status{gap:1px;font-size:17px;font-weight:500}.journal-chef-input .journal-chef-captions{max-height:38px;color:var(--muted);text-align:center;overflow-wrap:anywhere;margin:2px 0 0;font-size:12px;line-height:18px;overflow:auto}.journal-chef-input .journal-chef-dots{flex:0 0 18px;gap:1px;width:18px;display:flex}.journal-chef-input .journal-chef-dots i{font-style:normal}.journal-chef-input .journal-chef-dots i:nth-child(2){animation:1.5s step-end infinite journal-chef-second-dot}.journal-chef-input .journal-chef-dots i:nth-child(3){animation:1.5s step-end infinite journal-chef-third-dot}.journal-chef-input .journal-chef-lines{flex:none;align-items:center;gap:3px;width:17px;height:21px;display:flex}.journal-chef-input .journal-chef-lines i{background:currentColor;border-radius:4px;width:3px;height:12px;animation:1.1s ease-in-out infinite journal-chef-consult}.journal-chef-input .journal-chef-lines i:nth-child(2){animation-delay:.15s}.journal-chef-input .journal-chef-lines i:nth-child(3){animation-delay:.3s}.journal-chef-input .journal-chef-talk:before,.journal-chef-input .journal-chef-talk:after{content:"";opacity:0;pointer-events:none;border:1.5px solid #ca6850;border-radius:50%;position:absolute;inset:0}.journal-chef-input [data-state=listening] .journal-chef-talk:before{animation:2s ease-out infinite journal-chef-listen-halo}.journal-chef-input [data-state=listening] .journal-chef-talk:after{animation:2s ease-out 1s infinite journal-chef-listen-halo}.journal-chef-input [data-state=listening] .parsley-portrait{animation:2s ease-in-out infinite journal-chef-breathe}.journal-chef-input [data-state=listening] .journal-chef-mic{background:#c75039}.journal-chef-input .journal-chef-hint{color:var(--muted);text-align:center;margin:7px 0 0;font-size:12px;line-height:18px}.journal-note-reviewed{margin:8px 0}.journal-chef-input .journal-chef-error{color:var(--brand);overflow-wrap:anywhere;gap:5px;margin-top:9px;font-size:13px;line-height:20px;display:grid}.journal-chef-input .journal-chef-error>div{flex-wrap:wrap;gap:7px;display:flex}.journal-chef-input .journal-chef-error button{border:1px solid var(--line);background:var(--white);min-width:44px;min-height:44px;color:var(--brand);font:inherit;cursor:pointer;border-radius:12px;padding:8px 12px}@keyframes journal-chef-second-dot{0%,to{visibility:hidden}33%,99%{visibility:visible}}@keyframes journal-chef-third-dot{0%,66%,to{visibility:hidden}67%,99%{visibility:visible}}@keyframes journal-chef-consult{0%,to{transform:scaleY(.45)}50%{transform:scaleY(1)}}@keyframes journal-chef-listen-halo{0%{opacity:.65;transform:scale(1)}to{opacity:0;transform:scale(1.32)}}@keyframes journal-chef-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.journal-chef-input .journal-chef-dots i,.journal-chef-input .journal-chef-lines i,.journal-chef-input .journal-chef-talk:before,.journal-chef-input .journal-chef-talk:after,.journal-chef-input [data-state=listening] .parsley-portrait{animation:none}}@media (max-width:600px){.journal-entry-form .journal-upload,.journal-entry-form .journal-upload img{height:112px;min-height:112px}.journal-entry-form .journal-upload:not(.has-photo){flex-direction:row;justify-content:center;gap:10px}.journal-entry-form .journal-upload:not(.has-photo) svg{width:28px;height:28px}.journal-entry-form .journal-upload:not(.has-photo) span{display:none}.journal-chef-input .journal-chef-composer{align-items:center;min-height:80px;padding:16px 62px 16px 66px}.journal-chef-input .journal-chef-talk{top:15px;left:10px}.journal-chef-input .journal-chef-submit{top:17px;right:10px}.journal-chef-input .journal-chef-middle{width:100%}}.journal-entry-form .journal-editor{gap:16px}.journal-draft-rating{border:1px solid var(--line);background:var(--white);border-radius:16px;margin:10px 0 1px;padding:4px 13px}.journal-draft-rating .journal-rating-row{margin:0}.journal-draft-rating .journal-rating-row>span{color:var(--ink);font-size:14px;font-weight:700}.journal-draft-rating .rating-input button{width:40px;color:var(--terra)}.journal-draft-estimate{border:1px solid var(--line);background:var(--white);border-radius:18px;min-width:0;padding:18px}.journal-draft-estimate-heading h3{color:var(--ink);font:500 23px/1.12 var(--font-serif),Georgia,serif;margin:3px 0 13px}.journal-estimate-action{border-color:var(--brand);background:var(--brand);width:100%;min-height:48px;color:var(--white);justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:700;display:inline-flex}.journal-estimate-caption{color:var(--muted);margin:8px 0 17px;font-size:11px;line-height:1.45}.journal-nutrition-summary{border-top:1px solid var(--line);padding:14px 0 0}.journal-nutrition-calories{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.journal-nutrition-calories>span{color:var(--ink);font-size:13px;font-weight:700}.journal-nutrition-calories strong{color:var(--ink);font:500 28px/1 var(--font-serif),Georgia,serif;white-space:nowrap}.journal-nutrition-calories small{color:var(--muted);font:400 11px/1.3 var(--sans)}.journal-nutrition-macros{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0 3px;display:grid}.journal-nutrition-macros>div{gap:2px;min-width:0;display:grid}.journal-nutrition-macros span{color:var(--muted);font-size:10px}.journal-nutrition-macros strong{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:700}.journal-nutrition-basis{color:var(--muted);margin:13px 0 0;font-size:11px;line-height:1.5}.journal-nutrition-basis summary{min-height:36px;color:var(--brand);cursor:pointer;font-weight:700}.journal-nutrition-basis p{overflow-wrap:anywhere;margin:0 0 3px}.journal-draft-cost{border-top:1px solid var(--line);margin:15px 0 0}.journal-draft-cost .journal-price-details{width:100%;margin:0}.journal-draft-cost .journal-price-details>summary{min-height:52px}.journal-draft-cost .journal-price-summary{justify-content:flex-end;gap:4px;width:100%;display:flex}.journal-draft-cost .journal-price-label{color:var(--ink);flex:1;font-size:13px;font-weight:700}.journal-draft-cost .journal-price-summary strong{color:var(--brand)}.journal-nutrition-edit{min-height:44px;color:var(--brand);font:700 12px/1.3 var(--sans);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:3px 0 -6px;padding:7px 0;text-decoration:underline;display:block}.journal-nutrition-edit:focus-visible,.journal-servings-stepper button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.journal-draft-estimate .journal-estimate-controls{margin:10px 0 0;padding:13px 0 0}.journal-entry-form .journal-quick-facts{border:1px solid var(--line);background:var(--white);border-radius:18px;grid-template-columns:minmax(0,1fr);gap:10px;padding:14px;display:grid}.journal-entry-form .journal-quick-facts .field{margin:0}.journal-entry-form .journal-quick-facts .field>span{color:var(--ink)}.journal-entry-form .journal-quick-facts input[type=date]{box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;display:block}.journal-entry-form .journal-quick-facts input[type=date]::-webkit-date-and-time-value{text-align:left}.journal-servings-stepper{border:1px solid var(--line);background:var(--white);border-radius:14px;grid-template-columns:48px minmax(0,1fr) 48px;align-items:stretch;min-height:52px;display:grid;overflow:hidden}.journal-servings-stepper button{background:var(--paper);color:var(--brand);cursor:pointer;border:0;font-size:23px;font-weight:500}.journal-servings-stepper button:disabled{color:var(--muted);opacity:.5;cursor:default}.journal-entry-form .journal-servings-stepper input{box-sizing:border-box;width:100%;min-width:0;min-height:52px;box-shadow:none;text-align:center;border:0;border-radius:0;padding:8px;font-size:18px}.journal-entry-form .journal-servings-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.journal-entry-form .journal-servings-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media (max-width:390px){.journal-draft-estimate{padding:15px}.journal-nutrition-macros{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:11px}.journal-draft-rating{padding:4px 8px}.journal-draft-rating .rating-input button{width:36px}}@media (max-width:340px){.journal-draft-rating .rating-input button{width:31px}}.meal-main-image-label{background:var(--white);color:var(--ink);border-radius:14px;padding:5px 9px;font-size:12px;position:absolute;bottom:12px;left:12px}.recipe-ingredients .recipe-ingredient-actions{flex:none;align-items:center;gap:12px 8px;display:inline-flex}.recipe-ingredients .recipe-ingredient-actions>button{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;width:44px;height:44px;padding:0;display:inline-grid}.recipe-ingredients .recipe-ingredient-actions>button:hover{background:color-mix(in srgb,var(--brand) 7%,transparent)}.recipe-ingredients .recipe-ingredient-actions>button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.recipe-removal-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}
