@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Play:wght@400;700&display=swap');

:root{
    --main-color:#d3ad7f;
    --black:#13131a;
    --bg:#7a6d6d;
    --border:.1rem solid rgba(255,255,255,.3);

    --cor-azul1:rgb(28, 54, 97);
    --cor-azul2:rgb(70, 140, 188);
    --cor-azul3:rgb(130, 206, 234);
    --cor-azul4:rgb(13, 45, 67);
    --cor-branco:rgb(255, 255, 255);
    --cor-preto:rgb(0, 0, 0);
    --cor-dourado:rgb(204, 204, 204);
}



/* BACKDROP */
#auth-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
}

#auth-modal .auth-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(1px);
}

/* MODAL CENTRALIZADO FIXO */
#auth-modal .auth-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* CENTRALIZAÇÃO REAL */
  
  background: #fff;
  width: min(90%, 420px);
  max-height: 90vh;
  overflow-y: auto;
  
  padding: 20px;
  border-radius: 14px;
  box-shadow: 0 20px 50px rgba(0,0,0,.3);

  animation: fadeIn .25s ease, slideUp .25s ease;
}

/* CLOSE BUTTON */
.auth-close {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  font-size: 26px;
  font-weight: bold;
  cursor: pointer;
  color: #ffffff;
}
.auth-close:hover { color: #000; }

/* TABS */
.auth-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 18px;
}

.auth-tab {
  flex: 1;
  padding: 10px;
  text-align: center;
  background: #e5e7eb;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 500;
  transition: .25s;
}
.auth-tab.active {
  background: var(--cor-azul1);
  color: #fff;
  border-color:var(--cor-azul1);
}

/* FORM */
.auth-form label {
  display: block;
  margin-bottom: 12px;
  font-size: .92rem;
  font-weight: 500;
  color: #374151;
}
.auth-form input {
  width: 100%;
  padding: 10px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  outline: none;
}
.auth-form input:focus {
  border-color: var(--cor-azul2);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, .2);
}

/* BUTTON */
.auth-btn-primary {
  width: 100%;
  padding: 12px;
  background: var(--cor-azul1);
  border: none;
  border-radius: 8px;
  color: #fff;
  font-weight: 600;
  margin-top: 10px;
  cursor: pointer;
}
.auth-btn-primary:hover {
  background: var(--cor-azul2);
}

/* ANIMAÇÕES */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes slideUp {
  from { transform: translate(-50%, -40%); }
  to { transform: translate(-50%, -50%); }
}

/* MOBILE */
@media (max-width: 420px) {
  #auth-modal .auth-dialog { padding: 16px; }
  .auth-tab { padding: 8px; }
}
