body > .login {
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    display: flex;
    background-color: var(--background-canvas-shaded);
}
.input-label {
    position: relative;
    font-size: var(--label-large-size);
    line-height: 24px;
    font-weight: 500;
    font-family: var(--label-large);
    color: var(--text-icon-high-emphasis);
    text-align: left;
}
.optional,
.required-asterisk {
    position: relative;
    font-size: var(--body-medium-size);
    display: none;
    text-align: left;
}
.required-asterisk {
    line-height: 20px;
    font-family: var(--body-medium-heavy);
    color: var(--text-icon-error);
    opacity: 0.8;
}
.first-line {
    overflow: hidden;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-start;
    padding: 0 var(--padding-base) 0 0;
    gap: var(--gap-9xs);
}
.label,
.left-icon-text {
    display: flex;
    justify-content: flex-start;
}
.label {
    align-self: stretch;
    flex-direction: column;
    align-items: flex-start;
}
.left-icon-text {
    width: 100%;
    border: 0;
    outline: 0;
    background-color: light-dark(rgb(232, 240, 254), rgba(70, 90, 126, 0.4)) !important;;
    height: 24px;
    flex: 1;
    flex-direction: row;
    align-items: center;
    font-family: var(--label-large);
    font-size: var(--label-large-size);
    color: fieldtext !important;
    padding: var(--padding-3xs) var(--padding-base);
    box-sizing: content-box;
}
.arrow-drop-down-icon,
.input {
    align-self: stretch;
    background-color: var(--background-on-canvas);
    border: 1px solid var(--border-stroke-default);
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    padding: 0;
}
.alert-message,

.master-input {
    border-radius: var(--br-11xs);
    gap: var(--gap-9xs);
}
.master-input,
.vertical-input {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}


.form {
    align-self: stretch;
    display: flex;
}
.form {
    height: 192px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--gap-base);
}
.text {
    position: relative;
    font-size: var(--label-large-size);
    line-height: 24px;
    font-weight: 500;
    font-family: var(--label-large);
    color: var(--text-icon-on-primary);
}
.elements {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: var(--gap-5xs);
}
.master-buttonmedium {
    background-color: var(--button-primary-default);
    padding: var(--padding-3xs) var(--padding-base);
}
.button-variants,
.master-buttonmedium,
.masterfilled-buttonmedium {
    align-self: stretch;
    border-radius: var(--br-9xs);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.button-variants {
    cursor: pointer;
    border: 0;
    padding: 0;
    background-color: transparent;
    border-radius: var(--br-5xs);
    text-decoration: none;
}
.button-variants:hover .master-buttonmedium {
    background-color: var(--button-primary-default-hover);
}
.form-parent,
.login {
    display: flex;
    justify-content: flex-start;
    box-sizing: border-box;
}
.form-parent {
    margin: 0;
    flex: 1;
    border-radius: var(--br-9xs);
    background-color: var(--background-canvas);
    flex-direction: column;
    align-items: center;
    padding: 64px;
    gap: 64px;
    max-width: 528px;
    min-height: 600px;
}

.forgot-password {
    align-self: flex-end;
    color: var(--text-icon-medium-emphasis, #dcdcdc);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
}

.forgot-password span {
    color: var(--action-primary-default, #d68500);
    text-decoration: underline;
}

.forgot-password:hover {
    color: var(--text-icon-high-emphasis);
}

.forgot-password:hover span {
    filter: brightness(1.1);
}

/* ajustes para dispositivos móveis em modo retrato */
@media (max-width: 689px) {
    .form-parent {
        box-sizing: border-box;
        max-width: 100%;
        gap: 48px;
        padding: 48px;
        margin: 48px;
    }
}
