/* Root Variables */
:root {
    --primary: #128C7E;
}

/* Body Styles */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    background: #E8E8E8 !important;
}

/* Navbar Styles */
.navbar-nav {
    font-weight: bold;
    padding-left: 10px;
    padding-right: 10px;
}

/* Force ALL Sidebar Icons to White - Aggressive Rules */
.navbar-vertical .navbar-nav i,
.navbar-vertical .navbar-nav i.ni,
.navbar-vertical .navbar-nav i.fa-solid,
.navbar-vertical .navbar-nav i.fa-regular,
.navbar-vertical .navbar-nav i.fa-brands,
.navbar-vertical .navbar-nav i[class*="fa-"],
.navbar-nav i.ni,
.navbar-nav i.fa-solid,
.navbar-nav i.fa-regular,
.navbar-nav i.fa-brands,
.navbar-nav i[class*="fa-"] {
    color: #ffffff !important;
}

/* Make Hero Icon SVG backgrounds white with filter */
.navbar-vertical .navbar-nav i.ni,
.navbar-nav i.ni {
    filter: brightness(0) invert(1) !important;
}

/* Make Dashboard Icons white - ULTRA AGGRESSIVE - ALL VARIATIONS */
.icon-shape i,
.icon-shape i.ni,
.icon-shape i.fa-solid,
.icon-shape i.fa-regular,
.icon-shape i[class*="fa-"],
.card .icon-shape i,
.card-stats .icon-shape i,
.card-body .icon-shape i,
.header .icon-shape i,
.header-body .icon-shape i,
div.icon-shape i,
.bg-gradient-primary i,
.bg-gradient-success i,
.bg-gradient-info i,
.bg-gradient-warning i,
.bg-gradient-danger i,
.bg-yellow i,
.rounded-circle i,
.shadow i.ni {
    color: #ffffff !important;
    filter: brightness(0) invert(1) !important;
    -webkit-filter: brightness(0) invert(1) !important;
}

/* Ensure icon-shape backgrounds keep their colors */
.icon-shape {
    color: #ffffff !important;
}

/* Force all ni icons everywhere to be white */
i.ni {
    filter: brightness(0) invert(1) !important;
    -webkit-filter: brightness(0) invert(1) !important;
}

.navbar-nav .nav-link {
    color: rgba(255, 254, 254, 0.8) !important;
}

.navbar-nav .nav-link.active {
    background-color: var(--primary) !important;
    border-radius: 2rem;
    margin-left: 0px;
    margin-right: 10px;
}

.navbar-nav .nav-link.active:before {
    border-left: 0 !important;
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.active .ni {
    color: #ffffff !important;
}

.navbar-brand {
    padding-bottom: 0 !important;
}

.navbar-brand-img {
    max-height: 4rem !important;
}

/* Header Styles */
.header .header-body .btn.btn-outline-primary:hover {
    color: var(--primary) !important;
    border-color: var(--primary) !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.header .header-body .btn.btn-outline-primary {
    margin-top: 10px;
    min-width: 180px;
    border-color: var(--primary) !important;
    background-color: var(--primary) !important;
    color: #ffffff !important;
}

.header .header-body .card-stats {
    min-height: 142px !important;
    box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;
}

/* Card Styles */
.card {
    width: unset !important;
}

.card.shadow-lg,
.card.shadow {
    box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px !important;
}

.shadow {
    box-shadow: none !important;
}

/* Navigation Pills */
.nav-pills .nav-link {
    border: 1px solid var(--primary);
    color: var(--primary) !important;
}

.btn-primary,
.nav-pills .nav-link.active {
    background-color: var(--primary) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* Form Controls */
.form-control {
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid grey !important;
}

textarea.form-control {
    padding: 1rem !important;
}

/* Preview Element */
#previewElement,
#previewElement .card {
    min-width: unset !important;
}

/* Gradient Styles */
.bg-gradient-primary,
.bg-gradient-info {
    background: var(--primary) !important;
}

.bg-gradient-success {
    background: var(--primary) !important;
}

.bg-gradient-success .avatar {
    color: var(--primary) !important;
    background-color: #ffffff !important;
}

/* Avatar Styles */
.avatar.bg-gradient-primary {
    min-height: 48px;
    min-width: 48px;
}

/* Chat List Styles */
#chatList .card-body .d-block {
    cursor: pointer;
}

#chatList .nav-pills .nav-link {
    box-shadow: none !important;
}

#chatList .nav-pills .nav-item {
    padding-right: 0.5rem !important;
}

/* Nav Wrapper Styles */
.nav-wrapper .nav-item .nav-link {
    color: var(--primary) !important;
    box-shadow: none !important;
}

.nav-wrapper .nav-item .nav-link.active {
    color: #ffffff !important;
}

/* Media Queries */
@media only screen and (min-width: 768px) {
    .main-content .navbar-top {
        background: #ffffff !important;
    }
}

/* Chat Bubbles & Messages */
.message-bubble-right {
    background: #DCF8C6 !important;
    border-radius: 7.5px !important;
    padding: 6px 7px 8px 9px !important;
}

.message-bubble-left {
    background: #FFFFFF !important;
    border-radius: 7.5px !important;
    padding: 6px 7px 8px 9px !important;
}

#chatList .card {
    border-bottom: 1px solid #E8E8E8 !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
}

/* =========================================
   PREMIUM CHAT FILTER BUTTONS
   ========================================= */

/* Chat Filter Pills - Premium Modern Style */
#chatList .nav-pills .nav-link {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%) !important;
    border: 2px solid #e2e8f0 !important;
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    padding: 0.65rem 1.25rem !important;
    border-radius: 0.75rem !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
    margin: 0 0.25rem !important;
}

#chatList .nav-pills .nav-link:hover {
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
    border-color: var(--primary) !important;
    color: var(--primary) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(233, 30, 99, 0.15) !important;
}

#chatList .nav-pills .nav-link.active {
    background: var(--primary) !important;
    background: linear-gradient(135deg, #e91e63 0%, #c2185b 100%) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 20px rgba(233, 30, 99, 0.35), 0 2px 8px rgba(233, 30, 99, 0.2) !important;
    transform: translateY(-2px) !important;
}

/* Badge inside pills */
#chatList .nav-pills .badge {
    background: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff !important;
    padding: 0.25rem 0.5rem !important;
    border-radius: 0.5rem !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    margin-left: 0.5rem !important;
}

#chatList .nav-pills .nav-link:not(.active) .badge {
    background: var(--primary) !important;
    color: #ffffff !important;
}

/* Smooth tab container */
#chatList .nav-pills {
    gap: 0.35rem !important;
    padding: 0.5rem !important;
    background: transparent !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
}

/* Make buttons more compact to fit in one row */
#chatList .nav-pills .nav-link {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%) !important;
    border: 2px solid #e2e8f0 !important;
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.8rem !important;
    padding: 0.55rem 0.85rem !important;
    border-radius: 0.75rem !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
    margin: 0 !important;
    flex: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}