.sidebar-brand{display:none}.sidebar-nav{display:flex;flex:1;flex-direction:row;align-items:stretch;justify-content:space-around;width:100%;min-width:0}.sidebar-guest,.sidebar-footer,.nav-btn .nav-btn__log-label{display:none}.nav-btn .nav-btn__log-label-short{display:inline}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.nav-icon svg{width:100%;height:100%}.nav-icon--fab{width:44px;height:44px;margin-top:-10px;margin-bottom:2px;border-radius:50%;background:linear-gradient(180deg,#109384 0%,var(--teal) 100%);color:#fff;box-shadow:0 4px 16px #0d6b6447,inset 0 1px #ffffff26}@media(max-width:1023px),(hover:none),(pointer:coarse){.sidebar-brand,.sidebar-guest,.sidebar-footer{display:none!important}.bottom-nav{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:calc(var(--nav-h) + var(--safe-b));flex-direction:row;justify-content:space-around;align-items:stretch;padding-bottom:var(--safe-b);z-index:100}.sidebar-nav{flex-direction:row;justify-content:space-around;align-items:stretch;flex:1;width:100%}.sidebar-nav .nav-btn[data-view=today]{order:1}.sidebar-nav .nav-btn[data-view=supplements]{order:2}.sidebar-nav .nav-btn[data-view=log]{order:3}.sidebar-nav .nav-btn[data-view=reports]{order:4}.sidebar-nav .nav-btn[data-view=settings]{order:5}.nav-btn.nav-btn--log-cta .nav-btn__log-label{display:none}.nav-btn.nav-btn--log-cta .nav-btn__log-label-short{display:inline}}@media(min-width:1024px)and (hover:hover)and (pointer:fine){:root{--sidebar-w: 268px}html:not(.is-guest) #app{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);grid-template-rows:auto 1fr auto;padding-bottom:0}html:not(.is-guest) .app-header{grid-column:2;grid-row:1}html:not(.is-guest) .main{grid-column:2;grid-row:2;max-width:720px;margin:0;width:100%}html:not(.is-guest) .app-disclaimer-strip{grid-column:2;grid-row:3}html:not(.is-guest) .bottom-nav{position:sticky;top:0;align-self:start;grid-column:1;grid-row:1 / 4;width:var(--sidebar-w);height:100vh;max-height:100vh;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:24px 18px 28px;border-top:none;border-right:1px solid var(--border);left:auto;right:auto;bottom:auto;overflow-y:auto}html:not(.is-guest) .sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 12px 20px;margin-bottom:8px;border-bottom:1px solid var(--border)}html:not(.is-guest) .sidebar-brand__text{display:flex;flex-direction:column;gap:2px}html:not(.is-guest) .sidebar-brand__name{font-size:1.12rem;font-weight:700}html:not(.is-guest) .sidebar-brand__tagline{font-size:.72rem;color:var(--text3)}html:not(.is-guest) .sidebar-nav{flex-direction:column;align-items:stretch;gap:4px}html:not(.is-guest) .sidebar-footer{display:block;margin-top:auto;padding-top:12px;border-top:1px solid var(--border);font-size:.72rem;color:var(--text3);text-align:center}html:not(.is-guest) .nav-btn{flex:0 0 auto;flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 14px;border-radius:12px;font-size:.9rem}html:not(.is-guest) .nav-btn.active{background:var(--teal-dim);color:var(--teal)}html:not(.is-guest) .nav-btn.nav-btn--log-cta{margin-bottom:14px;background:linear-gradient(135deg,#0a5c56 0%,var(--teal) 100%);color:#fff;font-weight:700}html:not(.is-guest) .nav-btn.nav-btn--log-cta .nav-btn__log-label{display:inline}html:not(.is-guest) .nav-btn.nav-btn--log-cta .nav-btn__log-label-short{display:none}html:not(.is-guest) .nav-btn.nav-btn--log-cta .nav-icon--fab{width:32px;height:32px;margin:0;border-radius:9px;background:#ffffff2e}}.app-boot__title,.view-page--boot .app-boot__title{margin:24px 8px 8px;font-size:1.1rem;font-weight:700;color:var(--text)}.app-boot__lead{margin:0 8px 16px;color:var(--text3)}html:not(.is-guest) .view-page--today{display:flex;flex-direction:column;gap:16px}html:not(.is-guest) .view-page__toolbar{display:flex;flex-direction:column;gap:12px}.usage-strip{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid var(--border);box-shadow:0 4px 16px #0f766e0d}.usage-strip--compact{gap:0}.usage-strip--minimal{padding:10px 12px}.usage-strip--minimal .usage-strip__copy{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:2px}.usage-strip--minimal .usage-strip__count{gap:6px}.usage-strip--minimal .usage-strip__detail{flex:0 0 auto;font-size:.78rem;font-weight:600;color:var(--text2)}.usage-strip--info{border-color:#0d948838;background:linear-gradient(180deg,#f0fdfa,#fff 72%)}.usage-strip--warn{border-color:#f59e0b59;background:linear-gradient(180deg,#fffbeb,#fff 72%)}.usage-strip--limit{border-color:#ef444447;background:linear-gradient(180deg,#fef2f2,#fff 72%)}.usage-strip__main{display:flex;align-items:center;justify-content:space-between;gap:10px}.usage-strip__copy{min-width:0;flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.usage-strip__copy .usage-strip__detail{flex:1 1 100%}.usage-strip__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.usage-strip__eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text3)}.usage-strip__plan{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.02em;color:var(--teal);background:#0d94881a}.usage-strip__count{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;line-height:1.1;min-width:0}.usage-strip__count strong{font-size:1.2rem;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text)}.usage-strip__count span{font-size:.82rem;font-weight:600;color:var(--text3)}.usage-strip__detail{margin:0;font-size:.72rem;line-height:1.3;font-weight:500;color:var(--text3)}.usage-strip__alert-line{margin:0;font-size:.75rem;line-height:1.35;color:#92400e}.usage-strip--limit .usage-strip__alert-line{color:#991b1b}.usage-strip__cta{flex:0 0 auto;align-self:center;margin:0;min-height:32px;padding:4px 10px}.usage-strip__meter-row{display:flex;align-items:center;gap:8px}.usage-strip__meter{flex:1 1 auto;height:5px;border-radius:999px;background:#e2e8f0;overflow:hidden}.usage-strip__meter-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal2),var(--teal));transition:width .35s ease}.usage-strip__meter-fill--low{background:linear-gradient(90deg,#f59e0b,#ea580c)}.usage-strip--limit .usage-strip__meter-fill{background:linear-gradient(90deg,#f87171,#dc2626)}.usage-strip__meter-pct{flex:0 0 auto;min-width:2.2rem;text-align:right;font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text3)}html:not(.is-guest) .view-page__dashboard{display:flex;flex-direction:column;gap:16px}html:not(.is-guest) .view-page__aside,html:not(.is-guest) .view-page__main,html:not(.is-guest) .view-page__extra{display:flex;flex-direction:column;gap:14px;min-width:0}.consistency-strip{display:flex;align-items:center;gap:10px;padding:10px 14px}.consistency-strip__icon{font-size:1.1rem;line-height:1}.consistency-strip__text{margin:0;font-size:.82rem;font-weight:600;color:var(--text2)}.today-plan{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--radius);background:#fff;border:1px solid var(--border);box-shadow:0 8px 28px #0f766e12}.today-plan--plan{background:linear-gradient(180deg,#ecfdf5,#fff 70%)}.today-plan--past{background:linear-gradient(180deg,#f8fafc,#fff 70%)}.today-plan__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.today-plan__copy{min-width:0}.today-plan__eyebrow{margin:0 0 2px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--teal)}.today-plan--past .today-plan__eyebrow{color:var(--text3)}.today-plan__title{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.today-plan__lead{margin:4px 0 0;font-size:.8rem;line-height:1.4;color:var(--text3)}.today-plan__tools{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:8px}.today-plan__cal-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid rgba(13,107,100,.2);border-radius:999px;background:#ecfdf5;color:var(--teal);font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.today-plan__nav{display:flex;align-items:stretch;gap:8px}.today-plan__step{flex-shrink:0;width:36px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--teal);font:inherit;font-size:1.1rem;font-weight:700;cursor:pointer}.today-plan__step:disabled{opacity:.35;cursor:not-allowed}.today-plan__strip{display:flex;flex:1;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}.today-plan__strip::-webkit-scrollbar{display:none}.today-plan__chip{flex:1 0 46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:72px;padding:8px 4px 7px;border:1px solid rgba(13,107,100,.14);border-radius:14px;background:#f8fffe;color:var(--text);font:inherit;cursor:pointer}.today-plan__chip--today{border-color:#0d6b6459;background:#ecfdf5}.today-plan__chip--plan:not(.is-selected){background:#fff}.today-plan__chip.is-selected{border-color:transparent;background:linear-gradient(160deg,#0a5c56 0%,var(--teal) 100%);color:#fff;box-shadow:0 8px 18px #0d6b6438}.today-plan__chip-day{font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.72}.today-plan__chip-num{font-size:1.05rem;font-weight:700;line-height:1.1}.today-plan__chip-meta{font-size:.62rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.7}.today-plan__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.today-plan__pick{border:none;background:none;padding:0;color:var(--teal);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.today-plan__window{margin:0;font-size:.75rem;color:var(--text3)}.today-plan__nudge{margin:0;padding:8px 10px;border-radius:10px;background:var(--teal-dim);color:var(--text);font-size:.78rem;font-weight:600}.day-date-nav__input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.today-log{display:flex;flex-direction:column;gap:14px;padding:16px 16px 18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.today-log__head{display:flex;flex-direction:column;gap:4px}.today-log__title{margin:0;font-size:1.02rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.today-log__lead{margin:0;font-size:.8rem;line-height:1.4;color:var(--text3)}.today-log__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.today-log__btn{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;min-height:112px;padding:14px 12px;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:#f8fafc;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.today-log__btn:active{transform:scale(.985)}.today-log__btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.today-log__btn--photo{background:var(--teal);border-color:transparent;color:#fff}.today-log__btn--free{background:#fff}.today-log__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;flex-shrink:0;background:#0f766e1a;color:var(--teal)}.today-log__btn--photo .today-log__icon{background:#ffffff29;color:#fff}.today-log__copy{min-width:0;display:flex;flex-direction:column;gap:4px;margin-top:auto}.today-log__label{font-size:.92rem;font-weight:700;line-height:1.2;letter-spacing:-.01em}.today-log__hint{font-size:.72rem;line-height:1.35;color:var(--text3)}.today-log__btn--photo .today-log__hint{color:#ffffffd1}.today-log__badge{display:none}.empty-state--meals{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:28px 16px;border-radius:var(--radius);background:#fff;border:1px dashed rgba(13,107,100,.22)}.empty-state__icon{color:var(--teal)}.empty-state__title{margin:0;font-size:1.05rem;font-weight:700}.empty-state__hint{margin:0;max-width:28rem;color:var(--text3);font-size:.88rem}.empty-state__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px}@media(max-width:379px){.remaining-coach__metrics{grid-template-columns:1fr}.remaining-coach__summary{max-width:none;text-align:left}.today-log__grid{grid-template-columns:1fr;gap:8px}.today-log__btn{flex-direction:row;align-items:center;min-height:64px;padding:12px 14px;gap:12px}.today-log__copy{margin-top:0}}@media(min-width:720px){.today-log{padding:18px 20px 20px}.today-log__grid{gap:10px}.today-log__btn{min-height:120px;padding:16px 14px}.today-log__label{font-size:.98rem}.today-log__hint{font-size:.76rem}}@media(min-width:1024px)and (hover:hover)and (pointer:fine){html:not(.is-guest) .view-page__dashboard{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);grid-template-areas:"log log" "aside main" "consistency consistency" "plan plan" "extra extra";gap:20px 24px;align-items:start}html:not(.is-guest) .today-plan{grid-area:plan}html:not(.is-guest) .today-log{grid-area:log}html:not(.is-guest) .view-page__aside{grid-area:aside}html:not(.is-guest) .view-page__main{grid-area:main}html:not(.is-guest) .view-page__consistency{grid-area:consistency}html:not(.is-guest) .view-page__extra{grid-area:extra}.today-log__btn:hover{border-color:#0f766e47;background:#f0fdfa}.today-log__btn--photo:hover{background:#0d5f59;border-color:transparent}}html:not(.is-guest) .main:has(.view-page--calendar){max-width:min(760px,100%)}.view-page--calendar{display:flex;flex-direction:column;gap:14px}.meal-cal__header{padding:16px 16px 14px}.meal-cal__header .back-link{margin-bottom:10px}.meal-cal__head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.meal-cal__eyebrow{margin:0 0 4px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--teal)}.meal-cal__title{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.03em;color:var(--text)}.meal-cal__sub{margin:6px 0 0;font-size:.8rem;line-height:1.4;color:var(--text3)}.meal-cal__nav{display:flex;gap:8px;flex-shrink:0}.meal-cal__nav-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--teal);font:inherit;font-size:1.1rem;font-weight:700;cursor:pointer}.meal-cal__nav-btn:disabled{opacity:.35;cursor:not-allowed}.meal-cal{padding:14px 12px 16px}.meal-cal__weekdays,.meal-cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));column-gap:6px}.meal-cal__weekdays{margin-bottom:8px}.meal-cal__weekday{display:flex;align-items:center;justify-content:center;min-height:28px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text3)}.meal-cal__weekday-full{display:none}.meal-cal__grid{row-gap:6px}.meal-cal__day{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;aspect-ratio:1;min-width:0;padding:0;border:1px solid transparent;border-radius:14px;background:#f8fffe;color:var(--text);font:inherit;cursor:pointer}.meal-cal__day--pad{visibility:hidden;pointer-events:none;background:transparent;border:none}.meal-cal__day--disabled{opacity:.28;cursor:not-allowed}.meal-cal__day--today:not(.meal-cal__day--selected){border-color:var(--teal);box-shadow:inset 0 0 0 1px #0d6b641f}.meal-cal__day--logged:not(.meal-cal__day--selected){background:#ecfdf5}.meal-cal__day--planned:not(.meal-cal__day--selected){background:#fff;border-style:dashed;border-color:#0d6b6447}.meal-cal__day--selected{background:linear-gradient(160deg,#0a5c56 0%,var(--teal) 100%);color:#fff;box-shadow:0 8px 18px #0d6b643d}.meal-cal__day-num{font-size:.95rem;font-weight:700;line-height:1}.meal-cal__day-dot{width:5px;height:5px;border-radius:999px;background:var(--teal)}.meal-cal__day--selected .meal-cal__day-dot{background:#fff}.meal-cal__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.meal-cal__legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:var(--text3)}.meal-cal__legend-swatch{width:10px;height:10px;border-radius:4px;border:1px solid transparent}.meal-cal__legend-swatch--logged{background:#ecfdf5;border-color:#0d6b6433}.meal-cal__legend-swatch--planned{background:#fff;border-style:dashed;border-color:#0d6b6459}.meal-cal__legend-swatch--today{background:#fff;border-color:var(--teal)}.meal-cal-detail{padding:16px}.meal-cal-detail__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.meal-cal-detail__label{margin:0 0 2px;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--teal)}.meal-cal-detail__title{margin:0;font-size:1.1rem;font-weight:700}.meal-cal-detail__kcal{margin:10px 0 0;color:var(--text3)}.meal-cal-detail__kcal strong{color:var(--text);font-size:1.15rem}.meal-cal-detail__empty{margin:10px 0 0;color:var(--text3);font-size:.9rem}.meal-cal-detail__list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.meal-cal-detail__meal{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:#f8fffe;border:1px solid var(--border)}.meal-cal-detail__meal-type{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--teal)}.meal-cal-detail__meal-meta{font-size:.8rem;color:var(--text3)}.meal-cal-detail__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.meal-cal-detail__actions .btn{flex:1 1 140px}.meal-cal-guest{padding:22px 18px}.meal-cal-guest__eyebrow{margin:0 0 6px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--teal)}.meal-cal-guest__title{margin:0 0 8px}.meal-cal-guest__lead{margin:0 0 12px;color:var(--text3)}.meal-cal-guest__list{margin:0 0 18px;padding-left:18px;color:var(--text)}@media(min-width:640px){.meal-cal{padding:18px 18px 20px}.meal-cal__weekdays,.meal-cal__grid{column-gap:8px}.meal-cal__grid{row-gap:8px}.meal-cal__weekday-short{display:none}.meal-cal__weekday-full{display:inline}.meal-cal__weekday{font-size:.78rem}.meal-cal__day-num{font-size:1.05rem}}@media(min-width:1024px)and (hover:hover)and (pointer:fine){html:not(.is-guest) .main:has(.view-page--calendar){max-width:800px}.meal-cal__day:hover:not(:disabled):not(.meal-cal__day--selected){border-color:var(--teal2);transform:translateY(-1px)}}html.touch-ui .logo{font-size:var(--t-logo);line-height:var(--t-lh-snug)}html.touch-ui .brand-mark{width:40px;height:40px}html.touch-ui .brand-mark svg{width:22px;height:22px}html.touch-ui .greeting{font-size:var(--t-greeting);font-weight:600;margin-top:6px}html.touch-ui .tagline{font-size:var(--t-tagline);margin-top:4px}html.touch-ui .header-auth-btn{font-size:var(--t-base);font-weight:600;min-height:var(--header-btn-height);padding:11px 20px}html.touch-ui.is-guest .greeting,html.touch-ui #app:has(.view-page--guest) .greeting{font-size:var(--t-greeting-guest)}html.touch-ui.is-guest .tagline,html.touch-ui #app:has(.view-page--guest) .tagline{font-size:var(--t-tagline)}html.touch-ui .bottom-nav{height:calc(var(--nav-h) + var(--safe-b))}html.touch-ui .nav-btn{font-size:var(--t-nav);font-weight:600;gap:4px;padding:8px 4px}html.touch-ui .nav-icon{width:26px;height:26px}html.touch-ui .nav-icon--fab{width:56px;height:56px;margin-top:-12px}html.touch-ui .nav-icon--fab svg{width:26px;height:26px}html.touch-ui .btn{font-size:var(--t-btn);font-weight:600;min-height:var(--btn-height);padding:12px 20px;border-radius:12px}html.touch-ui .btn-sm{font-size:var(--t-btn-sm);min-height:var(--btn-height-sm);padding:12px 18px}html.touch-ui .link-btn{font-size:var(--t-link)}html.touch-ui input,html.touch-ui select,html.touch-ui textarea{font-size:var(--t-input)}html.touch-ui .field span{font-size:var(--t-field-label)}html.touch-ui .card-title{font-size:var(--t-title);line-height:var(--t-lh-snug)}html.touch-ui .card-desc,html.touch-ui .card-subtitle{font-size:var(--t-body);line-height:var(--t-lh-normal)}html.touch-ui .fine-print,html.touch-ui .app-disclaimer,html.touch-ui .app-disclaimer p,html.touch-ui .app-disclaimer-strip,html.touch-ui .app-disclaimer-strip p{font-size:var(--t-caption);line-height:var(--t-lh-relaxed)}html.touch-ui .welcome-panel__eyebrow,html.touch-ui .how-it-works__eyebrow,html.touch-ui .guest-landing-footer__eyebrow{font-size:var(--t-caption)}html.touch-ui .welcome-panel__title{font-size:var(--t-display);line-height:var(--t-lh-tight)}html.touch-ui .welcome-panel__lead,html.touch-ui .how-it-works__lead{font-size:var(--t-body-lg);line-height:var(--t-lh-normal)}html.touch-ui .welcome-panel__stat strong{font-size:var(--t-title-xl)}html.touch-ui .welcome-panel__stat span,html.touch-ui .welcome-panel__features li{font-size:var(--t-body)}html.touch-ui .welcome-panel__features svg{width:24px;height:24px}html.touch-ui .welcome-panel__trust{font-size:var(--t-sm)}html.touch-ui .how-it-works__title{font-size:var(--t-title-xl)}html.touch-ui .product-features__eyebrow{font-size:var(--t-caption)}html.touch-ui .product-features__title{font-size:var(--t-title-xl);line-height:1.2}html.touch-ui .product-features__lead,html.touch-ui .product-features__section-intro{font-size:var(--t-body);line-height:var(--t-lh-normal)}html.touch-ui .product-features__section-title{font-size:var(--t-title-sm)}html.touch-ui .product-features__item-name{font-size:var(--t-body)}html.touch-ui .product-features__item-detail{font-size:var(--t-sm)}html.touch-ui .product-features__tier{font-size:var(--t-micro);padding:4px 8px}html.touch-ui .how-step__title{font-size:var(--t-title-sm)}html.touch-ui .how-step__text{font-size:var(--t-body)}html.touch-ui .guest-barcode__title{font-size:var(--t-title)}html.touch-ui .guest-barcode__text{font-size:var(--t-body)}html.touch-ui .guest-landing-footer__title{font-size:var(--t-title-xxl)}html.touch-ui .guest-landing-footer__lead{font-size:var(--t-body-lg)}html.touch-ui .landing-preview-card__meal{font-size:var(--t-body)}html.touch-ui .landing-preview-card__kcal{font-size:var(--t-base)}html.touch-ui .landing-preview-card__kcal strong{font-size:var(--t-title-lg)}html.touch-ui .landing-preview-card__macros span{font-size:var(--t-sm)}html.touch-ui .landing-ui-preview__title{font-size:var(--t-title-sm)}html.touch-ui .landing-ui-preview__kcal strong{font-size:var(--t-title-lg)}html.touch-ui .supplement-card__body h3{font-size:var(--t-body)}html.touch-ui .supplement-card__meta,html.touch-ui .supplement-card__notes,html.touch-ui .section--supplements .section-intro{font-size:var(--t-sm)}html.touch-ui .supplements-hero__title{font-size:var(--t-title-xl)}html.touch-ui .supplements-hero__lead{font-size:var(--t-body)}html.touch-ui .meal-body h3{font-size:var(--t-title-sm)}html.touch-ui .meal-meta,html.touch-ui .meal-kcal,html.touch-ui .meal-items{font-size:var(--t-base)}html.touch-ui .macro-label{font-size:var(--t-caption)}html.touch-ui .macro-value,html.touch-ui .dash-compare__today{font-size:var(--t-title-sm)}html.touch-ui .ring-value{font-size:var(--t-display-lg)}html.touch-ui .ring-unit,html.touch-ui .ring-goal,html.touch-ui .ring-left{font-size:var(--t-sm)}html.touch-ui .quick-action__label{font-size:var(--t-body)}html.touch-ui .quick-action__hint{font-size:var(--t-base)}html.touch-ui .usage-strip__count strong{font-size:1.28rem}html.touch-ui .usage-strip__count span,html.touch-ui .usage-strip__detail,html.touch-ui .usage-strip__alert-line{font-size:var(--t-base)}html.touch-ui .day-date-nav__label,html.touch-ui .usage-strip__copy strong{font-size:var(--t-body)}html.touch-ui .usage-strip__copy p{font-size:var(--t-base)}html.touch-ui .usage-strip{padding:10px 12px}html.touch-ui .usage-strip__cta{min-height:36px}html.touch-ui .today-log__title{font-size:1.08rem}html.touch-ui .today-log__label{font-size:.95rem}html.touch-ui .today-log__hint{font-size:.78rem}html.touch-ui .settings-title{font-size:var(--t-title-xl)}html.touch-ui .settings-tabs .tab{font-size:var(--t-tab);padding:12px 14px}html.touch-ui .settings-panel-lead{font-size:var(--t-body)}html.touch-ui .report-greeting{font-size:var(--t-title-xl)}html.touch-ui .report-sub{font-size:var(--t-base)}html.touch-ui .upgrade-gate__title{font-size:var(--t-title-xl)}html.touch-ui .upgrade-gate__lead{font-size:var(--t-body)}html.touch-ui .auth-modal__title{font-size:var(--t-title-lg)}html.touch-ui .toast,html.touch-ui .onboarding-skip{font-size:var(--t-base)}html.touch-ui .empty-state__title{font-size:var(--t-title-sm)}html.touch-ui .empty-state__hint,html.touch-ui .empty-state p{font-size:var(--t-base);line-height:var(--t-lh-normal)}html.touch-ui .plan-card h3{font-size:var(--t-title-sm)}html.touch-ui .plan-card li,html.touch-ui .plan-card p{font-size:var(--t-sm)}html.touch-ui .section-intro{font-size:var(--t-base);line-height:var(--t-lh-normal)}html.touch-ui .meal-notes-compose__label{font-size:var(--t-base)}html.touch-ui .meal-notes-compose__lead,html.touch-ui .note-chip{font-size:var(--t-sm)}html.touch-ui .speech-field__bar .speech-field-hint{font-size:var(--t-caption)}html.touch-ui .speech-mic-btn--pill{font-size:var(--t-sm);min-height:var(--btn-height-sm)}html.touch-ui .log-again__title{font-size:var(--t-base)}html.touch-ui .log-again__sub{font-size:var(--t-sm)}html.touch-ui .log-again-chip__name{font-size:var(--t-base)}html.touch-ui .log-again-chip__meta{font-size:var(--t-caption)}html.touch-ui .portion-scale__label{font-size:var(--t-sm)}html.touch-ui .portion-scale__active{font-size:var(--t-caption)}html.touch-ui .portion-scale__btn{font-size:var(--t-sm);min-height:var(--btn-height-sm)}html.touch-ui .day-wrap-up__title{font-size:var(--t-title-sm)}html.touch-ui .day-wrap-up__insight{font-size:var(--t-base)}html.touch-ui .day-wrap-up__detail,html.touch-ui .day-wrap-up__suggestion,html.touch-ui .day-wrap-up__coach{font-size:var(--t-sm)}.upgrade-gate{max-width:420px;margin:0 auto;padding:24px 16px 32px}.view-page__gate-copy{padding:22px 18px;border-radius:var(--radius);border:1px solid #e2e8f0;background:linear-gradient(180deg,#f0fdfa,#fff 55%);box-shadow:0 8px 24px #0f766e0f}.upgrade-gate__head{margin-bottom:14px}.upgrade-gate__eyebrow{margin:0 0 4px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.upgrade-gate__title{margin:0 0 8px;font-size:1.25rem;font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1.25}.upgrade-gate__lead{margin:0;font-size:.9rem;line-height:1.5;color:var(--text3)}.upgrade-gate__features{margin:0 0 18px;padding-left:1.15rem;font-size:.875rem;line-height:1.5;color:var(--text)}.upgrade-gate__features li+li{margin-top:6px}.upgrade-gate__actions{display:flex;flex-direction:column;gap:8px}.app-disclaimer-strip{color:var(--text3);text-align:center;padding:10px 16px calc(10px + var(--safe-b));max-width:520px;margin:0 auto;line-height:1.45;border-top:1px solid var(--border-subtle);background:var(--muted)}.app-disclaimer-strip p{margin:0}.pwa-update-banner{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 12px;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top,0px));background:#0f766ef7;color:#fff;box-shadow:0 4px 16px #0f172a2e;pointer-events:auto}.pwa-update-banner__text{margin:0;font-size:.875rem;line-height:1.4;text-align:center;flex:1 1 220px;max-width:520px}.pwa-update-banner__actions{display:flex;gap:8px;flex-shrink:0}.pwa-update-banner__btn{min-width:92px;font-weight:700;line-height:1.2;color:var(--teal, #0d6b64);-webkit-text-fill-color:currentColor;cursor:pointer;touch-action:manipulation;pointer-events:auto}.pwa-update-banner__btn--update{background:#fff;color:var(--teal, #0d6b64);border:1px solid #fff;box-shadow:none}.pwa-update-banner__btn--dismiss{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);box-shadow:none}.pwa-update-banner__btn--dismiss:hover{background:#ffffff1f}.pwa-update-banner .btn-primary{background:#fff;color:var(--teal, #0d6b64);border-color:#fff}.pwa-update-banner .btn-ghost{background:transparent;color:#fff;border-color:#ffffffa6}html:has(#pwaUpdateBanner) .app-header{margin-top:52px}.guest-sticky-cta{position:fixed;left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-b));z-index:40;display:flex;gap:10px;padding:10px 16px;background:#fffffff5;border-top:1px solid var(--border);box-shadow:0 -4px 20px #0f172a14;transform:translateY(110%);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease}.guest-sticky-cta--visible{transform:translateY(0);opacity:1;pointer-events:auto}.guest-sticky-cta .btn-primary{flex:1}.confirm-modal__panel{max-width:420px}.confirm-modal__title{font-size:1.25rem;font-weight:700;margin-bottom:8px}.confirm-modal__message{color:var(--text2);line-height:1.5;margin-bottom:16px}.confirm-modal__actions{margin-top:8px}.onboarding-skip{display:block;margin:0 0 8px auto;font-size:.875rem}.onboarding-status,.meal-editor-status{margin:0 0 12px;text-align:left}@media(min-width:901px){.guest-sticky-cta{display:none!important}.app-disclaimer-strip{max-width:none;padding-left:24px;padding-right:24px}}.landing-photo picture{display:block;width:100%;height:100%}.landing-photo--loading{background:linear-gradient(110deg,#eef2f6 8%,#f8fafc 18%,#eef2f6 33%);background-size:200% 100%;animation:landing-photo-shimmer 1.4s ease-in-out infinite}.landing-photo--loading .landing-photo__img{opacity:0}.landing-photo--loaded .landing-photo__img,.landing-photo--fallback .landing-photo__img{opacity:1;transition:opacity .25s ease}.landing-photo--fallback{animation:none;background:linear-gradient(145deg,#ecfdf5,#d1fae5 55%,#f8fafc)}.landing-photo--fallback:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 42%,rgba(13,107,100,.12) 0%,transparent 55%);pointer-events:none}@keyframes landing-photo-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.meal-notes-compose{padding:14px 14px 12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--teal) 20%,var(--border));background:linear-gradient(165deg,#f8fffe 0%,var(--surface) 100%);box-shadow:var(--shadow-sm)}.meal-notes-compose__head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.meal-notes-compose__label{font-weight:600;font-size:.9375rem;color:var(--text)}.meal-notes-compose__lead{margin:0 0 12px;font-size:.8125rem;line-height:1.45;color:var(--text3)}.meal-notes-compose__chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.note-chip{border:1px solid var(--border);background:var(--surface);color:var(--text2);font:inherit;font-size:.8125rem;font-weight:500;padding:7px 12px;border-radius:999px;cursor:pointer;transition:border-color .15s,background .15s,color .15s,transform .1s}.note-chip:active{transform:scale(.98);border-color:color-mix(in srgb,var(--teal) 45%,var(--border));background:var(--teal-dim);color:var(--teal)}.meal-notes-compose__subhead{margin:2px 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text3)}.note-chip--cooking{border-color:#0f766e38;background:#f8fffe}.note-chip--cooking.note-chip--active{border-color:var(--teal2);background:var(--teal-dim);color:var(--teal);box-shadow:0 0 0 1px #0f766e33}.speech-field--compose{flex-direction:column;gap:0;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden;background:var(--surface);margin-bottom:14px}.speech-field--compose textarea,.speech-field--compose input{border:none;border-radius:0;min-height:72px;padding:14px 14px 10px;box-shadow:none;background:transparent}.speech-field--compose input{min-height:48px}.speech-field--compose textarea:focus,.speech-field--compose input:focus{outline:none;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--teal) 35%,transparent)}.speech-field__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px 10px;border-top:1px solid var(--border-subtle);background:var(--muted)}.speech-field__bar .speech-field-hint{margin:0;flex:1;min-width:0;font-size:.75rem;line-height:1.35;color:var(--text3);text-align:left}.speech-mic-btn--pill{flex-direction:row;align-self:center;min-width:auto;min-height:40px;padding:8px 14px;gap:6px;border-radius:999px;border-width:1px;font-size:.8125rem;flex-shrink:0}.speech-mic-btn--pill .speech-mic-btn__icon svg{width:16px;height:16px}.speech-mic-btn--pill.speech-mic-btn--active{animation:speech-mic-pulse 1.4s ease-in-out infinite}@keyframes speech-mic-pulse{0%,to{box-shadow:0 0 #0d6b6447}50%{box-shadow:0 0 0 5px #0d6b6400}}.log-section .meal-hints-field{margin-bottom:14px}@media(max-width:380px){.meal-notes-compose{padding:12px}.meal-notes-compose__chips{gap:5px}.note-chip{font-size:.75rem;padding:6px 10px}.speech-field__bar{flex-wrap:wrap}.speech-field__bar .speech-field-hint{flex-basis:100%}}.remaining-coach{margin:0;padding:18px 16px 16px;border-radius:var(--radius);border:1px solid rgba(15,118,110,.16);background:linear-gradient(165deg,#f0fdfaf2,#fff 48%),#fff;box-shadow:0 10px 28px #0f766e12}.remaining-coach__head{margin-bottom:14px}.remaining-coach__title-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 12px;margin-bottom:14px}.remaining-coach__eyebrow{margin:0 0 2px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.remaining-coach__title{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1.2}.remaining-coach__summary{margin:0;max-width:14rem;padding:6px 10px;border-radius:999px;background:#0f766e14;border:1px solid rgba(15,118,110,.14);font-size:.72rem;font-weight:700;color:var(--teal);text-align:right;line-height:1.3}.remaining-coach__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.remaining-coach__metric{padding:12px;border-radius:14px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px #0f172a08}.remaining-coach__metric--met{background:#0d948812;border-color:#0d94882e}.remaining-coach__metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.remaining-coach__metric-label{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text3)}.remaining-coach__metric-pct{font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--teal)}.remaining-coach__metric-value{display:block;font-size:1.28rem;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.1}.remaining-coach__bar{margin-top:10px;height:5px;border-radius:999px;background:#e2e8f0;overflow:hidden}.remaining-coach__bar-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#14b8a6)}.remaining-coach__bar-fill--protein{background:linear-gradient(90deg,#0d9488,#2dd4bf)}.remaining-coach__bar-fill--met{background:linear-gradient(90deg,#0f766e,#0d9488)}.remaining-coach__lead{margin:0 0 14px;font-size:.875rem;line-height:1.5;color:var(--text3)}.remaining-coach__ideas-label{margin:0 0 8px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}.remaining-coach__examples{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}.remaining-coach__example{display:flex;flex-direction:column;gap:8px;padding:12px 12px 12px 14px;border-radius:14px;background:#fff;border:1px solid #e2e8f0;border-left:3px solid rgba(15,118,110,.45)}.remaining-coach__example-copy{min-width:0}.remaining-coach__example-name{display:block;font-size:.92rem;font-weight:700;letter-spacing:-.01em;color:var(--text)}.remaining-coach__example-meta{display:block;margin-top:2px;font-size:.72rem;font-weight:600;color:var(--text3)}.remaining-coach__example-tags{display:flex;flex-wrap:wrap;gap:6px}.remaining-coach__example-tags span{display:inline-flex;align-items:center;padding:4px 8px;border-radius:8px;background:#0d948814;color:var(--teal);font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums}.remaining-coach__note{margin:0;font-size:.68rem;line-height:1.4;color:var(--text3)}.log-again{margin:0;padding:18px 16px 14px;border-radius:var(--radius);border:1px solid rgba(15,118,110,.12);background:linear-gradient(180deg,#f8fffd,#fff 55%);box-shadow:0 8px 22px #0f766e0d}.log-again__head{margin-bottom:12px}.log-again__eyebrow{margin:0 0 2px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.log-again__title{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1.2}.log-again__sub{margin:4px 0 0;font-size:.8125rem;line-height:1.4;color:var(--text3)}.log-again__scroll{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none}.log-again__scroll::-webkit-scrollbar{display:none}.log-again-chip{flex:0 0 auto;width:min(200px,72vw);scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:0 1px #0f172a08;transition:border-color .15s,background .15s,transform .1s,box-shadow .15s}.log-again-chip:hover{border-color:#0f766e47;box-shadow:0 6px 16px #0f766e14}.log-again-chip:active:not(:disabled){transform:scale(.98);border-color:color-mix(in srgb,var(--teal) 40%,var(--border));background:#f0fdfa}.log-again-chip:disabled{opacity:.6;cursor:wait}.log-again-chip__top{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:2px}.log-again-chip__name{font-size:.9rem;font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.log-again-chip__meta{font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text3)}.log-again-chip__action{margin-top:4px;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--teal)}.log-again-chip__count{font-size:.6875rem;font-weight:700;color:var(--teal);background:var(--teal-dim);padding:2px 7px;border-radius:999px}.log-again-chip__badge{font-size:.625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#b45309;background:#fffbeb;border:1px solid #fde68a;padding:2px 7px;border-radius:999px}.log-again-chip__badge--usual{color:var(--teal);background:#0f766e14;border-color:#0f766e29}.portion-scale{margin:0 0 16px;padding:12px 12px 10px;border-radius:12px;border:1px solid color-mix(in srgb,var(--teal) 16%,var(--border));background:var(--muted)}.portion-scale__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.portion-scale__label{font-size:.8125rem;font-weight:600;color:var(--text)}.portion-scale__active{font-size:.75rem;color:var(--teal);font-weight:600}.portion-scale__field{margin:0 0 8px}.portion-scale__select{width:100%}.portion-scale__hint{margin:0 0 10px}.portion-scale__chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.portion-scale__chips-label{font-size:.75rem;font-weight:600;color:var(--text3)}.portion-scale__chip{border:1px solid var(--border);background:var(--surface);color:var(--text2);font:inherit;font-size:.75rem;font-weight:600;min-height:32px;padding:6px 10px;border-radius:999px;cursor:pointer}.portion-scale__chip.is-active{border-color:var(--teal);background:var(--teal-dim);color:var(--teal)}.portion-amount__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.portion-amount__value{min-width:0}.portion-amount__unit{min-width:5.5rem}.meal-review-item-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px}.meal-review-qty{flex:1 1 12rem;min-width:0;display:flex;flex-direction:column;gap:6px}.meal-review-qty__label{font-size:.78rem;font-weight:600;letter-spacing:.01em;color:var(--text3)}.meal-review-qty__row{display:grid;grid-template-columns:minmax(4.5rem,1fr) minmax(5.5rem,.95fr);align-items:stretch;min-height:44px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;overflow:hidden}.meal-review-qty__row:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #0d948826}.meal-review-qty__input,.meal-review-qty__unit{border:0;border-radius:0;background:transparent;font-family:inherit;font-size:1rem;min-width:0;min-height:44px;box-shadow:none}.meal-review-qty__input{padding:10px 12px;font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}.meal-review-qty__input:focus,.meal-review-qty__unit:focus{outline:none}.meal-review-qty__unit{padding:10px 28px 10px 12px;border-left:1px solid #e2e8f0;color:var(--text2);font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1.4 1.2 6 5.8l4.6-4.6 1.2 1.2L6 8.2.2 2.4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px 7px;cursor:pointer}.meal-review-qty__unit--fixed{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-left:1px solid #e2e8f0;color:var(--text2);font-weight:700;font-size:.92rem;background:#f8fafc}.meal-review-weight,.meal-review-amount{flex:1 1 6rem;min-width:0;margin:0}.meal-review-unit{flex:0 1 6.5rem;min-width:0;margin:0}.meal-review-unit select{width:100%;max-width:100%}.meal-review-item-kcal{flex:0 0 auto;margin-left:auto;align-self:flex-end;padding-bottom:10px;font-size:.85rem;font-weight:600;color:var(--text2);white-space:nowrap}.portion-item-quick{display:flex;flex-wrap:wrap;gap:6px}.portion-item-quick__btn{border:1px solid var(--border-subtle);background:var(--surface);color:var(--text2);font:inherit;font-size:.75rem;font-weight:600;padding:5px 10px;border-radius:999px;cursor:pointer}.portion-item-quick__btn:active{transform:scale(.97)}.portion-scale__options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.portion-scale__btn{border:1px solid var(--border);background:var(--surface);color:var(--text2);font:inherit;font-size:.8125rem;font-weight:600;min-height:40px;padding:8px 4px;border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s,color .15s,transform .1s}.portion-scale__btn.is-active{border-color:var(--teal);background:var(--teal-dim);color:var(--teal);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 25%,transparent)}.portion-scale__btn:active:not(.is-active){transform:scale(.97)}@media(max-width:380px){.portion-scale__btn{font-size:.75rem;min-height:38px;padding:6px 2px}}.day-wrap-up{margin-bottom:14px;padding:16px;border-radius:var(--radius);border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#f8fafc,#fff 68%);box-shadow:0 8px 24px #0f172a0a}.day-wrap-up__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.day-wrap-up__copy{min-width:0}.day-wrap-up__eyebrow{margin:0 0 4px;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#64748b}.day-wrap-up__title{margin:0;font-size:1.12rem;font-weight:800;line-height:1.25;color:var(--text);letter-spacing:-.02em}.day-wrap-up__dismiss{border:1px solid #e2e8f0;background:#fff;color:var(--text3);font-size:.95rem;line-height:1;width:32px;height:32px;border-radius:10px;cursor:pointer;flex:0 0 auto}.day-wrap-up__dismiss:active{background:#f1f5f9}.day-wrap-up__insight{margin:0 0 12px;font-size:.95rem;line-height:1.5;color:var(--text);font-weight:600}.day-wrap-up__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px}.day-wrap-up__stat{padding:11px 8px;border-radius:14px;background:#fff;border:1px solid #e2e8f0;text-align:left}.day-wrap-up__stat-value{display:block;font-size:1.05rem;font-weight:800;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}.day-wrap-up__stat-value small{margin-left:1px;font-size:.72rem;font-weight:700;color:var(--text3)}.day-wrap-up__stat-label{display:block;margin-top:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text3)}.day-wrap-up__details{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}.day-wrap-up__detail{margin:0;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;font-size:.82rem;line-height:1.45;color:var(--text3)}.day-wrap-up__suggestion{margin:0;padding:12px;border-radius:12px;background:#0d948814;border:1px solid rgba(13,148,136,.14);font-size:.84rem;line-height:1.45;color:var(--text);font-weight:600}.day-wrap-up__coach{margin:10px 0 0;padding:12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;font-size:.82rem;line-height:1.45;color:var(--text3)}.day-wrap-up__coach-label{display:block;margin-bottom:4px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--teal)}.habit-score{margin-bottom:14px;padding:14px 16px}.habit-score__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.habit-score__eyebrow{margin:0 0 4px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--teal)}.habit-score__label{margin:0;font-size:1rem;font-weight:700;color:var(--text)}.habit-score__ring{--score: 0;--dash: 0;position:relative;width:52px;height:52px;flex-shrink:0}.habit-score__ring:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(var(--teal) calc(var(--score) * 1%),var(--border) 0);mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px))}.habit-score__value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:700;color:var(--text)}.habit-score__meta{margin:0 0 6px;font-size:.8125rem;color:var(--text2)}.habit-score__note{margin:0;font-size:.75rem;color:var(--text3)}.referral-card{margin:0;padding:16px;border-radius:var(--radius);border:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafc,#fff 70%)}.referral-card__eyebrow{margin:0 0 2px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.referral-card__title{margin:0 0 6px;font-size:1rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.referral-card__text{margin:0 0 12px;font-size:.8125rem;line-height:1.45;color:var(--text3)}.referral-card__link-wrap{margin-bottom:12px}.referral-card__link{width:100%;font:inherit;font-size:.75rem;padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:var(--text3)}.referral-card__actions{display:flex;flex-wrap:wrap;gap:8px}.nutrition-trust{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.nutrition-trust--label{color:#0f766e;background:color-mix(in srgb,var(--teal) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 28%,var(--border))}.nutrition-trust--ai{color:#1d4ed8;background:color-mix(in srgb,#3b82f6 10%,var(--surface));border:1px solid color-mix(in srgb,#3b82f6 22%,var(--border))}.nutrition-trust--quick{color:#b45309;background:color-mix(in srgb,#f59e0b 12%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 24%,var(--border))}.nutrition-trust--matched{color:#0f766e;background:color-mix(in srgb,var(--teal) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 28%,var(--border))}.nutrition-trust--estimate{color:#b45309;background:color-mix(in srgb,#f59e0b 10%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 22%,var(--border))}.nutrition-trust-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.nutrition-trust-summary--warn{padding:8px 10px;border-radius:10px;background:color-mix(in srgb,#f59e0b 10%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 24%,var(--border))}.match-check-banner{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,#f59e0b 12%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 28%,var(--border))}.match-check-banner__text{margin:0;font-size:.88rem;line-height:1.45;color:#92400e}.p1-fallback-section{margin:0 0 18px}.p1-fallback-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.p1-fallback-item{padding:12px;border-radius:12px;background:color-mix(in srgb,#f59e0b 8%,var(--surface));border:1px solid color-mix(in srgb,#f59e0b 22%,var(--border))}.p1-fallback-item--compact{margin:8px 0 0;padding:10px}.p1-fallback-item__label{margin:0 0 8px;font-size:.88rem}.p1-fallback-item__rename{display:flex;gap:8px;align-items:flex-end}.p1-fallback-item__field{flex:1 1 auto;min-width:0;margin:0}.p1-fallback-item__input{width:100%}.p1-fallback-item__apply{flex:0 0 auto;white-space:nowrap}.p1-fallback-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.p1-fallback-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,#f59e0b 30%,var(--border));background:var(--surface);color:inherit;border-radius:999px;padding:6px 10px;font-size:.82rem;line-height:1.2;cursor:pointer}.p1-fallback-chip:hover,.p1-fallback-chip:focus-visible{background:color-mix(in srgb,#f59e0b 14%,var(--surface));outline:none}.missing-dish-report{margin-top:8px;font-size:.82rem}.missing-dish-report[disabled]{opacity:.72;cursor:default}.offline-queue-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--teal) 22%,var(--border));background:color-mix(in srgb,var(--teal) 6%,var(--surface))}.offline-queue-banner p{margin:0;font-size:.88rem;line-height:1.45}.offline-queue-banner--ready{border-color:color-mix(in srgb,#0d9488 28%,var(--border));background:color-mix(in srgb,#0d9488 10%,var(--surface))}.nutrition-review-trust__lead--warn{color:#92400e;font-weight:600}.nutrition-review-trust__match-check{margin:0 0 8px;font-size:.88rem;line-height:1.45;color:#92400e}.log-weight-item__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.log-weight-item__name{flex:1 1 auto;min-width:0}.log-weight-item__kcal{margin-left:auto}.meal-review-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.meal-review-item-head strong{flex:1 1 auto;min-width:0}.meal-review-item-head .meal-review-delete{margin-left:auto}.nutrition-review-trust{margin:0 0 14px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface2)}.nutrition-review-trust__lead{margin:8px 0 0;font-size:.8125rem;line-height:1.45;color:var(--text2)}.nutrition-review-trust__micros{margin:6px 0 0;font-size:.8125rem;font-weight:600;color:var(--text)}.nutrition-review-trust__hint{margin:8px 0 0;color:var(--text3)}.meal-review-summary__micros{display:block;margin-top:4px;font-size:.8125rem;font-weight:600;color:var(--text2)}.log-section__accuracy{margin:6px 0 0;color:var(--text3);line-height:1.45}.log-section--voice{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.welcome-panel__discount{margin:12px 0 0;padding:10px 12px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--teal) 35%,var(--border));background:color-mix(in srgb,var(--teal) 6%,var(--surface))}.welcome-panel__discount-link{font-size:.875rem;font-weight:700;color:var(--teal)}.landing-discount--promo{margin-bottom:18px;padding:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--teal) 24%,var(--border));border-radius:18px;background:radial-gradient(100% 120% at 0% 0%,color-mix(in srgb,var(--teal) 12%,transparent) 0%,transparent 50%),linear-gradient(180deg,color-mix(in srgb,var(--teal) 8%,#f0fdfa) 0%,var(--surface) 100%);box-shadow:0 10px 32px color-mix(in srgb,var(--teal) 10%,transparent)}.landing-discount__promo-row{display:flex;align-items:flex-start;gap:16px;padding:18px 16px 14px;border-bottom:1px solid color-mix(in srgb,var(--teal) 12%,var(--border))}.landing-discount__badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;padding:10px 12px;border-radius:16px;background:var(--teal);color:#fff;line-height:1;flex-shrink:0;box-shadow:0 6px 16px color-mix(in srgb,var(--teal) 35%,transparent)}.landing-discount__badge-pct{font-size:1.5rem;font-weight:800;letter-spacing:-.04em}.landing-discount__badge-off{margin-top:2px;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.92}.landing-discount__intro{min-width:0}.landing-discount__eyebrow{margin:0 0 6px;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.landing-discount__title{margin:0 0 8px;font-size:1.35rem;font-weight:800;line-height:1.2;letter-spacing:-.03em;color:var(--text)}.landing-discount__lead{margin:0;font-size:.9375rem;line-height:1.5;color:var(--text2)}.landing-discount__paths{display:grid;gap:12px;margin:0;padding:14px 16px 16px}.landing-discount__path{padding:14px 14px 12px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.landing-discount__path--public{border-color:color-mix(in srgb,var(--teal) 22%,var(--border));background:color-mix(in srgb,var(--teal) 4%,var(--surface))}.landing-discount__path--senior{border-color:color-mix(in srgb,var(--teal) 12%,var(--border))}.landing-discount__path-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.landing-discount__path-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;font-size:1rem;font-weight:700;color:var(--teal);background:var(--teal-dim);flex-shrink:0}.landing-discount__path-label{margin:0 0 2px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3)}.landing-discount__path-title{margin:0;font-size:1rem;font-weight:700;color:var(--text)}.landing-discount__path-text{margin:0 0 12px;font-size:.8125rem;line-height:1.45;color:var(--text2)}.landing-discount__legal{margin:0;padding:0 16px 8px}.landing-discount__signin{margin:0;padding:0 16px 16px}@media(min-width:720px){.landing-discount__paths{grid-template-columns:1fr 1fr}}.log-weight-list,.log-side-list{list-style:none;margin:16px 0;padding:0;display:grid;gap:12px}.log-weight-item,.log-side-item{padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--surface)}.log-weight-item__head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px}.log-weight-item__name{font-size:1rem}.log-weight-item__kcal{font-size:.85rem;color:var(--muted);white-space:nowrap}.log-weight-item__ai{margin:0 0 10px}.log-weight-item__field{margin:0}.log-step-detected{margin:12px 0 16px;padding:12px;border-radius:var(--radius);background:var(--surface-2, var(--surface));border:1px solid var(--border-subtle)}.log-step-detected__label{margin:0 0 8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.log-step-detected__list{margin:0;padding-left:1.1rem;font-size:.875rem}.log-side-item{display:grid;gap:10px}.log-side-item__pick{display:flex;align-items:center;gap:10px;font-weight:600;cursor:pointer}.log-side-item__grams{margin:0}.log-side-empty{margin:12px 0 16px;padding:12px;border-radius:var(--radius);background:var(--surface-2, var(--surface))}.log-adjust-total{margin:12px 0 4px;font-size:1.05rem;font-weight:700}.log-adjust-total--range{color:var(--text);line-height:1.45}.log-adjust-section__title{margin:20px 0 8px;font-size:.95rem;font-weight:700}.log-adjust-section__title .optional-tag{font-weight:500}.log-adjust-section__hint{margin:0 0 10px}.log-adjust-extras{margin:16px 0;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--surface)}.log-adjust-extras__summary{cursor:pointer;font-weight:600;list-style:none}.log-adjust-extras__summary::-webkit-details-marker{display:none}.log-adjust-extras[open] .log-adjust-extras__summary{margin-bottom:10px}.log-adjust-clarify{margin:0 0 16px}html.is-guest{--landing-muted: #475569;--landing-muted-soft: #64748b}html.is-guest .view-page--guest .view-page__guest-row{gap:0;padding:0 0 32px}.landing-section{padding:clamp(40px,6vw,72px) 0}.landing-section--open{background:var(--surface, #fff)}.landing-section--teal{background:linear-gradient(180deg,#f4faf9,#f8fbfa)}.landing-section--elevated{padding-left:0;padding-right:0}.landing-section__inner{width:min(1160px,calc(100% - 32px));margin-inline:auto}.landing-section__eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin:0 0 8px}.landing-section__title{font-size:clamp(1.5rem,3.2vw,2rem);letter-spacing:-.03em;margin:0 0 10px;color:var(--text)}.landing-section__lead{font-size:1.02rem;line-height:1.55;color:var(--landing-muted);margin:0 0 20px;max-width:62ch}.site-header--scrolled{box-shadow:0 8px 24px #0f172a0f}.site-header__menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);margin-left:auto}@media(min-width:768px){.site-header__menu-btn{display:none}}.site-header__nav--open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:12px 16px 16px;gap:12px}@media(min-width:768px){.site-header__nav--open{position:static;flex-direction:row;border:none;padding:0}}.landing-hero-v2{padding:clamp(28px,5vw,56px) 0 clamp(32px,4vw,48px);border:none;box-shadow:none;background:#fff;border-radius:0}.landing-hero-v2__grid{display:grid;gap:28px;align-items:center}@media(min-width:900px){.landing-hero-v2__grid{grid-template-columns:1fr 1fr;gap:40px}}.landing-hero-v2__headline{font-size:clamp(2rem,4.5vw,2.75rem);line-height:1.08;letter-spacing:-.04em;margin:0 0 14px}.landing-hero-v2__intl{font-size:.95rem;color:var(--landing-muted);margin:0 0 18px}.landing-hero-v2__actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.landing-hero-v2__trust-row{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.82rem;color:var(--landing-muted);margin:0}.landing-hero-v2__visual{display:grid;gap:14px}@media(min-width:900px){.landing-hero-v2__visual{position:relative}.landing-hero-v2__visual .landing-result-card{position:absolute;right:8px;bottom:12px;width:min(100%,290px)}}.landing-pricing__compare-details{margin-top:18px}.landing-pricing__compare-details summary{cursor:pointer;font-weight:600}.site-header__inner{position:relative;flex-wrap:wrap}@media(max-width:767px){.site-header__actions .btn-primary{padding-inline:12px}}.landing-result-card{border:1px solid rgba(13,107,100,.14);border-top:3px solid var(--teal);border-radius:14px;padding:16px;background:#fff;box-shadow:0 12px 32px #0f172a14}.landing-result-card__meal{font-weight:700;margin:0 0 6px}.landing-result-card__portions{font-size:.82rem;color:var(--text);margin:0 0 4px;line-height:1.4}.landing-result-card__serving{font-size:.78rem;color:var(--text3);margin:0 0 10px}.landing-result-card__kcal{font-size:1.75rem;font-weight:700;color:var(--teal);margin:0;line-height:1.1}.landing-result-card__range{font-size:.82rem;color:var(--text3);margin:4px 0 10px}.landing-result-card__macros{display:flex;flex-wrap:wrap;gap:10px;font-size:.85rem;margin-bottom:10px}.landing-result-card__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.78rem}.landing-result-card__badge{display:inline-flex;padding:3px 8px;border-radius:999px;background:var(--teal-dim);color:var(--teal);font-weight:600}.landing-result-card__review{color:var(--teal);font-weight:600}.landing-trust-strip{padding:14px 0;border-block:1px solid var(--border-subtle);background:#fafcfb}.landing-trust-strip__text{font-size:.82rem;line-height:1.5;color:var(--landing-muted);text-align:center;margin:0;max-width:920px;margin-inline:auto}@media(max-width:640px){.landing-trust-strip__text{max-width:34ch}}.landing-product-demo--static{margin-top:8px}.landing-product-demo__label{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--teal);margin:0 0 14px}.landing-product-demo__steps{list-style:none;margin:0;padding:0;display:grid;gap:18px}@media(min-width:768px){.landing-product-demo__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}.landing-product-demo__step{display:flex;flex-direction:column;gap:10px;border:1px solid var(--border-subtle);border-radius:14px;padding:12px;background:#fff}.landing-product-demo__step .landing-photo{border-radius:10px;overflow:hidden}.landing-product-demo__step .landing-photo__img{aspect-ratio:4 / 3;object-fit:cover;width:100%;height:auto;background:#f1f5f9}.landing-product-demo__step-title{font-size:.88rem;font-weight:600;color:var(--text);margin:0;line-height:1.4}.landing-product-demo__step-num{color:var(--teal)}.landing-product-demo__frame{border-radius:16px;overflow:hidden;border:1px solid var(--border);background:#0f172a;position:relative}.landing-product-demo__frame--video{background:#0f172a}.landing-product-demo__video{width:100%;height:auto;display:block;aspect-ratio:4 / 3;object-fit:cover;background:#f4faf9}.landing-product-demo__captions{position:absolute;left:12px;bottom:12px;right:12px;display:flex;flex-wrap:wrap;gap:6px}.landing-product-demo__frame--video .landing-product-demo__caption{position:static;display:inline-flex}.landing-result-card__kcal .review-kcal-label{color:var(--landing-muted);font-weight:600}@media(prefers-reduced-motion:reduce){.landing-product-demo__video[autoplay],.landing-product-demo__frame--video .landing-product-demo__video{display:none}.landing-product-demo__frame--video:before{content:"";display:block;aspect-ratio:4 / 3;background:#f4faf9 center / cover no-repeat url(/images/landing-demo-poster.jpg)}}.landing-product-demo__slides{display:grid;grid-template-columns:1fr}.landing-product-demo__slide{grid-area:1 / 1;opacity:0;transition:opacity .4s ease}.landing-product-demo__slide.is-active{opacity:1}.landing-product-demo__slide img{width:100%;height:auto;display:block;aspect-ratio:16 / 10;object-fit:cover}.landing-product-demo__caption{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:8px;background:#0f172ac7;color:#fff;font-size:.78rem;font-weight:600}.landing-product-demo__controls{display:flex;gap:8px;margin-top:12px}.landing-global-meals__carousel{position:relative}.landing-global-meals__track{display:grid;grid-auto-flow:column;grid-auto-columns:min(100%,320px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding-bottom:4px;-webkit-overflow-scrolling:touch}@media(min-width:900px){.landing-global-meals__track{grid-auto-columns:calc((100% - 28px) / 3)}}.landing-global-meals__card{scroll-snap-align:start;border:1px solid var(--border);border-radius:12px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:10px}.landing-global-meals__region{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--teal)}.landing-global-meals__name{font-size:1rem;margin:0}.landing-global-meals__portions{font-size:.82rem;color:var(--text);margin:0;line-height:1.4}.landing-global-meals__serving{font-size:.78rem;color:var(--text3);margin:0}.landing-global-meals__stats{font-size:.82rem;color:var(--landing-muted);margin:0}.landing-global-meals__nav{display:flex;gap:8px;margin-top:12px}.landing-global-meals__nav .btn{min-height:44px;min-width:44px}.landing-global-meals__card .landing-photo--regional .landing-photo__img{aspect-ratio:4 / 3;object-fit:cover;width:100%;height:auto}.landing-hero-v2__visual .landing-photo--hero .landing-photo__img{aspect-ratio:4 / 3;object-fit:cover;width:100%;height:auto;border-radius:12px}.landing-advantages__grid{display:grid;gap:14px}@media(min-width:640px){.landing-advantages__grid{grid-template-columns:repeat(2,1fr)}}.landing-advantage{padding:18px;border-radius:12px;border:1px solid var(--border-subtle);background:#fff}.landing-advantage__icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--teal-dim);color:var(--teal);margin-bottom:10px}.landing-advantage__icon svg{width:20px;height:20px}.landing-advantage__title{font-size:1rem;margin:0 0 6px}.landing-advantage__body{font-size:.88rem;color:var(--landing-muted);margin:0;line-height:1.45}.landing-accuracy-v2__list{margin:0;padding-left:1.1rem;color:var(--landing-muted);line-height:1.55}.landing-accuracy-v2__list li+li{margin-top:8px}.landing-pricing-v2{border:none;box-shadow:none;background:transparent;padding:0}.landing-pricing-v2__scan-note{font-size:.88rem;color:var(--landing-muted);margin:0 0 18px;padding:12px 14px;border-radius:10px;background:#0d6b640f;border:1px solid rgba(13,107,100,.1)}.landing-pricing-v2__essential-line{font-size:.88rem;color:var(--landing-muted);margin:16px 0 0}.landing-social-proof{text-align:center;max-width:52ch;margin-inline:auto}.landing-social-proof__quote{font-size:1.05rem;line-height:1.5;color:var(--landing-muted);margin:0}.landing-discount-banner{padding:14px 16px;border-radius:12px;border:1px solid rgba(13,107,100,.14);background:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.landing-discount-banner__text{margin:0;font-size:.92rem}.landing-privacy-support__grid{display:grid;gap:20px}@media(min-width:768px){.landing-privacy-support__grid{grid-template-columns:repeat(3,1fr)}}.landing-privacy-support__col h3{font-size:1rem;margin:0 0 8px}.landing-privacy-support__col p{font-size:.88rem;color:var(--landing-muted);margin:0;line-height:1.45}.landing-final-cta{padding:clamp(40px,6vw,64px) 0;background:linear-gradient(180deg,#ecf8f6,#f4faf9);text-align:center}.landing-final-cta__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}.guest-landing-footer-v2{padding:28px 0 36px;background:#0f172a;color:#e2e8f0}.guest-landing-footer-v2 a,.guest-landing-footer-v2 .link-btn{color:#cbd5e1}.guest-landing-footer-v2 a:hover,.guest-landing-footer-v2 .link-btn:hover{color:#fff}.guest-landing-footer-v2__grid{display:grid;gap:20px}@media(min-width:768px){.guest-landing-footer-v2__grid{grid-template-columns:2fr 1fr 1fr}}.guest-landing-footer-v2__brand{font-weight:700;font-size:1.05rem;color:#fff;margin:0 0 8px}.guest-landing-footer-v2__links{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:.82rem}.guest-landing-footer-v2__meta{font-size:.78rem;color:#94a3b8;margin-top:20px}.landing-pricing-v2 .landing-pricing__toggle-btn:focus-visible,.landing-global-meals__track:focus-visible,.landing-faq__item summary:focus-visible,.landing-pricing__compare-details summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.landing-social-proof__detail{margin-top:10px}@media(prefers-reduced-motion:reduce){.landing-product-demo__slide{transition:none}}.analytics-consent{position:fixed;left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-b) + 8px);z-index:45;margin:0 12px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fffffffa;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:10px}.analytics-consent__text{margin:0;font-size:.8125rem;line-height:1.45;color:var(--text2)}.analytics-consent__actions{display:flex;gap:8px;justify-content:flex-end}html.is-guest:has(.guest-sticky-cta--visible) .analytics-consent{bottom:calc(var(--nav-h) + var(--safe-b) + 72px)}@media(min-width:640px){.analytics-consent{flex-direction:row;align-items:center;max-width:640px;margin-left:auto;margin-right:auto}.analytics-consent__text{flex:1}}.mnova-bubble{position:fixed;right:16px;bottom:calc(var(--nav-h) + var(--safe-b) + 16px);z-index:150;display:inline-flex;align-items:center;gap:8px;padding:10px 14px 10px 12px;border:none;border-radius:999px;background:linear-gradient(135deg,var(--teal) 0%,#0a5c56 100%);color:#fff;font:600 .875rem/1 var(--font);box-shadow:0 8px 24px #0d6b6459;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.mnova-bubble:hover{transform:translateY(-1px);box-shadow:0 10px 28px #0d6b646b}.mnova-bubble:active{transform:translateY(0)}.mnova-bubble[hidden]{display:none!important}.mnova-bubble--has-tip{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent, #2d8a5e) 45%,transparent),0 8px 24px #0000002e}.mnova-bubble--has-tip .mnova-bubble__label:after{content:" · help";font-weight:500;opacity:.85}.mnova-bubble__icon{display:flex;width:22px;height:22px}.mnova-bubble__icon svg{width:100%;height:100%}@media(min-width:1024px)and (pointer:fine){.mnova-bubble{right:24px;bottom:24px}}.mnova-chat-sheet{align-items:flex-end;padding:0;background:#00000073}.mnova-chat-panel{width:100%;max-width:520px;max-height:min(85vh,640px);margin:0 auto;display:flex;flex-direction:column;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:0;overflow:hidden}.mnova-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.mnova-chat-head__brand{display:flex;gap:12px;align-items:center;min-width:0}.mnova-chat-head__avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-weight:700;font-size:1.1rem;flex-shrink:0}.mnova-chat-head__title{margin:0;font-size:1.05rem}.mnova-chat-head__sub{margin:2px 0 0}.mnova-chat-close{min-width:40px;padding:8px}.mnova-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;min-height:180px;max-height:42vh}.mnova-msg{display:flex}.mnova-msg--user{justify-content:flex-end}.mnova-msg--assistant{justify-content:flex-start}.mnova-msg__bubble{max-width:88%;padding:10px 14px;border-radius:16px;font-size:.9375rem;line-height:1.45}.mnova-msg--user .mnova-msg__bubble{background:var(--teal);color:#fff;border-bottom-right-radius:4px}.mnova-msg--assistant .mnova-msg__bubble{background:var(--surface-2, #f3f5f4);color:var(--text);border-bottom-left-radius:4px}.mnova-msg--assistant .mnova-msg__bubble p{margin:0}.mnova-msg--assistant .mnova-msg__bubble p+p{margin-top:.65em}.mnova-msg--loading .mnova-msg__bubble{opacity:.7;font-style:italic}.mnova-chat-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px;flex-shrink:0}.mnova-chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 12px;font:500 .8125rem/1.2 var(--font);cursor:pointer}.mnova-chip:hover{border-color:var(--teal);color:var(--teal)}.mnova-chip--action{border-color:color-mix(in srgb,var(--teal) 45%,var(--border));background:color-mix(in srgb,var(--teal) 8%,var(--surface));font-weight:600}.mnova-chip--action:hover{background:color-mix(in srgb,var(--teal) 14%,var(--surface))}.mnova-chip__go{margin-right:4px;opacity:.85}.mnova-chat-form{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border);align-items:flex-end;flex-shrink:0}.mnova-chat-input{flex:1;min-height:44px;max-height:120px;resize:none;border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font:inherit;background:var(--surface)}.mnova-chat-send{flex-shrink:0;min-width:72px}.mnova-chat-disclaimer{margin:0;padding:0 16px 12px;text-align:center}@media(min-width:1024px)and (pointer:fine){.mnova-chat-sheet{align-items:center;padding:24px}.mnova-chat-panel{border-radius:var(--radius-lg);max-height:min(80vh,680px)}.mnova-chat-messages{max-height:48vh}}
