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

/* Pagy pagination */
.pagy nav.pagy {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.pagy nav.pagy a,
.pagy nav.pagy span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.5rem;
  font-size: 0.8125rem;
  font-weight: 500;
  border-radius: 0.375rem;
  transition: all 150ms;
}

.pagy nav.pagy a {
  color: #6b7280;
  border: 1px solid #e5e7eb;
  background: white;
}

.pagy nav.pagy a:hover {
  color: #4f46e5;
  border-color: #c7d2fe;
  background: #eef2ff;
}

.pagy nav.pagy a[aria-current="page"],
.pagy nav.pagy span.current {
  color: white;
  background: #4f46e5;
  border-color: #4f46e5;
}

.pagy nav.pagy span.gap {
  color: #9ca3af;
  border: none;
}

.pagy nav.pagy a[aria-disabled="true"],
.pagy nav.pagy span[aria-disabled="true"] {
  color: #d1d5db;
  border-color: #f3f4f6;
  pointer-events: none;
}

/* Clickable elements should show hand cursor */
button, [role="button"], summary {
  cursor: pointer;
}

main input[type="text"],
main input[type="email"],
main input[type="password"],
main input[type="number"],
main input[type="url"],
main input[type="search"],
main input[type="tel"],
main input[type="date"],
main input[type="time"],
main input[type="datetime-local"],
main select,
main textarea {
  background-color: white;
}

/* Time entry START/STOP overlay (tippy theme + inline Lightpick calendar) */
.tippy-box[data-theme~="time-popover"] {
  background: #fff;
  color: #111827;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 12px 32px -8px rgba(15, 23, 42, 0.25), 0 2px 6px rgba(15, 23, 42, 0.08);
}
.tippy-box[data-theme~="time-popover"] > .tippy-content { padding: 0; }
.time-popover .lightpick { box-shadow: none; padding: 0; width: 100%; font-family: inherit; }
.time-popover .lightpick__months { background: transparent; }
.time-popover .lightpick__month { width: 100%; padding: 0; }
.time-popover .lightpick__month-title { font-size: 15px; font-weight: 600; margin-left: 0; }
.time-popover .lightpick__month-title > .lightpick__select { font-weight: 600; color: #111827; }
.time-popover .lightpick__previous-action,
.time-popover .lightpick__next-action {
  width: 30px; height: 30px; border-radius: 8px;
  background: #fff; border: 1px solid #d1d5db; color: #4b5563;
}
.time-popover .lightpick__previous-action:hover,
.time-popover .lightpick__next-action:hover { background: #f3f4f6; }
.time-popover .lightpick__day-of-the-week { font-weight: 500; color: #9ca3af; height: 28px; }
.time-popover .lightpick__day { height: 34px; margin: 1px; border-radius: 8px; font-size: 13px; cursor: pointer; }
.time-popover .lightpick__day.is-today { background-image: none; color: #4f46e5; font-weight: 600; }
.time-popover .lightpick__day:not(.is-disabled):hover { background-image: none; background-color: #f3f4f6; }
.time-popover .lightpick__day.is-start-date,
.time-popover .lightpick__day.is-start-date.is-end-date,
.time-popover .lightpick__day.is-start-date:hover {
  background-image: none; background-color: #4f46e5; color: #fff; font-weight: 600;
}
