@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--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;-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}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.hidden{display:none}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{height:var(--rdp-nav-height);inset-inline-start:0;display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--client-color-background:#f3f4f6;--client-color-surface:#fff;--client-color-surface-muted:#f3f4f6;--client-color-text:#171717;--client-color-text-muted:#6b7280;--client-color-border:#e5e7eb;--client-color-primary:#059669;--client-color-primary-hover:#047857;--client-color-primary-muted:#d1fae5;--client-color-focus:#047857;--client-shadow-card:0 .125rem .5rem #17171712;--client-shadow-navigation:0 .75rem 2rem #17171724;--client-content-width:28rem;--client-navigation-height:5.5rem}*{box-sizing:border-box}html{background:var(--client-color-background)}body{overflow-wrap:break-word;min-height:100vh;color:var(--client-color-text);background:var(--client-color-background);margin:0;font-family:Arial,Helvetica Neue,sans-serif;line-height:1.5}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:.1875rem solid var(--client-color-focus);outline-offset:.1875rem}.skip-link{z-index:100;color:#fff;background:var(--client-color-primary);border-radius:.75rem;padding:.75rem 1rem;position:fixed;top:.75rem;left:50%;transform:translate(-50%,-200%)}.skip-link:focus{transform:translate(-50%)}.client-shell{width:min(100%, var(--client-content-width));min-height:100dvh;padding-bottom:calc(var(--client-navigation-height) + env(safe-area-inset-bottom));background:var(--client-color-surface);grid-template-rows:auto 1fr auto;margin-inline:auto;display:grid;box-shadow:0 0 2rem #17171714}.client-header{z-index:20;border-bottom:.0625rem solid var(--client-color-border);-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);background:#fffffff2;position:sticky;top:0}.client-header__content{padding:.75rem 1rem}.client-brand{align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.client-brand__mark{color:#fff;background:var(--client-color-primary);border-radius:50%;flex:none;place-items:center;width:2.5rem;height:2.5rem;font-weight:700;display:grid}.client-brand__name,.client-brand__description{display:block}.client-brand__name{font-size:.9375rem;font-weight:700}.client-brand__description{color:var(--client-color-text-muted);font-size:.6875rem}.client-shell__body{background:#f9fafb;min-width:0}.client-navigation-region{z-index:50;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));border:.0625rem solid var(--client-color-border);background:var(--client-color-surface);width:fit-content;max-width:calc(100% - 2rem);box-shadow:var(--client-shadow-navigation);border-radius:1rem;margin-inline:auto;position:fixed;left:1rem}.client-navigation{align-items:center;gap:.25rem;min-height:4rem;margin:0;padding:.375rem;list-style:none;display:flex}.client-navigation__item{position:relative}.client-navigation__link{color:#9ca3af;touch-action:manipulation;border-radius:.75rem;place-items:center;width:3.25rem;height:3.25rem;text-decoration:none;transition:color .15s,background-color .15s;display:grid;position:relative}.client-navigation__icon{width:1.375rem;height:1.375rem}.client-navigation__link[aria-current=page]{color:var(--client-color-primary);background:var(--client-color-primary-muted)}.client-navigation__mark{border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.client-navigation__mark svg{width:1.25rem;height:1.25rem}.client-navigation__link:hover{background:var(--client-color-surface-muted)}.client-navigation__link[aria-current=page]{color:var(--client-color-primary);background:var(--client-color-primary-muted);font-weight:700}.client-main{min-width:0;padding:1rem}.client-main:focus{outline:none}.client-main--immersive{padding:0}.client-page{gap:2rem;display:grid}.client-hero{border:.0625rem solid var(--client-color-border);background:var(--client-color-surface);box-shadow:var(--client-shadow-card);border-radius:1rem;padding:1.25rem}.client-hero__eyebrow{color:var(--client-color-primary);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.client-page h1,.client-page h2,.client-page h3{line-height:1.25}.client-page h1{margin:0;font-size:clamp(1.75rem,8vw,2.25rem)}.client-hero__description{color:var(--client-color-text-muted);margin:.75rem 0 0;font-size:.875rem}.client-capability-grid{grid-template-columns:minmax(0,1fr);gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.client-capability-card{border:.0625rem solid var(--client-color-border);background:var(--client-color-surface);height:100%;box-shadow:var(--client-shadow-card);border-radius:1rem;padding:1rem}.client-capability-card h3,.client-capability-card p{margin-top:0}.client-capability-card__status{color:var(--client-color-text-muted);margin-bottom:0;font-size:.75rem}.client-footer{border-top:.0625rem solid var(--client-color-border);color:var(--client-color-text-muted);background:var(--client-color-surface);text-align:center;padding:1rem;font-size:.75rem}@media (min-width:30rem){.client-main{padding:1.25rem}}@media (prefers-reduced-motion:no-preference){.skip-link{transition:transform .15s}}
:root{--ui-color-surface:var(--client-color-surface);--ui-color-surface-muted:var(--client-color-surface-muted);--ui-color-text:var(--client-color-text);--ui-color-text-muted:var(--client-color-text-muted);--ui-color-border:var(--client-color-border);--ui-color-primary:var(--client-color-primary);--ui-color-primary-hover:var(--client-color-primary-hover);--ui-color-danger:#b42318;--ui-color-danger-hover:#912018;--ui-color-error:#b42318;--ui-shadow:var(--client-shadow-card);--ui-radius:.75rem}.ui-button{border-radius:var(--ui-radius);min-height:2.75rem;font:inherit;cursor:pointer;touch-action:manipulation;border:.0625rem solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.6875rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.ui-button--full-width{width:100%}.ui-button:disabled{cursor:not-allowed;opacity:.55}.ui-button--primary{color:#fff;background:var(--ui-color-primary);box-shadow:0 .625rem 1.5rem -.75rem #059669cc}.ui-button--primary:hover:not(:disabled){background:var(--ui-color-primary-hover)}.ui-button--secondary{border-color:var(--ui-color-border);color:var(--ui-color-text);background:var(--ui-color-surface)}.ui-button--secondary:hover:not(:disabled),.ui-button--ghost:hover:not(:disabled){background:var(--ui-color-surface-muted)}.ui-button--ghost{color:var(--ui-color-text);background:0 0}.ui-button--danger{color:#fff;background:var(--ui-color-danger)}.ui-button--danger:hover:not(:disabled){background:var(--ui-color-danger-hover)}.ui-card{border:.0625rem solid var(--ui-color-border);background:var(--ui-color-surface);box-shadow:var(--ui-shadow);border-radius:1rem}.ui-card--none{padding:0}.ui-card--compact{padding:.75rem}.ui-card--default{padding:1rem}.ui-field{gap:.375rem;display:grid}.ui-field__label{color:var(--ui-color-text);font-size:.875rem;font-weight:600}.ui-field__required{color:var(--ui-color-error);margin-left:.25rem}.ui-field__description,.ui-field__error{margin:0;font-size:.75rem;line-height:1.5}.ui-field__description{color:var(--ui-color-text-muted)}.ui-field__error{color:var(--ui-color-error);font-weight:600}.ui-control{border:.0625rem solid var(--ui-color-border);border-radius:var(--ui-radius);width:100%;min-height:2.75rem;color:var(--ui-color-text);background:var(--ui-color-surface);font:inherit;padding:.6875rem .875rem;font-size:.875rem}.ui-control::placeholder{color:#9ca3af}.ui-control:focus-visible{border-color:var(--ui-color-primary);outline-color:var(--ui-color-primary)}.ui-control[aria-invalid=true]{border-color:var(--ui-color-error)}.ui-select{cursor:pointer}.ui-spinner{border:.125rem solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite ui-spin;display:inline-block}.ui-modal{width:min(100%,28rem);max-height:calc(100dvh - 1rem);color:var(--ui-color-text);background:0 0;border:0;border-radius:1.5rem 1.5rem 0 0;margin:auto auto 0;padding:0;overflow:auto}.ui-modal::backdrop{background:#0006}.ui-modal__surface{background:var(--ui-color-surface);box-shadow:0 -.5rem 2rem #17171724}.ui-modal__header,.ui-modal__content,.ui-modal__footer{padding:1rem}.ui-modal__header{border-bottom:.0625rem solid var(--ui-color-border);justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.ui-modal__title,.ui-modal__description{margin:0}.ui-modal__title{font-size:1rem}.ui-modal__description{color:var(--ui-color-text-muted);margin-top:.375rem;font-size:.75rem}.ui-modal__footer{padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-top:.0625rem solid var(--ui-color-border);flex-direction:column;gap:.75rem;display:flex}.ui-page-state{color:var(--ui-color-text);text-align:center;justify-items:center;gap:.75rem;padding:4rem 1.5rem;display:grid}.ui-page-state h1,.ui-page-state h2,.ui-page-state h3,.ui-page-state p{margin:0}.ui-page-state__visual{font-size:3rem;line-height:1}.ui-page-state__description{max-width:20rem;color:var(--ui-color-text-muted);font-size:.875rem}.ui-page-state__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (min-width:40rem){.ui-modal{border-radius:1.5rem;width:min(100% - 2rem,28rem);margin:auto}.ui-modal__footer{flex-direction:row;justify-content:flex-end;padding-bottom:1rem}}@media (prefers-reduced-motion:reduce){.ui-spinner{animation:none}}.ui-typography{color:var(--client-color-text);margin:0}.ui-typography--eyebrow{color:var(--client-color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700;line-height:1.2}.ui-typography--page-title{letter-spacing:-.035em;font-size:clamp(2rem,7vw,3rem);font-weight:750;line-height:1.05}.ui-typography--page-description{max-width:40rem;color:var(--client-color-text-muted);font-size:1rem;font-weight:400;line-height:1.6}.ui-typography--section-title{letter-spacing:-.015em;font-size:1.25rem;font-weight:700;line-height:1.25}.ui-typography--item-title{font-size:1rem;font-weight:650;line-height:1.35}.ui-typography--body{font-size:1rem;font-weight:400;line-height:1.5}.ui-typography--supporting{color:var(--client-color-text-muted);font-size:.875rem;font-weight:400;line-height:1.5}.ui-typography--caption{color:var(--client-color-text-muted);font-size:.8125rem;font-weight:400;line-height:1.45}.ui-tooltip{display:inline-flex;position:relative}.ui-tooltip__content{z-index:10;color:var(--client-color-surface);background:var(--client-color-text);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:.5rem;padding:.375rem .625rem;font-size:.75rem;font-weight:600;line-height:1;transition:opacity .15s,visibility .15s,transform .15s;position:absolute;bottom:calc(100% + .625rem);left:50%;transform:translate(-50%,.25rem)}.ui-tooltip__content:after{content:"";border:.25rem solid #0000;border-top-color:var(--client-color-text);position:absolute;top:100%;left:50%;transform:translate(-50%)}.ui-tooltip:hover .ui-tooltip__content{opacity:1;visibility:visible;transform:translate(-50%)}.ui-tooltip:has(:focus-visible) .ui-tooltip__content{opacity:1;visibility:visible;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.ui-tooltip__content{transition:none}}
.auth-page-shell{place-items:center;min-height:100dvh;padding:1rem;display:grid}.auth-card{border:.0625rem solid var(--client-color-border);background:var(--client-color-surface);width:min(100%,30rem);box-shadow:var(--client-shadow-card);border-radius:1rem;padding:clamp(1.25rem,5vw,2rem)}.auth-card h1{margin:0;font-size:clamp(1.75rem,7vw,2.25rem);line-height:1.2}.auth-card__eyebrow{color:var(--client-color-primary);letter-spacing:.05em;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.auth-form,.auth-field,.auth-links,.auth-actions{gap:.75rem;display:grid}.auth-form{margin-top:1.5rem}.auth-field{gap:.375rem;font-weight:700}.auth-field input{border:.0625rem solid var(--client-color-border);width:100%;min-height:2.75rem;color:var(--client-color-text);font:inherit;background:#fff;border-radius:.625rem;padding:.625rem .75rem}.auth-button,.auth-google-button,.auth-sign-out{color:#fff;background:var(--client-color-primary);min-height:2.75rem;font:inherit;cursor:pointer;border:0;border-radius:.625rem;padding:.625rem 1rem;font-weight:700}.auth-google-button{border:.0625rem solid var(--client-color-border);width:100%;color:var(--client-color-text);background:#fff;justify-content:center;align-items:center;gap:.625rem;margin-top:1.5rem;display:flex}.auth-google-button svg{color:#4285f4;width:1.25rem;height:1.25rem}.auth-button:disabled,.auth-google-button:disabled,.auth-sign-out:disabled{cursor:wait;opacity:.65}.auth-separator{color:var(--client-color-text-muted);align-items:center;gap:.75rem;margin-top:1.25rem;font-size:.875rem;display:flex}.auth-separator:before,.auth-separator:after{background:var(--client-color-border);content:"";flex:1;height:.0625rem}.auth-message{background:var(--client-color-primary-muted);border-radius:.625rem;padding:.75rem}.auth-message--error{color:#991b1b;background:#fee2e2}.auth-links,.auth-actions{margin-top:1rem}.auth-links a,.auth-actions a{color:var(--client-color-primary);font-weight:700}.client-header__content{justify-content:space-between;align-items:center;gap:1rem;display:flex}
.recipe-details{gap:1rem;display:grid}.recipe-details__hero,.recipe-panel{border:1px solid var(--client-color-border);background:var(--client-color-surface);box-shadow:var(--client-shadow-card);border-radius:1rem;padding:1.25rem}.recipe-details__hero h1{margin:.25rem 0;font-size:clamp(1.8rem,8vw,2.4rem);line-height:1.15}.recipe-details__eyebrow{color:var(--client-color-primary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}.recipe-details__stats{grid-template-columns:repeat(3,1fr);margin:1rem 0;padding:0;list-style:none;display:grid}.recipe-details__stats li{text-align:center;padding:.5rem;display:grid}.recipe-details__stats strong,.recipe-details__stats span{display:block}.recipe-details__stats span{color:var(--client-color-text-muted);font-size:.72rem}.recipe-details__chips{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.recipe-details__chips li{background:var(--client-color-primary-muted);border-radius:999px;padding:.3rem .65rem;font-size:.78rem}.recipe-tabs{border:1px solid var(--client-color-border);z-index:10;background:#fff;border-radius:.85rem;grid-template-columns:repeat(4,minmax(0,1fr));padding:.25rem;display:grid;position:sticky;top:4.2rem}.recipe-tabs button{cursor:pointer;background:0 0;border:0;border-radius:.65rem;padding:.65rem .25rem;font-size:.72rem}.recipe-tabs button[aria-selected=true]{color:var(--client-color-primary);background:var(--client-color-primary-muted);font-weight:700}.recipe-panel h2{margin-top:0}.recipe-details__author{background:var(--client-color-surface-muted);border-radius:.75rem;padding:1rem}.recipe-details__links{gap:.5rem;padding-left:1.25rem;display:grid}.recipe-details__links a{color:var(--client-color-primary)}.recipe-ingredients{margin:0;padding:0;list-style:none;display:grid}.recipe-ingredients li{border-bottom:1px solid var(--client-color-border);justify-content:space-between;gap:1rem;padding:.9rem 0;display:flex}.recipe-ingredients small{color:var(--client-color-text-muted);display:block}.recipe-steps{gap:1rem;padding-left:2rem;display:grid}.recipe-steps li{padding-left:.5rem}.recipe-steps h3,.recipe-steps p{margin-top:0}.recipe-steps__timer{color:var(--client-color-primary);font-weight:700}.recipe-nutrients{display:grid}.recipe-nutrients>div{border-bottom:1px solid var(--client-color-border);grid-template-columns:1fr auto;padding:.75rem 0;display:grid}.recipe-nutrients small{color:var(--client-color-text-muted);grid-column:1/-1}@media (max-width:23rem){.recipe-details__stats{grid-template-columns:1fr}.recipe-tabs{grid-template-columns:repeat(2,1fr)}}
.onboarding-page{background:linear-gradient(145deg,#ecfdf5,#f9fafb 60%);place-items:center;min-height:100dvh;padding:1rem;display:grid}.onboarding-card{border:.0625rem solid var(--client-color-border);background:var(--client-color-surface);width:min(100%,32rem);box-shadow:var(--client-shadow-card);border-radius:1.25rem;padding:clamp(1.25rem,5vw,2rem)}.onboarding-card h1{margin:1rem 0 .5rem;line-height:1.2}.onboarding-progress p,.onboarding-privacy{color:var(--client-color-text-muted);font-size:.8125rem}.onboarding-progress progress{width:100%;accent-color:var(--client-color-primary)}.onboarding-explanation{color:var(--client-color-text-muted);margin:0 0 1.5rem}.onboarding-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.onboarding-error{color:#b91c1c}.onboarding-privacy{border-top:.0625rem solid var(--client-color-border);margin:1.5rem 0 0;padding-top:1rem}.onboarding-calculation,.onboarding-result{text-align:center}.onboarding-calculation__indicator{border:.25rem solid #d1fae5;border-top-color:var(--client-color-primary);border-radius:50%;width:3rem;height:3rem;margin:0 auto 1rem;animation:.9s linear infinite onboarding-spin}.onboarding-calculation__progress{color:var(--client-color-primary);gap:.5rem;margin-top:1.5rem;font-weight:700;display:grid}.onboarding-calculation__progress progress{width:100%;height:.75rem;accent-color:var(--client-color-primary)}.onboarding-result__eyebrow{color:var(--client-color-primary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.8125rem;font-weight:700}.onboarding-recommendations{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.5rem 0;display:grid}.onboarding-recommendations>div{border:.0625rem solid var(--client-color-border);background:#f8fafc;border-radius:.75rem;padding:.875rem}.onboarding-recommendations dt{color:var(--client-color-text-muted);font-size:.75rem}.onboarding-recommendations dd{margin:.35rem 0 0;font-weight:700}.onboarding-result__note{color:#065f46;text-align:left;background:#ecfdf5;border-radius:.75rem;margin:1.5rem 0 0;padding:1rem}@keyframes onboarding-spin{to{transform:rotate(360deg)}}@media (max-width:30rem){.onboarding-recommendations{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.onboarding-calculation__indicator{border-color:var(--client-color-primary);animation:none}}
.family-page{gap:2rem;display:grid}.family-page__header{gap:.5rem;display:grid}.family-section,.family-form{gap:1rem;display:grid}.family-form__header{gap:.375rem;display:grid}.family-members{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.family-member{justify-content:space-between;align-items:center;gap:1rem;display:flex}.family-member__info{gap:.25rem;display:grid}.family-member__actions{flex-wrap:wrap;gap:.5rem;display:flex}.profile-page{gap:2rem;width:100%;display:grid}.profile-page__header{gap:.5rem;max-width:48rem;display:grid}.profile-page__sections,.profile-section{gap:1.5rem;display:grid}.profile-section__header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.profile-section__heading{gap:.375rem;min-width:0;max-width:44rem;display:grid}.profile-section__header>button{flex-shrink:0}.profile-subsection{align-content:start;gap:1rem;min-width:0;display:grid}.profile-values{margin:0;display:grid}.profile-value-row{border-bottom:1px solid var(--ui-color-border);grid-template-columns:minmax(9rem,.7fr) minmax(0,1fr);align-items:center;gap:1rem;padding-block:.875rem;display:grid}.profile-value-row:first-child{padding-top:0}.profile-value-row:last-child{border-bottom:0;padding-bottom:0}.profile-value-row__label{min-width:0;color:var(--ui-color-text-muted);font-size:.875rem;line-height:1.45}.profile-value-row__value{min-width:0;color:var(--ui-color-text);margin:0;font-weight:500;line-height:1.45}.profile-value-row__content{justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.profile-value-row__text{overflow-wrap:anywhere;min-width:0}.profile-value-row__action{flex-shrink:0;display:inline-flex}.profile-value-row__action .ui-button{min-height:2.25rem;padding:.4375rem .75rem}.profile-empty-value{color:var(--ui-color-text-muted);font-weight:400}.profile-body-activity-grid{gap:2rem;width:100%;min-width:0;display:grid}.profile-body-activity-grid .profile-values{width:100%;min-width:0}.profile-body-activity-grid .profile-value-row{grid-template-columns:minmax(12rem,.35fr) minmax(0,1fr)}.profile-edit-form{gap:1rem;display:grid}.profile-form-context{border:1px solid var(--ui-color-border);background:var(--ui-color-surface-muted);border-radius:.75rem;gap:.25rem;padding:.75rem 1rem;display:grid}.profile-empty-state{border:1px dashed var(--ui-color-border);background:var(--ui-color-surface-muted);border-radius:.75rem;gap:.375rem;padding:1rem;display:grid}.profile-badge{background:var(--ui-color-surface-muted);width:fit-content;max-width:100%;color:var(--ui-color-text);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;line-height:1.4;display:inline-flex}.profile-badge--muted{color:var(--ui-color-text-muted);font-weight:500}.profile-nutrition-energy__heading{gap:.375rem;display:grid}.profile-nutrition-current__header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.profile-nutrition-current__heading{gap:.375rem;min-width:0;max-width:44rem;display:grid}.profile-nutrition-current__heading .profile-badge{margin-top:.375rem}.profile-nutrition-current__header>button{flex-shrink:0}.profile-target-summary{flex-wrap:wrap;align-items:stretch;gap:1rem;display:flex}.profile-target-summary>div{border:1px solid var(--ui-color-border);background:var(--ui-color-surface-muted);border-radius:.75rem;align-content:center;gap:.25rem;min-width:10rem;padding:.75rem 1rem;display:grid}.profile-target-list{display:grid}.profile-target{border-bottom:1px solid var(--ui-color-border);justify-content:space-between;align-items:center;gap:1.5rem;min-width:0;padding-block:.875rem;display:flex}.profile-target:first-child{padding-top:0}.profile-target:last-child{border-bottom:0;padding-bottom:0}.profile-target>div{gap:.25rem;min-width:0;display:grid}.profile-target__value{color:var(--ui-color-text);text-align:right;white-space:nowrap;flex-shrink:0;font-size:.9375rem;font-weight:600;line-height:1.4}.profile-preference-list{display:grid}.profile-preference-row{border-bottom:1px solid var(--ui-color-border);justify-content:space-between;align-items:center;gap:1.5rem;min-width:0;padding-block:1rem;display:flex}.profile-preference-row:first-child{padding-top:0}.profile-preference-row:last-child{border-bottom:0;padding-bottom:0}.profile-preference-row__content{gap:.25rem;min-width:0;display:grid}.profile-preference-row__content>*{overflow-wrap:anywhere}.profile-preference-row>button{flex-shrink:0}.profile-family-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.profile-family-heading__content{gap:.25rem;min-width:0;display:grid}.profile-family-content{gap:1rem;display:grid}.profile-family-members{margin:0;padding:0;list-style:none;display:grid}.profile-family-member{border-bottom:1px solid var(--ui-color-border);justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding-block:.875rem;display:flex}.profile-family-member:first-child{padding-top:0}.profile-family-member:last-child{border-bottom:0;padding-bottom:0}.profile-family-member__info{gap:.25rem;min-width:0;display:grid}.profile-family-member__name{color:var(--ui-color-text);overflow-wrap:anywhere;font-weight:500}.profile-family-member__badges{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:.5rem;display:flex}.profile-account-section{gap:1.5rem;display:grid}.profile-account-section__content{gap:.375rem;min-width:0;max-width:44rem;display:grid}.profile-account-section>button{justify-self:start}@media (max-width:48rem){.profile-page{gap:1.5rem}.profile-page__sections{gap:1rem}.profile-section__header{flex-direction:column;align-items:stretch}.profile-section__header>button{align-self:flex-start}.profile-value-row{grid-template-columns:minmax(7rem,.55fr) minmax(0,1fr)}.profile-body-activity-grid .profile-value-row{grid-template-columns:minmax(9rem,.4fr) minmax(0,1fr)}.profile-target-grid{grid-template-columns:1fr}}@media (max-width:32rem){.profile-page,.profile-section{gap:1.25rem}.profile-value-row,.profile-body-activity-grid .profile-value-row{grid-template-columns:1fr;gap:.375rem}.profile-value-row__content{gap:.75rem}.profile-target-summary{display:grid}.profile-target-summary>div{min-width:0}.profile-target{flex-direction:column;align-items:flex-start}.profile-target__value{text-align:left;white-space:normal}.profile-preference-row{flex-direction:column;align-items:flex-start;gap:.75rem}.profile-preference-row>button{align-self:flex-start}.profile-family-heading,.profile-family-member{flex-direction:column;align-items:flex-start}.profile-family-member__badges{justify-content:flex-start}.family-member{flex-direction:column;align-items:stretch}.profile-weight-goal-actions__buttons{grid-template-columns:1fr;display:grid}.profile-weight-goal-actions__buttons>button{width:100%}}.profile-weight-goal-actions{border-top:1px solid var(--ui-color-border);gap:1rem;padding-top:1.25rem;display:grid}.profile-weight-goal-actions__content{gap:.25rem;width:100%;min-width:0;display:grid}.profile-weight-goal-actions__buttons{flex-wrap:wrap;gap:.75rem;width:100%;display:flex}.profile-nutrition-energy,.profile-nutrition-current{gap:1rem;display:grid}.profile-nutrition-energy{border-bottom:1px solid var(--ui-color-border);padding-bottom:1.5rem}.profile-nutrition-energy__heading,.profile-nutrition-current__heading{gap:.375rem;display:grid}.profile-nutrition-current__heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem}.profile-nutrition-energy__actions{flex-wrap:wrap;gap:.75rem;display:flex}.profile-nutrition-missing{gap:.75rem;display:grid}.profile-nutrition-missing ul{gap:.375rem;margin:0;padding-left:1.25rem;display:grid}.profile-nutrition-missing a{width:fit-content;color:var(--ui-color-text);text-underline-offset:.2em;font-size:.875rem;font-weight:600;text-decoration:underline}.profile-nutrition-form{gap:2rem}.profile-nutrition-form__section{gap:1rem;display:grid}.profile-nutrition-form__section>div:first-child{gap:.375rem;display:grid}.profile-nutrition-form__targets{gap:.75rem;display:grid}.profile-nutrition-target-editor{border:1px solid var(--ui-color-border);background:var(--ui-color-surface);border-radius:.75rem;gap:1rem;padding:1rem;display:grid}.profile-nutrition-target-editor__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.profile-nutrition-target-editor__header>div{gap:.25rem;min-width:0;display:grid}.profile-nutrition-target-editor__header>button{flex-shrink:0}.profile-nutrition-target-editor__range{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.profile-nutrition-form__add{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}@media (max-width:48rem){.profile-nutrition-current__heading{grid-template-columns:1fr}.profile-nutrition-current__heading .profile-badge{justify-self:start}}@media (max-width:32rem){.profile-nutrition-target-editor__header{flex-direction:column}.profile-nutrition-target-editor__header>button{align-self:flex-start}.profile-nutrition-target-editor__range,.profile-nutrition-form__add{grid-template-columns:1fr}.profile-nutrition-form__add>button{width:100%}}.profile-meal-types-form{gap:1.5rem}.profile-meal-types-group{border:0;gap:.75rem;margin:0;padding:0;display:grid}.profile-meal-types-group legend{margin:0 0 .25rem;padding:0}.profile-meal-types-list{gap:.5rem;display:grid}.profile-meal-type-option{border:1px solid var(--ui-color-border);cursor:pointer;border-radius:.75rem;align-items:center;gap:.75rem;padding:.75rem;display:flex}.profile-meal-type-option>input{flex:none}.profile-meal-type-option__content{min-width:0}.profile-preference-values{flex-wrap:wrap;gap:.5rem;display:flex}.profile-allergies-form{gap:1.25rem}.profile-allergies-list{gap:.75rem;display:grid}.profile-allergy-option{border:1px solid var(--ui-color-border);background:var(--ui-color-surface);border-radius:.75rem;gap:.875rem;padding:.875rem;display:grid}.profile-allergy-option__checkbox{cursor:pointer;align-items:center;gap:.75rem;display:flex}.profile-allergy-option__checkbox>input{flex:none}.profile-allergy-option__severity{padding-left:1.75rem}@media (max-width:32rem){.profile-allergy-option__severity{padding-left:0}}.profile-disliked-products-form{gap:1.5rem}.profile-disliked-products-search{gap:.5rem;display:grid}.profile-disliked-products-section{gap:.75rem;display:grid}.profile-disliked-products-selected,.profile-disliked-products-results{display:grid}.profile-disliked-products-selected__item,.profile-disliked-product-result{border-bottom:1px solid var(--ui-color-border);justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding-block:.75rem;display:flex}.profile-disliked-products-selected__item:first-child,.profile-disliked-product-result:first-child{padding-top:0}.profile-disliked-products-selected__item:last-child,.profile-disliked-product-result:last-child{border-bottom:0;padding-bottom:0}.profile-disliked-products-selected__item>button,.profile-disliked-product-result>button{flex-shrink:0}.profile-disliked-product-result__content{gap:.25rem;min-width:0;display:grid}@media (max-width:32rem){.profile-disliked-products-selected__item,.profile-disliked-product-result{flex-direction:column;align-items:flex-start}.profile-disliked-products-selected__item>button,.profile-disliked-product-result>button{align-self:flex-start}}.family-section__heading{gap:.375rem;max-width:48rem;display:grid}.family-member{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;display:grid}.family-member__meta{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.family-member__actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.family-member__actions .ui-button{min-width:2.5rem}.family-form>.ui-button{justify-self:start}.family-invitation-status{border:1px solid var(--ui-color-border);background:var(--ui-color-surface-muted);border-radius:.75rem;gap:.25rem;padding:.875rem 1rem;display:grid}.family-invitation-actions{flex-wrap:wrap;gap:.75rem;display:flex}.profile-family-actions{justify-content:flex-start;padding-top:.25rem;display:flex}@media (max-width:48rem){.family-member{grid-template-columns:minmax(0,1fr) auto}.family-member__actions{grid-column:1/-1;justify-content:flex-start}}@media (max-width:32rem){.family-member{flex-direction:column;align-items:stretch;display:flex}.family-member__meta,.family-member__actions{justify-content:flex-start}.family-invitation-actions{display:grid}.family-invitation-actions>button{width:100%}}
.plan-screen{min-height:calc(100dvh - var(--client-navigation-height));background:#f8faf9}.plan-header{border-bottom:1px solid var(--client-color-border);background:#fff}.plan-header__top{justify-content:space-between;align-items:center;padding:1rem 1.25rem .5rem;display:flex}.plan-header__top h1{margin:0}.plan-header__top svg{width:20px;height:20px;color:var(--client-color-primary)}.plan-calendar{position:relative}.plan-calendar__trigger{width:2.5rem;height:2.5rem;color:var(--client-color-primary);background:var(--client-color-primary-muted);cursor:pointer;border:0;border-radius:.75rem;place-items:center;display:grid}.plan-calendar__trigger:hover{background:#a7f3d0}.plan-calendar__trigger:focus-visible{outline:3px solid color-mix(in srgb, var(--client-color-focus) 35%, transparent);outline-offset:2px}.plan-calendar__popover{z-index:20;border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-navigation);background:#fff;border-radius:1rem;padding:.75rem;position:absolute;top:calc(100% + .5rem);right:0}.plan-calendar__popover .rdp-root{--rdp-accent-color:var(--client-color-primary);--rdp-accent-background-color:var(--client-color-primary-muted);--rdp-day_button-border-radius:50%;--rdp-selected-border:0;margin:0}.plan-header__eyebrow{color:#9ca3af;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:700}.plan-week-navigation{grid-template-columns:2.75rem 1fr 2.75rem;align-items:center;padding:0 1rem .6rem;display:grid}.plan-week-navigation button{color:#6b7280;cursor:pointer;background:0 0;border:0}.plan-week-navigation>button:nth-child(2){color:#111827;gap:.05rem;font-size:.9rem;display:grid}.plan-week-navigation span{color:#9ca3af;font-size:.72rem}.plan-days{grid-template-columns:repeat(7,1fr);gap:.25rem;padding:0 .75rem .75rem;display:grid}.plan-days button{color:#9ca3af;cursor:pointer;background:0 0;border:0;border-radius:.75rem;place-items:center;gap:.15rem;min-width:0;padding:.45rem .15rem;display:grid}.plan-days button span{text-transform:capitalize;font-size:.68rem}.plan-days button strong{border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.85rem;display:grid}.plan-days button[aria-pressed=true]{color:var(--client-color-primary)}.plan-days button[aria-pressed=true] strong{color:#fff;background:var(--client-color-primary);box-shadow:0 .2rem .6rem #05966940}.plan-controls{border-bottom:1px solid var(--client-color-border);background:#fff;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .85rem;display:flex}.plan-multi-toggle{color:#6b7280;align-items:center;gap:.4rem;font-size:.75rem;display:flex}.plan-multi-toggle input{accent-color:var(--client-color-primary)}.plan-view-switch{background:#f3f4f6;border-radius:.75rem;padding:.2rem;display:flex}.plan-view-switch button{color:#9ca3af;cursor:pointer;background:0 0;border:0;border-radius:.6rem;align-items:center;gap:.3rem;padding:.45rem .55rem;font-size:.7rem;display:flex}.plan-view-switch svg{width:.9rem;height:.9rem}.plan-view-switch button[aria-pressed=true]{color:#047857;box-shadow:var(--client-shadow-card);background:#fff}.plan-content{gap:1rem;padding:1rem 1rem 4rem;display:grid}.plan-search-link{color:#fff;background:var(--client-color-primary);border-radius:.85rem;justify-content:center;align-items:center;gap:.55rem;padding:.8rem 1rem;font-size:.9rem;font-weight:700;text-decoration:none;display:flex}.plan-search-link svg{width:1.1rem}.plan-empty{text-align:center;background:#fff;border:1px dashed #d1d5db;border-radius:1rem;padding:2.5rem 1.25rem}.plan-empty>span{font-size:3rem}.plan-empty h2{margin:.8rem 0 .35rem;font-size:1.05rem}.plan-empty p{color:#6b7280;margin:0;font-size:.85rem}.plan-empty .plan-search-link{margin-top:1.25rem}.plan-day{gap:.75rem;display:grid}.plan-day>h2{text-transform:capitalize;margin:.2rem 0;font-size:1rem}.plan-meal{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;overflow:hidden}.plan-meal>h3{color:#4b5563;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #f3f4f6;margin:0;padding:.7rem 1rem;font-size:.8rem}.plan-meal ul,.member-food-list{margin:0;padding:0;list-style:none}.plan-meal li+li{border-top:1px solid #f3f4f6}.plan-meal li a{grid-template-columns:2.8rem 1fr 1.1rem;align-items:center;gap:.7rem;padding:.75rem 1rem;text-decoration:none;display:grid}.plan-meal li svg{color:#d1d5db;width:1rem}.plan-meal li small,.plan-meal li strong{display:block}.plan-meal li small{color:#9ca3af;margin-top:.1rem;font-size:.72rem}.food-emoji{background:#f0fdf4;border-radius:.75rem;place-items:center;width:2.7rem;height:2.7rem;font-size:1.5rem;display:grid}.plan-meal__empty{color:#9ca3af;margin:0;padding:.8rem 1rem;font-size:.8rem}.member-view{gap:1rem;display:grid}.member-card{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;padding:1rem}.member-card>header{align-items:center;gap:.7rem;display:flex}.member-card h2,.member-card p{margin:0}.member-card h2{font-size:1rem}.member-card header p{color:#9ca3af;font-size:.75rem}.member-avatar{color:#047857;background:#d1fae5;border-radius:50%;place-items:center;width:2.8rem;height:2.8rem;font-weight:800;display:grid}.nutrition-summary{background:#f9fafb;border-radius:.8rem;gap:.65rem;margin-top:1rem;padding:.8rem;display:grid}.nutrition-summary>div{gap:.3rem;display:grid}.nutrition-summary span{color:#6b7280;justify-content:space-between;gap:.5rem;font-size:.7rem;display:flex}.nutrition-summary strong{color:#374151}.nutrition-summary progress{border:0;border-radius:99px;width:100%;height:.4rem;overflow:hidden}.nutrition-summary progress::-webkit-progress-bar{background:#e5e7eb}.nutrition-summary progress::-webkit-progress-value{background:var(--client-color-primary)}.nutrition-summary small,.nutrition-unavailable{color:#9ca3af;font-size:.7rem}.member-food-list{gap:.4rem;margin-top:.8rem;display:grid}.member-food-list li{background:#fff;border-radius:.65rem;gap:.5rem;padding:.55rem;display:flex}.member-card__empty,.nutrition-unavailable{margin:.8rem 0 0}.member-card__empty{gap:.8rem;display:grid}.member-card__empty p{color:#6b7280;font-size:.8rem}.food-emoji-placeholder{background:linear-gradient(145deg,#ecfdf5,#fefce8);place-items:center;font-size:3rem;display:grid}.plan-add-button{right:max(1.25rem, calc((100vw - var(--client-content-width)) / 2 + 1.25rem));bottom:calc(var(--client-navigation-height) + 1.25rem);z-index:20;color:#fff;background:#48aa5b;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;font-size:2rem;text-decoration:none;display:grid;position:fixed;box-shadow:0 .75rem 1.5rem #0000002e}.entry-actions{flex-wrap:wrap;gap:.5rem;padding:.5rem 1rem 1rem;display:flex}.entry-actions>button{color:#657083;background:0 0;border:0;align-items:center;gap:.3rem;display:flex}.entry-actions svg{width:1rem}.entry-actions__form{background:#f5f7f8;border-radius:.8rem;flex-basis:100%;gap:.6rem;padding:.8rem;display:grid}.entry-actions__form label{grid-template-columns:1fr 6rem auto;align-items:center;gap:.5rem;display:grid}.entry-actions__form input{border:1px solid #d8dde3;border-radius:.5rem;min-width:0;padding:.55rem}.entry-actions__form button{color:#fff;background:#48aa5b;border:0;border-radius:.5rem;padding:.55rem}.entry-actions__form p{color:#9e2929;margin:0}.plan-tabs{scrollbar-width:none;gap:.55rem;padding:.15rem 0 .3rem;display:flex;overflow-x:auto}.plan-tabs button{border:1px solid var(--client-color-border);color:#596273;font:inherit;background:#fff;border-radius:999px;flex:none;align-items:center;gap:.2rem;padding:.6rem 1rem;font-size:.82rem;display:flex}.plan-tabs button[aria-selected=true]{color:#fff;background:#111827;border-color:#111827}.planned-food-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.planned-food-card{border:1px solid var(--client-color-border);min-height:7.1rem;box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;grid-template-columns:4.5rem minmax(0,1fr) 2.5rem;gap:.75rem;padding:.8rem;display:grid;position:relative}.planned-food-card__image{background:#f3f4f6;border-radius:.8rem;align-self:center;place-items:center;width:4.5rem;height:4.5rem;font-size:1.8rem;text-decoration:none;display:grid;overflow:hidden}.planned-food-card__image img{object-fit:cover;width:100%;height:100%}.planned-food-card__content{min-width:0}.planned-food-card__content>a{color:#172033;font-size:.9rem;text-decoration:none}.planned-food-card__content p{color:#737d8e;text-overflow:ellipsis;white-space:nowrap;margin:.25rem 0 0;font-size:.72rem;line-height:1.35;overflow:hidden}.planned-food-card__avatars{margin-top:.45rem;padding-left:.2rem;display:flex}.planned-food-card__avatars span{color:#166534;background:#dcfce7;border:2px solid #fff;border-radius:50%;place-items:center;width:1.45rem;height:1.45rem;margin-left:-.2rem;font-size:.6rem;font-weight:700;display:grid}.planned-food-card__actions{flex-direction:column;justify-content:space-between;align-items:center;display:flex}.planned-food-card__actions>button{color:#657083;background:0 0;border:0;place-items:center;width:2rem;height:2rem;display:grid}.planned-food-card__actions svg{width:1rem}.planned-food-card__menu{z-index:8;border:1px solid var(--client-color-border);background:#fff;border-radius:.75rem;min-width:12.5rem;padding:.4rem;display:grid;position:absolute;top:2.8rem;right:.7rem;box-shadow:0 .8rem 2rem #0f172a2e}.planned-food-card__menu a,.planned-food-card__menu button{color:#374151;text-align:left;font:inherit;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.5rem;padding:.55rem;font-size:.75rem;text-decoration:none;display:flex}.planned-food-card__menu a:hover,.planned-food-card__menu button:hover{background:#f3f4f6}.prepared-toggle{cursor:pointer;border:2px solid #d1d5db;border-radius:50%;place-items:center;width:1.9rem;height:1.9rem;display:grid}.prepared-toggle input{opacity:0;position:absolute}.prepared-toggle span{color:#0000;font-weight:800}.prepared-toggle:has(input:checked){background:#48aa5b;border-color:#48aa5b}.prepared-toggle:has(input:checked) span{color:#fff}.plan-add-button{border:0;font-family:inherit}.plan-add-menu{right:max(1.25rem, calc((100vw - var(--client-content-width)) / 2 + 1.25rem));bottom:calc(var(--client-navigation-height) + 5.25rem);z-index:21;border:1px solid var(--client-color-border);background:#fff;border-radius:1rem;gap:.25rem;width:min(19rem,100vw - 2.5rem);padding:.65rem;display:grid;position:fixed;box-shadow:0 1rem 2.5rem #0f172a33}.plan-add-menu a,.plan-add-menu button{color:#273043;text-align:left;font:inherit;background:0 0;border:0;border-radius:.7rem;align-items:center;gap:.7rem;padding:.75rem;font-size:.8rem;text-decoration:none;display:flex}.plan-add-menu svg{color:#48aa5b;width:1rem}.family-overview,.family-member-summary{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem}.family-overview{padding:1rem}.family-overview h2{margin:0 0 .8rem;font-size:.95rem}.family-overview>div{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.family-overview>div>div{background:#f8fafc;border-radius:.75rem;gap:.45rem;min-height:5rem;padding:.75rem;display:grid}.family-overview span,.family-member-summary small{color:#7b8493;font-size:.72rem}.family-overview strong{align-self:end;font-size:1.2rem}.family-member-summaries{gap:.8rem;display:grid}.family-member-summary{width:100%;color:inherit;text-align:left;padding:1rem}.family-member-summary header{grid-template-columns:2.8rem 1fr 1rem;align-items:center;gap:.7rem;display:grid}.family-member-summary header span:nth-child(2){gap:.15rem;display:grid}.energy-coverage{background:#fffbeb;border:1px solid #f5cf53;border-radius:.75rem;gap:.4rem;margin-top:.8rem;padding:.7rem;font-size:.72rem;display:grid}.energy-coverage span{justify-content:space-between;display:flex}.energy-coverage progress{width:100%}.nutrition-signals{flex-wrap:wrap;gap:.4rem;margin-top:.65rem;display:flex}.nutrition-signals span,.nutrition-signals li{color:#9a4c15;background:#fff7e6;border-radius:999px;padding:.35rem .6rem;font-size:.68rem}.member-details{gap:1.25rem;display:grid}.member-details__section{gap:.8rem;display:grid}.member-details__section>h3{color:#172033;margin:0;font-size:.95rem;font-weight:700}.member-summary-card{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;overflow:hidden}.member-summary-card__header{border-bottom:1px solid #eef0f2;align-items:center;gap:.75rem;padding:1rem;display:flex}.member-summary-card__header h2,.member-summary-card__header p{margin:0}.member-summary-card__header h2{color:#172033;font-size:1rem}.member-summary-card__header p{color:#7b8493;margin-top:.15rem;font-size:.75rem}.nutrition-assessment{gap:.9rem;padding:1rem;display:grid}.nutrition-assessment__header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.nutrition-assessment__header>div{gap:.2rem;display:grid}.nutrition-assessment__header span{color:#718096;text-transform:uppercase;font-size:.72rem;font-weight:700}.nutrition-assessment__header strong{color:#172033;font-size:.9rem}.nutrition-assessment__header button{border:1px solid var(--client-color-border);color:#4b5563;font:inherit;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:.35rem;padding:.5rem .7rem;font-size:.72rem;display:flex}.nutrition-assessment__header button svg{width:.9rem;height:.9rem}.nutrition-assessment__headline{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.nutrition-assessment__headline>strong{color:#374151;font-size:.85rem}.nutrition-status{border:1px solid;border-radius:999px;padding:.35rem .65rem;font-size:.7rem}.nutrition-status--warning{color:#a65319;background:#fffbeb;border-color:#f5cf53}.nutrition-status--ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.nutrition-status--neutral{color:#596273;background:#f8fafc;border-color:#dbe3ec}.nutrition-targets-missing{color:#657083;background:#f8fafc;border:1px dashed #d8dde3;border-radius:.7rem;margin:.8rem 0 0;padding:.65rem .75rem;font-size:.72rem;line-height:1.45}.meal-nutrition-summary{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;gap:.75rem;padding:.9rem;display:grid}.meal-nutrition-summary>header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.meal-nutrition-summary>header>div{gap:.2rem;display:grid}.meal-nutrition-summary>header strong,.meal-nutrition-summary>strong{color:#172033;font-size:.85rem}.meal-nutrition-summary small,.meal-nutrition-summary p{color:#737d8e;margin:0;font-size:.68rem;line-height:1.4}.meal-nutrition-summary>header button{border:1px solid var(--client-color-border);color:#596273;font:inherit;background:#fff;border-radius:999px;align-items:center;gap:.25rem;padding:.4rem .6rem;font-size:.68rem;display:flex}.meal-nutrition-summary>header svg{width:.8rem;height:.8rem}.meal-nutrition-summary__values{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;display:grid}.meal-nutrition-summary__values>span{text-align:center;background:#f8fafc;border-radius:.7rem;gap:.1rem;min-width:0;padding:.55rem .35rem;display:grid}.meal-nutrition-summary__values strong{color:#273043;font-size:.82rem}.nutrition-assessment__signals>p{color:#4b5563;margin:0;font-size:.75rem}.macro-percentages{flex-wrap:wrap;gap:.5rem;display:flex}.macro-percentages span{color:#475569;border:1px solid #0000;border-radius:999px;padding:.45rem .7rem;font-size:.75rem}.macro-percentages span:first-child{background:#eff8ff;border-color:#dbeafe}.macro-percentages span:nth-child(2){background:#fffbeb;border-color:#fef3c7}.macro-percentages span:nth-child(3){background:#ecfdf5;border-color:#d1fae5}.nutrient-details{border-top:1px solid #e5e7eb;padding-top:.9rem}.nutrient-details h4{color:#172033;margin:0 0 .75rem;font-size:.85rem}.nutrient-details__chips{flex-wrap:wrap;gap:.45rem;display:flex}.nutrient-details__chips span{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:.45rem .7rem;font-size:.7rem}.member-day-list,.member-meal-list{gap:.8rem;display:grid}.member-day-card{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;overflow:hidden}.member-day-card__header{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem;display:flex}.member-day-card__header>span:first-child{gap:.2rem;display:grid}.member-day-card__header strong{color:#172033;text-transform:capitalize;font-size:.8rem}.member-day-card__header small{color:#7b8493;font-size:.72rem}.member-day-card__energy{color:#657083;white-space:nowrap;align-items:center;gap:.4rem;font-size:.72rem;display:flex}.member-day-card__energy svg{width:.9rem}.member-day-card__body{border-top:1px solid #eef0f2;gap:1rem;padding-bottom:1rem;display:grid}.member-day-card__meals{gap:.8rem;padding:0 1rem;display:grid}.member-day-card__meals>h4{color:#172033;margin:0;font-size:.85rem;font-weight:700}.member-details__empty-section{color:#7b8493;background:#f8fafc;border:1px dashed #d8dde3;border-radius:.8rem;margin:0;padding:.85rem 1rem;font-size:.75rem}.member-meal-section{border-bottom:1px solid #e5e9ee;gap:.65rem;padding-bottom:.9rem;display:grid}.member-meal-section:last-child{border-bottom:0;padding-bottom:0}.member-meal-section__summary{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.25rem 0;display:flex}.member-meal-section__summary>span{gap:.2rem;display:grid}.member-meal-section__summary>span:last-child{text-align:right}.member-meal-section__summary strong{color:#172033;align-items:center;gap:.35rem;font-size:.8rem;display:flex}.member-meal-section__summary strong svg{width:.85rem}.member-meal-section__summary small{color:#7b8493;font-size:.7rem}.member-meal-section__energy>span{justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.member-meal-section__energy>span>small{color:#277154;white-space:nowrap;background:#ecfdf5;border-radius:999px;padding:.22rem .45rem}.member-meal-section__foods{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.member-food-card{border:1px solid var(--client-color-border);box-shadow:var(--client-shadow-card);background:#fff;border-radius:.9rem;grid-template-columns:4.8rem minmax(0,1fr) 2rem;gap:.75rem;padding:.75rem;display:grid;position:relative}.member-food-card__image{background:#f3f4f6;border-radius:.75rem;align-self:center;place-items:center;width:4.8rem;height:4.8rem;font-size:1.8rem;text-decoration:none;display:grid;overflow:hidden}.member-food-card__image img{object-fit:cover;width:100%;height:100%}.member-food-card__content{min-width:0}.member-food-card__content>a{color:#172033;font-size:.85rem;text-decoration:none}.member-food-card__content p{color:#737d8e;margin:.22rem 0 0;font-size:.7rem;line-height:1.35}.member-food-card__actions{position:relative}.member-food-card__actions>button{color:#657083;cursor:pointer;background:0 0;border:0;place-items:center;width:2rem;height:2rem;display:grid}.member-food-card__actions svg{width:1rem}
.advanced-plan{color:#172033;background:#f7f8fa;min-height:100dvh;padding-bottom:7rem}.advanced-plan>header{background:#fff;border-bottom:1px solid #e2e6ea;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.advanced-plan>header a{border:1px solid #dfe3e8;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;display:grid}.advanced-plan h1{margin:0;font-size:1rem}.advanced-plan p{margin:0;font-size:.8rem}.advanced-plan header p,.advanced-plan__member>p{color:#687386;margin:.35rem 0 0}.advanced-plan__food,.advanced-plan__member,.advanced-plan__summary{background:#fff;border:1px solid #e1e5e9;border-radius:1.25rem;margin:1rem;padding:1rem}.advanced-plan__food{align-items:center;gap:1rem;display:flex}.advanced-plan__food>span{background:#f3f4f6;border-radius:.9rem;justify-content:center;align-items:center;width:4rem;height:4rem;font-size:1.9rem;display:flex;position:relative;overflow:hidden}.advanced-plan__food>span>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.advanced-plan__food div{flex-direction:column;gap:.35rem;font-size:.9rem;display:flex}.advanced-plan__notice{color:#287a45;padding:0 1rem 1rem}.advanced-plan__tabs{gap:.6rem;padding:0 1rem;display:flex;overflow:auto}.advanced-plan__tabs button,.advanced-plan__meals button,.advanced-plan__presets button{white-space:nowrap;background:#fff;border:1px solid #dfe3e8;border-radius:999px;padding:.7rem 1rem}.advanced-plan__tabs button[aria-selected=true],.advanced-plan__meals button[aria-pressed=true],.advanced-plan__presets button[aria-pressed=true]{color:#fff;background:#182031}.advanced-plan__tabs button{font-size:.8rem}.advanced-plan__tabs svg{vertical-align:middle;color:#52bb73;width:1rem;margin-left:.4rem;display:inline}.advanced-plan__member h2{margin-top:0}.advanced-plan fieldset{border:0;margin:1.5rem 0;padding:0}.advanced-plan legend{margin-bottom:.8rem;font-size:1rem}.advanced-plan__days{justify-content:space-between;gap:.2rem;display:flex}.advanced-plan__days button{background:#f1f3f5;border:0;border-radius:1.5rem;flex-direction:column;gap:.25rem;padding:.65rem .55rem;font-size:.8rem;display:flex}.advanced-plan__days button[aria-pressed=true]{color:#fff;background:#111}.advanced-plan__meals,.advanced-plan__presets{flex-wrap:wrap;gap:.5rem;font-size:.8rem;display:flex}.advanced-plan__quantity{grid-template-columns:3rem 1fr 3rem;align-items:center;gap:.7rem;margin-bottom:.5rem;display:grid}.advanced-plan__quantity button{background:#f1f3f5;border:0;border-radius:50%;justify-content:center;align-items:center;height:3rem;display:flex}.advanced-plan__quantity label{border:1px solid #dfe3e8;border-radius:1rem;justify-content:center;align-items:center;height:3.5rem;font-weight:700;display:flex}.advanced-plan__quantity input{text-align:center;width:6rem;font:inherit;border:0}.advanced-plan__summary{color:#287a45;background:#effbf2;flex-direction:column;gap:.5rem;font-size:.9rem;display:flex}.advanced-plan__error{color:#a52626;margin:1rem}.advanced-plan>footer{z-index:60;background:#fff;border-top:1px solid #e2e6ea;grid-template-columns:minmax(7rem,1fr) 2fr;gap:.75rem;width:min(100%,48rem);padding:1rem;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.advanced-plan>footer button{color:#fff;background:#48aa5b;border:0;border-radius:1rem;width:100%;padding:1rem;font-size:.9rem;font-weight:700}.advanced-plan>footer button:disabled{background:#cfd4dc}.advanced-plan>footer .advanced-plan__reset{color:#465266;background:#fff;border:1px solid #b9c0ca}.planning-review{z-index:100;background:#0008;align-items:flex-end;display:flex;position:fixed;inset:0}.planning-review>div{background:#fff;border-radius:1.5rem 1.5rem 0 0;width:100%;max-height:82dvh;padding:1.25rem;overflow:auto}.planning-review li{border-bottom:1px solid #e4e7eb;flex-direction:column;gap:.25rem;padding:.8rem 0;display:flex}.planning-review>div>div{gap:.75rem;margin-top:1rem;display:flex}.planning-review button{background:#fff;border:1px solid #48aa5b;border-radius:.8rem;flex:1;padding:.85rem}.planning-review button:last-child{color:#fff;background:#48aa5b}
.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.food-discovery{min-height:calc(100dvh - var(--client-navigation-height));background:#f8fafc}.food-discovery__header{border-bottom:1px solid var(--client-color-border);background:#fff;align-items:center;gap:.85rem;padding:1rem;display:flex}.food-discovery__header>a{background:#f3f4f6;border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}.food-discovery__header svg{width:1.2rem}.food-discovery__header p,.food-discovery__header h1{margin:0}.food-discovery__header p{color:#9ca3af;font-size:.7rem}.food-discovery__header h1{font-size:1.2rem}.food-tabs{border-bottom:1px solid var(--client-color-border);background:#fff;padding:0 1rem;display:flex;overflow-x:auto}.food-tabs button{color:#6b7280;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-right:1.5rem;padding:.9rem 0;font-size:.9rem;font-weight:600}.food-tabs button[aria-selected=true]{border-color:var(--client-color-primary);color:var(--client-color-primary)}.food-search-toolbar{background:#fff;gap:.55rem;padding:.9rem 1rem 0;display:flex}.food-search-field{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.9rem;flex:1;align-items:center;gap:.55rem;min-width:0;padding:.72rem .8rem;display:flex}.food-search-field:focus-within{border-color:var(--client-color-primary);box-shadow:0 0 0 3px #0596691f}.food-search-field svg{color:#9ca3af;flex:none;width:1.1rem}.food-search-field input{width:100%;font:inherit;background:0 0;border:0;outline:0;font-size:.88rem}.food-filter-trigger{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:.9rem;align-items:center;gap:.35rem;padding:.65rem .75rem;font-weight:600;display:flex}.food-filter-trigger[aria-expanded=true]{border-color:var(--client-color-primary);color:var(--client-color-primary);background:#ecfdf5}.food-filter-trigger svg{width:1rem}.recipe-filters{background:#fff;border-bottom:1px solid #e5e7eb;margin:0;padding:.85rem 1rem 1rem}.recipe-filters__heading,.recipe-filters__heading button{align-items:center;display:flex}.recipe-filters__heading{justify-content:space-between;margin-bottom:.75rem}.recipe-filters__heading button{color:#b91c1c;cursor:pointer;background:0 0;border:0;gap:.2rem;font-size:.78rem}.recipe-filters__heading svg{width:.9rem}.recipe-filters__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.recipe-filter-select,.ingredient-filter{color:#4b5563;gap:.3rem;min-width:0;font-size:.75rem;font-weight:600;display:grid}.recipe-filter-select select,.ingredient-filter>input{color:#111827;width:100%;min-width:0;height:2.6rem;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:.65rem;outline:none;padding:0 .65rem;font-weight:400}.recipe-filter-select select:focus,.ingredient-filter>input:focus{border-color:var(--client-color-primary);box-shadow:0 0 0 2px #0596691f}.ingredient-filter{position:relative}.ingredient-filter__results{z-index:4;background:#fff;border:1px solid #d1d5db;border-radius:.65rem;max-height:12rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 .7rem 1.5rem #0f172a1f}.ingredient-filter__results button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #f3f4f6;gap:.4rem;width:100%;padding:.65rem;display:flex}.ingredient-filter__results button:hover,.ingredient-filter__results button:focus-visible{background:#ecfdf5}.ingredient-filter__results p{color:#9ca3af;margin:0;padding:.7rem;font-weight:400}.ingredient-filter__selected{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.65rem;justify-content:space-between;align-items:center;gap:.3rem;height:2.6rem;padding:0 .35rem 0 .65rem;display:flex}.ingredient-filter__selected span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ingredient-filter__selected button{cursor:pointer;background:0 0;border:0;flex:none;place-items:center;width:2rem;height:2rem;display:grid}.ingredient-filter__selected svg{width:.9rem}.recipe-filters__error{color:#b91c1c;margin:.7rem 0 0;font-size:.75rem}.food-results-heading{padding:1rem 1rem 0}.food-results-heading h2,.food-results-heading p{margin:0}.food-results-heading h2{font-size:1rem}.food-results-heading p{color:#9ca3af;margin-top:.15rem;font-size:.75rem}.food-results{min-height:20rem}.food-state{text-align:center;justify-items:center;gap:.35rem;padding:3rem 1.5rem;display:grid}.food-state>span{font-size:2.5rem}.food-state h2,.food-state p{margin:0}.food-state h2{font-size:1rem}.food-state p{color:#9ca3af;max-width:20rem;font-size:.8rem}.food-state button{color:#fff;background:var(--client-color-primary);border:0;border-radius:.7rem;margin-top:.5rem;padding:.6rem 1rem}.food-loader{border:.2rem solid #d1fae5;border-top-color:var(--client-color-primary);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite food-spin}@keyframes food-spin{to{transform:rotate(360deg)}}.food-result-list{gap:.7rem;margin:0;padding:1rem;list-style:none;display:grid}.food-result-list>li{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;grid-template-columns:1fr 3rem;align-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 2px 5px #0f172a0d}.food-result-list>li>a{min-width:0;color:inherit;grid-template-columns:4.5rem minmax(0,1fr);align-items:center;gap:.85rem;padding:.8rem 0 .8rem .8rem;text-decoration:none;display:grid}.food-result-list__image{background:#f3f4f6;border-radius:.9rem;place-items:center;width:4.5rem;height:4.5rem;font-size:1.9rem;display:grid;position:relative;overflow:hidden}.food-result-list__image img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.food-result-list__content{gap:.3rem;min-width:0;display:grid}.food-result-list__content strong{text-overflow:ellipsis;white-space:nowrap;font-size:.93rem;font-weight:650;overflow:hidden}.food-result-list__content small{color:#6b7280;font-size:.72rem}.food-result-list__actions{flex-direction:column;justify-content:space-between;align-items:center;height:100%;padding:.8rem 0;display:flex}.food-card-nutrition{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.food-card-nutrition__basis{color:#9ca3af}.food-card-category{align-items:center;gap:.25rem;font-weight:600;display:flex;color:#9ca3af!important}.food-card-metadata{flex-wrap:wrap;gap:.25rem;display:flex}.food-card-metadata>span{color:#6b7280;background:#f3f4f6;border-radius:999px;align-items:center;gap:.15rem;padding:.15rem .35rem;display:inline-flex}.food-card-metadata svg{width:.72rem;height:.72rem}.favorite-button{color:#cbd5e1;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.favorite-button[aria-pressed=true]{color:#e4574f}.favorite-button:focus-visible{outline:2px solid var(--client-color-primary);outline-offset:1px}.favorite-button svg{width:1.35rem}.food-pagination{justify-content:space-between;align-items:center;padding:0 1rem 1rem;display:flex}.food-pagination button{color:#047857;background:0 0;border:0;align-items:center;gap:.2rem;padding:.5rem;display:flex}.food-pagination button:disabled{color:#d1d5db}.food-pagination svg{width:1rem}.food-pagination span{color:#9ca3af;font-size:.75rem}@media (min-width:720px){.recipe-filters__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:420px){.food-filter-trigger{color:#0000;gap:1rem;width:2.8rem;overflow:hidden}.food-filter-trigger svg{color:#374151;flex:none}.recipe-filters__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.food-loader{animation:none}}.quick-plan-context{z-index:15;background:#fff;border-bottom:1px solid #e2e6ea;gap:.75rem;padding:1rem;display:grid;position:sticky;top:0}.quick-plan-context>div{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.quick-plan-context label{color:#677284;gap:.25rem;font-size:.85rem;display:grid}.quick-plan-context select{background:#fff;border:1px solid #dfe3e8;border-radius:999px;min-width:0;padding:.55rem}.quick-plan-context>button{color:#fff;background:#48aa5b;border:0;border-radius:999px;padding:.75rem;font-weight:700}.quick-plan-context>button:disabled{background:#ccd2da}.quick-plan-context p{color:#9e2929;margin:0}.food-select-button{background:#fff;border:2px solid #ccd2da;border-radius:50%;width:2rem;height:2rem;font-size:1.25rem}.food-select-button[aria-pressed=true]{color:#fff;background:#48aa5b;border-color:#48aa5b}
.food-details{min-height:calc(100dvh - var(--client-navigation-height));background:#fff}.food-details__hero{background:linear-gradient(#9ca3af,#f3f4f6);place-items:center;height:clamp(17rem,58vw,26rem);display:grid;position:relative;overflow:hidden}.food-details__hero>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.food-details__hero-fallback{font-size:clamp(5rem,20vw,8rem)}.food-details__nav{z-index:2;justify-content:space-between;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.food-details__nav a,.food-details__nav button{color:#fff;cursor:pointer;background:#1f2937b3;border:0;border-radius:50%;place-items:center;width:3rem;height:3rem;display:grid}.food-details__nav button[aria-pressed=true]{color:#ef5b55}.food-details__nav svg{width:1.4rem}.food-details__sheet{z-index:3;min-height:max(30rem, calc(100dvh - var(--client-navigation-height) - 15.5rem));background:#fff;border-radius:1.75rem 1.75rem 0 0;margin-top:-1.5rem;padding-bottom:2rem;position:relative}.food-details__title{padding:1.35rem 1.35rem .6rem}.food-details__title h1,.food-details__title p{margin:0}.food-details__title h1{font-size:1.55rem;line-height:1.2}.food-details__title p{color:#6b7280;margin-top:.65rem;line-height:1.55}.detail-tabs{border-bottom:1px solid #e5e7eb;grid-auto-columns:minmax(5rem,1fr);grid-auto-flow:column;padding:0 1.1rem;display:grid;overflow-x:auto}.detail-tabs button{color:#6b7280;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-width:5rem;padding:.85rem .35rem;font-size:.85rem}.detail-tabs button[aria-selected=true]{border-color:var(--client-color-primary);color:var(--client-color-primary)}.food-details__panels{gap:1rem;padding:1rem;display:grid}.detail-card,.recipe-fact-grid,.ingredient-summary,.detail-steps>li,.ingredient-cards>li,.related-recipe-cards>li,.detail-photo-gallery>*,.detail-video-list>a,.nutrient-list{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 2px 5px #0f172a0d}.detail-card{padding:1rem}.detail-card h2,.detail-card h3,.detail-section-title,.detail-media-section h2,.nutrient-panel h2{color:#111827;margin:0}.detail-card h2,.detail-section-title,.detail-media-section h2,.nutrient-panel h2{font-size:1rem}.detail-card h3{margin-top:1rem;font-size:.86rem}.detail-card__heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.detail-card__heading>span{color:#9ca3af;font-size:.75rem}.recipe-fact-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.recipe-fact-grid>div,.ingredient-summary>div{text-align:center;justify-items:center;gap:.25rem;padding:1rem .5rem;display:grid}.recipe-fact-grid>div{border-bottom:1px solid #f3f4f6;border-right:1px solid #f3f4f6}.recipe-fact-grid strong,.ingredient-summary strong{font-size:.92rem}.recipe-fact-grid span,.ingredient-summary span{color:#9ca3af;font-size:.68rem}.macro-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.macro-card{background:#f8fafc;border-radius:.8rem;gap:.3rem;padding:.8rem;display:grid}.macro-card>span:first-child{color:#6b7280;font-size:.72rem}.macro-card strong{font-size:1rem}.macro-card--protein{background:#eff6ff}.macro-card--total_fat{background:#fff7ed}.macro-card--carbohydrate{background:#f0fdf4}.nutrient-progress{appearance:none;background:#eef0f3;border:0;border-radius:999px;width:100%;height:.38rem;display:block;overflow:hidden}.nutrient-progress::-webkit-progress-bar{background:#eef0f3}.nutrient-progress::-webkit-progress-value{border-radius:inherit;background:#65d486}.nutrient-progress::-moz-progress-bar{border-radius:inherit;background:#65d486}.detail-definition-list{margin:0}.detail-definition-list>div{border-bottom:1px solid #f3f4f6;justify-content:space-between;gap:1rem;padding:.75rem 0;display:flex}.detail-definition-list>div:last-child{border:0}.detail-definition-list dt{color:#6b7280}.detail-definition-list dd{text-align:right;margin:0;font-weight:650}.portion-list,.source-list,.author-links,.ingredient-cards,.related-recipe-cards{margin:0;padding:0;list-style:none}.portion-list li{color:#6b7280;justify-content:space-between;gap:1rem;padding:.55rem 0;display:flex}.detail-external-link,.source-list a{color:#047857;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.7rem;text-decoration:none;display:flex}.detail-external-link svg,.source-list svg{width:1rem}.author-card{grid-template-columns:3.5rem minmax(0,1fr);gap:.85rem;display:grid}.author-card__avatar{color:#6b7280;background:#f3f4f6;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;display:grid;overflow:hidden}.author-card__avatar img{object-fit:cover;width:100%;height:100%}.author-card__avatar svg{width:1.6rem}.author-card p,.expandable-text p,.expandable-text summary{color:#4b5563;font-size:.82rem;line-height:1.55}.expandable-text summary{cursor:pointer;list-style:none;display:grid}.expandable-text summary::-webkit-details-marker{display:none}.expandable-text summary span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.expandable-text summary em{color:var(--client-color-primary);margin-top:.25rem;font-style:normal}.expandable-text[open] summary{display:none}.expandable-text p{margin:.45rem 0 0}.author-links{gap:.4rem;margin-top:.7rem;display:flex}.author-links a{color:#4b5563;background:#f3f4f6;border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.author-links svg{width:1rem}.detail-photo-gallery,.detail-video-list{gap:.75rem;margin-top:.7rem;display:grid}.detail-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-photo-gallery button{cursor:zoom-in;border:0;min-height:7rem;padding:0;position:relative;overflow:hidden}.detail-photo-gallery img{object-fit:cover;width:100%;height:100%;min-height:7rem}.detail-video-list h3{margin:.35rem 0 0;font-size:.9rem}.detail-video-list>a{color:#111827;grid-template-columns:3rem minmax(0,1fr) 1rem;align-items:center;gap:.75rem;min-height:5rem;padding:.85rem;text-decoration:none;display:grid}.detail-video-list>a>svg{width:1.2rem}.detail-video-card__icon{color:#4b5563;background:#f3f4f6;border-radius:.75rem;place-items:center;width:3rem;height:3rem;display:grid}.detail-video-card__icon svg{width:1.5rem}.detail-video-card__content{gap:.25rem;min-width:0;display:grid}.detail-video-card__content strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.detail-video-card__content small{color:#9ca3af}.detail-lightbox{z-index:100;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.detail-lightbox__backdrop{background:#0f172ae0;border:0;position:absolute;inset:0}.detail-lightbox__content{z-index:1;place-items:center;max-width:min(60rem,100%);max-height:calc(100dvh - 2rem);display:grid;position:relative}.detail-lightbox__content>button{z-index:2;color:#fff;cursor:pointer;background:#0f172abf;border:0;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:absolute;top:.75rem;right:.75rem}.detail-lightbox__content img{object-fit:contain;border-radius:1rem;max-width:100%;max-height:calc(100dvh - 2rem)}.ingredient-summary{grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.ingredient-summary>div+div{border-left:1px solid #f3f4f6}.ingredient-cards,.related-recipe-cards{gap:.65rem;margin-top:.7rem;display:grid}.ingredient-cards>li,.related-recipe-cards>li{overflow:hidden}.ingredient-cards a{color:inherit;grid-template-columns:3.8rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.7rem;text-decoration:none;display:grid}.detail-thumbnail{background:#f3f4f6;border-radius:.75rem;place-items:center;width:3.8rem;height:3.8rem;font-size:1.5rem;display:grid;position:relative;overflow:hidden}.detail-thumbnail img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ingredient-card__content{gap:.18rem;min-width:0;display:grid}.ingredient-card__content strong,.related-recipe-cards strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ingredient-card__content small,.related-recipe-cards small{color:#9ca3af;font-size:.68rem}.ingredient-card__nutrition{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:#6b7280!important}.ingredient-card__amount{justify-items:end;font-size:.78rem;font-weight:700;display:grid}.ingredient-card__amount small{color:#9ca3af;font-size:.62rem;font-weight:400}.detail-steps{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.detail-steps>li{grid-template-columns:2.2rem 1fr;gap:.8rem;padding:1rem;display:grid}.detail-steps>li>span{color:#36a652;background:#effcf3;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;font-weight:700;display:grid}.detail-steps p{color:#374151;margin:0;line-height:1.5}.detail-steps small{color:#9ca3af;align-items:center;gap:.25rem;margin-top:.4rem;display:inline-flex}.detail-steps svg{width:.8rem}.nutrient-panel__caption{color:#9ca3af;margin:0;font-size:.78rem}.nutrient-panel section{gap:.65rem;display:grid}.nutrient-list{margin:0;overflow:hidden}.nutrient-list>div{border-bottom:1px solid #e5e7eb;grid-template-columns:1fr auto;gap:.35rem 1rem;padding:.8rem 1rem;display:grid}.nutrient-list>div:last-child{border-bottom:0}.nutrient-list dt{color:#374151;display:grid}.nutrient-list dt small{color:#9ca3af;font-size:.62rem}.nutrient-list dd{color:#111827;margin:0;font-size:.82rem}.nutrient-list .nutrient-progress{grid-column:1/-1}.related-recipe-cards a{color:inherit;grid-template-columns:4.5rem minmax(0,1fr);align-items:center;gap:.75rem;padding:.75rem;text-decoration:none;display:grid}.related-recipe-cards .detail-thumbnail{width:4.5rem;height:4.5rem}.related-recipe-cards a>span:last-child{gap:.18rem;min-width:0;display:grid}.related-recipe-card__chips{flex-wrap:wrap;gap:.25rem;display:flex}.related-recipe-card__chips small{background:#f3f4f6;border-radius:999px;padding:.12rem .35rem}.detail-empty-state{text-align:center;justify-items:center;gap:.6rem;padding:3rem 1.2rem;display:grid}.detail-empty-state>span{font-size:3rem}.detail-empty-state h2,.detail-empty-state p{margin:0}.detail-empty-state p,.detail-empty-state small{color:#6b7280;max-width:22rem}.detail-empty-state button{background:var(--client-color-primary);color:#fff;border:0;border-radius:.7rem;padding:.7rem 1rem}.detail-empty-state button:disabled{cursor:not-allowed;opacity:.55}@media (min-width:720px){.macro-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-photo-gallery,.related-recipe-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.food-details__add-plan{right:max(1.25rem, calc((100vw - var(--client-content-width)) / 2 + 1.25rem));bottom:calc(var(--client-navigation-height) + 1.25rem);z-index:25;color:#fff;cursor:pointer;background:#48aa5b;border:0;border-radius:50%;place-items:center;width:4rem;height:4rem;font-size:2.5rem;text-decoration:none;display:grid;position:fixed;box-shadow:0 .75rem 1.5rem #0000002e}.food-details__add-menu{right:max(1.25rem, calc((100vw - var(--client-content-width)) / 2 + 1.25rem));bottom:calc(var(--client-navigation-height) + 5.75rem);z-index:24;border:1px solid var(--client-color-border);background:#fff;border-radius:1rem;gap:.25rem;width:min(19rem,100vw - 2.5rem);padding:.65rem;display:grid;position:fixed;box-shadow:0 1rem 2.5rem #0f172a33}.food-details__add-menu a,.food-details__add-menu button{color:#273043;text-align:left;font:inherit;background:0 0;border:0;border-radius:.7rem;align-items:center;gap:.7rem;padding:.75rem;text-decoration:none;display:flex}.food-details__add-menu button{cursor:pointer}.food-details__add-menu button:disabled{cursor:wait;opacity:.6}.food-details__add-menu svg{color:#48aa5b;width:1rem}.food-details__add-menu p{color:#b42318;margin:.25rem 0 0;padding:0 .75rem .5rem;font-size:.8rem}
.shopping-page{min-height:calc(100dvh - var(--client-navigation-height));padding:1.25rem 1rem calc(var(--client-navigation-height) + 6rem);color:#172033;background:#f7f8fa}.shopping-page__header,.shopping-subpage-header{align-items:flex-start;gap:1rem;max-width:64rem;margin:0 auto 1.5rem;display:flex}.shopping-page__header{justify-content:space-between;padding:1rem 0}.shopping-page h1{margin:.2rem 0;font-size:clamp(1.5rem,4vw,2rem)}.shopping-page p{color:#6c7484;margin:.25rem 0}.shopping-page__eyebrow{color:#3d9b62;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:700}.shopping-primary-button,.shopping-add-actions>a,.shopping-add-actions button,.shopping-form-card>button,.shopping-complete-button{color:#fff;min-height:2.75rem;font:inherit;cursor:pointer;background:#49a75a;border:0;border-radius:.85rem;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1rem;font-weight:700;text-decoration:none;display:inline-flex}.shopping-page button:disabled{cursor:not-allowed;opacity:.55}.shopping-primary-button svg,.shopping-add-actions svg,.shopping-complete-button svg{width:1.1rem}.shopping-months,.shopping-groups{gap:1rem;max-width:64rem;margin:0 auto;display:grid}.shopping-month,.shopping-category,.shopping-form-card,.shopping-summary{background:#fff;border:1px solid #e1e5eb;border-radius:1.25rem;box-shadow:0 2px 8px #1f29370d}.shopping-month__toggle,.shopping-category>summary{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.65rem;padding:1rem 1.1rem;list-style:none;display:flex}.shopping-month__toggle span,.shopping-category>summary strong{text-align:left;flex:1}.shopping-category>summary strong{text-transform:capitalize}.shopping-month__toggle small,.shopping-category>summary small{color:#397c4d;text-align:center;background:#eef7f0;border-radius:999px;min-width:1.8rem;padding:.18rem .45rem}.shopping-list-cards,.shopping-category ul{gap:.75rem;margin:0;padding:0 1rem 1rem;list-style:none;display:grid}.shopping-list-cards>li>a,.shopping-list-cards>li>.shopping-list-card__select{color:inherit;border:1px solid #edf0f3;border-radius:1rem;align-items:center;gap:.85rem;padding:1rem;text-decoration:none;display:flex}.shopping-list-card__icon{color:#3d9b55;background:#eef9f0;border-radius:.9rem;place-items:center;width:3rem;height:3rem;display:grid}.shopping-list-card__content{color:#70798a;flex:1;gap:.35rem;min-width:0;font-size:.9rem;display:grid}.shopping-list-card__topline{color:#172033;justify-content:space-between;align-items:center;gap:.5rem;font-size:1rem;display:flex}.shopping-list-card__progress,.shopping-summary__progress{appearance:none;background:#e9edf1;border:0;border-radius:999px;width:100%;height:.45rem;display:block;overflow:hidden}.shopping-list-card__progress::-webkit-progress-bar{background:#e9edf1}.shopping-summary__progress::-webkit-progress-bar{background:#e9edf1}.shopping-list-card__progress::-webkit-progress-value{background:#4baa5c;border-radius:999px}.shopping-summary__progress::-webkit-progress-value{background:#4baa5c;border-radius:999px}.shopping-list-card__progress::-moz-progress-bar{background:#4baa5c;border-radius:999px}.shopping-summary__progress::-moz-progress-bar{background:#4baa5c;border-radius:999px}.shopping-status{white-space:nowrap;border-radius:999px;padding:.3rem .65rem;font-size:.76rem;font-weight:700}.shopping-status--open{color:#2f7b44;background:#e9f8ed}.shopping-status--completed{color:#4967a7;background:#edf2ff}.shopping-status--archived{color:#747b87;background:#f0f1f3}.shopping-fab{right:max(1.3rem,50vw - 32rem);bottom:calc(var(--client-navigation-height) + 1.3rem);z-index:15;color:#fff;background:#49a75a;border-radius:50%;place-items:center;width:3.8rem;height:3.8rem;display:grid;position:fixed;box-shadow:0 10px 24px #1d612f40}.shopping-subpage-header>a{color:#172033;background:#fff;border:1px solid #dfe3e8;border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;display:grid}.shopping-subpage-header>div{flex:1}.shopping-plan-link{color:#338548;font-size:.9rem;font-weight:650}.shopping-form-card{gap:1rem;max-width:34rem;margin:2rem auto;padding:1.25rem;display:grid}.shopping-form-card__icon{color:#3b9951;background:#edf8ef;border-radius:1rem;place-items:center;width:3.25rem;height:3.25rem;display:grid}.shopping-form-card label,.shopping-custom label{color:#4f5868;gap:.4rem;font-size:.9rem;font-weight:650;display:grid}.shopping-form-card input,.shopping-form-card select,.shopping-custom input,.shopping-custom select{color:#172033;width:100%;min-height:2.75rem;font:inherit;background:#fff;border:1px solid #dce1e7;border-radius:.75rem;padding:.65rem .75rem}.shopping-period-preview{background:#f4f8f5;border-radius:.85rem;gap:.25rem;padding:.85rem;display:grid}.shopping-notice,.shopping-warning,.shopping-warning-details{color:#7a5620;background:#fff9e9;border:1px solid #f1d176;border-radius:1rem;max-width:64rem;margin:0 auto 1rem;padding:.9rem 1rem}.shopping-summary{gap:.7rem;max-width:64rem;margin:0 auto 1rem;padding:1rem 1.2rem;display:grid}.shopping-summary>div{justify-content:space-between;align-items:baseline;display:flex}.shopping-summary__progress{height:.6rem}.shopping-warning{align-items:center;gap:.85rem;display:flex}.shopping-warning>div{flex:1}.shopping-warning button{color:inherit;background:#fff;border:1px solid #e5bc4d;border-radius:.7rem;align-items:center;gap:.35rem;padding:.55rem .75rem;display:inline-flex}.shopping-warning-details summary{cursor:pointer;font-weight:700}.shopping-warning-details ul{margin-bottom:0;padding-left:1.2rem}.shopping-add-actions{flex-wrap:wrap;gap:.7rem;max-width:64rem;margin:0 auto 1rem;display:flex}.shopping-custom{position:relative}.shopping-custom>button{background:#172033}.shopping-custom form{z-index:20;background:#fff;border:1px solid #dde2e8;border-radius:1rem;gap:.75rem;width:min(26rem,100vw - 2rem);padding:1rem;display:grid;position:absolute;top:calc(100% + .5rem);left:0;box-shadow:0 15px 35px #141d2d2e}.shopping-custom__quantity{grid-template-columns:1fr 1.25fr;gap:.6rem;display:grid}.shopping-category{overflow:hidden}.shopping-category[open]>summary{border-bottom:1px solid #e6e9ee}.shopping-category>summary::-webkit-details-marker{display:none}.shopping-category>summary>svg:last-child{width:1rem}.shopping-category[open]>summary>svg:last-child{rotate:180deg}.shopping-category--removed{opacity:.85}.shopping-item{border:1px solid #e5e8ed;border-radius:1rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.85rem;display:grid}.shopping-item--purchased{background:#f2faf4}.shopping-item--purchased .shopping-item__content>strong{color:#788179;text-decoration:line-through}.shopping-item__check input{opacity:0;width:1px;height:1px;position:absolute}.shopping-item__check span{color:#0000;cursor:pointer;border:2px solid #cfd5dc;border-radius:50%;place-items:center;width:1.65rem;height:1.65rem;display:grid}.shopping-item__check input:checked+span{color:#fff;background:#48a65a;border-color:#48a65a}.shopping-item__content{gap:.2rem;min-width:0;display:grid}.shopping-item__content small{color:#70798a}.shopping-sources summary{color:#397c4d;cursor:pointer;font-size:.82rem}.shopping-sources ul{color:#727b89;padding:.35rem 0 0 1rem;font-size:.78rem;display:block}.shopping-item-edit summary{color:#397c4d;cursor:pointer;font-size:.82rem}.shopping-item-edit>div{gap:.4rem;padding-top:.4rem;display:flex}.shopping-item-edit input{min-width:0;font:inherit;border:1px solid #dce1e7;border-radius:.55rem;flex:1;padding:.45rem}.shopping-item-edit button{color:#317c45;background:#e9f7ec;border:0;border-radius:.55rem;padding:.45rem .65rem}.shopping-item__actions,.shopping-quantity{align-items:center;gap:.35rem;display:flex}.shopping-quantity{border:1px solid #dce1e7;border-radius:.7rem;padding:.25rem .35rem}.shopping-quantity input{width:5.2rem;font:inherit;text-align:right;border:0;padding:.35rem}.shopping-item__actions button{color:#566071;background:#f1f3f5;border:0;border-radius:.55rem;align-items:center;gap:.3rem;padding:.45rem;display:inline-flex}.shopping-item__actions svg{width:1rem;height:1rem}.shopping-item__remove{color:#ad4242!important}.shopping-complete-button{width:min(32rem,100% - 2rem);margin:1.5rem auto 0}.shopping-complete-button--secondary{background:#172033}.shopping-lifecycle-actions{gap:.6rem;max-width:32rem;margin:1.5rem auto 0;display:flex}.shopping-lifecycle-actions .shopping-complete-button{flex:1;width:auto;margin:0}.shopping-lifecycle-actions>button:last-child{color:#626b79;font:inherit;background:#fff;border:1px solid #dce1e7;border-radius:.85rem;padding:.7rem 1rem}.shopping-state{text-align:center;align-content:center;place-items:center;gap:.5rem;max-width:34rem;min-height:16rem;margin:2rem auto;display:grid}.shopping-state>span{font-size:2.5rem}@media (max-width:640px){.shopping-page{padding-inline:.75rem}.shopping-page__header{align-items:center}.shopping-primary-button{padding-inline:.8rem;font-size:.88rem}.shopping-subpage-header{gap:.7rem}.shopping-subpage-header>.shopping-status{position:absolute;top:5.4rem;right:.75rem}.shopping-warning{flex-wrap:wrap;align-items:flex-start}.shopping-warning button{margin-left:2rem}.shopping-item{grid-template-columns:auto minmax(0,1fr)}.shopping-item__actions{flex-wrap:wrap;grid-column:2;justify-content:flex-end}.shopping-quantity input{width:4.5rem}}.shopping-list-card__select{text-align:left;width:100%;font:inherit;cursor:pointer}.shopping-list-card__select:disabled{opacity:.55}.shopping-picker-error{color:#a52626;margin:1rem}
.diary-screen{padding-bottom:7rem}.diary-member-summary{padding:0 1rem 1rem}.diary-adherence{gap:.4rem;margin-top:.85rem;display:grid}.diary-adherence span{color:#657083;justify-content:space-between;font-size:.75rem;display:flex}.diary-adherence progress,.diary-nutrients progress{accent-color:#48aa5b;width:100%}.diary-nutrients{border-top:1px solid #eef0f2;margin-top:.85rem}.diary-nutrients>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 0 0;list-style:none;display:flex}.diary-nutrients>summary::-webkit-details-marker{display:none}.diary-nutrients>summary>span{gap:.15rem;display:grid}.diary-nutrients>summary strong{color:#172033;font-size:.8rem}.diary-nutrients>summary small,.diary-nutrients article span,.diary-nutrients article small{color:#7b8493;font-size:.7rem}.diary-nutrients>summary svg{width:1rem;transition:transform .2s}.diary-nutrients[open]>summary svg{transform:rotate(180deg)}.diary-nutrients>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding-top:.75rem;display:grid}.diary-nutrients article{background:#f8fafc;border-radius:.75rem;gap:.25rem;min-width:0;padding:.7rem;display:grid}.diary-food-card--skipped{opacity:.65}.diary-food-card--manual{background:#faf8ff;border-left:4px solid #8b5cf6}.diary-source-badge{color:#6d28d9;background:#ede9fe;border-radius:999px;width:fit-content;margin-top:.25rem;padding:.15rem .45rem;font-size:.65rem;font-weight:700;display:inline-flex}.diary-food-card .member-food-card__actions{align-content:space-between;justify-items:end;display:grid;position:relative}.diary-consumption-toggle--skipped{background:#fffbeb;border-color:#d97706}.diary-consumption-toggle--skipped span{color:#d97706}.diary-consumption-toggle:has(input:focus-visible){outline:3px solid color-mix(in srgb, var(--client-color-focus) 35%, transparent);outline-offset:2px}.diary-deviations{color:#7c3d12;margin:.75rem 0 0;font-size:.72rem}.diary-edit-dialog{z-index:40;background:#0f172a73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.diary-edit-dialog>div{background:#fff;border-radius:1rem;gap:1rem;width:min(100%,28rem);padding:1.25rem;display:grid;box-shadow:0 1.25rem 3rem #0f172a40}.diary-edit-dialog h3{margin:0}.diary-edit-dialog label{color:#465066;gap:.4rem;font-size:.8rem;display:grid}.diary-edit-dialog input{border:1px solid var(--client-color-border);font:inherit;border-radius:.65rem;padding:.7rem}.diary-edit-dialog fieldset{border:0;padding:0}.diary-edit-dialog legend{color:#465066;margin-bottom:.5rem;font-size:.8rem}.diary-edit-dialog footer{justify-content:flex-end;gap:.65rem;display:flex}.diary-edit-dialog footer button{color:#fff;background:#48aa5b;border:0;border-radius:.7rem;padding:.65rem .9rem}.diary-edit-dialog footer button:first-child{color:#465066;background:#eef1f4}.diary-portion{align-items:center;gap:.4rem;margin-top:.55rem;display:flex}.diary-portion label{color:#737d8e;align-items:center;gap:.35rem;font-size:.7rem;display:flex}.diary-portion input{border:1px solid var(--client-color-border);width:4.5rem;font:inherit;border-radius:.55rem;padding:.4rem}.diary-portion button,.diary-skip{color:#287a43;font:inherit;background:#edf7ef;border:0;border-radius:.55rem;align-items:center;gap:.3rem;font-size:.7rem;display:inline-flex}.diary-portion button{padding:.4rem}.diary-portion button svg,.diary-skip svg{width:.9rem}.diary-skip{margin-top:.55rem;padding:.45rem .65rem}.diary-empty{text-align:center;padding:1.25rem}.diary-empty svg{color:#48aa5b;margin:0 auto}.diary-add-date input{width:100%;font:inherit;background:#fff;border:1px solid #dfe3e8;border-radius:.8rem;padding:.8rem}
.analytics-screen{padding-bottom:5rem}.analytics-controls .plan-view-switch{width:auto}.analytics-controls .plan-view-switch button{gap:.35rem;width:auto;min-width:2.5rem;padding:0 .7rem}.analytics-controls .plan-view-switch button span{font-size:.72rem;font-weight:700}.analytics-member-view,.analytics-member{gap:1rem;display:grid}.analytics-member__header{align-items:center;gap:.75rem;padding:.2rem;display:flex}.analytics-member__header h2,.analytics-member__header p{margin:0}.analytics-member__header h2{color:#172033;font-size:1.05rem}.analytics-member__header p{color:#737d8e;margin-top:.15rem;font-size:.75rem}.analytics-grid{gap:.85rem;display:grid}.analytics-card{border:1px solid var(--client-color-border);min-width:0;box-shadow:var(--client-shadow-card);background:#fff;border-radius:1rem;align-content:start;gap:.8rem;padding:1rem;display:grid}.analytics-card>header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.analytics-card>header p,.analytics-card>header h3,.analytics-card>p{margin:0}.analytics-card>header p{color:#48aa5b;letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:800}.analytics-card>header h3{color:#172033;margin-top:.15rem;font-size:.94rem}.analytics-card>p,.analytics-card>small{color:#737d8e;font-size:.72rem;line-height:1.45}.analytics-adherence>header>strong{color:#287a43;font-size:1.5rem}.analytics-adherence progress,.analytics-targets progress{accent-color:#48aa5b;width:100%}.analytics-adherence>small{color:#8a5a24}.analytics-macros__content{grid-template-columns:7.5rem minmax(0,1fr);align-items:center;gap:1rem;display:grid}.analytics-macros__chart{width:7.5rem;height:7.5rem}.analytics-macros__chart circle{fill:none;stroke-width:6px;transform-origin:50%;transform:rotate(-90deg)}.analytics-macros__chart circle.track{stroke:#eef1f4}.analytics-macros__chart circle.protein{stroke:#48aa5b}.analytics-macros__chart circle.fat{stroke:#f0a43c}.analytics-macros__chart circle.carbohydrate{stroke:#5b8def}.analytics-macros__chart text{color:#687267;fill:currentColor;font-size:.22rem;font-weight:800}.analytics-macros ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.analytics-macros li{color:#687267;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;font-size:.75rem;display:grid}.analytics-macros li:before{content:"";border-radius:50%;width:.55rem;height:.55rem}.analytics-macros li.protein:before{background:#48aa5b}.analytics-macros li.fat:before{background:#f0a43c}.analytics-macros li.carbohydrate:before{background:#5b8def}.analytics-macros li strong{color:#172033}.analytics-nutrition{grid-column:1/-1}.analytics-targets{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.analytics-targets article{background:#f8faf8;border-radius:.8rem;gap:.3rem;min-width:0;padding:.75rem;display:grid}.analytics-targets article span,.analytics-targets article small{color:#737d8e;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.analytics-targets article strong{color:#172033;font-size:.9rem}.analytics-weight{grid-column:1/-1}.analytics-weight__values{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.analytics-weight__values>div{background:#f8faf8;border-radius:.8rem;gap:.25rem;min-width:0;padding:.75rem;display:grid}.analytics-weight__values span{color:#737d8e;font-size:.66rem}.analytics-weight__values strong{color:#172033;font-size:.9rem}.analytics-weight__values .increase strong{color:#b45309}.analytics-weight__values .decrease strong{color:#287a43}@media (min-width:760px){.analytics-targets{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:420px){.analytics-controls .plan-view-switch button span{display:none}.analytics-macros__content{grid-template-columns:6.5rem minmax(0,1fr)}.analytics-macros__chart{width:6.5rem;height:6.5rem}.analytics-weight__values{grid-template-columns:1fr}}
