html{--bb-bg: #FFFFFF;--bb-bg-alt: #F7F9FC;--bb-bg-subtle: #F1F4F9;--bb-border: #E4E8EF;--bb-border-strong:#D1D7E0;--bb-text: #0F1729;--bb-text-soft: #4A5567;--bb-text-muted: #7A8597;--bb-primary: #1E5AA8;--bb-primary-dark: #154277;--bb-primary-light:#E8F0FA;--bb-primary-soft: #F4F8FD;--bb-success: #1F7A4D;--bb-warn: #B8721E;--bb-danger: #B42318;--bb-radius: 8px;--bb-radius-md: 12px;--aura-font-family: "Inter",-apple-system,"Segoe UI",system-ui,sans-serif;--lumo-font-family: "Inter",-apple-system,"Segoe UI",system-ui,sans-serif;--lumo-primary-color: var(--bb-primary);--lumo-primary-text-color: var(--bb-primary);--lumo-primary-color-50pct: rgba(30,90,168,0.5);--lumo-primary-color-10pct: rgba(30,90,168,0.1);background: var(--bb-bg);color: var(--bb-text)}body{margin: 0;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}.bb-kopfzeile{padding: 10px 24px;background: rgba(255,255,255,0.92);border-bottom: 1px solid var(--bb-border)}.bb-kopf-titelblock{display: flex;flex-direction: column;gap: 1px}.bb-kopf-titel{font-size: 1.05rem;font-weight: 700;color: var(--bb-text);letter-spacing: -0.01em;line-height: 1.2}.bb-kopf-untertitel{font-size: 0.68rem;color: var(--bb-text-muted);letter-spacing: 0.04em;line-height: 1}.bb-nav{margin-left: 24px;gap: 20px}.bb-nav-link{color: var(--bb-text-soft);text-decoration: none;font-size: 0.92rem;font-weight: 500;transition: color 0.15s}.bb-nav-link:hover{color: var(--bb-primary)}.bb-seite{padding: 24px 32px}.bb-seiten-kopf h2{margin: 0;letter-spacing: -0.02em}.bb-meta{font-size: 0.82rem;color: var(--bb-text-muted)}.bb-beschreibung{color: var(--bb-text-soft);line-height: 1.65;max-width: 760px;white-space: pre-line}vaadin-button.bb-btn-primary{background: var(--bb-primary) !important;color: white !important;border: 1px solid var(--bb-primary) !important;border-radius: var(--bb-radius) !important;font-weight: 600;cursor: pointer;transition: background 0.15s,border-color 0.15s}vaadin-button.bb-btn-primary:hover{background: var(--bb-primary-dark) !important;border-color: var(--bb-primary-dark) !important}vaadin-button.bb-btn-primary::part(label){color: white;font-weight: 600}vaadin-button.bb-btn-ghost{background: transparent !important;color: var(--bb-text-soft) !important;border: 1px solid var(--bb-border-strong) !important;border-radius: var(--bb-radius) !important;font-weight: 500 !important;cursor: pointer;transition: all 0.15s}vaadin-button.bb-btn-ghost:hover{background: var(--bb-bg-alt) !important;color: var(--bb-text) !important}vaadin-button.bb-btn-ghost::part(label){color: inherit}vaadin-text-field.bb-input,vaadin-text-area.bb-input,vaadin-select.bb-input,vaadin-combo-box.bb-input,vaadin-date-picker.bb-input{--vaadin-input-field-background: var(--bb-primary-soft);--vaadin-input-field-border-color: var(--bb-border-strong);--vaadin-input-field-value-color: var(--bb-text);--vaadin-input-field-label-color: var(--bb-text);--vaadin-input-field-placeholder-color: var(--bb-text-muted);--vaadin-input-field-border-radius: 8px}.bb-badge{display: inline-block;font-size: 0.72rem;font-weight: 600;padding: 3px 10px;border-radius: 100px;white-space: nowrap}.bb-badge-blau{background: var(--bb-primary-light);color: var(--bb-primary)}.bb-badge-gruen{background: #E6F4EE;color: var(--bb-success)}.bb-badge-gelb{background: #FBF1E1;color: var(--bb-warn)}.bb-badge-orange{background: #FDEBE1;color: #C2410C}.bb-badge-grau{background: var(--bb-bg-subtle);color: var(--bb-text-muted)}.bb-frage-karte{background: white;border: 1px solid var(--bb-border);border-radius: var(--bb-radius-md);padding: 20px 24px;margin-bottom: 16px;width: 100%;box-sizing: border-box;transition: border-color 0.15s,box-shadow 0.15s}.bb-frage-karte:hover{border-color: var(--bb-border-strong);box-shadow: 0 4px 20px rgba(15,23,41,0.06)}.bb-frage-text{font-size: 1.05rem;font-weight: 600;color: var(--bb-text);margin: 0;white-space: pre-line}.bb-option-karte{display: flex;flex-direction: column;gap: 8px;padding: 12px;background: var(--bb-bg-alt);border: 1px solid var(--bb-border);border-radius: var(--bb-radius);max-width: 320px}.bb-option-text{font-size: 0.92rem;color: var(--bb-text);font-weight: 500}.bb-option-gewaehlt{border-color: var(--bb-primary);background: var(--bb-primary-light)}.bb-antwort-freitext{color: var(--bb-text-soft);font-style: italic;margin: 8px 0 0 0}.bb-vorschau-bild{max-width: 280px;max-height: 200px;object-fit: contain;border-radius: var(--bb-radius);border: 1px solid var(--bb-border);background: white}.bb-ticket-karte{background: white;border: 1px solid var(--bb-border);border-radius: var(--bb-radius-md);padding: 14px 18px;margin-bottom: 10px;cursor: pointer;transition: border-color 0.15s,box-shadow 0.15s}.bb-ticket-karte:hover{border-color: var(--bb-primary);box-shadow: 0 4px 20px rgba(30,90,168,0.08)}.bb-ticket-titel{font-weight: 600;color: var(--bb-text)}.bb-kommentar{border-radius: var(--bb-radius-md);padding: 10px 14px;margin-bottom: 8px;max-width: 85%}.bb-kommentar-brama{background: var(--bb-primary-light);align-self: flex-start}.bb-kommentar-kunde{background: var(--bb-bg-subtle);align-self: flex-end}.bb-kommentar-text{margin: 4px 0 0 0;white-space: pre-line}.bb-datei-link{color: var(--bb-primary);font-size: 0.92rem}vaadin-dialog-overlay::part(overlay){background: white;border: 1px solid var(--bb-border);border-radius: var(--bb-radius-md);box-shadow: 0 20px 60px rgba(15,23,41,0.18);color: var(--bb-text)}vaadin-dialog-overlay::part(backdrop){background: rgba(15,23,41,0.45)}.bb-login-seite{background: var(--bb-bg-alt)}.bb-login-kopf{display: flex;flex-direction: column;align-items: center;gap: 12px}.bb-login-kopf h1{font-size: 1.5rem;letter-spacing: -0.02em;margin: 0}.bb-login-hinweis{color: var(--bb-text-muted);font-size: 0.85rem}.bb-portal{background: var(--bb-bg-alt);min-height: 100vh}.bb-portal-kopfleiste{width: 100%;box-sizing: border-box;padding: 14px 32px;background: white;border-bottom: 1px solid var(--bb-border)}.bb-portal-inhalt{width: 100%;max-width: 860px;padding: 24px 32px 48px;box-sizing: border-box}.bb-portal-inhalt h1{font-size: clamp(1.6rem,3vw,2.2rem);letter-spacing: -0.02em;margin: 12px 0 4px 0}.bb-portal-inhalt h3{margin: 28px 0 12px 0;letter-spacing: -0.01em}.bb-portal-fehler{margin-top: 12vh;text-align: center;color: var(--bb-text-soft)}.bb-portal-fuss{margin-top: 40px;font-size: 0.82rem;color: var(--bb-text-muted)}.bb-upload-kompakt{max-width: 220px}