/* FireReportEngine — Theme "Life" für Login-/Passwort-Seiten (2.2.92)
   Wird NACH dem jeweiligen Inline-<style> geladen und überschreibt nur die Optik.
   Zurück zum alten Look: die <link>-Zeile 'theme-login.css' in den Login-Templates entfernen. */
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;800&display=swap');

body {
  font-family: 'Figtree', 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
  background: #f8f2f2 !important;
  background-image: linear-gradient(180deg, #fbe3e0 0%, #f8f2f2 460px) !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
  color: #22384a !important;
}

/* Marke */
.login-brand h1, .brand h1, .pw-logo-text { color: #22384a !important; font-weight: 800; letter-spacing: -.03em; }
.login-brand h1 b, .brand h1 b, .pw-logo-text { color: #c0281f; }
.login-brand .sub, .brand .sub, .pw-sub { color: #8a9bab !important; }

/* Karten */
.card, .pw-box {
  background: #fff !important;
  border: none !important;
  border-radius: 22px !important;
  box-shadow: 0 1px 2px rgba(34,56,74,.04), 0 12px 36px rgba(34,56,74,.08) !important;
}
.card h2, .pw-title { color: #22384a !important; font-weight: 700; letter-spacing: -.01em; }
.card p { color: #5a6e80; }

/* Formularfelder */
label { color: #5a6e80 !important; }
select, input[type="text"], input[type="password"], input[type="email"] {
  background: #f8f3f3 !important;
  border: 1px solid #e9e0e1 !important;
  border-radius: 12px !important;
  color: #22384a !important;
}
select:hover, input[type="text"]:hover, input[type="password"]:hover, input[type="email"]:hover {
  background: #fff !important;
  border-color: #f1c4bf !important;
}
input:focus, select:focus {
  background: #fff !important;
  border-color: #c0281f !important;
  box-shadow: 0 0 0 3px rgba(192,40,31,.12) !important;
  outline: none !important;
}

/* Buttons als Pills */
.btn, .pw-form button {
  background: #c0281f !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(192,40,31,.25);
}
.btn:hover, .pw-form button:hover { background: #9f1f18 !important; box-shadow: 0 6px 18px rgba(192,40,31,.32); }
.btn-secondary {
  background: rgba(255,255,255,.85) !important;
  color: #22384a !important;
  border: 1px solid #e9e0e1 !important;
  box-shadow: none;
}
.btn-secondary:hover { background: #fff !important; border-color: #f1c4bf !important; }

/* Meldungen */
.alert, .alert-err, .pw-error { border-radius: 14px !important; }
.alert-err, .pw-error { background: #fdf0ee; border-color: #f1c4bf; color: #9f1f18; }

/* Links */
.back, .back-link, .login-footer, .login-footer a { color: #8a9bab !important; }
.back:hover, .back-link:hover, .login-footer a:hover { color: #c0281f !important; }
.divider { color: #8a9bab; }
.divider::before, .divider::after { background: #e9e0e1; }
