@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Fraunces:ital,opsz,wght@0,9..144,800;1,9..144,800&display=swap";.whisk-ai-badge{display:inline-flex;align-items:center;padding:2px 6px;margin-inline-start:5px;border:1px solid currentColor;border-radius:6px;font:700 11px var(--font-sans);line-height:1.4;vertical-align:middle}.whisk-identity{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px}.whisk-provenance{font:500 13px var(--font-sans)}:root{color-scheme:light;--bg: #FAF6EE;--surface: #FFFFFF;--ink: #13281C;--ink-muted: #4A5A4F;--accent: #C4481B;--accent-hover: #A93C15;--xp: #F5C542;--mint: #CFE8C8;--success: #2F6E45;--border: #EAE2D0;--focus: #1D5FD1;--accent-text: #A33A14;--dark-surface: #13281C;--dark-progress-track: #82998B;--inverse-hover: #264633;--color-bg: var(--bg);--color-surface: var(--surface);--color-surface-raised: var(--surface);--color-surface-sunken: #EFE7D6;--color-surface-sunken-hover: #E3D8C1;--color-sage-50: #EFF0E5;--color-sage-100: var(--mint);--color-sage-150: var(--mint);--color-sage-300: var(--mint);--color-sage-500: var(--success);--color-border: var(--border);--color-border-strong: #7D897E;--color-text: var(--ink);--color-text-strong: var(--ink);--color-text-muted: var(--ink-muted);--color-text-warm: var(--accent-text);--color-primary: var(--accent);--color-primary-hover: var(--accent-hover);--color-primary-text: #FFFFFF;--color-link: var(--accent-text);--color-brand: var(--ink);--color-accent: var(--accent);--color-accent-hover: var(--accent-hover);--color-accent-soft: #F6E4DA;--color-hint-bg: #FFF3D1;--color-danger: #9B3026;--color-focus: var(--focus);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font-sans: "DM Sans", system-ui, sans-serif;--font-serif: "Fraunces", Georgia, serif;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 28px;--text-2xl: 40px;--text-3xl: clamp(40px, 5vw, 56px);--text-stat: 40px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 24px;--radius-xl: 24px;--radius-pill: 999px;--radius-image: 18px;--shadow-sm: 0 1px 2px rgb(19 40 28 / .08);--shadow-lift: 0 24px 40px -24px rgb(19 40 28 / .45);--shadow-accent: 0 12px 24px -10px rgb(196 72 27 / .7);--shadow-lg: 0 -2px 12px #3c49281a;--control-height: 44px;--content-width: 1256px;--tabbar-height: 64px;--motion-ui: .15s;--motion-layout: .25s;--motion-progress: .9s;--ease-progress: cubic-bezier(.2,.7,.2,1);--ease-celebrate: cubic-bezier(.2,1.4,.4,1);--transition: var(--motion-ui) ease;--transition-enter: var(--motion-layout) ease;--checkbox-size: 22px;--cook-panel-min: 220px;--cook-panel-max: 280px;--cook-reading-width: 60ch;--cook-amount-min: 3.5em;--cook-nav-height: calc(var(--control-height) + var(--space-4) + 2 * var(--space-3));--icon-size: 20px;--opacity-dimmed: .6;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);font-variant-numeric:tabular-nums;font-synthesis:none;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:var(--color-link);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);border:0;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-primary-text);padding:10px 17px;cursor:pointer;text-decoration:none;font-weight:700;transition:background-color var(--transition)}button:hover,.button:hover{background:var(--color-primary-hover)}button:disabled{opacity:.55;cursor:not-allowed}button:disabled:hover{background:var(--color-primary)}button[aria-busy=true]{cursor:progress}.accent{background:var(--color-accent);color:var(--color-primary-text)}.accent:hover{background:var(--color-accent-hover)}.quiet{background:transparent;color:var(--ink)}.quiet:hover,.quiet:disabled:hover{background:var(--color-surface-sunken-hover)}.actions{display:flex;gap:var(--space-2);flex-wrap:wrap}header{max-width:1320px;margin:auto;padding:var(--space-5) var(--space-6);display:flex;align-items:center;justify-content:space-between}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.brand{font:800 var(--text-xl) var(--font-serif);letter-spacing:-.03em;text-decoration:none;color:var(--color-brand)}.brand span{display:block;font:var(--text-xs) var(--font-sans);letter-spacing:.07em;color:var(--color-text-muted);margin-top:2px}nav{border-block:1px solid var(--color-border);display:flex;justify-content:center;gap:var(--space-6);padding:var(--space-3) 20px;background:var(--color-surface-raised)}nav a{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);text-decoration:none;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--color-text-muted)}nav a:hover{color:var(--color-text-strong)}nav a.active{background:var(--ink);color:var(--bg);font-weight:700}.nav-icon{display:inline-flex;align-items:center}main{max-width:var(--content-width);margin:35px auto;padding:0 var(--space-6);min-height:65vh}h1,h2,h3{line-height:1.25}h1,h2{font-family:var(--font-serif);font-weight:800;letter-spacing:-.03em;font-optical-sizing:auto}h1{font-size:var(--text-3xl);font-weight:800;margin:var(--space-2) 0 17px}h2{font-size:var(--text-xl);font-weight:800}h3{font-size:var(--text-base)}p{margin:var(--space-3) 0}.intro{color:var(--color-text-muted);font-size:var(--text-md);margin-bottom:var(--space-6)}.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--color-text-warm)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin:22px 0;box-shadow:var(--shadow-sm)}.card h2:first-child{margin-top:0}.hero{background:var(--color-sage-100);border-radius:var(--radius-xl);padding:35px;display:flex;gap:var(--space-6);justify-content:space-between;align-items:center;margin:28px 0}.hero h2{font-size:var(--text-2xl);margin:0}.stat{background:var(--color-surface);padding:20px;border-radius:var(--radius-lg);min-width:160px;text-align:center}.stat strong{display:block;font:800 var(--text-stat) var(--font-serif);color:var(--color-accent)}.columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.columns .card{margin:0 0 22px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.cards .card{margin:0}.recipe{border-top:4px solid var(--color-sage-300)}.recipe h2 a{text-decoration:none}img.recipe-photo,.recipe-photo img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover;border-radius:8px}figure.recipe-photo{margin:0 0 16px;max-width:720px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span,.tag,.badge{background:var(--color-sage-50);border-radius:var(--radius-pill);padding:3px var(--space-2);font-size:var(--text-xs)}.title{display:flex;justify-content:space-between;align-items:center;gap:20px}.filters,.form-row{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:end}.filters{margin:var(--space-5) 0}.filters label:first-child{flex:1;min-width:220px}label{display:flex;flex-direction:column;font-size:var(--text-sm);font-weight:600;gap:6px;margin:var(--space-3) 0}input,select,textarea{padding:9px 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);max-width:100%;min-width:0}input:not([type=checkbox]):not([type=radio]),select:not([multiple]){min-height:var(--control-height)}input[type=number]{width:100px}textarea{width:100%;resize:vertical}.check{flex-direction:row;align-items:center;gap:9px;min-height:var(--control-height)}.check input{accent-color:var(--color-primary);width:18px;height:18px;flex-shrink:0}.hint{font-size:var(--text-sm);color:var(--color-text-warm);background:var(--color-hint-bg);border-radius:6px;padding:9px var(--space-3)}.week-nav{display:flex;align-items:center;justify-content:space-between;gap:10px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2);margin:var(--space-5) 0}.day{border:1px solid var(--color-border);border-radius:9px;background:var(--color-surface);padding:10px;min-width:0}.day>h2{text-transform:capitalize;font-size:var(--text-lg)}.slot{border-top:1px solid var(--color-border);min-height:58px}.slot h3{text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.1em;color:var(--color-text-muted)}.slot article{font-size:var(--text-xs);overflow-wrap:anywhere;margin-bottom:var(--space-4)}.slot button{padding:6px var(--space-2);font-size:var(--text-xs)}.slot .form-row{display:block}.slot input:not([type=checkbox]):not([type=radio]),.slot select{width:100%}.slot .cook{padding:0}.shopping{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 20px}.done{text-decoration:line-through;color:var(--color-text-muted)}.catalog>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.catalog span{font-size:var(--text-sm);color:var(--color-text-muted)}.auth{max-width:540px;margin:50px auto}.auth form button{width:100%;margin-top:15px}.auth input{width:100%}li{margin-bottom:10px}details{border-top:1px solid var(--color-border);padding:13px 0}summary{cursor:pointer;font-weight:600;min-height:var(--control-height);display:flex;align-items:center;gap:var(--space-2);list-style:none}summary::-webkit-details-marker{display:none}summary:before{content:"";flex-shrink:0;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform var(--transition)}details[open]>summary:before{transform:rotate(45deg)}.lesson{white-space:pre-wrap}footer{padding:35px;text-align:center;color:var(--color-text-muted);font-size:var(--text-xs)}.empty-state{text-align:center;padding:var(--space-5) var(--space-4);color:var(--color-text-muted);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);margin:var(--space-3) 0}.empty-state p{margin:var(--space-2) 0}.empty-icon{display:flex;justify-content:center;font-size:var(--text-2xl);line-height:1}.empty-title{font-weight:700;color:var(--color-text)}.skeleton{display:block;background:linear-gradient(90deg,var(--color-surface-sunken) 25%,var(--color-sage-50) 50%,var(--color-surface-sunken) 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:shimmer 1.4s ease-in-out infinite}.skeleton-line{height:14px;margin:var(--space-3) 0}.skeleton-line.title{height:24px;width:55%}.skeleton-line.short{width:30%;height:10px}.skeleton-line:last-child:not(.title){width:80%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;top:-80px;left:10px;background:var(--surface);padding:10px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}[role=alert]{color:var(--color-danger)}button+button{margin-left:var(--space-2)}form>button{margin-top:var(--space-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(max-width:1000px){.week-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){header{padding:20px}nav{position:fixed;inset:auto 0 0 0;z-index:5;gap:0;padding:var(--space-1) var(--space-1) calc(var(--space-1) + env(safe-area-inset-bottom));border-bottom:0;justify-content:space-around;box-shadow:var(--shadow-lg)}nav a{flex:1;flex-direction:column;gap:2px;min-height:52px;padding:var(--space-1) 2px;font-size:var(--text-xs);line-height:1.2;text-align:center}body{padding-bottom:var(--tabbar-height)}html{scroll-padding-bottom:calc(var(--tabbar-height) + var(--space-3))}:focus-visible{scroll-margin-bottom:calc(var(--tabbar-height) + var(--space-3))}main{padding:0 17px;margin-top:var(--space-5)}.columns{grid-template-columns:1fr;gap:0}.cards{grid-template-columns:1fr}.hero{padding:22px;display:block}.stat{margin-top:20px}.title{display:block}.title .actions{margin-bottom:var(--space-3)}.week-grid{grid-template-columns:1fr}.day{padding:var(--space-4)}.slot article{font-size:14px}.slot .form-row{display:flex}.slot input:not([type=checkbox]):not([type=radio]){width:90px}.week-nav{font-size:var(--text-xs)}.week-nav button{padding:var(--space-2)}.card{padding:20px}.form-row>label{flex:1;min-width:110px}.catalog button{font-size:var(--text-xs);padding:var(--space-2)}.auth{margin-top:20px}}.cook-mode{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;overflow-y:auto;background:var(--color-bg);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.cook-layout{display:grid;grid-template-columns:minmax(var(--cook-panel-min),var(--cook-panel-max)) minmax(0,1fr);grid-template-areas:"bar bar" "panel stage";gap:var(--space-5);max-width:var(--content-width);margin:0 auto}.cook-bar{grid-area:bar;display:flex;align-items:center;gap:var(--space-3)}.cook-title{flex:1;margin:0;font-family:var(--font-serif);font-size:var(--text-lg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cook-panel-toggle{display:none}.cook-panel{grid-area:panel;align-self:start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.cook-panel h2{margin-top:0}.servings{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.servings button{min-width:var(--control-height);margin:0;font-size:var(--text-xl)}.checklist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:var(--checkbox-size) minmax(var(--cook-amount-min),max-content) minmax(0,1fr);column-gap:var(--space-3)}.checklist li{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;border-bottom:1px solid var(--color-border)}.checklist li:last-child{border-bottom:0}.checklist label{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:baseline;min-height:var(--control-height);margin:0;padding:var(--space-2) 0;font-size:var(--text-base);font-weight:400;line-height:1.4;cursor:pointer}.checklist input{width:var(--checkbox-size);height:var(--checkbox-size);margin:0;padding:0;align-self:start;accent-color:var(--color-primary)}.checklist-amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.checklist-name{min-width:0}.ingredient-optional{color:var(--color-text-muted)}.ingredient-note{display:block;font-size:var(--text-sm);font-style:italic;color:var(--color-text-muted)}.checklist input:checked~*{color:var(--color-text-muted);text-decoration:line-through;opacity:var(--opacity-dimmed)}.cook-stage{grid-area:stage;display:flex;flex-direction:column;gap:var(--space-4);min-height:70vh}.cook-progress{display:flex;flex-direction:column;gap:var(--space-2);font-weight:600;color:var(--color-text-warm)}.cook-step{flex:1;max-width:var(--cook-reading-width)}.step-ingredients{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.step-ingredients li{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-sage-100);font-size:var(--text-sm)}.step-ingredients strong{font-variant-numeric:tabular-nums}.step-ingredients .ingredient-note{display:inline}.step-ingredients .ingredient-note:before{content:" · "}.cook-step h1:focus{outline:none}.cook-step h1:focus-visible{outline:3px solid var(--color-focus)}.cook-text{font-size:var(--text-xl);line-height:1.7;max-width:var(--cook-reading-width);margin:var(--space-5) 0}@media(prefers-reduced-motion:no-preference){.cook-step{animation:cook-in var(--transition-enter)}}@keyframes cook-in{0%{opacity:0;transform:translateY(var(--space-2))}}.timers{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-3)}.timer{display:inline-flex;align-items:center;gap:var(--space-2)}.timer-pill{min-height:var(--control-height);padding:var(--space-1) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface)}div.timer-pill{padding-right:var(--space-1)}.timer-icon{width:var(--icon-size);height:var(--icon-size);flex:none}.timer-label{font-size:var(--text-sm);color:var(--color-text-muted)}.timer-state{font-weight:600}.timer-pill button{border-radius:var(--radius-pill)}.timer.running{border-color:var(--color-accent);color:var(--color-accent)}.timer.running .timer-label{color:var(--color-accent)}.timer button{margin:0}.timer-clock{font-size:var(--text-xl);font-weight:700;font-variant-numeric:tabular-nums}.timer.done{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--accent-text)}.cook-nav{display:flex;gap:var(--space-3);position:sticky;bottom:0;padding:var(--space-3) 0;background:var(--color-bg)}.cook-nav button{flex:1;margin:0;min-height:calc(var(--control-height) + var(--space-4));font-size:var(--text-lg)}.start-cooking{min-height:calc(var(--control-height) + var(--space-2));font-size:var(--text-lg)}@media(max-width:1000px){.cook-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"bar" "panel" "stage";gap:var(--space-4)}.cook-panel-toggle{display:inline-flex}.cook-panel{display:none}.cook-panel.open{display:block}.cook-mode{padding-bottom:calc(var(--cook-nav-height) + var(--space-4) + env(safe-area-inset-bottom));scroll-padding-bottom:calc(var(--cook-nav-height) + env(safe-area-inset-bottom))}.cook-nav{position:fixed;left:0;right:0;bottom:0;z-index:1;padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);box-shadow:var(--shadow-lg)}}.settings-list{list-style:none;padding:0;margin:0}.setting{flex-direction:row;align-items:center;gap:var(--space-3);min-height:var(--control-height);margin:0;padding:var(--space-2) 0;font-size:var(--text-base);font-weight:500;cursor:pointer}.setting input{width:var(--checkbox-size);height:var(--checkbox-size);margin:0;padding:0;flex:none;accent-color:var(--color-primary)}.setting-description{margin:calc(-1 * var(--space-2)) 0 var(--space-2) calc(var(--checkbox-size) + var(--space-3));font-size:var(--text-sm);font-weight:400;color:var(--color-text-muted)}h1 em,h2 em{color:var(--accent-text)}button:not(.quiet):not(.secondary):not(.dark):not(.chip),.button:not(.quiet):not(.secondary):not(.dark){box-shadow:var(--shadow-accent)}.secondary,.chip{background:var(--surface);color:var(--ink);border:1.5px solid var(--ink);box-shadow:none}.secondary:hover,.secondary:disabled:hover,.dark,.chip[aria-pressed=true]{background:var(--ink);color:var(--bg)}.dark:hover,.dark:disabled:hover{background:var(--inverse-hover)}.chip:hover{background:var(--color-surface-sunken);color:var(--ink)}.chip[aria-pressed=true]:hover{background:var(--inverse-hover);color:var(--bg)}.card img{border-radius:var(--radius-image)}.card-dark{--color-text: #FAF6EE;--color-text-muted: #C9D6CC;--color-text-warm: var(--xp);background:var(--dark-surface);color:#faf6ee;border-color:var(--dark-surface)}.card-mint{--color-text: #13281C;--color-text-muted: #4A5A4F;--color-text-warm: #13281C;background:var(--mint);color:#13281c;border-color:var(--mint)}.card-accent{--color-text: #FFFFFF;--color-text-muted: #FFFFFF;--color-text-warm: #FFFFFF;background:var(--accent);color:#fff;border-color:var(--accent)}.card-dark a,.card-dark .empty-title{color:#faf6ee}.card-dark .eyebrow{color:var(--xp)}.card-dark .empty-state{color:#c9d6cc}.card-mint a,.card-mint .eyebrow{color:#13281c}.card-accent a,.card-accent .eyebrow{color:#fff}.pill{display:inline-block;background:var(--mint);color:#13281c;border-radius:var(--radius-pill);padding:5px 12px;font-size:var(--text-sm);font-weight:700}.progress-bar{display:block;width:100%;height:10px;background:var(--color-surface-sunken);border-radius:var(--radius-pill);overflow:hidden;margin:var(--space-3) 0}.progress-fill{display:block;height:100%;width:var(--progress);background:var(--xp);border-radius:inherit;transition:width var(--motion-progress) var(--ease-progress);animation:progress-in var(--motion-progress) var(--ease-progress)}.card-dark .progress-bar{background:var(--dark-progress-track)}@keyframes progress-in{0%{width:0}}.ring{display:inline-grid;place-items:center;position:relative;width:84px;height:84px;flex:none;border-radius:50%;background:var(--dark-surface);color:var(--xp)}.ring svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:6}.ring-track{stroke:var(--dark-progress-track)}.ring-fill{stroke:var(--xp);transition:stroke-dasharray var(--motion-progress) var(--ease-progress);animation:ring-in var(--motion-progress) var(--ease-progress)}.ring b{font:800 var(--text-xl) var(--font-serif)}.sticker{display:inline-block;padding:8px 14px;background:var(--xp);color:#13281c;border-radius:var(--radius-pill);font-weight:700;transform:rotate(6deg);box-shadow:var(--shadow-lift)}.empty-icon svg{width:32px;height:32px;stroke-width:2}:root[data-theme=dark]{color-scheme:dark;--bg: #13281C;--ink: #FAF6EE;--surface: #1A2B21;--ink-muted: #C9D6CC;--accent-text: #FF9C75;--border: #42564A;--focus: #88B5FF;--success: #93D7A5;--color-surface-sunken: #2C4335;--color-surface-sunken-hover: #344C3C;--color-sage-50: #2C4335;--color-sage-100: #2C4335;--color-sage-150: #2C4335;--color-hint-bg: #2C4335;--color-accent-soft: #3E2B21;--color-danger: #FFAAA0;--color-border-strong: #82998B;--dark-surface: #2C4335;--inverse-hover: #E3D8C1}:root[data-theme=dark] .hero{color:var(--ink)}:root[data-theme=dark] .stat strong,:root[data-theme=dark] .timer.running,:root[data-theme=dark] .timer.running .timer-label{color:var(--accent-text)}.card-mint .empty-state,.card-mint .empty-title,.card-mint .done{color:#13281c}.card-accent .empty-state,.card-accent .empty-title{color:#fff}@keyframes ring-in{0%{stroke-dasharray:0 100}}.recipe-filter-chips{display:flex;gap:var(--space-2);flex-wrap:wrap;padding-bottom:var(--space-3)}.recipe-filter-chips button+button{margin-left:0}.recipe-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.recipe-grid .recipe{padding:8px;border-top:1px solid var(--border);overflow:hidden;transition:box-shadow var(--motion-layout),transform var(--motion-layout)}.recipe-grid .recipe:hover,.recipe-grid .recipe:focus-within{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.recipe-image-link{display:block;border-radius:var(--radius-image);text-decoration:none}.recipe-photo{aspect-ratio:4 / 3;overflow:hidden;border-radius:var(--radius-image);background:var(--color-surface-sunken)}.recipe-photo img{display:block;width:100%;height:100%;object-fit:cover}.recipe-photo-empty{display:flex;height:100%;min-height:160px;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-2);color:var(--ink-muted);font-size:var(--text-sm)}.recipe-photo-empty svg{width:28px;height:28px}.recipe-card-body{padding:4px 12px 12px}.recipe-card-body h2{font-size:var(--text-lg);margin:var(--space-2) 0 var(--space-3)}.recipe-card-body h2 a{color:var(--ink)}.recipe-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-muted);font-size:var(--text-sm)}.recipe-meta{display:flex;gap:var(--space-4);flex-wrap:wrap;color:var(--ink-muted);font-size:var(--text-sm)}.recipe-meta span{display:inline-flex;align-items:center;gap:6px}.recipe-meta svg{width:16px;height:16px;flex:none}.recipe-card-body>p:last-child{font-size:var(--text-xs);color:var(--ink-muted)}.recipe-detail-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-6);padding:var(--space-3);margin:var(--space-5) 0 var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.recipe-detail-summary{padding:var(--space-4)}.recipe-detail-summary h1{font-size:clamp(28px,4vw,56px);line-height:1.05}.recipe-detail-summary .intro{margin-bottom:var(--space-4)}.recipe-detail-summary .tags{margin:var(--space-4) 0}.planner-help{color:var(--ink-muted);font-size:var(--text-sm)}.planner-board{overflow-x:auto;max-width:100%;padding:var(--space-1);border-radius:var(--radius-lg)}.planner-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.calendar-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-block:16px;margin-bottom:16px;border-bottom:1px solid var(--border)}.calendar-week-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;flex:1 1 300px;max-width:420px;margin-right:auto}.calendar-week-navigation strong{font-size:18px;text-align:center}.calendar-week-navigation button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px}@media(max-width:640px){.calendar-week-navigation{flex-basis:100%;max-width:none}.calendar-toolbar>button{flex:1}}.planner-scroll-controls{display:flex;flex-shrink:0;gap:8px}.planner-scroll-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--border)}.planner-board .week-grid{grid-template-rows:auto repeat(4,minmax(100px,auto));grid-template-columns:repeat(7,minmax(320px,1fr));gap:var(--space-3);margin-top:var(--space-2);align-items:stretch}.planner-board .day{display:grid;grid-row:span 5;grid-template-rows:subgrid;border-radius:var(--radius-image);padding:var(--space-3)}.planner-board .day>h2{position:sticky;top:calc(-1 * var(--space-1));z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;margin:0 calc(-1 * var(--space-3)) var(--space-2);padding:var(--space-2) var(--space-3);background:inherit;background-color:var(--color-surface)}.planner-board .day.today>h2{color:var(--ink)}.today-badge{padding:2px 8px;border-radius:999px;background:var(--ink);color:var(--color-surface);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.planner-board .slot{min-width:0;min-height:56px;padding-bottom:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition),outline-color var(--transition)}.planner-board .slot.drag-active{min-height:90px}.planner-board .slot.drop-target{background:var(--color-surface-sunken);outline:2px dashed var(--ink);outline-offset:2px}.plan-entry{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.plan-entry>a{display:block;font-weight:700;color:var(--ink)}.plan-entry.is-dragging{opacity:.65}.planner-board .plan-entry{min-width:0;overflow-wrap:break-word}.plan-entry>.button{margin-block:var(--space-2)}.meal-card-heading{display:flex;align-items:flex-start;gap:8px}.meal-card-heading h4{flex:1;min-width:0;margin:2px 0;font-size:15px;line-height:1.45}.meal-card-heading h4 a{color:var(--ink);text-decoration:none}.meal-card-heading h4 a:hover{text-decoration:underline}.meal-card-heading .meal-drag-handle{flex-shrink:0;padding:2px}.meal-card-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.meal-card-summary .meal-card-expand{display:inline-flex;align-items:center;gap:5px;padding:4px 0;white-space:nowrap}.meal-card-expand[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.meal-prep-badge,.meal-cooked-badge{display:inline-flex;align-items:center;gap:4px;border-radius:6px;padding:3px 6px;font-size:11px}.meal-prep-badge{background:#fff3cf;color:#7a3d12}.meal-cooked-badge{background:#cfe8c8;color:#13281c}.meal-card-editor{margin-top:10px;border-top:1px solid var(--border);padding-top:6px}.meal-card-editor>.button{display:block;text-align:center}.meal-card-menu{position:relative;flex-shrink:0}.meal-card-menu .meal-options{display:flex;padding:2px;min-width:28px;min-height:28px;align-items:center;justify-content:center}.meal-card-menu-panel{position:absolute;right:0;top:100%;z-index:2;padding:4px;min-width:130px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm)}.meal-card-menu-panel button{width:100%;white-space:nowrap;text-align:left}.meal-undo{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:16px;width:max-content;max-width:calc(100vw - 32px);padding:12px 18px;border-radius:14px;background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-lift)}@media(max-width:640px){.meal-undo{bottom:88px}}.meal-drag-handle{display:inline-flex;padding:4px;cursor:grab;color:var(--ink-muted)}.meal-drag-handle:active{cursor:grabbing}.shopping-summary{color:#4a5a4f;font-size:var(--text-sm)}.pantry-controls{margin-block:20px}.pantry-controls fieldset{padding:0;border:0;margin:0 0 12px;min-width:0}.pantry-controls legend{font-weight:700;margin-bottom:10px}.pantry-manager{margin-block:12px}.pantry-manager ul{list-style:none;padding:0}.pantry-manager li{display:flex;align-items:center;justify-content:space-between;gap:12px}.pantry-add{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.pantry-add label{flex:1 1 220px}.shopping-aisle h3{font:700 var(--text-xs) var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:#13281c;margin-top:var(--space-5)}.shopping-aisle .check{background:#fff;color:#13281c;border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);font-weight:500}.shopping-aisle .check.done span{text-decoration:line-through}.card-mint .chip{background:#fff;color:#13281c;border-color:#13281c}.card-mint .chip[aria-pressed=true]{background:#13281c;color:#faf6ee}@media(max-width:1100px){.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-detail-hero{grid-template-columns:1fr;gap:0}}@media(max-width:480px){.recipe-grid{grid-template-columns:1fr}}.recipe-card-body .tag,.recipe-detail-summary .tag{background:var(--mint);color:#13281c}header{gap:24px}header .brand{white-space:nowrap;font-size:clamp(22px,2.5vw,28px)}header .brand .brand-dot{display:inline;font:inherit;color:var(--accent-text)}header nav{position:static;margin:0 auto;border:0;background:transparent;gap:4px;padding:0}.avatar-menu{position:relative}.avatar-button{border-radius:50%;width:44px;padding:0;background:var(--xp);color:#13281c;font-weight:700}.avatar-links{position:absolute;top:54px;right:0;z-index:20;width:170px;padding:12px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-lift)}.avatar-links a,.avatar-links button{display:block;width:100%;padding:12px;text-align:left}.kitchen-tabs,.today-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:16px}.today-page{display:grid;gap:28px}.today-essentials{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:start}.today-essentials.no-shopping{grid-template-columns:1fr}.today-meals{display:grid;gap:18px;min-width:0}.today-meals>.card,.today-shopping{margin:0}.today-other-meals h2,.today-prep h2{font-size:23px}.today-other-meals ul,.today-prep ul,.today-aisle ul{list-style:none;margin:0;padding:0}.today-other-meals li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}.today-other-meals li+li{border-top:1px solid var(--border)}.today-other-meals li>div{display:grid;gap:4px;min-width:0}.today-other-meals .eyebrow{margin:0}.today-other-meals a,.today-prep a{overflow-wrap:anywhere}.today-meal-status{flex-shrink:0;font-size:12px;padding:4px 8px;border-radius:var(--radius-pill);background:var(--color-surface-sunken)}.today-prep li{margin-bottom:12px}.today-prep-clear{font-size:14px;margin:0;color:var(--ink-muted)}.tonight-hero{position:relative;min-height:420px;border-radius:24px;background:var(--surface)}.tonight-hero .recipe-photo{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;border-radius:24px}.tonight-hero .recipe-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;background:linear-gradient(transparent,#13281c 95%)}.tonight-hero .sticker{position:absolute;top:-12px;right:-8px;z-index:2}.tonight-copy{position:relative;padding:180px 28px 24px;color:#faf6ee}.tonight-copy h2{font-size:clamp(30px,4vw,48px);line-height:1.1;color:inherit}.tonight-copy p,.tonight-copy .eyebrow{color:inherit}.tonight-empty{padding:48px 32px}.tonight-empty h2{font-size:40px}.today-level{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.today-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.today-week{list-style:none;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.today-week a{display:flex;height:100%;flex-direction:column;gap:8px;padding:18px 14px;background:var(--surface);border:1px solid var(--border);border-radius:20px;text-decoration:none;color:var(--ink)}.today-week a.is-today{background:var(--ink);color:var(--bg)}.today-week strong{font:800 32px var(--font-serif)}.today-week a>span:first-child{text-transform:uppercase;font-size:12px;font-weight:700}.day-meal{font-size:13px;overflow-wrap:anywhere}.today-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.today-panels h2{font-size:23px}.today-item{margin-block:22px}.today-item h3{font-size:18px}.today-aisle h3{font:700 12px var(--font-sans);text-transform:uppercase;margin-top:18px}.today-ingredient-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-block:9px;border-bottom:1px solid rgb(19 40 28 / .15);font-size:14px}.today-ingredient-row>span:first-child{overflow-wrap:anywhere}.today-ingredient-amount{flex-shrink:0;font-variant-numeric:tabular-nums}.today-shopping-count{font-weight:700}.today-shopping-more{font-size:13px}.today-shopping>a{display:inline-block;margin-top:14px}.today-week-hint{font-size:13px;color:var(--ink-muted);margin:4px 0 8px}.today-loading{display:grid;gap:28px}.today-hero-placeholder{height:420px;border-radius:24px}.today-summary-placeholder{height:300px;border-radius:24px}.today-week-placeholder{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.today-week-placeholder>div{height:150px;border-radius:20px}.today-support-placeholder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.today-support-placeholder>div{height:210px;border-radius:24px}@media(max-width:900px){header{flex-wrap:wrap}header nav{order:3;flex-basis:100%;justify-content:center}.avatar-menu{margin-left:auto}.today-essentials,.today-panels{grid-template-columns:1fr}.today-week{grid-template-columns:repeat(7,minmax(130px,1fr));overflow-x:auto;padding-bottom:8px}.today-week-placeholder{grid-template-columns:repeat(3,minmax(0,1fr))}.today-week-placeholder>div:nth-child(n+4){display:none}.today-support-placeholder{grid-template-columns:1fr}}@media(max-width:600px){header nav a{flex:1;justify-content:center;gap:5px;padding:8px 4px;font-size:12px;flex-direction:column}.tonight-copy{padding-inline:20px}}.tonight-copy{padding-top:24px;margin-top:180px;background:#13281c;border-radius:0 0 24px 24px}.tonight-hero .recipe-photo{aspect-ratio:auto}.tonight-hero .recipe-photo-empty{justify-content:flex-start;padding-top:36px}.tonight-hero .recipe-photo:after{background:linear-gradient(transparent 100px,#13281c 180px)}header nav{box-shadow:none}@media(max-width:640px){body{padding-bottom:0}}.today-page,.today-page>*,.today-essentials>*,.today-panels>*{min-width:0}.today-panels{align-items:start}.today-level{gap:12px}.today-level .ring{flex-shrink:0}.today-level h2{margin:4px 0}.today-level p{margin:0}.today-streak{font-size:14px;margin-block:18px}.today-progress-details{border-top:1px solid var(--dark-progress-track);padding-top:14px;margin-top:18px;font-size:14px}.today-progress-details summary{cursor:pointer;min-height:32px}.today-progress-details summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:4px}.today-progress-details p{margin:12px 0 0}.today-panels>.card{margin-block:0}.today-tool{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:18px}.today-tool h3,.today-tool h4{font:700 16px var(--font-sans);margin:0 0 8px;overflow-wrap:anywhere}.today-tool a{flex-shrink:0;font-size:13px}.today-idle-tools{border-top:1px solid var(--border);margin-top:12px;padding-top:16px}.today-idle-tools>h3{font:700 14px var(--font-sans);margin:0}.today-tool-badge{display:inline-block;padding:4px 8px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);color:var(--ink);font-size:12px}.day.is-selected{outline:2px solid var(--accent-text);outline-offset:-2px}.selected-day-label{display:block;font:700 12px var(--font-sans);color:var(--accent-text);margin-top:6px}.tonight-hero.no-photo{background:#13281c;display:flex;align-items:center}.tonight-hero.no-photo .tonight-copy{margin-top:0;background:transparent;padding-block:40px}.cook-stage{background:var(--accent);color:#fff;border-radius:var(--radius-lg);padding:clamp(20px,3vw,40px)}.cook-stage .cook-progress{color:#fff}.cook-segments{display:flex;gap:6px;margin-block:12px 20px}.cook-segments span{flex:1;height:6px;border:1px solid #FFFFFF;border-radius:999px}.cook-segments .complete,.cook-segments .current{background:#fff}.cook-segments .current{height:10px;margin-top:-2px}.cook-stage .cook-text{font:800 clamp(28px,3.4vw,48px)/1.16 var(--font-serif);letter-spacing:-.03em;max-width:28ch}.cook-stage .cook-step{max-width:none}.cook-stage .hint{color:#fff;background:var(--accent-hover)}.cook-stage .step-ingredients{color:#13281c}.cook-stage .ingredient-note{color:#4a5a4f}.cook-stage .cook-nav button{background:#fff;color:#13281c;border-color:#fff}.cook-stage .cook-nav button:disabled{opacity:1;background:var(--accent-hover);color:#fff}.cook-stage .timer,.cook-stage .cook.form-row{background:var(--surface);color:var(--ink);border-radius:18px}.cook-stage .cook.form-row{padding:20px}.cook-stage .timer.done{color:var(--accent-text);background:var(--color-accent-soft)}.streak-card{display:flex;justify-content:space-between;gap:20px;align-items:center}@media(max-width:640px){.streak-card{flex-direction:column;align-items:start}}.command-trigger{display:inline-flex;gap:8px;align-items:center;white-space:nowrap}.command-dialog{width:min(600px,calc(100vw - 32px));max-height:80dvh;overflow:auto;margin:8vh auto;padding:24px;border:1px solid var(--color-border-strong);border-radius:24px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lift)}.command-dialog::backdrop{background:#0000008c}.command-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.command-heading h2{margin:0}.command-results a{display:flex;gap:12px;justify-content:space-between;border-radius:12px;padding:12px;color:var(--ink);text-decoration:none}.command-results a:hover,.command-results a:focus-visible{background:var(--color-surface-sunken)}.contextual-ai summary{font-weight:700;cursor:pointer;padding-block:12px}.contextual-ai textarea{margin-top:12px}.meal-suggestions fieldset{border:0;padding:0;margin:20px 0;min-width:0}.meal-suggestions legend{font-weight:700;margin-bottom:10px}.suggestion-choices,.suggestion-actions{display:flex;flex-wrap:wrap;gap:10px}.meal-suggestions input[type=number]{display:block;width:100px;margin-top:8px}.meal-suggestions .check{margin-block:20px}.suggestion-actions{align-items:center;margin-top:20px}.suggestion-preview{border-top:1px solid var(--color-border);margin-top:24px;padding-top:16px}.suggestion-preview h4{margin:20px 0 8px}.suggestion-preview ul{list-style:none;padding:0}.suggestion-preview li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;padding-block:8px}.suggestion-slot{text-transform:capitalize}.suggestion-loading{display:flex;align-items:center;gap:10px}.save-indicator{display:inline-flex;align-items:center;flex-shrink:0;vertical-align:middle}.suggestion-spinner{animation:suggestion-spin 1s linear infinite}@keyframes suggestion-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.suggestion-spinner{animation:none}}@media(max-width:1050px){.command-trigger span{display:none}}.celebration{display:flex;align-items:start;gap:16px;padding:24px;border-radius:24px;background:var(--xp);color:#13281c;animation:celebrate-in .4s var(--ease-progress)}.celebration h2{margin-top:0;font-size:26px}.celebration p{color:#13281c}@keyframes celebrate-in{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.celebration{animation:none}}.cook-stage :focus-visible{outline-color:#fff}.cook-stage .step-ingredients li{background:var(--mint);color:#13281c}.cook-stage .cook-nav{background:transparent}@media(max-width:1000px){.cook-stage .cook-nav{background:var(--bg)}}.picker-heading,.picker-pages,.shopping-tools,.meal-servings{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.picker-heading,.picker-pages{justify-content:space-between}.picker-list{border:0;padding:0;max-height:35dvh;overflow-y:auto}.picker-option{padding:var(--space-3);border-bottom:1px solid var(--border)}.picker-meta{display:block;color:var(--ink-muted);font-size:var(--text-sm)}.recipe-picker-dialog .form-row{margin-block:var(--space-4)}.meal-servings{flex-wrap:nowrap;align-items:flex-end;margin-block:var(--space-3)}.meal-servings label{flex:1;min-width:72px;margin:0;white-space:nowrap}.meal-servings input{display:block;width:100%;min-width:72px;margin-top:4px;text-align:center}.meal-servings button{padding-inline:var(--space-2);flex-shrink:0}.slot-add{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:32px;margin-top:var(--space-1);padding:4px 8px;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--text-xs);opacity:.7;transition:opacity var(--transition),background var(--transition)}.planner-board .slot-add{box-shadow:none}.slot-add:hover,.slot-add:focus-visible{opacity:1;background:var(--color-surface-sunken);color:var(--ink)}.slot.drag-active .slot-add{display:none}.planner-board .day.today{outline:2px solid var(--ink);outline-offset:-2px}.shopping-tools{margin-block:var(--space-3)}@media(max-width:640px){.planner-scroll-controls,.planner-scroll-hint{display:none}.planner-board .week-grid{display:flex;flex-direction:column}.planner-board .day{display:block}.planner-board .day>h2{justify-content:flex-start;position:static}.planner-board{max-height:none}}@media print{body:has(.planner-shopping) *{visibility:hidden}body:has(.planner-shopping) .planner-shopping,body:has(.planner-shopping) .planner-shopping *{visibility:visible}.planner-shopping{position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:none;background:#fff;color:#000}.planner-shopping button,.planner-shopping [role=status]{display:none}.planner-shopping .shopping-aisle{break-inside:avoid}}.first-kitchen{max-width:1040px;margin:auto;display:grid;gap:1.5rem}.first-kitchen .fk-hero{display:block;position:static;background:var(--surface, #f5e9d7);color:var(--ink);padding:clamp(1.5rem,5vw,4rem);border-radius:28px}.first-kitchen .fk-hero h1{font-size:clamp(2.5rem,7vw,5rem);margin:.3em 0}.first-kitchen .fk-map{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.first-kitchen .fk-map li{padding:1.4rem;border:1px solid currentColor;border-radius:22px;display:flex;gap:1rem}.first-kitchen .fk-map li:last-child{grid-column:1/-1}.first-kitchen .fk-map .current{border-width:3px;background:var(--surface, #f0efe4)}.first-kitchen .fk-map .upcoming{opacity:.7}.first-kitchen .fk-map h2{font-size:1.3rem}.first-kitchen .fk-number{font-size:2rem;font-weight:700}.first-kitchen .fk-badges{display:flex;gap:.8rem;flex-wrap:wrap}.first-kitchen .fk-badges span{border:1px solid currentColor;padding:.7rem 1rem;border-radius:30px}.first-kitchen .fk-choices{list-style:none;padding:0}.first-kitchen .fk-choices li{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:.7rem 0}.first-kitchen .fk-current{padding:clamp(1rem,4vw,2.5rem)}@media(max-width:600px){.first-kitchen .fk-map{grid-template-columns:1fr}}.first-kitchen .fk-celebration{border-left:4px solid currentColor;padding:1rem}@media(prefers-reduced-motion:no-preference){.first-kitchen .fk-celebration{animation:fk-arrive .3s ease-out}@keyframes fk-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}.planner-slot-filter{display:flex;flex-wrap:wrap;gap:8px}.planner-hidden-note{margin:0 0 12px;font-size:.9rem}.suggestion-preview li{align-items:center}.suggestion-preview li select{max-width:220px;margin-left:auto}.suggestion-summary{color:var(--color-text-muted);font-size:var(--text-sm)}.shopping-exact{color:var(--color-text-muted)}.recipe-library-filters{align-items:end}.recipe-more-filters,.recipe-active-filters{flex-basis:100%}.recipe-more-filters summary{cursor:pointer;font-weight:700;padding-block:10px}.recipe-more-filters .form-row{max-width:640px}.recipe-active-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.recipe-active-filters:empty{display:none}.recipe-results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.recipe-results-toolbar>p{margin:0}.recipe-results-toolbar label{display:flex;align-items:center;gap:10px}.recipe-results-toolbar select{width:auto}.recipe-grid .recipe{display:flex;flex-direction:column}.recipe-grid .recipe-card-body{display:flex;flex:1;flex-direction:column;padding-top:12px}.recipe-grid .recipe-card-body h2{min-height:2.8em;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-grid .recipe-description{-webkit-line-clamp:1}.recipe-grid .tags{min-height:28px}.recipe-grid .recipe-tool-status{font-size:var(--text-xs);margin-top:auto;padding-top:14px;margin-bottom:12px}.recipe-tool-status summary{cursor:pointer;padding-block:6px}.recipe-tool-status ul{padding-left:18px}.recipe-tool-status li{margin-block:6px}.recipe-grid .recipe-add-plan{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:44px;width:100%}.recipe-pagination{display:flex;flex-direction:column;align-items:center;margin-block:28px}.add-recipe-plan-fields{border:0;padding:0;display:grid;gap:16px}.add-recipe-plan-fields label{display:grid;gap:6px}@media(max-width:640px){.recipe-results-toolbar{align-items:start;flex-direction:column}.recipe-results-toolbar label,.recipe-results-toolbar select{width:100%}.recipe-grid .recipe-card-body h2{min-height:0}}.planner-board .day{min-width:0;padding:16px}.planner-board .day>h2{flex-wrap:wrap;font-size:18px;margin-inline:-16px;padding-inline:16px;position:static}.planner-board .plan-entry{padding:12px}.planner-board .week-grid{gap:16px}.planner-day-selector{display:none}.planner-meal-actions,.prep-meal-actions{display:flex;flex-wrap:wrap;gap:8px}.planner-meal-actions button{font-size:13px}.meal-card-summary>span{display:inline-flex;align-items:center;gap:4px;font-size:12px}.meal-card-summary .meal-card-expand{min-height:44px;padding-inline:8px}.meal-card-heading .meal-drag-handle{display:none}@media(hover:hover)and (pointer:fine){.meal-card-heading .meal-drag-handle{display:inline-flex}}.meal-card-menu .meal-options,.meal-servings button,.slot-add{min-width:44px;min-height:44px}.meal-cook-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.meal-card-editor{display:grid;gap:10px}.meal-card-editor label,.meal-action-fields label{min-width:0}.meal-card-editor select,.meal-action-fields select{display:block;width:100%}.meal-action-fields{border:0;padding:0;margin:16px 0;display:grid;gap:16px;min-width:0}.meal-action-fields .check{display:flex;align-items:center}.planner-toolbar{flex-wrap:wrap}.picker-filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:12px 0}.picker-option .recipe-photo{width:64px;height:56px;flex:0 0 64px;border-radius:10px}.picker-option .recipe-photo-empty{min-height:0;padding:0;font-size:10px}.picker-option .recipe-photo-empty span{display:none}.picker-selection{padding:12px;border:1px solid var(--border);border-radius:12px}.shopping-completed{margin-block:20px}.shopping-completed .check{margin-block:8px}.shopping-undo{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-block:12px}.planner-suggestions-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(480px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border-radius:20px 0 0 20px;overflow-y:auto}.planner-suggestions-dialog .card{border:0;box-shadow:none;padding:0;margin-block:0}@media(max-width:1000px){.planner-day-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-block:16px}.planner-day-selector button{min-height:48px;padding:6px 2px;font-size:12px;white-space:normal}.planner-day-selector button[aria-pressed=true]{color:var(--bg);background:var(--ink)}.planner-board .slot{padding-block:12px}.planner-board .plan-entry{padding:16px}.planner-suggestions-dialog{inset:auto 0 0;width:100%;height:90dvh;max-width:100%;border-radius:20px 20px 0 0}}.ingredient-readiness{margin-block:12px;font-size:var(--text-sm)}.ingredient-readiness summary{cursor:pointer;padding-block:8px}.ingredient-readiness ul{padding-left:18px}.ingredient-readiness li{display:grid;gap:4px;margin-block:12px}.ingredient-readiness li span,.ingredient-readiness li small{color:var(--ink-muted)}.readiness-badge{font-weight:700}.readiness-badge.ready{color:var(--success)}.readiness-badge.missing{color:var(--accent-text)}.recipe-grid .ingredient-readiness{margin-top:0;font-size:var(--text-xs)}.pantry-stock-row{flex-wrap:wrap;border-bottom:1px solid var(--border);padding-block:16px;gap:12px}.pantry-stock-row>div:first-child{display:grid;gap:4px}.pantry-stock-row>.pantry-add,.pantry-stock-row>[role=alert]{flex-basis:100%}.pantry-stock-row .pantry-add{margin:0}.pantry-stock-row .actions{display:flex;flex-wrap:wrap;gap:8px}.pantry-aliases summary{cursor:pointer;font-weight:700;padding-block:16px}.pantry-aliases li{gap:12px}.pantry-add label{min-width:120px}.purchase-preview{border:0;padding:0;max-height:45vh;overflow-y:auto}.purchase-preview .check{min-height:44px}.cook-pantry-option{flex-basis:100%}.cook-pantry-option>section{padding:16px;background:var(--color-surface-sunken);border-radius:var(--radius-md)}@media(max-width:640px){.pantry-add{display:grid;grid-template-columns:1fr}.pantry-add label{min-width:0}}.pantry-stock-row button,.pantry-aliases button{min-height:44px}.pantry-scan{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;margin-block:12px;border-radius:20px;background:var(--color-hint-bg)}.pantry-scan p{margin:0}.receipt-dialog{width:min(880px,calc(100vw - 32px))}.receipt-drop{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:32px 20px;border:2px dashed var(--color-border-strong);border-radius:20px;background:var(--color-surface-sunken);text-align:center}.receipt-drop.is-dragging{border-color:var(--accent);background:var(--color-accent-soft)}.receipt-drop label.button{display:inline-flex;align-items:center;gap:8px;cursor:pointer;min-height:44px}.receipt-drop label.button:focus-within{outline:3px solid var(--focus);outline-offset:2px}.receipt-reading progress{width:100%;height:12px;accent-color:var(--accent)}.receipt-reading .muted{color:var(--color-text-muted);font-size:var(--text-sm)}.receipt-summary{display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px 16px;border-radius:16px;background:var(--dark-surface);color:#fff}.receipt-summary strong{margin-left:auto;color:var(--xp)}.combobox{position:relative;flex:1 1 220px;min-width:120px}.combobox-field{position:relative;display:block}.combobox-field input{width:100%;padding-right:40px}.combobox-chevron{position:absolute;top:50%;right:14px;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none;transition:transform .15s ease}.combobox-chevron.is-open{transform:translateY(-50%) rotate(180deg)}.combobox-list{position:absolute;top:calc(100% - var(--space-3) + 6px);left:0;right:0;z-index:30;max-height:248px;margin:0;padding:6px;overflow-y:auto;list-style:none;border:1px solid var(--color-border-strong);border-radius:16px;background:var(--color-surface-raised);color:var(--ink);box-shadow:var(--shadow-lift)}.combobox-list[hidden]{display:none}.combobox-list.is-above{top:auto;bottom:calc(var(--space-3) + var(--control-height) + 6px)}.combobox-list li{padding:10px 12px;border-radius:10px;cursor:pointer;overflow-wrap:anywhere}.combobox-list li.is-active{background:var(--color-surface-sunken-hover)}.combobox-list li[aria-selected=true]{font-weight:700}.receipt-rows{list-style:none;padding:0;margin:0}.receipt-row{display:grid;gap:8px;padding-block:14px;border-bottom:1px solid var(--border)}.receipt-row.is-flagged{border-left:4px solid var(--xp);padding-left:12px}.receipt-row.is-skipped{opacity:.62}.receipt-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.receipt-row-head code{flex:1 1 200px;font-size:var(--text-sm);color:var(--color-text-muted);overflow-wrap:anywhere}.receipt-row .pantry-add{margin:0}.receipt-problem{margin:0;color:var(--color-danger);font-size:var(--text-sm);font-weight:700}.pill.confidence-high{background:var(--mint)}.pill.confidence-medium{background:var(--color-hint-bg)}.pill.confidence-low{background:var(--color-accent-soft);color:var(--accent-text)}.pill.receipt-nonfood{background:var(--color-surface-sunken)}.receipt-dialog .dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:16px}.receipt-steps{display:flex;gap:12px;list-style:none;padding:0;margin:0 0 24px}.receipt-steps li{display:flex;align-items:center;gap:8px;flex:1;font-size:var(--text-sm);color:var(--color-text-muted)}.receipt-steps li>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border:1px solid var(--color-border-strong);border-radius:50%}.receipt-steps [aria-current=step]{color:var(--ink);font-weight:700}.receipt-steps [aria-current=step]>span{background:var(--accent);color:var(--color-primary-text);border-color:var(--accent)}.receipt-steps .is-complete>span{background:var(--color-hint-bg)}.receipt-ai-choice{padding:16px;margin-block:16px;border:1px solid var(--color-border-strong);border-radius:16px;background:var(--color-surface-sunken)}.receipt-ai-choice.is-selected{border-color:var(--accent)}.receipt-ai-choice .check{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.receipt-ai-choice p{margin:8px 0}.receipt-optional,.receipt-privacy{font-size:var(--text-sm);color:var(--color-text-muted)}.receipt-ai-choice button{margin-top:8px}.receipt-reading{padding-block:16px 24px}.receipt-reading h3{margin-top:12px}.receipt-review-group{margin-block:24px}.receipt-group-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.receipt-group-heading h3{margin:0}.receipt-group-heading h3 span{font-weight:400;color:var(--color-text-muted)}.receipt-dialog .dialog-actions{position:sticky;bottom:-24px;padding-block:16px;background:var(--surface);border-top:1px solid var(--color-border-strong);z-index:1}.receipt-row.is-skipped{opacity:1}@media(max-width:480px){.receipt-steps{gap:8px}.receipt-steps li{flex-direction:column;align-items:flex-start;gap:6px}}.pantry-product-search{margin-block:24px;padding-block:16px;border-block:1px solid var(--border)}.pantry-product-results{list-style:none;padding:0;display:grid;gap:12px}.pantry-product-results li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px}.pantry-product-results li>div{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.pantry-product-search fieldset{display:flex;flex-wrap:wrap;align-items:end;gap:12px;border:0;padding:0;width:100%}.pantry-product-search fieldset label{display:grid;gap:4px;flex:1 1 160px}.product-attribution{font-size:.85rem}.planner-heading h1{font-size:clamp(32px,3.3vw,46px);margin-block:12px 10px}.planner-heading .title{margin-bottom:0}.planner-heading .title>button{box-shadow:none;flex-shrink:0}.planner-tabs{display:flex;gap:28px;border-bottom:1px solid var(--border);position:static;inset:auto;z-index:auto;justify-content:flex-start;padding:0;border-top:0;background:transparent;box-shadow:none}.planner-tabs a{display:inline-flex;align-items:center;min-height:48px;padding:12px 0;color:var(--ink-muted);text-decoration:none;flex:0 0 auto;flex-direction:row;border-radius:0;font-size:15px}.planner-tabs a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px var(--ink);font-weight:700}.planner-calendar-toolbar{border-bottom:0;margin-bottom:0;gap:8px;padding-block:12px}.planner-calendar-toolbar .calendar-week-navigation{display:flex;flex:0 1 auto;max-width:none;margin-right:0;gap:0}.planner-calendar-toolbar .calendar-week-navigation strong{text-align:left;margin-right:12px;font-size:17px}.planner-current-week{color:var(--ink-muted);font-size:12px;padding:8px}.planner-view-tools{margin-left:auto;display:flex;gap:8px}.planner-menu{position:relative;border:0;padding:0}.planner-menu summary:before{display:none}.planner-menu:not([open])>.planner-menu-panel{display:none}.planner-menu summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border-radius:8px;color:var(--ink-muted);cursor:pointer;list-style:none}.planner-menu summary::-webkit-details-marker{display:none}.planner-menu summary:after{content:"⌄"}.planner-menu summary:hover,.planner-menu[open] summary{background:var(--color-surface-sunken);color:var(--ink)}.planner-menu-panel{position:absolute;right:0;top:calc(100% + 4px);z-index:10;width:230px;padding:8px;background:var(--color-surface-raised);border:1px solid var(--color-border-strong);border-radius:12px;box-shadow:var(--shadow-lift)}.planner-menu-panel button{display:block;width:100%;text-align:left;border-radius:6px;min-height:44px}.planner-menu-panel .check{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;padding:8px}.planner-help{color:var(--ink-muted);font-size:12px;margin-block:4px 12px}.planner-board{border-radius:0;padding:0}.planner-board .week-grid{grid-template-columns:86px repeat(7,minmax(150px,1fr));gap:10px;margin-top:0}.planner-board .day{background:transparent;border:0;border-left:0;border-radius:0;padding:0}.planner-board .day.today,.planner-board .day.is-selected{outline:none}.planner-board .day>h2{font-family:var(--font-sans);font-size:15px;font-weight:600;margin:0;padding:16px 8px;min-height:76px;gap:6px;background:transparent;border-bottom:0;flex-direction:column}.planner-board .day.today .planner-date{background:var(--mint);color:#193323;border-radius:50%}.planner-board .selected-day-label{font-size:10px}.planner-row-labels{display:grid;grid-template-rows:subgrid;color:var(--ink-muted);font-size:11px}.planner-row-labels>div{padding:20px 8px 0 0;border-bottom:0}.planner-board .slot{border-top:1px solid var(--border);border-bottom:0;border-radius:0;padding:12px 0 18px;min-height:142px}.planner-board .slot>h3{display:none}.planner-board .plan-entry{padding:0;border:0;box-shadow:0 3px 6px #00000014;margin-bottom:8px;background:#dce8d5;color:#193323;border-radius:14px}.planner-board .meal-card-heading{gap:2px;flex-wrap:nowrap;align-items:baseline}.planner-board .meal-card-heading h4{font-size:13px;flex:1;overflow-wrap:break-word}.planner-board .meal-card-heading .meal-drag-handle{display:none}.planner-board .meal-card-summary{gap:4px;margin-top:0}.planner-board .meal-card-summary .meal-card-menu{order:3;margin-left:auto}.planner-board .meal-card-summary .meal-card-menu-panel{z-index:4}.planner-board .meal-card-summary .meal-card-expand{font-size:12px}.planner-board .slot-add{border:0;background:transparent;opacity:1;justify-content:flex-start;color:var(--ink-muted);border-radius:6px}.planner-board .slot-add:hover{background:var(--color-surface-sunken);color:var(--ink)}@media(min-width:1500px){.planner-board .week-grid{grid-template-columns:86px repeat(7,minmax(0,1fr))}}@media(max-width:640px){.planner-calendar-toolbar .calendar-week-navigation{flex-basis:auto}.planner-calendar-toolbar .calendar-week-navigation strong{font-size:15px;margin-right:4px}.planner-current-week{display:none}.planner-view-tools{width:100%;justify-content:flex-end}.planner-board .week-grid{display:flex}.planner-row-labels{display:none}.planner-board .day{display:none;border-left:0}.planner-board .day.mobile-active{display:block}.planner-board .slot>h3{display:block;margin-block:8px 12px}.planner-board .slot{min-height:100px;padding:12px 0}.planner-board .plan-entry{padding:0}.planner-board .meal-card-heading h4{font-size:15px}.planner-board .meal-card-heading{flex-wrap:nowrap}.planner-board .day>h2{justify-content:flex-start}}@media(hover:hover)and (pointer:fine)and (min-width:641px){.planner-board .meal-card-heading .meal-drag-handle{display:inline-flex}}main:has(.planner-page){max-width:1600px}body:has(.planner-page){background:radial-gradient(ellipse at 90% 0%,var(--color-surface-sunken) 0,transparent 45%),var(--bg)}.planner-heading .intro{font-size:13px;margin-top:0;margin-bottom:28px}.planner-heading .title>button{display:inline-flex;align-items:center;gap:8px}.planner-board .day>h2{min-height:96px}.planner-weekday{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--ink-muted)}.planner-date{display:grid;place-items:center;width:40px;height:40px;font-size:25px;font-weight:500;letter-spacing:-1px}.planner-board .today-badge{background:transparent;color:var(--ink-muted);padding:0;font-family:var(--font-sans);font-size:9px}.planner-row-labels .meal-type-label{display:flex;flex-direction:column;align-items:flex-start;gap:10px;border-top:1px solid var(--border);font-size:11px}.meal-type-label.breakfast svg{color:var(--accent-text)}.meal-type-label.lunch svg{color:var(--success)}.meal-type-label.dinner svg{color:var(--accent-text)}.meal-type-label.snack svg{color:var(--ink-muted)}.planner-board .meal-photo-trigger{display:block;width:100%;padding:0;border-radius:14px 14px 0 0;min-height:80px;overflow:hidden;background:#b8cba9}.planner-board .recipe-photo{border-radius:0;width:100%;aspect-ratio:auto;height:80px;margin:0}.planner-board .recipe-photo img{width:100%;height:100%;object-fit:cover}.planner-photo-fallback{display:grid;place-items:center;width:100%;height:100%;background:#b8cba9}.planner-photo-fallback svg{width:105px;height:70px}.planner-board .meal-card-body{padding:10px 12px 8px}.planner-board .meal-card-heading h4{font-size:12px;line-height:1.45;margin:0 0 7px}.planner-board .meal-card-heading h4 a{color:#193323}.planner-board .meal-card-heading .meal-drag-handle{color:#52664e;padding:0}.planner-board .meal-card-summary{color:#52664e;gap:3px}.planner-board .meal-card-summary>span{font-size:10px}.planner-board .meal-card-summary>span svg{display:none}.planner-board .meal-card-summary .meal-card-expand,.planner-board .meal-options{color:#29442b;background:transparent}.planner-board .meal-card-summary .meal-card-expand:hover,.planner-board .meal-options:hover{background:#c5d7b8}.planner-board .meal-card-menu-panel{background:#f6f2e8;color:#193323;border-color:#9dab95}.planner-board .meal-card-menu-panel button{color:#193323}.planner-board .meal-card-menu-panel button:hover{background:#e3e9da}.planner-board .meal-prep-badge,.planner-board .meal-cooked-badge{background:#c5d7b8;color:#29442b;border-radius:4px;padding:3px 6px;font-size:9px}.planner-board .slot-add{min-height:48px;font-size:11px;font-weight:400}.planner-board .slot:not(:has(.plan-entry)) .slot-add{min-height:104px;border:1px dashed var(--color-border-strong);opacity:.8;padding:16px 12px;border-radius:12px}.planner-board .slot-add:hover,.planner-board .slot-add:focus-visible{opacity:1}.planner-board .compact-meal{transition:transform var(--transition),box-shadow var(--transition)}@media(hover:hover)and (pointer:fine){.planner-board .compact-meal:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}}.planner-footer{display:flex;justify-content:space-between;gap:16px;color:var(--ink-muted);font-size:11px;margin-block:18px}.planner-footer strong{color:var(--ink);font-weight:500}.planner-meal-editor{position:fixed;inset:0 0 0 auto;margin:0;width:410px;max-width:100vw;height:100dvh;max-height:100dvh;padding:24px;border:0;border-radius:24px 0 0 24px;background:#f6f2e8;color:#193323;color-scheme:light}.planner-meal-editor::backdrop{background:#07150d80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.planner-meal-editor .picker-heading{flex-wrap:nowrap;align-items:flex-start}.planner-meal-editor h2{font-size:28px;line-height:1.2;margin:0;color:#193323}.planner-meal-editor .meal-editor-context{text-transform:capitalize;color:#52664e;font-size:12px;margin-block:12px 20px}.planner-meal-editor .recipe-photo{height:170px;aspect-ratio:auto;width:100%;border-radius:14px;overflow:hidden;margin:0 0 24px}.planner-meal-editor .recipe-photo img{height:100%;width:100%;object-fit:cover}.planner-meal-editor .planner-photo-fallback svg{width:180px;height:130px}.planner-meal-editor .meal-card-editor{gap:14px}.planner-meal-editor .meal-card-editor>p{margin:0;font-size:13px}.planner-meal-editor .meal-servings{margin:0;padding:8px;border:1px solid #cbd5c0;border-radius:12px;background:#fffdf7;align-items:center}.planner-meal-editor label{color:#193323;font-size:12px}.planner-meal-editor input:not([type=checkbox]),.planner-meal-editor select{background:#fffdf7;color:#193323;border:1px solid #a7b79c;border-radius:10px;min-width:0}.planner-meal-editor .meal-servings input{width:100%}.planner-meal-editor input[type=checkbox]{accent-color:#315738}.planner-meal-editor button.quiet{color:#193323}.planner-meal-editor button.quiet:hover{background:#e3e9da}.planner-meal-editor .meal-save{background:#234a31;color:#fff;box-shadow:none;width:100%}.planner-meal-editor .meal-save:hover{background:#173b24}.planner-meal-editor .meal-editor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #d9dfce;padding-top:18px;margin-top:6px}.planner-meal-editor .meal-editor-actions button,.planner-meal-editor .meal-editor-actions a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #a7b79c;border-radius:10px;color:#193323;font-size:12px;text-decoration:none}.planner-meal-editor .meal-editor-actions a:hover{background:#e3e9da}.planner-meal-editor [role=alert]{color:#9b3026}.planner-meal-editor :focus-visible{outline-color:#1d5fd1}@media(max-width:640px){.planner-meal-editor{inset:auto 0 0;width:100%;height:90dvh;border-radius:24px 24px 0 0}.planner-board .day>h2{flex-direction:row;min-height:64px}.planner-board .slot:not(:has(.plan-entry)) .slot-add{min-height:72px}.planner-footer{flex-direction:column}.planner-board .meal-card-heading h4{font-size:14px}.planner-board .recipe-photo{height:112px}.planner-board .plan-entry{display:grid;grid-template-columns:100px minmax(0,1fr)}.planner-board .meal-photo-trigger{height:100%;border-radius:14px 0 0 14px}.planner-board .meal-photo-trigger .recipe-photo{height:100%;min-height:112px}.planner-board .meal-card-body{padding:14px}}@media(prefers-reduced-motion:reduce){.planner-board .compact-meal{transition:none}.planner-board .compact-meal:hover{transform:none}}.planner-board .compact-meal{position:relative}.planner-board .meal-card-summary .meal-card-menu{position:absolute;top:4px;right:4px;margin:0}.planner-board .meal-card-summary .meal-options{background:#f6f2e8;border-radius:50%;box-shadow:0 2px 6px #0000001a}.planner-board .day>h2{display:grid;grid-template-rows:14px 40px 12px;justify-items:center;align-content:center;justify-content:center}@media(max-width:640px){.planner-board .day>h2{display:flex;flex-direction:row}}.planner-meal-editor h2{font-weight:600}.planner-meal-editor .meal-card-editor{border-top-color:#d9dfce}.planner-meal-editor .meal-save{border-radius:12px}.planner-meal-editor .meal-editor-actions button+button{margin-left:0}.planner-meal-editor .meal-editor-status{font-size:12px;color:#315738}.planner-meal-editor .meal-editor-status:empty{display:none}.planner-suggestions-dialog .picker-heading h2{font-size:26px}.meal-suggestions .suggestion-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--ink-muted);font-size:11px;margin-block:12px}.suggestion-brand{font-weight:600}.meal-suggestions .suggestion-description{color:var(--ink-muted);font-size:13px;line-height:1.5;margin-block:12px 22px}.meal-suggestions fieldset{margin-block:0 18px}.meal-suggestions legend,.meal-suggestions label{font-size:12px}.meal-suggestions .suggestion-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.meal-suggestions .suggestion-days .chip{min-width:0;padding:6px 0;min-height:44px;font-size:11px;border-radius:10px;border:0}.meal-suggestions .suggestion-choices button+button{margin-left:0}.meal-suggestions .suggestion-meal-settings{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:16px;align-items:start}.meal-suggestions .suggestion-meal-settings .chip{min-height:44px;padding:8px 14px;font-size:12px;border-radius:10px;border-width:1px}.meal-suggestions .suggestion-meal-settings input{width:100%;min-height:44px;margin-top:10px;border-radius:10px}.meal-suggestions .suggestion-preferences{margin-top:4px;padding-block:8px}.meal-suggestions .suggestion-preferences summary,.meal-suggestions .suggestion-reason summary{color:var(--ink-muted);font-size:12px;font-weight:500}.meal-suggestions .suggestion-preferences .check{display:flex;align-items:center;gap:10px;margin-block:12px 18px}.meal-suggestions .suggestion-preferences textarea{width:100%;margin-top:8px;min-height:84px;font-size:13px;border-radius:12px}.meal-suggestions .suggestion-actions{margin-top:16px}.meal-suggestions .suggestion-actions>button:first-child{flex:1;box-shadow:none}.meal-suggestions .suggestion-reason p{font-size:12px;line-height:1.5;color:var(--ink-muted)}.meal-suggestions .suggestion-actions .suggestion-submit{background:var(--accent);color:#fff;box-shadow:none}.meal-suggestions .suggestion-actions .suggestion-submit:hover{background:var(--accent-hover)}
