html, body {
  height: 100%;
}

body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  background: #F4F6F9;
}

/* Login card effects */
.fp-tilt {
  transform-style: preserve-3d;
  perspective: 1000px;
}

.fp-shimmer {
  position: relative;
  overflow: hidden;
}

.fp-shimmer::after {
  content: "";
  position: absolute;
  inset: -100% -100% -100% -100%;
  background: linear-gradient(120deg, transparent 35%, rgba(255, 255, 255, 0.25) 50%, transparent 65%);
  transform: translateX(-60%) rotate(10deg);
  animation: fpShimmer 3.2s linear infinite;
  pointer-events: none;
}

@keyframes fpShimmer {
  0% { transform: translateX(-60%) rotate(10deg); }
  100% { transform: translateX(60%) rotate(10deg); }
}

@keyframes fpRoll {
  0% { transform: translateY(-14px); filter: blur(0.8px); opacity: 0.55; }
  100% { transform: translateY(0); filter: blur(0); opacity: 1; }
}

.fp-roll {
  animation: fpRoll 380ms ease-out;
}

.fp-menu-link {
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.fp-menu-link-active {
  background-color: rgba(255, 255, 255, 0.14);
  color: #ffffff;
  box-shadow: inset 3px 0 0 #1D9E75;
}

.fp-menu-link-active:hover {
  background-color: rgba(255, 255, 255, 0.18);
}

.fp-premium-link {
  opacity: 0.74;
  position: relative;
  cursor: pointer;
}

.fp-premium-link::after {
  content: "🔒";
  position: absolute;
  right: 66px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
}

.fp-premium-link:hover {
  opacity: 0.95;
}
