/*
 * BIPED Custom Theme
 * Restores the original custom Bootstrap Customizer color palette
 * (config ID 68111189000675ac6f5c5c48b4e2e1cc)
 * on top of vanilla Bootstrap 5.3.
 *
 * Original colors:
 *   Primary: #5a2887 (purple)      hover: #401c60  border: #4d2273
 *   Success: #00a56e (teal green)  hover: #00724c  border: #008c5d
 *   Info:    #e6ad00 (amber/gold)  hover: #b38700  border: #cd9a00
 *   Danger:  #e60064 (hot pink)    hover: #b3004e  border: #cd0059
 *   Warning: #f0ad4e (unchanged)
 */

/* ===== Headings (restore BS3 margin-top) ===== */
h1, .h1, h2, .h2, h3, .h3 {
    margin-top: 20px;
    margin-bottom: 10px;
}
.popover-header {
    margin-top: 0;
    margin-bottom: 0;
}

/* ===== Root CSS custom property overrides ===== */
:root,
[data-bs-theme="light"] {
    --bs-primary: #5a2887;
    --bs-primary-rgb: 90, 40, 135;
    --bs-success: #00a56e;
    --bs-success-rgb: 0, 165, 110;
    --bs-info: #31b0d5;
    --bs-info-rgb: 49, 176, 213;
    --bs-danger: #e60064;
    --bs-danger-rgb: 230, 0, 100;

    --bs-link-color: #5a2887;
    --bs-link-color-rgb: 90, 40, 135;
    --bs-link-hover-color: #401c60;
    --bs-link-hover-color-rgb: 64, 28, 96;
}

/* ===== Links ===== */
a {
    color: #5a2887;
}
a:hover, a:focus {
    color: #401c60;
}

/* Prevent browser :visited color from overriding button text */
a.btn:visited {
    color: var(--bs-btn-color);
}

/* ===== Primary buttons ===== */
.btn-primary {
    --bs-btn-bg: #5a2887;
    --bs-btn-border-color: #4d2273;
    --bs-btn-hover-bg: #401c60;
    --bs-btn-hover-border-color: #2d1444;
    --bs-btn-active-bg: #401c60;
    --bs-btn-active-border-color: #2d1444;
    --bs-btn-focus-shadow-rgb: 90, 40, 135;
    --bs-btn-disabled-bg: #5a2887;
    --bs-btn-disabled-border-color: #4d2273;
}

.btn-outline-primary {
    --bs-btn-color: #5a2887;
    --bs-btn-border-color: #5a2887;
    --bs-btn-hover-bg: #5a2887;
    --bs-btn-hover-border-color: #5a2887;
    --bs-btn-active-bg: #5a2887;
    --bs-btn-active-border-color: #5a2887;
    --bs-btn-focus-shadow-rgb: 90, 40, 135;
}

/* ===== Success buttons ===== */
.btn-success {
    --bs-btn-bg: #00a56e;
    --bs-btn-border-color: #008c5d;
    --bs-btn-hover-bg: #00724c;
    --bs-btn-hover-border-color: #004e34;
    --bs-btn-active-bg: #00724c;
    --bs-btn-active-border-color: #004e34;
    --bs-btn-focus-shadow-rgb: 0, 165, 110;
    --bs-btn-disabled-bg: #00a56e;
    --bs-btn-disabled-border-color: #008c5d;
}

.btn-outline-success {
    --bs-btn-color: #00a56e;
    --bs-btn-border-color: #00a56e;
    --bs-btn-hover-bg: #00a56e;
    --bs-btn-hover-border-color: #00a56e;
    --bs-btn-active-bg: #00a56e;
    --bs-btn-active-border-color: #00a56e;
    --bs-btn-focus-shadow-rgb: 0, 165, 110;
}

/* ===== Info buttons ===== */
.btn-info {
    --bs-btn-color: #fff;
    --bs-btn-bg: #e6ad00;
    --bs-btn-border-color: #cd9a00;
    --bs-btn-hover-bg: #b38700;
    --bs-btn-hover-border-color: #9f7700;
    --bs-btn-active-bg: #b38700;
    --bs-btn-active-border-color: #9f7700;
    --bs-btn-focus-shadow-rgb: 230, 173, 0;
    --bs-btn-disabled-bg: #e6ad00;
    --bs-btn-disabled-border-color: #cd9a00;
}

.btn-outline-info {
    --bs-btn-color: #e6ad00;
    --bs-btn-border-color: #e6ad00;
    --bs-btn-hover-bg: #e6ad00;
    --bs-btn-hover-border-color: #e6ad00;
    --bs-btn-active-bg: #e6ad00;
    --bs-btn-active-border-color: #e6ad00;
    --bs-btn-focus-shadow-rgb: 230, 173, 0;
}

/* ===== Danger buttons ===== */
.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #e60064;
    --bs-btn-border-color: #cd0059;
    --bs-btn-hover-bg: #b3004e;
    --bs-btn-hover-border-color: #9f0045;
    --bs-btn-active-bg: #b3004e;
    --bs-btn-active-border-color: #9f0045;
    --bs-btn-focus-shadow-rgb: 230, 0, 100;
    --bs-btn-disabled-bg: #e60064;
    --bs-btn-disabled-border-color: #cd0059;
}

.btn-outline-danger {
    --bs-btn-color: #e60064;
    --bs-btn-border-color: #e60064;
    --bs-btn-hover-bg: #e60064;
    --bs-btn-hover-border-color: #e60064;
    --bs-btn-active-bg: #e60064;
    --bs-btn-active-border-color: #e60064;
    --bs-btn-focus-shadow-rgb: 230, 0, 100;
}

/* ===== Background utility classes ===== */
.bg-primary {
    background-color: #5a2887 !important;
}
.bg-success {
    background-color: #00a56e !important;
}
.bg-info {
    background-color: #31b0d5 !important;
}
.bg-danger {
    background-color: #e60064 !important;
}

/* ===== Text color utilities ===== */
.text-primary {
    color: #5a2887 !important;
}
.text-success {
    color: #00a56e !important;
}
.text-info {
    color: #31b0d5 !important;
}
.text-danger {
    color: #e60064 !important;
}

/* ===== Badges ===== */
.badge.bg-primary {
    background-color: #5a2887 !important;
}
.badge.bg-success {
    background-color: #00a56e !important;
}
.badge.bg-info {
    background-color: #31b0d5 !important;
    color: #fff;
}
.badge.bg-danger {
    background-color: #e60064 !important;
}

/* ===== Form focus state ===== */
.form-control:focus,
.form-select:focus {
    border-color: #5a2887;
    box-shadow: 0 0 0 0.25rem rgba(90, 40, 135, 0.25);
}

/* ===== Pagination ===== */
.page-link {
    color: #5a2887;
}
.page-link:hover {
    color: #401c60;
}
.page-item.active .page-link {
    background-color: #5a2887;
    border-color: #4d2273;
}

/* ===== List group active state ===== */
.list-group-item.active {
    background-color: #5a2887;
    border-color: #461f69;
}

/* ===== Progress bars ===== */
.progress-bar {
    background-color: #5a2887;
}

/* ===== Dropdown items ===== */
.dropdown-item.active,
.dropdown-item:active {
    background-color: #5a2887;
}

/* BS3 compat: style bare <a> inside dropdown-menu > li as dropdown items */
.dropdown-menu > li > a:not(.dropdown-item) {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 400;
    color: var(--bs-dropdown-link-color);
    text-decoration: none;
    white-space: nowrap;
    border: 0;
    border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-menu > li > a:not(.dropdown-item):hover,
.dropdown-menu > li > a:not(.dropdown-item):focus {
    color: var(--bs-dropdown-link-hover-color);
    background-color: var(--bs-dropdown-link-hover-bg);
}

/* ===== Navbar ===== */
.navbar.bg-light {
    background-color: #eee !important;
    border-bottom: 1px solid #ddd;
}
.navbar.bg-light .navbar-brand {
    color: #777;
}
.navbar.bg-light .navbar-brand:hover,
.navbar.bg-light .navbar-brand:focus {
    color: #5e5e5e;
}
.navbar.bg-light .navbar-nav .nav-link {
    color: #777;
}
.navbar.bg-light .navbar-nav .nav-link:hover,
.navbar.bg-light .navbar-nav .nav-link:focus {
    color: #333;
}
.navbar.bg-light .navbar-nav .nav-link.active {
    color: #555;
    background-color: #ddd;
}

/* ===== Alerts (info variant: blue, matching BS3) ===== */
.alert-info {
    --bs-alert-color: #31708f;
    --bs-alert-bg: #d9edf7;
    --bs-alert-border-color: #bce8f1;
}

/* ===== Cards (panel replacement) ===== */

/* .card-title: restore BS3 panel-title sizing (was font-size: 16px, no margin).
 * font-weight is needed because BS5's reboot styles h1-h6 at 500, which next
 * to body text (400) reads as plain text — BS3 panel-title got its visual
 * weight from the browser-default bold on the wrapping <h3>. */
.card-title {
    font-size: 1rem;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 0;
}

/* Default card header (was panel-default > panel-heading) */
.card-header {
    background-color: #f5f5f5;
    border-bottom: 1px solid #ddd;
    padding: 0.75rem 0.75rem;
}

/* Gradient header for form block cards (candidate detail blocks) */
.card.block > .card-header {
    background: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
}
.card {
    border-color: #ddd;
    margin-bottom: 20px;
}

/* Colored card headers: reproduce BS3 panel-X > panel-heading colors */
.card.border-primary > .card-header {
    color: #fff;
    background-color: #5a2887;
    border-bottom-color: #5a2887;
}
.card.border-success > .card-header {
    color: #3c763d;
    background-color: #dff0d8;
    border-bottom-color: #d6e9c6;
}
.card.border-info > .card-header {
    color: #31708f;
    background-color: #d9edf7;
    border-bottom-color: #bce8f1;
}
.card.border-warning > .card-header {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-bottom-color: #faebcc;
}
.card.border-danger > .card-header {
    color: #a94442;
    background-color: #f2dede;
    border-bottom-color: #ebccd1;
}

/* ===== Breadcrumb (restore BS3 grey box) ===== */
.breadcrumb {
    padding: 8px 15px;
    margin-top: 15px;
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border-radius: 0;
}

/* ===== Border utilities for primary ===== */
.border-primary {
    border-color: #5a2887 !important;
}

/* ===== Nav tabs/pills active ===== */
.nav-pills .nav-link.active {
    background-color: #5a2887;
}
.nav-link {
    color: #5a2887;
}
.nav-link:hover,
.nav-link:focus {
    color: #401c60;
}

/* ===== Table row highlight ===== */
.table-primary {
    --bs-table-bg: #e8ddf0;
    --bs-table-border-color: #d4c5e0;
}

/* ===== Fixed-bottom navbar (footer) ===== */
.navbar.fixed-bottom.bg-light {
    border-top: 1px solid #ddd;
    border-bottom: none;
}

/* ===== bootstrap-select placeholder: greyed-out text ===== */
.bootstrap-select > .dropdown-toggle.bs-placeholder,
.bootstrap-select > .dropdown-toggle.bs-placeholder:active,
.bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
    color: #999 !important;
}

/* ===== bootstrap-select dropdowns: match btn-secondary styling ===== */
.bootstrap-select > .dropdown-toggle,
.bootstrap-select > .dropdown-toggle:focus {
    background-color: #fff !important;
    color: #333 !important;
    border: 1px solid #ccc !important;
}
.bootstrap-select > .dropdown-toggle:hover {
    background-color: #e6e6e6 !important;
    border-color: #adadad !important;
}

/* ===== btn-block: BS3 full-width button, removed in BS5 ===== */
.btn-block {
    display: block;
    width: 100%;
}

/* ===== Secondary button (was btn-default) ===== */
.btn-secondary {
    --bs-btn-bg: #fff;
    --bs-btn-color: #333;
    --bs-btn-border-color: #ccc;
    --bs-btn-hover-bg: #e6e6e6;
    --bs-btn-hover-color: #333;
    --bs-btn-hover-border-color: #adadad;
    --bs-btn-active-bg: #e6e6e6;
    --bs-btn-active-color: #333;
    --bs-btn-active-border-color: #adadad;
    --bs-btn-disabled-bg: #fff;
    --bs-btn-disabled-color: #333;
    --bs-btn-disabled-border-color: #ccc;
}
