/* Eigene Styles der Anwendung (keine Inline-Styles wegen Content-Security-Policy) */

/* HTMX-Ladeanzeige – ersetzt die von HTMX sonst eingefügten Inline-Styles */
.htmx-indicator {
  opacity: 0;
}

.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator {
  opacity: 1;
  transition: opacity 200ms ease-in;
}

.status-card {
  max-width: 32rem;
}

.company-logo-preview {
  max-height: 6rem;
  max-width: 16rem;
}

/* Versandprotokoll: E-Mail-Text mit Zeilenumbrüchen in normaler Schrift */
.mail-body {
  white-space: pre-wrap;
  font-family: inherit;
  font-size: inherit;
}

/* Authenticator-App einrichten: QR-Code (SVG mit mm-Angaben) auf feste Größe bringen */
.totp-qr {
  max-width: 15rem;
}

.totp-qr svg {
  display: block;
  width: 100%;
  height: auto;
}

/* Zeilenumbrüche aus Texten erhalten (KI-Antworten, Phase 35) */
.kf-preline { white-space: pre-line; }

/* KI-Team (Avatare der KI-Agenten) */
.kf-agent-avatar { border-radius: 50%; object-fit: cover; flex: 0 0 auto; background: var(--bs-tertiary-bg); }
.kf-agent-avatar.kf-agent-portrait, .kf-agent-avatar.kf-agent-standing, .kf-agent-avatar.kf-agent-sitting { border-radius: 0; background: none; object-fit: contain; }
.kf-agent-initial { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px;
  font-weight: 600; color: #fff; background: #e8770f; }
.kf-agent-initial[data-size="32"] { width: 32px; height: 32px; font-size: .85rem; }
.kf-agent-initial[data-size="56"] { width: 56px; height: 56px; font-size: 1.4rem; }
.kf-agent-initial[data-size="96"] { width: 96px; height: 96px; font-size: 2rem; }
.kf-team { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: .75rem; }
.kf-team .card-body { display: flex; gap: .75rem; align-items: flex-start; }
.kf-ai-badge { font-size: .65rem; vertical-align: middle; }
.kf-team-image { display: block; width: 100%; max-width: 60rem; height: auto; border-radius: .75rem; }
