:root{--ground:#fff;--chrome:#fbeee4;--surface:#fdf6f0;--raised:#fff;--row:#fffaf6;--border:#f1dccd;--rule:#f6e8dd;--control:#dcbfae;--text:#2a1410;--muted:#6b4a40;--faint:#7a5a50;--accent:#b00f33;--accent-strong:#b00f33;--accent-soft:#fbe3e7;--highlight:#fdb712;--highlight-ink:#2a1410;--tint:#fde3d2;--tint-ink:#8a3a12;--sage:#5f675a;--sage-tint:#eceadb;--bar:#e06c30;--positive:#4b5546;--negative:#b42318;--warning:#92400e;--pill-positive-bg:#e6e9de;--pill-positive-ink:#3a4235;--pill-negative-bg:#fdecea;--pill-negative-ink:#7a1d14;--pill-warning-bg:#fffbeb;--pill-warning-ink:#92400e;--pill-neutral-bg:#eeeeef;--pill-neutral-ink:#3d3d3a;--radius-card:12px;--radius-inner:8px;--radius-sheet:12px;--radius-control:10px;--row-height:63px;--sidebar-width:224px;--page-max:1360px;--gap:16px;--pad:20px;--control-height:36px;--fs-title:28px;--fs-section:14px;--fs-kpi:32px;--fs-body:14px;--fs-small:12px;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, system-ui, sans-serif;--ease-spring:cubic-bezier(.2, .9, .25, 1);--material:#fbeee4b8;--material-blur:blur(20px) saturate(180%);--press:scale(.97);--spring:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:after,:before{box-sizing:border-box}body,html{margin:0}body{background:var(--chrome);color:var(--text);font:400 var(--fs-body)/20px var(--sans);letter-spacing:-.006em;font-variant-numeric:tabular-nums;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.num,.table td.r{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.btn{height:var(--control-height);border-radius:var(--radius-control);cursor:pointer;white-space:nowrap;transition:transform .26s var(--ease-spring),background-color .12s ease,border-color .12s ease;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.btn:active:not([disabled]){transform:var(--press);transition-duration:0s}.btn[disabled]{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--text);color:#fff}.btn--primary:hover{background:#2a2a2a}.btn--secondary{background:var(--raised);border-color:var(--control)}.btn--secondary:hover{border-color:var(--muted)}.btn--ghost{color:var(--accent);background:0 0;padding:0 8px}.btn--ghost:hover{background:var(--accent-soft)}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:var(--fs-small);color:var(--muted)}.input{height:var(--control-height);border:1px solid var(--control);background:var(--raised);border-radius:10px;min-width:0;padding:0 14px}.input:hover{border-color:var(--muted)}.input:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.seg{background:var(--rule);border-radius:var(--radius-control);gap:2px;padding:2px;display:inline-flex}.seg button{height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 12px;transition:background-color .12s,color .12s}.seg button:hover{color:var(--text)}.seg button[aria-checked=true],.seg button[aria-pressed=true]{background:var(--raised);color:var(--text);outline:1px solid var(--border);outline-offset:-1px}.chip{text-align:left;border:1px solid var(--control);background:var(--raised);cursor:pointer;max-width:100%;min-height:28px;transition:background-color .12s,border-color .12s;transition:transform .26s var(--ease-spring),background-color .12s ease,border-color .12s ease;border-radius:6px;align-items:center;padding:3px 10px;font-size:13px;line-height:18px;display:inline-flex}.chip:hover{border-color:var(--muted)}.chip:active{transform:var(--press);transition-duration:0s}.chip[aria-pressed=true]{background:var(--highlight);border-color:var(--highlight);color:var(--highlight-ink);font-weight:500}.pill{height:22px;font-size:var(--fs-small);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:0 9px;font-weight:500;display:inline-flex}.pill--neutral{background:var(--pill-neutral-bg);color:var(--pill-neutral-ink)}.pill--positive{background:var(--pill-positive-bg);color:var(--pill-positive-ink)}.pill--warning{background:var(--pill-warning-bg);color:var(--pill-warning-ink)}.panel{background:var(--surface);border-radius:var(--radius-card);padding:var(--pad);min-width:0}.panel__head{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.panel__head h2{letter-spacing:-.012em;margin:0;font-size:15px;font-weight:600}.panel__head .panel__link{color:var(--accent);margin-left:auto;font-size:13px;text-decoration:none}.panel__head .panel__link:hover{text-decoration:underline}.count{font-size:var(--fs-small);color:var(--muted)}.page-title{font-size:var(--fs-title);letter-spacing:-.022em;margin:0;font-weight:700;line-height:1.15}.page-sub{color:var(--muted);margin:4px 0 0;font-size:15px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head__actions{flex-wrap:wrap;gap:8px;display:flex}.kpis{grid-template-columns:repeat(var(--kpi-count,4),minmax(0,1fr));background:var(--surface);border-radius:var(--radius-card);display:grid}.kpi{border-left:1px solid var(--border);flex-direction:column;gap:2px;min-width:0;padding:14px 18px;display:flex}.kpi:first-child{border-left:0}.kpi__label{color:var(--muted);font-size:13px}.kpi__value{letter-spacing:-.02em;font-size:26px;font-weight:600;line-height:34px}.kpi__value small{color:var(--muted);margin-left:2px;font-size:13px}.kpi__note{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.table{border-collapse:collapse;width:100%}.table th{color:var(--muted);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:0 10px 8px;font-size:12px;font-weight:400}.table td{border-bottom:1px solid var(--rule);vertical-align:middle;padding:10px}.table tr:last-child td{border-bottom:0}.table .r{text-align:right}.table td.r{white-space:nowrap}.dot{outline-offset:-1px;vertical-align:middle;border-radius:50%;outline:1px solid #0000001f;flex:none;width:10px;height:10px;display:inline-block}.empty{border:1px dashed var(--control);color:var(--muted);padding:14px 16px}.empty,.error-box{border-radius:12px}.error-box{background:var(--pill-negative-bg);color:var(--pill-negative-ink);padding:12px 14px}.skeleton{background:var(--rule);border-radius:4px;width:6em;height:1em;display:inline-block}.card,.day-btn,.entry,.meal__row,.nav__item,.row,.tick{transition:transform .26s var(--ease-spring),background-color .12s ease,border-color .12s ease}.card:active,.meal__row:active,.nav__item:active,.row:active,.tick:active{transition-duration:0s;transform:scale(.985)}@media (prefers-reduced-transparency:reduce){:root{--material:var(--chrome);--material-blur:none}}@media (prefers-reduced-motion:reduce){.btn:active,.card:active,.chip:active,.meal__row:active,.nav__item:active,.row:active,.tick:active{transform:none}*,:after,:before{transition-duration:1ms!important;animation:none!important}}
