:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#1a1d23;--surface:#22262e;--surface-2:#2c313b;--text:#e8eaed;--muted:#9aa0a8;--accent:#7eb8da;--accent-soft:#7eb8da33;--danger:#e07a7a;--fill-low:#3d5a73;--fill-high:#7eb8da;--warning-bg:#e07a7a1f;--info-bg:#7eb8da1f;--radius:14px;--font:"Segoe UI", system-ui, -apple-system, sans-serif;--shadow:0 8px 28px #00000059;--baby-under-a:#2a4258;--baby-under-mid:#3d6a8a;--baby-under-b:#7eb8e8;--baby-ok-a:#264832;--baby-ok-mid:#3d6b4f;--baby-ok-b:#7dcea0;--baby-over-a:#6b4420;--baby-over-mid:#9a5c28;--baby-over-b:#e8a05c;--baby-muted-a:#353b46;--baby-muted-mid:#4a5563;--baby-muted-b:#8b95a3;--timer-warn-bg:#dab24824;--timer-warn-border:#dab24859;--timer-over-bg:#c8646424;--timer-over-border:#c8646461;--pace-behind:#e8a86c;--pace-behind-bg:#e8a86c24;--pace-ok:#7dcea0;--pace-ok-bg:#7dcea01f;--pace-ahead:#7eb8e8;--pace-ahead-bg:#7eb8e81f}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--bg:#f0f2f5;--surface:#fff;--surface-2:#e8ecf1;--text:#1c1f24;--muted:#5c636d;--accent:#2a6f97;--accent-soft:#2a6f971f;--danger:#c44c4c;--fill-low:#8eb8d4;--fill-high:#2a6f97;--warning-bg:#c44c4c1a;--info-bg:#2a6f9714;--shadow:0 6px 24px #1c1f2414;--baby-under-a:#9ec4df;--baby-under-mid:#6a9ebf;--baby-under-b:#2a6f97;--baby-ok-a:#a8e0b8;--baby-ok-mid:#5cb87a;--baby-ok-b:#2d6a45;--baby-over-a:#f0c090;--baby-over-mid:#d97706;--baby-over-b:#b45309;--baby-muted-a:#d8dde4;--baby-muted-mid:#a8b0bc;--baby-muted-b:#6b7280;--timer-warn-bg:#c8a03029;--timer-warn-border:#b48c2859;--timer-over-bg:#c44c4c1f;--timer-over-border:#b43c3c52;--pace-behind:#c2410c;--pace-behind-bg:#ea580c1a;--pace-ok:#15803d;--pace-ok-bg:#22c55e1a;--pace-ahead:#0369a1;--pace-ahead-bg:#0ea5e91a}}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100%}.app-root{max-width:480px;min-height:100dvh;padding-top:max(12px, env(safe-area-inset-top,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-bottom:max(28px, env(safe-area-inset-bottom,0px));padding-left:max(16px, env(safe-area-inset-left,0px));margin:0 auto}.screen{flex-direction:column;gap:16px;display:flex}.home-top-bar{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.btn-settings{font-size:.9rem}.date-nav{justify-content:space-between;align-items:center;gap:8px;padding:8px 0 4px;display:flex}.date-nav-arrow{background:var(--surface);width:48px;height:48px;color:var(--text);cursor:pointer;box-shadow:var(--shadow);border:none;border-radius:12px;font-size:1.6rem;line-height:1}.date-nav-center{flex:1;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.date-nav-label-row{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.date-nav-label-btn{color:var(--text);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:10px;padding:6px 8px;font-size:1.12rem;font-weight:700;line-height:1.2}.date-nav-label-btn:hover{background:var(--surface-2)}.date-nav-today{font:inherit;border:1px solid var(--accent-soft);background:var(--accent-soft);color:var(--accent);cursor:pointer;white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:600}.date-nav-today:hover{filter:brightness(1.08)}.date-nav-calendar{background:var(--surface);cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow);border:none;border-radius:12px;font-size:1.15rem;line-height:1}.date-nav-picker{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.home-main{flex-direction:column;gap:20px;display:flex}.home-main>.feeding-timer{margin-bottom:-4px}.home-main>.last-feeding-card{margin-bottom:2px}.home-main>.primary-actions{margin-top:2px}.home-main>.feeding-list-section{margin-top:4px}.baby-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow), 0 0 0 1px #ffffff0a;padding:18px 16px}@media (prefers-color-scheme:light){.baby-card{box-shadow:var(--shadow), 0 0 0 1px #0000000a}}.baby-card--pop{animation:.45s baby-pop}@keyframes baby-pop{0%{transform:scale(1)}35%{transform:scale(1.02)}to{transform:scale(1)}}.baby-exceeded-badge{text-align:center;color:var(--baby-over-b);margin:0 0 10px;font-size:1rem;font-weight:600}.baby-goal-line{stroke:#ffffffd1;stroke-width:2px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.baby-goal-label-svg{fill:#ffffffb8;letter-spacing:.02em;font-size:6.5px;font-weight:600}@media (prefers-color-scheme:light){.baby-goal-line{stroke:#1e232aa6}.baby-goal-label-svg{fill:#1e232a8c}}.baby-fill-shimmer{pointer-events:none;animation:5.5s ease-in-out infinite baby-shimmer}@keyframes baby-shimmer{0%{opacity:.85;transform:translate(0)}50%{opacity:1;transform:translate(85px)}to{opacity:.85;transform:translate(0)}}.pace-badge{text-align:center;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:4px;margin:0 0 14px;padding:12px 14px;display:flex}.pace-badge-main{letter-spacing:-.01em;align-items:center;gap:6px;font-size:1.05rem;font-weight:700;display:inline-flex}.pace-badge-ico{font-size:1.1rem;line-height:1}.pace-badge-hint{color:var(--muted);font-size:.78rem;font-weight:500}.pace-badge--behind{background:var(--pace-behind-bg);color:var(--pace-behind);border-color:#e8a86c47}.pace-badge--on_track{background:var(--pace-ok-bg);color:var(--pace-ok);border-color:#7dcea047}.pace-badge--ahead{background:var(--pace-ahead-bg);color:var(--pace-ahead);border-color:#7eb8e847}.baby-visual{flex-direction:column;align-items:center;margin-bottom:12px;display:flex}.baby-svg{max-width:100%;height:auto}.baby-outline{opacity:.35}.baby-stroke{stroke:#ffffff38;stroke-width:1.35px;opacity:.85}@media (prefers-color-scheme:light){.baby-stroke{stroke:#1e232a33}}.baby-fill-rect{transition:y .45s,height .45s}.baby-stats{gap:10px;margin:0;display:grid}.baby-stat-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.baby-stat-row dt{color:var(--muted);margin:0;font-size:.92rem}.baby-stat-row dd{margin:0;font-size:1.05rem;font-weight:600}.baby-stat-status dd[data-status=under]{color:var(--accent)}.baby-stat-status dd[data-status=normal]{color:#7bc4a4}.baby-stat-status dd[data-status=over]{color:var(--danger)}.baby-stat-status dd[data-status=no_weight]{color:var(--muted)}.day-stats-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.day-stats-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.day-stats-span2{grid-column:1/-1}.day-stats-label{color:var(--muted);margin-bottom:4px;font-size:.85rem;display:block}.day-stats-value{font-size:1rem;font-weight:600}.card-heading{margin:0 0 8px;font-size:1rem;font-weight:600}.last-feeding-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow), 0 0 0 1px #ffffff0d;padding:16px}@media (prefers-color-scheme:light){.last-feeding-card{box-shadow:var(--shadow), 0 0 0 1px #0000000d}}.last-feeding-card--strong .card-heading{margin-bottom:10px}.last-feeding-primary{letter-spacing:-.02em;margin:0 0 8px;font-size:1.28rem;font-weight:800;line-height:1.25}.last-feeding-secondary{color:var(--muted);margin:0;font-size:.85rem;font-weight:500}.last-feeding-muted{line-height:1.4}.muted{color:var(--muted);font-size:.95rem}.alerts-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.alert{border-radius:12px;padding:12px 14px;font-size:.95rem;line-height:1.35}.alert-warning{background:var(--warning-bg);border:1px solid #e07a7a40}.alert-info{background:var(--info-bg);border:1px solid #7eb8da40}.primary-actions{flex-direction:column;gap:12px;display:flex}.feeding-timer{border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface);border:1px solid #ffffff0f;padding:12px 16px 14px}@media (prefers-color-scheme:light){.feeding-timer{border-color:#0000000f}}.feeding-timer--empty{padding:12px 16px}.feeding-timer-empty-text{color:var(--muted);text-align:center;margin:0;font-size:.95rem;line-height:1.35}.feeding-timer--normal{border-color:#ffffff0f}.feeding-timer--warning{background:var(--timer-warn-bg);border:1px solid var(--timer-warn-border)}.feeding-timer--overdue{background:var(--timer-over-bg);border:1px solid var(--timer-over-border);animation:2.2s ease-in-out infinite overdue-pulse}@keyframes overdue-pulse{0%,to{opacity:1}50%{opacity:.86}}.feeding-timer-stack{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.feeding-timer-mainline{justify-content:center;align-items:baseline;gap:8px;display:flex}.feeding-timer-ico{opacity:.9;font-size:1.5rem;line-height:1}.feeding-timer-value{letter-spacing:-.03em;font-size:1.75rem;font-weight:800;line-height:1.1}.feeding-timer--warning .feeding-timer-value{color:#e8c36b}.feeding-timer--overdue .feeding-timer-value{color:#f0a0a0}.feeding-timer-caption{color:var(--muted);margin:0;font-size:.8rem;font-weight:500}.btn-quick-repeat{width:100%;font:inherit;border:1px solid var(--accent-soft);min-height:48px;color:var(--accent);cursor:pointer;background:0 0;border-radius:12px;padding:11px 14px;font-size:.92rem;font-weight:600}.btn-quick-repeat:hover{background:var(--accent-soft)}.btn-suggest-subtle{width:100%;font:inherit;color:var(--muted);cursor:pointer;background:#ffffff05;border:1px dashed #9aa0a873;border-radius:10px;padding:10px 12px;font-size:.88rem}@media (prefers-color-scheme:light){.btn-suggest-subtle{background:#00000005}}.feeding-list-empty{flex-direction:column;align-items:stretch;gap:14px;padding:8px 4px 12px;display:flex}.feeding-list-empty-title{color:var(--muted);text-align:center;margin:0;font-size:.98rem;line-height:1.4}.btn-text-action{font:inherit;background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:12px;padding:14px 16px;font-size:1rem;font-weight:600}.feeding-list-avg{color:var(--muted);margin:0 0 12px;font-size:.9rem}.feeding-list-avg strong{color:var(--text);font-weight:700}.btn{font:inherit;cursor:pointer;border:none;border-radius:12px;min-height:48px;padding:12px 16px}.btn-large{min-height:54px;font-size:1.05rem;font-weight:600}.btn-primary{background:var(--accent);color:var(--bg);font-weight:700;box-shadow:0 2px 14px #00000038}.btn-primary:active{filter:brightness(.94)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid #ffffff14;font-weight:600}@media (prefers-color-scheme:light){.btn-secondary{border-color:#00000014}}.btn-ghost{color:var(--accent);background:0 0;min-height:40px;padding:8px 10px}.btn-ghost.danger{color:var(--danger)}.btn-danger{background:var(--danger);color:#fff}.btn-chip{background:var(--surface-2);min-height:44px;color:var(--text);padding:10px 14px;font-weight:600}.btn-press{transition:transform .12s,filter .12s}.btn-press:active{filter:brightness(.94);transform:scale(.98)}.btn-weigh-missing{color:#fff!important;background:#b35252!important;border:1px solid #ffffff24!important;box-shadow:0 1px 8px #0003!important}@media (prefers-color-scheme:light){.btn-weigh-missing{background:var(--danger)!important}.btn-primary{box-shadow:0 2px 12px #2a6f9738}}.btn-weigh-stale{background:#d4af371f!important;border-color:#d4af3740!important;box-shadow:inset 0 0 0 1.5px #d4af37a6!important}.quick-volumes{flex-wrap:wrap;gap:8px;display:flex}.quick-volumes--compact{gap:6px}.quick-volumes--compact .btn-chip-volume{border-radius:10px;min-height:40px;padding:8px 12px;font-size:.92rem}.btn-mini{min-height:40px;color:var(--accent);background:0 0;border:1px solid #9aa0a859;border-radius:10px;padding:8px 12px;font-size:.85rem;font-weight:600}.btn-mini-danger{color:var(--danger);border-color:#e07a7a59}.feeding-list-section{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.feeding-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.feeding-item{background:var(--surface-2);border-radius:12px;flex-direction:column;gap:10px;padding:14px 12px;display:flex}.feeding-item-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.feeding-item-time{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}.feeding-item-vol{color:var(--muted);font-size:1rem;font-weight:600}.feeding-item-actions{border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:8px;padding-top:2px;display:flex}@media (prefers-color-scheme:light){.feeding-item-actions{border-top-color:#0000000f}}.form-header{align-items:center;gap:8px;padding-top:4px;display:flex}.form-title{text-align:center;flex:1;margin:0;font-size:1.2rem}.form-body{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--muted);font-size:.9rem}.field-input{background:var(--surface);width:100%;color:var(--text);font:inherit;box-shadow:var(--shadow);border:1px solid #0000;border-radius:12px;padding:14px;font-size:1rem}.field-input-large{font-size:1.35rem;font-weight:600}.field-error{color:var(--danger);font-size:.88rem}.time-input-row{grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;display:grid}.time-input-row .field{min-width:0}.time-now-btn{align-self:end;height:48px}.form-actions{flex-direction:column;gap:10px;margin-top:8px;display:flex}.soft-warn{background:var(--info-bg);color:var(--muted);border-radius:12px;margin:0;padding:12px;font-size:.92rem}.settings-formula{margin:0;line-height:1.45}.weighing-history-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.weighing-history-item{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.weighing-history-main{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.weighing-history-weight{font-size:1.1rem;font-weight:700}.weighing-history-actions{flex-wrap:wrap;gap:8px;display:flex}.dialog-backdrop{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog-panel{background:var(--surface);color:var(--text);border-radius:var(--radius);width:100%;max-width:360px;box-shadow:var(--shadow);padding:20px}.dialog-title{margin:0 0 8px;font-size:1.15rem}.dialog-message{color:var(--muted);margin:0 0 16px;line-height:1.4}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.empty-state{text-align:center;padding:16px}@media (width<=400px){.time-input-row{grid-template-columns:1fr}.time-now-btn{width:100%}}
