
:root {
    /* Primary Brand Colors */
    --primary: #1e4e87;
    --secondary: #afd13c;
    
    /* Status Colors */
    --success: #198754;
    --danger: #dc3545;
    --warning: #ffc107;
    --info: #0dcaf0;
    
    /* Background Colors */
    --body-bg: #f7faec;
    --card-bg: #f7faec;
    
    /* Text Colors */
    --text-color: #1e4e87;
    --text-muted: #1e4e87;
    
    /* Border Colors */
    --border-color: #dee2e6;
    
    /* Navbar */
    --navbar-bg: #f7faec;
    --navbar-color: #1e4e87;
    --navbar-text-fallback: #ffffff; /* Fallback white color */
    
    /* Logo Settings */
    --logo-width: 150px;
    --logo-height: 50px;
    --logo-margin-top: 10px;
    --logo-margin-bottom: 10px;
    --logo-margin-left: 0px;
    --logo-margin-right: 0px;
    
    /* Bootstrap Compatible Variables */
    --bs-primary: #1e4e87;
    --bs-secondary: #afd13c;
    --bs-success: #198754;
    --bs-danger: #dc3545;
    --bs-warning: #ffc107;
    --bs-info: #0dcaf0;
    --bs-body-bg: #f7faec;
    --bs-body-color: #1e4e87;
    --bs-border-color: #dee2e6;
}

/* Apply colors to common elements */
body {
    background-color: var(--body-bg);
    color: var(--text-color);
}

.btn-primary {
    background-color: var(--primary);
    border-color: var(--primary);
}

.btn-secondary {
    background-color: var(--secondary);
    border-color: var(--secondary);
}

a {
    color: var(--primary);
}

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

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

/* Navbar Styling - Maximum Strength Application */

/* Force navbar background */
header,
header#top,
header .navbar,
.navbar,
nav.navbar,
.o_header_standard,
.o_header_affix,
#wrapwrap > header,
.o_main_navbar,
body header {
    background-color: var(--navbar-bg) !important;
}

/* Force ALL text and links to use navbar color - Maximum Priority */
header *,
header a,
header .nav-link,
header .navbar-brand,
header .navbar-nav .nav-link,
header span,
header i,
header button,
.navbar *,
.navbar a,
.navbar .nav-link,
.navbar .navbar-brand,
.navbar span,
.navbar i,
.navbar button,
nav.navbar *,
nav.navbar a,
nav.navbar .nav-link,
.o_header_standard *,
.o_header_standard a,
.o_header_standard .nav-link,
#wrapwrap > header *,
#wrapwrap > header a,
#wrapwrap > header .nav-link,
.o_main_navbar *,
.o_main_navbar a,
.o_main_navbar .nav-link {
    color: #1e4e87 !important;
}

/* Specific elements with extra priority */
header a:not(.btn),
header .navbar-brand,
header .nav-link,
.navbar a:not(.btn),
.navbar .navbar-brand,
.navbar .nav-link {
    color: #1e4e87 !important;
}

/* Icons and special elements */
header i,
header .fa,
header .bi,
.navbar i,
.navbar .fa,
.navbar .bi {
    color: #1e4e87 !important;
}

/* User name, phone, and text */
header span:not(.btn):not(.badge),
.navbar span:not(.btn):not(.badge) {
    color: #1e4e87 !important;
}

/* Hover states */
header a:hover,
header .nav-link:hover,
.navbar a:hover,
.navbar .nav-link:hover {
    color: #1e4e87 !important;
    opacity: 0.8;
}

/* Navbar toggler */
header .navbar-toggler,
.navbar .navbar-toggler {
    border-color: #1e4e87 !important;
    color: #1e4e87 !important;
}

header .navbar-toggler-icon,
.navbar .navbar-toggler-icon {
    color: #1e4e87 !important;
}

/* Bootstrap variables override */
header,
.navbar,
nav.navbar {
    --bs-navbar-color: #1e4e87 !important;
    --bs-navbar-hover-color: #1e4e87 !important;
    --bs-navbar-active-color: #1e4e87 !important;
    --bs-navbar-brand-color: #1e4e87 !important;
    --bs-navbar-brand-hover-color: #1e4e87 !important;
    --bs-nav-link-color: #1e4e87 !important;
    --bs-link-color: #1e4e87 !important;
}

/* Top menu specific */
header#top #top_menu a,
header#top #top_menu > li > a,
header#top #top_menu .nav-link {
    color: #1e4e87 !important;
}

/* Dropdown items */
header .dropdown-item,
.navbar .dropdown-item,
header .dropdown-menu a {
    color: #1e4e87 !important;
}

/* Scrolled/affixed state */
header.o_header_is_scrolled,
header.o_header_is_scrolled *,
.o_header_affix,
.o_header_affix * {
    color: #1e4e87 !important;
}

/* Logo Styling */
header .navbar-brand img,
.navbar .navbar-brand img,
header img.logo,
.navbar img.logo,
.o_logo img,
img.o_website_logo,
.o_header_standard .o_logo img,
.o_header_standard .navbar-brand img {
    width: var(--logo-width) !important;
    height: var(--logo-height) !important;
    max-height: var(--logo-height) !important;
    margin-top: var(--logo-margin-top) !important;
    margin-bottom: var(--logo-margin-bottom) !important;
    margin-left: var(--logo-margin-left) !important;
    margin-right: var(--logo-margin-right) !important;
    max-width: 100% !important;
    display: inline-block !important;
    object-fit: contain !important;
}

/* Ensure logo container honors width where needed */
header .navbar-brand,
.navbar .navbar-brand,
.o_logo {
    width: var(--logo-width) !important;
}

/* Logo Position */

