.bottom-nav{z-index:10;height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:var(--border-width) solid var(--color-border);background:var(--color-surface);display:flex;position:fixed;inset:auto 0 0}.bottom-nav__link{min-height:var(--tap-target);padding:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.bottom-nav__link[aria-current=page]{color:var(--color-accent);font-weight:var(--font-weight-medium);box-shadow:inset 0 calc(-1 * var(--focus-ring-width)) 0 var(--color-accent)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);min-width:var(--tap-target);padding:var(--space-2) var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration);display:inline-flex}.btn:disabled{cursor:default;opacity:.65}.btn--full{width:100%;display:flex}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn--secondary{background:var(--color-surface-muted);color:var(--color-text)}.btn--danger{background:var(--color-danger);color:var(--color-on-danger)}.btn--danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn--ghost{border-color:var(--color-border);color:var(--color-text);background:0 0}.btn__spinner{width:var(--font-size-md);height:var(--font-size-md);border:var(--border-width-thick) solid currentcolor;border-radius:var(--radius-pill);border-right-color:#0000;animation:.8s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn__spinner{animation-duration:3s}}.card{margin-bottom:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.card__title{margin-bottom:var(--space-2);font-size:var(--font-size-md)}.card>:last-child{margin-bottom:0}.chip{padding:var(--space-1) var(--space-3);border:var(--border-width) solid transparent;border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-text);font-size:var(--font-size-sm);align-items:center;display:inline-flex}.chip--action{min-height:var(--tap-target);padding-inline:var(--space-4);cursor:pointer}.chip--selected{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-on-accent-soft)}.recipes__header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.recipes__header h1{margin:0}.recipes__flash{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-on-accent-soft)}.recipes__flash:empty{display:none}.recipes__links{gap:var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.recipes__link{min-height:var(--tap-target);align-items:center;display:inline-flex}.recipes__stack{gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.recipes__row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.recipes__sub{margin:0 0 var(--space-3);color:var(--color-text-muted)}.recipes__ingredients{margin:0 0 var(--space-3);padding:0;list-style:none}.recipes__ingredients li{align-items:center;gap:var(--space-2);min-height:var(--tap-target);border-bottom:var(--border-width) solid var(--color-border);display:flex}.recipes__ingredients li:last-child{border-bottom:0}.recipes__textarea{width:100%;min-height:calc(var(--tap-target) * 3);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;resize:vertical;display:block}.recipes__persons{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.recipes__persons-count{min-width:var(--tap-target);text-align:center;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.recipes__file{width:100%;min-height:var(--tap-target);padding:var(--space-2) 0;font:inherit;display:block}.recipes__copy{gap:var(--space-2);align-items:flex-start;display:flex}.recipes__copy .field{flex:1;margin-bottom:0}.login__footer{margin:var(--space-5) 0 0;text-align:center;font-size:var(--font-size-sm)}.sheet__backdrop{z-index:20;background:var(--color-overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:var(--content-max-width);max-height:90vh;padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);box-shadow:var(--shadow-raised);overflow-y:auto}.sheet:focus{outline:none}.sheet__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.sheet__title{margin:0}.list-row{align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border:0;border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text);text-align:left;background:0 0;display:flex}.list-row--action{cursor:pointer}.list-row--action:hover{background:var(--color-surface-muted)}.list-row__text{flex-direction:column;flex:1;min-width:0;display:flex}.list-row__title{font-weight:var(--font-weight-medium)}.list-row__subtitle{color:var(--color-text-muted);font-size:var(--font-size-sm)}.list-row__trailing{flex:none}.settings__section{margin-bottom:var(--space-4)}.settings__row{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--tap-target);padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--color-border);display:flex}.settings__row:last-child{border-bottom:0}.settings__label{font-weight:var(--font-weight-medium)}.settings__select{width:auto;min-width:8rem;margin-left:auto}.settings__stepper{align-items:center;gap:var(--space-3);display:flex}.settings__value{min-width:var(--tap-target);text-align:center;font-weight:var(--font-weight-medium)}.settings__note{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.settings__status{margin:var(--space-2) 0 0;color:var(--color-on-accent-soft);font-size:var(--font-size-sm)}.settings__status:empty{display:none}.settings__switch{width:calc(var(--tap-target) + var(--space-3));min-height:var(--tap-target);cursor:pointer;background:0 0;border:0;flex:none;padding:0;position:relative}.settings__switch:before{content:"";inset:var(--space-2) 0;border-radius:var(--radius-pill);background:var(--color-surface-muted);border:var(--border-width) solid var(--color-border);transition:background var(--duration);position:absolute}.settings__switch:after{content:"";top:50%;left:var(--space-1);width:var(--icon-size);height:var(--icon-size);margin-top:calc(var(--icon-size) / -2);border-radius:var(--radius-pill);background:var(--color-surface);box-shadow:var(--shadow-card);transition:transform var(--duration);position:absolute}.settings__switch[aria-checked=true]:before{background:var(--color-accent);border-color:var(--color-accent)}.settings__switch[aria-checked=true]:after{transform:translate(100%)}.settings__members{margin:0 0 var(--space-3)}.settings__links{flex-direction:column;display:flex}.settings__link{min-height:var(--tap-target);align-items:center;display:flex}.settings__stack{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.settings__group-title{margin:var(--space-5) 0 var(--space-2);font-size:var(--font-size-md)}.settings__levels{margin:0 0 var(--space-3);padding-left:var(--space-5)}.settings__ingredient{padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--color-border)}.settings__ingredient:last-child{border-bottom:0}.settings__ingredient-name{margin-bottom:var(--space-2);font-weight:var(--font-weight-medium);display:block}.settings__ingredient-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.settings__ingredient-controls .settings__select{margin-left:0}@media (prefers-reduced-motion:reduce){.settings__switch:before,.settings__switch:after{transition:none}}.settings__sticky{z-index:1;margin-top:var(--space-4);padding-top:var(--space-2);background:var(--color-bg);position:sticky;top:0}.settings__chip{display:inline-flex}.settings__switch:disabled{cursor:default;opacity:.65}.list__counter{margin:0 0 var(--space-3);color:var(--color-text-muted)}.list__sync{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm)}.list__sync:empty{display:none}.list__notice{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-on-accent-soft);margin:0}.check-line{min-height:var(--tap-target);cursor:pointer;align-items:center;display:flex}.check-line .list-row{flex:1;min-width:0}.check-line__box{width:var(--icon-size);height:var(--icon-size);accent-color:var(--color-accent);flex:none;margin:0}.check-line--done .list-row__title{color:var(--color-text-muted);text-decoration:line-through}.check-line--done .list-row__subtitle{text-decoration:line-through}.dish__name{margin-bottom:var(--space-1);font-size:var(--font-size-md)}.dish__subtitle{font-size:var(--font-size-sm)}.dish__actions{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.dish__link{min-height:var(--tap-target);align-items:center;display:inline-flex}.menu__header{margin-bottom:var(--space-4)}.menu__greeting{color:var(--color-text-muted);margin:0}.menu__scale{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.menu__scale-label{color:var(--color-text-muted);font-size:var(--font-size-sm)}.menu__footer{gap:var(--space-2);margin-top:var(--space-4);display:flex}.menu__footer>*{flex:1}.menu__stack,.menu__sheet-actions{gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.first-start__label{margin:0 0 var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase}.first-start__teaser{opacity:.55;margin-bottom:var(--space-4)}.first-start__teaser-more{text-align:center;color:var(--color-text-muted);margin:0}.first-start__counter{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm)}.first-start__pick{align-items:center;gap:var(--space-3);min-height:var(--tap-target);cursor:pointer;display:flex}.first-start__box{width:var(--icon-size);height:var(--icon-size);accent-color:var(--color-accent);flex:none;margin:0}.first-start__progress{margin:var(--space-3) 0 0;color:var(--color-text-muted)}.screen{max-width:var(--content-max-width);padding:var(--space-4);padding-bottom:calc(var(--nav-height) + var(--space-5) + env(safe-area-inset-bottom));margin:0 auto}.screen--narrow{padding-top:var(--space-6);padding-bottom:var(--space-6)}.screen--hint{padding-bottom:0}.screen--hint:empty{display:none}.loading{align-items:center;gap:var(--space-2);color:var(--color-text-muted);display:flex}.loading__spinner{width:var(--icon-size);height:var(--icon-size);border:var(--focus-ring-width) solid var(--color-surface-muted);border-top-color:var(--color-accent);border-radius:var(--radius-pill);animation:.9s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading__spinner{animation-duration:3s}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-accent:#2b7a4b;--color-accent-hover:#236a40;--color-on-accent:#fff;--color-accent-soft:#e2f1e8;--color-on-accent-soft:#1d5a37;--color-bg:#f4f4f6;--color-surface:#fff;--color-surface-muted:#e3e3e8;--color-text:#222;--color-text-muted:#5c5c66;--color-border:#d4d4da;--color-danger:#b3261e;--color-danger-hover:#961f18;--color-on-danger:#fff;--color-danger-soft:#fbe9e7;--color-focus:#1a5fd0;--color-overlay:#00000073;--color-shadow:#0000002e;--font-family:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.625rem;--font-weight-regular:400;--font-weight-medium:600;--line-height:1.45;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-pill:999px;--tap-target:2.75rem;--content-max-width:40rem;--nav-height:3.75rem;--icon-size:1.5rem;--focus-ring-width:3px;--focus-offset:2px;--border-width-thick:2px;--border-width:1px;--shadow-card:0 1px 3px var(--color-shadow);--shadow-raised:0 -4px 24px var(--color-shadow);--duration:.15s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-accent:#4fae78;--color-accent-hover:#63bf8a;--color-on-accent:#0d2a1a;--color-accent-soft:#1b3a29;--color-on-accent-soft:#bfe6cd;--color-bg:#121214;--color-surface:#1d1d21;--color-surface-muted:#2c2c32;--color-text:#ececf0;--color-text-muted:#a4a4b0;--color-border:#3a3a42;--color-danger:#f2877f;--color-danger-hover:#f6a39d;--color-on-danger:#3a0b08;--color-danger-soft:#3a1c1a;--color-focus:#8ab4ff;--color-overlay:#000000a6;--color-shadow:#0009}}@media (prefers-reduced-motion:reduce){:root{--duration:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-md);line-height:var(--line-height);margin:0}h1,h2,h3{margin:0 0 var(--space-3);line-height:1.2}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}p{margin:0 0 var(--space-3)}a{color:var(--color-accent)}input,button{font:inherit}:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-offset)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.field{margin-bottom:var(--space-4);display:block}.field__label{margin-bottom:var(--space-1);font-weight:var(--font-weight-medium);display:block}.field__input{width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);display:block}.field__hint{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.form-error{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger)}.form-error:empty{display:none}.muted{color:var(--color-text-muted)}
