﻿/*
* demo.css
* File include item demo only specific css only
******************************************************************************/

.menu .app-brand.demo {
    height: 64px;
    margin-top: 12px;
}

.app-brand-logo.demo svg {
    width: 22px;
    height: 38px;
}

.app-brand-text.demo {
    font-size: 1.75rem;
    letter-spacing: -0.5px;
}

/* ! For .layout-navbar-fixed added fix padding top to .layout-page */
/* Detached navbar */
.layout-navbar-fixed .layout-wrapper:not(.layout-horizontal):not(.layout-without-menu) .layout-page {
    padding-top: 74px !important;
}
/* Default navbar */
.layout-navbar-fixed .layout-wrapper:not(.layout-without-menu) .layout-page {
    padding-top: 64px !important;
}

.docs-page .layout-navbar-fixed.layout-wrapper:not(.layout-without-menu) .layout-page,
.docs-page .layout-menu-fixed.layout-wrapper:not(.layout-without-menu) .layout-page {
    padding-top: 62px !important;
}

/* Navbar page z-index issue solution */
.content-wrapper .navbar {
    z-index: auto;
}

/*
* Content
******************************************************************************/

.demo-blocks > * {
    display: block !important;
}

.demo-inline-spacing > * {
    margin: 1rem 0.375rem 0 0 !important;
}

/* ? .demo-vertical-spacing class is used to have vertical margins between elements. To remove margin-top from the first-child, use .demo-only-element class with .demo-vertical-spacing class. For example, we have used this class in forms-input-groups.html file. */
.demo-vertical-spacing > * {
    margin-top: 1rem !important;
    margin-bottom: 0 !important;
}

.demo-vertical-spacing.demo-only-element > :first-child {
    margin-top: 0 !important;
}

.demo-vertical-spacing-lg > * {
    margin-top: 1.875rem !important;
    margin-bottom: 0 !important;
}

.demo-vertical-spacing-lg.demo-only-element > :first-child {
    margin-top: 0 !important;
}

.demo-vertical-spacing-xl > * {
    margin-top: 5rem !important;
    margin-bottom: 0 !important;
}

.demo-vertical-spacing-xl.demo-only-element > :first-child {
    margin-top: 0 !important;
}

.rtl-only {
    display: none !important;
    text-align: left !important;
    direction: ltr !important;
}

[dir='rtl'] .rtl-only {
    display: block !important;
}

/* Dropdown buttons going out of small screens */
@media (max-width: 576px) {
    #dropdown-variation-demo .btn-group .text-truncate {
        width: 231px;
        position: relative;
    }

        #dropdown-variation-demo .btn-group .text-truncate::after {
            position: absolute;
            top: 45%;
            right: 0.65rem;
        }
}

/*
* Layout demo
******************************************************************************/

.layout-demo-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 1rem;
}

.layout-demo-placeholder img {
    width: 900px;
}

.layout-demo-info {
    text-align: center;
    margin-top: 1rem;
}



.dataTables_wrapper .dataTables_filter input {
    margin-bottom: 10px;
}

.dataTables_wrapper .dataTables_paginate {
    margin-top: 10px;
}

table.dataTable td {
    white-space: nowrap;
}

.dt-buttons {
    margin-left: 10px !important; /* Adjust the value as needed */
}

.dataTables_wrapper .dataTables_length select {
    padding: 7px !important;
}

.dt-button-background {
    background: none !important;
}

.table-responsive::-webkit-scrollbar {
    width: 8px; /* Width of the vertical scrollbar */
}

.table-responsive::-webkit-scrollbar-thumb {
    background-color: #888; /* Color of the scrollbar thumb */
    border-radius: 10px; /* Round edges for the scrollbar thumb */
}

    .table-responsive::-webkit-scrollbar-thumb:hover {
        background-color: #555; /* Darker color when hovered */
    }

.table-responsive {
    scrollbar-width: thin; /* For Firefox */
    scrollbar-color: #888 #f1f1f1; /* thumb color and track color */
}


.button-container {
    display: flex;
    height: 38px;
}

    .button-container button {
        margin-right: 10px;
    }

        .button-container button:last-child {
            margin-right: 0;
        }

    .button-container .btn-primary {
        color: #ffffff !important;
    }

    .button-container a {
        margin-right: 5px;
    }

.btn {
    border-radius: 0px !important;
}

.dataTable thead th {
    height: 0px !important;
    line-height: 0px !important;
}

.dt-search-box {
    border-radius: 2px !important;
    border-color: var(--bs-primary);
}

.dt-length {
    margin: 5px !important;
}

.dt-length-box {
    border-radius: 2px !important;
    border-color: var(--bs-primary);
}

.dt-cell-string {
}

    .dt-cell-string.dt-type-numeric {
        text-align: left !important;
    }


/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 22px;
    float: right;
}

    /* Hide default HTML checkbox */
    .switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

/* The slider - the actual toggle switch */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 34px;
}

    /* The slider before the checkbox is checked */
    .slider:before {
        position: absolute;
        content: "";
        height: 15px; /* Smaller knob height */
        width: 15px; /* Smaller knob width */
        border-radius: 50%; /* Keep the knob round */
        left: 4px; /* Adjust position */
        bottom: 4px; /* Adjust position */
        background-color: white;
        transition: .4s;
    }

/* When the checkbox is checked, change the slider background */
input:checked + .slider {
    background-color: #0172bd;
}

    /* When the checkbox is checked, move the slider to the right */
    input:checked + .slider:before {
        transform: translateX(26px);
    }

/* Add a border radius to the slider */
.slider {
    border-radius: 34px;
}

    /* Add a border radius to the slider knob */
    .slider:before {
        border-radius: 50%;
    }

.hr-with-text {
    position: relative;
    text-align: center;
    margin: 20px 0;
    display: flex; /* Flexbox layout */
    align-items: center;
}

    .hr-with-text::before,
    .hr-with-text::after {
        content: "";
        flex: 1;
        height: 1px;
        background: #ccc;
        margin: 0 2px; /* Reduced margin */
    }

    .hr-with-text span {
        white-space: nowrap;
        background: white;
        padding: 0 5px;
    }

.error-message {
    color: red;
    font-size: 14px;
}


.select2-container .select2-selection--single {
    height: auto;
    padding: 4px 4px;
    font-size: 1rem;
}

.select2-search__field {
    padding: 7px !important;
    border: 2px solid #ff0000;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 7px;
    right: 16px;
    width: 23px;
    background: url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 22" fill="none"%3e%3cpath d="M10.9999 12.0743L15.5374 7.53676L16.8336 8.83292L10.9999 14.6666L5.16626 8.83292L6.46243 7.53676L10.9999 12.0743Z" fill="%2322303e" fill-opacity="0.9"/%3e%3c/svg%3e');
    background-size: contain;
}

    .select2-container--default .select2-selection--single .select2-selection__arrow b {
        display: none;
    }

.pos-table {
    border-top: 1px dotted #ccc;
    border-left: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
    min-height: 500px;
}

.pos-footer {
}

    .pos-footer ul {
        list-style-type: none;
        padding: 0;
        display: flex;
    }

        .pos-footer ul li {
            margin-right: 10px;
        }

.pos-invoice-details {
    display: flex;
    flex-direction: column;
}

    .pos-invoice-details h5,
    .pos-invoice-details h4 {
        display: flex;
        justify-content: space-between; /* This will space out the label and value */
        margin: 0; /* Remove default margin */
    }

pos-invoice-details .label {
    text-align: right; /* Align label text to the right */
    flex: 1; /* Allow label to take up available space */
}

pos-invoice-details .value {
    text-align: left; /* Align value text to the left */
    flex: 1; /* Allow value to take up available space */
}

.pos-paymentkeys {
    margin: 0;
    padding: 0;
}

    .pos-paymentkeys .col-md-4 {
        margin: 0 !important;
        padding: 2px !important;
    }

    .pos-paymentkeys .btn {
        width: 100%;
        min-height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 14px; /* Default font size */
        line-height: 1.5; /* To control button height */
    }

        .pos-paymentkeys .btn span {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }


/*.numeric-pad {
    max-width: 300px;
    margin: 50px auto;
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

    .numeric-pad ul {
        list-style-type: none;
        padding: 0;
    }

    .numeric-pad li {
        margin: 10px 0;
    }

    .numeric-pad .btn {
        font-size: 24px;
        height: 60px;
    }*/
.numeric-pad {
}

    .numeric-pad ul {
        list-style-type: none;
        padding: 0;
        display: flex;
        margin: 3px;
    }

        .numeric-pad ul li {
            margin-right: 3px; /* Reduced space between buttons */
        }

    .numeric-pad button {
        height: auto;
        padding: 10px 15px;
        font-size: 16px;
        min-height: 50px;
        min-width: 60px;
        display: inline-block;
        font-weight: 700;
        font-size: 24px;
    }


.modal-header {
    background-color: #696cff;
    padding:15px;
    height:40px;    
}
.modal-title{
    color:#ffffff;
}


.table {
    table-layout: auto;
    width: 100%;
}

    .table th {
        white-space: nowrap;
    }

.form-check-input {
    width: 40px !important;
    height: 20px !important;
}
.form-check{
    min-height:0px !important;
}

/*.disabled-td .form-check-input:disabled {
    opacity: 0.8;
    cursor: not-allowed;
    float: left;
}*/
.swal2-container {
    z-index: 9999 !important; /* Set to a very high value */
}

.inputvalidate:focus {
    border: 2px solid red !important;
}

#spinner-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
}

    #spinner-overlay.hidden {
        display: none;
    }