/* --- 1. GLOBAL COLORS & BACKGROUNDS --- */
:root {
    --page-bg: #f5f5f5;          /* White Smoke */
    --sidebar-panel-bg: #e9e9e9; /* Slightly darker than White Smoke */
    --dark-text: #2c3e50;        /* Contasting dark text */
    --active-text: #000000;      /* Brighter/Sharper active text */
    --brand-green-dark: #1e5631; /* Dark Green for Headers */
    --btn-bg: #dcdcdc;           /* Slightly darker than sidebar for depth */
    --icon-green: #3bb505;       /* Requested Dark Green icons */
    color-scheme: light dark;
}

/* Apply Page Background to all states (Logged in/out) */
body, .app-main, .main-content, section#main-body {
    background-color: var(--page-bg) !important;
    color: var(--dark-text) !important;
}

/* --- 2. SIDEBARS & PANELS --- */
/* Sidebar/Panel Background & Text */
.sidebar .card, .panel, .list-group-item, .card {
    background-color: var(--sidebar-panel-bg) !important;
    color: var(--dark-text) !important;
    border-color: #d1d1d1 !important;
}

/* Sidebar Heading Background (Dark Green with White Text) */
.sidebar .card-header, 
.sidebar .panel-heading, 
.list-group-item-header {
    background-color: var(--brand-green-dark) !important;
    color: #ffffff !important;
}

/* --- 3. NAVIGATION & ACTIVE STATES --- */
/* Text contrast for non-active items */
.list-group-item {
    color: var(--dark-text) !important;
}

/* Active item text (Brighter/Sharper) */
.list-group-item.active, 
.list-group-item:hover,
.nav-link.active {
    background-color: #e0e0e0 !important; /* Light highlight */
    color: var(--active-text) !important;
    font-weight: 600;
}

/* --- 4. BUTTONS & ICONS --- */
/* Button styling */
.btn-default, .btn-primary, .btn-info {
    background-color: var(--btn-bg) !important;
    color: var(--dark-text) !important;
    border-color: #cccccc !important;
}


/* Icon Colors (Green Icons as requested) */
i.fas, i.far, i.fa, .list-group-item i, .tile i {
    color: var(--icon-green) !important;
}

/* --- 5. LOGGED-OUT SPECIFIC FIXES --- */
/* Ensures the login/registration containers match the theme */
.login-container, .registration-container {
    background-color: var(--sidebar-panel-bg) !important;
    border: 1px solid #d1d1d1;
    padding: 20px;
    border-radius: 8px;
}

/* WHMCS Client Area Dropdown: Black Background */
.navbar-nav .dropdown-menu {
    background-color: #000000 !important;
    border-color: #222222 !important;
}

/* Dropdown Text Links: White */
.navbar-nav .dropdown-menu a, 
.navbar-nav .dropdown-menu .dropdown-item {
    color: #ffffff !important;
    background: transparent !important;
}

/* Hover State: Background stays dark, text shifts color */
.navbar-nav .dropdown-menu a:hover, 
.navbar-nav .dropdown-menu .dropdown-item:hover {
    color: #dddddd !important;
    background-color: #1a1a1a !important;
}

/* --- FORCE SOLID GREEN BUTTONS EVERYWHERE --- */
.btn,
.btn-primary,
.btn-default,
.btn-info,
.btn-success,
.btn-warning,
.btn-danger,
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
    background-color: #1e5631 !important; /* Solid green */
    color: #ffffff !important;            /* White text */
    border-color: #1e5631 !important;     /* Green border */
}

/* Hover */
.btn:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover {
    background-color: #174726 !important;
    border-color: #174726 !important;
    color: #ffffff !important;
}
