/* CHAMA AÊ V2.5.26 - LOGIN PREMIUM ADMIN / CLIENTE / MOTORISTA */
#authPage.auth-page{
  min-height:100vh;
  min-height:100dvh;
  grid-template-columns:minmax(390px,32vw) 1fr;
  background:#fff;
}
#authPage .auth-panel{
  position:relative;
  z-index:2;
  padding:clamp(30px,4vw,64px);
  background:#fff;
  box-shadow:18px 0 50px rgba(7,27,77,.05);
  overflow:auto;
}
#authPage .auth-card{
  max-width:470px;
  width:100%;
  margin:auto;
}
#authPage .auth-card > img[src="brand.svg"],
#authPage .v25-auth-brand{
  display:block;
  width:min(330px,90%)!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:0 0 38px!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  mix-blend-mode:multiply;
  object-fit:contain;
  object-position:left center;
}
#authPage .auth-card h2{
  margin:0 0 8px;
  color:#071b4d;
  font-size:clamp(30px,2.2vw,38px);
  line-height:1.08;
  letter-spacing:-.8px;
  font-weight:900;
}
#authPage .auth-card > .muted,
#authPage .auth-card h2 + .muted{
  margin:0 0 27px;
  color:#66758f;
  font-size:16px;
  line-height:1.55;
}
#authPage .auth-switch{
  margin:0 0 22px;
  padding:5px;
  border-radius:15px;
  background:#f0f4f9;
  border:1px solid #e4ebf3;
}
#authPage .auth-switch button{
  min-height:43px;
  border-radius:11px;
  font-weight:850;
}
#authPage .auth-switch button.active{
  background:#fff;
  color:#071b4d;
  box-shadow:0 5px 16px rgba(7,27,77,.09);
}
#authPage .field{
  margin-bottom:16px;
}
#authPage .field label{
  margin:0 0 7px;
  color:#102a56;
  font-size:13px;
  font-weight:850;
}
#authPage input,
#authPage select,
#authPage textarea{
  min-height:54px;
  border:1px solid #d6e0ec;
  border-radius:14px;
  background:#fbfcff;
  color:#071b4d;
  padding:13px 15px;
  box-shadow:0 1px 2px rgba(7,27,77,.02) inset;
}
#authPage input:focus,
#authPage select:focus,
#authPage textarea:focus{
  border-color:#15b84e;
  background:#fff;
  box-shadow:0 0 0 4px rgba(21,184,78,.11);
}
#authPage .btn.full{
  min-height:54px;
  border-radius:14px;
  font-size:16px;
  font-weight:900;
  background:linear-gradient(135deg,#13b849,#1ccb5b);
  box-shadow:0 12px 26px rgba(22,184,78,.22);
}
#authPage .btn.full:hover{
  transform:translateY(-1px);
  box-shadow:0 15px 30px rgba(22,184,78,.26);
}
#authPage .auth-card::after{
  content:"✓  Acesso seguro e protegido";
  display:block;
  margin:28px auto 0;
  text-align:center;
  color:#687991;
  font-size:13px;
  font-weight:650;
}
#authPage .auth-visual{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(58px,6vw,108px);
  background:
    radial-gradient(circle at 94% 10%,rgba(50,208,176,.20) 0 14%,transparent 14.2%),
    radial-gradient(circle at 2% 94%,rgba(112,151,225,.17) 0 13%,transparent 13.2%),
    linear-gradient(135deg,#06183f 0%,#0b2f69 45%,#075d66 73%,#0ab857 100%);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
#authPage .auth-visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  border-radius:0;
  background-image:radial-gradient(rgba(255,255,255,.105) 1.2px,transparent 1.2px);
  background-size:26px 26px;
  background-position:18px 18px;
  opacity:.22;
}
#authPage .auth-visual::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:5%;
  right:-8%;
  bottom:-15%;
  height:42%;
  border-radius:50% 50% 0 0 / 40% 40% 0 0;
  background:
    repeating-radial-gradient(ellipse at 55% 100%,transparent 0 21px,rgba(38,229,137,.19) 22px 23px,transparent 24px 39px);
  opacity:.8;
}
#authPage .auth-visual .auth-logo{
  display:none!important;
}
#authPage .auth-visual h1{
  position:relative;
  z-index:2;
  max-width:790px;
  margin:0 0 28px;
  color:#fff;
  font-size:clamp(48px,5.1vw,82px);
  line-height:.98;
  letter-spacing:-3px;
  font-weight:950;
  text-wrap:balance;
}
#authPage .auth-visual h1::after{
  content:"";
  display:inline-block;
  width:.16em;
  height:.16em;
  margin-left:.08em;
  border-radius:50%;
  background:#19d568;
  vertical-align:.08em;
  box-shadow:0 0 22px rgba(25,213,104,.5);
}
#authPage .auth-visual > p{
  position:relative;
  z-index:2;
  max-width:760px;
  margin:0;
  color:#e3ebf7;
  font-size:clamp(18px,1.35vw,22px);
  line-height:1.55;
}
#authPage .auth-premium-features{
  position:relative;
  z-index:2;
  width:min(810px,100%);
  display:grid;
  grid-template-columns:repeat(4,minmax(120px,1fr));
  gap:22px;
  margin-top:50px;
}
#authPage .auth-feature-item{
  min-width:0;
}
#authPage .auth-feature-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  margin-bottom:13px;
  border:1px solid rgba(142,220,202,.32);
  border-radius:16px;
  background:rgba(2,28,71,.23);
  color:#27df76;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(5px);
}
#authPage .auth-feature-icon svg{
  width:30px;
  height:30px;
  display:block;
}
#authPage .auth-feature-item strong{
  display:block;
  color:#fff;
  font-size:15px;
  line-height:1.25;
  font-weight:850;
}
#authPage .auth-feature-item span{
  display:block;
  margin-top:4px;
  color:#d8e5f3;
  font-size:13px;
  line-height:1.35;
}
@media (max-width:1120px){
  #authPage.auth-page{grid-template-columns:minmax(370px,42vw) 1fr}
  #authPage .auth-premium-features{grid-template-columns:repeat(2,minmax(150px,1fr));max-width:520px}
  #authPage .auth-visual h1{font-size:clamp(44px,5vw,65px)}
}
@media (max-width:980px){
  #authPage.auth-page{display:block;background:#fff}
  #authPage .auth-panel{min-height:100vh;min-height:100dvh;padding:30px 22px;display:flex;align-items:center;box-shadow:none}
  #authPage .auth-visual{display:none!important}
  #authPage .auth-card{max-width:520px}
  #authPage .auth-card > img[src="brand.svg"],#authPage .v25-auth-brand{width:min(300px,84vw)!important;margin-bottom:32px!important}
}
@media (max-width:560px){
  #authPage .auth-panel{padding:24px 18px}
  #authPage .auth-card > img[src="brand.svg"],#authPage .v25-auth-brand{width:min(260px,78vw)!important;margin-bottom:28px!important}
  #authPage .auth-card h2{font-size:29px}
  #authPage .auth-card > .muted,#authPage .auth-card h2 + .muted{font-size:15px;margin-bottom:22px}
  #authPage input,#authPage select,#authPage textarea,#authPage .btn.full{min-height:52px}
}
