/* 
 * PRACA Theme Colors
 * This file ensures our brand colors are applied with the correct specificity
 * and overrides any default Bootstrap colors
 */

:root {
    /* Primary brand color - PRACA Blue */
    --bs-primary: #1a365d;
    --bs-primary-rgb: 26, 54, 93;
    --bs-primary-bg-subtle: #e9edf3;
    --bs-primary-border-subtle: #d1d9e7;
    --bs-primary-text: #ffffff;

    /* Secondary brand color - PRACA Orange */
    --bs-secondary: #ff6b35;
    --bs-secondary-rgb: 255, 107, 53;
    --bs-secondary-bg-subtle: #fff2ec;
    --bs-secondary-border-subtle: #ffd6c2;
    --bs-secondary-text: #ffffff;

    /* Link colors */
    --bs-link-color: #1a365d;
    --bs-link-hover-color: #ff6b35;
    --bs-link-color-rgb: 26, 54, 93;
    --bs-link-hover-color-rgb: 255, 107, 53;

    /* For backward compatibility */
    --color-primary: #1a365d;
    --color-secondary: #ff6b35;
    --primary: #1a365d;
    --secondary: #ff6b35;
}


    /* Primary brand color - PRACA Blue */
    --bs-primary: #1a365d;
    --bs-primary-rgb: 26, 54, 93;
    --bs-primary-bg-subtle: #e9edf3;
    --bs-primary-border-subtle: #d1d9e7;
    --bs-primary-text: #ffffff;
    
    /* Link colors */
    --bs-link-color: #1a365d;
    --bs-link-hover-color: #142a4a;
    --bs-link-color-rgb: 26, 54, 93;
    --bs-link-hover-color-rgb: 20, 42, 74;
    
    /* For backward compatibility */
    --color-primary: #1a365d;
    --primary: #1a365d;
    
    /* Secondary colors */
    --bs-secondary: #6c757d;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-secondary-text: #ffffff;
    
    /* Success colors */
    --bs-success: #198754;
    --bs-success-rgb: 25, 135, 84;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-success-border-subtle: #a3cfbb;
    --bs-success-text: #ffffff;
    
    /* Info colors */
    --bs-info: #0dcaf0;
    --bs-info-rgb: 13, 202, 240;
    --bs-info-bg-subtle: #cff4fc;
    --bs-info-border-subtle: #9eeaf9;
    --bs-info-text: #000000;
    
    /* Warning colors */
    --bs-warning: #ffc107;
    --bs-warning-rgb: 255, 193, 7;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-warning-border-subtle: #ffe69c;
    --bs-warning-text: #000000;
    
    /* Danger colors */
    --bs-danger: #dc3545;
    --bs-danger-rgb: 220, 53, 69;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-danger-text: #ffffff;
    
    /* Light colors */
    --bs-light: #f8f9fa;
    --bs-light-rgb: 248, 249, 250;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-light-border-subtle: #f8f9fa;
    --bs-light-text: #000000;
    
    /* Dark colors */
    --bs-dark: #212529;
    --bs-dark-rgb: 33, 37, 41;
    --bs-dark-bg-subtle: #d6d8d9;
    --bs-dark-border-subtle: #adb5bd;
    --bs-dark-text: #ffffff;
}

/* Ensure our primary color is used for all primary elements */
.btn-primary,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:disabled,
.show > .btn-primary.dropdown-toggle {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: #142a4a;
    --bs-btn-hover-border-color: #142a4a;
    --bs-btn-active-bg: #142a4a;
    --bs-btn-active-border-color: #142a4a;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

/* Navbar theming */
.navbar-dark {
    --bs-navbar-color: rgba(255, 255, 255, 0.85);
    --bs-navbar-hover-color: rgba(255, 255, 255, 1);
    --bs-navbar-disabled-color: rgba(255, 255, 255, 0.5);
    --bs-navbar-active-color: #fff;
    --bs-navbar-brand-color: #fff;
    --bs-navbar-brand-hover-color: #fff;
    --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
    --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");
}

/* Ensure form controls use our primary color for focus states */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
.form-range:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.25rem rgba(26, 54, 93, 0.25);
}

/* Custom utility classes */
.bg-primary-soft {
    background-color: var(--bs-primary-bg-subtle) !important;
    color: var(--bs-primary) !important;
}

.text-primary {
    color: var(--bs-primary) !important;
}

.border-primary {
    border-color: var(--bs-primary) !important;
}

/* Ensure active states use our primary color */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: var(--bs-primary);
}

/* Ensure dropdown items use our primary color */
.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--bs-primary);
}

/* Pagination theming */
.page-link {
    color: var(--bs-primary);
}

.page-item.active .page-link {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Progress bar theming */
.progress-bar {
    background-color: var(--bs-primary);
}

/* List group theming */
.list-group-item.active {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Custom checkbox and radio */
.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Custom switch */
.form-switch .form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Tooltips */
.tooltip-inner {
    background-color: var(--bs-primary);
}

.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,
.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--bs-primary);
}

/* Popovers */
.popover-header {
    background-color: var(--bs-primary);
    color: var(--bs-primary-text);
}

/* Toasts */
.toast-header {
    background-color: var(--bs-primary);
    color: var(--bs-primary-text);
}

/* Modal */
.modal-header {
    background-color: var(--bs-primary);
    color: var(--bs-primary-text);
}

/* Carousel */
.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: var(--bs-primary);
    border-radius: 50%;
    padding: 10px;
}

/* Accordion */
.accordion-button:not(.collapsed) {
    background-color: var(--bs-primary-bg-subtle);
    color: var(--bs-primary);
}

.accordion-button:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.25rem rgba(26, 54, 93, 0.25);
}

/* Offcanvas */
.offcanvas-header {
    background-color: var(--bs-primary);
    color: var(--bs-primary-text);
}
