/* Kanzlei-Portal · gleiche Anmutung wie der Autopilot (Lead-Software): blaugrauer Grund, weiße Karten, Schrift Geist, nur hell. */
@font-face{font-family:"Geist";font-style:normal;font-weight:100 900;font-display:swap;src:url(/geist.woff2) format("woff2")}
:root{
  --bg:#F3F5F9;--fl:#FFFFFF;--fl2:#F7F9FC;--fl3:#EDF0F5;--linie:#E4E8EF;
  --text:#1B2028;--text2:#5B6572;--text3:#8B94A3;
  --akzent:#1F6FE5;--akzentFl:#E9F1FE;--balkenGrund:#EDF0F5;
  --gruen:#15803D;--gruenFl:#DCFCE7;--rot:#B91C1C;--rotFl:#FEE2E2;--gelb:#92400E;--gelbFl:#FEF3C7;
  --schatten:0 1px 2px rgba(16,24,40,.04),0 6px 20px rgba(16,24,40,.06);
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--akzent);text-decoration:none}
a:hover{text-decoration:underline}
h1{margin:0 0 4px;font-size:22px;font-weight:700;letter-spacing:-.01em}
h2{margin:0;font-size:15px;font-weight:650}
h2 a{color:var(--text)}
small{display:block;color:var(--text3);font-size:12px}
.leise{color:var(--text2)}
.klein{font-size:12.5px}
.mono{font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--text2);white-space:nowrap}
.betrag,.summe,.bw{font-variant-numeric:tabular-nums}

.kopf{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;padding:10px 24px;background:var(--fl);border-bottom:1px solid var(--linie)}
.marke{display:flex;align-items:center;gap:9px;color:var(--text);font-weight:700;font-size:15px}
.marke:hover{text-decoration:none}
.logo{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--akzent);color:#FFFFFF;font-size:12px;font-weight:700}
.logo.gross{width:44px;height:44px;border-radius:12px;font-size:16px;margin-bottom:10px}
.jahre{display:flex;gap:6px}
.wer{margin-left:auto;display:flex;align-items:center;gap:10px;color:var(--text2);font-size:13px}
.wer form{margin:0}
.link{border:0;background:none;padding:0;color:var(--akzent);font:inherit;cursor:pointer}

.haupt{max-width:1240px;margin:0 auto;padding:24px 24px 60px}
.seitenkopf{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.seitenkopf p{margin:4px 0 0}
.zurueck{margin:0 0 10px;font-size:13px}
.stand{margin:0 0 18px;font-size:13px}
.knoepfe{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.knopf,.knopf2,.knopf-klein{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:9px;font-size:13px;font-weight:600;white-space:nowrap}
.knopf{background:var(--akzent);color:#FFFFFF;border:1px solid var(--akzent)}
.knopf2{background:var(--fl);color:var(--text);border:1px solid var(--linie)}
.knopf-klein{height:28px;padding:0 10px;background:var(--fl);color:var(--text);border:1px solid var(--linie);font-weight:500;font-size:12.5px}
.knopf:hover,.knopf2:hover,.knopf-klein:hover{text-decoration:none;filter:brightness(.97)}
button.knopf{cursor:pointer;justify-content:center}
.chip{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:999px;border:1px solid var(--linie);background:var(--fl);color:var(--text2);font-size:12.5px;font-weight:600}
.chip.an{background:var(--akzentFl);border-color:#B8D0FA;color:var(--akzent)}
.chip:hover{text-decoration:none}

.karte{background:var(--fl);border:1px solid var(--linie);border-radius:14px;box-shadow:var(--schatten);padding:16px 18px}
.karte.breit{margin:0 0 18px}
.karte.breit h2{margin-bottom:12px}
.raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;margin:0 0 18px}
.karte-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.karte .summe{font-size:17px;font-weight:700;white-space:nowrap}
.karte .unter{margin:3px 0 10px;color:var(--text2);font-size:12.5px}
.karte .hinweis{margin:-4px 0 10px;color:var(--text2);font-size:12.5px}
.topf .knoepfe{margin-top:12px}
.topf.offen{border-color:#F3D9A4;background:#FFFDF7}
.topf.einnahmen{border-color:#BFE5CB}
.z{font-weight:600}
.z.neu{color:var(--akzent)}
.z.geaendert{color:var(--gelb)}
.z.geladen{color:var(--gruen)}

/* Balken: ein Farbton für Größe, Wert immer daneben, Balken links verankert */
.balken{display:flex;flex-direction:column;gap:7px}
.bz{display:grid;grid-template-columns:minmax(120px,230px) minmax(0,1fr) auto;align-items:center;gap:10px;font-size:13px}
.bn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.bn a{color:var(--text)}
.bb{height:10px;border-radius:0 4px 4px 0;background:var(--balkenGrund)}
.bf{display:block;height:10px;border-radius:0 4px 4px 0;background:var(--akzent)}
.bz:hover .bf{background:#1858B8}
.bw{min-width:96px;text-align:right;color:var(--text2);font-size:12.5px}

.uraster{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px;margin-top:16px}
.ukarte{padding:12px 14px;border:1px solid var(--linie);border-radius:11px;background:var(--fl2)}
.ukarte.an{border-color:var(--akzent);background:var(--akzentFl)}
.ukarte .uname{display:block;color:var(--text);font-weight:650}
.ukarte .summe{font-size:14px}
.ukarte .knoepfe{margin-top:8px}
.ukarte .knopf,.ukarte .knopf2{height:30px;padding:0 10px;font-size:12.5px}

.filter{display:flex;gap:6px;margin:0 0 8px}
.tabelle{width:100%;border-collapse:collapse;font-size:13px}
.tabelle th{padding:8px 10px;border-bottom:1px solid var(--linie);color:var(--text3);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:left}
.tabelle td{padding:9px 10px;border-bottom:1px solid var(--linie);vertical-align:top}
.tabelle tr:last-child td{border-bottom:0}
.tabelle .r{text-align:right}
.tabelle td.r .knopf2,.tabelle td.r .knopf-klein{margin-left:4px}
.tabelle .datum{white-space:nowrap;color:var(--text2);font-variant-numeric:tabular-nums}
.tabelle small.warn{color:var(--gelb)}
.tabelle tr.neu td:first-child{box-shadow:inset 3px 0 0 var(--akzent)}
.tabelle tr.geaendert td:first-child{box-shadow:inset 3px 0 0 #D97706}
.pille{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:600;white-space:nowrap}
.pille.neu{background:var(--akzentFl);color:var(--akzent)}
.pille.geladen{background:var(--gruenFl);color:var(--gruen)}
.pille.geaendert{background:var(--gelbFl);color:var(--gelb)}
.liste{margin:0;padding-left:18px}
.liste li{margin:4px 0}

.login{display:flex;flex-direction:column;gap:12px;max-width:380px;margin:12vh auto 0;padding:28px}
.login h1{font-size:20px}
.login p{margin:0}
.login label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:var(--text2)}
.login input{height:40px;padding:0 12px;border:1px solid var(--linie);border-radius:9px;font:inherit;font-size:14px;color:var(--text);background:var(--fl)}
.login input:focus{outline:2px solid var(--akzent);outline-offset:1px}
.login .knopf{height:40px;margin-top:4px}
.fehler{padding:8px 10px;border-radius:8px;background:var(--rotFl);color:var(--rot);font-size:13px}

@media (max-width:720px){
  .kopf{flex-wrap:wrap;padding:10px 16px}
  .haupt{padding:16px}
  .raster{grid-template-columns:1fr}
  .bz{grid-template-columns:minmax(90px,140px) minmax(0,1fr) auto}
  .tabelle{display:block;overflow-x:auto}
}
/* In den Topf-Karten: Name und Betrag oben, Balken darunter über die ganze Breite */
.topf .bz{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}
.topf .bn{grid-column:1;grid-row:1}
.topf .bw{grid-column:2;grid-row:1;min-width:0}
.topf .bb{grid-column:1/-1;grid-row:2;height:8px}
.topf .bf{height:8px}
.topf .balken{gap:10px}

/* Übersicht für Außenstehende (09.11.2026): Einleitung, drei Gruppen, Bereichstabelle */
.marke-zusatz{margin-left:6px;color:var(--text3);font-weight:500;font-size:13px}
.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:28px}
.intro h2{margin-bottom:8px}
.intro p{margin:0;color:var(--text2);line-height:1.55}
.intro ol{margin:0;padding-left:18px;color:var(--text2);line-height:1.5}
.intro li{margin:0 0 6px}
.intro li b{color:var(--text)}
.kacheln{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 18px}
.kachel{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:14px;border:1px solid var(--linie);background:var(--fl);box-shadow:var(--schatten);color:var(--text)}
.kachel:hover{text-decoration:none;border-color:#B8D0FA}
.kachel .kz{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.kachel .kt{color:var(--text2);font-size:13px;font-weight:600}
.kachel.fertig .kz{color:var(--gruen)}
.kachel.klaeren .kz{color:var(--gelb)}
.kachel.offen .kz{color:var(--text3)}
.gkopf{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.karte.breit .gkopf h2{margin-bottom:0}
.gtext{margin:4px 0 10px;font-size:13px}
.gruppe.fertig{border-top:3px solid var(--gruen)}
.gruppe.klaeren{border-top:3px solid #D97706;background:#FFFDF7}
.gruppe.offen{border-top:3px solid var(--text3);background:var(--fl2)}
.bereiche td{vertical-align:middle;padding-top:12px;padding-bottom:12px}
.bereiche .bereich{max-width:560px}
.bereiche .bname{color:var(--text);font-weight:650;font-size:14px}
.bereiche .bereich p{margin:3px 0 0;color:var(--text2);font-size:12.5px;line-height:1.45}
.bereiche .bereich small{margin-top:3px}
.marke-art{display:inline-flex;margin-left:8px;height:20px;padding:0 7px;align-items:center;border-radius:999px;background:var(--gruenFl);color:var(--gruen);font-size:11px;font-weight:600;vertical-align:1px}
.zahl{white-space:nowrap;font-variant-numeric:tabular-nums}
.aktionen{white-space:nowrap}
.aktionen .knopf,.aktionen .knopf2{height:30px;padding:0 10px;font-size:12.5px;margin-left:4px}
.btext{margin:8px 0 0;max-width:720px;color:var(--text2)}
.fuss{margin:6px 2px 0}
.tabelle small.warn{white-space:normal;max-width:520px}
@media (max-width:900px){
  .intro{grid-template-columns:1fr;gap:16px}
  .marke-zusatz{display:none}
}
.tabelle td.betrag{white-space:nowrap}
