body.theme-dark {
  --dark-bg: #070707;
  --dark-panel: #111111;
  --dark-panel-soft: #151515;
  --dark-panel-strong: #1b1b1b;
  --dark-border: #2b2b2b;
  --dark-border-soft: #222222;
  --dark-text: #f1f1f1;
  --dark-muted: #a7a7a7;
  --dark-muted-soft: #7f7f7f;
  --dark-accent: #4f7cff;
  --dark-accent-hover: #6d94ff;
  --dark-danger: #ef4444;
  --dark-danger-hover: #f87171;
  background: var(--dark-bg);
  color: var(--dark-text);
}

body.theme-dark #layout-wrapper,
body.theme-dark .page-content,
body.theme-dark .main-content {
  background: var(--dark-bg);
}

body.theme-dark #page-topbar {
  background: rgba(7, 7, 7, 0.96);
  border-bottom: 1px solid var(--dark-border-soft);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.42);
  backdrop-filter: blur(10px);
}

body.theme-dark .navbar-header {
  background: transparent;
}

body.theme-dark .vertical-menu {
  background: #0d0d0d;
  border: 0;
}

body.theme-dark #sidebar-menu {
  background: #0d0d0d;
  border: 0;
}

body.theme-dark .vertical-menu {
  box-shadow: 10px 0 26px rgba(0, 0, 0, 0.36);
}

body.theme-dark #sidebar-menu .menu-title {
  color: #b8b8b8;
  letter-spacing: 0;
  font-weight: 700;
}

body.theme-dark #sidebar-menu ul li a {
  color: #c2c2c2;
  border-radius: 6px;
  margin: 2px 10px;
}

body.theme-dark #sidebar-menu ul li a i {
  color: #8f8f8f;
}

body.theme-dark #sidebar-menu ul li a:hover,
body.theme-dark #sidebar-menu ul li a.active,
body.theme-dark #sidebar-menu ul li.mm-active > a {
  color: #ffffff;
  background: #171717;
}

body.theme-dark #sidebar-menu ul li a:hover i,
body.theme-dark #sidebar-menu ul li a.active i,
body.theme-dark #sidebar-menu ul li.mm-active > a i {
  color: var(--dark-accent);
}

body.theme-dark .sidebar-footer {
  background: linear-gradient(180deg, rgba(13, 13, 13, 0), #0d0d0d 22%);
}

body.theme-dark .page-title,
body.theme-dark .page-title-box h4,
body.theme-dark h1,
body.theme-dark h2,
body.theme-dark h3,
body.theme-dark h4,
body.theme-dark h5,
body.theme-dark h6,
body.theme-dark .card-title {
  color: #ffffff;
}

body.theme-dark .text-dark,
body.theme-dark .font-weight-medium {
  color: #ffffff !important;
}

body.theme-dark .text-muted,
body.theme-dark p {
  color: var(--dark-muted) !important;
}

body.theme-dark a {
  color: #7fa0ff;
}

body.theme-dark a:hover {
  color: #adc2ff;
}

body.theme-dark .card {
  background: var(--dark-panel);
  border: 1px solid var(--dark-border-soft);
  border-radius: 6px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.36);
}

body.theme-dark .card-body,
body.theme-dark .card-header,
body.theme-dark .card-footer {
  background: transparent;
  color: var(--dark-text);
}

body.theme-dark .card-header,
body.theme-dark .border-bottom,
body.theme-dark .border-top {
  border-color: var(--dark-border-soft) !important;
}

body.theme-dark .table,
body.theme-dark .table tbody,
body.theme-dark .table thead,
body.theme-dark .table tr,
body.theme-dark .table td,
body.theme-dark .table th {
  color: var(--dark-text);
  border-color: var(--dark-border-soft);
}

body.theme-dark .table thead th {
  color: #d9d9d9;
  background: #0d0d0d;
  border-bottom-color: var(--dark-border);
}

body.theme-dark .table-striped tbody tr:nth-of-type(odd),
body.theme-dark .table-hover tbody tr:hover {
  background: #161616;
}

body.theme-dark .form-control,
body.theme-dark select.form-control,
body.theme-dark textarea.form-control {
  background: #0a0a0a;
  color: #ffffff;
  border-color: #333333;
  box-shadow: none;
}

body.theme-dark .form-control:focus,
body.theme-dark select.form-control:focus,
body.theme-dark textarea.form-control:focus {
  background: #0f0f0f;
  color: #ffffff;
  border-color: var(--dark-accent);
  box-shadow: 0 0 0 0.16rem rgba(79, 124, 255, 0.2);
}

body.theme-dark .form-control::placeholder {
  color: #777777;
}

body.theme-dark .dropdown-menu {
  background: var(--dark-panel);
  border: 1px solid var(--dark-border);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.5);
}

body.theme-dark .dropdown-item {
  color: var(--dark-text);
}

body.theme-dark .dropdown-item:hover,
body.theme-dark .dropdown-item:focus {
  color: #ffffff;
  background: var(--dark-panel-strong);
}

body.theme-dark .btn-primary {
  background: var(--dark-accent);
  border-color: var(--dark-accent);
  color: #ffffff;
  font-weight: 700;
  box-shadow: none;
}

body.theme-dark .btn-primary:hover,
body.theme-dark .btn-primary:focus {
  background: var(--dark-accent-hover);
  border-color: var(--dark-accent-hover);
  color: #ffffff;
  box-shadow: 0 0 0 0.16rem rgba(79, 124, 255, 0.2);
}

body.theme-dark .btn-primary.btn-block {
  background: #141414;
  border-color: var(--dark-accent);
  color: #b9c8ff;
}

body.theme-dark .btn-primary.btn-block:hover,
body.theme-dark .btn-primary.btn-block:focus {
  background: #1b1b1b;
  border-color: var(--dark-accent-hover);
  color: #ffffff;
}

body.theme-dark .btn-outline-primary {
  color: #b9c8ff;
  border-color: var(--dark-accent);
}

body.theme-dark .btn-outline-primary:hover {
  color: #ffffff;
  background: var(--dark-accent);
  border-color: var(--dark-accent);
}

body.theme-dark .btn-outline-secondary {
  color: #c2c2c2;
  border-color: #555555;
}

body.theme-dark .btn-outline-secondary:hover {
  color: #ffffff;
  background: #3a3a3a;
  border-color: #666666;
}

body.theme-dark .btn-outline-danger {
  color: #fca5a5;
  border-color: var(--dark-danger);
}

body.theme-dark .btn-outline-danger:hover {
  color: #ffffff;
  background: var(--dark-danger);
  border-color: var(--dark-danger);
}

.ticket-action-tabs {
  border-bottom: 1px solid #e2e5ef;
  gap: 18px;
}

.ticket-action-tabs .nav-link {
  color: #6c757d;
  border-radius: 0;
  padding: 0 0 0.65rem;
  font-weight: 700;
  position: relative;
}

.ticket-action-tabs .nav-link:hover {
  color: #3b5de7;
}

.ticket-action-tabs .nav-link.active {
  color: #3b5de7;
  background: transparent;
}

.ticket-action-tabs .nav-link.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: currentColor;
}

.ticket-final-actions {
  border-top: 1px solid #e2e5ef;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 1rem;
  padding-top: 1rem;
}

.ticket-info-card .card-title {
  line-height: 1.35;
}

.ticket-info-row {
  margin-bottom: 0.75rem;
}

.ticket-info-label {
  color: #8e99a3;
  font-size: 0.78rem;
  font-weight: 600;
  margin-bottom: 0.18rem;
}

.ticket-info-value {
  color: #343a40;
  font-weight: 600;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ticket-demo-value {
  color: #3b5de7;
}

.ticket-info-row.mb-0 {
  margin-bottom: 0;
}

.ticket-action-button {
  border: 1px solid transparent;
  font-weight: 700;
  min-height: 36px;
  padding: 0.47rem 0.95rem;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.ticket-action-button-primary-solid {
  background: #3b5de7;
  border-color: #3b5de7;
  color: #ffffff;
}

.ticket-action-button-primary-outline {
  background: transparent;
  border-color: #3b5de7;
  color: #3b5de7;
}

.ticket-action-button-danger-outline {
  background: transparent;
  border-color: #ff715b;
  color: #ff715b;
}

.ticket-action-button-danger-solid {
  background: #ff715b;
  border-color: #ff715b;
  color: #ffffff;
}

.ticket-action-button-primary-solid:hover,
.ticket-action-button-primary-solid:focus {
  background: #2648d9;
  border-color: #2648d9;
  color: #ffffff;
  box-shadow: none;
}

.ticket-action-button-primary-outline:hover,
.ticket-action-button-primary-outline:focus {
  background: #3b5de7;
  border-color: #3b5de7;
  color: #ffffff;
  box-shadow: none;
}

.ticket-action-button-danger-outline:hover,
.ticket-action-button-danger-outline:focus {
  background: #ff715b;
  border-color: #ff715b;
  color: #ffffff;
  box-shadow: none;
}

.ticket-action-button-danger-solid:hover,
.ticket-action-button-danger-solid:focus {
  background: #ef5740;
  border-color: #ef5740;
  color: #ffffff;
  box-shadow: none;
}

body.theme-dark .ticket-action-tabs {
  border-bottom-color: var(--dark-border-soft);
  background: transparent;
}

body.theme-dark .ticket-action-tabs .nav-link {
  color: #b0b0b0;
}

body.theme-dark .ticket-action-tabs .nav-link:hover {
  color: #ffffff;
}

body.theme-dark .ticket-action-tabs .nav-link.active {
  color: var(--dark-accent-hover);
  background: transparent;
}

body.theme-dark .ticket-final-actions {
  border-top-color: var(--dark-border-soft);
}

body.theme-dark .ticket-info-label {
  color: #7f7f7f;
}

body.theme-dark .ticket-info-value {
  color: #ffffff;
}

body.theme-dark .ticket-demo-value {
  color: #7fa0ff;
}

body.theme-dark .ticket-action-button {
  box-shadow: none;
}

body.theme-dark .ticket-action-button-primary-solid {
  background: var(--dark-accent);
  border-color: var(--dark-accent);
  color: #ffffff;
}

body.theme-dark .ticket-action-button-primary-solid:hover,
body.theme-dark .ticket-action-button-primary-solid:focus {
  background: var(--dark-accent-hover);
  border-color: var(--dark-accent-hover);
  color: #ffffff;
  box-shadow: 0 0 0 0.16rem rgba(79, 124, 255, 0.2);
}

body.theme-dark .ticket-action-button-primary-outline {
  background: transparent;
  border-color: var(--dark-accent);
  color: #b9c8ff;
}

body.theme-dark .ticket-action-button-primary-outline:hover,
body.theme-dark .ticket-action-button-primary-outline:focus {
  background: var(--dark-accent);
  border-color: var(--dark-accent);
  color: #ffffff;
  box-shadow: none;
}

body.theme-dark .ticket-action-button-danger-outline {
  background: transparent;
  border-color: #f87171;
  color: #fecaca;
}

body.theme-dark .ticket-action-button-danger-solid {
  background: var(--dark-danger);
  border-color: var(--dark-danger);
  color: #ffffff;
}

body.theme-dark .ticket-action-button-danger-outline:hover,
body.theme-dark .ticket-action-button-danger-outline:focus {
  background: var(--dark-danger);
  border-color: var(--dark-danger);
  color: #ffffff;
  box-shadow: none;
}

body.theme-dark .ticket-action-button-danger-solid:hover,
body.theme-dark .ticket-action-button-danger-solid:focus {
  background: var(--dark-danger-hover);
  border-color: var(--dark-danger-hover);
  color: #ffffff;
  box-shadow: 0 0 0 0.16rem rgba(239, 68, 68, 0.18);
}

body.theme-dark .badge-soft-danger {
  color: #fecaca;
  background: rgba(239, 68, 68, 0.16);
}

body.theme-dark .badge-soft-success {
  color: #9ee6bd;
  background: rgba(69, 203, 133, 0.16);
  border: 1px solid rgba(69, 203, 133, 0.22);
}

body.theme-dark .badge-soft-primary {
  color: #b9c8ff;
  background: rgba(59, 93, 231, 0.18);
  border: 1px solid rgba(79, 124, 255, 0.22);
}

body.theme-dark .badge-soft-secondary {
  color: #cfcfcf;
  background: rgba(255, 255, 255, 0.1);
}

body.theme-dark .page-link {
  background: #0d0d0d;
  color: #c2c2c2;
  border-color: var(--dark-border-soft);
}

body.theme-dark .page-link:hover,
body.theme-dark .page-link:focus {
  background: #171717;
  color: #ffffff;
  border-color: var(--dark-accent);
  box-shadow: none;
}

body.theme-dark .page-item.active .page-link {
  background: var(--dark-accent);
  border-color: var(--dark-accent);
  color: #ffffff;
}

body.theme-dark .page-item.disabled .page-link {
  background: #0a0a0a;
  color: #666666;
  border-color: #1d1d1d;
}

body.theme-dark .footer {
  background: #0d0d0d;
  color: var(--dark-muted);
  border-top: 1px solid var(--dark-border-soft);
}

body.theme-dark #theme-toggle,
body.theme-dark #muted {
  color: #d7d7d7;
  background: #0d0d0d;
  border-color: #444444;
}

body.theme-dark #muted:hover,
body.theme-dark #theme-toggle:hover {
  color: #ffffff;
  background: var(--dark-accent);
  border-color: var(--dark-accent);
}

/* login-theme-support */
html.theme-dark,
html.theme-dark body {
  background: #070707;
  color: #f1f1f1;
}

html.theme-dark body #layout-wrapper,
html.theme-dark body .page-content,
html.theme-dark body .main-content,
html.theme-dark body .account-pages {
  background: #070707;
  color: #f1f1f1;
}

html.theme-dark body .account-pages .card {
  background: #111111;
  border: 1px solid #222222;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.36);
}

html.theme-dark body .account-pages .card-body {
  background: transparent;
}

html.theme-dark body .account-pages .form-control {
  background: #0a0a0a;
  border-color: #333333;
  color: #ffffff;
}

html.theme-dark body .account-pages .form-control:focus {
  background: #0f0f0f;
  border-color: #4f7cff;
  box-shadow: 0 0 0 0.16rem rgba(79, 124, 255, 0.2);
  color: #ffffff;
}

html.theme-dark body .rs-swal-dark,
body.theme-dark .rs-swal-dark {
  background: #111111 !important;
  border: 1px solid #2b2b2b !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.72) !important;
  color: #f1f1f1 !important;
}

html.theme-dark body .rs-swal-dark .swal2-title,
body.theme-dark .rs-swal-dark .swal2-title {
  color: #ffffff !important;
}

html.theme-dark body .rs-swal-dark .swal2-html-container,
body.theme-dark .rs-swal-dark .swal2-html-container {
  color: #d7d7d7 !important;
}

html.theme-dark body .rs-swal-dark .swal2-timer-progress-bar,
body.theme-dark .rs-swal-dark .swal2-timer-progress-bar {
  background: rgba(79, 124, 255, 0.75) !important;
}
/* warn-modal-theme */
body.theme-dark .modal-content {
  background: #111111;
  border: 1px solid #2b2b2b;
  color: #f1f1f1;
}

body.theme-dark .modal-header,
body.theme-dark .modal-footer {
  border-color: #242424;
}

body.theme-dark .modal .close {
  color: #f1f1f1;
  text-shadow: none;
}

body.theme-dark #reportWarnModal .modal-content,
body.theme-dark #questionWarnModal .modal-content,
body.theme-dark #playerWarnModal .modal-content,
html.theme-dark body #reportWarnModal .modal-content,
html.theme-dark body #questionWarnModal .modal-content,
html.theme-dark body #playerWarnModal .modal-content {
  background: #111111 !important;
  border-color: var(--dark-border-soft) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.72) !important;
  color: var(--dark-text) !important;
}

body.theme-dark #reportWarnModal .modal-header,
body.theme-dark #questionWarnModal .modal-header,
body.theme-dark #playerWarnModal .modal-header,
html.theme-dark body #reportWarnModal .modal-header,
html.theme-dark body #questionWarnModal .modal-header,
html.theme-dark body #playerWarnModal .modal-header {
  background: #111111 !important;
  border-bottom-color: var(--dark-border-soft) !important;
}

body.theme-dark #reportWarnModal .modal-title,
body.theme-dark #questionWarnModal .modal-title,
body.theme-dark #playerWarnModal .modal-title,
html.theme-dark body #reportWarnModal .modal-title,
html.theme-dark body #questionWarnModal .modal-title,
html.theme-dark body #playerWarnModal .modal-title {
  color: #ffffff !important;
}

body.theme-dark #reportWarnModal .modal-body,
body.theme-dark #questionWarnModal .modal-body,
body.theme-dark #playerWarnModal .modal-body,
html.theme-dark body #reportWarnModal .modal-body,
html.theme-dark body #questionWarnModal .modal-body,
html.theme-dark body #playerWarnModal .modal-body {
  background: #111111 !important;
  color: #f1f1f1 !important;
}

body.theme-dark #reportWarnModal .modal-body p,
body.theme-dark #reportWarnModal .modal-body label,
body.theme-dark #questionWarnModal .modal-body p,
body.theme-dark #questionWarnModal .modal-body label,
body.theme-dark #playerWarnModal .modal-body p,
body.theme-dark #playerWarnModal .modal-body label,
html.theme-dark body #reportWarnModal .modal-body p,
html.theme-dark body #reportWarnModal .modal-body label,
html.theme-dark body #questionWarnModal .modal-body p,
html.theme-dark body #questionWarnModal .modal-body label,
html.theme-dark body #playerWarnModal .modal-body p,
html.theme-dark body #playerWarnModal .modal-body label {
  color: #b8b8b8 !important;
}

body.theme-dark #reportWarnModal .modal-body .text-dark,
body.theme-dark #questionWarnModal .modal-body .text-dark,
body.theme-dark #playerWarnModal .modal-body .text-dark,
html.theme-dark body #reportWarnModal .modal-body .text-dark,
html.theme-dark body #questionWarnModal .modal-body .text-dark,
html.theme-dark body #playerWarnModal .modal-body .text-dark {
  color: #ffffff !important;
}

body.theme-dark #reportWarnModal .modal-footer,
body.theme-dark #questionWarnModal .modal-footer,
body.theme-dark #playerWarnModal .modal-footer,
html.theme-dark body #reportWarnModal .modal-footer,
html.theme-dark body #questionWarnModal .modal-footer,
html.theme-dark body #playerWarnModal .modal-footer {
  background: #111111 !important;
  border-top-color: var(--dark-border-soft) !important;
}

body.theme-dark #reportWarnModal .close,
body.theme-dark #questionWarnModal .close,
body.theme-dark #playerWarnModal .close,
html.theme-dark body #reportWarnModal .close,
html.theme-dark body #questionWarnModal .close,
html.theme-dark body #playerWarnModal .close {
  color: #d7d7d7 !important;
  opacity: 0.9 !important;
  text-shadow: none !important;
}

body.theme-dark #reportWarnModal .close:hover,
body.theme-dark #reportWarnModal .close:focus,
body.theme-dark #questionWarnModal .close:hover,
body.theme-dark #questionWarnModal .close:focus,
body.theme-dark #playerWarnModal .close:hover,
body.theme-dark #playerWarnModal .close:focus,
html.theme-dark body #reportWarnModal .close:hover,
html.theme-dark body #reportWarnModal .close:focus,
html.theme-dark body #questionWarnModal .close:hover,
html.theme-dark body #questionWarnModal .close:focus,
html.theme-dark body #playerWarnModal .close:hover,
html.theme-dark body #playerWarnModal .close:focus {
  color: #ffffff !important;
  opacity: 1 !important;
}

.rs-chat-history-card {
  min-height: 0;
  max-height: none;
  overflow: visible;
}

.rs-report-main-row {
  align-items: stretch;
}

.rs-report-main-column {
  display: flex;
  flex-direction: column;
}

.rs-report-main-column > .rs-chat-history-card {
  margin-top: auto;
}

.rs-chat-history-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  user-select: none;
}

.rs-chat-history-toggle:focus {
  outline: 0;
  box-shadow: inset 0 0 0 2px rgba(74, 144, 226, .45);
}

.rs-chat-history-toggle .card-title {
  margin-bottom: 0;
}

.rs-chat-history-state {
  flex: 0 0 auto;
  color: #6f9ce6;
  font-size: 12px;
  font-weight: 600;
}

.rs-chat-history-body {
  max-height: 620px;
  overflow-y: auto;
}

.rs-team-badge-t {
  color: #ff5f57 !important;
  background-color: rgba(255, 95, 87, .22) !important;
}

html.theme-dark body .rs-team-badge-t,
body.theme-dark .rs-team-badge-t {
  color: #ff7b72 !important;
  background-color: rgba(255, 95, 87, .24) !important;
}
