/* ========================================
   POLÍTICA DE PRIVACIDADE — KODEX EXPRESS
   ======================================== */

:root {
  --primary: #193F76;
  --primary-dark: #102b52;
  --accent: #ff9900;
  --accent-light: #ffb547;

  --text: #2d3748;
  --text-light: #718096;

  --bg: #f4f7fb;
  --white: #ffffff;

  --border: rgba(25, 63, 118, 0.08);

  --shadow:
    0 12px 40px rgba(16, 43, 82, 0.12);

  --radius: 24px;
}

/* RESET */
body {
  margin: 0;
  padding: 0;

  font-family:
    Inter,
    system-ui,
    -apple-system,
    sans-serif;

  background:
    linear-gradient(
      180deg,
      #eef3fa 0%,
      #f7f9fc 100%
    );

  color: var(--text);

  overflow-x: hidden;
}

/* FUNDO DECORATIVO */
.login-register-area {
  position: relative;

  min-height: 100vh;

  display: flex;
  align-items: center;

  padding:
    100px 20px !important;

  overflow: hidden;
}

/* Glow superior */
.login-register-area::before {
  content: "";

  position: absolute;
  top: -200px;
  right: -200px;

  width: 500px;
  height: 500px;

  background:
    radial-gradient(
      circle,
      rgba(25, 63, 118, 0.12) 0%,
      transparent 70%
    );

  pointer-events: none;
}

/* Glow inferior */
.login-register-area::after {
  content: "";

  position: absolute;
  bottom: -220px;
  left: -220px;

  width: 500px;
  height: 500px;

  background:
    radial-gradient(
      circle,
      rgba(255, 153, 0, 0.12) 0%,
      transparent 70%
    );

  pointer-events: none;
}

/* CARD PRINCIPAL */
.login-register-wrapper {
  position: relative;

  background: rgba(255,255,255,0.92);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  border:
    1px solid rgba(255,255,255,0.6);

  border-radius: var(--radius);

  padding:
    60px 55px;

  box-shadow: var(--shadow);

  overflow: hidden;

  animation:
    fadeUp 0.7s ease;
}

/* Linha premium */
.login-register-wrapper::before {
  content: "";

  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 5px;

  background:
    linear-gradient(
      90deg,
      var(--primary) 0%,
      var(--accent) 100%
    );
}

/* TÍTULO */
.login-register-tab-list h2 {
  margin: 0 0 30px;

  color: var(--primary);

  font-size:
    clamp(2rem, 4vw, 3rem);

  font-weight: 800;

  letter-spacing: -1px;

  position: relative;
}

/* Linha decorativa */
.login-register-tab-list h2::after {
  content: "";

  display: block;

  width: 90px;
  height: 4px;

  margin:
    18px auto 0;

  border-radius: 999px;

  background:
    linear-gradient(
      90deg,
      var(--accent),
      var(--accent-light)
    );
}

/* TEXTO */
.login-register-tab-list p {
  margin: 0;

  color: var(--text);

  font-size: 1rem !important;

  line-height: 1.9;

  font-weight: 400;

  text-align: left;

  letter-spacing: 0.1px;
}

/* SCROLL SUAVE PARA TEXTO LONGO */
.login-register-tab-list {
  max-height: 75vh;
  overflow-y: auto;

  padding-right: 10px;
}

/* Scroll custom */
.login-register-tab-list::-webkit-scrollbar {
  width: 8px;
}

.login-register-tab-list::-webkit-scrollbar-track {
  background: rgba(0,0,0,0.04);
  border-radius: 999px;
}

.login-register-tab-list::-webkit-scrollbar-thumb {
  background: rgba(25, 63, 118, 0.25);
  border-radius: 999px;
}

/* BOTÃO */
.default-btn {
  position: relative;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 220px;
  height: 58px;

  padding: 0 34px;

  border-radius: 16px;

  background:
    linear-gradient(
      135deg,
      var(--primary) 0%,
      var(--primary-dark) 100%
    );

  color: var(--white) !important;

  font-size: 0.95rem;
  font-weight: 700;

  letter-spacing: 0.5px;

  text-decoration: none;

  overflow: hidden;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    filter 0.3s ease;

  box-shadow:
    0 12px 28px rgba(25, 63, 118, 0.22);
}

/* Shine effect */
.default-btn::before {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      120deg,
      transparent 20%,
      rgba(255,255,255,0.18) 50%,
      transparent 80%
    );

  transform: translateX(-120%);
  transition: transform 0.8s ease;
}

.default-btn:hover::before {
  transform: translateX(120%);
}

.default-btn:hover {
  transform: translateY(-3px);

  filter: brightness(1.03);

  box-shadow:
    0 18px 38px rgba(25, 63, 118, 0.28);
}

.default-btn:active {
  transform: translateY(0);
}

/* ÁREA BOTÃO */
.about-btn {
  margin-top: 45px;

  display: flex;
  justify-content: center;
}

/* RESPONSIVO */
@media (max-width: 992px) {

  .login-register-wrapper {
    padding: 45px 30px;
  }

  .login-register-tab-list p {
    font-size: 0.96rem !important;
    line-height: 1.8;
  }
}

@media (max-width: 576px) {

  .login-register-area {
    padding:
      60px 14px !important;
  }

  .login-register-wrapper {
    padding:
      36px 22px;

    border-radius: 20px;
  }

  .login-register-tab-list h2 {
    font-size: 2rem;
  }

  .login-register-tab-list p {
    font-size: 0.93rem !important;
    line-height: 1.75;
  }

  .default-btn {
    width: 100%;
    min-width: initial;
  }
}

/* ANIMAÇÃO */
@keyframes fadeUp {

  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}