:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f7fafc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#0c0e12;--bg-2:#111318;--surface:#1a1c20;--surface-elevated:#1e2024;--surface-2:#282a2e;--surface-3:#333539;--text:#e2e2e8;--muted:#bbc9cf;--border:#ffffff14;--border-strong:#a4e6ff52;--blue:#a4e6ff;--accent:#a4e6ff;--accent-rgb:164 230 255;--accent-soft:#a4e6ff1a;--accent-border:#a4e6ff47;--action:#00d1ff;--action-rgb:0 209 255;--on-action:#001f28;--on-accent:#03111f;--green:#5ee3ac;--orange:#ff9b70;--violet:#c4b5fd;--cyan:#67e8f9;--danger:#fb7185;--text-muted:var(--muted);--shadow:0 18px 48px #00000047;--shadow-soft:0 8px 26px #0003;--success-bg:#5ee3ac24;--success-border:#5ee3ac6b;--warning-bg:#ff9b7024;--warning-border:#ff9b706b;--danger-bg:#fb718524;--danger-border:#fb71856b;--radius:12px;--radius-sm:8px;--app-gap:24px;--card-padding:20px;background:#0c0e12;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#111827;--bg:#f7f9fc;--bg-2:#edf3f9;--surface:#fff;--surface-elevated:#fff;--surface-2:#edf3f8;--surface-3:#dce6f0;--text:#111827;--muted:#475569;--border:#cbd7e3;--border-strong:#94a3b8;--blue:#0369a1;--accent:#0369a1;--accent-rgb:3 105 161;--accent-soft:#0e74901f;--accent-border:#0e749057;--action:#0369a1;--action-rgb:3 105 161;--on-action:#fff;--on-accent:#fff;--shadow:0 16px 34px #0f172a1a;--shadow-soft:0 8px 22px #0f172a14;background:#f7f9fc}:root[data-accent=green]{--blue:#43d39a;--accent:#43d39a;--accent-rgb:67 211 154;--accent-soft:#43d39a21;--accent-border:#43d39a61;--on-accent:#07110d}:root[data-accent=violet]{--blue:#a78bfa;--accent:#a78bfa;--accent-rgb:167 139 250;--accent-soft:#a78bfa21;--accent-border:#a78bfa66;--on-accent:#12091f}:root[data-accent=orange]{--blue:#ff8a5b;--accent:#ff8a5b;--accent-rgb:255 138 91;--accent-soft:#ff8a5b21;--accent-border:#ff8a5b66;--on-accent:#1b0d08}:root[data-accent=cyan]{--blue:#42c7d8;--accent:#42c7d8;--accent-rgb:66 199 216;--accent-soft:#42c7d821;--accent-border:#42c7d866;--on-accent:#061216}:root[data-density=compact]{--app-gap:16px;--card-padding:14px}*,:before,:after{box-sizing:border-box;font-family:inherit}html,body,#root{min-height:100%;overflow-x:hidden}body{background:radial-gradient(circle at 70% -20%, rgb(var(--action-rgb) / .07), transparent 32rem), linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);color:var(--text);margin:0}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}button,input,textarea,select{font:inherit;touch-action:manipulation}button{color:inherit;-webkit-tap-highlight-color:transparent}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input,textarea,select{-webkit-user-select:text;user-select:text}button,[role=button]{-webkit-user-select:none;user-select:none}.app-shell{grid-template-columns:244px minmax(0,1fr);gap:0;width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:0;display:grid}:root[data-density=compact] .app-shell{padding:0}.auth-screen{align-items:center;width:min(1040px,100% - 28px);min-height:100vh;margin:0 auto;padding:28px 0;display:grid}.auth-card{border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow);background:linear-gradient(145deg,#282a2eb8,#1a1c20f0);gap:14px;padding:18px;display:grid}.auth-card-modern{border-color:var(--accent-border);background:var(--surface-elevated);grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:0;padding:0;overflow:hidden}.auth-brand{min-height:58px;box-shadow:none}.auth-showcase{border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);min-height:620px;box-shadow:var(--shadow);border-right:1px solid var(--border);background:#1e2024c7;background:linear-gradient(145deg, var(--surface-elevated) 0%, var(--surface) 54%, var(--bg) 100%);align-content:center;gap:18px;padding:clamp(28px,5vw,56px);display:grid}.auth-logo-mark{background:var(--accent);width:58px;height:58px;color:var(--on-accent);border-radius:16px;place-items:center;display:grid;box-shadow:0 18px 42px #00000052}.auth-showcase h1{letter-spacing:0;max-width:520px;margin:4px 0 12px;font-size:clamp(34px,5vw,54px);line-height:.98}.auth-showcase span{max-width:520px;color:var(--muted);line-height:1.6}.auth-benefits{flex-wrap:wrap;gap:10px;max-width:560px;display:flex}.auth-benefits span{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;align-items:center;gap:7px;padding:9px 11px;font-size:12px;font-weight:800;display:inline-flex}.auth-benefits svg{color:var(--green)}.auth-benefits-legacy{display:none!important}.auth-form-panel{background:color-mix(in srgb, var(--surface) 92%, transparent);align-content:center;gap:14px;padding:clamp(24px,4vw,42px);display:grid}.login-language-card{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:8px;padding:10px;display:grid}.login-language-card>span{color:var(--muted);font-size:12px;font-weight:850}.login-language-card small{color:var(--muted);font-size:12px;line-height:1.4}.google-button{border:1px solid var(--border);background:var(--text);width:100%;min-height:54px;color:var(--bg);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:12px;font-weight:950;display:inline-flex}.google-button:disabled{opacity:.75;cursor:wait}.google-icon{color:#2563eb;background:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-weight:950;display:grid;box-shadow:inset 0 0 0 1px #10131614}.auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);height:1px}.onboarding-card{align-self:start}.onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.onboarding-steps span{border:1px solid var(--border);background:var(--surface-2);min-height:38px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;padding:8px 10px;font-size:12px;font-weight:850;display:inline-flex}.onboarding-steps span.active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--text)}.onboarding-name-step,.onboarding-actions{gap:12px;display:grid}.onboarding-actions{grid-template-columns:minmax(120px,.36fr) minmax(0,1fr)}.onboarding-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.onboarding-preview div{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;align-content:center;gap:4px;min-height:76px;padding:12px;display:grid}.onboarding-preview strong{font-size:22px}.onboarding-preview span{color:var(--muted);font-size:12px}.pwa-install-card{border:1px solid var(--accent-border);border-radius:var(--radius);background:var(--accent-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.pwa-install-card>div{gap:8px;display:flex}.pwa-install-card>div:first-child{display:grid}.pwa-install-card strong{color:var(--text)}.pwa-install-card span{color:var(--muted);font-size:13px;line-height:1.45}.pwa-status-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.pwa-status-card.update-ready{border-color:var(--accent-border);background:var(--accent-soft)}.pwa-status-card.offline{border-color:#fb718573}.pwa-status-card>div:first-child{gap:3px;display:grid}.pwa-status-card strong{color:var(--text);font-size:14px}.pwa-status-card span{color:var(--muted);font-size:12px;line-height:1.45}.pwa-status-card>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:20px;min-width:0;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{min-height:66px;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:8px;display:flex}.brand>span{width:40px;height:40px;color:var(--action);background:rgb(var(--action-rgb) / .1);border:1px solid rgb(var(--action-rgb) / .2);border-radius:8px;place-items:center;display:grid}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.03em;font-family:Hanken Grotesk,Inter,sans-serif;font-size:22px}.brand small{color:var(--muted);margin-top:2px}.nav-list{box-shadow:none;background:0 0;border:0;border-radius:0;gap:5px;padding:8px;display:grid}.nav-list button{min-height:46px;color:var(--muted);letter-spacing:.025em;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;display:flex}.nav-list button:hover,.nav-list button.active{color:var(--text);background:var(--accent-soft)}.nav-list button.active{border:1px solid rgb(var(--action-rgb) / .24);color:#dff8ff;box-shadow:inset -3px 0 0 var(--action)}.mobile-tab-bar,.mobile-more-page{display:none}.journal-page,.food-workspace{gap:24px;display:grid}.journal-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.journal-week button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px;justify-items:center;gap:10px;padding:12px 2px;display:grid}.journal-week button b{border:2px solid var(--surface-3);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.journal-week button.active{background:var(--accent-soft);color:var(--action)}.journal-week button.active b{border-color:var(--action)}.journal-budget{grid-template-columns:1fr 1fr;align-items:center;gap:20px;padding:24px 0 32px;display:grid}.journal-budget-details{gap:24px;display:grid}.journal-budget-details span,.journal-remaining{color:var(--muted);gap:8px;display:grid}.journal-budget-details strong{color:var(--text);font-size:22px}.journal-remaining{text-align:center}.journal-remaining strong{color:var(--text);font-size:clamp(40px,7vw,64px);line-height:1}.journal-entry-actions{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.journal-entry-actions button{flex:140px;min-height:48px}.journal-meals{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.journal-meal{border:1px solid var(--border);background:var(--surface);color:#fff;text-align:left;cursor:pointer;border-radius:16px;min-height:210px;position:relative;overflow:hidden}.journal-meal img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.journal-meal:after{content:"";background:linear-gradient(#0000,#000000d9);position:absolute;inset:0}.journal-meal>span{z-index:1;gap:4px;display:grid;position:absolute;bottom:18px;left:18px}.journal-meal b{font-size:24px}.journal-meal-plus{z-index:1;box-sizing:content-box;background:#0006;border-radius:50%;padding:8px;position:absolute;top:14px;left:14px}.journal-bottom{grid-template-columns:1fr 1fr;gap:20px;display:grid}.journal-water{text-align:center;gap:5px;margin:20px 0;display:grid}.journal-water strong{font-size:40px}.food-workspace .tracker-layout{flex-direction:column-reverse;display:flex}.food-workspace .food-result-list{max-height:420px;overflow-y:auto}@media (width<=640px){.journal-meals{grid-template-columns:1fr 1fr;gap:12px}.journal-bottom{grid-template-columns:1fr}.journal-meal{min-height:190px}.journal-week button b{width:32px;height:32px}}.auth-email-form{gap:12px;display:grid}.content{min-width:0;padding:0 32px 40px}.mobile-app-brand{display:none}.topbar-copy{gap:4px;min-width:0;display:grid}.topbar-copy span{max-width:620px;color:var(--muted);font-size:14px;line-height:1.42}.auth-notice{margin-bottom:12px}.tutorial-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.tutorial-modal{border:1px solid var(--accent-border);background:var(--surface-elevated);width:min(920px,100%);max-height:min(82vh,760px);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:18px;display:grid;overflow:auto}.info-modal{width:min(640px,100%)}.info-modal-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.info-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.info-modal-grid article,.info-formula,.info-note{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:12px}.info-modal-grid strong,.info-formula strong{margin-bottom:8px;display:block}.info-modal-grid ul{gap:7px;margin:0;padding-left:18px;display:grid}.info-modal-grid li,.info-formula span,.info-note{color:var(--muted);font-size:13px;line-height:1.45}.tutorial-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.tutorial-grid article{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:5px;padding:10px;display:grid}.tutorial-grid span{color:var(--muted);font-size:12px;line-height:1.35}.topbar{z-index:24;border:0;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);min-height:72px;box-shadow:var(--shadow-soft);border-radius:0;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 4px;display:flex;position:sticky;top:0}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 2px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600}h1,h2,p{margin:0}h1{letter-spacing:-.03em;font-family:Hanken Grotesk,Inter,sans-serif;font-size:clamp(26px,2.6vw,36px);font-weight:800;line-height:1.05}.top-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.icon-button,.date-pill,.primary-button,.secondary-button,.button-strip button,.segmented button,.day-tabs button,.plan-selector button,.quick-meals button{border:1px solid var(--border);background:var(--surface);cursor:pointer;touch-action:manipulation;border-radius:8px;min-width:44px;min-height:44px}.icon-button{width:40px;color:var(--muted);place-items:center;display:inline-grid}.icon-button:hover,.date-pill:hover{color:var(--text);border-color:var(--border-strong)}.icon-button.danger:hover{color:var(--danger);border-color:#dc262659}.date-pill{color:var(--text);align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.quick-action-bar{z-index:19;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--surface-elevated) 82%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-soft);grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:-4px 0 14px;padding:8px;display:grid;position:sticky;top:100px}.quick-action-bar button{min-width:0;min-height:54px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.quick-action-bar button:hover,.quick-action-bar button.active{color:var(--text);border-color:rgb(var(--action-rgb) / .28);background:rgb(var(--action-rgb) / .08)}.quick-action-bar button svg{color:var(--action);flex:none}.quick-action-bar button span{gap:2px;min-width:0;display:grid}.quick-action-bar strong,.quick-action-bar small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quick-action-bar small{color:var(--muted);font-size:11px}.app-toast{right:max(16px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:95;pointer-events:none;border:1px solid var(--success-border);background:color-mix(in srgb, var(--surface-elevated) 92%, var(--green));max-width:min(380px,100vw - 28px);color:var(--text);box-shadow:var(--shadow);border-radius:8px;align-items:center;gap:10px;padding:12px 14px;animation:.22s ease-out slideUp;display:flex;position:fixed}.app-toast svg{color:var(--green);flex:none}.app-toast span{font-size:14px;font-weight:700}.page-grid{gap:20px;display:grid}.quick-action-bar strong{letter-spacing:-.01em;font-family:Hanken Grotesk,Inter,sans-serif}.card{min-width:0;padding:var(--card-padding);border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg, color-mix(in srgb, var(--surface-elevated) 96%, transparent), color-mix(in srgb, var(--surface) 98%, var(--bg)));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:14px;display:grid;box-shadow:0 14px 34px #0000002e}.card h3{align-items:center;gap:9px;margin:0;font-family:Hanken Grotesk,Inter,sans-serif;font-size:18px;font-weight:700;line-height:1.2;display:flex}.card h3 svg{color:var(--accent)}.helper{color:var(--muted);font-size:13px;line-height:1.45}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.span-all{grid-column:1/-1}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-card,.panel,.knowledge-card{background:linear-gradient(145deg, color-mix(in srgb, var(--surface-elevated) 96%, transparent), color-mix(in srgb, var(--surface) 98%, var(--bg)));border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:0;transition:border-color .16s,box-shadow .16s,transform .16s;box-shadow:0 14px 34px #0000002e}.metric-card:hover,.panel:hover,.card:hover{border-color:rgb(var(--action-rgb) / .2);box-shadow:0 16px 38px #00000038, 0 0 24px rgb(var(--action-rgb) / .035)}.metric-card{align-items:flex-start;gap:12px;min-height:116px;padding:16px;display:flex}.metric-card>div{flex:auto;min-width:0}.metric-card-title,.nutrient-card-title,.progress-label{align-items:center;gap:7px;min-width:0;display:flex}.metric-card-title{justify-content:space-between}.metric-card-title p{min-width:0}.info-button{border:1px solid var(--border);background:var(--surface-2);width:28px;height:28px;min-height:28px;color:var(--muted);cursor:pointer;border-radius:999px;flex:none;place-items:center;padding:0;display:inline-grid}.info-button:hover,.info-button:focus-visible{color:var(--text);border-color:var(--accent-border);background:var(--accent-soft)}.inline-info-button{width:24px;height:24px;min-height:24px}.progress-info-button{position:absolute;top:0;right:0}:root[data-density=compact] .metric-card{min-height:96px;padding:13px}:root[data-density=compact] .page-grid,:root[data-density=compact] .dashboard-layout,:root[data-density=compact] .metric-grid,:root[data-density=compact] .settings-stack,:root[data-density=compact] .settings-section{gap:10px}:root[data-density=compact] .topbar{min-height:60px;margin-bottom:12px}.metric-icon,.panel-icon,.knowledge-card>button>span{border-radius:8px;flex:none;place-items:center;width:34px;height:34px;display:grid}.metric-card p{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:5px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:750}.metric-card strong{font-family:JetBrains Mono,ui-monospace,monospace;font-size:27px;line-height:1.05;display:block}.metric-card small{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.4;display:block}.tone-blue .metric-icon,.tone-blue .fill,.tone-blue.knowledge-card>button>span{background:var(--accent-soft);color:var(--blue)}.tone-green .metric-icon,.tone-green .fill,.tone-green.knowledge-card>button>span{color:var(--green);background:#43d39a24}.tone-orange .metric-icon,.tone-orange .fill,.tone-orange.knowledge-card>button>span{color:var(--orange);background:#ff8a5b24}.tone-violet .metric-icon,.tone-violet .fill,.tone-violet.knowledge-card>button>span{color:var(--violet);background:#b69cff24}.tone-cyan .metric-icon,.tone-cyan .fill{color:var(--cyan);background:#42c7d824}.fill.tone-blue{background:var(--blue)}.fill.tone-green{background:var(--green)}.fill.tone-orange{background:var(--orange)}.fill.tone-violet{background:var(--violet)}.fill.tone-cyan{background:var(--cyan)}.dashboard-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:16px;display:grid}.panel{padding:var(--card-padding)}.panel-heading{justify-content:space-between;align-items:center;gap:12px;min-height:38px;margin-bottom:16px;display:flex}.panel-title{align-items:center;gap:10px;display:flex}.panel-title h2{font-family:Hanken Grotesk,Inter,sans-serif;font-size:19px;font-weight:700}.panel-icon{background:rgb(var(--action-rgb) / .08);color:var(--action);border:1px solid rgb(var(--action-rgb) / .12)}.result-grid strong,.health-summary-grid strong,.skill-dashboard strong,.nutrient-card strong,.goals-summary-row strong{font-family:JetBrains Mono,ui-monospace,monospace}.score-panel{display:block}.dashboard-priority{order:-2}.score-panel .panel-heading{grid-column:1/-1;margin-bottom:0}.goal-ring-wrap{gap:18px;display:grid;position:relative}.goal-progress-overview{grid-template-columns:148px minmax(0,1fr);align-items:center;gap:24px;padding-right:34px;display:grid}.adherence-ring{aspect-ratio:1;place-items:center;width:148px;display:grid;position:relative}.adherence-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.adherence-ring circle{fill:none;stroke-width:9px}.adherence-ring-track{stroke:var(--surface-3)}.adherence-ring-value{stroke-linecap:round;transition:stroke-dashoffset .35s,stroke .25s}.adherence-ring-label,.goal-progress-copy{gap:5px;display:grid}.adherence-ring-label{z-index:1;text-align:center;justify-items:center;position:relative}.adherence-ring-label span,.goal-progress-overview p,.goal-progress-item small{color:var(--muted);font-size:12px}.adherence-ring-label span{text-transform:uppercase;letter-spacing:.06em;font-family:JetBrains Mono,ui-monospace,monospace}.adherence-ring-label strong{font-family:JetBrains Mono,ui-monospace,monospace;font-size:clamp(28px,5vw,38px);line-height:1}.goal-progress-copy>strong{font-size:18px}.goal-progress-overview p{margin:0 0 3px}.goal-progress-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.goal-progress-item{border:1px solid var(--border);background:var(--bg);border-radius:9px;gap:7px;min-width:0;padding:12px;display:grid}.goal-progress-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.goal-progress-name{align-items:center;gap:7px;min-width:0;font-weight:700;display:flex}.goal-progress-name i{border-radius:50%;flex:none;width:8px;height:8px}.goal-progress-heading strong{font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px}.goal-progress-track{background:var(--surface-3);border-radius:999px;height:7px;overflow:hidden}.goal-progress-track span{border-radius:inherit;min-width:0;height:100%;transition:width .3s;display:block}.goal-progress-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goals-summary-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.goals-summary-row>div{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;gap:4px;padding:12px;display:grid}.goals-summary-row span,.goals-date-row{color:var(--muted);font-size:12px}.goals-date-row{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.settings-page-stack{gap:16px;display:grid}.progress-stack{gap:13px;display:grid}.settings-actions{justify-content:flex-end;padding:4px 0 18px;display:flex}.progress-row{gap:7px;display:grid}.progress-copy{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.progress-copy span,.progress-copy em{color:var(--muted);font-style:normal}.progress-label{color:var(--muted)}.track{background:var(--surface-3);border-radius:999px;height:8px;overflow:hidden}.fill{border-radius:inherit;height:100%;transition:width .25s;display:block}.insight-list{gap:10px;display:grid}.insight-item{background:var(--surface-2);color:var(--text);border-radius:8px;align-items:flex-start;gap:10px;padding:11px 12px;font-size:14px;display:flex}.insight-item span{flex:auto;min-width:0}.insight-item svg{color:var(--blue);flex:none;margin-top:1px}.nutrient-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.nutrient-card{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:9px;min-height:118px;padding:12px;display:grid}.nutrient-card.attention{background:#facc1514;border-color:#facc1559}.nutrient-card strong,.nutrient-card span,.nutrient-card small{display:block}.nutrient-card-title{justify-content:space-between}.nutrient-card span,.nutrient-card small{color:var(--muted);font-size:12px}.mini-track{background:var(--surface-3);border-radius:999px;height:7px;overflow:hidden}.mini-track span{border-radius:inherit;background:var(--green);height:100%;display:block}.nutrient-card.attention .mini-track span{background:var(--orange)}.nutrient-gaps{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.nutrient-gaps span{background:var(--surface-2);color:var(--muted);border-radius:8px;padding:8px 10px;font-size:12px}.food-analysis-hero{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:14px;display:grid}.analysis-score{aspect-ratio:1;border:10px solid rgb(var(--accent-rgb) / .28);background:var(--surface);border-radius:50%;align-content:center;place-items:center;width:86px;display:grid}.analysis-score strong{font-size:24px;line-height:1}.analysis-score span,.analysis-card>span{color:var(--muted);font-size:12px}.food-analysis-hero h3{margin:2px 0 10px;font-size:21px}.analysis-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.analysis-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-content:start;gap:10px;padding:12px;display:grid}.analysis-flag{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:7px;padding:10px;display:grid}.analysis-flag div{align-items:center;gap:8px;display:flex}.analysis-flag em{background:var(--accent-soft);color:var(--blue);border-radius:999px;padding:3px 7px;font-size:11px;font-style:normal;font-weight:900}.analysis-flag.high em{color:#ff8a8a;background:#ff737324}.analysis-flag.medium em{color:var(--orange);background:#ffb74d24}.analysis-flag p,.analysis-flag small{color:var(--muted);font-size:12px;line-height:1.45}.analysis-list{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.55}.analysis-warning{border-color:#ffb74d59;margin-top:12px}.ai-coach-card{border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin-top:12px;padding:13px;display:grid}.ai-coach-card>div:first-child{gap:4px;display:grid}.ai-coach-card span,.ai-coach-card p,.ai-coach-card small{color:var(--muted);font-size:12px;line-height:1.5}.ai-coach-result{border-top:1px solid var(--accent-border);grid-column:1/-1;gap:10px;padding-top:12px;display:grid}.ai-coach-result p{color:var(--text);font-size:13px}.ai-coach-result strong{margin-bottom:4px;display:block}.error-text{border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--text);border-radius:8px;grid-column:1/-1;padding:11px 12px;font-size:13px;line-height:1.42}.condition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.condition-option{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.condition-option input{margin-top:3px}.condition-option strong,.condition-option small{display:block}.condition-option small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.settings-inline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px;display:grid}.activity-level-help{border:1px solid var(--accent-border);border-radius:var(--radius);background:var(--accent-soft);color:var(--muted);padding:9px 10px;font-size:12px;font-weight:650;line-height:1.45;display:block}.unit-toggle-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:8px;padding:10px;display:grid}.unit-toggle-card>span{color:var(--muted);font-size:12px;font-weight:800}.unit-toggle-card small{color:var(--muted);font-size:12px;line-height:1.4}.profile-unit-toggle{margin-bottom:12px}.onboarding-settings-note{margin-top:4px}.settings-section,.settings-stack{gap:12px;margin-top:16px;display:grid}.settings-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:13px}.settings-section-title{color:var(--text);align-items:center;gap:8px;font-size:13px;font-weight:850;display:flex}.settings-section-title svg{color:var(--accent)}.theme-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.theme-option,.accent-swatch,.settings-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text)}.theme-option{text-align:left;cursor:pointer;align-items:flex-start;gap:10px;min-height:78px;padding:12px;display:flex}.theme-option svg{color:var(--accent);flex:none}.theme-option span,.theme-option strong,.theme-option small,.settings-toggle strong,.settings-toggle div div{display:block}.theme-option small,.settings-toggle div div{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.4}.theme-option.active,.accent-swatch.active{border-color:var(--accent-border);background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .12)}.accent-picker{flex-wrap:wrap;gap:8px;display:flex}.accent-swatch{cursor:pointer;align-items:center;gap:7px;min-height:38px;padding:0 10px;display:inline-flex}.accent-swatch span{background:var(--swatch-color);width:14px;height:14px;box-shadow:0 0 0 3px color-mix(in srgb, var(--swatch-color) 20%, transparent);border-radius:999px}.accent-swatch strong{font-size:12px}.settings-toggle{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.settings-toggle input{accent-color:var(--accent);margin-top:3px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compact-grid{margin-top:14px}.field,.text-field,.slider-field{gap:7px;display:grid}.field>label,.text-field>span,.slider-field>span{color:var(--muted);letter-spacing:.045em;text-transform:uppercase;align-items:center;gap:6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;font-weight:600;display:inline-flex}.text-field>.field-label-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.field-label-row small{max-width:430px;color:var(--muted);font-size:12px;font-weight:600;line-height:1.4}.number-box{border:1px solid var(--border);background:var(--bg);border-radius:8px;grid-template-columns:38px minmax(0,1fr) auto 38px;align-items:center;min-height:42px;display:grid;overflow:hidden}.number-box button{background:color-mix(in srgb, var(--surface-3) 70%, var(--surface-2));height:100%;color:var(--text);cursor:pointer;border:0;font-size:18px}.number-box input,.field input,.field select,.text-field input,.text-field textarea,.text-field select{border:1px solid var(--border);background:var(--bg);width:100%;min-height:42px;color:var(--text);border-radius:8px;outline:none;padding:0 12px}.field input::placeholder,.text-field input::placeholder,.text-field textarea::placeholder{color:color-mix(in srgb, var(--muted) 78%, var(--surface-3))}.number-box:focus-within,.field input:focus,.field select:focus,.text-field input:focus,.text-field textarea:focus,.text-field select:focus,.tracker-search:focus-within{border-color:rgb(var(--action-rgb) / .72);box-shadow:inset 0 0 0 1px rgb(var(--action-rgb) / .12), 0 0 16px rgb(var(--action-rgb) / .08)}.number-box input{text-align:center;border:0;min-width:0;padding:0 4px;font-family:JetBrains Mono,ui-monospace,monospace;font-weight:600}.number-box-button{background:color-mix(in srgb, var(--surface-3) 70%, var(--surface-2));width:38px;height:38px;color:var(--text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:6px;place-items:center;font-size:18px;font-weight:700;display:grid}.number-box-button:hover,.number-box-button:active{background:var(--surface-3);color:var(--accent)}.number-box-button:focus-visible{outline:2px solid rgb(var(--accent-rgb) / .58);outline-offset:2px}.number-box em{color:var(--muted);white-space:nowrap;padding:0 8px 0 0;font-size:12px;font-style:normal}.text-field textarea{resize:vertical;min-height:96px;padding:11px 12px}.form-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:12px;display:grid}.primary-button{background:var(--action);color:var(--on-action);border-color:var(--action);letter-spacing:.035em;box-shadow:0 10px 24px rgb(var(--action-rgb) / .18);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-family:JetBrains Mono,ui-monospace,monospace;font-weight:700;display:inline-flex}.primary-button:hover{background:#4cd6ff;border-color:#4cd6ff}.primary-button:disabled{opacity:.62;cursor:not-allowed;box-shadow:none;filter:saturate(.72)}.primary-button.full,.secondary-button.full{width:100%;margin-top:14px}.primary-button.compact{min-height:36px}.secondary-button{color:var(--text);background:color-mix(in srgb, var(--surface-2) 86%, var(--bg));justify-content:center;align-items:center;padding:0 14px;font-weight:800;display:inline-flex}.secondary-button:hover{border-color:var(--border-strong);background:var(--surface-3)}.secondary-button:disabled,.button-strip button:disabled,.segmented button:disabled,.day-tabs button:disabled,.plan-selector button:disabled{opacity:.58;cursor:not-allowed}button[aria-busy=true]:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.secondary-button.danger{color:var(--danger);background:#fb718514;border-color:#fb718570}.secondary-button.compact{gap:7px;min-height:36px}.panel-actions{align-items:center;gap:8px;display:flex}.upload-zone{border:1px dashed var(--border-strong);background:var(--bg);width:100%;min-height:220px;color:var(--muted);border-radius:8px;place-items:center;gap:8px;margin-bottom:14px;display:grid;position:relative;overflow:hidden}.upload-zone img{object-fit:cover;width:100%;height:260px}.upload-zone small{opacity:.7;font-size:12px}.photo-source-picker{text-align:center;justify-items:center;gap:9px;width:min(100%,470px);padding:24px;display:grid}.photo-source-picker>svg{color:var(--action)}.photo-source-picker>strong{color:var(--text);font-family:Hanken Grotesk,Inter,sans-serif;font-size:17px}.photo-source-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin-top:6px;display:grid}.nutrition-label-note{border:1px solid rgb(var(--action-rgb) / .28);background:rgb(var(--action-rgb) / .08);color:var(--action);border-radius:9px;align-items:flex-start;gap:10px;padding:12px;display:flex}.nutrition-label-note span{gap:3px;display:grid}.nutrition-label-note strong{color:var(--text)}.nutrition-label-note small{color:var(--muted)}.web-nutrition-note a{width:fit-content;color:var(--action);align-items:center;gap:5px;margin-top:3px;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.web-nutrition-note a:hover,.web-nutrition-note a:focus-visible{text-decoration:underline}.result-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.global-camera-input{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed}.camera-fab{right:max(18px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom));z-index:90;border:1px solid rgb(var(--action-rgb) / .5);background:var(--action);width:58px;height:58px;color:var(--on-action);box-shadow:0 14px 34px #00000061, 0 0 24px rgb(var(--action-rgb) / .18);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:fixed}.file-input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;position:absolute;inset:0}.clear-photo-button{border:1px solid var(--border);width:36px;height:36px;color:var(--text);cursor:pointer;z-index:2;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#00000080;border-radius:8px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.clear-photo-button:hover,.clear-photo-button:active{border-color:var(--danger);color:var(--on-accent);background:#fb7185b3}.clear-photo-button:focus-visible{outline:2px solid rgb(var(--accent-rgb) / .58);outline-offset:2px}.editable-result{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.result-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.result-heading strong,.result-heading span{display:block}.result-heading span{color:var(--muted);margin-top:4px;font-size:12px}.quick-meals{gap:8px;margin-top:14px;display:grid}.quick-meals button{text-align:left;background:var(--surface-2);min-height:54px;padding:9px 12px}.quick-meals strong,.quick-meals span{display:block}.quick-meals span{color:var(--muted);margin-top:3px;font-size:12px}.meal-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.meal-type-tabs{flex-wrap:wrap;gap:8px;margin:10px 0 14px;display:flex}.meal-type-tabs button{border:1px solid var(--border);background:var(--surface-2);min-height:36px;color:var(--muted);cursor:pointer;border-radius:8px;padding:0 11px;font-weight:750}.meal-type-tabs button.active{color:var(--text);background:#43d39a1c;border-color:#43d39a7a}.meal-type-card{border:1px solid var(--border);background:var(--surface-2);min-height:82px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;align-items:flex-end;padding:10px;display:flex;position:relative;overflow:hidden}.meal-type-card img{object-fit:cover;opacity:.42;width:100%;height:100%;position:absolute;inset:0}.meal-type-card span{gap:3px;min-width:0;display:grid;position:relative}.meal-type-card strong,.meal-type-card small{overflow-wrap:anywhere}.meal-type-card small{color:#f4f0e8c7;font-size:11px;line-height:1.25}.meal-type-card.active{border-color:#43d39ab3;box-shadow:inset 0 0 0 1px #43d39a59}.tracker-search{border:1px solid var(--border);background:var(--surface-2);min-height:50px;color:var(--muted);border-radius:8px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:14px;padding:0 12px;display:grid}.tracker-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:none}.tracker-layout{gap:16px;display:grid}.tracker-column{min-width:0}.section-heading{gap:3px;margin-bottom:9px;display:grid}.section-heading strong{font-size:14px}.section-heading span,.empty-inline{color:var(--muted);font-size:12px}.suggestion-list,.food-result-list{gap:8px;display:grid}.food-result-list{container:food-results/inline-size}.regular-meal-list{gap:8px;margin:12px 0 16px;display:grid}.regular-meal-row{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;min-height:64px;padding:7px;display:grid}.regular-meal-row>button:first-child{min-width:0;min-height:52px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:10px;display:grid}.regular-meal-row span{gap:3px;min-width:0;display:grid}.regular-meal-row strong{overflow-wrap:anywhere}.regular-meal-row small{color:var(--muted);font-size:12px;line-height:1.3}.regular-meal-row:hover{background:#43d39a14;border-color:#43d39a73}.suggestion-row,.food-search-row{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;min-height:66px}.suggestion-row{width:100%;color:var(--text);text-align:left;cursor:pointer;grid-template-columns:54px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:8px;display:grid}.suggestion-row img,.food-select-button img,.food-detail-panel>img{object-fit:cover;background:var(--surface-3);border-radius:8px}.suggestion-row img,.food-select-button img{width:54px;height:54px}.suggestion-row span,.food-select-button span{gap:3px;min-width:0;display:grid}.suggestion-row strong,.food-select-button strong{overflow-wrap:anywhere}.suggestion-row small,.suggestion-row em,.food-select-button small{color:var(--muted);font-size:12px;font-style:normal;line-height:1.3}.suggestion-row:hover,.food-search-row.active{border-color:var(--accent-border);background:var(--accent-soft)}.food-search-row{grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;padding:12px;display:grid}.food-result-actions{align-items:center;gap:8px;display:flex}.food-result-actions .icon-button{flex:0 0 44px}.food-result-actions .icon-button[aria-pressed=true]{color:var(--accent);border-color:var(--accent-border)}.food-result-actions .primary-button{min-height:44px;box-shadow:none;flex:1}@container food-results (width>=420px){.food-search-row{grid-template-columns:minmax(0,1fr) auto}.food-result-actions .primary-button{flex:none}}.food-select-button{min-width:0;min-height:54px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:0;display:grid}.food-select-button strong{font-size:16px;line-height:1.3}.food-select-button small{overflow-wrap:anywhere;font-size:13px;line-height:1.4}.food-detail-panel{border-top:1px solid var(--border);grid-template-columns:98px minmax(0,1fr);gap:12px;margin-top:16px;padding-top:14px;display:grid}.food-detail-panel>img{width:98px;height:98px}.database-tools{border-top:1px solid var(--border);gap:12px;margin-top:16px;padding-top:14px;display:grid}.check-row{min-height:44px;color:var(--muted);cursor:pointer;align-items:center;gap:12px;font-size:14px;line-height:1.4;display:flex}.check-row input[type=checkbox]{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:0 0 20px;margin:0}.compact-segmented{margin-top:0}.compact-segmented button:disabled{opacity:.45;cursor:not-allowed}.macro-preview{background:var(--surface-2);border-radius:8px;align-content:center;gap:4px;min-height:78px;padding:12px;display:grid}.macro-preview strong{font-size:22px}.macro-preview span,.macro-preview small{color:var(--muted);font-size:12px}.recipe-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.recipe-list button{border:1px solid var(--border);background:var(--surface-2);min-height:46px;color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:9px 11px;display:flex}.recipe-list button.active,.button-strip button.active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--blue)}.error-note{border:1px solid var(--danger-border);color:var(--text);background:var(--danger-bg);border-radius:8px;margin-top:10px;padding:11px 12px;font-size:13px;line-height:1.42}.success-note{border:1px solid var(--success-border);color:var(--text);background:var(--success-bg);border-radius:8px;margin-top:10px;padding:11px 12px;font-size:13px;font-weight:750;line-height:1.42}.estimate-notes{color:var(--muted);gap:6px;margin-top:12px;font-size:12px;display:grid}.estimate-notes strong{color:var(--text)}.inline-daily-meals{border-top:1px solid var(--border);gap:10px;margin-top:18px;padding-top:16px;display:grid}.inline-list-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.inline-list-heading strong{color:var(--text);font-size:15px}.inline-list-heading span{color:var(--muted);font-size:12px}.food-followup-stack{gap:18px;margin-top:18px;display:grid}.food-followup-section{border-top:1px solid var(--border);gap:14px;padding-top:18px;display:grid}.food-followup-title{align-items:center;gap:12px;display:flex}.food-followup-title>div{gap:3px;display:grid}.food-followup-title strong{color:var(--text);font-size:18px}.food-followup-title small{color:var(--muted);font-size:13px}.recipe-list{gap:8px;max-height:620px;padding-right:4px;display:grid;overflow:auto}.recipe-list button{text-align:left;grid-template-columns:76px minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:12px;padding:8px;display:grid}.recipe-list button img{object-fit:cover;background:var(--surface-3);border-radius:8px;width:76px;height:62px}.recipe-list strong,.recipe-list small{display:block}.recipe-list small{color:var(--muted);margin-top:4px}.recipe-list em{color:var(--green);white-space:nowrap;font-size:12px;font-style:normal;font-weight:800}.recipe-detail{gap:14px;display:grid}.recipe-hero-image{aspect-ratio:16/9;border:1px solid var(--border);object-fit:cover;background:var(--surface-2);border-radius:8px;width:100%;max-height:360px}.recipe-detail h3{margin:0 0 4px;font-size:22px}.recipe-detail p{color:var(--muted)}.macro-pills{flex-wrap:wrap;gap:8px;display:flex}.macro-pills span{background:var(--surface-2);color:var(--text);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.ingredient-list{gap:7px;display:grid}.ingredient-list span{background:var(--surface-2);color:var(--muted);border-radius:8px;padding:9px 10px;font-size:13px}.ingredient-list strong,.ingredient-list small{display:block}.ingredient-list strong{color:var(--text);margin-bottom:4px}.ingredient-list small{color:var(--muted)}.recipe-steps{color:var(--text);margin:0;padding-left:22px;line-height:1.65}.meal-list{gap:9px;display:grid}.meal-row{background:var(--surface-2);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:12px;display:flex}.meal-main{min-width:0}.meal-title-line{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.meal-title-line strong{flex:160px;min-width:0}.meal-time-pill{border:1px solid var(--accent-border);background:var(--accent-soft);min-height:24px;color:var(--blue);border-radius:999px;flex:none;align-items:center;margin-top:0;padding:3px 8px;font-size:11px;font-weight:800;display:inline-flex}.meal-row strong,.meal-row span{display:block}.meal-row span{color:var(--muted);margin-top:4px;font-size:12px}.meal-row .meal-time-pill{color:var(--accent);margin-top:0;display:inline-flex}.meal-actions{text-align:right;white-space:nowrap;align-items:center;gap:10px;display:flex}.empty-state{min-height:150px;color:var(--muted);text-align:center;background:var(--surface-2);border-radius:8px;align-content:center;place-items:center;gap:8px;padding:24px;display:grid}.empty-state strong{color:var(--text)}.button-strip{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.button-strip button{color:var(--text);background:var(--surface-2);align-items:center;gap:7px;padding:0 12px;display:inline-flex}.slider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.slider-field input{width:100%;accent-color:var(--blue)}.sleep-score{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;align-content:center;gap:5px;min-height:70px;padding:12px;display:grid}.sleep-score strong{font-size:28px}.sleep-score span{color:var(--muted);font-size:12px}.sleep-notes{margin-top:14px}.plan-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.plan-selector button,.day-tabs button,.segmented button{background:color-mix(in srgb, var(--surface-2) 72%, var(--surface));text-align:left;padding:10px}.plan-selector button.active,.day-tabs button.active,.segmented button.active{border-color:var(--accent-border);background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .16)}.plan-selector strong,.plan-selector span{display:block}.day-tabs button{gap:3px;display:grid}.plan-selector span,.day-tabs span,.muted-copy{color:var(--muted);font-size:13px}.duration-pill{border:1px solid var(--accent-border);background:var(--accent-soft);width:fit-content;max-width:100%;color:var(--text);border-radius:999px;align-items:center;gap:7px;padding:8px 10px;font-size:12px;font-weight:850;display:inline-flex}.duration-pill svg{color:var(--accent);flex:none}.muted-copy{margin:12px 0;line-height:1.55}.source-note{border:1px solid var(--accent-border);color:var(--text);background:var(--accent-soft);border-radius:8px;align-items:flex-start;gap:8px;margin:12px 0;padding:10px 12px;font-size:12px;font-weight:650;line-height:1.45;display:flex}.source-note svg{color:var(--accent);flex:none;margin-top:1px}.health-summary-grid,.health-provider-grid,.health-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.health-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-settings-grid{margin-top:14px}.health-summary-grid>div,.health-provider-card,.health-import-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;min-width:0;padding:13px}.health-summary-grid>div{gap:5px;display:grid}.health-summary-grid span,.health-summary-grid small,.health-provider-card small,.health-provider-card p,.health-import-panel span{color:var(--muted);font-size:12px;line-height:1.45}.health-summary-grid strong{color:var(--text);font-size:22px}.health-provider-card{align-content:start;gap:10px;display:grid}.health-provider-card.compact{min-height:120px}.health-provider-card>div:first-child{align-items:center;gap:10px;display:flex}.health-provider-card>div:first-child>svg{color:var(--blue);flex:none}.health-provider-card strong,.health-provider-card small{display:block}.health-provider-card.status-connected{background:#43d39a14;border-color:#43d39a73}.health-provider-card.status-ready_for_native,.health-provider-card.status-needs_native_app{border-color:var(--accent-border)}.health-provider-card.status-unsupported,.health-provider-card.status-error{background:#fb718514;border-color:#fb718573}.health-metric-pills{flex-wrap:wrap;gap:6px;display:flex}.health-metric-pills span{color:var(--muted);background:#f4f0e80a;border:1px solid #a8b0b838;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.health-import-panel{gap:12px;margin-top:14px;display:grid}.time-optimizer{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:14px;padding-top:14px;display:grid}.optimizer-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.optimizer-summary{border:1px solid var(--accent-border);background:color-mix(in srgb, var(--accent-soft) 84%, var(--surface));border-radius:8px;gap:9px;margin-bottom:14px;padding:12px;display:grid}.optimizer-summary strong,.optimizer-summary span,.optimizer-summary small{display:block}.optimizer-summary span,.optimizer-summary small{color:var(--muted);font-size:12px;font-weight:700;line-height:1.45}.optimizer-summary p{color:var(--text);font-size:13px;line-height:1.5}.day-tabs,.segmented{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.day-tabs button,.segmented button{text-align:center;min-width:94px}.exercise-list{gap:8px;display:grid}.exercise-list button{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 68%, var(--surface));text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:62px;padding:11px 12px;display:flex}.exercise-list button.done{background:#43d39a1f;border-color:#139a6b73}.exercise-list strong,.exercise-list small{display:block}.exercise-list small{color:var(--muted);margin-top:3px;line-height:1.35}.exercise-list .rest-hint{color:var(--green);font-weight:800}.exercise-list em{color:var(--blue);flex:none;font-style:normal;font-weight:800}.ai-workout-generator,.ai-workout-result{gap:12px;display:grid}.ai-workout-generator textarea{min-height:112px}.ai-workout-result{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.ai-workout-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.ai-workout-day{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-content:start;gap:10px;padding:13px;display:grid}.ai-workout-day strong,.ai-workout-day span,.ai-workout-day small{display:block}.ai-workout-day span,.ai-workout-day small{color:var(--muted);font-size:12px;line-height:1.45}.ai-workout-day ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.ai-workout-day li{border-top:1px solid #a8b0b81f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0;display:grid}.ai-workout-day li span{color:var(--text);font-size:13px;font-weight:800}.ai-workout-day li em{color:var(--blue);white-space:nowrap;font-size:12px;font-style:normal;font-weight:900}.exercise-video-studio,.video-guide-result{gap:12px;display:grid}.video-guide-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.video-guide-result{border-top:1px solid var(--border);padding-top:12px}.video-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.video-scene-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px;display:grid}.video-scene-card>span{background:var(--accent-soft);width:28px;height:28px;color:var(--blue);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.video-scene-card div{gap:5px;display:grid}.video-scene-card p,.video-scene-card small,.video-scene-card em{color:var(--muted);font-size:12px;line-height:1.45}.video-scene-card em{color:var(--green);font-style:normal;font-weight:800}.video-guide-notes{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.video-guide-notes>div{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:12px}.video-guide-result textarea{min-height:120px}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}@media (width<=720px){.memory-grid{grid-template-columns:1fr}}.volume-summary{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.volume-summary strong,.volume-summary span{display:block}.volume-summary span{max-width:640px;color:var(--muted);font-size:12px;line-height:1.45}.volume-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.volume-card{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:9px;min-height:114px;padding:12px;display:grid}.volume-card.status-ok{border-color:#43d39a47}.volume-card.status-bajo,.volume-card.status-alto{background:#facc1514;border-color:#facc1559}.volume-card strong,.volume-card span,.volume-card small{display:block}.volume-card span,.volume-card small{color:var(--muted);font-size:12px}.calendar-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.calendar-head strong,.calendar-head span{display:block}.calendar-head span{color:var(--muted);margin-top:3px;font-size:12px}.calendar-nav{gap:8px;display:flex}.calendar-weekdays,.training-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{color:var(--muted);text-align:center;font-size:12px;font-weight:800}.training-calendar button{background:var(--surface);min-height:62px;color:var(--text);border-radius:8px;padding:8px;position:relative}.training-calendar button:disabled{opacity:.25;cursor:default}.training-calendar button.selected{border-color:var(--accent-border);background:var(--accent-soft)}.training-calendar button.today strong{color:var(--blue)}.training-calendar button.has-workout{background:#43d39a1a;border-color:#43d39a66}.training-calendar strong{text-align:left;display:block}.training-calendar span{background:var(--green);color:#07110d;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;font-weight:900;display:grid;position:absolute;bottom:7px;right:8px}.calisthenics-layout{gap:14px;margin-top:14px;display:grid}.calisthenics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.calisthenics-card{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;align-content:start;gap:8px;min-height:210px;padding:12px;display:grid}.calisthenics-card strong,.calisthenics-card small{display:block}.calisthenics-card small,.calisthenics-card p{color:var(--muted);font-size:12px;line-height:1.45}.skill-dashboard,.skill-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.skill-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.skill-dashboard>div,.skill-progress-grid>div,.skill-route-summary{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;gap:5px;padding:13px;display:grid}.skill-dashboard span,.skill-progress-grid span,.skill-route-summary span,.skill-dashboard small,.skill-progress-grid small,.skill-route-summary small{color:var(--muted);font-size:12px}.skill-dashboard strong,.skill-progress-grid strong,.skill-route-summary strong{color:var(--text);font-size:17px}.skill-engine-layout{gap:14px;margin-top:14px;display:grid}.skill-goal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.skill-goal-grid button{text-align:left;border:1px solid var(--border);background:linear-gradient(180deg, var(--surface-2), var(--surface));min-height:112px;color:var(--text);box-shadow:var(--shadow-soft);cursor:pointer;border-radius:8px;align-content:start;gap:7px;padding:13px;transition:border-color .16s,background .16s,transform .16s;display:grid}.skill-goal-grid button:hover{border-color:var(--border-strong);background:var(--surface-2);transform:translateY(-1px)}.skill-goal-grid button.active,.skill-node.current,.skill-node.available{border-color:var(--accent-border);background:var(--accent-soft)}.skill-goal-grid button strong{color:var(--text);font-size:15px;line-height:1.25}.skill-goal-grid span{color:var(--muted);font-size:12px;line-height:1.4}.skill-goal-grid button.active span{color:var(--text)}.skill-engine-grid,.skill-block-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:12px;display:grid}.skill-tree{gap:8px;margin-top:12px;display:grid}.skill-node{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;display:grid}.skill-node span{background:var(--surface-3);width:24px;height:24px;color:var(--muted);border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.skill-node.completed{border-color:#43d39a73}.skill-node.completed span{color:var(--green);background:#43d39a29}.skill-node.locked{opacity:.62}.skill-node small{color:var(--muted);text-transform:uppercase;font-size:11px}.skill-session-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:12px;padding:13px;display:grid}.skill-block-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.skill-block-grid article,.skill-history article{background:var(--surface-2);border-radius:8px;gap:6px;padding:10px;display:grid}.skill-block-grid article>span,.skill-history span,.skill-history small{color:var(--muted);font-size:12px;line-height:1.45}.coach-list,.skill-history{gap:8px;display:grid}.coach-list span{color:var(--muted);background:#43d39a14;border-radius:8px;padding:8px 10px;font-size:12px}.button-strip button.danger,.button-strip button.active.danger{color:#ff9a9a;background:#ff73731f;border-color:#ff737373}.exercise-illustration{border:1px dashed var(--border-strong);min-height:138px;color:var(--accent);background:var(--accent-soft);text-align:center;border-radius:8px;place-items:center;gap:8px;padding:10px;font-size:12px;font-weight:800;display:grid}.exercise-illustration svg{width:100%;max-width:190px;height:auto}.exercise-illustration rect{fill:rgb(var(--accent-rgb) / .1);stroke:var(--accent-border)}.exercise-illustration circle,.exercise-illustration path{fill:none;stroke:var(--green);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.exercise-illustration text{fill:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.chart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.mini-bars{grid-template-columns:repeat(7,1fr);align-items:end;gap:9px;height:220px;display:grid}.mini-bar{text-align:center;height:100%;color:var(--muted);grid-template-rows:1fr auto;gap:8px;font-size:11px;display:grid}.mini-bar span{background:linear-gradient(180deg, var(--blue), #0891b2);border-radius:8px 8px 4px 4px;align-self:end;width:100%}.line-trend{gap:10px;display:grid}.line-trend svg{width:100%;height:220px;overflow:visible}.line-trend polyline{fill:none;stroke:var(--green);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.line-trend circle{fill:var(--surface);stroke:var(--green);stroke-width:2px}.trend-labels{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.trend-labels strong{color:var(--text)}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.result-grid div{background:var(--surface-2);border-radius:8px;min-height:92px;padding:14px}.result-grid span,.result-grid small{color:var(--muted);font-size:12px}.result-grid strong{margin:5px 0 1px;font-size:28px;display:block}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.science-hero{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;display:grid}.science-hero h3{margin:2px 0 8px;font-size:23px}.science-hero span,.science-stats span{color:var(--muted);font-size:13px;line-height:1.55}.science-stats{border:1px solid var(--accent-border);background:var(--accent-soft);text-align:center;border-radius:8px;min-width:118px;padding:14px}.science-stats strong{font-size:30px;line-height:1;display:block}.knowledge-card{padding:14px}.knowledge-card button{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;width:100%;min-height:42px;padding:0;display:flex}.knowledge-card p{color:var(--text);border-top:1px solid var(--border);margin-top:12px;padding-top:12px;line-height:1.65}.science-topic-detail{border-top:1px solid var(--border);gap:14px;margin-top:12px;padding-top:12px;display:grid}.science-topic-detail>div{gap:9px;display:grid}.science-resource-list,.science-prompt-list{gap:8px;display:grid}.science-resource{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:8px;align-items:flex-start;gap:10px;padding:10px;text-decoration:none;display:flex}.science-resource.video{border-color:#b69cff40}.science-resource.guide{border-color:#43d39a38}.science-resource svg{color:var(--blue);flex:none;margin-top:2px}.science-resource.video svg{color:var(--violet)}.science-resource.guide svg{color:var(--green)}.science-resource span,.science-prompt-list button span{min-width:0}.science-prompt-list button span{overflow-wrap:anywhere;flex:auto;width:auto;height:auto;line-height:1.35;display:block}.science-resource strong,.science-resource small{display:block}.science-resource small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45}.science-prompt-list button{border:1px solid var(--accent-border);background:var(--accent-soft);min-height:48px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;align-items:flex-start;gap:8px;padding:9px 10px;display:flex}.science-prompt-list button svg{color:var(--blue);flex:none;margin-top:2px}@media (width<=980px){.app-shell{grid-template-columns:1fr;width:min(100% - 20px,760px)}.sidebar{height:auto;position:static}.top-actions .utility-action{display:none}.auth-card-modern{grid-template-columns:1fr}.auth-showcase{border-right:0;border-bottom:1px solid var(--border);min-height:0}.onboarding-actions{grid-template-columns:1fr}.nav-list{scrollbar-width:none;max-width:100%;display:flex;overflow-x:auto}.nav-list button{flex:0 0 78px;justify-content:center;padding:0 10px}.nav-list::-webkit-scrollbar{display:none}.nav-list span{display:none}.metric-grid,.dashboard-layout,.nutrient-grid,.volume-grid,.two-columns,.chart-grid,.knowledge-grid,.calisthenics-grid,.analysis-grid,.skill-dashboard,.skill-progress-grid,.skill-goal-grid,.skill-engine-grid,.skill-block-grid,.health-summary-grid,.health-provider-grid,.health-settings-grid,.video-scene-grid,.video-guide-notes,.food-detail-panel{grid-template-columns:1fr 1fr}.score-panel{grid-template-columns:1fr}.goal-progress-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.result-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.nutrition-details{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;margin-top:12px}.nutrition-details summary{min-height:44px;color:var(--text);cursor:pointer;touch-action:manipulation;align-items:center;padding:10px 12px;font-weight:700;display:flex}.nutrition-details .quick-grid{padding:0 12px 12px}@media (width<=800px){body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.app-shell{width:min(100% - 20px,760px);padding-top:10px}.photo-source-actions,.result-identity-grid{grid-template-columns:1fr}.result-heading,.result-actions{align-items:stretch}.result-heading{flex-direction:column}.result-actions>button{flex:150px}.content{padding:0 0 32px}.mobile-app-brand{min-height:48px;color:var(--action);align-items:center;gap:8px;padding:0 4px;display:flex}.mobile-app-brand strong{letter-spacing:-.03em;font-family:Hanken Grotesk,Inter,sans-serif;font-size:20px}.sidebar{top:auto;left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));z-index:75;border:1px solid var(--border);background:color-mix(in srgb, var(--surface-elevated) 96%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:18px;gap:0;height:auto;padding:0;position:fixed;overflow:visible;box-shadow:0 16px 38px #00000061}.brand,.desktop-nav-list{display:none}.mobile-tab-bar{min-height:64px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:2px;display:grid}.mobile-tab-bar button{min-width:0;min-height:52px;color:var(--muted);touch-action:manipulation;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 2px;font-family:Inter,system-ui,sans-serif;font-size:10px;font-weight:700;display:flex}.mobile-tab-bar button.active{color:var(--action);background:var(--accent-soft);box-shadow:inset 0 -3px 0 var(--action)}.mobile-tab-bar .mobile-camera-tab{color:var(--text);overflow:visible}.mobile-camera-icon{border:3px solid var(--surface);background:var(--action);width:50px;height:42px;color:var(--on-action);box-shadow:0 8px 22px rgb(var(--action-rgb) / .34);border-radius:14px;place-items:center;margin-top:-18px;display:grid}.camera-fab,.mobile-more-active .topbar,.mobile-more-active .quick-action-bar{display:none}.mobile-more-page{grid-template-rows:auto auto;align-content:start;gap:18px;min-height:calc(100dvh - 160px);padding:6px 0 20px;display:grid}.mobile-more-header{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-elevated), var(--surface));border-radius:18px;grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:18px;display:grid}.mobile-settings-shortcut{border:1px solid var(--accent-border);background:var(--accent-soft);width:46px;height:46px;color:var(--action);cursor:pointer;border-radius:14px;place-items:center;display:grid}.mobile-more-header h2{margin:2px 0 4px;font-family:Hanken Grotesk,Inter,sans-serif;font-size:28px;line-height:1}.mobile-more-header span{color:var(--muted);font-size:13px}.mobile-more-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.mobile-more-grid button{border:1px solid var(--border);background:var(--surface);min-height:142px;color:var(--text);text-align:left;touch-action:manipulation;cursor:pointer;border-radius:16px;align-content:start;gap:8px;padding:16px;display:grid}.mobile-more-grid button>span{background:var(--accent-soft);width:42px;height:42px;color:var(--action);border-radius:12px;place-items:center;display:grid}.mobile-more-grid strong{font-size:14px}.mobile-more-grid small{color:var(--muted);font-size:11px;line-height:1.4}}@media (width<=640px){body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.info-modal-grid{grid-template-columns:1fr}.panel,.card{padding:15px}.metric-card{min-height:104px;padding:14px}.app-shell{width:min(100% - 14px,520px);padding:10px 0 24px}.sidebar{top:auto;left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));z-index:75;gap:0;height:auto;position:fixed}.goals-summary-row,.goal-progress-overview,.goal-progress-list{grid-template-columns:1fr}.goal-progress-overview{text-align:center;place-items:start center;gap:8px;padding-right:0}.brand{display:none}.topbar{gap:12px;margin-bottom:10px;display:grid}.topbar-copy h1{font-size:28px}.topbar-copy span{font-size:13px}.top-actions{justify-content:flex-start}.top-actions .utility-action{display:none}.date-pill{flex:auto;justify-content:center}.quick-action-bar{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 12px;position:static}.metric-grid,.dashboard-layout,.nutrient-grid,.volume-grid,.two-columns,.chart-grid,.knowledge-grid,.quick-grid,.slider-grid,.result-grid,.recipe-toolbar,.calisthenics-grid,.analysis-grid,.condition-grid,.settings-inline-grid,.skill-dashboard,.skill-progress-grid,.skill-goal-grid,.skill-engine-grid,.skill-block-grid,.health-summary-grid,.health-provider-grid,.health-settings-grid,.ai-workout-days,.video-guide-controls,.video-scene-grid,.video-guide-notes,.food-detail-panel,.tutorial-grid,.onboarding-preview{grid-template-columns:1fr}.pwa-install-card,.pwa-status-card{flex-direction:column;align-items:stretch}.pwa-install-card>div:last-child,.pwa-status-card>div:last-child{grid-template-columns:1fr 1fr;display:grid}.food-analysis-hero,.science-hero{grid-template-columns:1fr}.science-stats{text-align:left;min-width:0}.food-detail-panel>img{width:100%;height:160px}.meal-type-grid{grid-template-columns:1fr}.metric-card{min-height:92px}.form-row,.plan-selector,.time-optimizer,.ai-coach-card{grid-template-columns:1fr}.optimizer-actions{grid-template-columns:1fr 1fr;display:grid}.meal-row{flex-direction:column;align-items:flex-start}.meal-actions{justify-content:space-between;width:100%}.training-calendar{gap:5px}.training-calendar button{min-height:46px;padding:6px}.app-toast{left:10px;right:10px;bottom:calc(82px + env(safe-area-inset-bottom));max-width:none}}.workout-intent-grid,.feature-selection-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.workout-intent-grid button,.feature-selection-grid button{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 78%, var(--surface));min-height:78px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.workout-intent-grid button.active,.feature-selection-grid button.active{border-color:var(--accent-border);background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .16)}.workout-intent-grid span,.feature-selection-grid span{gap:4px;display:grid}.workout-intent-grid small,.feature-selection-grid small{color:var(--muted);font-size:12px;line-height:1.35}.compact-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px}.compact-feature-grid button{align-items:center;min-height:46px}.change-workout-intent{margin-top:12px}.modal-action-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.sleep-check-modal{max-width:520px}.routine-analyzer-grid{grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:14px;display:grid}.routine-result-card{margin-top:14px}.routine-exercise-list{gap:8px;margin:12px 0;display:grid}.routine-exercise-list article{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 72%, var(--surface));border-radius:8px;gap:4px;padding:10px 12px;display:grid}.routine-exercise-list span,.routine-exercise-list small{color:var(--muted);font-size:12px}.food-analysis-editor{border:0;min-width:0;margin:18px 0 0;padding:0}.food-analysis-editor legend{margin-bottom:12px;font-weight:650}.food-ingredient-list{gap:12px;display:grid}.food-ingredient-card{border:1px solid var(--border);background:var(--surface-elevated);border-radius:14px;gap:12px;min-width:0;padding:16px;display:grid}.food-ingredient-search{align-items:end;gap:10px;display:flex}.food-ingredient-search .text-field{flex:1;min-width:0}.food-ingredient-card select{max-width:100%}.ingredient-macros,.food-analysis-total{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.ingredient-macros span,.ingredient-source{color:var(--muted)}.ingredient-source{overflow-wrap:anywhere}.ingredient-source a{color:var(--accent);align-items:center;gap:5px;display:inline-flex}.ingredient-clarification{background:var(--accent-soft);color:var(--text);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.food-analysis-total{background:var(--accent-soft);border-radius:12px;margin-top:16px;padding:16px}.food-analysis-total strong{font-size:24px}.food-analysis-total+.ingredient-clarification{margin-top:12px}.meal-nutrition-breakdown{margin-top:10px;font-size:13px}.meal-nutrition-breakdown ul{gap:8px;padding-left:18px;display:grid}.meal-nutrition-breakdown li span{display:block}.meal-nutrition-breakdown a{color:var(--accent)}@media (width<=860px){.workout-intent-grid,.feature-selection-grid,.compact-feature-grid,.routine-analyzer-grid{grid-template-columns:1fr}}:root{--card-padding:24px;--app-gap:24px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}button,input,select{min-height:44px}input,textarea,select{font-size:16px}button{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{z-index:10001;background:var(--surface);color:var(--text);padding:16px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.diary-shell{padding-bottom:96px}.diary-shell .content{width:100%;min-width:0;max-width:1120px;padding:32px}.diary-shell .card,.diary-shell .panel{border:1px solid var(--border);box-shadow:none;border-radius:16px}.diary-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.diary-header h1{margin:8px 0 0;font-size:clamp(28px,4vw,36px)}.eyebrow{color:var(--muted);font-size:14px}.diary-date-row{align-items:flex-end;gap:8px;margin-bottom:16px;display:flex}.date-field{max-width:280px;color:var(--muted);flex:1;gap:8px;font-size:12px;display:grid}.date-field input{width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px}.storage-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;font-size:12px;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.status-dot.error{background:var(--danger)}.context-help{background:var(--surface);border-radius:12px;align-items:center;gap:16px;margin-bottom:24px;padding:16px;display:flex}.fit-dialog{border:1px solid var(--border);background:var(--surface);width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--text);border-radius:16px;padding:24px;overflow:auto}.fit-dialog::backdrop{background:#0009}.dialog-title{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.dialog-title h2{margin:0}.register-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.register-grid button{min-height:72px}.undo-toast{z-index:100;bottom:calc(96px + env(safe-area-inset-bottom));border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:16px;padding:16px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.series-list{gap:16px;display:grid}.set-row{border:1px solid var(--border);border-radius:12px;gap:8px;padding:16px;display:grid}.set-row .quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.set-row .number-box-button{display:none}.set-row .number-box{grid-template-columns:minmax(0,1fr)}.set-row .field{min-width:0}.set-row .field>label{text-transform:none;letter-spacing:0;font-family:inherit;line-height:1.4}.rest-timer{z-index:5;background:var(--surface-2);border-radius:12px;margin-bottom:16px;padding:16px;position:sticky;top:8px}.recipe-list img,.recipe-placeholder{object-fit:cover;background:var(--surface-2);border-radius:8px;flex-shrink:0;width:80px;height:80px}.recipe-detail>img,.recipe-detail>.recipe-placeholder{object-fit:cover;width:100%;height:240px}.recipe-placeholder{place-items:center;display:grid}.database-tools{margin-top:24px}.database-tools summary{cursor:pointer;min-height:44px}.conflict-row{border-bottom:1px solid var(--border);padding:16px 0}.conflict-row small{overflow-wrap:anywhere;display:block}.desktop-add{z-index:20;position:fixed;bottom:32px;right:32px}.progress-table{border-collapse:collapse;width:100%}.progress-table th,.progress-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px}:root[data-theme=light]{--danger:#be123c;--green:#047857;--orange:#b45309;--violet:#6d28d9;--cyan:#0e7490}@media (width<=800px){.diary-shell{padding-top:env(safe-area-inset-top);display:block}.diary-shell .sidebar{display:none}.diary-shell .content{padding:16px;padding-bottom:calc(112px + env(safe-area-inset-bottom));margin:0}.diary-shell .page-grid.two-columns{grid-template-columns:1fr}.diary-shell .mobile-tab-bar{z-index:30;padding:8px 4px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));height:auto;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tab-bar button{min-width:0;min-height:56px;color:var(--muted);place-items:center;gap:4px;padding:4px;font-size:11px;display:grid}.mobile-tab-bar button.active{color:var(--accent)}.mobile-camera-icon{background:var(--action);width:44px;height:36px;color:var(--on-action);border-radius:12px;place-items:center;display:grid}.desktop-add{display:none}.diary-shell .meal-row{align-items:flex-start}.diary-shell .meal-actions{flex-wrap:wrap;gap:4px;max-width:144px}.diary-shell .tracker-layout{grid-template-columns:1fr}.diary-shell .meal-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.diary-shell .recipe-toolbar{grid-template-columns:1fr 1fr}.fit-dialog{padding:16px}}@media (width>=801px){.diary-shell .mobile-tab-bar{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.table-scroll{overflow-x:auto}.reminder-schedule{border-bottom:1px solid var(--border);gap:8px;padding:16px 0;display:grid}:root[data-theme=light] .desktop-nav-list button.active{color:#124c64;background:#e2eef2}.danger-button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#991b1b;border:1px solid #991b1b;border-radius:10px;padding:10px 16px;font-weight:600}.danger-button:disabled{opacity:.55;cursor:not-allowed}.danger-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.diary-shell .nav-list button,.diary-shell .eyebrow,.diary-shell .brand strong,.diary-shell h1,.diary-shell h2,.diary-shell button,.diary-shell input,.diary-shell select,.diary-shell textarea{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.diary-shell .nav-list button{letter-spacing:0;font-size:14px}.journal-page>.metric-grid .card{overflow-wrap:anywhere;min-width:0}.journal-page>.metric-grid .card .primary-button{margin-top:12px}@media (width<=760px){.journal-page>.metric-grid{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}.journal-page>.metric-grid .card{padding:12px}.journal-page>.metric-grid .card>span{font-size:13px}.journal-page>.metric-grid .card h2{margin:12px 0 8px;font-size:20px}.journal-page>.metric-grid .card .primary-button{padding:8px 4px;font-size:12px}}.diary-shell .journal-budget{grid-template-columns:1fr}.diary-shell .date-field,.diary-shell .date-field input{min-width:0}@media (width<=380px){.diary-date-row{grid-template-columns:44px minmax(0,1fr) 44px;display:grid}.diary-date-row>button:last-child{grid-column:1/-1}.set-row .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.set-row .quick-grid>.field:last-child{grid-column:1/-1}}.legal-links{flex-wrap:wrap;align-items:center;gap:16px;margin-block:16px;display:flex}.legal-links a{align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.legal-page{max-width:850px;padding:24px 16px;padding-bottom:calc(24px + env(safe-area-inset-bottom));margin:0 auto}.legal-page h1{font-size:clamp(1.6rem,5vw,2.2rem)}.legal-page p,.legal-page li{line-height:1.7}.ai-report{margin-block:12px}.training-goal-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-block:16px;display:grid}.training-goal-card{border:1px solid var(--border);background:var(--surface-2);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:16px}.training-goal-card h3{margin-top:0}.training-goal-value{font-size:24px;font-weight:700}.training-goal-value span{color:var(--muted);font-size:16px}.training-goal-card progress{width:100%;height:12px;accent-color:var(--accent)}.training-goal-card p{line-height:1.5}.training-goal-card summary{cursor:pointer;min-height:44px}.training-goal-card .button-strip{flex-wrap:wrap}.training-goal-card .button-strip button{white-space:normal}.goal-warning{color:var(--danger)}.goal-form{gap:16px;display:grid}.goal-form .quick-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr))}
