body.login section.carrinho { display: flex; align-items: center; justify-content: center; min-height: 100dvh; padding: 70px 0 0; background-color: #F6F6F6; position: relative; z-index: 1; flex-direction: column; border-top: none; }
body.login section.carrinho::before {position: absolute;content: '';width: 1920px;height: 100%;background: url(../img/fundoCadastroLogin.avif) no-repeat;background-size: cover;left: 50%;transform: translateX(-50%);top: 0;z-index: -1;}

body.login section.carrinho .centro { display: flex; max-width: 520px; width: 100%; margin: auto; padding: 0 20px 50px; gap: 0; flex-direction: column; justify-content: center; align-items: center; }
body.login section.carrinho .centro .pedidoInfos { max-width: 472px; min-width: 0; min-height: 0; display: block; background: #FFF; padding: 24px 16px 16px; }

body.login section.carrinho .centro .pedidoInfos .topo { text-align: center; width: 100%; margin: 0 auto; border-bottom: solid 1px #E6E6E6; padding-bottom: 20px; }
body.login section.carrinho .centro .pedidoInfos .topo h1 { max-width: 180px; margin: 0 auto; }
body.login section.carrinho .centro .pedidoInfos .topo h1 a { max-width: 180px; margin: 0 auto; gap: 18px; }
section.carrinho .centro .pedidoInfos .topo h1 a figure { max-width: 73px; width: 100%; }
section.carrinho .centro .pedidoInfos .topo h1 a figure.logoTemporal { max-width: 89px; width: 100%; }

body.login section.carrinho .centro .pedidoInfos .infoCadastro .cadastroInfos { padding: 0; background: none; border: none; max-width: 344px; margin: 0 auto; }
body.login section.carrinho .centro .pedidoInfos h4 { font: 700 32px/28px "Crimson Pro", serif; letter-spacing: -0.02em; text-align: center; color: #231F20; text-transform: lowercase; margin-bottom: 2px; }
body.login section.carrinho .centro .pedidoInfos h3 { margin-bottom: 28px; font: italic 500 14px/20px 'Montserrat', sans-serif; text-align: center; color: #231F20; opacity: 0.5; }

body.login section.carrinho .centro .pedidoInfos a.linkVoltar:active,
body.login section.carrinho .centro .pedidoInfos a.linkVoltar:link,
body.login section.carrinho .centro .pedidoInfos a.linkVoltar:visited{display: flex; align-items: center; justify-content: center; gap:8px; margin: 36px auto 0; transition: all 0.5s ease;}
    body.login section.carrinho .centro .pedidoInfos a.linkVoltar b{color: #241F20;font-size: 15px;font-weight: 700;line-height: 20px; letter-spacing: -0.01em;text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 3px;transition: all 0.5s ease;}
    body.login section.carrinho .centro .pedidoInfos a.linkVoltar:hover b{text-decoration-color: #000; transition: all 0.5s ease;}

body.login .etapa.loginEtapa .cadastroInfos form .box { margin-bottom: 16px; position: relative; }
body.login .etapa.loginEtapa .cadastroInfos form .box:nth-of-type(2) { margin-bottom: 20px; }
body.login .etapa.loginEtapa .cadastroInfos form .box label { font: 700 14px/20px 'Montserrat', sans-serif; letter-spacing: -0.01em; color: #231F20; width: 100%; display: flex; }

body.login .etapa.loginEtapa .cadastroInfos form .box label a:link,
body.login .etapa.loginEtapa .cadastroInfos form .box label a:visited,
body.login .etapa.loginEtapa .cadastroInfos form .box label a:active { font: italic 500 12px/18px 'Montserrat', sans-serif; text-align: right; text-decoration: underline; text-decoration-style: solid; text-decoration-thickness: 5%; text-decoration-skip-ink: auto; color: #231F20; margin-left: auto; display: inline-block; width: 100%; text-decoration-color: #231F2040; text-underline-offset: 2px; transition: text-decoration-color .3s ease; }
body.login .etapa.loginEtapa .cadastroInfos form .box label a:hover { text-decoration-color: #231F20; }

section.carrinho .centro .pedidoInfos .cadastroInfos .box input { background: #EBEBEB; border-color: transparent; }
section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha { display: flex; position: absolute; width: 30px; height: 40px; right: 9px; cursor: pointer; top: 21px; align-items: center; justify-content: flex-start; }
section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha::before { content: ''; display: block; width: 24px; height: 24px; background-size: contain; user-select: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cg fill='%23231f20' opacity='.8'%3E%3Cpath fill-rule='evenodd' d='M1.293 1.293a1 1 0 0 1 1.414 0l20 20a1 1 0 0 1-1.414 1.414l-3.98-3.98a11.75 11.75 0 0 1-9.037.667 11.75 11.75 0 0 1-7.14-6.665l-.012-.034a2 2 0 0 1 0-1.391l.013-.034a11.75 11.75 0 0 1 3.806-4.913l-3.65-3.65a1 1 0 0 1 0-1.414m5.08 6.494A9.75 9.75 0 0 0 3 11.999a9.75 9.75 0 0 0 5.91 5.498 9.75 9.75 0 0 0 4.123.447 9.8 9.8 0 0 0 2.775-.722l-1.778-1.778a4 4 0 0 1-2.065.556 4 4 0 0 1-3.411-6.032zm3.695 3.695A2 2 0 0 0 11.982 14q.274 0 .534-.07z' clip-rule='evenodd' style='fill:%23231f20;fill:color(display-p3 .1373 .1216 .1255);fill-opacity:1'/%3E%3Cpath d='M10.615 4.083a11.745 11.745 0 0 1 12.056 6.746l.192.44.013.034a2 2 0 0 1-.013 1.424c-.401.974-.933 1.89-1.579 2.722a1 1 0 1 1-1.58-1.226A9.8 9.8 0 0 0 21 11.999a9.744 9.744 0 0 0-10.147-5.93 1 1 0 0 1-.237-1.985' style='fill:%23231f20;fill:color(display-p3 .1373 .1216 .1255);fill-opacity:1'/%3E%3C/g%3E%3C/svg%3E") no-repeat; transition: all 0.3s ease; }
section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha.ativo::before { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cg fill='%23231f20' fill-rule='evenodd' clip-rule='evenodd' opacity='.8'%3E%3Cpath d='M12 8a4 4 0 1 1 0 8 4 4 0 0 1 0-8m0 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4' style='fill:%23231f20;fill:color(display-p3 .1373 .1216 .1255);fill-opacity:1'/%3E%3Cpath d='M12 4a11.75 11.75 0 0 1 10.689 6.87l.173.401.013.033a2 2 0 0 1 0 1.392l-.013.033A11.75 11.75 0 0 1 12.001 20a11.75 11.75 0 0 1-10.863-7.271q-.008-.016-.013-.033a2 2 0 0 1 0-1.392l.013-.033A11.75 11.75 0 0 1 12 4m0 2a9.75 9.75 0 0 0-9 6 9.75 9.75 0 0 0 9 6 9.75 9.75 0 0 0 8.998-6 9.75 9.75 0 0 0-8.997-6' style='fill:%23231f20;fill:color(display-p3 .1373 .1216 .1255);fill-opacity:1'/%3E%3C/g%3E%3C/svg%3E") no-repeat; }

body.login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao { display: block; }
body.login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao button { max-width: 100%; min-height: 48px;}
section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao button b { letter-spacing: -0.01em; font: 700 18px/16px 'Montserrat', sans-serif; color: #FFFFFF; transition: all .5s ease; }
body.login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao p.enviando { max-width: 100%; text-align: center; margin-top: 12px;font: 700 17px / 16px 'Montserrat', sans-serif;letter-spacing: -0.01em;text-transform: lowercase; }
body.login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao .retornoAjax { width: 100%; text-align: center; margin-top: 12px; }

body.login p.linkCadastro { text-align: center; font: 400 14px/20px 'Montserrat', sans-serif; color: #231F2080; margin-top: 10px; text-transform: lowercase; }
body.login p.linkCadastro:first-of-type { margin-top: 28px; display: flex; gap: 16px; }
body.login p.linkCadastro a { color: #231F20; text-decoration: underline; text-decoration-color: #231F2040; text-underline-offset: 2px; transition: text-decoration-color .3s ease; display: flex; gap: 8px; align-items: center; }
body.login p.linkCadastro a:hover { text-decoration-color: #231F20; }
body.login p.linkCadastro a b { font-weight: 600; }
body.login p.linkCadastro a svg { width: 14px; height: 10px; color: #231F20; opacity: 0.32; transition: all ease 0.5s; }
body.login p.linkCadastro a:hover svg { opacity: 1; }
body.login p.linkCadastro a svg path { transition: all ease 0.5s; }
body.login p.linkCadastro a:hover svg path { opacity: 1; }

/* Recuperar/redefinir senha (recuperarSenha.php/redefinirSenha.php - reaproveitam body.login) */
body.login p.confirmacaoEnvio,
body.login p.linkExpirado { text-align: center; font: 400 15px/24px 'Montserrat', sans-serif; color: #231F20; margin: 0; }
body.login p.confirmacaoEnvio + p.confirmacaoEnvio { margin-top: 16px; }
body.login p.confirmacaoEnvio b,
body.login p.linkExpirado b { font-weight: 700; }

.boxSucesso{}
    .boxSucesso .topoSucesso{display: flex; flex-direction: column; align-items: center; justify-content: center;gap:8px;    margin: 30px auto 20px;}
        .boxSucesso .topoSucesso em.icone{display: block;width: 40px; height: 40px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 40 40'%3E%3Cpath fill='%2354a141' d='M20 0c2.087 0 4.103.32 5.999.916l.142.045-.919 2.928-.142-.045A17 17 0 0 0 20 3.068c-9.351 0-16.932 7.58-16.932 16.932S10.648 36.932 20 36.932 36.932 29.352 36.932 20a17 17 0 0 0-.774-5.08l-.045-.142.143-.045 2.641-.83.142-.044.045.142C39.679 15.897 40 17.913 40 20c0 11.046-8.954 20-20 20S0 31.046 0 20 8.955 0 20 0m15.566 3.336L37.749 5.3l.11.099-.098.111-18.642 20.71-.106.117-8.05-8.05-.105-.105.104-.106 2.076-2.074.104-.106 5.75 5.748L35.355 3.347l.1-.11z' style='fill:%2354a141;fill:color(display-p3 .3294 .6314 .2549);fill-opacity:1'/%3E%3C/svg%3E") no-repeat; background-size: contain; }
        .boxSucesso .topoSucesso h2{color: #241F20;text-align: center;font-family: "Crimson Pro";font-size: 32px;font-weight: 700;line-height: 28px; letter-spacing: -0.02em;}
    .boxSucesso p{}

.topoErro{display: flex; flex-direction: column; align-items: center; justify-content: center;gap:8px;    margin: 30px auto 20px;}
    .topoErro em.icone{display: block;width: 40px; height: 40px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 40 40'%3E%3Cpath fill='%23d22e2e' fill-rule='evenodd' d='m21.972 20 6.456 6.456-1.974 1.972L20 21.974l-6.454 6.456-1.972-1.974L18.026 20l-6.454-6.456 1.972-1.972L20 18.028l6.456-6.456 1.972 1.972z' clip-rule='evenodd' style='fill:%23d22e2e;fill:color(display-p3 .8235 .1804 .1804);fill-opacity:1'/%3E%3Cpath fill='%23d22e2e' fill-rule='evenodd' d='M20 37.21a17.21 17.21 0 1 1 0-34.42 17.21 17.21 0 0 1 0 34.42M0 20c0 11.046 8.954 20 20 20s20-8.954 20-20S31.046 0 20 0 0 8.954 0 20' clip-rule='evenodd' style='fill:%23d22e2e;fill:color(display-p3 .8235 .1804 .1804);fill-opacity:1'/%3E%3C/svg%3E") no-repeat; background-size: contain; }
        .topoErro h2{color: #241F20;text-align: center;font-family: "Crimson Pro";font-size: 32px;font-weight: 700;line-height: 28px; letter-spacing: -0.02em;}


/* Botão "voltar para o login" (recuperarSenha.php, depois de enviar o link) - mesmo visual sólido do
botão de "enviar link" (section.carrinho .boxEtapas .botoesAcao button em carrinho_finalizar.css), só que
num <a> (é navegação simples pra login, não um submit). */
/* Especificidade igual ao prefixo de section.carrinho .centro .pedidoInfos .boxEtapas .botoesAcao a b
(carrinho_finalizar.css) de propósito - essa regra genérica (opacity: 0.32, color: #231F20) senão ganha da
daqui e deixa o texto do botão escuro-sobre-escuro/apagado. */
section.carrinho .centro .pedidoInfos .boxEtapas .botoesAcao a.botaoVoltarLogin { max-width: 345px; width: 100%; min-height: 48px; margin: 20px auto 0; display: flex; align-items: center; justify-content: center; border: solid 2px #231F20; background: #231F20; cursor: pointer; transition: all .5s ease; }
section.carrinho .centro .pedidoInfos .boxEtapas .botoesAcao a.botaoVoltarLogin b { font: 700 18px/16px 'Montserrat', sans-serif; letter-spacing: -0.01em; color: #FFFFFF; opacity: 1; text-transform: lowercase; text-align: center; transition: all .5s ease; }
section.carrinho .centro .pedidoInfos .boxEtapas .botoesAcao a.botaoVoltarLogin:hover { background: #FFF; }
section.carrinho .centro .pedidoInfos .boxEtapas .botoesAcao a.botaoVoltarLogin:hover b { color: #231F20; }
body.login p.linkExpirado a { color: #231F20; text-decoration: underline; text-decoration-color: #231F2040; text-underline-offset: 2px; transition: text-decoration-color .3s ease; }
body.login p.linkExpirado a:hover { text-decoration-color: #231F20; }



._320 .login section.carrinho {
    padding: 40px 0 0 0;
}
._320 .login section.carrinho::before {}

._320 .login section.carrinho .centro {padding-bottom: 40px;}
._320 .login section.carrinho .centro .pedidoInfos { }

._320 .login section.carrinho .centro .pedidoInfos .topo { }
._320 .login section.carrinho .centro .pedidoInfos .topo h1 { }
._320 .login section.carrinho .centro .pedidoInfos .topo h1 a { }
._320 section.carrinho .centro .pedidoInfos .topo h1 a figure { }
._320 section.carrinho .centro .pedidoInfos .topo h1 a figure.logoTemporal { }

._320 .login section.carrinho .centro .pedidoInfos .infoCadastro .cadastroInfos { }
._320 .login section.carrinho .centro .pedidoInfos h4 { }
._320 .login section.carrinho .centro .pedidoInfos h3 { }

._320 .login .etapa.loginEtapa .cadastroInfos form .box { }
._320 .login .etapa.loginEtapa .cadastroInfos form .box:nth-of-type(2) { }
._320 .login .etapa.loginEtapa .cadastroInfos form .box label { }

._320 .login .etapa.loginEtapa .cadastroInfos form .box label a:link,
._320 .login .etapa.loginEtapa .cadastroInfos form .box label a:visited,
._320 .login .etapa.loginEtapa .cadastroInfos form .box label a:active { }
._320 .login .etapa.loginEtapa .cadastroInfos form .box label a:hover { }

._320 section.carrinho .centro .pedidoInfos .cadastroInfos .box input { }
._320 section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha { }
._320 section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha::before { }
._320 section.carrinho .centro .pedidoInfos .cadastroInfos .box .mostrarSenha.ativo::before { }

._320 .login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao { }
._320 .login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao button { }
._320 section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao button b { }
._320 .login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao p.enviando { }
._320 .login section.carrinho .centro .pedidoInfos .boxEtapas form .botoesAcao .retornoAjax { }

._320 .login p.linkCadastro { }
._320 .login p.linkCadastro:first-of-type { }
._320 .login p.linkCadastro a { }
._320 .login p.linkCadastro a:hover { }
._320 .login p.linkCadastro a b { }
._320 .login p.linkCadastro a svg { }
._320 .login p.linkCadastro a:hover svg { }
._320 .login p.linkCadastro a svg path { }
._320 .login p.linkCadastro a:hover svg path { }


._320 section.carrinho .rodape { padding: 15px 20px; }
._320 section.carrinho .rodape .wrapperRodape { flex-direction: column-reverse; gap: 14px; }
._320 section.carrinho .rodape span { text-align: center; }
._320 section.carrinho .rodape nav { flex-wrap: wrap; gap: 10px; justify-content: center; }
._320 section.carrinho .rodape nav > p{display: none}
._320 section.carrinho .rodape nav a b { width: 100%; display: block; max-width: fit-content; }
