:root { color-scheme: light; --bg:#f3f6fa; --card:#fff; --text:#18212f; --muted:#667085; --border:#dfe5ec; --accent:#1f6feb; --danger:#b42318; }
* { box-sizing: border-box; }
body { margin:0; font-family: Inter, Segoe UI, Arial, sans-serif; background:var(--bg); color:var(--text); }
a { color:inherit; text-decoration:none; }
.layout { min-height:100vh; display:grid; grid-template-columns:250px 1fr; }
.sidebar { background:#111827; color:#fff; padding:24px 16px; }
.brand { font-size:24px; font-weight:800; margin-bottom:26px; }
.nav a { display:block; padding:11px 12px; border-radius:8px; margin:4px 0; color:#d1d5db; }
.nav a:hover,.nav a.active { background:#1f2937; color:#fff; }
.main { min-width:0; }
.topbar { height:68px; padding:0 28px; background:#fff; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; }
.content { padding:28px; }
.card { background:var(--card); border:1px solid var(--border); border-radius:12px; padding:22px; box-shadow:0 2px 8px rgba(16,24,40,.04); margin-bottom:20px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:16px; }
.stat strong { display:block; font-size:30px; margin-top:8px; }
label { display:block; font-weight:600; margin-bottom:6px; }
input,select,textarea { width:100%; padding:10px 12px; border:1px solid var(--border); border-radius:8px; background:#fff; }
button,.button { display:inline-block; border:0; border-radius:8px; padding:10px 15px; background:var(--accent); color:#fff; cursor:pointer; }
.button.secondary { background:#475467; }
.button.danger { background:var(--danger); }
.form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.alert { padding:12px 14px; border-radius:8px; margin-bottom:16px; background:#ecfdf3; color:#027a48; }
.alert.error { background:#fef3f2; color:#b42318; }
table { width:100%; border-collapse:collapse; }
th,td { text-align:start; padding:11px 9px; border-bottom:1px solid var(--border); vertical-align:top; }
.badge { display:inline-block; padding:4px 8px; border-radius:999px; background:#eef4ff; color:#3538cd; font-size:12px; }
.language-switcher { display:flex; gap:7px; flex-wrap:wrap; }
.language-switcher a { padding:6px 9px; border:1px solid var(--border); border-radius:7px; }
.language-switcher a.active { background:#111827; color:#fff; }
.login-page { min-height:100vh; display:grid; place-items:center; padding:24px; }
.login-card { width:min(430px,100%); }
.actions { display:flex; gap:8px; flex-wrap:wrap; }
html[dir="rtl"] .layout { grid-template-columns:1fr 250px; }
html[dir="rtl"] .sidebar { grid-column:2; grid-row:1; }
html[dir="rtl"] .main { grid-column:1; grid-row:1; }
@media (max-width:800px) { .layout { display:block; }.sidebar { min-height:auto; }.form-row { grid-template-columns:1fr; } }

/* Phase 2A administration shell */
:root { --sidebar:#101828; --sidebar-soft:#1d2939; --primary:#2563eb; --primary-soft:#eff6ff; --success:#067647; --warning:#b54708; }
body { min-width:320px; }
.layout { grid-template-columns:270px minmax(0,1fr); }
.sidebar { position:sticky; top:0; height:100vh; display:flex; flex-direction:column; gap:12px; padding:20px 14px; background:var(--sidebar); z-index:30; }
.brand-row { display:flex; align-items:center; justify-content:space-between; padding:0 8px 12px; }
.brand { margin:0; font-size:23px; letter-spacing:-.4px; }
.nav { overflow:auto; padding-inline:2px; }
.nav-heading { padding:18px 12px 7px; color:#98a2b3; font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:700; }
.nav a { display:flex; align-items:center; gap:10px; min-height:43px; margin:3px 0; padding:10px 12px; }
.nav a small { margin-inline-start:auto; font-size:10px; color:#98a2b3; }
.nav a.disabled { opacity:.5; cursor:not-allowed; }
.nav-icon { width:22px; text-align:center; font-size:16px; }
.sidebar-footer { margin-top:auto; border-top:1px solid #344054; padding:16px 8px 0; }
.user-mini { display:flex; flex-direction:column; gap:2px; margin-bottom:12px; }
.user-mini span { color:#98a2b3; font-size:12px; overflow-wrap:anywhere; }
.logout-link { color:#fda29b; font-size:13px; }
.main { display:flex; min-height:100vh; flex-direction:column; }
.topbar { position:sticky; top:0; z-index:20; min-height:72px; height:auto; gap:18px; }
.topbar-start,.topbar-actions,.user-chip { display:flex; align-items:center; gap:12px; }
.topbar-subtitle { display:block; color:var(--muted); font-size:12px; margin-top:2px; }
.user-chip { border-inline-start:1px solid var(--border); padding-inline-start:14px; font-size:13px; }
.avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#eaf2ff; color:#1849a9; font-weight:800; }
.content { flex:1; width:100%; max-width:1600px; margin:0 auto; }
.footer { display:flex; justify-content:space-between; gap:12px; padding:18px 28px; color:var(--muted); font-size:12px; border-top:1px solid var(--border); background:#fff; }
.page-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:20px; }
.page-heading h1 { margin:0 0 5px; }
.page-heading p { margin:0; color:var(--muted); }
h1 { font-size:28px; letter-spacing:-.5px; } h2 { font-size:19px; margin-top:0; } h3 { font-size:16px; }
.two-columns { grid-template-columns:minmax(0,2fr) minmax(300px,1fr); align-items:start; }
.form-actions { margin-top:18px; display:flex; gap:10px; }
.stacked-form { margin-top:16px; }
.check-row { display:flex; align-items:flex-start; gap:9px; margin:8px 0; font-weight:400; }
.check-row input { width:auto; margin-top:3px; }
.check-row span { display:flex; flex-direction:column; gap:2px; }
.check-row small { color:var(--muted); }
.top-space { margin-top:29px; }
.permission-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:8px 18px; padding:12px; border:1px solid var(--border); border-radius:10px; }
.button.small { padding:7px 10px; font-size:12px; }
.badge.success { background:#ecfdf3; color:var(--success); }
.badge.muted { background:#f2f4f7; color:#475467; }
.alert.info { background:#eff8ff; color:#175cd3; }
.icon-button { border:0; background:transparent; color:inherit; padding:6px 9px; font-size:22px; }
.mobile-only,.sidebar-overlay { display:none; }
.error-code { font-size:58px; line-height:1; font-weight:900; color:var(--danger); }

/* Vendor normalization */
div.dt-container .dt-search input, div.dt-container .dt-length select { width:auto; display:inline-block; margin-inline:6px; }
div.dt-container .dt-layout-row { margin:12px 0; }
.select2-container .select2-selection--single { height:42px; border:1px solid var(--border); border-radius:8px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height:40px; padding-inline:12px 32px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height:40px; }
.swal2-popup { font-family:Inter,Segoe UI,Arial,sans-serif; }

html[dir="rtl"] .layout { grid-template-columns:minmax(0,1fr) 270px; }
html[dir="rtl"] .sidebar { grid-column:2; }
html[dir="rtl"] .main { grid-column:1; }

@media (max-width:1000px) {
  .mobile-only { display:inline-block; }
  .layout { display:block; }
  .sidebar { position:fixed; inset-block:0; inset-inline-start:0; width:280px; transform:translateX(-105%); transition:transform .2s ease; }
  html[dir="rtl"] .sidebar { inset-inline-start:auto; inset-inline-end:0; transform:translateX(105%); }
  .sidebar-open .sidebar { transform:translateX(0); }
  .sidebar-overlay { position:fixed; inset:0; background:rgba(16,24,40,.45); z-index:25; }
  .sidebar-open .sidebar-overlay { display:block; }
  .topbar { padding:12px 18px; }
  .user-chip span:last-child { display:none; }
  .two-columns { grid-template-columns:1fr; }
}
@media (max-width:650px) {
  .content { padding:18px 12px; }
  .topbar { align-items:flex-start; }
  .topbar-actions { flex-direction:column; align-items:flex-end; }
  .language-switcher a { font-size:11px; padding:5px 7px; }
  .footer { padding:16px 12px; flex-direction:column; }
  table { display:block; overflow-x:auto; white-space:nowrap; }
}

/* Phase 2A hotfix: separate DataTables pagination controls */
div.dt-container .dt-paging nav {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
div.dt-container .dt-paging .dt-paging-button {
  margin: 0 !important;
  border-radius: 7px !important;
}

/* Phase 2A hotfix 2: robust DataTables pagination spacing */
div.dt-container .dt-paging,
div.dt-container .dt-paging nav,
div.dt-container .dt-paging .pagination {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px !important;
}
div.dt-container .dt-paging .page-item,
div.dt-container .dt-paging .dt-paging-button {
  margin: 0 !important;
}
div.dt-container .dt-paging .page-link,
div.dt-container .dt-paging .dt-paging-button {
  margin: 0 !important;
  border-radius: 7px !important;
}
div.dt-container .dt-paging .page-item + .page-item .page-link {
  margin-inline-start: 0 !important;
}
.permission-option code {
  width: fit-content;
  padding: 2px 6px;
  border-radius: 5px;
  background: #f2f4f7;
  color: #475467;
  font-size: 11px;
  direction: ltr;
}

/* Phase 2B core module refinements */
.table-wrap { width:100%; overflow-x:auto; }
.inline-form { display:inline-flex; margin:0; }
td.actions { display:flex; gap:7px; align-items:center; flex-wrap:wrap; }
td.actions .button { white-space:nowrap; }
.card label { margin-top:12px; }
.card .form-row label { margin-top:0; }
.card textarea { resize:vertical; }
.grid.two-columns > .card:first-child { min-width:0; }
@media (max-width:1100px) { .two-columns { grid-template-columns:1fr; } }

/* MartialData adaptive theme foundation */
:root {
  --bg:#f3f6fa; --card:#ffffff; --card-soft:#f8fafc; --text:#18212f; --muted:#667085;
  --border:#dfe5ec; --input-bg:#ffffff; --topbar:#ffffff; --footer-bg:#ffffff;
  --sidebar:#101828; --sidebar-soft:#1d2939; --overlay:rgba(16,24,40,.45);
  --shadow:0 2px 8px rgba(16,24,40,.04); --table-stripe:#f8fafc;
  --select-hover:#eff6ff; --scroll-thumb:#c5ccd6;
}
html[data-theme="dark"], html[data-theme="system"][data-resolved-theme="dark"] {
  color-scheme:dark;
  --bg:#1f2329; --card:#292e35; --card-soft:#30363d; --text:#f1f3f5; --muted:#aeb6c0;
  --border:#414852; --input-bg:#30363d; --topbar:#262b31; --footer-bg:#262b31;
  --sidebar:#242930; --sidebar-soft:#30363d; --overlay:rgba(0,0,0,.58);
  --shadow:0 4px 18px rgba(0,0,0,.18); --table-stripe:#2d333a;
  --select-hover:#343c47; --scroll-thumb:#59616c;
}
body { background:var(--bg); color:var(--text); transition:background-color .18s ease,color .18s ease; }
.card { background:var(--card); border-color:var(--border); box-shadow:var(--shadow); }
.topbar { background:var(--topbar); border-color:var(--border); }
.footer { background:var(--footer-bg); border-color:var(--border); }
.sidebar { background:var(--sidebar); }
.nav a:hover,.nav a.active { background:var(--sidebar-soft); }
input,select,textarea { background:var(--input-bg); color:var(--text); border-color:var(--border); }
input::placeholder,textarea::placeholder { color:var(--muted); }
input:disabled,select:disabled,textarea:disabled { opacity:.68; }
th,td { border-color:var(--border); }
table.dataTable tbody tr:hover > * { background:var(--select-hover) !important; color:var(--text) !important; }
.badge.muted { background:var(--card-soft); color:var(--muted); }
.language-switcher a { background:var(--card); border-color:var(--border); }
.language-switcher a.active { background:var(--sidebar); color:#fff; }
.user-chip { border-color:var(--border); }
.avatar { background:var(--card-soft); color:var(--accent); }
.permission-grid { border-color:var(--border); }
.theme-control { display:flex; align-items:center; gap:7px; margin:0; font-weight:500; }
.theme-control-icon { color:var(--muted); font-size:17px; }
.theme-control select { width:auto; min-width:105px; height:36px; padding:5px 30px 5px 10px; font-size:12px; }
html[dir="rtl"] .theme-control select { padding:5px 10px 5px 30px; }
.sidebar-footer { border-color:#414852; }
.sidebar-overlay { background:var(--overlay); }

/* DataTables */
div.dt-container .dt-input, div.dt-container select.dt-input { background:var(--input-bg); color:var(--text); border-color:var(--border); }
div.dt-container .dt-paging .dt-paging-button { background:var(--card) !important; color:var(--text) !important; border-color:var(--border) !important; }
div.dt-container .dt-paging .dt-paging-button.current,
div.dt-container .dt-paging .dt-paging-button:hover { background:var(--accent) !important; color:#fff !important; border-color:var(--accent) !important; }

/* Select2 */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-dropdown,
.select2-search--dropdown .select2-search__field { background:var(--input-bg); color:var(--text); border-color:var(--border); }
.select2-container--default .select2-selection--single .select2-selection__rendered { color:var(--text); }
.select2-container--default .select2-results__option--selected { background:var(--card-soft); }
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { background:var(--accent); color:#fff; }

/* SweetAlert */
html[data-theme="dark"] .swal2-popup,
html[data-theme="system"][data-resolved-theme="dark"] .swal2-popup { background:var(--card); color:var(--text); }
html[data-theme="dark"] .swal2-title,
html[data-theme="dark"] .swal2-html-container,
html[data-theme="system"][data-resolved-theme="dark"] .swal2-title,
html[data-theme="system"][data-resolved-theme="dark"] .swal2-html-container { color:var(--text); }

/* Native UI and scrollbars */
html { scrollbar-color:var(--scroll-thumb) var(--bg); }
::-webkit-scrollbar { width:11px; height:11px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:var(--scroll-thumb); border-radius:10px; border:3px solid var(--bg); }

@media (max-width:650px) {
  .theme-control select { min-width:92px; }
  .theme-control-icon { display:none; }
}


/* MartialData brand palette — derived from the official logo */
:root {
  --brand-cyan:#00b6c2;
  --brand-cyan-strong:#009aa6;
  --brand-cyan-soft:#e8fbfc;
  --brand-navy:#004282;
  --brand-navy-strong:#003463;
  --brand-ink:#102a43;

  --bg:#f2f8fb;
  --card:#ffffff;
  --card-soft:#eef8fa;
  --text:#102a43;
  --muted:#5f7285;
  --border:#cfe3ea;
  --input-bg:#ffffff;
  --topbar:#ffffff;
  --footer-bg:#f7fbfc;
  --sidebar:#003b73;
  --sidebar-soft:#005391;
  --accent:var(--brand-cyan);
  --primary:var(--brand-cyan);
  --primary-soft:var(--brand-cyan-soft);
  --success:#16866f;
  --warning:#c47a19;
  --danger:#c33f55;
  --overlay:rgba(0,50,90,.46);
  --shadow:0 8px 24px rgba(0,66,130,.08);
  --table-stripe:#f5fbfc;
  --select-hover:#e7f9fb;
  --scroll-thumb:#7eb9c7;
}

html[data-theme="dark"],
html[data-theme="system"][data-resolved-theme="dark"] {
  color-scheme:dark;
  --bg:#132832;
  --card:#193642;
  --card-soft:#214550;
  --text:#eefbfc;
  --muted:#a9c1ca;
  --border:#35616c;
  --input-bg:#203f49;
  --topbar:#17323d;
  --footer-bg:#17323d;
  --sidebar:#0a3154;
  --sidebar-soft:#12496c;
  --accent:#16c4ce;
  --primary:#16c4ce;
  --primary-soft:#1b4e58;
  --success:#46bfa0;
  --warning:#e0a34b;
  --danger:#ee7185;
  --overlay:rgba(3,22,35,.68);
  --shadow:0 10px 28px rgba(1,16,27,.28);
  --table-stripe:#1d3d48;
  --select-hover:#27515d;
  --scroll-thumb:#4f8290;
}

body {
  background:
    radial-gradient(circle at 92% 4%, rgba(0,183,195,.10), transparent 28%),
    var(--bg);
}
.sidebar {
  background:linear-gradient(180deg,var(--sidebar) 0%,var(--brand-navy-strong) 100%);
  box-shadow:8px 0 28px rgba(0,45,85,.10);
}
html[dir="rtl"] .sidebar { box-shadow:-8px 0 28px rgba(0,45,85,.10); }
.nav a:hover,.nav a.active {
  background:linear-gradient(90deg,rgba(0,183,195,.24),rgba(255,255,255,.06));
  color:#fff;
}
.nav a.active { box-shadow:inset 3px 0 0 var(--brand-cyan); }
html[dir="rtl"] .nav a.active { box-shadow:inset -3px 0 0 var(--brand-cyan); }
.nav-heading { color:#83cbd2; }
.sidebar-footer { border-color:rgba(126,203,210,.28); }
.brand {
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}
.brand-logo {
  width:44px;
  height:44px;
  object-fit:cover;
  border-radius:10px;
  box-shadow:0 4px 14px rgba(0,0,0,.18);
  background:var(--brand-cyan);
}
.brand-text { display:flex; flex-direction:column; line-height:1.05; }
.brand-name { font-size:21px; font-weight:850; letter-spacing:-.45px; }
.brand-tagline { margin-top:4px; color:#9fe2e6; font-size:10px; font-weight:600; letter-spacing:.04em; }
.topbar { box-shadow:0 1px 0 rgba(0,66,130,.04); }
.card { box-shadow:var(--shadow); }
button,.button {
  background:linear-gradient(135deg,var(--brand-cyan),var(--brand-cyan-strong));
  box-shadow:0 5px 14px rgba(0,183,195,.18);
}
button:hover,.button:hover { filter:brightness(.97); transform:translateY(-1px); }
.button.secondary { background:linear-gradient(135deg,var(--brand-navy),var(--brand-navy-strong)); }
.language-switcher a.active {
  background:linear-gradient(135deg,var(--brand-navy),var(--brand-navy-strong));
  border-color:var(--brand-navy);
}
.avatar {
  background:var(--brand-cyan-soft);
  color:var(--brand-navy);
  border:1px solid rgba(0,183,195,.28);
}
html[data-theme="dark"] .avatar,
html[data-theme="system"][data-resolved-theme="dark"] .avatar {
  background:#174b59;
  color:#7fe8ed;
}
.badge { background:var(--brand-cyan-soft); color:var(--brand-navy); }
.badge.success { background:#e8f7f3; color:#116d5c; }
.alert.info { background:#eaf8fb; color:#075f6f; }
html[data-theme="dark"] .alert.info,
html[data-theme="system"][data-resolved-theme="dark"] .alert.info { background:#214d57; color:#b5f3f5; }
input:focus,select:focus,textarea:focus {
  border-color:var(--brand-cyan);
  outline:0;
  box-shadow:0 0 0 3px rgba(0,183,195,.16);
}
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
  border-color:var(--brand-cyan);
  box-shadow:0 0 0 3px rgba(0,183,195,.16);
}
div.dt-container .dt-paging .dt-paging-button.current,
div.dt-container .dt-paging .dt-paging-button:hover {
  background:linear-gradient(135deg,var(--brand-cyan),var(--brand-cyan-strong)) !important;
  border-color:var(--brand-cyan) !important;
}
.login-page {
  background:
    radial-gradient(circle at 15% 15%, rgba(0,183,195,.22), transparent 34%),
    radial-gradient(circle at 88% 82%, rgba(0,66,130,.18), transparent 38%),
    var(--bg);
}
.login-brand { display:flex; flex-direction:column; align-items:center; text-align:center; margin-bottom:20px; }
.login-logo { width:112px; height:112px; object-fit:cover; border-radius:22px; box-shadow:0 14px 34px rgba(0,66,130,.20); }
.login-brand h1 { margin:14px 0 4px; color:var(--brand-navy); }
html[data-theme="dark"] .login-brand h1,
html[data-theme="system"][data-resolved-theme="dark"] .login-brand h1 { color:#67e1e7; }
.login-brand p { margin:0; color:var(--muted); }

@media (max-width:650px) {
  .brand-logo { width:38px; height:38px; }
  .brand-tagline { display:none; }
}

/* MartialData logo clarity patch */
.brand-logo {
  width:46px;
  height:46px;
  object-fit:contain;
  padding:5px;
  background:#ffffff;
  border:1px solid #d7e6eb;
  border-radius:12px;
  box-shadow:0 5px 14px rgba(0,31,61,.18), inset 0 0 0 1px rgba(255,255,255,.65);
}
.login-logo {
  width:118px;
  height:118px;
  object-fit:contain;
  padding:10px;
  background:#ffffff;
  border:1px solid #d7e6eb;
  border-radius:24px;
  box-shadow:0 14px 34px rgba(0,66,130,.20), inset 0 0 0 1px rgba(255,255,255,.75);
}
html[data-theme="dark"] .brand-logo,
html[data-theme="system"][data-resolved-theme="dark"] .brand-logo,
html[data-theme="dark"] .login-logo,
html[data-theme="system"][data-resolved-theme="dark"] .login-logo {
  background:#f8fbfc;
  border-color:#c9dfe5;
}
@media (max-width:650px) {
  .brand-logo { width:40px; height:40px; padding:4px; border-radius:10px; }
}


/* MartialData shared row-action icon buttons
   Standard: compact icon-only table/list actions with localized tooltip. */
.action-icon-btn {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  min-width:34px;
  padding:0 !important;
  vertical-align:middle;
  line-height:1;
  overflow:visible;
}
.action-icon-btn .action-icon {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.action-icon-btn[data-tooltip]::before,
.action-icon-btn[data-tooltip]::after {
  position:absolute;
  left:50%;
  z-index:1000;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .14s ease, transform .14s ease, visibility .14s ease;
}
.action-icon-btn[data-tooltip]::before {
  content:attr(data-tooltip);
  bottom:calc(100% + 9px);
  transform:translate(-50%,4px);
  width:max-content;
  max-width:240px;
  padding:7px 9px;
  border-radius:7px;
  background:#101828;
  color:#fff;
  box-shadow:0 6px 18px rgba(16,24,40,.20);
  font-size:12px;
  font-weight:650;
  line-height:1.25;
  text-align:center;
  white-space:normal;
}
.action-icon-btn[data-tooltip]::after {
  content:"";
  bottom:calc(100% + 4px);
  transform:translate(-50%,4px);
  border:5px solid transparent;
  border-top-color:#101828;
}
.action-icon-btn[data-tooltip]:hover::before,
.action-icon-btn[data-tooltip]:hover::after,
.action-icon-btn[data-tooltip]:focus-visible::before,
.action-icon-btn[data-tooltip]:focus-visible::after {
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}
html[dir="rtl"] .action-icon-btn[data-tooltip]::before { text-align:center; }
html[data-theme="dark"] .action-icon-btn[data-tooltip]::before,
html[data-theme="system"][data-resolved-theme="dark"] .action-icon-btn[data-tooltip]::before {
  background:#f2f4f7;
  color:#101828;
}
html[data-theme="dark"] .action-icon-btn[data-tooltip]::after,
html[data-theme="system"][data-resolved-theme="dark"] .action-icon-btn[data-tooltip]::after {
  border-top-color:#f2f4f7;
}
@media (hover:none) {
  .action-icon-btn[data-tooltip]::before,
  .action-icon-btn[data-tooltip]::after { display:none; }
}


/* 054 — shared compact status switch for row actions */
.action-status-switch {
  background:var(--card-soft) !important;
  border:1px solid var(--border) !important;
  color:var(--text) !important;
}
.action-status-switch:hover,
.action-status-switch:focus-visible {
  background:var(--select-hover) !important;
  border-color:var(--accent) !important;
}
.action-switch-track {
  position:relative;
  display:block;
  width:26px;
  height:14px;
  border-radius:999px;
  background:#98a2b3;
  box-shadow:inset 0 0 0 1px rgba(16,24,40,.08);
  transition:background-color .16s ease;
}
.action-switch-knob {
  position:absolute;
  top:2px;
  left:2px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 3px rgba(16,24,40,.28);
  transition:transform .16s ease;
}
.action-status-switch.is-active .action-switch-track { background:#12b76a; }
.action-status-switch.is-active .action-switch-knob { transform:translateX(12px); }
html[dir="rtl"] .action-status-switch.is-active .action-switch-knob { transform:translateX(-12px); }
html[dir="rtl"] .action-switch-knob { left:auto; right:2px; }
.action-approve-btn { background:#079455 !important; }
.action-approve-btn:hover,
.action-approve-btn:focus-visible { background:#067647 !important; }
td.actions .action-icon-btn { flex:0 0 34px; }


/* MartialData 062 - nested admin navigation */
.nav details{margin:2px 0}.nav-accordion>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:#d0d5dd;cursor:pointer;font-weight:700;user-select:none}.nav-accordion>summary::-webkit-details-marker{display:none}.nav-accordion>summary:hover{background:var(--sidebar-soft);color:#fff}.nav-accordion[open]>summary{color:#fff}.nav-chevron{margin-inline-start:auto;transition:transform .18s ease}.nav-accordion[open]>summary .nav-chevron{transform:rotate(180deg)}.nav-children{display:grid;gap:2px;padding:3px 0 5px 11px;margin-inline-start:15px;border-inline-start:1px solid rgba(126,203,210,.22)}.nav-children .nav-children{margin-inline-start:10px;padding-inline-start:9px}.nav a.nav-level-1{padding-inline-start:11px}.nav a.nav-level-2{padding-inline-start:10px;font-size:13px}.nav-level-1>summary{font-size:13px;font-weight:650}.nav-level-2>summary{font-size:12.5px}html[dir="rtl"] .nav-children{padding-left:0;padding-right:11px}

.md-user-photo{object-fit:cover!important;padding:0!important;border-radius:50%!important}
