/* Martins Select — Login e Cadastro no mesmo padrão visual da Home */
:root{
  --auth-bg:#000;
  --auth-card:#080808;
  --auth-card-2:#0c0c0c;
  --auth-line:rgba(255,255,255,.12);
  --auth-line-strong:rgba(255,255,255,.22);
  --auth-text:#fff;
  --auth-muted:rgba(255,255,255,.66);
}

html{
  min-height:100%;
  background:#000!important;
}

body.ms-auth-page,
body.ms-login-page,
body.ms-cadastro-page{
  min-height:100vh!important;
  min-height:100svh!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  background:#000!important;
  background-image:none!important;
  color:#fff!important;
  overflow-x:hidden!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

body.ms-auth-page::before,
body.ms-auth-page::after,
body.ms-login-page::before,
body.ms-login-page::after,
body.ms-cadastro-page::before,
body.ms-cadastro-page::after{
  content:none!important;
  display:none!important;
}

/* Header idêntico ao da Home */
body.ms-auth-page .ms-final-header,
body.ms-login-page .ms-final-header,
body.ms-cadastro-page .ms-final-header{
  width:100%!important;
  min-height:82px!important;
  flex:0 0 auto!important;
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:9999!important;
  background:rgba(0,0,0,.965)!important;
  background-image:none!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}

body.ms-auth-page .ms-final-header-inner,
body.ms-login-page .ms-final-header-inner,
body.ms-cadastro-page .ms-final-header-inner{
  width:min(1180px,calc(100% - 44px))!important;
  min-height:82px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  position:relative!important;
}

body.ms-auth-page .ms-final-brand,
body.ms-login-page .ms-final-brand,
body.ms-cadastro-page .ms-final-brand{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-height:auto!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  color:#fff!important;
  text-decoration:none!important;
  line-height:1!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}

body.ms-auth-page .ms-final-mark,
body.ms-login-page .ms-final-mark,
body.ms-cadastro-page .ms-final-mark{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  flex:0 0 52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.ms-auth-page .ms-final-mark img,
body.ms-login-page .ms-final-mark img,
body.ms-cadastro-page .ms-final-mark img,
body.ms-auth-page .ms-logo-img,
body.ms-login-page .ms-logo-img,
body.ms-cadastro-page .ms-logo-img{
  display:block!important;
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.ms-auth-page .ms-final-nav,
body.ms-login-page .ms-final-nav,
body.ms-cadastro-page .ms-final-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  gap:22px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

body.ms-auth-page .ms-final-nav a,
body.ms-login-page .ms-final-nav a,
body.ms-cadastro-page .ms-final-nav a,
body.ms-auth-page .ms-final-nav a.ms-auth-btn,
body.ms-login-page .ms-final-nav a.ms-auth-btn,
body.ms-cadastro-page .ms-final-nav a.ms-auth-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:auto!important;
  margin:0!important;
  padding:0!important;
  color:rgba(255,255,255,.72)!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1!important;
  white-space:nowrap!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
  transition:color .18s ease!important;
}

body.ms-auth-page .ms-final-nav a:hover,
body.ms-login-page .ms-final-nav a:hover,
body.ms-cadastro-page .ms-final-nav a:hover,
body.ms-auth-page .ms-final-nav a.active,
body.ms-login-page .ms-final-nav a.active,
body.ms-cadastro-page .ms-final-nav a.active,
body.ms-auth-page .ms-final-nav a[aria-current="page"],
body.ms-login-page .ms-final-nav a[aria-current="page"],
body.ms-cadastro-page .ms-final-nav a[aria-current="page"]{
  color:#fff!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}

body.ms-auth-page .ms-final-menu-btn,
body.ms-login-page .ms-final-menu-btn,
body.ms-cadastro-page .ms-final-menu-btn{
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.06)!important;
  background-image:none!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

/* Estrutura principal */
body.ms-auth-page > main,
body.ms-login-page > main,
body.ms-cadastro-page > main{
  flex:1 0 auto!important;
  background:#000!important;
  background-image:none!important;
}

body.ms-login-page .login-wrap,
body.ms-cadastro-page .cadastro-wrap{
  width:min(1080px,calc(100% - 32px))!important;
  margin:0 auto!important;
  padding:54px 0 72px!important;
  align-items:stretch!important;
  gap:22px!important;
}

body.ms-login-page .login-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
}

body.ms-cadastro-page .cadastro-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr)!important;
}

body.ms-login-page .login-panel,
body.ms-login-page .login-card,
body.ms-cadastro-page .cadastro-hero,
body.ms-cadastro-page .cadastro-card{
  min-width:0!important;
  border:1px solid var(--auth-line)!important;
  border-radius:28px!important;
  background:#080808!important;
  background-image:none!important;
  box-shadow:none!important;
}

body.ms-login-page .login-panel,
body.ms-cadastro-page .cadastro-hero{
  padding:clamp(26px,4vw,46px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}

body.ms-login-page .login-card,
body.ms-cadastro-page .cadastro-card{
  padding:clamp(22px,3vw,32px)!important;
  align-self:stretch!important;
}

body.ms-login-page .login-panel h1,
body.ms-cadastro-page .cadastro-hero h1{
  margin:0 0 16px!important;
  color:#fff!important;
  font-size:clamp(36px,5vw,64px)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
}

body.ms-login-page .login-panel > p,
body.ms-cadastro-page .cadastro-hero > p{
  margin:0!important;
  color:var(--auth-muted)!important;
  font-size:15px!important;
  line-height:1.7!important;
}

body.ms-login-page .login-points,
body.ms-cadastro-page .steps{
  display:grid!important;
  gap:10px!important;
  margin-top:24px!important;
}

body.ms-login-page .login-points span,
body.ms-cadastro-page .steps span{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:13px 14px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:15px!important;
  background:#0d0d0d!important;
  color:rgba(255,255,255,.78)!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.5!important;
}

body.ms-cadastro-page .steps span b{
  display:grid!important;
  place-items:center!important;
  flex:0 0 25px!important;
  width:25px!important;
  height:25px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#000!important;
  font-size:11px!important;
}

body.ms-login-page .login-safe,
body.ms-cadastro-page .ms-data-safe{
  margin-top:18px!important;
  padding:13px 14px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:15px!important;
  background:#050505!important;
  color:rgba(255,255,255,.62)!important;
  font-size:12px!important;
  line-height:1.55!important;
}

body.ms-login-page .login-title h2{
  margin:0!important;
  color:#fff!important;
  font-size:28px!important;
  letter-spacing:-.04em!important;
}
body.ms-login-page .login-title p{
  margin:7px 0 22px!important;
  color:var(--auth-muted)!important;
  line-height:1.5!important;
}

body.ms-login-page form,
body.ms-cadastro-page .simple-form{
  display:grid!important;
  gap:14px!important;
}

body.ms-login-page .login-field,
body.ms-cadastro-page .field{
  display:grid!important;
  gap:7px!important;
}

body.ms-login-page .login-field label,
body.ms-cadastro-page .field label{
  margin:0!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
}

body.ms-cadastro-page .field label{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
}
body.ms-cadastro-page .field small{
  color:rgba(255,255,255,.45)!important;
  font-size:10px!important;
}

body.ms-login-page .login-field input,
body.ms-cadastro-page .field input{
  width:100%!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 15px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:15px!important;
  outline:0!important;
  background:#000!important;
  background-image:none!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:15px!important;
  font-weight:700!important;
}

body.ms-login-page .login-field input::placeholder,
body.ms-cadastro-page .field input::placeholder{
  color:rgba(255,255,255,.38)!important;
}

body.ms-login-page .login-field input:focus,
body.ms-cadastro-page .field input:focus{
  border-color:rgba(255,255,255,.52)!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.08)!important;
  background:#050505!important;
}

body.ms-login-page .login-btn,
body.ms-cadastro-page .btn.primary{
  width:100%!important;
  min-height:52px!important;
  margin:0!important;
  padding:12px 18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #fff!important;
  border-radius:999px!important;
  background:#fff!important;
  background-image:none!important;
  color:#000!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:950!important;
  cursor:pointer!important;
  transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

body.ms-login-page .login-btn:hover,
body.ms-cadastro-page .btn.primary:hover{
  background:#dcdcdc!important;
  border-color:#dcdcdc!important;
  color:#000!important;
  transform:translateY(-1px)!important;
}

body.ms-cadastro-page .btn.ghost{
  width:100%!important;
  min-height:50px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  background:#080808!important;
  background-image:none!important;
  color:#fff!important;
  box-shadow:none!important;
}
body.ms-cadastro-page .btn.ghost:hover{
  background:#111!important;
  border-color:rgba(255,255,255,.32)!important;
}

body.ms-login-page .login-actions,
body.ms-cadastro-page .actions{
  display:grid!important;
  gap:10px!important;
  margin-top:2px!important;
}

body.ms-login-page .login-forgot{
  margin-top:2px!important;
  text-align:center!important;
}
body.ms-login-page .login-forgot a,
body.ms-cadastro-page .login-call a{
  color:rgba(255,255,255,.78)!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:850!important;
}
body.ms-login-page .login-forgot a:hover,
body.ms-cadastro-page .login-call a:hover{
  color:#fff!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}

body.ms-login-page .login-alert,
body.ms-cadastro-page .alert,
body.ms-cadastro-page .password-note,
body.ms-cadastro-page .note,
body.ms-cadastro-page .ms-privacy-consent{
  border-radius:15px!important;
  box-shadow:none!important;
}

body.ms-login-page .login-alert.error,
body.ms-cadastro-page .alert.error{
  border:1px solid rgba(255,100,100,.32)!important;
  background:rgba(120,0,0,.18)!important;
  color:#ffd5d5!important;
}
body.ms-cadastro-page .alert.success,
body.ms-cadastro-page .password-note.ok{
  border:1px solid rgba(115,255,176,.25)!important;
  background:rgba(0,100,45,.18)!important;
  color:#d8ffe8!important;
}
body.ms-cadastro-page .note,
body.ms-cadastro-page .ms-privacy-consent{
  border:1px solid rgba(255,255,255,.12)!important;
  background:#050505!important;
  color:rgba(255,255,255,.70)!important;
}
body.ms-cadastro-page .ms-privacy-consent a{
  color:#fff!important;
}
body.ms-cadastro-page .ms-privacy-consent input:checked{
  background:#fff!important;
  border-color:#fff!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.10)!important;
}
body.ms-cadastro-page .ms-privacy-consent input:checked::after{
  color:#000!important;
}

/* Sem recurso de exibir senha */
body.ms-auth-page .password-toggle,
body.ms-auth-page .toggle-password,
body.ms-auth-page .show-password,
body.ms-auth-page [data-password-toggle],
body.ms-login-page .password-toggle,
body.ms-cadastro-page .password-toggle{
  display:none!important;
}
body.ms-auth-page input[type="password"]{
  padding-right:15px!important;
}

/* Footer da Home no fim da página */
body.ms-auth-page > .ms-footer-standard,
body.ms-login-page > .ms-footer-standard,
body.ms-cadastro-page > .ms-footer-standard{
  flex:0 0 auto!important;
  width:100%!important;
  margin-top:auto!important;
  position:relative!important;
  inset:auto!important;
  background:linear-gradient(180deg,#050505,#000)!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}

@media(max-width:1080px){
  body.ms-auth-page .ms-final-header-inner,
  body.ms-login-page .ms-final-header-inner,
  body.ms-cadastro-page .ms-final-header-inner{
    width:calc(100% - 32px)!important;
    gap:18px!important;
  }
  body.ms-auth-page .ms-final-nav,
  body.ms-login-page .ms-final-nav,
  body.ms-cadastro-page .ms-final-nav{
    gap:16px!important;
  }
  body.ms-auth-page .ms-final-nav a,
  body.ms-login-page .ms-final-nav a,
  body.ms-cadastro-page .ms-final-nav a{
    font-size:12.5px!important;
  }
}

@media(max-width:860px){
  body.ms-auth-page .ms-final-header,
  body.ms-login-page .ms-final-header,
  body.ms-cadastro-page .ms-final-header{
    min-height:auto!important;
  }
  body.ms-auth-page .ms-final-header-inner,
  body.ms-login-page .ms-final-header-inner,
  body.ms-cadastro-page .ms-final-header-inner{
    width:calc(100% - 22px)!important;
    min-height:74px!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:10px!important;
    padding:10px 0!important;
  }
  body.ms-auth-page .ms-final-menu-btn,
  body.ms-login-page .ms-final-menu-btn,
  body.ms-cadastro-page .ms-final-menu-btn{
    display:flex!important;
  }
  body.ms-auth-page .ms-final-nav,
  body.ms-login-page .ms-final-nav,
  body.ms-cadastro-page .ms-final-nav{
    grid-column:1 / -1!important;
    display:none!important;
    width:100%!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:0!important;
    padding:6px 0 0!important;
    position:static!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.ms-auth-page .ms-final-nav.open,
  body.ms-auth-page .ms-final-nav.is-open,
  body.ms-login-page .ms-final-nav.open,
  body.ms-login-page .ms-final-nav.is-open,
  body.ms-cadastro-page .ms-final-nav.open,
  body.ms-cadastro-page .ms-final-nav.is-open{
    display:flex!important;
  }
  body.ms-auth-page .ms-final-nav a,
  body.ms-login-page .ms-final-nav a,
  body.ms-cadastro-page .ms-final-nav a,
  body.ms-auth-page .ms-final-nav a.ms-auth-btn,
  body.ms-login-page .ms-final-nav a.ms-auth-btn,
  body.ms-cadastro-page .ms-final-nav a.ms-auth-btn{
    width:100%!important;
    min-height:46px!important;
    padding:0!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
    border-radius:0!important;
    font-size:13px!important;
  }
  body.ms-login-page .login-wrap,
  body.ms-cadastro-page .cadastro-wrap{
    width:min(590px,calc(100% - 22px))!important;
    grid-template-columns:1fr!important;
    padding:28px 0 48px!important;
  }
  body.ms-login-page .login-panel,
  body.ms-login-page .login-card,
  body.ms-cadastro-page .cadastro-hero,
  body.ms-cadastro-page .cadastro-card{
    border-radius:22px!important;
  }
  body.ms-login-page .login-panel h1,
  body.ms-cadastro-page .cadastro-hero h1{
    font-size:clamp(34px,10vw,48px)!important;
  }
}

@media(max-width:420px){
  body.ms-auth-page .ms-final-header-inner,
  body.ms-login-page .ms-final-header-inner,
  body.ms-cadastro-page .ms-final-header-inner{
    width:calc(100% - 14px)!important;
  }
  body.ms-auth-page .ms-final-mark,
  body.ms-login-page .ms-final-mark,
  body.ms-cadastro-page .ms-final-mark,
  body.ms-auth-page .ms-final-mark img,
  body.ms-login-page .ms-final-mark img,
  body.ms-cadastro-page .ms-final-mark img,
  body.ms-auth-page .ms-logo-img,
  body.ms-login-page .ms-logo-img,
  body.ms-cadastro-page .ms-logo-img{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    max-width:46px!important;
    max-height:46px!important;
    flex-basis:46px!important;
  }
  body.ms-login-page .login-panel,
  body.ms-login-page .login-card,
  body.ms-cadastro-page .cadastro-hero,
  body.ms-cadastro-page .cadastro-card{
    padding:19px!important;
  }
}
