/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

/* ============================================
   Global Styles & Animations
   ============================================ */

:root {
  --transition-duration: 300ms;
}

/* Smooth transitions for all interactive elements */
button, a, input, textarea, select {
  transition: all var(--transition-duration) ease-in-out;
}

/* ============================================
   Form Styles
   ============================================ */

.input, .textarea, .select {
  @apply transition-all duration-300;
}

.input:focus, .textarea:focus, .select:focus {
  @apply ring-2 ring-primary/20;
}

/* ============================================
   Card Enhancements
   ============================================ */

.card {
  @apply transition-all duration-300;
}

.card:hover {
  @apply shadow-lg;
}

/* ============================================
   Button Enhancements
   ============================================ */

.btn {
  @apply transition-all duration-300 font-medium;
}

.btn:hover {
  @apply transform -translate-y-0.5;
}

.btn:active {
  @apply transform translate-y-0;
}

/* ============================================
   Badge Styles
   ============================================ */

.badge {
  @apply font-semibold;
}

/* ============================================
   Alert Styles
   ============================================ */

.alert {
  @apply rounded-lg;
}

/* ============================================
   Breadcrumb Enhancements
   ============================================ */

.breadcrumbs a {
  @apply transition-colors duration-300;
}

.breadcrumbs a:hover {
  @apply text-primary;
}

/* ============================================
   Navbar Enhancements
   ============================================ */

.navbar {
  @apply transition-all duration-300;
}

/* ============================================
   Drawer Enhancements
   ============================================ */

.drawer-side {
  @apply transition-all duration-300;
}

/* ============================================
   Menu Enhancements
   ============================================ */

.menu li a {
  @apply transition-all duration-300;
}

.menu li a:hover {
  @apply bg-primary/10;
}

.menu li a.active {
  @apply bg-primary text-primary-content;
}

/* ============================================
   Progress Bar Enhancements
   ============================================ */

.progress {
  @apply transition-all duration-500;
}

/* ============================================
   Dropdown Enhancements
   ============================================ */

.dropdown-content {
  @apply shadow-lg rounded-lg;
}

/* ============================================
   Stat Card Styles
   ============================================ */

.stat {
  @apply transition-all duration-300;
}

.stat:hover {
  @apply shadow-md;
}

/* ============================================
   Utility Classes
   ============================================ */

.line-clamp-1 {
  @apply overflow-hidden text-ellipsis whitespace-nowrap;
}

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

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

/* ============================================
   Responsive Utilities
   ============================================ */

@media (max-width: 768px) {
  .drawer-side {
    @apply w-64;
  }
}
