@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/AtkinsonHyperlegibleNext-Regular.woff2)format("woff2")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/AtkinsonHyperlegibleNext-Bold.woff2)format("woff2")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/AtkinsonHyperlegibleNext-Italic.woff2)format("woff2")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/AtkinsonHyperlegibleNext-BoldItalic.woff2)format("woff2")}:root{--bg:#f3f8fa;--surface:#fff;--surface-2:#e4eef2;--text:#0f2630;--text-muted:#4a6572;--border:#c5d6dd;--accent:#0e7490;--accent-text:#fff;--accent-soft:#d3eef5;--danger:#b42318;--danger-text:#fff;--ok:#167a4a;--ok-bg:#d7f2e3;--soon:#8a5a00;--soon-bg:#fdecc4;--expired:#b42318;--expired-bg:#fbdcd8;--backdrop:#0a1e2880;--shadow:0 -4px 24px #0a28372e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--radius:14px;--radius-lg:22px;--radius-pill:999px;--fs-sm:14px;--fs-base:17px;--fs-lg:20px;--fs-xl:26px;--fs-xxl:40px;--font:"Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tap:48px;--tabbar-h:64px;--safe-bottom:env(safe-area-inset-bottom,0px)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0b1a21;--surface:#132731;--surface-2:#1b3541;--text:#e6f2f6;--text-muted:#9ab4bf;--border:#2b4856;--accent:#3bb8d6;--accent-text:#04202a;--accent-soft:#14404d;--danger:#f0776b;--danger-text:#2a0905;--ok:#5ed39a;--ok-bg:#123a29;--soon:#f3c25b;--soon-bg:#4a3809;--expired:#f59a90;--expired-bg:#4d1a15;--backdrop:#0000009e;--shadow:0 -4px 24px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=auto],:root:not([data-theme]){--bg:#0b1a21;--surface:#132731;--surface-2:#1b3541;--text:#e6f2f6;--text-muted:#9ab4bf;--border:#2b4856;--accent:#3bb8d6;--accent-text:#04202a;--accent-soft:#14404d;--danger:#f0776b;--danger-text:#2a0905;--ok:#5ed39a;--ok-bg:#123a29;--soon:#f3c25b;--soon-bg:#4a3809;--expired:#f59a90;--expired-bg:#4d1a15;--backdrop:#0000009e;--shadow:0 -4px 24px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font:var(--fs-base)/1.4 var(--font);-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-family:inherit}h1{font-size:var(--fs-xl);margin:0 0 var(--sp-4)}h2{font-size:var(--fs-lg);margin:0 0 var(--sp-3)}p{margin:0 0 var(--sp-3)}.muted{color:var(--text-muted);font-size:var(--fs-sm)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.screen{min-height:100dvh;padding:var(--sp-5) var(--sp-4) calc(var(--tabbar-h) + var(--safe-bottom) + var(--sp-5));max-width:640px;margin:0 auto}.screen--full{padding-bottom:calc(var(--sp-5) + var(--safe-bottom));flex-direction:column;display:flex}.screen--full .spacer{flex:1}.stack{gap:var(--sp-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--sp-3);display:flex}.row--end{justify-content:flex-end}.btn{min-height:52px;min-width:var(--tap);padding:0 var(--sp-5);border-radius:var(--radius);font:inherit;background:var(--accent);color:var(--accent-text);cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn--secondary{background:var(--surface);color:var(--accent);border-color:var(--accent)}.btn--danger{background:var(--danger);color:var(--danger-text)}.btn--full{width:100%}.btn--small{min-height:var(--tap);padding:0 var(--sp-4)}.field{gap:var(--sp-1);flex-direction:column;display:flex}.field label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600}.field input,.field select,.field textarea{min-height:52px;padding:0 var(--sp-3);font:inherit;color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius)}.field input:focus{border-color:var(--accent)}.list{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list__item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);gap:var(--sp-2);flex-direction:column;display:flex}.list__title{font-weight:600}.chip{min-height:36px;padding:0 var(--sp-3);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text);border:1px solid var(--border);font:inherit;font-size:var(--fs-sm);align-items:center;display:inline-flex}.chip--active{background:var(--accent-soft);border-color:var(--accent)}.badge{padding:2px var(--sp-3);border-radius:var(--radius-pill);font-size:var(--fs-sm);font-weight:600;display:inline-block}.badge--ok{background:var(--ok-bg);color:var(--ok)}.badge--soon{background:var(--soon-bg);color:var(--soon)}.badge--expired{background:var(--expired-bg);color:var(--expired)}.sheet-backdrop{background:var(--backdrop);z-index:40;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:640px;color:var(--text);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow);padding:var(--sp-5) var(--sp-4) calc(var(--sp-5) + var(--safe-bottom));gap:var(--sp-3);flex-direction:column;display:flex}.tabbar{z-index:30;background:var(--surface);border-top:1px solid var(--border);padding-bottom:var(--safe-bottom);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__inner{width:100%;max-width:640px;display:flex}.tabbar a{min-height:var(--tabbar-h);min-width:var(--tap);color:var(--text-muted);font-weight:600;font-size:var(--fs-sm);flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.toast{left:var(--sp-4);right:var(--sp-4);top:calc(env(safe-area-inset-top,0px) + var(--sp-3));z-index:60;background:var(--text);max-width:600px;color:var(--bg);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius);margin:0 auto;position:fixed}.error{color:var(--danger);min-height:1.4em;font-weight:600}.screen--empty{text-align:center;justify-content:center;gap:var(--sp-4);flex-direction:column;min-height:70vh;display:flex}.btn--big{min-height:72px;font-size:var(--fs-lg);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.screen--list{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 120px)}.group{margin-bottom:var(--sp-4)}.group__head{justify-content:space-between;align-items:baseline;display:flex}.group__count{color:var(--text-muted);font-size:var(--fs-base);font-weight:600}.pkg{text-align:left;width:100%;min-height:56px;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);gap:var(--sp-1) var(--sp-3);border-left-width:6px;grid-template-columns:1fr auto;align-items:center;display:grid}.pkg--soon{border-left-color:var(--soon);background:var(--soon-bg)}.pkg--expired{border-left-color:var(--expired);background:var(--expired-bg)}.pkg--ok{border-left-color:var(--ok)}.pkg__main{flex-direction:column;display:flex}.pkg__qty{font-size:var(--fs-base)}.pkg__portions{font-size:var(--fs-xl);font-weight:800;line-height:1.15}.pkg__loc{grid-column:1}.pkg .badge{grid-area:1/2/span 2;align-self:center}.filters{z-index:20;left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));background:var(--surface);border-top:1px solid var(--border);padding:var(--sp-2) var(--sp-4);gap:var(--sp-2);flex-direction:column;display:flex;position:fixed}.filters__row{gap:var(--sp-2);display:flex;overflow-x:auto}.filters .chip{min-height:var(--tap);white-space:nowrap;flex:none}.screen--add{padding-bottom:calc(var(--safe-bottom) + 200px)}.topbar{margin-bottom:var(--sp-3);justify-content:space-between;align-items:center}.hint{color:var(--soon);margin:0;font-weight:600}.bottombar{z-index:25;background:var(--surface);border-top:1px solid var(--border);padding:var(--sp-2) var(--sp-4) calc(var(--sp-3) + var(--safe-bottom));gap:var(--sp-2);flex-direction:column;max-width:640px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.bottombar .error{min-height:0;margin:0}.label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600}.chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chip--tap{min-height:var(--tap);padding:0 var(--sp-4);font-size:var(--fs-base);cursor:pointer}.recent{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.recent__btn{min-height:72px;font-size:var(--fs-lg);padding:0 var(--sp-3);overflow-wrap:anywhere}.result-btn{justify-content:space-between;gap:var(--sp-3);text-align:left;width:100%;min-width:0;min-height:56px}.browse-btn{margin:var(--sp-4) 0}.sheet__scroll{max-height:55dvh;overflow-y:auto}.food-head__name{margin:0 0 var(--sp-3);overflow-wrap:anywhere}.stepper{align-items:stretch;gap:var(--sp-3);display:flex}.stepper__btn{width:64px;min-height:64px;font:inherit;border-radius:var(--radius);border:2px solid var(--accent);background:var(--surface);color:var(--accent);flex:none;font-size:32px;font-weight:700}.stepper__btn:disabled{opacity:.4}.stepper__value{text-align:center;min-width:0;font:inherit;font-size:var(--fs-xl);color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);flex:1;font-weight:800}.stepper--large .stepper__btn{width:72px;min-height:72px;font-size:40px}.stepper--large .stepper__value{font-size:44px}.units{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.unit-btn{min-height:56px;font:inherit;border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);color:var(--text);font-weight:700}.unit-btn--active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.warning{background:var(--soon-bg);color:var(--soon);border:2px solid var(--soon);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-lg)}.preview{font-size:var(--fs-lg);margin:0;font-weight:700}.toast-inline{background:var(--ok-bg);color:var(--ok);border-radius:var(--radius);padding:var(--sp-4);font-size:var(--fs-lg);font-weight:700}.bottombar .error:empty{margin-bottom:calc(-1 * var(--sp-2))}.toast{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.toast__text{overflow-wrap:anywhere;min-width:0;font-weight:600}.toast__action{min-width:48px;min-height:48px;padding:0 var(--sp-4);font:inherit;color:var(--text);background:var(--accent-soft);border:2px solid var(--accent-soft);border-radius:var(--radius);flex:none;font-weight:700}.sheet__facts{font-size:var(--fs-lg);overflow-wrap:anywhere;margin:0}.sheet h2{overflow-wrap:anywhere;margin:0}.sheet .error{margin:0}.screen--freezers,.screen--settings{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--sp-5))}.screen--freezers{gap:var(--sp-3);flex-direction:column;display:flex}.screen--settings{gap:var(--sp-4);flex-direction:column;display:flex}.fz{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-4);gap:var(--sp-3);flex-direction:column;display:flex}.fz__name{overflow-wrap:anywhere;margin:0}.fz__comp{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-direction:row}.fz__comp .list__title{overflow-wrap:anywhere;min-width:0}.fz__del{align-self:flex-start}.screen--freezers .screen--empty{min-height:50vh}.about{text-align:center}.banner{background:var(--soon-bg);color:var(--soon);font-size:var(--fs-sm);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius);margin:0 0 var(--sp-3);font-weight:600}.theme-choice{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.theme-btn{min-height:56px;font:inherit;border-radius:var(--radius);cursor:pointer;border:2px solid var(--border);background:var(--surface);color:var(--text);font-weight:700}.theme-btn[aria-checked=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.screen--add .label,.screen--add .field label{font-size:var(--fs-lg);color:var(--text);font-weight:700}.screen--add .stack{gap:var(--sp-2)}.screen--add .freezer-label{font-size:var(--fs-base);color:color-mix(in srgb, var(--text) 70%, var(--text-muted));font-weight:700}
