/* ==========================
   Header
========================== */
body{
    background:#F5F7FB;
}
.header-section{
    padding:12px 0 8px 0;
}

.page-title{
    font-size:32px;
    font-weight:700;
    color:#1E293B;
    margin-bottom:6px;
}

.page-subtitle{
    font-size:15px;
    color:#64748B;
    margin-bottom:0;
}

/* ==========================
   Buttons
========================== */

.action-btn{
    border-radius:10px !important;
    padding:8px 18px !important;
    font-weight:600;
}

/* ===========================
   Module Card
=========================== */

.module-card{
    border:none !important;
    border-radius:14px !important;
    box-shadow:0 2px 8px rgba(15,23,42,.08);
    margin-bottom:24px;
}

.section-label{

    font-size:14px;
    font-weight:600;
    color:#475569;

    margin-bottom:10px;

}

/* Dropdown */

.module-dropdown .Select-control{

    height:46px !important;

    border-radius:10px !important;

    border:1px solid #CBD5E1 !important;

    box-shadow:none !important;

}

.module-dropdown .Select-placeholder,
.module-dropdown .Select-value-label{

    line-height:44px !important;

    font-size:15px;

}
/* ===========================================
   Navigation Tabs
=========================================== */

.report-nav{

    background:#FFFFFF;

    padding:6px;

    border-radius:14px;

    box-shadow:0 2px 8px rgba(15,23,42,.08);

}

/* Tab */

.report-nav-link{

    color:#15294B !important;

    font-weight:600;

    border-radius:10px !important;

    transition:.25s;

    padding:12px 20px !important;

}

/* Hover */

.report-nav-link:hover{

    background:#EEF4FF !important;

    color:#15294B !important;

}

/* Active */

.report-nav .nav-link.active{

    background:#15294B !important;

    color:white !important;

}
.chart-card{

    border:none;

    border-radius:14px;

    box-shadow:0 2px 10px rgba(15,23,42,.08);

}

.chart-header{

    background:white !important;

    border-bottom:1px solid #E2E8F0 !important;

    font-weight:600;

    color:#334155;

}
.overview-card{

    border:none;

    border-radius:14px;

    box-shadow:0 4px 12px rgba(15,23,42,.08);

    transition:.25s;

}

.overview-card:hover{

    transform:translateY(-2px);

}

.overview-title{

    font-size:11px;

    text-transform:uppercase;

    letter-spacing:.6px;

    color:#64748B;

    font-weight:700;

    margin-bottom:10px;

}

.overview-value{

    font-size:32px;

    font-weight:700;

    color:#0F172A;

    margin:0;

}

.overview-subtitle{

    color:#64748B;

}

.overview-icon{

    width:54px;

    height:54px;

    border-radius:50%;

    background:#F8FAFC;

    display:flex;

    align-items:center;

    justify-content:center;

}

.section-heading{

    font-size:22px;

    font-weight:700;

    color:#0F172A;

}
.scheduled-card{

    border:none;

    border-radius:16px;

    box-shadow:0 4px 12px rgba(15,23,42,.08);

}

.scheduled-card .card-header{

    background:white;

    border-bottom:1px solid #E2E8F0;

}

.scheduled-table th{

    font-size:12px;

    text-transform:uppercase;

    color:#64748B;

    font-weight:700;

}

.scheduled-table td{

    vertical-align:middle;

    font-size:14px;

}
.page-container {

    width: 96%;

    max-width: 1800px;

    margin: 20px auto;

    padding: 0;

}
/* ============================
   FILTER CARD
============================ */

.filter-card {
    border: none;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(16, 24, 40, 0.08);
}

.filter-card .card-header {
    background: #fff;
    border-bottom: 1px solid #EAECF0;
    border-radius: 14px 14px 0 0 !important;
}

.filter-card .card-body {
    padding: 22px;
}

/* ============================
   LABELS
============================ */

.filter-card label {
    font-size: 13px;
    font-weight: 600;
    color: #344054;
    margin-bottom: 8px;
}

/* ============================
   DROPDOWN
============================ */

.filter-dropdown {
    width: 100%;
}

.filter-dropdown .dash-dropdown-trigger {
    min-height: 44px;
    border: 1px solid #D0D5DD;
    border-radius: 12px;
    background: #fff;
    padding: 0 14px;
    transition: all .2s ease;
}

.filter-dropdown .dash-dropdown-trigger:hover {
    border-color: #3B82F6;
}

.filter-dropdown button[data-state="open"] .dash-dropdown-trigger {
    border-color: #3B82F6;
    box-shadow: 0 0 0 3px rgba(59,130,246,.12);
}

.filter-dropdown .dash-dropdown-placeholder {
    color: #667085;
    font-size: 14px;
}

.filter-dropdown .dash-dropdown-value {
    color: #101828;
    font-size: 14px;
    font-weight: 500;
}

.filter-dropdown .dash-dropdown-trigger-icon {
    color: #667085;
}

/* ============================
   DATE PICKER
============================ */

.dashboard-datepicker {
    width: 100%;
}

.dashboard-datepicker .dash-datepicker-input-wrapper {
    min-height: 44px;
    border: 1px solid #D0D5DD;
    border-radius: 12px;
    padding: 0 12px;
    transition: .2s;
}

.dashboard-datepicker .dash-datepicker-input-wrapper:hover {
    border-color: #3B82F6;
}

.dashboard-datepicker input {
    font-size: 14px;
    color: #344054;
}

/* ============================
   RESET BUTTON
============================ */

#reset-filters {
    color: #2563EB;
    text-decoration: none;
    font-weight: 600;
}

#reset-filters:hover {
    color: #1D4ED8;
    text-decoration: underline;
}
/* Main dropdown button */
button.dash-dropdown {
    height: 44px !important;
    border: 1px solid #D0D5DD !important;
    border-radius: 12px !important;
    background: #fff !important;
    transition: all .2s ease;
}

/* Hover */
button.dash-dropdown:hover {
    border-color: #2563EB !important;
}

/* Open state */
button.dash-dropdown[data-state="open"] {
    border-color: #2563EB !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important;
}

/* Placeholder */
button.dash-dropdown .dash-dropdown-placeholder {
    color: #667085 !important;
    font-size: 14px;
}

/* Selected value */
button.dash-dropdown .dash-dropdown-value {
    color: #101828 !important;
    font-size: 14px;
    font-weight: 500;
}

/* Arrow */
button.dash-dropdown .dash-dropdown-trigger-icon {
    color: #667085 !important;
}
/* ===========================
   DROPDOWN POPUP
=========================== */

.dash-dropdown-content{
    background:#fff;
    border:1px solid #E4E7EC;
    border-radius:14px;
    box-shadow:0 12px 32px rgba(16,24,40,.15);
    padding:12px;
    overflow:hidden;
}

/* ===========================
   SEARCH
=========================== */

.dash-dropdown-search-container{
    display:flex;
    align-items:center;
    gap:8px;
    border:1px solid #D0D5DD;
    border-radius:10px;
    padding:8px 12px;
    margin-bottom:12px;
    transition:.2s;
}

.dash-dropdown-search-container:focus-within{
    border-color:#2563EB;
    box-shadow:0 0 0 3px rgba(37,99,235,.12);
}

.dash-dropdown-search{
    border:none !important;
    outline:none !important;
    width:100%;
    font-size:14px;
    background:transparent;
}

.dash-dropdown-search::placeholder{
    color:#98A2B3;
}

.dash-dropdown-search-icon{
    color:#98A2B3;
}

/* ===========================
   ACTION BUTTONS
=========================== */

.dash-dropdown-actions{
    display:flex;
    gap:16px;
    padding-bottom:10px;
    border-bottom:1px solid #EAECF0;
    margin-bottom:8px;
}

.dash-dropdown-action-button{
    border:none;
    background:none;
    color:#2563EB;
    font-weight:600;
    font-size:13px;
    cursor:pointer;
    padding:0;
}

.dash-dropdown-action-button:hover{
    text-decoration:underline;
}

/* ===========================
   OPTIONS
=========================== */

.dash-dropdown-options{
    padding-right:4px;
}

.dash-dropdown-option{
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px;
    border-radius:10px;
    margin-bottom:4px;
    transition:.15s;
    cursor:pointer;
}

.dash-dropdown-option:hover{
    background:#F5F8FF;
}

.dash-dropdown-option[aria-selected="true"]{
    background:#EEF4FF;
}

.dash-options-list-option-checkbox{
    width:16px;
    height:16px;
    accent-color:#2563EB;
}

.dash-options-list-option-text{
    font-size:14px;
    color:#344054;
    font-weight:500;
}

/* ===========================
   SCROLLBAR
=========================== */

.dash-dropdown-options::-webkit-scrollbar{
    width:8px;
}

.dash-dropdown-options::-webkit-scrollbar-thumb{
    background:#D0D5DD;
    border-radius:20px;
}

.dash-dropdown-options::-webkit-scrollbar-track{
    background:transparent;
}

/* Options list */
.dash-dropdown-options{
    max-height: 220px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
}

/* Scrollbar */
.dash-dropdown-options::-webkit-scrollbar{
    width:8px;
}

.dash-dropdown-options::-webkit-scrollbar-track{
    background:transparent;
}

.dash-dropdown-options::-webkit-scrollbar-thumb{
    background:#C7CDD4;
    border-radius:20px;
}

.dash-dropdown-options::-webkit-scrollbar-thumb:hover{
    background:#98A2B3;
}
.dash-dropdown-content{
    display:flex;
    flex-direction:column;
    padding:10px;
}

.dash-dropdown-options{
    flex:1;
    min-height:0;
    overflow-y:auto !important;
}