:root{--tinte: #10243a;--tinte-leise: #5a6b7d;--flaeche: #ffffff;--grund: #f4f6f8;--linie: #dde3e9;--marke: #1a3a5c;--marke-hell: #2d5c8f;--warnung: #8a4b00;--warnung-grund: #fff4e5;--fehler: #9b1c1c;--fehler-grund: #fdecec;--gut: #1a6b3c;--gut-grund: #eaf6ef;--tippmass: 44px;--rand: 16px;--rundung: 10px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--grund);color:var(--tinte);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%}.rahmen{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.kopf{background:var(--marke);color:#fff;padding:calc(var(--rand) * .75) var(--rand);padding-top:max(calc(var(--rand) * .75),env(safe-area-inset-top));display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:10}.kopf h1{font-size:1.1rem;margin:0;font-weight:600;letter-spacing:.01em}.inhalt{flex:1;padding:var(--rand);padding-bottom:calc(var(--tippmass) + var(--rand) * 3);max-width:900px;width:100%;margin:0 auto}button,.knopf{min-height:var(--tippmass);min-width:var(--tippmass);padding:10px 16px;font-size:1rem;font-family:inherit;border:1px solid var(--linie);border-radius:var(--rundung);background:var(--flaeche);color:var(--tinte);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}button:active,.knopf:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}button.haupt{background:var(--marke);border-color:var(--marke);color:#fff;font-weight:600}button.leise{background:transparent;border-color:transparent;color:#fff}input,select{min-height:var(--tippmass);width:100%;padding:10px 12px;font-size:16px;font-family:inherit;border:1px solid var(--linie);border-radius:var(--rundung);background:var(--flaeche);color:var(--tinte)}label{display:block;font-size:.875rem;color:var(--tinte-leise);margin-bottom:4px}.feld{margin-bottom:14px}.meldung{padding:12px 14px;border-radius:var(--rundung);margin-bottom:var(--rand);font-size:.9375rem}.meldung.fehler{background:var(--fehler-grund);color:var(--fehler);border:1px solid #f3c5c5}.meldung.hinweis{background:var(--warnung-grund);color:var(--warnung);border:1px solid #f0dcb8}.meldung.gut{background:var(--gut-grund);color:var(--gut);border:1px solid #bfe3cd}.karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rundung);padding:var(--rand);margin-bottom:12px}.liste{list-style:none;margin:0;padding:0}.zeile{display:block;width:100%;text-align:left;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rundung);padding:12px 14px;margin-bottom:8px;min-height:var(--tippmass)}.zeile .name{font-weight:600;word-break:break-word;display:block;margin-bottom:4px}.zeile .zusatz{font-size:.8125rem;color:var(--tinte-leise);display:flex;flex-wrap:wrap;gap:4px 10px}.weg{display:inline-block;padding:1px 7px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--linie);background:var(--grund)}.weg.scanner{background:#eef4fb;color:var(--marke-hell);border-color:#cfe0f2}.weg.email{background:#f3eefb;color:#5b3a8f;border-color:#ddd0f2}.weg.upload{background:var(--gut-grund);color:var(--gut);border-color:#bfe3cd}.baum-jahr{margin-bottom:10px}.baum-jahr>button{width:100%;justify-content:space-between;font-weight:600}.monate{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.monat{flex-direction:column;gap:2px;padding:8px 4px;font-size:.8125rem}.monat.leer{color:var(--tinte-leise);background:var(--grund)}.monat .anzahl{font-weight:700;font-size:1rem}.ansicht{width:100%;height:70vh;height:70dvh;border:1px solid var(--linie);border-radius:var(--rundung);background:var(--flaeche)}.bild-ansicht{width:100%;height:auto;border-radius:var(--rundung);border:1px solid var(--linie);background:var(--flaeche)}.angaben{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:.9375rem;margin:0}.angaben dt{color:var(--tinte-leise);white-space:nowrap}.angaben dd{margin:0;word-break:break-word}.angaben dd.leer{color:var(--tinte-leise);font-style:italic}.hash{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.75rem;word-break:break-all}.kette{list-style:none;margin:0;padding:0;font-size:.875rem}.kette li{padding:8px 0;border-bottom:1px solid var(--linie)}.kette li:last-child{border-bottom:none}.kette .zeit{color:var(--tinte-leise);font-size:.8125rem}.leiste{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--flaeche);border-top:1px solid var(--linie);padding-bottom:env(safe-area-inset-bottom);z-index:10}.leiste button{flex:1;border:none;border-radius:0;flex-direction:column;gap:2px;font-size:.75rem;padding:8px 4px;min-height:calc(var(--tippmass) + 8px);color:var(--tinte-leise)}.leiste button.aktiv{color:var(--marke);font-weight:600;box-shadow:inset 0 2px 0 var(--marke)}.leiste .zeichen{font-size:1.25rem;line-height:1}.ablegen{border:2px dashed var(--linie);border-radius:var(--rundung);padding:28px var(--rand);text-align:center;background:var(--flaeche)}.ablegen.bereit{border-color:var(--marke);background:#eef4fb}.leer-hinweis{text-align:center;color:var(--tinte-leise);padding:32px var(--rand)}.lade{text-align:center;color:var(--tinte-leise);padding:24px}.kopfzeile{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.kopfzeile h2{font-size:1.0625rem;margin:0}.blaettern{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:var(--rand)}@media (min-width: 640px){:root{--rand: 24px}.kopf h1{font-size:1.25rem}.monate{grid-template-columns:repeat(6,1fr)}.leiste{position:static;border-top:none;border-bottom:1px solid var(--linie);max-width:900px;margin:0 auto;border-radius:0 0 var(--rundung) var(--rundung)}.leiste button{flex-direction:row;font-size:.9375rem;padding:10px 16px}.inhalt{padding-bottom:var(--rand)}.ansicht{height:78vh}}.kopfrechts{display:flex;align-items:center;gap:.75rem}.marke-rolle{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .5rem;border:1px solid var(--linie);border-radius:3px;color:var(--tinte-leise)}.verwaltung{display:flex;flex-direction:column;gap:1rem}.verwaltung .kopfzeile{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.verwaltung h2{margin:0;font-size:1.1rem}.verwaltung .zahl{color:var(--tinte-leise);font-weight:400;font-variant-numeric:tabular-nums}.verwaltung h3{margin:1rem 0 .4rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--tinte-leise)}.formular{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid var(--linie);border-radius:var(--rundung);background:var(--flaeche)}.formular label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.formular label.kasten{flex-direction:row;align-items:flex-start;gap:.6rem}.formular input[type=text],.formular input[type=email],.formular input[type=number],.formular input:not([type]),.formular select{font-size:16px;padding:.6rem;min-height:var(--tippmass);border:1px solid var(--linie);border-radius:4px;background:var(--grund);color:var(--tinte)}.formular input[type=checkbox]{width:22px;height:22px;margin-top:.1rem;flex-shrink:0}.kundenliste,.mandantenliste,.benutzerliste,.funktionen{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.kundenliste>li,.mandantenliste>li,.benutzerliste>li{border:1px solid var(--linie);border-radius:var(--rundung);background:var(--flaeche);overflow:hidden}.mandantenliste>li,.benutzerliste>li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.75rem;min-height:var(--tippmass)}.kundenliste>li.gesperrt,.mandantenliste>li.gesperrt,.benutzerliste>li.gesperrt{opacity:.55}.kundenliste .zeile{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;min-height:var(--tippmass);padding:.75rem;background:none;border:none;text-align:left;cursor:pointer;color:inherit}.verwaltung .name{font-weight:600}.mandantenliste .nummer{font-variant-numeric:tabular-nums;color:var(--tinte-leise);min-width:3.5rem}.aufgeklappt{padding:0 .75rem 1rem;border-top:1px solid var(--linie)}.funktionen li label{display:flex;align-items:flex-start;gap:.6rem;min-height:var(--tippmass);padding:.3rem 0;font-size:.9rem;cursor:pointer}.funktionen input[type=checkbox]{width:22px;height:22px;margin-top:.15rem;flex-shrink:0}.knopfreihe{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.knopfreihe input[type=number]{font-size:16px;padding:.5rem;min-height:var(--tippmass);width:6rem;border:1px solid var(--linie);border-radius:4px;background:var(--grund);color:var(--tinte)}button.warnung{border-color:var(--fehler);color:var(--fehler)}.einmalkennwort{display:flex;flex-direction:column;gap:.5rem}.einmalkennwort .paare{display:grid;grid-template-columns:auto 1fr;gap:.3rem .75rem;margin:.5rem 0}.einmalkennwort dt{color:var(--tinte-leise);font-size:.85rem}.einmalkennwort dd{margin:0}.auswaehlbar{-webkit-user-select:all;user-select:all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}.auswaehlbar.gross{font-size:1.15rem;font-weight:600;letter-spacing:.03em}.klein.hinweis{margin-top:1rem;padding:.6rem;border-left:3px solid var(--marke);color:var(--tinte-leise)}.klein.warnung{color:var(--fehler)}@media (min-width: 640px){.mandantenliste,.benutzerliste{gap:.25rem}.funktionen{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:0}}
