:root{--bg:#f5f6f8;--card:#fff;--text:#16181d;--muted:#6b7280;--accent:#2e8b57;--on-accent:#fff;--border:#e3e5ea;--track:#e6e8ec;--danger:#c0392b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111317;--card:#1b1e24;--text:#eceef2;--muted:#98a0ad;--accent:#3fae73;--border:#2a2e36;--track:#2a2e36;--danger:#ef6a5b}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}#root{max-width:520px;margin:0 auto}.app{padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.screen{flex-direction:column;gap:12px;display:flex}.banner{background:var(--danger);color:#fff;border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px}.topbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.date{text-align:center;flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.date strong{text-transform:capitalize}.icon-spacer{width:44px}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}h2{margin:0;font-size:17px}p{margin:0}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--danger);font-size:14px}.kcal-main{align-items:baseline;gap:4px;display:flex}.big{font-size:34px;font-weight:700}.bar{background:var(--track);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:999px;height:100%}.bar-fill.over{background:var(--danger)}.remaining{font-size:14px}.remaining.over{color:var(--danger)}.macros{flex-direction:column;gap:8px;display:flex}.macro{flex-direction:column;gap:4px;font-size:14px;display:flex}.macro-head{justify-content:space-between;display:flex}.meal-head{justify-content:space-between;align-items:baseline;display:flex}.entries{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.entry{align-items:center;gap:8px;display:flex}.entry-main{flex:1;min-width:0}.entry-name{overflow-wrap:anywhere;font-weight:600}.entry-kcal{font-weight:600}button{font:inherit;color:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.icon-btn{border:1px solid var(--border);background:var(--card);border-radius:12px;width:44px;height:44px;font-size:20px}.icon-btn.danger{color:var(--danger)}.btn{border:1px solid var(--border);background:var(--card);border-radius:12px;min-height:44px;padding:10px 16px;font-weight:600}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.secondary{background:0 0}.link{color:var(--accent);background:0 0;border:none;padding:0;font-size:14px;text-decoration:underline}.field{flex-direction:column;gap:4px;font-size:14px;display:flex}.field input{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--text);border-radius:10px;padding:8px 12px;font-size:16px}.food-item{border:1px solid var(--border);background:var(--card);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 12px;display:flex}.food-item.selected{border-color:var(--accent)}.row{flex-wrap:wrap;gap:8px;display:flex}.footer-actions{flex-direction:column;gap:8px;display:flex}.entry.editing{flex-direction:column;align-items:stretch}.hist{justify-content:space-between;align-items:center;gap:8px;display:flex}.field select{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--text);border-radius:10px;padding:8px 12px;font-size:16px}.tabbar{padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--card);border:1px solid var(--border);border-radius:14px;gap:4px;margin-top:12px;display:flex;position:sticky;bottom:0}.tab{min-height:44px;color:var(--muted);background:0 0;border:none;border-radius:10px;flex:1;font-size:14px;font-weight:600}.tab.active{background:var(--accent);color:var(--on-accent)}.stat{justify-content:space-between;gap:8px;font-size:14px;display:flex}.stat span:last-child{text-align:right}.portion{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.chart{align-items:flex-end;gap:3px;height:120px;display:flex}.chart-col{flex:1;align-items:flex-end;height:100%;display:flex}.chart-bar{background:var(--accent);border-radius:3px 3px 0 0;width:100%;min-height:2px}.chart-axis{justify-content:space-between;display:flex}
