/* ══════════════════════════════════════════
   GS Cash Advance — Brand Override CSS
   Load this LAST in dashboard_base.html
   <link href="{% static 'assets/css/gs-brand.css' %}" rel="stylesheet">
   ══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@300;400;600;700&display=swap');

/* ── ROOT TOKENS ── */
:root {
    --primary-color:    #055189;
    --primary-rgb:      5, 81, 137;
    --secondary-color:  #00addc;
    --secondary-rgb:    0, 173, 220;
    --mid-grey:         #54686e;
    --gray-rgb:         84, 104, 110;

    --default-body-bg-color: #f4f7f9;
    --default-font-family:   'Source Sans 3', 'Segoe UI', sans-serif;
    --default-text-color:    #1a252f;
    --text-muted:            #54686e;
    --default-border:        #e2e8f0;
    --input-border:          #cddae8;
    --bootstrap-card-border: #e2e8f0;

    --primary005: rgba(5,81,137,.05);
    --primary01:  rgba(5,81,137,.1);
    --primary02:  rgba(5,81,137,.2);
    --primary05:  rgba(5,81,137,.5);

    --header-bg:          #ffffff;
    --header-prime-color: #055189;
    --menu-bg:            #055189;
    --menu-prime-color:   #ffffff;
}

/* ── BUTTONS ── */
.btn-primary {
    background-color: #055189 !important;
    border-color:     #055189 !important;
    color: #fff !important;
}
.btn-primary:hover,
.btn-primary:focus {
    background-color: #00addc !important;
    border-color:     #00addc !important;
}
.btn-secondary {
    background-color: #00addc !important;
    border-color:     #00addc !important;
    color: #fff !important;
}

/* ── SIDEBAR SHELL ── */
.app-sidebar {
    background-color: #055189 !important;
}
.main-sidebar-header {
    background-color: #055189 !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
}

/* Logo sizing */
.main-sidebar-header .header-logo .desktop-logo,
.main-sidebar-header .header-logo .desktop-white,
.main-sidebar-header .header-logo .desktop-dark {
    height: 46px !important;
    width: auto !important;
}
.main-sidebar-header .header-logo .toggle-logo,
.main-sidebar-header .header-logo .toggle-white,
.main-sidebar-header .header-logo .toggle-dark {
    height: 46px !important;
    width: 36px !important;
    object-fit: contain !important;
}


/* ── SIDEBAR SECTION LABELS (MAIN / TICKETS / etc.) ── */
.app-sidebar .slide__category .category-name {
    color: rgba(255,255,255,.38) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
}

/* ══════════════════════════════════════════
   SIDEBAR NAV ITEMS — THE FIX
   The theme uses high-specificity selectors.
   We match them exactly and use !important
   so nothing from the theme can win.
   ══════════════════════════════════════════ */

/* DEFAULT — off-white text, no left strip */
.app-sidebar .side-menu__item,
.app-sidebar .side-menu__item:not(.active):not(:hover) {
    color:            rgba(255,255,255,.78) !important;
    background-color: transparent !important;
    border-left:      3px solid transparent !important;
    border-radius:    0 !important;
}
.app-sidebar .side-menu__item .side-menu__icon,
.app-sidebar .side-menu__item:not(.active):not(:hover) .side-menu__icon {
    color: rgba(255,255,255,.65) !important;
    fill:  rgba(255,255,255,.65) !important;
}
/* Also cover the <span> label directly */
.app-sidebar .side-menu__item .side-menu__label {
    color: rgba(255,255,255,.78) !important;
}

/* HOVER — sky blue text + icon, subtle tint */
.app-sidebar .side-menu__item:hover {
    background-color: rgba(0,173,220,.12) !important;
    color:            #00addc !important;
    border-left:      3px solid transparent !important;
    border-radius:    0 !important;
}
.app-sidebar .side-menu__item:hover .side-menu__icon {
    color: #00addc !important;
    fill:  #00addc !important;
}
.app-sidebar .side-menu__item:hover .side-menu__label {
    color: #00addc !important;
}

/* ACTIVE — white text, sky blue left strip + icon */
.app-sidebar .side-menu__item.active {
    background-color: rgba(0,173,220,.18) !important;
    color:            #ffffff !important;
    border-left:      3px solid #00addc !important;
    border-radius:    0 !important;
}
.app-sidebar .side-menu__item.active .side-menu__icon {
    color: #00addc !important;
    fill:  #00addc !important;
}
.app-sidebar .side-menu__item.active .side-menu__label {
    color: #ffffff !important;
}

/* Notification badge — sky blue bg, navy text */
.app-sidebar .badge,
.app-sidebar .side-menu__item .badge {
    background-color: #00addc !important;
    color:            #055189 !important;
    font-weight: 700 !important;
}

/* ── TOP HEADER ── */
.app-header {
    background-color: #ffffff !important;
    border-bottom: 1px solid #e2e8f0 !important;
}

/* ── CARDS ── */
.card-title {
    color: #055189;
    font-weight: 600;
}
.card-header {
    border-bottom: 1px solid #e2e8f0;
}

/* ── BADGES ── */
.badge {
    padding: .42em .85em !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    letter-spacing: .02em !important;
}
.badge.bg-primary   { background-color: #055189 !important; color: #fff !important; }
.badge.bg-info      { background-color: #00addc !important; color: #fff !important; }
.badge.bg-success   { background-color: #28a745 !important; color: #fff !important; }
.badge.bg-danger    { background-color: #dc3545 !important; color: #fff !important; }
.badge.bg-warning   { background-color: #9aacbe !important; color: #fff !important; }
.badge.bg-secondary { background-color: #e2e8f0 !important; color: #475569 !important; }

/* Transparent badge variants */
.badge.bg-primary-transparent   { background-color: rgba(5,81,137,.1)   !important; color: #055189 !important; }
.badge.bg-info-transparent      { background-color: rgba(0,173,220,.12) !important; color: #007fa3 !important; }
.badge.bg-success-transparent   { background-color: rgba(40,167,69,.1)  !important; color: #1a6b30 !important; }
.badge.bg-danger-transparent    { background-color: rgba(220,53,69,.1)  !important; color: #a3192a !important; }
.badge.bg-warning-transparent   { background-color: rgba(154,172,190,.15) !important; color: #54686e !important; }
.badge.bg-secondary-transparent { background-color: rgba(84,104,110,.1) !important; color: #54686e !important; }

/* ── PROGRESS ── */
.progress-bar { background-color: #055189 !important; }

/* ── FORM CONTROLS ── */
.form-control:focus,
.form-select:focus {
    border-color: #00addc !important;
    box-shadow: 0 0 0 3px rgba(0,173,220,.15) !important;
}

/* ── PAGE HEADER ── */
.page-header .page-title {
    color: #055189;
    font-weight: 700;
}
.breadcrumb-item a { color: #055189; }
.breadcrumb-item.active { color: #54686e; }


/* * { outline: 1px solid red !important; } */
