:root{--ground:#f6f3ec;--ink:#23201b;--ink-soft:#6a6459;--edge:#d8d2c6;--accent:#3f6b4a;--alarm:#9c3a2e;--card:#fffdf8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--ground);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5}.shell{min-height:100dvh;padding:calc(env(safe-area-inset-top) + 2rem) calc(env(safe-area-inset-right) + 1.5rem) calc(env(safe-area-inset-bottom) + 2rem) calc(env(safe-area-inset-left) + 1.5rem);flex-direction:column;gap:.5rem;max-width:34rem;margin-inline:auto;display:flex}.shell.centered{justify-content:center}h1{letter-spacing:-.02em;margin:0;font-size:clamp(2rem,8vw,2.75rem)}p{color:var(--ink-soft);text-wrap:pretty;margin:0}.stack{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.row{flex-wrap:wrap;gap:1rem;margin-top:.25rem;display:flex}label{color:var(--ink-soft);font-size:.875rem;font-weight:600}input{font:inherit;border:1px solid var(--edge);min-height:2.75rem;color:inherit;background:#fff;border-radius:.5rem;width:100%;padding:0 .75rem;font-size:1rem}input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input.code{letter-spacing:.4em;text-align:center;font-size:1.5rem}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:.5rem;min-height:2.75rem;padding:0 1.25rem;font-weight:600}button:disabled{opacity:.5;cursor:default}button.quiet{min-height:auto;color:var(--ink-soft);background:0 0;padding:0;font-weight:400;text-decoration:underline}.error{color:var(--alarm);font-weight:600}.diary{flex-direction:column;flex:1;gap:1rem;display:flex}.day{grid-template-columns:3rem 1fr 3rem;align-items:center;display:grid}.day-name{text-align:center}.day h1{font-size:clamp(1.75rem,7vw,2.25rem)}.total{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}button.step{color:var(--ink);background:0 0;border-radius:.5rem;min-height:3rem;padding:0;font-size:2rem;line-height:1}button.step:disabled{opacity:.2}.day-jump{justify-content:center;align-items:center;gap:1rem;display:flex}.day-jump input{width:auto}.retry{align-self:center}.meals{flex-direction:column;gap:.75rem;display:flex}.meal{background:var(--card);border:1px solid var(--edge);border-radius:.75rem;padding:.75rem 1rem 1rem}.meal-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.meal h2{letter-spacing:.02em;margin:0;font-size:1rem}.meal-total{font-variant-numeric:tabular-nums;color:var(--ink-soft);font-size:.875rem}.entries{flex-direction:column;margin:.5rem 0 0;padding:0;list-style:none;display:flex}button.entry{width:100%;color:inherit;text-align:left;border-top:1px solid var(--edge);background:0 0;border-radius:0;grid-template-columns:1fr auto;gap:0 .75rem;padding:.5rem 0;font-weight:400;display:grid}.entries li:first-child button.entry{border-top:none}.entry-name{font-weight:600}.entry-kcal{font-variant-numeric:tabular-nums;text-align:right;grid-area:1/2}.entry-portion{color:var(--ink-soft);grid-column:1;font-size:.875rem}button.add{color:var(--accent);margin-top:.5rem}.entry-form{border-top:1px solid var(--edge);flex-direction:column;gap:.75rem;padding:.75rem 0;display:flex}.entries .entry-form{border-top:none}.field{flex-direction:column;gap:.25rem;display:flex}.portion{grid-template-columns:repeat(auto-fit,minmax(5rem,1fr));gap:.75rem;display:grid}select{font:inherit;border:1px solid var(--edge);min-height:2.75rem;color:inherit;background:#fff;border-radius:.5rem;width:100%;padding:0 .5rem;font-size:1rem}select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.danger{color:var(--alarm);margin-inline-start:auto}.undo{bottom:calc(env(safe-area-inset-bottom) + .5rem);background:var(--ink);color:var(--ground);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding:.75rem 1rem;display:flex;position:sticky;box-shadow:0 .5rem 1.5rem #23201b33}.undo .row{gap:1rem;margin-top:0}.undo button.quiet{color:var(--ground);font-weight:600}.account{border-top:1px solid var(--edge);flex-wrap:wrap;align-items:baseline;gap:.75rem;margin-top:1.5rem;padding-top:1rem;font-size:.875rem;display:flex}.account p{font-size:inherit}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.remaining{font-variant-numeric:tabular-nums;color:var(--ink-soft);margin:0;font-size:.875rem}.budget-link{align-self:center}.budget-setup{flex-direction:column;gap:1rem;display:flex}.suggestion{background:var(--card);border:1px solid var(--edge);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.75rem 1rem 1rem;display:flex}.suggestion h2{margin:0;font-size:1rem}.suggestion .total{margin:0;font-size:1.5rem}
