:root{--primary:#6366f1;--primary-hover:#4f46e5;--bg-dark:#0f172a;--bg-panel:#111c31;--bg-card:#1e293b;--text-light:#f8fafc;--text-muted:#94a3b8;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--border:#334155;--radius-md:8px;--radius-lg:8px;--shadow-glow:0 0 20px #6366f133;--field-bg:#0f172a80;--soft-bg:#0f172a47;--subtle-bg:#0f172a38;--debug-bg:#0000004d}:root[data-theme=forest]{--primary:#2d6a4f;--primary-hover:#40916c;--bg-dark:#081c15;--bg-panel:#0f2a20;--bg-card:#12372a;--text-light:#f0fff4;--text-muted:#95b8a7;--success:#74c69d;--warning:#ffd166;--danger:#ef476f;--border:#1b4332;--shadow-glow:0 0 20px #40916c38;--field-bg:#0317106b;--soft-bg:#03171047;--subtle-bg:#03171038;--debug-bg:#00000047}:root[data-theme=graphite]{--primary:#f97316;--primary-hover:#fb923c;--bg-dark:#111827;--bg-panel:#18181b;--bg-card:#27272a;--text-light:#fafafa;--text-muted:#a1a1aa;--success:#22c55e;--warning:#facc15;--danger:#f43f5e;--border:#3f3f46;--shadow-glow:0 0 20px #f973162e;--field-bg:#1118276b;--soft-bg:#11182747;--subtle-bg:#11182738;--debug-bg:#00000047}:root[data-theme=berry]{--primary:#d946ef;--primary-hover:#c026d3;--bg-dark:#1f1028;--bg-panel:#2a1436;--bg-card:#3b1d4f;--text-light:#fdf4ff;--text-muted:#d8b4fe;--success:#34d399;--warning:#fbbf24;--danger:#fb7185;--border:#5b2a72;--shadow-glow:0 0 20px #d946ef33;--field-bg:#1f102870;--soft-bg:#1f102847;--subtle-bg:#1f102838;--debug-bg:#00000047}:root[data-theme=daylight]{--primary:#2563eb;--primary-hover:#1d4ed8;--bg-dark:#e2e8f0;--bg-panel:#f8fafc;--bg-card:#fff;--text-light:#0f172a;--text-muted:#64748b;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--border:#cbd5e1;--shadow-glow:0 0 20px #2563eb29;--field-bg:#f1f5f9;--soft-bg:#f8fafc;--subtle-bg:#f1f5f9;--debug-bg:#eef2f7}:root[data-theme=mint]{--primary:#0f766e;--primary-hover:#0d9488;--bg-dark:#d1fae5;--bg-panel:#ecfdf5;--bg-card:#fff;--text-light:#10251f;--text-muted:#4b635c;--success:#22c55e;--warning:#ca8a04;--danger:#e11d48;--border:#a7f3d0;--shadow-glow:0 0 20px #0f766e29;--field-bg:#f0fdfa;--soft-bg:#f7fffb;--subtle-bg:#dcfce7;--debug-bg:#e6fbf3}:root[data-theme=paper]{--primary:#7c3aed;--primary-hover:#6d28d9;--bg-dark:#efe6da;--bg-panel:#f7f2ea;--bg-card:#fffaf2;--text-light:#211a16;--text-muted:#74675c;--success:#0f766e;--warning:#b45309;--danger:#be123c;--border:#ddd0bf;--shadow-glow:0 0 20px #7c3aed24;--field-bg:#fff7ed;--soft-bg:#fffaf2;--subtle-bg:#f3eadc;--debug-bg:#f4eadc}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top left, color-mix(in srgb, var(--primary), transparent 84%), transparent 34rem), linear-gradient(180deg, var(--bg-panel) 0%, var(--bg-dark) 44rem);color:var(--text-light);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}.app-container{flex-direction:column;max-width:760px;min-height:100vh;margin:0 auto;padding-bottom:88px;display:flex}.page-shell{flex:1;padding:1rem}h1{letter-spacing:0;margin-bottom:.35rem;font-size:1.55rem;font-weight:750}h2{margin-bottom:.75rem;font-size:1.25rem;font-weight:600}p{color:var(--text-muted)}.card{background:color-mix(in srgb, var(--bg-card), transparent 4%);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:1rem;padding:1.15rem;box-shadow:0 16px 40px -28px #000000a6}.btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-glow)}.btn:disabled{opacity:.52;cursor:not-allowed;box-shadow:none}.btn-secondary{border:1px solid var(--border);color:var(--text-light);background:0 0}.btn-secondary:hover{box-shadow:none;background:#ffffff0d}.icon-btn{border:1px solid var(--border);border-radius:var(--radius-md);width:2.25rem;height:2.25rem;color:var(--text-light);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;transition:border-color .2s,background .2s,color .2s;display:inline-flex}.icon-btn:hover,.icon-btn.active{border-color:var(--primary);color:#fff;background:color-mix(in srgb, var(--primary), transparent 78%)}.icon-btn.danger:hover{border-color:var(--danger);background:#ef444426}.input{background:var(--field-bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-light);margin-bottom:1rem;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s}select.input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary), transparent 78%);outline:none}.compact-input{margin:.25rem 0 0;padding:.55rem .65rem}.editable-row,.meal-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.meal-row{background:var(--bg-panel);border-bottom:0;margin-bottom:.5rem;padding:1rem}.row-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.edit-grid{grid-template-columns:minmax(120px,2fr) minmax(70px,1fr) minmax(80px,1fr) minmax(80px,1fr) auto;align-items:end;gap:.75rem;width:100%;display:grid}.calculator-grid{grid-template-columns:repeat(4,minmax(80px,1fr))}.edit-grid label{color:var(--text-muted);font-size:.75rem}.wide-field{grid-column:span 2}.debug-pre{background:var(--debug-bg);border-radius:var(--radius-md);color:var(--text-muted);white-space:pre-wrap;margin-top:1rem;padding:1rem;font-size:.75rem;overflow-x:auto}.day-picker,.inline-form{align-items:center;gap:.75rem;display:flex}.day-picker{padding:.85rem}.day-picker .input,.inline-form .input{margin-bottom:0}.inline-form .btn{white-space:nowrap;width:auto}.calorie-card{gap:1rem;display:grid}.calorie-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.eyebrow{color:var(--text-muted);text-transform:uppercase;font-size:.78rem;font-weight:700;display:block}.calorie-main{align-items:baseline;gap:.45rem;display:flex}.calorie-main strong{color:var(--primary);font-size:2.35rem;line-height:1}.calorie-main span,.calorie-badge{color:var(--text-muted)}.calorie-badge{border:1px solid var(--border);border-radius:var(--radius-md);white-space:nowrap;padding:.45rem .65rem;font-size:.85rem;font-weight:700}.calorie-badge.over{border-color:var(--danger);color:var(--danger)}.progress-track{background:var(--field-bg);border:1px solid var(--border);border-radius:999px;height:12px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--success));height:100%;transition:width .25s}.progress-fill.over{background:linear-gradient(90deg, var(--warning), var(--danger))}.macro-summary{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.macro-summary div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--soft-bg);padding:.7rem}.macro-summary span{font-size:.78rem;font-weight:700;display:block}.macro-summary strong{margin-top:.15rem;font-size:1.1rem;display:block}.weight-prompt{border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-muted);background:var(--subtle-bg);justify-content:space-between;align-items:center;gap:.75rem;margin:-.35rem 0 1rem;padding:.65rem .75rem;display:flex}.weight-prompt-form{align-items:center;gap:.5rem;display:flex}.weight-prompt .input{width:6.5rem;margin:0}.weight-prompt .btn{width:auto;padding:.55rem .8rem}.add-date-row{color:var(--text-muted);grid-template-columns:auto auto minmax(150px,1fr);align-items:center;gap:.65rem;margin-bottom:.85rem;display:grid}.add-date-row .input{margin:0}.preview-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.preview-list{gap:.75rem;display:grid}.preview-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--soft-bg);justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem;display:flex}.preview-main{min-width:0}.preview-title{font-weight:750}.preview-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.25rem;font-size:.78rem;display:flex}.meal-pill{border:1px solid var(--primary);background:color-mix(in srgb, var(--primary), transparent 84%);color:var(--text-light);cursor:pointer;border-radius:999px;padding:.18rem .55rem;font-weight:700}.recipe-form-grid{grid-template-columns:2fr .7fr 1fr 1fr;gap:.75rem;display:grid}.recipe-form-grid label{color:var(--text-muted);font-size:.78rem}.ingredient-list{gap:.65rem;margin-top:1rem;display:grid}.ingredient-row{grid-template-columns:minmax(130px,1.1fr) minmax(120px,1.1fr) 80px repeat(4,minmax(64px,.7fr)) auto;align-items:center;gap:.5rem;display:grid}.ingredient-row .input{margin:0}.library-actions{grid-template-columns:.8fr 1fr;gap:.75rem;margin-top:1rem;display:grid}.library-list{gap:.65rem;display:grid}.library-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--soft-bg);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.library-item p{font-size:.8rem}.library-list.compact .library-item{padding:.55rem .65rem}.food-edit-grid{grid-template-columns:minmax(150px,1.4fr) minmax(110px,1fr) minmax(110px,1fr) repeat(4,minmax(78px,.75fr)) minmax(78px,.75fr) minmax(78px,.75fr) auto;align-items:center;gap:.5rem;display:grid}.food-edit-grid .input{margin:0}.food-library-item{align-items:flex-start}.food-edit-panel{gap:.75rem;width:100%;display:grid}.plan-list{gap:.5rem;margin-top:1rem;display:grid}.activity-help{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--subtle-bg);min-height:100%;color:var(--text-muted);align-items:flex-start;gap:.5rem;padding:.58rem .65rem;font-size:.78rem;line-height:1.35;display:flex}.activity-help svg{color:var(--primary);flex:none;margin-top:.1rem}.metabolism-note{border:1px solid color-mix(in srgb, var(--primary), var(--border) 50%);border-radius:var(--radius-md);background:color-mix(in srgb, var(--primary), transparent 90%);align-items:flex-start;gap:.65rem;margin-top:.9rem;padding:.85rem;display:flex}.metabolism-note svg{color:var(--primary);flex:none;margin-top:.18rem}.metabolism-note strong{margin-bottom:.25rem;display:block}.metabolism-note p{font-size:.86rem}.calculator-result{gap:.85rem;display:grid}.calculator-summary{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.calculator-summary div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--soft-bg);padding:.75rem}.calculator-summary span,.plan-button small{color:var(--text-muted);font-size:.76rem}.calculator-summary strong{margin-top:.2rem;display:block}.segmented{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:-.25rem 0 1rem;display:grid}.segmented button{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--field-bg);color:var(--text-light);cursor:pointer;padding:.65rem}.segmented button:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary), transparent 84%)}.plan-button{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--field-bg);color:var(--text-light);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem;display:flex}.plan-button.active,.plan-button:hover{border-color:var(--primary);background:color-mix(in srgb, var(--primary), transparent 82%)}.plan-name,.plan-calories{gap:.15rem;display:grid}.plan-calories{white-space:nowrap;justify-items:end}.plan-calories strong{color:var(--primary);font-size:1.35rem;line-height:1}.theme-grid{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.theme-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--subtle-bg);color:var(--text-light);cursor:pointer;text-align:left;grid-template-columns:42px 1fr;align-items:center;gap:.55rem;padding:.55rem;display:grid}.theme-option:hover,.theme-option.active{border-color:var(--primary);background:color-mix(in srgb, var(--primary), transparent 84%)}.theme-preview{background:var(--theme-bg);border:1px solid #0000001f;border-radius:7px;height:38px;padding:6px}.theme-preview-card{background:var(--theme-card);border-radius:5px;gap:5px;height:100%;padding:5px;display:grid;box-shadow:0 4px 10px #0000001f}.theme-preview-line{background:var(--theme-primary);border-radius:999px;width:72%;height:4px}.theme-preview-controls{align-items:center;gap:4px;display:flex}.role-dot{border-radius:999px;width:7px;height:7px}.role-dot.primary{background:var(--theme-primary)}.role-dot.success{background:var(--theme-success)}.role-pill{background:color-mix(in srgb, var(--theme-primary), transparent 58%);border-radius:999px;width:16px;height:7px}.metric-grid{grid-template-columns:repeat(5,1fr);gap:.75rem;display:grid}.insight-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.insight-grid div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--soft-bg);padding:.75rem}.insight-grid span{color:var(--text-muted);font-size:.75rem}.insight-grid strong{margin-top:.2rem;display:block}.insight-grid p{margin-top:.2rem;font-size:.75rem}.metric-grid div{flex-direction:column;gap:.2rem;display:flex}.metric-grid span{color:var(--text-muted);font-size:.75rem}.bar-chart{align-items:end;gap:.45rem;height:220px;padding-top:1rem;display:flex}.bar-column{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:.4rem;min-width:18px;height:100%;display:flex;position:relative}.bar{background:var(--primary);border-radius:4px 4px 0 0;width:100%;min-height:2px}.target-line{background:var(--warning);opacity:.8;height:2px;position:absolute;left:0;right:0}.bar-column span{color:var(--text-muted);writing-mode:vertical-rl;font-size:.65rem}.macro-list,.weight-list{gap:.7rem;display:grid}.weight-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem 0;display:flex}.weight-row:last-child{border-bottom:0}.weight-value,.weight-edit{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.weight-edit .input{width:6.75rem;margin:0}.macro-row{grid-template-columns:48px 1fr auto;align-items:center;gap:.75rem;font-size:.85rem;display:grid}.scanner-form{grid-template-columns:repeat(5,1fr);align-items:end;gap:.75rem;display:grid}.scanner-form label{color:var(--text-muted);font-size:.78rem}.manual-product-form{grid-template-columns:repeat(3,1fr)}.macro-stack{background:var(--field-bg);border-radius:4px;height:12px;display:flex;overflow:hidden}.loading-card{color:var(--text-muted);justify-content:center;align-items:center;min-height:6rem;display:flex}.auth-container{justify-content:center;padding-bottom:0}.login-card{max-width:420px;margin:12vh auto 0}.login-icon{border-radius:var(--radius-md);color:#fff;background:var(--primary);justify-content:center;align-items:center;width:3rem;height:3rem;margin-bottom:1rem;display:inline-flex}.login-form{gap:.85rem;margin-top:1.25rem;display:grid}.login-form label{color:var(--text-muted);font-size:.84rem}.session-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.install-help{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--subtle-bg);padding:.85rem}.install-help strong{margin-bottom:.25rem;display:block}.warning-help{border-color:color-mix(in srgb, var(--warning) 55%, var(--border))}.warning-help strong{color:var(--warning)}.compact-button{white-space:nowrap;width:auto;padding:.55rem .85rem}.subtle-card{background:var(--subtle-bg);border-style:dashed}.manual-scan-panel{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--subtle-bg);padding:.85rem}@media (width<=520px){.editable-row,.meal-row{align-items:flex-start}.edit-grid,.calculator-grid,.metric-grid,.theme-grid,.insight-grid{grid-template-columns:1fr 1fr}.calculator-summary{grid-template-columns:1fr}.inline-form{flex-direction:column;align-items:stretch}.inline-form .btn{width:100%}.calorie-card-header,.preview-row,.preview-header,.weight-prompt,.weight-row{flex-direction:column;align-items:stretch}.calorie-badge{width:fit-content}.macro-summary{grid-template-columns:1fr}.weight-prompt-form,.weight-edit,.weight-value,.weight-prompt .input,.weight-edit .input{width:100%}.add-date-row,.recipe-form-grid,.ingredient-row,.food-edit-grid,.library-actions,.scanner-form{grid-template-columns:1fr}.activity-help{min-height:auto}.library-item{flex-direction:column;align-items:flex-start}.wide-field{grid-column:span 2}}.bottom-nav{background:color-mix(in srgb, var(--bg-card), transparent 18%);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:.65rem .4rem;padding-bottom:env(safe-area-inset-bottom,1rem);z-index:100;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:.25rem;min-width:0;padding:.15rem .1rem;font-size:.75rem;text-decoration:none;transition:color .2s;display:flex}.nav-item.active{color:var(--primary)}.nav-item svg{width:22px;height:22px}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.p-4{padding:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:.875rem}.text-muted{color:var(--text-muted)}.text-danger{color:var(--danger)}.text-primary{color:var(--primary)}.w-full{width:100%}.inline-block{display:inline-block}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.3s ease-out forwards slideUp}@media (width>=860px){.bottom-nav{border:1px solid var(--border);border-radius:12px;width:min(720px,100vw - 2rem);bottom:1rem;left:50%;right:auto;transform:translate(-50%)}}@media (width<=420px){.page-shell{padding:.75rem}.card{padding:1rem}.nav-item span{font-size:.68rem}.nav-item svg{width:20px;height:20px}}
