/* ============================================================
   Theme: clear-blue
   Akzentfarbe: Indigo-Blau (#2563eb)
   Header:      Indigo-Blau  |  Body: #eff6ff (helles Indigo)
   INI-Wert: theme = "clear-blue"
   ============================================================ */

:root {
  --bs-primary:        #2563eb;
  --bs-primary-rgb:    37, 99, 235;
  --bs-secondary:      #64748b;
  --bs-secondary-rgb:  100, 116, 139;
  --bs-success:        #16a34a;
  --bs-success-rgb:    22, 163, 74;
  --bs-info:           #0ea5e9;
  --bs-info-rgb:       14, 165, 233;
  --bs-warning:        #fbbf24;
  --bs-warning-rgb:    251, 191, 36;
  --bs-danger:         #dc2626;
  --bs-danger-rgb:     220, 38, 38;
  /* Helles Indigotönung als Seitenhintergrund */
  --bs-light:          #eff6ff;
  --bs-light-rgb:      239, 246, 255;
  --bs-dark:           #0f172a;
  --bs-dark-rgb:       15, 23, 42;
  --bs-link-color:       #2563eb;
  --bs-link-color-rgb:   37, 99, 235;
  --bs-link-hover-color: #1f53c8;
  --space-1: .25rem; --space-2: .5rem; --space-3: .75rem; --space-4: 1rem;
}

body {
  color: #0f172a;
  font-family: 'Inter', sans-serif;
}

/* Header: Primärfarbe als Hintergrund */
header {
  background-color: #2563eb !important;
  border-bottom-color: rgba(0, 0, 0, .1) !important;
  box-shadow: 0 2px 8px rgba(37, 99, 235, .35) !important;
}

/* btn-primary */
.btn-primary {
  --bs-btn-color:              #ffffff;
  --bs-btn-bg:                 #2563eb;
  --bs-btn-border-color:       #2563eb;
  --bs-btn-hover-color:        #ffffff;
  --bs-btn-hover-bg:           #1f53c8;
  --bs-btn-hover-border-color: #1d4ebe;
  --bs-btn-active-color:       #ffffff;
  --bs-btn-active-bg:          #1d4ebe;
  --bs-btn-active-border-color:#1a48b4;
  --bs-btn-disabled-bg:        #2563eb;
  --bs-btn-disabled-border-color: #2563eb;
  --bs-btn-focus-shadow-rgb:   37, 99, 235;
}

.btn-outline-primary {
  --bs-btn-color:              #2563eb;
  --bs-btn-border-color:       #2563eb;
  --bs-btn-hover-color:        #ffffff;
  --bs-btn-hover-bg:           #2563eb;
  --bs-btn-hover-border-color: #2563eb;
  --bs-btn-active-color:       #ffffff;
  --bs-btn-active-bg:          #2563eb;
  --bs-btn-active-border-color:#2563eb;
  --bs-btn-disabled-color:     #2563eb;
  --bs-btn-disabled-border-color: #2563eb;
  --bs-btn-focus-shadow-rgb:   37, 99, 235;
}

.btn-success {
  --bs-btn-color:              #ffffff;
  --bs-btn-bg:                 #16a34a;
  --bs-btn-border-color:       #16a34a;
  --bs-btn-hover-bg:           #138b3f;
  --bs-btn-hover-border-color: #12833b;
  --bs-btn-active-bg:          #12833b;
  --bs-btn-focus-shadow-rgb:   22, 163, 74;
}

/* Layout-Utilities */
.grid { display: grid; gap: var(--space-4); }
.grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 768px) { .grid.cols-2 { grid-template-columns: 1fr; } }

.container-sm { max-width: 540px;  margin-inline: auto; }
.container-md { max-width: 720px;  margin-inline: auto; }
.container-lg { max-width: 960px;  margin-inline: auto; }
.container-xl { max-width: 1140px; margin-inline: auto; }

.section { padding-block: calc(var(--space-4) * 2); }
@media (min-width: 768px) { .section { padding-block: calc(var(--space-4) * 3); } }

.form-narrow { max-width: 420px; margin-inline: auto; }
.form-medium { max-width: 560px; margin-inline: auto; }
.form-wide   { max-width: 720px; margin-inline: auto; }
