/* Login V2: camada isolada para o acesso publico. */
.login-v2-view{padding:24px!important;place-items:center!important;background:#eef3fb!important;overflow:auto}
.login-v2-shell{width:min(1060px,100%);min-height:620px;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);background:#fff;border:1px solid #d9e2f2;border-radius:28px;overflow:hidden;box-shadow:0 26px 70px rgba(37,55,98,.18)}
.login-v2-brand{position:relative;display:flex;flex-direction:column;gap:38px;padding:40px;background:linear-gradient(145deg,#253e9c,#4266cd 58%,#6291eb);color:#fff;overflow:hidden}
.login-v2-brand:before,.login-v2-brand:after{content:'';position:absolute;border-radius:50%;pointer-events:none}.login-v2-brand:before{width:390px;height:390px;right:-220px;bottom:-130px;background:rgba(129,169,255,.24)}.login-v2-brand:after{width:210px;height:210px;left:-115px;top:90px;border:1px solid rgba(255,255,255,.18)}
.login-v2-brand>*{position:relative;z-index:1}.login-v2-brand-top{display:flex;align-items:center;gap:12px;font-size:20px}.login-v2-brand .login-mark{width:48px!important;height:48px!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important}.login-v2-brand .login-mark img{width:100%;height:100%;object-fit:contain}.login-v2-brand .brand-word,.login-v2-brand .brand-domain{color:#fff!important}.login-v2-brand .brand-domain{opacity:.78}
.login-v2-brand-copy{display:grid;gap:13px;margin-top:auto}.login-v2-brand-copy p,.login-v2-heading p{margin:0;font-weight:900;font-size:12px;letter-spacing:.09em}.login-v2-brand-copy h1{margin:0!important;color:#fff!important;font-size:clamp(32px,4vw,46px)!important;line-height:1.08!important;letter-spacing:0!important}.login-v2-brand-copy h1 span{color:#b9d8ff}.login-v2-brand-copy>span{max-width:370px;font-size:15px;line-height:1.55;color:#e4edff}
.login-v2-brand-points{display:grid;gap:11px}.login-v2-brand-points div{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;color:#eef5ff}.login-v2-brand-points i{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.16);font-style:normal}.login-v2-brand small{color:#d7e5ff;font-size:12px;margin-top:auto}
.login-v2-form-area{display:grid;place-items:center;padding:42px;background:linear-gradient(145deg,#fff,#f6f9ff)}.login-v2-card{width:min(410px,100%)!important;padding:0!important;display:grid!important;gap:17px!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}.login-v2-card label{gap:8px!important;font-size:13px!important;color:#263858!important}.login-v2-card input:not([type=checkbox]){min-height:50px!important;border-radius:12px!important;border-color:#d5deed!important;background:#fff!important;box-shadow:none!important;color:#10213f!important}.login-v2-heading{display:grid;gap:9px;margin-bottom:12px}.login-v2-heading p{color:#3b62c4}.login-v2-heading h2{margin:0;color:#15284c;font-size:30px;letter-spacing:0}.login-v2-heading span,.login-v2-privacy{font-size:14px;line-height:1.5;color:#71809a}.login-password-wrap{grid-template-columns:minmax(0,1fr) 44px!important}.login-eye{width:44px;height:44px;border:0!important;border-radius:12px!important;background:#edf3ff!important;color:#3157ac!important;box-shadow:none!important}.login-eye svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}
.login-human-check{display:flex!important;align-items:center;gap:10px;cursor:pointer;width:max-content;margin-top:2px}.login-human-check input{position:absolute;opacity:0;pointer-events:none}.login-human-box{width:22px;height:22px;display:grid;place-items:center;border:1px solid #b9c9e4;border-radius:6px;background:#fff;color:transparent;font-size:14px;line-height:1;transition:.18s ease}.login-human-check input:checked+.login-human-box{background:#2f62d4;border-color:#2f62d4;color:#fff}.login-human-check input:focus-visible+.login-human-box{outline:3px solid rgba(47,98,212,.24);outline-offset:2px}.login-human-error{margin:-7px 0 0;color:#c62828;font-size:12px;font-weight:750}.login-v2-card .primary{min-height:52px;border-radius:12px!important;background:linear-gradient(135deg,#1f4dc0,#3d78e9)!important;color:#fff!important;font-weight:850;box-shadow:0 12px 24px rgba(39,83,190,.25)!important}.login-v2-card .primary span{margin-left:8px;font-size:17px}.login-v2-card .forgot-link{justify-self:start;margin:0;padding:0;background:transparent!important;color:#2856b5!important;border:0!important;border-radius:0!important;box-shadow:none!important;font-weight:800}.login-v2-privacy{margin:2px 0 0;font-size:12px}.login-v2-view>.mc-footer{position:fixed;left:0;right:0;bottom:8px;z-index:2;justify-content:center;color:#60708c}
@media(max-width:760px){.login-v2-view{padding:0!important;align-items:stretch!important}.login-v2-shell{min-height:100svh;border:0;border-radius:0;grid-template-columns:1fr;box-shadow:none}.login-v2-brand{min-height:245px;padding:28px 24px;gap:18px}.login-v2-brand-copy{margin-top:12px}.login-v2-brand-copy h1{font-size:31px!important}.login-v2-brand-copy>span,.login-v2-brand-points,.login-v2-brand small{display:none}.login-v2-form-area{padding:34px 24px 92px;align-items:start}.login-v2-card{gap:15px!important}.login-v2-heading h2{font-size:27px}.login-v2-view>.mc-footer{position:static;padding:0 20px 20px;background:#f6f9ff;display:grid;gap:4px;text-align:center}.login-v2-view>.mc-footer .mc-footer-link{justify-self:center}}

/* The access footer participates in the page flow so it never overlaps its content. */
.login-v2-view>.mc-footer{position:relative;left:auto;right:auto;bottom:auto;display:flex;min-height:56px;padding:14px 18px;background:#f6f9ff}
@media(max-width:760px){.login-v2-view>.mc-footer{display:flex;padding:14px 18px 22px}.login-v2-view>.mc-footer .mc-footer-link{justify-self:auto}}

/* A tela de acesso e independente da landing. Mantem o formulario visivel
   enquanto nenhum fluxo explicito (recuperacao ou sessao autenticada) o oculta. */
#loginView.login-v2-view:not(.hidden){
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}
#twoFactorView.login-v2-view:not(.hidden){display:grid!important;align-items:start!important;justify-items:center!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;visibility:visible!important;opacity:1!important}
#twoFactorView .two-factor-shell{margin:0 auto 24px}
.two-factor-card{gap:14px!important}.two-factor-enrollment{display:grid;gap:12px;padding:14px;border:1px solid #d7e2f5;border-radius:14px;background:#f6f9ff}.two-factor-enrollment ol{display:grid;gap:5px;margin:0;padding-left:20px;color:#53647f;font-size:12px;line-height:1.45}.two-factor-secret{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.two-factor-secret input{min-width:0!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:12px!important;letter-spacing:.05em}.two-factor-secret button,.two-factor-open-app{min-height:42px;padding:0 12px;border:1px solid #c8d7f0;border-radius:10px;background:#fff;color:#2653ad;font:inherit;font-size:12px;font-weight:850;cursor:pointer}.two-factor-open-app{display:flex;align-items:center;justify-content:center;text-decoration:none}.two-factor-enrollment small{font-size:11px;line-height:1.45;color:#72819a}.two-factor-recovery-toggle{margin-top:-2px}.two-factor-card input[name=code]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.22em;font-size:21px!important;font-weight:850;text-align:center}.two-factor-recovery-codes{display:grid;gap:10px;padding:15px;border:1px solid #b9cbed;border-radius:14px;background:#f5f8ff}.two-factor-recovery-codes strong{color:#183873;font-size:15px}.two-factor-recovery-codes p{margin:0;color:#5f708c;font-size:12px;line-height:1.5}.two-factor-recovery-codes textarea{min-height:130px;resize:vertical;border:1px solid #c9d7ed;border-radius:10px;background:#fff;color:#1f3970;font:700 14px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.05em;padding:11px}.two-factor-recovery-codes .login-human-check{width:auto}.two-factor-recovery-codes .primary{width:100%}
.two-factor-enrollment[hidden],.two-factor-recovery-codes[hidden]{display:none!important}
.two-factor-qr[hidden]{display:none!important}
#twoFactorView .login-v2-form-area{display:flex;flex-direction:column;align-items:center;justify-content:center}
#twoFactorView .two-factor-footer{width:min(410px,100%);min-height:0;margin:18px 0 0;padding:12px 0 0;background:transparent!important;border-top:1px solid #dbe5f4;color:#66758c;text-align:center}
#twoFactorView .two-factor-footer .mc-footer-copy{display:flex;flex-wrap:wrap;justify-content:center;gap:3px 10px;line-height:1.45}
.two-factor-qr{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;align-items:center;padding:12px;border:1px solid #d7e2f5;border-radius:14px;background:#fff}
.two-factor-qr-code{display:grid;width:112px;height:112px;place-items:center;overflow:hidden;border-radius:10px;background:#fff}
.two-factor-qr-code svg{display:block;width:104px;height:104px}
.two-factor-qr strong{display:block;margin-bottom:5px;color:#183873;font-size:13px}
.two-factor-qr span{display:block;color:#5f708c;font-size:11px;line-height:1.45}
@media(max-width:520px){.two-factor-qr{grid-template-columns:1fr;justify-items:center;text-align:center}.two-factor-qr-code{width:128px;height:128px}.two-factor-qr-code svg{width:120px;height:120px}#twoFactorView .two-factor-footer{margin-top:14px}}

/* Login isolado: o shell anterior só fica disponível para perfis ainda não migrados. */
.login-v2-card .primary{background:#3453b8!important;box-shadow:0 12px 24px rgba(52,83,184,.25)!important}
.login-v2-brand .brand-domain,.login-v2-brand small{color:#fff!important;opacity:1}
body.mc-login-page:not(.legacy-runtime-active) #appShell,
body.mc-login-page #guidedTour,
body.mc-login-page #lgpdModal,
body.mc-login-page .mc-footer-link{display:none!important}
/* Uma única marca durante o carregamento: o anel é CSS e o logo é a imagem real. */
#loginLoading .loading-orb{position:relative;display:grid;place-items:center;width:108px;height:108px;background:transparent!important;box-shadow:none!important;animation:none!important}
#loginLoading .loading-orb::before{content:''!important;display:block!important;position:absolute;inset:3px;border:3px solid #dbe7ff;border-top-color:#315fca;border-radius:50%;animation:mc-login-orbit .8s linear infinite}
#loginLoading .loading-orb::after{content:none!important;display:none!important}
#loginLoading .loading-orb img{position:relative;z-index:1;display:block;width:80px!important;height:80px!important;object-fit:contain;image-rendering:auto;transform:none!important;animation:none!important}
#loginLoading .loading-brand-name{display:inline-flex;align-items:baseline;justify-content:center;gap:1px;margin-top:-2px;color:#16366f;line-height:1;letter-spacing:-.025em}
#loginLoading .loading-brand-name b,#loginLoading .loading-brand-name span{font-size:20px;font-weight:900}
#loginLoading .loading-brand-name span{color:#315fca}
@keyframes mc-login-orbit{to{transform:rotate(360deg)}}
/* Acesso flutuante ao chat para o líder no painel operacional legado. */
.mc-leader-chat-fab{position:fixed;right:26px;bottom:26px;z-index:85;display:grid;width:58px;height:58px;place-items:center;padding:0;border:0;border-radius:50%;background:#2859ba;color:#fff;box-shadow:0 13px 28px rgba(23,59,139,.34);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.mc-leader-chat-fab:hover{transform:translateY(-2px);box-shadow:0 17px 30px rgba(23,59,139,.4)}.mc-leader-chat-fab:focus-visible{outline:3px solid #9cb8ff;outline-offset:4px}.mc-leader-chat-fab svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mc-leader-chat-fab b{position:absolute;top:-4px;right:-4px;display:grid;min-width:22px;height:22px;place-items:center;padding:0 4px;border:2px solid #f3f6fb;border-radius:12px;background:#bd344b;color:#fff;font-size:10px;font-weight:900}@media(max-width:760px){.mc-leader-chat-fab{right:17px;bottom:calc(17px + env(safe-area-inset-bottom,0px));width:54px;height:54px}.mc-leader-chat-fab svg{width:25px;height:25px}}
