:root{--akzent:#2dd4bf;--akzent-hell:#5eead4;--akzent-dunkel:#0d9488;--akzent-text:#062e2a;--akzent-schein:#2dd4bf2e;--text:#e6edf3;--text-schwach:#8b98a5;--grund:#0b1220;--flaeche:#131c2b;--flaeche-hoch:#1a2536;--linie:#243044;--linie-hell:#2f3d54;--erledigt:#6b7686;--gefahr:#f87171;--gefahr-flaeche:#f871711f;--hinweis-flaeche:#2dd4bf1a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--grund);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}*{box-sizing:border-box}body{background:radial-gradient(1200px 600px at 20% -10%, #14213a 0%, var(--grund) 55%);min-height:100vh;margin:0}h1{letter-spacing:-.01em;margin:0 0 14px;font-size:1.6rem}h2{letter-spacing:-.005em;margin:20px 0 10px;font-size:1.1rem}p{margin:0 0 10px;line-height:1.5}a{color:var(--akzent);text-decoration:none}a:hover{text-decoration:underline}button,.knopf{font:inherit;border:1px solid var(--linie-hell);background:var(--flaeche-hoch);color:var(--text);cursor:pointer;border-radius:10px;padding:9px 14px;text-decoration:none;transition:background .15s,border-color .15s,transform 50ms;display:inline-block}button:hover,.knopf:hover{border-color:var(--akzent-dunkel);text-decoration:none}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:default;transform:none}button.primaer,.knopf.primaer{background:linear-gradient(135deg, var(--akzent-hell), var(--akzent));color:var(--akzent-text);box-shadow:0 6px 18px var(--akzent-schein);border-color:#0000;font-weight:600}button.primaer:hover,.knopf.primaer:hover{filter:brightness(1.05)}button.klein{border-radius:8px;padding:5px 9px;font-size:.88rem}button.gefahr{color:var(--gefahr)}input,select,textarea{font:inherit;border:1px solid var(--linie-hell);background:var(--flaeche-hoch);color:var(--text);border-radius:10px;width:100%;padding:9px 11px}input:focus,select:focus,textarea:focus{border-color:var(--akzent);box-shadow:0 0 0 3px var(--akzent-schein);outline:none}input::placeholder,textarea::placeholder{color:var(--text-schwach)}textarea{min-height:120px}label{color:var(--text-schwach);margin-bottom:5px;font-size:.88rem;display:block}.feld{margin-bottom:12px}.zeile{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.zeile.rechts{justify-content:flex-end}.app{flex-direction:column;min-height:100vh;display:flex}main{width:100%;max-width:900px;margin:0 auto;padding:16px}main.leer{text-align:center;color:var(--text-schwach);padding-top:80px}.hauptnav{z-index:5;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--linie);background:#0b1220d9;gap:2px;padding:0 8px;display:flex;position:sticky;top:0;overflow-x:auto}.hauptnav a{color:var(--text-schwach);white-space:nowrap;border-bottom:2px solid #0000;padding:14px 12px;font-weight:500}.hauptnav a:hover{color:var(--text);text-decoration:none}.hauptnav a.active{color:var(--akzent);border-bottom-color:var(--akzent)}.hauptnav .nav-rechts{margin-left:auto}.karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:14px;margin-bottom:12px;padding:16px;box-shadow:inset 0 1px #ffffff05,0 8px 24px #00000040}.karte.hervor{border-color:var(--akzent-dunkel);box-shadow:0 0 0 1px var(--akzent-schein), 0 12px 32px #00000059}.karte h2:first-child{margin-top:0}.schwach{color:var(--text-schwach);font-size:.9rem}.pille{color:var(--text);background:var(--flaeche-hoch);border:1px solid var(--linie-hell);border-radius:999px;margin-right:4px;padding:3px 9px;font-size:.8rem;display:inline-block}.pille.akzent{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text);font-weight:600}.pille.akzent .schwach{color:var(--akzent-text);opacity:.8}.pille.vorrat{border-style:dashed}button.pille{cursor:pointer}button.pille:hover:not(:disabled){border-color:var(--akzent)}.liste{margin:0;padding:0;list-style:none}.liste li{border-bottom:1px solid var(--linie);align-items:center;gap:10px;padding:11px 4px;display:flex}.liste li:last-child{border-bottom:0}.liste .wachsen{flex:1;min-width:0}.liste .name{font-weight:500}.liste li.erledigt .name{color:var(--erledigt);text-decoration:line-through}.liste li.erledigt{opacity:.65}.haken{border:2px solid var(--linie-hell);cursor:pointer;background:0 0;border-radius:50%;flex:none;width:28px;height:28px;padding:0;font-size:1rem;line-height:1}.haken:hover{border-color:var(--akzent)}.haken.an{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text)}.kategorie-kopf{text-transform:uppercase;letter-spacing:.08em;color:var(--akzent);margin:16px 0 4px;font-size:.78rem;font-weight:600}.gross{letter-spacing:-.01em;margin:6px 0 10px;font-size:1.7rem;font-weight:700}.griff{cursor:grab;color:var(--text-schwach);-webkit-user-select:none;user-select:none;touch-action:none;padding:0 6px}.raster{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.meldung{background:var(--hinweis-flaeche);border:1px solid var(--akzent-dunkel);border-radius:10px;margin-bottom:12px;padding:10px 12px}.meldung.fehler{background:var(--gefahr-flaeche);border-color:var(--gefahr)}.karte.schritte{padding:4px 8px}.kochschritt{cursor:pointer;border-radius:10px;grid-template-columns:36px 1fr;column-gap:12px;padding:14px 8px;display:grid;position:relative}.kochschritt:after{content:"";background:var(--linie);height:1px;position:absolute;bottom:0;left:8px;right:8px}.kochschritt:last-child:after{display:none}.kochschritt.vor-parallel:after{left:60px}.kochschritt .nr-spalte{justify-content:center;align-items:flex-start;display:flex;position:relative}.kochschritt .nr{z-index:1;background:var(--akzent);width:30px;height:30px;color:var(--akzent-text);text-align:center;border-radius:50%;font-weight:700;line-height:30px;display:inline-block;position:relative}.kochschritt.vor-parallel .nr-spalte:after{content:"";background:var(--akzent);width:2px;margin-left:-1px;position:absolute;top:30px;bottom:-14px;left:50%}.kochschritt.verbunden .nr-spalte:before{content:"";background:var(--akzent);width:2px;height:14px;margin-left:-1px;position:absolute;top:-14px;left:50%}.kochschritt .inhalt{min-width:0}.kochschritt.aktiv{background:var(--hinweis-flaeche);box-shadow:inset 3px 0 0 var(--akzent)}.kochschritt.aktiv:after{left:8px}.kochschritt.aktiv.vor-parallel:after{left:60px}.kochmodus p{font-size:1.15rem}pre.prompt{white-space:pre-wrap;background:var(--flaeche-hoch);border:1px solid var(--linie);border-radius:10px;max-height:300px;padding:10px;font-size:.85rem;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--linie-hell);border-radius:8px}@media (width>=700px){main{padding:24px}}.vorschlaege{z-index:20;background:var(--flaeche-hoch);border:1px solid var(--linie-hell);border-radius:12px;max-height:320px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 12px 32px #00000073}.vorschlaege li{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px;display:flex}.vorschlaege li:hover{background:var(--akzent-schein)}.vorschlaege .wachsen{flex:1}.liste li{gap:6px;min-height:60px;padding:4px}.liste .abhakflaeche .name{overflow-wrap:anywhere}.werkzeuge{margin-top:12px}.liste .abhakflaeche{text-align:left;min-width:0;color:inherit;font:inherit;box-shadow:none;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:1;align-items:center;gap:8px;margin:0 -4px;padding:8px;display:flex}.liste .abhakflaeche:hover{background:var(--akzent-schein);border-color:#0000}.liste .abhakflaeche:active{background:var(--flaeche-hoch);transform:none}.liste .abhakflaeche .haken{display:inline-flex}.liste .abhakflaeche:hover .haken{border-color:var(--akzent)}.haken{justify-content:center;align-items:center;width:34px;height:34px;padding:0;line-height:1;display:inline-flex}.haken svg{display:block}.haken:not(.an) .haken-strich{opacity:0}.haken.an .haken-strich{opacity:1}.symbol{border-radius:10px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:1.25rem;line-height:1;display:inline-flex}.symbol.primaer{font-weight:700}@keyframes haken-ring{0%{box-shadow:0 0 #2dd4bf8c}to{box-shadow:0 0 0 16px #2dd4bf00}}@keyframes haken-pop{0%{transform:scale(.9)}40%{transform:scale(1.25)}70%{transform:scale(.96)}to{transform:scale(1)}}@keyframes haken-zeichnen{0%{stroke-dashoffset:30px;opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes zeile-glanz{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes streichen{0%{width:0}to{width:100%}}@keyframes zeile-weg{0%{opacity:1;max-height:90px;transform:translate(0)}to{opacity:0;border-width:0;max-height:0;margin:0;padding-top:0;padding-bottom:0;transform:translate(48px)}}.liste li.abhaken-anim{background:var(--akzent-schein);border-radius:10px;animation:.2s ease-in .3s forwards zeile-weg;position:relative;overflow:hidden}.liste li.abhaken-anim:before{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 20%,#5eead459 50%,#0000 80%);animation:.45s ease-out zeile-glanz;position:absolute;inset:0}.liste li.abhaken-anim .haken{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text);animation:.3s cubic-bezier(.34,1.56,.64,1) haken-pop,.45s ease-out haken-ring}.liste li.abhaken-anim .haken-strich{stroke-dasharray:30;opacity:1;animation:.22s ease-out 50ms both haken-zeichnen}.liste li.abhaken-anim .name{color:var(--erledigt);position:relative}.liste li.abhaken-anim .name:after{content:"";background:var(--akzent);height:2px;animation:.2s ease-out .1s both streichen;position:absolute;top:55%;left:0}@media (prefers-reduced-motion:reduce){.liste li.abhaken-anim,.liste li.abhaken-anim:before,.liste li.abhaken-anim .haken,.liste li.abhaken-anim .haken-strich,.liste li.abhaken-anim .name:after{animation:none}}.liste.karte{padding:4px 14px}.liste .kopfzeile{padding:0 8px}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%238b98a5' stroke-width='1.8' stroke-linecap='round'/></svg>");background-position:right 13px center;background-repeat:no-repeat;padding-right:34px}select:hover{border-color:var(--akzent-dunkel)}.seitenkopf{margin-bottom:14px}.liste li.aufgeklappt{background:var(--hinweis-flaeche);border-radius:10px;margin:0 -8px 4px;padding:0 0 8px;display:block}.aufklappen{grid-template-rows:1fr;animation:.28s ease-out aufklappen;display:grid}.aufklappen>div{min-height:0;overflow:hidden}@keyframes aufklappen{0%{opacity:0;grid-template-rows:0fr}to{opacity:1;grid-template-rows:1fr}}.unterliste{margin:0 8px}.unterliste li{min-height:52px}.liste li.bearbeiten-zeile{flex-wrap:wrap}.liste li.bearbeiten-zeile .steuer{flex-wrap:nowrap;align-items:center;gap:6px;margin-left:auto;display:flex}.abschluss{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:14px;display:flex}.abschluss .zeile{justify-content:center}.liste .fuer-gericht{color:var(--akzent)}@media (prefers-reduced-motion:reduce){.aufklappen{animation:none}}@media (width<=600px){.liste li.bearbeiten-zeile{row-gap:8px;padding:10px 4px}.liste li.bearbeiten-zeile .steuer{flex-wrap:wrap;row-gap:8px;width:100%;margin-left:0}.liste li.bearbeiten-zeile .steuer select{flex:100%;width:auto!important}.liste li.bearbeiten-zeile .steuer input{flex:100px;min-width:0;width:auto!important}.liste li.bearbeiten-zeile .steuer button.klein{white-space:nowrap;padding:9px 10px}}.kopf-link{color:var(--akzent);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;padding:6px 8px;font-size:1.15rem}.kopf-link span{font-size:.95rem;font-weight:600}.kopf-link:hover{background:var(--akzent-schein);border-color:#0000}.kopf-link.aktiv{background:var(--akzent);color:var(--akzent-text)}.liste li.artikel-bearbeiten{background:var(--flaeche);border-radius:10px;flex-direction:column;align-items:stretch;gap:8px;margin:4px 0;padding:10px 8px;display:flex}.liste li.artikel-bearbeiten label{font-size:.8rem}.unterliste li .symbol{width:40px;height:40px}.neu-zeile{flex-wrap:nowrap}.neu-zeile #neu-artikel{flex:2;min-width:0}.neu-zeile #neu-details{flex:1;min-width:0}@media (width<=600px){.neu-zeile{flex-wrap:wrap}.neu-zeile #neu-artikel,.neu-zeile #neu-details{flex:100%}.neu-zeile>button{min-width:60%;margin:2px auto 0}}body{background:var(--grund)}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(1200px 600px at 20% -10%,#14213a 0%,#0000 60%);position:fixed;inset:0}@keyframes hervorheben{0%,70%{background:var(--akzent-schein);box-shadow:0 0 0 2px var(--akzent)}to{box-shadow:none;background:0 0}}.liste li.hervorgehoben{border-radius:10px;animation:3s ease-out forwards hervorheben}.umschalter{border:1px solid var(--linie-hell);border-radius:10px;display:inline-flex;overflow:hidden}.umschalter button{background:0 0;border:0;border-radius:0;padding:7px 12px}.umschalter button+button{border-left:1px solid var(--linie-hell)}.umschalter button.an{background:var(--akzent);color:var(--akzent-text);font-weight:600}.pille .von-liste{color:var(--akzent);font-weight:600}.pille.akzent .von-liste{color:var(--akzent-text);background:#062e2a2e;border-radius:6px;margin-left:2px;padding:0 4px}.personen{border:1px solid var(--linie-hell);border-radius:8px;align-items:center;gap:2px;margin-left:6px;padding:1px;display:inline-flex}.personen button.klein{background:0 0;border:0;padding:4px 8px;font-weight:700}.personen>span{letter-spacing:0;text-transform:none;color:var(--text);padding:0 4px;font-size:.85rem;font-weight:600}.personen>span.an{color:var(--akzent)}
