:root{--text:#2b2622;--leise:#7a716a;--bg:#faf7f2;--karte:#fff;--rand:#e6dfd5;--akzent:#c0562f;--akzent-hell:#f6e3d9;--fehler:#b3261e;--schatten:0 1px 2px #3c28140f, 0 4px 14px #3c28140f;color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-font-smoothing:antialiased;font:17px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#f1ece6;--leise:#a69d95;--bg:#1b1917;--karte:#262320;--rand:#3a3531;--akzent:#e07a52;--akzent-hell:#46291d;--fehler:#f2b8b5;--schatten:0 1px 2px #0000004d}}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--akzent)}h1{margin:0 0 6px;font-size:28px;line-height:1.2}h2{margin:0 0 10px;font-size:20px}h3{margin:0 0 4px;font-size:16px;line-height:1.3}p{margin:0 0 14px}.leise{color:var(--leise)}.klein{font-size:14px}.fehler{color:var(--fehler)}.hinweis{text-align:center;color:var(--leise);padding:40px 16px}.zusatz{color:var(--leise);font-weight:400}input{font:inherit;border:1px solid var(--rand);background:var(--bg);color:var(--text);border-radius:10px;padding:10px 12px}button{font:inherit;background:var(--akzent);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:11px 16px;font-weight:600}button:disabled{opacity:.45;cursor:default}button.schlicht{color:var(--akzent);background:0 0;padding:8px 6px;font-weight:500}:focus-visible{outline:2px solid var(--akzent);outline-offset:2px}.mitte{justify-content:center;align-items:center;min-height:100svh;padding:16px;display:flex}.karte{background:var(--karte);border:1px solid var(--rand);border-radius:16px;width:100%;max-width:380px;padding:28px 24px}form{flex-direction:column;gap:14px;display:flex}label{flex-direction:column;gap:4px;font-size:15px;display:flex}.kopf{z-index:5;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--rand);padding-top:env(safe-area-inset-top);position:sticky;top:0}.kopf-innen{align-items:center;gap:12px;max-width:1100px;margin:0 auto;padding:10px 16px;display:flex}.logo{color:var(--text);font-size:20px;font-weight:700;text-decoration:none}.suchfeld{background:var(--karte);flex:1;min-width:0}.inhalt{max-width:1100px;margin:0 auto;padding:16px 16px 30px}.pfad{color:var(--leise);margin-bottom:8px;font-size:14px}.abschnitt{margin:26px 0 12px}.filter{scrollbar-width:none;gap:8px;margin:0 -16px;padding:4px 16px 10px;display:flex;overflow-x:auto}.filter::-webkit-scrollbar{display:none}.chip{border:1px solid var(--rand);background:var(--karte);color:var(--text);border-radius:999px;flex:none;padding:7px 13px;font-size:15px;font-weight:500}.chip.aktiv{background:var(--akzent);border-color:var(--akzent);color:#fff}.trenner{background:var(--rand);flex:none;width:1px;margin:4px 2px}.raster{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;display:grid}.raster.kacheln{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.fusszeile{text-align:center;padding:0 16px calc(24px + env(safe-area-inset-bottom))}.foto{aspect-ratio:4/3;object-fit:cover;background:var(--akzent-hell);width:100%;display:block}.karte-rezept,.kachel{background:var(--karte);border:1px solid var(--rand);color:var(--text);box-shadow:var(--schatten);border-radius:14px;text-decoration:none;display:block;overflow:hidden}.karte-text{padding:10px 12px 12px}.karte-text p{margin:0}.marke{background:var(--akzent-hell);color:var(--text);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:13px;display:inline-block}.marken .marke{margin:0 6px 6px 0;padding:3px 10px;font-size:14px}.kachel{position:relative}.kachel .foto{aspect-ratio:16/10}.kachel-text{flex-direction:column;padding:8px 12px 10px;line-height:1.3;display:flex}.kachel-text span{color:var(--leise);font-size:14px}.mehr{margin:22px auto 0;display:block}.rezept-kopf{gap:16px;margin-bottom:18px;display:grid}.rezept-kopf .foto{border-radius:16px}.naehrwerte{flex-wrap:wrap;gap:8px;margin:12px 0 8px;display:flex}.naehrwerte div{background:var(--karte);border:1px solid var(--rand);text-align:center;border-radius:12px;min-width:78px;padding:8px 12px}.naehrwerte dd{margin:0;font-size:18px;font-weight:700}.naehrwerte dt{color:var(--leise);font-size:12px}.einleitung{white-space:pre-line}.rezept-spalten{gap:24px;display:grid}.portionen{align-items:center;gap:10px;margin-bottom:10px;display:flex}.portionen strong{white-space:nowrap;text-align:center;min-width:108px}.portionen button:not(.schlicht){width:40px;height:40px;padding:0;font-size:22px;line-height:1}.zutaten{margin:0 0 12px;padding:0;list-style:none}.zutaten li{border-bottom:1px solid var(--rand);grid-template-columns:92px 1fr;gap:10px;padding:7px 0;display:grid}.zutaten .menge{text-align:right;font-weight:600}.zutaten .gruppe{grid-column:1/-1;padding-top:10px;font-weight:700}.schritte{counter-reset:schritt;margin:0 0 16px;padding-left:0;list-style:none}.schritte li{counter-increment:schritt;padding:0 0 14px 42px;position:relative}.schritte li:before{content:counter(schritt);background:var(--akzent-hell);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex;position:absolute;top:0;left:0}.kasten{background:var(--karte);border:1px solid var(--rand);border-left:4px solid var(--akzent);border-radius:12px;margin-bottom:14px;padding:12px 14px}.kasten p{margin:6px 0 0}.kasten summary{cursor:pointer;color:var(--akzent);margin:8px 0}.fuss{margin-top:24px}@media (width>=760px){.rezept-kopf{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}.rezept-spalten{grid-template-columns:minmax(0,4fr) minmax(0,6fr);gap:36px}.raster,.raster.kacheln{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.zeile{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.zeile h2{margin:0}button.zweit{background:var(--karte);color:var(--text);border:1px solid var(--rand)}.km{z-index:20;background:var(--bg);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex;position:fixed;inset:0}.km-kopf{border-bottom:1px solid var(--rand);align-items:center;gap:10px;padding:10px 16px;display:flex}.km-zu{background:var(--karte);width:40px;height:40px;color:var(--text);border:1px solid var(--rand);border-radius:50%;flex:none;padding:0}.km-titel{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.km-timer{flex-wrap:wrap;gap:8px;padding:10px 16px 0;display:flex}.km-timer>div{background:var(--text);color:var(--bg);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:8px;padding:6px 8px 6px 14px;font-weight:700;display:flex}.km-timer small{opacity:.8;font-weight:500}.km-timer button{background:color-mix(in srgb, currentColor 22%, transparent);width:28px;height:28px;color:inherit;border-radius:50%;padding:0;font-size:13px}.km-timer .fertig{background:var(--akzent);color:#fff;animation:1s infinite km-blink}@keyframes km-blink{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.km-timer .fertig{animation:none}}.km-inhalt{flex:1;width:100%;max-width:760px;margin:0 auto;padding:20px 20px 12px;overflow-y:auto}.km-marke{color:var(--akzent);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:14px;font-weight:700}.km-schritt{font-size:clamp(22px,5.4vw,30px);line-height:1.4}.km-zeiten{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.km-zutaten{margin:0 0 14px;padding:0;font-size:19px;list-style:none}.km-zutaten label{border-bottom:1px solid var(--rand);font-size:inherit;grid-template-columns:28px 96px 1fr;align-items:start;gap:10px;padding:11px 0;display:grid}.km-zutaten input{width:24px;height:24px;accent-color:var(--akzent);margin:2px 0 0;padding:0}.km-zutaten .menge{text-align:right;font-weight:600}.km-zutaten small{color:var(--leise)}.km-zutaten label:has(input:checked) span{opacity:.45;text-decoration:line-through}.km-punkte{flex-wrap:wrap;justify-content:center;gap:6px;padding:8px 16px;display:flex}.km-punkte span{background:var(--rand);border-radius:50%;width:8px;height:8px}.km-punkte .durch{background:var(--akzent-hell)}.km-punkte .da{background:var(--akzent)}.km-fuss{gap:12px;width:100%;max-width:760px;margin:0 auto;padding:8px 16px 16px;display:flex}.km-fuss button{flex:1;padding:15px 16px;font-size:18px}textarea{font:inherit;border:1px solid var(--rand);background:var(--karte);width:100%;color:var(--text);resize:vertical;border-radius:10px;padding:10px 12px}.merker{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:12px;display:flex}.merker button.zweit{padding:8px 14px}.fav.an{background:var(--akzent-hell);border-color:var(--akzent)}.gekocht{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.karte-rezept{position:relative}.stern{color:#ffd166;background:#0000008c;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex;position:absolute;top:8px;right:8px}.notiz{max-width:640px;margin-top:28px}.notiz-knoepfe{gap:8px;margin:8px 0;display:flex}.meldung{border:1px solid var(--fehler);max-width:1100px;color:var(--fehler);background:var(--karte);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:10px auto 0;padding:8px 16px;display:flex}.schmal{max-width:460px}.block{border-top:1px solid var(--rand);margin-top:26px;padding-top:20px}.block input{background:var(--karte)}a.knopf{background:var(--akzent);color:#fff;border-radius:10px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-block}.plan,.einkauf{max-width:760px}.chips{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 12px;display:flex}.plan-liste,.einkauf-liste{margin:0;padding:0;list-style:none}.plan-zeile{background:var(--karte);border:1px solid var(--rand);border-radius:14px;margin-bottom:10px;padding:10px 12px}.plan-kopf{align-items:center;gap:10px;display:flex}.plan-rezept{min-width:0;color:var(--text);flex:1;align-items:center;gap:10px;font-weight:600;line-height:1.3;text-decoration:none;display:flex}.plan-rezept .foto{border-radius:10px;flex:none;width:64px}.plan-rezept small{color:var(--leise);font-weight:400;display:block}.plan-knoepfe{flex:none;gap:4px;display:flex}.plan-knoepfe button{width:38px;height:38px;padding:0}.plan-zeile .portionen{margin:10px 0 0}.plan-optionen{border-top:1px solid var(--rand);margin-top:12px;padding-top:10px}.plan-datum{flex-direction:row;align-items:center;gap:6px;font-size:14px}.plan-datum input{padding:6px 8px}.plan-ende,.einkauf-knoepfe{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.einkauf-liste li{border-bottom:1px solid var(--rand);align-items:stretch;display:flex}.einkauf-zeile{min-width:0;color:var(--text);text-align:left;background:0 0;border-radius:0;flex:1;grid-template-columns:26px 1fr auto;align-items:center;gap:12px;padding:10px 0;font-weight:400;display:grid}.kasten-haken{border:2px solid var(--rand);color:#fff;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;font-weight:700;display:flex}.einkauf-liste .ab .kasten-haken{background:var(--akzent);border-color:var(--akzent)}.einkauf-name small{color:var(--leise);font-size:13px;display:block}.einkauf-menge{white-space:nowrap;font-weight:600}.einkauf-liste .ab .einkauf-name,.einkauf-liste .ab .einkauf-menge{opacity:.45;text-decoration:line-through}.einkauf-weg{width:40px;color:var(--leise);background:0 0;flex:none;padding:0;font-size:20px;font-weight:400}input,textarea,select{font-size:17px}.meldung{margin-left:16px;margin-right:16px}@media (width>=1132px){.meldung{margin-left:auto;margin-right:auto}}.chips .chip{text-align:left;flex:0 auto;max-width:100%}.einkauf-zeile{grid-template-columns:26px minmax(0,1fr) auto}.einkauf-name,.plan-rezept span,.zutaten li>span:last-child{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.einkauf-menge{white-space:normal;text-align:right;max-width:40vw}.zutaten li{grid-template-columns:92px minmax(0,1fr)}.plan-datum input{min-width:0;max-width:100%}.kopf-nav{scrollbar-width:none;gap:6px;max-width:1100px;margin:0 auto;padding:0 16px 8px;display:flex;overflow-x:auto}.kopf-nav::-webkit-scrollbar{display:none}.kopf-nav a{color:var(--text);border-radius:999px;flex:none;padding:5px 12px;font-size:15px;font-weight:500;text-decoration:none}.kopf-nav a.active{background:var(--akzent-hell);font-weight:600}.schmal-mitte{max-width:560px}.zufall-karte{margin:8px 0 14px}.zufall-karte h2{margin:0 0 4px}.vorrat-eingabe{flex-direction:row;gap:8px;margin-bottom:10px}.vorrat-eingabe input{background:var(--karte);flex:1;min-width:0}.vorrat{background:var(--akzent-hell);border-radius:999px;align-items:center;gap:4px;padding:4px 4px 4px 12px;font-size:15px;display:inline-flex}.vorrat.ohne{border:1px dashed var(--rand);color:var(--leise);background:0 0}.vorrat button{width:28px;height:28px;color:inherit;background:0 0;border-radius:50%;padding:0;font-size:18px;font-weight:400}.vorrat-liste{margin:0;padding:0;list-style:none}.vorrat-liste a{border-bottom:1px solid var(--rand);color:var(--text);grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;text-decoration:none;display:grid}.vorrat-liste .foto{border-radius:10px}.vorrat-text{overflow-wrap:break-word;flex-direction:column;line-height:1.3;display:flex}.vorrat-text small,.vorrat-zahl small{color:var(--leise);font-size:13px}.vorrat-zahl{white-space:nowrap;flex-direction:column;align-items:flex-end;font-weight:700;display:flex}.vorrat-zahl small{font-weight:400}.auswahl{border:1px solid var(--rand);border-radius:10px;flex-direction:column;gap:6px;margin:0;padding:8px 12px 10px;display:flex}.auswahl legend{padding:0 4px;font-size:15px}label.haken{flex-direction:row;align-items:center;gap:10px;font-size:17px}label.haken input{width:22px;height:22px;accent-color:var(--akzent);padding:0}.kasten input{width:100%;margin-top:8px}.einladungen{margin:16px 0 0;padding:0;list-style:none}.einladungen li{border-top:1px solid var(--rand);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.einladungen small{color:var(--leise);display:block}.einladungen button{flex:none;padding:8px 12px}
