:root {
  --utm-cyan: #1cb6ed;
  --utm-blue: #0d73cc;
  --utm-navy: #1b2f9a;
  --utm-deep: #07101f;
  --utm-ink: #121a2b;
  --utm-mist: #f3f6fb;
  --utm-line: #e3eaf3;
}

body, .site-menu-title, .panel-title, .btn, .form-control, .dropdown-item {
  font-family: "Manrope", "Segoe UI", sans-serif !important;
}

.site-navbar {
  background: var(--utm-deep) !important;
  border-bottom: 1px solid rgba(28, 182, 237, 0.28);
}
.site-navbar .navbar-header,
.site-navbar .navbar-container {
  background: var(--utm-deep) !important;
  color: #fff !important;
}
.site-navbar .navbar-brand,
.navbar-brand-text {
  color: #fff !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
}
.navbar-brand-text { color: var(--utm-cyan) !important; }
.site-navbar .navbar-toolbar .nav-link,
.site-navbar .navbar-toolbar .icon,
.site-navbar .input-search-icon,
.site-navbar .input-search-close {
  color: #d7e3f2 !important;
}
.site-navbar .hamburger-bar,
.site-navbar .hamburger::before,
.site-navbar .hamburger::after {
  background: #fff !important;
}
.site-navbar .navbar-search-overlap {
  background: var(--utm-deep) !important;
}

.site-menubar {
  background: #0b1528 !important;
  color: #d7e3f2 !important;
}
.site-menubar a,
.site-menu-title,
.site-menu-icon {
  color: #d7e3f2 !important;
}
.site-menu > .site-menu-item > a:hover,
.site-menu > .site-menu-item.open > a,
.site-menu > .site-menu-item.active > a,
.site-menu-item.active > a {
  background: linear-gradient(90deg, var(--utm-navy), var(--utm-blue)) !important;
  color: #fff !important;
}
.site-menu-sub {
  background: #08101e !important;
}
.site-menu-sub .site-menu-item > a:hover,
.site-menu-sub .site-menu-item.active > a {
  color: var(--utm-cyan) !important;
  background: transparent !important;
}

.page, .page-content {
  background: var(--utm-mist) !important;
}
.page-header, .page-title {
  color: var(--utm-ink) !important;
}

.panel, .panel-boxed {
  border: 1px solid var(--utm-line) !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 28px rgba(18, 26, 43, 0.05) !important;
  overflow: hidden;
  background: #fff !important;
}
.panel-heading {
  background: #fff !important;
  border-bottom: 1px solid var(--utm-line) !important;
}
.panel-title {
  color: var(--utm-navy) !important;
  font-weight: 800 !important;
}

.btn-primary, .btn-success, .btn-info {
  background: linear-gradient(90deg, var(--utm-navy), var(--utm-blue)) !important;
  border-color: transparent !important;
  color: #fff !important;
  border-radius: 10px !important;
}
.btn-primary:hover, .btn-success:hover, .btn-info:hover {
  filter: brightness(1.08);
  color: #fff !important;
}
.btn-default, .btn-outline-dark {
  border-radius: 10px !important;
}
.form-control:focus {
  border-color: var(--utm-cyan) !important;
  box-shadow: 0 0 0 3px rgba(28, 182, 237, 0.2) !important;
}

.table thead th, .table-dark, table.dataTable thead th {
  background: var(--utm-deep) !important;
  color: #fff !important;
  border-color: #1a2740 !important;
}
.table td, .table th { vertical-align: middle !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--utm-blue) !important;
  color: #fff !important;
  border-color: transparent !important;
}

.filter-wrapper {
  background: transparent !important;
  padding: 0 0 14px !important;
  border-radius: 0 !important;
}
.page-content .list-container {
  display: block;
}
.page-content .filter-wrapper .select-country-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.page-content .filter-wrapper .example-title,
.page-content .filter-wrapper h4 {
  flex: 1 0 100%;
  margin: 4px 0 0 !important;
  color: #5c6b82 !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.page-content .filter-wrapper .checkbox-custom {
  position: relative;
  margin: 0 !important;
  padding: 7px 14px 7px 36px;
  background: #f4f8fc;
  border: 1px solid #d5e2f0;
  border-radius: 999px;
  min-height: 36px;
}
.page-content .filter-wrapper .checkbox-custom:has(input:checked) {
  background: #e8f6fd;
  border-color: #1cb6ed;
}
.page-content .filter-wrapper label,
.page-content .filter-wrapper .select-filter-title,
.page-content .filter-wrapper h4 {
  color: #16315f !important;
}
.page-content .filter-wrapper .checkbox-custom label {
  margin: 0;
  font-weight: 600;
  cursor: pointer;
}

.site-footer {
  background: var(--utm-deep) !important;
  color: #9eb0c6 !important;
  border: 0 !important;
}
.site-footer a { color: var(--utm-cyan) !important; }

.dropdown-menu { border-radius: 12px !important; }
.modal-content { border-radius: 16px !important; border: 0 !important; }
.modal-header {
  background: linear-gradient(90deg, var(--utm-navy), var(--utm-blue));
  color: #fff;
}
.modal-header .close, .modal-header .modal-title { color: #fff !important; }

.utm-admin-login {
  background:
    radial-gradient(700px 320px at 80% 0%, rgba(28, 182, 237, 0.35), transparent 60%),
    radial-gradient(500px 300px at 10% 100%, rgba(27, 47, 154, 0.7), transparent 55%),
    #07101f !important;
}
.utm-admin-login::before { background: transparent !important; }
.utm-admin-login .wrap-login100 {
  background: #0c1730 !important;
  border: 1px solid rgba(28, 182, 237, 0.35);
  border-radius: 24px !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
}
.utm-admin-login .login100-form-logo {
  background: #000 !important;
  width: 108px !important;
  height: 108px !important;
}
.utm-admin-login .login100-form-title { letter-spacing: 0.08em; }
.utm-admin-login .login100-form-btn {
  background: linear-gradient(90deg, #1cb6ed, #0d73cc) !important;
  color: #041018 !important;
  font-weight: 800;
  min-height: 50px;
  border: 0;
}
.utm-admin-login .login100-form-btn::before { display: none !important; }
.utm-admin-login .label-checkbox100 { color: #d7e3f2 !important; }

.site-menu-category {
  color: #8ea0b8 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 22px 22px 6px !important;
  pointer-events: none;
}
.site-menubar { border-right: 1px solid rgba(28, 182, 237, 0.12); }
.page-content { padding-top: 24px !important; }
.table-responsive { min-height: 0 !important; }
