/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */

.pagy-nav {
  text-align: center;
  margin: 1rem 0;
}

.pagy-nav .page-count {
  margin: 0 1rem;
}

.pagy-nav .prev,
.pagy-nav .next {
  margin: 0 0.5rem;
}

.pagy-nav .disabled {
  color: #999;
}

.pagy-nav a {
  text-decoration: none;
  color: #333;
}

.pagy-nav a:hover {
  color: #666;
}

/* Dropdown Filter Styles */
.dropdown-filter-button {
  transition: all 0.2s ease-in-out;
}

.dropdown-filter-button:hover {
  background-color: #f9fafb;
  border-color: #d1d5db;
}

.dropdown-filter-button:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.dropdown-filter-dropdown {
  transition: opacity 0.15s ease-in-out, transform 0.15s ease-in-out;
  transform-origin: top;
}

.dropdown-filter-dropdown.hidden {
  opacity: 0;
  transform: scale(0.95);
  pointer-events: none;
}

.dropdown-filter-dropdown:not(.hidden) {
  opacity: 1;
  transform: scale(1);
}

.dropdown-filter-option {
  transition: background-color 0.15s ease-in-out;
}

.dropdown-filter-option:hover {
  background-color: #f3f4f6;
}

.dropdown-filter-option.selected {
  background-color: #dbeafe;
}

.dropdown-filter-option input[type="checkbox"] {
  transition: all 0.15s ease-in-out;
}

.dropdown-filter-option input[type="checkbox"]:checked {
  background-color: #3b82f6;
  border-color: #3b82f6;
}

/* Search Input Styles */
.dropdown-filter-search-input {
  transition: all 0.2s ease-in-out;
}

.dropdown-filter-search-input:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
  border-color: #3b82f6;
}

.dropdown-filter-search-input::placeholder {
  color: #9ca3af;
  font-size: 0.875rem;
}

/* Search Results */
.dropdown-filter-option[style*="display: none"] {
  display: none !important;
}

.dropdown-filter-option[style*="display: flex"] {
  display: flex !important;
}

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

.animate-fade-in {
  animation: fadeIn 0.3s ease-out;
}

/* Budget subcategory drag-and-drop: thick bottom border for drop position */
tr.subcategory-drop-indicator td {
  border-bottom: 3px solid #3b82f6;
}

/* Budget parent category drag-and-drop: thick bottom border for drop position */
tr.category-drop-indicator td {
  border-bottom: 3px solid #3b82f6;
}
