*{box-sizing:border-box}.ui-recipes-page,.ui-marketplace-page{width:min(var(--container), calc(100% - var(--section-inline-gutter)));padding:var(--space-8) 0 var(--space-12);margin:0 auto}.ui-recipes-header,.ui-marketplace-header{justify-content:space-between;align-items:end;gap:var(--space-4);flex-wrap:wrap;display:flex}.ui-recipes-eyebrow{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase;margin:0;line-height:1}.ui-recipes-title{margin:var(--space-1) 0 0;color:var(--text-strong);font-family:var(--font-display);font-size:clamp(2.25rem,5vw,3.75rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:.94}.ui-recipes-description{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.45}.ui-recipes-create-button{padding-inline:1.3rem!important}.ui-recipes-content,.ui-marketplace-content{gap:var(--space-6);margin-top:var(--space-8);display:grid}.ui-filter-toolbar,.ui-recipes-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-filter-toolbar__sort{min-width:8.75rem}.ui-filter-toolbar__sort .ui-field-control{border-radius:var(--radius-pill);background:var(--surface-strong);min-height:2rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.ui-marketplace-quick-filters .ui-filter-toolbar__quick-filter{padding-inline:var(--space-4)}.ui-filter-trigger{border-radius:var(--radius-pill);white-space:nowrap;min-height:2rem;width:2rem!important;min-width:2rem!important;max-width:2rem!important}.ui-filter-trigger__label{display:none}.ui-filter-panel-dialog{--dialog-shell-body-padding:var(--space-5)}.ui-filter-panel-dialog__content{gap:var(--space-4);display:grid}.ui-filter-panel-dialog .ui-filter-panel{background:0 0;border:0;border-radius:0;padding:0}.ui-filter-panel{gap:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface-strong) 88%, transparent);padding:var(--space-4);display:grid}.ui-filter-panel__section{gap:var(--space-3);display:grid}.ui-filter-panel__section+.ui-filter-panel__section{border-top:1px solid var(--border);padding-top:var(--space-4)}.ui-filter-panel__section h3{color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0;line-height:1.2}.ui-filter-panel__stack{gap:var(--space-3);display:grid}.ui-filter-panel__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8.75rem,1fr));display:grid}.ui-filter-panel__grid--compact{grid-template-columns:repeat(auto-fit,minmax(10rem,14rem))}.ui-filter-panel__ranges{gap:var(--space-1);display:grid}.ui-filter-panel__range{align-items:center;gap:var(--space-3);grid-template-columns:minmax(6.5rem,1fr) minmax(5.75rem,8.25rem) minmax(5.75rem,8.25rem);display:grid}.ui-filter-panel__range--header{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.ui-filter-panel__range-label{color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);align-self:center}.ui-filter-panel__ingredient-filter{gap:var(--space-2);display:grid}.ui-filter-panel__ingredient-selected{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-filter-panel__ingredient-selected:empty{display:none}.ui-filter-panel__ingredient-selected button{appearance:none;border-radius:var(--radius-pill);color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:.1rem;display:inline-grid}.ui-filter-panel__grid label,.ui-filter-panel__grid span[id$=-label]{font-size:var(--font-size-xs)}.ui-filter-panel__active-chip{justify-self:start;align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);color:var(--primary-strong);padding:.25rem .45rem .25rem var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:#417c5814;border:1px solid #417c583d;display:inline-flex}.ui-filter-panel__active-chip button{border-radius:var(--radius-pill);color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:.15rem;display:inline-grid}.ui-filter-toolbar__search,.ui-recipes-search,.ui-marketplace-search{flex:18rem;max-width:26rem}.ui-filter-toolbar__search input,.ui-recipes-search input,.ui-marketplace-search input{background:var(--surface-strong);min-height:2.15rem;font-size:var(--font-size-sm)}.ui-filter-toolbar__controls,.ui-recipes-filters{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-filter-toolbar__quick-filter{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-strong);min-height:2rem;color:var(--text);padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;line-height:1;transition:background-color .18s,border-color .18s,color .18s,transform .18s}.ui-filter-toolbar__quick-filter:hover{border-color:var(--border-strong);background:var(--surface-subtle);transform:translateY(-1px)}.ui-filter-toolbar__quick-filter[data-active=true]{border-color:var(--text-strong);background:var(--text-strong);color:var(--text-inverse)}.ui-recipes-grid,.ui-marketplace-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,17.5rem),1fr));align-items:start;display:grid}.ui-marketplace-load-more{justify-content:center;display:flex}.ui-autocomplete__option{align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-sm);width:100%;color:var(--text);cursor:pointer;padding:var(--space-2) var(--space-3);text-align:left;background:0 0;display:flex}.ui-autocomplete__option[data-active=true]{background:var(--primary-soft)}.ui-autocomplete__option-body{gap:var(--space-1);width:100%;min-width:0;display:grid}.ui-autocomplete__option-label{overflow-wrap:anywhere;font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.ui-autocomplete__option-meta{align-items:center;gap:0 var(--space-2);min-width:0;color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);flex-wrap:wrap;display:flex}.ui-autocomplete__option-meta span{overflow-wrap:anywhere;min-width:0}.ui-marketplace-card-footer{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-marketplace-card-footer__stats{align-items:center;gap:var(--space-1);color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);flex-wrap:wrap;line-height:1.2;display:flex}.ui-marketplace-card-footer__stats span{align-items:center;gap:var(--space-1);display:inline-flex}.ui-marketplace-card-footer__notice{flex:1 0 100%;min-width:0}.ui-marketplace-author{align-items:center;gap:var(--space-1);min-width:0;display:inline-flex}.ui-marketplace-author--button{border-radius:var(--radius-pill);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.ui-marketplace-author--button:hover{color:var(--primary-strong);text-underline-offset:.18em;text-decoration:underline}.ui-marketplace-author__avatar,.ui-marketplace-author__initial{border-radius:var(--radius-pill);flex:none;width:1.15rem;height:1.15rem}.ui-marketplace-author__avatar{object-fit:cover}.ui-marketplace-author__initial{color:var(--primary-strong);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);background:#417c581f;place-items:center;line-height:1;display:inline-grid}.ui-marketplace-vote-button{align-items:center;gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);font:inherit;cursor:pointer;background:0 0;padding:.25rem .625rem;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.ui-marketplace-vote-button:hover{border-color:var(--border-strong);background:var(--surface-muted)}.ui-marketplace-vote-button--up{color:var(--primary-strong)}.ui-marketplace-vote-button--up.is-active{background:#417c581a;border-color:#417c5857}.ui-marketplace-vote-button--down{color:var(--danger)}.ui-marketplace-vote-button--down.is-active{background:#a948361a;border-color:#a9483657}.ui-marketplace-score,.ui-marketplace-version{color:var(--text-muted);font-size:var(--font-size-2xs);line-height:1}.ui-marketplace-score{margin-left:var(--space-1)}.ui-marketplace-comment-button{align-items:center;gap:var(--space-1);color:var(--text-muted);margin-left:var(--space-1);padding:.25rem var(--space-1);font:inherit;cursor:pointer;background:0 0;border:0;transition:color .18s;display:inline-flex}.ui-marketplace-comment-button:hover{color:var(--text)}.ui-marketplace-import-button{min-height:1.6rem!important;padding-inline:var(--space-3)!important;border-radius:var(--radius-pill)!important;font-size:var(--font-size-2xs)!important;box-shadow:none!important}.ui-marketplace-download-chip{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);color:#18231dd1;padding:var(--space-1) var(--space-2);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf8e6;line-height:1;display:inline-flex}.ui-marketplace-dialog{--dialog-shell-max-height:92vh;--dialog-shell-overflow:auto;--dialog-shell-border:1px solid var(--border);--dialog-shell-radius:28px;--dialog-shell-background:var(--surface-strong);--dialog-shell-shadow:var(--shadow-lg);--dialog-shell-body-padding:var(--space-6)}.ui-marketplace-dialog-hero{aspect-ratio:2;background:var(--surface-subtle);position:relative;overflow:hidden}.ui-marketplace-dialog-hero__image,.ui-marketplace-dialog-hero__placeholder{width:100%;height:100%;display:block}.ui-marketplace-dialog-hero__image{object-fit:cover;object-position:center}.ui-marketplace-dialog-hero__placeholder{background:radial-gradient(circle at 24% 30%, var(--primary-soft), transparent 34%), linear-gradient(135deg, var(--surface-subtle), var(--surface-strong))}.ui-marketplace-dialog-content{gap:var(--space-5);display:grid}.ui-marketplace-dialog-actions{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.ui-marketplace-dialog-actions span{align-items:center;gap:var(--space-1);display:inline-flex}.ui-marketplace-dialog-author-line{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-marketplace-comments{gap:var(--space-2);margin-top:var(--space-3);display:grid}.ui-marketplace-comment{gap:var(--space-2);display:grid}.ui-marketplace-comment>div{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--font-size-xs);display:flex}.ui-marketplace-comment strong{color:var(--text)}.ui-marketplace-comment p{line-height:var(--line-height-body);margin:0}.ui-marketplace-comment-form{justify-items:end;gap:var(--space-3);margin-top:var(--space-3);display:grid}.ui-marketplace-alternatives{margin-top:var(--space-1);display:block}.ui-recipe-marketplace-import{gap:var(--space-2);margin-top:var(--space-5);display:grid}.ui-card.ui-recipe-card{background:var(--surface-strong);box-shadow:var(--shadow-sm);border-radius:18px;transition:box-shadow .18s,transform .18s;position:relative;overflow:hidden}.ui-card.ui-recipe-card:hover,.ui-card.ui-recipe-card:focus-within{box-shadow:var(--shadow-md);transform:translateY(-2px)}.ui-recipe-card__trigger{z-index:2;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.ui-recipe-card__trigger:focus-visible{box-shadow:inset 0 0 0 3px var(--focus-ring);outline:0}.ui-recipe-card__media{background:var(--surface-subtle);position:relative;overflow:hidden}.ui-recipe-card__image{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .5s;display:block}.ui-recipe-card__media-placeholder{background:radial-gradient(circle at 22% 28%, var(--primary-soft), transparent 34%), linear-gradient(135deg, var(--surface-subtle), var(--surface-strong));width:100%;height:100%}.ui-recipe-card:hover .ui-recipe-card__image,.ui-recipe-card:focus-within .ui-recipe-card__image{transform:scale(1.045)}.ui-recipe-card__body{gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-3);display:grid}.ui-recipe-card__heading-row{justify-content:space-between;align-items:start;gap:var(--space-3);min-width:0;display:flex}.ui-recipe-card__heading{min-width:0}.ui-recipe-card__title{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);overflow-wrap:anywhere;margin:0}.ui-recipe-card__description{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-label);line-height:1.35}.ui-recipe-card__meta{align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;line-height:1.2;display:flex}.ui-recipe-card__meta span{align-items:center;gap:var(--space-1);display:inline-flex}.ui-recipe-card__metrics{gap:var(--space-1);text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ui-recipe-card__metric{min-width:0;padding:.375rem var(--space-1);background:#2531260e;border-radius:8px}.ui-recipe-card__metric-value{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--font-size-sm);line-height:1}.ui-recipe-card__metric-value--carbs{color:var(--highlight)}.ui-recipe-card__metric-value--fat{color:var(--accent)}.ui-recipe-card__metric-label{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:.05em;text-transform:uppercase;line-height:1}.ui-recipe-card__footer{z-index:4;border-top:1px solid var(--border);padding:var(--space-3) var(--space-4);position:relative}.ui-recipe-card__tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.ui-recipe-card__tags--overlay{z-index:2;position:absolute;top:.55rem;left:.55rem;right:4.4rem}.ui-recipe-card__tag-overlay.ui-badge{color:#18231ddb;max-width:5.9rem;padding:var(--space-1) var(--space-2);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-overflow:ellipsis;white-space:nowrap;background:#fffdf8ad;border-color:#fffdf847;overflow:hidden}.ui-recipe-card__tag-more{cursor:help}.ui-recipe-card__media-accessory{z-index:2;position:absolute;top:.55rem;right:.55rem}.ui-recipe-card__actions{z-index:4;gap:var(--space-1);opacity:0;pointer-events:none;transition:opacity .18s;display:flex;position:absolute;bottom:.55rem;right:.55rem}.ui-recipe-card:hover .ui-recipe-card__actions,.ui-recipe-card:focus-within .ui-recipe-card__actions{opacity:1;pointer-events:auto}@media (hover:none),(pointer:coarse){.ui-recipe-card__actions{opacity:1;pointer-events:auto}.ui-card.ui-recipe-card .ui-recipe-card__action-button.ui-button,.ui-card.ui-recipe-card .ui-marketplace-vote-button,.ui-card.ui-recipe-card .ui-marketplace-comment-button,.ui-card.ui-recipe-card .ui-marketplace-import-button{min-width:2.75rem;min-height:2.75rem}.ui-marketplace-vote-button,.ui-marketplace-comment-button{padding-inline:var(--space-3);justify-content:center}}.ui-recipe-card__actions--inline{z-index:4;opacity:1;pointer-events:auto;position:relative}.ui-card.ui-recipe-card .ui-recipe-card__action-button.ui-button{width:2rem;min-width:2rem;max-width:2rem;min-height:2rem;color:var(--text);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf8e6;border-color:#0000}.ui-card.ui-recipe-card .ui-recipe-card__action-button--danger.ui-button{color:var(--danger)}.ui-recipe-view-overlay{z-index:var(--z-modal);padding:var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18231d57;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.ui-recipe-view-dialog{--dialog-shell-max-height:92vh;--dialog-shell-overflow:auto;--dialog-shell-border:1px solid var(--border);--dialog-shell-radius:28px;--dialog-shell-background:var(--surface-strong);--dialog-shell-shadow:var(--shadow-lg);--dialog-shell-body-padding:var(--space-6);width:min(100%,48rem)!important}.ui-recipe-view-hero{aspect-ratio:2;background:var(--surface-subtle);position:relative;overflow:hidden}.ui-recipe-view-hero__image,.ui-recipe-view-hero__placeholder{width:100%;height:100%;display:block}.ui-recipe-view-hero__image{object-fit:cover;object-position:center}.ui-recipe-view-hero__placeholder{background:radial-gradient(circle at 24% 30%, var(--primary-soft), transparent 34%), linear-gradient(135deg, var(--surface-subtle), var(--surface-strong))}.ui-recipe-view-close{border-radius:var(--radius-pill);width:2.75rem;height:2.75rem;color:var(--text);box-shadow:var(--shadow-sm);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf8db;border:1px solid #0000;justify-content:center;align-items:center;padding:0;line-height:1;transition:background-color .18s,box-shadow .18s,transform .18s;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.ui-recipe-view-close:hover{background:var(--surface-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ui-recipe-view-close svg{stroke-width:2.25px;width:1rem;height:1rem;display:block}.ui-recipe-view-tags{gap:var(--space-2);flex-wrap:wrap;display:flex;position:absolute;top:1rem;left:1rem;right:4rem}.ui-recipe-view-tag{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text)!important;background:#fffdf8db!important;border-color:#0000!important}.ui-recipe-view-body{padding:var(--space-6)}.ui-recipe-view-title{color:var(--text-strong);font-family:var(--font-display);font-size:clamp(2rem,4vw,2.65rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);overflow-wrap:anywhere;margin:0;line-height:1.05}.ui-recipe-view-description{max-width:46rem;margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--font-size-base);line-height:var(--line-height-body);white-space:pre-line}.ui-recipe-view-meta{align-items:center;gap:var(--space-4);margin-top:var(--space-2);color:var(--text-muted);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.ui-recipe-view-meta span{align-items:center;gap:var(--space-1);display:inline-flex}.ui-recipe-view-stats{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ui-recipe-view-stat{padding:var(--space-4) var(--space-3);text-align:center;background:#2531260e;border-radius:14px}.ui-recipe-view-stat__value{font-family:var(--font-display);font-size:var(--font-size-xl);line-height:1}.ui-recipe-view-stat__value--primary,.ui-recipe-view-stat__value--protein{color:var(--primary-strong)}.ui-recipe-view-stat__value--carbs{color:var(--highlight)}.ui-recipe-view-stat__value--fat{color:var(--accent)}.ui-recipe-view-stat__label{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;line-height:1}.ui-recipe-view-total{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--font-size-xs);text-align:right;line-height:1.35}.ui-recipe-view-section{margin-top:var(--space-8)}.ui-recipe-view-section h3{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);margin:0;line-height:1.1}.ui-recipe-view-section>p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-sm)}.ui-recipe-ingredients-table{margin-top:var(--space-3);border:1px solid var(--border);border-radius:14px;overflow-x:auto}.ui-recipe-ingredients-table table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.ui-recipe-ingredients-table thead{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;background:#2531260e}.ui-recipe-ingredients-table th,.ui-recipe-ingredients-table td{padding:var(--space-3);white-space:nowrap}.ui-recipe-ingredients-table tbody tr{border-top:1px solid var(--border)}.ui-recipe-ingredients-table tbody td:first-child{color:var(--text);white-space:normal}.ui-recipe-ingredients-table__numeric{text-align:right}.ui-recipe-view-steps{gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.ui-recipe-view-steps li{gap:var(--space-3);align-items:flex-start;display:flex}.ui-recipe-view-steps span{border-radius:var(--radius-pill);background:var(--primary-soft);width:1.75rem;height:1.75rem;color:var(--primary-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);flex:none;justify-content:center;align-items:center;padding-top:0;line-height:1;display:inline-flex}.ui-recipe-view-steps p{color:var(--text);font-size:var(--font-size-sm);line-height:var(--line-height-body);margin:0}.ui-recipe-view-actions{justify-content:end;gap:var(--space-2);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.ui-recipe-publish-tooltip-trigger{display:inline-flex}.ui-recipe-view-delete{color:var(--danger)!important;border-color:#b4231847!important}.ui-recipe-form-overlay{z-index:var(--z-modal);padding:var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18231d57;place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.ui-recipe-form-dialog{--dialog-shell-max-height:92vh;--dialog-shell-overflow:auto;--dialog-shell-border:1px solid var(--border);--dialog-shell-radius:28px;--dialog-shell-background:var(--surface-strong);--dialog-shell-shadow:var(--shadow-lg);--dialog-shell-header-padding:var(--space-4) var(--space-5);--dialog-shell-body-padding:var(--space-5);--dialog-shell-footer-padding:var(--space-4) var(--space-5);width:min(100%,48rem)!important}.ui-recipe-form-header{z-index:var(--z-raised);justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-strong) 95%, transparent);padding:var(--space-4) var(--space-6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;position:sticky;top:0}.ui-recipe-form-header p{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase;margin:0;line-height:1}.ui-recipe-form-header h2{margin:var(--space-1) 0 0;color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);overflow-wrap:anywhere;line-height:1.1}.ui-recipe-form-close{border-radius:var(--radius-pill);width:2rem;height:2rem;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.ui-recipe-form-close:hover{background:var(--surface-subtle)}.ui-recipe-form-close svg{width:1rem;height:1rem;display:block}.ui-recipe-form-content{gap:var(--space-4);padding:var(--space-6);display:grid}.ui-recipe-form-content form{gap:var(--space-4);display:grid}.ui-recipe-form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-recipe-form-span-2{grid-column:1/-1}.ui-recipe-form-image{gap:var(--space-2);display:grid}.ui-recipe-form-image [style*=aspect-ratio]{border-radius:14px}.ui-recipe-form-section{gap:var(--space-3);display:grid}.ui-recipe-form-section__header{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.ui-recipe-form-section__header h3{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);margin:0;line-height:1.1}.ui-recipe-form-ingredient{gap:var(--space-2);border:1px solid var(--border);background:color-mix(in srgb, var(--background) 62%, transparent);padding:var(--space-2);border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(10rem,13rem) 2.5rem;align-items:center;display:grid}.ui-recipe-food-picker{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.ui-recipe-unit-field{grid-template-columns:minmax(4.8rem,1fr) minmax(4.6rem,auto);min-width:0;display:grid}.ui-recipe-unit-field .ui-field-control{border-radius:0}.ui-recipe-unit-field>.ui-field-control{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.ui-recipe-unit-field .ui-select-shell{min-width:0}.ui-recipe-unit-field .ui-select{border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:0;min-width:4.6rem;padding-right:2rem}.ui-recipe-form-ingredient__macros{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);grid-column:1/-1}.ui-custom-food-form{gap:var(--space-4);display:grid}.ui-custom-food-form__grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-recipe-form-footer{z-index:var(--z-raised);justify-content:end;gap:var(--space-2);border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface-subtle) 82%, transparent);padding:var(--space-4) var(--space-6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.ui-recipe-macro-panel{border:1px solid var(--border);background:radial-gradient(circle at 8% 0%, #4f8f6929, transparent 34%), radial-gradient(circle at 94% 24%, #efcc5f2e, transparent 32%), linear-gradient(135deg, color-mix(in srgb, var(--primary-soft) 52%, transparent), var(--surface-strong) 52%, color-mix(in srgb, var(--highlight-soft) 62%, transparent));padding:var(--space-4);border-radius:18px;position:relative;overflow:hidden}.ui-recipe-macro-panel__header{justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text-muted);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;display:flex}.ui-recipe-macro-panel__grid{gap:var(--space-3);margin-top:var(--space-3);text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ui-recipe-macro-stat{padding:var(--space-3) var(--space-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8ad;border-radius:12px;box-shadow:0 1px #18231d0a}.ui-recipe-macro-stat__value{font-family:var(--font-display);font-size:var(--font-size-md);line-height:1}.ui-recipe-macro-stat__value--primary,.ui-recipe-macro-stat__value--protein{color:var(--primary-strong)}.ui-recipe-macro-stat__value--carbs{color:var(--highlight)}.ui-recipe-macro-stat__value--fat{color:var(--accent)}.ui-recipe-macro-stat__label{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;line-height:1}.ui-recipe-macro-panel__total{margin:var(--space-3) 0 0;color:var(--text-muted);font-size:var(--font-size-xs);text-align:right;line-height:1.35}@media (max-width:42rem){.ui-recipe-form-overlay{padding:var(--space-3)}.ui-recipe-form-dialog{--dialog-shell-radius:22px}.ui-recipe-form-header,.ui-recipe-form-content,.ui-recipe-form-footer{padding-inline:var(--space-4)}.ui-recipe-form-grid,.ui-recipe-form-ingredient,.ui-recipe-food-picker,.ui-custom-food-form__grid{grid-template-columns:1fr}.ui-recipe-form-ingredient>button{justify-self:end}.ui-recipe-macro-panel__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-marketplace-page{width:100%;padding-top:var(--space-4)}.ui-marketplace-header,.ui-marketplace-content{width:min(var(--container), calc(100% - var(--section-inline-gutter)));margin-inline:auto}.ui-marketplace-content{margin-top:var(--space-5)}.ui-marketplace-toolbar{align-items:center;gap:var(--space-2);width:100%;box-shadow:none;background:0 0;border:0;flex-wrap:wrap;margin-inline:0;display:flex;position:static}.ui-marketplace-search{background:0 0;flex:14rem;min-width:0;max-width:none;padding:0}.ui-marketplace-search input{min-height:2rem}.ui-marketplace-quick-filters{justify-content:flex-start;gap:var(--space-2);flex-wrap:nowrap;width:100%;display:flex}.ui-marketplace-quick-filters .ui-filter-toolbar__quick-filter{display:none}.ui-marketplace-quick-filters .ui-filter-toolbar__sort{width:min(100%,11rem);min-width:8.5rem}.ui-filter-trigger{justify-content:center;width:var(--control-height-sm)!important;min-width:var(--control-height-sm)!important;max-width:var(--control-height-sm)!important;min-height:var(--control-height-sm)!important;border-radius:var(--radius-pill)!important}.ui-filter-panel-overlay{place-items:stretch stretch!important;padding:0!important}.ui-filter-panel-dialog{--dialog-shell-radius:0;--dialog-shell-body-padding:var(--space-4);--dialog-shell-max-height:100dvh;--dialog-shell-overflow:auto;min-height:100dvh;width:100vw!important;max-height:100dvh!important}.ui-filter-panel-dialog .ui-filter-panel__grid{grid-template-columns:1fr}.ui-filter-panel__range{grid-template-columns:1fr 1fr}.ui-filter-panel__range--header{display:none}.ui-filter-panel__range-label{grid-column:1/-1}.ui-recipe-view-overlay{padding:var(--space-3)}.ui-recipe-view-dialog,.ui-marketplace-dialog{--dialog-shell-radius:22px;--dialog-shell-body-padding:var(--space-4)}.ui-recipe-view-hero,.ui-marketplace-dialog-hero{aspect-ratio:4/3}.ui-recipe-view-body{padding:var(--space-4)}.ui-recipe-view-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}html{font-size:100%}body{background:radial-gradient(circle at top left, #4f8f691f, transparent 28%), radial-gradient(circle at top right, #c9683d1f, transparent 24%), linear-gradient(180deg, var(--background-elevated) 0%, var(--background) 100%);min-height:100vh;color:var(--text);font-family:var(--font-sans);line-height:var(--line-height-body);margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}h1,h2,h3,h4{letter-spacing:var(--letter-spacing-heading)}button,select{text-transform:none}.ui-focus-ring:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.ui-skip-link{z-index:var(--z-toast);top:var(--space-3);left:var(--space-3);border-radius:var(--radius-pill);background:var(--surface-contrast);color:var(--text-inverse);padding:var(--button-padding-compact);font-weight:var(--font-weight-semibold);transform:translateY(calc(-100% - var(--space-4)));transition:transform .18s;position:fixed}.ui-skip-link:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset);transform:translateY(0)}.ui-button{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--control-height-md);border-radius:var(--radius-pill);padding:var(--button-padding);color:var(--primary-contrast);background:var(--primary);box-shadow:var(--shadow-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;line-height:1;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s;display:inline-flex;position:relative}.ui-button:not(:disabled):not([aria-disabled=true]):hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ui-button:not(:disabled):not([aria-disabled=true]):active{transform:translateY(0)}.ui-button:disabled,.ui-button[aria-disabled=true]{cursor:not-allowed;opacity:.62;box-shadow:none;transform:none}.ui-button[data-tone=primary]{background:var(--primary);color:var(--primary-contrast)}.ui-button[data-tone=primary]:not(:disabled):not([aria-disabled=true]):hover{background:var(--primary-strong)}.ui-button[data-tone=secondary]{background:var(--surface);color:var(--text);border-color:var(--border)}.ui-button[data-tone=secondary]:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-strong);border-color:var(--border-strong)}.ui-button[data-tone=ghost]{color:var(--text);box-shadow:none;background:0 0;border-color:#0000}.ui-button[data-tone=ghost]:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-subtle)}.ui-button[data-tone=danger]{background:var(--danger);color:var(--text-inverse)}.ui-button[data-tone=danger]:not(:disabled):not([aria-disabled=true]):hover{background:var(--danger-strong)}.ui-button[data-tone=accent]{background:var(--accent-strong);color:var(--text-inverse)}.ui-button[data-tone=accent]:not(:disabled):not([aria-disabled=true]):hover{background:#793622}.ui-button[data-borderless=true]{box-shadow:none;background:0 0;border-color:#0000}.ui-button[data-borderless=true]:not(:disabled):not([aria-disabled=true]):hover{box-shadow:none;background:0 0;border-color:#0000;transform:none}.ui-button[data-size=sm]{min-height:var(--control-height-sm);padding:var(--button-padding-sm);font-size:var(--font-size-xs)}.ui-button[data-size=lg]{min-height:var(--control-height-lg);padding:var(--button-padding-lg);font-size:var(--button-font-size-lg)}.ui-button[data-size=icon]{width:var(--control-height-md);min-width:var(--control-height-md);max-width:var(--control-height-md);padding:0}.ui-button[data-size=icon].ui-icon-button{width:2.75rem;min-width:2.75rem;max-width:2.75rem;min-height:2.75rem}.ui-button[data-loading=true]{color:#0000;pointer-events:none}.ui-button__spinner{border-radius:var(--radius-pill);width:1rem;height:1rem;color:inherit;border:2px solid;border-right-color:#0000;animation:.72s linear infinite ui-spin;position:absolute}.ui-button[data-loading=true] .ui-button__spinner{color:var(--primary-contrast)}.ui-button[data-tone=secondary][data-loading=true] .ui-button__spinner,.ui-button[data-tone=ghost][data-loading=true] .ui-button__spinner{color:var(--primary)}.ui-button__content{justify-content:center;align-items:center;gap:var(--space-2);overflow-wrap:anywhere;min-width:0;display:inline-flex}.ui-ghost-toggle{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);padding:var(--button-padding-compact);cursor:pointer;background:0 0;transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s}.ui-ghost-toggle:hover{background:var(--surface-subtle);border-color:var(--border-strong);transform:translateY(-1px)}.ui-field-control{width:100%;min-height:var(--control-height-md);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--input-padding);background:var(--input-background);color:var(--text);font-size:var(--font-size-sm);box-shadow:var(--shadow-xs);line-height:1.35;transition:background-color .18s,border-color .18s,box-shadow .18s}.ui-field-control::placeholder{color:var(--text-muted)}.ui-field-control:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--primary)}.ui-field-control:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.ui-field-control:disabled,.ui-field-control[aria-disabled=true]{cursor:not-allowed;opacity:.62;box-shadow:none}.ui-field-control[aria-invalid=true],.ui-field-control:invalid[data-show-native-invalid=true]{border-color:var(--danger)}.ui-field-control[aria-invalid=true]:focus-visible{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.ui-field-control[data-size=sm]{min-height:var(--control-height-sm);padding:var(--input-padding-sm);font-size:var(--font-size-sm)}.ui-field-control[data-size=lg]{min-height:var(--control-height-lg);padding:var(--input-padding-lg);font-size:var(--font-size-sm)}.ui-input-shell{width:100%;display:block;position:relative}.ui-input-shell .ui-input{padding-right:var(--space-10)}.ui-input-shell__spinner{border:2px solid var(--primary);border-radius:var(--radius-pill);pointer-events:none;transform-origin:50%;border-right-color:#0000;width:1rem;height:1rem;animation:.72s linear infinite ui-input-spin;position:absolute;top:50%;right:.92rem;transform:translateY(-50%)}.ui-textarea{resize:vertical;min-height:7rem}.ui-select{appearance:none;padding-right:calc(var(--space-10) + var(--space-1))}.ui-select-shell{width:100%;display:block;position:relative}.ui-select-shell__icon{width:1rem;height:1rem;color:var(--primary-strong);pointer-events:none;stroke-width:2px;position:absolute;top:50%;right:.88rem;transform:translateY(-50%)}.ui-select-shell[data-disabled=true] .ui-select-shell__icon{opacity:.45}.ui-number-unit-field{gap:var(--space-2);display:grid}.ui-number-unit-field label{font-weight:var(--font-weight-medium)}.ui-number-unit-field__control{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-background);width:100%;min-width:0;box-shadow:var(--shadow-xs);align-items:stretch;display:flex;overflow:hidden}.ui-number-unit-field__input{min-width:0;box-shadow:none;border:0;border-radius:0;flex:auto}.ui-number-unit-field__suffix{background:color-mix(in srgb, var(--input-background) 86%, var(--surface-strong));min-width:2.9rem;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);pointer-events:none;white-space:nowrap;border-left:1px solid #25312614;flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.ui-number-unit-field__control:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ui-number-unit-field__control .ui-field-control:focus-visible{box-shadow:none}.ui-number-unit-field__hint{color:var(--text-muted);font-size:var(--font-size-sm)}.ui-number-unit-field__error{color:var(--danger);font-size:var(--font-size-sm)}.ui-tag-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-background);box-shadow:var(--shadow-xs);transition:background-color .18s,border-color .18s,box-shadow .18s}.ui-tag-input:hover:not([data-disabled=true]){border-color:var(--primary)}.ui-tag-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ui-check{align-items:center;gap:var(--space-2);color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:inline-flex}.ui-check input,.ui-checkbox{width:1.08rem;height:1.08rem;accent-color:var(--primary);margin:0}.ui-checkbox:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.ui-checkbox:disabled{cursor:not-allowed;opacity:.62}.ui-onboarding{gap:var(--space-8);width:min(var(--container), calc(100vw - 2rem));min-height:100dvh;padding:var(--space-8) 0;grid-template-columns:minmax(24rem,.92fr) minmax(25rem,1.08fr);align-content:center;align-items:center;margin:0 auto;display:grid}.ui-onboarding__story{border-radius:var(--radius-md);background:var(--surface-contrast);min-height:min(45rem,100dvh - 4rem);box-shadow:var(--shadow-lg);isolation:isolate;display:grid;position:relative;overflow:hidden}.ui-onboarding__story:before{z-index:1;content:"";background:linear-gradient(#09120d1f,#09120db8),linear-gradient(90deg,#09120db3,#09120d2e 64%);position:absolute;inset:0}.ui-onboarding__story:after{z-index:1;content:"";border-radius:inherit;pointer-events:none;border:1px solid #ffffff2e;position:absolute;inset:0}.ui-onboarding__story-image{object-fit:cover;transform:scale(1.03)}.ui-onboarding__story-content{z-index:2;justify-content:space-between;gap:var(--space-8);min-height:100%;padding:var(--space-6);flex-direction:column;display:flex;position:relative}.ui-onboarding__topbar{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.ui-onboarding__topbar .ui-button{color:var(--text-inverse);box-shadow:none;background:#fffdf824;border-color:#fffdf85c}.ui-onboarding__topbar .ui-button[data-tone=secondary]:not(:disabled):not([aria-disabled=true]):hover{color:var(--text-inverse);background:#fffdf838;border-color:#fffdf885}.ui-onboarding__intro{gap:var(--space-5);max-width:34rem;display:grid}.ui-onboarding__brand{align-items:center;gap:var(--space-3);width:fit-content;color:var(--text-inverse);font-family:var(--font-display);font-size:clamp(2.25rem,4.4vw,4rem);font-weight:var(--font-weight-regular);text-shadow:0 .1rem 1rem #0000003d;line-height:1;display:inline-flex}.ui-onboarding__brand img{width:clamp(2.35rem,4vw,3.3rem);height:clamp(2.35rem,4vw,3.3rem)}.ui-onboarding__intro h1{color:var(--text-inverse);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.8rem);line-height:var(--line-height-heading);text-shadow:0 .12rem 1.2rem #00000057;margin:0}.ui-onboarding__intro p{color:#fffdf8e0;font-size:var(--font-size-lg);margin:0}.ui-onboarding__panel{gap:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:linear-gradient(180deg, #fffdf8f0, #fbf7efdb), var(--surface);min-height:26rem;box-shadow:var(--shadow-lg);padding:var(--space-6);display:grid}.ui-onboarding__progress{gap:var(--space-2);display:grid}.ui-onboarding__dots{gap:var(--space-2);margin-bottom:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.ui-onboarding__dots span{border-radius:var(--radius-pill);background:var(--surface-subtle);height:.42rem}.ui-onboarding__dots span[data-active=true],.ui-onboarding__dots span[data-complete=true]{background:var(--primary)}.ui-onboarding__progress span{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ui-onboarding__progress h2{color:var(--text-strong);font-size:var(--font-size-xl);line-height:var(--line-height-tight);outline:none;margin:0}.ui-onboarding__progress h2:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.ui-onboarding__progress p{color:var(--text-muted);font-size:var(--font-size-sm);margin:0}.ui-onboarding__step{gap:var(--space-5);display:grid}.ui-onboarding__step[hidden]{display:none}.ui-onboarding-avatar{align-items:center;gap:var(--space-4);display:flex}.ui-onboarding-avatar__control{flex:none;width:3.5rem;height:3.5rem;position:relative}.ui-onboarding-avatar__button{width:100%;height:100%;color:var(--surface);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);background:#1f26227a;border:0;border-radius:50%;place-items:center;display:inline-grid;position:absolute;inset:0}.ui-onboarding-avatar__control:hover .ui-onboarding-avatar__button,.ui-onboarding-avatar__button:focus-within{opacity:1}.ui-onboarding-avatar__button:hover{color:var(--surface)}.ui-onboarding-avatar__button svg{width:1.15rem;height:1.15rem}.ui-onboarding-avatar__button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-onboarding-avatar__copy{gap:var(--space-1);min-width:0;display:grid}.ui-onboarding-avatar__copy strong{color:var(--text-strong);font-size:var(--font-size-sm)}.ui-onboarding-avatar__copy span{color:var(--text-muted);font-size:var(--font-size-sm)}.ui-onboarding-avatar__copy span[data-tone=success]{color:var(--success-strong)}.ui-onboarding-avatar__copy span[data-tone=danger]{color:var(--danger)}.ui-onboarding__split{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-onboarding__sex-choice{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-onboarding__sex-choice button{min-height:var(--control-height-lg);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--text);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s}.ui-onboarding__sex-choice button:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.ui-onboarding__sex-choice button[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--primary-contrast)}.ui-onboarding__chips,.ui-onboarding__goals{gap:var(--space-3);display:grid}.ui-onboarding__chips{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.ui-onboarding__goals{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.ui-onboarding__chip,.ui-onboarding__goal{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);min-width:0;color:var(--text);cursor:pointer;text-align:left;transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s}.ui-onboarding__chip{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ui-onboarding__goal{gap:var(--space-1);min-height:6.2rem;padding:var(--space-4);display:grid}.ui-onboarding__goal span{color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.4}.ui-onboarding__chip:hover,.ui-onboarding__goal:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.ui-onboarding__chip[aria-pressed=true],.ui-onboarding__goal[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.ui-onboarding__macro-card{gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);padding:var(--space-4);display:grid;position:relative;overflow:hidden}.ui-card-footnote{gap:var(--space-1);margin-top:var(--space-4);border-top:1px solid var(--border);padding:var(--space-3) 0 0;transition:opacity .18s;display:grid}.ui-card-footnote[data-loading=true]{opacity:.68}.ui-card-footnote[data-tone=primary]{color:var(--primary-strong)}.ui-card-footnote[data-tone=warning]{color:var(--warning-strong)}.ui-card-footnote[data-tone=danger]{color:var(--danger)}.ui-card-footnote[data-tone=muted]{color:var(--text-muted)}.ui-card-footnote__header{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.ui-card-footnote__title{color:currentColor;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.25}.ui-card-footnote__action{flex:0 auto;justify-content:flex-end;display:flex}.ui-card-footnote__description{color:var(--text-muted);font-size:var(--font-size-xs);margin:0;line-height:1.4}.ui-onboarding__macro-card[data-loading=true] .ui-onboarding__macro-sliders{opacity:.42}.ui-onboarding__macro-card>div:first-child{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.ui-onboarding__macro-loading{z-index:1;place-items:center;gap:var(--space-2);color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);pointer-events:none;background:#fffdf8ad;display:grid;position:absolute;inset:0}.ui-onboarding__macro-loading-spinner{border:2px solid #3f75563d;border-top-color:var(--primary);border-radius:var(--radius-pill);width:1.35rem;height:1.35rem;animation:.72s linear infinite ui-spin}.ui-onboarding__macro-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-onboarding__macro-sliders{gap:var(--space-4);display:grid}.ui-onboarding__actions{justify-content:space-between;gap:var(--space-3);padding-top:var(--space-2);margin-top:auto;display:flex}.ui-onboarding__actions[data-single=true]{justify-content:flex-end}.ui-onboarding__actions .ui-button{min-width:8.5rem}.ui-check:has(input:disabled){cursor:not-allowed;opacity:.62}.ui-switch{align-items:center;gap:var(--space-2);color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:inline-flex}.ui-switch__control{flex:none;width:2.45rem;height:1.35rem;display:inline-flex;position:relative}.ui-switch__control input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.ui-switch__track{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-subtle);transition:background-color .18s,border-color .18s,box-shadow .18s;position:absolute;inset:0}.ui-switch__thumb{border-radius:var(--radius-pill);background:var(--surface-strong);width:.95rem;height:.95rem;box-shadow:var(--shadow-xs);transition:transform .18s;position:absolute;top:.18rem;left:.18rem}.ui-switch input:checked+.ui-switch__track{background:var(--primary);border-color:var(--primary)}.ui-switch input:checked~.ui-switch__thumb{transform:translate(1.08rem)}.ui-switch input:focus-visible+.ui-switch__track{box-shadow:0 0 0 4px var(--focus-ring)}.ui-switch:has(input:disabled){cursor:not-allowed;opacity:.62}.ui-badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);width:fit-content;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border:1px solid #0000;line-height:1;display:inline-flex}.ui-badge[data-tone=neutral]{background:var(--surface-subtle);color:var(--text-muted);border-color:var(--border)}.ui-badge[data-tone=primary]{background:var(--primary-soft);color:var(--primary-strong)}.ui-badge[data-tone=success]{background:var(--success-soft);color:var(--success-strong)}.ui-badge[data-tone=warning]{background:var(--warning-soft);color:var(--warning-strong)}.ui-badge[data-tone=danger]{background:var(--danger-soft);color:var(--danger-strong)}.ui-badge[data-tone=accent]{background:var(--accent-soft);color:var(--accent-strong)}.ui-avatar{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--primary-soft);width:2.5rem;height:2.5rem;color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.ui-avatar__fallback,.ui-avatar__skeleton{position:absolute;inset:0}.ui-avatar__fallback{place-items:center;display:grid}.ui-avatar__skeleton{border-radius:inherit;background-color:#fffdf847;background-image:linear-gradient(90deg,#0000,#ffffff8a,#0000),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:220% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:1.35s ease-in-out infinite ui-skeleton}.ui-avatar[data-variant=brand]{background:linear-gradient(135deg, #4f8f69f5, #c9683deb), var(--primary);color:var(--primary-contrast);font-family:var(--font-display);font-weight:var(--font-weight-regular);box-shadow:var(--shadow-sm);border-color:#0000}.ui-avatar[data-size=xs]{width:1.72rem;height:1.72rem;font-size:var(--font-size-xs)}.ui-avatar[data-size=sm]{width:2rem;height:2rem;font-size:var(--font-size-xs)}.ui-avatar[data-size=lg]{width:3.5rem;height:3.5rem;font-size:var(--font-size-lg)}.ui-avatar[data-size=xl]{width:6rem;height:6rem;font-size:var(--font-size-3xl)}.ui-avatar img{object-fit:cover;opacity:1;width:100%;height:100%;position:relative}.ui-avatar[data-loading=true] img{opacity:0}.ui-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, transparent, #ffffff8c, transparent), var(--surface-subtle);background-size:220% 100%;animation:1.35s ease-in-out infinite ui-skeleton;display:block}.ui-divider{background:var(--border);border:0}.ui-divider[data-orientation=horizontal]{width:100%;height:1px}.ui-divider[data-orientation=vertical]{width:1px;min-height:1.5rem}.ui-progress{border-radius:var(--radius-pill);background:var(--surface-subtle);width:100%;min-width:8rem;height:.55rem;overflow:hidden}.ui-progress__bar{border-radius:inherit;background:var(--primary);height:100%;transition:width .24s}.ui-auth-layout{isolation:isolate;width:100%;height:100dvh;min-height:100dvh;color:var(--auth-foreground);background:var(--auth-background);position:relative;overflow:hidden}.ui-auth-layout__background,.ui-auth-layout__shade{z-index:-2;position:absolute;inset:0}.ui-auth-layout__background{background-position:50%;background-size:cover;transform:scale(1.02)}.ui-auth-layout__shade{z-index:-1;background:var(--auth-scrim)}.ui-auth-layout__content{height:100%;min-height:0;width:min(100% - var(--space-12), var(--container));align-items:center;gap:var(--space-10);padding:clamp(var(--space-6), 5vh, var(--space-10)) 0;grid-template-columns:minmax(0,1fr) minmax(23rem,28rem);margin:0 auto;display:grid}.ui-auth-layout__brand{min-height:calc(100dvh - (2 * clamp(var(--space-6), 5vh, var(--space-10))));align-content:space-between;gap:var(--space-6);display:grid}.ui-auth-layout__logo{align-items:center;gap:var(--space-3);width:fit-content;color:var(--auth-foreground);font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);display:inline-flex}.ui-auth-layout__logo img{width:var(--control-height-md);height:var(--control-height-md)}.ui-auth-layout__pitch{max-width:42rem;padding-bottom:clamp(var(--space-6), 7vh, var(--space-12))}.ui-auth-layout__eyebrow{margin:0 0 var(--space-4);color:var(--color-butter-300);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-auth-layout__title{max-width:12ch;color:var(--auth-foreground);font-family:var(--font-display);font-size:clamp(3rem,7vw,4.25rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);margin:0;line-height:.98}.ui-auth-layout__pitch p:last-child{max-width:36rem;margin:var(--space-5) 0 0;color:var(--auth-muted);font-size:var(--font-size-md);line-height:var(--line-height-body)}.ui-auth-layout__panel{width:100%}.ui-auth-panel{gap:var(--space-4);border:1px solid var(--auth-panel-border);border-radius:var(--radius-md);width:min(100%,28rem);padding:var(--space-6);background:var(--auth-panel-background);box-shadow:var(--auth-panel-shadow);color:var(--text);-webkit-backdrop-filter:blur(var(--auth-panel-blur));backdrop-filter:blur(var(--auth-panel-blur));margin:0 auto;display:grid}.ui-auth-panel__header{gap:var(--space-2);text-align:center;display:grid}.ui-auth-panel__header h1{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-3xl);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-heading);margin:0}.ui-auth-panel__header p,.ui-auth-panel__text{color:var(--text-muted);line-height:var(--line-height-body);margin:0}.ui-auth-panel__body,.ui-auth-panel__form{gap:var(--space-4);display:grid}.ui-auth-panel__footer{gap:var(--space-2);color:var(--text-muted);font-size:var(--font-size-sm);text-align:center;justify-items:center;display:grid}.ui-auth-panel__footer a{color:var(--primary-strong);font-weight:var(--font-weight-medium);text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:1px}.ui-auth-panel__footer .ui-button{color:var(--primary-contrast);text-decoration:none}.ui-auth-success{gap:var(--space-7);padding:var(--space-8);position:relative;overflow:hidden}.ui-auth-success .ui-auth-panel__header{gap:var(--space-3)}.ui-auth-success .ui-auth-panel__header h1{max-width:12ch;font-size:var(--font-size-3xl);margin:0 auto}.ui-auth-success .ui-auth-panel__header p{max-width:25rem;margin:0 auto}.ui-auth-success .ui-auth-panel__footer{width:100%;padding-top:var(--space-1)}.ui-step-list{border-radius:var(--radius-sm);padding:0 var(--space-6);background:#ffffff57;border:1px solid #4f8f6924;gap:0;margin:0;list-style:none;display:grid}.ui-step-list__item{align-items:start;gap:var(--space-4);padding:var(--space-5) 0;grid-template-columns:2rem 1fr;display:grid;position:relative}.ui-step-list__item+.ui-step-list__item{border-top:0}.ui-step-list__item+.ui-step-list__item:before{content:"";top:0;right:0;left:calc(2rem + var(--space-4));background:#4f8f6924;height:1px;position:absolute}.ui-step-list__marker{border-radius:var(--radius-pill);background:var(--auth-panel-background);width:2rem;height:2rem;color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:1px solid #4f8f692e;place-items:center;line-height:1;display:grid;box-shadow:0 .25rem .8rem #4f8f6914}.ui-step-list__content{gap:var(--space-1);margin:0;display:grid}.ui-step-list__content strong{color:var(--text-strong);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.ui-step-list__content span{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-body)}.ui-auth-legal{gap:var(--space-3);color:var(--text-muted);display:grid}.ui-auth-legal__item{align-items:start;gap:var(--space-2);color:inherit;font-weight:var(--font-weight-medium);line-height:var(--line-height-body);grid-template-columns:auto 1fr;display:grid}.ui-auth-legal__item .ui-checkbox{margin-top:var(--space-0-5)}.ui-auth-legal a{color:var(--primary-strong);font-weight:var(--font-weight-medium);text-underline-offset:.22em;text-decoration:underline;text-decoration-thickness:1px}.ui-dashboard-shell{background:linear-gradient(180deg, #fffdf8e6 0%, #fbf7eff5 100%), var(--background);min-height:100dvh;color:var(--text)}.ui-dashboard-topbar{z-index:var(--z-sticky);min-height:var(--shell-topbar-height);justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8d6;border-bottom:1px solid #2531261c;display:flex;position:sticky;top:0}.ui-dashboard-topbar__start,.ui-dashboard-topbar__end{align-items:center;gap:var(--space-2);min-width:0;display:flex}.ui-dashboard-topbar__end{justify-content:end}.ui-dashboard-menu-button{display:none}.ui-dashboard-menu-button svg{width:1.1rem;height:1.1rem}.ui-dashboard-brand{align-items:center;gap:var(--space-2);min-width:0;color:var(--text);display:inline-flex}.ui-dashboard-brand__mark{border-radius:var(--radius-pill);width:2.05rem;height:2.05rem;box-shadow:none;background:0 0;flex:none;place-items:center;display:grid;overflow:hidden}.ui-dashboard-brand__mark img{width:2.05rem;height:2.05rem}.ui-dashboard-brand span:last-child{gap:var(--space-1);line-height:1.1;display:grid}.ui-dashboard-brand strong{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-heading)}.ui-dashboard-brand small{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-dashboard-shell__body{width:min(100%,1440px);min-height:calc(100dvh - var(--shell-topbar-height));margin:0 auto;display:flex}.ui-dashboard-sidebar{top:var(--shell-topbar-height);width:16rem;max-height:calc(100dvh - var(--shell-topbar-height));gap:var(--space-4);background:linear-gradient(180deg, #f4efe4eb, #fbf7effa), var(--color-cream-200);padding:var(--shell-sidebar-padding);border-right:1px solid #2531261f;flex-direction:column;flex:none;display:flex;position:sticky;overflow-y:auto}.ui-dashboard-nav{gap:var(--space-1);display:grid}.ui-dashboard-nav__item{min-height:var(--nav-item-height);font-size:var(--font-size-sm);transition:background-color .18s,box-shadow .18s,color .18s,transform .18s;gap:var(--nav-item-gap)!important;border-radius:var(--radius-md)!important;padding:var(--nav-item-padding)!important;color:#18231db8!important}.ui-dashboard-nav__item:hover{color:var(--text)!important;background:#2531260b!important}.ui-dashboard-nav__item>span:nth-child(2)>span:first-child{line-height:1.15;font-weight:var(--font-weight-medium)!important}.ui-dashboard-nav [aria-current=page]{box-shadow:0 1px #18231d0a,0 12px 28px -18px #18231d5c;border-radius:var(--radius-md)!important;background:var(--primary)!important;color:var(--primary-contrast)!important;border-color:#0000!important}.ui-dashboard-nav [aria-current=page] .ui-dashboard-icon{color:var(--primary-contrast)}.ui-dashboard-nav [aria-current=page]>span:nth-child(2)>span:first-child{font-weight:var(--font-weight-semibold)!important}.ui-dashboard-icon{width:1rem;height:1rem;color:var(--primary-strong);stroke-width:1.9px;flex:none}.ui-dashboard-sidebar__callout{gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(145deg, #fffdf8e6, #fff0b82e), var(--surface-strong);padding:var(--space-4);box-shadow:var(--shadow-xs);margin-top:auto;display:grid}.ui-dashboard-sidebar__callout span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-dashboard-sidebar__callout strong{font-family:var(--font-display);font-size:var(--font-size-md);line-height:var(--line-height-tight)}.ui-dashboard-sidebar__callout a{color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ui-dashboard-main{min-width:0;padding:var(--shell-page-padding);flex:auto}.ui-dashboard-profile{display:inline-flex;position:relative}.ui-dashboard-profile__trigger{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);min-height:2.35rem;color:var(--text);padding:var(--space-1) var(--space-3) var(--space-1) var(--space-1);box-shadow:var(--shadow-xs);cursor:pointer;background:#fffdf8c2;transition:background-color .18s,border-color .18s,box-shadow .18s;display:inline-flex}.ui-dashboard-profile__trigger:hover{border-color:var(--border-strong);background:#fffdf8f5}.ui-dashboard-profile__trigger[data-open=true]{border-color:var(--border-strong);background:var(--surface-strong)}.ui-dashboard-profile__label{max-width:8rem;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;line-height:1;overflow:hidden}.ui-dashboard-profile__chevron{width:.86rem;height:.86rem;color:var(--text-muted);stroke-width:2px;transition:transform .18s}.ui-dashboard-profile__trigger[data-open=true] .ui-dashboard-profile__chevron{transform:rotate(180deg)}.ui-dashboard-profile-mobile-trigger{display:none}.ui-dashboard-profile__menu{z-index:var(--z-modal);top:calc(100% + var(--space-2));gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);width:min(18rem,100vw - 2rem);box-shadow:var(--shadow-md);padding:var(--space-2);display:grid;position:absolute;right:0}.ui-dashboard-profile__menu .ui-dashboard-icon{color:currentColor}.ui-dashboard-profile__summary{justify-content:space-between;align-items:start;gap:var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-1);padding:var(--space-2) var(--space-2) var(--space-3);display:flex}.ui-dashboard-profile__summary>div{gap:var(--space-1);min-width:0;display:grid}.ui-dashboard-profile__summary strong{font-family:var(--font-display)}.ui-dashboard-profile__summary span{color:var(--text-muted);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-dashboard-profile__close{color:inherit;cursor:pointer;background:0 0;border:0;display:none}.ui-dashboard-profile__item{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);width:100%;color:var(--text);padding:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.ui-dashboard-profile__item:hover,.ui-dashboard-profile__item:focus-visible{background:var(--surface-subtle);outline:none}.ui-dashboard-profile__item--danger{color:var(--danger)}.ui-mobile-account-panel{display:none}.ui-dashboard-drawer{z-index:var(--z-modal);position:fixed;inset:0}.ui-dashboard-drawer__scrim{cursor:pointer;background:#18231d47;border:0;position:absolute;inset:0}.ui-dashboard-drawer__panel{gap:var(--space-5);border-right:1px solid var(--border);background:linear-gradient(180deg, #f4efe4f5, #fbf7ef), var(--color-cream-200);width:min(18rem,100vw - 2rem);height:100dvh;padding:var(--space-5) var(--space-4);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow-y:auto}.ui-dashboard-drawer__header{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.ui-dashboard-drawer__header strong{color:var(--text-strong);font-size:var(--font-size-md);line-height:1}.ui-dashboard-page{gap:var(--space-6);display:grid}.ui-dashboard-page__header{justify-content:space-between;align-items:end;gap:var(--space-4);display:flex}.ui-dashboard-page__intro{gap:var(--space-2);max-width:42rem;display:grid}.ui-dashboard-page__eyebrow{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-dashboard-page__intro h1{color:var(--text-strong);font-family:var(--font-display);font-size:clamp(2.25rem,5vw,3rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);margin:0}.ui-dashboard-page__intro p{color:var(--text-muted);font-size:var(--font-size-md);margin:0}.ui-dashboard-home{gap:0}.ui-dashboard-home__header{align-items:end}.ui-dashboard-home__primary-action{border-radius:var(--radius-pill);white-space:nowrap;flex:none;padding-inline:1.25rem}.ui-dashboard-home__macro-grid{gap:var(--space-4);margin-top:var(--space-10);grid-template-columns:minmax(0,1.35fr) minmax(16rem,.85fr) minmax(16rem,.85fr);display:grid}.ui-dashboard-home__macro-card{overflow:hidden}.ui-dashboard-home__card-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.ui-dashboard-home__card-heading h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);margin:0}.ui-dashboard-home__card-heading .ui-badge{align-items:center;gap:var(--space-1);white-space:nowrap;display:inline-flex}.ui-dashboard-home__card-heading .ui-badge svg{width:.75rem;height:.75rem}.ui-dashboard-home__rings{gap:var(--space-6);margin-top:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;display:grid}.ui-dashboard-home__macro-bars{display:none}.ui-dashboard-home__week-card,.ui-dashboard-home__weight-card{overflow:hidden}.ui-dashboard-home__weight-card.ui-card{border-color:color-mix(in srgb, var(--primary) 24%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--surface-strong) 88%, var(--primary-soft)), var(--surface))}.ui-dashboard-home__weight-card .ui-card__body{gap:var(--space-4);display:grid}.ui-dashboard-home__weight-header{gap:var(--space-1);min-width:0;display:grid}.ui-dashboard-home__weight-topline{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}.ui-dashboard-home__weight-header span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-dashboard-home__weight-add{flex:none}.ui-dashboard-home__weight-add .ui-button__content{gap:var(--space-1)}.ui-dashboard-home__weight-add svg{width:.95rem;height:.95rem}.ui-dashboard-home__weight-header h2{color:var(--text-strong);font-family:var(--font-display);font-size:clamp(2.15rem,3vw,3.1rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);margin:0;line-height:.95}.ui-dashboard-home__weight-header p{color:var(--text-muted);font-size:var(--font-size-sm);margin:0}.ui-dashboard-home__compact-stat-value{white-space:nowrap;justify-content:center;align-items:baseline;gap:.18rem;max-width:100%;display:inline-flex}.ui-dashboard-home__compact-stat-value small{color:inherit;font-family:var(--font-sans);font-size:.55em;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.ui-dashboard-home__week-copy{gap:var(--space-2);display:grid}.ui-dashboard-home__week-copy span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-dashboard-home__week-copy h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);margin:0}.ui-dashboard-home__week-compact{display:none}.ui-dashboard-home__stats{gap:var(--space-3);margin-top:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ui-dashboard-home__meals{gap:var(--space-5);margin-top:var(--space-10);display:grid}.ui-dashboard-home__section-heading{justify-content:space-between;align-items:end;gap:var(--space-4);display:flex}.ui-dashboard-home__section-heading h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);margin:0}.ui-dashboard-home__section-heading p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-sm);display:none}.ui-dashboard-home__inline-link{align-items:center;gap:var(--space-1);min-height:2.75rem;padding:0 var(--space-1);color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;text-decoration:none;display:inline-flex}.ui-dashboard-home__inline-link:hover{text-decoration:underline}.ui-dashboard-home__inline-link svg{width:1rem;height:1rem}.ui-dashboard-home__meal-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0;display:grid}.ui-dashboard-home__add-meal-card{min-height:100%;overflow:hidden}.ui-dashboard-home__add-meal-link{width:100%;height:100%;min-height:15.5rem;box-shadow:none;color:inherit;padding:var(--space-4);text-align:left;cursor:pointer;place-items:start;gap:var(--space-4);background:0 0;border:0;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;display:grid}.ui-dashboard-home__add-meal-icon{border-radius:var(--radius-pill);background:var(--primary-soft);width:2.75rem;height:2.75rem;color:var(--primary-strong);place-items:center;display:grid}.ui-dashboard-home__add-meal-copy{gap:var(--space-2);display:grid}.ui-dashboard-home__add-meal-copy strong{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-regular);line-height:var(--line-height-tight)}.ui-dashboard-home__add-meal-copy small{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.ui-dashboard-home__add-meal-visual{border-radius:var(--radius-pill);width:3rem;height:3rem;color:var(--primary-strong);background:var(--surface);justify-self:end;place-items:center;display:grid}.ui-dashboard-home__add-meal-empty{color:var(--text-muted);font-size:var(--font-size-sm);margin:0}.ui-dashboard-home .ui-dashboard-page__intro h1,.ui-dashboard-home__quick-action strong,.ui-dashboard-home__quick-action small{overflow-wrap:anywhere}.ui-dashboard-home__quick-actions{gap:var(--space-4);margin-top:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));display:grid}.ui-dashboard-home__quick-action{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;color:inherit;padding:var(--space-4);box-shadow:var(--shadow-sm);text-decoration:none}.ui-dashboard-home__quick-action .ui-button__content{gap:var(--space-2) var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;width:100%;display:grid}.ui-dashboard-home__quick-action:hover{border-color:var(--border-strong);background:var(--surface-strong)}.ui-dashboard-home__quick-action-icon{border-radius:var(--radius-pill);background:var(--primary-soft);width:2.25rem;height:2.25rem;color:var(--primary-strong);grid-row:span 2;place-items:center;display:grid}.ui-dashboard-home__quick-action svg{width:1rem;height:1rem}.ui-dashboard-home__quick-action .ui-button__content>svg{color:var(--primary-strong)}.ui-dashboard-home__quick-action strong{min-width:0;color:var(--text-strong);font-size:var(--font-size-sm);line-height:1.2}.ui-dashboard-home__quick-action small{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);grid-column:2/4}.ui-dashboard-home__skeleton{gap:var(--space-3);display:grid}.ui-dashboard-home__skeleton span{border-radius:var(--radius-md);min-height:8rem}.ui-weight-page{gap:var(--space-5)}.ui-weight-page__header{align-items:end}.ui-weight-page__header .ui-button{white-space:nowrap}.ui-weight-hero{overflow:hidden}.ui-weight-hero .ui-card__body{grid-template-columns:minmax(17rem,.72fr) minmax(0,1.28fr);min-height:34rem;padding:0;display:grid}.ui-weight-hero__summary{align-content:space-between;gap:var(--space-6);border-right:1px solid var(--border);background:color-mix(in srgb, var(--primary-soft) 24%, var(--surface));padding:clamp(var(--space-5), 3vw, var(--space-8));display:grid}.ui-weight-hero__eyebrow{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-weight-hero__summary>strong{color:var(--text-strong);font-family:var(--font-display);font-size:clamp(3.5rem,8vw,5.4rem);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:.9;display:block}.ui-weight-hero__value-skeleton{border-radius:var(--radius-md);width:min(100%,13rem);height:clamp(3.15rem,7vw,4.85rem)}.ui-weight-hero__summary>p{max-width:19rem;color:var(--text-muted);font-size:var(--font-size-md);line-height:var(--line-height-normal);margin:0}.ui-weight-hero__stats{gap:var(--space-3);display:grid}.ui-weight-hero-stat{gap:0 var(--space-3);border:1px solid color-mix(in srgb, var(--border) 72%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 70%, transparent);min-width:0;padding:var(--space-3);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.ui-weight-hero-stat>span:first-child{border-radius:var(--radius-pill);background:var(--surface);width:2rem;height:2rem;color:var(--primary-strong);grid-row:span 2;place-items:center;display:grid}.ui-weight-hero-stat svg{width:1.1rem;height:1.1rem}.ui-weight-hero-stat>span:nth-child(2){color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.ui-weight-hero-stat strong{min-width:0;color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);overflow-wrap:anywhere}.ui-weight-hero__chart{min-width:0;padding:clamp(var(--space-5), 3vw, var(--space-8));align-content:stretch;display:grid}.ui-weight-panel,.ui-weight-form-card,.ui-weight-history-card{min-width:0}.ui-weight-panel__heading{justify-content:space-between;align-items:start;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.ui-weight-panel__heading h2,.ui-weight-form h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);margin:0}.ui-weight-panel__heading p,.ui-weight-form p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-sm)}.ui-weight-chart-controls{justify-content:end;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.ui-weight-period-control button{white-space:nowrap;min-width:3.1rem;min-height:2.5rem}.ui-weight-range-dialog{gap:var(--space-4);display:grid}.ui-weight-layer-toggles{margin-bottom:var(--space-2)}.ui-weight-chart{gap:var(--space-3);min-height:20rem;display:grid;position:relative}.ui-weight-chart svg{cursor:crosshair;touch-action:pan-y;width:100%;min-height:17.5rem;overflow:visible}.ui-weight-chart--empty{border:1px dashed var(--border);border-radius:var(--radius-md);min-height:17.5rem;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);place-items:center}.ui-weight-chart__grid{stroke:color-mix(in srgb, var(--border) 72%, transparent);stroke-width:1px}.ui-weight-chart__raw{fill:none;stroke:color-mix(in srgb, var(--primary) 38%, var(--border-strong));stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ui-weight-chart__trend{fill:none;stroke:var(--primary-strong);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.ui-weight-chart__dot{fill:var(--surface);stroke:var(--primary-strong);stroke-width:2px}.ui-weight-chart__trend-dot{fill:var(--surface);stroke:var(--primary-strong);stroke-width:2.5px}.ui-weight-chart__hover line{stroke:color-mix(in srgb, var(--primary) 28%, var(--border-strong));stroke-dasharray:4 5;stroke-width:1.5px}.ui-weight-chart__hover circle{fill:var(--surface);stroke:var(--primary-strong);stroke-width:3px}.ui-weight-chart__hover circle[data-kind=raw]{stroke:color-mix(in srgb, var(--primary) 54%, var(--border-strong))}.ui-weight-chart__tooltip{z-index:2;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 94%, transparent);min-width:9rem;max-width:13rem;box-shadow:var(--shadow-md);color:var(--text);padding:var(--space-2) var(--space-3);pointer-events:none;transform:translate(-50%, calc(-100% - var(--space-2)));gap:.15rem;display:grid;position:absolute}.ui-weight-chart__tooltip strong{color:var(--text-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.ui-weight-chart__tooltip span{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);white-space:nowrap}.ui-weight-chart__tick,.ui-weight-chart__date{fill:var(--text-muted);font-size:.72rem;font-weight:var(--font-weight-medium)}.ui-chart-series-legend{gap:var(--space-3);color:var(--text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.ui-chart-series-legend span{align-items:center;gap:var(--space-1);display:inline-flex}.ui-chart-series-legend i{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--primary) 38%, var(--border-strong));width:1.15rem;height:.18rem;display:block}.ui-chart-series-legend i[data-kind=trend]{background:var(--primary-strong);height:.28rem}.ui-weight-form{gap:var(--space-4);display:grid}.ui-weight-form__actions{justify-content:end;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-weight-history-section{gap:var(--space-4);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.ui-weight-history{gap:var(--space-2);display:grid}.ui-weight-history__row{gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.ui-weight-history__main{min-width:0;color:inherit;padding:var(--space-1);text-align:left;cursor:pointer;background:0 0;border:0;gap:.1rem;display:grid}.ui-weight-history__main strong{color:var(--text-strong);font-weight:var(--font-weight-semibold)}.ui-weight-history__main span,.ui-weight-history__main small{min-width:0;color:var(--text-muted);font-size:var(--font-size-xs);overflow-wrap:anywhere}.ui-weight-history-pagination{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.ui-weight-history-pagination span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap}.ui-weight-dialog-copy{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.ui-planning-page{gap:var(--space-5);padding-top:0;display:grid}.ui-planning-page .ui-button,.ui-planning-dialog .ui-button{min-height:2.75rem}.ui-planning-page .ui-button[data-size=icon],.ui-planning-dialog .ui-button[data-size=icon]{width:2.75rem;min-width:2.75rem;max-width:2.75rem}.ui-planning-header{grid-template-columns:minmax(0,1fr) max-content;align-items:end;display:grid}.ui-planning-header__actions{align-items:center;gap:var(--space-2);flex-wrap:nowrap;justify-content:end;display:flex}.ui-planning-week-nav{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-strong);box-shadow:var(--shadow-xs);align-items:center;gap:.125rem;padding:.125rem;display:inline-flex}.ui-planning-week-nav__period{min-width:8.75rem;padding:0 var(--space-3);color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center;white-space:nowrap;line-height:2.25rem}.ui-planning-header__actions .ui-button{white-space:nowrap}.ui-planning-current-week{padding-inline:var(--space-3)}.ui-planning-header .ui-dashboard-page__eyebrow{font-size:var(--font-size-xs);letter-spacing:.2em}.ui-planning-header .ui-dashboard-page__intro h1{margin-top:var(--space-1);font-size:var(--font-size-4xl);letter-spacing:0;line-height:.94}.ui-planning-header .ui-dashboard-page__intro p{max-width:36rem;font-size:var(--font-size-sm);margin-top:0;line-height:1.45}.ui-planning-summary{align-items:center;gap:var(--space-3);border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);min-width:0;padding:var(--space-2) 0;flex-wrap:wrap;display:flex;overflow:visible}.ui-planning-summary-toggle{display:none}.ui-planning-summary-tile{-webkit-backdrop-filter:none;backdrop-filter:none;flex:10.5rem;min-width:0}.ui-planning-summary-tile .ui-card__body{align-items:center;gap:.45rem;min-width:0;display:flex}.ui-planning-summary-tile__content{gap:.12rem;min-width:0;display:grid}.ui-planning-summary-tile__line{flex-wrap:wrap;align-items:baseline;gap:.35rem;min-width:0;display:flex}.ui-planning-summary-tile__icon{border-radius:var(--radius-pill);background:var(--primary-soft);width:1.35rem;height:1.35rem;color:var(--primary-strong);flex:none;place-items:center;display:grid}.ui-planning-summary-tile__icon svg{width:.78rem;height:.78rem}.ui-planning-summary-tile p,.ui-planning-summary-tile span{color:var(--text-muted);margin:0;font-size:.6875rem;line-height:1.15}.ui-planning-summary-tile strong{color:var(--text-strong);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:0;white-space:nowrap;margin-top:0;line-height:1;display:inline-block}.ui-planning-loading{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);min-height:18rem;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);place-items:center;display:grid}.ui-planning-desktop{margin-top:var(--space-3);border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow-sm);border-radius:1.5rem;overflow:hidden}.ui-planning-grid{width:100%;min-width:0}.ui-planning-grid__head,.ui-planning-grid__row{grid-template-columns:minmax(5.75rem,7rem) repeat(7,minmax(0,1fr));display:grid}.ui-planning-grid__head{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-subtle) 52%, transparent)}.ui-planning-grid__row+.ui-planning-grid__row{border-top:1px solid var(--border)}.ui-planning-grid__corner,.ui-planning-grid__meal-head{min-width:0;padding:var(--space-3) clamp(.5rem, 1vw, .75rem);color:var(--text-muted);font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;align-items:center;display:flex}.ui-planning-grid__meal-head{color:var(--text);letter-spacing:0;text-transform:none}.ui-planning-grid__day-head{border-left:1px solid var(--border);min-width:0;position:relative}.ui-planning-grid__day-label{width:100%;min-height:5.4rem;color:inherit;padding:var(--space-2) 2rem var(--space-2) var(--space-2);place-items:center;gap:.18rem;display:grid}.ui-planning-grid__day-lock,.ui-planning-grid__day-off{width:2.75rem;min-width:2.75rem;max-width:2.75rem;min-height:2.75rem;color:var(--text-muted);opacity:0;place-items:center;transition:opacity .16s,color .16s,transform .16s;display:grid;position:absolute;top:.5rem}.ui-planning-grid__day-lock{left:0}.ui-planning-grid__day-off{right:0}.ui-planning-grid__day-lock svg,.ui-planning-grid__day-off svg{width:.85rem;height:.85rem}.ui-planning-grid__day-head:hover .ui-planning-grid__day-lock,.ui-planning-grid__day-lock:focus-visible,.ui-planning-grid__day-head[data-locked=true] .ui-planning-grid__day-lock,.ui-planning-grid__day-head:hover .ui-planning-grid__day-off,.ui-planning-grid__day-off:focus-visible,.ui-planning-grid__day-head[data-off=true] .ui-planning-grid__day-off{opacity:1}.ui-planning-grid__day-lock:hover,.ui-planning-grid__day-lock:focus-visible,.ui-planning-grid__day-off:hover,.ui-planning-grid__day-off:focus-visible{color:var(--text-strong);transform:translateY(-1px)}.ui-planning-grid__day-head[data-locked=true] .ui-planning-grid__day-lock{color:var(--primary)}.ui-planning-grid__day-head[data-off=true] .ui-planning-grid__day-off{color:var(--warning-strong)}.ui-planning-day-status{border-radius:var(--radius-pill);background:var(--border-strong);width:.42rem;height:.42rem;display:block}.ui-planning-grid__day-head[data-status=planned] .ui-planning-day-status,.ui-planning-mobile-tabs button[data-status=planned] .ui-planning-day-status{background:var(--success)}.ui-planning-grid__day-head[data-status=off] .ui-planning-day-status,.ui-planning-mobile-tabs button[data-status=off] .ui-planning-day-status{background:var(--warning)}.ui-planning-grid__day-head[data-status=empty] .ui-planning-day-status,.ui-planning-mobile-tabs button[data-status=empty] .ui-planning-day-status{background:var(--border-strong)}.ui-planning-grid__day-head span,.ui-planning-mobile-tabs span{color:var(--text-muted);font-size:.6875rem;font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;line-height:1}.ui-planning-grid__day-head strong,.ui-planning-mobile-tabs strong{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:0;line-height:1}.ui-planning-grid__day-macros{max-width:100%;color:var(--text-muted);font-size:.625rem;font-weight:var(--font-weight-regular);letter-spacing:0;text-align:center;text-transform:none;line-height:1;position:relative}.ui-planning-grid__day-macros:after{z-index:4;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-contrast);width:max-content;max-width:9rem;color:var(--text-inverse);box-shadow:var(--shadow-sm);content:attr(data-tooltip);font-family:var(--font-sans);font-size:.625rem;font-weight:var(--font-weight-medium);letter-spacing:0;opacity:0;pointer-events:none;text-transform:none;white-space:normal;padding:.35rem .45rem;line-height:1.15;transition:opacity 80ms,transform 80ms;position:absolute;bottom:calc(100% + .45rem);left:50%;transform:translate(-50%,.15rem)}.ui-planning-grid__day-macros:hover:after,.ui-planning-grid__day-macros:focus-visible:after{opacity:1;transform:translate(-50%)}.ui-planning-grid__day-head[data-today=true] strong,.ui-planning-mobile-tabs button[data-today=true] strong{color:var(--primary-strong);font-weight:var(--font-weight-semibold)}.ui-planning-grid__day-head[data-today=true] .ui-planning-day-status,.ui-planning-mobile-tabs button[data-today=true] .ui-planning-day-status{background:var(--primary);width:.5rem;height:.5rem}.ui-planning-grid__day-head[data-off=true]{background:var(--warning-soft)}.ui-planning-slot{border-left:1px solid var(--border);min-width:0;min-height:94px;padding:0;position:relative}.ui-planning-slot[data-locked=true]{background:0 0}.ui-planning-slot:before{z-index:2;top:var(--space-2);left:var(--space-2);right:var(--space-2);border-radius:var(--radius-sm) var(--radius-sm) 0 0;content:"";opacity:0;pointer-events:none;background:linear-gradient(#fffdf8d1,#fffdf800);height:2.75rem;transition:opacity .16s;position:absolute}.ui-planning-slot:hover:before{opacity:1}.ui-planning-slot__lock,.ui-planning-slot__clear,.ui-planning-slot__skip{z-index:3;width:2.75rem;min-width:2.75rem;max-width:2.75rem;min-height:2.75rem;color:color-mix(in srgb, var(--text-strong) 86%, transparent);opacity:0;place-items:center;transition:opacity .16s,color .16s,transform .16s;display:grid;position:absolute;top:0}.ui-planning-slot__lock{left:0}.ui-planning-slot__clear,.ui-planning-slot__skip{right:0}.ui-planning-slot__clear{color:var(--danger)}.ui-planning-slot__skip{color:var(--text-muted)}.ui-planning-slot__lock svg,.ui-planning-slot__clear svg,.ui-planning-slot__skip svg{width:.8rem;height:.8rem}.ui-planning-slot:hover .ui-planning-slot__lock,.ui-planning-slot__lock:focus-visible,.ui-planning-slot:hover .ui-planning-slot__clear,.ui-planning-slot__clear:focus-visible,.ui-planning-slot:hover .ui-planning-slot__skip,.ui-planning-slot__skip:focus-visible{opacity:1}.ui-planning-slot[data-locked=true] .ui-planning-slot__lock{color:var(--primary);opacity:1}.ui-planning-slot[data-skipped=true]{background:color-mix(in srgb, var(--surface-subtle) 54%, transparent)}.ui-planning-slot[data-skipped=true] .ui-planning-slot__skip{color:var(--primary);opacity:1}.ui-planning-slot__lock:hover{color:var(--text-strong);transform:translateY(-1px)}.ui-planning-slot__clear:hover,.ui-planning-slot__clear:focus-visible,.ui-planning-slot__skip:hover,.ui-planning-slot__skip:focus-visible{transform:translateY(-1px)}.ui-planning-slot__clear:hover,.ui-planning-slot__clear:focus-visible{color:var(--danger)}.ui-planning-slot__skip:hover,.ui-planning-slot__skip:focus-visible{color:var(--primary)}.ui-planning-slot__content{gap:var(--space-1);width:100%;height:100%;min-height:94px;color:var(--text);padding:var(--space-2);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;outline:1px solid #0000;flex-direction:column;display:flex;position:relative;overflow:hidden}.ui-planning-slot__content:hover,.ui-planning-slot__content:focus-visible{background:color-mix(in srgb, var(--surface-subtle) 42%, transparent)}.ui-planning-slot__content:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:calc(var(--focus-ring-offset) * -1)}.ui-planning-slot[data-locked=true] .ui-planning-slot__content{outline:1px solid color-mix(in srgb, var(--primary) 36%, transparent);outline-offset:-1px}.ui-planning-slot__empty{border-radius:var(--radius-sm);height:100%;min-height:78px;color:var(--text-muted);border:1px solid #0000;justify-content:center;align-items:center;transition:border-color .16s,color .16s,background-color .16s;display:flex}.ui-planning-slot__empty svg{width:1rem;height:1rem}.ui-planning-slot__empty--skipped{gap:var(--space-1);border-color:color-mix(in srgb, var(--primary) 28%, transparent);background:color-mix(in srgb, var(--primary-soft) 54%, transparent);color:var(--primary);font-size:var(--font-size-xs);text-align:center;flex-direction:column;font-weight:700}.ui-planning-slot__content:hover .ui-planning-slot__empty{border-color:var(--border);background:color-mix(in srgb, var(--surface-strong) 52%, transparent);color:var(--primary)}.ui-planning-slot__items,.ui-planning-mobile-card__items{z-index:1;gap:var(--space-1);min-width:0;display:grid;position:relative}.ui-planning-slot__meta{z-index:1;border-top:1px solid color-mix(in srgb, var(--border) 62%, transparent);padding-top:var(--space-1);color:var(--text-muted);margin-top:auto;font-size:.625rem;line-height:1.15;position:relative}.ui-planning-slot__more{color:var(--text-muted);font-size:var(--font-size-xs);text-align:center}.ui-planning-slot--off{background:var(--warning-soft);place-items:stretch stretch;min-height:94px;display:grid}.ui-planning-slot--off button{place-items:center;gap:var(--space-2);border:1px dashed color-mix(in srgb, var(--warning) 42%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface-strong) 62%, transparent);color:var(--warning-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;display:grid}.ui-planning-slot--off small{color:var(--text-muted);font-size:var(--font-size-2xs)}.ui-planning-item-pill{border-radius:var(--radius-xs);background:color-mix(in srgb, var(--surface-subtle) 68%, transparent);min-width:0;color:var(--text);align-items:center;gap:.375rem;padding:.125rem .25rem;font-size:.625rem;line-height:1.15;display:flex}.ui-planning-item-pill[data-missing=true]{color:var(--danger);background:var(--danger-soft)}.ui-planning-item-pill img,.ui-planning-item-pill>svg{border-radius:var(--radius-xs);object-fit:cover;flex:none;width:1.25rem;height:1.25rem}.ui-planning-single{z-index:1;flex-direction:column;gap:.375rem;min-width:0;height:100%;display:flex;position:relative}.ui-planning-single__media{aspect-ratio:16/10;border-radius:var(--radius-sm);background:var(--surface-subtle);width:100%;color:var(--text-muted);place-items:center;display:grid;position:relative;overflow:hidden}.ui-planning-single__media img{object-fit:cover;width:100%;height:100%}.ui-planning-single__media--quick{font-size:1.875rem}.ui-planning-single__title{min-width:0;color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15;display:-webkit-box;overflow:hidden}.ui-planning-single__kcal{justify-content:space-between;align-items:center;gap:var(--space-1);color:var(--text-muted);margin-top:auto;font-size:.625rem;line-height:1.15;display:flex}.ui-planning-single__kcal svg{width:.75rem;height:.75rem;color:var(--primary)}.ui-planning-single-error{border-radius:var(--radius-xs);background:var(--danger-soft);color:var(--danger);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.ui-planning-item-pill span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-planning-item-pill svg:last-child{width:.8rem;height:.8rem;color:var(--primary-strong);margin-left:auto}.ui-planning-mobile{display:none}@media (max-width:1180px){.ui-planning-summary{gap:var(--space-2) var(--space-3)}.ui-planning-summary-tile{flex-basis:calc(50% - var(--space-3))}.ui-planning-grid__head,.ui-planning-grid__row{grid-template-columns:minmax(5.25rem,6rem) repeat(7,minmax(0,1fr))}.ui-planning-grid__day-label{min-height:5rem;padding:var(--space-2) 1.75rem var(--space-2) var(--space-1)}.ui-planning-grid__day-head strong{font-size:var(--font-size-lg)}.ui-planning-slot,.ui-planning-slot--off,.ui-planning-slot__content,.ui-planning-slot__empty{min-height:88px}.ui-planning-single__media{aspect-ratio:1/.82}.ui-planning-single__title{font-size:.6875rem}}.ui-planning-mobile-tabs{z-index:var(--z-sticky);top:calc(var(--shell-topbar-height) + var(--space-2));padding:var(--space-1) 0 var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid;position:sticky;overflow:visible}.ui-planning-mobile-tabs button{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);cursor:pointer;place-items:center;gap:.15rem;min-width:0;padding:.45rem .2rem;display:grid}.ui-planning-mobile-tabs .ui-planning-day-status{width:.35rem;height:.35rem}.ui-planning-mobile-tabs button[data-active=true]{border-color:var(--primary);background:var(--surface-contrast)}.ui-planning-mobile-tabs button[data-active=true] span,.ui-planning-mobile-tabs button[data-active=true] strong{color:var(--text-inverse)}.ui-planning-mobile-tabs button[data-off=true]:not([data-active=true]){background:var(--warning-soft)}.ui-planning-mobile-day .ui-card__body{gap:var(--space-3);display:grid}.ui-planning-mobile-day__actions{justify-content:end;align-items:center;gap:var(--space-2);display:flex}.ui-planning-mobile-day__actions .ui-button,.ui-planning-mobile-card>.ui-button,.ui-planning-meal-item__actions .ui-button,.ui-planning-ingredient-toggle{min-height:2.75rem}.ui-planning-mobile-day__actions .ui-button[data-size=icon],.ui-planning-mobile-card>.ui-button[data-size=icon],.ui-planning-meal-item__actions .ui-button[data-size=icon]{width:2.75rem;min-width:2.75rem;max-width:2.75rem}.ui-planning-mobile-meals{gap:var(--space-3);display:grid}.ui-planning-mobile-card{align-items:stretch;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);padding:var(--space-2);grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;grid-auto-flow:column;display:grid}.ui-planning-mobile-card[data-locked=true]{border-color:color-mix(in srgb, var(--primary) 45%, transparent);background:var(--primary-soft)}.ui-planning-mobile-card[data-off=true]{background:var(--warning-soft)}.ui-planning-mobile-card[data-skipped=true]{border-color:color-mix(in srgb, var(--primary) 30%, transparent);background:color-mix(in srgb, var(--primary-soft) 48%, var(--surface-strong))}.ui-planning-mobile-card__main{gap:var(--space-2);min-width:0;color:inherit;padding:var(--space-1);text-align:left;cursor:pointer;background:0 0;border:0;display:grid}.ui-planning-mobile-card__main:disabled{cursor:default}.ui-planning-mobile-card__title{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;display:flex}.ui-planning-mobile-card__title strong{color:var(--text-strong);font-size:var(--font-size-sm)}.ui-planning-mobile-card__title span{color:var(--text-muted);font-size:var(--font-size-xs)}.ui-planning-mobile-card__empty{align-items:center;gap:var(--space-2);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);padding:var(--space-3);font-size:var(--font-size-sm);display:flex}.ui-planning-mobile-card__empty--skipped{border-color:color-mix(in srgb, var(--primary) 32%, transparent);background:color-mix(in srgb, var(--primary-soft) 60%, transparent);color:var(--primary);font-weight:700}.ui-planning-dialog{--dialog-shell-body-padding:var(--space-5)}.ui-planning-dialog__body,.ui-planning-dialog__items,.ui-planning-add-panel,.ui-planning-quick-form{gap:var(--space-4);display:grid}.ui-planning-dialog__stats{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ui-planning-macro-stat{border-radius:var(--radius-md);background:var(--surface-subtle);min-width:0;padding:var(--space-3);text-align:center}.ui-planning-macro-stat strong{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);line-height:1;display:block}.ui-planning-macro-stat span{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;display:block}.ui-planning-dialog__empty{justify-items:center;gap:var(--space-2);border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-muted);padding:var(--space-6);text-align:center;display:grid}.ui-planning-meal-item{gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);padding:var(--space-4);grid-template-columns:4.4rem minmax(0,1fr) auto;align-items:start;display:grid}.ui-planning-meal-item[data-locked=true]{border-color:color-mix(in srgb, var(--primary) 45%, transparent);background:var(--primary-soft)}.ui-planning-meal-item__media{width:4.4rem}.ui-planning-meal-item__media>img,.ui-planning-meal-item__icon{border-radius:var(--radius-sm);object-fit:cover;width:4.4rem;height:4.4rem}.ui-planning-meal-item__icon{background:var(--surface-subtle);color:var(--text-muted);place-items:center;display:grid}.ui-planning-meal-item__content{gap:var(--space-3);min-width:0;display:grid}.ui-planning-meal-item__heading{gap:var(--space-1);min-width:0;display:grid}.ui-planning-meal-item__heading strong,.ui-planning-meal-item__heading span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-planning-meal-item__content strong{color:var(--text-strong);font-size:var(--font-size-sm)}.ui-planning-meal-item__heading span,.ui-planning-meal-item__content>span{color:var(--text-muted);font-size:var(--font-size-xs)}.ui-planning-meal-item__controls,.ui-planning-meal-item__secondary-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-planning-meal-item__actions,.ui-planning-dialog__footer{justify-content:end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-planning-serving-control{align-items:center;gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);width:fit-content;padding:var(--space-1);display:inline-flex}.ui-planning-serving-control span{padding:0 var(--space-2);-webkit-user-select:none;user-select:none;white-space:nowrap}.ui-planning-serving-control__button{width:2.75rem;min-width:2.75rem;max-width:2.75rem;min-height:2.75rem}.ui-planning-recipe-view,.ui-planning-ingredient-toggle{margin-top:0}.ui-planning-ingredient-overrides{gap:var(--space-2);margin-top:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-2);grid-column:1/-1;display:grid}.ui-planning-ingredient-overrides label{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) 5.5rem 2.75rem;display:grid}.ui-planning-ingredient-overrides label>span{min-width:0;color:var(--text);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-planning-ingredient-overrides .ui-input{text-align:right;min-height:1.9rem}.ui-planning-ingredient-overrides small{color:var(--text-muted);font-size:var(--font-size-xs)}.ui-planning-add-panel{border-top:1px solid var(--border);padding-top:var(--space-4)}.ui-planning-add-panel__header{align-items:center;gap:var(--space-3);grid-template-columns:minmax(8rem,auto) minmax(14rem,1fr);display:grid}.ui-planning-recipe-picker,.ui-planning-food-results{gap:var(--space-2);max-height:16rem;display:grid;overflow:auto}.ui-planning-recipe-picker button,.ui-planning-food-results button{align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);color:var(--text);padding:var(--space-2);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.ui-planning-recipe-picker button[data-selected=true],.ui-planning-food-results button[data-selected=true]{border-color:var(--primary);background:var(--primary-soft)}.ui-planning-food-results button{grid-template-columns:minmax(0,1fr) auto}.ui-planning-recipe-picker button:hover,.ui-planning-food-results button:hover{border-color:var(--border-strong)}.ui-planning-recipe-picker img,.ui-planning-recipe-picker button>svg:first-child{border-radius:var(--radius-sm);object-fit:cover;width:2.8rem;height:2.8rem}.ui-planning-recipe-picker span,.ui-planning-food-results span{gap:var(--space-1);min-width:0;display:grid}.ui-planning-recipe-picker strong,.ui-planning-recipe-picker small,.ui-planning-food-results strong,.ui-planning-food-results small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-planning-recipe-picker small,.ui-planning-food-results small{color:var(--text-muted);font-size:var(--font-size-xs)}.ui-planning-food-search{position:relative}.ui-planning-food-search>svg{z-index:1;left:var(--space-3);width:1rem;height:1rem;color:var(--text-muted);position:absolute;top:50%;transform:translateY(-50%)}.ui-planning-food-search .ui-input{padding-left:2.4rem}@media (max-width:900px){.ui-planning-desktop{display:none}.ui-planning-mobile{gap:var(--space-4);display:grid}}@media (max-width:720px){.ui-planning-header{align-items:start;gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.ui-planning-header .ui-dashboard-page__intro{min-width:0}.ui-planning-page{gap:var(--space-2)}.ui-planning-header .ui-dashboard-page__intro p,.ui-planning-header .ui-dashboard-page__eyebrow{display:none}.ui-planning-header .ui-dashboard-page__intro h1{margin:0;font-size:2rem;line-height:1}.ui-planning-header__actions{gap:var(--space-1);grid-template-columns:1fr;display:grid}.ui-planning-header__actions .ui-button{width:100%;min-height:2.75rem}.ui-planning-week-nav{width:100%;min-height:2.75rem;box-shadow:none;justify-content:space-between}.ui-planning-week-nav .ui-button[data-size=icon]{width:2.75rem;min-width:2.75rem;max-width:2.75rem}.ui-planning-week-nav__period{min-width:0;font-size:var(--font-size-sm);flex:auto;line-height:2.25rem}.ui-planning-summary-toggle{justify-content:space-between;align-items:center;gap:var(--space-3);border:0;border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 72%, transparent);min-height:2.75rem;color:var(--text);padding:var(--space-2) 0;text-align:left;box-shadow:none;background:0 0;border-radius:0;display:flex}.ui-planning-summary-toggle span{gap:.1rem;display:grid}.ui-planning-summary-toggle strong{color:var(--text-strong);font-size:var(--font-size-sm);line-height:1.1}.ui-planning-summary-toggle small{color:var(--text-muted);font-size:var(--font-size-xs);line-height:1.2}.ui-planning-summary-toggle svg{width:1rem;height:1rem;color:var(--text-muted);flex:none;transition:transform .16s}.ui-planning-summary-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.ui-planning-summary{gap:var(--space-2);border-top:0;border-bottom:1px solid color-mix(in srgb, var(--border) 72%, transparent);padding-top:0;padding-bottom:var(--space-2);grid-template-columns:1fr 1fr;display:none}.ui-planning-summary[data-expanded=true]{display:grid}.ui-planning-summary-tile{min-width:0}.ui-planning-summary-tile .ui-card__body{align-items:start}.ui-planning-mobile-tabs{top:calc(var(--shell-topbar-height) - 1px);background:color-mix(in srgb, var(--background) 94%, transparent);padding:var(--space-2) 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:repeat(7,minmax(0,1fr));gap:.125rem;margin-inline:0;overflow-x:visible}.ui-planning-mobile-tabs span{letter-spacing:.04em;font-size:.6rem}.ui-planning-mobile-tabs strong{font-size:var(--font-size-md)}.ui-planning-mobile-tabs button{border-radius:var(--radius-md);min-width:0;min-height:2.75rem;padding:.4rem .1rem}.ui-planning-mobile-day{border-radius:var(--radius-lg);box-shadow:none}.ui-planning-mobile-day .ui-card__header{gap:var(--space-2)}.ui-planning-mobile-day .ui-card__body{gap:var(--space-3)}.ui-planning-mobile-card{border-radius:var(--radius-sm);padding:var(--space-2)}.ui-planning-mobile-card__empty{padding:var(--space-2)}.ui-planning-add-panel__header{grid-template-columns:1fr}.ui-planning-dialog__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-planning-meal-item{grid-template-columns:auto minmax(0,1fr)}.ui-planning-meal-item__actions{grid-column:1/-1;justify-content:start}.ui-planning-ingredient-overrides label{grid-template-columns:minmax(0,1fr) 6rem;align-items:end}.ui-planning-ingredient-overrides label>span{white-space:normal}.ui-planning-ingredient-overrides .ui-input{min-height:2.75rem}}.ui-account-layout{gap:var(--space-5);max-width:68rem;display:grid}.ui-account-page .ui-dashboard-page__intro h1{font-size:clamp(2.2rem,4vw,3.35rem)}.ui-account-summary-card{box-shadow:var(--shadow-sm)!important}.ui-account-summary-card__inner{gap:var(--space-4);display:grid}.ui-account-summary-card__identity{align-items:center;gap:var(--space-4);min-width:0;display:flex}.ui-account-avatar-control{flex:none;width:3.5rem;height:3.5rem;position:relative}.ui-account-avatar-control__button{width:100%;height:100%;color:var(--surface);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-standard);background:#1f26227a;border:0;border-radius:50%;place-items:center;display:inline-grid;position:absolute;inset:0}.ui-account-avatar-control:hover .ui-account-avatar-control__button,.ui-account-avatar-control__button:focus-within{opacity:1}.ui-account-avatar-control__button:hover{color:var(--surface)}.ui-account-avatar-control__button svg{width:1.15rem;height:1.15rem}.ui-account-avatar-control__button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ui-account-avatar-status{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-account-summary-card h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-2xl);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);margin:0}.ui-account-summary-card p{margin:var(--space-1) 0 0;color:var(--text-muted);overflow-wrap:anywhere}.ui-account-facts,.ui-account-main,.ui-account-form,.ui-account-form-grid,.ui-account-session-list,.ui-account-danger-grid,.ui-account-danger-action,.ui-account-danger-action__controls{gap:var(--space-4);display:grid}.ui-account-facts{justify-content:start;gap:var(--space-2);padding-left:calc(3.5rem + var(--space-4));flex-wrap:wrap;display:flex}.ui-account-facts span{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--primary-strong);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:#fffdf8b8;display:inline-flex}.ui-account-facts svg,.ui-account-danger-action svg{flex:none;width:1rem;height:1rem}.ui-account-form{min-width:0}.ui-account-settings-card{overflow:hidden;box-shadow:var(--shadow-sm)!important}.ui-account-settings-card>.ui-card__header,.ui-account-danger-card>.ui-card__header{padding:var(--space-5) var(--space-6) 0}.ui-account-settings-card>div:not(.ui-card__header),.ui-account-danger-card>div:not(.ui-card__header){padding:var(--space-5) var(--space-6) var(--space-6)}.ui-account-section{gap:var(--space-6);grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);align-items:start;display:grid}.ui-account-section+.ui-account-section{border-top:1px solid var(--border);margin-top:var(--space-5);padding-top:var(--space-5)}.ui-account-section__copy{gap:var(--space-2);display:grid}.ui-account-section__copy>span{align-items:center;gap:var(--space-2);width:max-content;color:var(--primary-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;display:inline-flex}.ui-account-section__copy svg{width:.95rem;height:.95rem}.ui-account-section__copy h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);letter-spacing:var(--letter-spacing-heading);margin:0}.ui-account-section__copy p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.ui-account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.ui-account-form-grid>:first-child{grid-column:1/-1}.ui-account-form-grid>*{align-content:start;align-self:start}.ui-account-actions{justify-content:end;gap:var(--space-3);display:flex}.ui-account-session{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);padding:var(--space-3) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.ui-account-session:first-child{padding-top:0}.ui-account-session:last-child{border-bottom:0;padding-bottom:0}.ui-account-session>div{gap:var(--space-1);min-width:0;display:grid}.ui-account-session strong{color:var(--text-strong)}.ui-account-session span{color:var(--text-muted);font-size:var(--font-size-sm)}.ui-account-danger-grid{gap:0}.ui-account-danger-grid>[role]{margin-bottom:var(--space-4)}.ui-account-danger-action{padding:var(--space-5) 0;border-top:1px solid #b423182e;grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);align-items:start}.ui-account-danger-action:first-of-type{border-top:0;padding-top:0}.ui-account-danger-action:last-child{padding-bottom:0}.ui-account-danger-action__copy{gap:var(--space-2);display:grid}.ui-account-danger-action h3{color:var(--text-strong);font-size:var(--font-size-lg);letter-spacing:var(--letter-spacing-heading);margin:0}.ui-account-danger-action p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.ui-account-danger-action__copy>span{color:var(--text-muted);font-size:var(--font-size-sm)}.ui-account-danger-action__copy strong{color:var(--danger-strong);font-weight:var(--font-weight-medium)}.ui-account-danger-action__controls{gap:var(--space-3)}.ui-coming-soon{border:1px solid var(--border);border-radius:var(--radius-lg);min-height:min(34rem,100dvh - 12rem);box-shadow:var(--shadow-sm);padding:clamp(var(--space-6), 7vw, var(--space-16));background:radial-gradient(circle at 82% 18%,#efcc5f2e,#0000 30%),linear-gradient(145deg,#fffdf8f5,#f4efe4ad);align-items:center;display:grid}.ui-coming-soon__content{gap:var(--space-4);max-width:40rem;display:grid}.ui-coming-soon__badge{border-radius:var(--radius-pill);background:var(--primary-soft);width:max-content;color:var(--primary-strong);padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;border:1px solid #4f8f692e}.ui-coming-soon h2{color:var(--text-strong);font-family:var(--font-display);font-size:clamp(2rem,4vw,3.2rem);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);margin:0}.ui-coming-soon p{color:var(--text-muted);font-size:var(--font-size-lg);margin:0}.ui-coming-soon__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;padding:var(--space-5);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:grid}:is(.ui-card:has(>.ui-card__body),.ui-card:has(>.ui-card__footer)){gap:var(--space-4)}.ui-card[data-selected=true]{outline:3px solid var(--focus-ring);outline-offset:2px}.ui-card[data-padding=none]{padding:0}.ui-card[data-padding=sm]{padding:var(--space-4)}.ui-card[data-padding=lg]{padding:var(--space-6)}.ui-card[data-radius=xl]{border-radius:var(--radius-xl)}.ui-card[data-surface=strong]{background:var(--surface-strong)}.ui-card[data-surface=subtle]{background:var(--surface-subtle)}.ui-card[data-surface=transparent]{background:0 0}.ui-card[data-shadow=sm]{box-shadow:var(--shadow-sm)}.ui-card[data-shadow=md]{box-shadow:var(--shadow-md)}.ui-card[data-shadow=none]{box-shadow:none}.ui-card[data-border=none]{border:0}.ui-card[data-border=dashed]{border-style:dashed}.ui-card[data-tone=accent]{background:linear-gradient(135deg, var(--surface-strong), var(--primary-soft))}.ui-card[data-tone=success]{border-color:#027a4847}.ui-card[data-tone=warning]{border-color:#b547084d}.ui-card[data-tone=danger]{border-color:#b4231847}.ui-card__media{margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) 0}.ui-card__media[data-padding=none]{margin:0}.ui-card__media[data-padding=sm]{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) 0}.ui-card__media[data-padding=lg]{margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-6)) 0}.ui-card__header{justify-content:space-between;align-items:start;gap:var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.ui-card__heading{min-width:0}.ui-card__eyebrow{margin:0 0 var(--space-2);color:var(--primary-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-card__title{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);overflow-wrap:anywhere;margin:0}.ui-card__description{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);overflow-wrap:anywhere;margin:0}.ui-card__description[data-with-title=true]{margin-top:var(--space-2)}.ui-card__actions{justify-content:end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-card__footer{color:var(--primary-strong);font-weight:var(--font-weight-semibold)}.ui-card__footer[data-with-body=true]{border-top:1px solid var(--border);padding-top:var(--space-4)}.ui-summary-stats{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ui-summary-stats__item{gap:var(--space-1);border-radius:var(--radius-md);background:var(--surface-subtle);padding:var(--space-3);text-align:center;display:grid}.ui-summary-stats__value{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading);line-height:1}.ui-summary-stats__label{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;line-height:1}.ui-summary-stats--compact-list{gap:var(--space-2);grid-template-columns:1fr}.ui-summary-stats--compact-list .ui-summary-stats__item{align-items:baseline;gap:var(--space-2);border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);padding:var(--space-2) 0 0;text-align:left;background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto}.ui-summary-stats--compact-list .ui-summary-stats__item:first-child{border-top:0;padding-top:0}.ui-summary-stats--compact-list .ui-summary-stats__value{min-width:0;font-family:var(--font-sans);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:0;line-height:1.05}.ui-summary-stats--compact-list .ui-summary-stats__label{text-align:right;white-space:nowrap}.ui-segmented-control{gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);max-width:100%;padding:var(--space-1);flex-wrap:wrap;display:inline-flex}.ui-segmented-control--full{width:100%}.ui-segmented-control button{border-radius:var(--radius-pill);color:var(--text);padding:var(--button-padding);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);overflow-wrap:anywhere;cursor:pointer;background:0 0;border:1px solid #0000}.ui-segmented-control--compact button{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.ui-segmented-control button[aria-pressed=true]{background:var(--surface-contrast);color:var(--text-inverse);font-weight:var(--font-weight-semibold)}.ui-segmented-control button:disabled{cursor:not-allowed;opacity:.5}.ui-chart-series-toggle{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-chart-series-toggle button{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);min-height:2.5rem;color:var(--text-muted);padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;display:inline-flex}.ui-chart-series-toggle button[aria-pressed=true]{border-color:color-mix(in srgb, var(--primary) 32%, var(--border));background:var(--primary-soft);color:var(--primary-strong)}.ui-chart-series-toggle i{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--primary) 38%, var(--border-strong));width:1.25rem;height:.22rem;display:block}.ui-chart-series-toggle i[data-kind=trend]{background:var(--primary-strong);height:.3rem}.ui-card__body{min-width:0}.ui-card__body:has(>.ui-card-footnote:last-child){gap:var(--space-4);flex-direction:column;min-height:0;display:flex}.ui-card__body>.ui-card-footnote:last-child{margin-top:auto}.ui-profile-layout{gap:var(--space-5);grid-template-columns:minmax(17rem,.8fr) minmax(0,1.45fr);align-items:start;display:grid}.ui-profile-summary-card{text-align:center}.ui-profile-summary-card h2{font-family:var(--font-display);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-heading)}.ui-profile-summary-card__avatar{margin:0 auto;display:flex}.ui-profile-summary-card h2{margin:var(--space-4) 0 0;color:var(--text-strong);font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.ui-profile-summary-card p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--font-size-sm)}.ui-profile-summary-card__stats{margin-top:var(--space-6)}.ui-profile-facts{justify-content:center;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.ui-profile-facts svg{width:.88rem;height:.88rem;color:var(--primary-strong)}.ui-profile-form-grid,.ui-goals-layout{gap:var(--space-4);display:grid}.ui-profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.ui-profile-form-card label,.ui-profile-form-card [id$=-label],.ui-profile-form-card .ui-number-unit-field label{text-transform:uppercase;line-height:1.25;color:var(--text-muted)!important;font-size:var(--font-size-label)!important;font-weight:var(--font-weight-medium)!important;letter-spacing:var(--letter-spacing-label)!important}.ui-profile-form-card .ui-field-control{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--input-background) 72%, var(--surface-strong));font-size:var(--font-size-sm)}.ui-profile-form-card .ui-number-unit-field{gap:var(--space-2)}.ui-profile-form-card .ui-number-unit-field__control,.ui-profile-form-card .ui-number-unit-field__suffix{background:color-mix(in srgb, var(--input-background) 72%, var(--surface-strong))}.ui-profile-form-grid__wide{grid-column:1/-1}.ui-profile-chip-grid{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-profile-chip{border:1px solid var(--border);border-radius:var(--radius-pill);color:#18231db8;min-height:1.85rem;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;background:#f4efe49e;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s}.ui-profile-chip:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.ui-profile-chip[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong);font-weight:var(--font-weight-semibold)}.ui-profile-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);display:flex}.ui-profile-actions svg{width:1rem;height:1rem}.ui-autosave-status{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-subtle);min-width:10.75rem;color:var(--text-muted);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;justify-content:center;align-items:center;line-height:1;display:inline-flex}.ui-autosave-status[data-status=pending],.ui-autosave-status[data-status=saving]{background:var(--info-soft);color:var(--info)}.ui-autosave-status[data-status=saved]{background:var(--success-soft);color:var(--success-strong)}.ui-autosave-status[data-status=blocked],.ui-autosave-status[data-status=error]{background:var(--warning-soft);color:var(--warning-strong)}.ui-goals-layout{grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr);align-items:stretch}.ui-goals-sliders{gap:var(--space-5);display:grid}.ui-macro-energy-notice__meta{display:block}.ui-macro-energy-notice__meta strong{color:var(--primary-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.25}.ui-macro-energy-notice__meta span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.35}.ui-goals-balance-card__target{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:1}.ui-goals-balance{gap:var(--space-4);display:grid}.ui-goals-balance>div{gap:var(--space-2) var(--space-3);grid-template-columns:1fr auto;display:grid}.ui-goals-balance>div>span{color:var(--text-muted);font-size:var(--font-size-sm)}.ui-goals-balance>div>strong{font-size:var(--font-size-sm)}.ui-goals-balance>div>div{border-radius:var(--radius-pill);background:var(--surface-subtle);grid-column:1/-1;height:.55rem;overflow:hidden}.ui-goals-balance>div>div>span{border-radius:inherit;height:100%;display:block}.ui-mobile-bottom-nav{display:none}.ui-pwa-install-banner{width:min(var(--container), calc(100% - var(--section-inline-gutter)));margin:var(--space-4) auto 0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong);box-shadow:var(--shadow);padding:var(--space-4) var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.ui-pwa-install-banner__content{gap:var(--space-1);display:grid}.ui-pwa-install-banner__content span{color:var(--text-muted)}.ui-pwa-install-banner__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-cookie-overlay{z-index:var(--z-overlay);pointer-events:none;background:#18231d2e;position:fixed;inset:0}.ui-cookie-banner{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));left:max(1rem, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:var(--space-4);border-radius:var(--radius-md);color:var(--text-inverse);box-shadow:var(--shadow-lg);padding:var(--space-4) var(--space-5);pointer-events:auto;background:#18231df5;border:1px solid #fffdf82e;display:flex;position:absolute}.ui-cookie-banner>div:first-child{gap:var(--space-1);min-width:0;display:grid}.ui-cookie-banner span{color:var(--auth-muted)}.ui-cookie-banner>div:last-child{gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-sidebar-shell{width:min(100%,1440px);margin:0 auto;display:flex}.ui-sidebar-shell__aside{flex:none;width:16rem;height:100vh;position:sticky;top:0}.ui-sidebar-shell__main{flex:auto;min-width:0}.ui-sidebar-shell__nav{gap:var(--space-1);display:grid}.ui-slider{width:100%;min-height:var(--control-height-sm);accent-color:var(--primary);cursor:pointer}.ui-slider:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.ui-slider:disabled{cursor:not-allowed;opacity:.62}.ui-slider-field{gap:var(--space-2);color:var(--text);display:grid}.ui-slider-field__meta{justify-content:space-between;align-items:baseline;gap:var(--space-3);color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:1.2;display:flex}.ui-slider-field__meta strong{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);white-space:nowrap;line-height:1}.ui-slider-field[data-tone=highlight] .ui-slider-field__meta strong{color:var(--color-butter-500)}.ui-slider-field[data-tone=accent] .ui-slider-field__meta strong{color:var(--color-terracotta-500)}.ui-slider-field .ui-slider{appearance:none;accent-color:auto;background:0 0;border:0;height:.9rem;min-height:.9rem}.ui-slider-field .ui-slider::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:linear-gradient(var(--primary), var(--primary)) 0 / var(--slider-field-progress,50%) 100% no-repeat, var(--color-cream-200);border:1px solid #25312633;height:.34rem}.ui-slider-field .ui-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-pill);background:var(--primary);border:0;width:.82rem;height:.82rem;margin-top:-.27rem;box-shadow:0 1px 2px #18231d29}.ui-slider-field .ui-slider::-moz-range-track{border-radius:var(--radius-pill);background:var(--color-cream-200);border:1px solid #25312633;height:.34rem}.ui-slider-field .ui-slider::-moz-range-progress{border-radius:var(--radius-pill);background:var(--primary);height:.34rem}.ui-slider-field .ui-slider::-moz-range-thumb{border-radius:var(--radius-pill);background:var(--primary);border:0;width:.82rem;height:.82rem;box-shadow:0 1px 2px #18231d29}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-input-spin{0%{transform:translateY(-50%)rotate(0)}to{transform:translateY(-50%)rotate(360deg)}}@keyframes ui-skeleton{0%{background-position:180% 0}to{background-position:-80% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.ui-button,.ui-ghost-toggle,.ui-field-control,.ui-switch__track,.ui-switch__thumb,.ui-progress__bar,.ui-slider{transition-duration:.01ms!important}.ui-button:hover,.ui-ghost-toggle:hover{transform:none}.ui-button__spinner,.ui-skeleton{animation:none}}@media (max-width:900px){.ui-dashboard-topbar{padding:0 var(--space-4)}.ui-dashboard-menu-button{display:inline-flex}.ui-dashboard-sidebar{display:none}.ui-dashboard-shell__body{display:block}.ui-dashboard-main{padding:var(--shell-page-padding-tablet)}.ui-auth-layout{height:auto;overflow:hidden auto}.ui-auth-layout__content{align-content:center;gap:var(--space-6);grid-template-columns:1fr;width:min(100% - 2rem,32rem);height:auto;min-height:100dvh}.ui-auth-layout__brand{align-content:start;min-height:auto}.ui-auth-layout__pitch{gap:var(--space-3);max-width:30rem;padding-bottom:0;display:grid}.ui-auth-layout__title{max-width:14ch;font-size:3.15rem}.ui-auth-layout__pitch p:last-child{margin-top:0;font-size:1rem}.ui-account-layout{grid-template-columns:1fr}.ui-account-facts{justify-content:start;padding-left:0}.ui-account-section,.ui-account-danger-action,.ui-account-form-grid{grid-template-columns:1fr}}@media (max-width:760px){.ui-dashboard-topbar{gap:var(--space-2);grid-template-columns:2.5rem 1fr 2.5rem;min-height:3.65rem;padding:0 .75rem;display:grid}.ui-dashboard-topbar__start{display:contents}.ui-dashboard-topbar__end{grid-column:3;justify-self:end}.ui-dashboard-brand{grid-column:2;justify-self:center}.ui-dashboard-brand strong{font-size:1rem}.ui-dashboard-brand small{font-size:var(--font-size-2xs);display:block}.ui-dashboard-profile__label,.ui-dashboard-topbar__end>.ui-dashboard-profile{display:none}.ui-dashboard-profile-mobile-trigger{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);min-height:2.28rem;color:var(--text);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);box-shadow:var(--shadow-xs);cursor:pointer;background:#fffdf8c2;display:inline-flex}.ui-dashboard-profile-mobile-trigger svg{width:.86rem;height:.86rem;color:var(--text-muted)}.ui-dashboard-menu-button{width:2.5rem;min-width:2.5rem;color:var(--text);grid-column:1;justify-self:start;padding:0;display:inline-flex}.ui-dashboard-main{padding:var(--space-5) var(--space-4) calc(6.5rem + env(safe-area-inset-bottom))}.ui-dashboard-page{gap:var(--space-6)}.ui-dashboard-page__header{flex-direction:column;align-items:start}.ui-profile-layout,.ui-goals-layout,.ui-account-layout{grid-template-columns:1fr}.ui-account-session{grid-template-columns:1fr;align-items:stretch}.ui-account-session .ui-button,.ui-account-danger-action .ui-button{width:100%}.ui-account-settings-card>.ui-card__header,.ui-account-danger-card>.ui-card__header{padding:var(--space-4) var(--space-4) 0}.ui-account-settings-card>div:not(.ui-card__header),.ui-account-danger-card>div:not(.ui-card__header){padding:var(--space-4)}.ui-account-actions{justify-content:stretch}.ui-account-actions .ui-button{width:100%}.ui-profile-form-grid{grid-template-columns:1fr}.ui-card-footnote__header{flex-direction:column;align-items:flex-start}.ui-profile-actions{justify-content:stretch}.ui-profile-actions .ui-button{flex:1 1 0}.ui-coming-soon{border-radius:var(--radius-md);min-height:26rem}.ui-dashboard-drawer{z-index:var(--z-toast);background:#203b3b;padding:0}.ui-dashboard-drawer__scrim{display:none}.ui-dashboard-drawer__panel{background:var(--surface-contrast);width:100%;height:100dvh;max-height:100dvh;color:var(--text-inverse);box-shadow:none;border:0;border-radius:0;gap:0;padding:0}.ui-dashboard-drawer__header{min-height:3.35rem;padding:0 var(--space-4);border-bottom:1px solid #fffdf81a}.ui-dashboard-drawer__header strong{color:var(--text-inverse);font-family:var(--font-sans);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.ui-dashboard-drawer__header .ui-button{--focus-ring:#fffdf8db;color:#fffdf8b8}.ui-dashboard-drawer__header .ui-button:hover{color:var(--text-inverse);background:#fffdf814}.ui-dashboard-drawer__panel .ui-dashboard-nav{gap:var(--space-2);padding:var(--space-5) var(--space-4)}.ui-dashboard-drawer__panel .ui-dashboard-nav__item{min-height:2.65rem;border-radius:var(--radius-md)!important;color:#fffdf8eb!important;padding:var(--space-2) var(--space-3)!important}.ui-dashboard-drawer__panel .ui-dashboard-nav__item:hover{color:var(--text-inverse)!important;background:#fffdf814!important}.ui-dashboard-drawer__panel .ui-dashboard-nav [aria-current=page]{box-shadow:none;background:#fffdf814!important}.ui-dashboard-drawer__panel .ui-dashboard-icon{color:#fffdf8c7}.ui-mobile-account-panel{z-index:var(--z-toast);background:var(--surface-contrast);color:var(--text-inverse);align-content:start;padding:0;display:grid;position:fixed;inset:0;overflow-y:auto}.ui-mobile-account-panel__header{align-items:center;gap:var(--space-3);min-height:3.35rem;padding:var(--space-4);border-bottom:1px solid #fffdf81a;display:flex}.ui-mobile-account-panel__header>div{gap:var(--space-1);flex:1;min-width:0;display:grid}.ui-mobile-account-panel__header strong{color:var(--text-inverse);font-family:var(--font-sans);font-size:var(--font-size-md)}.ui-mobile-account-panel__header span{color:#fffdf89e;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-mobile-account-panel__close{border-radius:var(--radius-md);color:#fffdf8b8;cursor:pointer;background:0 0;border:0;place-items:center;width:2rem;height:2rem;display:inline-grid}.ui-mobile-account-panel__close:hover{color:var(--text-inverse);background:#fffdf814}.ui-mobile-account-panel__close svg{width:1.05rem;height:1.05rem}.ui-mobile-account-panel__section{gap:var(--space-2);padding:var(--space-5) var(--space-4);display:grid}.ui-mobile-account-panel__section>span{color:#fffdf8b3;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-eyebrow);text-transform:uppercase}.ui-mobile-account-panel__item{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);color:#fffdf8f0;min-height:2.7rem;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.ui-mobile-account-panel__item:hover,.ui-mobile-account-panel__item:focus-visible{background:#fffdf814}.ui-mobile-account-panel__item .ui-dashboard-icon{color:currentColor}.ui-mobile-account-panel__item--danger{color:#ff4d5d}.ui-mobile-bottom-nav{z-index:var(--z-sticky);padding:var(--space-1) 0 max(var(--space-1), env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;border:0;border-top:1px solid #2531261f;border-radius:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 36px -30px #18231d80}.ui-mobile-bottom-nav__item{place-items:center;gap:var(--space-1);min-width:0;min-height:3.25rem;color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);text-align:center;cursor:pointer;background:0 0;border:0;border-radius:0;line-height:1.1;display:grid}.ui-mobile-bottom-nav__item--primary{color:var(--primary-strong);position:relative}.ui-mobile-bottom-nav__plus{border:1px solid color-mix(in srgb, var(--primary) 18%, transparent);border-radius:var(--radius-pill);background:var(--primary);width:2.75rem;height:2.75rem;color:var(--primary-contrast);place-items:center;margin-top:-1.35rem;display:grid;box-shadow:0 .85rem 1.75rem -1rem #3f7556a6}.ui-mobile-bottom-nav__item svg{stroke-width:1.9px;width:1.15rem;height:1.15rem}.ui-mobile-bottom-nav__item>span:not(.ui-mobile-bottom-nav__plus){text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ui-mobile-bottom-nav__plus svg{stroke-width:2.35px;width:1.35rem;height:1.35rem}.ui-mobile-bottom-nav__item[aria-current=page]{color:var(--primary-strong);background:0 0}.ui-mobile-bottom-nav__item[aria-current=page] svg{filter:drop-shadow(0 .25rem .6rem #3f75562e)}.ui-pwa-install-banner{z-index:var(--z-raised);bottom:calc(4.05rem + env(safe-area-inset-bottom));width:auto;margin:0 0 var(--space-4);border-radius:var(--radius-lg);padding:var(--space-4);position:sticky}.ui-pwa-install-banner__actions{width:100%}.ui-pwa-install-banner__actions .ui-button{flex:8rem}.ui-cookie-banner{bottom:calc(4.7rem + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.ui-cookie-banner>div:last-child .ui-button{flex:10rem}.ui-sidebar-shell{display:grid}.ui-sidebar-shell__aside{z-index:var(--z-sticky);border-bottom:1px solid var(--border);width:100%;height:auto;position:relative;top:auto;border-right:0!important}.ui-sidebar-shell__nav{gap:var(--space-2);margin:calc(-1 * (var(--focus-ring-width) + var(--focus-ring-offset)));padding:calc(var(--focus-ring-width) + var(--focus-ring-offset));scrollbar-width:thin;display:flex;overflow-x:auto}.ui-sidebar-shell__nav>*{min-width:max-content}.ui-auth-layout__content{height:auto;min-height:100dvh;padding:var(--space-5) 0 var(--space-8)}.ui-auth-layout__shade{background:linear-gradient(#18231deb 0%,#18231da8 42%,#18231de6 100%)}.ui-auth-layout__logo{font-size:var(--font-size-2xl)}.ui-auth-layout__pitch{gap:var(--space-2)}.ui-auth-layout__eyebrow{margin-bottom:var(--space-0-5)}.ui-auth-panel,.ui-auth-success{padding:var(--space-5)}.ui-step-list{padding:0 var(--space-4)}.ui-step-list__item{gap:var(--space-2);grid-template-columns:1.75rem 1fr}.ui-step-list__item+.ui-step-list__item:before{left:calc(1.75rem + var(--space-2))}.ui-step-list__marker{width:1.75rem;height:1.75rem}.ui-auth-layout__title{font-size:2.55rem}.ui-auth-panel__header h1{font-size:var(--font-size-3xl)}.ui-onboarding{align-content:start;gap:var(--space-5);width:min(100%,100vw - 1rem);padding:var(--space-5) 0 var(--space-8);grid-template-columns:1fr}.ui-onboarding__story{min-height:auto;box-shadow:none;background:0 0;border-radius:0;overflow:visible}.ui-onboarding__story:before,.ui-onboarding__story:after,.ui-onboarding__story-image,.ui-onboarding__intro .ui-badge,.ui-onboarding__intro h1{display:none}.ui-onboarding__story-content{gap:var(--space-3);min-height:auto;padding:0 var(--space-2);display:grid}.ui-onboarding__topbar{align-items:center}.ui-onboarding__topbar .ui-button{border-color:var(--border);background:var(--surface);color:var(--text)}.ui-onboarding__topbar .ui-button[data-tone=secondary]:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--border-strong);background:var(--surface-strong);color:var(--text)}.ui-onboarding__intro{max-width:24rem;display:block}.ui-onboarding__intro p{color:var(--text-muted);font-size:var(--font-size-md)}.ui-onboarding__brand{color:var(--primary-strong);font-size:var(--font-size-3xl);text-shadow:none}.ui-onboarding__brand img{width:2.25rem;height:2.25rem}.ui-onboarding__panel{min-height:auto;padding:var(--space-4)}.ui-onboarding__split,.ui-onboarding__goals,.ui-onboarding__macro-grid{grid-template-columns:1fr}.ui-onboarding__actions{grid-template-columns:1fr;display:grid}.ui-onboarding__actions .ui-button{width:100%}}@media (max-width:1180px){.ui-dashboard-home__macro-grid{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr)}.ui-dashboard-home__weight-card{grid-column:1/-1}}@media (max-width:980px){.ui-dashboard-home__header,.ui-dashboard-home__section-heading,.ui-weight-page__header{flex-direction:column;align-items:start}.ui-dashboard-home__macro-grid{grid-template-columns:1fr}.ui-dashboard-home__meal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-dashboard-home__quick-actions,.ui-weight-history-section{grid-template-columns:1fr}}@media (max-width:767px){.ui-dashboard-home{gap:var(--space-5)}.ui-dashboard-home__primary-action,.ui-dashboard-home__primary-action .ui-button__content{width:100%}.ui-dashboard-home__macro-grid{gap:var(--space-3);margin-top:var(--space-5)}.ui-dashboard-home__macro-card.ui-card,.ui-dashboard-home__week-card.ui-card,.ui-dashboard-home__weight-card.ui-card{border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.ui-dashboard-home__card-heading{align-items:start}.ui-dashboard-home__card-heading h2,.ui-dashboard-home__section-heading h2{font-size:var(--font-size-xl)}.ui-dashboard-home__card-heading .ui-badge{min-height:2rem;padding-inline:var(--space-2)}.ui-dashboard-home__rings{justify-items:center;gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr)}.ui-dashboard-home__ring--secondary{display:none}.ui-dashboard-home__ring:first-child{width:min(11.5rem,72vw)}.ui-dashboard-home__macro-bars{gap:var(--space-3);margin-top:var(--space-4);display:grid}.ui-dashboard-home__week-card.ui-card{background:color-mix(in srgb, var(--primary-soft) 42%, var(--surface));border-style:dashed}.ui-dashboard-home__week-copy,.ui-dashboard-home__week-card .ui-summary-stats,.ui-dashboard-home__weight-card .ui-summary-stats{display:none}.ui-dashboard-home__weight-card .ui-card__body{gap:var(--space-3)}.ui-dashboard-home__week-compact{color:var(--primary-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin:0;display:block}.ui-dashboard-home__meals{gap:var(--space-3);margin-top:0}.ui-dashboard-home__section-heading{gap:var(--space-2)}.ui-dashboard-home__inline-link{min-height:2.25rem;padding:0}.ui-dashboard-home__meal-grid{gap:var(--space-3);grid-template-columns:1fr;margin-inline:0;padding:0;display:grid;overflow:visible}.ui-dashboard-home__add-meal-link{min-height:9.5rem}.ui-dashboard-home__quick-actions{gap:var(--space-2);margin-top:var(--space-2)}.ui-dashboard-home__quick-action{padding:var(--space-3)}.ui-dashboard-home__quick-action-icon{width:2rem;height:2rem}.ui-dashboard-home__quick-action small{font-size:var(--font-size-2xs)}.ui-weight-page{gap:var(--space-4)}.ui-weight-page__header .ui-button,.ui-weight-page__header .ui-button__content{width:100%}.ui-weight-hero .ui-card__body{grid-template-columns:1fr;min-height:0}.ui-weight-hero__summary{gap:var(--space-4);border-right:0;border-bottom:1px solid var(--border);padding:var(--space-5)}.ui-weight-hero__summary>strong{font-size:clamp(3rem,18vw,4.25rem)}.ui-weight-hero__value-skeleton{width:min(72vw,11rem);height:clamp(2.7rem,15vw,3.8rem)}.ui-weight-hero__summary>p{font-size:var(--font-size-sm)}.ui-weight-hero__chart{padding:var(--space-4)}.ui-weight-hero__stats{gap:var(--space-2)}.ui-weight-hero-stat{padding:var(--space-2) var(--space-3)}.ui-weight-hero-stat>span:first-child{width:1.8rem;height:1.8rem}.ui-weight-panel.ui-card,.ui-weight-form-card.ui-card,.ui-weight-history-card.ui-card{border-radius:var(--radius-lg);padding:var(--space-4)}.ui-weight-panel__heading{gap:var(--space-3);display:grid}.ui-weight-chart-controls{justify-content:start}.ui-weight-layer-toggles{gap:var(--space-1)}.ui-weight-period-control{justify-content:space-between;width:100%}.ui-weight-period-control button{min-width:0;padding-inline:var(--space-2);text-overflow:ellipsis;flex:auto;overflow:hidden}.ui-weight-chart{min-height:16rem}.ui-weight-chart svg{min-height:14rem}.ui-weight-form__actions{grid-template-columns:1fr;display:grid}.ui-weight-form__actions .ui-button{width:100%}.ui-weight-history-pagination{text-align:center;grid-template-columns:1fr;justify-items:stretch;display:grid}}@media (max-width:520px){.ui-dashboard-home__header{gap:var(--space-3)}.ui-dashboard-home .ui-dashboard-page__intro h1{font-size:var(--font-size-3xl)}.ui-dashboard-home .ui-dashboard-page__intro p{font-size:var(--font-size-sm)}.ui-dashboard-home__quick-action .ui-button__content{grid-template-columns:auto minmax(0,1fr)}.ui-dashboard-home__quick-action .ui-button__content>svg{display:none}.ui-dashboard-home__quick-action small{grid-column:2}}@media (max-width:360px){.ui-dashboard-home__ring:first-child{width:min(10.75rem,76vw)}}@media (prefers-reduced-motion:reduce){.ui-dashboard-home__skeleton span{animation:none}}.ui-shopping-page{gap:var(--space-3);padding-top:0;display:grid}.ui-shopping-header{align-items:center;gap:var(--space-4);grid-template-columns:minmax(0,1fr) max-content;display:grid}.ui-shopping-header .ui-dashboard-page__eyebrow{font-size:var(--font-size-xs);letter-spacing:.2em}.ui-shopping-header .ui-dashboard-page__intro h1{margin-top:var(--space-1);letter-spacing:0;font-size:clamp(2rem,4vw,2.75rem);line-height:.96}.ui-shopping-header .ui-dashboard-page__intro p{color:var(--text-muted);font-size:var(--font-size-sm);margin-top:0;line-height:1.45}.ui-shopping-header__actions{justify-content:end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-shopping-week-nav{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-strong);box-shadow:var(--shadow-xs);align-items:center;gap:.125rem;padding:.125rem;display:inline-flex}.ui-shopping-week-nav__period{min-width:8.75rem;padding:0 var(--space-3);color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center;white-space:nowrap;line-height:2.25rem}.ui-shopping-current-week{padding-inline:var(--space-3)}.ui-shopping-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-shopping-sync{align-items:center;gap:var(--space-2);display:flex}.ui-shopping-sync:empty{display:none}.ui-shopping-sync .ui-badge,.ui-shopping-item__name .ui-badge{align-items:center;gap:var(--space-1);display:inline-flex}.ui-shopping-sync svg,.ui-shopping-item__name .ui-badge svg{width:.9rem;height:.9rem}.ui-shopping-spin{animation:.9s linear infinite ui-shopping-spin}.ui-shopping-manual{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) max-content;width:min(100%,42rem);display:grid}.ui-shopping-loading{justify-content:center;align-items:center;gap:var(--space-2);min-height:12rem;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);display:flex}.ui-shopping-loading svg{width:1.1rem;height:1.1rem;animation:.9s linear infinite ui-shopping-spin}.ui-shopping-groups{gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.ui-shopping-category__header{justify-content:space-between;align-items:end;gap:var(--space-3);border-bottom:1px solid var(--border);padding-bottom:var(--space-2);margin-bottom:var(--space-2);display:flex}.ui-shopping-category__header h2,.ui-shopping-category__header p{margin:0}.ui-shopping-category__header h2{color:var(--text-strong);font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);letter-spacing:0}.ui-shopping-category__header p{color:var(--text-muted);font-size:var(--font-size-xs)}.ui-shopping-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.ui-shopping-item{align-items:center;gap:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);min-height:3.75rem;padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr) minmax(15rem,.45fr) max-content;display:grid;position:relative}.ui-shopping-item[data-checked=true] .ui-shopping-item__name{color:var(--text-muted);text-decoration:line-through}.ui-shopping-item__check{align-items:center;gap:var(--space-2);cursor:pointer;grid-template-columns:2.25rem minmax(0,1fr);min-width:0;display:grid}.ui-shopping-item__check .ui-checkbox{width:1.35rem;height:1.35rem;accent-color:var(--primary);justify-self:center}.ui-shopping-item__main{gap:.25rem;min-width:0;display:grid}.ui-shopping-item__name{align-items:center;gap:var(--space-2);min-width:0;color:var(--text-strong);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1.25;display:flex}.ui-shopping-item__meta,.ui-shopping-item__recipes{align-items:center;gap:var(--space-2);min-width:0;color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);line-height:1.35;display:flex}.ui-shopping-item__meta span,.ui-shopping-item__recipes{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-shopping-item__quantities{gap:var(--space-2);grid-template-columns:repeat(3,minmax(4.5rem,1fr));align-items:end;display:grid}.ui-shopping-item__quantities label,.ui-shopping-item__planned,.ui-shopping-item__buy{gap:var(--space-1);min-width:0;display:grid}.ui-shopping-item__quantities span,.ui-shopping-item__planned span,.ui-shopping-item__buy span{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;line-height:1}.ui-shopping-item__planned strong,.ui-shopping-item__buy strong{overflow-wrap:anywhere;color:var(--text-strong);font-size:var(--font-size-sm);line-height:2rem}.ui-shopping-item__buy strong{color:var(--primary-strong)}.ui-shopping-item__quantities .ui-input{min-height:2rem;padding-inline:var(--space-2)}.ui-shopping-item__delete{color:var(--danger)}.ui-shopping-item[data-manual=true],.ui-shopping-groups[data-shopping-mode=true] .ui-shopping-item{grid-template-columns:minmax(0,1fr) max-content}.ui-shopping-item[data-manual=true] .ui-shopping-item__quantities,.ui-shopping-groups[data-shopping-mode=true] .ui-shopping-item__quantities,.ui-shopping-groups[data-shopping-mode=true] .ui-shopping-item__recipes{display:none}.ui-shopping-hidden{border-top:1px solid var(--border);margin-top:var(--space-2);padding-top:var(--space-3)}.ui-shopping-hidden summary{align-items:center;gap:var(--space-2);color:var(--text-muted);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);list-style:none;display:inline-flex}.ui-shopping-hidden summary::-webkit-details-marker{display:none}.ui-shopping-hidden__chevron{width:1rem;height:1rem;transition:transform .16s}.ui-shopping-hidden[open] .ui-shopping-hidden__chevron{transform:rotate(180deg)}.ui-shopping-hidden__list{gap:var(--space-1);margin:var(--space-3) 0 0;padding:0;list-style:none;display:grid}.ui-shopping-hidden__item{align-items:center;gap:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr) max-content;display:grid}.ui-shopping-hidden__item>span{gap:var(--space-1);min-width:0;display:grid}.ui-shopping-hidden__item strong{color:var(--text);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-shopping-hidden__item small{color:var(--text-muted);font-size:var(--font-size-2xs)}.ui-household-page{gap:var(--space-5)}.ui-household-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));display:grid}.ui-household-list,.ui-household-form{gap:var(--space-3);display:grid}.ui-household-form{gap:var(--space-4)}.ui-household-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,1fr) max-content;display:grid}.ui-household-identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.ui-household-identity>span,.ui-household-row>span{min-width:0}.ui-household-identity strong,.ui-household-invitation-label{align-items:center;gap:var(--space-2);overflow-wrap:anywhere;display:flex}.ui-household-identity small,.ui-household-row small,.ui-household-muted{color:var(--text-muted)}.ui-household-muted{margin:0}.ui-household-actions,.ui-household-dialog-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-planning-member-selector{gap:var(--space-1);min-width:11.25rem;display:grid}@keyframes ui-shopping-spin{to{transform:rotate(360deg)}}@media (max-width:760px){.ui-shopping-page{gap:var(--space-3)}.ui-shopping-header{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.ui-shopping-header .ui-dashboard-page__eyebrow{font-size:var(--font-size-2xs)}.ui-shopping-header .ui-dashboard-page__intro h1{font-size:var(--font-size-2xl)}.ui-shopping-header .ui-dashboard-page__intro p{font-size:var(--font-size-xs)}.ui-shopping-header__actions,.ui-shopping-week-nav{width:100%}.ui-shopping-week-nav{justify-content:space-between}.ui-shopping-week-nav__period{min-width:0}.ui-shopping-toolbar{align-items:stretch}.ui-shopping-toolbar .ui-button{width:100%}.ui-shopping-manual{grid-template-columns:minmax(0,1fr) max-content}.ui-shopping-category__header{z-index:1;background:var(--background);padding-top:var(--space-2);position:sticky;top:0}.ui-shopping-category__header h2{font-size:var(--font-size-lg)}.ui-shopping-item,.ui-shopping-item[data-manual=true],.ui-shopping-groups[data-shopping-mode=true] .ui-shopping-item{gap:var(--space-2);min-height:3.75rem;padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr) max-content}.ui-shopping-item__quantities{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding-left:2.25rem}.ui-shopping-item__delete{position:static}.ui-shopping-hidden{padding-bottom:var(--space-8)}.ui-shopping-hidden__item{gap:var(--space-2)}.ui-household-grid{gap:var(--space-3)}.ui-household-row{grid-template-columns:minmax(0,1fr)}.ui-household-actions{justify-content:flex-start}}@media print{.ui-shopping-header__actions,.ui-shopping-toolbar,.ui-shopping-manual,.ui-shopping-sync,.ui-shopping-item__quantities,.ui-shopping-item__delete{display:none!important}.ui-shopping-page,.ui-shopping-groups{display:block}.ui-shopping-category{break-inside:avoid;margin-bottom:1rem}}img{max-width:100%;display:block}.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}
