:root{--abfit-css:1}
:root{--gelb:#FFD400;--gelb-hell:#FFF4B8;--gelb-txt:#E0A800;--eiweiss:#FF6B5B;--kh:#1CB5A8;--fett:#8B5CF6;--txt:#1C1C1E;--grau:#8E8E93;--linie:#ECECEF;--bg:#FFFFFF;--karte:#FFFFFF;--flaeche:#F6F6F8;
--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--bg);color:var(--txt);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;font-size:16px}
main{max-width:560px;margin:0 auto;padding:calc(var(--safe-t) + 10px) 16px calc(96px + var(--safe-b))}
h1{font-size:28px;margin:0;font-weight:800;letter-spacing:-.5px}
h2{font-size:18px;margin:22px 0 8px;font-weight:700;display:flex;justify-content:space-between;align-items:baseline}
h2 small{font-size:14px;color:var(--gelb-txt);font-weight:600}
.kopf{display:flex;align-items:center;gap:10px;padding:6px 0 4px}
.kopf .sonne{width:42px;height:42px;object-fit:contain}.kopf .sp{flex:1}
.icon-btn{width:42px;height:42px;border-radius:50%;border:0;background:transparent;display:grid;place-items:center;color:var(--txt);font-size:15px}
.icon-btn svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.8}
.datum{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--grau);font-size:15px;margin-top:2px}
.datum button{border:0;background:none;font-size:20px;color:var(--grau);padding:4px 12px}
.ring-wrap{display:flex;flex-direction:column;align-items:center;padding:6px 0 4px;border-bottom:1px solid var(--linie)}
.ring{position:relative;width:220px;height:220px}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring .mitte{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring .mitte span{color:#555;font-size:18px}.ring .mitte b{font-size:64px;color:var(--gelb-txt);line-height:1;font-weight:800;letter-spacing:-2px}
.ring .mitte.ueber b{color:var(--eiweiss)}
.spruch{color:#555;text-align:center;font-size:15px;margin:8px 20px 14px}
.chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:-4px 0 14px}
.chip{background:var(--flaeche);border-radius:20px;padding:5px 11px;font-size:13px;color:#444}
.makro{display:grid;grid-template-columns:40px 118px 1fr 76px;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--linie)}
.makro .ic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:19px}
.makro .nm{font-weight:600}.makro .bar{height:9px;border-radius:5px;background:#EEE;overflow:hidden}.makro .bar i{display:block;height:100%;border-radius:5px}
.makro .wert{text-align:right;font-size:14px;color:#333;line-height:1.25}.makro .wert small{color:var(--grau)}
.e{color:var(--eiweiss)}.k{color:var(--kh)}.f{color:var(--fett)}
.mini{display:flex;gap:14px;color:var(--grau);font-size:13px;padding:8px 2px 0}
.karte{background:var(--karte);border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,.06),0 4px 14px rgba(0,0,0,.05);margin:10px 0;overflow:hidden}
.mahlzeit .kz{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}
.mahlzeit .mi{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:22px;flex:none}
.mahlzeit .t{flex:1;min-width:0}.mahlzeit .t b{display:block;font-size:17px}.mahlzeit .t small{color:var(--grau);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.mahlzeit .kc{font-size:16px;color:#333}.plus{width:34px;height:34px;border-radius:50%;border:0;background:var(--gelb);font-size:22px;font-weight:700;color:#1C1C1E;flex:none}
.eintrag{display:flex;align-items:center;gap:10px;padding:9px 14px;border-top:1px solid var(--linie);font-size:15px}
.eintrag .t{flex:1;min-width:0}.eintrag small{color:var(--grau);display:block;font-size:13px}
.eintrag .x{border:0;background:none;color:var(--grau);font-size:18px;padding:4px 8px}
.aktionen{display:flex;justify-content:space-around;padding:14px 0 4px}
.aktion{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:none;font-size:14px;color:var(--txt)}
.aktion .rund{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.aktion .rund svg{width:30px;height:30px;stroke:var(--txt);fill:none;stroke-width:1.9}
.aktion .gelb{background:var(--gelb)}.aktion .weiss{background:#fff}
.tabs{position:fixed;left:0;right:0;bottom:0;display:flex;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-top:1px solid var(--linie);padding:6px 0 calc(6px + var(--safe-b));z-index:10}
.tabs button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11.5px;color:#666}
.tabs svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.8}
.tabs button.aktiv{color:var(--gelb-txt)}.tabs button.aktiv svg{stroke:var(--gelb-txt)}
input,select,textarea{font:inherit;width:100%;padding:12px 14px;border:1px solid #DDD;border-radius:12px;background:#fff;color:var(--txt);-webkit-appearance:none;appearance:none}
input:focus,select:focus{outline:2px solid var(--gelb);border-color:var(--gelb)}
label{display:block;font-size:13px;color:var(--grau);margin:12px 2px 4px}
.reihe{display:flex;gap:10px}.reihe>*{flex:1}
.btn{display:block;width:100%;border:0;border-radius:14px;padding:14px;font:inherit;font-weight:700;background:var(--gelb);color:#1C1C1E;margin-top:16px}
.btn.zweit{background:var(--flaeche);color:var(--txt)}.btn.klein{display:inline-block;width:auto;padding:8px 14px;margin:0;font-size:14px}
.suche{position:sticky;top:0;background:var(--bg);padding:8px 0;z-index:5}
.liste .zeile{display:flex;align-items:center;gap:10px;padding:12px 4px;border-bottom:1px solid var(--linie);cursor:pointer}
.liste .zeile .t{flex:1;min-width:0}.liste .zeile b{font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.liste .zeile small{color:var(--grau)}.liste .zeile .kc{font-size:14px;color:#444;white-space:nowrap}
.tag{font-size:11px;background:var(--gelb-hell);color:#7a5c00;border-radius:6px;padding:1px 6px;margin-left:4px}
.segment{display:flex;background:var(--flaeche);border-radius:12px;padding:3px;gap:3px;margin:6px 0}
.segment button{flex:1;border:0;background:none;padding:9px 4px;border-radius:9px;font:inherit;font-size:14px;color:#444}
.segment button.an{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600;color:var(--txt)}
.sheet{position:fixed;inset:0;z-index:20}.sheet.hidden{display:none}
.sheet-bg{position:absolute;inset:0;background:rgba(0,0,0,.3)}
.sheet-box{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:#fff;border-radius:20px 20px 0 0;padding:8px 18px calc(22px + var(--safe-b));max-width:560px;margin:0 auto;animation:hoch .2s ease-out}
@keyframes hoch{from{transform:translateY(40px);opacity:.4}}
.grip{width:40px;height:5px;border-radius:3px;background:#DDD;margin:2px auto 10px}
.nw{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center;margin:12px 0}
.nw div{background:var(--flaeche);border-radius:12px;padding:8px 2px;font-size:12px;color:var(--grau)}.nw b{display:block;font-size:17px;color:var(--txt)}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(90px + var(--safe-b));background:#1C1C1E;color:#fff;padding:10px 16px;border-radius:12px;font-size:14px;z-index:30;max-width:90%}
.toast.hidden{display:none}
.hinweis{background:var(--gelb-hell);border-radius:12px;padding:12px 14px;font-size:14px;margin:10px 0;color:#5a4500}
.chart{width:100%;height:200px}
.code{font-family:ui-monospace,Menlo,monospace;font-size:12px;word-break:break-all;background:var(--flaeche);padding:10px;border-radius:10px}
.login{max-width:360px;margin:12vh auto 0;text-align:center}
.login img{width:110px;height:110px}
.leer{color:var(--grau);text-align:center;padding:24px 0;font-size:15px}
.menue .zeile{display:flex;justify-content:space-between;padding:15px 4px;border-bottom:1px solid var(--linie);cursor:pointer}
@media (prefers-color-scheme:dark){/* bewusst hell: Entwurf A „Sonnig hell“ */}
/* Rezepte */
.tag.rz{background:#FFE3DF;color:#B23A2C}
.plus{margin-left:auto;width:40px;height:40px;border-radius:50%;border:0;background:var(--gelb);font-size:26px;line-height:1;font-weight:600;color:#1C1C1E}
.kopf h1{flex:1}
.zurueck{border:0;background:none;color:var(--gelb-txt);font:inherit;font-size:17px;font-weight:600;padding:6px 0}.zurueck.rot{margin-left:auto;color:var(--eiweiss)}
.unter{color:var(--grau);font-size:14px;margin:0 0 10px}
.rtext{width:100%;min-height:46vh;border:1px solid var(--linie);border-radius:14px;padding:12px;font:inherit;font-size:15px;background:var(--flaeche);resize:vertical;box-sizing:border-box}
.fussleiste{position:sticky;bottom:calc(64px + var(--safe-b));display:flex;gap:10px;align-items:center;padding:10px 0;background:linear-gradient(transparent,#fff 30%)}
.fussleiste .btn{margin-top:0;flex:1}.fussleiste .btn.klein{flex:0 0 auto;padding:14px}
.sheet .fussleiste{position:static;background:none}
.titel-in{font-size:24px;font-weight:700;border:0;border-bottom:2px solid var(--gelb-hell);border-radius:0;padding:4px 0;width:100%;background:none}
.portionen{display:flex;align-items:center;gap:8px;margin:12px 0}.portionen span{flex:1;font-weight:600}
.portionen button{width:40px;height:40px;border-radius:50%;border:0;background:var(--gelb-hell);font-size:22px;color:var(--txt)}
.portionen input{width:64px;text-align:center;font-weight:700;font-size:18px}
.ergebnis{padding:14px;background:var(--gelb-hell);border:0}
.eg-kopf{display:flex;justify-content:space-between;align-items:baseline;font-weight:600}.eg-kopf b{font-size:26px}.eg-kopf small{color:#7a5c00;font-weight:400}
.nwt{width:100%;border-collapse:collapse;margin-top:8px;font-size:15px}.nwt th{font-size:12px;color:#7a5c00;text-align:right;font-weight:500}
.nwt td{padding:4px 0;border-top:1px solid rgba(0,0,0,.06)}.nwt td+td{text-align:right}
.nwt tr.protein td:first-child{color:var(--eiweiss)}.nwt tr.carbs td:first-child{color:var(--kh)}.nwt tr.fat td:first-child{color:var(--fett)}
.warn{color:#D93A2B;font-weight:600}.warnbox{background:#FFE3DF;color:#B23A2C}
.zutaten .zeile small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.zutaten .g{font-size:14px;color:#444;white-space:nowrap;width:56px;text-align:right}
.zeile .k{text-align:right;font-weight:600;white-space:nowrap;min-width:46px}.zeile .k small{display:block;font-weight:400;font-size:11px}
.zeile.unbekannt{background:#FFF1EF;border-left:4px solid var(--eiweiss);border-radius:8px;padding-left:10px}
.zeile.unbekannt small{color:#D93A2B}
.schritte{padding-left:22px;line-height:1.5}.schritte li{margin-bottom:8px}
.gewaehlt{background:var(--flaeche);border-radius:12px;padding:12px}
.liste.kompakt .zeile{padding:9px 4px}
.btn.rot{color:var(--eiweiss)}
.schnell{display:flex;gap:6px;margin-top:8px}.schnell button{flex:1;border:0;border-radius:10px;background:var(--gelb-hell);padding:8px;font:inherit;font-weight:600}
.tabs button{font-size:10.5px}

.btn.foto{margin:10px 0 4px;background:var(--gelb-hell)}
.gin{width:64px;text-align:right;padding:6px 8px;font-size:15px}.gu{font-size:13px;color:var(--grau);margin-left:-6px}
.zutaten .x{border:0;background:none;color:var(--grau);font-size:16px;padding:4px}
/* ===== Kompakt v8 ===== */
main{padding-left:12px;padding-right:12px}
h1{font-size:22px}h2{font-size:16px;margin:14px 0 6px}h2 small{font-size:13px}
.kopf.kompakt{gap:4px;padding:2px 0}.kopf.kompakt .sonne{width:32px;height:32px}
.kopf.kompakt .datum{margin:0;font-size:14px;font-weight:600;color:#444;gap:0}
.kopf.kompakt .datum button{min-width:44px;min-height:44px;padding:0;font-size:22px}
.kopf.kompakt #kal{cursor:pointer;padding:12px 2px}
.icon-btn{width:44px;height:44px}
.karte{margin:8px 0;border-radius:14px}
.hero{padding:12px 12px 10px;margin-top:4px}
.hero-o{display:flex;align-items:center;gap:14px}
.ring.klein{width:108px;height:108px;flex:none}
.ring.klein .mitte span{font-size:11px;color:#777;line-height:1.2}.ring.klein .mitte b{font-size:30px;letter-spacing:-1px}
.hero-w{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}
.hero-w div{background:var(--flaeche);border-radius:10px;padding:6px 9px;display:flex;flex-direction:column}
.hero-w span{font-size:11px;color:var(--grau)}.hero-w b{font-size:16px}
.makros3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.mm-k{display:flex;flex-direction:column;font-size:12px;font-weight:700}
.mm-k b{font-size:14px;color:var(--txt);font-weight:700;margin:1px 0 4px}.mm-k b small{font-weight:400;color:var(--grau);font-size:11px}
.mm .bar{height:6px;border-radius:3px;background:#EEE;overflow:hidden}.mm .bar i{display:block;height:100%;border-radius:3px}
.hero .mini{justify-content:space-between;font-size:12px;padding:8px 0 0;gap:6px}
.hero .spruch{margin:6px 0 0;font-size:13px;text-align:left;color:#666}
.mahlzeit .kz{gap:8px;padding:6px 6px 6px 10px;min-height:56px}
.mahlzeit .mi{width:32px;height:32px;font-size:17px}
.mahlzeit .mn{font-size:15px;white-space:nowrap}
.anz{background:var(--gelb-hell);color:#7a5c00;font-size:11px;font-weight:700;border-radius:9px;padding:1px 7px}
.dots{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:3px;font-size:11px;color:#777;white-space:nowrap;overflow:hidden}
.dots i{width:7px;height:7px;border-radius:50%;display:inline-block;margin-left:5px}
.dots i.e{background:var(--eiweiss)}.dots i.k{background:var(--kh)}.dots i.f{background:var(--fett)}.dots .vs{color:#aaa}
.mahlzeit .kc{font-size:15px;font-weight:700;min-width:40px;text-align:right}
.chev{width:18px;height:18px;flex:none;stroke:var(--grau);fill:none;stroke-width:2.2;transition:transform .25s ease}
.mahlzeit.auf .chev{transform:rotate(180deg)}
.mahlzeit .plus{width:44px;height:44px;font-size:24px;box-shadow:inset 0 0 0 7px #fff}
.koerper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
.mahlzeit.auf .koerper{grid-template-rows:1fr}.koerper .innen{overflow:hidden}
.mahlzeit .eintrag{gap:8px;padding:0 0 0 12px;min-height:44px;font-size:14px}
.eintrag .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eintrag .mg{color:var(--grau);font-size:12px;white-space:nowrap}.eintrag .ek{font-weight:600;min-width:34px;text-align:right;font-size:14px}
.eintrag .x{width:44px;height:44px;padding:0;font-size:14px}
.aktionen{gap:8px;padding:6px 0 0;justify-content:stretch}
.aktion{flex:1;flex-direction:row;justify-content:center;gap:6px;min-height:44px;border-radius:22px;background:var(--flaeche);font-size:13px;font-weight:600}
.aktion svg{width:20px;height:20px;stroke:var(--txt);fill:none;stroke-width:1.9}.aktion#mic{background:var(--gelb)}
/* Listen & Rezept */
.liste .zeile{padding:7px 4px;min-height:48px}.liste .zeile small{font-size:12px}
.menue .zeile{padding:12px 4px}
.btn{padding:12px;margin-top:12px;min-height:44px}
input,select,textarea{padding:10px 12px}label{margin:8px 2px 3px}
.titel-in{font-size:20px}.portionen{margin:6px 0}.portionen button{width:44px;height:44px}
.ergebnis{padding:10px 12px}.eg-kopf b{font-size:22px}.eg-kopf small{font-size:12px}
.nw2{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px;margin-top:6px}
.nw2 div{display:flex;justify-content:space-between;font-size:13px;border-bottom:1px solid rgba(0,0,0,.06);padding:3px 0}
.nw2 span{color:#6b5500}.nw2 .protein span{color:var(--eiweiss)}.nw2 .carbs span{color:var(--kh)}.nw2 .fat span{color:var(--fett)}
.zutaten .zeile .t{display:flex;align-items:baseline;gap:6px}.zutaten .zeile .t b{flex:none;max-width:60%}
.zutaten .zeile .t small{flex:1;min-width:0}.zeile .k{display:flex;gap:2px;align-items:baseline}.zeile .k small{display:inline}
.schritte{padding-left:20px;font-size:14px;line-height:1.4}.schritte li{margin-bottom:4px}
.dots i{flex:none}.mahlzeit .plus{box-shadow:none;width:36px;height:36px;margin:4px}
.mahlzeit .plus{width:44px;height:44px;margin:0;border:4px solid transparent;background-clip:padding-box}
.mahlzeit .dots i.e{background:var(--eiweiss)!important;display:inline-block!important;opacity:1!important;visibility:visible!important}
.dots i.d1{background:var(--eiweiss)}.dots i.d2{background:var(--kh)}.dots i.d3{background:var(--fett)}
.dots{overflow:visible;justify-content:flex-end;gap:2px}.dots i{margin-left:4px}
.dots i{width:8px;height:8px}
.laden{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 0 10px;color:#555}
.spinner{width:36px;height:36px;border-radius:50%;border:4px solid var(--gelb-hell);border-top-color:var(--gelb);animation:dreh .8s linear infinite}
@keyframes dreh{to{transform:rotate(360deg)}}
.scan-box{position:relative;border-radius:14px;overflow:hidden;background:#111;aspect-ratio:4/3;margin-bottom:4px}
.scan-box video{width:100%;height:100%;object-fit:cover;display:block}
.scan-rahmen{position:absolute;left:12%;right:12%;top:30%;bottom:30%;border:3px solid var(--gelb);border-radius:12px;box-shadow:0 0 0 999px rgba(0,0,0,.35)}
.scan-info{position:absolute;left:0;right:0;bottom:8px;text-align:center;color:#fff;font-size:13px;text-shadow:0 1px 3px #000;padding:0 10px}
.reihe.zwei{gap:8px}.reihe.zwei .btn{margin-top:8px;font-size:14px;padding:10px 6px}
.gschnell{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 2px}
.gschnell button{border:0;background:var(--gelb-hell);border-radius:16px;padding:0 12px;min-height:36px;font:inherit;font-size:13px;font-weight:600;color:#5c4500}
.aktion{font-size:12px;gap:4px;padding:0 4px}.aktion svg{width:18px;height:18px}
.dots{overflow:hidden;justify-content:flex-start}.dots>:first-child{margin-left:auto}
/* v11: Makro-Punkte passend */
.dots{gap:5px;font-size:11px}.dots .m{display:inline-flex;align-items:center;gap:2px;flex:none}.dots .m i{margin-left:0;width:7px;height:7px}
.dots>:first-child{margin-left:auto}
.dots.eng{gap:3px;font-size:10px;letter-spacing:-.2px}
.dots.enger .g{display:none}.dots.enger{gap:3px}
/* Eintrag bearbeiten */
.mahlzeit .eintrag[data-eid]{cursor:pointer}.mahlzeit .eintrag[data-eid]:active{background:var(--flaeche)}
.menge-edit{display:flex;align-items:center;gap:10px;margin:4px 0}
.menge-edit>button{width:52px;height:52px;border-radius:50%;border:0;background:var(--gelb);font-size:26px;font-weight:700;color:#1C1C1E;flex:none}
.menge-edit>div{flex:1;display:flex;align-items:baseline;justify-content:center;gap:6px}.menge-edit input{width:120px;text-align:center;font-size:26px;font-weight:800;padding:6px}
.menge-edit span{color:var(--grau);font-weight:600}
#emseg button{min-height:44px;font-size:13px}
/* Diktat */
.diktat{display:flex;flex-direction:column;align-items:center;gap:8px;padding:4px 0 6px}
.mic-gross{width:96px;height:96px;border-radius:50%;border:0;background:var(--gelb);display:grid;place-items:center;box-shadow:0 6px 20px rgba(255,212,0,.45);transition:transform .15s}
.mic-gross svg{width:42px;height:42px;stroke:var(--txt);fill:none;stroke-width:1.9}
.mic-gross.an{background:var(--eiweiss);box-shadow:0 0 0 10px rgba(255,107,91,.18);animation:puls 1.2s ease-in-out infinite}.mic-gross.an svg{stroke:#fff}
@keyframes puls{50%{box-shadow:0 0 0 18px rgba(255,107,91,.08)}}
.pegel{width:70%;height:6px;border-radius:3px;background:#EEE;overflow:hidden}.pegel i{display:block;height:100%;width:0;background:var(--kh);transition:width .08s}
.dinfo{font-size:13px;color:#555;text-align:center;min-height:34px;padding:0 6px}
.diktat .btn{margin-top:0;width:auto;padding:10px 22px}
textarea{resize:vertical;font-size:16px}
.mahlzeit .kz{gap:6px}.mahlzeit .kc{min-width:0}
.dots.eng{gap:4px;font-size:10px;letter-spacing:-.3px}.dots.eng .m{gap:1px}.dots.eng .m i{width:6px;height:6px}.mahlzeit .mi{width:30px;height:30px;font-size:16px}.mahlzeit .kz{padding-left:8px}
.schnell3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.schnell3 .btn{margin:0;padding:12px 6px;font-size:15px}
.mchips{margin:6px 0 10px}.mchips button{font-size:14px;padding:8px 4px}
.legende{display:flex;gap:14px;font-size:12px;color:var(--grau);margin-top:4px}.legende i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.kz2{display:flex;gap:10px;margin-bottom:6px}.kz2>div{flex:1;background:var(--flaeche);border-radius:12px;padding:8px 10px}.kz2 small{display:block;color:var(--grau);font-size:12px}.kz2 b{font-size:20px}
.segment.zr{margin:10px 0 4px}.segment.zr button{padding:6px 4px;font-size:13px}
.hstatus{line-height:1.5}.punkt{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}.punkt.an{background:var(--kh)}.punkt.aus{background:#C7C7CC}
.hfort{margin-top:10px}.hfort .balken{height:10px;border-radius:6px;background:var(--flaeche);overflow:hidden}.hfort .balken i{display:block;height:100%;width:0;background:var(--gelb);transition:width .3s}.hfort .t{font-size:13px;color:var(--grau);margin-top:6px}
.anl{max-width:680px;margin:0 auto;padding:18px 18px 60px;font:16px/1.55 -apple-system,system-ui,sans-serif;color:#1C1C1E}.anl h1{font-size:26px}.anl h2{margin-top:28px;font-size:20px}.anl code{background:#F6F6F8;padding:1px 5px;border-radius:5px;font-size:14px}.anl pre{background:#F6F6F8;padding:12px;border-radius:10px;overflow:auto;font-size:13px}.anl li{margin:6px 0}.anl .tipp{background:#FFF4B8;border-radius:12px;padding:10px 14px}
.mdt{border-collapse:collapse;width:100%;font-size:14px;margin:8px 0}.mdt td{border-bottom:1px solid #ECECEF;padding:6px 4px}.mdt tr:first-child td{font-weight:600}
/* v12: Bewertung, Trinken, Übersicht unten */
.amp{display:inline-block;width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:var(--gelb)}.amp.gruen{background:var(--kh)}.amp.rot{background:var(--eiweiss)}.amp.gross{width:34px;height:34px}
.mfuss{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px 8px 12px;border-top:1px solid var(--linie)}
.mini-btn{border:0;background:var(--gelb-hell);color:#7A5C00;font-weight:600;font-size:12.5px;border-radius:999px;padding:6px 11px;white-space:nowrap}
.mbew{border:0;background:none;display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--grau);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;text-align:left}
#unten{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.abschluss{padding:12px 14px}.ab-kopf{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.ab-kopf b{font-size:16px}.grau{color:var(--grau);font-size:12.5px}
.trink{display:flex;align-items:center;gap:6px}.trink .tl{font-size:13.5px;font-weight:600;white-space:nowrap}
.tchips{display:flex;gap:4px;flex:1}.tchips button{flex:1;border:1px solid var(--linie);background:#fff;border-radius:10px;padding:7px 0;font-size:13.5px;font-weight:600;color:var(--txt);min-width:0}.tchips button.an{background:#E3F2FF;border-color:#7CC0FF;color:#0A6CC2}
.bew-btn{margin:10px 0 0;padding:11px}.bew-kurz{display:flex;align-items:center;gap:10px;width:100%;border:0;background:var(--flaeche);border-radius:12px;padding:9px 10px;margin-top:10px;text-align:left;color:var(--txt)}
.bew-kurz span{flex:1;min-width:0}.bew-kurz b{font-size:14px;display:block}.bew-kurz small{display:block;color:var(--grau);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bew-kurz .chev{width:16px;height:16px;stroke:var(--grau);fill:none;stroke-width:2}
.unten2{display:grid;grid-template-columns:1fr 1.25fr;gap:0;padding:0;min-height:112px}.unten2>div{padding:10px 12px}.unten2 .woche{border-left:1px solid var(--linie)}
.gk{display:flex;justify-content:space-between;align-items:center;font-size:13.5px}.seg7{display:flex;background:var(--flaeche);border-radius:8px;padding:2px}.seg7 button{border:0;background:none;font-size:11px;padding:2px 6px;border-radius:6px;color:var(--grau);font-weight:600}.seg7 button.an{background:#fff;color:var(--txt);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.gw{display:flex;align-items:baseline;gap:4px;margin:4px 0 0}.gw b{font-size:22px}.gw span{font-size:12px;color:var(--grau)}.gw em{font-style:normal;font-size:12.5px;font-weight:700;margin-left:auto}.gw em.runter{color:var(--kh)}.gw em.rauf{color:var(--eiweiss)}
.spark{width:100%;height:38px;display:block;margin-top:2px}.klein-t{font-size:12px;margin-top:10px}
.wbars{display:flex;gap:4px;margin-top:6px;height:84px}.wtag{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer}
.wsaeule{position:relative;flex:1;width:100%;max-width:18px;background:var(--flaeche);border-radius:5px;overflow:hidden}.wsaeule .b{position:absolute;left:0;right:0;bottom:0;border-radius:5px;background:#D1D1D6}.wsaeule .b.gruen{background:var(--kh)}.wsaeule .b.gelb{background:var(--gelb)}.wsaeule .b.rot{background:var(--eiweiss)}
.wsaeule .ziel{position:absolute;left:0;right:0;height:1.5px;background:rgba(0,0,0,.25);z-index:1}
.wdrop{font-size:9px;line-height:11px;height:11px;color:#C7C7CC;filter:grayscale(1) opacity(.5)}.wdrop.voll{filter:none}.wdrop.halb{filter:saturate(.4)}
.wbew{height:7px;line-height:0}.wbew .amp{width:6px;height:6px}.wl{font-size:10.5px;color:var(--grau);font-weight:600}.wtag.akt .wl{color:var(--txt)}.wtag.akt .wsaeule{outline:2px solid var(--gelb);outline-offset:1px}
.bew-kopf{display:flex;gap:12px;align-items:center}.bew-kopf h2{margin:2px 0 0}.bew-kopf small{color:var(--grau)}.bew-fazit{font-weight:600;margin:12px 0 4px}
.bew-teil{background:var(--flaeche);border-radius:12px;padding:10px 12px;margin-top:8px}.bew-teil p{margin:4px 0 0;font-size:14.5px;line-height:1.45}.bew-teil.tipp{background:var(--gelb-hell)}
.abschluss{padding:10px 12px}.ab-kopf{align-items:center;margin-bottom:6px}.tchips button{padding:6px 0}.bew-kurz{padding:7px 10px;margin-top:8px}
#unten{gap:8px;margin-top:8px}.unten2{min-height:0}.unten2>div{padding:8px 12px}.wbars{height:72px}.gw b{font-size:20px}.spark{height:34px}

/* Spritzen */
.sp-next{margin-top:10px;background:#FFF8D6;border:1px solid #FFE680;border-radius:12px;padding:8px 10px;font-size:14px}.sp-next small{display:block;color:var(--grau);font-size:11.5px;margin-top:2px}
.sp-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.sp-chips button{border:1px solid var(--linie);background:#fff;border-radius:12px;padding:8px 4px;font:inherit;font-size:13.5px;color:var(--txt);line-height:1.15}
.sp-chips button small{display:block;font-size:10.5px;color:var(--grau)}.sp-chips button.an{background:#FFF4B8;border-color:#FFD400;box-shadow:inset 0 0 0 1px #FFD400}
.sp-dosis{display:flex;gap:5px;flex-wrap:wrap}.sp-dosis button{flex:1 0 15%;border:1px solid var(--linie);background:#fff;border-radius:10px;padding:8px 0;font:inherit;font-size:14px;font-weight:600;color:var(--txt)}.sp-dosis button.an{background:#FFF4B8;border-color:#FFD400}
.sp-liste .zeile{padding:9px 2px}.sp-liste .zeile b{font-size:14.5px}.sp-liste .zeile small{font-size:12px}
.sp-zeile{font-size:12px;color:#555;text-align:center;padding:2px 8px 0;margin-top:-6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.sp-mehr{padding:2px 12px}.sp-mehr .zeile{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;font:inherit;color:var(--txt);padding:12px 0;border-bottom:1px solid var(--linie);text-align:left}.sp-mehr .zeile:last-child{border-bottom:0}.sp-mehr .zeile b{flex:1;font-weight:600}
.sp-mehr .chev,.sp-liste .chev{width:18px;height:18px;fill:none;stroke:#BBB;stroke-width:2}

/* ---------- Dunkelmodus ---------- */
:root[data-theme=dunkel]{color-scheme:dark;--gelb-hell:#3A3110;--gelb-txt:#FFD400;--txt:#F2F2F7;--grau:#9A9AA0;--linie:#2C2C2E;--bg:#000000;--karte:#1C1C1E;--flaeche:#2C2C2E}
[data-theme=dunkel] .karte{box-shadow:none}
[data-theme=dunkel] .aktion .weiss,[data-theme=dunkel] input,[data-theme=dunkel] select,[data-theme=dunkel] textarea,[data-theme=dunkel] .sheet-box,[data-theme=dunkel] .tchips button,[data-theme=dunkel] .sp-dosis button{background:#1C1C1E;color:var(--txt)}
[data-theme=dunkel] input,[data-theme=dunkel] select,[data-theme=dunkel] textarea{border-color:#3A3A3C}
[data-theme=dunkel] .sheet-box{background:#1C1C1E}
[data-theme=dunkel] .segment button{color:#C7C7CC}[data-theme=dunkel] .segment button.an{background:#48484A;color:#fff}
[data-theme=dunkel] .ring .mitte span,[data-theme=dunkel] .spruch,[data-theme=dunkel] .chip{color:#C7C7CC}
[data-theme=dunkel] .makro .bar{background:#2C2C2E}
[data-theme=dunkel] .tag,[data-theme=dunkel] .eg-kopf small,[data-theme=dunkel] .nwt th,[data-theme=dunkel] .anz,[data-theme=dunkel] .mini-btn,[data-theme=dunkel] .nw2 span,[data-theme=dunkel] .gschnell button,[data-theme=dunkel] .hinweis{color:#FFE680}
[data-theme=dunkel] .tag.rz,[data-theme=dunkel] .warnbox{background:#4A1E1A;color:#FFB4AA}
[data-theme=dunkel] .zeile.unbekannt{background:#3A1A16}
[data-theme=dunkel] .nwt td,[data-theme=dunkel] .nw2 div{border-color:rgba(255,255,255,.1)}
[data-theme=dunkel] .toast{background:#3A3A3C}
[data-theme=dunkel] .sheet-bg{background:rgba(0,0,0,.6)}
[data-theme=dunkel] .sp-next{background:#2A2410;border-color:#5C4A00}
[data-theme=dunkel] .sp-chips button.an{background:#3A3110}
[data-theme=dunkel] .wsaeule .b{background:#48484A}
[data-theme=dunkel] .tabs{background:rgba(28,28,30,.94);border-color:#2C2C2E}
[data-theme=dunkel] .anl{color:var(--txt)}[data-theme=dunkel] .anl code{background:#2C2C2E}
[data-theme=dunkel] [style*="background:#FFF4B8"]{background:#3A3110!important}
[data-theme=dunkel] [style*="background:#FFE3DF"]{background:#3F201C!important}
[data-theme=dunkel] [style*="background:#EDE6FF"]{background:#2A2340!important}
[data-theme=dunkel] [style*="background:#DDF6F3"]{background:#123532!important}
[data-theme=dunkel] [style*="background:#E8F7EE"]{background:#163222!important}
[data-theme=dunkel] svg [stroke="#EEE"],[data-theme=dunkel] svg [stroke="#DDD"]{stroke:#3A3A3C}
[data-theme=dunkel] svg [fill="#999"]{fill:#9A9AA0}
[data-theme=dunkel] svg [stroke="#FFF1A8"]{stroke:#3A3110}
[data-theme=dunkel] svg [fill="#FFF4B8"]{fill:#5C4A00}
[data-theme=dunkel] svg [stroke="#fff"]{stroke:#1C1C1E}
[data-theme=dunkel] svg [stroke="#B9B9B9"]{stroke:#8E8E93}

[data-theme=dunkel] .chip,[data-theme=dunkel] .liste .zeile .kc,[data-theme=dunkel] .zutaten .g,[data-theme=dunkel] .kopf.kompakt .datum,[data-theme=dunkel] .laden,[data-theme=dunkel] .dinfo,[data-theme=dunkel] .sp-zeile,[data-theme=dunkel] .tabs button,[data-theme=dunkel] .hero .spruch,[data-theme=dunkel] .makro .wert,[data-theme=dunkel] .mahlzeit .kc,[data-theme=dunkel] .ring.klein .mitte span,[data-theme=dunkel] .dots{color:#C7C7CC}
[data-theme=dunkel] .mm .bar,[data-theme=dunkel] .pegel,[data-theme=dunkel] .grip{background:#3A3A3C}
[data-theme=dunkel] .seg7 button.an{background:#48484A;color:#fff}[data-theme=dunkel] .sp-chips button{background:#1C1C1E;color:var(--txt)}[data-theme=dunkel] .sp-chips button.an{background:#3A3110}

.spin{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:7px;vertical-align:-2px;animation:dreh .7s linear infinite}@keyframes dreh{to{transform:rotate(360deg)}}
button:disabled{opacity:.75}
.mfuss .sp{flex:1}.mini-btn.grau{background:var(--flaeche);color:var(--txt);margin-right:6px}.mini-btn.rot{background:#FFE3DF;color:#B23A2C}.mini-btn.rot:disabled{opacity:.45}
.mfuss.auswahl{gap:6px;justify-content:flex-end}
.eintrag .cb{width:22px;height:22px;margin:0 2px 0 8px;accent-color:#E0A800;flex:none}
.toast .undo{border:0;background:none;color:var(--gelb);font:inherit;font-weight:700;margin-left:10px;padding:0}
[data-theme=dunkel] .mini-btn.rot{background:#4A1E1A;color:#FFB4AA}

/* v24: Wochenkarte */
.unten2.einzeln{grid-template-columns:1fr}.unten2.einzeln .gmini{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 14px}.unten2.einzeln .gk{grid-column:1/-1}
.wk2{padding:10px 14px;cursor:pointer;margin-top:8px}.wk2-kopf{display:flex;align-items:baseline;gap:8px}.wk2-kopf>b{font-size:15px}.wk2-kopf span{flex:1;text-align:right;font-size:12px;color:var(--grau)}.wk2-kopf span b{color:var(--txt)}.wk2-kopf .chev{width:16px;height:16px;align-self:center}
.wk2 em,.wk2-liste em{font-style:normal;font-weight:600}.unter{color:var(--kh)}.ueber{color:var(--eiweiss)}
.wk2-saeulen{display:flex;gap:6px;height:96px;margin-top:6px}.wk2-tag{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.wk2-tag small{font-size:9.5px;color:var(--grau);height:12px}
.wk2-s{position:relative;flex:1;width:100%;max-width:26px;background:var(--flaeche);border-radius:6px;overflow:hidden}.wk2-s .b{position:absolute;left:0;right:0;bottom:0;border-radius:6px}
.wk2-s .z{position:absolute;left:-2px;right:-2px;border-top:2px dashed var(--txt);opacity:.45;z-index:1}
.wk2 .gruen{background:var(--kh)}.wk2 .gelb{background:var(--gelb)}.wk2 .rot{background:var(--eiweiss)}.wk2 .heute{background:repeating-linear-gradient(45deg,#C7C7CC 0 4px,#E5E5EA 4px 8px)}
:root[data-theme=dunkel] .wk2 .heute{background:repeating-linear-gradient(45deg,#48484A 0 4px,#636366 4px 8px)}
.wk2-tag span{font-size:11px;font-weight:600;color:var(--grau)}.wk2-tag.akt span{color:var(--txt)}.wk2-tag.akt .wk2-s{outline:2px solid var(--gelb);outline-offset:1px}
.wk2-leg{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:10.5px;color:var(--grau)}.wk2-leg i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:-1px}.wk2-leg .linie{width:12px;height:0;border-top:2px dashed var(--txt);opacity:.45;border-radius:0;background:none}
.wk2-liste{display:flex;flex-direction:column}.wk2-liste button{display:grid;grid-template-columns:1fr auto;gap:2px 8px;text-align:left;background:none;border:0;border-bottom:1px solid var(--linie);padding:10px 2px;color:var(--txt);font-size:14px}.wk2-liste small{grid-column:1/-1;color:var(--grau);font-size:12px}.wk2-liste .amp{width:8px;height:8px}
