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

/* Week Selector Styles */
.week-selector-transition {
  transition: all 0.2s ease-in-out;
}

.week-selector-button {
  transition: all 0.15s ease-in-out;
  transform: translateY(0);
}

.week-selector-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.week-selector-button:active {
  transform: translateY(0);
}

/* Keyboard shortcut styling */
kbd {
  font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
  font-weight: 600;
}

/* Enhanced Chart Styling */
.chart-container {
  position: relative;
  transition: all 0.3s ease-in-out;
}

.chart-container:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(37, 99, 235, 0.15);
}

/* Consistent chart styling for all types */
.chart-container canvas {
  filter: drop-shadow(0 2px 4px rgba(37, 99, 235, 0.05));
}

/* Smooth transitions for chart updates */
.chart-container canvas {
  transition: opacity 0.3s ease-in-out;
}

/* Riggle Animations */
@keyframes riggle {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-8deg); }
  50% { transform: rotate(6deg); }
  75% { transform: rotate(-4deg); }
}

@keyframes needle-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

.riggle-animate:hover {
  animation: riggle 0.6s ease-in-out;
}

.needle-pulse {
  animation: needle-pulse 2s ease-in-out infinite;
}

/* Riggle Brand Utilities */
.text-riggle-blue { color: #2563EB; }
.text-riggle-lime { color: #84CC16; }
.text-riggle-charcoal { color: #111827; }
.bg-riggle-cloud { background-color: #F3F4F6; }

/* Force column header visibility */
.sortable-header {
  color: #6B7280 !important;
  text-decoration: none !important;
}

.sortable-header:hover {
  color: #2563EB !important;
}

.border-riggle-blue { border-color: #2563EB; }
.border-riggle-lime { border-color: #84CC16; }
