:root{--color-background:#f7f8f8;--color-on-background:#16181b;--color-surface-container-lowest:#fff;--color-surface-container-low:#eef0f1;--color-surface-container:#e4e6e7;--color-surface-container-high:#dadddf;--color-on-surface:#16181b;--color-on-surface-variant:#6a7076;--color-outline-variant:#e4e6e7;--color-primary:#ff5630;--color-on-primary:#fff5f2;--color-primary-container:#ffe4dc;--color-on-primary-container:#7a1f0e;--color-secondary:#1f7a4d;--color-on-secondary:#fff;--color-secondary-container:#dcf2e6;--color-on-secondary-container:#0f5a34;--color-tertiary:#a16207;--color-on-tertiary:#fff;--color-tertiary-container:#fbeacb;--color-on-tertiary-container:#713f12;--color-error:#dc2626;--color-on-error:#fff;--color-error-container:#fee2e2;--color-on-error-container:#7f1d1d;--font-family-display:"Sora", system-ui, sans-serif;--font-family-base:"Work Sans", system-ui, sans-serif;--text-headline-xl-size:32px;--text-headline-xl-weight:700;--text-headline-xl-line:40px;--text-headline-xl-tracking:-.01em;--text-headline-lg-size:24px;--text-headline-lg-weight:700;--text-headline-lg-line:32px;--text-headline-lg-mobile-size:22px;--text-headline-lg-mobile-weight:700;--text-headline-lg-mobile-line:28px;--text-headline-md-size:20px;--text-headline-md-weight:600;--text-headline-md-line:28px;--text-body-lg-size:18px;--text-body-lg-weight:400;--text-body-lg-line:26px;--text-body-md-size:16px;--text-body-md-weight:400;--text-body-md-line:24px;--text-body-sm-size:14px;--text-body-sm-weight:400;--text-body-sm-line:20px;--text-label-md-size:12px;--text-label-md-weight:600;--text-label-md-line:16px;--text-label-md-tracking:.04em;--radius-sm:8px;--radius-default:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--radius-card:20px;--radius-button:12px;--space-base:4px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-container-margin:20px;--space-gutter:12px;--shadow-level-1:0 1px 2px #14181b0a, 0 8px 24px #14181b0f;--shadow-level-2:0 4px 8px #14181b0f, 0 16px 40px #14181b1a;--content-max-width:1200px}@media (prefers-color-scheme:dark){:root{--color-background:#131416;--color-on-background:#f2f3f3;--color-surface-container-lowest:#1b1d1f;--color-surface-container-low:#202325;--color-surface-container:#26292b;--color-surface-container-high:#2d3032;--color-on-surface:#f2f3f3;--color-on-surface-variant:#9ba1a6;--color-outline-variant:#33373a;--color-primary:#ff6b47;--color-on-primary:#2b0900;--color-primary-container:#5c2214;--color-on-primary-container:#ffd6c7;--color-secondary:#3fbf77;--color-on-secondary:#08301a;--color-secondary-container:#10502f;--color-on-secondary-container:#a9e8c4;--color-tertiary:#e0a526;--color-on-tertiary:#2b1d02;--color-tertiary-container:#4a3405;--color-on-tertiary-container:#f5d98b;--color-error:#f87171;--color-on-error:#450a0a;--color-error-container:#5c1414;--color-on-error-container:#fecaca;--shadow-level-1:0 1px 2px #0000004d, 0 8px 24px #0006;--shadow-level-2:0 4px 8px #00000059, 0 16px 40px #00000080}}:root[data-theme=dark]{--color-background:#131416;--color-on-background:#f2f3f3;--color-surface-container-lowest:#1b1d1f;--color-surface-container-low:#202325;--color-surface-container:#26292b;--color-surface-container-high:#2d3032;--color-on-surface:#f2f3f3;--color-on-surface-variant:#9ba1a6;--color-outline-variant:#33373a;--color-primary:#ff6b47;--color-on-primary:#2b0900;--color-primary-container:#5c2214;--color-on-primary-container:#ffd6c7;--color-secondary:#3fbf77;--color-on-secondary:#08301a;--color-secondary-container:#10502f;--color-on-secondary-container:#a9e8c4;--color-tertiary:#e0a526;--color-on-tertiary:#2b1d02;--color-tertiary-container:#4a3405;--color-on-tertiary-container:#f5d98b;--color-error:#f87171;--color-on-error:#450a0a;--color-error-container:#5c1414;--color-on-error-container:#fecaca;--shadow-level-1:0 1px 2px #0000004d, 0 8px 24px #0006;--shadow-level-2:0 4px 8px #00000059, 0 16px 40px #00000080}:root[data-theme=light]{--color-background:#f7f8f8;--color-on-background:#16181b;--color-surface-container-lowest:#fff;--color-surface-container-low:#eef0f1;--color-surface-container:#e4e6e7;--color-surface-container-high:#dadddf;--color-on-surface:#16181b;--color-on-surface-variant:#6a7076;--color-outline-variant:#e4e6e7;--color-primary:#ff5630;--color-on-primary:#fff5f2;--color-primary-container:#ffe4dc;--color-on-primary-container:#7a1f0e;--color-secondary:#1f7a4d;--color-on-secondary:#fff;--color-secondary-container:#dcf2e6;--color-on-secondary-container:#0f5a34;--color-tertiary:#a16207;--color-on-tertiary:#fff;--color-tertiary-container:#fbeacb;--color-on-tertiary-container:#713f12;--color-error:#dc2626;--color-on-error:#fff;--color-error-container:#fee2e2;--color-on-error-container:#7f1d1d;--shadow-level-1:0 1px 2px #14181b0a, 0 8px 24px #14181b0f;--shadow-level-2:0 4px 8px #14181b0f, 0 16px 40px #14181b1a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-family-base);font-size:var(--text-body-md-size);font-weight:var(--text-body-md-weight);line-height:var(--text-body-md-line);color:var(--color-on-background);background:var(--color-background);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){body{--lightningcss-light: ;--lightningcss-dark:initial}}#root{min-height:100svh}h1,h2,h3{font-family:var(--font-family-display);letter-spacing:-.01em;margin:0 0 var(--space-sm);font-weight:700}h1{font-size:var(--text-headline-xl-size);line-height:var(--text-headline-xl-line);letter-spacing:var(--text-headline-xl-tracking)}h2{font-size:var(--text-headline-lg-size);line-height:var(--text-headline-lg-line)}p{margin:0 0 var(--space-md)}button{font-family:var(--font-family-base)}a{color:var(--color-primary)}.card{background:var(--color-surface-container-lowest);border-radius:var(--radius-card);box-shadow:var(--shadow-level-1);padding:var(--space-lg)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-button);padding:var(--space-sm) var(--space-lg);font-size:var(--text-body-md-size);cursor:pointer;border:none;font-weight:600;transition:opacity .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){opacity:.9}.btn-ghost{color:var(--color-on-surface);border:1px solid var(--color-outline-variant);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-surface-container-low);opacity:1}.field{gap:var(--space-xs);margin-bottom:var(--space-md);text-align:left;flex-direction:column;display:flex}.field label{font-size:var(--text-label-md-size);font-weight:var(--text-label-md-weight);letter-spacing:var(--text-label-md-tracking);color:var(--color-on-surface-variant);text-transform:uppercase}.field input,.field select,.field textarea,input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:var(--font-family-base);font-size:var(--text-body-md-size);border-radius:var(--radius-md);background:var(--color-surface-container-low);color:var(--color-on-surface);padding:var(--space-sm) var(--space-md);border:1px solid #0000;outline:none;transition:border-color .15s}.field textarea,textarea{resize:vertical;font-family:inherit}.field input:focus,.field select:focus,.field textarea:focus,input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--color-primary)}.field input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] .field input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .field input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.date-picker{position:relative}.date-picker-input{box-sizing:border-box;width:100%;display:block}.date-picker-input::-webkit-datetime-edit{color:#0000}.date-picker-input::-webkit-datetime-edit-fields-wrapper{color:#0000}.date-picker-input::-webkit-datetime-edit-text{color:#0000}.date-picker-input::-webkit-datetime-edit-day-field{color:#0000}.date-picker-input::-webkit-datetime-edit-month-field{color:#0000}.date-picker-input::-webkit-datetime-edit-year-field{color:#0000}.date-picker-value{padding:0 var(--space-md);color:var(--color-on-surface);font-family:var(--font-family-base);font-size:var(--text-body-md-size);white-space:nowrap;pointer-events:none;align-items:center;display:flex;position:absolute;inset:0 28px 0 0;overflow:hidden}.form-error{color:var(--color-error);font-size:var(--text-body-sm-size);margin:calc(var(--space-sm) * -1) 0 var(--space-md)}.form-success{color:var(--color-secondary);font-size:var(--text-body-sm-size);margin:calc(var(--space-sm) * -1) 0 var(--space-md)}.screen-center{min-height:100svh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.screen-content{width:100%;max-width:420px}.chip{border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-md);font-size:var(--text-label-md-size);font-weight:var(--text-label-md-weight);letter-spacing:var(--text-label-md-tracking);text-transform:uppercase;background:var(--color-surface-container-low);color:var(--color-on-surface-variant);cursor:pointer;border:none;align-items:center;display:inline-flex}.chip[data-active=true]{background:var(--color-primary);color:var(--color-on-primary)}.chip-category{background:var(--color-primary-container);color:var(--color-on-primary-container);margin-bottom:var(--space-sm);cursor:default}.chip-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.tag-expired{border-radius:var(--radius-full);padding:2px var(--space-sm);font-size:var(--text-label-sm-size,.7rem);font-weight:var(--text-label-md-weight);color:#6b6b6b;margin-left:var(--space-sm);vertical-align:middle;background:#e8e8e8;align-items:center;display:inline-flex}:root[data-theme=dark] .tag-expired{color:#b0b0b0;background:#3a3a3a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tag-expired{color:#b0b0b0;background:#3a3a3a}}.expired-notice{border:1px solid var(--color-outline-variant);background:var(--color-surface-container-low)}.chat-message{max-width:80%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);margin:0 0 var(--space-sm)}.chat-message--agent{background:var(--color-surface-container-low);color:var(--color-on-surface);border-bottom-left-radius:var(--radius-sm)}.chat-message--user{background:var(--color-primary-container);color:var(--color-on-primary-container);border-bottom-right-radius:var(--radius-sm);margin-left:auto}.menu-day{margin-bottom:var(--space-md)}.menu-day h3{text-transform:capitalize;font-size:var(--text-body-lg-size);margin-bottom:var(--space-xs)}.menu-matrix{border-collapse:separate;border-spacing:var(--space-sm);margin:calc(var(--space-sm) * -1);width:calc(100% + var(--space-sm) * 2);min-width:760px}.menu-matrix th,.menu-matrix td{text-align:center;vertical-align:middle;border:none;padding:0}.menu-matrix thead th{text-transform:capitalize;font-size:var(--text-label-md-size);font-weight:var(--text-label-md-weight);color:var(--color-on-surface-variant);padding-bottom:var(--space-xs)}.menu-matrix tbody th{text-align:left;font-size:var(--text-label-md-size);font-weight:var(--text-label-md-weight);color:var(--color-on-surface-variant);white-space:nowrap;padding-right:var(--space-md)}.menu-cell{background:var(--color-surface-container-low);width:100%;min-height:64px;color:var(--color-on-surface);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:var(--text-body-sm-size);text-align:left;cursor:pointer;border:none;flex-direction:column;align-items:flex-start;gap:2px;font-weight:500;transition:background-color .15s;display:flex}.menu-cell:hover{background:var(--color-primary-container);color:var(--color-on-primary-container)}.menu-cell--static{cursor:default;background:var(--color-surface-container-low)}.menu-cell--static:hover{background:var(--color-surface-container-low);color:inherit}.menu-cell--empty{color:var(--color-on-surface-variant);background:0 0;align-items:center}.menu-cell-servings{font-size:var(--text-label-sm-size,.7rem);color:var(--color-on-surface-variant);display:block}.menu-expand-btn{display:none}@media (width>=900px){.menu-expand-btn{display:inline-flex}}.recipe-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.recipe-card{color:inherit;text-decoration:none;display:block}.recipe-card h2{font-size:var(--text-headline-md-size);line-height:var(--text-headline-md-line)}.favorite-star{cursor:pointer;padding:0 0 0 var(--space-sm);color:var(--color-tertiary);background:0 0;border:none;font-size:1.5rem;line-height:1}.recipe-meta{color:var(--color-on-surface-variant);font-size:var(--text-body-sm-size);margin-bottom:0}.ingredient-list{padding-left:var(--space-lg);margin:0}.ingredient-list li{font-size:var(--text-body-md-size);margin-bottom:var(--space-xs)}.ingredient-suggestions{z-index:10;background:var(--color-surface-container-lowest);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);margin:var(--space-xs) 0 0;max-height:200px;box-shadow:var(--shadow-level-1);padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.ingredient-suggestions li button{text-align:left;width:100%;padding:var(--space-xs) var(--space-sm);cursor:pointer;font-size:var(--text-body-md-size);color:var(--color-on-surface);background:0 0;border:none;display:block}.ingredient-suggestions li button:hover{background:var(--color-surface-container-low)}
