/* Monochrome theme overrides */
:root {
  --color-white: #ffffff;
  --color-light-gray: #f5f5f5;
  --color-dark-gray: #2c2c2c;
  --color-black: #000000;
  --color-success-bg: #166534;
  --color-success-border: #14532d;
  --color-danger-bg: #991b1b;
  --color-danger-border: #7f1d1d;
  --color-info-bg: #2563eb;
  --color-info-border: #1d4ed8;
}

body {
  background-color: var(--color-white);
  color: var(--color-black);
  font-family: 'Cairo', 'Tahoma', 'Arial', sans-serif;
}

a {
  color: var(--color-dark-gray);
}

a:hover,
a:focus {
  color: var(--color-black);
}

.navbar {
  background-color: var(--color-black);
  border-bottom: 1px solid var(--color-dark-gray);
}

.navbar.bg-primary {
  background-color: var(--color-black) !important;
}

.navbar .navbar-brand,
.navbar .nav-link,
.navbar .navbar-text {
  color: var(--color-white) !important;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: var(--color-light-gray) !important;
}

.navbar .btn-outline-light {
  color: var(--color-white);
  border-color: var(--color-light-gray);
}

.navbar .btn-outline-light:hover,
.navbar .btn-outline-light:focus {
  background-color: var(--color-white);
  color: var(--color-black);
  border-color: var(--color-white);
}

.navbar .btn-light {
  background-color: var(--color-light-gray);
  border-color: var(--color-light-gray);
  color: var(--color-black);
}

.navbar .btn-light:hover,
.navbar .btn-light:focus {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-black);
}

.card {
  background-color: var(--color-light-gray);
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.table {
  color: var(--color-black);
}

.table thead th {
  background-color: var(--color-light-gray);
  color: var(--color-black);
}

.table-striped > tbody > tr:nth-of-type(odd) {
  --bs-table-accent-bg: var(--color-white);
  color: var(--color-black);
}

.table-hover > tbody > tr:hover {
  --bs-table-accent-bg: var(--color-light-gray);
  color: var(--color-black);
}

.table tr.row-status-pending {
  background-color: #f2f2f2;
  color: var(--color-black);
}

.table tr.row-status-ready {
  background-color: #dfdfdf;
  color: var(--color-black);
}

.table-hover > tbody > tr.row-status-pending:hover {
  background-color: #e6e6e6;
}

.table-hover > tbody > tr.row-status-ready:hover {
  background-color: #d3d3d3;
}

.form-control,
.form-select {
  background-color: var(--color-white);
  border: 1px solid var(--color-dark-gray);
  color: var(--color-black);
}

.form-control:focus,
.form-select:focus {
  background-color: var(--color-white);
  border-color: var(--color-black);
  box-shadow: 0 0 0 0.2rem rgba(44, 44, 44, 0.25);
  color: var(--color-black);
}

.btn {
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-primary,
.btn-success,
.btn-secondary,
.btn-warning,
.btn-danger,
.btn-info,
.btn-dark {
  background-color: var(--color-dark-gray);
  border-color: var(--color-dark-gray);
  color: var(--color-white);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-warning:hover,
.btn-warning:focus,
.btn-danger:hover,
.btn-danger:focus,
.btn-info:hover,
.btn-info:focus,
.btn-dark:hover,
.btn-dark:focus {
  background-color: var(--color-black);
  border-color: var(--color-black);
  color: var(--color-white);
}

.btn-outline-primary,
.btn-outline-success,
.btn-outline-danger,
.btn-outline-secondary {
  color: var(--color-dark-gray);
  border-color: var(--color-dark-gray);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
  background-color: var(--color-dark-gray);
  border-color: var(--color-dark-gray);
  color: var(--color-white);
}

.btn-outline-light {
  color: var(--color-white);
  border-color: var(--color-light-gray);
}

.btn-outline-light:hover,
.btn-outline-light:focus {
  background-color: var(--color-white);
  color: var(--color-black);
  border-color: var(--color-white);
}

.btn-light {
  background-color: var(--color-light-gray);
  border-color: var(--color-light-gray);
  color: var(--color-black);
}

.btn-light:hover,
.btn-light:focus {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-black);
}

.bg-primary,
.bg-success,
.bg-danger,
.bg-warning,
.bg-secondary,
.bg-info,
.bg-dark {
  background-color: var(--color-dark-gray) !important;
  color: var(--color-white) !important;
}

.bg-light {
  background-color: var(--color-light-gray) !important;
  color: var(--color-black) !important;
}

.text-primary,
.text-success,
.text-danger,
.text-warning,
.text-info,
.text-secondary {
  color: var(--color-dark-gray) !important;
}

.text-muted {
  color: rgba(0, 0, 0, 0.6) !important;
}

.badge,
.badge.bg-warning,
.badge.bg-light,
.badge.bg-success,
.badge.bg-primary,
.badge.bg-danger,
.badge.bg-info,
.badge.bg-secondary,
.badge.bg-dark {
  background-color: var(--color-dark-gray) !important;
  color: var(--color-white) !important;
}

.badge-status-info {
  background-color: var(--color-info-bg) !important;
  border: 1px solid var(--color-info-border);
  color: var(--color-white) !important;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.badge-status-info .badge-counter {
  background-color: var(--color-white);
  color: var(--color-info-bg);
  border-radius: 9999px;
  padding: 0.05rem 0.45rem;
  font-weight: 700;
  font-size: 0.75rem;
}

.badge-status-success {
  background-color: var(--color-success-bg) !important;
  border: 1px solid var(--color-success-border);
  color: var(--color-white) !important;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.badge-status-success .badge-counter {
  background-color: var(--color-white);
  color: var(--color-success-bg);
  border-radius: 9999px;
  padding: 0.05rem 0.45rem;
  font-weight: 700;
  font-size: 0.75rem;
}

.alert {
  direction: rtl;
  text-align: right;
  background-color: var(--color-light-gray);
  border-color: var(--color-dark-gray);
  color: var(--color-black);
}

.alert.alert-success {
  background-color: var(--color-success-bg);
  border-color: var(--color-success-border);
  color: var(--color-white);
}

.alert.alert-danger {
  background-color: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-white);
}

.alert.alert-success .btn-close,
.alert.alert-danger .btn-close {
  filter: invert(1);
}

form label {
  font-weight: 600;
  color: var(--color-dark-gray);
}

.btn.disabled,
.btn:disabled {
  pointer-events: none;
  opacity: 0.5;
}

.toast {
  background-color: var(--color-light-gray);
  color: var(--color-black);
  border: 1px solid var(--color-dark-gray);
}

.toast.toast-success,
.toast.bg-success,
.toast-success .toast-body {
  background-color: var(--color-success-bg) !important;
  color: var(--color-white) !important;
  border-color: var(--color-success-border) !important;
}

.toast.toast-danger,
.toast.bg-danger,
.toast-danger .toast-body {
  background-color: var(--color-danger-bg) !important;
  color: var(--color-white) !important;
  border-color: var(--color-danger-border) !important;
}

.toast .btn-close {
  filter: invert(1);
}
