:root{--lm-primary: #2f5bea;--lm-primary-soft: #e4eaff;--lm-primary-dark: #1e3fb8;--lm-on-primary: #ffffff;--lm-accent: #f97316;--lm-accent-soft: #ffedd5;--lm-on-accent: #ffffff;--lm-success: #16a34a;--lm-success-soft: #dcfce7;--lm-warning: #e8710a;--lm-warning-soft: #fff1e6;--lm-danger: #c5221f;--lm-danger-soft: #fde8e7;--lm-bg: #f4f6fb;--lm-card: #ffffff;--lm-muted: #eef1f7;--lm-outline: #e3e7ef;--lm-text: #14181f;--lm-text-secondary: #5f6b7a;--lm-macro-protein: #7c3aed;--lm-macro-protein-soft: #ede9fe;--lm-macro-carbs: #f59e0b;--lm-macro-carbs-soft: #fef3c7;--lm-macro-fat: #0ea5e9;--lm-macro-fat-soft: #e0f2fe;--lm-shadow: 0 2px 8px rgba(20, 30, 64, .06);--lm-hero-from: var(--lm-primary);--lm-hero-to: var(--lm-primary-dark);--lm-on-hero: var(--lm-on-primary);--lm-primary-text: color-mix(in srgb, var(--lm-primary) 80%, var(--lm-text));--lm-accent-text: color-mix(in srgb, var(--lm-accent) 60%, var(--lm-text));--lm-success-text: color-mix(in srgb, var(--lm-success) 65%, var(--lm-text));--lm-warning-text: color-mix(in srgb, var(--lm-warning) 65%, var(--lm-text));--lm-danger-text: color-mix(in srgb, var(--lm-danger) 80%, var(--lm-text));--lm-radius-sm: 8px;--lm-radius-md: 12px;--lm-radius-lg: 16px;--lm-gap: 16px;--lm-focus-ring: 0 0 0 3px var(--lm-primary-soft);--lm-font-family: Roboto, "Helvetica Neue", sans-serif;--lm-font-display: 700 40px/44px var(--lm-font-family);--lm-font-headline: 700 24px/30px var(--lm-font-family);--lm-font-title: 700 18px/24px var(--lm-font-family);--lm-font-subtitle: 500 15px/20px var(--lm-font-family);--lm-font-body: 400 14px/20px var(--lm-font-family);--lm-font-body-strong: 500 14px/20px var(--lm-font-family);--lm-font-caption: 400 12px/16px var(--lm-font-family);--lm-font-label: 500 12px/16px var(--lm-font-family);--lm-font-number: 700 28px/32px var(--lm-font-family)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--lm-primary: #7c9bff;--lm-primary-soft: #22315e;--lm-primary-dark: #1b2a52;--lm-on-primary: #0b1230;--lm-accent: #fb923c;--lm-accent-soft: #3b2415;--lm-success: #4ade80;--lm-success-soft: #12301f;--lm-warning: #fdba74;--lm-warning-soft: #3a2612;--lm-danger: #f87171;--lm-danger-soft: #3a1a1a;--lm-bg: #0f1320;--lm-card: #171c2b;--lm-muted: #20263a;--lm-outline: #2a3148;--lm-text: #eef1f8;--lm-text-secondary: #9aa4b8;--lm-macro-protein: #a78bfa;--lm-macro-protein-soft: #2a2149;--lm-macro-carbs: #fbbf24;--lm-macro-carbs-soft: #3b2e0f;--lm-macro-fat: #38bdf8;--lm-macro-fat-soft: #0f2e3f;--lm-shadow: 0 2px 8px rgba(0, 0, 0, .4);--lm-hero-from: var(--lm-primary-soft);--lm-hero-to: var(--lm-primary-dark);--lm-on-hero: var(--lm-text)}}:root[data-theme=dark]{--lm-primary: #7c9bff;--lm-primary-soft: #22315e;--lm-primary-dark: #1b2a52;--lm-on-primary: #0b1230;--lm-accent: #fb923c;--lm-accent-soft: #3b2415;--lm-success: #4ade80;--lm-success-soft: #12301f;--lm-warning: #fdba74;--lm-warning-soft: #3a2612;--lm-danger: #f87171;--lm-danger-soft: #3a1a1a;--lm-bg: #0f1320;--lm-card: #171c2b;--lm-muted: #20263a;--lm-outline: #2a3148;--lm-text: #eef1f8;--lm-text-secondary: #9aa4b8;--lm-macro-protein: #a78bfa;--lm-macro-protein-soft: #2a2149;--lm-macro-carbs: #fbbf24;--lm-macro-carbs-soft: #3b2e0f;--lm-macro-fat: #38bdf8;--lm-macro-fat-soft: #0f2e3f;--lm-shadow: 0 2px 8px rgba(0, 0, 0, .4);--lm-hero-from: var(--lm-primary-soft);--lm-hero-to: var(--lm-primary-dark);--lm-on-hero: var(--lm-text)}@media(min-width:900px){:root{--lm-gap: 24px}}html{color-scheme:light dark;--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #502400);--mat-sys-on-tertiary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-tertiary-fixed: light-dark(#311300, #311300);--mat-sys-on-tertiary-fixed-variant: light-dark(#723600, #723600);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#964900, #ffb787);--mat-sys-tertiary-container: light-dark(#ffdcc7, #723600);--mat-sys-tertiary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-tertiary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-form-field-outlined-container-shape: 10px;--mat-form-field-outlined-outline-color: color-mix(in srgb, var(--lm-text-secondary) 75%, var(--lm-card));--mat-form-field-outlined-hover-outline-color: var(--lm-text);--mat-form-field-outlined-focus-outline-color: var(--lm-primary);--mat-form-field-outlined-label-text-color: var(--lm-text-secondary);--mat-form-field-outlined-focus-label-text-color: var(--lm-primary);--mat-form-field-outlined-input-text-color: var(--lm-text);--mat-form-field-outlined-caret-color: var(--lm-primary);--mat-dialog-container-shape: var(--lm-radius-lg);--mat-dialog-container-color: var(--lm-card);--mat-slider-active-track-color: var(--lm-primary);--mat-slider-inactive-track-color: var(--lm-primary-soft);--mat-slider-handle-color: var(--lm-primary);--mat-slider-focus-handle-color: var(--lm-primary);--mat-slider-hover-handle-color: var(--lm-primary);--mat-slider-ripple-color: var(--lm-primary);--mat-slider-label-container-color: var(--lm-primary);--mat-slider-label-label-text-color: var(--lm-on-primary);--mat-slider-with-tick-marks-active-container-color: var(--lm-on-primary);--mat-slider-with-tick-marks-inactive-container-color: var(--lm-primary)}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark}html,body{height:100%}body{margin:0;font:var(--lm-font-body);background:var(--lm-bg);color:var(--lm-text);transition:background-color .2s,color .2s}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.lm-page-title{margin:0;font:var(--lm-font-headline)}.lm-page-subtitle{margin:4px 0 0;color:var(--lm-text-secondary)}.lm-title{margin:0;font:var(--lm-font-title)}.lm-subtitle{margin:0;font:var(--lm-font-subtitle)}.lm-number{font:var(--lm-font-number)}.lm-caption{font:var(--lm-font-caption)}.lm-label{font:var(--lm-font-label);letter-spacing:.4px;text-transform:uppercase;color:var(--lm-text-secondary)}.muted{color:var(--lm-text-secondary)}.lm-card{box-sizing:border-box;min-width:0;padding:16px;border:1px solid var(--lm-outline);border-radius:var(--lm-radius-lg);background:var(--lm-card);box-shadow:var(--lm-shadow);color:var(--lm-text);transition:background-color .2s,border-color .2s,color .2s}.lm-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.lm-card-subtitle{margin:2px 0 0;color:var(--lm-text-secondary)}.lm-tile{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border-radius:var(--lm-radius-md);background:var(--lm-bg)}@media(min-width:900px){.lm-card{padding:20px}}.lm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:40px;padding:0 20px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--lm-primary);font:var(--lm-font-body-strong);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s}.lm-btn .mat-icon{width:20px;height:20px;font-size:20px}.lm-btn:disabled{opacity:.5;cursor:default}.lm-btn--primary{background:var(--lm-primary);color:var(--lm-on-primary)}.lm-btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--lm-primary) 88%,var(--lm-text))}.lm-btn--tonal{background:var(--lm-primary-soft);color:var(--lm-primary)}.lm-btn--tonal:hover:not(:disabled){background:color-mix(in srgb,var(--lm-primary-soft) 85%,var(--lm-primary))}.lm-btn--outline{border-color:var(--lm-primary)}.lm-btn--outline:hover:not(:disabled){background:var(--lm-primary-soft)}.lm-btn--text{padding:0 12px}.lm-btn--text:hover:not(:disabled){background:var(--lm-primary-soft)}.lm-btn--block{width:100%}.lm-icon-btn{display:inline-grid;flex:none;place-items:center;box-sizing:border-box;width:40px;height:40px;padding:0;border:1px solid var(--lm-outline);border-radius:50%;background:var(--lm-card);color:var(--lm-text);cursor:pointer}.lm-icon-btn:hover{background:var(--lm-muted)}.lm-link{border-radius:4px;color:var(--lm-primary);font:var(--lm-font-body-strong);text-decoration:none}.lm-link:hover{text-decoration:underline}.lm-btn:focus-visible,.lm-icon-btn:focus-visible{outline:none;border-color:var(--lm-primary);box-shadow:var(--lm-focus-ring)}.lm-link:focus-visible,.lm-focusable:focus-visible{outline:none;box-shadow:0 0 0 1px var(--lm-primary),0 0 0 4px var(--lm-primary-soft)}.lm-chip{display:inline-flex;align-items:center;gap:4px;box-sizing:border-box;min-height:24px;padding:2px 10px;border-radius:999px;background:var(--lm-muted);color:var(--lm-text-secondary);font:var(--lm-font-label);white-space:nowrap}.lm-chip .mat-icon{width:16px;height:16px;font-size:16px}.lm-chip--primary{background:var(--lm-primary-soft);color:var(--lm-primary-text)}.lm-chip--success{background:var(--lm-success-soft);color:var(--lm-success-text)}.lm-chip--warning{background:var(--lm-warning-soft);color:var(--lm-warning-text)}.lm-chip--danger{background:var(--lm-danger-soft);color:var(--lm-danger-text)}.lm-segmented{--mat-button-toggle-shape: 999px;--mat-button-toggle-divider-color: transparent;--mat-button-toggle-text-color: var(--lm-text-secondary);--mat-button-toggle-selected-state-background-color: var(--lm-primary);--mat-button-toggle-selected-state-text-color: var(--lm-on-primary);--mat-button-toggle-height: 32px;gap:2px;padding:3px;background:var(--lm-muted)}.lm-segmented .mat-button-toggle{border-radius:999px}@media(max-width:599px){.lm-photo-guide,.lm-photo-viewer{width:100vw!important;max-width:100vw!important;height:100dvh;max-height:100dvh!important}.lm-photo-guide .mat-mdc-dialog-surface,.lm-photo-viewer .mat-mdc-dialog-surface{border-radius:0}}.lm-error{margin:0;padding:12px 16px;border-radius:var(--lm-radius-md);background:var(--lm-danger-soft);color:var(--lm-danger)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){body,.lm-card,.lm-btn{transition:none}}
