﻿.form-control,
.form-select {
    padding: 0.375rem 0.5rem !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

.form-select:focus {
    color: #718096;
    background-color: #fff;
    box-shadow: unset;
}

.form-control#verifyCode::placeholder {
    font-size: 1rem !important;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    margin-left: 0 !important;
}

input[type="date"] {
    text-align: left !important;
}

.form-control,
.form-label {
    font-size: 14px !important;
}

.form-label,
.form-check-label {
    color: #33475b !important;
}

.text-right {
    text-align: right;
}

select.form-control {
    -webkit-appearance: menulist !important;
    -moz-appearance: menulist !important;
    -ms-appearance: menulist !important;
    -o-appearance: menulist !important;
    appearance: menulist !important;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: inner-spin-button !important;
    appearance: inner-spin-button !important;
    opacity: 1;
}

label.error {
    color: #D8000C !important;
    font-size: 13px;
}

#loader {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.hidden {
    display: none;
}

.text-theme-green {
    color: #0bbe50;
}

.btn-rounded-border {
    border-radius: 100px !important;
}

/*internatinal number input*/
.iti {
    width: 100%;
}

    .iti input[type=tel] {
        width: 100%;
        font-size: 14px !important;
        padding: 0.375rem 1.5rem 0.375rem 6.275rem !important;
        font-weight: 400;
        line-height: 1.7;
        color: #718096;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #CBD5E0;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: 0.25rem;
        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    }

        .iti input[type=tel]:focus {
            color: #718096;
            background-color: #fff;
            border-color: #8099e6;
            outline: 0;
            box-shadow: unset;
        }

.iti--separate-dial-code .iti__selected-flag {
    background-color: rgb(246 241 241 / 5%) !important;
}

/* Calendar */

.calendar {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

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

.weekdays {
    display: flex;
    justify-content: space-around;
    background-color: #f7f9fb;
    padding: 10px 0;
}

    .weekdays div {
        width: calc(100% / 7);
        text-align: center;
        font-size: 80%;
    }

.days {
    display: flex;
    flex-wrap: wrap;
}

    .days div {
        width: calc(100% / 7);
        text-align: center;
        padding: 6px 0;
        font-size: 80%;
    }

#prevMonthBtn,
#nextMonthBtn {
    background: none;
    border: none;
    cursor: pointer;
}

#monthYear {
    font-weight: bold;
}

.today {
    background-color: #007bff;
    color: #fff;
    cursor: pointer;
}

.weekend {
    color: #28a745;
    cursor: pointer;
}

.clickable {
    cursor: pointer;
}

    .clickable:hover {
        background-color: #f8f9fa;
    }

.timeslots {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.text-width {
    width: 90%;
}

.btn-dark {
    background-color: #718096 !important;
    border-color: #718096 !important;
}

#countryCode {
    width: 1%;
    border: 1px solid lightgrey;
    position: relative;
    flex: 0.15;
    background-color: white;
    text-align: center;
    font-size: 14px;
    color: gray;
}

.section {
    padding-top: 3.125rem !important;
    padding-bottom: 3.125rem !important;
}

.btn-theme-red {
    background-color: #e80c34 !important;
    border-color: transparent !important;
    color: rgb(255, 255, 255) !important;
}

.bg-theme-red {
    background-color: #e80c34 !important;
}

.text-theme-red {
    color: #e80c34;
}

.bg-opacity-20 {
    --bs-bg-opacity: 0.2;
}

.custom-circle {
    font-size: 0.75rem;
}

.card-body {
    padding: 1.25rem 1.25rem !important;
}

#schedulesDay.fixed-height {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

    #schedulesDay.fixed-height .card-body {
        overflow: hidden;
    }

@media handheld, screen and (max-width: 400px) {
    .container {
        margin: 0;
        width: 100%;
    }
}

@media (min-width: 375px) and (max-width: 412px) {
    .pb {
        padding-bottom: 2rem;
    }
}

@media (min-width: 768px) and (max-width: 834px) {
    .pb {
        padding-bottom: 2rem;
    }
}

@media (min-width: 1024px) and (max-width: 1366px) {
    .pb {
        padding-bottom: 6rem;
    }
}

@media (max-width: 576px) {
    #schedulesDay.fixed-height {
        max-height: 130px;
        height: 130px;
    }
}

@media (min-width: 992px) {
    #schedulesDay.fixed-height {
        max-height: 120px;
        height: 120px;
    }
}