:root {
  --ka-bg: #07101f;
  --ka-shell: #0d1728;
  --ka-panel: #141f32;
  --ka-panel-2: #101a2c;
  --ka-line: #2d3b54;
  --ka-text: #edf4ff;
  --ka-muted: #9fb0ca;
  --ka-blue: #72a2ff;
  --ka-blue-2: #3f7df0;
  --ka-teal: #4ee3aa;
  --ka-warn: #f5b86b;
  --ka-danger: #ff7385;
}

.kaf-admin-body {
  background: var(--ka-bg) !important;
  color: var(--ka-text);
  font-family: "Cairo", Tahoma, Arial, sans-serif;
}

.kaf-admin-shell, .app-container, .kaf-admin-main {
  background: var(--ka-bg) !important;
}

.kaf-admin-main {
  min-height: calc(100vh - 112px);
  padding: 28px;
}

.kaf-sidebar, .app-sidebar {
  background: #101827 !important;
  border-inline-end: 1px solid var(--ka-line);
}

.sidebar-header, .sidebar-brand {
  background: #0a1324 !important;
  border-bottom: 1px solid var(--ka-line);
}

.sidebar-brand img {
  max-height: 58px;
  border-radius: 8px;
  filter: drop-shadow(0 12px 24px rgba(0,0,0,.32));
}

.sidebar-nav > li > a {
  color: var(--ka-muted) !important;
  border-radius: 8px;
  margin: 4px 10px;
}

.sidebar-nav > li.active > a,
.sidebar-nav > li > a:hover {
  background: #4f86f7 !important;
  color: #fff !important;
}

.sidebar-nav .icon {
  color: inherit !important;
}

.kaf-topbar .navbar-collapse {
  background: var(--ka-bg) !important;
  border-bottom: 1px solid var(--ka-line);
}

.navbar-title, .navbar-brand {
  color: var(--ka-text) !important;
  font-weight: 900;
}

.kaf-top-search {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  min-width: 260px;
  padding: 10px 18px !important;
  margin-top: 8px;
  color: var(--ka-muted);
  background: var(--ka-panel-2);
  border: 1px solid var(--ka-line);
  border-radius: 999px;
}

.kaf-lang-switch {
  display: inline-flex !important;
  gap: 4px;
  padding: 4px !important;
  margin: 10px 12px;
  background: rgba(255,255,255,.06);
  border: 1px solid var(--ka-line);
  border-radius: 999px;
}

.kaf-lang-switch a {
  padding: 6px 10px !important;
  color: var(--ka-muted) !important;
  border-radius: 999px;
  font-weight: 900;
}

.kaf-lang-switch a.active {
  background: var(--ka-blue);
  color: #07101f !important;
}

.card, .modal-content, .container-fluid[style*="background: #FFF"],
.page_title_block, .panel, .well {
  background: var(--ka-panel) !important;
  border: 1px solid var(--ka-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.22) !important;
  color: var(--ka-text);
}

.card-header, .card-header-primary {
  background: transparent !important;
  color: var(--ka-text) !important;
  border-bottom: 1px solid var(--ka-line);
}

.card-title, .page_title, .modal-title {
  color: var(--ka-text) !important;
  font-weight: 900 !important;
}

.card-category, .text-muted, .help-block, .control-label,
.table > thead > tr > th {
  color: var(--ka-muted) !important;
}

.card-banner .card-body {
  min-height: 118px;
}

.card-banner .title {
  color: var(--ka-muted) !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.card-banner .value {
  color: var(--ka-text) !important;
  font-weight: 900 !important;
}

.table, .table > tbody > tr > td {
  color: var(--ka-text) !important;
  border-color: var(--ka-line) !important;
}

.table > tbody > tr:hover {
  background: rgba(114,162,255,.08) !important;
}

.form-control, select, textarea, input[type="text"], input[type="search"],
input[type="password"], input[type="email"], input[type="number"] {
  background: #0b1425 !important;
  border: 1px solid var(--ka-line) !important;
  color: var(--ka-text) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

.form-control::placeholder, input::placeholder {
  color: #71809a !important;
}

.btn-primary, .add_btn_primary a {
  background: var(--ka-blue-2) !important;
  border-color: var(--ka-blue-2) !important;
  color: #fff !important;
}

.btn-success { background: #14a87c !important; border-color: #14a87c !important; }
.btn-warning { background: var(--ka-warn) !important; border-color: var(--ka-warn) !important; }
.btn-danger { background: var(--ka-danger) !important; border-color: var(--ka-danger) !important; }

.kaf-footer {
  background: #0a1324 !important;
  color: var(--ka-muted);
  border-top: 1px solid var(--ka-line);
}

html[dir="rtl"] .navbar-left { float: right !important; }
html[dir="rtl"] .navbar-right { float: left !important; }
html[dir="rtl"] .table > thead > tr > th,
html[dir="rtl"] .table > tbody > tr > td { text-align: right; }

@media (max-width: 860px) {
  .kaf-admin-main { padding: 16px; }
  .kaf-top-search { display: none !important; }
}
