/* Thème visuel CRM Mécénat ASA — inspiré de la charte graphique du club
   (bordeaux/orange, typographie condensée pour les titres). Charge après
   Bootstrap : les règles ci-dessous le surchargent par ordre de source, pas
   besoin de !important. */

:root {
  --asa-bordeaux: #441826;
  --asa-bordeaux-dark: #2e0f19;
  --asa-bordeaux-light: #6b2438;
  --asa-orange: #ff9700;
  --asa-orange-dark: #e08600;
  --asa-gray: #cfd1d1;
}

/* --- Typographie : polices condensées pour les titres/marque, corps de
   texte au format système pour rester lisible en petite taille, et taille
   de base réduite pour une UI plus dense. --- */
html {
  font-size: 14px;
}

body {
  background: #f6f5f4;
}

h1, h2, h3, h4, h5, h6,
.navbar-brand,
.card-header strong,
.btn {
  font-family: 'Oswald', 'Segoe UI', Arial, sans-serif;
}

h1 { font-size: 1.65rem; font-weight: 600; letter-spacing: .02em; }
h2 { font-size: 1.4rem; font-weight: 600; }
h3, h4, h5 { font-weight: 600; }

.card-header { font-size: .95rem; }

/* --- Marque / navbar --- */
.navbar.bg-asa {
  background-color: var(--asa-bordeaux) !important;
}
.navbar-brand {
  font-weight: 600;
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: 1.1rem;
}
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .nav-link:hover {
  color: var(--asa-orange) !important;
}

/* --- Couleur de marque pour les actions "primaires" (liens, bouton
   primary) ; les couleurs sémantiques (success/warning/danger) restent
   celles de Bootstrap pour ne pas perdre leur signification. --- */
a {
  color: var(--asa-bordeaux);
}
a:hover {
  color: var(--asa-orange-dark);
}
.btn-primary {
  background-color: var(--asa-bordeaux);
  border-color: var(--asa-bordeaux);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: var(--asa-bordeaux-dark);
  border-color: var(--asa-bordeaux-dark);
}
.btn-outline-primary {
  color: var(--asa-bordeaux);
  border-color: var(--asa-bordeaux);
}
.btn-outline-primary:hover {
  background-color: var(--asa-bordeaux);
  border-color: var(--asa-bordeaux);
}
.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--asa-orange);
  box-shadow: 0 0 0 .2rem rgba(255, 151, 0, .25);
}
.form-check-input:checked {
  background-color: var(--asa-bordeaux);
  border-color: var(--asa-bordeaux);
}
.nav-tabs .nav-link.active {
  color: var(--asa-bordeaux);
  border-color: var(--asa-orange) var(--asa-orange) #fff;
}
.page-item.active .page-link {
  background-color: var(--asa-bordeaux);
  border-color: var(--asa-bordeaux);
}
.dropdown-item.active, .dropdown-item:active {
  background-color: var(--asa-bordeaux);
}

/* --- Tableaux / grilles : lignes sur une seule ligne, plus compactes,
   colonnes qui ne débordent pas plus que nécessaire. La zone qui contient
   le tableau (pas la page) porte le scroll horizontal si le contenu est
   vraiment trop large. --- */
.table {
  font-size: .85rem;
}
.table td, .table th {
  white-space: nowrap;
  vertical-align: middle;
}
.table td.text-wrap, .table th.text-wrap {
  white-space: normal;
}
.table-sm td, .table-sm th {
  padding: .35rem .5rem;
}

/* Colonne d'actions (dernière colonne des grilles/listes) : les boutons
   restent en ligne, jamais empilés verticalement même quand la colonne
   est étroite. */
.table td.actions,
.table td:last-child:has(.btn) {
  white-space: nowrap;
}
.table td.actions .btn,
.table td:last-child .btn {
  display: inline-block;
  vertical-align: middle;
}

/* --- Cartes d'authentification (login / allauth) --- */
.asa-auth-shell {
  min-height: calc(100vh - 56px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 1rem;
}
.asa-auth-card {
  width: 100%;
  max-width: 420px;
  border: none;
  border-radius: .5rem;
  box-shadow: 0 .5rem 1.5rem rgba(68, 24, 38, .12);
  overflow: hidden;
}
.asa-auth-card .card-header {
  background: #fff;
  border-bottom: 4px solid var(--asa-orange);
  text-align: center;
  padding: 1.5rem 1rem 1rem;
}
.asa-auth-logo {
  height: 96px;
  width: auto;
  margin-bottom: .5rem;
}
.asa-auth-card .card-header .brand-title {
  font-family: 'Oswald', 'Segoe UI', Arial, sans-serif;
  font-size: 1.1rem;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--asa-bordeaux);
  margin: 0;
}
.asa-auth-card .card-body {
  padding: 1.75rem 1.5rem;
}
.btn-microsoft {
  background-color: #fff;
  border: 1px solid #cfd1d1;
  color: #333;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  width: 100%;
}
.btn-microsoft:hover {
  background-color: #f6f5f4;
  border-color: var(--asa-orange);
}
