/* Inscrevi V5.9.60 — Padronização Home/Login
   Escopo restrito às telas públicas/autenticação. Sem JS e sem alteração de regra de negócio. */

:root{
  --authpad-bg:#f3f7fb;
  --authpad-card:#ffffff;
  --authpad-line:rgba(15,46,82,.10);
  --authpad-text:#0d1b2a;
  --authpad-muted:#64748b;
  --authpad-blue:#1565d8;
  --authpad-teal:#14b8a6;
  --authpad-navy:#0f2e52;
  --authpad-shadow:0 26px 70px rgba(15,23,42,.10);
}

/* Mantém login e cadastro com a mesma lógica visual da home pública: topo, conteúdo central e rodapé no fim. */
@supports selector(body:has(*)){
  body:has(.auth-shell),
  body:has(.login-shell),
  body:has(.auth-card),
  body:has(.login-card),
  body:has(.auth-panel){
    min-height:100dvh!important;
    display:flex!important;
    flex-direction:column!important;
    background:
      radial-gradient(circle at 83% 8%,rgba(20,184,166,.18),transparent 28rem),
      radial-gradient(circle at 8% 0,rgba(21,101,216,.06),transparent 22rem),
      var(--authpad-bg)!important;
  }

  body:has(.auth-shell) main,
  body:has(.login-shell) main,
  body:has(.auth-card) main,
  body:has(.login-card) main,
  body:has(.auth-panel) main,
  body:has(.auth-shell) .container,
  body:has(.login-shell) .container,
  body:has(.auth-card) .container,
  body:has(.login-card) .container,
  body:has(.auth-panel) .container{
    flex:1 0 auto;
  }

  body:has(.auth-shell) footer,
  body:has(.login-shell) footer,
  body:has(.auth-card) footer,
  body:has(.login-card) footer,
  body:has(.auth-panel) footer{
    margin-top:auto!important;
  }
}

/* Área central de autenticação */
.auth-shell,
.login-shell,
.auth-page,
.login-page,
.auth-wrapper,
.login-wrapper{
  width:min(1040px,calc(100vw - 48px))!important;
  margin:0 auto!important;
  min-height:calc(100dvh - 210px)!important;
  display:grid!important;
  align-items:center!important;
  justify-content:center!important;
  padding:26px 0 34px!important;
}

.auth-card,
.login-card,
.auth-container,
.login-container,
.auth-panel-wrap{
  width:min(920px,100%)!important;
  margin:0 auto!important;
  border-radius:26px!important;
  overflow:hidden!important;
  box-shadow:var(--authpad-shadow)!important;
  border:1px solid var(--authpad-line)!important;
  background:var(--authpad-card)!important;
}

/* Caso a tela de login esteja em grid/flex, mantém as duas colunas alinhadas e com a mesma altura. */
.auth-card,
.login-card,
.auth-container,
.login-container{
  align-items:stretch!important;
}

.auth-card > *,
.login-card > *,
.auth-container > *,
.login-container > *{
  min-width:0;
}

/* Painel escuro à esquerda */
.auth-brand,
.auth-hero,
.auth-side,
.login-brand,
.login-hero,
.login-side,
[class*="auth-left"],
[class*="login-left"]{
  background:radial-gradient(circle at 12% 10%,rgba(20,184,166,.22),transparent 19rem),linear-gradient(135deg,#062b35,#0f2e52 58%,#081827)!important;
  color:#fff!important;
  padding:42px!important;
}

.auth-brand h1,
.auth-hero h1,
.auth-side h1,
.login-brand h1,
.login-hero h1,
.login-side h1,
[class*="auth-left"] h1,
[class*="login-left"] h1{
  color:#fff!important;
  font-size:clamp(2rem,2.6vw,3rem)!important;
  letter-spacing:-.055em!important;
  line-height:1.05!important;
}

.auth-brand p,
.auth-hero p,
.auth-side p,
.login-brand p,
.login-hero p,
.login-side p,
[class*="auth-left"] p,
[class*="login-left"] p{
  color:rgba(255,255,255,.82)!important;
  font-size:.96rem!important;
  line-height:1.55!important;
}

/* Painel do formulário */
.auth-panel,
.login-panel,
.auth-form,
.login-form,
[class*="auth-right"],
[class*="login-right"]{
  padding:42px!important;
  background:#fff!important;
}

.auth-panel h1,
.auth-panel h2,
.login-panel h1,
.login-panel h2,
.auth-form h1,
.auth-form h2,
.login-form h1,
.login-form h2,
[class*="auth-right"] h1,
[class*="auth-right"] h2,
[class*="login-right"] h1,
[class*="login-right"] h2{
  color:var(--authpad-text)!important;
  font-size:1.55rem!important;
  line-height:1.15!important;
  letter-spacing:-.04em!important;
  margin-bottom:.55rem!important;
}

.auth-panel p,
.login-panel p,
.auth-form p,
.login-form p,
[class*="auth-right"] p,
[class*="login-right"] p{
  color:var(--authpad-muted)!important;
  font-size:.92rem!important;
}

.auth-panel label,
.login-panel label,
.auth-form label,
.login-form label,
[class*="auth-right"] label,
[class*="login-right"] label{
  color:var(--authpad-text)!important;
  font-size:.86rem!important;
  font-weight:900!important;
  margin-bottom:6px!important;
}

.auth-panel input,
.login-panel input,
.auth-form input,
.login-form input,
[class*="auth-right"] input,
[class*="login-right"] input{
  min-height:40px!important;
  border-radius:12px!important;
  padding:9px 12px!important;
  font-size:.92rem!important;
}

.auth-panel .btn,
.login-panel .btn,
.auth-form .btn,
.login-form .btn,
.auth-panel button,
.login-panel button,
.auth-form button,
.login-form button,
[class*="auth-right"] .btn,
[class*="login-right"] .btn,
[class*="auth-right"] button,
[class*="login-right"] button{
  min-height:40px!important;
  border-radius:12px!important;
  padding:9px 14px!important;
  font-size:.9rem!important;
  font-weight:900!important;
}

/* Rodapé com posição e leitura iguais à home */
.footer-content,
.footer,
footer{
  flex-shrink:0;
}

.footer-content{
  justify-content:center!important;
  text-align:center!important;
}

/* Home pública: mantém o conteúdo centralizado e usa largura coerente com login. */
.event-public-shell,
.home-shell,
.home-hero,
.public-events-shell,
.events-public-shell{
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Evita cartões públicos gigantes em telas grandes */
.home .card,
.public-home .card,
.events-list .card,
.event-list .card{
  border-radius:24px!important;
}

@media(max-width:860px){
  .auth-shell,
  .login-shell,
  .auth-page,
  .login-page,
  .auth-wrapper,
  .login-wrapper{
    width:min(100%,calc(100vw - 24px))!important;
    min-height:auto!important;
    padding:18px 0 28px!important;
  }

  .auth-card,
  .login-card,
  .auth-container,
  .login-container,
  .auth-panel-wrap{
    width:100%!important;
    border-radius:22px!important;
  }

  .auth-brand,
  .auth-hero,
  .auth-side,
  .login-brand,
  .login-hero,
  .login-side,
  [class*="auth-left"],
  [class*="login-left"],
  .auth-panel,
  .login-panel,
  .auth-form,
  .login-form,
  [class*="auth-right"],
  [class*="login-right"]{
    padding:26px!important;
  }
}
