/* body .management_dashboard{        
    /* font-family: "Nunito Sans"; 
    /* font-family: inherit; 
} */

.management_dashboard .dashboard-card {
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 12px;
    background: #FFF;
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);
}

.management_dashboard .metric-box {
    display: flex;
    padding: 15px;
    margin-bottom: 15px;
    border-radius: 13px;
    background: #FFF;
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.15);
    cursor: pointer;
}

.management_dashboard .metric-title {
    color: #323234;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 0.6em;
    display: flex;
    height: 40%;
}

.management_dashboard .metric-info{
    display: inline-block;
    padding: 0 5px!important;
    width: 80%;
}

.management_dashboard .custom-metric-info{
    display: inline-block;
    padding: 0 5px!important;
    width: 96%;
}

.management_dashboard .detail-row {
    margin-bottom: 10px;
}

.management_dashboard .fee-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px; /* 125% */
    letter-spacing: 0.1px;
    cursor: pointer;
}

.management_dashboard .view-more {
    font-size: 20px;
    color: #7D19C3;
}

.management_dashboard .fee-amount {
    color: #323234;
    font-size: 1.8rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
}

.management_dashboard .collected { color: #67C23A; }
.management_dashboard .pending { color: #F1963A; }
.management_dashboard .total { color: #323234; }
.management_dashboard .concession { color: #323234; }
.management_dashboard .total-staff { color: #220AFD; }
.management_dashboard .teaching-staff { color: #324436; }
.management_dashboard .non-teaching { color: #995B05; }
.management_dashboard .admin { color: #88007F; }
.management_dashboard .active-staff { color: #0B762A; }
.management_dashboard .inactive-staff { color: #B9430D; }
.management_dashboard .top-performing{ color: #F1963A; }
.management_dashboard .revenue-performing{ color: #59128A; }
.management_dashboard .score-performing{ color: #3A77F1; }
.management_dashboard .total-application { color: #220AFD; }
.management_dashboard .reviewed-application { color: #C107B5;}
.management_dashboard .pending-application { color: #FF9D13;}
.management_dashboard .rejected-application { color: #FF5201;}

.management_dashboard .icon_dashboard{
    display: flex;
    width: 35px;
    height: 35px;
    padding: 9px 9.362px 9px 8.638px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border-radius: 10.514px;
}

.management_dashboard .icon_institution{
    background: rgba(235, 55, 35, 0.10);
}

.management_dashboard .icon_student{
    background: rgba(0, 128, 0, 0.10);
}

.management_dashboard .icon_fee{
    background: rgba(79, 115, 184, 0.10);
}

.management_dashboard .icon_staff{
    background: rgba(241, 150, 58, 0.10);
}

.management_dashboard .icon_next{
    color: #7D19C3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.management_dashboard .fee_card{
    padding: 15px;
    border-radius: 13.143px;
    background: #FFF;
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.15);
}

/* Accordion*/
.management_dashboard .fee-accordion {
    background: white;
}

.management_dashboard .fee-header h3 {
    margin: 0;
    font-size: 18px;
    color: #333;
}

.management_dashboard .fee-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    background: white;
}

.management_dashboard .fee-accordion.expanded .fee-content {
    max-height: 100%; /* Adjust as needed */
    margin-top: 15px;
    transition: transform 0.3s ease;
}

.management_dashboard .fee-accordion .view-more {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}

.management_dashboard .fee-accordion .view-more svg {
    transition: transform 0.3s ease;
    transform-origin: center;
    display: block;
    margin: auto;
}

.management_dashboard .fee-accordion.expanded .view-more svg {
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}


.management_dashboard .fee-details {
    padding: 0 15px 15px 15px;
}

.management_dashboard .fee-item {
    margin-bottom: 15px;
}

.management_dashboard .fee-label {
    color: #777;
    font-size: 13px;
    display: block;
    margin-bottom: 5px;
}

.management_dashboard .total-amount { color: #333; }
.management_dashboard .collected-fee { color: #28a745; }
.management_dashboard .pending-fee { color: #ff9800; }
.management_dashboard .concession-fee { color: #666; }

.management_dashboard .fee_detail_card{
    border-radius: 12px;
    padding: 15px;
    margin-bottom: 15px;
    border: 1px solid #eee;
    background: #FFF;
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.15);
}

.management_dashboard .legend {
    margin: 15px 0;
}

.management_dashboard .legend-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 5px;
}

.management_dashboard .dot-paid { background: #22c55e; }
.management_dashboard .dot-pending { background: #f97316; }
.management_dashboard .dot-overdue { background: #ef4444; }
.management_dashboard .dot_paid { background: #13C41A; }
.management_dashboard .dot_pending { background: #FFA500; }
.management_dashboard .filters{
    display: flex; 
    gap: 15px;
}

/* SECOND FEE DETAIL TABLE AND CHART CSS */
.management_dashboard .chart-section, .table-section {
    height: 350px;
}

.management_dashboard .chart-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.management_dashboard .legend-item {
    display: inline-flex;
    align-items: center;
    margin-right: 20px;
}

.management_dashboard .dot-2022 { background: #22c55e; }
.management_dashboard .dot-2023 { background: #f97316; }

.management_dashboard .filters select {
    margin-left: 10px;
    display: inline-block;
    width: auto;
    border-radius: 3.077px;
    border: 0.769px solid #DDE0E5;
    background: #FFF;
}

.management_dashboard .filters .form-control {
    font-size: 10px!important;
}

.management_dashboard .aggr-table-header {
    display: flex;
    justify-content: flex-end; /* Align items to the right */
    align-items: center; /* Vertically align the dropdowns */
}

.management_dashboard .aggr-table-header .filters {
    display: flex;
    gap: 15px; /* Space between the dropdowns */
    margin-bottom: 15px;
}

.management_dashboard .table-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.management_dashboard .agr-table th {
    color: var(--Secondary, #64748B);
    text-align: left;
    font-size: 10px!important;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 15px */
}

.management_dashboard .agr-table td{
    color: #413F3F;
    font-size: 12px!important;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 18px */
}

.dark_black{
    color : var(--Dark, #1E293B)!important;
}

.col_gray{
    color: #413F3F;
}

.font_14{
    font-size: 14!important;
}

.font_12{
    font-size: 12px!important;
}

.management_dashboard .list{
    display: flex;
}

.font-10{
    font-size: 10px;
}

.text-center{
    text-align: center!important;
}
.text-container {
    max-width: 80px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    cursor: pointer;
}

.management_dashboard .thead-light th{
    border: 1px solid var(--Gray-100, #F9FAFB)!important;
    border-bottom: 1px solid var(--Gray-300, #DDE0E5)!important;
    background: var(--Gray-100, #F9FAFB);
    color: rgba(100, 116, 139, 0.70)!important;
    font-size: 14px!important;
    font-style: normal!important;
    font-weight: 700!important;
    line-height: 16px; 
    text-align: justify;
}
.management_dashboard .custom_table{
    width: 100%;
}

.management_dashboard .custom_table td{
    border: 1px solid var(--Gray-100, #F9FAFB)!important;
    border-bottom: 1px solid var(--Gray-300, #DDE0E5)!important;
    font-size: 12px!important;
    font-style: normal!important;
    font-weight: 400!important;
    line-height: 16px; 
    text-align: left;
}

.management_dashboard .custom_table td a{
    color: blue!important;
    text-decoration: underline!important;
    font-weight: 600!important;
    cursor: pointer!important;
}

.management_dashboard .table_header_info{
    background: var(--White, #FFF); 
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.management_dashboard .custom_table .footer td{
    background: #FFEAEA;
    font-weight: 600!important;
}

.management_dashboard .header_title{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

/* SEARCH BOX CSS */  
.management_dashboard .search_info{
        display: flex;
        gap: 15px;
    }

.management_dashboard .search_info select, .filters select{
    border-radius: 3.077px!important;
    border: 0.769px solid #DDE0E5!important;
    background: #FFF!important;
    margin-right: 5px!important;
    height: 27px!important;
    padding: 0px!important;
}

.management_dashboard .search_info .form-group{
    padding: 0px!important;
    margin: 0 5 0 0!important;
}

.management_dashboard .search_info .form-control{
    font-size: 11px!important;
}

.management_dashboard .search-form {
    display: flex;
    align-items: center;
    height: 100%;
    border-radius: 6px;
    border: 1px solid var(--Gray-400, #CED4DA);
    background: var(--White, #FFF);
}

.management_dashboard .search-label {
    visibility: hidden;
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    clip: rect(0,0,0,0);
    overflow: hidden;
}

.management_dashboard .search-input {
    gap: 8px;
    color: var(--Secondary, #64748b);
    white-space: nowrap;
    height: 100%;
    padding: 6px;
    font: 400 14px Noto Sans, sans-serif;
    border: none;
    outline: none;
    width: 100%;
}

.management_dashboard .search-button {
    cursor: pointer;
    color: var(--Secondary, #64748b);
    font: 400 14px Noto Sans, sans-serif;
    display: flex;
    align-items: center;
    padding: 4px;
    border: none;
    border-radius: 6px 0px 0px 6px;
    border-right: 1px solid var(--Gray-400, #CED4DA);
    background: var(--Gray-100, #F9FAFB);
}

.management_dashboard .search-button:focus, .search-input:focus {
    outline: 0;
    border-radius: 0;
}

.management_dashboard .search-icon {
    width: 15px;
    height: 15px;
    fill: currentColor;
}

.m-r-5{
    margin-right: 5px!important;
}

#pageInfo{
    margin-top: 12px;
    font-size: 10px;
}

/* DASHBOARD MODAL */

#modal-overlay .modal-title{
    font-size: 18px !important;
    font-weight: 600;
}

#modal-overlay .img-icon{
    margin-right: 15px;
}

#modal-overlay img{
    height: 45px;
}

#modal-overlay .list-group-item{
    border: none!important;
    color: var(--Secondary, #64748B);
    font-weight: 400;
    font-size: 16px;
    border-bottom:1px solid #64748B;
}

#modal-overlay .list-group-item img {
    width: 45px;
    height: 45px;
    object-fit: cover;
    border-radius: 50%;
    margin-right: 10px;
}

#modal-overlay .list-group-item .view_icon{
    color: #00F;
    font-size: 16px;
    font-weight: 500;
}

.management_modal .modal-dialog {
	position: fixed;
	margin: auto;
	min-width: 90%;
    width: auto;
	height: 100%;
	-webkit-transform: translate3d(0%, 0, 0);
	-ms-transform: translate3d(0%, 0, 0);
	-o-transform: translate3d(0%, 0, 0);
	transform: translate3d(0%, 0, 0);
}

.management_modal .modal-content {
	height: 100%;
	overflow-y: auto;
}
	
.management_modal .modal-body {
	padding: 15px 15px 80px;
}
        
/*Right*/
.management_modal.fade .modal-dialog {
	right: -320px;
	-webkit-transition: opacity 0.3s linear, right 0.3s ease-out;
	   -moz-transition: opacity 0.3s linear, right 0.3s ease-out;
	     -o-transition: opacity 0.3s linear, right 0.3s ease-out;
	        transition: opacity 0.3s linear, right 0.3s ease-out;
}
.management_modal.fade.in .modal-dialog {
	right: 0;
}

/* ----- MODAL STYLE ----- */
.management_modal .modal-content {
	border-radius: 0;
	border: none;
}

.management_modal .modal-header {
	border-bottom-color: #EEEEEE;
	background-color: #FAFAFA;
}

.margin-top-15{
    margin-top: 15px!important;
}

.footer-text-weight{
    font-weight: 600!important;
}

.font-weight-400{
    font-weight: 400!important;
}

.margin-top-0{
    margin-top: 0!important;
}

.chart-legend-box {
    align-items: center;
    margin-bottom: 8px;
    font-size: 10px;
    font-weight: 500;
    display: flex;
}

.color-box {
    width: 12px;
    height: 12px;
    border-radius: 3px;
    margin-right: 8px;
}
.margin-right-10{
    margin-right: 10px;
}
.chart-container {
    position: relative;
}
.chart-text {
    top: 43%;
    left: 47%;
    position: absolute;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
}
.chart-subtext {
    top: 50%;
    left: 42%;
    position: absolute;
    text-align: center;
    color: gray;
    font-size: 10px;
}

.custom-legend {
    list-style: none;
    padding: 0;
    text-align: left;
}
.custom-legend li {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
    font-size: 12px;
}
.custom-legend span {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-right: 5px;
    border-radius: 3px;
}

.caste-chart-container {
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}
.student-caste-legend {
    list-style: none;
    padding: 0;
    margin-left: 20px;
}
.student-caste-legend li {
    display: flex;
    align-items: center;
    font-size: 8px;
    margin-top: 10px;
}
.student-caste-legend span {
    width: 15px;
    height: 15px;
    display: inline-block;
    margin-right: 10px;
    border-radius: 50%;
}

.custom_legend {
    list-style: none; /* Remove default bullets */
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap; /* Wrap items to fit within the div */
    justify-content: center; /* Center align the items */
    font-size: 14px;
}

.custom_legend li {
    display: flex;
    align-items: center;
    margin: 5px 10px; /* Adjust spacing */
    white-space: nowrap; /* Prevent text wrapping */
}

/* COUNT CARDS SAME HEIGHT FOR DASHBOARD */
.custom_count_card_div {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.custom_count_card {
    display: flex;
    /* flex-direction: column; */
    justify-content: space-between;
    height: 100%; /* Ensure full height */
}

.management_dashboard .list-group {
    list-style: none;
    padding: 0;
    margin: 0;
}

.management_dashboard .list-group-item {
    display: flex;
    align-items: flex-start; /* Align to top for text wrapping */
    justify-content: space-between;
    padding: 12px 16px;
    border-bottom: 1px solid #ddd;
}

.management_dashboard .img-text {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-grow: 1; /* Ensures it takes available space */
    min-width: 0; /* Prevents flex issues */
}

.management_dashboard .img-icon{
    margin-right: 0!important;
}

.management_dashboard .img-icon img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.management_dashboard .institution-name {
    font-size: 14px;
    color: #333;
    word-wrap: break-word; /* Allows long text to wrap */
    white-space: normal; /* Enables wrapping */
    overflow: hidden;
    flex-grow: 1; /* Expands within the available space */
}

.management_dashboard .view_icon {
    color: blue;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    flex-shrink: 0; /* Prevents shrinking */
    min-width: 100px; /* Ensures enough space */
    text-align: right;
    white-space: nowrap; /* Prevents wrapping */
}

.management_dashboard .view_icon:hover {
    text-decoration: underline;
}

.management_dashboard .chart-container{
    position: relative; width: 100%; height: 270px;
}

.tooltip_container{
    display: none; 
    position: absolute; 
    background: white; 
    padding: 10px; border: 1px solid #d8d7d7; 
    border-radius: 5px;
    z-index: 1050;
}

.chart_info_icon{
    position: relative; 
    font-size: 20px; 
    cursor: pointer;
}

.margin-left-20{
    margin-left: 20px;
}

.margin-bottom-15{
    margin-bottom: 15px;
}

.margin-top-10{
    margin-top: 10px;
}

.margin-top-20{
    margin-top: 20px;
}

.modal_close{
    font-size: 28px;
    margin-right:10px;
    color:inherit;
}

/* BOOTSTRAP TABS DESIGN FOR ADMINISTRATION DASHBOARD */
/* Custom Nav Tabs */
.custom-tabs {
    border-bottom: none;
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    background: none;
}

.custom-tabs > li {
    flex: 1;
    margin-right: 15px;
}

.custom-tabs > li:last-child {
    margin-right: 0;
}

.custom-tabs > li > a {
    display: block;
    padding: 12px 0;
    text-align: center;
    border-radius: 12px 12px 0 0;
    color: #5BB28D !important;
    border: 1.5px solid #5BB28D !important;
    background: #FFFFFF;
    margin: 0;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1;
}

.custom-tabs > li.active > a {
    background-color: #5BB28D;
    color: white !important;
    font-weight: normal;
}

.custom-tabs > li > a:hover,
.custom-tabs > li > a:focus {
    text-decoration: none;
    color: #5BB28D !important;
    border: 1.5px solid #5BB28D !important;
    border-bottom: 0 !important;
    font-weight: normal;
    background: #fff;
}

.custom-tabs > li.active > a:hover,
.custom-tabs > li.active > a:focus {
    background-color: #5BB28D;
    color: #FFFFFF !important;
    border: 1.5px solid #5BB28D !important;
    border-bottom: 0 !important;
    outline: none;
    text-decoration: none;
    font-weight: normal;
}

.custom-tab-content{
    border: 1px solid #ddd;
    border-top: 1.5px solid #5BB28D;
    background-color: #fff;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.25);
    border-radius: 0 0 12px 12px;
    padding: 20px;
}

/* Tab ::content css */
.panel-wrapper{
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);
    padding: 15px;
    border-radius: 10px;
    height: auto;
    position: relative;
}

/* Custom styling for radio buttons appearing as checkboxes */
.checkbox-check {
    display: none;
}

/* Styling label to look like button */
.checkbox-label {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    padding: 6px 15px;
    border: 1px solid #0000FF;
    border-radius: 6px;
    color: #0000FF;
    font-weight: 500;
    font-size: 1rem;
    margin-right: 5px;
    transition: all 0.3s ease-in-out;
    position: relative;
}

/* Checkbox styled box after the text */
.checkbox-label::after {
    content: "";
    width: 16px;
    height: 16px;
    border: 1px solid #0000FF;
    border-radius: 3px;
    margin-left: 8px;
    display: inline-block;
    background-color: white;
    text-align: center;
}

/* Selected styling */
.checkbox-check:checked + .checkbox-label {
    background-color: #0000FF;
    color: white;
}

/* When checkbox is selected, checkbox gets checkmark */
.checkbox-check:checked + .checkbox-label::after {
    background-color: #0000FF;
    border-color: white;
    content: "✔";
    color: white;
    font-size: 12px;
    text-align: center;
    line-height: 14px;
}

/* Minus (-) when indeterminate */
.checkbox-check:indeterminate + .checkbox-label::after {
    content: "−"; /* Unicode minus */    
    background-color: #0000FF !important;
    border-color: white !important;
    color: white !important;
    font-size: 12px;
    text-align: center;
    line-height: 16px;
}

/* Fake Select Box */
.fake-select {
    display: inline-block;
    border: 1px solid #ccc;
    padding: 6px 10px;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    min-width: 180px;
    text-align: left;
    position: relative;
}

.fake-select::after {
    content: "▼";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #777;
}

.info-box {
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 6px;
    text-align: center;
    margin-top: 10px;
}

.info-value {
    font-size: 20px;
    font-weight: bold;
}

.tag {
    display: inline-block;
    background: #d4edda;
    color: #155724;
    padding: 5px 10px;
    border-radius: 6px;
    font-size: 1rem;
    margin-bottom: 5px;
    cursor: pointer;
}

.btn-custom-default{
    background-color: #0000FF!important;
    border-radius: 6px;
}

/* Modal Custom Styling */
/* Right to Left Slide-in Animation */
@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Right to Left Slide-out Animation */
@keyframes slideOutRight {
    from {
        transform: translateX(0);
        opacity: 1;
    }
    to {
        transform: translateX(100%);
        opacity: 0;
    }
}

/* Apply animations to modal */
.custom-modal {
    width: 90%;
    margin-top: 0 !important; /* No top margin */
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    animation: slideInRight 0.3s ease-out forwards;
}

/* Ensure modal content has rounded corners */
.custom-modal .modal-content {
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    width: 100%;
    height: 100%;
    overflow: auto;
}

/* Override Bootstrap default fade behavior */
.custom-modal.fade .modal-dialog {
    transform: translateX(100%) !important;
    transition: transform 0.3s ease-out, opacity 0.3s ease-out !important;
}

.custom-modal.in .modal-dialog {
    transform: translateX(0) !important;
}

.breadcrumb {
    display: flex;
    align-items: center; /* Align items vertically */
    background: none;
    padding: 0;
    margin-bottom: 10px;
    font-size: 14px;
}

.breadcrumb > li {
    display: flex;
    align-items: center; /* Ensures all items have equal height */
}

.breadcrumb > li a {
    display: flex;
    align-items: center;
    height: 24px; /* Set height to match SVG icons */
    font-weight: 500;
    font-style: normal;
    color: #868789;
}

.breadcrumb>.active a {
    color: #323234;
}

.breadcrumb > li:first-child svg {
    width: 20px;
    height: 20px;
    margin: 0;
}

.breadcrumb > li svg {
    width: 16px;
    height: 10px;
    margin: 0 5px; /* Spacing between items */
}

.breadcrumb > li + li:before {
    content: none; /* Remove default Bootstrap separator */
}

.overview-text{
    color: #000;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 10px;
}

.custom-button-group {
    margin: 10px 0; /* Adjust vertical spacing */
}

.custom-button-group .btn {
    border: 1px solid #0000FF; /* Blue outline */
    border-radius: 6px !important;
    font-weight: 500;
    font-size: 1rem;
    margin-right: 5px !important;
    font-weight: bold;
    color: #0000FF; /* Blue text */
    background-color: #fff; /* White background */
    padding: 6px 15px;
    transition: all 0.3s ease-in-out;
    position: relative;
}

.custom-button-group .btn:hover {
    background-color: rgba(0, 0, 255, 0.1); /* Light blue hover */
}

.custom-button-group .btn-primary {
    background-color: #0000FF; /* Solid blue for active button */
    color: #fff; /* White text */
    border-color: #0000FF;
}

.custom-button-group .collection-btn:hover,
.custom-button-group .collection-btn:focus {
    background-color: #0000FF !important;
    border-color: #0000FF !important;
}

.custom-button-group .collection-btn.active{
    background-color: #0000FF !important;
    border-color: #0000FF !important;
}

/* ADMINSTRATION DASHBOARD CSS */

.modal-content {
    border-radius: 12px;
}

.btn-custom {
    border: 2px solid blue;
    border-radius: 6px;
    font-weight: bold;
    color: blue;
    background-color: white;
    padding: 8px 16px;
    transition: all 0.3s ease-in-out;
    margin-right: 10px;
}

.btn-primary-custom {
    background-color: blue;
    color: white;
    border: 2px solid blue;
    border-radius: 6px;
}

.btn-primary-custom:hover, .btn-primary-custom:active:hover, .btn-primary-custom:active {
    background-color: blue;
    border-color: blue;
}

.btn-custom:hover, .btn-custom:active:hover, .btn-custom:active {
    background-color: #fff;
    color: blue;
}

.radio-btn-group input[type="radio"] {
    display: none;
}
.radio-btn-group label {
    display: inline-block;
    padding: 5px 15px;
    border: 2px solid #0000FF;
    border-radius: 6px;
    cursor: pointer;
    color: #0000FF;
    background: transparent;
    text-align: center;
    font-weight: bold;
}
.radio-btn-group input[type="radio"]:checked + label {
    background: #0000FF;
    color: #fff;
}

/* Aligning checkboxes to the right & text to the left */
.checkbox-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    padding: 5px 10px;
}
.checkbox-container input[type="checkbox"] {
    transform: scale(1.2);
}

svg#dashboard_icon{
    height: 16px;
    width: 16px;
    vertical-align: middle;
    margin-right: 5px;
}

/* General Table Styling */

.management_dashboard table.dataTable {
    border-collapse: collapse;
    font-family: "Arial", sans-serif;
    background: white;
}

/* Header Styling */
.management_dashboard table.dataTable thead {
    background: #f9fafb;
    font-weight: bold;
}

.management_dashboard table.dataTable thead th {
    text-align: left;
    padding: 6px;
    font-size: 1.2rem !important;
    color: #94a3b8 !important;
    border-bottom: 1px solid #e2e8f0; /* Only horizontal line */
    border-right: none;
    border-left: none;
    background-color: #f9fafb; /* make sure it's inherited */
}

/* Table Row Styling */
.management_dashboard table.dataTable tbody tr {
    border-bottom: 1px solid #f1f5f9; /* soft horizontal line */
    background-color: #ffffff; /* pure white */
}

.management_dashboard table.dataTable tbody td {
    font-size: 12px;
    color: #1e293b; /* gray-800 */
    vertical-align: middle;
    border-top: none;
    border-bottom: 1px solid #f1f5f9;
    border-left: none;
    border-right: none;
}

/* Clickable Second Column */
.management_dashboard table.dataTable tbody td:nth-child(2) {
    text-decoration: underline;
    cursor: pointer;
    color: #0f172a;
}

/* Action Column */
.management_dashboard table.dataTable tbody td:last-child a {
    color: blue;
    font-weight: bold;
    text-decoration: none;
}

.management_dashboard table.dataTable tbody td:last-child a:hover {
    text-decoration: underline;
}

/* Pending Ratio Coloring */
.management_dashboard table.dataTable tbody td.pending-ratio {
    font-weight: bold;
}

.management_dashboard table.dataTable tbody td.pending-ratio[data-value="90"] {
    color: green;
}

.management_dashboard table.dataTable tbody td.pending-ratio[data-value="86"] {
    color: orange;
}

.management_dashboard table.dataTable tbody td.pending-ratio[data-value="70"] {
    color: red;
}

/* Footer Row Styling */
.management_dashboard table.dataTable tfoot {
    background: #fce4e4;
    font-weight: bold;
}

.management_dashboard table.dataTable tfoot td {
    font-size: 14px;
    color: #1e293b;
    border: none;
}

/* RESPONSIVE TABLE */
@media screen and (max-width: 768px) {
    .management_dashboard table.dataTable thead {
        display: none;
    }
  
    .management_dashboard table.dataTable tbody tr {
        display: block;
        margin-bottom: 10px;
        border: 1px solid #e2e8f0;
        border-radius: 8px;
        background-color: #fff;
        padding: 8px;
    }
  
    .management_dashboard table.dataTable tbody td {
        display: block;
        text-align: right;
        padding: 10px 10px 10px 50%;
        position: relative;
        border: none;
        border-bottom: 1px solid #f1f5f9;
    }
  
    .management_dashboard table.dataTable tbody td::before {
        content: attr(data-label);
        position: absolute;
        left: 10px;
        top: 10px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        font-weight: 600;
        text-align: left;
        color: #475569;
    }
  
    .management_dashboard table.dataTable tbody td:last-child {
        border-bottom: none;
    }
}

/* Hide default radio button */
input[type="radio"] {
    display: none;
}

/* Style labels to look like buttons */
.radio-label {
    display: inline-block;
    padding: 6px 15px;
    border: 1px solid blue;
    border-radius: 6px;
    color: blue;
    font-weight: bold;
    cursor: pointer;
    text-align: center;
    transition: 0.3s;
    font-weight: 500;
    font-size: 1rem;
    margin-right: 5px;
}

/* Highlight selected radio button */
input[type="radio"]:checked + .radio-label {
    background-color: blue;
    color: white;
}

#customDateModel .date-input {
    position: relative;
    margin-bottom: 20px;
}

#customDateModel .date-input .form-control {
    padding-right: 40px;
    border-radius: 6px;
    height: 35px;
    border: 1px solid #ddd;
    padding-left: 10px !important;
    cursor: pointer;
}

#customDateModel .calendar-icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
}
.close_icon{
    font-size: 20px !important;
}

.width-100{
    width: 100%;
}

/* Scoped to .management_dashboard to avoid global impact */
.management_dashboard table.dataTable th,
.management_dashboard table.dataTable td {
    white-space: nowrap;
    border-right: 1px solid #e2e8f0; /* vertical line for td/th */
}

.management_dashboard table.dataTable th:last-child,
.management_dashboard table.dataTable td:last-child {
    border-right: none; /* clean right edge */
}

/* Fixed columns left/right styles */
.management_dashboard .dtfc-fixed-left,
.management_dashboard .dtfc-fixed-right {
    background-color: #f6f6f6 !important;
    z-index: 2;
    opacity: 1;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.05);
}

/* Ensure fixed header cells stay visible */
.management_dashboard .dtfc-fixed-left thead th,
.management_dashboard .dtfc-fixed-right thead th {
    z-index: 3;
    opacity: 1;
    background-color: #f5f5f5 !important; /* match normal header */
}

/* Fix footer overlap */
.management_dashboard table.dataTable tfoot th,
.management_dashboard table.dataTable tfoot td {
    background-color: #fce4e4 !important;
    z-index: 1;
    position: relative;
}

.vertical-centered-modal .modal-dialog {
    position: relative;
    top: 40%;
    transform: translateY(-40%);
    margin: auto;
  }
  