/* Estilos exclusivos de la planilla diaria */
.planilla-panel {
  background: rgba(255, 255, 255, 0.92);
  border-radius: 18px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.08);
}

.planilla-panel h2 {
  margin: 0;
  font-size: 1.9rem;
}

.planilla-panel .planilla-date-form input,
.planilla-panel .planilla-date-form select {
  min-width: 160px;
  border-radius: 999px;
  border-color: rgba(15, 23, 42, 0.15);
  background: rgba(255, 255, 255, 0.95);
}

.planilla-panel .planilla-date-pills .btn,
.planilla-panel .status-pill {
  border-radius: 999px;
  text-transform: none;
  font-weight: 600;
}

.planilla-panel .planilla-date-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.planilla-panel .planilla-date-pills .btn.btn-primary {
  background: #0b4663;
  color: #fff;
  border-color: #0b4663;
}

.planilla-panel .planilla-date-pills .btn.btn-primary:hover,
.planilla-panel .planilla-date-pills .btn.btn-primary:focus {
  background: #09425b;
  border-color: #09425b;
}

.planilla-header .planilla-order .btn {
  min-width: 120px;
}

.planilla-order .active {
  background: #0b4663;
  color: #fff;
}

.planilla-table-wrapper {
  overflow-x: auto;
}

.planilla-table {
  min-width: 1100px;
  border-collapse: collapse;
  font-size: 0.77rem;
}

.planilla-table thead th {
  font-size: 0.8rem;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  font-weight: 600;
  background: rgba(15, 23, 42, 0.04);
  border-bottom: 1px solid rgba(15, 23, 42, 0.1);
}

.planilla-table th,
.planilla-table td {
  border-color: rgba(255, 255, 255, 0.9);
  border-width: 1px;
}

/* Filas teñidas (color-mix tenue) */
.planilla-table tbody tr.planilla-row {
  --planilla-row-color: var(--movil-color, #0b4663);
  border-left: 10px solid var(--planilla-row-color);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.45), rgba(255, 255, 255, 0.3)),
    color-mix(in srgb, var(--planilla-row-color) 40%, rgba(255, 255, 255, 0.6) 60%);
  color: #0f172a;
  transition: filter 0.3s ease;
  --bs-table-bg: transparent;
}

.planilla-table tbody tr.planilla-row:hover {
  filter: saturate(1.05) brightness(1.02);
}

body.theme-dark .planilla-panel {
  background: rgba(8, 10, 18, 0.95);
  border-color: rgba(255, 255, 255, 0.15);
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(28px);
}

body:not(.theme-light) .planilla-panel.glass-card {
  background: rgba(8, 10, 18, 0.92);
  border-color: rgba(255, 255, 255, 0.15);
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(32px);
  background-image: none;
}

body:not(.theme-light) .planilla-panel .planilla-date-form input,
body:not(.theme-light) .planilla-panel .planilla-date-form select {
  background: rgba(15, 23, 42, 0.7);
  color: #e6edf3;
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.07);
}

body:not(.theme-light) .planilla-panel .planilla-date-pills .btn {
  color: #e5ecf1;
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
}

body:not(.theme-light) .planilla-panel .planilla-order .btn.active {
  background: rgba(14, 165, 233, 0.9);
  border-color: rgba(14, 165, 233, 0.9);
  color: #fff;
}

body:not(.theme-light) .planilla-table-wrapper {
  background: rgba(10, 12, 22, 0.6);
  border-radius: 16px;
}

body:not(.theme-light) .planilla-table {
  background: transparent;
  --bs-table-bg: transparent;
  --bs-table-accent-bg: transparent;
}

body:not(.theme-light) .planilla-table.table > :not(caption) > * > * {
  background-color: transparent !important;
}

body:not(.theme-light) .planilla-table thead th {
  background: rgba(10, 12, 22, 0.9);
  color: #f5f7fb;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

body:not(.theme-light) .planilla-table tbody tr.planilla-row {
  background: linear-gradient(
      135deg,
      color-mix(in srgb, var(--movil-color, #0b4663) 22%, rgba(8, 10, 18, 0.92) 78%),
      color-mix(in srgb, var(--movil-color, #0b4663) 30%, rgba(8, 10, 18, 0.92) 70%)
    );
  border-left: 4px solid var(--movil-color, #0b4663);
  color: #e6edf3;
  filter: saturate(1.1);
}

body:not(.theme-light) .planilla-table tbody tr.planilla-row:hover {
  filter: saturate(1.15) brightness(1.05);
}

body:not(.theme-light) .planilla-table .text-dark {
  color: #f3f6fb !important;
}

body:not(.theme-light) .planilla-panel.glass-card {
  background: rgba(8, 10, 18, 0.92);
  border-color: rgba(255, 255, 255, 0.15);
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(32px);
  background-image: none;
}

body.theme-dark .planilla-panel .planilla-date-form input,
body.theme-dark .planilla-panel .planilla-date-form select {
  background: rgba(15, 23, 42, 0.7);
  color: #e6edf3;
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.07);
}

body.theme-dark .planilla-panel .planilla-date-form input:focus,
body.theme-dark .planilla-panel .planilla-date-form select:focus {
  border-color: rgba(14, 165, 233, 0.9);
  box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.25);
}

body.theme-dark .planilla-panel .planilla-date-pills .btn {
  color: #e5ecf1;
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.05);
}

body.theme-dark .planilla-panel .planilla-panel .planilla-date-pills .btn.btn-primary,
body.theme-dark .planilla-panel .planilla-date-pills .btn.btn-primary:focus-visible,
body.theme-dark .planilla-panel .planilla-date-pills .btn.btn-primary.active {
  background: rgba(14, 165, 233, 0.9);
  border-color: rgba(14, 165, 233, 0.9);
  color: #fff;
}

body.theme-dark .planilla-panel .planilla-order .btn.active {
  background: rgba(14, 165, 233, 0.9);
  border-color: rgba(14, 165, 233, 0.9);
  color: #fff;
}

body.theme-dark .planilla-table thead th {
  background: rgba(10, 12, 22, 0.9);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  color: #f5f7fb;
}

body.theme-dark .planilla-table-wrapper {
  background: rgba(10, 12, 22, 0.6);
  border-radius: 16px;
}
body.theme-dark .planilla-table {
  background: transparent;
}

body.theme-dark .planilla-table th,
body.theme-dark .planilla-table td {
  border-color: rgba(255, 255, 255, 0.08);
}

body.theme-dark .planilla-table thead th {
  background: rgba(15, 23, 42, 0.6);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  color: #f1f5f9;
}

body.theme-dark .planilla-table th,
body.theme-dark .planilla-table td {
  border-color: rgba(255, 255, 255, 0.08);
}
