html{--kes-haupt: #374151;--kes-dunkel: #1f2937;--kes-akzent: #ffffff;--lumo-primary-color: var(--kes-haupt);--lumo-primary-color-50pct: rgba(55,65,81,0.5);--lumo-primary-color-10pct: rgba(55,65,81,0.1);--lumo-primary-text-color: var(--kes-haupt);--lumo-border-radius-m: 8px;--lumo-border-radius-l: 12px;background: #f3f4f6}vaadin-app-layout::part(navbar){background: #fff;border-bottom: 1px solid #e5e7eb;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;background: #fff;border-radius: 8px;padding: 8px 10px}.marke span{color: #fff;font-weight: 700;font-size: 1.2rem}.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: var(--kes-akzent);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(255,255,255,0.12);color: var(--kes-akzent)}.kopf-titel{font-weight: 600;color: var(--kes-haupt)}.kopf-rechts{margin-left: auto;padding-right: 12px}.seite{padding: 20px 24px;box-sizing: border-box}.seite h2{margin: 0;color: var(--kes-dunkel)}.platzhalter{color: var(--lumo-secondary-text-color);padding: 40px;text-align: center;border: 2px dashed #d1d5db;border-radius: 12px;background: #fff;width: 100%;box-sizing: border-box}.kennzahlen{display: flex;gap: 12px;flex-wrap: wrap;width: 100%}.kachel{background: #fff;border-radius: 12px;padding: 10px 16px;border-left: 4px solid var(--kes-haupt);display: flex;flex-direction: column;min-width: 140px}.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.1rem}.kachel.warnung{border-left-color: #d9480f}.archiv{min-height: 0;align-items: stretch;gap: 16px}.archiv .liste{flex: 0 0 40%;min-width: 0;background: #fff;border-radius: 12px;padding: 12px;box-sizing: border-box}.archiv .liste vaadin-grid{border: none}.filter{flex-wrap: wrap}.detail{flex: 1 1 auto;min-width: 0;display: flex;gap: 16px}.detail .pdf{flex: 1 1 auto;border: none;border-radius: 12px;background: #fff;min-height: 400px}.pdf{width: 100%;height: 100%;border: none}.aktionen{flex: 0 0 230px;background: #fff;border-radius: 12px;padding: 14px !important;box-sizing: border-box;overflow: auto;gap: 6px}.aktionen h3{margin: 0;font-size: 1.1rem}.aktionen .unter{margin: 4px 0 0;color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s)}.abschnitt{margin-top: 12px;font-size: var(--lumo-font-size-xs);text-transform: uppercase;letter-spacing: 0.05em;color: var(--lumo-secondary-text-color);font-weight: 600}.tipp{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color);margin: 2px 0}.aktionen p{margin: 4px 0}.status{display: inline-block;padding: 2px 10px;border-radius: 999px;font-size: var(--lumo-font-size-xs);font-weight: 600;background: #e9ecef;color: #495057}.status.offen{background: #eceef1;color: var(--kes-dunkel)}.status.bezahlt{background: #e6f4ea;color: #1e7b34}.status.entwurf{background: #fff4d6;color: #8a6100}.status.storniert,.status.storno{background: #eceff1;color: #6b7378}.status.ueberfaellig{background: #fde8e1;color: #b33a0b}.status.angenommen{background: #e6f4ea;color: #1e7b34}.status.abgelehnt{background: #eceff1;color: #6b7378}.editor{max-width: 1200px}.editor>*{width: 100%}.anschrift{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s);display: flex;flex-direction: column;gap: 2px;margin-top: -8px}.anschrift .warnung,.hinweis-box{color: #b33a0b}.hinweis-box{background: #fde8e1;border-radius: 8px;padding: 10px 14px}.umbruch{flex-wrap: wrap}.pos-kopf{background: var(--kes-haupt);color: #fff;border-radius: 8px 8px 0 0;padding: 8px 10px;font-size: var(--lumo-font-size-s);font-weight: 600;box-sizing: border-box;margin-bottom: -16px}.positionen{background: #fff;border-radius: 0 0 8px 8px;padding: 4px 10px !important;box-sizing: border-box}.pos-zeile{border-bottom: 1px solid #eef0f2;padding: 4px 0;gap: 8px !important}.sp-text{flex: 1 1 auto;min-width: 0}.sp-menge{flex: 0 0 90px;width: 90px}.sp-einheit{flex: 0 0 130px;width: 130px}.sp-preis{flex: 0 0 130px;width: 130px}.sp-ust{flex: 0 0 90px;width: 90px}.sp-rabatt{flex: 0 0 80px;width: 80px}.sp-gesamt{flex: 0 0 110px;width: 110px;text-align: right}.pos-zeile .sp-gesamt{padding-top: 10px;font-weight: 600}.sp-weg{flex: 0 0 36px;width: 36px}.pos-kopf .sp-menge,.pos-kopf .sp-preis{text-align: left}.summen{min-width: 300px;background: #fff;border-radius: 8px;padding: 10px 14px}.summe,.summe-gesamt{display: flex;justify-content: space-between;gap: 24px;padding: 3px 0}.summe-gesamt{border-top: 2px solid var(--kes-haupt);margin-top: 6px;padding-top: 8px;font-weight: 700;font-size: 1.1rem;color: var(--kes-dunkel)}.fussleiste{justify-content: flex-end;flex-wrap: wrap;position: sticky;bottom: 0;background: #f3f4f6;padding: 10px 0;border-top: 1px solid #e5e7eb}.viewer-ergebnis{width: 100%;display: flex;flex-direction: column;min-height: 0}.viewer-frame{flex: 1 1 auto;width: 100%;min-height: 600px;border: none;border-radius: 12px;background: #fff}.viewer-knoepfe{margin-bottom: 10px}.viewer-knoepfe a{width: auto !important}.einstellungen h3{margin: 16px 0 0;color: var(--kes-haupt)}.logo-vorschau img{max-height: 80px;max-width: 240px}.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;border-radius: 16px;padding: 28px 24px 12px;width: min(380px,100%);box-shadow: 0 20px 50px rgba(0,0,0,0.25);display: flex;flex-direction: column;align-items: center}.login-logo{max-width: 220px;max-height: 110px}.login-titel{margin-top: 12px;font-size: 1.3rem;font-weight: 700;color: var(--kes-dunkel);border-bottom: 3px solid #d1d5db;padding-bottom: 4px}.login-karte vaadin-login-form-wrapper{--lumo-base-color: transparent}.login-hinweis{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}@media (max-width: 1000px){.archiv{flex-direction: column}.archiv .liste{flex: none;height: 420px}.detail{flex-direction: column}.detail .pdf{min-height: 70vh}.aktionen{flex: none}.pos-kopf{display: none !important}.pos-zeile{flex-wrap: wrap}.sp-text{flex-basis: 100%}.seite{padding: 12px}}.zelle-nr,.zelle-kunde{display: flex;flex-direction: column;line-height: 1.3;min-width: 0}.zelle-nr span:first-child,.zelle-kunde span:first-child{font-weight: 600}.zelle-nr span:last-child,.zelle-kunde span:last-child{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color);overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.zelle-kunde span:first-child{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.filter vaadin-text-field{flex: 1 1 10em}.fuss-feld textarea{min-height: 6.5em;font-size: var(--lumo-font-size-s)}.fuss-mitte textarea{text-align: center}.fuss-rechts textarea{text-align: right}.support-karte{background: #fff;border-radius: 12px;padding: 24px 28px;max-width: 520px;box-sizing: border-box;width: 100%}.support-logo{height: 40px;margin-bottom: 8px}.support-karte h3{margin: 4px 0 0;color: var(--kes-dunkel)}.support-karte p{margin: 4px 0 14px;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(--kes-haupt);width: 20px;height: 20px}.support-zeile a{color: var(--kes-dunkel);text-decoration: none;font-weight: 600}.support-zeile a:hover{text-decoration: underline}