/* RTS Tech Dark Theme */
/* Based on https://www.remotetuningsolutions.com/ branding */

:root {
  /* Dark theme colors */
  --rts-dark-bg: #0a0a0a;
  --rts-dark-bg-secondary: #1a1a1a;
  --rts-dark-bg-tertiary: #2a2a2a;
  --rts-dark-border: #3a3a3a;
  --rts-text-primary: #ffffff;
  --rts-text-secondary: #b0b0b0;
  --rts-text-muted: #808080;
  --rts-accent: #C01111; /* Red accent color */
  
  /* Override Good theme primary color variables */
  --bs-primary: #C01111 !important;
  --bs-primary-rgb: 192, 17, 17 !important;
  --kt-primary: #C01111 !important;
  --kt-primary-active: #a00e0e !important;
  --kt-primary-light: #C01111 !important;
  --kt-primary-inverse: #ffffff !important;
  
  /* Override light/secondary button colors */
  --bs-light: #2a2a2a !important;
  --bs-light-rgb: 42, 42, 42 !important;
  --kt-light: #2a2a2a !important;
  --kt-light-active: #353535 !important;
}

/* Main body background */
body {
  background-color: var(--rts-dark-bg) !important;
}

/* App wrapper backgrounds */
#kt_app_page,
.app-wrapper,
.app-page {
  background-color: var(--rts-dark-bg) !important;
}

/* Header */
#kt_app_header,
.app-header {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-bottom: 1px solid var(--rts-dark-border) !important;
}

/* Sidebar */
#kt_app_sidebar,
.app-sidebar {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-right: 1px solid var(--rts-dark-border) !important;
}

/* Sidebar menu items */
.menu .menu-item .menu-link {
  color: #d0d0d0 !important; /* Brightened from #b0b0b0 for better readability */
}

.menu .menu-item .menu-link:hover,
.menu .menu-item.active .menu-link,
.menu .menu-item.here .menu-link {
  background-color: var(--rts-dark-bg-tertiary) !important;
  color: var(--rts-text-primary) !important;
}

/* Main content area */
#kt_app_content,
.app-content {
  background-color: var(--rts-dark-bg) !important;
}

/* Cards */
.card {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-color: var(--rts-dark-border) !important;
}

.card-header {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-bottom-color: var(--rts-dark-border) !important;
}

.card-body {
  background-color: var(--rts-dark-bg-secondary) !important;
}

/* Text colors */
.text-gray-800,
.text-gray-900,
h1, h2, h3, h4, h5, h6 {
  color: var(--rts-text-primary) !important;
}

.text-gray-600,
.text-muted,
.text-gray-700 {
  color: var(--rts-text-secondary) !important;
}

.text-gray-500 {
  color: var(--rts-text-muted) !important;
}

/* Tables */
.table {
  color: var(--rts-text-primary) !important;
}

.table thead th {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-dark-border) !important;
  color: var(--rts-text-primary) !important;
}

.table tbody td {
  border-color: var(--rts-dark-border) !important;
  color: var(--rts-text-secondary) !important;
}

.table-hover tbody tr:hover {
  background-color: var(--rts-dark-bg-tertiary) !important;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.02) !important;
}

/* Forms */
.form-control,
.form-select {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-dark-border) !important;
  color: var(--rts-text-primary) !important;
}

.form-control:focus,
.form-select:focus {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-accent) !important;
  color: var(--rts-text-primary) !important;
}

.form-control::placeholder {
  color: var(--rts-text-muted) !important;
}

.form-label {
  color: var(--rts-text-primary) !important;
}

.form-text {
  color: var(--rts-text-muted) !important;
}

/* Disabled form fields */
.form-control:disabled,
.form-select:disabled {
  background-color: var(--rts-dark-bg) !important;
  opacity: 0.6;
}

/* Alerts */
.alert {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-dark-border) !important;
  color: var(--rts-text-primary) !important;
}

/* Badges */
.badge {
  color: var(--rts-text-primary) !important;
}

/* Badge color overrides for better readability */
.badge-light,
.badge.badge-light {
  background-color: #4a4a4a !important;
  color: var(--rts-text-primary) !important;
}

/* Checklist code badges - use RTS accent red for high contrast */
.badge-light-dark,
.badge.badge-light-dark {
  background-color: #C01111 !important;
  color: #ffffff !important;
}

.badge-primary,
.badge.badge-primary {
  background-color: #8b0d0d !important;
  color: var(--rts-text-primary) !important;
}

.badge-success,
.badge.badge-success {
  background-color: #007a42 !important;
  color: var(--rts-text-primary) !important;
}

.badge-warning,
.badge.badge-warning {
  background-color: #b87503 !important;
  color: var(--rts-text-primary) !important;
}

.badge-danger,
.badge.badge-danger {
  background-color: #8b0d0d !important;
  color: var(--rts-text-primary) !important;
}

.badge-info,
.badge.badge-info {
  background-color: #0c5460 !important;
  color: var(--rts-text-primary) !important;
}

.badge-secondary,
.badge.badge-secondary {
  background-color: #4a4a4a !important;
  color: var(--rts-text-primary) !important;
}

/* Badge-light-* variants (used in tickets table) */
.badge-light-primary,
.badge.badge-light-primary {
  background-color: #8b0d0d !important;
  color: var(--rts-text-primary) !important;
}

.badge-light-success,
.badge.badge-light-success {
  background-color: #007a42 !important;
  color: var(--rts-text-primary) !important;
}

.badge-light-warning,
.badge.badge-light-warning {
  background-color: #b87503 !important;
  color: var(--rts-text-primary) !important;
}

.badge-light-danger,
.badge.badge-light-danger {
  background-color: #8b0d0d !important;
  color: var(--rts-text-primary) !important;
}

.badge-light-info,
.badge.badge-light-info {
  background-color: #0c5460 !important;
  color: var(--rts-text-primary) !important;
}

.badge-light-secondary,
.badge.badge-light-secondary {
  background-color: #4a4a4a !important;
  color: var(--rts-text-primary) !important;
}

/* Dropdowns */
.dropdown-menu {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-color: var(--rts-dark-border) !important;
}

.dropdown-item {
  color: var(--rts-text-secondary) !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--rts-dark-bg-tertiary) !important;
  color: var(--rts-text-primary) !important;
}

/* Breadcrumbs */
.breadcrumb {
  background-color: transparent !important;
}

.breadcrumb-item,
.breadcrumb-item a {
  color: var(--rts-text-secondary) !important;
}

.breadcrumb-item.active,
.breadcrumb-item a:hover {
  color: var(--rts-text-primary) !important;
}

/* Separators */
.separator {
  border-color: var(--rts-dark-border) !important;
}

/* Toolbar */
#kt_app_toolbar,
.app-toolbar {
  background-color: var(--rts-dark-bg) !important;
}

/* Timeline */
.timeline .timeline-item .timeline-content {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-dark-border) !important;
}

/* Modals */
.modal-content {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-color: var(--rts-dark-border) !important;
}

.modal-header {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-bottom-color: var(--rts-dark-border) !important;
}

.modal-footer {
  background-color: var(--rts-dark-bg-secondary) !important;
  border-top-color: var(--rts-dark-border) !important;
}

/* Symbols (avatars) */
.symbol .symbol-label {
  background-color: var(--rts-dark-bg-tertiary) !important;
  color: var(--rts-text-primary) !important;
}

/* Keep buttons with their original colors for brand consistency */
.btn.btn-primary,
.btn-primary,
a.btn-primary,
button.btn-primary,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary:not(:disabled):not(.disabled) {
  background-color: var(--rts-accent) !important;
  border-color: var(--rts-accent) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.btn.btn-primary:hover,
.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
.btn-primary:focus:hover,
.btn-primary:active:hover,
.btn-primary:not(:disabled):not(.disabled):hover,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled):focus {
  background-color: #a00e0e !important;
  border-color: #900c0c !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.btn-success {
  background-color: #00a85a !important;
  border-color: #00a85a !important;
}

.btn-danger {
  background-color: var(--rts-accent) !important;
  border-color: var(--rts-accent) !important;
}

.btn-light,
.btn.btn-light,
a.btn-light,
button.btn-light,
.btn-light:focus,
.btn-light:active,
.btn-light.active,
.btn-light:not(:disabled):not(.disabled) {
  background-color: var(--rts-dark-bg-tertiary) !important;
  border-color: var(--rts-dark-border) !important;
  color: var(--rts-text-primary) !important;
  box-shadow: none !important;
}

.btn-light:hover,
.btn.btn-light:hover,
a.btn-light:hover,
button.btn-light:hover,
.btn-light:focus:hover,
.btn-light:active:hover,
.btn-light:not(:disabled):not(.disabled):hover,
.btn-light:not(:disabled):not(.disabled):active,
.btn-light:not(:disabled):not(.disabled):focus {
  background-color: #353535 !important;
  border-color: #454545 !important;
  color: var(--rts-text-primary) !important;
  box-shadow: none !important;
}
