/* Custom Styles for VenueFast - Premium Event Venue & Service Marketplace */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Marcellus&display=swap');

/* GPU Layer Promotion & Hardware Acceleration for 120fps smoothness */
.glass-panel, .glass-panel-dark, .sticky, header {
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}

/* Glassmorphism theme elements */
.glass-panel {
  background: rgba(253, 251, 247, 0.85) !important;
  backdrop-filter: blur(8px) saturate(180%);
  -webkit-backdrop-filter: blur(8px) saturate(180%);
  border: 1px solid rgba(197, 160, 89, 0.25);
}

.glass-panel-dark {
  background: rgba(51, 11, 16, 0.9) !important;
  backdrop-filter: blur(8px) saturate(180%);
  -webkit-backdrop-filter: blur(8px) saturate(180%);
  border: 1px solid rgba(197, 160, 89, 0.15);
}

/* Gradients */
.bg-gradient-luxury {
  background: linear-gradient(135deg, #5c0918 0%, #800020 50%, #2f020a 100%) !important;
}

.bg-gradient-gold {
  background: linear-gradient(135deg, #dfba73 0%, #c5a059 50%, #8e6c2e 100%) !important;
}

.bg-gradient-gold-hover:hover {
  background: linear-gradient(135deg, #ebd197 0%, #dfba73 50%, #aa853f 100%) !important;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Smooth scroll behavior */
html {
  scroll-behavior: smooth;
}

/* Hover lift */
.hover-lift {
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  will-change: transform, box-shadow;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
}

.hover-lift:hover {
  transform: translateY(-6px) scale(1.01) translate3d(0, 0, 0) !important;
  -webkit-transform: translateY(-6px) scale(1.01) translate3d(0, 0, 0) !important;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03) !important;
}

/* Optimize blurry background glows */
.blur-3xl {
  will-change: filter;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
}

/* Custom animations */
@keyframes pulse-gold {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: .8;
    transform: scale(1.02);
  }
}

.animate-pulse-gold {
  animation: pulse-gold 3s infinite ease-in-out;
}

/* Form styling */
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: #ea580c;
  box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.15);
}

.hidden-field {
  display: none !important;
}

/* ==========================================================================
   Tailwind Fallbacks for Offline/Blocked CDN JIT compilation
   ========================================================================== */

/* Orange Theme Colors (Marigold Saffron) */
.bg-orange-50 { background-color: #fff7ed !important; }
.bg-orange-100 { background-color: #ffedd5 !important; }
.bg-orange-500 { background-color: #f97316 !important; }
.bg-orange-600 { background-color: #ea580c !important; }
.hover\:bg-orange-700:hover { background-color: #c2410c !important; }
.text-orange-500 { color: #f97316 !important; }
.text-orange-600 { color: #ea580c !important; }
.text-orange-700 { color: #c2410c !important; }
.text-orange-900 { color: #7c2d12 !important; }
.border-orange-100 { border-color: #ffedd5 !important; }
.border-orange-200 { border-color: #fed7aa !important; }

/* Amber Theme Colors (Shahi Gold) */
.bg-amber-50 { background-color: #fffbeb !important; }
.bg-amber-100 { background-color: #fef3c7 !important; }
.bg-amber-500 { background-color: #f59e0b !important; }
.bg-amber-600 { background-color: #d97706 !important; }
.text-amber-500 { color: #f59e0b !important; }
.text-amber-600 { color: #d97706 !important; }
.text-amber-800 { color: #92400e !important; }
.text-amber-900 { color: #78350f !important; }
.border-amber-200 { border-color: #fde68a !important; }

/* Gradients text clip fallback */
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important;
}
.from-orange-600 {
  --tw-gradient-from: #ea580c !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(234, 88, 12, 0)) !important;
}
.from-orange-400 {
  --tw-gradient-from: #fb923c !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(251, 146, 60, 0)) !important;
}
.to-amber-500 {
  --tw-gradient-to: #f59e0b !important;
}
.to-amber-300 {
  --tw-gradient-to: #fcd34d !important;
}
.text-transparent {
  color: transparent !important;
}
.bg-clip-text {
  -webkit-background-clip: text !important;
  background-clip: text !important;
}

/* Gray Layout Colors fallback */
.bg-gray-50 { background-color: #FAF5EB !important; }
.bg-gray-100 { background-color: #f7ede2 !important; }
.bg-gray-200 { background-color: #ebd7c0 !important; }
.border-gray-100 { border-color: #f3f4f6 !important; }
.border-gray-200 { border-color: #e5e7eb !important; }
.text-gray-400 { color: #9ca3af !important; }
.text-gray-500 { color: #6b7280 !important; }
.text-gray-600 { color: #4b5563 !important; }
.text-gray-700 { color: #374151 !important; }
.text-gray-800 { color: #1f2937 !important; }
.text-gray-900 { color: #111827 !important; }

/* Text White fallback */
.text-white {
  color: #ffffff !important;
}
