/* Events Custom Styles */

.hover-shadow {
  transition: all 0.3s ease;
}

.hover-shadow:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important;
}

.event-card .card {
  border: 1px solid #e3e6f0;
  transition: all 0.3s ease;
}

.event-card .card:hover {
  border-color: #00649a;
}

.event-title {
  color: #00649a !important;
  font-weight: 600;
}

.event-title:hover {
  color: #4e5acf !important;
}

.badge.bg-label-success {
  background-color: rgba(40, 199, 111, 0.16) !important;
  color: #28c76f !important;
}

.badge.bg-label-secondary {
  background-color: rgba(108, 117, 125, 0.16) !important;
  color: #6c757d !important;
}

.badge.bg-label-danger {
  background-color: rgba(234, 84, 85, 0.16) !important;
  color: #ea5455 !important;
}

/* Event Details Page Styles */
.event-details-card {
  border: none;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.event-details-card .card-header {
  background: linear-gradient(135deg, #00649a 0%, #006699 100%);
  border-bottom: none;
}

.event-info-box {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 1rem;
}

.event-info-box i {
  color: #00649a;
}

/* Registration Button Styles */
.btn-register {
  background: linear-gradient(135deg, #28c76f 0%, #24b263 100%);
  border: none;
  color: white;
  font-weight: 600;
  padding: 0.75rem 1.5rem;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.btn-register:hover {
  background: linear-gradient(135deg, #24b263 0%, #1f9f5a 100%);
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(40, 199, 111, 0.3);
}

/* Search and Filter Styles */
.search-filter-card {
  background: #fff;
  border: 1px solid #e3e6f0;
  border-radius: 10px;
}

.search-filter-card .form-control {
  border: 1px solid #d1d3e0;
  border-radius: 8px;
}

.search-filter-card .form-control:focus {
  border-color: #00649a;
  box-shadow: 0 0 0 0.2rem rgba(90, 106, 207, 0.25);
}

/* Breadcrumb Styles */
.breadcrumb-item + .breadcrumb-item::before {
  content: '›';
  color: #6c757d;
}

.breadcrumb-item a {
  color: #00649a;
  text-decoration: none;
}

.breadcrumb-item a:hover {
  color: #4e5acf;
  text-decoration: underline;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .event-card .card-body {
    padding: 1rem;
  }

  .event-details-card .card-header h3 {
    font-size: 1.5rem;
  }

  .event-info-box {
    padding: 0.75rem;
  }
}

/* Event Details Header and Sidebar Custom Styles */
.event-header-title {
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0.5px;
  margin-bottom: 0.25rem;
}
.event-header-subtitle {
  color: #e3e6f0;
  font-size: 1.1rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
}
.event-header-badge {
  font-size: 0.9rem;
  font-weight: 600;
  background: #fff;
  color: #00649a;
  border-radius: 6px;
  padding: 0.25em 0.75em;
  margin-left: 0.5rem;
  box-shadow: 0 2px 8px rgba(90, 106, 207, 0.08);
}
.event-sidebar-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 16px rgba(90, 106, 207, 0.07);
  border: 1px solid #e3e6f0;
  margin-bottom: 1.5rem;
}
.event-sidebar-card .card-header {
  background: #fff;
  color: #00649a;
  border-bottom: 1px solid #e3e6f0;
  font-weight: 600;
  font-size: 1.1rem;
  border-radius: 12px 12px 0 0;
}
.event-sidebar-card .btn {
  font-size: 1rem;
  font-weight: 600;
}
@media (min-width: 992px) {
  .event-details-divider {
    border-left: 2px solid #f0f1f6;
    min-height: 500px;
    margin-left: 1.5rem;
    margin-right: -1.5rem;
  }
}

/* Public Calendar Page Styles */
.public-calendar-wrapper {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 16px rgba(90, 106, 207, 0.07);
  border: 1px solid #e3e6f0;
  overflow: hidden;
}
.public-calendar-sidebar {
  background: #f8f9fa;
  min-width: 270px;
  max-width: 320px;
  border-right: 1px solid #e3e6f0;
  padding: 2rem 1.5rem 1.5rem 1.5rem;
}
.public-calendar-content {
  padding: 2rem 2rem 2rem 2rem;
}
.fc-toolbar-title {
  color: #00649a;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.fc-event {
  cursor: pointer;
}
.calendar-filter-label {
  font-size: 0.95rem;
  font-weight: 600;
  color: #00649a;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}
.calendar-filter-group .form-check {
  margin-bottom: 0.5rem;
}
.flatpickr-calendar {
  z-index: 1050 !important;
}
@media (max-width: 991px) {
  .public-calendar-sidebar {
    max-width: 100%;
    border-right: none;
    border-bottom: 1px solid #e3e6f0;
    padding: 1.5rem 1rem 1rem 1rem;
  }
  .public-calendar-content {
    padding: 1rem;
  }
}

/* Icon Size Classes */
.icon-large {
  font-size: 48px;
}

.icon-medium {
  font-size: 24px;
}

.icon-small {
  font-size: 3rem;
}

.icon-empty-state {
  font-size: 64px;
}

/* Event Details Specific Styles */
.event-card-header-rounded {
  border-radius: 12px 12px 0 0;
}

.event-image-responsive {
  max-height: 300px;
  width: 100%;
  object-fit: cover;
}

.event-placeholder-container {
  height: 200px;
}

.event-info-icon {
  font-size: 24px;
}

.event-alert-icon {
  font-size: 24px;
}

.event-registration-icon {
  font-size: 48px;
}

.event-status-icon {
  font-size: 48px;
}
