/* ========================================
   BOOTSTRAP BLACK GOLD THEME OVERRIDES
   ======================================== */

/* Bootstrap Color Overrides */
:root {
    --bs-primary: #FFD700;
    --bs-primary-rgb: 255, 215, 0;
    --bs-secondary: #000000;
    --bs-secondary-rgb: 0, 0, 0;
    --bs-success: #28a745;
    --bs-success-rgb: 40, 167, 69;
    --bs-info: #17a2b8;
    --bs-info-rgb: 23, 162, 184;
    --bs-warning: #ffc107;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger: #dc3545;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light: #1a1a1a;
    --bs-light-rgb: 26, 26, 26;
    --bs-dark: #000000;
    --bs-dark-rgb: 0, 0, 0;
    --bs-white: #000000;
    --bs-white-rgb: 0, 0, 0;
    --bs-black: #ffffff;
    --bs-black-rgb: 255, 255, 255;
    
    /* Body and text colors */
    --bs-body-bg: #000000;
    --bs-body-color: #ffffff;
    --bs-body-color-rgb: 255, 255, 255;
    
    /* Border colors */
    --bs-border-color: #4a4a4a;
    --bs-border-color-translucent: rgba(74, 74, 74, 0.175);
    
    /* Link colors */
    --bs-link-color: #FFD700;
    --bs-link-hover-color: #FFED4E;
    
    /* Code colors */
    --bs-code-color: #FFD700;
    
    /* Highlight colors */
    --bs-highlight-bg: rgba(255, 215, 0, 0.1);
}

/* Force Bootstrap components to use our theme */
.btn-primary {
    --bs-btn-color: #000000;
    --bs-btn-bg: #FFD700;
    --bs-btn-border-color: #FFD700;
    --bs-btn-hover-color: #000000;
    --bs-btn-hover-bg: #FFED4E;
    --bs-btn-hover-border-color: #FFED4E;
    --bs-btn-focus-shadow-rgb: 255, 215, 0;
    --bs-btn-active-color: #000000;
    --bs-btn-active-bg: #B8860B;
    --bs-btn-active-border-color: #B8860B;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000000;
    --bs-btn-disabled-bg: #FFD700;
    --bs-btn-disabled-border-color: #FFD700;
}

.btn-secondary {
    --bs-btn-color: #ffffff;
    --bs-btn-bg: #1a1a1a;
    --bs-btn-border-color: #4a4a4a;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-bg: #333333;
    --bs-btn-hover-border-color: #FFD700;
    --bs-btn-focus-shadow-rgb: 26, 26, 26;
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: #333333;
    --bs-btn-active-border-color: #FFD700;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #ffffff;
    --bs-btn-disabled-bg: #1a1a1a;
    --bs-btn-disabled-border-color: #4a4a4a;
}

.btn-outline-primary {
    --bs-btn-color: #FFD700;
    --bs-btn-border-color: #FFD700;
    --bs-btn-hover-color: #000000;
    --bs-btn-hover-bg: #FFD700;
    --bs-btn-hover-border-color: #FFD700;
    --bs-btn-focus-shadow-rgb: 255, 215, 0;
    --bs-btn-active-color: #000000;
    --bs-btn-active-bg: #FFD700;
    --bs-btn-active-border-color: #FFD700;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #FFD700;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #FFD700;
}

/* Card overrides */
.card {
    --bs-card-bg: #1e1e1e;
    --bs-card-border-color: #4a4a4a;
    --bs-card-color: #ffffff;
}

.card-header {
    --bs-card-cap-bg: #1a1a1a;
    --bs-card-cap-color: #ffffff;
}

.card-footer {
    --bs-card-cap-bg: #1a1a1a;
    --bs-card-cap-color: #ffffff;
}

/* Form control overrides */
.form-control {
    --bs-body-bg: #1e1e1e;
    --bs-body-color: #ffffff;
    --bs-border-color: #4a4a4a;
    --bs-border-color-translucent: rgba(74, 74, 74, 0.175);
}

.form-control:focus {
    --bs-body-bg: #1e1e1e;
    --bs-body-color: #ffffff;
    --bs-border-color: #FFD700;
    --bs-box-shadow: 0 0 0 0.2rem rgba(255, 215, 0, 0.25);
}

.form-select {
    --bs-body-bg: #1e1e1e;
    --bs-body-color: #ffffff;
    --bs-border-color: #4a4a4a;
    --bs-border-color-translucent: rgba(74, 74, 74, 0.175);
}

.form-select:focus {
    --bs-border-color: #FFD700;
    --bs-box-shadow: 0 0 0 0.2rem rgba(255, 215, 0, 0.25);
}

/* Table overrides */
.table {
    --bs-table-color: #ffffff;
    --bs-table-bg: transparent;
    --bs-table-border-color: #4a4a4a;
    --bs-table-striped-color: #ffffff;
    --bs-table-striped-bg: rgba(74, 74, 74, 0.05);
    --bs-table-active-color: #ffffff;
    --bs-table-active-bg: rgba(74, 74, 74, 0.1);
    --bs-table-hover-color: #ffffff;
    --bs-table-hover-bg: rgba(74, 74, 74, 0.075);
}

/* Navbar overrides */
.navbar {
    --bs-navbar-color: #ffffff;
    --bs-navbar-hover-color: #FFD700;
    --bs-navbar-disabled-color: #b0b0b0;
    --bs-navbar-active-color: #FFD700;
    --bs-navbar-brand-color: #ffffff;
    --bs-navbar-brand-hover-color: #FFD700;
    --bs-navbar-toggler-border-color: #4a4a4a;
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Modal overrides */
.modal-content {
    --bs-modal-color: #ffffff;
    --bs-modal-bg: #1e1e1e;
    --bs-modal-border-color: #4a4a4a;
    --bs-modal-header-border-color: #4a4a4a;
    --bs-modal-footer-border-color: #4a4a4a;
}

.modal-backdrop {
    --bs-backdrop-bg: rgba(0, 0, 0, 0.8);
    --bs-backdrop-opacity: 0.8;
}

/* Dropdown overrides */
.dropdown-menu {
    --bs-dropdown-color: #ffffff;
    --bs-dropdown-bg: #1e1e1e;
    --bs-dropdown-border-color: #4a4a4a;
    --bs-dropdown-link-color: #ffffff;
    --bs-dropdown-link-hover-color: #ffffff;
    --bs-dropdown-link-hover-bg: #333333;
    --bs-dropdown-link-active-color: #000000;
    --bs-dropdown-link-active-bg: #FFD700;
    --bs-dropdown-link-disabled-color: #b0b0b0;
    --bs-dropdown-header-color: #FFD700;
    --bs-dropdown-divider-bg: #4a4a4a;
}

/* Pagination overrides */
.pagination {
    --bs-pagination-color: #ffffff;
    --bs-pagination-bg: #1e1e1e;
    --bs-pagination-border-color: #4a4a4a;
    --bs-pagination-hover-color: #FFD700;
    --bs-pagination-hover-bg: #333333;
    --bs-pagination-hover-border-color: #FFD700;
    --bs-pagination-focus-color: #FFD700;
    --bs-pagination-focus-bg: #333333;
    --bs-pagination-focus-border-color: #FFD700;
    --bs-pagination-focus-box-shadow: 0 0 0 0.2rem rgba(255, 215, 0, 0.25);
    --bs-pagination-active-color: #000000;
    --bs-pagination-active-bg: #FFD700;
    --bs-pagination-active-border-color: #FFD700;
    --bs-pagination-disabled-color: #b0b0b0;
    --bs-pagination-disabled-bg: #1e1e1e;
    --bs-pagination-disabled-border-color: #4a4a4a;
}

/* Alert overrides */
.alert-primary {
    --bs-alert-color: #000000;
    --bs-alert-bg: rgba(255, 215, 0, 0.1);
    --bs-alert-border-color: #FFD700;
    --bs-alert-link-color: #000000;
}

.alert-secondary {
    --bs-alert-color: #ffffff;
    --bs-alert-bg: #1a1a1a;
    --bs-alert-border-color: #4a4a4a;
    --bs-alert-link-color: #FFD700;
}

.alert-success {
    --bs-alert-color: #ffffff;
    --bs-alert-bg: rgba(40, 167, 69, 0.1);
    --bs-alert-border-color: #28a745;
    --bs-alert-link-color: #ffffff;
}

.alert-danger {
    --bs-alert-color: #ffffff;
    --bs-alert-bg: rgba(220, 53, 69, 0.1);
    --bs-alert-border-color: #dc3545;
    --bs-alert-link-color: #ffffff;
}

.alert-warning {
    --bs-alert-color: #000000;
    --bs-alert-bg: rgba(255, 193, 7, 0.1);
    --bs-alert-border-color: #ffc107;
    --bs-alert-link-color: #000000;
}

.alert-info {
    --bs-alert-color: #ffffff;
    --bs-alert-bg: rgba(23, 162, 184, 0.1);
    --bs-alert-border-color: #17a2b8;
    --bs-alert-link-color: #ffffff;
}

/* Badge overrides */
.badge {
    --bs-badge-color: #000000;
    --bs-badge-padding-x: 0.65em;
    --bs-badge-padding-y: 0.35em;
    --bs-badge-font-size: 0.75em;
    --bs-badge-font-weight: 700;
    --bs-badge-color: #000000;
    --bs-badge-border-radius: 0.375rem;
}

.bg-primary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

/* Text color overrides */
.text-primary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

/* Border color overrides */
.border-primary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

/* Additional utility classes */
.bg-gold {
    background-color: #FFD700 !important;
}

.text-gold {
    color: #FFD700 !important;
}

.border-gold {
    border-color: #FFD700 !important;
}

.shadow-gold {
    box-shadow: 0 4px 12px rgba(255, 215, 0, 0.3) !important;
}
