:root{--text-small:.875rem;--text-control:.9375rem;--text-body:1rem;color:#183128;font-synthesis:none;--dark:#153c2c;--amber:#a57021;background:#faf9f5;font-family:DM Sans,sans-serif;font-size:100%;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{font-size:var(--text-body);margin:0}button,input,select{font:inherit}button,a,input,select,details,summary,[aria-expanded]{-webkit-tap-highlight-color:transparent}label:has(input[type=radio]){-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button,summary,[role=option]{-webkit-user-select:none;user-select:none}button{background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.46}a{color:var(--green)}button,input,select,a{outline-offset:4px}:focus,:focus-visible,:focus-within,.meal-preference-option input:focus-visible+span{outline:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.22}h1{font-size:40px;font-weight:600}h2{font-size:22px;font-weight:600}h3{font-size:18px;font-weight:600}svg{flex-shrink:0}img{max-width:100%;display:block}.muted{color:var(--muted);font-size:var(--text-small);line-height:1.65}.green{color:var(--green)}.amber{color:var(--amber)}.eyebrow{font-size:var(--text-small);letter-spacing:.13em;color:#7d8879;font-weight:700;display:block}.title-dot{color:#b0bf9a}.brand{letter-spacing:-1.5px;color:var(--dark);white-space:nowrap;align-items:center;gap:8px;font-family:Lora,serif;font-size:29px;font-weight:600;display:inline-flex}.brand-dot{color:#829572;margin-left:-7px}.brand-link{text-decoration:none}.brand svg{margin-right:1px}.button{font-size:var(--text-small);border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:13px 18px;font-weight:600;line-height:1.4;transition:background .18s,transform .18s;display:inline-flex}.button:hover:not(:disabled):where(:not(summary,[aria-expanded])){transform:translateY(-1px)}.primary{background:var(--green);color:#fff;box-shadow:0 2px 3px #153c2c0a}.primary:is(:hover,:focus-visible):not(:disabled):where(:not(summary,[aria-expanded])){background:var(--action-hover)}.secondary{background:var(--paper);border:1px solid #dde1d6}.secondary:is(:hover,:focus-visible):not(:disabled):where(:not(summary,[aria-expanded])){background:var(--hover-background);color:var(--hover-text)}.subtle{color:var(--green);background:#f5f5ef}.full{width:100%}.text-button{font-size:var(--text-small);color:var(--green);align-items:center;gap:7px;padding:8px 0;font-weight:600;display:inline-flex}.icon-button{border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.icon-button:is(:hover,:focus-visible):not(:disabled):where(:not(summary,[aria-expanded])){background:var(--hover-background);color:var(--hover-text)}.panel{background:var(--paper);border:1px solid var(--border);border-radius:14px;padding:23px}.section-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.section-heading>span{font-size:var(--text-small);color:var(--muted)}.food-photo{object-fit:cover;width:100%;height:100%}.mini-leaf{width:35px;height:35px;color:var(--green);background:#edf1e5;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.loading{height:100vh;color:var(--muted);font-size:var(--text-small);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}input,select{background:var(--paper);font-size:var(--text-small);color:#3e5738;border:1px solid #dfe4d5;border-radius:7px;width:100%;min-width:0;padding:11px 12px}input[type=checkbox]{accent-color:var(--green);cursor:pointer;flex-shrink:0;width:15px;height:15px;margin:0}input[type=file]{width:auto}label{font-size:var(--text-small);color:#6e7f60;font-weight:500}select{cursor:pointer}input::placeholder{color:#b0b9a3;font-weight:400}.preferences-form h3{margin-top:7px;font-size:19px}.preferences-form .muted{font-size:var(--text-small);margin-top:7px}.form-section{margin-bottom:28px}.field-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.optional{color:var(--muted);margin-left:5px;font-size:.75rem;font-weight:400}.unit-input{background:var(--paper);border:1px solid #dfe4d5;border-radius:7px;align-items:center;margin-top:7px;display:flex;overflow:hidden}.unit-input:focus-within{outline:2px solid #79a887}.unit-input input{width:100%;font-size:var(--text-small);background:0 0;border:0;border-radius:0;outline:0;padding:12px}.unit-input>span{font-size:var(--text-small);color:#9eaa90;padding:0 13px}.diet-options{flex-direction:column;gap:8px;margin-top:15px;display:flex}.diet-option{text-align:left;background:#fbfcf7;border:1px solid #e2e7d9;border-radius:9px;align-items:center;gap:12px;padding:12px;display:flex}.diet-option:is(:hover,:focus-visible){border-color:var(--hover-border)}.diet-option.selected{background:#eef4e5;border-color:#8ca671}.diet-emoji{text-align:center;width:32px;font-size:23px}.diet-option>span:nth-child(2){flex:1}.diet-option strong{font-size:var(--text-small);font-weight:500;display:block}.diet-option small{color:#96a184;font-size:var(--text-small);margin-top:2px;display:block}.diet-check{border:1px solid #d2ddc4;border-radius:50%;place-items:center;width:18px;height:18px;display:grid}.selected .diet-check{color:#fff;background:#63864b;border-color:#63864b}.meal-preferences{margin-top:24px}.meal-preferences>h3{margin-bottom:4px}.meal-preferences>.muted{margin-top:0}.meal-preference-rows{border:1px solid var(--border);background:var(--paper);border-radius:9px;padding:4px 14px}.meal-preference-row{border:0;grid-template-columns:minmax(100px,1fr) minmax(0,360px);align-items:center;gap:12px;min-width:0;margin:0;padding:10px 0;display:grid}.meal-preference-row+.meal-preference-row{border-top:1px solid var(--border)}.meal-preference-row>legend{float:left;font-size:var(--text-small);padding:0;font-weight:500}.meal-preference-options{border:1px solid var(--border);background:var(--paper);border-radius:7px;gap:3px;min-width:0;padding:3px;display:flex}.meal-preference-option{cursor:pointer;flex:1;min-width:0;position:relative}.meal-preference-option input{opacity:0;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute}.meal-preference-option>span{min-height:44px;color:var(--dark);font-size:var(--text-small);white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:5px;padding:7px 5px;font-weight:500;display:flex}.meal-preference-option input:checked+span{background:var(--green);color:var(--paper)}.meal-preference-option input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}.meal-preference-option:hover input:not(:checked):not(:disabled)+span{background:var(--hover-background)}.meal-preference-option:has(input:disabled){cursor:default;opacity:.46}.meal-preference-warning{color:var(--amber);font-size:var(--text-small)}@media (max-width:600px){.meal-preference-row{grid-template-columns:1fr;gap:7px}.meal-preference-option>span{white-space:normal;gap:3px;font-size:.8125rem}.meal-preference-option svg{display:none}}.secondary-fields{margin-top:18px}.secondary-fields .dropdown{margin-top:7px}.snack-choice{align-items:center;gap:9px;padding-top:20px;display:flex}.snack-choice strong{font-size:var(--text-small);font-weight:500;display:block}.snack-choice small{font-size:var(--text-small);color:#9da990;margin-top:2px;display:block}.exclusion-toggle{font-size:var(--text-small);margin-top:16px}.exclusion-list{border:1px solid var(--border);background:#f7f9f1;border-radius:8px;grid-template-columns:1fr 1fr;gap:10px;max-height:250px;margin-top:8px;padding:12px;display:grid;overflow:auto}.exclusion-list label{font-size:var(--text-small);color:#879577;align-items:center;gap:7px;font-weight:400;display:flex}.field-note{font-size:var(--text-small);color:#9aab89;margin-top:13px;margin-bottom:13px;line-height:1.7}.error{font-size:var(--text-small);color:#a5523d;margin:10px 0}.settings-layout{grid-template-columns:minmax(0,1fr) 290px;gap:30px;display:grid}.settings-panel{padding:29px}.backup-panel h3{margin-top:15px;font-family:Lora,serif;font-size:21px;line-height:1.4}.backup-panel p{font-size:var(--text-small);color:#8e9c7c;margin:15px 0 20px;line-height:1.8}.backup-panel .button+.button{margin-top:9px}.backup-panel .button{font-size:var(--text-small)}.about-panel{margin-top:20px}.about-panel .brand{font-size:24px}.about-panel .brand svg{width:23px}.about-panel>p{font-size:var(--text-small);color:#95a086;margin-top:12px;line-height:1.8}.about-panel .eyebrow{font-size:var(--text-small);margin-top:21px}.about-panel .text-button{font-size:var(--text-small);margin-top:9px}.onboarding{max-width:1440px;margin:auto;padding:31px 68px 45px}.onboarding-header{justify-content:space-between;align-items:center;margin-bottom:43px;display:flex}.onboarding-header>span:not(.brand){font-size:var(--text-small);color:#8c9b7c;align-items:center;gap:7px;display:flex}.onboarding-layout{grid-template-columns:minmax(0,1fr) 480px;align-items:start;gap:72px;margin-top:24px;display:grid}.onboarding-copy{padding-top:20px}.pill{font-size:var(--text-small);letter-spacing:.1em;color:#708b5e;background:#eaf0e0;border-radius:20px;align-items:center;gap:7px;padding:7px 12px;font-weight:600;display:inline-flex}.onboarding h1{letter-spacing:-.055em;margin-top:25px;font-size:55px;font-weight:500;line-height:1.13}.onboarding h1 em{color:#7d9468;letter-spacing:-.07em;font-family:Lora,serif;font-size:49px;font-style:normal;font-weight:600}.onboarding-copy>p{font-size:var(--text-small);color:#8b987e;margin-top:23px;line-height:1.85}.journey{color:#b6c1a9;align-items:center;gap:16px;margin-top:25px;display:flex}.journey>span{font-size:var(--text-small);color:#728866;align-items:center;gap:7px;display:flex}.journey>span svg{width:17px;height:17px}.journey>svg{width:13px}.onboarding-image{border:1px solid #e8e4d6;border-radius:15px;height:244px;margin-top:29px;position:relative;overflow:hidden}.onboarding-image>img{object-fit:cover;object-position:50% 50%;width:100%;height:100%}.image-caption{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffef5ee;border:1px solid #fffa;border-radius:9px;align-items:center;gap:10px;padding:13px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.caption-icon{color:#789563;background:#e9efdf;border-radius:50%;place-items:center;width:33px;height:33px;display:grid}.caption-icon svg{width:17px}.image-caption strong{font-size:var(--text-small);color:#5d7450;font-weight:500;display:block}.image-caption small{font-size:var(--text-small);color:#9aa48d;margin-top:2px;display:block}.privacy-note{color:#a1ad93;font-size:var(--text-small);align-items:center;gap:7px;margin-top:20px;display:flex}.onboarding-card{background:var(--paper);border:1px solid #e5e9dd;border-radius:16px;padding:30px;box-shadow:0 10px 45px #213b1804}.setup-heading{border-bottom:1px solid #e9ede0;align-items:center;gap:13px;margin-bottom:28px;padding-bottom:23px;display:flex}.step-number{color:#77975c;background:#ecf2e1;border-radius:11px;place-items:center;width:43px;height:43px;font-family:Lora,serif;font-size:20px;display:grid}.setup-heading h2{font-size:20px}.setup-heading p{font-size:var(--text-small);color:#9aaa8b;margin-top:5px}.onboarding-card .form-section{margin-bottom:25px}.onboarding-card .eyebrow{font-size:var(--text-small)}.onboarding-card .preferences-form h3{font-size:17px}.onboarding-card .preferences-form .muted{font-size:var(--text-small)}.demo-link{font-size:var(--text-small);color:#a1ad91;border-top:1px solid #eaeee2;flex-direction:column;align-items:center;gap:6px;margin-top:22px;padding-top:19px;display:flex}.demo-link button{font-size:var(--text-small);color:#719155;align-items:center;gap:4px;font-weight:500;display:flex}.dialog{background:var(--paper);width:calc(100% - 40px);max-width:640px;max-height:calc(100dvh - 50px);color:var(--dark);border:1px solid #d9e1cf;border-radius:16px;padding:0;overflow:auto;box-shadow:0 20px 90px #17341c20}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#152c2359}.dialog-inner{padding:27px}.dialog-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.dialog-header h2{font-size:24px}.dialog-field{margin:19px 0;display:block}.dialog-field input,.dialog-field .dropdown{margin-top:8px}.dialog .field-grid,.dialog .field-grid .dialog-field{margin-top:0}.dialog .muted{font-size:var(--text-small);margin-bottom:15px}.dialog-actions{flex-wrap:wrap;gap:10px;margin-top:25px;display:flex}.warning-text{font-size:var(--text-small);color:#9a7134;margin-top:18px}.dialog p{font-size:var(--text-small);line-height:1.8}.swap-options{flex-direction:column;gap:10px;margin-top:20px;display:flex}.swap-options>button{border:1px solid var(--border);text-align:left;border-radius:10px;align-items:center;gap:14px;padding:9px;display:flex}.swap-options>button:is(:hover,:focus-visible){background:var(--hover-background)}.swap-options img{border-radius:7px;width:73px;height:67px}.swap-options>button>span{flex:1}.swap-options strong{font-size:var(--text-small);font-weight:500;display:block}.swap-options small{font-size:var(--text-small);color:#8a997b;margin-top:5px;display:block}.swap-options>button>svg{color:#94a480;margin-right:5px}.toast{color:#f4f8ed;z-index:90;width:max-content;max-width:520px;font-size:var(--text-small);background:#244f3a;border:1px solid #5d7d4d;border-radius:11px;align-items:center;gap:10px;padding:15px 19px;display:flex;position:fixed;bottom:28px;left:calc(50% + 111px);transform:translate(-50%);box-shadow:0 8px 30px #263b2220}.toast svg{color:#b3cba1}.toast button{margin-left:12px;display:flex}.busy-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;color:#5d7c48;text-align:center;opacity:0;visibility:hidden;pointer-events:none;background:#fafcf1d9;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:24px;transition:opacity .16s ease-out,visibility 0s linear .16s;display:flex;position:fixed;inset:0}.busy-overlay[data-active=true]{opacity:1;visibility:visible;pointer-events:auto;transition:none}.busy-overlay svg{filter:drop-shadow(0 0 7px);flex-shrink:0;width:40px;height:40px}.busy-overlay[data-active=true] svg{will-change:transform, opacity;animation:2s ease-in-out infinite plan-loading-sparkle}.busy-overlay strong{font-size:var(--text-body);font-weight:500}.busy-dots{white-space:nowrap;display:inline-block}.busy-dots>span{width:.22em;display:inline-block}.busy-overlay[data-active=true] .busy-dots>span{will-change:opacity;animation:1.5s ease-in-out infinite plan-loading-dot}.busy-overlay[data-active=true] .busy-dots>span:nth-child(2){animation-delay:.15s}.busy-overlay[data-active=true] .busy-dots>span:nth-child(3){animation-delay:.3s}@keyframes plan-loading-sparkle{0%,to{opacity:.65;transform:scale(.97)}50%{opacity:1;transform:scale(1.05)}}@keyframes plan-loading-dot{0%,70%,to{opacity:.35}35%{opacity:1}}@media (max-width:1200px){.shopping-aside .panel{padding:19px}.settings-layout{grid-template-columns:minmax(0,1fr) 240px;gap:20px}.settings-panel{padding:24px}.onboarding{padding:30px 45px}.onboarding-layout{grid-template-columns:minmax(0,1fr) 440px;gap:40px}.onboarding h1{font-size:49px}.onboarding h1 em{font-size:42px}.onboarding-card{padding:25px}.onboarding-image{height:224px}.toast{left:calc(50% + 98px)}}@media (max-width:1000px) and (min-width:701px){.onboarding{padding:24px 30px}.onboarding-layout{grid-template-columns:minmax(0,1fr) 400px;gap:26px}.onboarding h1{font-size:40px}.onboarding h1 em{font-size:35px}.onboarding-copy>p{font-size:var(--text-small)}.journey{gap:10px}.onboarding-image{height:220px}.onboarding-header{margin-bottom:29px}.onboarding-card{padding:23px}.toast{left:calc(50% + 42px)}}@media (max-width:700px){.generate-top{border-radius:8px;flex-shrink:0;gap:0;min-height:38px;padding:10px;font-size:0}.generate-top svg{width:19px;height:19px}.section-heading>span{font-size:var(--text-small)}.shopping-aside{display:none}.settings-layout{display:block}.settings-panel{padding:21px 19px}.settings-layout aside{margin-top:20px}.backup-panel,.about-panel{padding:22px}.preferences-form h3{font-size:18px}.preferences-form .eyebrow,.preferences-form .muted{font-size:var(--text-small)}.field-grid{gap:12px;margin-top:18px}.optional{height:12px;margin-left:0;display:block}.preferences-form .field-grid label:first-child>.unit-input{margin-top:19px}.secondary-fields{grid-template-columns:1fr}.secondary-fields .dropdown{width:100%}.snack-choice{padding-top:3px}.exclusion-list{grid-template-columns:1fr}.form-section{margin-bottom:23px}.toast{font-size:var(--text-small);gap:8px;width:calc(100% - 32px);max-width:450px;padding:13px 15px;bottom:87px;left:50%}.toast button{margin-left:auto}.dialog{border-radius:13px;width:calc(100% - 24px);max-height:calc(100dvh - 32px)}.dialog-inner{padding:21px}.dialog-header{gap:13px;margin-bottom:18px}.dialog-header h2{font-size:21px}.dialog-header .icon-button{flex-shrink:0}.swap-options>button{gap:11px}.swap-options img{width:64px;height:62px}.swap-options strong,.swap-options small{font-size:var(--text-small)}.onboarding{padding:23px 20px 35px}.onboarding-header{margin-bottom:27px}.onboarding-header .brand{font-size:27px}.onboarding-header>span:not(.brand){display:none}.onboarding-layout{flex-direction:column;gap:27px;margin-top:16px;display:flex}.onboarding-copy{width:100%;padding-top:0}.onboarding h1{margin-top:19px;font-size:43px;line-height:1.14}.onboarding h1 em{font-size:37px}.onboarding-copy>p{font-size:var(--text-small);margin-top:17px;line-height:1.85}.journey{gap:14px;margin-top:18px}.journey>span{font-size:var(--text-small)}.journey>span svg{width:16px}.onboarding-image{height:200px;margin-top:22px}.image-caption{gap:9px;padding:11px;bottom:11px;left:11px;right:11px}.image-caption strong,.image-caption small{font-size:var(--text-small)}.caption-icon{width:30px;height:30px}.privacy-note{font-size:var(--text-small);margin-top:14px}.onboarding-card{border-radius:13px;width:100%;padding:23px 20px}.setup-heading h2{font-size:18px}.setup-heading p{font-size:var(--text-small)}.setup-heading{gap:12px}.onboarding-card .preferences-form h3{font-size:17px}.onboarding-card .optional{display:block}.onboarding-card .field-grid label:first-child>.unit-input{margin-top:19px}.pill{font-size:var(--text-small)}.desktop-only{display:none}}@media (max-width:370px){.onboarding h1{font-size:38px}.onboarding h1 em{font-size:32px}}input,select,textarea,.unit-input input{font-size:var(--text-body);line-height:1.5}.onboarding-copy>p{font-size:var(--text-body);line-height:1.6}.button,.text-button,.diet-option strong,.snack-choice strong{font-size:var(--text-control);line-height:1.5}.manual-meal-actions{flex-wrap:wrap;gap:8px 12px}.diet-check{flex-shrink:0}@media (max-width:700px){.generate-top{gap:8px}.page-title-actions{flex-direction:row;justify-content:flex-start;width:100%}.field-grid,.exclusion-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}dialog.busy-overlay{box-sizing:border-box;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0}.busy-overlay::backdrop{background:0 0}.busy-overlay .planning-progress{font-size:var(--text-small);margin:0}.busy-overlay>button{max-width:100%}textarea{resize:vertical;width:100%;font:inherit;border:1px solid var(--border);color:inherit;background:var(--paper);border-radius:8px;padding:12px}textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--hover-background:#e9edde;--hover-text:#183128;--hover-border:#a7b598;--action-hover:#174a34;--focus-ring:#22563f}.theme-selector{border:1px solid var(--border);background:var(--paper);border-radius:9px;gap:3px;padding:4px;display:inline-flex}.theme-selector button{min-height:36px;font-size:var(--text-small);color:var(--muted);border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 12px;display:inline-flex}.theme-selector button[aria-pressed=true]{background:var(--sage);color:var(--green)}.theme-selector button:hover{color:var(--green)}.theme-selector.compact{margin-left:12px;padding:3px}.theme-selector.compact button{width:30px;min-height:30px;padding:6px}.appearance-panel{margin-bottom:20px}.appearance-panel .theme-selector{max-width:360px;display:flex}.appearance-panel .theme-selector button{flex:1;gap:4px;min-width:0;min-height:44px;padding-inline:6px}.theme-selector button svg{flex-shrink:0}.appearance-panel p{font-size:var(--text-small);margin:10px 0 16px}.onboarding-actions,.onboarding-tagline{align-items:center;gap:7px;display:flex}.onboarding-tagline{font-size:var(--text-small);color:var(--muted)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e7eee5;--dark:#e7eee5;--amber:#edbf77;--surface:#233026;--raised:#304233;--action:#275b43;--hover-background:#304233;--hover-text:#e7eee5;--hover-border:#78997b;--action-hover:#346e52;--focus-ring:#a3d4b4;background:#141b17}:root[data-theme=dark] body :where(.eyebrow,.brand-dot,.sidebar-intro .eyebrow,.sidebar-intro p,.nav-item,.sidebar-bottom p,.device-status,.breadcrumb,.breadcrumb svg,.topbar-status,.app-footer,.week-toolbar>span,.view-toggle button,.day-chip,.nutrition-header>span,.calorie-value>span,.calorie-value .planned-badge,.macro-grid div>span:first-child,.meal-meta,.meal-lock,.meal-card-footer button:last-child,.nutrition-footnote,.summary-days button,.summary-date small,.summary-days strong small,.summary-days button>span:nth-child(2)>small,.shopping-promo p,.active-preferences>div>span,.active-preferences>button,.catalogue-count,.search-field,.recipe-category-tabs button,.recipe-card-info>p,.recipe-card-info>div>span,.empty-state p,.shopping-progress-card p,.shopping-progress-count small,.shopping-group .section-heading>span,.shopping-group-count,.shopping-row.checked .shopping-item-name>strong,.shopping-item-name small,.pantry-button,.pantry-explainer p,.pantry-example,.pantry-explainer>small,.shopping-summary>div,.back-link,.recipe-description,.recipe-macros span,.ingredient-row small,.source-link,.portion-switch button,.portion-panel p,.step-meta>span:last-child,.cooking-step-number,.quiet-note,label,.unit-input>span,.diet-option small,.snack-choice small,.exclusion-list label,.field-note,.backup-panel p,.about-panel>p,.onboarding-copy>p,.journey,.journey>span,.image-caption small,.privacy-note,.setup-heading p,.demo-link,.swap-options small,.bottom-nav a){color:var(--muted)}:root[data-theme=dark] .optional{color:#8f9c89}:root[data-theme=dark] body :where(.view-toggle button.active,.summary-days button>span:nth-child(2)>strong,.shopping-promo h3,.empty-state h2,.empty-state h3,.shopping-item-name b,.pantry-example strong,.shopping-summary strong,.recipe-macros strong,.ingredient-row strong,input,select,.image-caption strong){color:var(--dark)}:root[data-theme=dark] body :where(.brand-drawing,.profile-button,.demo-banner,.update-banner,.nutrition-mini-icon,.nutrition-header button,.meal-category,.meal-lock.is-locked,.meal-card-footer button,.summary-days button>svg,.promo-icon,.shopping-promo button,.recipe-category-tabs button.active,.is-favorite,.recipe-card-info .icon-button,.empty-state,.shopping-progress-icon,.shopping-progress-count,.add-product-inline,.shopping-bulk-select,.offline-note,.recipe-photo-badge,.step-navigation>.icon-button,.quiet-note svg,.pill,.onboarding h1 em,.caption-icon,.step-number,.demo-link button,.swap-options>button>svg,.busy-overlay,.pantry-button:hover,.pantry-button.active,.bottom-nav a.active){color:var(--green)}:root[data-theme=dark] .sidebar{background:#19231c}:root[data-theme=dark] body :where(.subtle,.view-toggle,.day-chip,.meal-card-footer,.active-preferences>div>span,.recipe-category-tabs button,.empty-state,.shopping-group .section-heading>span,.shopping-group-count,.pantry-edit,.pantry-example,.portion-switch,.step-navigation>.icon-button,.diet-option,.exclusion-list,.step-dots button){background:var(--surface)}:root[data-theme=dark] body :where(.mini-leaf,.nav-badge,.profile-button,.demo-banner,.update-banner,.meal-lock.is-locked,.summary-days button.active,.shopping-promo,.recipe-category-tabs button.active,.selected-filter,.recipe-card-info .icon-button,.shopping-progress-card,.shopping-progress-icon,.offline-note,.favorite-button,.recipe-macros,.diet-option.selected,.pill,.caption-icon,.step-number){background:var(--sage)}:root[data-theme=dark] .nutrition-card{background:linear-gradient(120deg,#283c2c,#233529)}:root[data-theme=dark] body :where(.promo-icon,.calorie-progress,.shopping-progress){background:var(--raised)}:root[data-theme=dark] body :where(.calorie-progress span,.shopping-progress>span,.step-dots button.active){background:var(--green)}:root[data-theme=dark] .nav-badge{color:var(--green)}:root[data-theme=dark] .calorie-value .planned-badge{background:#ffffff0a}:root[data-theme=dark] body :where(.time-badge,.favorite-overlay,.photo-caption,.recipe-photo-badge,.image-caption){color:var(--dark);background:#1c2720ee}:root[data-theme=dark] .favorite-overlay.is-favorite{color:var(--green)}:root[data-theme=dark] .bottom-nav{background:#1c2720f5}:root[data-theme=dark] .busy-overlay{background:#141b17eb}:root[data-theme=dark] body :where(.primary,.nav-item.active,.day-chip.selected,.portion-switch button[aria-pressed=true]){background:var(--action);color:#fff}:root[data-theme=dark] .nav-item.active .nav-badge{color:#fff;background:#ffffff20}:root[data-theme=dark] body :where(.secondary,.sidebar,.topbar,.demo-banner,.warning-banner,.update-banner,.app-footer,.day-chip:hover:not(.selected),.calorie-value .planned-badge,.macro-grid>div+div,.meal-card:hover,.meal-card-footer,.summary-link,.shopping-promo button,.target-notice,.weekly-row,.selected-filter,.recipe-card:hover,.recipe-card-info>div:last-child,.empty-state,.shopping-progress-card,.check-box,.pantry-edit,.offline-note,.favorite-button,.recipe-macros>div+div,.ingredient-row+div,.portion-switch,input,select,.unit-input,.diet-option,.diet-check,.onboarding-image,.image-caption,.onboarding-card,.setup-heading,.demo-link,.dialog,.bottom-nav){border-color:var(--border)}:root[data-theme=dark] body :where(.diet-option.selected,.selected-filter){border-color:#78997b}:root[data-theme=dark] body :where(.checked .check-box,.selected .diet-check,.bulk-checkbox input:checked,.bulk-checkbox input:indeterminate){border-color:#547d50}:root[data-theme=dark] body :where(.target-notice,.summary-alert,.warning-banner){color:var(--amber);background:#3d3021}:root[data-theme=dark] .warning-text{color:var(--amber)}:root[data-theme=dark] .error{color:#ffae98}:root[data-theme=dark] .dialog{box-shadow:0 20px 90px #0006}:root[data-theme=dark] .dialog::backdrop{background:#060d0999}button:not(:disabled):is(:hover,:focus-visible):where(:not([aria-expanded])){color:var(--hover-text)}:root button:not(:disabled):is(:hover,:focus-visible):where(:not([aria-expanded])) :where(svg,small,span,strong,h3,.muted):where(:not(.diet-check,.nav-badge)){color:inherit}:is(.subtle,.favorite-button,.favorite-overlay,.profile-button,.view-toggle button:not(.active),.recipe-category-tabs button:not(.active),.theme-selector button:not([aria-pressed=true]),.portion-switch button:not([aria-pressed=true]),.summary-days button:not(.active)):not(:disabled):is(:hover,:focus-visible):where(:not(summary,[aria-expanded])){background:var(--hover-background);color:var(--hover-text)}:is(button.primary,a.nav-item.active,button.day-chip.selected):not(:disabled):is(:hover,:focus-visible),.portion-switch button[aria-pressed=true]:not(:disabled):is(:hover,:focus-visible){background:var(--action-hover);color:#fff}.checked .check-box:not(:disabled):is(:hover,:focus-visible),.toast button:not(:disabled):is(:hover,:focus-visible){color:#fff}button:focus-visible,a:focus-visible,.bulk-checkbox input:focus-visible{outline-color:var(--focus-ring)}@media (max-width:700px){.theme-selector.compact{margin-left:0}.topbar-status>svg{display:none}.topbar-status .profile-button{margin-left:4px}.onboarding-tagline{display:none}}
:root{--green:#22563f;--paper:#fffefa;--sage:#eaf0e3;--muted:#7c837a;--border:#e6e7df}:root[data-theme=dark]{--green:#a3d4b4;--paper:#1c2720;--sage:#2c3d2f;--muted:#afbaaa;--border:#3b4b3e}
