/* ═══════════════════════════════════════════════════════════════════
   SignalStrike v2 Override Layer
   Force-replaces old purple (#667eea/#764ba2) patterns globally.
   Loaded LAST, after signalstrike-v2.css.
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Body Defaults ─── */
body {
    background-color: #f7f5f2 !important;
    font-family: 'DM Sans', 'Segoe UI', system-ui, -apple-system, sans-serif !important;
    color: #0f1923;
}

/* ─── Headings ─── */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'Libre Baskerville', Georgia, 'Times New Roman', serif;
    color: #0f1923;
}

/* ─── Bootstrap Primary Overrides ─── */
.btn-primary,
a.btn-primary,
button.btn-primary {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
    border-color: #0A2463 !important;
    color: #fff !important;
    border-radius: 5px;
    font-family: 'DM Sans', sans-serif;
    font-weight: 600;
}

.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 80%, #1E88E5 100%) !important;
    border-color: #0A2463 !important;
    box-shadow: 0 4px 24px rgba(30, 136, 229, 0.32);
    transform: translateY(-1px);
}

.btn-primary:focus,
.btn-primary:active {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
    border-color: #0A2463 !important;
    box-shadow: 0 0 0 3px rgba(10, 36, 99, 0.25) !important;
}

.btn-outline-primary {
    color: #0A2463 !important;
    border-color: #0A2463 !important;
    border-radius: 5px;
    font-family: 'DM Sans', sans-serif;
    font-weight: 600;
}

.btn-outline-primary:hover {
    background: #0A2463 !important;
    border-color: #0A2463 !important;
    color: #fff !important;
}

/* ─── Card Headers ─── */
.card-header {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
    color: white !important;
    border-bottom: none !important;
    font-family: 'DM Sans', sans-serif;
    font-weight: 600;
}

.card-header h1, .card-header h2, .card-header h3,
.card-header h4, .card-header h5, .card-header h6,
.card-header .h1, .card-header .h2, .card-header .h3,
.card-header .h4, .card-header .h5, .card-header .h6 {
    color: white !important;
    font-family: 'Libre Baskerville', Georgia, serif;
}

.card-header i,
.card-header .fas,
.card-header .far,
.card-header .fab {
    color: #F5C518 !important;
}

/* ─── Cards ─── */
.card {
    border-radius: 6px;
    border-color: rgba(10, 36, 99, 0.09);
}

/* ─── Form Controls ─── */
.form-control:focus,
.form-select:focus {
    border-color: #0A2463 !important;
    box-shadow: 0 0 0 3px rgba(10, 36, 99, 0.15) !important;
}

/* ─── Badges ─── */
.badge.bg-primary,
.badge.badge-primary {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
}

/* ─── Nav Tabs / Pills ─── */
.nav-tabs .nav-link.active,
.nav-pills .nav-link.active {
    background-color: #0A2463 !important;
    border-color: #0A2463 !important;
    color: white !important;
}

.nav-tabs .nav-link:hover,
.nav-pills .nav-link:hover {
    color: #0A2463;
}

/* ─── Progress Bars ─── */
.progress-bar {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
}

/* ─── Links ─── */
a {
    color: #0A2463;
}

a:hover {
    color: #1565C0;
}

/* ─── Page Title Gradient (app pages) ─── */
.page-title {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 700;
}

/* ─── Glassmorphism Auth Cards (register, forgot, reset, 2FA) ─── */
.register-card::before,
.reset-card::before,
.verify-card::before,
.forgot-card::before {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
}

.register-logo,
.reset-icon,
.verify-icon,
.forgot-icon {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
    box-shadow: 0 8px 32px rgba(10, 36, 99, 0.4) !important;
}

/* ─── Feature/Marketing Page Heroes ─── */
.hero-section,
.marketing-hero,
.page-hero {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%) !important;
}

/* ─── App Hero Headers (white + gold text) ─── */
.hero-section .hero-title {
    color: white !important;
    -webkit-text-fill-color: white !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 700;
}

.hero-section .hero-title .gradient-text,
.hero-section .hero-title .hero-gold {
    color: #F5C518 !important;
    -webkit-text-fill-color: #F5C518 !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
}

.hero-section .hero-title i {
    color: #F5C518 !important;
    -webkit-text-fill-color: #F5C518 !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
}

.hero-section .hero-subtitle {
    color: rgba(255, 255, 255, 0.8) !important;
}

.hero-section .hero-description {
    color: rgba(255, 255, 255, 0.65) !important;
}

.hero-section .hero-logo {
    filter: drop-shadow(0 2px 8px rgba(245, 197, 24, 0.3));
}

/* ─── Table Accents ─── */
.table-primary {
    background-color: rgba(10, 36, 99, 0.07) !important;
}

/* ─── Selection Color ─── */
::selection {
    background: rgba(10, 36, 99, 0.15);
}

/* ─── Scrollbar (Webkit) ─── */
::-webkit-scrollbar-thumb {
    background: rgba(10, 36, 99, 0.2);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(10, 36, 99, 0.35);
}

/* ─── Alert Primary ─── */
.alert-primary {
    background-color: rgba(10, 36, 99, 0.07) !important;
    border-color: rgba(10, 36, 99, 0.15) !important;
    color: #0A2463 !important;
}

/* ─── Accordion ─── */
.accordion-button:not(.collapsed) {
    background-color: rgba(10, 36, 99, 0.07) !important;
    color: #0A2463 !important;
    box-shadow: inset 0 -1px 0 rgba(10, 36, 99, 0.09);
}

.accordion-button:focus {
    box-shadow: 0 0 0 3px rgba(10, 36, 99, 0.15) !important;
    border-color: rgba(10, 36, 99, 0.15) !important;
}

/* ─── Modal Header ─── */
.modal-header {
    background: linear-gradient(135deg, #0A2463 0%, #1565C0 60%, #1E88E5 100%);
    color: white;
}

.modal-header h1, .modal-header h2, .modal-header h3,
.modal-header h4, .modal-header h5, .modal-header h6,
.modal-header .h1, .modal-header .h2, .modal-header .h3,
.modal-header .h4, .modal-header .h5, .modal-header .h6,
.modal-header .modal-title {
    color: white !important;
    font-family: 'DM Sans', sans-serif;
    font-weight: 600;
}

.modal-header i,
.modal-header .fas,
.modal-header .far,
.modal-header .fab {
    color: #F5C518 !important;
}

.modal-header .btn-close {
    filter: brightness(0) invert(1);
}

/* ─── Dropdown ─── */
.dropdown-item.active,
.dropdown-item:active {
    background-color: #0A2463 !important;
}

/* ─── Pagination ─── */
.page-item.active .page-link {
    background-color: #0A2463 !important;
    border-color: #0A2463 !important;
}

.page-link {
    color: #0A2463;
}

/* ─── Tooltips ─── */
.tooltip-inner {
    background-color: #0A2463;
}

.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: #0A2463;
}

/* ─── Switch / Custom Checkbox ─── */
.form-check-input:checked {
    background-color: #0A2463 !important;
    border-color: #0A2463 !important;
}

/* ─── Spinner ─── */
.spinner-border.text-primary {
    color: #0A2463 !important;
}
