body{color:#f0f0f0;-webkit-font-smoothing:antialiased;background:#0d0d0d;font-family:Segoe UI,system-ui,sans-serif}#root{width:100%}:root{--gruen-dunkel:#00c97a;--gruen-mittel:#00e691;--gruen-hell:#4dffc2;--gruen-blass:#0a2818;--text-dunkel:#f0f0f0;--text-grau:#888;--hintergrund:#0d0d0d;--weiss:#1a1a1a;--border:#2a2a2a;--radius:12px;--schatten:0 2px 16px #00000080}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--hintergrund);color:var(--text-dunkel);font-family:Segoe UI,system-ui,sans-serif;line-height:1.6}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{background-color:var(--weiss);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.logo{color:var(--gruen-dunkel);letter-spacing:-.5px;cursor:pointer;font-size:1.6rem;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.header-links{align-items:center;gap:.4rem;display:flex}.header-plus-btn{background:var(--gruen-dunkel);color:var(--weiss);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.4rem;font-weight:300;line-height:1;transition:background .15s;display:flex}.header-plus-btn:hover{background:var(--gruen-mittel)}.header-stern-btn{color:var(--text-grau);cursor:pointer;background:0 0;border:none;padding:.1rem;font-size:1.4rem;line-height:1;transition:color .15s;position:relative}.header-stern-btn:hover{color:#f1c40f}.rezept-karte__kopf{justify-content:space-between;align-items:center;display:flex}.karte-stern-btn{color:var(--text-grau);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1;transition:color .15s}.karte-stern-btn--aktiv,.karte-stern-btn:hover{color:#f1c40f}.detail-stern-btn{border:1px solid var(--border);color:var(--text-grau);cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .7rem;font-size:1.1rem;transition:color .15s,border-color .15s}.detail-stern-btn--aktiv,.detail-stern-btn:hover{color:#f1c40f;border-color:#f1c40f}.app-inhalt{flex:1;width:100%;max-width:900px;margin:0 auto;padding:2rem 1.5rem}.seiten-titel{color:var(--gruen-dunkel);margin-bottom:1.5rem;font-size:1.8rem;font-weight:700}.app-footer{text-align:center;color:var(--text-grau);border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;font-size:.75rem;display:flex}.app-footer__links{align-items:center;gap:.5rem;display:flex}.footer-link{color:var(--gruen-mittel);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;text-decoration:underline}.footer-link:hover{color:var(--gruen-hell)}.footer-trenner{color:var(--text-grau)}.rechtsseite{flex-direction:column;gap:1.5rem;display:flex}.rechtsseite__platzhalter{background:var(--weiss);border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-grau);flex-direction:column;gap:.5rem;padding:2rem;font-size:.95rem;display:flex}.rechtsseite__inhalt{flex-direction:column;gap:1rem;font-size:.95rem;line-height:1.7;display:flex}.rechtsseite__inhalt h2{color:var(--gruen-dunkel);margin-top:1rem;font-size:1.1rem;font-weight:700}.rechtsseite__inhalt h3{color:var(--text-dunkel);font-size:.95rem;font-weight:700}.rechtsseite__inhalt a{color:var(--gruen-mittel)}.rechtsseite__quelle{color:var(--text-grau);margin-top:1rem;font-size:.8rem}.filter-leiste{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.filter-btn{border:2px solid var(--gruen-mittel);background:var(--weiss);color:var(--gruen-mittel);cursor:pointer;border-radius:999px;padding:.4rem 1rem;font-size:.9rem;font-weight:600;transition:background .15s,color .15s}.filter-btn:hover{background:var(--gruen-blass)}.filter-btn--aktiv{background:var(--gruen-mittel);color:var(--weiss)}.karten-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem;display:grid}.rezept-karte{background:var(--weiss);border-radius:var(--radius);box-shadow:var(--schatten);cursor:pointer;flex-direction:column;gap:.5rem;padding:1.4rem;transition:transform .15s,box-shadow .15s;display:flex}.rezept-karte:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000001a}.rezept-karte__bild{object-fit:cover;object-position:center;border-radius:8px;width:100%;height:180px;display:block}.rezept-karte__platzhalter{background:var(--gruen-blass);border-radius:8px;justify-content:center;align-items:center;width:100%;height:180px;font-size:2.5rem;display:flex}.rezept-karte__inhalt{flex-direction:column;gap:.5rem;display:flex}.rezept-karte__kategorie{text-transform:uppercase;letter-spacing:.5px;color:var(--gruen-mittel);font-size:.75rem;font-weight:700}.rezept-karte__name{color:var(--text-dunkel);font-size:1.1rem;font-weight:700}.rezept-karte__info{color:var(--text-grau);justify-content:space-between;margin-top:.3rem;font-size:.85rem;display:flex}.rezept-detail{flex-direction:column;gap:1.5rem;display:flex}.detail-kopf-leiste{justify-content:space-between;align-items:center;display:flex}.zurueck-btn{color:var(--gruen-mittel);cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;font-weight:600}.zurueck-btn:hover{color:var(--gruen-dunkel)}.detail-aktionen{gap:.5rem;display:flex}.bearbeiten-btn{border:1px solid var(--gruen-mittel);color:var(--gruen-mittel);cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .9rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s}.bearbeiten-btn:hover{background:var(--gruen-mittel);color:var(--weiss)}.loeschen-btn{color:#e74c3c;cursor:pointer;background:0 0;border:1px solid #e74c3c;border-radius:999px;padding:.3rem .9rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s}.loeschen-btn:hover{color:var(--weiss);background:#e74c3c}.detail-bild{object-fit:cover;object-position:center;border-radius:var(--radius);width:100%;height:280px;display:block}.detail-platzhalter{background:var(--gruen-blass);border-radius:var(--radius);justify-content:center;align-items:center;width:100%;height:280px;font-size:4rem;display:flex}.detail-kategorie{text-transform:uppercase;letter-spacing:.5px;color:var(--gruen-mittel);font-size:.75rem;font-weight:700}.detail-titel{color:var(--gruen-dunkel);font-size:2rem;font-weight:700;line-height:1.2}.portionen-steuerung{align-items:center;gap:1rem;display:flex}.portionen-label{color:var(--text-dunkel);font-weight:600}.portionen-zaehler{align-items:center;gap:.75rem;display:flex}.portionen-btn{border:2px solid var(--gruen-mittel);background:var(--weiss);width:36px;height:36px;color:var(--gruen-mittel);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;transition:background .15s,color .15s;display:flex}.portionen-btn:hover{background:var(--gruen-mittel);color:var(--weiss)}.portionen-zahl{text-align:center;min-width:24px;font-size:1.3rem;font-weight:700}.preis-box{background:var(--gruen-blass);border-radius:var(--radius);flex-direction:column;gap:.4rem;padding:1rem 1.4rem;display:flex}.preis-box__eintrag{color:var(--text-dunkel);justify-content:space-between;font-size:.95rem;display:flex}.abschnitt{flex-direction:column;gap:.75rem;display:flex}.abschnitt__titel{color:var(--gruen-dunkel);font-size:1.1rem;font-weight:700}.naehrwert-grid{flex-wrap:wrap;gap:.6rem;display:flex}.naehrwert-kachel{border:1px solid var(--border);border-radius:var(--radius);background:#111;flex-direction:column;align-items:center;min-width:80px;padding:.6rem 1rem;display:flex}.naehrwert-kachel__wert{color:var(--gruen-dunkel);font-size:1.1rem;font-weight:700}.naehrwert-kachel__label{color:var(--text-grau);font-size:.75rem}.zutaten-liste{flex-direction:column;gap:.4rem;list-style:none;display:flex}.zutaten-liste__eintrag{border-bottom:1px solid var(--border);justify-content:space-between;padding:.5rem 0;font-size:.95rem;display:flex}.zutaten-liste__menge{color:var(--text-grau)}.zubereitung-liste{flex-direction:column;gap:.6rem;padding-left:1.4rem;display:flex}.zubereitung-liste__schritt{font-size:.95rem;line-height:1.6}.einkauf-btn{background:var(--gruen-dunkel);color:var(--weiss);border-radius:var(--radius);cursor:pointer;border:none;width:100%;padding:.85rem 1.4rem;font-size:1rem;font-weight:700;transition:background .15s}.einkauf-btn:hover{background:var(--gruen-mittel)}.einkauf-header-btn{cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.5rem;position:relative}.einkauf-badge{background:var(--gruen-dunkel);color:var(--weiss);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.einkaufsliste{flex-direction:column;gap:1.5rem;display:flex}.einkaufsliste__leer{color:var(--text-grau);font-size:.95rem}.abschnitt__kopf{justify-content:space-between;align-items:center;display:flex}.alles-loeschen-btn{border:1px solid var(--border);color:var(--text-grau);cursor:pointer;background:0 0;border-radius:999px;padding:.25rem .75rem;font-size:.8rem;transition:border-color .15s,color .15s}.alles-loeschen-btn:hover{color:#e74c3c;border-color:#e74c3c}.rezept-tags{flex-direction:column;gap:.5rem;list-style:none;display:flex}.rezept-tag{background:var(--gruen-blass);border-radius:var(--radius);color:var(--gruen-dunkel);justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:.9rem;font-weight:600;display:flex}.rezept-tag__loeschen{color:var(--gruen-dunkel);cursor:pointer;opacity:.6;background:0 0;border:none;font-size:1.2rem;line-height:1}.rezept-tag__loeschen:hover{opacity:1}.einkauf-liste{flex-direction:column;list-style:none;display:flex}.einkauf-liste__eintrag{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:.75rem;padding:.7rem 0;transition:opacity .15s;display:flex}.einkauf-liste__eintrag--abgehakt{opacity:.4}.einkauf-liste__eintrag--abgehakt .einkauf-liste__name{text-decoration:line-through}.einkauf-liste__checkbox{border:2px solid var(--gruen-mittel);width:22px;height:22px;color:var(--gruen-mittel);background:#111;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.einkauf-liste__name{flex:1;font-size:.95rem}.einkauf-liste__menge{color:var(--text-grau);white-space:nowrap;font-size:.85rem}.rezept-erstellen{flex-direction:column;gap:1.8rem;display:flex}.formular-zeile{flex-direction:column;flex:1;gap:.3rem;display:flex}.formular-label{color:var(--text-grau);text-transform:uppercase;letter-spacing:.4px;font-size:.82rem;font-weight:600}.formular-input{border:1px solid var(--border);color:var(--text-dunkel);background:#111;border-radius:8px;width:100%;padding:.55rem .8rem;font-size:.95rem;transition:border-color .15s}.formular-input:focus{border-color:var(--gruen-mittel);outline:none}.formular-textarea{border:1px solid var(--border);color:var(--text-dunkel);resize:vertical;background:#111;border-radius:8px;width:100%;padding:.55rem .8rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.formular-textarea:focus{border-color:var(--gruen-mittel);outline:none}.formular-reihe{flex-wrap:wrap;gap:.75rem;display:flex}.zutaten-kopf{color:var(--text-grau);text-transform:uppercase;letter-spacing:.4px;grid-template-columns:2fr 1fr 1fr 1fr 28px;gap:.5rem;padding:0 0 .3rem;font-size:.78rem;font-weight:600;display:grid}.zutaten-zeile{grid-template-columns:2fr 1fr 1fr 1fr 28px;align-items:center;gap:.5rem;margin-bottom:.4rem;display:grid}.schritt-zeile{grid-template-columns:24px 1fr 28px;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:grid}.schritt-nummer{color:var(--gruen-mittel);padding-top:.55rem;font-size:.9rem;font-weight:700}.zeile-loeschen-btn{color:#555;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1;transition:color .15s}.zeile-loeschen-btn:hover:not(:disabled){color:#e74c3c}.zeile-loeschen-btn:disabled{opacity:.3;cursor:default}.hinzufuegen-btn{border:1px dashed var(--gruen-mittel);color:var(--gruen-mittel);cursor:pointer;background:0 0;border-radius:8px;margin-top:.3rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:background .15s}.hinzufuegen-btn:hover{background:var(--gruen-blass)}.bild-vorschau{object-fit:cover;border:1px solid var(--gruen-blass);border-radius:8px;width:100%;max-height:180px;margin-top:.5rem}
