@import url('../theme/buttons-theme.css');

body {
    background-color: #ffffff;
}


/* 
-----------------------------
    ==> Register Pages
-----------------------------
*/
.container__register {
    height: 100dvh;
}




/* 
-----------------------------
    ==> Form Section
-----------------------------
*/

.container__form {
    padding: 10px 30px;
    align-self: start;
    margin-block: 30px;
}

@media (min-width: 992px) {
    .container__form {
        margin-block: 40px;
    }
}

@media (min-width: 2100px) {
    .container__form {
        margin-block: 8rem;
    }

}



.form__header {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 20px;
}

.form__header--title {
    font-size: clamp(26px, 3vw, 40px);
    font-weight: 600;
    line-height: clamp(36.4px, 3vw, 49.2px);
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #111111;
    margin: 0;
}

.form__header--subtitle {
    font-size: clamp(18px, 3vw, 20px);
    font-weight: 300;
    line-height: clamp(20px, 3vw, 24.6px);
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #6D6D6D;
    margin: 0;
}

/* ===> Form Inputs */
.form__inputs--container {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.form__inputs--container>:last-child {
    margin-top: 30px;
}


.input__wrapper {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.input__wrapper--text {
    font-size: clamp(14px, 3vw, 16px);
    font-weight: 400;
    line-height: clamp(16px, 3vw, 32px);
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
}

.input__label {
    font-weight: 500;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #111111;
}


.input__wrapper input,
.input__wrapper select {
    width: 100%;
    padding: 8px 15px;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    box-sizing: border-box;
    background-color: #f9f9f9;
}

.input__wrapper input:focus,
.input__wrapper select:focus {
    outline: 1px solid #cccccc;
}

/* ===> Input Password */
.input__password--wrapper {
    position: relative
}

.input__password--input {
    padding-right: 3rem !important;
    background-color: #f2f2f2;
}

.input__password--button {
    padding-inline: clamp(0px, 0.75vw, 0.5rem) !important;
    padding: auto;
    z-index: 100;
    position: absolute;
    top: 50%;
    right: 1.3rem;
    border: 0px solid;
    font-size: 14px;
    cursor: pointer;
}

.input__password--button:disabled {
    opacity: 0.5;
    cursor: default;
}

.input__password--wrapper:focus-within .input__password--button {
    opacity: 1;
    cursor: pointer;
}

.input__password--show {
    color: #111111;
    border-radius: 50% !important;
}

.input__password--show:focus {
    border: none;
    outline: none !important;
}

/* ===> Input File */
.input__wrapper input[type="file"] {
    padding-block: 0;
    padding-inline: 0;
    padding: 8px 15px;
    line-height: clamp(16px, 3vw, 32px);
}

.input__wrapper input[type="file"]::file-selector-button {
    font-size: 14px;
    line-height: 14px;
    padding: 0px;
    margin: 0px 8px 0px 0px;
}

/* ===> Input Select State */
.input__select-state {
    color: rgb(118, 118, 118);
    padding: 13px 15px !important;
}

.input__select-state[data-value]:not([data-value=""]) {
    color: #111111;
}

.input__select-state option {
    color: #111111;
}

/* ===> Button */
.btn-save-next-first {
    background-color: #007aff;
    color: white;
    padding: 8px 30px;
    font-size: 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.1s ease-in-out;
}

.btn-save-next-first:hover {
    color: white;
    background-color: #2563eb;
}

/* 
-----------------------------
   ==> Banner Image 
-----------------------------
*/

.banner__image {
    max-height: 100%;
    padding-right: 0px;
}

.banner__image--container {
    display: flex;
    align-items: end;
    justify-content: end;
    height: 100%;
    max-height: 100%;
}

.banner__image--img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transform: scaleX(-1);
}

@media (min-width: 1400px) {
    .banner__image--img {
        max-height: 90%;
    }
}

@media (min-width: 1600px) {
    .banner__image--img {
        max-height: 80%;
    }
}

/* 
-----------------------------
   ==> Toast
-----------------------------
*/

.toast__position {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 50px 10px;
}

@media (min-width: 992px) {
    .toast__position {
        top: 0;
        left: auto;
        right: 0;
        transform: none;
        padding: 20px 30px;
    }
}