/*
| Main style sheet - guest user pages such as login, sign up, forgot password and etc.
*/

/* Core variables - default theme */
@import url('../themes/default.css');

/* Utilities */
@import url('../_utilities.css');

/* Fonts */
@import url('https://fonts.googleapis.com/css2?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');

html {
    font-size: 100%; /* Browser default size which equals 16px in most browsers */
    scroll-behavior: smooth;
    --bs-tooltip-bg: #000000;
    --bs-tooltip-bg-rgb: 0, 0, 0;
    --bs-tooltip-color: #ffffff;
}

body {
    margin: 0;
    padding: 0;
    font-size: 1rem;
    background: var(--bg-body);
    color: var(--text-primary);
    box-sizing: border-box;
    font-family: "Poppins", sans-serif;
}

.form-check-input:checked {
    background-color: var(--bg-brand);
    border-color: var(--brand);
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label {
    transform: scale(.85) translateY(-1rem) translateX(.15rem);
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    background-color: var(--bg-brand);
    border-color: var(--brand);
    border-bottom: unset;
}

.nav-pills .nav-link {
    border: 0.05rem solid var(--brand);
    border-bottom: unset;
}

.btn-main {
    background-color: var(--primary);
    color: #fff;
    border: 0.05rem solid var(--primary);
}

.btn-white {
    background-color: #fff;
    color: var(--primary);
    border: 0.05rem solid var(--primary);
}

.btn-main:hover {
    background-color: transparent;
    color: var(--primary);
    border: 0.05rem solid var(--primary);
}

.btn-white:hover {
    background-color: var(--brand);
    color: #fff;
    border: 0.05rem solid var(--brand);
}

.btn-main, .btn-white  {
    font-size: 1rem;
    padding: .7rem 1rem;
    border-radius: .8rem;
}

.main-container,
.main-container-sec {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background: #2A7B9B;
    background: linear-gradient(90deg, rgba(42, 123, 155, 1) 0%, rgba(87, 199, 133, 1) 47%, rgba(168, 160, 99, 1) 100%);
    min-height: 100vh;
}

.main-card {
    border-radius: 1rem;
    box-shadow: 0 0.7rem 1.9rem rgba(0, 0, 0, 0.1);
    border-radius: 1.5rem;
}

.bg-logo img {
    width: 12rem;
    position: fixed;
    left: 0;
    top: 0;
}

.form-floating {
    position: relative;
}

.form-floating .form-control {
    border-bottom: 0.05rem solid var(--gray);
}

.form-floating .form-control:focus {
    border-color: var(--primary);
    box-shadow: none;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 62.5rem white inset !important;
    -webkit-text-fill-color: #000 !important;
}

.link {
    color: var(--primary);
    font-size: .9rem;
}

.password-toggle-icon {
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    cursor: pointer;
    color: #126fc18a;
    font-size: 1rem;
    border: 0.05rem solid #ccc;
    padding: 0.1rem 0.4rem;
    border-radius: 0.5rem;
}

.main-card-sec {
    background-color: #0000005c;
    border: 0.1rem solid #ffffff6b;
    border-radius: 1.5rem;
}

.main-card-sec input {
    background-color: #00000000;
    color: #ffffff;
}

.form-floating .iti .form-control,
.form-floating .iti .form-control-plaintext {
    padding: 1rem .75rem;
    height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
    line-height: 1.25;
}

.iti__flag-container .iti__selected-flag {
    background-color: #ffffff !important;
}

.iti__flag-container .iti__selected-flag:hover {
    background-color: #ffffff !important;
}

/* Hide arrows in input number for WebKit browsers */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

/*tel country field*/

.country-tel-field .iti.iti--allow-dropdown {
    width: 100%;
}

.country-tel-field .iti__country-list {
    z-index: 10;
}

.otp-input-container {
    display: flex;
    gap: 1rem;
    justify-content: center;
}

.otp-input {
    width: 2.1rem;
    height: 3.1rem;
    text-align: center;
    font-size: 1.1rem;
    border: 0;
    border-bottom: 0.1rem solid #ccc;
    border-radius: 0;
}

.otp-input:focus {
    border-color: #007bff;
    outline: none;
}
