/* ====== Dark Purple AdminLTE Theme ====== */

/* Sidebar (dark purple gradient) */
.sidebar-dark-primary {
    background: linear-gradient(180deg, #2a1f3d, #1e1630) !important;
}

/* Sidebar brand/logo section */
/*.brand-link {*/
/*    background: #2a1f3d !important;*/
/*    color: #d1b3ff !important;*/
/*    border-bottom: 1px solid #3c2f55 !important;*/
/*}*/

/* Sidebar text and links */
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link {
    color: #b9a7e8 !important;
    font-weight: 500;
}
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link.active {
    background-color: #5b35b3 !important;
    color: #fff !important;
    border-radius: 6px;
}
.sidebar-dark-primary .nav-sidebar > .nav-item > .nav-link:hover {
    background-color: #6c41d4 !important;
    color: #fff !important;
}

/* Nested/child links */
.nav-treeview .nav-link {
    color: #b9a7e8 !important;
}
.nav-treeview .nav-link:hover {
    background-color: #5b35b3 !important;
    color: #fff !important;
}

/* Top Navbar */
.main-header.navbar {
    background: linear-gradient(90deg, #3c2370, #5b35b3) !important;
    color: #fff !important;
    border-bottom: 1px solid #463477 !important;
}

/* Cards */
.card {
    /*background-color: #221832 !important;*/
    border: 1px solid #3a2b55 !important;
    color: #d6d0e8 !important;
}
.card-primary:not(.card-outline) > .card-header {
    /*background-color: #5b35b3 !important;*/
    background-color: #954AF7 !important;
    color: #fff !important;
}

/* Tables */
.table {
    color: #dcd2ff !important;
}
.table thead {
    /*background-color: #3a2b55 !important;*/
    background-color: #EB4AF7 !important;
    color: #fff !important;
}

/* Buttons */
.btn-primary {
    /*background-color: #6c41d4 !important;*/
    background-color: #954AF7 !important;
    /*border-color: #6c41d4 !important;*/
    border-color: #954AF7 !important;
}
.btn-primary:hover {
    background-color: #8756e5 !important;
    border-color: #8756e5 !important;
}

/* General links */
/*a {*/
/*    color: #a278ff !important;*/
/*}*/
a:hover {
    color: #c49dff !important;
}

/* Body background (subtle dark) */
/*body {*/
/*    background-color: #1a1424 !important;*/
/*}*/

/* Content wrapper for contrast */
/*.content-wrapper {*/
/*    background-color: #201a2f !important;*/
/*}*/

/* Scrollbar styling (optional) */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-thumb {
    background: #4b2f80;
    border-radius: 8px;
}
::-webkit-scrollbar-thumb:hover {
    background: #6c41d4;
}

.nav-link {
    transition: background-color 0.2s ease, color 0.2s ease;
}
.btn {
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* Restore readable dark text on white/light backgrounds */
.card,
.card-body,
.content-wrapper,
.content,
body {
    color: #333 !important;
}

.card-header:not(.bg-primary):not(.bg-purple):not(.bg-dark),
.table,
.table tbody tr,
.table td,
.table th {
    color: #333 !important;
}

/* Labels, form titles, section headers */
label,
.form-label,
.col-form-label,
.control-label {
    color: #333 !important;
}

/* Restore dark text for tab labels on white backgrounds */
.nav-tabs .nav-link {
    color: #333 !important;
}
.nav-tabs .nav-link.active {
    color: #5b35b3 !important; /* purple accent */
    font-weight: 600;
}

.table td,
.table th {
    color: #333 !important;
}

a.disabled {
    pointer-events: none;
    color: gray;
    text-decoration: none;
}


/* OLD-STYLE DATATABLE SEARCH BAR */
.dataTables_filter input {
    border: 1px solid #aaa;
    border-radius: 4px;
    padding: 6px 10px;
    height: 34px;
    /*margin-left: 8px;*/
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);
}

/* Optional: enlarge search label like old DataTables */
.dataTables_filter label {
    font-weight: bold;
    color: #444;
}


/* Make "Show X entries" dropdown wider */
.dataTables_wrapper .dataTables_length select {
    width: 138px !important;   /* increase size */
    padding: 4px 8px !important;
    border-radius: 4px;
    border: 1px solid #aaa;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    display: inline-block;
    margin-right: 20px;
}

/* Move search to the RIGHT like classic DataTables */
.dataTables_wrapper .dataTables_filter {
    float: right !important;
    text-align: right !important;
    margin-right: 10px;
}

.dataTables_wrapper .dataTables_length {
    float: left !important;
    text-align: left !important;
    margin-left: 5px;
}


/*!* Pagination box border like Bootstrap 2 *!*/
/*.dataTables_wrapper .dataTables_paginate .paginate_button {*/
/*    border: 1px solid #ccc !important;*/
/*    border-radius: 3px !important;*/
/*    padding: 4px 10px !important;*/
/*    margin: 0 2px !important;*/
/*    background: #f9f9f9 !important;*/
/*}*/

/*!* Hover *!*/
/*.dataTables_wrapper .dataTables_paginate .paginate_button:hover {*/
/*    background: #e6e6e6 !important;*/
/*    border-color: #999 !important;*/
/*}*/

/*!* Active page *!*/
/*.dataTables_wrapper .dataTables_paginate .paginate_button.current {*/
/*    !*background: #007bff !important;*!*/
/*    color: #fff !important;*/
/*    !*border-color: #007bff !important;*!*/
/*}*/

/* ------------------------------- */
/* CLASSIC CHUBBY PAGINATION STYLE */
/* ------------------------------- */

.dataTables_wrapper .dataTables_paginate .paginate_button {
    border: 1px solid #c2c2c2 !important;
    border-radius: 6px !important;      /* chubby round shape */
    background: transparent !important; /* no background */
    padding: 6px 12px !important;       /* thicker, chubby */
    margin: 0 3px !important;
    font-weight: 500;
    color: #333 !important;
}

/* Hover effect — light grey border, still no background */
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    border-color: #888 !important;
    background: transparent !important;
    color: #000 !important;
}

/* Disabled pages */
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
    opacity: 0.5;
    border-color: #ddd !important;
}

/* Active page — thicker border, slight highlight, NO background */
.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    border-color: #5A83D0 !important;   /* or any highlight color you like */
    font-weight: bold;
    /*color: #5A83D0 !important;*/
    background: transparent !important; /* maintain no background */
}

/* Remove Bootstrap focus outline */
.dataTables_wrapper .dataTables_paginate .paginate_button:focus {
    outline: none !important;
    box-shadow: none !important;


    .flatpickr-calendar {
        width: 340px !important;
        font-size: 1em !important;
    }
    .flatpickr-day {
        line-height: 40px !important;
        height: 40px !important;
        max-width: 40px !important;
    }
    .flatpickr-months .flatpickr-month {
        height: 44px !important;
    }
    .flatpickr-current-month {
        font-size: 1.1em !important;
        padding-top: 8px !important;
    }
    .flatpickr-weekday {
        font-size: 0.9em !important;
    }

    /* Today button */
    .flatpickr-today-btn {
        display: block;
        width: calc(100% - 16px);
        margin: 6px 8px 8px;
        padding: 6px 0;
        background-color: #fff;
        border: 1px solid #007bff;
        border-radius: 4px;
        color: #007bff;
        font-size: 0.9em;
        font-weight: 600;
        cursor: pointer;
        text-align: center;
        transition: background-color 0.15s, color 0.15s;
    }
    .flatpickr-today-btn:hover {
        background-color: #007bff;
        color: #fff;
    }

    input.flatpickr-input[readonly] {
        background-color: #fff !important;
        /*color: #495057 !important;*/
        color: #fff !important;
        cursor: pointer;
    }
}

.pill-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;          /* was 6px */
    padding: 4px 0;
    width: 100%;
    clear: both;
}

.pill-strip .pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;          /* was 6px */
    padding: 6px 13px 6px 9px;   /* was 4px 10px 4px 6px */
    border: 0.5px solid #ddd;
    border-radius: 999px;
    font-size: 13px;   /* was 12px */
}

.pill-strip .pill-dot {
    width: 9px;        /* was 8px */
    height: 9px;       /* was 8px */
    border-radius: 50%;
    flex-shrink: 0;
}

.pill-strip .pill-label { color: #666; }
.pill-strip .pill-count { font-weight: 500; }

.pill-dot-blue   { background: #378ADD; }
.pill-dot-green  { background: #639922; }
.pill-dot-red    { background: #E24B4A; }
.pill-dot-amber  { background: #BA7517; }
.pill-dot-yellow { background: #EF9F27; }
.pill-dot-gray   { background: #888780; }
.pill-dot-teal   { background: #1D9E75; }
.pill-dot-purple { background: #7F77DD; }
.pill-dot-pink   { background: #D4537E; }