@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}.__variable_f367f3{--font-inter:"__Inter_f367f3","__Inter_Fallback_f367f3"}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Manrope_73ee6c;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Manrope_Fallback_73ee6c;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:__Manrope_73ee6c,__Manrope_Fallback_73ee6c;font-style:normal}.__variable_73ee6c{--font-manrope:"__Manrope_73ee6c","__Manrope_Fallback_73ee6c"}:root{--font-inter:system-ui,sans-serif;--font-manrope:system-ui,sans-serif;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-24:24px;--space-32:32px;--space-40:40px;--background:#faf9f8;--surface:#faf9f8;--surface-container:#eeeeed;--surface-container-low:#f4f3f2;--surface-container-high:#e9e8e7;--surface-container-lowest:#fff;--surface-dim:#dadad9;--on-surface:#1a1c1c;--on-surface-variant:#55423e;--muted:#55423e;--primary:#9a442d;--primary-container:#e07a5f;--on-primary:#fff;--on-primary-fixed-variant:#7c2e19;--primary-fixed:#ffdbd2;--secondary:#5a5c79;--secondary-container:#dcddff;--tertiary:#006b5b;--tertiary-container:#19a992;--on-tertiary-container:#00362d;--outline-variant:#dbc1ba;--outline:#88726d;--error:#ba1a1a;--error-muted:#c62828;--bg:var(--background);--text:var(--on-surface);--text-body:var(--on-surface-variant);--border:color-mix(in srgb,var(--outline-variant) 35%,transparent);--accent:var(--primary);--accent-hover:var(--primary-container);--accent-active:var(--on-primary-fixed-variant);--surface-elevated:var(--surface-container-lowest);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-card:20px;--radius-btn:12px;--radius-full:9999px;--kitchen-glow:0 12px 32px rgba(26,28,28,.06);--kitchen-glow-lg:0 16px 48px rgba(26,28,28,.08);--shadow-soft:var(--kitchen-glow);--shadow-hover:var(--kitchen-glow-lg);--shadow-card:var(--kitchen-glow);--shadow-card-hover:var(--kitchen-glow-lg);--font-title:1.75rem;--font-title-weight:800;--font-section:1.05rem;--font-section-weight:600;--font-body:0.95rem;--primary-gradient:linear-gradient(135deg,#9a442d,#e07a5f)}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font-family:var(--font-inter),system-ui,sans-serif;background:var(--background);color:var(--on-surface);font-size:var(--font-body);line-height:1.55;min-height:100vh;-webkit-font-smoothing:antialiased}.font-headline{font-family:var(--font-manrope),system-ui,sans-serif}a{color:var(--primary);text-decoration:none;font-weight:600}a:hover{color:var(--on-primary-fixed-variant)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 var(--space-24);border:none;border-radius:var(--radius-lg);background:var(--primary-gradient);color:var(--on-primary)!important;font-size:1rem;font-weight:700;font-family:var(--font-manrope),system-ui,sans-serif;cursor:pointer;box-shadow:var(--kitchen-glow);transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.btn-primary:hover:not(:disabled){opacity:.96;box-shadow:var(--kitchen-glow-lg)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.input-editorial{width:100%;min-height:52px;padding:0 var(--space-24);border:none;border-radius:var(--radius-lg);background:var(--surface-container-high);color:var(--on-surface);font-size:1rem;font-family:inherit;outline:none;box-shadow:0 0 0 1px transparent;transition:background .2s ease,box-shadow .2s ease}.input-editorial::placeholder{color:color-mix(in srgb,var(--on-surface-variant) 55%,transparent)}.input-editorial:focus{background:var(--surface-container-lowest);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}textarea.input-editorial{min-height:120px;padding:var(--space-16) var(--space-24);resize:vertical}.surface-outline{box-shadow:0 0 0 1px color-mix(in srgb,var(--outline-variant) 18%,transparent)}button{border-radius:var(--radius-btn);transition:opacity .2s ease,background-color .2s ease,transform .15s ease,box-shadow .2s ease}button:hover:not(:disabled){opacity:.94}button:active:not(:disabled){opacity:.9}button:disabled{opacity:.55;cursor:not-allowed}.hoverLift{transition:transform .2s ease,box-shadow .2s ease}.hoverLift:hover{transform:translateY(-3px);box-shadow:var(--kitchen-glow-lg)}.headerNavLink{font-family:var(--font-manrope),system-ui,sans-serif;font-weight:700;letter-spacing:-.02em;color:var(--on-surface-variant);transition:color .2s ease}.headerNavLink:hover{color:var(--primary)}.recipeCardPlaceholder:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(154,68,45,.08) 0,transparent 55%);pointer-events:none}.app-container{max-width:1120px;margin:0 auto;padding:var(--space-32) var(--space-24);padding-bottom:calc(var(--space-32) + 72px)}.app-container>*{min-width:0}.app-container--fab{padding-bottom:calc(var(--space-32) + 100px)}.app-wide{width:100%;padding:var(--space-32) var(--space-24) calc(var(--space-32) + 72px)}@media (max-width:639px){.app-container,.app-wide,.shop-page--wide{padding-left:1rem;padding-right:1rem}.app-container{padding-top:1.25rem;padding-bottom:calc(1.5rem + 72px)}}.libraryGrid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;grid-gap:2rem;gap:2rem}@media (min-width:560px){.libraryGrid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.libraryGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}.recipe-card-stitch{list-style:none}.recipe-card-stitch__link{text-decoration:none;color:inherit;display:block}.recipe-card-stitch__media{position:relative;aspect-ratio:4/5;border-radius:2rem;overflow:hidden;background:var(--surface-container);margin-bottom:1rem}.recipe-card-stitch__img{width:100%;height:100%;transition:transform .45s ease}.recipe-card-stitch__img--bg{position:absolute;inset:0;object-fit:cover;filter:blur(18px);transform:scale(1.12);opacity:.4}.recipe-card-stitch__img-frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:.9rem;background:linear-gradient(0deg,hsla(0,0%,100%,.16),transparent 45%),linear-gradient(180deg,hsla(0,0%,100%,.08),transparent 35%)}.recipe-card-stitch__img--full{position:relative;object-fit:contain;filter:drop-shadow(0 14px 24px rgba(26,28,28,.18))}.recipe-card-stitch:hover .recipe-card-stitch__img--full,.recipe-card-stitch__link:hover .recipe-card-stitch__img--full{transform:scale(1.03)}.recipe-card-stitch__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--primary-fixed) 0,var(--surface-container-high) 45%,var(--surface-container) 100%);position:relative}.recipe-card-stitch__placeholder-text{font-size:.95rem;font-weight:700;color:var(--primary);letter-spacing:-.02em}.recipe-card-stitch__fav{top:1rem;right:1rem;width:2.5rem;height:2.5rem;background:hsla(0,0%,100%,.82);display:flex;align-items:center;justify-content:center;color:var(--on-surface);box-shadow:var(--kitchen-glow);pointer-events:none}.recipe-card-stitch__badge,.recipe-card-stitch__fav{position:absolute;border-radius:9999px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.recipe-card-stitch__badge{bottom:1rem;left:1rem;padding:.35rem .65rem;font-size:.625rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.recipe-card-stitch__tag-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.7rem}.recipe-card-stitch__tag-mini{display:inline-flex;align-items:center;padding:.25rem .55rem;border-radius:9999px;background:var(--surface-container-low);color:var(--on-surface-variant);font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.recipe-card-stitch__meta{display:flex;justify-content:space-between;align-items:flex-start;padding:0 .25rem}.recipe-card-stitch__title{font-size:1.05rem;font-weight:700;margin:0 0 .2rem;line-height:1.25;letter-spacing:-.02em;color:var(--on-surface);transition:color .2s ease;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-stitch__link:hover .recipe-card-stitch__title{color:var(--primary)}.recipe-card-stitch__sub{margin:0;font-size:.875rem;color:var(--on-surface-variant);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.library-chip-row{display:flex;gap:.65rem;overflow-x:auto;padding-bottom:.35rem;margin-bottom:2.25rem;scrollbar-width:none;-ms-overflow-style:none}.library-chip-row::-webkit-scrollbar{display:none}.library-chip{flex-shrink:0;border:1px solid color-mix(in srgb,var(--outline-variant) 35%,transparent);cursor:pointer;padding:.55rem 1.35rem;border-radius:9999px;font-size:.875rem;font-weight:600;font-family:var(--font-manrope),system-ui,sans-serif;transition:transform .12s ease,box-shadow .2s ease,background .2s ease}.library-chip:active{transform:scale(.97)}.library-chip--active{background:var(--primary);color:var(--on-primary);box-shadow:0 8px 24px rgba(154,68,45,.22);border-color:color-mix(in srgb,var(--primary) 45%,transparent)}.library-chip--idle{background:var(--surface-container-low);color:var(--on-surface-variant)}.library-chip--idle:hover{background:var(--surface-container-high)}.library-filter-bar,.planner-filter-bar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.library-filter-reset,.planner-filter-reset{border:none;background:transparent;color:var(--on-surface-variant);font-size:.8rem;font-weight:800;cursor:pointer;padding:.35rem 0}.library-filter-reset:hover,.planner-filter-reset:hover{color:var(--primary)}.tag-filter-popover{position:relative}.tag-filter-popover__trigger{display:inline-flex;align-items:center;gap:.55rem;border:1px solid color-mix(in srgb,var(--outline-variant) 35%,transparent);background:var(--surface-container-lowest);color:var(--on-surface);border-radius:9999px;padding:.6rem .95rem;font-size:.85rem;font-weight:800;cursor:pointer;box-shadow:var(--kitchen-glow)}.tag-filter-popover__trigger.is-open{border-color:color-mix(in srgb,var(--primary) 35%,transparent)}.tag-filter-popover__panel{position:absolute;top:calc(100% + .5rem);left:0;z-index:30;width:min(22rem,calc(100vw - 2rem));max-height:min(70dvh,30rem);overflow-y:auto;padding:.9rem;border-radius:1rem;background:var(--surface-container-lowest);border:1px solid color-mix(in srgb,var(--outline-variant) 20%,transparent);box-shadow:var(--kitchen-glow-lg)}.tag-filter-popover__group+.tag-filter-popover__group{margin-top:.9rem;padding-top:.9rem;border-top:1px solid color-mix(in srgb,var(--outline-variant) 14%,transparent)}.tag-filter-popover__group-title{margin:0 0 .55rem;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-variant)}.tag-filter-popover__group-options{display:flex;flex-wrap:wrap;gap:.5rem}.tag-filter-popover__option{border:none;border-radius:9999px;background:var(--surface-container-low);color:var(--on-surface-variant);padding:.45rem .8rem;font-size:.8rem;font-weight:700;cursor:pointer}.tag-filter-popover__option.is-active{background:var(--primary);color:var(--on-primary)}.recipe-tag-picker{display:flex;flex-direction:column;gap:1rem}.recipe-tag-picker--compact{max-height:19rem;overflow-y:auto;padding-right:.25rem}.import-review-grid{display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:960px){.import-review-grid{grid-template-columns:minmax(260px,320px) minmax(0,1.25fr);align-items:start}}.import-review-card{position:-webkit-sticky;position:sticky;top:1.25rem}.import-review-panel{display:flex;flex-direction:column;gap:1.25rem}.import-review-section{background:var(--surface-container-low);border-radius:1.25rem;padding:1.1rem;box-shadow:var(--kitchen-glow);border:1px solid color-mix(in srgb,var(--outline-variant) 18%,transparent)}.import-review-section__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.import-review-add{border:none;background:transparent;color:var(--primary);font-size:.8rem;font-weight:800;cursor:pointer}.import-review-ingredients{display:flex;flex-direction:column;gap:.65rem}.import-review-ingredient-row{display:grid;grid-template-columns:120px minmax(0,1fr) 42px;grid-gap:.55rem;gap:.55rem;align-items:center}@media (max-width:639px){.import-review-ingredient-row{grid-template-columns:90px minmax(0,1fr) 42px}}@media (min-width:1200px){.import-review-ingredient-row{grid-template-columns:140px minmax(0,1fr) 42px}}.import-review-remove{width:42px;height:42px;border:none;border-radius:.85rem;background:var(--surface-container-high);color:var(--on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.import-review-remove:hover{background:var(--surface-container)}.import-review-secondary{border:none;background:transparent;color:var(--on-surface-variant);font-size:.9rem;font-weight:800;cursor:pointer;padding:.75rem 1rem}.import-review-secondary:hover{color:var(--primary)}.recipe-tag-group{display:flex;flex-direction:column;gap:.6rem}.recipe-tag-group__title{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-variant)}.recipe-tag-group__chips{display:flex;flex-wrap:wrap;gap:.55rem}.library-page-title{font-size:clamp(1.85rem,4vw,2.35rem);font-weight:800;letter-spacing:-.035em;margin:0 0 .35rem;color:var(--on-surface)}.library-search-wrap{position:relative;max-width:20rem;margin-bottom:1.5rem}@media (max-width:639px){.library-search-wrap{max-width:100%}}.library-search-wrap svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1.15rem;height:1.15rem;color:var(--on-surface-variant);pointer-events:none}.library-search-input{width:100%;padding:.65rem 1rem .65rem 2.65rem;border:none;border-radius:var(--radius-lg);background:var(--surface-container-high);font-size:.875rem;color:var(--on-surface);outline:none;transition:background .2s ease,box-shadow .2s ease}.library-search-input:focus{background:var(--surface-container-lowest);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}.library-search-input::placeholder{color:color-mix(in srgb,var(--on-surface-variant) 55%,transparent)}.library-fab{position:fixed;bottom:1.75rem;right:1.75rem;z-index:35;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.5rem;padding:0 1.25rem;border-radius:9999px;background:var(--primary);color:#fff!important;font-weight:700;font-family:var(--font-manrope),system-ui,sans-serif;text-decoration:none;box-shadow:0 12px 32px rgba(154,68,45,.35);transition:transform .15s ease,box-shadow .2s ease}.library-fab:hover{transform:scale(1.02);box-shadow:0 14px 36px rgba(154,68,45,.4)}@media (min-width:768px){.library-fab span.library-fab__text{display:inline}}.library-fab__text{display:none}@media (min-width:768px){.library-fab__text{display:inline}}.planner-layout{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:1fr;align-items:start}@media (min-width:960px){.planner-layout{grid-template-columns:300px 1fr}}.planner-sidebar{position:-webkit-sticky;position:sticky;top:5.5rem;display:flex;flex-direction:column;gap:1.25rem}.planner-sidebar-tray{display:flex;flex-direction:column;gap:1rem;max-height:calc(100vh - 14rem);overflow-y:auto;padding-right:.25rem;scrollbar-width:thin}.planner-recipe-pill{border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-container-lowest);box-shadow:var(--kitchen-glow);cursor:-webkit-grab;cursor:grab;transition:transform .25s ease,box-shadow .25s ease}.planner-recipe-pill:hover{transform:scale(1.02);box-shadow:var(--kitchen-glow-lg)}.planner-recipe-pill:active{cursor:-webkit-grabbing;cursor:grabbing}.planner-recipe-pill__img{height:8rem;width:100%;overflow:hidden}.planner-recipe-pill__img img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.planner-recipe-pill:hover .planner-recipe-pill__img img{transform:scale(1.08)}.planner-recipe-pill__body{padding:1rem}.planner-week-grid{display:grid;grid-template-columns:120px repeat(3,1fr);grid-template-rows:auto repeat(7,minmax(88px,auto));width:100%;grid-gap:.65rem;gap:.65rem}@media (max-width:959px){.planner-week-grid{grid-template-columns:100px repeat(3,minmax(0,1fr));gap:.5rem}}.planner-week-cell{background:var(--surface-container-lowest);border-radius:var(--radius-lg);padding:var(--space-12);box-shadow:var(--kitchen-glow);min-height:0}.planner-week-cell--head{font-size:.72rem;text-transform:capitalize;color:var(--on-surface-variant);display:flex;align-items:center;justify-content:center;text-align:center}.planner-week-cell--day,.planner-week-cell--head{font-weight:700;font-family:var(--font-manrope),system-ui,sans-serif}.planner-week-cell--day{font-size:.85rem}.planner-slot{min-height:88px;transition:background .15s ease,box-shadow .15s ease}.planner-slot--active{background:var(--surface-container-low);box-shadow:0 0 0 2px var(--primary)}.planned-meal-card{display:flex;align-items:center;gap:.5rem;width:100%;padding:.35rem .15rem;border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background .15s ease}.planned-meal-card:hover{background:color-mix(in srgb,var(--primary) 8%,transparent)}.planned-meal-card__thumb{width:2.25rem;height:2.25rem;border-radius:.5rem;object-fit:cover;flex-shrink:0}.planned-meal-card__title{font-size:.8rem;font-weight:600;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.recipe-detail-back{font-size:.9rem;font-weight:700;color:var(--on-surface-variant);text-decoration:none}.recipe-detail-back:hover{color:var(--primary)}.recipe-hero{position:relative;width:100%;aspect-ratio:16/9;border-radius:2rem;overflow:hidden;background:var(--surface-container);margin-bottom:2.5rem}@media (min-width:768px){.recipe-hero{aspect-ratio:21/9}}.recipe-hero__img{width:100%;height:100%;object-fit:cover}.recipe-hero__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--primary-fixed) 0,var(--surface-container-high) 50%,var(--surface-container) 100%)}.recipe-hero__scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55) 0,rgba(0,0,0,.15) 45%,transparent);pointer-events:none}.recipe-hero__content{position:absolute;left:1.75rem;right:1.75rem;bottom:1.75rem;z-index:1}.recipe-hero__pill{display:inline-block;padding:.35rem .85rem;border-radius:9999px;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recipe-hero__title{margin:0;font-size:clamp(1.75rem,4vw,3rem);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.35)}.recipe-ingredients-block{background:var(--surface-container-lowest);border-radius:2rem;padding:clamp(1.5rem,3vw,2.25rem);box-shadow:var(--kitchen-glow)}.editor-grid{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:1fr}@media (min-width:1024px){.editor-grid{grid-template-columns:1fr minmax(280px,320px);align-items:start}}.editor-title-input{width:100%;border:none;background:transparent;font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:800;letter-spacing:-.02em;color:var(--on-surface);outline:none;padding:.25rem 0}.editor-title-input::placeholder{color:var(--surface-container-highest)}.upload-zone-inner{width:100%;border:2px dashed color-mix(in srgb,var(--outline-variant) 45%,transparent);border-radius:1.25rem;background:transparent;padding:1.5rem 1rem;cursor:pointer;text-align:center;transition:border-color .2s ease,transform .15s ease;font:inherit;color:inherit}.upload-zone-inner:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 35%,transparent)}.upload-zone-inner:disabled{opacity:.6;cursor:not-allowed}.shop-page{max-width:64rem;margin:0 auto;padding-bottom:6rem}.shop-hero{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (min-width:768px){.shop-hero{flex-direction:row;align-items:flex-end;justify-content:space-between}}.shop-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;letter-spacing:-.035em;margin:0 0 .35rem;color:var(--on-surface)}.shop-subtitle{margin:0;color:var(--on-surface-variant);font-weight:500;font-size:1rem}.shop-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem}.shop-btn-secondary{display:inline-flex;align-items:center;gap:.35rem;padding:.65rem 1.25rem;border-radius:var(--radius-lg);border:none;background:var(--secondary-container);color:var(--on-secondary-container);font-weight:600;font-size:.9rem;cursor:pointer;font-family:inherit;transition:box-shadow .2s ease,transform .12s ease}.shop-btn-secondary:active{transform:scale(.97)}.shop-week-pill{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1.25rem}.shop-week-pill button{min-height:40px;padding:.45rem .85rem;border-radius:var(--radius-lg);border:none;background:var(--surface-container-lowest);color:var(--on-surface);font-weight:600;font-size:.85rem;cursor:pointer;box-shadow:var(--kitchen-glow)}.shop-week-label{font-size:.9rem;font-weight:700;color:var(--on-surface-variant);font-family:var(--font-manrope),system-ui,sans-serif}.shop-original-card{background:var(--surface-container-lowest);border-radius:1.75rem;padding:.5rem 0;box-shadow:var(--kitchen-glow);margin-bottom:1.5rem}.shop-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-radius:1rem;cursor:pointer;transition:background .15s ease}.shop-row:hover{background:var(--surface-container-low)}.shop-row-main{display:flex;align-items:center;gap:1rem}.shop-row-main,.shop-row-text{min-width:0;flex:1 1}.shop-muted{color:var(--on-surface-variant);font-size:.95rem;margin:0 0 1rem;line-height:1.5}.shop-link{color:var(--primary);font-weight:700;text-decoration:none}.shop-link:hover{text-decoration:underline}.shop-error{color:#b3261e;font-size:.95rem;margin:0 0 1rem}.shop-empty{padding:2rem 1.5rem;background:var(--surface-container-lowest);border-radius:1.5rem;border:2px dashed color-mix(in srgb,var(--outline-variant) 35%,transparent);color:var(--on-surface-variant);text-align:center}.shop-empty-hint{margin:.65rem 0 0;font-size:.9rem}.btn-ghost{min-height:44px;padding:.65rem 1.25rem;background:transparent;border:1px solid color-mix(in srgb,var(--outline-variant) 45%,transparent);border-radius:var(--radius-lg);color:var(--on-surface);font-size:.95rem;font-weight:700;cursor:pointer;font-family:inherit}.btn-ghost:hover:not(:disabled){background:var(--surface-container-low)}.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.shop-row-check{width:1.35rem;height:1.35rem;accent-color:var(--primary);flex-shrink:0;cursor:pointer}.shop-row-title{margin:0;font-weight:600;font-size:1rem;color:var(--on-surface)}.shop-row-title.is-muted{text-decoration:line-through;opacity:.5}.shop-row-sub{margin:.15rem 0 0;font-size:.8rem;color:var(--on-surface-variant)}.shop-row-actions{flex-shrink:0;color:var(--outline-variant)}.shop-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1.25rem}.shop-toolbar button.linkish{background:none;border:none;color:var(--primary);font-weight:700;font-size:.88rem;cursor:pointer;font-family:inherit;padding:.25rem 0}.shop-sticky-actions{position:-webkit-sticky;position:sticky;bottom:0;left:0;right:0;margin:2rem calc(-1 * var(--space-24)) 0;padding:var(--space-16) var(--space-24);background:hsla(30,17%,98%,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid color-mix(in srgb,var(--outline-variant) 35%,transparent);z-index:20}.shop-sticky-inner{display:flex;flex-wrap:wrap;gap:.75rem;max-width:42rem;margin:0 auto;justify-content:center}.shop-bento{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}@media (min-width:900px){.shop-bento{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start}.shop-cat-card--produce{grid-column:span 8}.shop-cat-card--default{grid-column:span 4}.shop-cat-card--full{grid-column:span 12}}.shop-cat-card{background:var(--surface-container-lowest);border-radius:1.75rem;padding:1.75rem 1.5rem;box-shadow:0 12px 32px rgba(26,28,28,.04)}.shop-cat-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.shop-cat-head h2{margin:0;display:flex;align-items:center;gap:.65rem;font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.shop-cat-count{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--on-surface-variant);background:var(--surface-container);padding:.35rem .65rem;border-radius:9999px}.shop-smart-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem;border-radius:1rem;transition:background .15s ease;position:relative}.shop-smart-row:hover{background:var(--surface-container-low)}.shop-smart-row-menu{position:relative}.shop-smart-menu-btn{width:2.25rem;height:2.25rem;border:none;background:transparent;border-radius:9999px;cursor:pointer;color:var(--outline-variant);font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center}.shop-smart-menu-btn:hover{color:var(--primary)}.shop-smart-dropdown{position:absolute;top:100%;right:0;margin-top:.25rem;min-width:10rem;background:var(--surface-container-lowest);border-radius:var(--radius-lg);box-shadow:var(--kitchen-glow-lg);padding:.35rem 0;z-index:30}.shop-smart-dropdown button{display:block;width:100%;text-align:left;padding:.5rem 1rem;border:none;background:none;font-size:.88rem;font-weight:600;cursor:pointer;color:var(--on-surface);font-family:inherit}.shop-collapsible,.shop-smart-dropdown button:hover{background:var(--surface-container-low)}.shop-collapsible{border-radius:1.25rem;padding:.5rem 0;margin-bottom:1rem}.shop-collapsible-head{width:100%;display:flex;align-items:center;gap:.5rem;padding:.85rem 1.25rem;border:none;background:none;cursor:pointer;font-family:inherit;text-align:left;font-weight:700;color:var(--on-surface)}.planner-muted{font-size:.95rem;padding:0 var(--space-24)}.planner-hint,.planner-muted{color:var(--on-surface-variant)}.planner-hint{margin:0 0 1.25rem;font-size:.9rem;line-height:1.45}.planner-shell{display:flex;flex-direction:column;gap:1.5rem}@media (min-width:960px){.planner-shell{flex-direction:row;align-items:flex-start;gap:2rem}.planner-shell .planner-sidebar{width:300px;flex-shrink:0}.planner-shell-main{flex:1 1;min-width:0}}.planner-week-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:1.75rem}.planner-week-kicker{display:block;font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);margin-bottom:.35rem}.planner-week-title{margin:0;font-size:clamp(1.85rem,4vw,2.75rem);font-weight:800;letter-spacing:-.035em;color:var(--on-surface)}.planner-week-nav{display:flex;gap:.35rem}.planner-week-nav button{width:2.5rem;height:2.5rem;border:none;border-radius:9999px;background:var(--surface-container-low);color:var(--on-surface-variant);cursor:pointer;display:flex;align-items:center;justify-content:center}.planner-day-columns{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1rem;gap:1rem;overflow-x:auto;padding-bottom:.5rem;min-width:min(100%,720px)}@media (max-width:959px){.planner-day-columns{grid-template-columns:repeat(7,minmax(120px,1fr))}}.planner-day-col{display:flex;flex-direction:column;gap:.65rem;min-width:0}.planner-day-col-head{text-align:center;padding-bottom:.65rem;border-bottom:1px solid color-mix(in srgb,var(--outline-variant) 22%,transparent)}.planner-day-col-head.is-today{border-bottom-color:var(--primary);border-bottom-width:2px}.planner-day-col-head .dow{margin:0;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-variant)}.planner-day-col-head.is-today .dow{color:var(--primary)}.planner-day-col-head .dom{margin:.15rem 0 0;font-size:1.15rem;font-weight:800;font-family:var(--font-manrope),system-ui,sans-serif;color:var(--on-surface)}.planner-day-col-head.is-today .dom{color:var(--primary)}.planner-day-body{flex:1 1;display:flex;flex-direction:column;gap:.65rem;background:color-mix(in srgb,var(--surface-container-low) 55%,transparent);border-radius:1rem;padding:.65rem;min-height:280px}@media (min-width:960px){.planner-day-body{min-height:380px}}.planner-slot-box{min-height:4.5rem;border-radius:.75rem;transition:box-shadow .15s ease,background .15s ease}.planner-slot-box.is-highlight .planner-slot-inner{background:var(--surface-container-low);box-shadow:0 0 0 2px var(--primary);border-radius:.65rem}.planner-slot-label{font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem;display:block}.planner-slot-label.breakfast{color:#c2410c}.planner-slot-label.lunch{color:#0f766e}.planner-slot-label.dinner{color:var(--primary)}.planner-slot-inner{min-height:3.5rem;border-radius:.65rem;display:flex;align-items:center;justify-content:center;text-align:center;padding:.35rem}.planner-slot-filled{width:100%;border:none;background:var(--surface-container-lowest);border-radius:.65rem;padding:.5rem;cursor:pointer;text-align:left;font:inherit;box-shadow:var(--kitchen-glow);transition:transform .12s ease}.planner-slot-filled:hover{transform:scale(1.02)}.planner-slot-filled .t{font-size:.72rem;font-weight:800;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.planner-slot-empty{width:100%;min-height:3.25rem;border:2px dashed color-mix(in srgb,var(--outline-variant) 35%,transparent);border-radius:.65rem;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;color:var(--on-surface-variant);font-size:.65rem;font-weight:600;cursor:default}.recipe-ingredient-list{display:flex;flex-direction:column;gap:.25rem}.recipe-ingredient-row{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;border-radius:1rem;background:var(--surface-container-lowest);transition:background .15s ease}.recipe-ingredient-row:hover{background:var(--surface-container-low)}.recipe-ingredient-name{margin:0;font-weight:700;font-size:1rem;color:var(--on-surface);letter-spacing:-.02em}.recipe-ingredient-meta{margin:.25rem 0 0;font-size:.85rem;color:var(--on-surface-variant);font-weight:500}.auth-layout{display:flex;min-height:100vh}.auth-hero{display:none;position:relative;width:50%;overflow:hidden;background:var(--on-surface)}@media (min-width:1024px){.auth-hero{display:block}}.auth-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-hero__scrim{position:absolute;inset:0;background:rgba(26,28,28,.35);z-index:1}.auth-hero__brand{position:absolute;top:var(--space-32);left:var(--space-32);z-index:2;display:flex;align-items:center;gap:var(--space-12)}.auth-hero__mark{width:40px;height:40px;border-radius:var(--radius-md);background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;box-shadow:var(--kitchen-glow-lg)}.auth-hero__copy{position:absolute;bottom:4rem;left:4rem;right:2rem;z-index:2;max-width:28rem}.auth-hero__pill{display:inline-block;padding:6px 14px;border-radius:var(--radius-full);background:hsla(30,17%,98%,.82);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--primary);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:var(--space-24)}.auth-hero__title{font-family:var(--font-manrope),system-ui,sans-serif;font-size:clamp(2rem,3vw,2.75rem);font-weight:800;line-height:1.1;color:#fff;margin:0 0 var(--space-16);letter-spacing:-.03em}.auth-hero__sub{margin:0;font-size:1.05rem;font-weight:500;line-height:1.6;color:hsla(0,0%,100%,.88)}.auth-panel{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--space-32) var(--space-24);background:var(--surface)}@media (min-width:1024px){.auth-panel{width:50%;padding:var(--space-40) 4rem}}.auth-panel__inner{width:100%;max-width:420px}.recipe-card-hover{transition:box-shadow .25s ease,transform .25s ease}.recipe-card-hover:hover{box-shadow:var(--kitchen-glow-lg);transform:translateY(-4px)}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:hsla(30,17%,98%,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--kitchen-glow)}.app-header__inner{max-width:1120px;margin:0 auto;padding:var(--space-16) var(--space-24);justify-content:space-between;gap:var(--space-16);min-height:56px}.app-header__inner,.app-header__left{display:flex;align-items:center;flex-wrap:wrap}.app-header__left{gap:clamp(1rem,3vw,2rem);min-width:0}.app-header__menu-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:9999px;background:var(--surface-container-low);color:var(--on-surface);cursor:pointer}.app-header__brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.app-header__mark{width:36px;height:36px;border-radius:var(--radius-md);background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--kitchen-glow)}.app-header__logo-text{font-size:1.2rem;font-weight:800;letter-spacing:-.03em;color:var(--primary)}.app-header__logo-text.is-active{color:var(--on-surface)}.app-header__nav{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.75rem);flex-wrap:wrap}.app-header__nav.is-open{display:flex}.headerNavLink.is-active{color:var(--primary);padding-bottom:4px;box-shadow:inset 0 -2px 0 0 var(--primary)}@media (min-width:768px){.app-header__menu-button{display:none}}@media (max-width:767px){.app-header__inner{align-items:flex-start;padding:.875rem 1rem}.app-header__left{width:100%;justify-content:space-between;gap:.75rem}.app-header__nav{display:none;width:100%;order:3;flex-direction:column;align-items:stretch;gap:.5rem;padding-top:.5rem}.headerNavLink{display:block;padding:.7rem .85rem;border-radius:var(--radius-md);background:var(--surface-container-low)}.headerNavLink.is-active{padding-bottom:.7rem;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 35%,transparent)}}.material-symbols-outlined{font-family:Material Symbols Outlined,system-ui,sans-serif;font-weight:400;font-style:normal;font-size:1.25rem;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;vertical-align:middle;-webkit-font-smoothing:antialiased}.material-symbols-outlined.ms-fill{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.planner-editorial{display:flex;flex-direction:column;min-height:calc(100dvh - 4.5rem);width:100%;max-width:100%;margin:0;padding:0}@media (min-width:1024px){.planner-editorial{flex-direction:row;align-items:stretch;min-height:calc(100dvh - 4.5rem);max-height:calc(100dvh - 4.5rem)}}.planner-editorial__sidebar{display:none;flex-direction:column;width:20rem;flex-shrink:0;background:var(--surface-container-low);border-right:1px solid color-mix(in srgb,var(--outline-variant) 30%,transparent)}@media (min-width:1024px){.planner-editorial__sidebar{display:flex}}.planner-editorial__sidebar-scroll{flex:1 1;overflow-y:auto;padding:0 1.5rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.planner-editorial__sidebar-foot{padding:1.5rem;margin-top:auto;border-top:1px solid color-mix(in srgb,var(--outline-variant) 22%,transparent)}.planner-editorial__main{flex:1 1;min-width:0;overflow-y:auto;padding:1.5rem 1rem 5rem}@media (min-width:768px){.planner-editorial__main{padding:2rem 2.5rem 5rem}}.planner-editorial__search{position:relative}.planner-editorial__search .material-symbols-outlined{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:1.1rem;color:color-mix(in srgb,var(--on-surface-variant) 50%,transparent)}.planner-editorial__search input{width:100%;padding:.65rem .85rem .65rem 2.35rem;border:1px solid color-mix(in srgb,var(--outline-variant) 50%,transparent);border-radius:var(--radius-lg);background:var(--surface-container-lowest);font-size:.875rem;outline:none}.planner-editorial__search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.planner-sort-note{margin:0;font-size:.72rem;color:var(--on-surface-variant);letter-spacing:.06em;text-transform:uppercase}.planner-source-card{display:flex;gap:.65rem;align-items:stretch}.planner-drag-card{display:flex;gap:.75rem;padding:.5rem;border-radius:var(--radius-lg);background:var(--surface-container-lowest);border:1px solid transparent;box-shadow:var(--kitchen-glow);cursor:-webkit-grab;cursor:grab;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.planner-drag-card:hover{border-color:color-mix(in srgb,var(--primary) 30%,transparent);box-shadow:var(--kitchen-glow-lg)}.planner-drag-card:active{cursor:-webkit-grabbing;cursor:grabbing}.planner-drag-card__thumb{width:4rem;height:4rem;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:linear-gradient(145deg,var(--primary-fixed),var(--surface-container-high))}.planner-drag-card__thumb img{width:100%;height:100%;object-fit:cover}.planner-drag-card__body{min-width:0;display:flex;flex-direction:column;justify-content:center}.planner-drag-card__title{margin:0;font-size:.875rem;font-weight:800;color:var(--on-surface);line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.planner-drag-card__meta{margin:.3rem 0 0;font-size:.72rem;color:var(--on-surface-variant);text-transform:capitalize}.planner-source-card__add{flex:0 0 auto;align-self:center;border:none;border-radius:9999px;background:var(--primary);color:var(--on-primary);padding:.6rem .9rem;font-size:.75rem;font-weight:800;cursor:pointer}.planner-source-empty{margin:0;font-size:.875rem;color:var(--on-surface-variant);line-height:1.5}.planner-slot-plus{border:none;background:transparent;color:color-mix(in srgb,var(--on-surface-variant) 65%,transparent);display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:.25rem;cursor:pointer}.planner-slot-plus:hover{color:var(--primary)}.planner-drop-target{flex:1 1;min-height:6.25rem;border-radius:var(--radius-lg);border:2px dashed color-mix(in srgb,var(--primary-container) 35%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:color-mix(in srgb,var(--on-surface-variant) 35%,transparent);transition:background .2s ease,border-color .2s ease;cursor:default}.planner-drop-target:hover{border-color:var(--primary-container);background:color-mix(in srgb,var(--primary-container) 6%,transparent)}.planner-drop-target.is-drag-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary-container) 10%,transparent)}.planner-drop-target--filled{align-items:stretch;justify-content:flex-start;padding:.35rem;gap:.35rem}.planner-slot-recipes{display:flex;flex-direction:column;gap:.35rem;width:100%}.planner-slot-recipe{position:relative}.planner-meal-card{position:relative;flex:1 1;width:100%;min-height:9rem;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-container-lowest);border:1px solid color-mix(in srgb,var(--outline-variant) 20%,transparent);box-shadow:var(--kitchen-glow);text-align:left;padding:0;cursor:pointer;font:inherit}.planner-meal-card__img{width:100%;height:65%;object-fit:cover;display:block}.planner-meal-card__body{padding:.5rem .65rem}.planner-meal-card__title{margin:0;font-size:.6875rem;font-weight:800;line-height:1.25;color:var(--on-surface);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.planner-meal-card__clear{position:absolute;top:.25rem;right:.25rem;width:1.65rem;height:1.65rem;border:none;border-radius:9999px;background:color-mix(in srgb,var(--surface-container-lowest) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--on-surface-variant);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease}.planner-slot-recipe:focus-within .planner-meal-card__clear,.planner-slot-recipe:hover .planner-meal-card__clear{opacity:1}@media (hover:none){.planner-meal-card__clear{opacity:1}}.planner-drop-target__hint{margin-top:.15rem;font-size:.625rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--on-surface-variant);text-align:center}.planner-mobile-guide{margin:0 0 1rem;padding:.95rem 1rem;border-radius:1rem;background:var(--surface-container-low);box-shadow:var(--kitchen-glow)}.planner-mobile-guide__title{margin:0 0 .2rem;font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--primary)}.planner-mobile-guide__text{margin:0;font-size:.9rem;color:var(--on-surface-variant);line-height:1.45}@media (min-width:1024px){.planner-mobile-guide{display:none}}.planner-editorial__grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem;min-height:0}@media (min-width:900px){.planner-editorial__grid{grid-template-columns:repeat(7,minmax(0,1fr))}}.planner-editorial__day-head{text-align:center;padding:1rem;background:var(--surface-container-low);border-radius:1rem;border:1px solid color-mix(in srgb,var(--outline-variant) 20%,transparent);box-shadow:var(--kitchen-glow)}.planner-editorial__day-head .dow{margin:0;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb,var(--on-surface-variant) 60%,transparent)}.planner-editorial__day-head .dom{margin:.15rem 0 0;font-size:1.5rem;font-weight:900;font-family:var(--font-manrope),system-ui,sans-serif;color:var(--on-surface)}.planner-editorial__day-head.is-today .dom{color:var(--primary)}.planner-editorial__day-body{flex:1 1;display:flex;flex-direction:column;gap:.85rem;padding:.75rem;background:color-mix(in srgb,var(--surface-container-low) 30%,transparent);border-radius:1rem;border:1px solid color-mix(in srgb,var(--outline-variant) 10%,transparent);min-height:18rem}@media (min-width:900px){.planner-editorial__day-body{min-height:28rem}}.planner-slot-stack{display:flex;flex-direction:column;gap:.35rem;flex:1 1;min-height:0}.planner-slot-stack__label{font-size:.5625rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-left:.35rem}.planner-slot-stack__label.breakfast{color:var(--primary-container)}.planner-slot-stack__label.lunch{color:var(--tertiary)}.planner-slot-stack__label.dinner{color:var(--primary)}.planner-slot-action{border:none;border-radius:9999px;background:color-mix(in srgb,var(--primary-container) 80%,#fff);color:var(--primary);padding:.5rem .85rem;font-size:.72rem;font-weight:800;cursor:pointer}.planner-slot-action--mobile{display:inline-flex;align-items:center;justify-content:center}.planner-slot-action--desktop-icon{display:none;align-self:center;background:transparent;color:color-mix(in srgb,var(--on-surface-variant) 65%,transparent);width:auto;height:auto;padding:.15rem;border-radius:0}@media (min-width:1024px){.planner-slot-action--mobile{display:none}.planner-slot-action--desktop-icon{display:inline-flex;align-items:center;justify-content:center}.planner-slot-action--desktop-icon:hover{color:var(--primary)}}.planner-mobile-picker{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}.planner-mobile-picker__backdrop{position:absolute;inset:0;border:none;background:rgba(0,0,0,.28)}.planner-mobile-picker__sheet{position:relative;z-index:1;width:min(100%,40rem);max-height:min(82dvh,48rem);overflow:hidden;border-radius:1.5rem 1.5rem 0 0;background:var(--surface-container-lowest);box-shadow:var(--kitchen-glow-lg);display:flex;flex-direction:column}.planner-mobile-picker__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1rem .5rem}.planner-mobile-picker__kicker{margin:0 0 .2rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.planner-mobile-picker__title{margin:0;font-size:1.35rem;font-weight:800}.planner-mobile-picker__close{border:none;background:var(--surface-container-low);color:var(--on-surface);width:2.5rem;height:2.5rem;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center}.planner-mobile-picker__controls{padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.75rem}.planner-mobile-picker__list{padding:0 1rem 1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}@media (min-width:1024px){.planner-mobile-picker{align-items:center;padding:1.5rem}.planner-mobile-picker__sheet{width:min(42rem,100%);max-height:min(85dvh,46rem);border-radius:1.5rem}}@media (max-width:1023px){.planner-drag-card{cursor:default}.planner-editorial__main{padding:1rem 1rem 5rem}}.shop-page--wide{max-width:96rem;margin:0 auto;padding-left:var(--space-24);padding-right:var(--space-24);padding-bottom:calc(var(--space-32) + 5rem)}.shop-confirm-title{margin:0 0 .75rem;font-size:clamp(2.25rem,4vw,3.25rem);font-weight:800;letter-spacing:-.03em;color:var(--on-surface);line-height:1.05}.shop-confirm-week{margin-bottom:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.5rem;border-radius:var(--radius-xl,.75rem);background:var(--surface-container-low)}.shop-confirm-week__left{display:flex;align-items:center;gap:1rem;min-width:0}.shop-confirm-week__icon{width:3rem;height:3rem;border-radius:var(--radius-lg,.5rem);background:var(--surface-container-lowest);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.shop-confirm-week__kicker{display:block;font-size:.6875rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--on-surface-variant);margin-bottom:.25rem}.shop-confirm-week__range{margin:0;font-size:1.25rem;font-weight:800;color:var(--on-surface);letter-spacing:-.02em}.shop-confirm-week__actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}@media (max-width:639px){.shop-confirm-week{padding:1rem}.shop-confirm-week__actions{width:100%;justify-content:space-between}}.shop-confirm-week__nav{border:none;background:var(--surface-container-lowest);border-radius:9999px;padding:.45rem;color:var(--on-surface-variant);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.shop-confirm-week__nav:hover{background:var(--surface-container-high);color:var(--primary)}.shop-confirm-week__change{font-size:.875rem;font-weight:800;color:var(--primary);text-decoration:none;padding:.35rem .5rem;border-radius:.5rem;transition:opacity .15s ease}.shop-confirm-week__change:hover{opacity:.85}.shop-confirm-hero{position:relative;border-radius:var(--radius-xl,.75rem);background:var(--surface-container-lowest);padding:2rem 1.75rem;box-shadow:0 12px 32px rgba(26,28,28,.04);overflow:hidden}@media (min-width:768px){.shop-confirm-hero{padding:3rem}}.shop-confirm-hero__glow{position:absolute;right:-5rem;top:-5rem;width:16rem;height:16rem;border-radius:9999px;background:color-mix(in srgb,var(--primary) 8%,transparent);filter:blur(48px);pointer-events:none}.shop-confirm-hero__grid{position:relative;z-index:1;display:grid;grid-gap:2.5rem;gap:2.5rem}@media (min-width:768px){.shop-confirm-hero__grid{grid-template-columns:5fr 7fr;gap:3rem;align-items:start}.shop-confirm-hero__right{padding-left:2rem;border-left:1px solid var(--surface-variant)}}.shop-confirm-glance__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.shop-confirm-glance__title{margin:0;font-size:.8125rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--on-surface-variant)}.shop-confirm-glance__count{font-size:.75rem;font-weight:600;color:var(--primary);white-space:nowrap}.shop-confirm-glance__hint{margin:0 0 .85rem;font-size:.85rem;color:var(--on-surface-variant);line-height:1.45}.shop-confirm-meal{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--surface-variant)}.shop-confirm-meal:last-of-type{border-bottom:none}.shop-confirm-meal__name{margin:0;font-size:1rem;font-weight:800;color:var(--on-surface);letter-spacing:-.02em;transition:color .15s ease}.shop-confirm-meal__link{text-decoration:none}.shop-confirm-meal:hover .shop-confirm-meal__name{color:var(--primary)}.shop-confirm-meal__chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.shop-confirm-chip{padding:.15rem .45rem;border-radius:.25rem;font-size:.625rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.shop-confirm-chip--day{background:var(--surface-container-high);color:var(--on-surface-variant)}.shop-confirm-chip--breakfast{background:var(--primary-fixed);color:var(--on-primary-fixed-variant)}.shop-confirm-chip--lunch{background:var(--tertiary-fixed);color:var(--on-tertiary-fixed-variant)}.shop-confirm-chip--dinner{background:var(--secondary-container);color:var(--on-secondary-fixed-variant)}.shop-confirm-expand{width:100%;margin-top:.25rem;padding:.5rem;border:none;background:none;cursor:pointer;font:inherit;font-size:.6875rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--on-surface-variant) 65%,transparent);transition:color .15s ease}.shop-confirm-expand:hover{color:var(--primary)}.shop-confirm-aside__title{margin:0 0 1.25rem;font-size:clamp(1.65rem,3vw,2rem);font-weight:800;color:var(--on-surface);line-height:1.2;letter-spacing:-.02em}.shop-confirm-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem 1.5rem;gap:1.25rem 1.5rem;margin-bottom:2rem}.shop-confirm-stat{display:flex;align-items:flex-start;gap:.65rem}.shop-confirm-stat .material-symbols-outlined{color:var(--primary);font-size:1.35rem;margin-top:.1rem}.shop-confirm-stat__val{margin:0;font-weight:800;font-size:.9375rem;color:var(--on-surface)}.shop-confirm-stat__sub{margin:.15rem 0 0;font-size:.75rem;color:var(--on-surface-variant)}.shop-confirm-quote{padding:1.25rem 1.5rem;border-radius:var(--radius-xl,.75rem);background:color-mix(in srgb,var(--surface-container-low) 70%,transparent);border:1px solid color-mix(in srgb,var(--surface-variant) 55%,transparent);margin-bottom:2rem}.shop-confirm-quote p{margin:0;font-size:.875rem;font-style:italic;line-height:1.55;color:var(--on-surface-variant)}.shop-confirm-cta-row{display:flex;flex-direction:column;align-items:stretch;gap:1.25rem}@media (min-width:640px){.shop-confirm-cta-row{flex-direction:row;align-items:center;flex-wrap:wrap}}.shop-confirm-primary{flex:1 1;min-width:12rem;border:none;cursor:pointer;padding:1rem 2rem;border-radius:var(--radius-xl,.75rem);font-size:1rem;font-weight:800;font-family:var(--font-manrope),system-ui,sans-serif;color:var(--on-primary);background:linear-gradient(135deg,var(--primary),var(--primary-container));box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 22%,transparent);transition:transform .12s ease,box-shadow .2s ease}.shop-confirm-primary:hover:not(:disabled){transform:scale(1.01)}.shop-confirm-primary:active:not(:disabled){transform:scale(.99)}.shop-confirm-primary:disabled{opacity:.45;cursor:not-allowed}.shop-confirm-back-planner{font-size:.875rem;font-weight:600;color:var(--on-surface-variant);text-decoration:underline;text-underline-offset:4px;-webkit-text-decoration-color:var(--outline-variant);text-decoration-color:var(--outline-variant)}.shop-confirm-back-planner:hover{color:var(--primary)}.shop-confirm-hero-img-wrap{margin-top:2.5rem;display:none;border-radius:var(--radius-xl,.75rem);overflow:hidden;aspect-ratio:16/7;box-shadow:0 8px 24px rgba(26,28,28,.06)}@media (min-width:768px){.shop-confirm-hero-img-wrap{display:block}}.shop-confirm-hero-img-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15);transition:filter .6s ease}.shop-confirm-hero-img-wrap:hover img{filter:grayscale(0)}.shop-confirm-footer-hint{margin-top:4rem;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 1.5rem;opacity:.45}.shop-confirm-footer-hint .material-symbols-outlined{font-size:2.75rem;color:var(--on-surface-variant);margin-bottom:.75rem}.shop-confirm-footer-hint p{margin:0;font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--on-surface-variant);font-family:var(--font-manrope),system-ui,sans-serif}.shop-confirm-footer-hint__rule{width:6rem;height:1px;background:var(--outline-variant);margin-top:1rem}.shop-confirm-empty{padding:2rem 0;text-align:center;color:var(--on-surface-variant)}.shop-smart-hero{position:relative;border-radius:1.25rem;overflow:hidden;min-height:13rem;margin-bottom:1.25rem;display:flex;align-items:flex-end;padding:1.25rem 1.35rem}@media (min-width:768px){.shop-smart-hero{min-height:14.5rem;padding:1.35rem 1.75rem}}.shop-smart-hero__bg{position:absolute;inset:0;background-size:cover;background-position:50%;background-image:url(https://lh3.googleusercontent.com/aida-public/AB6AXuB9aEMxjQwYkKjmKjtRwOH_tN7lryh1S9w0TiWlHK6JrEfJRw0s_CasCM_nTPdgC1dGEyZP6fX5pu_5iZmKo8kZnQVwa83JSgeFRCDtQuyb7xnGo6CnR8iCKQm8RpiTba6iLnPbOFVZ_CgxBpBDcQRASvpLbXpVGcWX5kSxDgbg8TIPwqNnDJpvS-UgkZOVjr4RAZ1gr3voBYN_UjFu_CnXOzSET5CqrAOpJPv8FVzc4pAMc-SJostnNzqF3FmVLqcVNIkII1JncXxS)}.shop-smart-hero__grad{position:absolute;inset:0;background:linear-gradient(to top,color-mix(in srgb,var(--on-surface) 82%,transparent),color-mix(in srgb,var(--on-surface) 18%,transparent),transparent)}.shop-smart-hero__inner{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;gap:.75rem}@media (min-width:768px){.shop-smart-hero__inner{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:1.25rem}}.shop-smart-meta-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;margin-bottom:.35rem}.shop-smart-back-prominent{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto;padding:.45rem .95rem;border:none;border-radius:9999px;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:800;letter-spacing:.02em;color:var(--primary);background:hsla(0,0%,100%,.95);box-shadow:0 4px 16px rgba(26,28,28,.12);transition:transform .12s ease,box-shadow .15s ease,background .15s ease}.shop-smart-stale{margin:0 0 1rem;padding:.85rem 1rem;border-radius:1rem;background:color-mix(in srgb,var(--tertiary-container) 22%,#fff);color:var(--on-surface);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.shop-smart-stale__copy{margin:0;font-size:.9rem;line-height:1.45}.shop-smart-stale__action{border:none;border-radius:9999px;background:var(--primary);color:var(--on-primary);padding:.6rem .9rem;font-size:.75rem;font-weight:800;cursor:pointer;flex-shrink:0}@media (max-width:639px){.shop-smart-stale{flex-direction:column;align-items:stretch}}.shop-smart-back-prominent:hover{background:#fff;box-shadow:0 6px 20px rgba(26,28,28,.16)}.shop-smart-back-prominent:active{transform:scale(.98)}.shop-smart-back{display:inline-flex;align-items:center;gap:.35rem;color:hsla(0,0%,100%,.75);font-size:.875rem;font-weight:700;text-decoration:none;background:none;border:none;cursor:pointer;font-family:inherit;padding:0;margin-bottom:.25rem}.shop-smart-back:hover{color:#fff}.shop-smart-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.6875rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:color-mix(in srgb,var(--tertiary-container) 90%,transparent);color:var(--on-tertiary-container);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.shop-smart-hero__title{margin:.15rem 0 0;font-size:clamp(1.65rem,4vw,2.65rem);font-weight:900;letter-spacing:-.03em;color:#fff;line-height:1.05}.shop-smart-hero__sub{margin:.35rem 0 0;color:hsla(0,0%,100%,.82);font-weight:500;font-size:.9rem;max-width:34rem;line-height:1.4}.shop-product-store{margin-top:1rem}.shop-product-store__label{display:block;margin-bottom:.45rem;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:hsla(0,0%,100%,.74)}.shop-product-store__chips{display:flex;flex-wrap:wrap;gap:.45rem}.shop-product-store__chip{padding:.45rem .8rem;border-radius:9999px;border:1px solid hsla(0,0%,100%,.22);background:hsla(0,0%,100%,.12);color:#fff;font-size:.78rem;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shop-product-store__chip.is-active{background:hsla(0,0%,100%,.96);color:var(--primary);border-color:transparent;box-shadow:0 6px 18px rgba(26,28,28,.12)}.shop-smart-stat{align-self:flex-end;background:hsla(0,0%,100%,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsla(0,0%,100%,.22);border-radius:.85rem;padding:.85rem 1.15rem;text-align:center;min-width:6.75rem}.shop-smart-stat__num{margin:0;font-size:2.1rem;font-weight:900;font-family:var(--font-manrope),system-ui,sans-serif;color:#fff;line-height:1}.shop-smart-stat__lbl{margin:.35rem 0 0;font-size:.75rem;font-weight:800;letter-spacing:.06em;color:hsla(0,0%,100%,.72)}.shop-bento-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:1fr}@media (min-width:640px){.shop-bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.shop-bento-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.shop-bento-span-4{grid-column:span 4}.shop-bento-span-6{grid-column:span 6}.shop-bento-span-8{grid-column:span 8}.shop-bento-span-12{grid-column:span 12}}.shop-bento-card{background:var(--surface-container-lowest);border-radius:1.15rem;padding:1.15rem 1.2rem;box-shadow:0 12px 32px rgba(26,28,28,.03)}.shop-bento-card__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.shop-bento-card__head-left{display:flex;align-items:center;gap:1rem;min-width:0}.shop-bento-icon-wrap{width:2.5rem;height:2.5rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.shop-bento-icon-wrap--produce{background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}.shop-bento-icon-wrap--dairy{background:color-mix(in srgb,var(--secondary-container) 50%,transparent);color:var(--secondary)}.shop-bento-icon-wrap--pantry{background:color-mix(in srgb,var(--tertiary) 10%,transparent);color:var(--tertiary)}.shop-bento-icon-wrap--meat{background:color-mix(in srgb,var(--primary-container) 22%,transparent);color:var(--on-primary-container)}.shop-bento-icon-wrap--frozen{background:color-mix(in srgb,var(--tertiary) 12%,transparent);color:var(--tertiary)}.shop-bento-icon-wrap--bakery{background:color-mix(in srgb,var(--primary-fixed) 40%,transparent);color:var(--primary)}.shop-bento-icon-wrap--other{background:var(--surface-container);color:var(--on-surface-variant)}.shop-bento-card__title{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.shop-bento-count{padding:.35rem 1rem;border-radius:9999px;background:var(--surface-container);color:var(--on-surface-variant);font-size:.8125rem;font-weight:800;flex-shrink:0}.shop-bento-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.6rem .5rem;border-radius:.65rem;transition:background .15s ease}.shop-bento-row:hover{background:var(--surface-container-low)}.shop-bento-row__check{width:1.5rem;height:1.5rem;accent-color:var(--primary);flex-shrink:0;cursor:pointer}.shop-bento-row__text p{margin:0}.shop-bento-row__name{font-weight:600;font-size:1rem;color:var(--on-surface)}.shop-bento-row__name.is-muted{text-decoration:line-through;opacity:.5}.shop-bento-row__sub{margin-top:.25rem!important;font-size:.75rem;color:var(--on-surface-variant)}.shop-bento-row__menu{position:relative;flex-shrink:0;opacity:0;transition:opacity .15s ease}.shop-bento-row:hover .shop-bento-row__menu{opacity:1}@media (hover:none){.shop-bento-row__menu{opacity:1}}.shop-bento-row-block{padding:.2rem 0}.shop-bento-menu-btn{border:none;background:none;padding:.35rem;border-radius:9999px;color:var(--on-surface-variant);cursor:pointer;display:flex;align-items:center;justify-content:center}.shop-bento-menu-btn:hover{color:var(--error)}.shop-bento-products{padding-left:3rem;margin:-.05rem 0 .35rem}.shop-bento-products__toggle{border:none;background:none;padding:0;color:var(--primary);font-size:.83rem;font-weight:800;cursor:pointer}.shop-bento-products__toggle:hover:not(:disabled){opacity:.82}.shop-bento-products__toggle:disabled{opacity:.65;cursor:wait}.shop-bento-products__panel{display:grid;grid-gap:.75rem;gap:.75rem;margin-top:.7rem}.shop-bento-products__status{margin:0;font-size:.82rem;color:var(--on-surface-variant)}.shop-bento-product-card{display:flex;gap:.8rem;padding:.8rem;border-radius:.85rem;background:var(--surface-container-low);border:1px solid color-mix(in srgb,var(--outline-variant) 44%,transparent)}.shop-bento-product-card img,.shop-bento-product-card__img-placeholder{width:4.5rem;height:4.5rem;border-radius:.7rem;flex-shrink:0}.shop-bento-product-card img{object-fit:cover;background:var(--surface-container-high)}.shop-bento-product-card__img-placeholder{display:flex;align-items:center;justify-content:center;background:var(--surface-container-high);color:var(--on-surface-variant)}.shop-bento-product-card__body{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:.32rem}.shop-bento-product-card__name,.shop-bento-product-card__price{margin:0}.shop-bento-product-card__name{font-size:.92rem;font-weight:700;color:var(--on-surface)}.shop-bento-product-card__price{font-size:.82rem;color:var(--on-surface-variant)}.shop-bento-product-card__link{align-self:flex-start;margin-top:.1rem;font-size:.8rem;font-weight:800;color:var(--primary);text-decoration:none}.shop-bento-product-card__link:hover{text-decoration:underline}@media (max-width:640px){.shop-bento-products{padding-left:2.4rem}}.shop-smart-actions{display:flex;flex-direction:column;gap:.85rem;margin:1.35rem 0 1.1rem}@media (min-width:640px){.shop-smart-actions{flex-direction:row}}.shop-smart-actions__primary,.shop-smart-actions__secondary{flex:1 1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.15rem;border-radius:.85rem;font-size:.95rem;font-weight:900;font-family:var(--font-manrope),system-ui,sans-serif;cursor:pointer;border:1px solid color-mix(in srgb,var(--outline-variant) 50%,transparent);transition:opacity .15s ease,transform .12s ease}.shop-smart-actions__secondary{background:var(--surface-container-highest);color:var(--on-surface)}.shop-smart-actions__primary{background:var(--primary);color:var(--on-primary);border-color:transparent;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 28%,transparent)}.shop-smart-actions__primary:hover:not(:disabled){opacity:.92}.shop-smart-actions__primary:disabled,.shop-smart-actions__secondary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.shop-smart-below-bento{margin-top:2rem;display:flex;flex-direction:column;gap:1rem;width:100%;max-width:none}.shop-suggest-panel{background:var(--surface-container-low);border-radius:1rem;overflow:hidden;width:100%;max-width:none;margin-left:0;margin-right:0}.shop-suggest-panel button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.35rem 1.5rem;border:none;background:none;cursor:pointer;font:inherit;text-align:left}.shop-suggest-panel button:hover{background:var(--surface-container)}.shop-suggest-panel__left{display:flex;align-items:center;gap:1rem;min-width:0}.shop-suggest-panel h3{margin:0;font-size:1rem;font-weight:800;color:var(--on-surface)}.shop-suggest-panel p{margin:.2rem 0 0;font-size:.75rem;color:var(--on-surface-variant)}.shop-suggest-panel.is-muted{opacity:.72}.recipe-editorial{max-width:80rem;margin:0 auto;padding:var(--space-24) var(--space-24) calc(var(--space-32) + 4rem)}.recipe-editorial__hero-img{width:100%;aspect-ratio:21/9;border-radius:1rem;overflow:hidden;box-shadow:var(--kitchen-glow-lg);margin-bottom:2.5rem}.recipe-editorial__hero-img img{width:100%;height:100%;object-fit:cover}.recipe-editorial__center{max-width:48rem;margin:0 auto 3.5rem;text-align:center}.recipe-editorial__pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem;margin-bottom:1.25rem}.recipe-editorial__pill{padding:.35rem 1rem;border-radius:9999px;font-size:.6875rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.recipe-editorial__pill--tertiary{background:color-mix(in srgb,var(--tertiary-container) 10%,transparent);color:var(--tertiary)}.recipe-editorial__pill--primary{background:color-mix(in srgb,var(--primary-container) 10%,transparent);color:var(--primary)}.recipe-editorial__title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.75rem);font-weight:900;letter-spacing:-.035em;line-height:1.08;color:var(--on-surface)}.recipe-editorial__accent{color:var(--primary);font-family:ui-serif,Georgia,Times New Roman,serif;font-style:italic;font-weight:700}.recipe-editorial__stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;padding:1.75rem 0;border-top:1px solid color-mix(in srgb,var(--outline-variant) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--outline-variant) 12%,transparent)}.recipe-editorial__stats-label{margin:0 0 .25rem;font-size:.625rem;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:var(--outline)}.recipe-editorial__stats-value{margin:0;font-size:1.1rem;font-weight:800;font-family:var(--font-manrope),system-ui,sans-serif}.recipe-editorial-ingredients{max-width:42rem;margin:0 auto 4rem}.recipe-editorial-ingredients h2{margin:0 0 2.5rem;text-align:center;font-size:1.75rem;font-weight:900;letter-spacing:-.02em}.recipe-editorial-ing-row{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;padding:1rem 0;border-bottom:1px solid color-mix(in srgb,var(--outline-variant) 12%,transparent)}.recipe-editorial-ing-row:hover .recipe-editorial-ing-name{color:var(--primary)}.recipe-editorial-ing-name{margin:0;font-size:1.05rem;font-weight:800;transition:color .15s ease}.recipe-editorial-ing-qty{margin:0;font-size:.875rem;font-weight:500;color:var(--on-surface-variant);text-align:right;max-width:45%}.import-editorial{max-width:80rem;margin:0 auto;padding:var(--space-32) var(--space-24) calc(var(--space-32) + 4rem)}.import-editorial__header{text-align:center;max-width:48rem;margin:0 auto 2.75rem}.import-editorial__kicker{display:inline-block;padding:.25rem 1rem;border-radius:9999px;background:color-mix(in srgb,var(--tertiary-container) 10%,transparent);color:var(--tertiary);font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem}.import-editorial__title{margin:0;font-size:clamp(2.25rem,6vw,3.75rem);font-weight:900;letter-spacing:-.03em;line-height:1.08}.import-editorial__title span{color:var(--primary);font-family:ui-serif,Georgia,serif;font-style:italic;font-weight:700}.import-editorial__sub{margin:1rem auto 0;max-width:32rem;font-size:1.05rem;color:var(--on-surface-variant);line-height:1.55}.import-engine{max-width:48rem;margin:0 auto;background:var(--surface-container-lowest);border-radius:var(--radius-lg);border:1px solid var(--surface-container);box-shadow:var(--kitchen-glow);padding:2rem 1.5rem}.import-engine--review{max-width:72rem}@media (min-width:768px){.import-engine{padding:2.75rem 3rem}}.import-engine__meta-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}@media (min-width:768px){.import-engine__meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.import-engine__tabs{display:flex;gap:.25rem;padding:.25rem;background:var(--surface-container-low);border-radius:var(--radius-lg);width:-moz-fit-content;width:fit-content;margin:0 auto 2rem}@media (max-width:639px){.import-engine__tabs{width:100%;margin:0 0 1.5rem}.import-engine__tab{flex:1 1;padding-left:.85rem;padding-right:.85rem}}@media (min-width:768px){.import-engine__tabs{margin-left:0}}.import-engine__tab{padding:.6rem 1.35rem;border:none;border-radius:var(--radius-md);background:transparent;font-size:.875rem;font-weight:800;font-family:var(--font-manrope),system-ui,sans-serif;color:var(--on-surface-variant);cursor:pointer}.import-engine__tab.is-active{background:var(--surface-container-lowest);color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--outline-variant) 22%,transparent)}.import-engine__label{display:block;font-size:.875rem;font-weight:800;margin:0 0 .35rem .15rem;font-family:var(--font-manrope),system-ui,sans-serif}.import-engine__field-wrap{position:relative}.import-engine__field-wrap .material-symbols-outlined{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1.25rem;color:color-mix(in srgb,var(--on-surface-variant) 50%,transparent)}.import-engine__input{width:100%;padding:1rem 1rem 1rem 3rem;border:none;border-radius:var(--radius-lg);background:var(--surface-container-high);font-size:1rem;outline:none}.import-engine__input--plain{padding-left:1rem}.import-engine__input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}.import-engine__textarea{width:100%;padding:1rem;border:none;border-radius:var(--radius-lg);background:var(--surface-container-high);font-size:1rem;font-family:inherit;outline:none;resize:vertical;min-height:6rem}.import-engine__textarea:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}.import-engine__actions{display:flex;flex-direction:column;align-items:center;gap:1rem;padding-top:1rem}@media (min-width:768px){.import-engine__actions{flex-direction:row;align-items:center}}.import-engine__cta{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2.25rem;border:none;border-radius:var(--radius-lg);background:var(--primary-gradient);color:var(--on-primary);font-size:1rem;font-weight:800;font-family:var(--font-manrope),system-ui,sans-serif;cursor:pointer;box-shadow:var(--kitchen-glow-lg)}.import-engine__cta:disabled{opacity:.55;cursor:not-allowed}.import-engine__hint{margin:0;font-size:.8125rem;color:var(--on-surface-variant);display:flex;align-items:center;gap:.35rem}.import-engine__foot{margin-top:2rem;padding-top:1.75rem;border-top:1px solid var(--surface-container)}.import-engine__foot h4{margin:0 0 .75rem;font-size:.9rem;font-weight:800;color:var(--on-surface-variant)}.import-engine__foot p{margin:0;font-size:.875rem;color:var(--on-surface-variant);line-height:1.5}@keyframes import-cta-spin{to{transform:rotate(1turn)}}.import-engine__cta .import-spin{animation:import-cta-spin .85s linear infinite}