.patient-portal{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.patient-portal__header{margin-bottom:var(--space-4)}.patient-portal__list{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.patient-portal__item{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-3);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2);text-decoration:none;color:inherit;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.patient-portal__item:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border) 65%);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.patient-portal__icon{width:44px;height:44px;border-radius:16px;background:color-mix(in srgb,var(--primary) 12%,var(--surface) 88%);display:inline-flex;align-items:center;justify-content:center;color:var(--primary)}.patient-portal__content h2{margin:0 0 .2rem;font-size:1.05rem}.patient-portal__content p{margin:0;color:var(--muted);font-size:.9rem}.portal-care{--tone-success:#2c8a4b;--tone-warning:#c98a14;--tone-danger:#b2412e;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-5)}.portal-care__card{padding:var(--space-5);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface)}.portal-care__title{display:flex;align-items:center;gap:.5rem;margin:0 0 var(--space-3);font-family:var(--font-title);font-size:1.2rem}.portal-care__title svg{color:var(--primary)}.portal-care__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.portal-care__list li{display:flex;flex-direction:column;padding:.5rem 0;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,var(--surface) 40%)}.portal-care__list li:last-child{border-bottom:none}.portal-care__list span{font-size:.84rem;color:var(--muted)}.portal-care__chips{display:flex;flex-wrap:wrap;gap:.5rem}.portal-care__chips .symptom-chip{cursor:default}.portal-care__hint{margin:var(--space-3) 0 0;font-size:.82rem;color:var(--muted)}.patient-consultations{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.patient-consultations__header h1{margin:0}.patient-consultations__header p{margin:.35rem 0 0;color:var(--muted)}.patient-consultations__highlight{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--r-md);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border) 70%);background:color-mix(in srgb,var(--primary) 10%,var(--surface) 90%)}.patient-consultations__highlight strong{display:block;margin-top:.3rem}.patient-consultations__highlight p{margin:.3rem 0 0;color:var(--text-2)}.patient-consultations__eyebrow{display:inline-flex;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.patient-consultations__list{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.patient-consultations__item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-3);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-2)}.patient-consultations__item-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:.5rem}.patient-consultations__item-top h2{margin:0;font-size:1rem}.patient-consultations__meta{display:flex;flex-wrap:wrap;gap:.85rem;color:var(--text-2);font-size:.92rem}.patient-consultations__meta span{display:inline-flex;align-items:center;gap:.4rem}.patient-consultations__location{margin:.6rem 0 0;color:var(--muted)}.patient-consultations__item-actions{display:flex;align-items:center;justify-content:flex-end}.patient-consultations__hint{max-width:18rem;text-align:right;color:var(--muted);font-size:.88rem}.patient-consultations__empty{padding:var(--space-4);border-radius:var(--r-md);border:1px dashed var(--border);color:var(--muted);text-align:center}@media (max-width:760px){.patient-consultations__highlight,.patient-consultations__item{grid-template-columns:minmax(0,1fr)}.patient-consultations__item-actions{justify-content:flex-start}.patient-consultations__hint{max-width:none;text-align:left}}.patient-assessments{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.patient-assessments__layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.patient-assessments__sidebar{padding:1.2rem}.patient-assessment-item,.patient-assessments__list,.patient-assessments__sidebar{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.patient-assessment-item{width:100%;padding:1rem;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);text-align:left;box-shadow:var(--shadow-xs);transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.patient-assessment-item:hover{border-color:color-mix(in srgb,var(--primary) 28%,var(--border) 72%);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.patient-assessment-item[data-active=true]{border-color:color-mix(in srgb,var(--primary) 46%,var(--border) 54%);background:color-mix(in srgb,var(--primary) 7%,var(--surface) 93%);box-shadow:var(--shadow-sm)}.patient-assessment-item__top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2)}.patient-assessment-item__grid{display:grid;grid-gap:.65rem;gap:.65rem}.patient-assessment-item__metric{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:.5rem;gap:.5rem;align-items:center;color:var(--text-2);font-size:.92rem}.patient-assessment-item__metric svg{color:var(--primary)}.patient-assessment-item__summary{margin:0;color:var(--text-2);font-size:.92rem}.patient-assessments__content{min-width:0}@media (max-width:960px){.patient-assessments__layout{grid-template-columns:1fr}}.patient-meal-plan{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.patient-plan-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.patient-plan-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-3);gap:var(--space-3);align-items:end}.patient-plan-select{display:grid;grid-gap:.35rem;gap:.35rem;min-width:240px;flex:1 1}.patient-plan-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:flex-start}.segmented-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--r-pill);overflow-x:auto;overflow-y:hidden;background:var(--surface);max-width:100%;width:-moz-fit-content;width:fit-content}.segmented-toggle[data-scrollable=true]{width:100%}.segmented-toggle::-webkit-scrollbar{height:6px}.segmented-toggle::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 35%,var(--surface) 65%);border-radius:var(--r-pill)}.segmented-toggle button{border:none;background:transparent;padding:.45rem .85rem;cursor:pointer;font-weight:600;color:var(--text-2);transition:background .12s ease,color .12s ease;white-space:nowrap}.segmented-toggle button[data-active=true]{background:var(--primary);color:var(--primary-contrast)}.patient-plan-summary{display:flex;justify-content:flex-start}.patient-day-card{border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-4);background:var(--surface);display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.assessment-header,.patient-day-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.assessment-header{flex-wrap:wrap;margin-bottom:var(--space-3)}.assessment-header .breadcrumb{margin-bottom:0}.assessment-delete{margin-left:auto}.assessment-objective-row{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start}.assessment-title-row{gap:var(--space-2)}.assessment-title-row,.skinfold-header{display:flex;align-items:center;flex-wrap:wrap}.skinfold-header{gap:var(--space-3);margin:0 0 var(--space-3)}.skinfold-header h2{margin:0}.skinfold-header__title-row{flex-wrap:wrap}.skinfold-header__controls,.skinfold-header__title-row{display:inline-flex;align-items:center;gap:var(--space-2)}.skinfold-header__controls{flex-wrap:nowrap;white-space:nowrap}.skinfold-header__select{min-width:11rem;flex:0 0 auto}.skinfold-header__hint{justify-content:center;width:1.9rem;height:1.9rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted-foreground);box-shadow:var(--shadow-xs);flex:0 0 auto}.metric-info,.skinfold-header__hint{display:inline-flex;align-items:center}.metric-info{position:relative}.metric-info__trigger{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted-foreground);box-shadow:var(--shadow-xs)}.metric-info__panel{position:absolute;top:calc(100% + .5rem);right:0;z-index:20;min-width:17rem;padding:.9rem;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary) 22%);border-radius:1.1rem;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 88%,var(--surface-2) 12%),var(--surface) 100%);box-shadow:var(--shadow-lg);display:grid;grid-gap:.75rem;gap:.75rem}.metric-info__notes,.metric-info__section{display:grid;grid-gap:.45rem;gap:.45rem}.metric-info__note{margin:0;padding:.55rem .65rem;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary) 22%);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 74%,var(--surface) 26%);font-size:.72rem;font-weight:400;line-height:1.5;color:var(--muted-foreground)}.metric-info__section-title{font-size:.85rem}.metric-info__table{display:grid;grid-gap:.35rem;gap:.35rem}.metric-info__row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:1rem;gap:1rem;padding:.45rem .55rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 82%,var(--primary) 18%);font-size:.85rem}.metric-info__row[data-active=true]{border:1px solid color-mix(in srgb,var(--primary) 42%,var(--border) 58%);background:color-mix(in srgb,var(--surface) 68%,var(--primary) 32%)}.report-projection-note{margin-top:1rem}.assessment-notes-timeline{display:grid;margin-bottom:.9rem}.assessment-notes-timeline__item{position:relative;display:grid;grid-template-columns:1.1rem 1fr;grid-gap:.75rem;gap:.75rem;padding-bottom:.9rem}.assessment-notes-timeline__item:before{content:"";position:absolute;top:.35rem;left:.47rem;bottom:-.35rem;width:2px;background:var(--border)}.assessment-notes-timeline__item:last-child:before{display:none}.assessment-notes-timeline__item:last-child{padding-bottom:.75rem}.assessment-notes-timeline__marker{position:relative;z-index:1;width:1.1rem;height:1.1rem;margin-top:.15rem;border-radius:50%;border:2px solid var(--primary);background:var(--surface)}.assessment-notes-timeline__item:last-child .assessment-notes-timeline__marker{background:var(--primary)}.assessment-notes-timeline__content{padding:.6rem .8rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 70%,var(--surface) 30%)}.assessment-notes-timeline__date{display:block;margin-bottom:.2rem;font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.assessment-notes-timeline__text{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.assessment-previous-note{margin-bottom:.65rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-2) 70%,var(--surface) 30%);color:var(--muted);font-size:.9rem;line-height:1.5}.assessment-photo-card{position:relative}.assessment-photo-card__header{align-items:flex-start;gap:var(--space-3)}.assessment-photo-card__summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:.75rem;color:var(--muted);font-size:.9rem;flex-wrap:wrap}.assessment-photo-card__limit{color:color-mix(in srgb,#bb4037 84%,var(--foreground) 16%)}.assessment-photo-card__actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.assessment-photo-card__split-action{position:relative;display:inline-flex;align-items:stretch}.assessment-photo-card__main-action{border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:var(--shadow-sm)}.assessment-photo-card__toggle{border-top-left-radius:0;border-bottom-left-radius:0;padding-inline:.8rem;border-left:1px solid color-mix(in srgb,var(--primary) 74%,#000 26%);box-shadow:var(--shadow-sm)}.assessment-photo-card__menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:15rem;display:none;flex-direction:column;gap:.15rem;padding:.45rem;border:1px solid color-mix(in srgb,var(--border) 74%,var(--primary) 26%);border-radius:1rem;background:hsla(30,50%,98%,.9);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:25}.assessment-photo-card__menu[data-open=true]{display:flex}.assessment-photo-card__menu button{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .8rem;border:0;border-radius:.8rem;background:transparent;color:var(--text);font-weight:600;text-align:left;cursor:pointer}.assessment-photo-card__menu button:hover{background:color-mix(in srgb,var(--surface-2) 76%,var(--surface) 24%)}.assessment-photo-card__menu button:disabled{opacity:.5;cursor:not-allowed}.assessment-photo-card__input{display:none}.assessment-photo-card__notice{margin-top:.25rem;margin-bottom:1rem}.assessment-photo-card__empty{margin-top:1rem}.assessment-photo-card__spinner{animation:assessment-photo-spin .9s linear infinite}.assessment-photo-camera{position:fixed;inset:0;z-index:66;display:grid;place-items:center;padding:.75rem}.assessment-photo-camera__backdrop{position:absolute;inset:0;border:0;background:rgba(14,10,8,.78)}.assessment-photo-camera__content{position:relative;z-index:1;display:grid;grid-gap:.75rem;gap:.75rem;width:min(38rem,100%);max-height:calc(100svh - 1.5rem)}.assessment-photo-camera__stage{display:grid}.assessment-photo-camera__frame{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 82%,var(--primary) 18%);border-radius:1.1rem;background:#0f0d0c;aspect-ratio:16/10;min-height:min(82svh,44rem);max-height:calc(100svh - 1.5rem)}.assessment-photo-camera__video{display:block;width:100%;height:100%;object-fit:contain;background:#0f0d0c}.assessment-photo-camera__overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.assessment-photo-camera__hud{position:absolute;left:0;right:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem}.assessment-photo-camera__hud--top{top:0;background:linear-gradient(180deg,rgba(10,8,7,.54),rgba(10,8,7,0))}.assessment-photo-camera__hud--bottom{bottom:0;align-items:flex-end;background:linear-gradient(0deg,rgba(10,8,7,.68),rgba(10,8,7,0))}.assessment-photo-camera__hud-copy{display:grid;grid-gap:.2rem;gap:.2rem;max-width:min(18rem,calc(100% - 4rem));padding:.7rem .8rem;border:1px solid hsla(0,0%,100%,.14);border-radius:1rem;background:rgba(22,17,15,.56);color:#fff6f0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.assessment-photo-camera__hud-copy p{margin:0;color:rgba(255,247,241,.82)}.assessment-photo-camera__capture-wrap,.assessment-photo-camera__hud-left,.assessment-photo-camera__hud-right{display:flex;align-items:flex-end;gap:.65rem;min-width:0}.assessment-photo-camera__hud-left{position:relative}.assessment-photo-camera__capture-wrap{justify-content:center;flex:1 1}.assessment-photo-camera__capture-button.btn-icon,.assessment-photo-camera__hud-icon.btn-icon{background:hsla(28,48%,95%,.16);border-color:hsla(0,0%,100%,.16);color:rgba(255,248,242,.98);box-shadow:0 10px 30px rgba(15,10,8,.2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.assessment-photo-camera__capture-button.btn-icon:hover,.assessment-photo-camera__hud-icon.btn-icon:hover{background:hsla(28,48%,95%,.24)}.assessment-photo-camera__capture-button.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;padding:0;border-radius:999px}.assessment-photo-camera__capture-button.btn-icon svg{width:1.5rem;height:1.5rem}.assessment-photo-camera__overlay-panel{position:absolute;left:.85rem;bottom:5.2rem;display:grid;grid-gap:.7rem;gap:.7rem;min-width:min(16rem,calc(100vw - 2rem));padding:.8rem;border:1px solid hsla(0,0%,100%,.14);border-radius:1rem;background:rgba(22,17,15,.72);color:#fff6f0;box-shadow:0 14px 34px rgba(7,4,3,.26);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.assessment-photo-camera__overlay-toggle{display:inline-flex;align-items:center;gap:.55rem;font-size:.88rem;color:#fff6f0}.assessment-photo-camera__overlay-range{display:grid;grid-gap:.45rem;gap:.45rem;font-size:.88rem;color:#fff6f0}.assessment-photo-camera__take-badge{display:inline-flex;align-items:center;padding:.32rem .68rem;border-radius:999px;background:color-mix(in srgb,var(--primary) 18%,hsla(0,0%,100%,.06) 82%);border:1px solid color-mix(in srgb,var(--primary) 34%,hsla(0,0%,100%,.14) 66%);color:#fff7f2;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.assessment-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-top:1rem}@media (max-width:1080px){.assessment-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.assessment-photo-item{display:grid;grid-gap:.65rem;gap:.65rem;padding:.65rem;border:1px solid color-mix(in srgb,var(--border) 86%,var(--primary) 14%);border-radius:1rem;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,var(--surface-2) 4%),color-mix(in srgb,var(--surface) 92%,var(--surface-2) 8%));box-shadow:var(--shadow-xs)}.assessment-photo-item__thumb{position:relative;overflow:hidden;width:100%;min-height:24rem;border:1px solid color-mix(in srgb,var(--border) 82%,var(--primary) 18%);border-radius:.9rem;background:linear-gradient(180deg,#16110f,#0d0908);aspect-ratio:9/16}.assessment-photo-item__preview-trigger{display:grid;place-items:center;width:100%;height:100%}.assessment-photo-item__image{display:block;width:100%;height:100%;object-fit:contain}.assessment-photo-item__overlay{position:absolute;left:0;right:0;z-index:1;display:flex;padding:.7rem;pointer-events:none}.assessment-photo-item__overlay--top{top:0;justify-content:flex-end;align-items:flex-start;background:linear-gradient(180deg,rgba(10,8,7,.38),rgba(10,8,7,0))}.assessment-photo-item__overlay--bottom{bottom:0;align-items:flex-end;justify-content:space-between;gap:.75rem;background:linear-gradient(0deg,rgba(10,8,7,.54),rgba(10,8,7,0))}.assessment-photo-item__placeholder{display:grid;place-items:center;grid-gap:.45rem;gap:.45rem;width:100%;height:100%;padding:1rem;color:var(--muted-foreground);text-align:center;font-size:.9rem}.assessment-photo-item__body{display:grid;grid-gap:.35rem;gap:.35rem}.assessment-photo-item__toolbar{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap;pointer-events:auto}.assessment-photo-item__saving{display:inline-block;margin-top:.35rem;color:var(--muted)}.assessment-photo-item__caption{display:grid;grid-gap:.35rem;gap:.35rem}.assessment-photo-item__badge{display:inline-flex;align-items:center;padding:.28rem .62rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border) 66%);color:color-mix(in srgb,var(--primary) 70%,var(--foreground) 30%);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;pointer-events:none;box-shadow:none}.assessment-photo-item__badge,.assessment-photo-item__badge.is-comparison{background:color-mix(in srgb,var(--primary) 18%,var(--surface) 82%)}.assessment-photo-item__overlay-icon.btn-icon{background:hsla(28,48%,95%,.16);border-color:hsla(0,0%,100%,.16);color:rgba(255,248,242,.98);box-shadow:0 10px 30px rgba(15,10,8,.18);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.assessment-photo-item__overlay-icon.btn-icon:hover{background:hsla(28,48%,95%,.22)}.assessment-photo-item__overlay-icon--danger.btn-icon,.assessment-photo-item__overlay-icon--danger.btn-icon:hover{background:rgba(140,65,53,.84);border-color:hsla(0,0%,100%,.18);color:#fff3ef}.assessment-photo-item__actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:flex-end;pointer-events:auto}.assessment-photo-item__overlay-action.btn{background:hsla(28,48%,95%,.16);border-color:hsla(0,0%,100%,.16);color:rgba(255,248,242,.98);box-shadow:0 10px 30px rgba(15,10,8,.18);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.assessment-photo-item__overlay-action.btn:hover{background:hsla(28,48%,95%,.22)}.assessment-photo-item--dragging{box-shadow:var(--shadow-lg)}.assessment-photo-modal{width:min(42rem,calc(100vw - 2rem))}.assessment-photo-modal--wide{width:min(72rem,calc(100vw - 2rem))}.assessment-photo-reference-preview{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:6.5rem minmax(0,1fr);align-items:center;padding:.85rem;border:1px solid color-mix(in srgb,var(--border) 84%,var(--primary) 16%);border-radius:1rem;background:color-mix(in srgb,var(--surface) 88%,var(--surface-2) 12%)}.assessment-photo-reference-preview__thumb{overflow:hidden;border-radius:.8rem;aspect-ratio:4/5}.assessment-photo-reference-preview__thumb img{display:block;width:100%;height:100%;object-fit:contain;background:#0f0d0c}.assessment-photo-reference-preview__copy{display:grid;grid-gap:.15rem;gap:.15rem}.assessment-photo-reference-preview__copy small{color:var(--muted)}.assessment-photo-progression,.assessment-photo-progression__compare,.assessment-photo-progression__controls{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.assessment-photo-progression__controls{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.assessment-photo-progression__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.assessment-photo-progression__item{display:grid;grid-gap:.55rem;gap:.55rem;padding:.7rem;border:1px solid color-mix(in srgb,var(--border) 84%,var(--primary) 16%);border-radius:1rem;background:var(--surface);text-align:left}.assessment-photo-progression__item[data-active=true]{border-color:color-mix(in srgb,var(--primary) 48%,var(--border) 52%);box-shadow:var(--shadow-sm)}.assessment-photo-progression__item img{display:block;width:100%;aspect-ratio:4/5;border-radius:.8rem;object-fit:contain;background:#0f0d0c}.assessment-photo-progression__item small,.assessment-photo-progression__item strong{display:block}.assessment-photo-progression__compare-copy small,.assessment-photo-progression__item small{color:var(--muted)}.assessment-photo-progression__compare-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-photo-progression__compare-card{display:grid;grid-gap:.8rem;gap:.8rem;padding:.9rem;border:1px solid color-mix(in srgb,var(--border) 84%,var(--primary) 16%);border-radius:1rem;background:var(--surface)}.assessment-photo-progression__compare-card img{display:block;width:100%;max-height:62vh;border-radius:.9rem;object-fit:contain;background:#0f0d0c}.assessment-photo-progression__compare-copy{display:grid;grid-gap:.2rem;gap:.2rem}.assessment-photo-preview{position:fixed;inset:0;z-index:70;display:block}.assessment-photo-preview__backdrop{position:absolute;inset:0;border:0;background:rgba(14,10,8,.72)}.assessment-photo-preview__content{position:relative;z-index:1;width:100vw;height:100vh;padding:1rem}.assessment-photo-preview__frame{display:grid;place-items:center;width:100%;height:100%}.assessment-photo-preview__header{position:absolute;top:1rem;right:1rem;left:1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;grid-gap:var(--space-3);gap:var(--space-3);pointer-events:none}.assessment-photo-preview__header-copy{display:grid;grid-gap:.2rem;gap:.2rem;max-width:min(28rem,calc(100vw - 7rem));padding:.75rem .9rem;border:1px solid hsla(0,0%,100%,.14);border-radius:1rem;background:rgba(22,17,15,.62);color:#fff6f0;box-shadow:0 12px 30px rgba(7,4,3,.28);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto}.assessment-photo-preview__header p{margin:0;color:rgba(255,247,241,.82)}.assessment-photo-preview__close.btn-icon{background:rgba(22,17,15,.62);border-color:hsla(0,0%,100%,.14);color:#fff6f0;box-shadow:0 12px 30px rgba(7,4,3,.28);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto}.assessment-photo-preview__close.btn-icon:hover{background:rgba(34,27,24,.76)}.assessment-photo-preview__image{display:block;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);margin:0 auto;border-radius:.9rem;object-fit:contain}@keyframes assessment-photo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:720px){.assessment-header{align-items:flex-start}.assessment-delete{align-self:flex-end;margin-left:0}.assessment-objective-row{grid-template-columns:1fr}.assessment-objective-row__activity,.assessment-objective-row__height,.assessment-objective-row__objective,.assessment-objective-row__weight{grid-column:span 1}.skinfold-header{align-items:flex-start}.assessment-photo-card__actions{width:100%;justify-content:flex-start}.assessment-photo-card__split-action{width:100%}.assessment-photo-card__main-action,.assessment-photo-card__toggle{flex-shrink:0}.assessment-photo-card__summary,.assessment-photo-grid,.assessment-photo-progression__hero{grid-template-columns:1fr}.assessment-photo-item__thumb{min-height:min(70svh,28rem)}.assessment-photo-item__overlay--bottom{flex-direction:column-reverse;align-items:stretch}.assessment-photo-camera{padding:.4rem}.assessment-photo-camera__content{width:100%;max-height:calc(100svh - .8rem)}.assessment-photo-camera__frame{min-height:calc(100svh - .8rem);max-height:calc(100svh - .8rem);border-radius:1rem}.assessment-photo-camera__hud{padding:.7rem}.assessment-photo-camera__hud-copy{max-width:calc(100% - 3.6rem);padding:.6rem .72rem}.assessment-photo-camera__hud-copy p{font-size:.8rem}.assessment-photo-camera__overlay-panel{left:.7rem;right:.7rem;bottom:5rem;min-width:0}.assessment-photo-camera__take-badge{font-size:.68rem}.assessment-photo-camera__take-badge,.assessment-photo-item__badge{display:none}.assessment-photo-preview__content{padding:.75rem}.assessment-photo-preview__header{top:.75rem;right:.75rem;left:.75rem}.assessment-photo-preview__image{max-width:calc(100vw - 1.5rem);max-height:calc(100vh - 1.5rem)}.assessment-photo-camera__stage,.assessment-photo-progression__compare-grid{grid-template-columns:1fr}.assessment-photo-camera__frame{min-height:min(72svh,32rem)}.assessment-photo-reference-preview{grid-template-columns:1fr}.assessment-photo-preview{padding:1rem}.metric-info__panel{right:auto;left:0;min-width:min(18rem,calc(100vw - 4rem))}}.assessment-header-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.assessment-saved{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--muted)}.assessment-saved svg{color:#2c8a4b}.assessment-subtitle__compare{color:var(--muted)}.assessment-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);align-items:start;margin-bottom:var(--space-5)}.assessment-layout__main{min-width:0;display:flex;flex-direction:column;gap:var(--space-4)}.assessment-layout__main>.card+.card{margin-top:0}.assessment-step{scroll-margin-top:calc(var(--topbar-height) + var(--space-4))}.assessment-step__hint{font-size:.78rem;color:var(--muted)}@media (min-width:1320px){.assessment-layout{grid-template-columns:190px minmax(0,1fr) 270px}.assessment-results,.assessment-steps{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-height) + var(--space-4))}}@media (min-width:900px) and (max-width:1319px){.assessment-layout{grid-template-columns:minmax(0,1fr) 260px}.assessment-steps{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}.assessment-results{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-height) + var(--space-4))}}.assessment-steps{display:flex;flex-direction:column;gap:2px;padding:.4rem;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface)}.assessment-steps__item{display:flex;align-items:center;gap:.6rem;padding:.55rem .6rem;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text);font:inherit;font-size:.88rem;font-weight:500;text-align:left;cursor:pointer}.assessment-steps__item:hover{background:var(--surface-2);color:var(--text)}.assessment-steps__item[data-active=true],.assessment-steps__item[data-active=true]:hover{background:color-mix(in srgb,var(--primary) 12%,var(--surface) 88%);font-weight:600}.assessment-steps__item[data-hidden=true]{color:var(--muted)}.assessment-steps__dot{width:20px;height:20px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);background:var(--border);color:#fff}.assessment-steps__item[data-active=true] .assessment-steps__dot{background:var(--primary)}.assessment-steps__dot[data-done=true],.assessment-steps__item[data-active=true] .assessment-steps__dot[data-done=true]{background:#2c8a4b}.assessment-steps__item[data-hidden=true] .assessment-steps__dot{background:var(--surface-2);color:var(--muted)}.measure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.measure-field{display:flex;flex-direction:column;gap:.3rem}.measure-field__previous{font-size:.75rem;color:var(--muted)}.measure-field__delta{color:var(--text-2)}.assessment-gestation-notice{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--r-md);border:1px solid color-mix(in srgb,#c98a14 35%,var(--border) 65%);background:color-mix(in srgb,#c98a14 10%,var(--surface) 90%);color:var(--text-2);font-size:.88rem}.assessment-gestation-notice svg{flex-shrink:0;color:#8a5d00}.assessment-gestation-notice__link{padding:0;border:none;background:none;color:var(--primary);font:inherit;font-weight:600;cursor:pointer}.assessment-gestation-notice__link:hover{color:var(--primary);text-decoration:underline}.assessment-results{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface)}.assessment-results__title{margin:0 0 .25rem;font-family:var(--font-title);font-size:1.15rem}.assessment-results__item{--result-tone:var(--text);display:flex;flex-direction:column;padding:.6rem .75rem;border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface-2) 45%,var(--surface) 55%)}.assessment-results__item[data-tone=success]{--result-tone:#2c8a4b}.assessment-results__item[data-tone=warning]{--result-tone:#c98a14}.assessment-results__item[data-tone=danger]{--result-tone:#b2412e}.assessment-results__item:not([data-tone=neutral]){background:color-mix(in srgb,var(--result-tone) 10%,var(--surface) 90%)}.assessment-results__label{font-size:.75rem;font-weight:600;color:var(--muted)}.assessment-results__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.assessment-results__value{font-size:1.1rem;font-weight:700;color:color-mix(in srgb,var(--result-tone) 85%,var(--text) 15%)}.assessment-results__tag{font-size:.75rem;font-weight:600;text-align:right;color:color-mix(in srgb,var(--result-tone) 80%,var(--text) 20%)}.assessment-results__note{margin:.25rem 0 0;font-size:.72rem;color:var(--muted)}.assessment-page{display:flex;flex-direction:column}.recipe-photo-preview{margin-top:var(--space-3);display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.recipe-photo-preview img{max-width:220px;border-radius:var(--r-md);border:1px solid var(--border)}.recipe-editor__yield{max-width:200px}.recipe-editor__ingredients{display:flex;flex-direction:column;gap:8px}.recipe-editor__ingredient{display:flex;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);min-width:0;transition:border-color .12s ease,box-shadow .12s ease}.recipe-editor__ingredient:focus-within{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.recipe-editor__ingredient[data-empty=true]{border-style:dashed;border-color:color-mix(in srgb,var(--muted) 40%,var(--border));background:color-mix(in srgb,var(--surface-2) 40%,var(--surface))}.recipe-editor__ingredient[data-unmatched=true]:not(:focus-within){border-color:color-mix(in srgb,#c2412f 40%,var(--border))}.recipe-editor__thumb{flex-shrink:0;width:38px;height:38px;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--muted)}.recipe-editor__thumb[data-empty=true]{background:transparent;color:var(--primary)}.recipe-editor__thumb img{width:100%;height:100%;object-fit:cover}.recipe-editor__ingredient-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.recipe-editor__search{position:relative}.recipe-editor__search-box{display:flex;align-items:center;gap:6px;min-height:38px;color:var(--muted)}.editor-drawer .recipe-editor__search-box .input{flex:1 1;border:none;box-shadow:none;background:transparent;padding:8px 0;font-size:15px;font-weight:600;color:var(--text)}.editor-drawer .recipe-editor__ingredient[data-empty=true] .recipe-editor__search-box .input{font-weight:500}.recipe-editor__search-clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.recipe-editor__ingredient:not(:hover):not(:focus-within) .recipe-editor__search-clear{opacity:0}.recipe-editor__search-clear:hover{background:var(--surface-2)}.recipe-editor__search-clear:focus-visible{outline:none;box-shadow:var(--focus)}.recipe-editor__results{position:absolute;z-index:6;top:calc(100% + 4px);left:-48px;right:-44px;max-height:280px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md);animation:context-menu-in .12s ease-out}.recipe-editor__result{display:flex;align-items:center;gap:10px;padding:6px 8px;border:none;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.recipe-editor__result .recipe-editor__thumb{width:32px;height:32px;border-radius:8px}.recipe-editor__result:focus-visible,.recipe-editor__result:hover{background:var(--surface-2);outline:none}.recipe-editor__result[aria-selected=true]{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.recipe-editor__result-text{display:flex;flex-direction:column;min-width:0}.recipe-editor__result-name{font-size:14px;font-weight:600}.recipe-editor__result-hint,.recipe-editor__result-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-editor__result-hint{font-size:12px;color:var(--muted)}.recipe-editor__results-empty{padding:12px 8px;font-size:13px;color:var(--muted);text-align:center}.recipe-editor__ingredient-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 10px;margin-top:-6px;font-size:12px;color:var(--muted)}.recipe-editor__ingredient-meta span:last-child:not(:first-child){font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recipe-editor__ingredient-meta[data-tone=warning]{color:#b2412e}:root[data-theme=graphite-forest] .recipe-editor__ingredient-meta[data-tone=warning],:root[data-theme=midnight-indigo] .recipe-editor__ingredient-meta[data-tone=warning]{color:#f08a7a}.recipe-editor__quantity{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.recipe-editor__amount{width:120px}.recipe-editor__portion{display:grid;grid-template-columns:minmax(0,1fr) 130px;grid-gap:8px;gap:8px}.recipe-editor__portion--single{grid-template-columns:130px}.recipe-editor__remove,.recipe-editor__remove-spacer{flex-shrink:0;width:34px;height:34px;margin-top:2px}.editor-drawer .recipe-editor__remove:hover:not(:disabled){background:color-mix(in srgb,#d05a4a 12%,var(--surface))}.editor-drawer .recipe-editor__instructions{min-height:120px;font:400 14px var(--font-body);resize:vertical;line-height:1.5}.editor-nutrient-card[data-readonly=true]:focus-within{border-color:var(--border);box-shadow:none}.recipe-content-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.recipe-content-tags[data-size=sm]{gap:4px}.recipe-content-tags[data-size=sm] .allergen-chip{padding:2px 8px;border-width:1px;font-size:11px}.allergen-chip[data-tone=neutral]{background:var(--surface-2);border-color:var(--border);color:var(--text-2)}.recipe-detail__contains{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.recipe-detail__contains-label{font-size:12px;font-weight:600;color:var(--text-2)}@media (max-width:640px){.recipe-editor__yield{max-width:none}.recipe-editor__ingredient{gap:8px;padding:8px}.recipe-editor__results{left:-46px;right:-42px}.recipe-editor__portion{grid-template-columns:minmax(0,1fr) 110px}.recipe-editor__portion--single{grid-template-columns:110px}}.recipes-page{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.recipes-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.recipes-page__header h1{margin:0;font-size:1.75rem}.recipes-page__subtitle{margin:2px 0 0;color:var(--muted);font-size:.8125rem}.recipes-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.recipes-toolbar__spacer{flex:1 1}.recipes-search{flex:1 1 280px;max-width:480px;min-width:0;display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);cursor:text;transition:border-color .16s ease,box-shadow .16s ease}.recipes-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.recipes-search input{flex:1 1;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font:400 .875rem var(--font-body)}.recipes-search input::placeholder{color:var(--muted)}.recipes-segmented{display:flex;padding:3px;border-radius:10px;background:var(--surface-2)}.recipes-segmented__item{padding:6px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:600 .8125rem var(--font-body);white-space:nowrap;cursor:pointer;transition:background .16s ease,box-shadow .16s ease}.recipes-segmented__item:hover{background:color-mix(in srgb,var(--surface) 55%,transparent)}.recipes-segmented__item.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.recipes-segmented__item--icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:30px;padding:0}.recipe-card:focus-visible,.recipes-chip:focus-visible,.recipes-list__row:focus-visible,.recipes-segmented__item:focus-visible{outline:2px solid var(--focus,var(--primary));outline-offset:2px}.recipes-chips{display:flex;gap:6px;flex-wrap:wrap}.recipes-chip{padding:6px 12px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text-2);font:600 .75rem var(--font-body);cursor:pointer;transition:border-color .16s ease,background .16s ease}.recipes-chip:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}.recipes-chip.is-active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.recipes-layout{display:flex;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.recipes-layout__main{flex:3 1 560px;min-width:0;display:flex;flex-direction:column;gap:var(--space-3)}.recipe-photo{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--surface-2);color:var(--muted)}.recipe-photo img{width:100%;height:100%;object-fit:cover;display:block}.recipe-photo--empty svg{opacity:.8}.recipe-photo--thumb{width:36px;height:36px;border-radius:8px;flex-shrink:0}.recipe-owner{font-size:.6875rem;font-weight:600;color:var(--muted)}.recipe-owner--mine{color:var(--primary)}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:14px;gap:14px}.recipe-card{display:flex;flex-direction:column;padding:0;overflow:hidden;text-align:left;border:1.5px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.recipe-card:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:var(--shadow-md)}.recipe-card.is-selected{border-color:var(--primary)}.recipe-card__media{position:relative;width:100%}.recipe-card__media .recipe-photo{aspect-ratio:16/10;width:100%}.recipe-card__badge{position:absolute;left:8px;bottom:8px;padding:2px 8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--surface) 85%,transparent);color:var(--muted);font-size:.6875rem;font-weight:600}.recipe-card__body{width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;padding:12px 14px 14px}.recipe-card__name{font-weight:700;line-height:1.3}.recipe-card__meta{margin-top:2px;color:var(--muted);font-size:.75rem}.recipe-card__nutrition{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.recipe-card__nutrition strong{font-size:1.0625rem}.recipe-card__nutrition small{color:var(--muted);font-size:.75rem}.recipe-card__macros{color:var(--muted);font-size:.6875rem;white-space:nowrap}.recipes-list{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.recipes-list__inner{min-width:640px;font-size:.8125rem}.recipes-list__row{display:grid;grid-template-columns:minmax(220px,2fr) 80px 100px 70px minmax(130px,1fr);align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);cursor:pointer;transition:background .16s ease}.recipes-list__row:last-child{border-bottom:0}.recipes-list__row>div{padding:10px 8px;min-width:0}.recipes-list__row>div:first-child{padding-left:16px}.recipes-list__row>div:last-child{padding-right:16px}.recipes-list__row:hover{background:var(--surface-2)}.recipes-list__row.is-selected{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.recipes-list__row--head{border-bottom:1px solid var(--border);color:var(--muted);font-weight:600;cursor:default}.recipes-list__row--head:hover{background:transparent}.recipes-list__row .is-num{text-align:right}.recipes-list__row .is-soft{color:var(--text-2)}.recipes-list__row .is-strong{font-weight:600}.recipes-list__name{display:flex;align-items:center;gap:10px}.recipes-list__title{font-weight:600}.recipe-detail{flex:1 1 300px;max-width:380px;min-width:0;position:-webkit-sticky;position:sticky;top:84px;max-height:calc(100vh - 100px);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.recipe-detail__media{aspect-ratio:16/9;flex-shrink:0}.recipe-detail__body{display:flex;flex-direction:column;gap:14px;padding:16px 20px;overflow-y:auto}.recipe-detail__title{margin:0;font-size:1.25rem;line-height:1.2}.recipe-detail__meta{margin-top:2px;color:var(--muted);font-size:.75rem}.recipe-detail__macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px}.recipe-detail__macro{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:10px;background:var(--surface-2);text-align:center}.recipe-detail__macro strong{font-size:1rem;white-space:nowrap}.recipe-detail__macro span{color:var(--muted);font-size:.6875rem}.recipe-detail__section{display:flex;flex-direction:column;gap:4px}.recipe-detail__eyebrow{margin-bottom:2px;color:var(--muted);font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.recipe-detail__ingredient{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);font-size:.8125rem}.recipe-detail__ingredient span:first-child{font-weight:500}.recipe-detail__ingredient span:last-child{color:var(--muted);text-align:right}.recipe-detail__text{margin:0;color:var(--text-2);font-size:.8125rem;line-height:1.55;white-space:pre-wrap}.recipe-detail__empty{margin:0;color:var(--muted);font-size:.8125rem}.recipe-detail__video{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:.5rem;padding:7px 12px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:inherit;font-size:.8125rem;font-weight:600;text-decoration:none;transition:background .16s ease,border-color .16s ease}.recipe-detail__video:focus-visible,.recipe-detail__video:hover{background:var(--surface-2);border-color:color-mix(in srgb,var(--border) 70%,var(--primary) 30%)}.recipe-detail__footer{display:flex;align-items:center;gap:6px;padding:12px 16px 16px;border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent)}@media (max-width:900px){.recipe-detail{position:static;max-width:none;max-height:none}.recipes-toolbar__spacer{display:none}}.app-main .page[data-path="/receitas"]{max-width:none}.recipes-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,24vw,400px);align-items:start;flex-wrap:nowrap}.recipes-layout>.recipes-layout__main{min-width:0}.recipes-layout>.recipe-detail{width:auto;max-width:none}@media (max-width:900px){.recipes-layout{grid-template-columns:minmax(0,1fr)}}.recipes-layout:not(:has(>.recipe-detail)){grid-template-columns:minmax(0,1fr)}.foods-page{display:flex;flex-direction:column;gap:var(--space-4)}.foods-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.foods-page__header h1{margin:0;font:700 28px var(--font-title);color:var(--text)}.foods-page__subtitle{margin:2px 0 0;color:var(--muted);font-size:13px}.foods-layout{display:flex;gap:var(--space-4);align-items:flex-start;flex-wrap:wrap}.foods-list{flex:3 1 560px;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex;flex-direction:column}.foods-list__state{padding:var(--space-6) var(--space-4)}.foods-list__error{margin:0 var(--space-4) var(--space-4)}.foods-filters{padding:16px 16px 12px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--border)}.foods-filters__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.foods-search{flex:1 1 260px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--r-sm);padding:9px 12px;background:var(--surface);color:var(--muted);cursor:text;transition:border-color .12s ease,box-shadow .12s ease}.foods-search:focus-within{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.foods-search input{flex:1 1;min-width:0;border:none;outline:none;font:400 14px var(--font-body);color:var(--text);background:transparent;padding:0}.foods-search input::placeholder{color:var(--muted)}.foods-segmented{display:flex;flex-wrap:wrap;background:var(--surface-2);border-radius:var(--r-sm);padding:3px}.foods-segmented__item{padding:6px 12px;border:none;border-radius:8px;background:transparent;color:var(--muted);font:600 13px var(--font-body);cursor:pointer;white-space:nowrap;transition:background .12s ease,box-shadow .12s ease}.foods-segmented__item:hover{background:color-mix(in srgb,var(--surface) 55%,transparent)}.foods-segmented__item[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px color-mix(in srgb,var(--text) 14%,transparent)}.foods-chip:focus-visible,.foods-page-btn:focus-visible,.foods-segmented__item:focus-visible{outline:none;box-shadow:var(--focus)}.foods-sort{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);white-space:nowrap}.foods-sort__select{width:auto;min-width:170px}.foods-chip-select .select__button,.foods-pagination__size .select__button,.foods-panel__portion-select .select__button,.foods-sort__select .select__button{padding:6px 10px;border-radius:8px;font-size:13px;font-weight:500}.foods-filters__chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.foods-filters__divider{width:1px;height:20px;background:var(--border);margin:0 4px}.foods-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:600 12px var(--font-body);cursor:pointer;transition:border-color .12s ease,background .12s ease}.foods-chip:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}.foods-chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--surface)}.foods-chip--rich[aria-pressed=true]{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 45%,var(--border));color:var(--primary)}.foods-chip--group{padding:3px 12px 3px 4px}.foods-chip--group .foods-cat-icon{width:20px;height:20px;border-radius:999px}.foods-chip--group[aria-pressed=true] .foods-cat-icon{background:color-mix(in srgb,var(--surface) 18%,transparent);color:var(--surface)}.foods-chip-select{width:auto}.foods-chip-select .select__button[data-active=true]{background:var(--text);border-color:var(--text);color:var(--surface)}.foods-taco-filter{display:inline-flex;align-items:center;gap:6px}.foods-taco-filter__label{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}.foods-chip-select .select__button{border-radius:var(--r-pill);padding:4px 12px;font-size:12px;font-weight:600;color:var(--text-2)}.foods-table-scroll{overflow-x:auto}.foods-table{--foods-cols:minmax(170px,2fr) minmax(110px,1fr) 56px 46px 46px 46px 48px;min-width:600px;display:flex;flex-direction:column;font-size:13px}.foods-table[data-has-extra=true]{--foods-cols:minmax(170px,2fr) 96px minmax(110px,1fr) 56px 46px 46px 46px 48px;min-width:700px}.foods-table__row{display:grid;grid-template-columns:var(--foods-cols);align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);color:var(--text);cursor:pointer;transition:background .12s ease}.foods-table__row:not(.foods-table__row--head):hover{background:color-mix(in srgb,var(--surface-2) 45%,var(--surface))}.foods-table__row[data-selected=true]{background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.foods-table__row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 45%,transparent)}.foods-table__row--head{border-bottom-color:var(--border);color:var(--muted);font-weight:600;cursor:default}.foods-table__cell{padding:10px 8px;min-width:0}.foods-table__cell--name{padding-left:16px;display:flex;align-items:center;gap:10px}.foods-table__cell--num{text-align:right;color:var(--text-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.foods-table__row--head .foods-table__cell--num{color:var(--muted)}.foods-table__cell--kcal{font-weight:600;color:var(--text)}.foods-table__cell--extra{text-align:right;font-weight:700;color:var(--primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.foods-table__cell--extra,.foods-table__cell--portion{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.foods-table__cell--portion{color:var(--text-2)}.foods-table__cell--actions{padding:6px 10px 6px 0;display:flex;justify-content:flex-end}.foods-table__name{min-width:0}.foods-table__title{font-weight:600;color:var(--text);overflow-wrap:anywhere}.foods-table__meta{font-size:12px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.foods-table__group{font-weight:600;color:var(--text-2)}.foods-table__source{font-weight:600;color:var(--muted)}.foods-table__source-category{margin-left:-2px;min-width:0;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.foods-table__source-category:before{content:"· "}.foods-table__source[data-mine=true]{color:var(--primary)}.foods-table__private{display:inline-flex;color:var(--muted)}.foods-dot{width:3px;height:3px;border-radius:999px;background:var(--border)}.foods-cat-icon{--tone:var(--text-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--tone) 14%,var(--surface));color:color-mix(in srgb,var(--tone) 80%,var(--text))}.foods-cat-icon--xs{width:20px;height:20px;border-radius:6px}.foods-cat-icon--lg{width:40px;height:40px;border-radius:12px}.foods-cat-icon--photo{overflow:hidden;background:var(--surface);border:1px solid var(--border)}.foods-cat-icon--photo img{width:100%;height:100%;object-fit:cover}.foods-panel__photo{display:block;width:100%;max-height:220px;object-fit:contain;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface)}.foods-cat-icon[data-tone=grain]{--tone:#b07424}.foods-cat-icon[data-tone=legume]{--tone:#2f8a58}.foods-cat-icon[data-tone=meat]{--tone:#b34a67}.foods-cat-icon[data-tone=fish]{--tone:#2f6f9c}.foods-cat-icon[data-tone=dairy]{--tone:var(--primary)}.foods-cat-icon[data-tone=fruit]{--tone:#c4661f}.foods-cat-icon[data-tone=veg]{--tone:#3b8a4f}.foods-cat-icon[data-tone=protein]{--tone:#a3405c}.foods-cat-icon[data-tone=supplement]{--tone:#2f8a8a}.foods-cat-icon[data-tone=egg]{--tone:#b07a12}.foods-cat-icon[data-tone=nuts]{--tone:#8a5a2b}.foods-cat-icon[data-tone=fat]{--tone:#9a7b10}.foods-cat-icon[data-tone=drink]{--tone:#2f7f9c}.foods-cat-icon[data-tone=sweet]{--tone:#b0508a}.foods-cat-icon[data-tone=dish]{--tone:#6c6fb6}.foods-cat-icon[data-tone=condiment]{--tone:#7a7f3a}.foods-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.foods-pagination strong{color:var(--text)}.foods-pagination__controls{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.foods-pagination__size{width:auto;margin-right:6px}.foods-page-btn{display:inline-flex;min-width:32px;height:32px;padding:0 6px;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-2);font:500 13px var(--font-body);cursor:pointer;transition:background .12s ease,border-color .12s ease}.foods-page-btn:hover:not(:disabled){background:var(--surface-2)}.foods-page-btn--nav{width:32px;padding:0;border-color:var(--border);background:var(--surface)}.foods-page-btn:disabled{cursor:not-allowed;opacity:.5}.foods-page-btn[aria-current=page]{background:var(--text);color:var(--surface);font-weight:600}.foods-page-btn[aria-current=page]:hover:not(:disabled){background:var(--text)}.foods-page-gap{padding:0 4px}.foods-panel{flex:1 1 300px;max-width:380px;min-width:0;position:-webkit-sticky;position:sticky;top:calc(var(--topbar-height) + var(--space-4));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;color:var(--text)}.foods-panel,.foods-panel__head{display:flex;flex-direction:column}.foods-panel__head{padding:18px 20px 14px;border-bottom:1px solid var(--border);gap:10px}.foods-panel__title{display:flex;align-items:flex-start;gap:12px}.foods-panel__title-text{min-width:0;flex:1 1}.foods-panel__title h2{margin:0;font:700 20px var(--font-title);line-height:1.2;overflow-wrap:anywhere}.foods-panel__subtitle{margin-top:2px;font-size:12px;color:var(--muted)}.foods-panel__group{font-weight:600;color:var(--text-2)}.foods-panel__subtitle svg{vertical-align:-1px;margin-right:2px}.foods-panel__portion{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2)}.foods-panel__portion-select{width:auto;min-width:0;flex:0 1 auto}.foods-panel__portion-static{padding:5px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text);font-weight:500}.foods-panel__body{padding:16px 20px;display:flex;flex-direction:column;gap:14px}.foods-panel__macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px}.foods-panel__macro{padding:8px 6px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--surface-2) 55%,var(--surface));text-align:center;display:flex;flex-direction:column}.foods-panel__macro strong{font:700 16px var(--font-body);letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.foods-panel__macro span{font-size:11px;color:var(--muted)}.foods-panel__micros{display:flex;flex-direction:column;gap:6px}.foods-panel__eyebrow{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.foods-panel__micro{display:grid;grid-template-columns:minmax(0,1fr) 70px 38px;grid-gap:8px;gap:8px;align-items:center;font-size:13px}.foods-panel__micro-value{color:var(--muted);font-size:12px}.foods-panel__bar{height:5px;border-radius:999px;background:var(--surface-2);overflow:hidden}.foods-panel__bar span{display:block;height:100%;background:var(--primary);border-radius:999px}.foods-panel__pct{text-align:right;font-weight:600;color:var(--text-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.foods-panel__note{padding:10px 12px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:color-mix(in srgb,var(--accent) 45%,var(--text));font-size:13px;display:flex;gap:8px}.foods-panel__note svg{flex-shrink:0;margin-top:1px}.foods-panel__ref{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.foods-panel__ref a{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-weight:600;text-decoration:none}.foods-panel__ref a:hover{text-decoration:underline}.foods-panel__footer{margin-top:auto;display:flex;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--border)}.foods-panel__footer .btn{flex:1 1;padding:9px 12px;font-size:13px}@media (max-width:960px){.foods-panel{position:static;max-width:none;flex-basis:100%}}.app-main .page[data-path="/alimentos"]{max-width:none}.foods-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,24vw,400px);align-items:start;flex-wrap:nowrap}.foods-layout>.foods-list{min-width:0}.foods-layout>.foods-panel{width:auto;max-width:none}@media (max-width:960px){.foods-layout{grid-template-columns:minmax(0,1fr)}}.foods-layout:not(:has(>.foods-panel)){grid-template-columns:minmax(0,1fr)}.foods-row__action{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.foods-row__action:focus-visible,.foods-row__action:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface));outline:none}.foods-panel__allergens{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:12px}.foods-panel__allergens-label{font-weight:600;color:var(--text-2);margin-right:2px}.food-allergen-tag{padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--allergen-border);background:var(--allergen-bg);color:var(--allergen-ink);font-weight:600}.food-allergen-tag[data-inferred=true]{border-style:dashed}.editor-drawer .food-editor__category-input{margin-top:4px}.food-editor__chips{display:flex;flex-wrap:wrap;gap:6px}.food-editor__chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:3px 10px 3px 4px;border-radius:var(--r-pill);border:1.5px solid var(--border);background:var(--surface);color:var(--text-2);font:600 12px var(--font-body);cursor:pointer;transition:border-color .12s ease,background .12s ease}.food-editor__chip>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.food-editor__chip:has(>svg:first-child){padding-left:10px}.food-editor__chip .foods-cat-icon{width:20px;height:20px;border-radius:999px}.food-editor__chip .foods-cat-icon svg{width:12px;height:12px}.food-editor__chip:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}.food-editor__chip[aria-pressed=true]{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 55%,var(--border));color:color-mix(in srgb,var(--primary) 70%,var(--text))}.food-editor__chip:focus-visible{outline:none;box-shadow:var(--focus)}.food-editor__chips[data-invalid=true] .food-editor__chip:not([aria-pressed=true]){border-color:color-mix(in srgb,#c2412f 45%,var(--border))}.food-editor__meta{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);grid-gap:10px;gap:10px}.food-editor__portion{display:grid;grid-template-columns:minmax(0,1fr) 130px;grid-gap:8px;gap:8px}.food-editor__more-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 2px;border:none;background:transparent;color:var(--primary);font:600 13px var(--font-body);cursor:pointer}.food-editor__more-toggle svg{transition:transform .15s ease}.food-editor__more-toggle svg[data-open=true]{transform:rotate(180deg)}.food-editor__more-toggle:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}.food-editor__more{display:flex;flex-direction:column;gap:14px}.food-editor__more-group{display:flex;flex-direction:column;gap:6px}@media (max-width:640px){.food-editor__meta{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.food-editor__meta>:first-child{grid-column:1/-1}.food-editor__portion{grid-template-columns:minmax(0,1fr) 110px}}