/* ================================================================
   DASHBOARD MODERN THEME — CSS Override
   A professional email marketing dashboard theme.
   Loaded AFTER all existing stylesheets to override visuals
   without breaking any existing PHP/JS functionality.
   ================================================================ */

/* ─── CSS CUSTOM PROPERTIES — Minimalist Email Analytics Theme (Matching Uploaded Image) ─── */
:root {
    --primary-navy: #0F172A; /* Deep Slate Navy from Funnel */
    --primary-navy-light: #1E293B;
    --primary-blue: #2563EB; /* Hero Cobalt Blue from Funnel / Charts */
    --primary-sky: #60A5FA;  /* Sky Blue from Funnel & Session Line */
    --primary-amber: #F59E0B; /* Honey Amber Gold from Funnel & Opens Line */
    --primary-green: #10B981; /* Growth Pill Green (+2,56%) */
    --primary-dark-blue: #1E3A8A; /* Bottom Funnel Midnight Navy */
    --primary-purple: #4F46E5;

    /* Neutrals */
    --bg-body: #F8FAFC;
    --bg-card: #FFFFFF;
    --bg-sidebar: #0F172A;
    --text-primary: #0F172A;
    --text-secondary: #64748B;
    --text-white: #FFFFFF;
    --border-light: #E2E8F0;
    --border-subtle: #F1F5F9;
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.04);
    --shadow-md: 0 4px 14px rgba(15, 23, 42, 0.05);
    --shadow-lg: 0 10px 28px rgba(15, 23, 42, 0.08);
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 18px;
    --radius-xl: 24px;

    /* Transitions */
    --transition-fast: 0.15s ease;
    --transition-normal: 0.25s ease;
}

/* ─── GLOBAL RESETS & TYPOGRAPHY ─── */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    background-color: var(--bg-body) !important;
    color: var(--text-primary) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-weight: 600 !important;
    color: var(--text-primary);
}

/* ─── NAVIGATION BAR ─── */
#navigation {
    background: var(--primary-navy) !important;
    border-bottom: none !important;
    box-shadow: 0 2px 16px rgba(12,35,64,0.18) !important;
    min-height: 56px !important;
    position: sticky;
    top: 0;
    z-index: 1050;
}

#navigation .container-fluid {
    padding: 0 20px;
}

#navigation .logo_sec {
    margin-top: 4px;
    filter: brightness(1.1);
}

#navigation .main-nav > li > a {
    color: rgba(255,255,255,0.85) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.3px;
    padding: 16px 16px !important;
    transition: var(--transition-fast);
    border-radius: 6px;
}

#navigation .main-nav > li > a:hover,
#navigation .main-nav > li > a:focus {
    color: #fff !important;
    background: rgba(255,255,255,0.1) !important;
}

#navigation .main-nav > li.open > a {
    background: rgba(255,255,255,0.15) !important;
    color: #fff !important;
}

#navigation .dropdown-menu {
    background: var(--bg-card);
    border: 1px solid var(--border-light);
    border-radius: 0px;
    box-shadow: var(--shadow-lg);
    padding: 6px 0;
    margin-top: 4px;
}

#navigation .dropdown-menu > li > a {
    color: var(--text-primary) !important;
    font-size: 13px;
    padding: 8px 16px;
    transition: var(--transition-fast);
}

#navigation .dropdown-menu > li > a:hover {
    background: #F1F5F9 !important;
    color: var(--primary-purple) !important;
}

#navigation .user {
    color: rgba(255,255,255,0.9) !important;
}

#navigation .user .dropdown > a {
    color: rgba(255,255,255,0.9) !important;
    font-weight: 500;
    font-size: 13px;
}

#navigation .user .dropdown > a img {
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.3);
    width: 32px !important;
    height: 32px;
    object-fit: cover;
    margin-left: 8px;
}

#navigation .user .icon-nav > li > a {
    color: rgba(255,255,255,0.8) !important;
}

#navigation .user .icon-nav > li > a:hover {
    color: #fff !important;
}

#navigation .toggle-nav {
    color: rgba(255,255,255,0.8) !important;
}

#navigation .mobile-sidebar-toggle {
    color: rgba(255,255,255,0.8) !important;
}

/* ─── BREADCRUMB ─── */
.breadcrumb {
    background: transparent !important;
    padding: 12px 0 !important;
    margin-bottom: 8px !important;
    font-size: 13px;
    border-bottom: none !important;
}

.breadcrumb > li > a {
    color: var(--primary-purple) !important;
    text-decoration: none;
}

.breadcrumb > li.active,
.breadcrumb > li + li::before {
    color: var(--text-secondary) !important;
}

/* ─── PAGE HEADER ─── */
.page-header {
    border-bottom: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ─── KPI METRIC TILES ─── */
.tiles {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 8px 0 !important;
}

.tiles > li {
    flex: 1 1 calc(25% - 14px) !important;
    min-width: 220px !important;
    height: auto !important;
    min-height: 142px !important;
    border-radius: 50px !important; /* Egg Round / Pill shape requested by user */
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12) !important;
    transition: transform var(--transition-normal), box-shadow var(--transition-normal) !important;
    cursor: pointer;
    padding: 0 !important;
    margin: 0 !important;
}

.tiles > li:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
}

/* Glass highlight line on top edge */
.tiles > li::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1.5px !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent) !important;
    pointer-events: none !important;
    z-index: 2 !important;
}

/* ═══════════════════════════════════════════════════════════════
   8 DISTINCT FRESH VIBRANT COLORS (One Unique Color Per Card)
   ═══════════════════════════════════════════════════════════════ */

/* Card 1 — Sent: Electric Royal Cobalt Sapphire */
.tiles > li#div1.orange {
    background: linear-gradient(135deg, #1E40AF 0%, #2563EB 50%, #3B82F6 100%) !important;
}

/* Card 2 — Opens: Vivid Emerald Jade Green */
.tiles > li#div2.blue {
    background: linear-gradient(135deg, #065F46 0%, #059669 50%, #10B981 100%) !important;
}

/* Card 3 — Clicks: Deep Ocean Radiant Cyan */
.tiles > li#div3.red {
    background: linear-gradient(135deg, #0E7490 0%, #06B6D4 50%, #22D3EE 100%) !important;
}

/* Card 4 — Yards: Warm Amber Gold */
.tiles > li#div4.lime {
    background: linear-gradient(135deg, #B45309 0%, #D97706 50%, #F59E0B 100%) !important;
}

/* Card 5 — Gmail: Ruby Crimson Rose */
.tiles > li#div21.magenta {
    background: linear-gradient(135deg, #9F1239 0%, #E11D48 50%, #FB7185 100%) !important;
}

/* Card 6 — Hotmail: Sunset Orange Tangerine */
.tiles > li#div30.magenta {
    background: linear-gradient(135deg, #C2410C 0%, #EA580C 50%, #FB923C 100%) !important;
}

/* Card 7 — Comcast: Deep Electric Indigo Violet */
.tiles > li#div22.magenta {
    background: linear-gradient(135deg, #4338CA 0%, #6366F1 50%, #818CF8 100%) !important;
}

/* Card 8 — Yahoo: Vivid Plum Fuchsia */
.tiles > li#div6.magenta {
    background: linear-gradient(135deg, #701A75 0%, #A21CAF 50%, #E879F9 100%) !important;
}

/* Override .long default styles */
.tiles li.long {
    width: auto !important;
    height: auto !important;
    min-height: 125px !important;
    float: none !important;
}

.tiles li.long::before {
    display: none !important;
}

/* Tile content layout — Clean structured layout, zero overlap! */
.tiles li > a,
.tiles li > .tile_load {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 142px !important;
    padding: 18px 25px !important; /* Increased padding for egg round corners */
    color: #FFFFFF !important;
    text-decoration: none !important;
    position: relative !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.tiles li > a:after {
    content: '';
    display: table;
    clear: both;
}

/* Fix the tile_load (loading state) */
.tile_load {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 130px !important;
    padding: 16px !important;
}

.tile_load .tile_image {
    width: 36px !important;
    opacity: 0.85;
}

.tile_load .tile_text {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 12px !important;
    margin-top: 8px;
    font-weight: 500;
}

/* TILE INNER ELEMENTS */
/* Title badge (Top Left) */
.tiles li .plef {
    float: left !important;
    position: static !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    background: transparent !important;
    border: none !important;
    color: #FFFFFF !important;
    padding: 0 !important;
    border-radius: 0 !important;
    margin: 16px 0 0 24px !important;
    display: inline-block !important;
    line-height: normal !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

/* Yesterday info pill (Top Right) */
.tiles li .prig {
    float: right !important;
    position: static !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    background: transparent !important;
    border: none !important;
    color: #FFFFFF !important;
    padding: 0 !important;
    border-radius: 0 !important;
    margin: 16px 24px 0 0 !important;
    display: inline-block !important;
    line-height: normal !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

/* Center Large KPI Number (Row 1) */
.tiles li .pcen {
    clear: both !important;
    position: static !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    color: #FFFFFF !important;
    text-align: left !important;
    margin: 8px 24px 8px 24px !important;
    line-height: 1.1 !important;
    display: block !important;
    text-shadow: none !important;
}

/* ISP 2x2 Container (Row 2: Gmail, Hotmail, Comcast, Yahoo) */
.tiles li .divcen {
    clear: both !important;
    position: static !important;
    margin: 4px 24px 10px 24px !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px 10px !important;
    width: auto !important;
    box-sizing: border-box !important;
    background: transparent !important; 
    border: none !important; 
    box-shadow: none !important; 
}

/* Inner Lines (Sent, Open, Click, Yards) */
.tiles li .divcen p {
    font-size: 11px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    padding: 2px 0 !important; 
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #FFFFFF !important;
    text-align: left !important;
    line-height: 1.2 !important;
    text-shadow: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    letter-spacing: 0.2px !important;
    transition: none !important;
}

/* Align Right Column (Open, Yards) under Yesterday and MTD */
.tiles li .divcen p:nth-child(even) {
    text-align: right !important;
}

.tiles li .divcen p:hover {
    background: transparent !important;
    transform: none !important;
}


/* Align Right Column (Open, Yards) under Yesterday and MTD */
.tiles li .divcen p:nth-child(even) {
    text-align: right !important;
}
/* Bottom info pills (MTD & Projection) */
.tiles li .name.spanbot {
    position: static !important;
    display: inline-block !important;
    float: left !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    margin: 8px 0 18px 24px !important;
    line-height: normal !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.tiles li .name.spanbot:last-child {
    float: right !important;
    margin: 8px 24px 18px 0 !important;
}

/* MODERN CARD WRAPPER ─── */
.box {
    background: var(--bg-card) !important;
    border: none !important;
    border-radius: 0px !important;
    box-shadow: var(--shadow-sm) !important;
    margin-bottom: 20px !important;
    overflow: hidden;
    transition: box-shadow var(--transition-normal);
}

.box:hover {
    box-shadow: var(--shadow-md) !important;
}

.box.box-bordered {
    border: none !important;
}

.box.box-bordered.box-color .box-title {
    border-color: transparent !important;
}

.box.box-bordered.box-color .box-content {
    border-color: var(--border-light) !important;
    border: none !important;
}

/* Box Title (Card Header) */
.box .box-title,
.box.box-color .box-title {
    background: var(--primary-navy) !important;
    border-bottom: none !important;
    padding: 14px 20px !important;
    border-radius: 0px 0px 0 0 !important;
}

.box .box-title h3,
.box.box-color .box-title h3 {
    color: var(--text-white) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px;
}

.box .box-title h3 i {
    margin-right: 8px;
    opacity: 0.8;
}

.box .box-title .actions {
    margin-top: 0;
}

.box .box-title .actions .btn {
    background: rgba(255,255,255,0.15) !important;
    color: var(--text-white) !important;
    border: 1px solid rgba(255,255,255,0.2) !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 500;
    padding: 5px 14px !important;
    transition: var(--transition-fast);
    text-decoration: none !important;
}

.box .box-title .actions .btn:hover {
    background: rgba(255,255,255,0.25) !important;
}

/* Under Wavy Text Decoration Override */
.under_wavy {
    text-decoration: none !important;
    text-decoration-line: none !important;
}

/* Box Content */
.box .box-content,
.box-content {
    padding: 0 !important;
    background: var(--bg-card) !important;
    border: none !important;
}

/* ─── DATA TABLES ─── */
.table {
    font-size: 13px !important;
    margin-bottom: 0 !important;
}

.table > thead > tr > th {
    background: var(--primary-navy) !important;
    color: var(--text-white) !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    padding: 12px 16px !important;
    border-bottom: none !important;
    white-space: nowrap;
}

.table.table-colored-header thead th,
.table.table-colored-header thead td {
    background: var(--primary-navy) !important;
    color: var(--text-white) !important;
}

.table > tbody > tr > td {
    padding: 10px 16px !important;
    border-bottom: 1px solid #F1F5F9 !important;
    border-top: none !important;
    color: var(--text-primary) !important;
    vertical-align: middle !important;
}

.table > tbody > tr:hover > td {
    background: #F8FAFC !important;
}

.table > tbody > tr:nth-child(even) > td {
    background: #FAFBFC;
}

.table > tbody > tr:nth-child(even):hover > td {
    background: #F1F5F9 !important;
}

.table > tfoot > tr > td,
.table > tfoot > tr > th {
    background: #F8FAFC !important;
    font-weight: 700 !important;
    padding: 12px 16px !important;
    border-top: 2px solid var(--border-light) !important;
    color: var(--text-primary) !important;
}

/* DataTables Overrides */
.dataTables_wrapper .dataTables_length select {
    border-radius: 6px;
    border: 1px solid var(--border-light);
    padding: 4px 8px;
    font-size: 13px;
}

.dataTables_wrapper .dataTables_filter input {
    border-radius: 6px;
    border: 1px solid var(--border-light);
    padding: 6px 12px;
    font-size: 13px;
    transition: var(--transition-fast);
}

.dataTables_wrapper .dataTables_filter input:focus {
    border-color: var(--primary-purple);
    outline: none;
    box-shadow: 0 0 0 3px rgba(123,97,255,0.15);
}

.dataTables_wrapper .dataTables_info {
    font-size: 12px;
    color: var(--text-secondary);
    padding: 12px 16px;
}

.dataTables_wrapper .dataTables_paginate {
    padding: 12px 16px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    border-radius: 6px !important;
    border: 1px solid var(--border-light) !important;
    font-size: 13px !important;
    margin: 0 2px !important;
    padding: 4px 12px !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: var(--primary-navy) !important;
    color: var(--text-white) !important;
    border-color: var(--primary-navy) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #F1F5F9 !important;
    color: var(--primary-navy) !important;
    border-color: var(--border-light) !important;
}

/* Tab Responsive Scroll */
.tab_responsive {
    overflow-x: auto;
}

/* ─── CHART CONTAINERS ─── */
.statistic-big {
    padding: 16px !important;
}

.statistic-big .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.statistic-big .top .left {
    flex: 1;
}

.statistic-big .top .right {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--text-primary);
}

.statistic-big .bottom {
    border-radius: 0px;
    overflow: hidden;
}

.flot.medium {
    height: 220px !important;
}

/* Chosen Select Override */
.chosen-select,
.chzn-container .chzn-single {
    border-radius: 0px !important;
    border: 1px solid var(--border-light) !important;
    font-size: 13px !important;
    height: 36px !important;
    line-height: 36px !important;
    background: var(--bg-card) !important;
    box-shadow: none !important;
}

.chzn-container .chzn-drop {
    border-radius: 0 0 8px 8px !important;
    border: 1px solid var(--border-light) !important;
    box-shadow: var(--shadow-md) !important;
}

/* Google Chart Container */
#piechart {
    border-radius: 0px;
}

/* ─── SIDEBAR ─── */
#left {
    background: var(--bg-sidebar) !important;
    width: 225px !important;
    border-right: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow: 2px 0 16px rgba(0,0,0,0.08);
}

#main {
    margin-left: 225px !important;
}

#left .subnav .subnav-title {
    background: rgba(255,255,255,0.06) !important;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    padding: 10px 14px !important;
}

#left .subnav .subnav-title a {
    color: rgba(255,255,255,0.92) !important;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

#left .subnav .subnav-title a i {
    color: rgba(255,255,255,0.6) !important;
}

#left .subnav .subnav-content {
    background: transparent !important;
    padding: 10px 12px !important;
}

/* Sidebar Target Progress Bars */
#left .tar_spa {
    color: rgba(255,255,255,0.9) !important;
    font-size: 11.5px;
    font-weight: 600;
    margin-bottom: 4px;
}

#left .tar_spa > span {
    color: rgba(255,255,255,0.6) !important;
}

#left .tar_sec {
    margin-bottom: 10px;
}

#left .tar_sec .progress {
    background: rgba(255,255,255,0.1) !important;
    border-radius: 10px !important;
    height: 7px !important;
    overflow: hidden;
    box-shadow: none !important;
}

#left .tar_sec .progress .bar {
    border-radius: 10px !important;
    transition: width 0.6s ease;
}

#left .tar_sec p {
    color: rgba(255,255,255,0.7) !important;
    font-size: 10.5px;
}

/* Sidebar Trophy Icon */
#left .fa-trophy {
    color: #FBBF24 !important;
}

/* Sidebar Employee Table — Fixed Width Columns, Zero Squishing! */
#left .box {
    background: rgba(255,255,255,0.04) !important;
    border-radius: 0px !important;
    margin: 8px 8px !important;
    width: auto !important;
    overflow: hidden !important;
    border: none !important;
}

#left .box .box-content {
    background: transparent !important;
}

#left .home_table {
    background: transparent !important;
    table-layout: fixed !important;
    width: 100% !important;
    font-size: 10px !important;
}

#left .home_table > thead > tr > th {
    background: rgba(255,255,255,0.1) !important;
    color: #94A3B8 !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    padding: 6px 3px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap !important;
}

#left .home_table > tbody > tr > td {
    color: rgba(255,255,255,0.85) !important;
    font-size: 10px !important;
    padding: 5px 3px !important;
    border-bottom: 1px solid rgba(255,255,255,0.04) !important;
    background: transparent !important;
    white-space: nowrap !important;
}

#left .home_table th:first-child,
#left .home_table td:first-child {
    width: 30% !important;
    text-align: left !important;
    padding-left: 5px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#left .home_table th:nth-child(2),
#left .home_table td:nth-child(2) {
    width: 22% !important;
    text-align: right !important;
}

#left .home_table th:nth-child(3),
#left .home_table td:nth-child(3) {
    width: 24% !important;
    text-align: right !important;
}

#left .home_table th:nth-child(4),
#left .home_table td:nth-child(4) {
    width: 24% !important;
    text-align: right !important;
    padding-right: 20px !important;
}

#left .home_table > tbody > tr:hover > td {
    background: rgba(255,255,255,0.06) !important;
}

#left .home_table > tfoot > tr > th {
    background: rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.95) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    padding: 6px 3px !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
}

#left .home_table > tfoot > tr > th:first-child {
    text-align: left !important;
    padding-left: 5px !important;
}

#left .home_table > tfoot > tr > th:not(:first-child) {
    text-align: right !important;
}

#left .home_table > tfoot > tr > th:last-child {
    padding-right: 20px !important;
}

/* Countdown Widget */
#left .recounter {
    color: rgba(255,255,255,0.8) !important;
}

/* ─── BUTTONS ─── */
.btn.btn-primary {
    background: var(--primary-purple) !important;
    border: none !important;
    border-radius: 0px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 8px 20px !important;
    transition: all var(--transition-fast) !important;
    box-shadow: 0 2px 8px rgba(123,97,255,0.25) !important;
}

.btn.btn-primary:hover {
    background: #6C4FE0 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(123,97,255,0.35) !important;
}

.btn.btn-default,
.btn.btn-secondary {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    color: var(--text-primary) !important;
    font-weight: 500;
    font-size: 13px;
    transition: var(--transition-fast);
}

.btn.btn-default:hover,
.btn.btn-secondary:hover {
    background: #F8FAFC !important;
    border-color: #CBD5E1 !important;
}

.btnaler {
    border-radius: 20px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 4px 14px !important;
}

/* ─── FORM CONTROLS ─── */
.form-control {
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    font-size: 13px !important;
    padding: 8px 12px !important;
    transition: var(--transition-fast) !important;
    box-shadow: none !important;
    height: auto !important;
}

.form-control:focus {
    border-color: var(--primary-purple) !important;
    box-shadow: 0 0 0 3px rgba(123,97,255,0.12) !important;
    outline: none !important;
}

select.form-control {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748B' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px !important;
}

/* ─── MODALS ─── */
.modal-content {
    border: none !important;
    border-radius: 0px !important;
    box-shadow: 0 25px 60px rgba(0,0,0,0.15) !important;
    overflow: hidden;
}

.modal-header {
    background: var(--primary-navy) !important;
    border-bottom: none !important;
    padding: 16px 24px !important;
}

.modal-header .modal-title {
    color: var(--text-white) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}

.modal-header .close {
    color: rgba(255,255,255,0.7) !important;
    opacity: 1 !important;
    text-shadow: none !important;
    font-size: 20px;
}

.modal-header .close:hover {
    color: var(--text-white) !important;
}

.modal-body {
    padding: 24px !important;
}

.modal-footer {
    border-top: 1px solid var(--border-light) !important;
    padding: 16px 24px !important;
}

/* Mailing Server Modal List */
.mailing_sec2 a li {
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    padding: 10px 14px !important;
    margin: 4px !important;
    opacity: 1 !important;
    transition: var(--transition-fast);
    font-size: 12px;
    color: var(--text-primary) !important;
    background: var(--bg-card);
}

.mailing_sec2 a li:hover {
    border-color: var(--primary-purple) !important;
    background: #F5F3FF !important;
    color: var(--primary-purple) !important;
    box-shadow: var(--shadow-sm);
}

.mailing_sec2 a li i {
    color: var(--primary-purple) !important;
}

.mailing_sec001 {
    border-radius: 0px !important;
}

.mailing_sec00 i {
    color: var(--primary-purple) !important;
}

/* ─── FLOATING SERVER BUTTON ─── */
.pop_ser1 {
    background: var(--primary-navy) !important;
    border-radius: 0px 0 0 8px !important;
    box-shadow: var(--shadow-md) !important;
    padding: 12px 10px;
}

.pop_ser1 p {
    color: var(--text-white) !important;
    font-size: 12px;
    font-weight: 500;
}

/* ─── LABEL / BADGE OVERRIDES ─── */
.label-lightred {
    background: var(--primary-red) !important;
    border-radius: 10px;
    font-size: 10px;
    padding: 2px 6px;
}

/* ─── SCROLLBAR STYLING ─── */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94A3B8;
}

/* ─── RESPONSIVE GRID IMPROVEMENTS ─── */
.container-fluid {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

#main {
    padding-top: 8px;
}

#main > .container-fluid {
    max-width: 100%;
}

.row {
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.row > [class*="col-"] {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* ─── TOOLTIP OVERRIDES ─── */
.tooltip-inner {
    background: var(--primary-navy) !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    padding: 6px 12px !important;
    font-weight: 500;
}

.tooltip.top .tooltip-arrow {
    border-top-color: var(--primary-navy) !important;
}

.tooltip.bottom .tooltip-arrow {
    border-bottom-color: var(--primary-navy) !important;
}

/* ─── LOGIN PAGE ─── */
body.login {
    background-color: var(--primary-navy) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh;
}

body.login .wrapper {
    width: 420px;
    max-width: 95vw;
}

body.login .logo_tar2 {
    border-radius: 0px !important;
    box-shadow: 0 25px 60px rgba(0,0,0,0.3) !important;
    overflow: hidden;
    backdrop-filter: blur(10px);
}

body.login .logo_tar1 {
    background: linear-gradient(135deg, var(--primary-navy) 0%, var(--primary-navy-light) 100%) !important;
    padding: 15px 20px !important;
}

body.login .logo_tar1 img {
    width: 200px;
    filter: brightness(1.1);
}

body.login .login-body {
    background: var(--bg-card) !important;
    padding: 32px 28px !important;
    opacity: 1 !important;
}

body.login .login-body h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--text-primary) !important;
    margin-bottom: 24px !important;
    text-align: center;
    letter-spacing: 1px;
}

body.login .form-group {
    margin-bottom: 14px !important;
}

body.login .form-control {
    border: 1.5px solid #E2E8F0 !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    transition: var(--transition-fast);
    background: #F8FAFC;
}

body.login .form-control:focus {
    border-color: var(--primary-purple) !important;
    background: var(--bg-card) !important;
    box-shadow: 0 0 0 4px rgba(123,97,255,0.1) !important;
}

body.login .btn.btn-primary {
    background: linear-gradient(135deg, var(--primary-purple) 0%, #9B7AFF 100%) !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 12px 28px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 14px rgba(123,97,255,0.35) !important;
    transition: all var(--transition-normal) !important;
}

body.login .btn.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(123,97,255,0.45) !important;
}

body.login .input-group-addon {
    background: var(--primary-navy) !important;
    border-radius: 10px !important;
    border: none !important;
    color: var(--text-white) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 10px 16px !important;
}

body.login .styled-checkbox {
    accent-color: var(--primary-purple);
}

body.login label {
    color: var(--text-secondary) !important;
    font-size: 13px;
}

body.login #errormsg {
    font-size: 13px !important;
    color: var(--primary-red) !important;
    font-weight: 500 !important;
}

/* ─── COUNTDOWN / TIMER OVERRIDES ─── */
.dsCountDown {
    color: rgba(255,255,255,0.85) !important;
}

.dsCountDown .ds_label {
    color: rgba(255,255,255,0.6) !important;
    font-size: 9px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ─── ALERT & NOTIFICATION BADGES ─── */
.icon-nav .label {
    font-size: 10px !important;
    padding: 2px 6px !important;
    border-radius: 10px !important;
    position: relative;
    top: -8px;
    left: -4px;
}

/* ─── RESPONSIVE OVERRIDES ─── */
@media (max-width: 1199px) {
    .tiles > li {
        flex: 1 1 calc(50% - 8px) !important;
        min-width: 200px !important;
    }
}

@media (max-width: 767px) {
    .tiles > li {
        flex: 1 1 100% !important;
    }

    #navigation .main-nav > li > a {
        padding: 10px 12px !important;
        font-size: 12px !important;
    }

    .container-fluid {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* ─── ANIMATION / LOADING STATES ─── */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.tiles > li {
    animation: fadeInUp 0.4s ease forwards;
}

.tiles > li:nth-child(1) { animation-delay: 0.05s; }
.tiles > li:nth-child(2) { animation-delay: 0.1s; }
.tiles > li:nth-child(3) { animation-delay: 0.15s; }
.tiles > li:nth-child(4) { animation-delay: 0.2s; }

/* ─── FLOT CHART TOOLTIP ─── */
#tooltip {
    background: var(--primary-navy) !important;
    color: var(--text-white) !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    font-weight: 600;
    border: none !important;
    box-shadow: var(--shadow-md);
}

/* ─── MISC OVERRIDES ─── */
.headclr {
    background-color: var(--primary-navy) !important;
}

#navigation .label-lightred {
    background: var(--primary-red) !important;
}

.select-style {
    border-radius: 0px !important;
    border: 1px solid var(--border-light) !important;
    background-color: var(--bg-card) !important;
}

/* Newtoolsec wavy underline - modernize */
.newtoolsec {
    text-decoration-color: var(--primary-purple) !important;
}

/* Content area background */
#content {
    background: var(--bg-body) !important;
}

/* Star rating */
.star_rat {
    border-radius: 4px;
}

/* Fix pie chart box */
.box.box-color.magenta .box-title {
    background: var(--primary-navy) !important;
}

/* Remove old color overrides that conflict */
.box .box-title[style*="background-color: #4F46E5"] {
    background-color: var(--primary-navy) !important;
}

/* ================================================================
   INNER PAGES & APPLICATION-WIDE COMPONENT OVERRIDES
   Ensures consistent modern UI across ALL module pages
   ================================================================ */

/* Page Headers on all inner pages */
.page-header {
    background: transparent !important;
    border-bottom: none !important;
    margin: 16px 0 12px 0 !important;
    padding: 0 !important;
}

.page-header .pull-left h1,
#main .page-header .pull-left h1 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--primary-navy) !important;
    margin: 0 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.3px;
    display: inline-flex;
    align-items: center;
}

/* Breadcrumbs across all pages */
.breadcrumb,
ol.breadcrumb {
    background: #FFFFFF !important;
    border-radius: 0px !important;
    padding: 10px 18px !important;
    margin-bottom: 20px !important;
    box-shadow: var(--shadow-sm) !important;
    border: 1px solid var(--border-light) !important;
    display: flex !important;
    align-items: center;
    gap: 8px;
    font-size: 13px !important;
}

.breadcrumb > li,
ol.breadcrumb > li {
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary) !important;
    font-weight: 500;
}

.breadcrumb > li > a,
ol.breadcrumb > li > a {
    color: var(--primary-teal) !important;
    text-decoration: none !important;
    font-weight: 600;
}

.breadcrumb > li > a:hover,
ol.breadcrumb > li > a:hover {
    color: var(--primary-navy) !important;
}

.breadcrumb > li + li:before,
ol.breadcrumb > li + li:before {
    content: "/" !important;
    padding: 0 8px;
    color: #94A3B8 !important;
}

/* Header Date / Stats widgets (e.g. server clock, US/IN flags) */
ul.stats {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

ul.stats > li {
    border-radius: 0px !important;
    padding: 8px 16px !important;
    color: #FFFFFF !important;
    box-shadow: var(--shadow-sm) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px;
    min-height: 44px;
    border: none !important;
}

ul.stats > li i {
    font-size: 16px !important;
    opacity: 0.9;
}

ul.stats > li .details {
    display: flex;
    flex-direction: column;
}

ul.stats > li .details .big {
    font-weight: 700 !important;
    font-size: 13px !important;
}

ul.stats > li.satgreen {
    background: linear-gradient(135deg, #059669 0%, #10B981 100%) !important;
}

ul.stats > li.lightred {
    background: linear-gradient(135deg, #DC2626 0%, #EF4444 100%) !important;
}

/* All Table Header Styling */
.table th,
.table thead th,
.table > thead > tr > th,
table.dataTable thead th,
table.dataTable thead > tr > th,
table.dataTable thead th.sorting,
table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc,
.table-nomargin thead th {
    background: var(--primary-navy) !important;
    background-color: var(--primary-navy) !important;
    color: #FFFFFF !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 15px !important;
    border-bottom: 2px solid rgba(0,0,0,0.05) !important;
    border: none !important;
    vertical-align: middle !important;
}

/* Fix for DataTables header filter inputs (white pills) getting squished and cutting off text */
.table thead th input[type="text"],
.table thead td input[type="text"],
table.dataTable thead th input,
table.dataTable thead th select {
    min-width: 100px !important; /* Ensure they don't shrink too small */
    width: 100% !important;
    padding: 4px 8px !important; /* Reduce padding to maximize text space */
    border-radius: 4px !important;
    box-sizing: border-box !important;
    font-size: 12px !important;
    color: #333 !important;
    font-weight: normal !important;
    text-transform: none !important;
}

/* All Table Rows Styling */
.table td,
.table tbody td,
table.dataTable tbody td {
    padding: 11px 14px !important;
    font-size: 13px !important;
    color: var(--text-primary) !important;
    border-top: 1px solid #F1F5F9 !important;
    border-bottom: 1px solid #F1F5F9 !important;
    border-left: none !important;
    border-right: none !important;
    vertical-align: middle !important;
}

.table.table-bordered {
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    overflow: hidden !important;
    border-collapse: separate !important;
}

.table-hover > tbody > tr:hover {
    background-color: #F8FAFC !important;
}

.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: #FAFBFC !important;
}

/* Forms & Inputs in All Inner Pages */
.form-horizontal .form-group {
    margin-bottom: 16px !important;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.form-group label.control-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    padding-top: 6px !important;
    text-align: right;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="search"],
textarea,
select {
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    color: var(--text-primary) !important;
    background-color: #FFFFFF !important;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast) !important;
    box-shadow: none !important;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color: var(--primary-purple) !important;
    box-shadow: 0 0 0 3px rgba(123, 97, 255, 0.15) !important;
    outline: none !important;
}

/* Chosen Select Component Overrides */
.chosen-container {
    font-size: 13px !important;
}

.chosen-container-single .chosen-single {
    background: #FFFFFF !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    height: 38px !important;
    line-height: 38px !important;
    padding: 0 12px !important;
    color: var(--text-primary) !important;
}

.chosen-container-single .chosen-single span {
    margin-right: 20px !important;
    line-height: 38px !important;
}

.chosen-container-active.chosen-with-drop .chosen-single {
    border-color: var(--primary-purple) !important;
    box-shadow: 0 0 0 3px rgba(123, 97, 255, 0.15) !important;
}

.chosen-container .chosen-drop {
    border: 1px solid var(--border-light) !important;
    border-radius: 0 0 0px 0px !important;
    box-shadow: var(--shadow-lg) !important;
    margin-top: 2px !important;
}

.chosen-container .chosen-results li.highlighted {
    background: var(--primary-navy) !important;
    color: #FFFFFF !important;
}

/* Buttons (Modernized with subtle gradient & pill shapes) */
.btn {
    border-radius: 0px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 7px 16px !important;
    transition: all var(--transition-fast) !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

.btn:hover {
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-purple) 0%, #6366F1 100%) !important;
    border: none !important;
    color: #FFFFFF !important;
    box-shadow: 0 2px 6px rgba(123, 97, 255, 0.3) !important;
}

.btn-primary:hover {
    background: linear-gradient(135deg, #6C4FE0 0%, #4F46E5 100%) !important;
    box-shadow: 0 4px 12px rgba(123, 97, 255, 0.4) !important;
}

.btn-danger,
.btn-inverse {
    background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%) !important;
    border: none !important;
    color: #FFFFFF !important;
}

.btn-success {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
    border: none !important;
    color: #FFFFFF !important;
}

.btn-info {
    background: linear-gradient(135deg, #06B6D4 0%, #0891B2 100%) !important;
    border: none !important;
    color: #FFFFFF !important;
}

.btn-mini {
    padding: 4px 10px !important;
    font-size: 11px !important;
    border-radius: 6px !important;
}

/* Modal Styling across inner pages */
.modal-content {
    border-radius: 0px !important;
    border: none !important;
    box-shadow: 0 20px 40px rgba(12, 35, 64, 0.25) !important;
    overflow: hidden !important;
}

.modal-header {
    background: var(--primary-navy) !important;
    color: #FFFFFF !important;
    padding: 16px 20px !important;
    border-bottom: none !important;
}

.modal-header .modal-title {
    color: #FFFFFF !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    letter-spacing: 0.2px;
}

.modal-header .close {
    color: #FFFFFF !important;
    opacity: 0.8 !important;
    text-shadow: none !important;
    font-size: 20px !important;
}

.modal-header .close:hover {
    opacity: 1 !important;
}

.modal-body {
    padding: 20px 24px !important;
    background: #FFFFFF !important;
}

/* Alerts / Toasts */
.my_success_alrt {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
    box-shadow: 0 10px 25px rgba(16, 185, 129, 0.3) !important;
    border-radius: 0px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    border: none !important;
}

.my_error_alrt {
    background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%) !important;
    box-shadow: 0 10px 25px rgba(239, 68, 68, 0.3) !important;
    border-radius: 0px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    border: none !important;
}

/* Action Icons inside tables */
.table a i.fa-eye,
.table a i.fa-edit,
.table a i.fa-pencil,
.table a i.fa-trash-o,
.table a i.fa-trash {
    font-size: 15px !important;
    padding: 4px;
    transition: transform var(--transition-fast);
}

.table a i.fa-eye:hover,
.table a i.fa-edit:hover,
.table a i.fa-pencil:hover {
    color: var(--primary-purple) !important;
    transform: scale(1.15);
}

.table a i.fa-trash-o:hover,
.table a i.fa-trash:hover {
    color: var(--primary-red) !important;
    transform: scale(1.15);
}

/* DataTables pagination & filters across all inner pages */
.dataTables_wrapper {
    padding: 12px 16px !important;
    background: #FFFFFF !important;
    border-radius: 0px !important;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 12px !important;
}

.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
    font-weight: 500 !important;
    font-size: 13px !important;
    color: var(--text-secondary) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    border-radius: 6px !important;
    border: 1px solid var(--border-light) !important;
    color: var(--text-primary) !important;
    background: #FFFFFF !important;
    padding: 5px 12px !important;
    font-weight: 600 !important;
    margin: 0 2px !important;
    transition: all var(--transition-fast) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #F1F5F9 !important;
    border-color: #CBD5E1 !important;
    color: var(--primary-navy) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: var(--primary-navy) !important;
    color: #FFFFFF !important;
    border-color: var(--primary-navy) !important;
}

/* Tab Navigation (nav-tabs) */
.nav-tabs {
    border-bottom: 2px solid var(--border-light) !important;
    margin-bottom: 16px !important;
}

.nav-tabs > li > a {
    border: none !important;
    color: var(--text-secondary) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 10px 18px !important;
    border-radius: 0px 8px 0 0 !important;
    transition: all var(--transition-fast) !important;
}

.nav-tabs > li > a:hover {
    background: rgba(123, 97, 255, 0.06) !important;
    color: var(--primary-purple) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    background: #FFFFFF !important;
    color: var(--primary-navy) !important;
    border-bottom: 3px solid var(--primary-purple) !important;
}

/* Status Badges */
.badge,
.label {
    font-weight: 600 !important;
    border-radius: 6px !important;
    padding: 4px 8px !important;
    letter-spacing: 0.3px !important;
}

.label-success,
.badge-success {
    background-color: #10B981 !important;
}

.label-danger,
.badge-danger,
.label-important {
    background-color: #EF4444 !important;
}

.label-warning,
.badge-warning {
    background-color: #F59E0B !important;
}

.label-info,
.badge-info {
    background-color: #06B6D4 !important;
}

/* ═══════════════════════════════════════════════════════════════
   BRAND LOGO — CODEX
   ═══════════════════════════════════════════════════════════════ */
#navigation .brand-logo,
.brand-logo {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    padding: 8px 16px !important;
    text-transform: uppercase !important;
    background: linear-gradient(135deg, #2563EB 0%, #60A5FA 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

#navigation .brand-logo .brand-icon,
.brand-logo .brand-icon {
    font-size: 24px !important;
    -webkit-text-fill-color: #2563EB !important;
}

#navigation .brand-logo:hover,
.brand-logo:hover {
    opacity: 0.85 !important;
}

/* Also update sidebar logo if shown */
#left .brand-logo,
.logo_sec_text {
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #FFFFFF !important;
}

/* ═══════════════════════════════════════════════════════════════
   COUNTDOWN TIMER — Compact Single-Row Grid (No-Wrap / No-Scroll)
   ═══════════════════════════════════════════════════════════════ */
#left .recounter,
#left .recounter .dsCountDown,
#left .dsCountDown,
.recounter.dsCountDown {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    align-items: center !important;
    gap: 0 !important;
    width: calc(100% - 20px) !important;
    max-width: 100% !important;
    margin: 8px 10px 10px 10px !important;
    padding: 6px 2px !important;
    box-sizing: border-box !important;
    background: linear-gradient(135deg, rgba(123, 97, 255, 0.16) 0%, rgba(12, 35, 64, 0.92) 100%) !important;
    border: 1px solid rgba(123, 97, 255, 0.28) !important;
    border-radius: 0px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
    filter: none !important;
    float: none !important;
    clear: both !important;
    overflow: hidden !important;
    font-family: 'Inter', sans-serif !important;
}

/* Force all dsCountDown themes inside sidebar to single row */
#left .dsCountDown.ds-white,
#left .dsCountDown.ds-black,
#left .dsCountDown.ds-red,
#left .dsCountDown.ds-flat {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    background: linear-gradient(135deg, rgba(123, 97, 255, 0.16) 0%, rgba(12, 35, 64, 0.92) 100%) !important;
    border: 1px solid rgba(123, 97, 255, 0.28) !important;
    border-radius: 0px !important;
    padding: 6px 2px !important;
    margin: 8px 10px 10px 10px !important;
    width: calc(100% - 20px) !important;
    box-sizing: border-box !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
    float: none !important;
}

/* Individual countdown column items */
#left .dsCountDown .ds-element,
#left .ds-white .ds-element,
#left .ds-black .ds-element,
#left .ds-red .ds-element,
#left .ds-flat .ds-element {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 2px 1px !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-bottom: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

#left .dsCountDown > .ds-element:last-child,
#left .dsCountDown > .ds-element.ds-element-seconds,
#left .ds-element-seconds {
    border-right: none !important;
    padding-right: 1px !important;
}

/* Digits / Numbers */
#left .dsCountDown .ds-element-value,
#left .ds-white .ds-element-value,
#left .ds-black .ds-element-value,
#left .ds-red .ds-element-value,
#left .ds-flat .ds-element-value {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    text-shadow: none !important;
    display: block !important;
    line-height: 1.15 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    text-align: center !important;
}

/* Labels (Days, Hours, Minutes, Seconds) */
#left .dsCountDown .ds-element-title,
#left .ds-white .ds-element-title,
#left .ds-black .ds-element-title,
#left .ds-red .ds-element-title,
#left .ds-flat .ds-element-title {
    font-size: 8px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.55) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    display: block !important;
    margin: 2px 0 0 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-align: center !important;
    overflow: hidden !important;
}

/* ═══════════════════════════════════════════════════════════════
   DATEPICKER / CALENDAR — Z-Index & Visibility Fix
   ═══════════════════════════════════════════════════════════════ */
.bootstrap-datetimepicker-widget {
    z-index: 99999 !important;
}

.bootstrap-datetimepicker-widget.dropdown-menu {
    z-index: 99999 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    padding: 8px !important;
}

/* jQuery UI Datepicker z-index fix */
.ui-datepicker {
    z-index: 99999 !important;
    background: #FFFFFF !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 0px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    padding: 8px !important;
    font-family: 'Inter', sans-serif !important;
}

.ui-datepicker .ui-datepicker-header {
    background: var(--primary-navy) !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 8px !important;
    font-weight: 600 !important;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next {
    cursor: pointer !important;
    color: #FFFFFF !important;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next span {
    color: #FFFFFF !important;
}

.ui-datepicker td a,
.ui-datepicker td span {
    text-align: center !important;
    padding: 6px !important;
    border-radius: 6px !important;
    transition: all 0.15s ease !important;
}

.ui-datepicker td a:hover {
    background: rgba(123, 97, 255, 0.1) !important;
    color: var(--primary-purple) !important;
}

.ui-datepicker td a.ui-state-active {
    background: var(--primary-purple) !important;
    color: #FFFFFF !important;
}

.ui-datepicker td a.ui-state-highlight {
    background: rgba(123, 97, 255, 0.15) !important;
    color: var(--primary-purple) !important;
    font-weight: 600 !important;
}

/* Bootstrap Datetimepicker calendar styling */
.bootstrap-datetimepicker-widget table td {
    border-radius: 6px !important;
}

.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
    background-color: var(--primary-purple) !important;
    color: #FFFFFF !important;
}

.bootstrap-datetimepicker-widget table td.today {
    background: rgba(123, 97, 255, 0.15) !important;
    color: var(--primary-purple) !important;
}

.bootstrap-datetimepicker-widget table td.today::before {
    border-bottom-color: var(--primary-purple) !important;
}

.bootstrap-datetimepicker-widget table th {
    font-weight: 600 !important;
    color: var(--text-secondary) !important;
}

/* Removed globally destructive overflow overrides to fix table scrolling */
/* ================================================================
   GLOBAL PAGE ALIGNMENT & RESPONSIVE LAYOUT FIXES
   Eliminates narrow / skewed forms and empty white spaces across all pages
   ================================================================ */

/* Inner Pages wrapper (pages without sidebar) */
#main[style*="margin-left: 0"],
#main[style*="margin-left: 0px"],
#content > #main:only-child {
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#main[style*="margin-left: 0"] > .container-fluid,
#main[style*="margin-left: 0px"] > .container-fluid,
#content > #main:only-child > .container-fluid {
    padding: 16px 28px 40px 28px !important;
    max-width: 1600px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

/* Page Header & Breadcrumbs Alignment */
.page-header {
    margin: 8px 0 16px 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.page-header h1,
.page-header .pull-left h1 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--primary-navy) !important;
    margin: 0 !important;
    letter-spacing: -0.2px;
}

/* Breadcrumb Bar */
.breadcrumb {
    background: #FFFFFF !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 10px !important;
    padding: 10px 18px !important;
    margin-bottom: 20px !important;
    box-shadow: var(--shadow-sm) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Rows */
.row, .row-fluid {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Inner Page Tabs & Containers: Expand to 100% full width */
.tab-pane > [class*="col-sm-"].wid_1199,
.tab-pane > .col-sm-10,
.tab-pane > .col-sm-9,
.tab-pane > .col-sm-12 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Standalone Forms (e.g. Conversion Update / Delete) — Clean Centered Card */
#add_conversion .col-sm-6.wid_1199,
#add_conversion .col-sm-6,
#delete_conversion .col-sm-6 {
    width: 100% !important;
    max-width: 780px !important;
    margin: 15px auto !important;
    float: none !important;
    padding: 0 !important;
}

#view_conversion .col-sm-6 {
    width: 50% !important;
}

@media (max-width: 991px) {
    #view_conversion .col-sm-6 {
        width: 100% !important;
        float: none !important;
    }
}

/* Box wrapper */
.box {
    width: 100% !important;
    border-radius: 12px !important;
    border: 1px solid var(--border-light) !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.05) !important;
    background: #FFFFFF !important;
    margin-bottom: 24px !important;
}

.box .box-title {
    background: var(--primary-navy) !important;
    color: #FFFFFF !important;
    padding: 12px 20px !important;
    border-radius: 12px 12px 0 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 48px !important;
}

.box .box-title h3 {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.box .box-content {
    padding: 20px 24px !important;
    background: #FFFFFF !important;
}

.box .box-content.nopadding {
    padding: 0 !important;
}

/* Fixed Overflow issues that caused Calendar Clipping */

/* Header Tabs (e.g. Conversion Update, View, Delete) */
.box-title .tabs {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.box-title .tabs > li > a {
    background: rgba(255, 255, 255, 0.12) !important;
    color: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 0px !important;
    padding: 6px 14px !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.15s ease !important;
    display: inline-block !important;
}

.box-title .tabs > li.active > a,
.box-title .tabs > li > a:hover {
    background: #FFFFFF !important;
    color: var(--primary-navy) !important;
    border-color: #FFFFFF !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
}

/* Horizontal Filter Bar Alignment (e.g. overall_summary.php) */
.box-content > .form-group,
.box-content .form-horizontal > .form-group {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 12px 14px !important;
    margin: 0 !important;
    padding: 6px 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.box-content > .form-group > [class*="col-sm-"],
.box-content .form-horizontal > .form-group > [class*="col-sm-"] {
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 1 1 120px !important;
    min-width: 110px !important;
    box-sizing: border-box !important;
}

.box-content > .form-group > .col-sm-1 {
    flex: 0.8 1 95px !important;
    min-width: 85px !important;
}

.box-content > .form-group > .col-sm-2 {
    flex: 1.4 1 140px !important;
    min-width: 130px !important;
}

/* Control Labels */
.box-content > .form-group label.control-label,
label.control-label {
    display: block !important;
    float: none !important;
    text-align: left !important;
    width: 100% !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #475569 !important;
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
}

/* Inputs, Selects, and Chosen controls in filter bars */
.box-content > .form-group .form-control,
.box-content > .form-group input[type="text"],
.box-content > .form-group .select-style,
.box-content > .form-group select,
.box-content > .form-group .chosen-container,
.box-content > .form-group .chosen-container .chosen-single {
    height: 38px !important;
    line-height: 38px !important;
    border-radius: 0px !important;
    border: 1px solid #CBD5E1 !important;
    font-size: 13px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #FFFFFF !important;
}

.box-content > .form-group .select-style select {
    border: none !important;
    padding: 0 10px !important;
    height: 36px !important;
    line-height: 36px !important;
}

.box-content > .form-group .chosen-container .chosen-single {
    border: none !important;
    padding: 0 10px !important;
    height: 36px !important;
    line-height: 36px !important;
}

/* Filter Submit Button */
.box-content > .form-group button[type="submit"],
.box-content > .form-group .btn-primary,
#over_submit {
    height: 38px !important;
    line-height: 38px !important;
    margin: 0 !important;
    padding: 0 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    background: linear-gradient(135deg, var(--primary-purple) 0%, #6366F1 100%) !important;
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.28) !important;
    width: 100% !important;
}

/* Form Layout for Textarea / Settings forms (e.g. conversion_update.php) */
.form-horizontal label.control-label.col-sm-2 {
    float: none !important;
    width: 100% !important;
    text-align: left !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #475569 !important;
    margin-bottom: 6px !important;
    margin-top: 10px !important;
    padding: 0 !important;
}

.form-horizontal textarea.form-control {
    border-radius: 10px !important;
    border: 1px solid #CBD5E1 !important;
    padding: 12px !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    background: #F8FAFC !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s, background 0.15s !important;
}

.form-horizontal textarea.form-control:focus {
    background: #FFFFFF !important;
    border-color: var(--primary-purple) !important;
}

.form-horizontal input[type="text"].form-control {
    max-width: 100% !important;
    height: 40px !important;
    border-radius: 0px !important;
    border: 1px solid #CBD5E1 !important;
    padding: 8px 12px !important;
    box-sizing: border-box !important;
}

.form-horizontal button[type="submit"] {
    border-radius: 0px !important;
    padding: 10px 28px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    margin-top: 16px !important;
}

/* Output Report Tables */
#overall22, #overall, #over11_view {
    width: 100% !important;
    margin-top: 16px !important;
}

#overall22 .table,
#overall .table,
#over11_view .table,
.dataTable {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

/* ─── GENERATE CSV BUTTON — Right Aligned in Box Title ─── */
.box .box-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.box .box-title h3 {
    flex: 1 !important;
    margin: 0 !important;
}

.box .box-title .actions {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    flex-shrink: 0 !important;
}

.box .box-title .actions .btn.btn-mini {
    background: rgba(255, 255, 255, 0.18) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 0px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 6px 16px !important;
    letter-spacing: 0.3px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.box .box-title .actions .btn.btn-mini:hover {
    background: rgba(255, 255, 255, 0.3) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

/* ─── OVERALL SUMMARY REPORT TABLE — Clean Header ─── */
.mytable11 {
    white-space: nowrap !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
}

/* Fix the filter input columns (ISP, Group small boxes) */
.mytab11 {
    min-width: 65px !important;
}

.kalinput {
    min-width: 90px !important;
}

/* UNIFY ALL CARD HEADERS TO DARK NAVY */
.box .box-title,
.box.box-color .box-title,
.box.box-color.green .box-title,
.box.box-color.orange .box-title,
.box.box-color.satblue .box-title,
.box.box-color.magenta .box-title,
.box.box-color.lightred .box-title,
.box.box-color.teal .box-title,
.box.box-color.blue .box-title,
.box.box-color.red .box-title,
.box.box-color.satgreen .box-title {
    background: #0F172A !important;
    background-color: #0F172A !important;
    border-color: #0F172A !important;
}

/* Also ensure title text and icons are white */
.box .box-title h3,
.box.box-color .box-title h3,
.box .box-title h3 i,
.box.box-color .box-title h3 i {
    color: #FFFFFF !important;
}


/* ========================================================= */
/* PREMIUM WATERFALL DROPDOWN ANIMATION (V2)                 */
/* ========================================================= */

/* 1. Dropdown Container - Floating 3D Glass Effect */
.main-nav > li.open > .dropdown-menu {
    animation: dropDownFluid 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    display: block !important;
    transform-origin: top center;
    box-shadow: 0 12px 35px -5px rgba(15, 23, 42, 0.15), 0 5px 15px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid rgba(226, 232, 240, 0.9) !important;
    border-radius: 12px !important;
    padding: 8px 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px) !important;
}

@keyframes dropDownFluid {
    0% { opacity: 0; transform: perspective(1000px) rotateX(-15deg) translateY(-15px) scale(0.95); }
    100% { opacity: 1; transform: perspective(1000px) rotateX(0deg) translateY(0) scale(1); }
}

/* 2. Individual Links - Vertical Drop with Bounce Easing */
.main-nav > li.open > .dropdown-menu > li {
    opacity: 0;
    animation: waterfallItemPremium 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes waterfallItemPremium {
    0% { opacity: 0; transform: translateY(-12px) scale(0.98); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}

/* 3. Tighter Sequential Delays for a Fluid Liquid Effect */
.main-nav > li.open > .dropdown-menu > li:nth-child(1) { animation-delay: 0.03s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(2) { animation-delay: 0.06s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(3) { animation-delay: 0.09s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(4) { animation-delay: 0.12s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(5) { animation-delay: 0.15s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(6) { animation-delay: 0.18s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(7) { animation-delay: 0.21s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(8) { animation-delay: 0.24s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(9) { animation-delay: 0.27s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(10) { animation-delay: 0.30s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(11) { animation-delay: 0.33s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(12) { animation-delay: 0.36s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(13) { animation-delay: 0.39s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(14) { animation-delay: 0.42s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(15) { animation-delay: 0.45s; }
.main-nav > li.open > .dropdown-menu > li:nth-child(n+16) { animation-delay: 0.48s; }

/* 4. Premium Styling & Floating Hover Effect inside the Dropdown */
.main-nav > li > .dropdown-menu > li > a {
    margin: 2px 8px !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #475569 !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border: none !important;
}

.main-nav > li > .dropdown-menu > li > a:hover {
    background: rgba(99, 102, 241, 0.08) !important; /* Soft Indigo background */
    color: #4F46E5 !important; /* Deep Indigo text */
    transform: translateX(5px) !important; /* Smooth indent float on hover */
    box-shadow: none !important;
}

/* ========================================================= */
/* PREMIUM DROPDOWN ARROW (CARET) ANIMATION                  */
/* ========================================================= */

/* Hide the default ugly bootstrap triangle caret */
.main-nav > li > a.dropdown-toggle > .caret {
    display: none !important;
}

/* Add a beautiful FontAwesome Chevron arrow instead */
.main-nav > li > a.dropdown-toggle::after {
    content: '\f107' !important; /* FontAwesome Angle Down */
    font-family: 'FontAwesome' !important;
    font-size: 15px !important;
    font-weight: bold !important;
    color: rgba(255, 255, 255, 0.65) !important; /* Bright white but slightly soft */
    margin-left: 10px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.3s ease, filter 0.3s ease !important;
}

/* When hovering over the menu item, the arrow glows */
.main-nav > li > a.dropdown-toggle:hover::after {
    color: #ffffff !important;
    filter: drop-shadow(0px 0px 6px rgba(255, 255, 255, 0.6)) !important; 
}

/* When the menu is clicked/opened, the arrow smoothly flips upside down! */
.main-nav > li.open > a.dropdown-toggle::after {
    color: #ffffff !important;
    transform: rotate(-180deg) !important;
    filter: drop-shadow(0px 0px 6px rgba(255, 255, 255, 0.6)) !important;
}

/* ========================================================= */
/* HOVER-TO-OPEN DROPDOWN ANIMATION (DESKTOP)                */
/* ========================================================= */

@media (min-width: 768px) {
    /* 1. Open the dropdown automatically on mouse hover */
    .main-nav > li:hover > .dropdown-menu {
        display: block !important;
        animation: dropDownFluid 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
        transform-origin: top center;
        box-shadow: 0 12px 35px -5px rgba(15, 23, 42, 0.15), 0 5px 15px rgba(0, 0, 0, 0.05) !important;
        border: 1px solid rgba(226, 232, 240, 0.9) !important;
        border-radius: 12px !important;
        padding: 8px 0 !important;
        background: rgba(255, 255, 255, 0.98) !important;
        backdrop-filter: blur(10px) !important;
    }

    /* 2. Run the inner waterfall items animation on hover */
    .main-nav > li:hover > .dropdown-menu > li {
        opacity: 0;
        animation: waterfallItemPremium 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    }

    /* 3. Flip the Arrow smoothly on hover */
    .main-nav > li:hover > a.dropdown-toggle::after {
        color: #ffffff !important;
        transform: rotate(-180deg) !important;
        filter: drop-shadow(0px 0px 6px rgba(255, 255, 255, 0.6)) !important;
    }

    /* 4. Waterfall Sequential Delays for Hover state */
    .main-nav > li:hover > .dropdown-menu > li:nth-child(1) { animation-delay: 0.03s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(2) { animation-delay: 0.06s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(3) { animation-delay: 0.09s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(4) { animation-delay: 0.12s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(5) { animation-delay: 0.15s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(6) { animation-delay: 0.18s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(7) { animation-delay: 0.21s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(8) { animation-delay: 0.24s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(9) { animation-delay: 0.27s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(10) { animation-delay: 0.30s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(11) { animation-delay: 0.33s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(12) { animation-delay: 0.36s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(13) { animation-delay: 0.39s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(14) { animation-delay: 0.42s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(15) { animation-delay: 0.45s; }
    .main-nav > li:hover > .dropdown-menu > li:nth-child(n+16) { animation-delay: 0.48s; }
}



/* ========================================================= */
/* UNIFIED DATATABLES LAYOUT (MATCHING TARGET DESIGN) V3     */
/* ========================================================= */

/* 1. Unify the box container to look like a modern card */
.box,
.box.box-color {
    border-radius: 0px !important;
    overflow: visible !important; /* CRITICAL FIX: Allow calendar to escape! */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #E2E8F0 !important;
}

/* Fix Calendar Z-Index Globally */
.bootstrap-datetimepicker-widget, 
.datepicker, 
.daterangepicker {
    z-index: 9999999 !important; /* Bring calendar fully to the front */
}

/* 2. Fix the Box Title */
.box .box-title {
    padding: 15px 20px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-radius: 0px !important; /* Keep rounded corners on top */
}

/* Ensure the Generate CSV link looks like a proper button */
.box .box-title .actions a,
.box .box-title .actions .btn {
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    border-radius: 6px !important;
    padding: 6px 16px !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}
.box .box-title .actions a:hover,
.box .box-title .actions .btn:hover {
    background: #ffffff !important;
    color: #0F172A !important;
    border-color: #ffffff !important;
}

/* 3. SUPER CRISP DataTables Controls (Show X entries & Search) */
.dataTables_wrapper {
    padding: 20px 20px 0 20px !important; 
    background: #ffffff !important;
}

.dataTables_wrapper .dataTables_length {
    float: left !important;
    margin-bottom: 15px !important;
}

.dataTables_wrapper .dataTables_filter {
    float: right !important;
    margin-bottom: 15px !important;
}

/* Make the text labels (Show, entries, Search) crisp and modern */
.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
    font-weight: 600 !important;
    font-size: 13.5px !important;
    color: #64748B !important; 
}

/* AGGRESSIVE SELECTOR for Input and Select (Crisp Apple/Stripe feel) */
.dataTables_wrapper .dataTables_length label select.form-control,
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter label input.form-control,
.dataTables_wrapper .dataTables_filter input {
    background-color: #F8FAFC !important;
    border: 2px solid #E2E8F0 !important;
    border-radius: 0px !important;
    padding: 6px 14px !important;
    outline: none !important;
    height: 38px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.03) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #0F172A !important;
    transition: all 0.2s ease !important;
    margin: 0 8px !important; 
    display: inline-block !important;
}

.dataTables_wrapper .dataTables_filter label input.form-control,
.dataTables_wrapper .dataTables_filter input {
    min-width: 250px !important; 
}

/* Focus states for ultimate crispness */
.dataTables_wrapper .dataTables_length label select.form-control:focus,
.dataTables_wrapper .dataTables_length select:focus,
.dataTables_wrapper .dataTables_filter label input.form-control:focus,
.dataTables_wrapper .dataTables_filter input:focus {
    background-color: #ffffff !important;
    border-color: #6366F1 !important; 
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.15) !important;
}

/* Clear floating elements before the table */
.dataTables_wrapper::after {
    content: "" !important;
    display: block !important;
    clear: both !important;
}

/* 4. Unified Table Header (Dark Navy to match title) */
table.dataTable, .table {
    margin-top: 0 !important;
    border-collapse: collapse !important;
    width: 100% !important;
}

table.dataTable thead th,
.table thead th {
    background-color: #0F172A !important; 
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 12.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 16px !important;
    border: none !important;
    border-right: 1px solid rgba(255,255,255,0.08) !important;
}

/* Remove default weird borders from table body */
table.dataTable tbody td,
.table tbody td {
    padding: 14px 16px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    border-top: none !important;
    border-bottom: 1px solid #F1F5F9 !important;
    border-left: none !important;
    border-right: none !important;
    vertical-align: middle !important;
}

/* Table Hover effect for better readability */
table.dataTable tbody tr:hover td {
    background-color: #F8FAFC !important;
}

/* Totals Row */
table.dataTable tbody tr:last-child td,
table.dataTable tbody tr td b {
    background-color: #F1F5F9 !important;
    font-weight: 700 !important;
    color: #0F172A !important;
}

/* Pagination Padding */
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
    padding: 20px !important;
    font-weight: 600 !important;
    color: #64748B !important;
}


/* ========================================================= */
/* CRISP MODERN INPUTS GLOBALLY (FOR ALL FORMS & DATATABLES) */
/* ========================================================= */

/* Aggressive styling for all form controls, selects, and inputs */
.box-content input[type="text"],
.box-content input[type="search"],
.box-content select,
.box-content .form-control,
.dataTables_wrapper input,
.dataTables_wrapper select {
    background-color: #F8FAFC !important;
    border: 2px solid #E2E8F0 !important;
    border-radius: 0px !important;
    padding: 6px 14px !important;
    outline: none !important;
    height: 38px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.02) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #0F172A !important;
    transition: all 0.2s ease !important;
}

/* Chosen Plugin specific override to match the new crisp look */
.box-content .chosen-container .chosen-single {
    background: #F8FAFC !important;
    border: 2px solid #E2E8F0 !important;
    border-radius: 0px !important;
    height: 38px !important;
    line-height: 34px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.02) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #0F172A !important;
}

/* Focus Glow Effects (Indigo) */
.box-content input[type="text"]:focus,
.box-content input[type="search"]:focus,
.box-content select:focus,
.box-content .form-control:focus,
.dataTables_wrapper input:focus,
.dataTables_wrapper select:focus,
.box-content .chosen-container-active .chosen-single {
    background-color: #ffffff !important;
    border-color: #6366F1 !important; /* Primary Indigo */
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.15) !important;
}

/* Make sure all labels are crisp */
.box-content label,
.dataTables_wrapper label {
    font-weight: 600 !important;
    font-size: 13px !important;
    color: #64748B !important; 
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Submit Buttons in filter forms */
.box-content button[type="submit"],
.box-content .btn-primary {
    border-radius: 0px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    transition: all 0.2s ease !important;
}
.box-content button[type="submit"]:hover,
.box-content .btn-primary:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3) !important;
}

/* Fix Chosen Dropdown clipping */
.chosen-container .chosen-drop {
    border-radius: 0 0 8px 8px !important;
    border: 2px solid #6366F1 !important;
    border-top: none !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
}

/* ========================================================= */
/* MODERN CALENDAR (DATETIMEPICKER) THEMING                  */
/* ========================================================= */

/* Calendar Container */
.bootstrap-datetimepicker-widget.dropdown-menu {
    border-radius: 12px !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12) !important;
    border: 1px solid #E2E8F0 !important;
    padding: 10px !important;
    background: #ffffff !important;
}

/* Active Day / Month / Year */
.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover,
.bootstrap-datetimepicker-widget table td span.active,
.bootstrap-datetimepicker-widget table td span.active:hover {
    background-color: #6366F1 !important; /* New Crisp Indigo Color */
    color: #ffffff !important;
    text-shadow: none !important;
    border-radius: 0px !important; /* Crisp rounded selection */
    font-weight: 600 !important;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.35) !important;
}

/* Hover States for Days/Months */
.bootstrap-datetimepicker-widget table td.day:hover,
.bootstrap-datetimepicker-widget table td.hour:hover,
.bootstrap-datetimepicker-widget table td.minute:hover,
.bootstrap-datetimepicker-widget table td.second:hover,
.bootstrap-datetimepicker-widget table td span:hover {
    background-color: #F1F5F9 !important;
    color: #0F172A !important;
    border-radius: 0px !important;
}

/* Today's Date Highlight (if active) */
.bootstrap-datetimepicker-widget table td.today:before {
    border-bottom-color: #6366F1 !important;
}

/* Headers (Month/Year Switcher arrows) */
.bootstrap-datetimepicker-widget table th {
    border-radius: 0px !important;
    transition: all 0.2s ease !important;
}
.bootstrap-datetimepicker-widget table th:hover {
    background-color: #F1F5F9 !important;
}
.bootstrap-datetimepicker-widget table th.picker-switch {
    font-weight: 600 !important;
    color: #0F172A !important;
}






