
.fade.in{
    opacity:1
}
.modal-backdrop {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color:#000;
}
    .modal-backdrop.in {
        opacity: 0.5;
    }
.modal.fade .modal-dialog {
    transform:none
}
.fade:not(.show){
    opacity:0.;
}
.table_pagination {
    padding-top: 0.85em;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 500;
    font-style: italic;
    color: #969696;
}
.pagination > li{
    display:inline;
}
    .pagination > li:first-child > a, .pagination > li:first-child > span {
        margin-left: 0;
        border-top-left-radius: 4px;
        border-bottom-left-radius:4px;
    }
    .pagination > li > a, .pagination > li > span {
        position: relative;
        float: left;
        padding: 6px 12px;
        color: #68757c;
        text-decoration: none;
        background-color: #fff;
        border: 1px solid #ddd;
    }
.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
    color: #fff;
    cursor: default;
    background-color: #b6b6b6;
    border-color: #b6b6b6;
}
.angucomplete-holder {
    position: relative;
}

.angucomplete-dropdown {
    border-color: #ececec;
    border-width: 1px;
    border-style: solid;
    border-radius: 2px;
    width: 250px;
    padding: 6px;
    cursor: pointer;
    z-index: 9999;
    position: absolute;
    /*top: 32px;
    left: 0px;
    */
    margin-top: -6px;
    background-color: #ffffff;
}

.angucomplete-searching {
    color: #acacac;
    font-size: 14px;
}

.angucomplete-description {
    font-size: 14px;
}

.angucomplete-row {
    padding: 5px;
    color: #000000;
    margin-bottom: 4px;
    clear: both;
}

.angucomplete-selected-row {
    background-color: lightblue;
    color: #ffffff;
}

.angucomplete-image-holder {
    padding-top: 2px;
    float: left;
    margin-right: 10px;
    margin-left: 5px;
}

.angucomplete-image {
    height: 34px;
    width: 34px;
    border-radius: 50%;
    border-color: #ececec;
    border-style: solid;
    border-width: 1px;
}

.angucomplete-image-default {
    /* Add your own default image here
     background-image: url('/assets/default.png');
    */
    background-position: center;
    background-size: contain;
    height: 34px;
    width: 34px;
}
.stepper-wrapper {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.stepper-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;

    @media (max-width: 768px) {
        font-size: 12px;
    }
}

    .stepper-item::before {
        position: absolute;
        content: "";
        border-bottom: 2px solid #ccc;
        width: 100%;
        top: 20px;
        left: -50%;
        z-index: 2;
    }

    .stepper-item::after {
        position: absolute;
        content: "";
        border-bottom: 2px solid #ccc;
        width: 100%;
        top: 20px;
        left: 50%;
        z-index: 2;
    }

    .stepper-item .step-counter {
        position: relative;
        z-index: 5;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: #ccc;
        background-color: #b5dea8;
        margin-bottom: 6px;
        color: white;
    }

    .stepper-item.active {
        font-weight: bold;
    }

    .stepper-item.completed .step-counter {
        background-color: blue;
        color: white;
    }

    .stepper-item.completed::after {
        position: absolute;
        content: "";
        border-bottom: 2px solid blue;
        width: 100%;
        top: 20px;
        left: 50%;
        z-index: 3;
    }

    .stepper-item:first-child::before {
        content: none;
    }

    .stepper-item:last-child::after {
        content: none;
    }
.select2-container--default .select2-selection--single .has-danger{
    border-color:red;
}
/*.select2-container--classic .select2-selection--single, .select2-container--default .select2-selection--multiple, .select2-container--default .select2-selection--single, .select2-container--default .select2-selection--single .select2-selection__arrow, .select2-container--default .select2-selection--single .select2-selection__rendered .has-danger{
    border-color:red;
}*/
.has-danger .select2-container--focus .select2-selection, .has-danger .select2-container--open .select2-selection{
    border-color:red;
}
.has-danger .select2-dropdown, .has-danger .select2-selection{
    border-color:red;
}
.hasoverflow{
    overflow-x:unset
}
.nav-fill .nav-item .nav-link, .nav-justified .nav-item .nav-link{
    background-color:aliceblue
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    background-color: #46caeb54
}
.over-canvas {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99999;
    background-color: #000;
    opacity: .5;
}

.over-canvas-container {
    color: #fff;
    margin-top: 20%;
    text-align: center;
    font-family: 'Kanit', Tahoma;
}

#toast-container .toast {
    color: #000;
}
a:hover {
    cursor: pointer;
}
.table-error{
    border:solid 1px red;
}

#zoomAbleImage {
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
    display: block;
    margin-left: auto;
    margin-right: auto
}

#zoomAbleImage:hover {
    opacity: 0.7;
}

/* The Modal (background) */
.zoomImgModal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 99; /* Sit on top */
    padding-top: 100px; /* Location of the box */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
}

.zoomImgModal-content {
    margin: auto;
    display: block;
    max-width: 70%;
}

.zoomImgModalMobile-content {
    margin: auto;
    display: block;
    max-width: 100%;
}

#zoomImgcaption {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
    text-align: center;
    color: #ccc;
    padding: 10px 0;
    height: 150px;
}

.zoomImgModal-content, #caption {
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}

.zoomImgModalMobile-content, #caption {
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}

.out {
    animation-name: zoom-out;
    animation-duration: 0.6s;
}

.btn-outline-pass {
    color: #009688;
    border-color: #009688;
}

.btn-outline-pass:hover {
    color: #fff;
    background-color: #009688;
    border-color: #009688;
}

.btn-check:focus + .btn-outline-pass, .btn-outline-pass:focus {
    box-shadow: 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-check:checked + .btn-outline-pass,
.btn-check:active + .btn-outline-pass, .btn-outline-pass:active, .btn-outline-pass.active, .btn-outline-pass.dropdown-toggle.show {
    color: #fff;
    background-color: #009688;
    border-color: #009688;
}

.btn-check:checked + .btn-outline-pass:focus,
.btn-check:active + .btn-outline-pass:focus, .btn-outline-pass:active:focus, .btn-outline-pass.active:focus, .btn-outline-pass.dropdown-toggle.show:focus {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-outline-pass:disabled, .btn-outline-pass.disabled {
    color: #009688;
    background-color: transparent;
}

.btn-outline-ng {
    color: #fb3a3a;
    border-color: #fb3a3a;
}

.btn-outline-ng:hover {
    color: #fff;
    background-color: #fb3a3a;
    border-color: #fb3a3a;
}

.btn-check:focus + .btn-outline-ng, .btn-outline-ng:focus {
    box-shadow: 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-check:checked + .btn-outline-ng,
.btn-check:active + .btn-outline-ng, .btn-outline-ng:active, .btn-outline-ng.active, .btn-outline-ng.dropdown-toggle.show {
    color: #fff;
    background-color: #fb3a3a;
    border-color: #fb3a3a;
}

.btn-check:checked + .btn-outline-ng:focus,
.btn-check:active + .btn-outline-ng:focus, .btn-outline-ng:active:focus, .btn-outline-ng.active:focus, .btn-outline-ng.dropdown-toggle.show:focus {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-outline-ng:disabled, .btn-outline-ng.disabled {
    color: #fb3a3a;
    background-color: transparent;
}

.btn-outline-none {
    color: #9e9e9e;
    border-color: #9e9e9e;
}

.btn-outline-none:hover {
    color: #fff;
    background-color: #9e9e9e;
    border-color: #9e9e9e;
}

.btn-check:focus + .btn-outline-none, .btn-outline-ng:focus {
    box-shadow: 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-check:checked + .btn-outline-none,
.btn-check:active + .btn-outline-none, .btn-outline-none:active, .btn-outline-none.active, .btn-outline-none.dropdown-toggle.show {
    color: #fff;
    background-color: #9e9e9e;
    border-color: #9e9e9e;
}

.btn-check:checked + .btn-outline-none:focus,
.btn-check:active + .btn-outline-none:focus, .btn-outline-none:active:focus, .btn-outline-none.active:focus, .btn-outline-none.dropdown-toggle.show:focus {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0 rgba(255, 178, 43, 0.5);
}

.btn-outline-none:disabled, .btn-outline-none.disabled {
    color: #9e9e9e;
    background-color: transparent;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px) {
    .zoomImgModal-content .zoomImgModalMobile-content {
        width: 100%;
    }
}

@-webkit-keyframes zoom {
    from {
        -webkit-transform: scale(1)
    }

    to {
        -webkit-transform: scale(2)
    }
}

@keyframes zoom {
    from {
        transform: scale(0.4)
    }

    to {
        transform: scale(1)
    }
}

@-webkit-keyframes zoom-out {
    from {
        transform: scale(1)
    }

    to {
        transform: scale(0)
    }
}

@keyframes zoom-out {
    from {
        transform: scale(1)
    }

    to {
        transform: scale(0)
    }
}
.has-danger .form-control {
    border-color: #fc4b6c;
}

a {
    text-decoration: none;
    color: #157fb6; /* Initial link color */
    transition: color 0.3s ease; /* Transition effect for color change */
}

a:hover {
    color: #b67f15; /* Change color on hover */
}



/*Custom Button*/

.btn-cancel {
    color: #fff;
    background-color: #ff4d4d;
    border-color: #ff4d4d;
    /* Hover state */
    --hover-color: #fff;
    --hover-bg: #e60000;
    --hover-border-color: #cc0000;
    /* Focus shadow */
    box-shadow: 0 0 0 0.2rem rgba(255, 102, 102, 0.5);
    /* Active state */
    color: #fff;
    background-color: #cc0000;
    border-color: #b30000;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    /* Disabled state */
    color: #fff;
    background-color: #ff4d4d;
    border-color: #ff4d4d;
}

    /* Hover */
    .btn-cancel:hover {
        color: #fff;
        background-color: #e60000;
        border-color: #cc0000;
    }

    /* Focus */
    .btn-cancel:focus {
        box-shadow: 0 0 0 0.2rem rgba(255, 102, 102, 0.5);
    }

    /* Active */
    .btn-cancel:active,
    .btn-cancel.active {
        color: #fff;
        background-color: #cc0000;
        border-color: #b30000;
        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    }

    /* Disabled */
    .btn-cancel:disabled,
    .btn-cancel.disabled {
        color: #fff;
        background-color: #ff4d4d;
        border-color: #ff4d4d;
    }

.btn-backward {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
    /* Focus shadow */
    box-shadow: 0 0 0 0.2rem rgba(173, 181, 189, 0.5);
    /* Active state */
    color: #fff;
    background-color: #545b62;
    border-color: #4e555b;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

    /* Hover */
    .btn-backward:hover {
        color: #fff;
        background-color: #5a6268;
        border-color: #545b62;
    }

    /* Focus */
    .btn-backward:focus {
        box-shadow: 0 0 0 0.2rem rgba(173, 181, 189, 0.5);
    }

    /* Active */
    .btn-backward:active,
    .btn-backward.active {
        color: #fff;
        background-color: #545b62;
        border-color: #4e555b;
        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    }

    /* Disabled */
    .btn-backward:disabled,
    .btn-backward.disabled {
        color: #fff;
        background-color: #adb5bd;
        border-color: #adb5bd;
    }
    .invalid-error{
        border-color:red;
    }


.line-btn {
    color: #fff;
    background-color: #00C300; /* Line company green */
    border-color: #00C300; /* Line company green */
    /* Hover state */
    --hover-color: #fff;
    --hover-bg: #009900; /* Darker green for hover */
    --hover-border-color: #007700; /* Even darker green for hover */
    /* Focus shadow */
    box-shadow: 0 0 0 0.2rem rgba(0, 195, 0, 0.5); /* Lighter green shadow for focus */
    /* Active state */
    color: #fff;
    background-color: #007700; /* Even darker green for active state */
    border-color: #006600; /* Darker green for active state */
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); /* Inset shadow effect */
    /* Disabled state */
    color: #fff;
    background-color: #00C300; /* Line green for disabled state */
    border-color: #00C300; /* Line green for disabled state */
}

.line-btn:hover {
    color:white;
    background-color: #009900; /* Darker green on hover */
    transform: translateY(-2px); /* Slight lift effect */
}

.line-btn:active {
    background-color: #007700; /* Even darker green on click */
    transform: translateY(0); /* Button returns to normal position */
}


/* Sticky footer styles */
.sticky-footer-mobile {
    position: fixed;
    bottom: 0;
    left: 0; /* Ensure it starts from the left edge */
    width: 100%; /* Full width */
    background-color: #202021; /* Gray background */
    /*    padding: 20px;*/
    text-align: center;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
    z-index: 1000; /* Ensures the footer is on top of other content */
}

/* Footer content container */
.footer-content-mobile {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
}

/* Footer items (icons + text) */
.footer-item-mobile {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px;
    color:white;
}

.icon-mobile {
    font-size: 28px;
    margin-bottom: 8px;
    color: white;
}

/* To align the icons in a row */
.footer-actions {
    display: flex;
    justify-content: space-around; /* Distribute items evenly */
    align-items: center;
    width: 100%; /* Take up full width */
    padding: 10px 0;
    gap: 10px; /* Space between each button */
/*    margin-top: 10px;*/
}


footer p {
    font-size: 14px;
    color: white;
    margin: 0;

}



.calendar-mobile-ui {
    width: 100%;
    max-width: 350px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    padding: 20px;
    text-align: center;
    overflow: hidden;
}

.calendar-header-mobile-ui {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.calendar-days-mobile-ui {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
    overflow: hidden;
    padding-bottom: 10px;
}

.day-mobile-ui {
    padding: 15px;
    height: 50px;
    background: #e3e3e3;
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
}

.day-mobile-ui:hover {
    background: #ccc;
}

.selected-mobile-ui {
    background: #007bff !important;
    color: white;
}

.dot-mobile-ui {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    bottom: 5px;
}

.weekend-mobile-ui .dot-mobile-ui {
    background-color: red;
}

.weekday-mobile-ui .dot-mobile-ui {
    background-color: green;
}

/* Confirm button - Blue with White text */
.swal-confirm-btn {
    background-color: #007bff !important; /* Blue color */
    color: white !important;
}

/* Cancel button - Gray with White text */
.swal-cancel-btn {
    background-color: #6c757d !important; /* Gray color */
    color: white !important;
}

.sticky-panel {
    position: sticky; /* You can change this to 'fixed' if you want the panel always visible */
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #f8f9fa; /* Optional: Give it a background */
    padding: 10px 0;
    z-index: 1000; /* Ensure it is above other content */
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); /* Optional: Add shadow for better visibility */
    border-radius: 20px 20px 0 0; /* Round the top two corners */
}

/*Mobile Setting*/
@media (max-width: 768px) {
    .stepper-item {
        display: none; /* Initially hide all steps */
    }

        /* Show the current and the next two steps */
        .stepper-item.active,
        .stepper-item.active + .stepper-item + .stepper-item {
            display: flex;
        }

            .stepper-item.active + .stepper-item {
                display: flex;
            }

                .stepper-item.active + .stepper-item + .stepper-item {
                    display: flex;
                }

                    /* Hide the connector line for the last visible item using ::after */
                    .stepper-item.active + .stepper-item::after,
                    .stepper-item.active + .stepper-item + .stepper-item::after {
                        display: none;
                    }
}

