/*
 * 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.
 *
 *= require_tree .
 *= require_self
 */


/* Progress bar styling */
progress.progress.is-primary {
  height: 0.5rem;
}

/* Sticky/floating table headers */
.table thead th {
  position: sticky;
  top: 0;
  background-color: #ffffff !important;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Enhanced table row hover effects for better visibility with striped tables */
.table.is-hoverable tbody tr:hover {
  background-color: #f0f8ff !important;
  transition: background-color 0.2s ease;
}

.table.is-striped.is-hoverable tbody tr:hover {
  background-color: #f0f8ff !important;
}

/* Table column hover effects */
.is-hovered-column {
  background-color: #e8f4fd !important;
  transition: background-color 0.2s ease;
}

/* Ensure column hover effects work with striped tables */
.table.is-striped tbody tr:nth-child(even) td.is-hovered-column {
  background-color: #e8f4fd !important;
}

.table.is-striped tbody tr:nth-child(odd) td.is-hovered-column {
  background-color: #e8f4fd !important;
}

.table thead th.is-hovered-column {
  background-color: #d1ecf1 !important;
}

/* Header hover effects - lighter highlight for headers */
.table thead th:hover {
  background-color: #f8f9fa !important;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

/* Dark mode table fixes */
[data-theme="dark"] .table thead th,
.theme-dark .table thead th {
  background-color: hsl(0, 0%, 21%) !important;
  color: hsl(0, 0%, 96%) !important;
  border-color: hsl(0, 0%, 29%) !important;
}

[data-theme="dark"] .table thead th:hover,
.theme-dark .table thead th:hover {
  background-color: hsl(0, 0%, 29%) !important;
}

[data-theme="dark"] .table thead th.is-hovered-column,
.theme-dark .table thead th.is-hovered-column {
  background-color: hsl(0, 0%, 35%) !important;
}

[data-theme="dark"] .table.is-hoverable tbody tr:hover,
.theme-dark .table.is-hoverable tbody tr:hover {
  background-color: hsl(0, 0%, 25%) !important;
}

[data-theme="dark"] .table.is-striped.is-hoverable tbody tr:hover,
.theme-dark .table.is-striped.is-hoverable tbody tr:hover {
  background-color: hsl(0, 0%, 25%) !important;
}

[data-theme="dark"] .is-hovered-column,
.theme-dark .is-hovered-column {
  background-color: hsl(0, 0%, 29%) !important;
}

[data-theme="dark"] .table.is-striped tbody tr:nth-child(even) td.is-hovered-column,
.theme-dark .table.is-striped tbody tr:nth-child(even) td.is-hovered-column {
  background-color: hsl(0, 0%, 29%) !important;
}

[data-theme="dark"] .table.is-striped tbody tr:nth-child(odd) td.is-hovered-column,
.theme-dark .table.is-striped tbody tr:nth-child(odd) td.is-hovered-column {
  background-color: hsl(0, 0%, 29%) !important;
}

/* Dark mode toggle switch styling */
.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
  background-color: hsl(0, 0%, 86%);
  border-radius: 12px;
  outline: none;
  cursor: pointer;
  transition: background-color 0.3s;
  appearance: none;
}

.switch:checked {
  background-color: hsl(229, 53%, 53%);
}

.switch::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 20px;
  height: 20px;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s;
}

.switch:checked::before {
  transform: translateX(26px);
}