/* =============================================================
   MarathiQuiz — Forest Green Admin Theme
   Overrides custom.min.css with a nature/forest palette.
   Loaded AFTER custom.min.css so all rules take priority.
   DO NOT modify custom.min.css — this file is the only change.
   =============================================================

   COLOR PALETTE:
   --forest-dark   : #1B3A2D   (deep forest, sidebar bg)
   --forest-mid    : #2D5A40   (mid forest, sidebar hover)
   --forest-bright : #3A7D44   (bright green, active/accent)
   --forest-lime   : #52C46A   (highlight, active menu)
   --forest-leaf   : #6ABF69   (lighter leaf green)
   --gold          : #F5C518   (gold accent for badges)
   --cream         : #F0F7F1   (page background, very light green)
============================================================= */

/* ── GOOGLE FONTS ──────────────────────────────────────────── */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap");

/* ── GLOBAL ────────────────────────────────────────────────── */
body {
    font-family: "Poppins", "Helvetica Neue", Arial, sans-serif !important;
    background: #1B3A2D !important;
    color: #4a5568 !important;
}
body .container.body .right_col {
    background: #F0F7F1 !important;
}

/* ── SIDEBAR (left_col) ─────────────────────────────────────── */
.left_col {
    background: linear-gradient(180deg, #1B3A2D 0%, #0F2318 100%) !important;
    box-shadow: 3px 0 15px rgba(0,0,0,0.35) !important;
}

/* ── TOP NAV TITLE BAR ──────────────────────────────────────── */
.nav_title,
.navbar-header {
    background: linear-gradient(135deg, #1B3A2D, #2D5A40) !important;
    border-bottom: 2px solid #52C46A !important;
}
.site_title,
.site_title:hover,
.site_title:focus {
    color: #52C46A !important;
    font-family: "Poppins", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}
.site_title i {
    border-color: #52C46A !important;
    color: #52C46A !important;
}

/* ── TOP NAV BAR ────────────────────────────────────────────── */
.nav_menu {
    background: #fff !important;
    border-bottom: 2px solid #e0eee4 !important;
    box-shadow: 0 2px 8px rgba(27,58,45,0.08) !important;
}
.top_nav .navbar-right > li > a {
    color: #2D5A40 !important;
}
.top_nav .nav .open > a,
.top_nav .nav .open > a:focus,
.top_nav .nav .open > a:hover,
.top_nav .nav > li > a:focus,
.top_nav .nav > li > a:hover {
    background: #e0f0e5 !important;
    color: #1B3A2D !important;
}

/* ── SIDEBAR MENU ITEMS ─────────────────────────────────────── */
.nav.side-menu > li > a,
.nav.child_menu > li > a {
    color: #b2d9be !important;
    font-size: 13px !important;
    border-radius: 0 !important;
    transition: all 0.2s ease !important;
    border-left: 3px solid transparent;
}
.nav.side-menu > li > a:hover,
.nav.child_menu > li > a:hover {
    background: rgba(82, 196, 106, 0.15) !important;
    color: #ffffff !important;
    border-left: 3px solid #52C46A !important;
}
.nav.side-menu > li.active > a,
.nav.side-menu > li.active-sm > a,
.nav.child_menu > li.active > a {
    background: rgba(82,196,106,0.22) !important;
    color: #6ABF69 !important;
    border-left: 3px solid #52C46A !important;
    font-weight: 600 !important;
}
.nav.child_menu {
    background: rgba(0,0,0,0.25) !important;
}
.nav-sm .nav.child_menu li.active,
.nav-sm .nav.side-menu li.active-sm {
    border-right: 5px solid #52C46A !important;
}
.nav-sm > .nav.side-menu > li.active-sm > a {
    color: #52C46A !important;
}
.nav-sm ul.nav.child_menu {
    background: #152d21 !important;
}

/* ── MENU SECTION HEADERS ───────────────────────────────────── */
.menu_section h3 {
    color: #52C46A !important;
    opacity: 0.7;
    font-size: 10px !important;
    letter-spacing: 1.5px !important;
}

/* ── MAIN CONTENT PANELS ────────────────────────────────────── */
.x_panel {
    background: #ffffff !important;
    border: 1px solid #d4ead9 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 12px rgba(27,58,45,0.07) !important;
    margin-bottom: 20px !important;
}
.x_title {
    border-bottom: 2px solid #e0f0e5 !important;
    background: linear-gradient(90deg, #f0f9f2, #fff) !important;
    border-radius: 8px 8px 0 0 !important;
    padding: 10px 20px !important;
}
.x_title h2 {
    color: #1B3A2D !important;
    font-weight: 600 !important;
    font-size: 16px !important;
}
.x_title h2 small {
    color: #3A7D44 !important;
}

/* ── BUTTONS ────────────────────────────────────────────────── */
.btn-primary,
.btn-success {
    background: linear-gradient(135deg, #3A7D44, #2D5A40) !important;
    border-color: #2D5A40 !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    box-shadow: 0 2px 6px rgba(45,90,64,0.3) !important;
    transition: all 0.2s ease !important;
}
.btn-primary:hover,
.btn-success:hover {
    background: linear-gradient(135deg, #52C46A, #3A7D44) !important;
    border-color: #3A7D44 !important;
    box-shadow: 0 4px 12px rgba(82,196,106,0.35) !important;
    transform: translateY(-1px) !important;
}
.btn-warning {
    background: linear-gradient(135deg, #e8a020, #c57d10) !important;
    border-color: #c57d10 !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
}
.btn-danger {
    border-radius: 6px !important;
    font-weight: 500 !important;
}
.btn-info {
    border-radius: 6px !important;
    font-weight: 500 !important;
}
.btn-default {
    border-radius: 6px !important;
    border-color: #b2d9be !important;
    color: #2D5A40 !important;
    font-weight: 500 !important;
}

/* ── TABLES ─────────────────────────────────────────────────── */
.table > thead > tr > th {
    background: linear-gradient(135deg, #2D5A40, #1B3A2D) !important;
    color: #e0f5e8 !important;
    border: none !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    padding: 12px 10px !important;
}
.table-striped > tbody > tr:nth-of-type(odd) {
    background: #f6fbf7 !important;
}
.table > tbody > tr:hover {
    background: #e8f5ec !important;
}
.table-bordered {
    border-color: #d4ead9 !important;
}
.table-bordered > tbody > tr > td,
.table-bordered > thead > tr > th {
    border-color: #d4ead9 !important;
}

/* ── FORM ELEMENTS ──────────────────────────────────────────── */
.form-control {
    border-color: #b2d9be !important;
    border-radius: 6px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.form-control:focus {
    border-color: #52C46A !important;
    box-shadow: 0 0 0 3px rgba(82,196,106,0.15) !important;
}
select.form-control {
    background-image: none !important;
}

/* ── ALERTS ─────────────────────────────────────────────────── */
.alert-success {
    background: #d4edda !important;
    border-color: #52C46A !important;
    color: #1B3A2D !important;
    border-radius: 8px !important;
}
.alert-info {
    background: #d1ecf1 !important;
    border-color: #17a2b8 !important;
    border-radius: 8px !important;
}
.alert-warning {
    background: #fff3cd !important;
    border-radius: 8px !important;
}
.alert-danger {
    background: #f8d7da !important;
    border-radius: 8px !important;
}

/* ── BADGES & LABELS ────────────────────────────────────────── */
.label-success, .badge-success { background-color: #3A7D44 !important; }
.label-primary, .badge-primary { background-color: #2D5A40 !important; }
.label-warning, .badge-warning { background-color: #e8a020 !important; }

/* ── STATS/TILE COUNT BOXES (dashboard) ─────────────────────── */
.tile_count .tile_stats_count {
    border-left: 4px solid #52C46A !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(27,58,45,0.08) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.tile_count .tile_stats_count:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(27,58,45,0.14) !important;
}
.tile_count .tile_stats_count .count {
    color: #1B3A2D !important;
    font-weight: 700 !important;
}
.tile_count .tile_stats_count span:last-child {
    color: #3A7D44 !important;
    font-weight: 600 !important;
}

/* ── PROFILE SECTION ────────────────────────────────────────── */
.profile_info h2 { color: #e0f5e8 !important; }
.profile_info span { color: #7dbf8e !important; }

/* ── PAGINATION ─────────────────────────────────────────────── */
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover {
    background-color: #3A7D44 !important;
    border-color: #2D5A40 !important;
}
.pagination > li > a { color: #2D5A40 !important; }
.pagination > li > a:hover { background: #e0f0e5 !important; color: #1B3A2D !important; }

/* ── LOGIN PAGE ─────────────────────────────────────────────── */
body.login {
    background: linear-gradient(135deg, #0F2318 0%, #1B3A2D 40%, #2D5A40 100%) !important;
}
body.login .login_content {
    background: rgba(255,255,255,0.97) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.35) !important;
    padding: 40px 30px !important;
    border-top: 4px solid #52C46A !important;
}
body.login h1 {
    color: #1B3A2D !important;
    font-weight: 700 !important;
    font-family: "Poppins", sans-serif !important;
    margin-bottom: 24px !important;
}
body.login h1::after {
    content: " 🌿";
}
body.login .form-control {
    border-color: #b2d9be !important;
    background: #f6fbf7 !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    height: 44px !important;
    font-size: 14px !important;
}
body.login .btn-default {
    background: linear-gradient(135deg, #3A7D44, #2D5A40) !important;
    border: none !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 10px 30px !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    width: 100% !important;
    margin-top: 8px !important;
    box-shadow: 0 4px 15px rgba(58,125,68,0.4) !important;
    transition: all 0.3s ease !important;
}
body.login .btn-default:hover {
    background: linear-gradient(135deg, #52C46A, #3A7D44) !important;
    box-shadow: 0 6px 20px rgba(82,196,106,0.5) !important;
    transform: translateY(-2px) !important;
}

/* ── SCROLLBAR (webkit) ──────────────────────────────────────── */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: #e0f0e5; }
::-webkit-scrollbar-thumb { background: #3A7D44; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #52C46A; }

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

/* ── SELECT2 ─────────────────────────────────────────────────── */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    border-color: #b2d9be !important;
    border-radius: 6px !important;
}
.select2-container--default .select2-results__option--highlighted {
    background: #3A7D44 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #3A7D44 transparent transparent transparent !important;
}

/* ── MODAL ───────────────────────────────────────────────────── */
.modal-header {
    background: linear-gradient(135deg, #1B3A2D, #2D5A40) !important;
    color: #fff !important;
    border-radius: 6px 6px 0 0 !important;
}
.modal-header h4,
.modal-header .modal-title { color: #fff !important; }
.modal-header .close { color: #fff !important; opacity: 0.8 !important; }

/* ── MISCELLANEOUS ───────────────────────────────────────────── */
.ln_solid { border-color: #d4ead9 !important; }
.green, .text-success { color: #3A7D44 !important; }
.bg-green {
    background: linear-gradient(135deg, #3A7D44, #2D5A40) !important;
    border-color: #2D5A40 !important;
}
a { color: #2D5A40 !important; }
a:hover { color: #52C46A !important; }
code { color: #2D5A40 !important; background: #e8f5ec !important; }

/* ── FOOTER ──────────────────────────────────────────────────── */
.footer_fixed,
footer { 
    background: #fff !important;
    border-top: 1px solid #d4ead9 !important;
}
