:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--nfh-font-body:"Segoe UI Variable", Aptos, "Trebuchet MS", "Segoe UI", sans-serif;--nfh-font-display:"Segoe UI Variable Display", Aptos, "Trebuchet MS", "Segoe UI", sans-serif;--nfh-canvas:var(--tone-neutral-16);--nfh-canvas-deep:var(--tone-neutral-12);--nfh-surface-raised:color-mix(in oklch, var(--tone-accent-22) 94%, transparent);--nfh-surface-overlay:color-mix(in oklch, var(--tone-accent-22) 82%, transparent);--nfh-surface-glass:color-mix(in oklch, var(--tone-accent-22) 70%, transparent);--nfh-surface-hover:color-mix(in oklch, var(--tone-accent-70) 10%, transparent);--nfh-text-primary:var(--tone-neutral-96);--nfh-text-secondary:var(--tone-neutral-84);--nfh-text-muted:var(--tone-accent-75);--nfh-accent:var(--tone-accent-60);--nfh-accent-strong:var(--tone-accent-70);--nfh-accent-contrast:var(--tone-neutral-16);--nfh-accent-text:var(--tone-accent-80);--nfh-accent-soft:color-mix(in oklch, var(--tone-accent-60) 14%, transparent);--nfh-accent-glow:color-mix(in oklch, var(--tone-accent-60) 18%, transparent);--nfh-cyan:var(--tone-brand-80);--nfh-cyan-soft:color-mix(in oklch, var(--tone-brand-80) 10%, transparent);--nfh-border:color-mix(in oklch, var(--tone-neutral-94) 11%, transparent);--nfh-border-strong:color-mix(in oklch, var(--tone-neutral-94) 20%, transparent);--nfh-focus:var(--tone-accent-75);--nfh-success:var(--tone-brand-80);--nfh-warning:var(--tone-accent-84);--nfh-danger:var(--tone-alert-80);--nfh-radius:20px;--nfh-radius-sm:14px;--nfh-radius-control:16px;--nfh-radius-pill:999px;--nfh-elev-1:0 14px 42px color-mix(in oklch, var(--tone-black) 24%, transparent);--nfh-elev-2:0 28px 78px color-mix(in oklch, var(--tone-black) 40%, transparent);--nfh-glass-blur:14px;--nfh-ease:cubic-bezier(.2, .7, .2, 1);--nfh-dur:.22s;--nfh-surface-base:var(--nfh-canvas);--nfh-panel-fill:var(--nfh-surface-glass);--nfh-violet:var(--nfh-accent);--nfh-violet-glow:var(--nfh-accent-glow);--danger:var(--nfh-danger)}:root[data-nfh-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--nfh-canvas:var(--tone-neutral-96);--nfh-canvas-deep:var(--tone-neutral-94);--nfh-surface-raised:color-mix(in oklch, var(--tone-neutral-98) 94%, transparent);--nfh-surface-overlay:color-mix(in oklch, var(--tone-neutral-98) 82%, transparent);--nfh-surface-glass:color-mix(in oklch, var(--tone-white) 68%, transparent);--nfh-surface-hover:color-mix(in oklch, var(--tone-accent-55) 8%, transparent);--nfh-text-primary:var(--tone-neutral-22);--nfh-text-secondary:var(--tone-accent-45);--nfh-text-muted:var(--tone-accent-50);--nfh-accent:var(--tone-accent-55);--nfh-accent-strong:var(--tone-accent-50);--nfh-accent-contrast:var(--tone-white);--nfh-accent-text:var(--tone-accent-40);--nfh-accent-soft:color-mix(in oklch, var(--tone-accent-55) 11%, transparent);--nfh-accent-glow:color-mix(in oklch, var(--tone-accent-55) 13%, transparent);--nfh-cyan:var(--tone-brand-60);--nfh-cyan-soft:color-mix(in oklch, var(--tone-brand-60) 8%, transparent);--nfh-border:color-mix(in oklch, var(--tone-accent-28) 11%, transparent);--nfh-border-strong:color-mix(in oklch, var(--tone-accent-28) 19%, transparent);--nfh-focus:var(--tone-accent-50);--nfh-success:var(--tone-brand-50);--nfh-warning:var(--tone-accent-50);--nfh-danger:var(--tone-alert-50);--nfh-elev-1:0 16px 46px color-mix(in oklch, var(--tone-accent-32) 10%, transparent);--nfh-elev-2:0 30px 82px color-mix(in oklch, var(--tone-accent-32) 16%, transparent)}:root[data-nfh-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{background:var(--nfh-canvas);scrollbar-color:color-mix(in srgb, var(--nfh-accent) 34%, transparent) transparent;min-width:0}html[data-nfh-theme] body{min-width:0;color:var(--nfh-text-primary);background:radial-gradient(62rem 38rem at 92% -8%, var(--nfh-accent-glow), transparent 66%), radial-gradient(48rem 34rem at -12% 64%, var(--nfh-cyan-soft), transparent 70%), var(--nfh-canvas);font-family:var(--nfh-font-body);text-rendering:optimizelegibility;background-attachment:fixed;overflow-x:clip}html[data-nfh-theme] :is(h1,h2,h3){color:var(--nfh-text-primary);font-family:var(--nfh-font-display);letter-spacing:-.035em;text-wrap:balance;font-weight:560}html[data-nfh-theme] :is(p,li,dd,dt,label,small){overflow-wrap:anywhere}html[data-nfh-theme] a{color:var(--nfh-accent-text);text-underline-offset:.18em;transition:color var(--nfh-dur) var(--nfh-ease), background-color var(--nfh-dur) var(--nfh-ease)}html[data-nfh-theme] a:hover{color:color-mix(in srgb, var(--nfh-accent-text) 82%, var(--nfh-text-primary))}html[data-nfh-theme] :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb, var(--nfh-focus) 72%, transparent);outline-offset:3px}html[data-nfh-theme] :is(input,select,textarea){border:1px solid var(--nfh-border-strong);border-radius:var(--nfh-radius-control);min-width:0;color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0d, transparent 42%), var(--nfh-surface-glass);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);transition:border-color var(--nfh-dur) var(--nfh-ease), background-color var(--nfh-dur) var(--nfh-ease), box-shadow var(--nfh-dur) var(--nfh-ease);box-shadow:inset 0 1px #ffffff4d}html[data-nfh-theme] :is(input,select,textarea):hover:not(:disabled){border-color:color-mix(in srgb, var(--nfh-accent) 36%, var(--nfh-border-strong))}html[data-nfh-theme] :is(input,select,textarea):focus{border-color:color-mix(in srgb, var(--nfh-accent) 62%, var(--nfh-border-strong));box-shadow:inset 0 1px 0 #ffffff57, 0 0 0 4px color-mix(in srgb, var(--nfh-accent) 11%, transparent)}html[data-nfh-theme] :is(input,textarea)::placeholder{color:var(--nfh-text-muted);opacity:1}html[data-nfh-theme] :is(button,[role=button]){touch-action:manipulation;transition:color var(--nfh-dur) var(--nfh-ease), background-color var(--nfh-dur) var(--nfh-ease), border-color var(--nfh-dur) var(--nfh-ease), box-shadow var(--nfh-dur) var(--nfh-ease), transform .14s var(--nfh-ease)}html[data-nfh-theme] :is(.nfh-chat-surface,.nfh-nutrition-page,.nfh-training-conversation,.nfh-body-v2,.nfh-account-page,.nfh-profile-page) button{min-height:44px}html[data-nfh-theme] :is(button,[role=button]):active:not(:disabled){transform:scale(.98)}html[data-nfh-theme] :is(button,input,select,textarea):disabled{cursor:not-allowed;opacity:.58}html[data-nfh-theme] button[aria-busy=true]:disabled{cursor:progress;opacity:.5}html[data-nfh-theme] :is(button.primary,.link-button,.link-like-primary,.nfh-cta-button,.nfh-training-primary-action,.nfh-cal-primary-action,.nfh-meal-detail-primary-action,.nfh-saved-meal-repeat){border-radius:var(--nfh-radius-control);min-height:44px;color:var(--nfh-accent-contrast);background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent));box-shadow:inset 0 1px 0 color-mix(in oklch, var(--tone-white) 42%, transparent), 0 12px 28px color-mix(in srgb, var(--nfh-accent) 21%, transparent);border:1px solid #ffffff3d;font-weight:760}html[data-nfh-theme] :is(button.primary,.link-button,.link-like-primary,.nfh-cta-button,.nfh-training-primary-action,.nfh-cal-primary-action,.nfh-meal-detail-primary-action,.nfh-saved-meal-repeat):hover:not(:disabled){color:var(--nfh-accent-contrast);background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent));box-shadow:inset 0 1px 0 color-mix(in oklch, var(--tone-white) 50%, transparent), 0 14px 32px color-mix(in srgb, var(--nfh-accent) 25%, transparent);border-color:#ffffff52}html[data-nfh-theme] :is(.muted,.state-panel-copy){color:var(--nfh-text-secondary)}html[data-nfh-theme] :is(.hero-panel,.surface-panel,.state-panel,.landing-axis,.auth-panel,.consent-panel,.public-info-page section,.nfh-account-section,.nfh-account-detail,.nfh-profile-identity,.nfh-profile-detail-nav,.nfh-profile-detail-form,.module-shell,.module-gate,.photo-vision,.nfh-daily-thread,.nfh-daily-thread-launcher){border-color:var(--nfh-border);border-radius:var(--nfh-radius);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0f, transparent 42%), var(--nfh-surface-glass);box-shadow:inset 0 1px 0 #ffffff4f, var(--nfh-elev-1);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04)}html[data-nfh-theme=light] :is(.hero-panel,.surface-panel,.state-panel,.landing-axis,.auth-panel,.consent-panel,.public-info-page section,.nfh-account-section,.nfh-account-detail,.nfh-profile-identity,.nfh-profile-detail-nav,.nfh-profile-detail-form,.module-shell,.module-gate,.photo-vision,.nfh-daily-thread,.nfh-daily-thread-launcher){box-shadow:inset 0 1px 0 color-mix(in oklch, var(--tone-white) 90%, transparent), var(--nfh-elev-1)}html[data-nfh-theme] .state-panel{border-left:3px solid color-mix(in srgb, var(--nfh-accent) 66%, transparent)}html[data-nfh-theme] .state-panel-title{color:var(--nfh-text-primary)}html[data-nfh-theme] :is(.danger,[data-tone=danger]){color:var(--nfh-danger)}html[data-nfh-theme] .app-nav{border-color:var(--nfh-border);color:var(--nfh-text-primary);background:linear-gradient(115deg, #ffffff0f, transparent 36%), color-mix(in srgb, var(--nfh-surface-glass) 92%, transparent);box-shadow:0 8px 32px color-mix(in srgb, var(--nfh-canvas-deep) 20%, transparent);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.05);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.05)}html[data-nfh-theme] :is(.app-brand,.workspace-sidebar-brand){color:var(--nfh-text-primary);font-family:var(--nfh-font-display);letter-spacing:-.025em;font-weight:650}html[data-nfh-theme] :is(.app-nav a,.nav-more-toggle){min-height:44px;color:var(--nfh-text-secondary)}html[data-nfh-theme] :is(.app-nav a,.nav-more-toggle):hover{color:var(--nfh-text-primary);background:var(--nfh-surface-hover)}html[data-nfh-theme] :is(.app-nav-link-active,.app-nav-link-active:hover){color:var(--nfh-accent-text);-webkit-text-decoration-color:var(--nfh-accent);text-decoration-color:var(--nfh-accent)}html[data-nfh-theme] .nav-more-menu{border-color:var(--nfh-border-strong);border-radius:var(--nfh-radius-sm);color:var(--nfh-text-primary);background:color-mix(in srgb, var(--nfh-surface-raised) 94%, transparent);box-shadow:var(--nfh-elev-2);-webkit-backdrop-filter:blur(var(--nfh-glass-blur));backdrop-filter:blur(var(--nfh-glass-blur))}html[data-nfh-theme] .nav-more-menu a:hover{color:var(--nfh-text-primary);background:var(--nfh-surface-hover)}html[data-nfh-theme] .workspace-sidebar{border-color:var(--nfh-border);color:var(--nfh-text-secondary);background:radial-gradient(circle at 50% -10%, var(--nfh-accent-soft), transparent 18rem), var(--nfh-surface-overlay)}html[data-nfh-theme] .workspace-sidebar-group h2{color:var(--nfh-text-muted)}html[data-nfh-theme] .workspace-sidebar-link{border-radius:var(--nfh-radius-control);min-height:44px;color:var(--nfh-text-secondary);transition:color var(--nfh-dur) var(--nfh-ease), border-color var(--nfh-dur) var(--nfh-ease)}html[data-nfh-theme] .workspace-sidebar-link:hover{color:var(--nfh-text-primary);background:var(--nfh-surface-hover)}html[data-nfh-theme=light] .workspace-sidebar-link:hover{background-color:var(--tone-neutral-98);background-image:linear-gradient(110deg, var(--nfh-accent-soft), var(--nfh-cyan-soft))}html[data-nfh-theme] .workspace-sidebar-link-active{border-color:color-mix(in srgb, var(--nfh-accent) 42%, var(--nfh-border));color:var(--nfh-text-primary);background:linear-gradient(110deg, var(--nfh-accent-soft), var(--nfh-cyan-soft)), var(--nfh-surface-glass)}html[data-nfh-theme] :is(.workspace-sidebar-glyph,.mobile-tab-glyph){border:1px solid color-mix(in srgb, var(--nfh-accent) 24%, var(--nfh-border));color:var(--nfh-text-muted);background:radial-gradient(circle, color-mix(in srgb, var(--nfh-accent) 15%, transparent), transparent 70%);border-radius:50%;place-items:center;display:inline-grid}html[data-nfh-theme] .workspace-sidebar-link-active .workspace-sidebar-glyph,html[data-nfh-theme] .mobile-tab-active .mobile-tab-glyph{border-color:color-mix(in srgb, var(--nfh-accent) 52%, var(--nfh-border));color:var(--nfh-accent-text);background:radial-gradient(circle, color-mix(in srgb, var(--nfh-accent) 26%, transparent), transparent 72%);box-shadow:0 0 18px color-mix(in srgb, var(--nfh-accent) 18%, transparent)}html[data-nfh-theme] .public-footer{border-color:var(--nfh-border);color:var(--nfh-text-muted);background:color-mix(in srgb, var(--nfh-surface-overlay) 78%, transparent)}html[data-nfh-theme] .landing-shell{width:min(100%,78rem)}html[data-nfh-theme] .landing-hero{border-color:var(--nfh-border-strong);border-radius:calc(var(--nfh-radius) + 4px);color:var(--nfh-text-primary);background:radial-gradient(34rem 24rem at 90% -18%, var(--nfh-accent-glow), transparent 68%), radial-gradient(24rem 20rem at -8% 100%, var(--nfh-cyan-soft), transparent 72%), var(--nfh-surface-glass);box-shadow:inset 0 1px 0 #ffffff61, var(--nfh-elev-1);-webkit-backdrop-filter:blur(var(--nfh-glass-blur));backdrop-filter:blur(var(--nfh-glass-blur))}html[data-nfh-theme=light] .landing-hero{background:radial-gradient(34rem 24rem at 90% -18%, var(--nfh-accent-glow), transparent 68%), radial-gradient(24rem 20rem at -8% 100%, var(--nfh-cyan-soft), transparent 72%), color-mix(in oklch, var(--tone-white) 58%, transparent)}html[data-nfh-theme] :is(.landing-kicker,.dashboard-kicker,.space-eyebrow){color:var(--nfh-accent-text)}html[data-nfh-theme] :is(.landing-title,.landing-section-title,.landing-axis-title,.onboarding-step-title){color:var(--nfh-text-primary)}html[data-nfh-theme] .landing-axis{width:100%;min-width:0;box-shadow:inset 0 1px #ffffff42}html[data-nfh-theme] .landing-axis:hover{border-color:color-mix(in srgb, var(--nfh-accent) 34%, var(--nfh-border-strong));background:color-mix(in srgb, var(--nfh-accent) 5%, var(--nfh-surface-glass))}html[data-nfh-theme] .landing-axis-glyph{border-color:color-mix(in srgb, var(--nfh-accent) 34%, var(--nfh-border));color:var(--nfh-accent-text);background:var(--nfh-accent-soft);box-shadow:0 0 18px color-mix(in srgb, var(--nfh-accent) 14%, transparent)}html[data-nfh-theme] .nfh-auth-shell{width:min(100%,30rem);margin-inline:auto;padding:clamp(1.25rem,4vw,3rem) 1rem}html[data-nfh-theme] .nfh-auth-shell>form,html[data-nfh-theme] .nfh-auth-shell>section{border:1px solid var(--nfh-border);border-radius:calc(var(--nfh-radius) + 4px);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff12, transparent 44%), var(--nfh-surface-glass);box-shadow:inset 0 1px 0 #ffffff57, var(--nfh-elev-1);-webkit-backdrop-filter:blur(var(--nfh-glass-blur));backdrop-filter:blur(var(--nfh-glass-blur));padding:clamp(1rem,4vw,1.5rem)}html[data-nfh-theme] .auth-segment{border-color:var(--nfh-border);border-radius:var(--nfh-radius-pill);background:color-mix(in srgb, var(--nfh-surface-overlay) 88%, transparent)}html[data-nfh-theme] .auth-segment button{border-radius:var(--nfh-radius-pill);min-height:44px;color:var(--nfh-text-secondary);background:0 0}html[data-nfh-theme] .auth-segment .auth-segment-active{color:var(--nfh-text-primary);background:var(--nfh-surface-raised);box-shadow:inset 0 1px 0 #ffffff6b, 0 6px 18px color-mix(in srgb, var(--nfh-canvas-deep) 16%, transparent)}html[data-nfh-theme] .public-info-page :is(h1,h2){color:var(--nfh-text-primary)}html[data-nfh-theme] .public-info-page :is(p,li){color:var(--nfh-text-secondary)}html[data-nfh-theme] .public-info-page .hero-panel{border-color:color-mix(in srgb, var(--nfh-accent) 24%, var(--nfh-border))}html[data-nfh-theme] :is(.page-shell,.public-info-page,.nfh-auth-shell){min-width:0}html[data-nfh-theme] .nfh-guided-shell{--ob-bg:var(--nfh-canvas);--ob-bg-glow:var(--nfh-accent-glow);--ob-card:var(--nfh-surface-glass);--ob-raised:var(--nfh-surface-overlay);--ob-text:var(--nfh-text-primary);--ob-muted:var(--nfh-text-secondary);--ob-line:var(--nfh-border);--ob-accent:var(--nfh-accent);--ob-accent-strong:var(--nfh-accent-strong);--ob-accent-ink:var(--nfh-accent-contrast);--ob-danger:var(--nfh-danger);font-family:var(--nfh-font-body);background:radial-gradient(circle at 86% -4%, var(--nfh-accent-glow), transparent 31rem), radial-gradient(circle at -10% 72%, var(--nfh-cyan-soft), transparent 28rem), var(--nfh-canvas)}html[data-nfh-theme] :is(.nfh-guided-intro,.nfh-guided-question,.nfh-guided-review,.nfh-guided-plan,.nfh-guided-card){border-color:var(--nfh-border);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0f, transparent 44%), var(--nfh-surface-glass);box-shadow:inset 0 1px 0 #ffffff57, var(--nfh-elev-1);-webkit-backdrop-filter:blur(var(--nfh-glass-blur));backdrop-filter:blur(var(--nfh-glass-blur))}html[data-nfh-theme] :is(.nfh-onboarding-mark,.nfh-onboarding-result-mark){border-color:color-mix(in srgb, var(--nfh-accent) 42%, var(--nfh-border));color:var(--nfh-accent-text);background:radial-gradient(circle, color-mix(in srgb, var(--nfh-accent) 24%, transparent), transparent 72%);box-shadow:inset 0 1px 0 #ffffff57, 0 0 24px color-mix(in srgb, var(--nfh-accent) 15%, transparent)}html[data-nfh-theme] .nfh-guided-kicker{color:var(--nfh-accent-text)!important}html[data-nfh-theme] :is(.nfh-onboarding-lede,.nfh-onboarding-help,.nfh-guided-footer){color:var(--nfh-text-secondary)!important}html[data-nfh-theme] .nfh-choice-card{border-color:var(--nfh-border);border-radius:var(--nfh-radius-control);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0a, transparent 48%), var(--nfh-surface-overlay);box-shadow:inset 0 1px #ffffff38}html[data-nfh-theme] .nfh-choice-card:hover:not(:disabled){border-color:color-mix(in srgb, var(--nfh-accent) 44%, var(--nfh-border));color:var(--nfh-text-primary);background:color-mix(in srgb, var(--nfh-accent) 6%, var(--nfh-surface-overlay))}html[data-nfh-theme] .nfh-choice-card[data-selected=true]{border-color:color-mix(in srgb, var(--nfh-accent) 68%, var(--nfh-border));color:var(--nfh-text-primary);background:linear-gradient(110deg, var(--nfh-accent-soft), var(--nfh-cyan-soft)), var(--nfh-surface-overlay)}html[data-nfh-theme] .nfh-choice-card[data-selected=true] .nfh-choice-check{border-color:var(--nfh-accent);color:var(--nfh-accent-contrast);background:var(--nfh-accent)}html[data-nfh-theme] :is(.nfh-guided-question textarea,.nfh-onboarding-input,.nfh-onboarding-wheel select){border-color:var(--nfh-border-strong);color:var(--nfh-text-primary);background:var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-guided-plan-grid article,.nfh-guided-review-item,.nfh-guided-first-action){border-color:var(--nfh-border);color:var(--nfh-text-primary);background:var(--nfh-surface-overlay)}html[data-nfh-theme] .nfh-guided-first-action{border-color:color-mix(in srgb, var(--nfh-accent) 34%, var(--nfh-border));background:linear-gradient(112deg, var(--nfh-accent-soft), var(--nfh-cyan-soft)), var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-plan-energy strong,.nfh-guided-first-action>span){color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-guided-controls{border-color:var(--nfh-border);background:color-mix(in srgb, var(--nfh-surface-glass) 94%, transparent);box-shadow:var(--nfh-elev-1)}html[data-nfh-theme] :is(.nfh-onboarding-back,.nfh-onboarding-skip,.nfh-guided-review-item button,.nfh-guided-controls>a){border-color:var(--nfh-border-strong)!important;color:var(--nfh-text-secondary)!important;background:var(--nfh-surface-glass)!important}html[data-nfh-theme] .nfh-today-shell{color:var(--nfh-text-primary);background:0 0}html[data-nfh-theme] .nfh-today-guided{border-color:color-mix(in srgb, var(--nfh-accent) 34%, var(--nfh-border-strong));border-left-color:var(--nfh-accent);border-radius:var(--nfh-radius-sm);color:var(--nfh-text-primary);background:radial-gradient(circle at 88% -35%, var(--nfh-accent-soft), transparent 66%), linear-gradient(145deg, #ffffff0d, transparent 48%), var(--nfh-surface-glass);box-shadow:inset 0 1px 0 #ffffff4d, 0 12px 28px color-mix(in srgb, var(--nfh-accent) 10%, transparent);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04)}html[data-nfh-theme] :is(.nfh-today-guided span,.nfh-today-guided small){color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-today-guided strong{color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-today-guided p{color:var(--nfh-text-secondary)}html[data-nfh-theme] .nfh-today-guided-actions>button{border-color:var(--nfh-border-strong);color:var(--nfh-text-secondary);background:color-mix(in srgb, var(--nfh-surface-glass) 94%, transparent)}html[data-nfh-theme] :is(.nfh-today-guided-actions>a,.nfh-today-guided-compact>a){border-color:color-mix(in srgb, var(--nfh-accent) 58%, var(--nfh-border));color:var(--nfh-accent-contrast);background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent));box-shadow:0 10px 24px color-mix(in srgb, var(--nfh-accent) 18%, transparent)}html[data-nfh-theme] :is(.nfh-cal-app,.nfh-meal-detail-layer,.nfh-saved-meal-panel,.nfh-food-search-panel){--cal-bg:var(--nfh-canvas);--cal-card:var(--nfh-surface-raised);--cal-card-soft:var(--nfh-surface-overlay);--cal-ink:var(--nfh-text-primary);--cal-muted:var(--nfh-text-muted);--cal-line:var(--nfh-border);--cal-green:var(--nfh-accent);--cal-blue:var(--nfh-cyan);--cal-red:var(--nfh-danger);--cal-orange:var(--nfh-warning);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-nutrition-page{color:var(--nfh-text-primary);background:0 0}html[data-nfh-theme] :is(.nfh-cal-hero-card,.nfh-cal-macro-card,.nfh-cal-meal-row,.nfh-cal-add-panel,.nfh-cal-sheet,.nfh-cal-empty-card,.nfh-target-strip,.nfh-nutrition-target-card,.nfh-nutrition-next-card,.nfh-meal-detail-sheet,.nfh-meal-detail-macro-card,.nfh-meal-detail-section,.nfh-meal-detail-review-card,.nfh-saved-meal-panel,.nfh-saved-meal-card){border-color:var(--nfh-border);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0d, transparent 44%), var(--nfh-surface-glass);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);box-shadow:inset 0 1px #ffffff47}html[data-nfh-theme] .nfh-meal-detail-sheet,html[data-nfh-theme] .nfh-saved-meal-panel{box-shadow:var(--nfh-elev-2)}html[data-nfh-theme] :is(.nfh-cal-theme-switch,.nfh-cal-add-tabs,.nfh-saved-meal-tabs){border-color:var(--nfh-border);background:var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-cal-theme-switch button[aria-pressed=true],.nfh-cal-add-tabs button[aria-selected=true],.nfh-saved-meal-tabs button[aria-selected=true]){border-color:color-mix(in srgb, var(--nfh-accent) 42%, var(--nfh-border));color:var(--nfh-text-primary);background:var(--nfh-surface-raised);box-shadow:inset 0 0 0 1px var(--nfh-accent-soft)}html[data-nfh-theme] :is(.nfh-cal-fab,.nfh-capture-orb){color:var(--nfh-accent-contrast);background:linear-gradient(145deg, var(--nfh-accent-strong), var(--nfh-accent));box-shadow:0 14px 34px color-mix(in srgb, var(--nfh-accent) 26%, transparent), inset 0 1px 0 color-mix(in oklch, var(--tone-white) 45%, transparent);border-color:#ffffff42}html[data-nfh-theme] .nfh-cal-app :is(.nfh-intake-btn-photo,.nfh-intake-btn-photo:hover:not(:disabled)){border-color:color-mix(in srgb, var(--nfh-accent) 65%, transparent);color:var(--nfh-accent-contrast);background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent))}html[data-nfh-theme] :is(.nfh-meal-detail-edit-btn,.nfh-meal-detail-show-more,.nfh-meal-detail-stepper,.nfh-meal-detail-grams-field input,.nfh-meal-detail-quick-actions button,.nfh-meal-detail-secondary-action){border-color:var(--nfh-border-strong);color:var(--nfh-text-secondary);background:var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-training-page,.nfh-body-v2){color:var(--nfh-text-primary);background:0 0}html[data-nfh-theme] .nfh-training-conversation .nfh-composer-form{border-color:var(--nfh-border-strong);border-radius:var(--nfh-radius);background:linear-gradient(145deg, #ffffff0d, transparent 44%), var(--nfh-surface-glass);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);box-shadow:inset 0 1px #ffffff47}html[data-nfh-theme] :is(.nfh-training-current-card,.nfh-training-logging-card,.nfh-training-day-log,.nfh-training-page .nfh-daily-thread,.nfh-training-artifact-card,.nfh-training-plan-sheet,.nfh-training-plan-section,.nfh-training-summary-tile,.nfh-training-receipt,.nfh-training-journal,.nfh-training-empty-journal,.nfh-action-sheet,.nfh-training-execution-shell,.nfh-training-feedback,.nfh-body-panel,.nfh-body-checkin-select,.nfh-body-trend-mini,.nfh-body-metric-card,.nfh-body-capture-sheet,.nfh-body-action-notice){border-color:var(--nfh-border);border-radius:var(--nfh-radius);color:var(--nfh-text-primary);background:linear-gradient(145deg, #ffffff0d, transparent 44%), var(--nfh-surface-glass);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);box-shadow:inset 0 1px #ffffff47}html[data-nfh-theme] :is(.nfh-training-plan-sheet,.nfh-action-sheet,.nfh-training-execution-shell,.nfh-body-capture-sheet){box-shadow:var(--nfh-elev-2)}html[data-nfh-theme] .nfh-segment-callout-compact strong{overflow-wrap:normal;white-space:nowrap}html[data-nfh-theme] :is(.nfh-training-secondary-action,.nfh-body-secondary-button,.nfh-body-action-buttons button,.nfh-body-source-actions button,.nfh-body-source-actions a){border-color:var(--nfh-border-strong);border-radius:var(--nfh-radius-control);min-height:44px;color:var(--nfh-text-secondary);background:linear-gradient(145deg, #ffffff0d, transparent 44%), var(--nfh-surface-glass);box-shadow:inset 0 1px #ffffff45}html[data-nfh-theme] :is(.nfh-training-secondary-action,.nfh-body-secondary-button,.nfh-body-action-buttons button,.nfh-body-source-actions button,.nfh-body-source-actions a):hover:not(:disabled){border-color:color-mix(in srgb, var(--nfh-accent) 36%, var(--nfh-border-strong));color:var(--nfh-text-primary);background:color-mix(in srgb, var(--nfh-accent) 6%, var(--nfh-surface-glass))}html[data-nfh-theme] :is(.nfh-training-plan-icon,.nfh-training-log-icon,.nfh-body-metric-icon,.nfh-training-section-icon,.nfh-body-capture-icon){border:1px solid color-mix(in srgb, var(--nfh-accent) 28%, var(--nfh-border));color:var(--nfh-accent-text);background:radial-gradient(circle, color-mix(in srgb, var(--nfh-accent) 20%, transparent), transparent 72%);box-shadow:0 0 18px color-mix(in srgb, var(--nfh-accent) 14%, transparent);border-radius:50%}html[data-nfh-theme] .nfh-training-progress-track span{background:linear-gradient(90deg, var(--nfh-accent), var(--nfh-cyan));box-shadow:0 0 16px color-mix(in srgb, var(--nfh-accent) 20%, transparent)}html[data-nfh-theme] :is(.nfh-action-sheet-backdrop,.nfh-training-plan-backdrop,.nfh-body-capture-layer){background:color-mix(in srgb, var(--nfh-canvas-deep) 62%, transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}html[data-nfh-theme] :is(.nfh-account-page,.nfh-profile-page){color:var(--nfh-text-primary)}html[data-nfh-theme] :is(.nfh-account-categories button,.nfh-settings-row,.nfh-profile-detail-nav a){border-color:var(--nfh-border);min-height:44px;color:var(--nfh-text-secondary);background:0 0}html[data-nfh-theme] :is(.nfh-account-categories button,.nfh-settings-row,.nfh-profile-detail-nav a):hover:not(:disabled):not([aria-disabled=true]){color:var(--nfh-text-primary);background:var(--nfh-surface-hover)}html[data-nfh-theme=light] .nfh-settings-row:is(button:disabled,[aria-disabled=true]){background:var(--tone-neutral-98)}html[data-nfh-theme] :is(.nfh-account-categories button[aria-pressed=true],.nfh-settings-row[aria-selected=true],.nfh-profile-detail-nav a[aria-current=page]){border-color:color-mix(in srgb, var(--nfh-accent) 38%, var(--nfh-border));color:var(--nfh-text-primary);background:linear-gradient(110deg, var(--nfh-accent-soft), var(--nfh-cyan-soft)), transparent;box-shadow:inset 3px 0 var(--nfh-accent)}html[data-nfh-theme] :is(.nfh-segmented-control,.nfh-theme-choice>div){border-color:var(--nfh-border);border-radius:var(--nfh-radius-pill);background:var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-segmented-control>button,.nfh-theme-choice>div>button){border-radius:var(--nfh-radius-pill);min-height:44px;color:var(--nfh-text-secondary);background:var(--nfh-surface-overlay);border-color:#0000}html[data-nfh-theme=light] :is(.nfh-segmented-control>button,.nfh-theme-choice>div>button){background-color:var(--tone-neutral-98)}html[data-nfh-theme=light] :is(.nfh-segmented-control>button:hover:not(:disabled),.nfh-theme-choice>div>button:hover:not(:disabled)){background-color:var(--tone-neutral-94)}html[data-nfh-theme] :is(.nfh-segmented-control>button[aria-pressed=true],.nfh-segmented-control>button[aria-selected=true],.nfh-theme-choice>div>button[aria-pressed=true]){border-color:color-mix(in srgb, var(--nfh-accent) 42%, var(--nfh-border));color:var(--nfh-accent-text);background:var(--nfh-surface-raised);box-shadow:inset 0 1px 0 #ffffff59, 0 5px 16px color-mix(in srgb, var(--nfh-canvas-deep) 14%, transparent)}html[data-nfh-theme=light] :is(.nfh-segmented-control>button[aria-pressed=true],.nfh-segmented-control>button[aria-selected=true],.nfh-theme-choice>div>button[aria-pressed=true]),html[data-nfh-theme=light] :is(.nfh-segmented-control>button[aria-pressed=true],.nfh-segmented-control>button[aria-selected=true],.nfh-theme-choice>div>button[aria-pressed=true]):is(:hover,:focus-visible){border-color:color-mix(in srgb, var(--nfh-accent) 48%, var(--nfh-border));color:var(--nfh-accent-text);background:var(--tone-white)}html[data-nfh-theme] .nfh-profile-avatar{border-color:color-mix(in srgb, var(--nfh-accent) 38%, var(--nfh-border));color:var(--nfh-accent-text);background:radial-gradient(circle at 32% 24%, #ffffff2e, transparent 34%), linear-gradient(145deg, var(--nfh-accent-soft), var(--nfh-cyan-soft));box-shadow:0 0 24px color-mix(in srgb, var(--nfh-accent) 14%, transparent)}html[data-nfh-theme] .nfh-account-signout{border-color:color-mix(in srgb, var(--nfh-danger) 28%, var(--nfh-border));border-radius:var(--nfh-radius-control);min-height:44px;color:var(--nfh-danger);background:color-mix(in srgb, var(--nfh-danger) 5%, transparent)}html[data-nfh-theme] .erase-action button{min-height:44px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-btn{width:44px;min-width:44px;height:44px;min-height:44px}html[data-nfh-theme] .nfh-cal-app .day-nav-btn{width:44px;min-width:44px;min-height:44px}html[data-nfh-theme] .nfh-cal-app .week-strip-day{min-width:44px;min-height:44px;color:var(--nfh-text-muted);background:0 0;border-color:#0000;flex:0 0 44px}html[data-nfh-theme] .nfh-cal-app .week-strip-day-active{border-color:color-mix(in srgb, var(--nfh-accent) 52%, var(--nfh-border));color:var(--nfh-text-primary);background:var(--nfh-surface-raised);box-shadow:inset 0 0 0 1px var(--nfh-accent-soft)}html[data-nfh-theme] .nfh-cal-app .week-strip-day-today:not(.week-strip-day-active){border-color:var(--nfh-accent);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-nutrition-date-jump input{color-scheme:normal;border-color:var(--nfh-border-strong);color:var(--nfh-text-primary);background:var(--nfh-surface-overlay)}html[data-nfh-theme] :is(.nfh-target-method-details,.nfh-ask-today){border-color:var(--nfh-border);color:var(--nfh-text-primary);background:var(--nfh-surface-glass)}html[data-nfh-theme] .nfh-ask-today>a{border-color:color-mix(in srgb, var(--nfh-accent) 38%, var(--nfh-border));color:var(--nfh-accent-text);background:var(--nfh-accent-soft)}html[data-nfh-theme] .nfh-cal-app .nfh-target-refresh-btn,html[data-nfh-theme] .nfh-training-conversation :is(.nfh-training-history-button,.nfh-daily-suggestions button){min-height:44px}html[data-nfh-theme] .nfh-training-conversation :is(.nfh-tool,.nfh-tools .voice-capture-btn,.nfh-send){width:44px;min-width:44px;height:44px;min-height:44px}html[data-nfh-theme] :is(.nfh-chat-loading,.nfh-chat-refreshing,.nfh-onboarding-loading,.nfh-training-history-status,.nfh-saved-meal-empty){color:var(--nfh-text-muted)}html[data-nfh-theme] :is(.nfh-chat-load-error,.nfh-chat-inline-retry,.nfh-chat-uncertain,.nfh-training-history-error,.nfh-onboarding-error,.nfh-body-action-error){border-color:color-mix(in srgb, var(--nfh-danger) 40%, var(--nfh-border));color:var(--nfh-danger);background:color-mix(in srgb, var(--nfh-danger) 7%, var(--nfh-surface-glass))}html[data-nfh-theme] :is(.nfh-body-action-saved,.nfh-training-completion-receipt){border-color:color-mix(in srgb, var(--nfh-success) 38%, var(--nfh-border));color:var(--nfh-text-primary);background:color-mix(in srgb, var(--nfh-success) 7%, var(--nfh-surface-glass))}html[data-nfh-theme] :is(.nfh-guided-safety,.nfh-training-pending-context){border-color:color-mix(in srgb, var(--nfh-warning) 42%, var(--nfh-border));color:var(--nfh-text-primary);background:color-mix(in srgb, var(--nfh-warning) 7%, var(--nfh-surface-glass))}@media (max-width:720px){html[data-nfh-theme] .page-shell{width:100%;padding-inline:max(.9rem, env(safe-area-inset-left,0px))}html[data-nfh-theme] .mobile-tabbar{border-color:var(--nfh-border);color:var(--nfh-text-secondary);background:linear-gradient(115deg, #ffffff0d, transparent 42%), color-mix(in srgb, var(--nfh-surface-glass) 92%, transparent);box-shadow:0 -10px 30px color-mix(in srgb, var(--nfh-canvas-deep) 18%, transparent);-webkit-backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04);backdrop-filter:blur(var(--nfh-glass-blur)) saturate(1.04)}html[data-nfh-theme] .mobile-tab{border-radius:var(--nfh-radius-control);min-height:52px;color:var(--nfh-text-muted)}html[data-nfh-theme] .mobile-tab-active{color:var(--nfh-accent-text);background:linear-gradient(110deg, var(--nfh-accent-soft), var(--nfh-cyan-soft))}html[data-nfh-theme] :is(.nfh-chat-footer,.nfh-profile-sticky-actions){padding-bottom:max(.55rem, env(safe-area-inset-bottom,0px))}}@media (max-width:260px){html[data-nfh-theme] .page-shell{padding-inline:max(.45rem, env(safe-area-inset-left,0px))}html[data-nfh-theme] .app-nav-inner{gap:.3rem;padding-inline:.45rem}html[data-nfh-theme] .app-nav-public .app-brand{display:none}html[data-nfh-theme] .app-nav-public .app-nav-links,html[data-nfh-theme] .app-nav-public .app-nav-primary{flex-wrap:nowrap;justify-content:center;width:100%}html[data-nfh-theme] .landing-axes{grid-template-columns:minmax(0,1fr)}html[data-nfh-theme] .auth-segment{grid-template-columns:minmax(0,1fr);width:100%;display:grid}html[data-nfh-theme] .auth-segment button{white-space:normal;width:100%;min-width:0}html[data-nfh-theme] .mobile-tabbar{gap:.1rem;padding-inline:.25rem}html[data-nfh-theme] .mobile-tab{min-width:44px}html[data-nfh-theme] :is(.hero-panel,.surface-panel,.state-panel,.landing-hero){border-radius:var(--nfh-radius-sm);padding-inline:.72rem}html[data-nfh-theme] :is(.nfh-guided-intro,.nfh-guided-question,.nfh-guided-review,.nfh-guided-plan,.nfh-guided-card){padding-inline:.68rem}}@media (prefers-reduced-motion:reduce){html[data-nfh-theme] *,html[data-nfh-theme] :before,html[data-nfh-theme] :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}html[data-nfh-theme] body:has(.nfh-today-shell.nfh-chat-page-shell){overflow:hidden}html[data-nfh-theme] .page-shell.nfh-today-shell.nfh-chat-page-shell{background:0 0;max-width:none;height:100dvh;min-height:0;padding:0;overflow:hidden}html[data-nfh-theme] .nfh-chat-page{grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid}html[data-nfh-theme] .nfh-chat-page:has(>.nfh-chat-guided-slot:empty){grid-template-rows:minmax(0,1fr)}html[data-nfh-theme] .nfh-chat-guided-slot:empty{display:none}html[data-nfh-theme] .nfh-chat-surface{--nfh-chat-veil-top:color-mix(in oklch, var(--tone-white) 22%, transparent);--nfh-chat-veil-mid:color-mix(in oklch, var(--tone-white) 13%, transparent);--nfh-chat-veil-low:color-mix(in oklch, var(--tone-white) 3.5%, transparent);--nfh-chat-veil-tint:color-mix(in oklch, var(--tone-accent-80) 3.5%, transparent);background:radial-gradient(42rem 24rem at 86% -5%, var(--nfh-accent-soft), transparent 68%), radial-gradient(32rem 25rem at -15% 72%, var(--nfh-cyan-soft), transparent 72%), var(--nfh-canvas);color:var(--nfh-text-primary);isolation:isolate;grid-template-rows:minmax(0,1fr) auto;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}html[data-nfh-theme=dark] .nfh-chat-surface{--nfh-chat-veil-top:color-mix(in oklch, var(--tone-neutral-12) 30%, transparent);--nfh-chat-veil-mid:color-mix(in oklch, var(--tone-neutral-14) 16%, transparent);--nfh-chat-veil-low:color-mix(in oklch, var(--tone-neutral-14) 3.5%, transparent);--nfh-chat-veil-tint:color-mix(in oklch, var(--tone-accent-50) 3.5%, transparent)}html[data-nfh-theme] .nfh-chat-top-veil{background:radial-gradient(84% 76% at 50% 0%, var(--nfh-chat-veil-tint), transparent 96%), linear-gradient(180deg, var(--nfh-chat-veil-top) 0%, color-mix(in srgb, var(--nfh-chat-veil-top) 84%, var(--nfh-chat-veil-mid)) 22%, color-mix(in srgb, var(--nfh-chat-veil-mid) 68%, var(--nfh-chat-veil-low)) 46%, color-mix(in srgb, var(--nfh-chat-veil-low) 36%, transparent) 72%, color-mix(in srgb, var(--nfh-chat-veil-low) 8%, transparent) 89%, transparent 100%);-webkit-backdrop-filter:blur(17px)saturate(1.02);backdrop-filter:blur(17px)saturate(1.02);height:calc(10.5rem + env(safe-area-inset-top));-webkit-mask-image:linear-gradient(180deg, var(--tone-black) 0%, var(--tone-black) 9%, color-mix(in oklch, var(--tone-black) 84%, transparent) 30%, color-mix(in oklch, var(--tone-black) 57%, transparent) 52%, color-mix(in oklch, var(--tone-black) 26%, transparent) 72%, color-mix(in oklch, var(--tone-black) 6%, transparent) 91%, transparent 100%);mask-image:linear-gradient(180deg, var(--tone-black) 0%, var(--tone-black) 9%, color-mix(in oklch, var(--tone-black) 84%, transparent) 30%, color-mix(in oklch, var(--tone-black) 57%, transparent) 52%, color-mix(in oklch, var(--tone-black) 26%, transparent) 72%, color-mix(in oklch, var(--tone-black) 6%, transparent) 91%, transparent 100%);-webkit-mask-image:linear-gradient(180deg, var(--tone-black) 0%, var(--tone-black) 9%, color-mix(in oklch, var(--tone-black) 84%, transparent) 30%, color-mix(in oklch, var(--tone-black) 57%, transparent) 52%, color-mix(in oklch, var(--tone-black) 26%, transparent) 72%, color-mix(in oklch, var(--tone-black) 6%, transparent) 91%, transparent 100%);pointer-events:none;inset:0 0 auto;top:calc(-1 * env(safe-area-inset-top));z-index:2;width:100%;position:absolute}html[data-nfh-theme] .nfh-chat-header{max-width:880px;padding:max(.85rem, calc(env(safe-area-inset-top,0px) + .5rem)) 1.1rem .65rem;z-index:3;background:0 0;border:0;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.75rem;width:100%;margin:0 auto;display:grid;position:absolute;top:0}html[data-nfh-theme] .nfh-chat-header:before{display:none}html[data-nfh-theme] :is(.nfh-chat-header-button,.nfh-chat-title,.nfh-chat-plus,.nfh-chat-send,.nfh-chat-empty-actions button,.nfh-chat-history button,.nfh-chat-attachment-draft button){-webkit-tap-highlight-color:transparent}html[data-nfh-theme] .nfh-chat-header-button{color:var(--nfh-text-secondary);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-header-button:hover:not(:disabled){background:var(--nfh-surface-hover);border-color:var(--nfh-border);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-title{border-radius:var(--nfh-radius-pill);color:var(--nfh-text-primary);font-family:var(--nfh-font-display);letter-spacing:-.02em;background:0 0;border:0;justify-content:center;justify-self:center;align-items:center;gap:.26rem;min-height:44px;padding:.45rem .8rem;font-size:clamp(1rem,2vw,1.16rem);font-weight:680;display:inline-flex}html[data-nfh-theme] .nfh-chat-title:hover:not(:disabled){background:var(--nfh-surface-hover)}html[data-nfh-theme] .nfh-chat-thread{box-sizing:border-box;overscroll-behavior:contain;min-width:0;max-width:880px;min-height:0;padding:max(5.9rem, calc(5.1rem + env(safe-area-inset-top))) clamp(.9rem, 3vw, 1.35rem) 1.3rem;scrollbar-width:none;z-index:1;flex-direction:column;gap:clamp(.8rem,1.8vw,1.15rem);width:100%;margin:0 auto;display:flex;position:relative;overflow:hidden auto}html[data-nfh-theme] .nfh-chat-thread::-webkit-scrollbar{display:none}html[data-nfh-theme] .nfh-chat-empty{flex-direction:column;flex:auto;min-height:100%;display:flex}html[data-nfh-theme] .nfh-chat-empty-spacer{flex:auto;min-height:2rem}html[data-nfh-theme] .nfh-chat-empty-actions{gap:.35rem;width:100%;max-width:680px;margin:0 auto;padding:.4rem .55rem .7rem;display:grid}html[data-nfh-theme] .nfh-chat-empty-actions button{background:var(--nfh-surface-glass);border:1px solid var(--nfh-border);border-radius:var(--nfh-radius-pill);color:var(--nfh-text-secondary);text-align:left;align-items:center;gap:.75rem;min-height:44px;padding:.55rem .75rem;font-size:.91rem;display:flex}html[data-nfh-theme] .nfh-chat-empty-actions button:hover:not(:disabled){background:var(--nfh-accent-soft);border-color:color-mix(in srgb, var(--nfh-accent) 38%, var(--nfh-border));color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-empty-actions button:focus-visible{background:var(--nfh-accent-soft);border-color:color-mix(in srgb, var(--nfh-accent) 52%, var(--nfh-border));box-shadow:none;color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-message{box-sizing:border-box;color:var(--nfh-text-primary);overflow-wrap:anywhere;align-self:flex-start;min-width:0;max-width:min(92%,720px);font-size:clamp(.95rem,1.3vw,1.02rem);line-height:1.58}html[data-nfh-theme] .nfh-chat-message>*{min-width:0;max-width:100%}html[data-nfh-theme] .nfh-chat-message p{white-space:pre-wrap;min-width:0;margin:0}html[data-nfh-theme] .nfh-chat-message-user{background:linear-gradient(135deg, var(--nfh-accent-soft), color-mix(in srgb, var(--nfh-cyan-soft) 54%, transparent));border:1px solid color-mix(in srgb, var(--nfh-accent) 34%, var(--nfh-border));color:var(--nfh-text-primary);border-radius:1.25rem 1.25rem .38rem;align-self:flex-end;padding:.78rem 1rem}html[data-nfh-theme] .nfh-chat-message-assistant{max-width:min(96%,760px);padding:.15rem 0}html[data-nfh-theme] .nfh-chat-assistant-layout{grid-template-columns:2rem minmax(0,1fr);align-items:start;gap:.65rem;display:grid}html[data-nfh-theme] .nfh-chat-assistant-mark{background:linear-gradient(145deg, var(--nfh-accent-strong), var(--nfh-accent));border:1px solid color-mix(in srgb, var(--nfh-accent-strong) 74%, var(--nfh-border));box-shadow:0 .45rem 1.25rem color-mix(in srgb, var(--nfh-accent) 22%, transparent), inset 0 1px 0 #ffffff6b;color:var(--nfh-accent-contrast);border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;margin-top:.35rem;display:inline-flex}html[data-nfh-theme] .nfh-chat-assistant-body{box-shadow:none;background:0 0;border:0;border-radius:0;min-width:0;padding:.35rem 0 .45rem}html[data-nfh-theme] .nfh-chat-thinking{align-items:center;gap:.28rem;min-height:1.4rem;display:inline-flex}html[data-nfh-theme] .nfh-chat-thinking i{animation:nfh-chat-thinking-pulse .9s var(--nfh-ease) infinite;background:var(--nfh-accent);opacity:.55;border-radius:50%;width:.42rem;height:.42rem;display:block}html[data-nfh-theme] .nfh-chat-thinking i:nth-child(2){animation-delay:.12s}html[data-nfh-theme] .nfh-chat-thinking i:nth-child(3){animation-delay:.24s}@keyframes nfh-chat-thinking-pulse{0%,to{opacity:.35;transform:translateY(0)scale(.86)}50%{opacity:1;transform:translateY(-.16rem)scale(1)}}html[data-nfh-theme] .nfh-chat-meal-state{border:1px solid var(--nfh-border);border-radius:var(--nfh-radius-sm);align-items:center;gap:.55rem;min-height:44px;margin-top:.75rem;padding:.55rem .7rem;text-decoration:none;display:flex}html[data-nfh-theme] .nfh-chat-meal-proposal{background:var(--nfh-accent-soft);color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-chat-meal-receipt{background:var(--nfh-surface-overlay);color:var(--nfh-text-secondary)}html[data-nfh-theme] .nfh-chat-meal-state:hover{background:var(--nfh-surface-hover);border-color:color-mix(in srgb, var(--nfh-accent) 42%, var(--nfh-border));color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-message-content :is(h3,h4){color:var(--nfh-text-primary);margin:.7rem 0 .35rem}html[data-nfh-theme] .nfh-message-content :is(ul,ol){margin:.6rem 0;padding-left:1.35rem}html[data-nfh-theme] .nfh-message-content li+li{margin-top:.28rem}html[data-nfh-theme] .nfh-message-content strong{color:var(--nfh-text-primary);font-weight:720}html[data-nfh-theme] .nfh-message-content code{color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-message-content hr{border:0;border-top:1px solid var(--nfh-border);margin:.9rem 0}html[data-nfh-theme] .nfh-chat-actions{flex-wrap:wrap;align-items:center;gap:.2rem;margin-top:.8rem;display:flex}html[data-nfh-theme] .nfh-chat-actions button{color:var(--nfh-text-muted);background:0 0;border:1px solid #0000;border-radius:.65rem;align-items:center;gap:0;min-width:44px;min-height:44px;padding:.35rem;font-size:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-actions button>span{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html[data-nfh-theme] .nfh-chat-actions button:hover:not(:disabled){background:var(--nfh-accent-soft);border-color:var(--nfh-border);color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-chat-engine,html[data-nfh-theme] .nfh-chat-footnote{color:var(--nfh-text-muted)}html[data-nfh-theme] .nfh-chat-engine{letter-spacing:.02em;margin-top:.45rem;font-size:.64rem;display:block}html[data-nfh-theme] .nfh-chat-sources span,html[data-nfh-theme] .nfh-chat-message-attachments span{background:var(--nfh-surface-overlay);border:1px solid var(--nfh-border);color:var(--nfh-text-secondary)}html[data-nfh-theme] .nfh-chat-footer{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--nfh-canvas) 94%, transparent) 24%);min-width:0;padding:.6rem clamp(.75rem, 3vw, 1.25rem) max(.8rem, env(safe-area-inset-bottom));z-index:2;position:relative}html[data-nfh-theme] .nfh-chat-composer{background:linear-gradient(145deg, #ffffff12, transparent 46%), var(--nfh-surface-glass);border:1px solid var(--nfh-border-strong);border-radius:var(--nfh-radius-control);box-shadow:inset 0 1px 0 #ffffff61, var(--nfh-elev-1);align-items:flex-end;gap:.2rem;width:min(100%,760px);max-width:760px;min-height:56px;margin:0 auto;padding:.4rem;display:flex}html[data-nfh-theme] .nfh-chat-composer:focus-within{border-color:color-mix(in srgb, var(--nfh-accent) 62%, var(--nfh-border-strong));box-shadow:inset 0 1px 0 #ffffff70, 0 0 0 3px color-mix(in srgb, var(--nfh-accent) 12%, transparent), var(--nfh-elev-1)}html[data-nfh-theme] .nfh-chat-composer textarea{box-shadow:none;color:var(--nfh-text-primary);-webkit-text-fill-color:var(--nfh-text-primary);caret-color:var(--nfh-accent);opacity:1;resize:none;background:0 0;border:0;outline:0;flex:auto;align-self:center;min-height:28px;padding:.28rem .2rem;line-height:1.4}html[data-nfh-theme] :is(.nfh-chat-plus,.nfh-chat-send){border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-plus{color:var(--nfh-text-secondary);background:0 0;border:0;font-size:1.7rem;font-weight:300}html[data-nfh-theme] .nfh-chat-plus:hover:not(:disabled){background:var(--nfh-surface-hover);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-plus:focus:not(:focus-visible),html[data-nfh-theme] .nfh-chat-plus:active{box-shadow:none;color:var(--nfh-text-secondary);background:0 0;outline:0}html[data-nfh-theme] .nfh-chat-attachment-picker{flex:none;align-self:flex-end;position:relative}html[data-nfh-theme] .nfh-chat-attachment-menu{background:var(--nfh-surface-raised);border:1px solid var(--nfh-border-strong);border-radius:var(--nfh-radius-sm);box-shadow:var(--nfh-elev-2);z-index:5;gap:.15rem;width:min(12rem,100vw - 2rem);padding:.3rem;display:grid;position:absolute;bottom:calc(100% + .45rem);left:0}html[data-nfh-theme] .nfh-chat-attachment-menu button{color:var(--nfh-text-secondary);font:inherit;text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.5rem;min-width:44px;min-height:44px;padding:.4rem .55rem;display:flex}html[data-nfh-theme] .nfh-chat-attachment-menu button:hover:not(:disabled),html[data-nfh-theme] .nfh-chat-attachment-menu button:focus-visible{background:var(--nfh-surface-hover);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-attachment-menu button:focus:not(:focus-visible){outline:0}html[data-nfh-theme] .nfh-chat-send{background:var(--nfh-surface-overlay);border:1px solid var(--nfh-border);color:var(--nfh-text-muted);border-radius:.82rem}html[data-nfh-theme] .nfh-chat-send-active{background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent));box-shadow:0 .5rem 1.4rem color-mix(in srgb, var(--nfh-accent) 25%, transparent), inset 0 1px 0 #ffffff70;color:var(--nfh-accent-contrast);border-color:#ffffff47}html[data-nfh-theme] .nfh-chat-send-stop{background:var(--nfh-surface-overlay);border-color:color-mix(in srgb, var(--nfh-accent) 46%, var(--nfh-border));color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-chat-voice{flex:none;align-self:flex-end;min-width:0;position:relative}html[data-nfh-theme] .nfh-chat-voice .voice-capture{min-width:0;display:inline-flex;position:relative}html[data-nfh-theme] .nfh-chat-voice .voice-disclosure{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}html[data-nfh-theme] .nfh-chat-voice .voice-capture-btn{color:var(--nfh-text-secondary);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-voice .voice-capture-btn:hover:not(:disabled){background:var(--nfh-surface-hover);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-voice .voice-capture-lang{display:none}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform{background:var(--nfh-surface-raised);border:1px solid var(--nfh-border-strong);border-radius:var(--nfh-radius-pill);align-items:center;gap:3px;height:34px;padding:0 .7rem;display:inline-flex;position:absolute;bottom:calc(100% + .5rem);right:0}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i{animation:.9s ease-in-out infinite alternate nfh-today-wave;animation-delay:calc(var(--nfh-wave-index,0) * 70ms);background:var(--nfh-accent);border-radius:2px;width:3px;height:7px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(2){--nfh-wave-index:1;height:13px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(3){--nfh-wave-index:2;height:20px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(4){--nfh-wave-index:3;height:26px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(5){--nfh-wave-index:4;height:18px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(6){--nfh-wave-index:5;height:12px}html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i:nth-child(7){--nfh-wave-index:6;height:7px}@keyframes nfh-today-wave{to{opacity:.42;transform:scaleY(.55)}}html[data-nfh-theme] .nfh-chat-footnote{justify-content:space-between;max-width:760px;min-height:1em;margin:.3rem auto 0;padding:0 .55rem;font-size:.65rem;display:flex}html[data-nfh-theme] .nfh-chat-delivery-status{text-align:right;justify-content:flex-end;align-items:center;gap:.45rem;min-width:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-stop{border:1px solid var(--nfh-border);border-radius:var(--nfh-radius-pill);color:var(--nfh-text-secondary);font:inherit;background:0 0;min-height:44px;padding:.25rem .6rem}html[data-nfh-theme] .nfh-chat-stop:hover:not(:disabled){background:var(--nfh-accent-soft);border-color:var(--nfh-accent);color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-chat-send:focus:not(:focus-visible),html[data-nfh-theme] .nfh-chat-thread-menu-trigger:focus:not(:focus-visible){box-shadow:none;outline:0}html[data-nfh-theme] .nfh-chat-attachment-drafts{gap:.55rem;max-width:760px;margin:0 auto .5rem;padding:.15rem;display:flex;overflow-x:auto}html[data-nfh-theme] .nfh-chat-attachment-draft{background:color-mix(in srgb, var(--nfh-surface-overlay) 82%, transparent);border:1px solid var(--nfh-border);border-radius:var(--nfh-radius-pill);box-shadow:none;color:var(--nfh-text-primary);flex:0 0 min(220px,72vw);grid-template-columns:34px minmax(0,1fr) 36px;align-items:center;gap:.45rem;padding:.25rem .35rem;display:grid}html[data-nfh-theme] .nfh-chat-attachment-draft img,html[data-nfh-theme] .nfh-chat-file-icon,html[data-nfh-theme] .nfh-chat-attachment-draft img{background:var(--nfh-accent-soft);object-fit:cover;border-radius:.58rem;justify-content:center;align-items:center;width:34px;height:34px;display:flex}html[data-nfh-theme] .nfh-chat-attachment-draft>span:not(.nfh-chat-file-icon){min-width:0;display:grid}html[data-nfh-theme] .nfh-chat-attachment-draft :is(strong,small){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}html[data-nfh-theme] .nfh-chat-attachment-draft strong{font-size:.78rem}html[data-nfh-theme] .nfh-chat-attachment-draft small{color:var(--nfh-text-muted);font-size:.67rem}html[data-nfh-theme] .nfh-chat-attachment-draft button{color:var(--nfh-text-muted);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-attachment-draft button:hover:not(:disabled){background:var(--nfh-accent-soft);color:var(--nfh-danger)}html[data-nfh-theme] .nfh-chat-attachment-image-button{background:0 0;border:0;border-radius:.58rem;justify-content:center;align-items:center;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;display:flex;overflow:hidden}html[data-nfh-theme] .nfh-chat-attachment-image-button:hover:not(:disabled){background:var(--nfh-accent-soft)}html[data-nfh-theme] .nfh-chat-message-image{background:var(--nfh-surface-overlay);border:1px solid var(--nfh-border);color:var(--nfh-text-secondary);text-align:left;border-radius:.7rem;align-items:center;gap:.45rem;max-width:min(260px,72vw);padding:.25rem .45rem .25rem .25rem;display:inline-flex;overflow:hidden}html[data-nfh-theme] .nfh-chat-message-image img{object-fit:cover;border-radius:.48rem;width:48px;height:48px}html[data-nfh-theme] .nfh-chat-message-image strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}html[data-nfh-theme] .nfh-chat-image-viewer-layer{background:color-mix(in oklch, var(--tone-neutral-14) 88%, transparent);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}html[data-nfh-theme] .nfh-chat-image-viewer-layer img{object-fit:contain;touch-action:pinch-zoom;max-width:96vw;max-height:92dvh}html[data-nfh-theme] .nfh-chat-image-viewer-controls{top:max(1rem, env(safe-area-inset-top));z-index:1;gap:.5rem;display:flex;position:absolute;right:1rem}html[data-nfh-theme] .nfh-chat-image-viewer-controls button{background:var(--nfh-surface-raised);color:var(--nfh-text-primary);border:1px solid var(--nfh-border);border-radius:.6rem;min-width:44px;min-height:44px;padding:.5rem .8rem}html[data-nfh-theme] .nfh-chat-image-viewer-content{max-width:96vw;max-height:82dvh;overflow:auto}html[data-nfh-theme] .nfh-chat-image-viewer-content.is-zoomed img{width:192vw;max-width:none;max-height:none}html[data-nfh-theme] .nfh-chat-image-retry{font-size:.8rem;text-decoration:underline}html[data-nfh-theme] .nfh-chat-image-viewer-close{background:var(--nfh-surface-raised);border:1px solid var(--nfh-border);color:var(--nfh-text-primary);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:absolute;top:1rem;right:1rem}html[data-nfh-theme] .nfh-chat-jump-latest{-webkit-backdrop-filter:blur(14px)saturate(1.04);backdrop-filter:blur(14px)saturate(1.04);background:color-mix(in srgb, var(--nfh-surface-raised) 78%, transparent);border:1px solid var(--nfh-border-strong);box-shadow:var(--nfh-elev-1), inset 0 1px 0 #ffffff47;color:var(--nfh-text-secondary);opacity:0;height:40px;transition:opacity var(--nfh-dur) var(--nfh-ease), transform var(--nfh-dur) var(--nfh-ease), visibility var(--nfh-dur) var(--nfh-ease);visibility:hidden;z-index:3;border-radius:50%;justify-content:center;align-items:center;width:40px;padding:0;display:inline-flex;position:absolute;bottom:calc(100% + .65rem);left:50%;transform:translate(-50%,.35rem)}html[data-nfh-theme] .nfh-chat-jump-latest-visible{opacity:1;visibility:visible;transform:translate(-50%)}html[data-nfh-theme] .nfh-chat-jump-latest:hover:not(:disabled){background:var(--nfh-surface-hover);color:var(--nfh-text-primary)}html[data-nfh-theme] .nfh-chat-jump-latest:focus:not(:focus-visible){box-shadow:var(--nfh-elev-1), inset 0 1px 0 #ffffff47;outline:0}@keyframes nfh-chat-drawer-in{0%{opacity:0;transform:translate(-1rem)}to{opacity:1;transform:translate(0)}}html[data-nfh-theme] .nfh-chat-history-layer{z-index:130;position:fixed;inset:0}html[data-nfh-theme] .nfh-chat-history-backdrop{background:color-mix(in srgb, var(--nfh-canvas-deep) 62%, transparent);border:0;width:100%;padding:0;position:absolute;inset:0}html[data-nfh-theme] .nfh-chat-history{animation:nfh-chat-drawer-in .18s var(--nfh-ease);background:var(--nfh-surface-raised);-webkit-backdrop-filter:blur(24px)saturate(.98);backdrop-filter:blur(24px)saturate(.98);border-right:1px solid var(--nfh-border);box-shadow:var(--nfh-elev-2);color:var(--nfh-text-primary);min-height:0;padding:max(1rem, env(safe-area-inset-top)) .85rem max(1rem, env(safe-area-inset-bottom));touch-action:pan-y;transition:transform .18s var(--nfh-ease);flex-direction:column;width:min(380px,90vw);display:flex;position:absolute;top:0;bottom:0;left:0;overflow:hidden}html[data-nfh-theme] .nfh-chat-history-dragging{transition:none;animation:none}html[data-nfh-theme] .nfh-chat-history>header{justify-content:space-between;align-items:center;padding:.2rem .35rem .9rem;display:flex}html[data-nfh-theme] .nfh-chat-history>header span{align-items:center;gap:.15rem;display:flex}html[data-nfh-theme] .nfh-chat-history>header button{color:var(--nfh-text-secondary);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-history-search{background:var(--nfh-surface-overlay);border:1px solid var(--nfh-border);border-radius:var(--nfh-radius-control);color:var(--nfh-text-muted);flex:none;align-items:center;gap:.55rem;min-height:46px;margin:0 .35rem .9rem;padding:0 .75rem;display:flex}html[data-nfh-theme] .nfh-chat-history-search:focus-within{border-color:color-mix(in srgb, var(--nfh-accent) 58%, var(--nfh-border));box-shadow:0 0 0 3px var(--nfh-accent-soft)}html[data-nfh-theme] .nfh-chat-history-search input{box-shadow:none;color:var(--nfh-text-primary);background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0}html[data-nfh-theme] .nfh-chat-thread-panel{overscroll-behavior:contain;flex:auto;gap:.3rem;min-height:0;padding-bottom:.5rem;display:grid;overflow-y:auto}html[data-nfh-theme] .nfh-chat-thread-panel>button,html[data-nfh-theme] .nfh-chat-thread-open{-webkit-user-select:none;user-select:none;color:var(--nfh-text-primary);text-align:left;background:0 0;border:0;border-radius:.8rem;gap:.16rem;min-width:0;padding:.68rem .7rem;display:grid}html[data-nfh-theme] .nfh-chat-new-thread{background:linear-gradient(135deg, var(--nfh-accent-strong), var(--nfh-accent));border-radius:var(--nfh-radius-pill);box-shadow:0 .55rem 1.4rem color-mix(in srgb, var(--nfh-accent) 22%, transparent), inset 0 1px 0 #ffffff61;border:1px solid #fff3;justify-content:center;align-items:center;gap:.45rem;min-height:44px;font-weight:700;color:var(--nfh-accent-contrast)!important;text-align:center!important;padding:.55rem .75rem!important;display:flex!important}html[data-nfh-theme] .nfh-chat-new-thread:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}html[data-nfh-theme] .nfh-chat-today-thread{border:1px solid #0000!important}html[data-nfh-theme] .nfh-chat-today-thread.nfh-chat-thread-active{box-shadow:inset 3px 0 var(--nfh-accent);border-color:color-mix(in srgb, var(--nfh-accent) 38%, var(--nfh-border))!important}html[data-nfh-theme] .nfh-chat-thread-row.nfh-chat-thread-active{background:var(--nfh-surface-hover)}html[data-nfh-theme] .nfh-chat-thread-row{border:1px solid #0000;border-radius:.85rem;grid-template-columns:minmax(0,1fr) 44px;align-items:center;min-width:0;display:grid;position:relative}html[data-nfh-theme] .nfh-chat-thread-row.nfh-chat-thread-active{border-color:color-mix(in srgb, var(--nfh-accent) 36%, var(--nfh-border));box-shadow:inset 3px 0 var(--nfh-accent)}html[data-nfh-theme] .nfh-chat-thread-row.nfh-chat-thread-opening{background:var(--nfh-surface-hover);border-color:color-mix(in srgb, var(--nfh-accent) 28%, var(--nfh-border))}html[data-nfh-theme] .nfh-chat-thread-open strong{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.35rem;display:flex;overflow:hidden}html[data-nfh-theme] .nfh-chat-thread-open small,html[data-nfh-theme] .nfh-chat-thread-panel p{color:var(--nfh-text-muted);overflow-wrap:anywhere;margin:0;font-size:.7rem}html[data-nfh-theme] .nfh-chat-thread-opening-status{color:var(--nfh-accent-text);align-items:center;gap:.35rem;display:inline-flex}html[data-nfh-theme] .nfh-chat-thread-opening-status:before{content:"";opacity:.8;background:currentColor;border-radius:50%;width:.4rem;height:.4rem}html[data-nfh-theme] .nfh-chat-thread-menu-trigger{color:var(--nfh-text-muted);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:inline-flex}html[data-nfh-theme] .nfh-chat-thread-menu{background:var(--nfh-surface-raised);border:1px solid var(--nfh-border-strong);border-radius:var(--nfh-radius-sm);box-shadow:var(--nfh-elev-2);z-index:150;gap:.15rem;width:min(12rem,100vw - 1rem);max-height:calc(100vh - 1rem);padding:.3rem;display:grid;position:fixed;top:auto;right:auto;overflow-y:auto}html[data-nfh-theme] .nfh-chat-thread-menu button{color:var(--nfh-text-secondary);font:inherit;text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.45rem;min-width:44px;min-height:44px;padding:.4rem .55rem;display:flex}html[data-nfh-theme] .nfh-chat-thread-confirm{align-items:center;gap:.25rem;padding-right:.35rem;display:flex}html[data-nfh-theme] .nfh-chat-thread-confirm button,html[data-nfh-theme] .nfh-chat-thread-rename button{background:var(--nfh-surface-overlay);border:1px solid var(--nfh-border);color:var(--nfh-text-secondary);font:inherit;border-radius:.55rem;min-width:44px;min-height:44px;padding:.35rem .45rem;font-size:.7rem}html[data-nfh-theme] .nfh-chat-thread-confirm .nfh-chat-thread-delete-confirm{border-color:color-mix(in srgb, var(--nfh-danger) 48%, var(--nfh-border));color:var(--nfh-danger)}html[data-nfh-theme] .nfh-chat-thread-rename{grid-column:1/-1;gap:.45rem;padding:.45rem;display:grid}html[data-nfh-theme] .nfh-chat-thread-rename input{width:100%;min-height:44px}html[data-nfh-theme] .nfh-chat-thread-rename>span{justify-content:flex-end;gap:.35rem;display:flex}html[data-nfh-theme] .nfh-chat-history-account{border-top:1px solid var(--nfh-border);color:var(--nfh-text-primary);flex:none;grid-template-columns:2.3rem minmax(0,1fr) 1.2rem;align-items:center;gap:.6rem;margin:auto .25rem 0;padding:.9rem .35rem .15rem;text-decoration:none;display:grid}html[data-nfh-theme] .nfh-chat-history-account-avatar{background:var(--nfh-accent-soft);border:1px solid color-mix(in srgb, var(--nfh-accent) 35%, var(--nfh-border));color:var(--nfh-accent-text);border-radius:50%;justify-content:center;align-items:center;width:2.3rem;height:2.3rem;display:inline-flex}html[data-nfh-theme] .nfh-chat-history-account>span:nth-child(2){gap:.08rem;min-width:0;display:grid}html[data-nfh-theme] .nfh-chat-history-account small{color:var(--nfh-text-muted);font-size:.68rem}@media (hover:hover) and (pointer:fine){html[data-nfh-theme] .nfh-chat-thread-panel>button:hover:not(:disabled),html[data-nfh-theme] .nfh-chat-thread-row:hover{background:var(--nfh-surface-hover)}html[data-nfh-theme] .nfh-chat-thread-menu-trigger:hover:not(:disabled){background:var(--nfh-accent-soft);color:var(--nfh-accent-text)}html[data-nfh-theme] .nfh-chat-thread-menu button:hover:not(:disabled){background:var(--nfh-surface-hover);color:var(--nfh-text-primary)}}html[data-nfh-theme] :is(.nfh-chat-loading,.nfh-chat-refreshing){color:var(--nfh-text-muted)}html[data-nfh-theme] :is(.nfh-chat-load-error,.nfh-chat-inline-retry,.nfh-chat-uncertain){background:color-mix(in srgb, var(--nfh-danger) 7%, var(--nfh-surface-glass));border:1px solid color-mix(in srgb, var(--nfh-danger) 38%, var(--nfh-border));border-radius:var(--nfh-radius-sm);color:var(--nfh-danger);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;width:calc(100% - 1.5rem);max-width:760px;margin:0 auto;padding:.65rem .75rem;display:flex}html[data-nfh-theme] :is(.nfh-chat-load-error,.nfh-chat-inline-retry,.nfh-chat-uncertain) button{background:var(--nfh-surface-overlay);border:1px solid color-mix(in srgb, var(--nfh-danger) 35%, var(--nfh-border));color:var(--nfh-danger);border-radius:.55rem;min-width:44px;min-height:44px;padding:.35rem .6rem}@media (min-width:1020px){html[data-nfh-theme] .nfh-chat-history-layer{left:260px}}@media (max-width:1019px){html[data-nfh-theme] .nfh-chat-surface{touch-action:pan-y}}@media (max-width:720px){html[data-nfh-theme] body:has(.nfh-today-shell.nfh-chat-page-shell)>.app-nav:not(.app-nav-public){display:none}html[data-nfh-theme] .page-shell.nfh-today-shell.nfh-chat-page-shell{height:calc(var(--nfh-chat-viewport-height,100dvh) - 64px - env(safe-area-inset-bottom));width:100%;max-width:100%}html[data-nfh-theme] .nfh-chat-header{padding-left:.8rem;padding-right:.8rem}html[data-nfh-theme] .nfh-chat-thread{padding-left:.8rem;padding-right:.8rem;padding-top:max(5.7rem, calc(4.9rem + env(safe-area-inset-top)))}html[data-nfh-theme] .nfh-chat-message{max-width:96%}html[data-nfh-theme] .nfh-chat-assistant-layout{grid-template-columns:1.8rem minmax(0,1fr)}html[data-nfh-theme] .nfh-chat-assistant-mark{width:1.8rem;height:1.8rem}html[data-nfh-theme] .nfh-chat-footer{padding-left:.65rem;padding-right:.65rem}html[data-nfh-theme] .nfh-chat-composer{min-height:54px}html[data-nfh-theme] body.nfh-chat-keyboard-open .mobile-tabbar{display:none}html[data-nfh-theme] body.nfh-chat-keyboard-open .page-shell.nfh-today-shell.nfh-chat-page-shell{height:var(--nfh-chat-viewport-height,100dvh)}html[data-nfh-theme] .nfh-chat-history{width:min(380px,82vw)}}@media (hover:none){html[data-nfh-theme] .nfh-chat-plus:hover:not(:disabled){color:var(--nfh-text-secondary);background:0 0}html[data-nfh-theme] .nfh-chat-jump-latest:hover:not(:disabled){background:color-mix(in srgb, var(--nfh-surface-raised) 78%, transparent);color:var(--nfh-text-secondary)}}@media (prefers-reduced-motion:reduce){html[data-nfh-theme] .nfh-chat-history,html[data-nfh-theme] .nfh-chat-jump-latest,html[data-nfh-theme] .nfh-chat-voice .voice-capture-waveform i,html[data-nfh-theme] .nfh-chat-thinking i{animation:none}}
body:has(.nfh-guided-shell,[data-nfh-setup]) :is(.mobile-tabbar,.workspace-sidebar,.nfh-shell-menu){display:none!important}body:has(.nfh-guided-shell) .app-nav{display:none!important}.nfh-drawer-spaces{display:none}html[data-nfh-nav=b] .nfh-drawer-spaces{border-bottom:1px solid color-mix(in oklch, var(--tone-neutral-80) 14%, transparent);gap:2px;margin:0 0 10px;padding:4px 0 12px;display:grid}.nfh-drawer-space{color:var(--nfh-text-secondary,var(--tone-neutral-80));border-radius:12px;align-items:center;gap:12px;min-height:46px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.nfh-drawer-space:hover{background:color-mix(in oklch, var(--tone-brand-80) 8%, transparent)}.nfh-drawer-space-active{background:color-mix(in oklch, var(--tone-brand-80) 14%, transparent);color:var(--nfh-text-primary,var(--tone-neutral-96))}.nfh-drawer-space-active svg{color:var(--tone-brand-80)}.nfh-shell-menu,.nfh-shell-addmeal,.nfh-shell-profile{display:none}@media (max-width:767px){html[data-nfh-nav] .app-nav:not(.app-nav-public){display:none}html[data-nfh-nav] main,html[data-nfh-nav] .page-shell{padding-top:max(10px, env(safe-area-inset-top))}html[data-nfh-nav=a] .mobile-tabbar{background:color-mix(in oklch, var(--tone-neutral-12) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid color-mix(in oklch, var(--tone-neutral-80) 10%, transparent);height:calc(62px + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);z-index:60;grid-template-columns:repeat(5,1fr);align-items:center;gap:0;display:grid;position:fixed;bottom:0;left:0;right:0}html[data-nfh-theme=light][data-nfh-nav=a] .mobile-tabbar{background:color-mix(in oklch, var(--tone-neutral-98) 94%, transparent)}html[data-nfh-nav=a] .mobile-tab{color:var(--nfh-text-muted,var(--tone-neutral-60));border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;height:54px;font-size:11px;font-weight:600;text-decoration:none;display:flex}html[data-nfh-nav=a] .mobile-tab .mobile-tab-glyph{box-shadow:none;background:0 0;border:0;place-items:center;width:26px;height:26px;display:grid}html[data-nfh-nav=a] .mobile-tab-active{color:var(--nfh-text-primary,var(--tone-neutral-96));background:0 0}html[data-nfh-nav=a] .mobile-tab-active .mobile-tab-glyph{color:var(--tone-brand-80)}html[data-nfh-nav=a] .mobile-tab-active:after{display:none}html[data-nfh-nav=a] .nfh-nutrition-nav-add{background:var(--tone-brand-80);color:var(--tone-neutral-12);border-radius:18px;place-self:center;width:46px;height:46px;font-size:28px;font-weight:500;line-height:1}html[data-nfh-nav=a] .nfh-nutrition-nav-add span{place-items:center;height:100%;display:grid}html[data-nfh-nav=a] body.nfh-chat-keyboard-open .mobile-tabbar{display:none}html[data-nfh-nav=a] body:has([data-nfh-space-header]) .nfh-shell-profile{background:color-mix(in oklch, var(--tone-neutral-16) 86%, transparent);border:1px solid color-mix(in oklch, var(--tone-neutral-80) 12%, transparent);color:var(--nfh-text-primary,var(--tone-neutral-96));height:36px;right:10px;top:max(12px, calc(env(safe-area-inset-top) + 6px));z-index:70;border-radius:999px;justify-content:center;align-items:center;width:36px;display:flex;position:fixed}html[data-nfh-theme=light][data-nfh-nav=a] body:has([data-nfh-space-header]) .nfh-shell-profile{background:color-mix(in oklch, var(--tone-neutral-98) 92%, transparent)}html[data-nfh-nav=a] [data-nfh-space-header]{padding-right:52px!important}html[data-nfh-nav=b] .mobile-tabbar{display:none!important}html[data-nfh-nav=b] body{--nfh-tabbar-height:0px}html[data-nfh-nav=b] body:not(:has(.nfh-chat-header)) .nfh-shell-menu{background:color-mix(in oklch, var(--tone-neutral-16) 86%, transparent);border:1px solid color-mix(in oklch, var(--tone-neutral-80) 12%, transparent);color:var(--nfh-text-primary,var(--tone-neutral-96));height:42px;left:12px;top:max(10px, env(safe-area-inset-top));z-index:70;border-radius:14px;justify-content:center;align-items:center;width:42px;display:flex;position:fixed}html[data-nfh-theme=light][data-nfh-nav=b] body:not(:has(.nfh-chat-header)) .nfh-shell-menu{background:color-mix(in oklch, var(--tone-neutral-98) 92%, transparent)}html[data-nfh-nav=b] body:not(:has(.nfh-chat-header)) :is(.page-shell,main){padding-top:calc(max(10px, env(safe-area-inset-top)) + 50px)}html[data-nfh-nav=b] .nfh-shell-addmeal{background:var(--tone-brand-80);bottom:calc(18px + env(safe-area-inset-bottom));box-shadow:0 10px 28px color-mix(in oklch, var(--tone-black) 40%, transparent);color:var(--tone-neutral-12);z-index:70;border:0;border-radius:20px;justify-content:center;align-items:center;width:58px;height:58px;font-size:30px;display:flex;position:fixed;right:18px}html[data-nfh-nav=b] :is(.nfh-chat-footer,.nfh-chat-composer-dock){padding-bottom:max(10px, env(safe-area-inset-bottom));bottom:0}}@media (min-width:768px){.nfh-shell-menu,.nfh-shell-addmeal{display:none!important}}.nfh-proto-chip,.nfh-proto-panel{background:color-mix(in oklch, var(--tone-neutral-12) 94%, transparent);border:1px solid color-mix(in oklch, var(--tone-accent-75) 50%, transparent);color:var(--tone-neutral-96);z-index:200;border-radius:999px;font:600 12px/1 system-ui,sans-serif;position:fixed;top:46%;left:0}.nfh-proto-chip{writing-mode:vertical-rl;border-left:0;border-radius:0 12px 12px 0;padding:10px 8px}.nfh-proto-panel{border-radius:16px;gap:8px;width:min(300px,100vw - 20px);padding:10px;display:grid}.nfh-proto-row{grid-template-columns:70px 1fr 1fr;align-items:center;gap:6px;display:grid}.nfh-proto-row button,.nfh-proto-close{background:color-mix(in oklch, var(--tone-neutral-25) 80%, transparent);color:inherit;font:inherit;border:1px solid #0000;border-radius:10px;padding:9px 6px}.nfh-proto-row button[aria-pressed=true]{border-color:var(--tone-accent-75);color:var(--tone-accent-84)}html[data-nfh-theme] .nfh-chat-thread-panel{align-content:start}html[data-nfh-theme] .nfh-drawer-spaces a.nfh-drawer-space{color:var(--nfh-text-secondary)}html[data-nfh-theme] .nfh-drawer-spaces a.nfh-drawer-space-active{color:var(--nfh-text-primary)}html[data-nfh-theme=light] .nfh-nutrition-production-app{--nut01-bg:var(--tone-neutral-98);--nut01-surface:var(--tone-white);--nut01-surface-strong:var(--tone-neutral-96);--nut01-line:color-mix(in oklch, var(--tone-neutral-45) 18%, transparent);--nut01-text:var(--tone-neutral-16);--nut01-muted:var(--tone-neutral-45);--nut01-purple:var(--tone-accent-50);--nut01-purple-bright:var(--tone-accent-45);--nut01-liquid:var(--tone-accent-60);--nut01-liquid-deep:var(--tone-accent-45)}html[data-nfh-theme=light] .nfh-nutrition-macro-surface{background:var(--tone-white);border:1px solid color-mix(in oklch, var(--tone-neutral-45) 16%, transparent)}html[data-nfh-theme=light] .nfh-nutrition-macro-zone>i{background:color-mix(in oklch, var(--tone-neutral-45) 14%, transparent)}html[data-nfh-theme=light] .nfh-nutrition-vessel-value{color:var(--tone-neutral-16);text-shadow:none}html[data-nfh-theme=light] .nfh-nutrition-vessel-value span{color:var(--tone-neutral-45)}html[data-nfh-theme=light] .nfh-cal-brand{color:var(--tone-neutral-32)}
