/* Xtreme Events - Modern Theme Enhancements */

/* Enhanced Button Styles */
.btn-primary, .btn-a, .btn-b, .btn-b-n {
  border-radius: 8px !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.btn-primary:hover, .btn-a:hover, .btn-b:hover, .btn-b-n:hover {
  transform: translateY(-2px) scale(1.02) !important;
}

/* Enhanced Card Styles */
.card {
  border-radius: 12px !important;
  transition: all 0.3s ease !important;
  border: 1px solid var(--border_color) !important;
}

.card:hover {
  box-shadow: 0 8px 25px rgba(107, 70, 193, 0.15) !important;
  transform: translateY(-4px) !important;
}

/* Enhanced Navbar */
.navbar-default {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
  backdrop-filter: blur(10px) !important;
  background-color: #fff !important;
}

.navbar-default .nav-link {
  color: #1F2937 !important;
  font-weight: 500 !important;
}

.nav-link.active {
  color: var(--primary_color) !important;
  font-weight: 700 !important;
  position: relative;
}

.nav-link.active::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end));
  border-radius: 3px;
}

.navbar-default .nav-link:hover {
  color: var(--primary_color) !important;
  background: none !important;
}

/* Enhanced Badges and Tags */
.badge {
  border-radius: 20px !important;
  padding: 6px 12px !important;
  font-weight: 600 !important;
}

.chip {
  border-radius: 25px !important;
  transition: all 0.3s ease !important;
}

.chip:hover {
  transform: scale(1.05) !important;
  box-shadow: 0 4px 12px rgba(107, 70, 193, 0.3) !important;
}

/* Enhanced Input Fields */
.form-control:focus {
  border-color: var(--primary_color) !important;
  box-shadow: 0 0 0 0.2rem rgba(107, 70, 193, 0.15) !important;
}

/* Enhanced Links */
a:hover {
  color: var(--primary_color) !important;
  transition: color 0.3s ease !important;
}

/* Enhanced Event Cards */
.card-box-a:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 10px 30px rgba(107, 70, 193, 0.2) !important;
}

.card-box-a .img-box-a {
  overflow: hidden;
  border-radius: 12px 12px 0 0 !important;
}

.card-box-a .img-box-a img {
  transition: transform 0.5s ease !important;
}

.card-box-a:hover .img-box-a img {
  transform: scale(1.1) !important;
}

/* Enhanced Category Cards */
.card-box-b:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 10px 30px rgba(107, 70, 193, 0.2) !important;
}

/* Enhanced Pagination */
.pagination .page-link:hover {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
  border-color: var(--primary_color) !important;
}

.pagination .page-item.active .page-link {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  border-color: var(--primary_color) !important;
  color: #fff !important;
}

/* Enhanced Carousel Dots */
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  width: 35px !important;
}

/* Enhanced Search Bar */
.search-location input:focus {
  border-color: var(--primary_color) !important;
  box-shadow: 0 0 0 0.2rem rgba(107, 70, 193, 0.15) !important;
}

/* Enhanced Footer */
footer {
  background: linear-gradient(135deg, #1F2937, #374151) !important;
  color: #fff !important;
}

/* Enhanced Ticket Cards */
.ticket__header {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
}

/* Enhanced Section Headers */
.section-title {
  position: relative;
  padding-bottom: 15px;
}

.section-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 4px;
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end));
  border-radius: 2px;
}

/* Enhanced Dropdowns */
.dropdown-menu {
  border-radius: 8px !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1) !important;
  border: 1px solid var(--border_color) !important;
}

.dropdown-item:hover {
  background: var(--light_primary_color) !important;
  color: var(--primary_color) !important;
}

/* Enhanced Loading States */
.btn-primary:disabled {
  opacity: 0.6 !important;
  cursor: not-allowed !important;
}

/* Enhanced Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--bg_light);
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end));
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(135deg, var(--gradient_end), var(--gradient_start));
}

/* Enhanced Focus States */
*:focus {
  outline: none !important;
}

.btn:focus,
.form-control:focus,
.select2-container--default .select2-selection--single:focus {
  box-shadow: 0 0 0 0.2rem rgba(107, 70, 193, 0.25) !important;
}

/* Gradient Text Effects */
.gradient-text {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 700;
}

/* Enhanced Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.card-box-a,
.card-box-b {
  animation: fadeInUp 0.6s ease-out;
}

/* Enhanced Badge Colors */
.badge-success {
  background: var(--success_color) !important;
}

.badge-warning {
  background: var(--warning_color) !important;
}

.badge-danger {
  background: var(--danger_color) !important;
}

.badge-info {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
}

/* Enhanced Modal Styles */
.modal-header {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
  border-radius: 8px 8px 0 0 !important;
}

.modal-footer .btn-primary {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
}

/* Enhanced Alert Styles */
.alert-primary {
  background: var(--light_primary_color) !important;
  border-color: var(--primary_color) !important;
  color: var(--primary_color) !important;
}

/* Enhanced Table Styles */
.table thead th {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
  font-weight: 600 !important;
}

.table tbody tr:hover {
  background: var(--bg_light) !important;
}

/* Enhanced Icon Styles */
.icon-box .icon-box-icon {
  background: var(--light_primary_color) !important;
  border-radius: 50% !important;
  padding: 15px !important;
  width: 50px !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Enhanced Price Display */
.price-a {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
  padding: 8px 16px !important;
  border-radius: 20px !important;
  font-weight: 700 !important;
}

/* Enhanced Overlay Effects */
.overlay-a {
  background: linear-gradient(to bottom, rgba(107, 70, 193, 0) 0%, rgba(107, 70, 193, 0.3) 50%, rgba(107, 70, 193, 0.8) 100%) !important;
}

/* Enhanced Active States */
.nav-link.active,
.menu-header .nav-link.active {
  color: var(--primary_color) !important;
  font-weight: 700 !important;
  background: none !important;
  text-shadow: none !important;
}

.navbar-default .nav-link,
.menu-header .nav-link {
  color: #1F2937 !important;
  font-weight: 500 !important;
}

.navbar-default .nav-link:hover,
.menu-header .nav-link:hover {
  color: var(--primary_color) !important;
  background: none !important;
}

/* Enhanced Rating Stars */
.rating .active {
  color: var(--warning_color) !important;
}

/* Enhanced Empty States */
.empty-data .card-icon {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
}

/* Enhanced Back to Top Button */
.back-to-top {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 50px !important;
  height: 50px !important;
  box-shadow: 0 4px 15px rgba(107, 70, 193, 0.4) !important;
  transition: all 0.3s ease !important;
}

.back-to-top:hover {
  transform: translateY(-5px) scale(1.1) !important;
  box-shadow: 0 6px 20px rgba(107, 70, 193, 0.5) !important;
}

/* Enhanced Breadcrumbs */
.breadcrumb {
  background: var(--bg_light) !important;
  border-radius: 8px !important;
}

.breadcrumb-item.active {
  color: var(--primary_color) !important;
  font-weight: 600 !important;
}

/* Enhanced Form Validation */
.form-control.is-invalid {
  border-color: var(--danger_color) !important;
}

.form-control.is-valid {
  border-color: var(--success_color) !important;
}

/* Enhanced Select2 Dropdown */
.select2-container--default .select2-results__option--highlighted {
  background: var(--light_primary_color) !important;
  color: var(--primary_color) !important;
}

.select2-container--default .select2-results__option[aria-selected=true] {
  background: var(--primary_color) !important;
  color: #fff !important;
}

/* Enhanced Loading Spinner */
#preloader {
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end)) !important;
}

/* Enhanced Section Backgrounds */
.bg-light {
  background: var(--bg_light) !important;
}

/* Enhanced Text Colors */
.text-primary {
  color: var(--primary_color) !important;
}

.text-success {
  color: var(--success_color) !important;
}

.text-warning {
  color: var(--warning_color) !important;
}

.text-danger {
  color: var(--danger_color) !important;
}

/* Enhanced Borders */
.border-primary {
  border-color: var(--primary_color) !important;
}

/* Enhanced Shadows */
.shadow-primary {
  box-shadow: 0 4px 15px rgba(107, 70, 193, 0.3) !important;
}

/* Enhanced Hover Effects */
.hover-lift:hover {
  transform: translateY(-5px) !important;
  transition: all 0.3s ease !important;
}

/* Enhanced Active Link Styles */
.active-link {
  color: var(--primary_color) !important;
  font-weight: 600 !important;
  position: relative;
}

.active-link::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(135deg, var(--gradient_start), var(--gradient_end));
}

/* Enhanced Mobile Responsiveness */
@media (max-width: 768px) {
  .btn-primary, .btn-a, .btn-b {
    padding: 12px 24px !important;
    font-size: 14px !important;
  }
  
  .intro-title {
    font-size: 2rem !important;
  }
  
  .card {
    margin-bottom: 20px !important;
  }
}

/* Enhanced Print Styles */
@media print {
  .btn-primary, .btn-a, .btn-b {
    background: var(--primary_color) !important;
    color: #fff !important;
  }
}

