/* Header*/
header {
    width: 100vw;
    display: flex;
    align-items: center;
    margin: 0 auto -80px auto;
    padding: var(--spacing-regular) var(--spacing-medium);
    position: sticky;
    top: 0;
    z-index: 10;
    background-color: transparent;
}

.header-container {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header-container img {
    height: 50px;
    width: auto;
}

@media (max-width: 768px) {
    header {
        margin: 0 auto -20px auto;
        background-color: var(--color-component-background);
    }
}

/* Main */
.login-page {
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacing-medium);
    padding: 0 var(--spacing-medium);
    background-color: var(--color-component-background);
}

/* Esconde todas as seções, exceto a de login */
.registration-section,
.recover-section {
    display: none;
}

/* Aplica display flex APENAS quando a seção está ativa */
.login-section,
.registration-section,
.recover-section {
    display: flex;
    width: 360px;
    padding: var(--spacing-large);
    flex-direction: column;
    border-radius: var(--spacing-big);
    background-color: var(--color-background);
}

.realtas-logo {
    width: 80px;
}

/* Formulário */
.form-container {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: var(--spacing-medium);
    align-items: center;
}

.form-container form {
    display: flex;
    width: 100%;
    gap: var(--spacing-regular);
    flex-direction: column;
}

input,
textarea {
    width: 100%;
    padding: 10px 12px;
    align-items: center;
    border-radius: 10px;
    border: 1px solid var(--color-secondary);
    background: var(--color-background);
}

textarea {
    height: 84px;
    resize: vertical;
}

.phone-input {
    display: flex;
    width: 100%;
    gap: 0;
    align-items: stretch;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 10px;

}

.phone-input .country-code {
    width: 56px;
    text-align: center;
    border-right: none;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.phone-input input[type="tel"] {
    width: 100%;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.form-terms {
    font-size: var(--font-size-small);
    display: flex;
    gap: var(--spacing-xsmall);
    align-items: center;
}

.form-terms .checkbox {
    width: 14px;
    height: 14px;
}

.btn-link {
    color: var(--color-primary);
    font-weight: 600;
    text-decoration: underline;
    padding: var(--spacing-xsmall) 0;
}

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

.password-input {
    padding-right: 35px;
}

.toggle-password {
    position: absolute;
    top: 50%;
    right: var(--spacing-small);
    transform: translateY(-50%);
    cursor: pointer;
    color: #666;
}

.toggle-password:hover {
    color: #333;
}