/*
 * 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.
 *


 */

/* Custom Select2 Styles */
.select2-container {
  width: 100% !important;
}

.select2-container--default .select2-selection--single {
  height: 42px !important;
  border: 1px solid #d1d5db !important;
  border-radius: 0.5rem !important;
  padding: 0 12px !important;
  background-color: white !important;
  transition: all 0.15s ease-in-out !important;
}

.select2-container--default .select2-selection--single:focus,
.select2-container--default.select2-container--focus
  .select2-selection--single {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
  outline: none !important;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #374151 !important;
  line-height: 40px !important;
  padding-left: 0 !important;
  padding-right: 20px !important;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__placeholder {
  color: #9ca3af !important;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 40px !important;
  right: 8px !important;
}

.select2-dropdown {
  border: 1px solid #d1d5db !important;
  border-radius: 0.5rem !important;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
}

.select2-container--default .select2-results__option {
  padding: 8px 12px !important;
  color: #374151 !important;
}

.select2-container--default
  .select2-results__option--highlighted[aria-selected] {
  background-color: #3b82f6 !important;
  color: white !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
  background-color: #eff6ff !important;
  color: #1e40af !important;
}

.select2-search--dropdown .select2-search__field {
  border: 1px solid #d1d5db !important;
  border-radius: 0.375rem !important;
  padding: 8px 12px !important;
  margin: 8px !important;
  width: calc(100% - 16px) !important;
}

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

/* Select2 Clear Button (X) Styles */
.select2-container--default
  .select2-selection--single
  .select2-selection__clear {
  color: #6b7280 !important;
  cursor: pointer !important;
  float: right !important;
  font-weight: bold !important;
  margin-right: 10px !important;
  margin-top: 8px !important;
  position: relative !important;
  font-size: 16px !important;
  line-height: 1 !important;
  width: 18px !important;
  height: 18px !important;
  text-align: center !important;
  border-radius: 50% !important;
  transition: all 0.15s ease-in-out !important;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__clear:hover {
  color: #ef4444 !important;
  background-color: #fef2f2 !important;
  transform: scale(1.1) !important;
}

/* Adjust arrow position when clear button is present */
.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  right: 35px !important;
}

/* Custom Date/Time Picker Styles */
.datetime-local-input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
}

.datetime-local-input::-webkit-calendar-picker-indicator {
  background: transparent;
  bottom: 0;
  color: transparent;
  cursor: pointer;
  height: auto;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: auto;
}

.datetime-wrapper {
  position: relative;
}

.datetime-wrapper::after {
  content: "📅";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 16px;
}

/* Custom Flatpickr Styles */
.flatpickr-input {
  background-color: white !important;
  border: 1px solid #d1d5db !important;
  border-radius: 0.5rem !important;
  padding: 8px 12px !important;
  transition: all 0.15s ease-in-out !important;
}

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

.flatpickr-calendar {
  border-radius: 0.5rem !important;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
  border: 1px solid #d1d5db !important;
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover {
  background-color: #3b82f6 !important;
  border-color: #3b82f6 !important;
}

.flatpickr-day:hover {
  background-color: #eff6ff !important;
  border-color: #3b82f6 !important;
}

.flatpickr-time input {
  background-color: white !important;
  border: 1px solid #d1d5db !important;
  border-radius: 0.25rem !important;
}

.flatpickr-time input:focus {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1) !important;
}
