    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html,
    body {
        height: 100%;
        width: 100%;
        font-family: var(--fonteTexto);
        background: radial-gradient(circle, rgba(31, 157, 207, 1) 0%, rgba(51, 101, 138, 1) 100%);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .login {
        display: flex;
        flex-direction: column;
        width: 90%;
        max-width: 400px;
        padding: 2rem;
        background-color: var(--branco);
        border-radius: 30px;
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
        text-align: center;
    }

    .campoLogo {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 1.5rem;
    }

    .imagemLogo {
        width: 4rem;
        height: 4rem;
    }

    .textoLogo {
        font-family: var(--fonteLogo);
        font-size: 2.5rem;
        color: var(--amarelo);
        margin-top: 0.5rem;
    }

    .campoLogin label {
        display: block;
        text-align: left;
        margin: 0.5rem 0 0.2rem;
        font-family: var(--fonteTitulo);
        font-size: 1rem;
        color: var(--preto);
    }

    .campoLogin input {
        width: 100%;
        padding: 0.6rem;
        margin-bottom: 1rem;
        border: 1px solid var(--preto);
        border-radius: 10px;
        font-size: 1rem;
        font-family: var(--fonteTexto);
    }

    .botaoLogin,
    .botaoLoginGoogle {
        width: 100%;
        padding: 0.8rem;
        margin-top: 1rem;
        background-color: var(--verde);
        border: none;
        border-radius: 15px;
        font-family: var(--fonteTexto2);
        font-size: 1rem;
        cursor: pointer;
        color: var(--branco);
        transition: background-color 0.3s ease;
    }

    .botaoLoginGoogle {
        background-color: #db4437;
    }

    .botaoLogin:hover,
    .botaoLoginGoogle:hover {
        opacity: 0.9;
    }

    .campoEsqueciSenha {
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }

    .linkEsqueciSenha {
        font-size: 0.9rem;
        color: var(--azul);
        text-decoration: none;
    }

    .linkEsqueciSenha:hover {
        text-decoration: underline;
    }

    .informacoesLogin {
        margin-top: 1.5rem;
        text-align: left;
    }

    .loginUsuario {
        list-style: none;
        margin-bottom: 0.5rem;
    }

    .textoUsuarioPadrao,
    .textoSenhaPadrao {
        font-size: 0.9rem;
        color: var(--preto);
    }

    @media (min-width: 768px) {
        .login {
            max-width: 500px;
            padding: 3rem;
        }

        .textoLogo {
            font-size: 3rem;
        }
    }

    .gsi-material-button {
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        -webkit-appearance: none;
        background-color: WHITE;
        background-image: none;
        border: 1px solid #747775;
        -webkit-border-radius: 20px;
        border-radius: 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        color: #1f1f1f;
        cursor: pointer;
        font-family: 'Roboto', arial, sans-serif;
        font-size: 14px;
        height: 40px;
        letter-spacing: 0.25px;
        outline: none;
        overflow: hidden;
        padding: 0 12px;
        position: relative;
        text-align: center;
        -webkit-transition: background-color .218s, border-color .218s, box-shadow .218s;
        transition: background-color .218s, border-color .218s, box-shadow .218s;
        vertical-align: middle;
        white-space: nowrap;
        width: auto;
        max-width: 400px;
        min-width: min-content;
    }

    .gsi-material-button .gsi-material-button-icon {
        height: 20px;
        margin-right: 12px;
        min-width: 20px;
        width: 20px;
    }

    .gsi-material-button .gsi-material-button-content-wrapper {
        -webkit-align-items: center;
        align-items: center;
        display: flex;
        -webkit-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        height: 100%;
        justify-content: space-between;
        position: relative;
        width: 100%;
    }

    .gsi-material-button .gsi-material-button-contents {
        -webkit-flex-grow: 1;
        flex-grow: 1;
        font-family: 'Roboto', arial, sans-serif;
        font-weight: 500;
        overflow: hidden;
        text-overflow: ellipsis;
        vertical-align: top;
    }

    .gsi-material-button .gsi-material-button-state {
        -webkit-transition: opacity .218s;
        transition: opacity .218s;
        bottom: 0;
        left: 0;
        opacity: 0;
        position: absolute;
        right: 0;
        top: 0;
    }

    .gsi-material-button:disabled {
        cursor: default;
        background-color: #ffffff61;
        border-color: #1f1f1f1f;
    }

    .gsi-material-button:disabled .gsi-material-button-contents {
        opacity: 38%;
    }

    .gsi-material-button:disabled .gsi-material-button-icon {
        opacity: 38%;
    }

    .gsi-material-button:not(:disabled):active .gsi-material-button-state,
    .gsi-material-button:not(:disabled):focus .gsi-material-button-state {
        background-color: #303030;
        opacity: 12%;
    }

    .gsi-material-button:not(:disabled):hover {
        -webkit-box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
        box-shadow: 0 1px 2px 0 rgba(60, 64, 67, .30), 0 1px 3px 1px rgba(60, 64, 67, .15);
    }

    .gsi-material-button:not(:disabled):hover .gsi-material-button-state {
        background-color: #303030;
        opacity: 8%;
    }