@import url('https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

::after,
::before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

a {
    text-decoration: none;
}

li {
    list-style: none;
}

h1 {
    font-weight: 600;
    font-size: 1.5rem;
}

body {
    font-family: 'Poppins', sans-serif;
    -ms-overflow-style: none; 
    scrollbar-width: none;     
}
  
  body::-webkit-scrollbar {
    display: none;            
  }
  
  #sidebar {
    -ms-overflow-style: none;
    scrollbar-width: none;   
  }
  
  #sidebar::-webkit-scrollbar {
    display: none;       
  }
  
  .main {
    -ms-overflow-style: none;
    scrollbar-width: none;  
  }
  
  .main::-webkit-scrollbar {
    display: none;            
  }
  
  

.wrapper {
    display: flex;
}

.main {
    min-height: 100vh;
    width: 100%;
    overflow: hidden;
    transition: all 0.35s ease-in-out;
    background-color: #fafbfe;
}

#sidebar {
    width: 70px;
    min-width: 70px;
    z-index: 1000;
    transition: all .25s ease-in-out;
    border-radius: 0px 20px 20px 0px;
    background: linear-gradient(180deg, #094A9E 0%, #031A38 100%);
    display: flex;
    flex-direction: column;
}

#sidebar.expand {
    width: 260px;
    min-width: 260px;
}

.toggle-btn {
    background-color: transparent;
    cursor: pointer;
    border: 0;
    padding: 1rem 1.5rem;
}

.toggle-btn img{
    width: 27px;
height: 30px;
flex-shrink: 0;
border-radius: 5px;

}

.toggle-btn i {
    font-size: 1.5rem;
    color: #FFF;
}

.sidebar-logo {
    margin: auto 0;
}

.sidebar-logo a {
    color: #FFF;
    font-size: 1.15rem;
    font-weight: 600;
}

#sidebar:not(.expand) .sidebar-logo,
#sidebar:not(.expand) a.sidebar-link span {
    display: none;
}

.sidebar-nav {
    padding: 2rem 0;
    flex: 1 1 auto;
}

a.sidebar-link {
    padding: .625rem 1.625rem;
    color: #FFF;
    display: block;
    font-size: 0.9rem;
    white-space: nowrap;
    border-left: 3px solid transparent;
}

.sidebar-link i {
    font-size: 1.1rem;
    margin-right: .75rem;
}

a.sidebar-link:hover {
    background-color: rgba(255, 255, 255, .075);
    border-left: 3px solid #ffffff;
}

.sidebar-item {
    position: relative;
}

#sidebar:not(.expand) .sidebar-item .sidebar-dropdown {
    position: absolute;
    top: 0;
    left: 70px;
    background-color: #0e2238;
    padding: 0;
    min-width: 15rem;
    display: none;
}

#sidebar:not(.expand) .sidebar-item:hover .has-dropdown+.sidebar-dropdown {
    display: block;
    max-height: 15em;
    width: 100%;
    opacity: 1;
}

#sidebar.expand .sidebar-link[data-bs-toggle="collapse"]::after {
    border: solid;
    border-width: 0 .075rem .075rem 0;
    content: "";
    display: inline-block;
    padding: 2px;
    position: absolute;
    right: 1.5rem;
    top: 1.4rem;
    transform: rotate(-135deg);
    transition: all .2s ease-out;
}

#sidebar.expand .sidebar-link[data-bs-toggle="collapse"].collapsed::after {
    transform: rotate(45deg);
    transition: all .2s ease-out;
}

.sidebar-footer{
    text-align: center;
}

.text-left h1{
    color: #094A9E;
    font-family: "Lexend Deca";
}

.menu_header{
    width: 100%;
    height: auto;
    flex-shrink: 0;
    background: #FFF;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    margin: 0;
}

.search-filter-container {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #dee2e6;
}

.custom-input, 
.custom-select {
    position: relative;
    border: 1px solid #094A9E;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    border-radius: 5px;
    color: #FFF ;
}

.custom-input::placeholder {
    color: #ffffff; 
}

.custom-input-icon, 
.custom-select-icon {
    position: absolute;
    top: 50%;
    right: 20px; 
    transform: translateY(-50%);
    color: #ffffff;
    font-size: 18px;
    pointer-events: none; 
}


.custom-button {
    border-radius: 10px;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: #fff;
    transition: background-color 0.3s ease;
}

.custom-button:hover {
    color: #FFF;
}

select option{
    color: #031A38;
}

.search-filter-container {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #dee2e6;
}

.custom-input, 
.custom-select {
    position: relative;
    border: 1px solid #094A9E;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    border-radius: 5px;
    color: #FFF ;
    width: 100%; 
}

.custom-input::placeholder {
    color: #ffffff; 
}

.custom-input-icon, 
.custom-select-icon {
    position: absolute;
    top: 50%;
    right: 20px; 
    transform: translateY(-50%);
    color: #ffffff;
    font-size: 18px;
    pointer-events: none; 
}

.address-icon{
    position: absolute;
    top: 16%;
    left: 18px; 
    transform: translateY(-50%);
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 18px;
    pointer-events: none; 
}
.custom-button {
    border-radius: 10px;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: #fff;
    transition: background-color 0.3s ease;
}

.custom-button:hover {
    background-color: #FFF;
}

select option{
    color: #031A38;
}


.table {
    border-radius: 8px !important; 
    border: 2px solid #094A9E !important; 
    border-collapse: separate;
    border-spacing: 0;
}
.table-header {
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: white;
    text-align: center;
}


.table tbody tr {
    background-color: white;
    text-align: center;
    font-size: 14px;
}


.table tbody tr:hover {
    background-color: #CEDEEB; 
}


.table-responsive {
    max-width: 100%;
    overflow-x: auto;
}

.table-bordered th, .table-bordered td {
    padding: 8px;
}

.dropdown {
    position: relative;
}

.fa-ellipsis-vertical, .fa-arrow-left {
    cursor: pointer;
    font-size: 20px;
}
.fa-arrow-left{
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    -webkit-background-clip: text;
    color: transparent;
}
.dropdown-menu {
    position: fixed; 
    background-color: #fff;
    border: 1px solid #ddd;
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
    z-index: 999;
    display: none; 
    white-space: nowrap;
    margin-right: 10vw;
}

.dropdown-menu a {
    display: block;
    padding: 10px 20px;
    color: #333;
    text-decoration: none;
}

.dropdown-menu a:hover {
    background-color: #f1f1f1;
}

.pagination-button {
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: white;
    border: none;
    border-radius: 4px;
    padding: 5px ;
    width: 25px;
    margin: 0 4px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.pagination-button:hover {
    background-color: #265148;
}

.pagination-button.selected {
    font-weight: bold;
    background-color: #265148;
}

@media (max-width:500px){
    #sidebar.expand {
        width: 100vh;
        min-width: 100%;
    }

}



/* ---------------Admin Managment > Create admin------------------- */

.form-container {
    background-color: #ffffff;
    padding: 10px;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    display: flex;
    flex-direction: column;
}

.submit {
    width: auto; 
    min-width: 100px;
    padding: 5px;
    background-color: #094A9E;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    margin-bottom: 10px;
    align-self: center;
}

.createUserContainer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.createUserContainer h6 {
    color: #094A9E;
}

.input-container {
    position: relative;
    width: 100%;  
}

.input-icon {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    pointer-events: none;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    -webkit-background-clip: text;
    color: transparent;
}
.input-icon-right{
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    pointer-events: none;
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    -webkit-background-clip: text;
    color: transparent;  
}
.pl-5 {
    padding-left: 45px;
}

.input-container input[type="text"],
.input-container input[type="date"],
.input-container input[type="tel"], 
.input-container input[type="number"],
.input-container textarea,
.input-container select {
    background-color: #f8f9fa;
    border: 1px solid #094A9E;
    color: #094A9E;
    width: 100%; 
    font-size: 14px;
}

textarea .input-icon{
    top: 10%;
}

textarea[readonly] {
    height: 100px; 
    resize: none; 
    vertical-align: top; 

}

.file-upload {
    border: 2px dashed #094A9E; 
    padding: 20px;
    text-align: center; 
    position: relative;
    box-sizing: border-box; 
    height: auto; 
    min-height: 200px; 
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    align-items: center; 
    justify-content: space-between;
}

.file-upload button[type="button"],
button[type="submit"]{
    padding: 5px;
    background-color: #094A9E;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    margin-bottom: 10px;
}

.file-upload .file-input {
    display: none; 
}

.image-preview-container, 
.upload-button {
    flex: 1; 
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; 
    height: 100%; 
}

#imagePreview {
    width: 110px;
    height: 135px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 8px;
    border: 1px solid #094A9E;
    margin-bottom: 10px;
}

#removeImage{
    min-width: 120px;
}

.input-container input[type="text"]::placeholder,
.input-container input[type="tel"]::placeholder,
.input-container input[type="number"]::placeholder,
.input-container select {
    color: #094A9E;
    font-size: 14px;
}

.input-container.d-flex {
    display: flex;
    align-items: center;
    gap: 5px;
    width: 100%;
}

.d-flex > .input-container {
    flex: 1;
}

.form-check {
    margin-right: 15px;
}

.form-check input[type="radio"] {
    margin-right: 5px;
}

.form-check-label {
    margin-left: 3px;
    color: #094A9E;
    font-size: 14px;
}


.input-container p {
    font-size: 10px;
    color: #094A9E;
    text-align: center;
   
}

.submit{
    max-width: 100px;
}

@media (max-width: 820px) {
    .createUserContainer {
        flex-direction: column; 
    }

    .input-container {
        width: 100%; 
        
    }

    .col-md-6 {
        width: 100%; 
    }

    .head{
        display: none;
    }
}

@media (max-width: 576px) {
    .input-container {
        width: 100%;
    }

    .submit {
        width: 100%; 
    }

    .venus-input{
        top: 30%;
    }

    .file-upload {
        gap: 20px;
        display: flex;
        flex-direction: column;
    }
    
}

/* ---------------User Managment------------------- */

.d-flex {
    display: flex;
    justify-content: center; 
    align-items: center; 
}

.button-container {
    width: 250px;  
    display: flex;
    flex-direction: row;    
    justify-content: flex-start; 
    gap: 10px; 
}

.action-buttons-1,
.action-buttons-2{
    font-size: 12px;
}

.action-buttons-3 {
    font-size: 9px;
}

.action-buttons-1,
.action-buttons-2,
.action-buttons-3{
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    height: 30px;
    width: 70px;
}
.modal-icon{
    margin-top: 10px;
    margin-bottom: 30px;
    font-size: 50px;
    color: #031A38;
}
.confirm-delete{
    background-color: #031A38;
    color: #FFF;
}
.confirm-delete:hover{
    border: 1px solid #031A38;
}
.modal-slide-down {
    transform: translateY(-100%);
    transition: transform 0.5s ease-out;
}

.modal-slide-up {
    transform: translateY(-100%);
    transition: transform 0.5s ease-in;
}

.modal-dialog {
    display: flex;
    justify-content: center; 
    align-items: center; 
    width: 100%;
    max-width: 400px; 
    height: 100vh; 
    margin: 30vh auto; 
}

.modal-content {
    width: 100%; 
    border-radius: 8px;
}


@media (max-width: 768px) {
    .modal-dialog {
        margin: 0 auto;
    }
}

@media (max-width: 576px) {
    .modal-dialog {
        width: 80%;
        margin: 30vh auto; 
    }
}
/* ---------------Id Card Issue Register------------------- */
.action-buttons-4{
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    padding: 6px;
    font-size: 12px;
    min-width: 100px;
}

/* ---------------User Profile------------------- */
.profile-labels{
    font-size: 12px;
    color: #094A9E;
    margin-left: 15px;
}

.input-wrapper {
    display: flex;
    flex-direction: column;
    width: 50%;
}

@media (max-width: 768px) {
    .input-wrapper {
        width: 100%; 
        padding-right: 0;
    }
}
/* ----------------Category---------------- */


.custom-toast {
    position: fixed;
    bottom: 20px;
    right: -350px; 
    width: 320px;
    z-index: 9999;
    opacity: 0;
}

.custom-toast.show {
    animation: slide-in 0.5s forwards, fade-in 0.5s forwards;
}

.custom-toast.hide {
    animation: slide-out 0.5s forwards, fade-out 0.5s forwards;
}

.toast-success {
    background-color: #198754;
    color: white;
}

.toast-error {
    background-color: #dc3545;
    color: white;
}

.toast-icon {
    font-size: 24px;
    margin-right: 10px;
}

@keyframes slide-in {
    from {
        right: -350px;
    }
    to {
        right: 20px;
    }
}

@keyframes slide-out {
    from {
        right: 20px;
    }
    to {
        right: -350px;
    }
}

@keyframes fade-in {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fade-out {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

/* ----------------------Purchase------------------ */
.action-buttons-5,
.action-buttons-6,
.action-buttons-7,
.action-buttons-8,
.action-buttons-10{
    background: linear-gradient(90deg, #094A9E 0%, #031A38 100%);
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    height: 30px;
    width: 80px;
    font-size: 12px;
}

.grandtotal{
    background-color: #f8f9fa;
    border: 1px solid #094A9E;
    color: #094A9E;
    border-radius: 8px;
    text-align: center;
    max-width: 150px;
    font-size: 18px; 
    font-weight: bold;
}

/* ------------------sales--------------- */
.calander , .rupees{
    top: 70%;
}
.proceed{
    background-color: #031A38;
    color: #FFF;
}
.proceed:hover{
    border: 1px solid #031A38;
}
/* --------------------login--------------------- */
.login-cover{
    width: 250px;
    height: 300px;
}