html{--kes-haupt: #2F5D8C;--kes-dunkel: #1E2933;--kes-grau: #5B6673;--kes-linie: #e3e7ec;--kes-flaeche: #ffffff;--kes-hintergrund: #f4f6f8;--kes-text: var(--kes-dunkel);--lumo-primary-color: var(--kes-haupt);--lumo-primary-color-50pct: rgba(47,93,140,0.5);--lumo-primary-color-10pct: rgba(47,93,140,0.1);--lumo-primary-text-color: var(--kes-haupt);--lumo-body-text-color: var(--kes-dunkel);--lumo-secondary-text-color: var(--kes-grau);--lumo-border-radius-m: 8px;--lumo-border-radius-l: 12px;background: var(--kes-hintergrund)}html[theme~="dark"]{--kes-linie: #2c3844;--kes-flaeche: #1b252f;--kes-hintergrund: #121a22;--kes-text: #e6ebf0;--lumo-primary-color: #6c9bd0;--lumo-primary-text-color: #8db4e0;--lumo-body-text-color: #e6ebf0;--lumo-secondary-text-color: #a7b3bf;--lumo-base-color: #1b252f}vaadin-app-layout::part(navbar){background: var(--kes-flaeche);border-bottom: 1px solid var(--kes-linie);box-shadow: none}vaadin-app-layout::part(drawer){background: var(--kes-dunkel);border-inline-end: none}.marke{padding: 18px 16px 10px;display: flex;justify-content: center}.marke img{max-width: 100%;max-height: 64px;box-sizing: border-box;border-radius: 6px}.logo-paar{display: flex;justify-content: center}.support .logo-paar{justify-content: flex-start}.nur-dunkel{display: none}html[theme~="dark"] .nur-hell{display: none}html[theme~="dark"] .nur-dunkel{display: block}.navigation{padding: 8px}.navigation vaadin-side-nav-item{--vaadin-side-nav-item-color: rgba(255,255,255,0.85);--lumo-contrast-60pct: rgba(255,255,255,0.85);--lumo-body-text-color: rgba(255,255,255,0.9);--lumo-primary-text-color: #fff;--lumo-secondary-text-color: rgba(255,255,255,0.7);color: rgba(255,255,255,0.9)}.navigation vaadin-side-nav-item::part(content){border-radius: 8px;color: rgba(255,255,255,0.9)}.navigation vaadin-side-nav-item[current]::part(content){background: rgba(47,93,140,0.55);color: #fff}.kopf-titel{font-weight: 600;color: var(--lumo-primary-text-color)}.kopf-rechts{margin-left: auto;padding-right: 12px;display: flex;align-items: center;gap: 4px}.seite{padding: 20px 24px;box-sizing: border-box}.seite h2{margin: 0;color: var(--kes-text);font-size: 1.4rem}.seite h3{margin: 8px 0 4px;color: var(--lumo-primary-text-color);font-size: 1.1rem}.unter{margin: 4px 0;color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s)}.karte{background: var(--kes-flaeche);border: 1px solid var(--kes-linie);border-radius: 12px;padding: 14px 18px;box-sizing: border-box;width: 100%}.karte + .karte{margin-top: 12px}.platzhalter{color: var(--lumo-secondary-text-color);padding: 24px;text-align: center;border: 2px dashed #cfd6de;border-radius: 12px;width: 100%;box-sizing: border-box}.hinweis-box{display: flex;gap: 8px;align-items: flex-start;background: rgba(47,93,140,0.08);border-left: 4px solid var(--kes-haupt);border-radius: 8px;padding: 10px 14px;font-size: var(--lumo-font-size-s);box-sizing: border-box;width: 100%}.hinweis-box vaadin-icon{flex: none;width: 18px;height: 18px;color: var(--lumo-primary-text-color)}.umbruch{flex-wrap: wrap}.filter{flex-wrap: wrap;gap: 12px}.fussleiste{justify-content: flex-end;position: sticky;bottom: 0;background: var(--kes-hintergrund);padding: 10px 0;border-top: 1px solid var(--kes-linie)}.kennzahlen{display: flex;gap: 12px;flex-wrap: wrap}.kachel{background: var(--kes-flaeche);border-radius: 12px;padding: 10px 16px;border-left: 4px solid var(--kes-haupt);display: flex;flex-direction: column;min-width: 150px}.kachel span:first-child{font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}.kachel span:last-child{font-weight: 700;font-size: 1.3rem}.kachel.gut{border-left-color: #1e7b34}.kachel.warnung{border-left-color: #c2410c}.status{display: inline-block;padding: 2px 10px;border-radius: 999px;font-size: var(--lumo-font-size-xs);font-weight: 600;background: #eceef1;color: var(--kes-dunkel)}.status.abgeschlossen{background: #e3f1e7;color: #1e6b31}.status.in_arbeit{background: #fff4d6;color: #7a5600}.status.offen{background: #fde8e1;color: #9a3412}.status.storno{background: #eceff1;color: #5b6673}.uebersicht vaadin-grid{flex: 1 1 auto;min-height: 300px}a.zelle,span.zelle{display: inline-flex;align-items: center;justify-content: center;width: 30px;height: 26px;border-radius: 6px;text-decoration: none;font-weight: 700;font-size: 0.95rem}.zelle.abgeschlossen{background: #e3f1e7;color: #1e6b31}.zelle.in_arbeit{background: #fff4d6;color: #7a5600}.zelle.offen{background: #fde8e1;color: #9a3412}.zelle.nicht_faellig{background: transparent;color: var(--lumo-secondary-text-color)}.legende{display: flex;flex-wrap: wrap;gap: 16px;font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}.legende>span{display: inline-flex;align-items: center;gap: 4px}.stand{font-weight: 600}.stand.rueckstand{color: #9a3412}.stand.rueckstand::before{content: "⚠ "}.mandant-link,.oeffnen{color: var(--lumo-primary-text-color);text-decoration: none;font-weight: 600}.mandant-link:hover,.oeffnen:hover{text-decoration: underline}.mandant-kopf h2{margin-bottom: 4px}.kopf-info{display: flex;flex-wrap: wrap;gap: 6px 22px;font-size: var(--lumo-font-size-s)}.kopf-info .label{color: var(--lumo-secondary-text-color)}.reiter-inhalt{padding-top: 8px}.besonderheiten .karte h3{margin-top: 0}.gruppe{margin: 8px 0}.gruppe-label{font-size: var(--lumo-font-size-s);font-weight: 500;color: var(--lumo-secondary-text-color)}.ap-zeile{gap: 8px}.ap-zeile vaadin-text-field{flex: 1 1 12em}.monatsleiste{display: grid;grid-template-columns: repeat(auto-fill,minmax(130px,1fr));gap: 10px;width: 100%}.monat-kachel{display: flex;flex-direction: column;gap: 2px;padding: 10px 12px;border-radius: 10px;text-decoration: none;border: 1px solid var(--kes-linie);background: var(--kes-flaeche);color: var(--kes-text);font-size: var(--lumo-font-size-s)}.monat-kachel:hover{border-color: var(--kes-haupt)}.monat-name{font-weight: 700;font-size: 1rem}.monat-frist{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-xs)}.monat-kachel.abgeschlossen{border-left: 5px solid #1e7b34}.monat-kachel.in_arbeit{border-left: 5px solid #d4a017}.monat-kachel.offen{border-left: 5px solid #c2410c}.zurueck{color: var(--lumo-primary-text-color);text-decoration: none;font-size: var(--lumo-font-size-s)}.monat-spalten{display: flex;gap: 16px;width: 100%;align-items: flex-start}.monat-spalten>.karte:first-child{flex: 1 1 60%}.besonderheiten-kasten{flex: 0 0 34%;font-size: var(--lumo-font-size-s);border-left: 4px solid var(--kes-haupt)}.besonderheiten-kasten>div{padding: 2px 0;white-space: pre-line}.monat-spalten .karte + .karte{margin-top: 0}.punkt{display: flex;align-items: center;flex-wrap: wrap;gap: 4px 10px;padding: 6px 0;border-bottom: 1px solid var(--kes-linie)}.punkt vaadin-checkbox{flex: 1 1 260px}.punkt-info{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.punkt.nicht-relevant vaadin-checkbox{text-decoration: line-through;opacity: 0.6}.wieder-geoeffnet{background: #fff4d6;color: #6b4a00;border-radius: 8px;padding: 8px 12px;font-size: var(--lumo-font-size-s);width: 100%;box-sizing: border-box}.wieder-geoeffnet vaadin-icon{width: 14px;height: 14px}.logo-vorschau img{max-height: 64px;max-width: 220px;background: var(--kes-dunkel);border-radius: 8px;padding: 12px 16px}.login-seite{min-height: 100vh;display: flex;align-items: center;justify-content: center;background: linear-gradient(135deg,var(--kes-dunkel),var(--kes-haupt));padding: 16px;box-sizing: border-box}.login-karte{background: #fff;color: var(--kes-dunkel);border-radius: 16px;padding: 32px 24px 12px;width: min(400px,100%);box-shadow: 0 20px 50px rgba(0,0,0,0.25);display: flex;flex-direction: column;align-items: center;box-sizing: border-box;gap: 4px}html[theme~="dark"] .login-karte{background: var(--kes-flaeche);color: var(--kes-text)}.login-logo{width: 220px;max-width: 100%;max-height: 110px;object-fit: contain}.login-titel{margin-top: 14px;font-size: 1.05rem;font-weight: 600;color: var(--kes-grau);text-align: center}.login-karte vaadin-login-form::part(form){background: transparent}.login-karte p{text-align: center;margin: 6px 0}.login-hinweis{font-size: var(--lumo-font-size-xs);color: var(--kes-grau)}.login-recht{display: flex;justify-content: center;gap: 16px;margin: 0 0 8px;font-size: var(--lumo-font-size-xs)}.login-recht a{color: var(--kes-grau)}html[theme~="dark"] .login-titel,html[theme~="dark"] .login-hinweis,html[theme~="dark"] .login-recht a{color: var(--lumo-secondary-text-color)}.qr{width: 200px;height: 200px;margin: 8px 0}.geheimnis{font-family: monospace;letter-spacing: 0.05em;font-size: 1.05rem;font-weight: 600;color: var(--kes-text);background: var(--kes-hintergrund);border: 1px solid var(--kes-linie);padding: 8px 12px;border-radius: 6px;text-align: center;user-select: all}.schritte p{text-align: left !important;margin: 2px 0 !important;font-size: var(--lumo-font-size-s)}.support-karte{background: var(--kes-flaeche);border-radius: 12px;padding: 24px 28px;max-width: 560px;box-sizing: border-box;width: 100%}.support-logo{height: 40px;margin-bottom: 8px}.support .support-karte + .support-karte{margin-top: 16px}.support-karte h3{margin: 4px 0 0;color: var(--kes-text)}.support-karte p{margin: 4px 0 14px;color: var(--lumo-secondary-text-color)}.tipp{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.support-zeile{display: flex;align-items: center;gap: 12px;padding: 8px 0;font-size: 1.05rem}.support-zeile vaadin-icon{color: var(--lumo-primary-text-color);width: 20px;height: 20px}.support-zeile a{color: var(--kes-text);text-decoration: none;font-weight: 600}.support-zeile a:hover{text-decoration: underline}@media (max-width: 1000px){.monat-spalten{flex-direction: column}.besonderheiten-kasten{flex: none}.seite{padding: 12px}}@media (max-width: 700px){.kopf-name{display: none}.abmelden::part(label){display: none}}