/* Identite commune Nexus Connect. Les couleurs de statut restent independantes. */
:root {
  --nexus-primary: #64129A;
  --nexus-secondary: #C00069;
  --nexus-accent: #D21B80;
  --nexus-dark: #39095B;
  --nexus-white: #FFFFFF;
  --nexus-light: #F6F5F9;
  --nexus-primary-rgb: 100, 18, 154;
  --nexus-secondary-rgb: 192, 0, 105;
  --nexus-tint: #F1E7F8;
  --nexus-border: #DED0E8;
  --nexus-muted: #64566E;
  --nexus-gradient: linear-gradient(135deg, var(--nexus-primary), var(--nexus-secondary));
  --bs-primary: var(--nexus-primary); --bs-primary-rgb: var(--nexus-primary-rgb);
  --bs-link-color: var(--nexus-primary);
  --bs-link-color-rgb: var(--nexus-primary-rgb);
  --bs-link-hover-color: var(--nexus-dark);
  --bs-link-hover-color-rgb: 57, 9, 91;
}
.btn-primary {
    --bs-btn-color: #ffffff;
    --bs-btn-bg: var(--nexus-primary);
    --bs-btn-border-color: var(--nexus-primary);

    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: var(--nexus-dark);
    --bs-btn-hover-border-color: var(--nexus-dark);

    --bs-btn-focus-shadow-rgb: var(--nexus-primary-rgb);

    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: var(--nexus-dark);
    --bs-btn-active-border-color: var(--nexus-dark);

    --bs-btn-disabled-color: #ffffff;
    --bs-btn-disabled-bg: var(--nexus-primary);
    --bs-btn-disabled-border-color: var(--nexus-primary);
}
.btn-outline-primary {
  --bs-btn-color: var(--nexus-primary);
  --bs-btn-border-color: var(--nexus-primary);
  --bs-btn-hover-bg: var(--nexus-primary);
  --bs-btn-hover-border-color: var(--nexus-primary);
  --bs-btn-active-bg: var(--nexus-dark);
  --bs-btn-active-border-color: var(--nexus-dark);
  --bs-btn-disabled-color: var(--nexus-primary);
  --bs-btn-disabled-border-color: var(--nexus-primary);
  --bs-btn-focus-shadow-rgb: var(--nexus-primary-rgb);
}
.pagination {
  --bs-pagination-color: var(--nexus-primary);
  --bs-pagination-hover-color: var(--nexus-dark);
  --bs-pagination-focus-color: var(--nexus-dark);
  --bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(var(--nexus-primary-rgb), .2);
  --bs-pagination-active-bg: var(--nexus-primary);
  --bs-pagination-active-border-color: var(--nexus-primary);
}
.form-control:focus, .form-select:focus {
  border-color: var(--nexus-primary);
  box-shadow: 0 0 0 .25rem rgba(var(--nexus-primary-rgb), .2);
}
.form-check-input:checked { background-color: var(--nexus-primary); border-color: var(--nexus-primary); }
a:focus-visible, button:focus-visible, [tabindex="0"]:focus-visible {
  outline: 2px solid var(--nexus-primary);
  outline-offset: 3px;
}
.nexus-brand { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.nexus-brand-logo { width: 40px; height: 40px; object-fit: contain; flex: 0 0 auto; }
.sidebar-brand.nexus-brand { font-size: 17px; gap: 6px; letter-spacing: 0; }
.sidebar-brand .nexus-brand-logo { width: 32px; height: 32px; }
.sidebar-brand .nexus-brand-wordmark { color: var(--nexus-primary); }
.nexus-auth-logo { display: block; width: 60px; height: 60px; object-fit: contain; margin: 0 auto 12px; }
@media (max-width: 767.98px) {
  .hw-logo .nexus-brand-logo { width: 32px; height: 32px; }
}

.footer-hw a:focus-visible, .footer-hw button:focus-visible, .nh-final a:focus-visible { outline-color: var(--nexus-white); }
