
.activation-page {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  justify-content: center;
  padding: 48px 24px 80px;
  color: #eef7fa;
  background:
    radial-gradient(
      circle at 54% 34%,
      rgba(22, 157, 173, .27),
      transparent 28%
    ),
    radial-gradient(
      circle at 83% 52%,
      rgba(12, 119, 139, .32),
      transparent 30%
    ),
    linear-gradient(
      115deg,
      #031925 0%,
      #073244 42%,
      #0b4e5c 70%,
      #06313e 100%
    );
}

.activation-page::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .20;
  background-image:
    linear-gradient(
      rgba(123, 225, 232, .18) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(123, 225, 232, .14) 1px,
      transparent 1px
    );
  background-size: 44px 44px;
  mask-image:
    linear-gradient(
      to bottom,
      transparent 15%,
      black 56%,
      transparent 92%
    );
}

.activation-page::after {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: 0;
  height: 55%;
  pointer-events: none;
  opacity: .16;
  background:
    repeating-linear-gradient(
      90deg,
      transparent 0 18px,
      rgba(114, 234, 240, .42) 19px 20px
    );
  clip-path:
    polygon(
      0 68%,
      3% 55%,
      7% 72%,
      11% 38%,
      15% 63%,
      20% 43%,
      25% 72%,
      30% 28%,
      35% 55%,
      40% 32%,
      46% 61%,
      51% 17%,
      57% 46%,
      62% 27%,
      69% 60%,
      74% 23%,
      80% 48%,
      86% 17%,
      92% 38%,
      100% 10%,
      100% 100%,
      0 100%
    );
}

.activation-content {
  position: relative;
  z-index: 3;
  width: min(100%, 660px);
  text-align: center;
}

.activation-brand {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
  margin-bottom: 38px;
}

.brand-shield {
  width: 31px;
  height: 35px;
  fill: #8ce7ec;
  filter:
    drop-shadow(
      0 3px 10px rgba(80, 221, 229, .28)
    );
}

.brand-shield .shield-cut {
  fill: #1c7787;
}

.brand-name {
  display: flex;
  align-items: baseline;
  gap: 5px;
  font-size: 20px;
}

.brand-name strong {
  font-weight: 800;
  color: #f7fbfc;
}

.brand-name span {
  font-weight: 400;
  color: #d0e2e6;
}

.activation-content h1 {
  margin: 0;
  font-size: clamp(31px, 4vw, 42px);
  line-height: 1.1;
  letter-spacing: -.9px;
  font-weight: 800;
  text-shadow:
    0 2px 8px rgba(0,0,0,.22);
}

.activation-subtitle {
  margin: 13px 0 26px;
  color: #d3e1e5;
  font-size: 16px;
  line-height: 1.55;
}

.activation-form {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    auto;
  align-items: end;
  gap: 15px;

  width: min(100%, 650px);
  padding: 24px 27px;

  border-radius: 10px;
  background: rgba(255,255,255,.98);

  box-shadow:
    0 18px 48px rgba(0, 12, 18, .32),
    0 3px 10px rgba(0,0,0,.18);
}

.activation-field {
  display: grid;
  gap: 7px;
  text-align: left;
}

.activation-field label {
  color: #16252a;
  font-size: 14px;
  font-weight: 600;
}

.activation-field input {
  width: 100%;
  height: 47px;
  padding: 0 15px;

  border: 1px solid #84b8bf;
  border-radius: 7px;

  outline: none;
  color: #26383d;
  background: #fff;

  box-shadow:
    inset 0 1px 3px rgba(0,0,0,.06),
    0 0 0 1px rgba(66, 157, 168, .05);

  transition:
    border-color .18s ease,
    box-shadow .18s ease;
}

.activation-field input::placeholder {
  color: #8b9598;
}

.activation-field input:focus {
  border-color: #429ca8;
  box-shadow:
    0 0 0 3px rgba(66,156,168,.14);
}

.activation-button {
  height: 47px;
  min-width: 167px;
  padding: 0 21px;

  border: 0;
  border-radius: 24px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;

  color: #f7ffff;
  font-weight: 600;
  font-size: 15px;

  background:
    linear-gradient(
      135deg,
      #559fa9,
      #388894
    );

  box-shadow:
    0 6px 13px rgba(24, 102, 113, .34);

  transition:
    transform .16s ease,
    filter .16s ease,
    box-shadow .16s ease;
}

.activation-button:hover {
  filter: brightness(1.08);
  box-shadow:
    0 8px 18px rgba(24, 102, 113, .39);
}

.activation-button:active {
  transform: translateY(1px);
}

.check-icon {
  font-size: 18px;
  font-weight: 400;
}

.activation-message {
  min-height: 20px;
  margin: 10px 0 0;
  color: #d4e9ec;
  font-size: 13px;
}

.activation-links {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc(100% - 8px);
  margin: 8px auto 0;
}

.activation-link {
  padding: 8px 0;
  border: 0;
  color: rgba(226, 239, 242, .63);
  background: transparent;
  font-size: 13px;
}

.activation-link:hover {
  color: #f1fbfc;
}

#forgotLicense {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.financial-chart {
  position: absolute;
  z-index: 1;
  width: 40vw;
  min-width: 410px;
  max-width: 650px;
  opacity: .55;
  overflow: visible;
}

.financial-chart polyline {
  fill: none;
  stroke: #65d9e1;
  stroke-width: 2;
}

.financial-chart circle {
  fill: #5edce4;
  filter:
    drop-shadow(
      0 0 5px rgba(77, 226, 235, .75)
    );
}

.chart-left {
  left: -8%;
  bottom: 20%;
}

.chart-right {
  right: -7%;
  top: 19%;
  transform: scale(.95);
}

.activation-footer {
  position: absolute;
  z-index: 3;
  left: 22px;
  bottom: 18px;
  color: rgba(218, 232, 235, .57);
  font-size: 12px;
}

@media (max-width: 720px) {
  .activation-page {
    padding: 38px 18px 75px;
    align-items: flex-start;
  }

  .activation-brand {
    margin-bottom: 30px;
  }

  .activation-content h1 {
    font-size: 30px;
  }

  .activation-subtitle {
    font-size: 14px;
  }

  .activation-form {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .activation-button {
    width: 100%;
  }

  .activation-links {
    padding: 0 8px;
  }

  .financial-chart {
    opacity: .32;
  }

  .chart-left {
    left: -45%;
  }

  .chart-right {
    right: -45%;
  }
}

@media (max-width: 420px) {
  .activation-content h1 {
    font-size: 27px;
  }

  .activation-links {
    flex-direction: column;
    gap: 2px;
  }

  .activation-footer {
    left: 0;
    right: 0;
    text-align: center;
  }
}

/* AJUSTE FINO - referência visual */
.activation-content {
  width: min(100%, 650px);
  padding-top: 2px;
}

.activation-brand {
  margin-bottom: 34px;
}

.activation-subtitle {
  margin-bottom: 24px;
}

.activation-page::after {
  opacity: .085;
  height: 47%;
  filter: blur(.35px);
}

.financial-chart {
  opacity: .40;
  filter: blur(.15px);
}

.chart-left {
  left: -9%;
  bottom: 24%;
}

.chart-right {
  right: -8%;
  top: 22%;
}

.activation-form {
  box-shadow:
    0 16px 42px rgba(0, 12, 18, .30),
    0 2px 8px rgba(0,0,0,.15);
}

.activation-page {
  background:
    radial-gradient(
      circle at 54% 32%,
      rgba(22, 157, 173, .24),
      transparent 29%
    ),
    radial-gradient(
      circle at 82% 50%,
      rgba(12, 119, 139, .28),
      transparent 31%
    ),
    radial-gradient(
      circle at 18% 66%,
      rgba(9, 85, 105, .22),
      transparent 28%
    ),
    linear-gradient(
      115deg,
      #031923 0%,
      #07303f 43%,
      #0a4957 71%,
      #052d38 100%
    );
}
