@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-padding-top: 100px; /* Add padding for fixed header */
  }
  body {
    background-color: white;
    color: rgb(17, 24, 39);
    padding-top: 100px; /* Add padding for fixed header */
  }

  /* WordPress admin bar adjustments */
  body.admin-bar .banner {
    top: 32px;
  }

  body.admin-bar #mobile-menu {
    top: 112px; /* 80px header + 32px admin bar */
    max-height: calc(100vh - 112px);
  }

  /* when .header-scrolled is applied, mobile-menu should be top: 80px */
  body.admin-bar .header-scrolled #mobile-menu {
    top: 80px;
  }

  .banner:not(.header-scrolled) #mobile-menu {
    top: 128px;
  }

  @media screen and (max-width: 782px) {
    body.admin-bar .banner {
      top: 46px;
    }
    body.admin-bar #mobile-menu {
      top: 126px; /* 80px header + 46px admin bar */
      max-height: calc(100vh - 126px);
    }
  }

  @media screen and (max-width: 600px) {
    body.admin-bar .banner{
      position: absolute;
    }
  }
}

@layer components {
  .container {
    max-width: 80rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  /* Header styles */
  .banner {
    background-color: rgb(255, 255, 255);
    padding: 1.5rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    z-index: 50;
    transform: translateY(0);
    will-change: transform, background-color, box-shadow, padding;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .banner.header-scrolled {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    padding: 0 0;
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
    transform: translateY(0) translateZ(0);
    backface-visibility: hidden;
  }

  .banner.header-hidden {
    transform: translateY(-100%) translateZ(0);
  }

  /* Logo transitions */
  [data-header-logo] {
    height: 7rem;
    width: auto;
    transform: scale(1) translateZ(0);
    will-change: transform, height;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    backface-visibility: hidden;
  }

  .header-scrolled .logo-scrolled {
    height: 4rem;
    transform: scale(1) translateZ(0);
  }

  .brand {
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
    color: rgb(37, 99, 235);
    transition: color 0.2s ease-in-out;
  }

  .brand:hover {
    color: rgb(29, 78, 216);
  }

  .nav-primary {
    display: flex;
    align-items: center;
  }

  .nav {
    display: flex;
    gap: 1.5rem;
  }

  .nav li {
    list-style: none;
  }

  .nav a {
    /* color: rgb(75, 85, 99); */
    /* color: rgb(37, 99, 235); */
    color: #066ab5;
    font-weight: bold;
    transition: color 0.2s ease-in-out;
    position: relative;
  }

  .nav a:hover {
    /* color: rgb(37, 99, 235); */
    color: rgb(75, 85, 99);
    /* font-weight: normal; */
  }

  /* Animated underline effect */
  .nav a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    /* @apply bg-blue-600; */
    background-color: #066ab5;
    transition: width 0.3s ease;
  }

  .nav a:hover::after {
    width: 100%;
  }

  .nav .current-menu-item > a,
  .nav .current_page_item > a,
  .nav .active > a {
    color: rgb(75, 85, 99);
    font-weight: normal;
  }

  .nav .current-menu-item > a::after,
  .nav .current_page_item > a::after,
  .nav .active > a::after {
    width: 100%;
  }

  .section {
    @apply py-12 sm:py-16;
  }

  .section-title {
    @apply text-3xl font-bold text-gray-900 text-center mb-8;
  }

  .btn {
    @apply px-4 py-2 rounded-md transition duration-200;
  }

  .btn-primary {
    @apply bg-blue-600 text-white hover:bg-blue-700;
  }

  .btn-secondary {
    @apply bg-gray-200 text-gray-900 hover:bg-gray-300;
  }

  /* Pure CSS Parallax styles */
  .parallax-section {
    position: relative;
    min-height: 0;
    height: auto;
    padding-top: 4rem;
    padding-bottom: 4rem;
    overflow: hidden;
  }

  .parallax-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(8, 2, 47, 0.75);
    z-index: 1;
    pointer-events: none;
  }

  .parallax-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    z-index: 0;
  }

  .parallax-content {
    position: relative;
    z-index: 2;
    width: 100%;
  }

  /* Contact Page */
  .aspect-w-16 {
    position: relative;
    padding-bottom: 56.25%;
  }

  .aspect-w-16 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
  }

  /* Form Styles */
  .form-input,
  .form-textarea,
  .form-select,
  .form-multiselect {
    @apply block w-full rounded-md border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500;
  }

  .form-checkbox,
  .form-radio {
    @apply rounded border-gray-300 text-blue-600 shadow-sm focus:border-blue-500 focus:ring-blue-500;
  }

  .form-label {
    @apply block text-sm font-medium text-gray-700;
  }

  /* Header Animation Styles */
  .banner {
    @apply bg-white/0 backdrop-blur-0;
    transform: translateY(0);
  }

  .banner.scrolled {
    @apply bg-white/95 backdrop-blur-sm shadow-sm;
    transform: translateY(0);
  }

  .banner.initial {
    transform: translateY(-100%);
  }

  .banner.animate-in {
    animation: slideDown 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  }

  .banner.animate-in [data-header-logo] {
    animation: scaleLogo 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  }

  .banner.animate-in .nav a {
    animation: fadeInNav 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    opacity: 0;
  }

  .nav a {
    opacity: 1;
  }

  @keyframes slideDown {
    from {
      transform: translateY(-100%);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

  @keyframes scaleLogo {
    from {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1);
      opacity: 1;
    }
  }

  @keyframes fadeInNav {
    from {
      transform: translateY(-20px);
      opacity: 0;
    }
    to {
      transform: translateY(0);
      opacity: 1;
    }
  }

  /* Mobile Menu Styles */
  #mobile-menu {
    background-color: white;
    border-top: 1px solid rgb(229, 231, 235);
    padding: 0.5rem 0;
  }

  .mobile-nav {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .mobile-nav li {
    display: block;
    width: 100%;
  }

  .mobile-nav a {
    display: block;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    color: rgb(55, 65, 81);
    border-radius: 0.375rem;
    transition: all 0.2s;
  }

  .mobile-nav a:hover {
    background-color: rgb(243, 244, 246);
    color: rgb(37, 99, 235);
  }

  .mobile-nav .current-menu-item a {
    background-color: rgb(239, 246, 255);
    color: rgb(37, 99, 235);
  }

  /* Mobile Menu Animations */
  .animate-fade-in {
    animation: fadeIn 0.2s ease-out forwards;
  }

  .animate-fade-out {
    animation: fadeOut 0.2s ease-in forwards;
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(-10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes fadeOut {
    from {
      opacity: 1;
      transform: translateY(0);
    }
    to {
      opacity: 0;
      transform: translateY(-10px);
    }
  }

  /* News & Events Styles */
  .news-events-card {
    @apply transition-transform duration-300 hover:-translate-y-1;
  }

  .news-events-card img {
    @apply transition-transform duration-300;
  }

  .news-events-card:hover img {
    @apply scale-105;
  }

  .news-events-meta {
    @apply flex items-center text-sm text-gray-600 gap-4;
  }

  /* Custom Event Hero Styles */
  .custom-event-hero {
    @apply relative w-full min-h-[500px] flex items-center justify-center overflow-hidden;
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }

  .custom-event-hero--gradient {
    background: linear-gradient(135deg, var(--hero-gradient-start, #667eea) 0%, var(--hero-gradient-end, #764ba2) 100%);
  }

  .custom-event-hero--image {
    background-color: #1f2937; /* Fallback color */
  }

  .custom-event-hero--color {
    /* Background color set via inline style */
  }

  .custom-event-hero__overlay {
    @apply absolute inset-0 bg-black/30;
    backdrop-filter: blur(0.5px);
  }

  .custom-event-hero__container {
    @apply container relative z-10 px-4 sm:px-6 lg:px-8;
  }

  .custom-event-hero__content {
    @apply flex flex-col items-center justify-center text-center space-y-6 py-16 sm:py-20 lg:py-24;
  }

  .custom-event-hero__title {
    @apply text-4xl sm:text-5xl lg:text-6xl xl:text-7xl font-extrabold text-white leading-tight;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    max-width: 90%;
  }

  .custom-event-hero__subtitle {
    @apply text-xl sm:text-2xl lg:text-3xl text-blue-100 font-semibold max-w-4xl;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }

  .custom-event-hero__details {
    @apply flex flex-col sm:flex-row items-center justify-center gap-4 sm:gap-8 mt-8;
  }

  .custom-event-hero__detail {
    @apply flex items-center gap-2 text-white text-base sm:text-lg font-medium;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }

  .custom-event-hero__icon {
    @apply w-5 h-5 sm:w-6 sm:h-6 text-blue-200 flex-shrink-0;
  }

  .custom-event-hero__actions {
    @apply mt-8;
  }

  .custom-event-hero__register-btn {
    @apply inline-flex items-center gap-3 px-8 py-4 bg-white text-gray-900 font-bold text-lg rounded-full shadow-lg hover:shadow-xl transform hover:-translate-y-1 transition-all duration-300;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  }

  .custom-event-hero__register-btn:hover {
    @apply scale-105;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  }

  .custom-event-hero__register-icon {
    @apply w-5 h-5;
  }

  /* Mobile optimizations */
  @media (max-width: 640px) {
    .custom-event-hero {
      @apply min-h-[400px];
      background-attachment: scroll; /* Better performance on mobile */
    }

    .custom-event-hero__title {
      @apply text-3xl leading-tight;
    }

    .custom-event-hero__subtitle {
      @apply text-lg;
    }

    .custom-event-hero__details {
      @apply gap-3;
    }

    .custom-event-hero__detail {
      @apply text-sm;
    }

    .custom-event-hero__register-btn {
      @apply px-6 py-3 text-base;
    }
  }

  /* Tablet optimizations */
  @media (min-width: 641px) and (max-width: 1024px) {
    .custom-event-hero {
      @apply min-h-[450px];
    }

    .custom-event-hero__title {
      @apply text-4xl;
    }

    .custom-event-hero__subtitle {
      @apply text-xl;
    }
  }

  /* Large screen optimizations */
  @media (min-width: 1025px) {
    .custom-event-hero {
      @apply min-h-[600px];
    }
  }

  /* Reduced motion preferences */
  @media (prefers-reduced-motion: reduce) {
    .custom-event-hero__register-btn {
      @apply transform-none;
      transition: background-color 0.2s ease, box-shadow 0.2s ease;
    }

    .custom-event-hero__register-btn:hover {
      @apply scale-100;
    }
  }

  /* High contrast mode support */
  @media (prefers-contrast: high) {
    .custom-event-hero__overlay {
      @apply bg-black/60;
    }

    .custom-event-hero__title,
    .custom-event-hero__subtitle,
    .custom-event-hero__detail {
      text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);
    }
  }

  /* Custom Event Banner Styles */
  .custom-event-banner {
    @apply w-full bg-white border-y border-gray-200;
  }

  .custom-event-banner--above-hero {
    @apply border-b-0 shadow-sm;
  }

  .custom-event-banner--below-hero {
    @apply border-t-0 shadow-sm;
  }

  .custom-event-banner--footer {
    @apply bg-gray-50 border-t border-gray-300 mt-8;
  }

  .custom-event-banner__container {
    @apply container mx-auto px-4 sm:px-6 lg:px-8;
  }

  .custom-event-banner__content {
    @apply flex items-center justify-center py-4 sm:py-6;
  }

  .custom-event-banner__image {
    @apply max-w-full h-auto;
    max-height: 80px;
  }

  /* Responsive adjustments */
  @media (min-width: 640px) {
    .custom-event-banner__image {
      max-height: 100px;
    }
  }

  @media (min-width: 1024px) {
    .custom-event-banner__image {
      max-height: 120px;
    }
  }

  /* Footer position specific styles */
  .custom-event-banner--footer .custom-event-banner__content {
    @apply py-6 sm:py-8;
  }

  .custom-event-banner--footer .custom-event-banner__image {
    @apply opacity-80 hover:opacity-100 transition-opacity duration-200;
  }

  /* Registration Modal Styles */
  #event-modal {
    z-index: 9999;
  }

  #event-modal.hidden {
    display: none !important;
  }

  #event-modal:not(.hidden) {
    display: flex !important;
  }

  /* Print styles */
  @media print {
    .custom-event-banner {
      @apply border-0 shadow-none;
    }

    .custom-event-banner__image {
      max-height: 60px;
    }
  }

  /* Custom Event Tabs Styles */
  .custom-event-tabs {
    @apply bg-white rounded-xl shadow-lg overflow-hidden;
  }

  .custom-event-tabs__nav {
    @apply relative bg-gray-50 border-b border-gray-200;
  }

  .custom-event-tabs__nav-container {
    @apply relative;
  }

  .custom-event-tabs__nav-scroll {
    @apply flex overflow-x-auto scrollbar-hide;
    scroll-behavior: smooth;
    /* Improve scrolling on mobile */
    -webkit-overflow-scrolling: touch;
    /* Add subtle scroll indicators */
    background: linear-gradient(90deg, transparent 0%, transparent 10px, rgba(0,0,0,0.05) 10px, rgba(0,0,0,0.05) calc(100% - 10px), transparent calc(100% - 10px), transparent 100%);
  }

  .custom-event-tabs__tab {
    @apply flex items-center gap-2 px-4 py-3 sm:px-6 sm:py-4 text-sm font-medium text-gray-600 hover:text-gray-900 hover:bg-white/50 transition-all duration-200 border-b-2 border-transparent whitespace-nowrap;
    min-width: fit-content;
    /* Ensure tabs don't get too narrow */
    min-width: 120px;
    /* Better text handling for long tab names */
    text-overflow: ellipsis;
    max-width: 200px;
  }

  .custom-event-tabs__tab:focus {
    @apply outline-none ring-2 ring-blue-500 ring-inset;
  }

  .custom-event-tabs__tab--active {
    @apply text-blue-600 bg-white border-blue-600;
  }

  .custom-event-tabs__tab-icon {
    @apply w-4 h-4 sm:w-5 sm:h-5 flex-shrink-0;
  }

  .custom-event-tabs__tab-label {
    @apply hidden sm:block;
  }

  .custom-event-tabs__indicator {
    @apply absolute bottom-0 left-0 h-0.5 bg-blue-600 transition-all duration-300 ease-out;
    width: 0;
  }

  .custom-event-tabs__content {
    @apply relative;
  }

  .custom-event-tabs__panel {
    @apply hidden p-6 sm:p-8 lg:p-12;
    animation: fadeIn 0.3s ease-out;
  }

  .custom-event-tabs__panel--active {
    @apply block;
  }

  .custom-event-tabs__panel:focus {
    @apply outline-none;
  }

  /* Custom Tabs Content Rendering */
  .custom-event-custom-tab {
    @apply relative;
  }

  .custom-event-custom-tab__content {
    @apply relative;
  }

  .custom-event-custom-tab__header {
    @apply mb-6 pb-4 border-b border-gray-200;
  }

  .custom-event-custom-tab__title {
    @apply text-2xl font-bold text-gray-900 m-0;
  }

  .custom-event-custom-tab__body {
    @apply relative;
  }

  /* Enhanced prose styling for custom tab content */
  .custom-event-prose {
    @apply text-gray-700 leading-relaxed;
  }

  .custom-event-prose h1,
  .custom-event-prose h2,
  .custom-event-prose h3,
  .custom-event-prose h4,
  .custom-event-prose h5,
  .custom-event-prose h6 {
    @apply text-gray-900 font-semibold mt-8 mb-4 first:mt-0;
  }

  .custom-event-prose h1 { @apply text-3xl; }
  .custom-event-prose h2 { @apply text-2xl; }
  .custom-event-prose h3 { @apply text-xl; }
  .custom-event-prose h4 { @apply text-lg; }

  .custom-event-prose p {
    @apply mb-4 last:mb-0;
  }

  .custom-event-prose ul,
  .custom-event-prose ol {
    @apply mb-4 pl-6;
  }

  .custom-event-prose li {
    @apply mb-2;
  }

  .custom-event-prose ul li {
    @apply list-disc;
  }

  .custom-event-prose ol li {
    @apply list-decimal;
  }

  .custom-event-prose blockquote {
    @apply border-l-4 border-blue-500 pl-4 py-2 my-6 bg-blue-50 italic text-blue-800;
  }

  .custom-event-prose img {
    @apply max-w-full h-auto rounded-lg shadow-md my-6;
  }

  .custom-event-prose figure {
    @apply my-6;
  }

  .custom-event-prose figcaption {
    @apply text-sm text-gray-600 text-center mt-2 italic;
  }

  .custom-event-prose a {
    @apply text-blue-600 hover:text-blue-800 underline transition-colors duration-200;
  }

  .custom-event-prose table {
    @apply w-full border-collapse border border-gray-300 my-6;
  }

  .custom-event-prose th,
  .custom-event-prose td {
    @apply border border-gray-300 px-4 py-2 text-left;
  }

  .custom-event-prose th {
    @apply bg-gray-100 font-semibold;
  }

  .custom-event-prose code {
    @apply bg-gray-100 px-2 py-1 rounded text-sm font-mono;
  }

  .custom-event-prose pre {
    @apply bg-gray-900 text-gray-100 p-4 rounded-lg overflow-x-auto my-6;
  }

  .custom-event-prose pre code {
    @apply bg-transparent p-0;
  }

  /* Language indicator */
  .custom-event-custom-tab__language-indicator {
    @apply absolute top-4 right-4;
  }

  .custom-event-custom-tab__language-badge {
    @apply inline-block bg-blue-100 text-blue-800 text-xs font-medium px-2 py-1 rounded-full;
  }

  .custom-event-custom-tab__language-badge--small {
    @apply text-xs px-1.5 py-0.5 ml-1;
  }

  /* Empty state styling */
  .custom-event-custom-tab__empty {
    @apply text-center py-12 px-6;
  }

  .custom-event-custom-tab__empty-icon {
    @apply w-16 h-16 mx-auto mb-4 text-gray-400;
  }

  .custom-event-custom-tab__empty-icon svg {
    @apply w-full h-full;
  }

  .custom-event-custom-tab__empty-title {
    @apply text-xl font-semibold text-gray-900 mb-2;
  }

  .custom-event-custom-tab__empty-description {
    @apply text-gray-600 mb-4;
  }

  .custom-event-custom-tab__empty-languages {
    @apply mt-4 pt-4 border-t border-gray-200;
  }

  /* Custom Event Content Styles */
  .custom-event-content {
    @apply bg-white rounded-xl shadow-lg p-6 sm:p-8 lg:p-12;
  }

  .custom-event-section {
    @apply mb-12 last:mb-0;
  }

  .custom-event-section__title {
    @apply text-2xl sm:text-3xl font-bold text-gray-900 mb-6 pb-3 border-b border-gray-200;
  }

  /* Overview Content Styles */
  .custom-event-overview {
    @apply space-y-8;
  }

  .custom-event-overview__details {
    @apply bg-gradient-to-br from-blue-50 to-indigo-50 rounded-xl p-6 border border-blue-100;
  }

  .custom-event-overview__details-title {
    @apply text-xl font-semibold text-gray-900 mb-4;
  }

  .custom-event-overview__details-grid {
    @apply grid gap-4 sm:grid-cols-2;
  }

  .custom-event-overview__detail {
    @apply flex items-start gap-3;
  }

  .custom-event-overview__detail-icon {
    @apply flex-shrink-0 w-5 h-5 text-blue-600 mt-0.5;
  }

  .custom-event-overview__detail-content {
    @apply flex-1;
  }

  .custom-event-overview__detail-label {
    @apply text-sm font-medium text-gray-600 mb-1;
  }

  .custom-event-overview__detail-value {
    @apply text-base font-semibold text-gray-900;
  }

  .custom-event-overview__registration {
    @apply mt-6 pt-4 border-t border-blue-200;
  }

  .custom-event-overview__register-btn {
    @apply inline-flex items-center gap-2 px-6 py-3 bg-blue-600 text-white font-semibold rounded-lg hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 transition-colors duration-200;
  }

  .custom-event-overview__register-icon {
    @apply w-4 h-4;
  }

  .custom-event-overview__content {
    @apply prose prose-lg max-w-none;
  }

  .custom-event-overview__quick-nav {
    @apply bg-gray-50 rounded-xl p-6;
  }

  .custom-event-overview__quick-nav-title {
    @apply text-lg font-semibold text-gray-900 mb-4;
  }

  .custom-event-overview__quick-nav-grid {
    @apply grid gap-3 sm:grid-cols-2 lg:grid-cols-3;
  }

  .custom-event-overview__quick-nav-item {
    @apply flex items-center gap-3 p-4 bg-white rounded-lg border border-gray-200 hover:border-blue-300 hover:shadow-md transition-all duration-200 text-left;
  }

  .custom-event-overview__quick-nav-item:focus {
    @apply outline-none ring-2 ring-blue-500 ring-offset-2;
  }

  .custom-event-overview__quick-nav-icon {
    @apply flex-shrink-0 w-8 h-8 text-blue-600;
  }

  .custom-event-overview__quick-nav-content {
    @apply flex-1 min-w-0;
  }

  .custom-event-overview__quick-nav-label {
    @apply text-sm font-semibold text-gray-900 mb-1;
  }

  .custom-event-overview__quick-nav-description {
    @apply text-xs text-gray-600 line-clamp-2;
  }

  .custom-event-overview__quick-nav-arrow {
    @apply flex-shrink-0 w-4 h-4 text-gray-400;
  }

  /* Empty State Styles */
  .custom-event-program__empty,
  .custom-event-speakers__empty,
  .custom-event-organizers__empty,
  .custom-event-sponsors__empty,
  .custom-event-motivation__empty {
    @apply text-center py-12;
  }

  .custom-event-program__empty-icon,
  .custom-event-speakers__empty-icon,
  .custom-event-organizers__empty-icon,
  .custom-event-sponsors__empty-icon,
  .custom-event-motivation__empty-icon {
    @apply w-16 h-16 mx-auto text-gray-400 mb-4;
  }

  .custom-event-program__empty-title,
  .custom-event-speakers__empty-title,
  .custom-event-organizers__empty-title,
  .custom-event-sponsors__empty-title,
  .custom-event-motivation__empty-title {
    @apply text-xl font-semibold text-gray-900 mb-2;
  }

  .custom-event-program__empty-description,
  .custom-event-speakers__empty-description,
  .custom-event-organizers__empty-description,
  .custom-event-sponsors__empty-description,
  .custom-event-motivation__empty-description {
    @apply text-gray-600 max-w-md mx-auto;
  }

  /* Placeholder Styles */
  .custom-event-timeline__placeholder,
  .custom-event-speakers__placeholder,
  .custom-event-organizers__placeholder,
  .custom-event-sponsors__placeholder {
    @apply text-center py-8 bg-blue-50 rounded-lg border border-blue-200;
  }

  .custom-event-timeline__placeholder-icon,
  .custom-event-speakers__placeholder-icon,
  .custom-event-organizers__placeholder-icon,
  .custom-event-sponsors__placeholder-icon {
    @apply w-12 h-12 mx-auto text-blue-600 mb-3;
  }

  .custom-event-timeline__placeholder-title,
  .custom-event-speakers__placeholder-title,
  .custom-event-organizers__placeholder-title,
  .custom-event-sponsors__placeholder-title {
    @apply text-lg font-semibold text-gray-900 mb-2;
  }

  .custom-event-timeline__placeholder-description,
  .custom-event-speakers__placeholder-description,
  .custom-event-organizers__placeholder-description,
  .custom-event-sponsors__placeholder-description {
    @apply text-sm text-gray-600 mb-3;
  }

  .custom-event-timeline__placeholder-count,
  .custom-event-speakers__placeholder-count,
  .custom-event-organizers__placeholder-count,
  .custom-event-sponsors__placeholder-count {
    @apply text-sm font-medium text-blue-600;
  }

  /* Motivation Content Styles */
  .custom-event-motivation {
    @apply space-y-8;
  }

  .custom-event-motivation__section {
    @apply bg-gradient-to-br from-gray-50 to-blue-50 rounded-xl p-6 border border-gray-200;
  }

  .custom-event-motivation__header {
    @apply flex items-center gap-3 mb-4;
  }

  .custom-event-motivation__icon {
    @apply w-6 h-6 text-blue-600;
  }

  .custom-event-motivation__title {
    @apply text-xl font-semibold text-gray-900;
  }

  .custom-event-motivation__content {
    @apply prose prose-lg max-w-none;
  }

  .custom-event-motivation__language-note {
    @apply text-center py-3 border-t border-gray-200;
  }

  /* Multilingual Support Styles */
  .custom-event-motivation__language-switcher {
    @apply mb-6 pb-4 border-b border-gray-200;
  }

  .custom-event-motivation__language-buttons {
    @apply flex gap-2 justify-center;
  }

  .custom-event-motivation__lang-btn {
    @apply flex items-center gap-2 px-4 py-2 text-sm font-medium text-gray-600 bg-white border border-gray-300 rounded-md hover:bg-gray-50 hover:text-gray-900 transition-all duration-200;
  }

  .custom-event-motivation__lang-btn--active {
    @apply bg-blue-600 text-white border-blue-600 hover:bg-blue-700;
  }

  .custom-event-motivation__lang-icon {
    @apply w-4 h-4;
  }

  .custom-event-motivation__lang-content {
    @apply space-y-8;
  }

  /* Language transition animations */
  .custom-event-motivation__lang-content {
    @apply transition-opacity duration-300;
  }

  .custom-event-motivation__lang-content[style*="display: none"] {
    @apply opacity-0;
  }

  /* Mobile responsive for language switcher */
  @media (max-width: 640px) {
    .custom-event-motivation__language-buttons {
      @apply flex-col;
    }

    .custom-event-motivation__lang-btn {
      @apply justify-center;
    }
  }

  /* Mobile Optimizations */
  @media (max-width: 640px) {
    .custom-event-tabs__nav-scroll {
      @apply px-4;
    }

    .custom-event-tabs__tab {
      @apply px-3 py-3;
    }

    .custom-event-tabs__tab-label {
      @apply block text-xs;
    }

    /* Custom tabs content mobile optimizations */
    .custom-event-custom-tab__title {
      @apply text-xl;
    }

    .custom-event-prose h1 { @apply text-2xl; }
    .custom-event-prose h2 { @apply text-xl; }
    .custom-event-prose h3 { @apply text-lg; }
    .custom-event-prose h4 { @apply text-base; }

    .custom-event-prose {
      @apply text-sm leading-relaxed;
    }

    .custom-event-custom-tab__language-indicator {
      @apply top-2 right-2;
    }

    .custom-event-custom-tab__empty {
      @apply py-8 px-4;
    }

    .custom-event-custom-tab__empty-icon {
      @apply w-12 h-12;
    }

    .custom-event-custom-tab__empty-title {
      @apply text-lg;
    }

    .custom-event-overview__details-grid {
      @apply grid-cols-1;
    }

    .custom-event-overview__quick-nav-grid {
      @apply grid-cols-1;
    }
  }

  /* Animations */
  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Custom Event Timeline Styles */
  .custom-event-timeline {
    @apply bg-white rounded-xl shadow-lg overflow-hidden;
  }

  .custom-event-timeline__header {
    @apply flex flex-col sm:flex-row sm:items-center sm:justify-between p-6 bg-gray-50 border-b border-gray-200;
  }

  .custom-event-timeline__title {
    @apply text-xl font-semibold text-gray-900 mb-4 sm:mb-0;
  }

  .custom-event-timeline__controls {
    @apply flex gap-2 flex-wrap;
  }

  .custom-event-timeline__filter-btn {
    @apply px-3 py-1 text-sm font-medium text-gray-600 bg-white border border-gray-300 rounded-md hover:bg-gray-50 hover:text-gray-900 transition-colors duration-200;
  }

  .custom-event-timeline__filter-btn--active {
    @apply bg-blue-600 text-white border-blue-600 hover:bg-blue-700;
  }

  .custom-event-timeline__container {
    @apply relative p-6 hidden lg:block;
  }

  .custom-event-timeline__scale {
    @apply relative h-8 mb-4 border-b border-gray-200;
  }

  .custom-event-timeline__scale-mark {
    @apply absolute top-0 h-full;
  }

  .custom-event-timeline__scale-time {
    @apply absolute -bottom-6 left-0 text-xs text-gray-500 font-medium;
    transform: translateX(-50%);
  }

  .custom-event-timeline__track {
    @apply relative h-20 bg-gray-100 rounded-lg overflow-hidden;
  }

  .custom-event-timeline__item {
    @apply absolute top-2 h-16 rounded-md cursor-pointer transition-all duration-200 hover:shadow-lg hover:scale-105 hover:z-10;
    min-width: 120px;
  }

  .custom-event-timeline__item-content {
    @apply p-2 h-full flex flex-col justify-center text-white text-xs;
  }

  .custom-event-timeline__item-time {
    @apply font-semibold mb-1;
  }

  .custom-event-timeline__item-duration {
    @apply opacity-80 ml-1;
  }

  .custom-event-timeline__item-title {
    @apply font-medium line-clamp-2 leading-tight;
  }

  .custom-event-timeline__item-description {
    @apply opacity-80 text-xs mt-1 line-clamp-1;
  }

  .custom-event-timeline__item-tooltip {
    @apply absolute bottom-full left-1/2 transform -translate-x-1/2 mb-2 p-3 bg-gray-900 text-white text-sm rounded-lg shadow-lg opacity-0 pointer-events-none transition-opacity duration-200 z-20;
    min-width: 200px;
  }

  .custom-event-timeline__item:hover .custom-event-timeline__item-tooltip {
    @apply opacity-100;
  }

  .custom-event-timeline__tooltip-time {
    @apply font-semibold text-blue-300 mb-1;
  }

  .custom-event-timeline__tooltip-title {
    @apply font-medium mb-2;
  }

  .custom-event-timeline__tooltip-description {
    @apply text-gray-300 text-xs;
  }

  .custom-event-timeline__legend {
    @apply px-6 py-3 bg-gray-50 border-t border-gray-200 text-center;
  }

  .custom-event-timeline__legend-title {
    @apply text-sm text-gray-600;
  }

  /* Mobile Timeline Styles */
  .custom-event-timeline__mobile {
    @apply block lg:hidden p-6 space-y-4;
  }

  .custom-event-timeline__mobile-item {
    @apply flex items-start gap-4 p-4 bg-gray-50 rounded-lg cursor-pointer hover:bg-gray-100 transition-colors duration-200;
  }

  .custom-event-timeline__mobile-time {
    @apply flex-shrink-0 px-3 py-2 text-white text-sm font-semibold rounded-md min-w-16 text-center;
  }

  .custom-event-timeline__mobile-content {
    @apply flex-1;
  }

  .custom-event-timeline__mobile-title {
    @apply font-semibold text-gray-900 mb-1;
  }

  .custom-event-timeline__mobile-duration {
    @apply text-sm text-gray-600 mb-2;
  }

  .custom-event-timeline__mobile-description {
    @apply text-sm text-gray-700;
  }

  /* Timeline Modal Styles */
  .custom-event-timeline__modal {
    @apply fixed inset-0 z-50 flex items-center justify-center p-4;
  }

  .custom-event-timeline__modal-overlay {
    @apply absolute inset-0 bg-black bg-opacity-50;
  }

  .custom-event-timeline__modal-content {
    @apply relative bg-white rounded-lg shadow-xl max-w-lg w-full max-h-96 overflow-y-auto;
  }

  .custom-event-timeline__modal-close {
    @apply absolute top-4 right-4 text-gray-400 hover:text-gray-600 transition-colors duration-200;
  }

  .custom-event-timeline__modal-close svg {
    @apply w-6 h-6;
  }

  /* Empty State */
  .custom-event-timeline__empty {
    @apply text-center py-12 px-6;
  }

  .custom-event-timeline__empty-icon {
    @apply w-16 h-16 mx-auto text-gray-400 mb-4;
  }

  .custom-event-timeline__empty-title {
    @apply text-xl font-semibold text-gray-900 mb-2;
  }

  .custom-event-timeline__empty-description {
    @apply text-gray-600 max-w-md mx-auto;
  }

  /* Filter States */
  .custom-event-timeline__item[data-type]:not([data-type="all"]) {
    @apply transition-opacity duration-300;
  }

  .custom-event-timeline[data-filter]:not([data-filter="all"]) .custom-event-timeline__item:not([data-type]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-timeline[data-filter="keynote"] .custom-event-timeline__item:not([data-type="keynote"]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-timeline[data-filter="session"] .custom-event-timeline__item:not([data-type="session"]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-timeline[data-filter="break"] .custom-event-timeline__item:not([data-type="break"]) {
    @apply opacity-30 pointer-events-none;
  }

  /* Responsive Adjustments */
  @media (max-width: 1024px) {
    .custom-event-timeline__container {
      @apply hidden;
    }
  }

  /* Custom Event Speakers Styles */
  .custom-event-speakers {
    @apply space-y-6;
  }

  .custom-event-speakers__header {
    @apply flex flex-col lg:flex-row lg:items-center lg:justify-between gap-4 p-6 bg-gray-50 rounded-lg;
  }

  .custom-event-speakers__controls {
    @apply flex flex-wrap gap-2;
  }

  .custom-event-speakers__filter-btn {
    @apply px-3 py-2 text-sm font-medium text-gray-600 bg-white border border-gray-300 rounded-md hover:bg-gray-50 hover:text-gray-900 transition-colors duration-200;
  }

  .custom-event-speakers__filter-btn--active {
    @apply bg-blue-600 text-white border-blue-600 hover:bg-blue-700;
  }

  .custom-event-speakers__search {
    @apply relative;
  }

  .custom-event-speakers__search-input {
    @apply pl-10 pr-4 py-2 border border-gray-300 rounded-md focus:ring-2 focus:ring-blue-500 focus:border-blue-500;
    min-width: 250px;
  }

  .custom-event-speakers__search-icon {
    @apply absolute left-3 top-1/2 transform -translate-y-1/2 w-4 h-4 text-gray-400;
  }

  .custom-event-speakers__grid {
    @apply grid gap-6 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4;
  }

  .custom-event-speakers__card {
    @apply bg-white rounded-xl shadow-md hover:shadow-lg transition-all duration-300 cursor-pointer overflow-hidden hover:-translate-y-1;
  }

  .custom-event-speakers__card--tbc {
    @apply opacity-90;
  }

  .custom-event-speakers__card.hidden-by-search {
    @apply hidden;
  }

  .custom-event-speakers__photo {
    @apply relative aspect-square overflow-hidden bg-gray-100;
  }

  .custom-event-speakers__photo-img {
    @apply w-full h-full object-cover;
  }

  .custom-event-speakers__photo-placeholder {
    @apply w-full h-full flex items-center justify-center text-gray-400;
  }

  .custom-event-speakers__photo-placeholder svg {
    @apply w-16 h-16;
  }

  .custom-event-speakers__status-badge {
    @apply absolute top-2 left-2 px-2 py-1 bg-yellow-500 text-white text-xs font-semibold rounded;
  }

  .custom-event-speakers__category-badge {
    @apply absolute top-2 right-2 w-8 h-8 rounded-full flex items-center justify-center text-white;
  }

  .custom-event-speakers__category-badge svg {
    @apply w-4 h-4;
  }

  .custom-event-speakers__category-badge--keynote {
    @apply bg-purple-600;
  }

  .custom-event-speakers__category-badge--government {
    @apply bg-blue-600;
  }

  .custom-event-speakers__category-badge--international {
    @apply bg-green-600;
  }

  .custom-event-speakers__category-badge--academic {
    @apply bg-orange-600;
  }

  .custom-event-speakers__content {
    @apply p-4;
  }

  .custom-event-speakers__name {
    @apply text-lg font-semibold text-gray-900 mb-1;
  }

  .custom-event-speakers__title {
    @apply text-sm text-blue-600 font-medium mb-1;
  }

  .custom-event-speakers__organization {
    @apply text-sm text-gray-600 mb-2;
  }

  .custom-event-speakers__country {
    @apply flex items-center gap-1 text-xs text-gray-500;
  }

  .custom-event-speakers__country svg {
    @apply w-3 h-3;
  }

  /* Custom Event Program Styles */
  .custom-event-program {
    @apply space-y-6;
  }

  .custom-event-program__summary {
    @apply bg-gradient-to-br from-blue-50 to-indigo-50 rounded-xl p-6 border border-blue-100;
  }

  .custom-event-program__stats {
    @apply grid gap-4 sm:grid-cols-3;
  }

  .custom-event-program__stat {
    @apply text-center;
  }

  .custom-event-program__stat-number {
    @apply block text-2xl font-bold text-blue-600;
  }

  .custom-event-program__stat-label {
    @apply text-sm text-gray-600 mt-1;
  }

  .custom-event-program__timeline-container {
    @apply bg-white rounded-xl shadow-lg overflow-hidden;
  }

  .custom-event-program__list {
    @apply bg-white rounded-xl shadow-lg overflow-hidden;
  }

  .custom-event-program__list-header {
    @apply flex items-center justify-between p-6 bg-gray-50 border-b border-gray-200;
  }

  .custom-event-program__list-title {
    @apply text-xl font-semibold text-gray-900;
  }

  .custom-event-program__view-toggle {
    @apply flex items-center gap-2 px-4 py-2 text-sm font-medium text-gray-600 bg-white border border-gray-300 rounded-md hover:bg-gray-50 hover:text-gray-900 transition-colors duration-200;
  }

  .custom-event-program__view-toggle svg {
    @apply w-4 h-4;
  }

  .custom-event-program__items {
    @apply p-6 space-y-4;
  }

  .custom-event-program__item {
    @apply flex gap-4 p-4 bg-gray-50 rounded-lg;
  }

  .custom-event-program__item-time {
    @apply flex-shrink-0 flex flex-col items-center justify-center px-4 py-3 text-white text-sm font-semibold rounded-md min-w-20;
  }

  .custom-event-program__item-start {
    @apply block;
  }

  .custom-event-program__item-duration {
    @apply block text-xs opacity-80 mt-1;
  }

  .custom-event-program__item-content {
    @apply flex-1;
  }

  .custom-event-program__item-title {
    @apply text-lg font-semibold text-gray-900 mb-2;
  }

  .custom-event-program__item-speaker {
    @apply flex items-center gap-2 text-sm text-gray-600 mb-1;
  }

  .custom-event-program__item-speaker svg {
    @apply w-4 h-4;
  }

  .custom-event-program__item-location {
    @apply flex items-center gap-2 text-sm text-gray-600 mb-2;
  }

  .custom-event-program__item-location svg {
    @apply w-4 h-4;
  }

  .custom-event-program__item-description {
    @apply text-sm text-gray-700;
  }

  .custom-event-program__empty-actions {
    @apply mt-4;
  }

  .custom-event-program__empty-cta {
    @apply inline-flex items-center px-4 py-2 bg-blue-600 text-white font-medium rounded-md hover:bg-blue-700 transition-colors duration-200 border-0 cursor-pointer;
  }

  /* Custom Event Organizers Styles */
  .custom-event-organizers {
    @apply space-y-8;
  }

  .custom-event-organizers__section {
    @apply space-y-4;
  }

  .custom-event-organizers__section-title {
    @apply text-xl font-semibold text-gray-900 mb-4 pb-2 border-b border-gray-200;
  }

  .custom-event-organizers__grid {
    @apply grid gap-6 sm:grid-cols-2 lg:grid-cols-3;
  }

  .custom-event-organizers__card {
    @apply bg-white rounded-xl shadow-md hover:shadow-lg transition-all duration-300 overflow-hidden;
  }

  .custom-event-organizers__card--main {
    @apply ring-2 ring-blue-500 ring-opacity-50;
  }

  .custom-event-organizers__logo {
    @apply aspect-video bg-gray-50 flex items-center justify-center p-4;
  }

  .custom-event-organizers__logo-img {
    @apply max-w-full max-h-full object-contain;
  }

  .custom-event-organizers__logo-placeholder {
    @apply w-full h-full flex items-center justify-center text-gray-400;
  }

  .custom-event-organizers__logo-placeholder svg {
    @apply w-12 h-12;
  }

  .custom-event-organizers__content {
    @apply p-4;
  }

  .custom-event-organizers__name {
    @apply text-lg font-semibold text-gray-900 mb-2;
  }

  .custom-event-organizers__description {
    @apply text-sm text-gray-600 mb-3;
  }

  .custom-event-organizers__website {
    @apply inline-flex items-center gap-1 text-sm text-blue-600 hover:text-blue-700 transition-colors duration-200;
  }

  .custom-event-organizers__website svg {
    @apply w-4 h-4;
  }

  /* Custom Event Sponsors Styles */
  .custom-event-sponsors {
    @apply space-y-8;
  }

  .custom-event-sponsors__tier {
    @apply space-y-4;
  }

  .custom-event-sponsors__tier-title {
    @apply text-xl font-semibold text-gray-900 mb-4 pb-2 border-b border-gray-200;
  }

  .custom-event-sponsors__tier--principal .custom-event-sponsors__tier-title {
    @apply text-2xl text-blue-600;
  }

  .custom-event-sponsors__tier--strategic .custom-event-sponsors__tier-title {
    @apply text-xl text-green-600;
  }

  .custom-event-sponsors__tier--supporting .custom-event-sponsors__tier-title {
    @apply text-lg text-gray-600;
  }

  .custom-event-sponsors__grid {
    @apply grid gap-6;
  }

  .custom-event-sponsors__tier--principal .custom-event-sponsors__grid {
    @apply sm:grid-cols-1 lg:grid-cols-2;
  }

  .custom-event-sponsors__tier--strategic .custom-event-sponsors__grid {
    @apply sm:grid-cols-2 lg:grid-cols-3;
  }

  .custom-event-sponsors__tier--supporting .custom-event-sponsors__grid {
    @apply sm:grid-cols-3 lg:grid-cols-4;
  }

  .custom-event-sponsors__card {
    @apply bg-white rounded-xl shadow-md hover:shadow-lg transition-all duration-300 overflow-hidden cursor-pointer;
  }

  .custom-event-sponsors__card:hover {
    @apply -translate-y-1;
  }

  .custom-event-sponsors__logo {
    @apply bg-gray-50 flex items-center justify-center p-6;
  }

  .custom-event-sponsors__tier--principal .custom-event-sponsors__logo {
    @apply aspect-video p-8;
  }

  .custom-event-sponsors__tier--strategic .custom-event-sponsors__logo {
    @apply aspect-video p-6;
  }

  .custom-event-sponsors__tier--supporting .custom-event-sponsors__logo {
    @apply aspect-square p-4;
  }

  .custom-event-sponsors__logo-img {
    @apply max-w-full max-h-full object-contain;
  }

  .custom-event-sponsors__logo-placeholder {
    @apply w-full h-full flex items-center justify-center text-gray-400;
  }

  .custom-event-sponsors__logo-placeholder svg {
    @apply w-12 h-12;
  }

  .custom-event-sponsors__content {
    @apply p-4;
  }

  .custom-event-sponsors__name {
    @apply text-lg font-semibold text-gray-900 mb-2;
  }

  .custom-event-sponsors__description {
    @apply text-sm text-gray-600;
  }

  /* Accessibility improvements */
  .custom-event-timeline__item:focus,
  .custom-event-speakers__card:focus,
  .custom-event-organizers__card:focus,
  .custom-event-sponsors__card:focus {
    @apply outline-none ring-2 ring-blue-500 ring-offset-2;
  }

  /* Print styles */
  @media print {
    .custom-event-tabs__nav,
    .custom-event-timeline__controls,
    .custom-event-speakers__controls {
      @apply hidden;
    }

    .custom-event-tabs__panel {
      @apply block !important;
    }

    /* Custom tabs content print styles */
    .custom-event-custom-tab__language-indicator {
      @apply hidden;
    }

    .custom-event-custom-tab__empty {
      @apply hidden;
    }

    .custom-event-prose {
      @apply text-black;
    }

    .custom-event-prose a {
      @apply text-black no-underline;
    }

    .custom-event-prose a:after {
      content: " (" attr(href) ")";
      @apply text-xs;
    }

    .custom-event-prose blockquote {
      @apply bg-transparent border-l-2 border-black;
    }

    .custom-event-timeline__container {
      @apply block !important;
    }
  }al {
    @apply bg-green-600;
  }

  .custom-event-speakers__category-badge--academic {
    @apply bg-gray-600;
  }

  .custom-event-speakers__info {
    @apply p-4;
  }

  .custom-event-speakers__name {
    @apply text-lg font-semibold text-gray-900 mb-2 line-clamp-2;
  }

  .custom-event-speakers__title {
    @apply text-sm font-medium text-blue-600 mb-1 line-clamp-2;
  }

  .custom-event-speakers__organization {
    @apply text-sm text-gray-700 mb-2 line-clamp-2;
  }

  .custom-event-speakers__country {
    @apply flex items-center gap-1 text-xs text-gray-500;
  }

  .custom-event-speakers__country svg {
    @apply w-3 h-3;
  }

  /* Speaker Modal Styles */
  .custom-event-speakers__modal {
    @apply fixed inset-0 z-50 flex items-center justify-center p-4;
  }

  .custom-event-speakers__modal-overlay {
    @apply absolute inset-0 bg-black bg-opacity-50;
  }

  .custom-event-speakers__modal-content {
    @apply relative bg-white rounded-lg shadow-xl max-w-2xl w-full max-h-96 overflow-y-auto;
  }

  .custom-event-speakers__modal-close {
    @apply absolute top-4 right-4 text-gray-400 hover:text-gray-600 transition-colors duration-200 z-10;
  }

  .custom-event-speakers__modal-close svg {
    @apply w-6 h-6;
  }

  /* Filter States */
  .custom-event-speakers__card {
    @apply transition-opacity duration-300;
  }

  .custom-event-speakers[data-filter]:not([data-filter="all"]) .custom-event-speakers__card:not([data-category]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-speakers[data-filter="keynote"] .custom-event-speakers__card:not([data-category="keynote"]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-speakers[data-filter="government"] .custom-event-speakers__card:not([data-category="government"]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-speakers[data-filter="international"] .custom-event-speakers__card:not([data-category="international"]) {
    @apply opacity-30 pointer-events-none;
  }

  .custom-event-speakers[data-filter="academic"] .custom-event-speakers__card:not([data-category="academic"]) {
    @apply opacity-30 pointer-events-none;
  }

  /* Search States */
  .custom-event-speakers__card.hidden-by-search {
    @apply opacity-30 pointer-events-none;
  }

  /* Performance Optimizations */
  .custom-event-speakers__photo-img,
  .custom-event-organizers__logo-img,
  .custom-event-sponsors__logo-img {
    @apply transition-transform duration-200;
    will-change: transform;
  }

  .custom-event-speakers__photo-img:hover,
  .custom-event-organizers__logo-img:hover,
  .custom-event-sponsors__logo-img:hover {
    transform: scale(1.05);
  }

  /* Lazy loading placeholder styles */
  .custom-event-speakers__photo-img[loading="lazy"],
  .custom-event-organizers__logo-img[loading="lazy"],
  .custom-event-sponsors__logo-img[loading="lazy"] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
  }

  @keyframes loading {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
  }

  /* Mobile Responsive */
  @media (max-width: 640px) {
    .custom-event-speakers__header {
      @apply flex-col;
    }

    .custom-event-speakers__search-input {
      min-width: 100%;
    }

    .custom-event-speakers__grid {
      @apply grid-cols-1;
    }
  }

  /* Custom Event Organizers Styles */
  .custom-event-organizers {
    @apply space-y-8;
  }

  .custom-event-organizers__section {
    @apply space-y-4;
  }

  .custom-event-organizers__section-title {
    @apply text-xl font-semibold text-gray-900 pb-2 border-b border-gray-200;
  }

  .custom-event-organizers__grid {
    @apply grid gap-6;
  }

  .custom-event-organizers__grid--main {
    @apply sm:grid-cols-1 lg:grid-cols-2;
  }

  .custom-event-organizers__grid--partner {
    @apply sm:grid-cols-2 lg:grid-cols-3;
  }

  .custom-event-organizers__grid--supporting {
    @apply sm:grid-cols-2 lg:grid-cols-4;
  }

  .custom-event-organizers__card {
    @apply bg-white rounded-lg shadow-md hover:shadow-lg transition-all duration-300 overflow-hidden;
  }

  .custom-event-organizers__card--main {
    @apply hover:-translate-y-1;
  }

  .custom-event-organizers__card--partner {
    @apply hover:-translate-y-1;
  }

  .custom-event-organizers__card--supporting {
    @apply hover:-translate-y-0.5;
  }

  .custom-event-organizers__card[href] {
    @apply cursor-pointer;
  }

  .custom-event-organizers__logo {
    @apply relative aspect-video bg-gray-50 flex items-center justify-center p-4;
  }

  .custom-event-organizers__logo-img {
    @apply max-w-full max-h-full object-contain;
  }

  .custom-event-organizers__logo-placeholder {
    @apply w-16 h-16 text-gray-400;
  }

  .custom-event-organizers__logo-placeholder svg {
    @apply w-full h-full;
  }

  .custom-event-organizers__link-indicator {
    @apply absolute top-2 right-2 w-6 h-6 bg-blue-600 text-white rounded-full flex items-center justify-center opacity-0 transition-opacity duration-200;
  }

  .custom-event-organizers__card:hover .custom-event-organizers__link-indicator {
    @apply opacity-100;
  }

  .custom-event-organizers__link-indicator svg {
    @apply w-3 h-3;
  }

  .custom-event-organizers__info {
    @apply p-4;
  }

  .custom-event-organizers__name {
    @apply text-lg font-semibold text-gray-900 mb-2;
  }

  .custom-event-organizers__description {
    @apply text-sm text-gray-600 mb-3 line-clamp-3;
  }

  .custom-event-organizers__website {
    @apply flex items-center gap-1 text-xs text-blue-600;
  }

  .custom-event-organizers__website svg {
    @apply w-3 h-3;
  }

  /* Custom Event Sponsors Styles */
  .custom-event-sponsors {
    @apply space-y-8;
  }

  .custom-event-sponsors__section {
    @apply space-y-6;
  }

  .custom-event-sponsors__section-title {
    @apply text-xl font-semibold text-gray-900 pb-2 border-b border-gray-200;
  }

  .custom-event-sponsors__grid {
    @apply grid gap-6;
  }

  .custom-event-sponsors__grid--principal {
    @apply sm:grid-cols-1 lg:grid-cols-2;
  }

  .custom-event-sponsors__grid--strategic {
    @apply sm:grid-cols-2 lg:grid-cols-3;
  }

  .custom-event-sponsors__grid--supporting {
    @apply sm:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5;
  }

  .custom-event-sponsors__card {
    @apply bg-white rounded-lg shadow-md hover:shadow-lg transition-all duration-300 overflow-hidden;
  }

  .custom-event-sponsors__card--principal {
    @apply hover:-translate-y-2 shadow-lg;
  }

  .custom-event-sponsors__card--strategic {
    @apply hover:-translate-y-1;
  }

  .custom-event-sponsors__card--supporting {
    @apply hover:-translate-y-0.5;
  }

  .custom-event-sponsors__card[href] {
    @apply cursor-pointer;
  }

  .custom-event-sponsors__logo {
    @apply relative bg-gray-50 flex items-center justify-center p-4;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__logo {
    @apply aspect-video p-6;
  }

  .custom-event-sponsors__card--strategic .custom-event-sponsors__logo {
    @apply aspect-video p-4;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__logo {
    @apply aspect-square p-3;
  }

  .custom-event-sponsors__logo-img {
    @apply max-w-full max-h-full object-contain;
  }

  .custom-event-sponsors__logo-placeholder {
    @apply text-gray-400;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__logo-placeholder {
    @apply w-20 h-20;
  }

  .custom-event-sponsors__card--strategic .custom-event-sponsors__logo-placeholder {
    @apply w-16 h-16;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__logo-placeholder {
    @apply w-12 h-12;
  }

  .custom-event-sponsors__logo-placeholder svg {
    @apply w-full h-full;
  }

  .custom-event-sponsors__tier-badge {
    @apply absolute top-2 left-2 w-8 h-8 rounded-full flex items-center justify-center text-white;
  }

  .custom-event-sponsors__tier-badge svg {
    @apply w-4 h-4;
  }

  .custom-event-sponsors__tier-badge--principal {
    @apply bg-purple-600;
  }

  .custom-event-sponsors__tier-badge--strategic {
    @apply bg-blue-600;
  }

  .custom-event-sponsors__tier-badge--supporting {
    @apply bg-green-600;
  }

  .custom-event-sponsors__link-indicator {
    @apply absolute top-2 right-2 w-6 h-6 bg-gray-900 text-white rounded-full flex items-center justify-center opacity-0 transition-opacity duration-200;
  }

  .custom-event-sponsors__card:hover .custom-event-sponsors__link-indicator {
    @apply opacity-100;
  }

  .custom-event-sponsors__link-indicator svg {
    @apply w-3 h-3;
  }

  .custom-event-sponsors__info {
    @apply p-4;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__info {
    @apply p-6;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__info {
    @apply p-3;
  }

  .custom-event-sponsors__name {
    @apply font-semibold text-gray-900 mb-2;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__name {
    @apply text-xl;
  }

  .custom-event-sponsors__card--strategic .custom-event-sponsors__name {
    @apply text-lg;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__name {
    @apply text-sm;
  }

  .custom-event-sponsors__description {
    @apply text-gray-600 mb-3 line-clamp-3;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__description {
    @apply text-base;
  }

  .custom-event-sponsors__card--strategic .custom-event-sponsors__description {
    @apply text-sm;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__description {
    @apply text-xs line-clamp-2;
  }

  .custom-event-sponsors__website {
    @apply flex items-center gap-1 text-blue-600;
  }

  .custom-event-sponsors__card--principal .custom-event-sponsors__website {
    @apply text-sm;
  }

  .custom-event-sponsors__card--strategic .custom-event-sponsors__website {
    @apply text-xs;
  }

  .custom-event-sponsors__card--supporting .custom-event-sponsors__website {
    @apply text-xs;
  }

  .custom-event-sponsors__website svg {
    @apply w-3 h-3;
  }

  /* Empty States for Organizers and Sponsors */
  .custom-event-organizers__empty,
  .custom-event-sponsors__empty {
    @apply text-center py-12 px-6;
  }

  .custom-event-organizers__empty-icon,
  .custom-event-sponsors__empty-icon {
    @apply w-16 h-16 mx-auto text-gray-400 mb-4;
  }

  .custom-event-organizers__empty-title,
  .custom-event-sponsors__empty-title {
    @apply text-xl font-semibold text-gray-900 mb-2;
  }

  .custom-event-organizers__empty-description,
  .custom-event-sponsors__empty-description {
    @apply text-gray-600 max-w-md mx-auto;
  }

  /* Mobile Responsive for Organizers and Sponsors */
  @media (max-width: 640px) {
    .custom-event-organizers__grid--main,
    .custom-event-organizers__grid--partner,
    .custom-event-organizers__grid--supporting {
      @apply grid-cols-1;
    }

    .custom-event-sponsors__grid--principal,
    .custom-event-sponsors__grid--strategic {
      @apply grid-cols-1;
    }

    .custom-event-sponsors__grid--supporting {
      @apply grid-cols-2;
    }
  }

  /* Speaker Modal Content Styles */
  .custom-event-speakers__modal-header {
    @apply p-6 border-b border-gray-200;
  }

  .custom-event-speakers__modal-body {
    @apply p-6;
  }

  .custom-event-speakers__modal-photo {
    @apply w-32 h-32 mx-auto mb-4 rounded-full overflow-hidden bg-gray-100;
  }

  .custom-event-speakers__modal-photo img {
    @apply w-full h-full object-cover;
  }

  .custom-event-speakers__modal-photo-placeholder {
    @apply w-full h-full flex items-center justify-center text-gray-400;
  }

  .custom-event-speakers__modal-photo-placeholder svg {
    @apply w-16 h-16;
  }

  .custom-event-speakers__modal-name {
    @apply text-2xl font-bold text-gray-900 mb-2 text-center;
  }

  .custom-event-speakers__modal-title {
    @apply text-lg text-blue-600 font-medium mb-2 text-center;
  }

  .custom-event-speakers__modal-organization {
    @apply text-gray-700 mb-2 text-center;
  }

  .custom-event-speakers__modal-country {
    @apply flex items-center justify-center gap-1 text-gray-600 mb-4;
  }

  .custom-event-speakers__modal-country svg {
    @apply w-4 h-4;
  }

  .custom-event-speakers__modal-category {
    @apply inline-block px-3 py-1 bg-gray-100 text-gray-700 text-sm rounded-full mb-4;
  }

  .custom-event-speakers__modal-status {
    @apply inline-block px-2 py-1 bg-yellow-500 text-white text-xs font-semibold rounded mb-2;
  }

  .custom-event-speakers__modal-bio {
    @apply prose prose-sm max-w-none text-gray-700 mt-4;
  }

  /* Timeline Modal Content Styles */
  .custom-event-timeline__modal-header {
    @apply p-6 border-b border-gray-200;
  }

  .custom-event-timeline__modal-body {
    @apply p-6;
  }

  .custom-event-timeline__modal-time-info {
    @apply flex items-center gap-3 mb-4;
  }

  .custom-event-timeline__modal-color-indicator {
    @apply w-4 h-4 rounded-full flex-shrink-0;
  }

  .custom-event-timeline__modal-time {
    @apply text-sm text-gray-600;
  }

  .custom-event-timeline__modal-title {
    @apply text-xl font-semibold text-gray-900 mb-3;
  }

  .custom-event-timeline__modal-description {
    @apply prose prose-sm max-w-none text-gray-700;
  }

  .custom-event-timeline__modal-speakers {
    @apply mt-4 pt-4 border-t border-gray-200;
  }

  .custom-event-timeline__modal-speakers-title {
    @apply text-sm font-medium text-gray-900 mb-2;
  }

  .custom-event-timeline__modal-speakers-list {
    @apply text-sm text-gray-600;
  }

  /* Enhanced Filter States for Speakers */
  .custom-event-speakers__card.filtered-out {
    @apply opacity-30 pointer-events-none transform scale-95;
    transition: opacity 0.3s ease, transform 0.3s ease;
  }

  .custom-event-speakers__card:not(.filtered-out) {
    @apply opacity-100 pointer-events-auto transform scale-100;
    transition: opacity 0.3s ease, transform 0.3s ease;
  }

  /* Enhanced Hover Effects for Organizers */
  .custom-event-organizers__card:hover .custom-event-organizers__logo-img {
    @apply transform scale-105;
  }

  .custom-event-organizers__card:hover .custom-event-organizers__name {
    @apply text-blue-600;
  }

  .custom-event-organizers__card:hover .custom-event-organizers__description {
    @apply text-gray-800;
  }

  /* Enhanced Hover Effects for Sponsors */
  .custom-event-sponsors__card:hover .custom-event-sponsors__logo-img {
    @apply transform scale-105;
  }

  .custom-event-sponsors__card:hover .custom-event-sponsors__name {
    @apply text-blue-600;
  }

  .custom-event-sponsors__card:hover .custom-event-sponsors__description {
    @apply text-gray-800;
  }

  /* Tier-based Visual Hierarchy Enhancements */
  .custom-event-sponsors__card--principal {
    @apply ring-2 ring-purple-200 ring-opacity-50;
  }

  .custom-event-sponsors__card--principal:hover {
    @apply ring-purple-300 ring-opacity-75 shadow-2xl;
  }

  .custom-event-sponsors__card--strategic {
    @apply ring-1 ring-blue-200 ring-opacity-50;
  }

  .custom-event-sponsors__card--strategic:hover {
    @apply ring-blue-300 ring-opacity-75 shadow-xl;
  }

  .custom-event-sponsors__card--supporting:hover {
    @apply shadow-lg;
  }

  /* Loading States */
  .custom-event-speakers__card.loading,
  .custom-event-organizers__card.loading,
  .custom-event-sponsors__card.loading {
    @apply animate-pulse;
  }

  .custom-event-speakers__photo.loading,
  .custom-event-organizers__logo.loading,
  .custom-event-sponsors__logo.loading {
    @apply bg-gray-200;
  }

  .custom-event-speakers__info.loading .custom-event-speakers__name,
  .custom-event-organizers__info.loading .custom-event-organizers__name,
  .custom-event-sponsors__info.loading .custom-event-sponsors__name {
    @apply bg-gray-200 text-transparent rounded;
  }

  /* Focus States for Accessibility */
  .custom-event-speakers__card:focus,
  .custom-event-organizers__card:focus,
  .custom-event-sponsors__card:focus {
    @apply outline-none ring-2 ring-blue-500 ring-offset-2;
  }

  .custom-event-speakers__filter-btn:focus,
  .custom-event-timeline__filter-btn:focus {
    @apply outline-none ring-2 ring-blue-500 ring-offset-2;
  }

  .custom-event-speakers__search-input:focus {
    @apply outline-none ring-2 ring-blue-500 border-blue-500;
  }

  /* Print Styles */
  @media print {
    .custom-event-speakers__modal,
    .custom-event-timeline__modal {
      @apply hidden;
    }

    .custom-event-speakers__filter-btn,
    .custom-event-timeline__filter-btn,
    .custom-event-speakers__search {
      @apply hidden;
    }

    .custom-event-speakers__card,
    .custom-event-organizers__card,
    .custom-event-sponsors__card {
      @apply break-inside-avoid;
    }
  }

  /* High Contrast Mode Support */
  @media (prefers-contrast: high) {
    .custom-event-speakers__card,
    .custom-event-organizers__card,
    .custom-event-sponsors__card {
      @apply border-2 border-gray-900;
    }

    .custom-event-speakers__modal-content,
    .custom-event-timeline__modal-content {
      @apply border-2 border-gray-900;
    }

    .custom-event-speakers__category-badge,
    .custom-event-sponsors__tier-badge {
      @apply border border-white;
    }
  }

  /* Reduced Motion Support */
  @media (prefers-reduced-motion: reduce) {
    .custom-event-speakers__card,
    .custom-event-organizers__card,
    .custom-event-sponsors__card,
    .custom-event-speakers__modal,
    .custom-event-timeline__modal {
      @apply transition-none;
    }

    .custom-event-speakers__photo-img,
    .custom-event-organizers__logo-img,
    .custom-event-sponsors__logo-img {
      @apply transform-none;
    }

    .custom-event-speakers__card:hover,
    .custom-event-organizers__card:hover,
    .custom-event-sponsors__card:hover {
      @apply transform-none;
    }
  }

  /* Mobile Responsive Enhancements */
  @media (max-width: 640px) {
    .custom-event-speakers__modal-content,
    .custom-event-timeline__modal-content {
      @apply max-w-full mx-2 max-h-full;
    }

    .custom-event-speakers__modal-photo {
      @apply w-24 h-24;
    }

    .custom-event-speakers__modal-name {
      @apply text-xl;
    }

    .custom-event-speakers__modal-title {
      @apply text-base;
    }

    .custom-event-organizers__card,
    .custom-event-sponsors__card {
      @apply hover:transform-none;
    }
  }

  /* Tablet Responsive Enhancements */
  @media (min-width: 641px) and (max-width: 1024px) {
    .custom-event-speakers__grid {
      @apply grid-cols-2;
    }

    .custom-event-organizers__grid--partner {
      @apply grid-cols-2;
    }

    .custom-event-sponsors__grid--strategic {
      @apply grid-cols-2;
    }

    .custom-event-sponsors__grid--supporting {
      @apply grid-cols-3;
    }
  }

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

  @keyframes slideInFromLeft {
    from {
      opacity: 0;
      transform: translateX(-20px);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  @keyframes slideInFromRight {
    from {
      opacity: 0;
      transform: translateX(20px);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  /* Animation Classes */
  .animate-fade-in-up {
    animation: fadeInUp 0.6s ease-out;
  }

  .animate-slide-in-left {
    animation: slideInFromLeft 0.6s ease-out;
  }

  .animate-slide-in-right {
    animation: slideInFromRight 0.6s ease-out;
  }

  /* Staggered Animation Delays */
  .custom-event-speakers__card:nth-child(1) { animation-delay: 0.1s; }
  .custom-event-speakers__card:nth-child(2) { animation-delay: 0.2s; }
  .custom-event-speakers__card:nth-child(3) { animation-delay: 0.3s; }
  .custom-event-speakers__card:nth-child(4) { animation-delay: 0.4s; }
  .custom-event-speakers__card:nth-child(5) { animation-delay: 0.5s; }
  .custom-event-speakers__card:nth-child(6) { animation-delay: 0.6s; }

  .custom-event-organizers__card:nth-child(1) { animation-delay: 0.1s; }
  .custom-event-organizers__card:nth-child(2) { animation-delay: 0.2s; }
  .custom-event-organizers__card:nth-child(3) { animation-delay: 0.3s; }
  .custom-event-organizers__card:nth-child(4) { animation-delay: 0.4s; }

  .custom-event-sponsors__card:nth-child(1) { animation-delay: 0.1s; }
  .custom-event-sponsors__card:nth-child(2) { animation-delay: 0.2s; }
  .custom-event-sponsors__card:nth-child(3) { animation-delay: 0.3s; }
  .custom-event-sponsors__card:nth-child(4) { animation-delay: 0.4s; }
  .custom-event-sponsors__card:nth-child(5) { animation-delay: 0.5s; }

  /* Utility Classes */
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }

  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  /* Scrollbar hiding */
  .scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .scrollbar-hide::-webkit-scrollbar {
    display: none;
  }

  /* Ripple Effect Styles */
  .ripple {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transform: scale(0);
    animation: ripple 0.6s linear;
    pointer-events: none;
  }

  @keyframes ripple {
    to {
      transform: scale(4);
      opacity: 0;
    }
  }

  /* Image Loading States */
  img.loading {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loading 1.5s infinite;
  }

  img.loaded {
    background: none;
    animation: none;
  }

  /* Hidden by Search State */
  .hidden-by-search {
    @apply opacity-30 pointer-events-none transform scale-95;
    transition: opacity 0.3s ease, transform 0.3s ease;
  }

  /* Custom Event Modal Backdrop */
  .custom-event-modal-backdrop {
    @apply fixed inset-0 bg-black bg-opacity-50 backdrop-blur-sm z-40;
    animation: fadeIn 0.3s ease-out;
  }

  /* Modal Animation Classes */
  .custom-event-modal-enter {
    animation: modalEnter 0.3s ease-out;
  }

  .custom-event-modal-exit {
    animation: modalExit 0.3s ease-in;
  }

  @keyframes modalEnter {
    from {
      opacity: 0;
      transform: scale(0.95) translateY(-10px);
    }
    to {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
  }

  @keyframes modalExit {
    from {
      opacity: 1;
      transform: scale(1) translateY(0);
    }
    to {
      opacity: 0;
      transform: scale(0.95) translateY(-10px);
    }
  }
}

/* Custom Tab Fallback and Error States */
.custom-tab-fallback,
.custom-tab-error {
  @apply text-center py-12 px-6;
}

.custom-tab-fallback__icon,
.custom-tab-error__icon {
  @apply flex justify-center mb-4;
}

.custom-tab-fallback__title,
.custom-tab-error__title {
  @apply text-xl font-semibold mb-2 text-gray-700;
}

.custom-tab-fallback__message,
.custom-tab-error__message {
  @apply text-gray-600 mb-4;
}

.custom-tab-error__details {
  @apply text-sm text-gray-500 italic;
}

/* Custom Tab Lightbox */
#custom-tab-lightbox .lightbox-content {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
}

#custom-tab-lightbox .lightbox-image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

#custom-tab-lightbox .lightbox-close {
  position: absolute;
  top: -40px;
  right: -40px;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  font-size: 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

#custom-tab-lightbox .lightbox-close:hover {
  background: white;
}

/* Custom Tab Content Enhancements */
.custom-tab-content {
  @apply min-h-[200px];
}

.custom-tab-content img {
  @apply max-w-full h-auto rounded-lg shadow-sm;
}

.custom-tab-content video {
  @apply max-w-full h-auto rounded-lg shadow-sm;
}

.custom-tab-content iframe {
  @apply max-w-full rounded-lg shadow-sm;
}

/* Form enhancements in custom tabs */
.custom-tab-content form {
  @apply space-y-4;
}

.custom-tab-content form input,
.custom-tab-content form textarea,
.custom-tab-content form select {
  @apply w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent;
}

.custom-tab-content form input.error,
.custom-tab-content form textarea.error,
.custom-tab-content form select.error {
  @apply border-red-500 focus:ring-red-500;
}

.custom-tab-content form button[type="submit"] {
  @apply bg-blue-600 text-white px-6 py-2 rounded-md hover:bg-blue-700 transition duration-150 disabled:opacity-50 disabled:cursor-not-allowed;
}

/* Gallery enhancements in custom tabs */
.custom-tab-content .gallery {
  @apply grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-4;
}

.custom-tab-content .gallery img {
  @apply cursor-pointer transition-transform duration-200 hover:scale-105;
}
