/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:"DM Sans", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-2xl:42rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{color-scheme:light;--light-background:#f4f4f5;--dark-background:#1c1c1f;--background:var(--light-background);--light-surface:#fff;--dark-surface:#252528;--surface:var(--light-surface);--light-ink:#292b2d;--dark-ink:#e9e9eb;--ink:var(--light-ink);--light-muted:#65666b;--dark-muted:#aaaab2;--muted:var(--light-muted);--light-line:#dadade;--dark-line:#414147;--line:var(--light-line);--light-accent:#37634b;--dark-accent:#a1c9ab;--accent:var(--light-accent);--light-button-background:#37634b;--dark-button-background:#a1c9ab;--button-background:var(--light-button-background);--light-button-hover:#294e3a;--dark-button-hover:#b5d9bd;--button-hover:var(--light-button-hover);--light-on-primary:#fff;--dark-on-primary:#17291e;--on-primary:var(--light-on-primary);--light-control-border:#bfc0c6;--dark-control-border:#73737f;--control-border:var(--light-control-border);--light-placeholder:#65666b;--dark-placeholder:#aaaab2;--placeholder:var(--light-placeholder);--light-hover:#ededf0;--dark-hover:#303035;--hover:var(--light-hover);--light-active:#e5e5ea;--dark-active:#3a3a42;--active:var(--light-active);--light-icon-hover:#ededf0;--dark-icon-hover:#303035;--icon-hover:var(--light-icon-hover);--light-soft-line:#e9e9ec;--dark-soft-line:#333339;--soft-line:var(--light-soft-line);--light-entry-line:#e0e0e4;--dark-entry-line:#39393f;--entry-line:var(--light-entry-line);--light-selection:#d2e6d6;--dark-selection:#33543c;--selection:var(--light-selection);--light-selection-ink:#20382a;--dark-selection-ink:#e3ebe4;--selection-ink:var(--light-selection-ink);--light-scroll-thumb:#a9b7ac;--dark-scroll-thumb:#718d7a;--scroll-thumb:var(--light-scroll-thumb);--light-calories-bar:#557763;--dark-calories-bar:#86b796;--calories-bar:var(--light-calories-bar);--light-calories-track:#e1e9df;--dark-calories-track:#28382d;--calories-track:var(--light-calories-track);--light-calories-background:#e5eee7;--dark-calories-background:#263e2f;--calories-background:var(--light-calories-background);--light-calories-ink:#305c46;--dark-calories-ink:#b9d9bf;--calories-ink:var(--light-calories-ink);--light-protein-bar:#657b9c;--dark-protein-bar:#94afd1;--protein-bar:var(--light-protein-bar);--light-protein-track:#e3e8ef;--dark-protein-track:#2b3645;--protein-track:var(--light-protein-track);--light-protein-background:#e7edf6;--dark-protein-background:#28384b;--protein-background:var(--light-protein-background);--light-protein-ink:#3f5779;--dark-protein-ink:#c1d5ed;--protein-ink:var(--light-protein-ink);--light-carbs-bar:#a17b45;--dark-carbs-bar:#c9a56b;--carbs-bar:var(--light-carbs-bar);--light-carbs-track:#eee7db;--dark-carbs-track:#3e3525;--carbs-track:var(--light-carbs-track);--light-carbs-background:#f3ead9;--dark-carbs-background:#433923;--carbs-background:var(--light-carbs-background);--light-carbs-ink:#74541f;--dark-carbs-ink:#ead2a5;--carbs-ink:var(--light-carbs-ink);--light-fat-bar:#927491;--dark-fat-bar:#b79bc5;--fat-bar:var(--light-fat-bar);--light-fat-track:#eae2e9;--dark-fat-track:#3b2d40;--fat-track:var(--light-fat-track);--light-fat-background:#efe5ef;--dark-fat-background:#403045;--fat-background:var(--light-fat-background);--light-fat-ink:#704b70;--dark-fat-ink:#ddc4e5;--fat-ink:var(--light-fat-ink);--light-success-background:#e6efe2;--dark-success-background:#263e2f;--success-background:var(--light-success-background);--light-success-ink:#36533e;--dark-success-ink:#b9d9bf;--success-ink:var(--light-success-ink);--light-error-background:#f8e9e2;--dark-error-background:#442b25;--error-background:var(--light-error-background);--light-error-ink:#8c3b29;--dark-error-ink:#efb3a0;--error-ink:var(--light-error-ink);--light-error-border:#b2523c;--dark-error-border:#d18c75;--error-border:var(--light-error-border);--light-danger-background:#f4e6e1;--dark-danger-background:#442b25;--danger-background:var(--light-danger-background);--light-danger-ink:#99432f;--dark-danger-ink:#efb3a0;--danger-ink:var(--light-danger-ink);--light-readonly-background:#e5eee759;--dark-readonly-background:#263e2f59;--readonly-background:var(--light-readonly-background);--light-auto-add-fill:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root{--light-auto-add-fill:color-mix(in srgb, var(--accent) 30%, white)}}:root{--dark-auto-add-fill:#375e45;--auto-add-fill:var(--light-auto-add-fill);--light-shadow-rgb:38 59 48;--dark-shadow-rgb:0 0 0;--shadow-rgb:var(--light-shadow-rgb);--light-camera-background:#263b30;--dark-camera-background:#0e1510;--camera-background:var(--light-camera-background)}:root[data-palette=neutral]{--light-background:#f4f4f5;--dark-background:#1c1c1f;--light-surface:#fff;--dark-surface:#252528;--light-ink:#292b2d;--dark-ink:#e9e9eb;--light-muted:#65666b;--dark-muted:#aaaab2;--light-line:#dadade;--dark-line:#414147;--light-control-border:#bfc0c6;--dark-control-border:#73737f;--light-placeholder:#65666b;--dark-placeholder:#aaaab2;--light-hover:#ededf0;--dark-hover:#303035;--light-active:#e5e5ea;--dark-active:#3a3a42;--light-icon-hover:#ededf0;--dark-icon-hover:#303035;--light-soft-line:#e9e9ec;--dark-soft-line:#333339;--light-entry-line:#e0e0e4;--dark-entry-line:#39393f}:root[data-palette=slate]{--light-background:#f0f3f7;--dark-background:#19212d;--light-surface:#fff;--dark-surface:#222d3d;--light-ink:#253447;--dark-ink:#e3eaf5;--light-muted:#5d6d80;--dark-muted:#afbdd0;--light-line:#d5deea;--dark-line:#3e4d62;--light-control-border:#b9c7d8;--dark-control-border:#7187a4;--light-placeholder:#5d6d80;--dark-placeholder:#afbdd0;--light-hover:#e4ebf4;--dark-hover:#2d3a4d;--light-active:#dce6f3;--dark-active:#384a62;--light-icon-hover:#e4ebf4;--dark-icon-hover:#2d3a4d;--light-soft-line:#e4eaf2;--dark-soft-line:#303d50;--light-entry-line:#dce4ef;--dark-entry-line:#37465b}:root[data-palette=stone]{--light-background:#f5f1e9;--dark-background:#25211d;--light-surface:#fffcf7;--dark-surface:#302a25;--light-ink:#3d3429;--dark-ink:#f0e7dc;--light-muted:#756652;--dark-muted:#bcad9a;--light-line:#ded4c5;--dark-line:#53483d;--light-control-border:#c0b09c;--dark-control-border:#94816d;--light-placeholder:#756652;--dark-placeholder:#bcad9a;--light-hover:#ece4d8;--dark-hover:#3d342c;--light-active:#e3d7c7;--dark-active:#4a3e32;--light-icon-hover:#ece4d8;--dark-icon-hover:#3d342c;--light-soft-line:#e9e0d4;--dark-soft-line:#42382f;--light-entry-line:#e3d9cb;--dark-entry-line:#493e33}:root[data-palette=sage]{--light-background:#f7f8f4;--dark-background:#151c18;--light-surface:#fff;--dark-surface:#1d2721;--light-ink:#263b30;--dark-ink:#e3ebe4;--light-muted:#617068;--dark-muted:#a5b5a9;--light-line:#dde3da;--dark-line:#39493e;--light-control-border:#c9d4c8;--dark-control-border:#647c6c;--light-placeholder:#67766a;--dark-placeholder:#a5b5a9;--light-hover:#eaf0e6;--dark-hover:#29372d;--light-active:#e4ebdf;--dark-active:#314436;--light-icon-hover:#e8eee4;--dark-icon-hover:#29372d;--light-soft-line:#edf0ea;--dark-soft-line:#2d3c32;--light-entry-line:#e5e9e0;--dark-entry-line:#324137}:root[data-appearance=dark]{color-scheme:dark;--background:var(--dark-background);--surface:var(--dark-surface);--ink:var(--dark-ink);--muted:var(--dark-muted);--line:var(--dark-line);--accent:var(--dark-accent);--button-background:var(--dark-button-background);--button-hover:var(--dark-button-hover);--on-primary:var(--dark-on-primary);--control-border:var(--dark-control-border);--placeholder:var(--dark-placeholder);--hover:var(--dark-hover);--active:var(--dark-active);--icon-hover:var(--dark-icon-hover);--soft-line:var(--dark-soft-line);--entry-line:var(--dark-entry-line);--selection:var(--dark-selection);--selection-ink:var(--dark-selection-ink);--scroll-thumb:var(--dark-scroll-thumb);--calories-bar:var(--dark-calories-bar);--calories-track:var(--dark-calories-track);--calories-background:var(--dark-calories-background);--calories-ink:var(--dark-calories-ink);--protein-bar:var(--dark-protein-bar);--protein-track:var(--dark-protein-track);--protein-background:var(--dark-protein-background);--protein-ink:var(--dark-protein-ink);--carbs-bar:var(--dark-carbs-bar);--carbs-track:var(--dark-carbs-track);--carbs-background:var(--dark-carbs-background);--carbs-ink:var(--dark-carbs-ink);--fat-bar:var(--dark-fat-bar);--fat-track:var(--dark-fat-track);--fat-background:var(--dark-fat-background);--fat-ink:var(--dark-fat-ink);--success-background:var(--dark-success-background);--success-ink:var(--dark-success-ink);--error-background:var(--dark-error-background);--error-ink:var(--dark-error-ink);--error-border:var(--dark-error-border);--danger-background:var(--dark-danger-background);--danger-ink:var(--dark-danger-ink);--readonly-background:var(--dark-readonly-background);--auto-add-fill:var(--dark-auto-add-fill);--shadow-rgb:var(--dark-shadow-rgb);--camera-background:var(--dark-camera-background)}@media (prefers-color-scheme:dark){:root:not([data-appearance=light]){color-scheme:dark;--background:var(--dark-background);--surface:var(--dark-surface);--ink:var(--dark-ink);--muted:var(--dark-muted);--line:var(--dark-line);--accent:var(--dark-accent);--button-background:var(--dark-button-background);--button-hover:var(--dark-button-hover);--on-primary:var(--dark-on-primary);--control-border:var(--dark-control-border);--placeholder:var(--dark-placeholder);--hover:var(--dark-hover);--active:var(--dark-active);--icon-hover:var(--dark-icon-hover);--soft-line:var(--dark-soft-line);--entry-line:var(--dark-entry-line);--selection:var(--dark-selection);--selection-ink:var(--dark-selection-ink);--scroll-thumb:var(--dark-scroll-thumb);--calories-bar:var(--dark-calories-bar);--calories-track:var(--dark-calories-track);--calories-background:var(--dark-calories-background);--calories-ink:var(--dark-calories-ink);--protein-bar:var(--dark-protein-bar);--protein-track:var(--dark-protein-track);--protein-background:var(--dark-protein-background);--protein-ink:var(--dark-protein-ink);--carbs-bar:var(--dark-carbs-bar);--carbs-track:var(--dark-carbs-track);--carbs-background:var(--dark-carbs-background);--carbs-ink:var(--dark-carbs-ink);--fat-bar:var(--dark-fat-bar);--fat-track:var(--dark-fat-track);--fat-background:var(--dark-fat-background);--fat-ink:var(--dark-fat-ink);--success-background:var(--dark-success-background);--success-ink:var(--dark-success-ink);--error-background:var(--dark-error-background);--error-ink:var(--dark-error-ink);--error-border:var(--dark-error-border);--danger-background:var(--dark-danger-background);--danger-ink:var(--dark-danger-ink);--readonly-background:var(--dark-readonly-background);--auto-add-fill:var(--dark-auto-add-fill);--shadow-rgb:var(--dark-shadow-rgb);--camera-background:var(--dark-camera-background)}}body{background:var(--background);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.5}[hidden]{display:none!important}::selection{background:var(--selection);color:var(--selection-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button,input,a{-webkit-tap-highlight-color:transparent}button,input[type=submit]{cursor:pointer}button:disabled,input:disabled{cursor:default}input,select,textarea{color:var(--ink);caret-color:var(--accent);accent-color:var(--accent)}a{text-underline-offset:4px}*{scrollbar-color:var(--scroll-thumb) var(--background);scrollbar-width:thin}}@layer components{.app-shell{padding-top:max(24px, env(safe-area-inset-top));padding-bottom:max(24px, env(safe-area-inset-bottom))}.app-header{grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:12px;padding-bottom:24px;display:grid}.app-header.has-calendar{grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px}.header-date-navigation{align-items:center;gap:4px;min-width:0;display:flex}.header-date-navigation>.icon-button{flex:none}.header-identity{align-items:center;gap:12px;min-width:0;display:flex}.header-date{letter-spacing:-.025em;text-wrap:balance;min-width:0;font-size:22px;font-weight:650;line-height:1.25}.header-date-short{display:none}.header-calendar{place-items:center;width:44px;height:44px;display:grid;position:relative}.header-calendar-trigger .icon{width:20px;height:20px}.header-calendar-input{opacity:0;pointer-events:none;width:44px;height:44px;position:absolute;inset:0}.header-calendar-input.is-visible{opacity:1;pointer-events:auto;background:var(--surface);width:148px;min-height:44px;color:var(--ink);border:1px solid var(--line);z-index:55;border-radius:7px;padding:8px;font-size:16px;inset:48px 0 auto auto}@media (max-width:600px){.header-date{font-size:18px}.header-date-long{display:none}.header-date-short{display:inline}}.wordmark{flex:none;justify-content:center;align-items:center;width:44px;min-height:44px;display:inline-flex}.brand-mark{width:32px;height:32px;color:var(--accent)}.language-switch{border:1px solid var(--line);border-radius:9px;padding:3px}.language-link{color:var(--muted);border-radius:6px;padding:5px 9px;font-size:12px;font-weight:650}.language-link:hover{color:var(--ink);background:var(--hover)}.language-link.is-active{color:var(--ink);background:var(--active)}h1{letter-spacing:-.035em;text-wrap:balance;font-size:30px;font-weight:650;line-height:1.15}.day-subtitle{color:var(--muted);margin-top:6px;font-size:13px}.icon{flex:none;width:18px;height:18px}.icon-button{width:44px;height:44px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--icon-hover);color:var(--ink)}.icon-button:disabled{opacity:.3;background:0 0}.back-today{color:var(--accent);margin-top:10px;font-size:13px;text-decoration:underline;display:inline-block}.macro-section{border-top:1px solid var(--line);gap:22px;padding:25px 0 28px;display:grid}.macro-row{--bar:var(--calories-bar);--track:var(--calories-track)}.macro-protein{--bar:var(--protein-bar);--track:var(--protein-track)}.macro-carbs{--bar:var(--carbs-bar);--track:var(--carbs-track)}.macro-fat{--bar:var(--fat-bar);--track:var(--fat-track)}.is-within .macro-caption{color:var(--accent);font-weight:550}.range-band{border:1px solid var(--ink);height:100%;box-shadow:inset 0 0 0 1px var(--background);z-index:1;pointer-events:none;background:0 0;border-radius:2px;position:absolute;top:0}.macro-label h2{font-size:15px;font-weight:600}.macro-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.macro-value strong{font-size:18px;font-weight:600}.macro-value span{color:inherit}.nutrient-badge{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:6px;align-items:baseline;gap:4px;padding:3px 8px;font-size:12px;font-weight:550;line-height:1.5;display:inline-flex}.badge-calories{color:var(--calories-ink);background:var(--calories-background)}.badge-protein{color:var(--protein-ink);background:var(--protein-background)}.badge-carbs{color:var(--carbs-ink);background:var(--carbs-background)}.badge-fat{color:var(--fat-ink);background:var(--fat-background)}.nutrient-badges{flex-wrap:wrap;align-items:center;gap:5px;margin-top:7px;display:flex}.macro-value.nutrient-badge{white-space:normal;flex-wrap:wrap;justify-content:flex-end}.macro-track{background:var(--track);border-radius:5px;height:10px;margin-top:9px;position:relative;overflow:hidden}.macro-fill{background:var(--bar);border-radius:inherit;transform-origin:0;width:100%;height:100%}.macro-caption{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;margin-top:6px;font-size:12px}.is-over .macro-caption{color:var(--danger-ink);font-weight:550}.profile-editor{border-top:1px solid var(--line);margin-bottom:0}.profile-editor summary{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;min-height:56px;padding:12px 0;font-size:14px;font-weight:550;display:flex}.profile-editor summary::marker{content:""}.profile-editor summary::-webkit-details-marker{display:none}.profile-summary-hint{color:var(--accent);text-underline-offset:4px;font-size:12px;text-decoration:underline}.profile-content{padding:0 0 20px}.profile-description{color:var(--muted);max-width:60ch;margin-bottom:16px;font-size:13px}.range-grid{grid-template-columns:minmax(80px,1fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;display:grid}.range-grid .field{margin:0 0 12px}.range-grid .field input{font-variant-numeric:tabular-nums}.range-column-labels{color:var(--muted);margin-bottom:8px;font-size:12px}.range-macro-name{margin-bottom:12px;font-size:13px}.range-macro-name span{color:var(--muted);font-size:11px}.profile-footer{padding-top:6px}.priority-note{color:var(--ink);font-size:13px}.budget-cap-caption{color:var(--muted);margin-top:3px;font-weight:400;display:block}.budget-note{color:var(--muted);font-size:12px}.range-warning{color:var(--error-ink);margin:-4px 0 12px;font-size:12px}.calorie-goal-field{max-width:250px}.calorie-goal-field input{padding-right:50px}.profile-footer p{color:var(--muted);font-size:12px}.profile-calorie-range output{color:var(--ink);font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px;font-weight:600;display:block}.chopshop-section{border-top:1px solid var(--line);padding-bottom:24px}.chopshop-row .entry-details{flex:200px}.meal-slot,.meal-count{color:var(--muted);margin-bottom:4px;font-size:11px}.meal-count{margin-top:6px;margin-bottom:0}.meal-warning{color:var(--error-ink);margin-top:5px;font-size:12px}.removed-meals{margin-top:16px;font-size:13px}.removed-meals summary{cursor:pointer;color:var(--accent);padding:10px 0}.meal-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.meal-logged{color:var(--accent);font-size:12px}.entry-section{border-top:1px solid var(--line)}.section-heading{padding:24px 0 17px}.section-heading h2{letter-spacing:-.02em;font-size:18px;font-weight:600}.entry-count{color:var(--muted);margin-left:5px;font-size:13px;font-weight:450}.primary-button{background:var(--button-background);color:var(--on-primary);border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 15px;font-size:13px;font-weight:550;display:inline-flex}.primary-button:hover{background:var(--button-hover)}.primary-button:disabled{opacity:.6}.primary-button .icon{width:16px;height:16px}.entry-editor{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:12px 18px 18px}.editor-heading{margin-bottom:10px}.editor-heading h3{font-size:16px;font-weight:600}.field{min-width:0;margin-bottom:17px}.field label{margin-bottom:6px;font-size:12px;font-weight:550;display:inline-block}.optional-label{color:var(--muted);margin-left:6px;font-size:11px}.field input,.field select,.field textarea{border:1px solid var(--control-border);background:var(--surface);border-radius:7px;width:100%;min-width:0;min-height:44px;padding:9px 11px;font-size:16px}.field input::placeholder{color:var(--placeholder)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.field textarea{resize:vertical}.number-input{position:relative}.number-input input{font-variant-numeric:tabular-nums;appearance:textfield;padding-right:24px}.number-input input::-webkit-inner-spin-button{appearance:none}.number-input span{color:var(--muted);pointer-events:none;font-size:13px;position:absolute;top:11px;right:11px}.editor-footer{border-top:1px solid var(--soft-line);padding-top:16px}.calorie-preview{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.calorie-preview .calorie-hint{color:var(--muted);font-size:11px;font-weight:400;display:block}.calorie-preview .nutrient-badge{font-size:15px}.text-button{color:var(--accent);justify-content:center;align-items:center;min-height:44px;padding:8px 0;font-size:13px;display:inline-flex}.text-button:hover{text-decoration:underline}.empty-state{padding:30px 0 35px}.empty-state p:first-child{font-size:15px;font-weight:500}.muted{color:var(--muted);margin-top:4px;font-size:13px}.entry-row{border-bottom:1px solid var(--entry-line);justify-content:space-between;align-items:center;gap:10px;padding:17px 0;display:flex}.entry-details{min-width:0}.entry-row h3{overflow-wrap:anywhere;font-size:14px;font-weight:550}.entry-calories{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.entry-macros{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:5px;font-size:12px}.entry-actions{flex:none}.delete-button{color:var(--danger-ink)}.delete-button:hover{background:var(--danger-background);color:var(--danger-ink)}.app-footer:has(>button[hidden]){display:none}.app-footer{color:var(--muted);padding-top:28px;font-size:12px}.notice{background:var(--success-background);color:var(--success-ink);border-radius:8px;margin-bottom:20px;padding:10px 14px;font-size:13px}.form-errors,.connection-notice{background:var(--error-background);color:var(--error-ink);border-radius:8px;margin-bottom:16px;padding:11px 13px;font-size:13px}.form-errors li+li{margin-top:4px}.field_with_errors{display:contents}.field_with_errors input{border-color:var(--error-border)}.quick-entry{border-bottom:1px solid var(--line);margin-bottom:20px;padding:4px 0 20px}.quick-entry h4{font-size:15px;font-weight:600}.quick-entry .muted,.quick-status{font-size:12px}.quick-sentence{margin:14px 0 8px}.sentence-editor{position:relative}.sentence-editor textarea,.sentence-highlights{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;border:1px solid #0000;border-radius:7px;width:100%;padding:12px 104px 12px 12px;font-size:16px;line-height:1.7}.sentence-editor textarea{border-color:var(--control-border);resize:vertical;min-height:84px;caret-color:var(--accent);background:0 0;display:block;position:relative}.sentence-editor textarea::placeholder{color:var(--muted)}.sentence-highlights{pointer-events:none;color:#0000;position:absolute;inset:0;overflow:hidden}.sentence-highlights mark{background:var(--calories-background);color:#0000;border-radius:3px}.sentence-highlights mark[data-kind=protein]{background:var(--protein-background)}.sentence-highlights mark[data-kind=fat]{background:var(--fat-background)}.sentence-highlights mark[data-kind=carbs],.sentence-highlights mark[data-kind=quantity]{background:var(--carbs-background)}.quick-status{color:var(--muted);margin-top:10px}.quick-status.is-error{color:var(--error-ink)}.quick-result{margin-top:10px}.quick-result .nutrient-badges{margin-top:0}.carb-calculator{margin-top:12px}.carb-calculator summary{cursor:pointer;color:var(--accent);min-height:44px;padding:10px 0;font-size:13px}.carb-calculator .macro-fields{margin-top:12px}.prototype-note{color:var(--muted);margin-top:12px;font-size:11px}.quick-completions{z-index:10;background:var(--surface);border:1px solid var(--line);width:min(320px,100%);max-height:260px;box-shadow:0 6px 18px rgb(var(--shadow-rgb) / 12%);border-radius:7px;position:absolute;overflow-y:auto}.completion-option{text-align:left;cursor:pointer;overflow-wrap:anywhere;gap:2px;width:100%;min-height:44px;padding:10px 12px;font-size:13px;display:grid}.completion-option small,.completion-empty{color:var(--muted);font-size:12px}.completion-option[aria-selected=true],.completion-option:hover{background:var(--calories-background)}.completion-empty{padding:12px}.completion-mirror{visibility:hidden;height:auto;bottom:auto;overflow:visible}.quick-table-scroll{margin-top:18px;overflow-x:auto}.quick-nutrition-table{border-collapse:collapse;text-align:right;font-variant-numeric:tabular-nums;width:100%;min-width:420px;font-size:12px}.quick-nutrition-table th,.quick-nutrition-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 8px}.quick-nutrition-table th:first-child{text-align:left;width:40%;padding-left:0}.quick-nutrition-table thead th{color:var(--muted);font-size:12px;font-weight:550}.quick-nutrition-table thead th span{font-size:11px;font-weight:400;display:block}.quick-nutrition-table tbody th{overflow-wrap:anywhere;font-weight:450}.quick-nutrition-table tbody th small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.quick-nutrition-table tfoot th,.quick-nutrition-table tfoot td{border-top:1px solid var(--ink);border-bottom:0;padding-top:14px;font-weight:650}.quick-nutrition-table .table-empty{text-align:left;color:var(--muted);padding:20px 0}.table-item-name{text-align:left;min-height:44px;color:var(--accent);margin:-10px 0;padding:10px 0}.table-item-name:hover{text-decoration:underline}.voice-privacy{color:var(--muted);margin-top:5px;font-size:13px}.voice-provisional{color:var(--muted);font-style:italic}.sentence-editor textarea:read-only{background:var(--readonly-background)}.sentence-highlights mark[data-kind=food]{background:var(--selection);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px}.table-item-name.is-matched{background:var(--calories-background);border-radius:6px;min-height:44px;margin:0;padding:6px 8px}.voice-microphone{z-index:2;width:44px;height:44px;color:var(--accent);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:8px;right:8px}.voice-microphone:hover:enabled{color:var(--ink)}.voice-microphone:disabled{opacity:.5;cursor:default}.voice-microphone svg{width:16px;height:16px}.voice-microphone .voice-stop-icon{display:none}.voice-microphone[data-state=listening]{color:var(--danger-ink)}.voice-microphone[data-state=listening] .voice-mic-icon{display:none}.voice-microphone[data-state=listening] .voice-stop-icon{display:block}.home-composer .quick-entry{border:0;margin:0;padding:0 0 24px}.home-composer .quick-sentence,.home-composer .quick-result{margin:0}.composer-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:12px;display:flex}.tracker-add-button,.tracker-add-button:hover{isolation:isolate;min-width:170px;color:var(--ink);background:var(--background);border-color:var(--line);position:relative;overflow:hidden}.tracker-add-button:hover{border-color:var(--accent)}.auto-add-countdown,.auto-add-countdown:hover{isolation:isolate;min-width:170px;color:var(--ink);background:var(--background);border-color:var(--accent);position:relative;overflow:hidden}.auto-add-countdown:before{content:"";z-index:-1;background:var(--auto-add-fill);transform:scaleX(var(--auto-add-progress,0));transform-origin:0;pointer-events:none;position:absolute;inset:0}.auto-input-control{min-height:44px;color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.auto-input-control input{width:18px;height:18px;accent-color:var(--accent)}.input-options{margin-top:4px;font-size:13px}.input-options>summary{color:var(--muted);cursor:pointer;min-height:44px;padding:10px 0}.home-plans{border-top:1px solid var(--line);font-size:14px}.home-plans>summary{cursor:pointer;min-height:48px;padding:14px 0;font-weight:550}.home-plans .chopshop-section{border-top:0}.navigation-menu{position:relative}.navigation-menu>summary{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:44px;height:44px;list-style:none;display:flex}.navigation-menu>summary::-webkit-details-marker{display:none}.navigation-menu>summary svg{width:22px;height:22px}.navigation-menu>summary:hover,.navigation-menu[open]>summary{background:var(--calories-background)}.navigation-panel{z-index:50;background:var(--surface);border:1px solid var(--line);width:min(240px,100vw - 40px);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / 8%);border-radius:8px;padding:8px;position:absolute;top:50px;right:0}.navigation-panel>a,.navigation-panel .navigation-item,.navigation-submenu>summary,.navigation-submenu-links>a{border-radius:4px;align-items:center;min-height:44px;padding:8px 12px;display:flex}.navigation-panel>a:hover,.navigation-panel>a[aria-current=page],.navigation-panel .navigation-item:hover,.navigation-submenu>summary:hover,.navigation-submenu-links>a:hover,.navigation-submenu-links>a[aria-current=page]{background:var(--calories-background);color:var(--accent)}.navigation-panel .navigation-item{width:100%;font:inherit;text-align:left;color:inherit;background:0 0}.navigation-submenu>summary{cursor:pointer;justify-content:space-between;list-style:none}.navigation-submenu>summary::-webkit-details-marker{display:none}.navigation-submenu>summary svg{flex:none;width:16px;height:16px}.navigation-submenu[open]>summary svg{transform:rotate(90deg)}.navigation-submenu-links{padding-left:12px}.navigation-panel .language-switch{border:0;border-top:1px solid var(--line);border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;margin-top:8px;padding:8px 0 0;display:grid}.navigation-panel .language-link{justify-content:center;align-items:center;min-height:44px;padding:8px 12px;line-height:1;display:flex}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-bottom:24px;display:flex}.page-heading-copy{flex:200px;min-width:0}.page-heading-copy h1{overflow-wrap:anywhere}.page-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-back{align-items:center;gap:6px;min-height:44px;margin-bottom:4px;display:inline-flex}.form-actions{border-top:1px solid var(--soft-line);flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding-top:16px;display:flex}.form-actions .primary-button{margin:0}.navigation-submenu[data-current-section=true]>summary{color:var(--accent)}.skip-link{z-index:100;background:var(--surface);color:var(--ink);border:1px solid var(--accent);border-radius:7px;padding:10px 15px;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.navigation-panel{max-height:calc(100dvh - 100px);overflow-y:auto}.page-heading h1{letter-spacing:-.025em;font-size:26px;font-weight:550}.options-section{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:24px}.options-section h2{margin-bottom:8px;font-size:16px;font-weight:550}.ingredient-heading,.ingredient-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ingredient-heading .primary-button{align-items:center;display:inline-flex}.ingredient-search,.ingredient-barcode-controls{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;margin-bottom:20px;display:flex}.ingredient-search .field,.ingredient-barcode-controls .field{flex:180px;margin:0}.ingredient-search .primary-button{margin-bottom:0}.ingredient-pagination{justify-content:space-between;align-items:center;gap:12px;margin-block:16px;display:flex}.ingredient-pagination>span{white-space:nowrap}.barcode-video{object-fit:cover;background:var(--camera-background);border-radius:7px;width:100%;max-height:300px;display:block}.ingredient-form{margin-top:24px}.ingredient-form h2,.ingredient-log h2{margin-bottom:8px;font-size:16px;font-weight:550}.ingredient-name{margin-top:18px}.ingredient-nutrition-table{border-collapse:collapse;width:100%;font-size:14px}.ingredient-nutrition-table caption{text-align:left;color:var(--muted);padding-bottom:12px;font-size:13px}.ingredient-nutrition-table th,.ingredient-nutrition-table td{border-bottom:1px solid var(--line);text-align:left;padding:10px 0}.ingredient-nutrition-table thead th{color:var(--muted);font-size:12px;font-weight:450}.ingredient-nutrition-table tbody th{width:54%;padding-right:12px;font-weight:550}.ingredient-nutrition-table small{color:var(--muted);font-size:11px;font-weight:400;display:block}.ingredient-nutrition-table input{border:1px solid var(--control-border);font-variant-numeric:tabular-nums;background:var(--surface);border-radius:7px;width:100%;min-height:44px;padding:9px 46px 9px 11px;font-size:16px}.ingredient-form .editor-footer{margin-top:18px}.ingredient-log{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.ingredient-log form,.ingredient-log input[type=submit]{margin-top:18px}.ingredient-log .ingredient-actions{justify-content:flex-start;margin-top:16px}.ingredient-form .field input,.ingredient-search .field input,.ingredient-barcode-controls .field input,.ingredient-log .field input{font-size:16px}.meal-section-title{margin-bottom:8px;font-size:18px;font-weight:600}.meal-ingredients{margin-top:16px}.meal-ingredient-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 100px;align-items:end;gap:8px 12px;padding:12px 0;display:grid}.meal-ingredient-row .field{margin:0}.meal-ingredient-row label{overflow-wrap:anywhere}.meal-ingredient-row select{border:1px solid var(--control-border);background:var(--surface);width:100%;min-height:44px;font:inherit;border-radius:7px;padding:9px 6px;font-size:16px}.meal-ingredient-row input{font-variant-numeric:tabular-nums;font-size:16px}.meal-remove{grid-column:1/-1;justify-self:end}.meal-preview{padding:18px 0 24px}.meal-preview h2{font-size:18px;font-weight:600}.meal-source{margin-top:24px}.composer-meal{border-top:1px solid var(--line);margin:12px 0;padding-top:16px}.composer-meal>details{margin-bottom:12px}.composer-meal>details>summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:13px}.composer-meal .nutrient-badges{margin-bottom:12px}.composer-meal .ingredient-actions{margin-top:12px}.sentence-clear{z-index:2;width:44px;height:44px;color:var(--muted);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:8px;right:52px}.sentence-clear:hover:enabled{color:var(--ink)}.sentence-clear:disabled{opacity:.35}.sentence-clear .icon{width:16px;height:16px}.macro-breakdown-trigger{min-width:44px;min-height:44px;color:inherit;text-align:left;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--muted);-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:4px;align-items:center;margin-block:-11px;display:inline-flex}.macro-breakdown-trigger:hover,.macro-breakdown-trigger[aria-expanded=true]{color:var(--accent);text-decoration-style:solid}.macro-breakdown{z-index:50;border:1px solid var(--line);background:var(--surface);width:min(22rem,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / 14%);border-radius:12px;flex-direction:column;padding:8px 16px 16px;display:flex;position:fixed}.macro-breakdown-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;display:flex}.macro-breakdown-heading h3{font-size:15px;font-weight:600}.macro-breakdown-heading .icon-button{margin-right:-10px}.macro-breakdown-list{overscroll-behavior:contain;min-height:0;max-height:18rem;overflow-y:auto}.macro-breakdown-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;font-size:13px;display:flex}.macro-breakdown-name{overflow-wrap:anywhere;min-width:0}.macro-breakdown-list .nutrient-badge{flex-shrink:0}.macro-breakdown-total{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:space-between;gap:16px;margin-top:4px;padding-top:12px;font-size:13px;display:flex}.macro-breakdown-empty{padding:12px 0;font-size:13px}.composer-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.composer-tools-four{grid-template-columns:repeat(4,minmax(0,1fr))}.entry-view-tools{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:0}.entry-selection-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.entry-selection-actions:has(button[hidden]){display:none}.composer-tool{border:1px solid var(--line);min-height:44px;color:var(--accent);text-align:center;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 8px;font-size:13px;line-height:1.4;display:inline-flex}.composer-tool:hover,.composer-tool[aria-expanded=true],.composer-tool[aria-current=true]{background:var(--background);border-color:var(--accent)}.composer-tool[aria-current=true]{background:var(--calories-background);font-weight:650}.composer-tool:disabled{opacity:.5;cursor:default}.fill-up-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.fill-up-form .field select{border:1px solid var(--control-border);background:var(--surface);width:100%;min-height:44px;color:var(--ink);border-radius:7px;padding:9px 10px;font-size:16px}.fill-up-result{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.fill-up-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.fill-up-summary dt{color:var(--muted);font-size:13px}.fill-up-summary dd{font-variant-numeric:tabular-nums;margin-top:4px;font-size:15px}.fill-up-ingredient{font-size:15px;font-weight:550}.fill-up-amount{font-variant-numeric:tabular-nums;margin:4px 0 12px}.fill-up-amount strong{letter-spacing:-.035em;font-size:30px;font-weight:650}.fill-up-amount span{color:var(--muted);font-size:15px}.fill-up-projection{margin:20px 0}.fill-up-projection th small{color:var(--muted);font-weight:400}.fill-up-review{align-items:center;display:inline-flex}@media (max-width:600px){.composer-tools-four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.composer-tool{flex-direction:column;gap:4px;padding:8px 4px}}.install-banner{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-bottom:24px;padding:12px 16px 16px}.install-banner-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.install-banner-heading h2{padding-top:8px;font-size:15px;font-weight:600}.install-banner-heading p{color:var(--muted);margin:4px 0 12px;font-size:13px}.install-banner-heading .icon-button{flex-shrink:0;margin-right:-8px}.install-banner-action{align-items:center;gap:8px;display:inline-flex}.install-help{margin-top:12px;font-size:13px;line-height:1.6}.install-help ol{padding-left:20px;list-style:decimal}.install-help li+li{margin-top:6px}.install-help p:empty{display:none}.appearance-settings{min-width:0}.appearance-settings legend{margin-bottom:8px;font-size:16px;font-weight:550}.palette-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 16px;display:grid}.palette-option{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:flex;position:relative}.palette-option:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.palette-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.palette-option input{flex:none;width:16px;height:16px}.palette-option-name{font-size:13px}.palette-swatch{border:1px solid var(--control-border);border-radius:7px;flex:none;width:32px;height:32px;display:flex;overflow:hidden}.palette-swatch span{width:50%}.palette-swatch-light{background:var(--swatch-light)}.palette-swatch-dark{background:var(--swatch-dark)}.palette-neutral{--swatch-light:#f4f4f5;--swatch-dark:#1c1c1f}.palette-slate{--swatch-light:#f0f3f7;--swatch-dark:#19212d}.palette-stone{--swatch-light:#f5f1e9;--swatch-dark:#25211d}.palette-sage{--swatch-light:#f7f8f4;--swatch-dark:#151c18}.appearance-mode{max-width:250px}.appearance-mode select{border:1px solid var(--control-border);width:100%;min-height:44px;color:var(--ink);background:var(--surface);border-radius:7px;padding:9px 10px;font-size:16px}@media (max-width:360px){.palette-option{flex-wrap:wrap;gap:6px;padding:8px}}.macro-visual{margin-top:9px;position:relative}.macro-visual .macro-track{margin-top:0}.macro-visual.is-in-range:after{content:"";border:1px solid var(--bar);opacity:.45;pointer-events:none;border-radius:8px;position:absolute;inset:-3px}.macro-target-orbit{opacity:0;pointer-events:none;width:calc(100% + 6px);height:calc(100% + 6px);position:absolute;inset:-3px;overflow:visible}.macro-target-orbit rect{fill:none;stroke:var(--bar);stroke-width:2px;stroke-dasharray:16 84;stroke-linecap:round;vector-effect:non-scaling-stroke}@media (prefers-reduced-motion:reduce){.macro-target-orbit rect{stroke-dasharray:none}}.entry-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.entry-section-heading h2{align-items:baseline;gap:8px;margin:0;display:inline-flex}.entry-section-heading .entry-count{margin-left:0}.entry-view-switch{flex:none;align-items:baseline;margin:0 0 0 auto;display:flex}.entry-view-toggle{white-space:nowrap;min-height:44px;color:var(--muted);align-items:center;gap:8px;padding-block:12px;font-size:13px;line-height:1.5;display:inline-flex}.toggle-track{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;width:30px;height:18px;padding:2px;display:inline-flex}.toggle-track>span{background:var(--muted);border-radius:50%;width:12px;height:12px}.entry-view-toggle[aria-checked=true] .toggle-track{background:var(--accent);border-color:var(--accent)}.entry-view-toggle[aria-checked=true] .toggle-track>span{background:var(--on-primary);margin-left:auto}.header-day-picker{flex:none;position:relative}.header-day-picker>summary{cursor:pointer;list-style:none}.header-day-picker>summary::-webkit-details-marker{display:none}.day-picker-panel{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:12px;width:min(290px,100vw - 40px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0000001f}.day-picker-panel nav{flex-wrap:wrap;gap:4px;margin-bottom:10px;display:flex}.day-picker-panel nav a{border-radius:6px;padding:10px 8px;font-size:13px}.day-picker-panel nav a[aria-current=date]{background:var(--accent);color:var(--on-primary)}.day-picker-form{align-items:end;gap:8px;display:flex}.day-picker-input{width:100%;min-width:0}.voice-microphone[data-state=listening]{background:var(--surface);border:2px solid;border-radius:50%;animation:1.4s ease-in-out infinite microphone-listening}.voice-microphone[data-state=connecting],.voice-microphone[data-state=stopping]{border:1px dashed;border-radius:50%}.portion-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(90px,120px) 44px;align-items:start;gap:10px;padding-block:12px;display:grid}.portion-row .field{min-width:0}.portion-row .icon-button{margin-top:24px}.portion-row select,.portion-row input{width:100%;min-width:0}.portion-preview{margin-block:24px}.portion-preview h2,.portion-save-options legend{margin-bottom:10px;font-size:15px;font-weight:600}.chopshop-row{flex-wrap:wrap}.portion-save-options{margin-block:20px}.portion-save-options label{cursor:pointer;align-items:center;gap:10px;min-height:44px;display:flex}.portion-save-options input{width:auto}@media (max-width:420px){.portion-row{grid-template-columns:minmax(0,1fr) 44px}.portion-row .field:first-child{grid-column:1/-1}.portion-row .icon-button{margin-top:24px}}.catalog-preview-row{flex-wrap:wrap}.catalog-preview-row .entry-details{flex:180px;min-width:0}.catalog-preview-row h2{overflow-wrap:anywhere;font-size:15px;font-weight:600}.recipe-library-row{flex-wrap:nowrap}.recipe-library-row .entry-details{flex:1;min-width:0}.recipe-summary{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.recipe-summary h2{overflow-wrap:anywhere;flex:1 0 100%;min-width:0;font-size:15px;font-weight:600}.recipe-summary .migration-tag,.recipe-library-row>a{white-space:nowrap;flex-shrink:0}.recipe-library-row .nutrient-badges{margin-top:6px}.catalog-description{white-space:pre-wrap;overflow-wrap:anywhere;margin-block:16px;line-height:1.7}.migration-tag{border:1px solid var(--line);color:var(--muted);border-radius:6px;margin-block:4px;padding:2px 7px;font-size:12px;line-height:1.5;display:inline-block}.migration-subtotal-choice{align-items:start;gap:10px;margin-bottom:12px;padding-block:12px;font-size:13px;display:flex}.migration-subtotal-choice input{flex:none;width:18px;height:18px;margin-top:2px}.account-navigation{justify-content:space-between;align-items:center;gap:12px;padding-bottom:20px;display:flex}.account-navigation nav{gap:12px;display:flex}.account-member{overflow-wrap:anywhere;flex-wrap:wrap}.account-member .entry-details{flex:180px;min-width:0}.account-invitation-link{width:100%}.admin-user-row{flex-wrap:wrap}.admin-user-row .entry-details{overflow-wrap:anywhere;flex:180px;min-width:0}.admin-user-row h2{font-size:15px;font-weight:600}.admin-user-meta{flex-wrap:wrap;gap:8px;display:flex}.admin-access{margin-top:24px;padding-top:24px}.admin-event{overflow-wrap:anywhere}.account-review .field select{border:1px solid var(--control-border);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:7px;padding:9px 11px}.catalog-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-block:16px 24px;display:flex}.catalog-editor .field{min-width:0;margin-bottom:16px}.catalog-editor input,.catalog-editor textarea{width:100%;min-width:0}.catalog-basics{grid-template-columns:minmax(0,1fr) 100px;gap:16px;display:grid}.catalog-check{align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.catalog-check input{flex:none;width:18px;height:18px}.catalog-editor h2{margin-bottom:8px;font-size:16px;font-weight:550}.recipe-line{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 90px 80px 44px;gap:8px 12px;padding-block:16px;display:grid}.recipe-line .field{margin-bottom:0}.recipe-line-remove{margin-top:24px}.recipe-line-optional{grid-column:1/-1}.catalog-metadata{grid-template-columns:minmax(0,1fr) 100px 120px;gap:12px;margin-top:16px;display:grid}.catalog-metadata input{width:100%;min-width:0}.product-results li{border-bottom:1px solid var(--line)}.product-results button{text-align:left;white-space:normal;overflow-wrap:anywhere}@media (max-width:540px){.recipe-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}.recipe-line-food{grid-column:1/-1}.catalog-metadata{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.catalog-metadata .field:first-child{grid-column:1/-1}.catalog-basics{grid-template-columns:minmax(0,1fr) 80px}}.app-shell:has(.planner-page){max-width:90rem}.planner-navigation{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.planner-navigation h2{font-size:15px;font-weight:600}.planner-days{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:24px;display:grid}.planner-days a{border-radius:7px;flex-direction:column;align-items:center;min-height:44px;padding:8px 2px;font-size:13px;display:flex}.planner-days a[aria-current=date]{color:var(--on-primary);background:var(--accent)}.planner-projection{max-width:42rem;margin-bottom:28px}.planner-nutrition{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px;font-size:13px;display:grid}.planner-nutrition dt{margin-bottom:6px;font-weight:600}.planner-nutrition dd{overflow-wrap:anywhere;margin:0 0 4px}.planner-week{table-layout:fixed;border-collapse:collapse;width:100%}.planner-week th,.planner-week td{border:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;padding:8px}.planner-week th{font-size:13px;font-weight:550}.planner-week th:first-child{width:76px}.planner-week th a{min-height:44px;padding-top:12px;display:block}.planner-meal{border-bottom:1px solid var(--line);min-width:0;margin-bottom:8px;padding-block:8px 16px}.planner-meal h3{overflow-wrap:anywhere;margin-bottom:6px;font-weight:600}.planner-meal p{margin-block:4px;font-size:13px}.planner-meal .composer-tool{white-space:normal;padding:8px}.planner-meal .text-button{text-align:left;white-space:normal}.planner-personal{margin-top:12px}.planner-personal summary,.tracker-plans summary{cursor:pointer;min-height:44px;padding-block:12px;font-size:13px}.planner-personal .field input{width:100%;min-width:0}.planner-shared-actions{flex-wrap:wrap;gap:4px 12px;display:flex}.planner-add{align-items:center;gap:4px;min-height:44px;font-size:13px;display:flex}.planner-add svg{flex:none;width:16px}.planner-agenda{display:none}.planner-agenda-slot{border-bottom:1px solid var(--line);padding-block:16px}.planner-guest-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.planning-form .field,.planning-preferences .field{min-width:0;margin-block:16px}.planning-form input,.planning-form select,.planning-preferences input,.planning-preferences select{width:100%;min-width:0}.planning-form select,.planning-preferences select{min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--control-border);border-radius:7px;padding:8px}.planning-form .catalog-check input{width:18px}.planning-form .catalog-basics{grid-template-columns:repeat(2,minmax(0,1fr))}.tracker-plans{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}@media (max-width:1099px){.planner-week{display:none}.planner-agenda{max-width:42rem;display:block}.app-shell:has(.planner-page){max-width:46rem}}@media (max-width:540px){.planner-nutrition{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-navigation h2{flex:1}}.form-section-title{margin-block:20px 10px;font-size:14px;font-weight:550}.context-help{margin-block:8px 16px;font-size:13px}.context-help>summary{color:var(--accent);cursor:pointer;min-height:44px;padding-block:12px}.context-help>p{max-width:65ch}.inline-ingredient[open]{border-bottom:1px solid var(--line);padding-bottom:16px}.method-choice{flex-wrap:wrap;gap:4px 16px;margin-bottom:24px;display:flex}.method-choice legend{margin-bottom:8px;font-size:14px;font-weight:550}.method-choice label{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:13px;display:inline-flex}.method-choice input[type=radio]{flex:none;width:18px;height:18px;min-height:0;padding:0}@media (max-width:540px){.recipe-library-row{flex-wrap:wrap}.recipe-library-row .entry-details{flex-basis:100%}.recipe-library-row>a{white-space:normal}}.profile-budget{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:24px;padding:20px}.profile-budget h2{font-size:16px;font-weight:600}.profile-budget-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.profile-budget dt{color:var(--muted);font-size:13px}.profile-budget dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:24px;font-weight:600;line-height:1.25}.profile-budget dd span{color:var(--muted);font-size:13px;font-weight:400}.profile-budget-day{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.profile-budget-day h3{font-size:13px;font-weight:550}.profile-carb-budget{margin-top:16px}.profile-carb-budget>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.profile-carb-budget dd{margin:0;font-size:20px}.entry-name-line{flex-wrap:wrap;align-items:baseline;gap:2px 8px;display:flex}.entry-servings{color:var(--muted);font-size:13px}@media (max-width:420px){.profile-budget{padding:16px}}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.px-5{padding-inline:calc(var(--spacing) * 5)}@media (min-width:40rem){.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}}}@font-face{font-family:DM Sans;src:url("/fonts/dm-sans.ttf")format("truetype");font-weight:100 1000;font-style:normal;font-display:swap}@media (max-width:420px){.app-header.has-calendar,.header-identity{gap:4px}.header-date-navigation{gap:0}.header-date{font-size:16px}.entry-editor{padding-left:12px;padding-right:12px}.entry-macros{font-size:11px}.entry-actions{gap:0}}@media (max-width:600px){.entry-row:has(.entry-actions .text-button){flex-wrap:wrap}.entry-actions:has(.text-button){flex:100%;justify-content:flex-end}}@keyframes microphone-listening{0%,to{transform:scale(.94)}50%{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.voice-microphone[data-state=listening]{animation:none;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}