:root{--hintergrund: #faf7f0;--flaeche: #ffffff;--flaeche-2: #f3eee3;--text: #1f1a12;--text-2: #4d4536;--gedimmt: #7a6f5c;--rand: #e6dfd0;--gold: #c8921a;--gold-hell: #e6b422;--gold-text: #8a5f06;--gold-weich: rgba(214, 160, 30, .14);--auf-gold: #1f1a12;--gruen: #23915a;--rot: #cf3d3d;--rot-weich: rgba(207, 61, 61, .1);--kopf-bg: rgba(250, 247, 240, .88);--schatten: 0 1px 2px rgba(40, 30, 10, .06), 0 6px 24px rgba(40, 30, 10, .08);--radius: 12px;--kopf-hoehe: 60px;color-scheme:light}@media (prefers-color-scheme: dark){:root{--hintergrund: #13110d;--flaeche: #1d1a14;--flaeche-2: #26221a;--text: #f1ead9;--text-2: #d6ccb6;--gedimmt: #a39880;--rand: #352f24;--gold: #e0ab2e;--gold-hell: #f2c14e;--gold-text: #f2c14e;--gold-weich: rgba(242, 193, 78, .13);--gruen: #3fbf7a;--rot: #ef5d5d;--rot-weich: rgba(239, 93, 93, .12);--kopf-bg: rgba(19, 17, 13, .88);--schatten: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 28px rgba(0, 0, 0, .35);color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--hintergrund);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2{margin:0;line-height:1.2}h1{font-size:1.6rem;font-weight:700}h2{font-size:1.1rem;font-weight:650}p{margin:0 0 .75em}a{color:var(--gold-text)}code{background:var(--flaeche-2);padding:1px 5px;border-radius:5px;font-size:.9em}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.gedimmt{color:var(--gedimmt)}.klein{font-size:.87rem}.gold{color:var(--gold-text)}.plus{color:var(--gruen)}.minus{color:var(--rot)}.nowrap{white-space:nowrap}input,select,textarea{font:inherit;color:var(--text);background:var(--flaeche);border:1px solid var(--rand);border-radius:10px;padding:10px 12px;min-height:44px;width:100%;outline:none;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-weich)}input[type=number]::-webkit-inner-spin-button{opacity:1}.feld{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.feld-label{font-size:.85rem;font-weight:600;color:var(--text-2)}.feld-hinweis{font-size:.8rem;color:var(--gedimmt)}.betrag-eingabe{position:relative;display:flex;align-items:center}.betrag-eingabe input{padding-right:34px;text-align:right;font-variant-numeric:tabular-nums}.betrag-eingabe span{position:absolute;right:12px;color:var(--gedimmt);pointer-events:none}.menge-gross{font-size:1.2rem;font-weight:600}.zeile{display:flex;gap:8px;align-items:center}.zeile input{flex:1;min-width:0}.raster-2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.knopf{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--rand);background:var(--flaeche);color:var(--text);font:inherit;font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .15s,border-color .15s,transform .05s}.knopf:hover{border-color:var(--gold)}.knopf:active{transform:translateY(1px)}.knopf:disabled{opacity:.55;cursor:default}.knopf.primaer{background:linear-gradient(180deg,var(--gold-hell),var(--gold));border-color:var(--gold);color:var(--auf-gold)}.knopf.primaer:hover{filter:brightness(1.05)}.knopf.gefahr{background:var(--rot);border-color:var(--rot);color:#fff}.knopf.geist{background:transparent;border-color:transparent;color:var(--text-2)}.knopf.geist:hover{background:var(--flaeche-2)}.knopf.klein{min-height:34px;padding:0 12px;font-size:.88rem}.knopf.breit{width:100%}.icon-knopf{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:none;background:transparent;color:var(--text-2);cursor:pointer;flex-shrink:0}.icon-knopf:hover{background:var(--flaeche-2);color:var(--text)}.icon-knopf.gefahr:hover{color:var(--rot);background:var(--rot-weich)}.link-knopf{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--text);cursor:pointer;text-align:left}.link-knopf:hover{color:var(--gold-text);text-decoration:underline}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.app{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"kopf kopf" "nav inhalt"}.kopf{grid-area:kopf;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--kopf-hoehe);padding:8px 20px;padding-top:calc(8px + env(safe-area-inset-top));background:var(--kopf-bg);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--rand)}.marke{display:flex;align-items:center;gap:10px;font-size:1.3rem;font-weight:800;letter-spacing:.02em;color:var(--text);text-decoration:none}.logo{display:block;flex-shrink:0}.navigation{grid-area:nav;position:sticky;top:var(--kopf-hoehe);align-self:start;display:flex;flex-direction:column;gap:4px;padding:20px 12px}.navigation a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;color:var(--text-2);text-decoration:none;font-weight:550}.navigation a:hover{background:var(--flaeche-2)}.navigation a.aktiv{background:var(--gold-weich);color:var(--gold-text)}.inhalt{grid-area:inhalt;padding:24px 28px 48px;max-width:1240px;width:100%}.seiten-kopf{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.werkzeuge{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.werkzeuge>*{flex:1 1 200px}.werkzeuge select{flex:0 1 220px}.suchfeld{position:relative;display:flex;align-items:center}.suchfeld svg{position:absolute;left:12px;color:var(--gedimmt);pointer-events:none}.suchfeld input{padding-left:38px}.tabellen-rahmen{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);overflow-x:auto;box-shadow:var(--schatten)}.tabelle{width:100%;border-collapse:collapse}.tabelle th,.tabelle td{padding:10px 12px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--rand)}.tabelle tbody tr:last-child td{border-bottom:none}.tabelle tbody tr:hover{background:var(--flaeche-2)}.tabelle th{font-size:.78rem;font-weight:650;text-transform:uppercase;letter-spacing:.04em;color:var(--gedimmt);background:var(--flaeche);white-space:nowrap}.tabelle .rechts{text-align:right}.tabelle .mitte{text-align:center}.tabelle .zahl{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tabelle .stark{font-weight:650}.tabelle .spalte-bild{width:56px;padding-right:0}.tabelle .notiz{max-width:260px;overflow:hidden;text-overflow:ellipsis}.sort-knopf{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.sort-knopf:hover,.sort-knopf.aktiv{color:var(--text)}.sort-pfeil{font-size:.7rem;opacity:.6}.aktionen{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}.etikett{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:99px;font-size:.72rem;font-weight:600;background:var(--flaeche-2);color:var(--gedimmt);vertical-align:middle}.art{display:inline-block;padding:2px 9px;border-radius:99px;font-size:.8rem;font-weight:600;background:var(--flaeche-2);color:var(--text-2)}.art-verkauf,.art-einzahlung{background:#23915a21;color:var(--gruen)}.art-bau,.art-auszahlung{background:var(--rot-weich);color:var(--rot)}.ist-storniert td:not(:last-child),.ist-storniert .karte-text{opacity:.55;text-decoration:line-through}.ampel{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0}.ampel.gruen{background:var(--gruen);box-shadow:0 0 0 3px #23915a2e}.ampel.rot{background:var(--rot);box-shadow:0 0 0 3px var(--rot-weich)}.vorschaubild{display:block;border-radius:8px;object-fit:cover;background:var(--flaeche-2);flex-shrink:0}.vorschaubild.platzhalter{display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--gold-text);background:var(--gold-weich)}.bild-knopf{display:block;padding:0;border:none;border-radius:8px;background:none;cursor:zoom-in;flex-shrink:0}.bild-knopf:hover .vorschaubild{filter:brightness(1.08);box-shadow:0 0 0 2px var(--gold)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:calc(56px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom));background:#080603eb;cursor:zoom-out;animation:einblenden .15s ease-out}.lightbox img{max-width:100%;max-height:calc(100dvh - 150px);object-fit:contain;border-radius:10px;box-shadow:0 20px 60px #00000080;opacity:0;transition:opacity .2s}.lightbox img.geladen{opacity:1}.lightbox .spinner{position:absolute;top:50%;left:50%;margin:-11px 0 0 -11px}.lightbox-zu{position:absolute;top:calc(10px + env(safe-area-inset-top));right:12px;color:#fff;background:#ffffff24}.lightbox-zu:hover{color:#fff;background:#ffffff3d}.lightbox-titel{color:#f1ead9;font-weight:600;text-align:center}.karten{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.karte{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:12px;box-shadow:var(--schatten)}.karte-oben{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.karte-text{flex:1;min-width:0;cursor:pointer}.karte-titel{display:flex;align-items:center;justify-content:space-between;gap:10px}.karte-titel strong:first-child{overflow:hidden;text-overflow:ellipsis}.karte .aktionen{display:flex;margin-top:10px}.karte .aktionen .knopf{flex:1;min-height:44px;font-size:.95rem}.karte-zeile{display:flex;align-items:center;gap:8px}.karte-rechts{flex-shrink:0}.konto-karte{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:20px 22px;margin-bottom:26px;border-radius:16px;background:linear-gradient(135deg,var(--gold-weich),transparent 70%),var(--flaeche);border:1px solid var(--rand);box-shadow:var(--schatten)}.konto-betrag{font-size:2.2rem;font-weight:800;color:var(--gold-text);font-variant-numeric:tabular-nums;line-height:1.15;margin:2px 0 4px}.konto-betrag.negativ{color:var(--rot)}.konto-knoepfe{display:flex;gap:10px;flex-wrap:wrap}.abschnitt{margin-bottom:12px}.mehr-laden{display:flex;justify-content:center;margin-top:14px}.einstellungen-raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.block{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:18px;margin-bottom:16px;box-shadow:var(--schatten)}.block h2{margin-bottom:12px}.typ-liste{list-style:none;margin:0 0 12px;padding:0}.typ-liste li{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--rand)}.typ-liste li:last-child{border-bottom:none}.typ-liste .zeile{flex:1;padding:4px 0}.typ-name{flex:1;font-weight:550}.menue{z-index:60;min-width:170px;padding:6px;background:var(--flaeche);border:1px solid var(--rand);border-radius:12px;box-shadow:var(--schatten);display:flex;flex-direction:column}.menue button{text-align:left;padding:10px 12px;border:none;background:none;border-radius:8px;font:inherit;color:var(--text);cursor:pointer}.menue button:hover,.menue button:focus-visible{background:var(--flaeche-2);outline:none}.menue button.gefahr{color:var(--rot)}.modal-hintergrund{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:#0a08048c;animation:einblenden .15s ease-out}.modal{width:100%;max-width:460px;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;background:var(--flaeche);border-radius:16px;box-shadow:0 20px 60px #00000059;animation:hochgleiten .18s ease-out}.modal-breit{max-width:640px}.modal-form{display:flex;flex-direction:column;min-height:0;flex:1}.modal-kopf{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px 20px}.modal-inhalt{padding:4px 20px 12px;overflow-y:auto;flex:1}.modal-fuss{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--rand)}@keyframes einblenden{0%{opacity:0}}@keyframes hochgleiten{0%{transform:translateY(12px);opacity:0}}.warnung,.hinweis{padding:10px 14px;border-radius:10px;margin:10px 0;font-size:.92rem}.warnung{background:var(--rot-weich);color:var(--rot);border:1px solid color-mix(in srgb,var(--rot) 30%,transparent)}.warnung ul{margin:6px 0 0;padding-left:20px}.hinweis{background:var(--gold-weich);color:var(--gold-text)}.fehler-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:0;margin-bottom:16px}.bild-zeile{display:flex;align-items:center;gap:16px;margin-bottom:16px}.bild-vorschau{width:84px;height:84px;padding:0;border:none;border-radius:12px;background:var(--flaeche-2);display:flex;align-items:center;justify-content:center;color:var(--gedimmt);overflow:hidden;flex-shrink:0}button.bild-vorschau{cursor:zoom-in}.bild-vorschau img{width:100%;height:100%;object-fit:cover}.bild-knoepfe{display:flex;flex-wrap:wrap;gap:6px}.segment{display:flex;padding:4px;gap:4px;border-radius:12px;background:var(--flaeche-2)}.segment button{flex:1;min-height:38px;border:none;border-radius:9px;background:transparent;font:inherit;font-weight:600;color:var(--text-2);cursor:pointer}.segment button.aktiv{background:var(--flaeche);color:var(--text);box-shadow:0 1px 3px #0000001f}.marge-zeile{display:flex;gap:8px}.marge-zeile .segment{flex:0 0 auto;padding:3px}.marge-zeile .segment button{min-width:44px;padding:0 12px}.marge-zeile .betrag-eingabe{flex:1;min-width:0}.stueckliste{margin-bottom:14px}.stueck-liste{list-style:none;margin:0 0 12px;padding:0;border:1px solid var(--rand);border-radius:12px}.stueck-liste li{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--rand)}.stueck-liste li:last-child{border-bottom:none}.stueck-name{flex:1;min-width:0;display:flex;flex-direction:column;font-size:.92rem}.stueck-name span{font-size:.8rem}.menge-eingabe{width:72px;text-align:center;min-height:40px;padding:6px}.stueck-summe{width:86px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600;font-size:.92rem}.picker{border:1px dashed var(--rand);border-radius:12px;padding:12px}.picker-kopf .werkzeuge{margin:8px 0 10px}.picker-liste{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto}.picker-liste button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:6px 10px;border:none;border-radius:8px;background:none;font:inherit;color:var(--text);text-align:left;cursor:pointer}.picker-liste button:hover{background:var(--gold-weich)}.picker-liste svg{color:var(--gold-text);flex-shrink:0}.picker-name{flex:1;min-width:0;font-weight:550}.picker-preis{font-variant-numeric:tabular-nums;font-weight:600}.rechnung{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 14px;margin-bottom:14px;border-radius:12px;background:var(--flaeche-2)}.rechnung div{display:flex;flex-direction:column;font-size:.85rem}.rechnung strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.leer{text-align:center;padding:48px 20px;border:1px dashed var(--rand);border-radius:var(--radius);background:var(--flaeche)}.leer-titel{font-size:1.1rem;font-weight:650;margin-bottom:6px}.leer .knopf{margin-top:10px}.laden{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:var(--gedimmt)}.spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--gold-weich);border-top-color:var(--gold);animation:drehen .8s linear infinite}@keyframes drehen{to{transform:rotate(360deg)}}.toasts{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(92vw,420px);pointer-events:none}.toast{pointer-events:auto;padding:11px 18px;border-radius:12px;background:#1f1a12;color:#f7ecd3;font-weight:550;box-shadow:0 10px 30px #0000004d;animation:hochgleiten .2s ease-out;cursor:pointer;text-align:center}.toast-ok{border-left:4px solid var(--gold-hell)}.toast-fehler{background:#b93333;color:#fff}.login{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 50% 0%,var(--gold-weich),transparent 60%),var(--hintergrund)}.login-karte{width:100%;max-width:380px;padding:28px 24px;background:var(--flaeche);border:1px solid var(--rand);border-radius:20px;box-shadow:var(--schatten)}.login-marke{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px;text-align:center}.login-marke h1{font-size:1.9rem;letter-spacing:.03em}.login-marke p{margin:0}.login .segment{margin-bottom:18px}.login ol{padding-left:20px}@media (max-width: 760px){body{font-size:16px}.app{grid-template-columns:minmax(0,1fr);grid-template-areas:"kopf" "inhalt"}.kopf{padding-left:16px;padding-right:16px}.marke{font-size:1.15rem}.navigation{position:fixed;top:auto;left:0;right:0;bottom:0;z-index:30;flex-direction:row;gap:0;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:var(--flaeche);border-top:1px solid var(--rand)}.navigation a{flex:1;flex-direction:column;gap:2px;padding:6px 2px;font-size:.7rem;text-align:center}.navigation a.aktiv{background:none}.navigation a.aktiv svg{background:var(--gold-weich);border-radius:99px;padding:2px 14px;width:52px;height:28px}.inhalt{padding:16px 16px calc(96px + env(safe-area-inset-bottom))}h1{font-size:1.4rem}.werkzeuge>*,.werkzeuge select{flex:1 1 140px}.raster-2{grid-template-columns:1fr}.modal-hintergrund{align-items:flex-end;padding:0}.modal,.modal-breit{max-width:none;max-height:94dvh;border-radius:18px 18px 0 0}.modal-fuss{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.modal-fuss .knopf{flex:1}.toasts{bottom:calc(84px + env(safe-area-inset-bottom))}.konto-betrag{font-size:1.9rem}.konto-knoepfe{width:100%}.konto-knoepfe .knopf{flex:1}.stueck-summe{width:70px}.menge-eingabe{width:60px}.rechnung strong{font-size:.98rem}}
