/* @import url("https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;500;700&display=swap"); */

:root {
  --bs-body-bg: var(--tg-theme-bg-color, #ffffff);
  --bs-body-color: var(--tg-theme-text-color, #000000);
  --bs-link-color: var(--tg-theme-link-color, #007bff);
  --bs-primary: var(--tg-theme-button-color, #007bff);
  --bs-secondary: var(--tg-theme-hint-color, #6c757d);
}

[data-bs-theme="dark"] {
  --bs-body-bg: var(--tg-theme-bg-color, #1c1c1e);
  --bs-body-color: var(--tg-theme-text-color, #f2f2f7);
  --bs-link-color: var(--tg-theme-link-color, #0af);
  --bs-primary: var(--tg-theme-button-color, #0af);
  --bs-secondary: var(--tg-theme-hint-color, #8e8e93);
}

body {
  /* font-family: "Fira Sans", sans-serif; */
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  font-weight: 400;
}

a {
  color: var(--bs-link-color);
}

.btn-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.tg-themed-bg {
  background-color: var(--bs-body-bg) !important;
}

.tg-themed-text {
  color: var(--bs-body-color) !important;
}

.tg-themed-link {
  color: var(--bs-link-color) !important;
}

/* Optional: use these classes to apply different font weights */
.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-700 {
  font-weight: 700;
}

.blur-sm {
  filter: blur(2px);
}

.hover-bg:hover {
  background-color: rgba(128, 128, 128, 0.1);
}

.transition-all {
  transition: all 0.5s ease-in-out;
}

.glow-hover:hover {
  transform: translateY(-1px) scale(1.01);
  background: #f6d05c2e;
  border-color: #f6d05c;
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.2);
}

.text-gradient {
  background: linear-gradient(90deg, #f6d05c, #f98a12);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
}

.confetti {
  position: fixed;
  width: 10px;
  height: 10px;
  background-color: #6366f1;
  opacity: 0;
  animation: confetti 5s ease-in-out forwards;
  z-index: 9999;
}

@keyframes confetti {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: translateY(1000px) rotate(720deg);
    opacity: 0;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.fade-in {
  animation: fadeIn 0.6s ease-out forwards;
}
