/* Dark mode fix global — admin + portal.
 * Diload setelah style.css (dan portal-karyawan.css di portal).
 * Melengkapi komponen yang belum punya varian [data-theme="dark"]:
 * skeleton, input-group, form, tabel/DataTables, modal, breadcrumb, alert.
 */

/* Cegah input date/number terlihat terang saat dark. */
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="time"] {
  color-scheme: dark;
}

/* Skeleton loading global. */
[data-theme="dark"] .skeleton-box {
  background: linear-gradient(90deg, #1e293b 25%, #334155 50%, #1e293b 75%) !important;
  background-size: 200% 100% !important;
}

/* Input group prefix (Rp). */
[data-theme="dark"] .input-group-text {
  background-color: #323d4e !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #94a3b8 !important;
}

/* Form control / select (fallback bila style.css belum cover halaman ini). */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
  background-color: #1b2431 !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #f1f5f9 !important;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
  border-color: #487fff !important;
  box-shadow: 0 0 0 3px rgba(72, 127, 255, 0.18) !important;
  background-color: #1b2431 !important;
  color: #f1f5f9 !important;
}

[data-theme="dark"] .form-control::placeholder {
  color: #64748b !important;
}

[data-theme="dark"] .form-text {
  color: #94a3b8 !important;
}

[data-theme="dark"] .form-label {
  color: #e2e8f0 !important;
}

/* Breadcrumb subtitle. */
[data-theme="dark"] .breadcrumb p.text-neutral-600 {
  color: #94a3b8 !important;
}

/* Card & tabel umum. */
[data-theme="dark"] .card {
  background-color: #273142 !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

[data-theme="dark"] .table thead th {
  background-color: #323d4e !important;
  color: #f8fafc !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

[data-theme="dark"] .table tbody td {
  border-color: rgba(255, 255, 255, 0.06) !important;
  color: #cbd5e1 !important;
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(255, 255, 255, 0.025) !important;
}

[data-theme="dark"] .table-hover > tbody > tr:hover > * {
  background-color: rgba(255, 255, 255, 0.06) !important;
}

/* DataTables footer. */
[data-theme="dark"] .dataTables_wrapper .dataTables_info {
  color: #94a3b8 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_length select {
  background-color: #1b2431 !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #f1f5f9 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
  color: #cbd5e1 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: #487fff !important;
  border-color: #487fff !important;
  color: #fff !important;
}

/* Modal (salin master). */
[data-theme="dark"] .modal-content {
  background-color: #273142 !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: #e2e8f0 !important;
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Alert info di halaman payroll/master agar tidak silau. */
[data-theme="dark"] .alert-info {
  background-color: rgba(72, 127, 255, 0.14) !important;
  border-color: rgba(72, 127, 255, 0.3) !important;
  color: #bfdbfe !important;
}

[data-theme="dark"] .alert-warning {
  background-color: rgba(245, 158, 11, 0.14) !important;
  border-color: rgba(245, 158, 11, 0.3) !important;
  color: #fde68a !important;
}

/* Badge freelance / status di tabel. */
[data-theme="dark"] .badge.bg-warning-50 {
  background-color: rgba(245, 158, 11, 0.16) !important;
  border-color: rgba(245, 158, 11, 0.35) !important;
  color: #fbbf24 !important;
}

[data-theme="dark"] .badge.bg-primary-50 {
  background-color: rgba(72, 127, 255, 0.16) !important;
  border-color: rgba(72, 127, 255, 0.35) !important;
  color: #93c5fd !important;
}

/* Garis pemisah di kartu pratinjau. */
[data-theme="dark"] hr {
  border-color: rgba(255, 255, 255, 0.1) !important;
}

/* Pastikan teks muted di kartu tetap terbaca. */
[data-theme="dark"] .text-secondary-light {
  color: #94a3b8 !important;
}

/* Halaman login: latar & teks. */
[data-theme="dark"] .login-page,
[data-theme="dark"] .login-form-side {
  background-color: #1b2431 !important;
}

[data-theme="dark"] .login-form-side h1,
[data-theme="dark"] .login-form-side label {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .login-form-side p {
  color: #94a3b8 !important;
}
