﻿/* Import Inter font */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');

html {
    font-size: 14px !important;
}

body {
    font-family: 'Inter', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    background-color: #FAF9F6; /*  #ECF0F1; light neutral background */
    color: #2C3E50; /* dark neutral text */
    /* Add padding equal to footer height so content isn't hidden */
    padding-bottom: 70px; /* adjust to match your footer height */
}

/* On mobile (≤768px), footer is static, so remove extra padding */
/* Responsive tweak for mobile */
@media (max-width: 767.98px) {
    .page-title2 {
        font-size: 1.4rem; /* smaller heading for mobile */
        font-weight: 400; /* lighter for compact look */
    }

    .info-bar {
        font-size: 0.85rem; /* slightly smaller info bar */
    }

    .footer span {
        font-size: 0.75rem; /* smaller text for mobile */
    }
}


.border-primary {
    border-color: #2C3E50 !important;
}

.border-secondary {
    border-color: #3CA08E !important;
}

.border-visit {
    border-color: #8C744C !important;
}

.separator-dotted {
    border-top: 2px dotted #2C3E50; /* dotted line in your accent blue */
    opacity: 0.7; /* softer look */
}

.subheader-separator {
    height: 1px;
    background: linear-gradient(to right, #2C3E50, #3498DB);
    border: none;
    opacity: 0.7;
}

.subheader-separator-visit {
    height: 1px;
    background: linear-gradient(to right, #8C744C, #6F5C38);
    border: none;
    opacity: 0.7;
}


/* Modern Page Title */
.page-title {
    font-family: 'Inter', sans-serif;
    font-weight: 400; /* lighter than bold */
    font-size: 2.1rem; /* scalable size */
    letter-spacing: 0.5px; /* subtle spacing for sleekness */
    color: #1a1a1a; /* deep neutral tone */
    text-align: center;
    margin-bottom: 1rem;
}

/*.page-title2 {
    font-family: 'Inter', sans-serif;
    font-weight: 400;*/ /* lighter than bold */
    /*font-size: 1.6rem;*/ /* scalable size */
    /*letter-spacing: 0.5px;*/ /* subtle spacing for sleekness */
    /*color: #1a1a1a;*/ /* deep neutral tone */
    /*text-align: center;
    margin-bottom: 1rem;
}*/

.page-title2 {
    font-family: 'Inter', sans-serif;
    font-weight: 500; /* a bit stronger than 400 */
    font-size: 1.9rem; /* larger than 1.6rem for desktop */
    letter-spacing: 0.5px;
    color: #1a1a1a;
    text-align: center;
    margin-bottom: 0.75rem; /* tighter spacing to align with info bar */
    line-height: 1.3;
}

/* Tablet (≥768px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .page-title2 {
        font-size: 1.4rem; /* slightly larger for iPad/tablet */
    }
}

/* Desktop (≥992px) */
@media (min-width: 992px) {
    .page-title2 {
        font-size: 1.6rem; /* larger heading for desktop */
    }
}

/* Mobile (≤767px) */
@media (max-width: 767.98px) {
    .page-title2 {
        font-size: 1.2rem; /* smaller heading for mobile */
    }
}

/* Subtitle */
.page-subtitle {
    font-family: 'Inter', sans-serif;
    font-weight: 400; /* extra light */
    font-size: 1.1rem;
    color: #404040; /* muted gray #6c757d */
    text-align: center;
    margin-bottom: 2rem;
}

/* Subtitle */
.de-subtitle {
    font-family: 'Inter', sans-serif;
    font-weight: 500; /* extra light */
    font-size: 1.1rem;
    color: #3CA08E; 
    text-align: center;
}

.de-subtitle-visit {
    font-family: 'Inter', sans-serif;
    font-weight: 500; /* extra light */
    font-size: 1.1rem;
    color: #98111D;
    text-align: center;
}


.text-consent {
    font-family: 'Inter', sans-serif;
    font-weight: 400; /* a bit stronger than 400 */
    font-size: 1.1rem; /* larger than 1.6rem for desktop */
    letter-spacing: 0.5px;
    color: #1a1a1a;
    text-align: left;
    margin-bottom: 0.75rem; /* tighter spacing to align with info bar */
    line-height: 1.3;
}

.text-consent-header {
    font-family: 'Inter', sans-serif;
    font-weight: 500; /* a bit stronger than 400 */
    font-size: 1.2rem; /* larger than 1.6rem for desktop */
    letter-spacing: 0.5px;
    color: #8C744C;
    text-align: left;
    margin-bottom: 0.75rem; /* tighter spacing to align with info bar */
    line-height: 1.3;
}

.consent-box {
    background: #ffffff;
    border-left: 6px solid #A68C72; /* bold blue stripe */
    padding: 20px;
    font-size: 1.10rem;
    line-height: 1.7;
    color: #212529;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

    .consent-box strong {
        color: #007bff;
    }

    .consent-box h3 {
        text-align: center;
        font-weight: 600;
        color: #00695c;
        font-size: 1.5rem;
    }











/* Label */
.form-label {
    font-weight: 600;
    font-size: 0.95rem;
    color: #1a1a1a; /*#333;*/
}


/* Text Input, Dropdown, Password */
.form-control {
    font-size: 1rem; /* keep text slightly smaller */
    padding: 0.6rem 0.75rem; /* reduce padding for slimmer height */
    border-radius: 8px; /* slightly less rounded corners */
    border: 1px solid #ddd; /* lighter border color */
    background-color: #fff; /* clean white background */
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    font-weight: 400;
}

    /* Focus state */
    .form-control:focus {
        border-color: #3498DB; /* your accent blue */
        box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.2); /* subtle glow */
        outline: none; /* remove default outline */
    }

/* Checkbox and Radio */
.form-check-input {
    width: 1.2em;
    height: 1.2em;
    margin-top: 0.3em;
    border-color: #3498DB;
}

.form-check-label {
    font-size: 0.90rem;
    font-weight: 400;
    color: #333;
}

/* Notes / Information */
.form-note {
    font-size: 0.8rem;
    color: #6c757d;
    margin-top: 0.25rem;
    display: block;
}

.form-notesmall {
    font-size: 0.7rem;
    color: #6c757d;
    margin-top: 0.25rem;
    display: block;
}

.form-notebolder {
    font-size: 0.8rem;
    font-weight: 500;
    color: #1a1a1a;
    margin-top: 0.8rem;
    display: block;
}

.form-notebig {
    font-size: 0.925rem;
    color: #1a1a1a;
    margin-top: 0.25rem;
    display: block;
}

/*.Login-title {
    font-family: 'Inter', sans-serif;
    font-weight: 400;  lighter than bold 
    font-size: 1.9rem;  scalable size 
    letter-spacing: 0.5px;  subtle spacing for sleekness 
    color: #1a1a1a;  deep neutral tone 
    text-align: center;
    margin-bottom: 1rem;
}*/

/* Icon next to title */
/*.login-title-icon {
    width: 30px;*/ /* adjust size */
    /*height: 30px;
    object-fit: contain;*/ /* keeps proportions */
/*}*/

.login-title-icon {
    width: 80px; /* fixed size */
    height: 80px; /* square box */
    object-fit: contain; /* keeps full logo visible */
    image-rendering: crisp-edges; /* forces sharper scaling */
    margin-right: 12px;
}


    .login-title-icon:hover {
        transform: scale(1.1); /* subtle hover effect */
    }


.FMStatusInprogress {
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    background-color: #8B5E3C;
}

.FMStatusDataCorrection {
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    background-color: #A0522D;
}

.FMStatusVerificaitonP {
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    background-color: #FFC107;
}

.FMStatusUnVerified {
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    background-color: #DC3545;
}

.FMStatusVerified {
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    background-color: #28A745;
}

.bg-bottleGreen {
    background-color: #006A4E;
}

.bg-indigoBlue {
    background-color: #002395;
}


.bg-visit {
    background-color: #EDE9E1;
}

.bg-visit2 {
    background-color: #8C744C;
}

.bg-visit-light {
    background-color: #F7F5F0;
}

.bg-visit-lighter {
    background-color: #FAF9F6;
}

.visittext {
    color: #EDE9E1;
}

.visittext2 {
    color: #8C744C;
}

.dropdown-item {
    background-color: #FAF9F6;
}

    .dropdown-item:hover {
        background-color: #EDE9E1;
        color: #4C3C24;
    }

.Login-title {
    display: flex;
    align-items: center;
    font-size: 1.9rem; /* consistent text size */
    font-weight: 500;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .login-title-icon {
        width: 50px;
        height: 50px;
    }

    .Login-title {
        font-size: 1.1rem; /* keep text readable but balanced */
    }
}


.bg-surface {
    background-color: #f5f5f5;
}

.Login-footer {
    font-family: 'Inter', sans-serif;
    font-size: 0.80rem;
    color: #000; /* #FAF9F6 muted gray */
    padding: 0.5rem 0;
    background-color: #EDE9E1; /* light background */
    border-top: 1px solid #e0e0e0;
}
/* Responsive container spacing */
@media (max-width: 768px) {
    .page-title {
        font-size: 1.5rem;
    }

    .page-subtitle {
        font-size: 1rem;
    }

    .form-control {
        padding: 0.65rem 0.9rem;
        font-size: 0.95rem;
    }
}



/* Buttons */
.btn-primary {
    background-color: #EC4758; /* red */
    border-color: #EC4758;
    color: #fff;
}

    .btn-primary:hover {
        background-color: #d63c4b;
        border-color: #d63c4b;
    }

.btn-success {
    background-color: #18A689; /* green */
    border: 2px solid #18A689;
    color: #fff;
}

    .btn-success:hover {
        background-color: #A3E4D7;
        border: 2px solid #18A689;
        color: #000;
    }

.btn-secondary {
    background-color: #002395; /* blue accent */
    border: 2px solid #002395;
    color: #fff;
}

    .btn-secondary:hover {
        background-color: #D6EAF8;
        color: #000;
        border: 2px solid #002395;
    }

.btn-next {
    background-color: #17a2b8; /* teal */
    border-color: #17a2b8;
    color: #fff;
}

    .btn-next:hover,
    .btn-next:focus {
        background-color: #138496;
        border-color: #117a8b;
        color: #FFEB3B;
    }

.btn-previous {
    background-color: #5c6f82; /* blue-gray */
    border-color: #5c6f82;
    color: #fff;
}

    .btn-previous:hover,
    .btn-previous:focus {
        background-color: #4a5a6b;
        border-color: #4a5a6b;
        color: #FFEB3B;
    }

.btn-yes {
    background-color: #FFC107; /* Green */
    color: #000;
}

    .btn-yes:hover,
    .btn-yes:focus,
    .btn-yes:active {
        background-color: #006A4E; /* darker amber for hover/click */
        color: #fff;
    }

.btn-cancel {
    background-color: #A0A6AB; /* Grey */
    color: #fff;
}

    .btn-cancel:hover,
    .btn-cancel:focus,
    .btn-cancel:active {
        background-color: #6C757D;
        color: #fff; 
    }



.btn-login {
    background-color: #8C744C; /* #2C3E50; blue accent */
    border-color: #8C744C;
    color: #EDE9E1;
    font-size: 1rem;
    font-weight: 500;
    padding: 8px;
}

    .btn-login:hover {
        background-color: #EDE9E1;
        border-color: #8C744C;
        color: #8C744C;
        font-weight: 500;
    }

.bg-nav {
    background-color: #EDEBE5;
    color: #5A472C;
    border: none;
}

.nav-brand {
    color: #4C3C24; /*#D1F2EB; #76D7C4; #1ABC9C; #072348*/
    border: none;
    text-decoration: none;
    font-weight: 600;
}
    .nav-brand:hover {
        color: #A68C5C; /*#A68C5C*/
        border: none;
        text-decoration: none;
        transition: color 0.3s ease; /* Smooth transition */
    }

.text-nav-menu {
    color: #000;
    border: none;
    font-size: 1rem;
    font-weight: 400;
    text-decoration: none;
}
    .text-nav-menu:hover, .text-nav-menu:active {
        color: #6F5C38;
        border: none;
        font-weight: 500;
        text-decoration: none;
    }


.text-nav-menu-logout {
    font-weight: 300;
    font-size: 1rem;
    color: #98111D; /*#98111D;*/
    border: none;
    font-weight: 400;
}

.text-nav-menu-logout2 {
    font-weight: 300;
    font-size: 1rem;
    color: #DC143C; /*#98111D;*/
    border: none;
    font-weight: 400;
}



    .text-nav-menu-logout:hover, .text-nav-menu-logout:active {
        color: #8C744C;
        font-weight: 300;
        border: none;
    }

/* Alerts */
.alert-danger {
    background-color: #EC4758;
    color: #fff;
    border: none;
}

.alert-success {
    background-color: #18A689;
    color: #fff;
    border: none;
}

.alert-info {
    background-color: #3498DB;
    color: #fff;
    border: none;
}

.alert-warning {
    background-color: #F39C12;
    color: #fff;
    border: none;
}



/* Links */

.link-a {
    color: #3CA08E;
    font-weight: 500;
    font-size: 0.875rem;
}

    .link-a:hover {
        text-decoration: underline;
        color: #2C3E50;
    }


/* Footer */
.footer {
    font-size: 0.7rem;
    font-weight: 600;
    color: #000;
    padding-top: .25rem; /* smaller vertical padding */
    padding-bottom: .25rem;
    background-color: #EDEBE5;
    border-top: 5px solid #8C744C;
    text-align: center;
    /* default: fixed on larger screens */
    position: fixed;
    bottom: 0;
    width: 100%;
}


.menu-title {
    font-family: 'Inter', sans-serif;
    font-weight: 400; /* extra light */
    font-size: .9rem;
    color: #404040; /* muted gray #6c757d */
    text-align: center;
    margin-bottom: 2rem;
}


/*
    a {
    color: #3498DB;
    text-decoration: none;
}

    a:hover {
        
        text-decoration: underline;
    }
a .rounded-circle:hover {
    transform: scale(1.05);
    transition: 0.2s ease-in-out;
}

.nav-link {
    transition: background-color 0.2s ease-in-out;
}

    .nav-link:hover {
        background-color: #d5dbdb;
    }
    */

.icon-nav {
    background-color: #2C3E50;
    color: #fff;
    border: none;
}

/* Base tab link */
.nav-tabs .nav-link {
    border: none; /* remove default border */
    color: #555; /* neutral text color */
    font-weight: 500; /* medium weight */
    padding: 10px 20px; /* comfortable spacing */
    border-radius: 6px 6px 0 0; /* rounded top corners */
    transition: all 0.3s ease; /* smooth hover/active effect */
}

    /* Hover effect */
    .nav-tabs .nav-link:hover {
        color: #1ABC9C;
        ; /* your accent color */
        background-color: #f8f9fa; /* light hover background */
    }

    /* Active tab */
    .nav-tabs .nav-link.active {
        color: #fff; /* white text */
        background-color: #1ABC9C; /* accent background */
        border-radius: 6px 6px 0 0; /* keep rounded corners */
        box-shadow: 0 -2px 8px rgba(0,0,0,0.1); /* subtle shadow */
    }

/*
.nav-tabs .nav-link {
    border: none;
    color: #555;
    font-weight: 500;
    padding: 10px 20px;
    border-radius: 6px 6px 0 0;
    transition: all 0.3s ease;
    background-color: #f8f9fa;
}

    .nav-tabs .nav-link:hover {
        color: #3498DB;
        background-color: #eaf2f8;
    }

    .nav-tabs .nav-link.active {
        color: #fff;
        background-color: #3498DB;
        border-radius: 6px 6px 0 0;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.1);
    }*/


.text-icon {
    color: #1ABC9C;
}

.text-icon2 {
    color: #2C3E50;
}



.btn-danger-visit {
    background-color: #DC143C; /* Crimson Red */
    color: #fff;
}

    .btn-danger-visit:hover {
        background-color: #FCEFF2;
        border: 1px solid #DC143C;
        color: #DC143C;
    }

.btn-add {
    background-color: #2980B9; /* Muted Blue */
    color: #fff;
}

.btn-addn {
    background-color: #8C744C; /* Muted Blue */
    color: #fff;
    font-weight: 400; /* extra light */
    font-size: 1.1rem;
}

.btn-outline-primary {
    border: 1px solid #002395;
    color: #4B0082;
}

    .btn-outline-primary:hover {
        background-color: #002395;
        border: 1px solid #002395;
        color: #fff;
    }

.btn-outline-warning {
    border: 1px solid #EAAA00;
    color: #EAAA00;
}

    .btn-outline-warning:hover {
        background-color: #EAAA00;
        border: 1px solid #EAAA00;
        color: #fff;
    }

.table-dark-visit {
    background-color: #8C744C; /* Muted Blue */
    color: #fff;
}

#usersTable thead th {
    background-color: #8C744C !important;
    color: #fff !important;
}


div.dataTables_length label,
div.dataTables_length select,
div.dataTables_info,
div.dataTables_paginate a {
    color: #000 !important;
    font-weight: 600;
}

div.dataTables_length select {
    border: 2px solid #8C744C ;
}

/* Active pagination button */
.page-item.active .page-link {
    background-color: #71797E !important; /* steel grey background */
    border-color: #71797E !important; /* steel grey border */
    color: #fff !important; /* white text for contrast */
}

    /* Optional: hover state for active button */
    .page-item.active .page-link:hover {
        background-color: #5A5F63 !important; /* darker steel grey */
        border-color: #5A5F63 !important;
        color: #fff !important;
    }





/* Add */
    .btn-addn:hover {
        background-color: #EDE9E1 !important; /* light blue background */
        color: #8C744C !important; /* navy text */
        border: 2px solid #8C744C;
    }

.btn-visit {
    background-color: #18A689; /* Muted Blue */
    color: #fff;
    font-weight: 400; /* extra light */
    font-size: 1.1rem;
}

    .btn-visit:hover {
        background-color: #EDE9E1 !important; /* light blue background */
        color: #8C744C !important; /* navy text */
        border: 2px solid #98111D;
    }

.btn-edit {
    background-color: #F39C12; /* Amber Orange */
    color: #fff;
}

.btn-view {
    background-color: #2C3E50; /* Deep Navy */
    color: #fff;
}

.btn-back {
    background-color: #7F8C8D; /* Cool Gray */
    color: #fff;
}

.btn-back-visit {
    background-color: #D9D4CC; /* Cool Gray */
    color: #4A3525;
    font-weight: 500;
}

    .btn-back-visit:hover {
        background-color: #4A3525 !important; /* light blue background */
        color: #D9D4CC !important; /* navy text */
        border: 2px solid #8C744C;
    }

.btn-delete {
    background-color: #E74C3C; /* Soft Red */
    color: #fff;
}

.btn-save {
    background-color: #27AE60; /* Emerald Green */
    color: #fff;
}

/* New Search Button */
.btn-search {
    background-color: #28AAA6; /* Sleek #00558C; */
    color: #fff;
}

.btn-search2 {
    background-color: #006A4E; /* Sleek #00558C; */
    color: #fff;
}

.btn-status {
    background-color: #F39C12; /* Sleek #EC4758 2C3E50 #00558C; */
    color: #000; /* dark slate text */
}

.btn-verification {
    background-color: #3498DB;
    color: #fff;
}

.btn-verification2 {
    background-color: #4A3525; /* #4A3525 #5C2518*/
    color: #fff;
}

.btn-verification3 {
    background-color: #EAE3DB; /* #4A3525 #5C2518*/
    color: #000;
}

.btn-verification4 {
    background-color: #8C744C; /* #4A3525 #5C2518*/
    color: #fff;
}


/* New FID Button */
.btn-fid, .btn-fid:hover, .btn-fid:active {
    background-color: #28AAA6; /* Sleek #00558C; */
    color: #fff;
    cursor: text; /* text cursor for selection */
    user-select: text; /* allow copy */
}

    /* New FID Button */
.btn-id-visit, .btn-id-visit:hover {
    background-color: #EDEBE5; /* #28AAA6 Sleek #00558C; */
    color: #000;
    font-weight: 500;
}



.btn-regstatus, .btn-regstatus:hover {
    background-color: #7F8C8D; /* Sleek #EC4758 2C3E50 #00558C; */
    color: #FFF; /* dark slate text */
    font-weight: 400;
}


    /*.btn-add:hover,
    .btn-edit:hover,
    .btn-view:hover,
    .btn-back:hover,
    .btn-delete:hover,
    .btn-save:hover {
        opacity: 0.9;*/ /* subtle hover effect */
    /*}*/

/*    .btn-add:hover,
    .btn-edit:hover,
    .btn-view:hover,
    .btn-back:hover,
    .btn-delete:hover,
    .btn-save:hover {
        box-shadow: 0 0 10px rgba(0,0,0,0.2);
        transform: translateY(-2px);
    }
*/

    /*.btn-add:hover,
    .btn-edit:hover,
    .btn-view:hover,
    .btn-back:hover,
    .btn-delete:hover,
    .btn-save:hover {
        background-color: #fff !important;*/ /* white background */
        /*color: inherit !important;*/ /* use button’s base color for text */
        /*border: 2px solid currentColor;*/ /* keep outline in the original color */
    /*}*/

/* Save */
.btn-save:hover {
    background-color: #ECFDF5 !important; /* very light green */
    color: #145A32 !important; /* deep green text */
    border: 2px solid #27AE60;
}

/* Edit */
.btn-edit:hover {
    background-color: #FFF4E6 !important; /* soft light orange */
    color: #B9770E !important; /* darker amber text */
    border: 2px solid #F39C12;
}

/* Add */
.btn-add:hover {
    background-color: #EBF5FB !important; /* light blue background */
    color: #1B4F72 !important; /* navy text */
    border: 2px solid #2980B9;
}

/* Back */
.btn-back:hover {
    background-color: #F2F4F4 !important; /* light gray */
    color: #2C3E50 !important; /* dark slate text */
    border: 2px solid #7F8C8D;
}

/* Delete */
.btn-delete:hover {
    background-color: #FDEDEC !important; /* light red background */
    color: #922B21 !important; /* deep red text */
    border: 2px solid #E74C3C;
}

/* View */
.btn-view:hover {
    background-color: #EAECEE !important; /* light slate background */
    color: #1a252f !important; /* deep navy text */
    border: 2px solid #2C3E50;
}

/* Search */
.btn-search:hover {
    background-color: #EBF2EE !important; /* light slate background */
    color: #1a252f !important; /* deep navy text */
    border: 2px solid #28AAA6;
}

.btn-search2:hover {
    background-color: #EBF2EE !important; /* light slate background */
    color: #1a252f !important; /* deep navy text */
    border: 2px solid #28AAA6;
}

/* Edit */
.btn-status:hover {
    background-color: #85C1E9 !important; /* soft light orange */
    color: #B9770E !important; /* darker amber text */
    border: 2px solid #F39C12;
}


.btn-verification2:hover {
    background-color: #D9D4CC !important; /* soft light orange */
    color: #4A3525 !important; /* darker amber text */
    border: 2px solid #4A3525;
}

.btn-verification3:hover {
    background-color: #8C744C !important; /* soft light orange */
    color: #fff !important; /* darker amber text */
    border: 2px solid #EAE3DB;
}


.btn-verification4:hover {
    background-color: #EAE3DB !important; /* soft light orange */
    color: #000 !important; /* darker amber text */
    border: 2px solid #B69D7D;
}


/*
.btn-add:hover,
.btn-edit:hover,
.btn-view:hover,
.btn-back:hover,
.btn-delete:hover,
.btn-save:hover {
    transform: scale(1.05);
}*/

.table-secondary {
    background-color: #2C3E50;
    color: #1a1a1a;
    font-weight: 500;
    font-size: .9rem;
}

/* Label */
.table-text {
    font-weight: 500;
    font-size: .85rem;
    color: #1a1a1a; /*#333;*/
}

/* Change font size of the info text */
.dataTables_info {
    font-family: 'Inter', sans-serif;
    font-size: .9rem; /* or 14px, adjust as needed */
    color: #1a1a1a; /* optional: softer text color */
    font-weight: 500; /* optional: make it slightly bolder */
}

/* Show X entries dropdown */
.dataTables_length {
    font-family: 'Inter', sans-serif;
    font-size: 1rem; /* adjust text size */
    margin-bottom: 10px; /* spacing below */
    color: #1a1a1a; /* optional: softer text color */
    font-weight: 300; /* optional: make it slightly bolder */
    padding: 4px 8px;
}

    .dataTables_length select {
        font-family: 'Inter', sans-serif;
        font-size: 0.9rem; /* dropdown font size */
        border-radius: 4px; /* rounded corners */
        color: #1a1a1a; /* optional: softer text color */
        font-weight: 300; /* optional: make it slightly bolder */
    }



/* Show X entries dropdown */
.dataTables_length label {
    color: #0d6efd !important; /* Bootstrap primary blue */
    font-weight: 500;
}

.dataTables_length select {
    color: #0d6efd !important;
    border: 1px solid #0d6efd;
    border-radius: 4px;
}


/* Search box */
.dataTables_filter {
    font-family: 'Inter', sans-serif;
    font-size: 1rem; /* label font size */
    margin-bottom: 10px;
    font-weight: 600;
}

    .dataTables_filter input {
        font-size: 0.9rem; /* input font size */
        padding: 4px 8px;
        border-radius: 4px;
        border: 1px solid #ccc;
    }


    .dataTables_filter label {
        color: #2C3E50 !important; /* Bootstrap success green */
    }


.yes-value {
    font-weight: bold;
    color: red;
}

/* Give more space to Name and Email */
.w-03 { width: 3%;}
.w-04 { width: 4%;}
.w-05 { width: 5%;}
.w-08 { width: 8%;}
.w-10 { width: 10%;}
.w-15 { width: 15%;}
.w-20 { width: 20%;}
.w-30 { width: 30%;}
.w-40 { width: 40%;}



/* Spinner when page is save or submitted */

#pageOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    transition: opacity 0.4s ease;
}

    #pageOverlay.active {
        display: flex;
        opacity: 1;
    }

    #pageOverlay .spinner-border {
        width: 3rem;
        height: 3rem;
    }

.wizard-step {
    display: none;
}

    .wizard-step.active {
        display: block;
    }

.fade-toggle {
    opacity: 0;
    transition: opacity 0.3s ease;
    display: none;
}

    .fade-toggle.show {
        display: block; /* or flex if you want row layout */
        opacity: 1;
    }
/*Override the original to include Red Cross on validation failure*/
/* Treat ASP.NET's input-validation-error like Bootstrap's is-invalid */
input.input-validation-error {
    border-color: #dc3545 !important;
    padding-right: calc(1.5em + .75rem);
    background-image: var(--bs-form-invalid-bg-image);
    background-repeat: no-repeat;
    background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

.status-inprogress {
    color: #fd7e14; /* orange */
    font-weight: 600;
}

.status-completed {
    color: #0d6efd; /* blue */
    font-weight: 600;
}

.status-rejected {
    color: #dc3545; /* red */
    font-weight: 700;
}

.status-approved {
    color: #198754; /* green */
    font-weight: 700;
}


.btn-inProgress {
    background-color: #fd7e14; /* Orage */
    color: #fff;
}

.btn-Complete {
    background-color: #F39C12; /* Amber Orange */
    color: #fff;
}

.btn-Approved {
    background-color: #198754; /* Green */
    color: #fff;
}


.btn-Rejected {
    background-color: #E74C3C; /* Soft Red */
    color: #fff;
}


.required-label::after {
    content: " *";
    color: red;
    font-weight: bold;
}


.info-icon {
    display: inline-block;
    margin-left: 10px; /* space from the label or * */
    color: #0d6efd; /* Bootstrap primary blue */
    cursor: pointer;
    font-size: 1.3rem; /* bigger size for easier hover */
    vertical-align: middle; /* aligns nicely with text */
    transition: color 0.2s ease;
}

    .info-icon:hover {
        color: #084298; /* darker blue on hover */
    }


.info-icon {
    font-size: 1.2rem; /* larger for easier hover */
    color: #0d6efd; /* modern blue */
    cursor: pointer;
    transition: color 0.2s ease;
}

    .info-icon:hover {
        color: #084298; /* darker on hover */
    }


.label-flex {
    display: flex;
    justify-content: space-between; /* pushes icon to far right */
    align-items: center;
    width: 100%; /* ensures full width of column */
}


.custom-popover {
    --bs-popover-bg: #f0f8ff; /* soft modern background */
    --bs-popover-border-color: #0d6efd;
    --bs-popover-header-bg: #0d6efd; /* header in brand blue */
    --bs-popover-header-color: #fff; /* white header text */
    --bs-popover-body-color: #333; /* dark readable body text */
    border-radius: 10px; /* rounded corners */
    box-shadow: 0 6px 16px rgba(0,0,0,0.15); /* subtle shadow */
    font-size: 0.9rem;
    line-height: 1.4;
}


.custom-popover-visit {
    --bs-popover-bg: #FAF9F6; /* soft modern background */
    --bs-popover-border-color: #8C744C;
    --bs-popover-header-bg: #EDE9E1; /* header in brand blue */
    --bs-popover-header-color: #8C744C; /* white header text */
    --bs-popover-body-color: #333; /* dark readable body text */
    border-radius: 10px; /* rounded corners */
    box-shadow: 0 6px 16px rgba(0,0,0,0.15); /* subtle shadow */
    font-size: 0.9rem;
    line-height: 1.4;
}

.label-flex {
    display: flex;
    justify-content: space-between; /* text left, icon right */
    align-items: center;
}

/* General view mode styling */
.form-control[readonly],
.form-select[disabled] {
    background-color: #f8f9fa; /* subtle light gray */
    border: 1px solid #dee2e6; /* soft border */
    color: #495057; /* Bootstrap's standard text color */
    cursor: default;
    opacity: 1; /* prevent faded look */
}

/* Optional: add consistent padding and rounded corners */
/*.form-control[readonly],
.form-select[disabled] {
    border-radius: 0.375rem;*/ /* modern rounded corners */
    /*padding: 0.375rem 0.75rem;
}*/

    /* Optional: hover effect for better UX */
    /*.form-control[readonly]:hover,
    .form-select[disabled]:hover {
        background-color: #e9ecef;*/ /* slightly darker gray on hover */
    /*}*/


.form-control[readonly],
.form-select[disabled] {
    border-radius: 0.375rem;
    padding: 0.375rem 0.75rem;
    background-color: #FAF9F6;
}

.id-box {
    background-color: #EDE9E1; /* #f8f9fa; light gray */
    border: 1px solid #dee2e6; /* subtle border */
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    cursor: text; /* text cursor for selection */
    user-select: text; /* allow copy */
}

.pgmode-box {
    background-color: #7F8C8D; /* #f8f9fa; light gray */
    color: #fff;
    border: 1px solid #dee2e6; /* subtle border */
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    cursor: text; /* text cursor for selection */
    user-select: text; /* allow copy */
}

/* New FID Button */
.btn-fid, .btn-fid:hover, .btn-fid:active {
    background-color: #28AAA6; /* Sleek #00558C; */
    color: #fff;
    border: 1px solid #dee2e6; /* subtle border */
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    cursor: text; /* text cursor for selection */
    user-select: text; /* allow copy */
}


.toolbar-divider {
    border-left: 1px solid #ccc;
    margin-left: 1rem;
    padding-left: 1rem;
}

.col-md-2.text-end {
    border-left: 2px solid #ddd;
    padding-left: 1rem;
}



