/* ============================================
   MASTER COLOR CONFIGURATION FILE
   ============================================
   CHANGE PRIMARY COLOR HERE TO UPDATE ENTIRE APPLICATION
   This file controls: Buttons, Backgrounds, Borders
   Text colors remain unchanged for readability
   ============================================ */

:root {
    /* ============================================
       PRIMARY COLOR - CHANGE THIS VALUE
       ============================================ */
    --app-primary-color: #00557A;  /* ⭐ CHANGE THIS VALUE TO UPDATE ALL PRIMARY COLORS ⭐ */
    --app-primary-rgb: 0, 85, 122;  /* RGB values - Update these when changing color above */

    /* ============================================
       PRIMARY COLOR VARIANTS (Auto-calculated)
       ============================================ */
    --app-primary-hover: #004461;  /* Darker shade for hover states */
    --app-primary-focus: #003349;  /* Even darker for focus states */
    --app-primary-light: rgba(var(--app-primary-rgb), 0.1);  /* 10% opacity */
    --app-primary-lighter: rgba(var(--app-primary-rgb), 0.05);  /* 5% opacity */

    /* ============================================
       BOOTSTRAP PRIMARY COLOR OVERRIDES
       ============================================ */
    --bs-primary: var(--app-primary-color);
    --bs-primary-rgb: var(--app-primary-rgb);
    --bs-primary-hover: var(--app-primary-hover);
    --bs-primary-focus: var(--app-primary-focus);

    /* ============================================
       BUTTON COLORS
       ============================================ */
    --btn-primary-bg: var(--app-primary-color);
    --btn-primary-border: var(--app-primary-color);
    --btn-primary-hover-bg: var(--app-primary-hover);
    --btn-primary-hover-border: var(--app-primary-hover);
    --btn-primary-focus-bg: var(--app-primary-focus);
    --btn-primary-focus-border: var(--app-primary-focus);
    --btn-primary-text: #ffffff;  /* White text on primary buttons */

    /* ============================================
       BACKGROUND COLORS
       ============================================ */
    --bg-primary: var(--app-primary-color);
    --bg-primary-light: var(--app-primary-light);
    --bg-primary-lighter: var(--app-primary-lighter);

    /* ============================================
       BORDER COLORS
       ============================================ */
    --border-primary: var(--app-primary-color);
    --border-primary-light: var(--app-primary-light);

    /* ============================================
       BOOTSTRAP SECONDARY COLOR
       ============================================ */
    --app-secondary-color: #6c757d;
    --app-secondary-rgb: 108, 117, 125;
    --app-secondary-hover: #5c636a;
    --app-secondary-focus: #565e64;
    --bs-secondary: var(--app-secondary-color);
    --bs-secondary-rgb: var(--app-secondary-rgb);

    /* ============================================
       BOOTSTRAP SUCCESS COLOR
       ============================================ */
    --app-success-color: #198754;
    --app-success-rgb: 25, 135, 84;
    --app-success-hover: #157347;
    --app-success-focus: #146c43;
    --bs-success: var(--app-success-color);
    --bs-success-rgb: var(--app-success-rgb);

    /* ============================================
       BOOTSTRAP DANGER COLOR
       ============================================ */
    --app-danger-color: #dc3545;
    --app-danger-rgb: 220, 53, 69;
    --app-danger-hover: #bb2d3b;
    --app-danger-focus: #b02a37;
    --bs-danger: var(--app-danger-color);
    --bs-danger-rgb: var(--app-danger-rgb);

    /* ============================================
       BOOTSTRAP WARNING COLOR
       ============================================ */
    --app-warning-color: #ffc107;
    --app-warning-rgb: 255, 193, 7;
    --app-warning-hover: #ffca2c;
    --app-warning-focus: #ffcd39;
    --bs-warning: var(--app-warning-color);
    --bs-warning-rgb: var(--app-warning-rgb);

    /* ============================================
       BOOTSTRAP INFO COLOR
       ============================================ */
    --app-info-color: #0dcaf0;
    --app-info-rgb: 13, 202, 240;
    --app-info-hover: #0aa2c0;
    --app-info-focus: #0a98af;
    --bs-info: var(--app-info-color);
    --bs-info-rgb: var(--app-info-rgb);

    /* ============================================
       BOOTSTRAP LIGHT COLOR
       ============================================ */
    --app-light-color: #f8f9fa;
    --app-light-rgb: 248, 249, 250;
    --bs-light: var(--app-light-color);
    --bs-light-rgb: var(--app-light-rgb);

    /* ============================================
       BOOTSTRAP DARK COLOR
       ============================================ */
    --app-dark-color: #212529;
    --app-dark-rgb: 33, 37, 41;
    --bs-dark: var(--app-dark-color);
    --bs-dark-rgb: var(--app-dark-rgb);

    /* ============================================
       LINK COLORS (Optional - uncomment to change link colors)
       ============================================ */
    /* --bs-link-color: var(--app-primary-color); */
    /* --bs-link-hover-color: var(--app-primary-hover); */

    /* ============================================
       PRIMARY COLOR VARIABLES (from _variables.scss)
       ============================================ */
    --primary-rgb: var(--app-primary-rgb);
    --primary-bg-color: var(--app-primary-color);
    --primary-bg-hover: var(--app-primary-hover);
    --primary-bg-border: var(--app-primary-color);
    --primary01: rgba(var(--app-primary-rgb), 0.1);
    --primary02: rgba(var(--app-primary-rgb), 0.2);
    --primary03: rgba(var(--app-primary-rgb), 0.3);
    --primary04: rgba(var(--app-primary-rgb), 0.4);
    --primary05: rgba(var(--app-primary-rgb), 0.5);
    --primary06: rgba(var(--app-primary-rgb), 0.6);
    --primary07: rgba(var(--app-primary-rgb), 0.7);
    --primary08: rgba(var(--app-primary-rgb), 0.8);
    --primary09: rgba(var(--app-primary-rgb), 0.9);
    --primary005: rgba(var(--app-primary-rgb), 0.05);
    --primary: var(--app-primary-color);
    --transparent-primary: var(--app-primary-color);

    /* ============================================
       THEME COLORS (Dark, Transparent, etc.)
       ============================================ */
    --dark-body: #292e4a;
    --dark-border: #30314e;
    --transparent-bg-rgb: 88, 76, 217;
    --transparent-body: rgb(var(--transparent-bg-rgb));
    --transparent-theme: rgba(0, 0, 0, 0.2);
    --transparent-border: rgba(255, 255, 255, 0.1);
    --blue: #1a1a3c;
    --dark-primary-hover: #233ac5;
    --primary-transparentcolor: #eaedf7;
    --darkprimary-transparentcolor: #2b356e;
    --transparentprimary-transparentcolor: rgba(255, 255, 255, 0.05);

    /* ============================================
       UTILITY VARIABLES
       ============================================ */
    --float-right: right;
    --float-left: left;

    /* ============================================
       ADDITIONAL COLOR VARIABLES (from _variables.scss)
       ============================================ */
    --indigo: #4b0082;
    --purple: #6f42c1;
    --pink: #fc5296;
    --orange: #fd7e14;
    --yellow: #FBB034;
    --green: #28a745;
    --teal: #20c997;
    --cyan: #17a2b8;
    --white: #ffffff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --secondary: var(--app-secondary-color);
    --success: var(--app-success-color);
    --info: var(--app-info-color);
    --warning: var(--app-warning-color);
    --danger: var(--app-danger-color);
    --light: var(--app-light-color);
    --dark: var(--app-dark-color);

    /* ============================================
       BREAKPOINT VARIABLES
       ============================================ */
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;

    /* ============================================
       FONT FAMILY VARIABLES
       ============================================ */
    --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

    /* ============================================
       SCROLLBAR COLOR - Uses Primary Color
       ============================================ */
    --scrollbar-thumb-color: var(--app-primary-color);
}

/* ============================================
   BUTTON STYLES - Uses Master Color
   ============================================ */
.btn-primary,
button.btn-primary,
a.btn-primary {
    background-color: var(--btn-primary-bg) !important;
    border-color: var(--btn-primary-border) !important;
    color: var(--btn-primary-text) !important;
}

.btn-primary:hover,
button.btn-primary:hover,
a.btn-primary:hover {
    background-color: var(--btn-primary-hover-bg) !important;
    border-color: var(--btn-primary-hover-border) !important;
    color: var(--btn-primary-text) !important;
}

.btn-primary:focus,
button.btn-primary:focus,
a.btn-primary:focus,
.btn-primary.focus {
    background-color: var(--btn-primary-focus-bg) !important;
    border-color: var(--btn-primary-focus-border) !important;
    color: var(--btn-primary-text) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-primary-rgb), 0.25) !important;
}

.btn-primary:active,
button.btn-primary:active,
a.btn-primary:active,
.btn-primary.active {
    background-color: var(--btn-primary-focus-bg) !important;
    border-color: var(--btn-primary-focus-border) !important;
    color: var(--btn-primary-text) !important;
}

.btn-primary:disabled,
button.btn-primary:disabled,
a.btn-primary:disabled,
.btn-primary.disabled {
    background-color: var(--btn-primary-bg) !important;
    border-color: var(--btn-primary-border) !important;
    opacity: 0.65;
}

/* Outline Primary Button */
.btn-outline-primary {
    border-color: var(--app-primary-color) !important;
    color: var(--app-primary-color) !important;
    background-color: transparent !important;
}

.btn-outline-primary:hover {
    background-color: var(--app-primary-color) !important;
    border-color: var(--app-primary-color) !important;
    color: #ffffff !important;
}

.btn-outline-primary:focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--app-primary-rgb), 0.25) !important;
}

/* ============================================
   BACKGROUND UTILITIES - Uses Master Color
   ============================================ */
.bg-primary {
    background-color: var(--bg-primary) !important;
}

.bg-primary-light {
    background-color: var(--bg-primary-light) !important;
}

.bg-primary-lighter {
    background-color: var(--bg-primary-lighter) !important;
}

/* ============================================
   BORDER UTILITIES - Uses Master Color
   ============================================ */
.border-primary {
    border-color: var(--border-primary) !important;
}

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

/* ============================================
   INPUT FOCUS STATES - Uses Master Color
   ============================================ */
.form-control:focus,
.form-select:focus,
input:focus,
select:focus,
textarea:focus {
    border-color: var(--app-primary-color) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-primary-rgb), 0.25) !important;
}

/* ============================================
   SELECT2 FOCUS - Uses Master Color
   ============================================ */
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: var(--app-primary-color) !important;
}

/* ============================================
   CHECKBOX & RADIO - Uses Master Color
   ============================================ */
.form-check-input:checked {
    background-color: var(--app-primary-color) !important;
    border-color: var(--app-primary-color) !important;
}

.form-check-input:focus {
    border-color: var(--app-primary-color) !important;
    box-shadow: 0 0 0 0.25rem rgba(var(--app-primary-rgb), 0.25) !important;
}

/* ============================================
   PROGRESS BAR - Uses Master Color
   ============================================ */
.progress-bar {
    background-color: var(--app-primary-color) !important;
}

/* ============================================
   BADGE PRIMARY - Uses Master Color
   ============================================ */
.badge.bg-primary {
    background-color: var(--app-primary-color) !important;
}

/* ============================================
   ALERT PRIMARY - Uses Master Color
   ============================================ */
.alert-primary {
    background-color: var(--bg-primary-lighter) !important;
    border-color: var(--border-primary-light) !important;
    color: var(--app-primary-color) !important;
}

/* ============================================
   TABLE PRIMARY - Uses Master Color
   ============================================ */
.table-primary {
    background-color: var(--bg-primary-lighter) !important;
}

.table-primary > th,
.table-primary > td {
    background-color: var(--bg-primary-lighter) !important;
}

/* ============================================
   PAGINATION - Uses Master Color
   ============================================ */
.page-link {
    color: var(--app-primary-color) !important;
}

.page-link:hover {
    color: var(--app-primary-hover) !important;
}

.page-item.active .page-link {
    background-color: var(--app-primary-color) !important;
    border-color: var(--app-primary-color) !important;
    color: #fff !important;
}

/* ============================================
   NAV TABS - Uses Master Color
   ============================================ */
.nav-tabs .nav-link.active {
    color: var(--app-primary-color) !important;
    border-color: var(--app-primary-color) var(--app-primary-color) #fff !important;
}

.nav-tabs .nav-link:hover {
    border-color: var(--app-primary-light) var(--app-primary-light) var(--app-primary-color) !important;
}

/* ============================================
   DROPDOWN - Uses Master Color
   ============================================ */
.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--app-primary-color) !important;
}

/* ============================================
   MODAL HEADER PRIMARY - Uses Master Color
   ============================================ */
.modal-header.bg-primary {
    background-color: var(--app-primary-color) !important;
}

/* ============================================
   BOOTSTRAP SECONDARY BUTTON STYLES
   ============================================ */
.btn-secondary,
button.btn-secondary,
a.btn-secondary {
    background-color: var(--app-secondary-color) !important;
    border-color: var(--app-secondary-color) !important;
    color: #ffffff !important;
}

.btn-secondary:hover,
button.btn-secondary:hover,
a.btn-secondary:hover {
    background-color: var(--app-secondary-hover) !important;
    border-color: var(--app-secondary-hover) !important;
    color: #ffffff !important;
}

.btn-secondary:focus,
button.btn-secondary:focus,
a.btn-secondary:focus {
    background-color: var(--app-secondary-focus) !important;
    border-color: var(--app-secondary-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-secondary-rgb), 0.25) !important;
}

.btn-outline-secondary {
    border-color: var(--app-secondary-color) !important;
    color: var(--app-secondary-color) !important;
    background-color: transparent !important;
}

.btn-outline-secondary:hover {
    background-color: var(--app-secondary-color) !important;
    border-color: var(--app-secondary-color) !important;
    color: #ffffff !important;
}

.bg-secondary {
    background-color: var(--app-secondary-color) !important;
}

.border-secondary {
    border-color: var(--app-secondary-color) !important;
}

.text-secondary {
    color: var(--app-secondary-color) !important;
}

/* ============================================
   BOOTSTRAP SUCCESS BUTTON STYLES
   ============================================ */
.btn-success,
button.btn-success,
a.btn-success {
    background-color: var(--app-success-color) !important;
    border-color: var(--app-success-color) !important;
    color: #ffffff !important;
}

.btn-success:hover,
button.btn-success:hover,
a.btn-success:hover {
    background-color: var(--app-success-hover) !important;
    border-color: var(--app-success-hover) !important;
    color: #ffffff !important;
}

.btn-success:focus,
button.btn-success:focus,
a.btn-success:focus {
    background-color: var(--app-success-focus) !important;
    border-color: var(--app-success-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-success-rgb), 0.25) !important;
}

.btn-outline-success {
    border-color: var(--app-success-color) !important;
    color: var(--app-success-color) !important;
    background-color: transparent !important;
}

.btn-outline-success:hover {
    background-color: var(--app-success-color) !important;
    border-color: var(--app-success-color) !important;
    color: #ffffff !important;
}

.bg-success {
    background-color: var(--app-success-color) !important;
}

.border-success {
    border-color: var(--app-success-color) !important;
}

.text-success {
    color: var(--app-success-color) !important;
}

/* ============================================
   BOOTSTRAP DANGER BUTTON STYLES
   ============================================ */
.btn-danger,
button.btn-danger,
a.btn-danger {
    background-color: var(--app-danger-color) !important;
    border-color: var(--app-danger-color) !important;
    color: #ffffff !important;
}

.btn-danger:hover,
button.btn-danger:hover,
a.btn-danger:hover {
    background-color: var(--app-danger-hover) !important;
    border-color: var(--app-danger-hover) !important;
    color: #ffffff !important;
}

.btn-danger:focus,
button.btn-danger:focus,
a.btn-danger:focus {
    background-color: var(--app-danger-focus) !important;
    border-color: var(--app-danger-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-danger-rgb), 0.25) !important;
}

.btn-outline-danger {
    border-color: var(--app-danger-color) !important;
    color: var(--app-danger-color) !important;
    background-color: transparent !important;
}

.btn-outline-danger:hover {
    background-color: var(--app-danger-color) !important;
    border-color: var(--app-danger-color) !important;
    color: #ffffff !important;
}

.bg-danger {
    background-color: var(--app-danger-color) !important;
}

.border-danger {
    border-color: var(--app-danger-color) !important;
}

.text-danger {
    color: var(--app-danger-color) !important;
}

/* ============================================
   BOOTSTRAP WARNING BUTTON STYLES
   ============================================ */
.btn-warning,
button.btn-warning,
a.btn-warning {
    background-color: var(--app-warning-color) !important;
    border-color: var(--app-warning-color) !important;
    color: #000000 !important;
}

.btn-warning:hover,
button.btn-warning:hover,
a.btn-warning:hover {
    background-color: var(--app-warning-hover) !important;
    border-color: var(--app-warning-hover) !important;
    color: #000000 !important;
}

.btn-warning:focus,
button.btn-warning:focus,
a.btn-warning:focus {
    background-color: var(--app-warning-focus) !important;
    border-color: var(--app-warning-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-warning-rgb), 0.25) !important;
}

.btn-outline-warning {
    border-color: var(--app-warning-color) !important;
    color: var(--app-warning-color) !important;
    background-color: transparent !important;
}

.btn-outline-warning:hover {
    background-color: var(--app-warning-color) !important;
    border-color: var(--app-warning-color) !important;
    color: #000000 !important;
}

.bg-warning {
    background-color: var(--app-warning-color) !important;
}

.border-warning {
    border-color: var(--app-warning-color) !important;
}

.text-warning {
    color: var(--app-warning-color) !important;
}

/* ============================================
   BOOTSTRAP INFO BUTTON STYLES
   ============================================ */
.btn-info,
button.btn-info,
a.btn-info {
    background-color: var(--app-info-color) !important;
    border-color: var(--app-info-color) !important;
    color: #000000 !important;
}

.btn-info:hover,
button.btn-info:hover,
a.btn-info:hover {
    background-color: var(--app-info-hover) !important;
    border-color: var(--app-info-hover) !important;
    color: #000000 !important;
}

.btn-info:focus,
button.btn-info:focus,
a.btn-info:focus {
    background-color: var(--app-info-focus) !important;
    border-color: var(--app-info-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(var(--app-info-rgb), 0.25) !important;
}

.btn-outline-info {
    border-color: var(--app-info-color) !important;
    color: var(--app-info-color) !important;
    background-color: transparent !important;
}

.btn-outline-info:hover {
    background-color: var(--app-info-color) !important;
    border-color: var(--app-info-color) !important;
    color: #000000 !important;
}

.bg-info {
    background-color: var(--app-info-color) !important;
}

.border-info {
    border-color: var(--app-info-color) !important;
}

.text-info {
    color: var(--app-info-color) !important;
}

/* ============================================
   BOOTSTRAP LIGHT & DARK UTILITIES
   ============================================ */
.bg-light {
    background-color: var(--app-light-color) !important;
}

.border-light {
    border-color: var(--app-light-color) !important;
}

.text-light {
    color: var(--app-light-color) !important;
}

.bg-dark {
    background-color: var(--app-dark-color) !important;
}

.border-dark {
    border-color: var(--app-dark-color) !important;
}

.text-dark {
    color: var(--app-dark-color) !important;
}

/* ============================================
   BOOTSTRAP ALERT STYLES
   ============================================ */
.alert-secondary {
    background-color: rgba(var(--app-secondary-rgb), 0.1) !important;
    border-color: rgba(var(--app-secondary-rgb), 0.3) !important;
    color: var(--app-secondary-color) !important;
}

.alert-success {
    background-color: rgba(var(--app-success-rgb), 0.1) !important;
    border-color: rgba(var(--app-success-rgb), 0.3) !important;
    color: var(--app-success-color) !important;
}

.alert-danger {
    background-color: rgba(var(--app-danger-rgb), 0.1) !important;
    border-color: rgba(var(--app-danger-rgb), 0.3) !important;
    color: var(--app-danger-color) !important;
}

.alert-warning {
    background-color: rgba(var(--app-warning-rgb), 0.1) !important;
    border-color: rgba(var(--app-warning-rgb), 0.3) !important;
    color: var(--app-warning-color) !important;
}

.alert-info {
    background-color: rgba(var(--app-info-rgb), 0.1) !important;
    border-color: rgba(var(--app-info-rgb), 0.3) !important;
    color: var(--app-info-color) !important;
}

/* ============================================
   BOOTSTRAP BADGE STYLES
   ============================================ */
.badge.bg-secondary {
    background-color: var(--app-secondary-color) !important;
}

.badge.bg-success {
    background-color: var(--app-success-color) !important;
}

.badge.bg-danger {
    background-color: var(--app-danger-color) !important;
}

.badge.bg-warning {
    background-color: var(--app-warning-color) !important;
}

.badge.bg-info {
    background-color: var(--app-info-color) !important;
}

.badge.bg-light {
    background-color: var(--app-light-color) !important;
    color: #000000 !important;
}

.badge.bg-dark {
    background-color: var(--app-dark-color) !important;
}

/* ============================================
   BOOTSTRAP PROGRESS BAR STYLES
   ============================================ */
.progress-bar.bg-secondary {
    background-color: var(--app-secondary-color) !important;
}

.progress-bar.bg-success {
    background-color: var(--app-success-color) !important;
}

.progress-bar.bg-danger {
    background-color: var(--app-danger-color) !important;
}

.progress-bar.bg-warning {
    background-color: var(--app-warning-color) !important;
}

.progress-bar.bg-info {
    background-color: var(--app-info-color) !important;
}

