body {
  background-color: #020305;
  color: #e2e8f0;
  font-family: 'Space Grotesk', sans-serif;
  overflow-x: hidden;
  width: 100%;
}

.font-epic {
  font-family: 'Cinzel Decorative', serif;
}

.font-mono-code {
  font-family: 'Fira Code', monospace;
}

.supreme-card {
  position: relative;
  background: linear-gradient(135deg, rgba(18, 12, 24, 0.95), rgba(5, 6, 10, 0.98));
  border: 1px solid rgba(244, 63, 94, 0.35);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.6s ease, box-shadow 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
  overflow: hidden;
}

/* Card Holo Light Sweep */
.supreme-card::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 35%,
    rgba(255, 255, 255, 0.05) 45%,
    rgba(255, 255, 255, 0.35) 50%,
    rgba(255, 255, 255, 0.05) 55%,
    transparent 65%
  );
  transform: rotate(-25deg) translateY(-180%);
  opacity: 0;
  transition: opacity 0.35s ease, transform 0s 0.35s;
  will-change: transform, opacity;
  pointer-events: none;
  z-index: 2;
}

@media (hover: hover) {
  .supreme-card:hover {
    border-color: rgba(244, 63, 94, 0.85);
    box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.75), 0 0 32px -4px rgba(244, 63, 94, 0.4);
    transform: translateY(-8px);
  }

  .supreme-card:hover::before {
    opacity: 1;
    transform: rotate(-25deg) translateY(180%);
    transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
  }
}

/* Tactile Button Feedback */
button {
  transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.2s ease;
}

button:active {
  transform: scale(0.96) !important;
}

#btnLogin {
  position: relative;
  overflow: hidden;
}

#btnLogin::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.28),
    transparent
  );
  transform: skewX(-20deg);
  transition: left 0.6s ease;
}

#btnLogin:hover::after {
  left: 150%;
}

.glow-rose {
  box-shadow: 0 0 25px rgba(244, 63, 94, 0.35);
}

.input-box {
  background-color: #070910;
  border: 1px solid #1e2638;
  transition: all 0.2s ease-in-out;
}

.input-box:focus {
  border-color: #f43f5e;
  box-shadow: 0 0 14px rgba(244, 63, 94, 0.35);
  outline: none;
}
