@import url(https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap);:root{--bg:#faf7f2;--card:#fff;--card-warm:#fffdfb;--text:#2c2825;--muted:#6b6560;--line:#ede8e0;--line-strong:#ddd5c8;--accent:#e8622a;--accent-dark:#c94e1f;--accent-soft:#fde8df;--accent-glow:#ff9a6c;--input-bg:#fff;--warn-dot:#e8a317;--font-display:"Playfair Display",Georgia,"Times New Roman",serif;--font-body:"DM Sans",system-ui,-apple-system,sans-serif;--radius-card:16px;--shadow-sm:0 2px 10px #2c28250f;--shadow-md:0 8px 28px #2c282517;--shadow-lg:0 -6px 32px #2c282514}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf7f2;background:var(--bg);color:#2c2825;color:var(--text);font-family:DM Sans,system-ui,-apple-system,sans-serif;font-family:var(--font-body);margin:0}h1,h2,h3,h4{font-family:Playfair Display,Georgia,Times New Roman,serif;font-family:var(--font-display)}button,input,select{font-family:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-root{background:var(--bg);color:var(--text);margin:0 auto;max-width:430px;min-height:100vh;padding:0 0 5.75rem}.app-root,.app-root *,.app-root :after,.app-root :before{box-sizing:border-box}.app-header{align-items:flex-start;background:linear-gradient(180deg,var(--bg) 85%,#faf7f200);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;padding:1rem 1.15rem .85rem;position:-webkit-sticky;position:sticky;top:0;z-index:5}.app-header__brand{align-items:center;display:flex;flex:1 1;min-width:0}.app-header__actions{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:.35rem}.app-header__sign-out{color:var(--accent)!important;font-size:.8rem!important;font-weight:600!important;padding:.35rem .5rem!important}.app-header__sync-error{color:#b42318;font-size:.68rem;line-height:1.3;margin:0;max-width:10rem;text-align:right}.app-header__title{color:var(--text);font-family:var(--font-display);font-size:1.65rem;font-weight:600;letter-spacing:-.02em;margin:0}.app-header__tagline{color:var(--muted);font-size:.8125rem;font-weight:500;margin:.2rem 0 0}.app-root--loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.app-loading{color:var(--muted);font-size:.95rem;font-weight:500}.auth-status-wrap{margin-top:.65rem}.auth-status{font-size:.75rem;line-height:1.4;margin:0}.auth-status--muted{color:var(--muted)}.auth-status--error{color:#b42318;margin-bottom:.35rem}.auth-status--ok{color:var(--muted);gap:.5rem}.auth-status--form,.auth-status--ok{align-items:center;display:flex;flex-wrap:wrap}.auth-status--form{gap:.4rem}.auth-status__label{flex:1 1;min-width:8rem}.auth-status__input{background:var(--card);border:1px solid var(--line);border-radius:8px;font-size:.8rem;padding:.4rem .55rem;width:100%}.auth-status__btn{background:var(--accent);border:1px solid var(--accent);border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;padding:.4rem .65rem}.auth-status__btn:disabled{cursor:wait;opacity:.6}.auth-status--ok .auth-status__btn{background:#0000;color:var(--accent)}.auth-status__hint{color:var(--muted);flex:1 1 100%;font-size:.72rem;margin:.25rem 0 0}.auth-page{background:var(--bg);box-sizing:border-box;margin:0 auto;max-width:430px;min-height:100vh;padding:2rem 1.15rem 3rem}.auth-page__shell{align-items:center;display:flex;flex-direction:column}.auth-page__brand{margin-bottom:1.5rem;text-align:center}.auth-page__title{color:var(--text);font-family:var(--font-display);font-size:2.25rem;font-weight:600;margin:0}.auth-page__tagline{color:var(--muted);font-size:.9rem;margin:.35rem 0 0}.auth-page__card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-md);overflow:hidden;padding:.5rem;width:100%}.auth-page__switch{color:var(--muted);font-size:.875rem;margin:1rem 0 0;text-align:center}.auth-page__link{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:inherit;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:3px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.plated-logo{align-items:center;display:inline-flex;gap:.55rem}.plated-logo__icon{display:block;flex-shrink:0}.plated-logo__wordmark{color:var(--text);font-family:var(--font-display);font-size:1.65rem;font-weight:600;letter-spacing:-.02em;line-height:1}.waitlist-nav__brand .plated-logo__wordmark{font-size:1.5rem}.waitlist-page{background:var(--bg);color:var(--text);min-height:100vh}.waitlist-nav{background:linear-gradient(180deg,var(--bg) 88%,#faf7f200);box-sizing:border-box;margin:0 auto;max-width:430px;padding:1rem 1.15rem .85rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.waitlist-nav__brand{align-items:center;display:inline-flex;font-size:inherit;font-weight:inherit;gap:.5rem;margin:0}.waitlist-nav__wordmark{color:var(--text);font-family:var(--font-display);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;line-height:1}.waitlist-nav__tagline{color:var(--muted);font-size:.82rem;line-height:1.4;margin:.4rem 0 0}.waitlist-page__inner{box-sizing:border-box;display:flex;flex-direction:column;margin:0 auto;max-width:430px;padding:0 1.15rem 3rem}.waitlist-page__hero{margin-bottom:1.75rem}.waitlist-page__hero .waitlist-form,.waitlist-page__hero .waitlist-page__success{margin-bottom:1.1rem}.waitlist-page__headline{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:-.02em;line-height:1.22;margin:0 0 .85rem}.waitlist-page__subhead{color:var(--text);font-size:.98rem;font-weight:500;line-height:1.55;margin:0 0 .85rem}.waitlist-page__lede{color:var(--muted);font-size:.92rem;line-height:1.55;margin:0}.waitlist-section__title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:-.01em;margin:0 0 1rem}.waitlist-stats{margin-bottom:2rem}.waitlist-stats__grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:1fr;list-style:none;margin:0;padding:0}.waitlist-stats__grid--row{gap:.45rem;grid-template-columns:repeat(3,1fr);margin:0 0 1.1rem}.waitlist-stats__item{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-sm);padding:.85rem .75rem;text-align:center}.waitlist-stats__item--bar{color:var(--text);font-size:.62rem;font-weight:600;line-height:1.35;padding:.55rem .35rem}.waitlist-why{margin-bottom:2rem}.waitlist-why__list{display:flex;flex-direction:column;gap:.85rem;list-style:none;margin:0;padding:0}.waitlist-why__item{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:1rem}.waitlist-why__item-title{color:var(--accent-dark);font-size:.95rem;font-weight:700;margin:0 0 .35rem}.waitlist-why__item-body{color:var(--muted);font-size:.88rem;line-height:1.5;margin:0}.waitlist-testimonials{margin-bottom:2rem}.waitlist-testimonials__list{display:flex;flex-direction:column;gap:.85rem;list-style:none;margin:0;padding:0}.waitlist-testimonials__card{background:var(--card-warm);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);margin:0;padding:1rem 1rem .9rem}.waitlist-testimonials__quote{margin:0}.waitlist-testimonials__quote p{color:var(--text);font-size:.9rem;font-style:italic;line-height:1.55;margin:0}.waitlist-testimonials__meta{display:flex;flex-direction:column;gap:.15rem;margin-top:.75rem}.waitlist-testimonials__name{color:var(--text);font-size:.85rem;font-style:normal;font-weight:700}.waitlist-testimonials__detail{color:var(--muted);font-size:.75rem}.waitlist-cta{margin-bottom:1rem}.waitlist-cta__title{text-align:center}.waitlist-cta__lede{color:var(--muted);font-size:.88rem;margin:-.5rem 0 1rem;text-align:center}.waitlist-form{display:flex;flex-direction:column;gap:.75rem}.waitlist-form__input{background:var(--input-bg);border:1px solid var(--line-strong);border-radius:12px;box-sizing:border-box;color:var(--text);font-family:inherit;font-size:1rem;padding:.85rem 1rem;width:100%}.waitlist-form__input:focus{border-color:var(--accent);outline:2px solid var(--accent-soft)}.waitlist-form__input:disabled{opacity:.65}.waitlist-form__submit{font-size:1rem;padding:.9rem 1rem}.waitlist-form__error{color:#b42318;font-size:.85rem;margin:0;text-align:center}.waitlist-page__success{background:var(--accent-soft);border:1px solid var(--line);border-radius:var(--radius-card);color:var(--text);font-size:1rem;line-height:1.5;margin:0;padding:1.15rem 1rem;text-align:center}.waitlist-page__footer{margin-top:2.5rem;text-align:center}.waitlist-page__footer p{color:var(--muted);font-size:.8rem;margin:0}.app-main{padding:0 1rem 1rem}.page-title{font-size:1.75rem;letter-spacing:-.02em;margin:0 0 .5rem}.page-title,.section-heading{color:var(--text);font-family:var(--font-display);font-weight:600}.section-heading{font-size:1.15rem;margin:0}.screen-lead{color:var(--muted);font-size:.9rem;font-weight:400;line-height:1.5;margin:0 0 1rem}.home-screen{padding-bottom:.25rem}.home-greeting{color:var(--muted);font-size:.875rem;font-weight:500;letter-spacing:.02em;margin:0 0 .25rem}.home-title{color:var(--text);font-family:var(--font-display);font-size:1.5rem;font-weight:600;line-height:1.2;margin:0 0 1rem}.tonight-hero{background:linear-gradient(145deg,#e8622a,#f07845 42%,#d45420);border:none;border-radius:var(--radius-card);box-shadow:0 14px 36px #e8622a61;color:#fff;cursor:pointer;display:block;font-family:inherit;margin-bottom:1.25rem;padding:1.35rem 1.25rem 1.25rem;text-align:left;transition:transform .15s ease,box-shadow .15s ease;width:100%}.tonight-hero:active{transform:scale(.99)}.tonight-hero--empty{background:linear-gradient(145deg,#e8622a,#ec7a4a 50%,#c94e1f);opacity:.95}.tonight-hero__eyebrow{display:block;font-size:.72rem;font-weight:600;letter-spacing:.12em;margin-bottom:.5rem;opacity:.92;text-transform:uppercase}.tonight-hero__name{display:block;font-family:var(--font-display);font-size:1.45rem;font-weight:600;line-height:1.25;margin-bottom:.35rem}.tonight-hero__meta{display:block;font-size:.875rem;line-height:1.4;margin-bottom:.75rem;opacity:.92}.tonight-hero__cta{display:inline-block;font-size:.8125rem;font-weight:700;letter-spacing:.03em}.stat-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:.85rem .5rem;text-align:center}.stat-card__value{color:var(--accent);display:block;font-family:var(--font-display);font-size:1.35rem;font-weight:600;line-height:1.2}.stat-card__label{color:var(--muted);display:block;font-size:.65rem;font-weight:600;letter-spacing:.06em;line-height:1.25;margin-top:.35rem;text-transform:uppercase}.home-family-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:1rem 1rem 1.1rem}.home-family-head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.home-family-lead{color:var(--muted);font-size:.82rem;line-height:1.45;margin:0 0 .85rem}.text-link{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:3px}.family-strip{display:flex;gap:.65rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.family-strip__item{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex:0 0 auto;flex-direction:column;font-family:inherit;gap:.35rem;min-width:4.5rem;padding:.25rem .35rem}.family-strip__name{color:var(--text);font-size:.72rem;font-weight:600;max-width:4.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-avatar{align-items:center;background:linear-gradient(180deg,#fff 0,var(--card-warm) 100%);border:2px solid var(--line);border-radius:50%;box-shadow:var(--shadow-sm);display:inline-flex;height:3.25rem;justify-content:center;position:relative;width:3.25rem}.family-avatar--lg{height:3.5rem;width:3.5rem}.family-avatar__face{font-size:1.5rem;line-height:1}.family-avatar--lg .family-avatar__face{font-size:1.65rem}.family-avatar__dot{background:var(--warn-dot);border:2px solid var(--card);border-radius:50%;box-shadow:0 1px 3px #0000001f;height:11px;position:absolute;right:0;top:0;width:11px}.meals-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:1fr 1fr}.meal-tile{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;justify-content:flex-end;min-height:5.5rem;padding:1rem .85rem;position:relative;text-align:left;transition:border-color .15s ease,box-shadow .15s ease}.meal-tile:active{transform:scale(.99)}.meal-tile__name{color:var(--text);font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.25;margin-bottom:.35rem}.meal-tile__meta{color:var(--muted);font-size:.72rem;font-weight:500}.week-flow-header{margin-bottom:0}.week-flow-steps{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.74rem;font-weight:600;gap:.25rem .35rem;margin:0 0 1rem}.week-flow-steps span:not(.week-flow-steps__sep){background:var(--accent-soft);border-radius:999px;color:var(--text);font-weight:600;padding:.15rem .45rem}.week-flow-steps__sep{color:var(--muted);opacity:.55}.week-flow-banner{background:#e9f5ff;border:1px solid #c6def3;border-radius:.65rem;color:#223d55;font-size:.82rem;line-height:1.4;margin:-.25rem 0 1rem;padding:.62rem .72rem}.week-setup-section{margin-bottom:1.35rem}.week-setup-section__title{color:var(--text);font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin:0 0 .5rem}.week-setup-section__lead{color:var(--muted);font-size:.84rem;line-height:1.45;margin:0 0 .65rem}.week-setup-section--cuisines .cuisine-cards{margin-bottom:.35rem}.pantry-quick{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.65rem}.pantry-quick__chip{background:var(--card);border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;font-family:inherit;font-size:.78rem;padding:.38rem .62rem;transition:background .12s ease,border-color .12s ease,color .12s ease}.pantry-quick__chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark);font-weight:600}.pantry-form--setup{margin-bottom:.5rem}.week-generate-cta{font-size:1rem;font-weight:700;margin:.25rem 0 1.25rem;padding-bottom:.85rem;padding-top:.85rem}.week-edit-setup{font-size:.82rem;margin-top:.35rem;padding-left:0;padding-right:0}.week-planner--results .plan-summary{margin-bottom:1rem}.day-list--weekdays{margin-bottom:1.25rem}.collapsible-details{background:var(--card);border:1px solid var(--line);border-radius:.55rem;margin-top:.5rem;overflow:hidden}.collapsible-details__summary{align-items:center;color:var(--text);cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.4rem;list-style:none;padding:.48rem .65rem;-webkit-user-select:none;user-select:none}.collapsible-details__summary::-webkit-details-marker{display:none}.collapsible-details__icon{color:var(--muted);flex-shrink:0;font-size:.9rem;line-height:1;text-align:center;transition:transform .28s ease,color .2s ease;width:.95rem}.collapsible-details__icon:before{content:"+";display:block}.collapsible-details[open] .collapsible-details__icon{color:var(--accent);transform:rotate(0deg)}.collapsible-details[open] .collapsible-details__icon:before{content:"▼";font-size:.62rem}.collapsible-details__animate{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.collapsible-details[open] .collapsible-details__animate{grid-template-rows:1fr}.collapsible-details__animate-inner{min-height:0;overflow:hidden}.collapsible-details__body{border-top:1px solid #0000;opacity:.92;padding:.65rem .7rem .75rem;transition:border-color .28s ease,opacity .22s ease}.collapsible-details[open] .collapsible-details__body{border-top-color:var(--line);opacity:1}@media (prefers-reduced-motion:reduce){.collapsible-details__animate,.collapsible-details__body,.collapsible-details__icon{transition:none}}.family-plates.collapsible-details{margin-top:.65rem}.family-plates__note{color:var(--muted);font-size:.72rem;line-height:1.4;margin:0 0 .55rem}.family-plates__title{color:var(--text);font-family:var(--font-display);font-size:.88rem;font-weight:700;margin:.65rem 0 .55rem}.family-plates__list{display:flex;flex-direction:column;gap:.65rem;list-style:none;margin:0;padding:0}.family-plate-row{background:var(--accent-soft);border:1px solid var(--line);border-radius:.5rem;padding:.55rem .6rem}.family-plate-row__head{align-items:center;display:flex;gap:.45rem;margin-bottom:.35rem}.family-plate-row__avatar{font-size:1.15rem;line-height:1}.family-plate-row__name{color:var(--text);font-size:.88rem;font-weight:700}.family-plate-row__standard{color:#2d5a34;font-size:.78rem;font-weight:600}.family-plate-row__standard--solo{margin:0}.family-plate-row__dishes{display:flex;flex-direction:column;gap:.4rem}.family-plate-row__dish{font-size:.76rem;line-height:1.4}.family-plate-row__dish-label{color:var(--muted);display:block;font-size:.65rem;font-weight:700;letter-spacing:.05em;margin-bottom:.15rem;text-transform:uppercase}.family-plate-row__changes{color:var(--text);margin:0;padding-left:1rem}.family-plate-row__changes li{margin-bottom:.2rem}.day-card__gerd-badge{background:#e4f4e6;border:1px solid #b8dcc0;border-radius:999px;color:#2a6b38;font-size:.62rem;font-weight:700;letter-spacing:.04em;margin-left:auto;padding:.2rem .45rem;text-transform:uppercase;white-space:nowrap}.gerd-profile{border-top:1px dashed var(--line);margin-top:.75rem;padding-top:.75rem}.gerd-profile__label{color:var(--muted);display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-bottom:.25rem;text-transform:uppercase}.gerd-profile__hint{color:var(--muted);font-size:.74rem;line-height:1.4;margin:0 0 .5rem}.gerd-profile__modes{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.gerd-profile__triggers-label{color:var(--muted);display:block;font-size:.68rem;font-weight:600;margin-bottom:.35rem}.chip-grid--gerd{margin-top:0}.chip--sm{font-size:.7rem;padding:.28rem .5rem}.day-card__new-meal{margin-top:.55rem}.day-card__swap-note{color:var(--muted);font-size:.76rem;line-height:1.35;margin:.35rem 0 0}.week-approve{border-top:1px solid var(--line);margin-top:.5rem;padding-top:1.1rem}.week-approve__title{font-family:var(--font-display);font-size:1.15rem;font-weight:600;margin:0 0 .35rem}.week-approve__lead{color:var(--muted);font-size:.84rem;line-height:1.45;margin:0 0 .85rem}.week-approve__list{margin-bottom:1rem}.week-approve__heb{margin-top:.25rem}.grocery-screen__heb{margin-top:.5rem}.cuisine-cards{border:none;margin:0 0 1.05rem;padding:0}.cuisine-cards__legend{font-family:var(--font-display);font-size:1.18rem;font-weight:600;margin-bottom:.2rem;padding:0}.cuisine-cards__hint{color:var(--muted);font-size:.82rem;line-height:1.45;margin:0 0 .72rem}.cuisine-cards__cta-hint{color:var(--accent);font-size:.79rem;font-weight:600;margin:-.45rem 0 .82rem;text-align:center}.cuisine-cards__grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.cuisine-cards__card{border:2px solid #0000;border-radius:1rem;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:.18rem;min-height:5.55rem;overflow:hidden;padding:.72rem .62rem;position:relative;text-align:left;transition:transform .14s ease,box-shadow .15s ease,border-color .15s ease}.cuisine-cards__card:before{background:linear-gradient(160deg,#fffdfb,#fdeee2);background:linear-gradient(var(--cardGrad,160deg,#fffdfb,#fdeee2));border-radius:inherit;content:"";inset:0;position:absolute;z-index:0}.cuisine-cards__card>*{position:relative;z-index:1}.cuisine-cards__card:hover{transform:translateY(-2px)}.cuisine-cards__card:active{transform:scale(.98)}.cuisine-cards__card--selected{border-color:var(--accent);box-shadow:0 0 0 3px #e8622a33}.cuisine-cards__card--surprise:before{background:linear-gradient(var(--cardGrad))}.cuisine-cards__card--surprise .cuisine-cards__emoji,.cuisine-cards__card--surprise .cuisine-cards__name{color:#fdf6ef}.cuisine-cards__card--surprise .cuisine-cards__blurb{color:#fdf6efe0}.cuisine-cards__emoji{font-size:1.5rem;line-height:1}.cuisine-cards__name{color:var(--text);font-family:var(--font-display);font-size:.92rem;font-weight:700}.cuisine-cards__blurb{color:var(--muted);font-size:.69rem;font-weight:600;line-height:1.3}.planner-panel--soft{background:linear-gradient(180deg,#fffdfb 0,var(--card) 100%)}.planner-generate--hero{font-weight:700;margin-top:.45rem}.planner-generate-hint{margin-top:.55rem!important}.week-auto-gen-note{background:var(--accent-soft);border:1px solid var(--line);border-radius:.65rem;color:var(--text);font-size:.82rem;font-weight:600;line-height:1.35;margin:-.25rem 0 1rem;padding:.55rem .72rem}.planner-secondary-row{display:flex;flex-direction:column;gap:.45rem;margin-top:.5rem}.day-card__badge{background:var(--accent-soft);border-radius:999px;color:var(--accent);font-size:.62rem;font-weight:700;letter-spacing:.04em;margin-left:auto;padding:.12rem .4rem;text-transform:uppercase}.day-card__subs{background:#f4f7fb;border:1px solid #e2e8ef;border-radius:.5rem;font-size:.76rem;line-height:1.35;margin:.45rem 0 0;padding:.45rem .55rem}.day-card__subs--empty{background:var(--card-warm);border-color:var(--line);color:var(--muted)}.day-card__subs-title{color:var(--muted);display:block;font-size:.68rem;font-weight:700;letter-spacing:.04em;margin-bottom:.25rem;text-transform:uppercase}.day-card__subs-list{color:var(--text);margin:0;padding-left:1rem}.day-card__actions{margin-top:.45rem}.day-card__swap-btn{font-size:.85rem;padding:.45rem .65rem;width:100%}.day-swap-panel{background:var(--card-warm);border:1px solid var(--line);border-radius:.55rem;margin-top:.55rem;padding:.55rem .6rem}.day-swap-panel__hint{color:var(--muted);font-size:.72rem;font-weight:600;margin:0 0 .4rem}.day-swap-panel__chips{display:flex;flex-wrap:wrap;gap:.35rem}.day-swap-chip{background:var(--card);border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:600;padding:.28rem .55rem}.day-swap-chip:hover{border-color:var(--accent);color:var(--accent)}.day-swap-panel__select-wrap{display:block;margin-top:.55rem}.meal-picker--compact{margin-top:.45rem}.meal-picker--alone{display:flex;flex-direction:column;gap:.35rem}.day-card__empty--inline{margin:0;padding:0}.plan-review-banner{margin:0 0 1rem}.plan-review-banner__inner{align-items:flex-start;background:linear-gradient(150deg,#fff8f0,#ffe7d4);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);display:flex;gap:.72rem;padding:1rem}.plan-review-banner__emoji{flex-shrink:0;font-size:1.8rem;line-height:1}.plan-review-banner__title{font-family:var(--font-display);font-size:1.08rem;margin:0 0 .32rem}.plan-review-banner__text{color:var(--text);font-size:.83rem;line-height:1.45;margin:0 0 .72rem}.week-secondary-actions{border-top:1px dashed var(--line);margin-top:1.45rem;padding-top:1rem}.week-secondary-actions__label{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.05em;margin:0 0 .38rem;text-transform:uppercase}.week-secondary-actions__btn{border:1px solid var(--line)!important;color:var(--muted)!important;font-weight:600!important}.meal-sheet-overlay{align-items:flex-end;background:#16120e7a;display:flex;inset:0;justify-content:center;position:fixed;z-index:220}.meal-sheet{background:var(--card);border-radius:1.1rem 1.1rem 0 0;box-shadow:0 -10px 40px #0000001f;max-height:90vh;max-width:430px;overflow-y:auto;padding:1rem 1rem 1.65rem;width:100%}.meal-sheet__head{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.meal-sheet__title{font-family:var(--font-display);font-size:1.18rem;margin:0}.meal-sheet__lead{color:var(--muted);font-size:.83rem;line-height:1.45;margin:.45rem 0 .75rem}.meal-sheet__or{color:var(--muted);font-size:.74rem;font-weight:600;margin:.6rem 0 .32rem;text-align:center}.meals-actions-row{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.meals-actions-row .page-title{margin-bottom:0}.meals-actions-row__scratch{border-radius:999px;flex-shrink:0;font-size:1.45rem;height:2.75rem;line-height:1;padding:0;width:2.75rem}.meals-secondary-link{border:1px dashed var(--line)!important;color:var(--muted)!important;font-size:.86rem!important;margin-bottom:1rem}.recipe-import--minimal{background:#0000;border:none;margin:0;padding:0}.meal-library{margin-bottom:1.25rem}.meal-library__head{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.meal-library__head .page-title{margin:0}.meal-library__title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;margin:0}.meal-library__add{border-radius:999px;flex-shrink:0;font-size:1.35rem;height:2.5rem;line-height:1;padding:0;width:2.5rem}.cuisine-filter{margin-bottom:.85rem}.cuisine-filter__label{color:var(--muted);display:block;font-size:.72rem;font-weight:600;letter-spacing:.06em;margin-bottom:.4rem;text-transform:uppercase}.cuisine-filter__chips{display:flex;flex-wrap:wrap;gap:.35rem}.cuisine-chip{background:var(--card);border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:600;padding:.35rem .6rem}.cuisine-chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.cuisine-filter__hint{color:var(--muted);font-size:.75rem;line-height:1.35;margin:.45rem 0 0}.meal-library__list{display:flex;flex-direction:column;gap:.4rem;list-style:none;margin:.75rem 0 0;max-height:11rem;overflow-y:auto;padding:0}.meal-library__item{background:var(--card);border:1px solid var(--line);border-radius:.55rem;cursor:pointer;font-family:inherit;padding:.55rem .7rem;text-align:left;width:100%}.meal-library__name{color:var(--text);display:block;font-size:.9rem;font-weight:600}.meal-library__meta{color:var(--muted);display:block;font-size:.72rem;margin-top:.15rem}.meal-library__empty{color:var(--muted);font-size:.82rem;line-height:1.4;margin:.5rem 0 0}.meal-library__toast{background:var(--accent-soft);border:1px solid var(--line);border-radius:.5rem;color:var(--text);font-size:.82rem;margin:-.5rem 0 1rem;padding:.55rem .7rem}.archived-meals-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:.75rem 0 0;padding:0}.archived-meal-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:.85rem .9rem}.archived-meal-card__main{align-items:flex-start;display:flex;gap:.65rem;margin-bottom:.7rem}.archived-meal-card__emoji{flex-shrink:0;font-size:1.75rem;line-height:1}.archived-meal-card__name{background:none;border:none;color:var(--text);cursor:pointer;display:block;font-family:var(--font-display);font-size:1rem;font-weight:700;padding:0;text-align:left}.archived-meal-card__name:disabled{cursor:default;opacity:.85}.archived-meal-card__date{color:var(--muted);font-size:.78rem;margin:.2rem 0 0}.archived-meal-card__side{color:var(--accent-dark);font-size:.76rem;font-weight:600;margin:.35rem 0 0}.archived-meal-card__actions{display:flex;flex-direction:column;gap:.35rem}.archived-meal-card__add{margin-bottom:0}.archived-meal-card__remove{font-size:.8rem;padding:.35rem .5rem}.meal-tile__emoji{display:block;font-size:1.35rem;line-height:1;margin-bottom:.25rem}.recipe-import{background:var(--card-warm);border:1px dashed var(--line);border-radius:var(--radius-card);margin-bottom:.85rem;padding:.75rem}.recipe-import__title{font-family:var(--font-display);font-size:.95rem;font-weight:600;margin:0 0 .35rem}.recipe-import__lead{color:var(--muted);font-size:.78rem;line-height:1.4;margin:0 0 .65rem}.recipe-import__form{display:flex;gap:.4rem}.recipe-import__input{background:var(--input-bg);border:1px solid var(--line);border-radius:.5rem;flex:1 1;font-family:inherit;font-size:.85rem;min-width:0;padding:.5rem .6rem}.recipe-import__btn{flex-shrink:0}.recipe-import__status{font-size:.78rem;line-height:1.35;margin:.5rem 0 0}.recipe-import__status--ok{color:#2d4a28}.recipe-import__status--err{color:#8b3a20}.meal-modal-overlay{align-items:flex-end;background:#1e181273;display:flex;inset:0;justify-content:center;padding:0;position:fixed;z-index:200}.meal-modal{background:var(--card);border-radius:1rem 1rem 0 0;box-shadow:0 -8px 32px #0000001f;max-height:92vh;max-width:430px;overflow-y:auto;padding:1rem 1rem 1.5rem;width:100%}.meal-modal__head{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.35rem}.meal-modal__title{font-family:var(--font-display);font-size:1.2rem;margin:0}.meal-modal__lead{color:var(--muted);font-size:.85rem;line-height:1.45;margin:0 0 1rem}.meal-field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.meal-field-row{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.meal-field__label{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.meal-field__input{background:var(--input-bg);border:1px solid var(--line);border-radius:.5rem;font-family:inherit;font-size:.9rem;padding:.5rem .6rem}.meal-ingredients{border:none;margin:0 0 .75rem;padding:0}.meal-ingredient-row{grid-gap:.35rem;align-items:center;display:grid;gap:.35rem;grid-template-columns:1fr 3.5rem 3.5rem auto;margin-bottom:.4rem}.meal-ingredients__add{font-size:.85rem;padding-left:0}.meal-modal__error{color:#8b3a20;font-size:.82rem;margin:0 0 .65rem}.meal-field__textarea{line-height:1.45;min-height:6.5rem;resize:vertical}.meal-field__textarea--primary{min-height:8rem}.meal-field--primary .meal-field__label{color:var(--text);font-size:.88rem;font-weight:700}.recipe-import-modal__examples{margin:-.25rem 0 .85rem}.recipe-import-modal__examples-label{color:var(--muted);display:block;font-size:.72rem;font-weight:600;margin-bottom:.4rem}.recipe-import-modal__example-chips{display:flex;flex-direction:column;gap:.35rem}.recipe-import-modal__example-chip{background:var(--bg);border:1px dashed var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-family:inherit;font-size:.8rem;line-height:1.35;padding:.5rem .65rem;text-align:left;transition:border-color .15s ease,background .15s ease}.recipe-import-modal__example-chip:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.recipe-import-modal__example-chip:disabled{cursor:not-allowed;opacity:.6}.recipe-import-modal__preview-link{font-size:.78rem;margin:.35rem 0 0}.recipe-import-modal__preview-link a{color:var(--accent)}.meals-import-btn{align-items:center;display:inline-flex;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:1rem}.meals-import-btn__icon{flex-shrink:0;opacity:.85}.meal-tile-wrap{display:flex;flex-direction:column;gap:.35rem;position:relative}.meal-tile-wrap .meal-tile__share{align-items:center;background:var(--card);border:none;border-radius:999px;box-shadow:var(--shadow-sm);color:var(--muted);cursor:pointer;display:flex;height:2rem;justify-content:center;left:.5rem;padding:0;position:absolute;top:.5rem;transition:color .15s ease,background .15s ease;width:2rem;z-index:2}.meal-tile__share:hover{background:var(--accent-soft);color:var(--accent)}.meal-tile__share svg{height:1rem;width:1rem}.meal-tile__badge{background:var(--accent-soft);border-radius:999px;color:var(--accent);font-size:.62rem;font-weight:700;letter-spacing:.04em;padding:.2rem .45rem;position:absolute;right:.65rem;text-transform:uppercase;top:.65rem}.meal-tile__add-week{font-size:.78rem!important;padding:.35rem .5rem!important;text-align:center}.recipe-import-modal__social-note{background:#fff8e8;border:1px solid #f0e0b8;border-radius:var(--radius-sm);color:#6b5420;font-size:.82rem;line-height:1.45;margin:0 0 .85rem;padding:.65rem .75rem}.recipe-import-modal__preview{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:.75rem;padding:.75rem .85rem}.recipe-import-modal__preview-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin:0}.recipe-import-modal__preview-meta{color:var(--muted);font-size:.78rem;margin:.25rem 0 0}.import-cuisine-picker{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.85rem}.recipe-import-modal__actions{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-top:.25rem}.recipe-sheet__badge{background:var(--accent-soft);border-radius:999px;color:var(--accent);display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.04em;margin-left:.35rem;padding:.15rem .4rem;text-transform:uppercase;vertical-align:middle}.recipe-sheet__actions{padding:0 1rem .85rem}.grocery-screen__head,.week-flow-header--with-share .week-flow-header__top{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.grocery-screen__head .page-title,.week-flow-header--with-share .week-flow-header__top .page-title{flex:1 1;margin:0}.share-control{flex-shrink:0;position:relative}.share-control__btn{align-items:center;background:var(--card);border:1px solid var(--line);color:var(--text);cursor:pointer;display:inline-flex;font-family:inherit;gap:.35rem;transition:border-color .15s ease,background .15s ease}.share-control__btn--header{border-radius:999px;font-size:.78rem;font-weight:600;padding:.4rem .65rem}.share-control__btn--icon{border-radius:999px;height:2rem;justify-content:center;padding:0;width:2rem}.share-control__btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.share-control__icon{flex-shrink:0;height:1rem;width:1rem}.share-control__status{color:var(--accent);font-size:.68rem;font-weight:600;margin-top:.25rem;pointer-events:none;position:absolute;right:0;top:100%;white-space:nowrap}.share-sheet-overlay{align-items:flex-end;background:#1a161273;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:200}.share-sheet{background:var(--card);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-lg);max-width:24rem;padding:1rem 1rem 1.25rem;width:100%}@media (min-width:480px){.share-sheet-overlay{align-items:center}.share-sheet{border-radius:var(--radius-card)}}.share-sheet__title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin:0 0 .75rem}.share-sheet__action{align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;display:flex;font-family:inherit;gap:.65rem;margin-bottom:.5rem;padding:.75rem;text-align:left;transition:border-color .15s ease,background .15s ease;width:100%}.share-sheet__action:hover{background:var(--accent-soft);border-color:var(--accent)}.share-sheet__action-icon{color:var(--accent);flex-shrink:0;margin-top:.1rem}.share-sheet__action-text{display:flex;flex-direction:column;gap:.2rem}.share-sheet__action-text strong{color:var(--text);font-size:.9rem}.share-sheet__action-hint{color:var(--muted);font-size:.75rem;font-weight:500;line-height:1.35}.share-sheet__status{color:var(--accent);font-size:.8rem;font-weight:600;margin:0 0 .5rem;text-align:center}.share-sheet__cancel{margin-top:.25rem}.recipe-sheet__source{color:var(--accent);display:inline-block;font-size:.8rem;margin-top:.35rem}.week-planner>.page-title{margin-bottom:.85rem}.family-screen>.page-title,.grocery-screen>.page-title,.meals-screen>.page-title{margin-bottom:.35rem}.planner-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:1rem 1rem 1.1rem}.planner-panel__title{color:var(--text);font-family:var(--font-display);font-size:1.1rem;font-weight:600;margin:0 0 .35rem}.planner-panel__lead{color:var(--muted);font-size:.85rem;line-height:1.45;margin:0 0 1rem}.budget-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.35rem}.budget-field__label{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.budget-field__input{background:var(--input-bg);border:1px solid var(--line);border-radius:.5rem;color:var(--text);font-family:inherit;font-size:1rem;padding:.55rem .65rem;width:100%}.field-hint{color:var(--muted);font-size:.75rem;line-height:1.35;margin:0 0 .85rem}.pantry-form{margin-bottom:.5rem}.pantry-form__label{color:var(--muted);display:block;font-size:.72rem;font-weight:600;letter-spacing:.06em;margin-bottom:.35rem;text-transform:uppercase}.pantry-form__row{display:flex;gap:.45rem}.pantry-form__input{background:var(--input-bg);border:1px solid var(--line);border-radius:.5rem;color:var(--text);flex:1 1;font-family:inherit;font-size:.9rem;min-width:0;padding:.5rem .6rem}.pantry-form__add{flex-shrink:0;padding-left:1rem;padding-right:1rem}.pantry-chips{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0 0 .75rem;padding:0}.pantry-chip{align-items:center;background:var(--accent-soft);border:1px solid var(--line);border-radius:999px;color:var(--text);display:inline-flex;font-size:.78rem;gap:.25rem;padding:.25rem .4rem .25rem .55rem}.pantry-chip__x{background:#0000;border:none;color:var(--muted);cursor:pointer;font-family:inherit;font-size:1.1rem;line-height:1;padding:0 .15rem}.planner-generate{margin-bottom:.75rem}.plan-summary{border:1px solid var(--line);border-radius:.65rem;font-size:.82rem;line-height:1.45;padding:.65rem .75rem}.plan-summary--ok{background:#e8f2e4;border-color:#c5d9bc;color:#2d4a28}.plan-summary--warn{background:#fdf3e4;border-color:#edd4b0;color:#5c3d1e}.plan-summary__line{margin:0 0 .35rem}.plan-summary__line:last-of-type{margin-bottom:.25rem}.plan-summary__note{font-size:.78rem;margin:.35rem 0 0;opacity:.95}.screen-lead--tight{margin-top:0}.day-card__empty{color:var(--muted);font-size:.82rem;line-height:1.4;margin:0;padding:.35rem 0}.day-list{display:flex;flex-direction:column;gap:.75rem}.day-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);overflow:hidden}.day-card__head{align-items:center;background:linear-gradient(180deg,#fffdfb 0,var(--card-warm) 100%);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.35rem;padding:.65rem 1rem}.day-card__dow{color:var(--accent-dark);font-size:.85rem;font-weight:700}.day-card__full{color:var(--muted);font-size:.8rem}.day-card__body{gap:.65rem;padding:.85rem 1rem 1rem}.day-card__body,.meal-picker{display:flex;flex-direction:column}.meal-picker{gap:.25rem}.meal-picker__label{color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.meal-picker__select{background:var(--input-bg);border:1px solid var(--line);border-radius:.5rem;font-size:.95rem;padding:.55rem .65rem;width:100%}.meal-picker__select,.recipe-preview{color:var(--text);font-family:inherit}.recipe-preview{background:var(--accent-soft);border:none;border-radius:.75rem;cursor:pointer;padding:.75rem .85rem;text-align:left;transition:background .15s ease,transform .15s ease}.recipe-preview:active{transform:scale(.99)}.recipe-preview__name{display:block;font-size:.95rem;font-weight:600;margin-bottom:.25rem}.recipe-preview__meta{color:var(--muted);font-size:.78rem}.meal-side-panel.collapsible-details{background:var(--accent-soft);border-color:var(--line);margin-top:.35rem}.meal-side-panel .collapsible-details__summary{color:var(--accent-dark)}.meal-side-panel__summary-text{font-weight:700}.meal-side-panel .collapsible-details__body{background:var(--accent-soft);display:flex;flex-direction:column;gap:.55rem}.side-mode-toggle{grid-gap:.35rem;background:var(--card);border:1px solid var(--line);border-radius:.55rem;display:grid;gap:.35rem;grid-template-columns:1fr 1fr;padding:.2rem}.side-mode-toggle__btn{background:#0000;border:none;border-radius:.45rem;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:600;padding:.42rem .35rem}.side-mode-toggle__btn--active{background:var(--accent);color:#fff}.meal-side-panel__swaps{font-size:.74rem;line-height:1.4;list-style:none;margin:0 0 .55rem;padding:0}.meal-side-panel__swaps li{display:flex;flex-wrap:wrap;gap:.2rem .35rem;margin-bottom:.25rem}.meal-side-panel__swap-from{color:var(--muted);text-decoration:line-through}.meal-side-panel__swap-to{color:var(--text);font-weight:600}.meal-side-panel__steps{color:var(--text);font-size:.8rem;line-height:1.45;margin:0;padding-left:1.15rem}.meal-side-panel__steps>li{margin-bottom:.45rem}.side-family-plates{border-top:1px dashed var(--line);margin-top:.15rem;padding-top:.55rem}.side-family-plates__label{color:var(--muted);display:block;font-size:.68rem;font-weight:700;letter-spacing:.05em;margin-bottom:.4rem;text-transform:uppercase}.side-family-plates__list{display:flex;flex-direction:column;gap:.45rem;list-style:none;margin:0;padding:0}.side-family-plates__row{background:var(--card);border:1px solid var(--line);border-radius:.45rem;padding:.45rem .5rem}.side-family-plates__head{align-items:center;display:flex;gap:.35rem;margin-bottom:.2rem}.side-family-plates__avatar{font-size:1rem;line-height:1}.side-family-plates__name{font-size:.8rem;font-weight:700}.side-family-plates__standard{color:#2d5a34;font-size:.74rem;font-weight:600}.side-family-plates__changes{font-size:.74rem;line-height:1.4;margin:0;padding-left:1rem}.side-family-plates__changes li{margin-bottom:.15rem}.meal-side-panel__step-notes{color:var(--muted);font-size:.72rem;list-style:none;margin:.35rem 0 0;padding:0}.meal-side-panel__step-notes li{margin-bottom:.2rem}.meal-side-panel__subs-summary{color:var(--muted);font-size:.72rem;font-weight:600;margin:.5rem 0 0}.week-approve-cta{font-weight:700;margin:1.25rem 0 .75rem;padding-bottom:.85rem;padding-top:.85rem}.grocery-estimate{align-items:baseline;background:var(--accent-soft);border:1px solid var(--line);border-radius:var(--radius-card);display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-bottom:1.1rem;padding:.75rem .85rem}.grocery-estimate__label{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;width:100%}.grocery-estimate__amount{color:var(--text);font-family:var(--font-display);font-size:1.65rem;font-weight:700}.grocery-estimate__note{color:var(--muted);font-size:.72rem}.grocery-section{margin-bottom:1.15rem}.grocery-section__title{color:var(--text);font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:.04em;margin:0 0 .5rem;text-transform:uppercase}.grocery-row__price{color:var(--muted);flex-shrink:0;font-size:.78rem;font-weight:600;margin-left:auto}.grocery-screen__heb{margin-top:1.25rem}.grocery-screen__back{margin-top:.5rem}.grocery-screen--locked .screen-lead{margin-bottom:1.25rem}.btn{border:1px solid #0000;border-radius:.65rem;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.55rem 1rem;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:active{background:var(--accent-dark)}.btn-heb{background:#c41230;border-color:#a30f28;box-sizing:border-box;color:#fff!important;display:block;font-weight:700;margin-bottom:.35rem;text-align:center;text-decoration:none}.btn-heb:active{background:#9e0f26}.btn-block{margin-bottom:1rem;width:100%}.btn-ghost{background:#0000;border-color:#0000;color:var(--muted)}.btn-icon{font-size:1.25rem;line-height:1;padding:.35rem .55rem}.family-list{display:flex;flex-direction:column;gap:.85rem;list-style:none;margin:0;padding:0}.family-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:.85rem 1rem}.family-card__row{grid-gap:.65rem;align-items:center;display:grid;gap:.65rem;grid-template-columns:auto 1fr auto;margin-bottom:.65rem}.family-card__avatar-col{flex-shrink:0}.family-card__fields{display:flex;flex-direction:column;gap:.4rem;min-width:0}.family-card__meta-row{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:1fr 4.5rem}.family-card__age{background:var(--input-bg);border:1px solid var(--line);border-radius:.45rem;color:var(--text);font-family:inherit;font-size:.9rem;padding:.45rem .5rem;width:100%}.family-card__name-row{align-items:center;display:flex;gap:.4rem}.family-card__name-row .family-card__name{flex:1 1;min-width:0}.family-card__save{flex-shrink:0;font-size:.8rem;padding:.4rem .65rem}.family-card__name,.family-card__role{background:var(--input-bg);border:1px solid var(--line);border-radius:.45rem;color:var(--text);font-family:inherit;font-size:.9rem;padding:.45rem .5rem;width:100%}.chip-grid{display:flex;flex-wrap:wrap;gap:.4rem}.chip{background:var(--input-bg);border:1px solid var(--line);border-radius:999px;color:var(--muted);cursor:pointer;font-family:inherit;font-size:.72rem;padding:.35rem .55rem}.chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark);font-weight:600}.grocery-list{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);list-style:none;margin:0;overflow:hidden;padding:0}.grocery-row{border-bottom:1px solid var(--line)}.grocery-row:last-child{border-bottom:none}.grocery-row__label{align-items:flex-start;box-sizing:border-box;cursor:pointer;display:flex;gap:.65rem;padding:.85rem 1rem;width:100%}.grocery-row__check{accent-color:var(--accent);margin-top:.2rem}.grocery-row__text{display:flex;flex-direction:column;gap:.15rem}.grocery-row__name{font-size:.95rem;font-weight:600}.grocery-row__qty{color:var(--muted);font-size:.8rem}.grocery-row__check:checked+.grocery-row__text{opacity:.45;text-decoration:line-through}.grocery-pantry-note{background:var(--accent-soft);border:1px solid var(--line);border-radius:.5rem;color:var(--muted);font-size:.82rem;line-height:1.4;margin:0 0 .75rem;padding:.5rem .65rem}.grocery-heb-hint{color:var(--muted);font-size:.75rem;line-height:1.35;margin:0 0 1rem}.empty-hint{color:var(--muted);font-size:.9rem;padding:2rem 1rem;text-align:center}.recipe-overlay{align-items:flex-end;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#2c282566;display:flex;inset:0;justify-content:center;padding:0;position:fixed;z-index:20}.recipe-sheet{animation:sheet-up .25s ease-out;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-lg);max-height:92vh;max-width:430px;overflow:auto;width:100%}@keyframes sheet-up{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.recipe-sheet__head{background:var(--card-warm);border-bottom:1px solid var(--line);padding:.75rem 1rem 1rem;position:-webkit-sticky;position:sticky;top:0}.recipe-sheet__close{float:right;font-size:.85rem}.recipe-sheet__title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.25;margin:0 3.5rem 0 0}.recipe-sheet__sub{color:var(--muted);font-size:.8rem;margin:.35rem 0 0}.recipe-section{padding:1rem 1rem 0}.recipe-section:last-of-type{padding-bottom:1.5rem}.recipe-section__title{color:var(--muted);font-size:.75rem;letter-spacing:.08em;margin:0 0 .5rem;text-transform:uppercase}.ingredient-list{font-size:.9rem;line-height:1.5;margin:0;padding-left:1.1rem}.ingredient-qty{color:var(--muted);font-weight:400}.step-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.step-card{align-items:flex-start;display:flex;gap:.65rem}.step-card__num{align-items:center;background:var(--accent);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:1.65rem;justify-content:center;width:1.65rem}.step-card__body{flex:1 1;min-width:0}.step-card__text{font-size:.92rem;line-height:1.45;margin:0}.step-inline-notes{display:flex;flex-direction:column;gap:.35rem;list-style:none;margin:.5rem 0 0;padding:0}.step-inline-notes__item{background:#c46a4a1a;border-radius:8px;color:var(--accent-dark);font-size:.82rem;line-height:1.4;padding:.35rem .55rem}.recipe-meta{display:flex;gap:1rem;margin:.65rem 0 0;padding:0}.recipe-meta__item{margin:0}.recipe-meta__item dt{color:var(--muted);font-size:.65rem;font-weight:600;letter-spacing:.06em;margin:0;text-transform:uppercase}.recipe-meta__item dd{color:var(--text);font-size:.9rem;font-weight:600;margin:.15rem 0 0}.recipe-chefs-tip{background:#c46a4a14;border-left:3px solid var(--accent);border-radius:0 8px 8px 0;color:var(--text);font-size:.85rem;line-height:1.45;margin:.75rem 0 0;padding:.65rem .75rem}.recipe-chefs-tip strong{color:var(--accent-dark)}.recipe-engine-hint{color:var(--muted);font-size:.8rem;line-height:1.4;margin:0 0 .85rem}.recipe-engine-hint__note{color:var(--accent-dark);font-weight:600}.adaptation-box{background:var(--accent-soft);border:1px solid var(--line-strong);border-radius:.65rem;font-size:.8rem;line-height:1.45;margin-top:.55rem;padding:.6rem .65rem .65rem}.adaptation-box__title{color:var(--accent-dark);display:block;font-size:.65rem;font-weight:700;letter-spacing:.07em;margin-bottom:.5rem;text-transform:uppercase}.adapt-person{border-top:1px solid var(--line);padding-top:.45rem}.adapt-person:first-of-type{border-top:none;padding-top:0}.adapt-person__name{color:var(--text);font-size:.82rem;font-weight:700;margin-bottom:.35rem}.adapt-person__list{list-style:none;margin:0;padding:0}.adapt-person__item{align-items:flex-start;display:flex;flex-direction:column;gap:.2rem;margin-bottom:.45rem}.adapt-person__item:last-child{margin-bottom:0}.adapt-person__tag{background:var(--card);border:1px solid var(--line);border-radius:999px;color:var(--accent-dark);display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.05em;padding:.12rem .45rem;text-transform:uppercase}.adapt-person__msg{color:var(--text)}.sub-box{background:var(--accent-soft);border:1px solid var(--line-strong);border-radius:.6rem;font-size:.82rem;line-height:1.4;margin-top:.5rem;padding:.55rem .65rem}.sub-box__title{color:var(--accent-dark);display:block;font-size:.65rem;font-weight:700;letter-spacing:.06em;margin-bottom:.35rem;text-transform:uppercase}.sub-box ul{margin:0;padding-left:1rem}.sub-box li{margin-bottom:.35rem}.sub-box li:last-child{margin-bottom:0}.sub-box__who{color:var(--accent-dark);display:block;font-size:.78rem;font-weight:600}.bottom-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-top:1px solid var(--line);bottom:0;box-shadow:var(--shadow-lg);display:flex;gap:.15rem;justify-content:space-between;left:50%;max-width:430px;padding:.35rem .4rem calc(.45rem + env(safe-area-inset-bottom));position:fixed;transform:translateX(-50%);width:100%;z-index:10}.bottom-nav__btn{align-items:center;background:#0000;border:none;border-radius:12px;color:var(--muted);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:inherit;font-size:.625rem;font-weight:600;gap:.2rem;letter-spacing:.02em;min-width:0;padding:.35rem .15rem}.bottom-nav__icon{color:currentColor;opacity:.85}.bottom-nav__btn--active{background:var(--accent-soft);color:var(--accent)}.bottom-nav__btn--active .bottom-nav__icon{color:var(--accent);opacity:1}.bottom-nav__label{display:block;line-height:1.15;text-align:center}
/*# sourceMappingURL=main.a5f12347.css.map*/