/* Operator admin — compact fintech layer (scoped) */
.tr-app.tr-app--admin {
  /* Тёмная тема кабинета трейдера — «Графит» (нейтральный графит + синий акцент).
     Админка форсит светлую (override trader.css), поэтому её не затрагивает. */
  --tr-bg: #0f1218;
  --tr-surface: #171b23;
  --tr-surface-2: #1f242e;
  --tr-line: #2a303c;
  --tr-purple: #5b9dff;
  --tr-purple-soft: rgba(91, 157, 255, 0.15);
  --tr-text: #e6e9f0;
  --tr-muted: #939bab;
  --tr-sidebar-w: 208px;
  --op-radius-sm: 8px;
  --op-radius-md: 10px;
  --op-radius-lg: 12px;
  --op-gap-page: 10px;
  --op-gap-grid: 10px;
  --op-accent: linear-gradient(90deg, #8b5cf6 0%, #22d3ee 100%);
  --op-brand-gradient: linear-gradient(90deg, #8b5cf6 0%, #22d3ee 100%);
  --op-glow: 0 0 0 1px rgba(139, 92, 246, 0.10), 0 10px 28px rgba(0, 0, 0, 0.35);
  --op-border-faint: rgba(255, 255, 255, 0.04);
  --op-border: rgba(255, 255, 255, 0.06);
  --op-border-strong: rgba(255, 255, 255, 0.08);
  --op-elevated: rgba(0, 0, 0, 0.15);
  --op-input-bg: rgba(0, 0, 0, 0.25);
  --op-kicker: #64748b;
  --op-sidebar-bg: linear-gradient(180deg, #0a0a10 0%, #070709 100%);
  --op-sidebar-shadow: 12px 0 40px rgba(0, 0, 0, 0.35);
  --op-topbar-bg: rgba(10, 10, 16, 0.85);
  --op-login-bg: radial-gradient(900px 500px at 0% 100%, rgba(139, 92, 246, 0.16), transparent 52%), radial-gradient(820px 480px at 100% 0%, rgba(34, 211, 238, 0.12), transparent 50%), linear-gradient(180deg, #0b0e14 0%, #050508 100%);
  --op-login-card-bg: linear-gradient(180deg, rgba(18, 18, 28, 0.98) 0%, rgba(12, 12, 18, 0.98) 100%);
  --op-scrim-opacity: 0.72;
  --op-nav-text: #94a3b8;
  --op-nav-hover-text: #e2e8f0;
  --op-nav-active-text: #ffffff;
  --op-hero-title: #f8fafc;
  --op-hero-muted: #94a3b8;
  --op-metric-value: #f8fafc;
  --op-panel-title: #f1f5f9;
  /* Dark theme 3D card tokens (mirrors light-theme elevation) */
  --op-card-face-hi: #16161f;
  --op-card-face: #101018;
  --op-card-face-lo: #0a0a10;
  --op-card-border: rgba(255, 255, 255, 0.08);
  --op-card-3d-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    inset 0 -1px 0 rgba(0, 0, 0, 0.55),
    0 1px 2px rgba(0, 0, 0, 0.45),
    0 5px 0 rgba(0, 0, 0, 0.45),
    0 12px 26px rgba(0, 0, 0, 0.5);
  --op-card-3d-hover:
    inset 0 1px 0 rgba(139, 92, 246, 0.18),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.5),
    0 18px 38px rgba(0, 0, 0, 0.6);
  --op-card-shadow: var(--op-card-3d-shadow);
  /* типографика как в кабинете трейдера (Aurora): тот же размер и трекинг */
  font-family: var(--font-sans);
  font-size: var(--text-base);
  letter-spacing: normal;
  line-height: var(--leading-normal);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Portaled UI (drawer, toast) uses :root tokens from styles.css */
html:not([data-admin-theme="light"]) {
  color-scheme: dark;
}

html:not([data-admin-theme="light"]) .drawer select,
html:not([data-admin-theme="light"]) .drawer input,
html:not([data-admin-theme="light"]) .drawer textarea {
  color-scheme: dark;
}

html[data-admin-theme="light"] {
  color-scheme: light;
  --bg: #c5cfe0;
  --surface: #e2e9f4;
  --surface-2: #d8e1ee;
  --line: #b8c5d8;
  --line-soft: #c8d4e4;
  --text: #0f172a;
  --muted: #475569;
  --faint: #64748b;
  --shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    0 8px 24px rgba(15, 23, 42, 0.1);
  --green-soft: rgba(22, 163, 74, 0.12);
  --red-soft: rgba(239, 68, 68, 0.1);
}

/* Светлая тема — таблицы целиком светлые (фон строк в styles.css зашит
   тёмным, поэтому перекрываем его здесь), текст тёмный, ховер сохраняем. */
.tr-app.tr-app--admin[data-theme="light"] tbody tr {
  background: var(--op-card-face, #e2e9f4);
}

.tr-app.tr-app--admin[data-theme="light"] th,
.tr-app.tr-app--admin[data-theme="light"] td {
  border-bottom-color: var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] th {
  background: #ccd6e6;
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] td,
.tr-app.tr-app--admin[data-theme="light"] tbody tr td,
.tr-app.tr-app--admin[data-theme="light"] td strong,
.tr-app.tr-app--admin[data-theme="light"] .t-id strong {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] td .faint,
.tr-app.tr-app--admin[data-theme="light"] tbody .faint {
  color: var(--tr-muted);
}

/* Зебра и ховер поверх светлых строк */
.tr-app.tr-app--admin[data-theme="light"] tbody tr:nth-child(even) td {
  background: rgba(15, 23, 42, 0.035);
}

.tr-app.tr-app--admin[data-theme="light"] tbody tr:hover td {
  background: rgba(124, 58, 237, 0.1);
}

html[data-admin-theme="light"] .drawer {
  background: var(--surface);
  border-left-color: var(--line);
}

html[data-admin-theme="light"] .drawer-head,
html[data-admin-theme="light"] .drawer-actions {
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .drawer-tile {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .op-toast {
  background: var(--surface);
  border-color: var(--line);
  color: var(--text);
  box-shadow: var(--shadow);
}

html[data-admin-theme="light"] .drawer-overlay {
  background: rgba(15, 23, 42, 0.35);
}

html[data-admin-theme="light"] .drawer {
  box-shadow: -12px 0 40px rgba(15, 23, 42, 0.12);
}

/* Light theme — order detail drawer (portaled outside .tr-app) */
html[data-admin-theme="light"] .order-detail-hero {
  border-color: rgba(59, 130, 246, 0.35);
  background: linear-gradient(
    135deg,
    rgba(56, 189, 248, 0.2) 0%,
    rgba(139, 92, 246, 0.14) 45%,
    rgba(255, 255, 255, 0.72) 100%
  );
}

html[data-admin-theme="light"] .order-detail-kicker {
  color: #475569;
}

html[data-admin-theme="light"] .order-detail-amount {
  color: #0f172a;
}

html[data-admin-theme="light"] .order-detail-sub {
  color: #475569;
}

html[data-admin-theme="light"] .order-detail .drawer-tabs {
  background: var(--surface-2);
  border-color: var(--line);
}

html[data-admin-theme="light"] .order-detail .drawer-tab {
  color: var(--muted);
}

html[data-admin-theme="light"] .order-detail .drawer-tab:hover {
  color: var(--text);
}

html[data-admin-theme="light"] .order-detail .drawer-tab.active {
  background: rgba(124, 58, 237, 0.14);
  border-color: rgba(124, 58, 237, 0.42);
  color: #5b21b6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

html[data-admin-theme="light"] .order-info-tile {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .order-info-label {
  color: #64748b;
}

html[data-admin-theme="light"] .order-info-value {
  color: var(--text);
}

html[data-admin-theme="light"] .order-info-sub.faint {
  color: var(--faint);
}

html[data-admin-theme="light"] .order-webhook-pill {
  color: #475569;
  background: rgba(255, 255, 255, 0.7);
  border-color: var(--line);
}

html[data-admin-theme="light"] .order-webhook-pill--ok {
  color: #15803d;
  border-color: rgba(22, 163, 74, 0.4);
  background: rgba(22, 163, 74, 0.12);
}

html[data-admin-theme="light"] .order-webhook-pill--fail {
  color: #b91c1c;
  border-color: rgba(239, 68, 68, 0.4);
  background: rgba(239, 68, 68, 0.1);
}

html[data-admin-theme="light"] .order-webhook-pill--wait {
  color: #b45309;
  border-color: rgba(245, 158, 11, 0.45);
  background: rgba(245, 158, 11, 0.12);
}

html[data-admin-theme="light"] .order-callback-url-box {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .order-callback-url-line {
  color: var(--text);
}

html[data-admin-theme="light"] .order-callback-card {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .order-callbacks-empty {
  border-color: var(--line);
  background: var(--surface-2);
  color: var(--muted);
}

html[data-admin-theme="light"] .order-callbacks-empty-icon {
  background: rgba(255, 255, 255, 0.75);
  border-color: var(--line);
}

html[data-admin-theme="light"] .op-toast.ok {
  border-color: rgba(22, 163, 74, 0.45);
  color: #15803d;
}

html[data-admin-theme="light"] .op-toast.error {
  border-color: rgba(239, 68, 68, 0.45);
  color: #b91c1c;
}

.tr-app.tr-app--admin[data-theme="light"] {
  /* Mirror html[data-admin-theme="light"] tokens so styles.css var(--text) etc. work in-app */
  --bg: #c5cfe0;
  --surface: #e2e9f4;
  --surface-2: #d8e1ee;
  --line: #b8c5d8;
  --line-soft: #c8d4e4;
  --text: #0f172a;
  --muted: #475569;
  --faint: #64748b;
  --green-soft: rgba(22, 163, 74, 0.12);
  --red-soft: rgba(239, 68, 68, 0.1);
  --tr-bg: #c5cfe0;
  --tr-surface: #e2e9f4;
  --tr-surface-2: #d8e1ee;
  --tr-line: #b8c5d8;
  --tr-purple: #7c3aed;
  --tr-purple-soft: rgba(124, 58, 237, 0.12);
  --tr-text: #0f172a;
  --tr-muted: #475569;
  --op-glow: 0 0 0 1px rgba(15, 23, 42, 0.06), 0 10px 32px rgba(15, 23, 42, 0.1);
  --op-border-faint: rgba(51, 65, 85, 0.1);
  --op-border: rgba(51, 65, 85, 0.16);
  --op-border-strong: rgba(51, 65, 85, 0.22);
  --op-elevated: #e8eef7;
  --op-input-bg: #eef2f9;
  --op-kicker: #64748b;
  --op-sidebar-bg: linear-gradient(180deg, #e8eef7 0%, #dce4f0 100%);
  --op-sidebar-shadow:
    inset -1px 0 0 rgba(255, 255, 255, 0.55),
    1px 0 0 rgba(15, 23, 42, 0.06),
    6px 0 24px rgba(15, 23, 42, 0.08);
  --op-topbar-bg: rgba(226, 233, 244, 0.92);
  --op-login-bg: radial-gradient(900px 480px at 0% 100%, rgba(139, 92, 246, 0.1), transparent 52%), radial-gradient(820px 420px at 100% 0%, rgba(34, 211, 238, 0.08), transparent 50%), linear-gradient(180deg, #c8d4e8 0%, #dde4f0 100%);
  --op-login-card-bg: #e2e9f4;
  --op-scrim-opacity: 0.35;
  --op-nav-text: #475569;
  --op-nav-hover-text: #0f172a;
  --op-nav-active-text: #5b21b6;
  --op-hero-title: #0f172a;
  --op-hero-muted: #64748b;
  --op-metric-value: #0f172a;
  --op-panel-title: #0f172a;
  --op-card-face-hi: #f0f4fb;
  --op-card-face: #e2e9f4;
  --op-card-face-lo: #d2dbe8;
  --op-card-border: rgba(71, 85, 105, 0.2);
  --op-card-3d-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    inset 0 -1px 0 rgba(71, 85, 105, 0.08),
    0 1px 2px rgba(15, 23, 42, 0.06),
    0 5px 0 rgba(163, 176, 196, 0.45),
    0 8px 22px rgba(15, 23, 42, 0.1);
  --op-card-3d-hover:
    inset 0 1px 0 rgba(255, 255, 255, 0.98),
    inset 0 -1px 0 rgba(71, 85, 105, 0.06),
    0 2px 0 rgba(163, 176, 196, 0.5),
    0 14px 32px rgba(15, 23, 42, 0.14);
  --op-card-shadow: var(--op-card-3d-shadow);
  color-scheme: light;
}

.tr-app.tr-app--admin[data-theme="dark"] {
  color-scheme: dark;
}

.tr-app.tr-app--admin::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: var(--op-scrim-opacity);
  background:
    radial-gradient(720px 380px at 8% -5%, rgba(124, 58, 237, 0.12), transparent 58%),
    radial-gradient(560px 320px at 92% 0%, rgba(34, 211, 238, 0.05), transparent 52%),
    radial-gradient(480px 300px at 50% 100%, rgba(99, 102, 241, 0.04), transparent 48%);
}

.tr-app.tr-app--admin .tr-shell {
  position: relative;
  z-index: 1;
}

/* Sidebar */
.tr-app.tr-app--admin .tr-sidebar {
  background: var(--op-sidebar-bg);
  border-right: 1px solid var(--op-border-faint);
  box-shadow: var(--op-sidebar-shadow);
}

.tr-app.tr-app--admin .tr-brand {
  padding: 14px 12px;
  border-bottom: 1px solid var(--op-border);
}

.tr-app.tr-app--admin .tr-brand-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  display: block;
}

.tr-app.tr-app--admin .tr-brand-logo {
  width: 34px;
  height: 34px;
  border-radius: var(--op-radius-md);
  background: var(--op-accent);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow:
    0 8px 28px rgba(124, 58, 237, 0.42),
    0 0 18px rgba(34, 211, 238, 0.12);
  font-size: 0;
  position: relative;
}

.tr-app.tr-app--admin .tr-brand-logo svg {
  width: 19px;
  height: 19px;
}

.tr-app.tr-app--admin .tr-brand-name {
  font-size: 1.02rem;
}

.tr-app.tr-app--admin .tr-brand-wordmark {
  display: inline-flex;
  align-items: baseline;
  font-family: var(--font-brand);
  font-weight: 800;
  font-size: inherit;
  letter-spacing: -0.05em;
  line-height: 1.1;
  white-space: nowrap;
}

.tr-app.tr-app--admin .tr-brand-wordmark__sync {
  color: #f8fafc;
  text-shadow: 0 1px 18px rgba(103, 232, 249, 0.18);
}

.tr-app.tr-app--admin .tr-brand-wordmark__pay {
  background: var(--op-brand-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  padding-right: 0.02em;
}

.tr-app.tr-app--admin .tr-brand-sub {
  font-size: 0.625rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 600;
  color: #64748b;
}

.tr-app.tr-app--admin .tr-side-title {
  color: #475569;
  font-size: 0.6875rem;
  letter-spacing: 0.14em;
}

.tr-app.tr-app--admin .tr-side-link {
  border-radius: var(--op-radius-md);
  padding: 7px 10px;
  font-size: 0.8125rem;
  border: 1px solid transparent;
  color: var(--op-nav-text);
  transition: background 0.18s, border-color 0.18s, color 0.18s, transform 0.12s;
}

.tr-app.tr-app--admin .tr-side-link:hover {
  background: rgba(139, 92, 246, 0.08);
  border-color: rgba(139, 92, 246, 0.12);
  color: var(--op-nav-hover-text);
}

.tr-app.tr-app--admin .tr-side-link.active {
  background: linear-gradient(90deg, rgba(139, 92, 246, 0.28), rgba(99, 102, 241, 0.08));
  border-color: rgba(139, 92, 246, 0.35);
  box-shadow: inset 3px 0 0 #8b5cf6, 0 4px 16px rgba(124, 58, 237, 0.12);
  color: var(--op-nav-active-text);
}

.tr-app.tr-app--admin .tr-side-icon {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

.tr-app.tr-app--admin .tr-side-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  stroke: none;
}

.tr-app.tr-app--admin .tr-profile {
  background: var(--op-elevated);
  border-top: 1px solid var(--op-border);
}

.tr-app.tr-app--admin .tr-profile-avatar {
  background: linear-gradient(135deg, #4338ca, #7c3aed);
  color: #ede9fe;
  box-shadow: 0 4px 12px rgba(67, 56, 202, 0.35);
}

.tr-app.tr-app--admin .tr-logout-btn {
  border-radius: 10px;
  min-height: 36px;
}

/* Topbar */
.tr-app.tr-app--admin .tr-topbar {
  background: var(--op-topbar-bg);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--op-border);
  padding: 8px 16px;
  gap: 10px;
}

.tr-app.tr-app--admin .tr-topbar-head {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.tr-app.tr-app--admin .tr-topbar-kicker {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #64748b;
}

.tr-app.tr-app--admin .tr-topbar h1 {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.tr-app.tr-app--admin .tr-live-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(34, 197, 94, 0.35);
  background: rgba(34, 197, 94, 0.08);
  color: #86efac;
  font-size: 0.75rem;
  font-weight: 700;
}

.tr-app.tr-app--admin .tr-live-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.5);
  animation: op-live-pulse 2s ease-out infinite;
}

@keyframes op-live-pulse {
  0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.45); }
  70% { box-shadow: 0 0 0 8px rgba(34, 197, 94, 0); }
  100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

.tr-app.tr-app--admin .tr-rate-chip {
  padding: 8px 14px;
  border-radius: 10px;
  border: 1px solid rgba(99, 102, 241, 0.35);
  background: rgba(99, 102, 241, 0.1);
  color: #c7d2fe;
  font-size: 0.8125rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.tr-app.tr-app--admin .tr-stat-chip {
  border-radius: 12px;
  background: var(--tr-surface);
  border-color: rgba(255, 255, 255, 0.06);
  transition: border-color 0.15s, transform 0.12s;
}

.tr-app.tr-app--admin .tr-stat-chip:hover {
  border-color: rgba(139, 92, 246, 0.25);
}

.tr-app.tr-app--admin .tr-stat-chip.green strong { color: #86efac; }
.tr-app.tr-app--admin .tr-stat-chip.purple strong { color: #c4b5fd; }

.tr-app.tr-app--admin .tr-icon-btn {
  width: 32px;
  height: 32px;
  border-radius: var(--op-radius-md);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: var(--tr-surface);
  color: #cbd5e1;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.tr-app.tr-app--admin .tr-icon-btn:hover {
  background: rgba(139, 92, 246, 0.12);
  border-color: rgba(139, 92, 246, 0.35);
  color: #fff;
}

.tr-app.tr-app--admin .tr-icon-btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  stroke: none;
}

.tr-app.tr-app--admin .tr-workspace {
  background: transparent;
  padding: 12px 16px 18px;
}

/* Trader cabinet — balance & profile text (overrides trader.css hardcoded dark-theme colors) */
.tr-app.tr-app--admin .tr-balance-chip span:first-child {
  color: var(--tr-muted);
  font-weight: 600;
}

.tr-app.tr-app--admin .tr-balance-chip strong {
  color: var(--tr-text);
  font-weight: 700;
}

.tr-app.tr-app--admin .tr-balance-chevron {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin .tr-balance-wrap.open .tr-balance-chip {
  background: var(--op-elevated);
  border-color: rgba(124, 58, 237, 0.45);
}

.tr-app.tr-app--admin .tr-balance-menu {
  /* всплывающий дропдаун — сплошной непрозрачный фон (op-elevated —
     полупрозрачный, из-за него меню просвечивало над контентом) */
  background: var(--tr-surface-2);
  border-color: var(--op-border-strong);
  box-shadow: var(--op-glow);
}

.tr-app.tr-app--admin .tr-balance-row span {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin .tr-balance-row strong {
  color: var(--tr-text);
  font-weight: 700;
}

.tr-app.tr-app--admin .tr-balance-row strong.tr-bal-profit {
  color: #4ade80;
}

.tr-app.tr-app--admin .tr-topbar h1 {
  color: var(--tr-text);
}

.tr-app.tr-app--admin .tr-topbar-kicker {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin .tr-profile-name {
  color: var(--tr-text);
}

.tr-app.tr-app--admin .tr-profile-email {
  color: var(--tr-muted);
}

/* Dark theme — gray shadow wash behind workspace content */
.tr-app.tr-app--admin[data-theme="dark"] .tr-workspace,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-workspace {
  background:
    radial-gradient(880px 440px at 100% 0%, rgba(99, 102, 241, 0.07), transparent 58%),
    radial-gradient(720px 400px at 0% 100%, rgba(71, 85, 105, 0.14), transparent 52%),
    radial-gradient(560px 320px at 50% 40%, rgba(51, 65, 85, 0.1), transparent 55%),
    linear-gradient(180deg, rgba(30, 32, 44, 0.55) 0%, transparent 140px);
}

/* Dashboard hero */
.tr-app.tr-app--admin .op-dash-hero {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 16px;
  border-radius: var(--op-radius-lg);
  border: 1px solid rgba(255, 255, 255, 0.06);
  background:
    linear-gradient(135deg, rgba(139, 92, 246, 0.12) 0%, rgba(99, 102, 241, 0.04) 40%, rgba(12, 12, 18, 0.9) 100%),
    var(--tr-surface);
  box-shadow: var(--op-glow);
}

.tr-app.tr-app--admin .op-dash-hero h2 {
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--op-hero-title);
}

.tr-app.tr-app--admin .op-dash-hero p {
  margin: 0;
  color: var(--op-hero-muted);
  font-size: 0.8125rem;
  max-width: 480px;
  line-height: 1.4;
}

.tr-app.tr-app--admin .op-dash-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tr-app.tr-app--admin .op-quick-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 11px;
  border-radius: 999px;
  font-size: 0.75rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.2);
  color: #e2e8f0;
  text-decoration: none;
  font-size: 0.8125rem;
  font-weight: 600;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.tr-app.tr-app--admin .op-quick-link:hover {
  border-color: rgba(139, 92, 246, 0.4);
  background: rgba(139, 92, 246, 0.12);
  color: #fff;
}

.tr-app.tr-app--admin .op-quick-link strong {
  color: #c4b5fd;
  font-variant-numeric: tabular-nums;
}

/* Metric cards */
.tr-app.tr-app--admin .tr-dash-metric {
  position: relative;
  overflow: hidden;
  border-radius: var(--op-radius-lg);
  min-height: 96px;
  padding: 11px 13px;
  border: 1px solid var(--op-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0) 100%), var(--tr-surface);
  box-shadow: var(--op-card-shadow);
  transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
}

.tr-app.tr-app--admin .tr-dash-metric::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 3px;
  background: var(--op-metric-accent, var(--tr-purple));
  opacity: 0.85;
}

.tr-app.tr-app--admin .tr-dash-metric:hover {
  transform: none;
  border-color: rgba(139, 92, 246, 0.18);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.24);
}

.tr-app.tr-app--admin .tr-dash-metric.purple { --op-metric-accent: #8b5cf6; }
.tr-app.tr-app--admin .tr-dash-metric.green { --op-metric-accent: #22c55e; }
.tr-app.tr-app--admin .tr-dash-metric.blue { --op-metric-accent: #38bdf8; }
.tr-app.tr-app--admin .tr-dash-metric.orange { --op-metric-accent: #fb923c; }

.tr-app.tr-app--admin .tr-dash-metric-value {
  font-size: 1.25rem;
  letter-spacing: -0.03em;
  color: var(--op-metric-value);
}

.tr-app.tr-app--admin .tr-dash-metric-icon {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  background: rgba(139, 92, 246, 0.12);
  color: #c4b5fd;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .tr-dash-metric.green .tr-dash-metric-icon {
  background: rgba(34, 197, 94, 0.12);
  color: #86efac;
}

.tr-app.tr-app--admin .tr-dash-metric.blue .tr-dash-metric-icon {
  background: rgba(56, 189, 248, 0.12);
  color: #7dd3fc;
}

.tr-app.tr-app--admin .tr-dash-metric.orange .tr-dash-metric-icon {
  background: rgba(251, 146, 60, 0.12);
  color: #fdba74;
}

/* Filters & charts */
.tr-app.tr-app--admin .tr-dash-filter {
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.15);
  transition: background 0.15s, transform 0.12s;
}

.tr-app.tr-app--admin .tr-dash-filter:hover {
  background: rgba(139, 92, 246, 0.08);
  transform: none;
}

.tr-app.tr-app--admin .tr-dash-chart-card,
.tr-app.tr-app--admin .tr-dash-table-card,
.tr-app.tr-app--admin .tr-dash-mini {
  border-radius: var(--op-radius-lg);
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: var(--tr-surface);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14);
}

.tr-app.tr-app--admin .tr-dash-chart-head h3,
.tr-app.tr-app--admin .tr-dash-table-head h3 {
  font-weight: 700;
  letter-spacing: -0.02em;
}

.tr-app.tr-app--admin .metric {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.04);
  background: rgba(0, 0, 0, 0.15);
}

.tr-app.tr-app--admin .tr-dash-mini-value {
  letter-spacing: -0.02em;
}

.tr-app.tr-app--admin .tr-dash-table-card th {
  background: rgba(0, 0, 0, 0.25);
  font-size: 0.6875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #64748b;
}

.tr-app.tr-app--admin .tr-dash-table-card tbody tr:hover td {
  background: rgba(139, 92, 246, 0.06);
}

.tr-app.tr-app--admin .tr-dash-table-link {
  font-weight: 600;
}

/* Panels & tables (all sections) */
.tr-app.tr-app--admin .payin-panel,
.tr-app.tr-app--admin .panel {
  border-radius: var(--op-radius-lg);
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: var(--tr-surface);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.tr-app.tr-app--admin .payin-panel-title,
.tr-app.tr-app--admin .panel-header h2 {
  letter-spacing: -0.02em;
}

.tr-app.tr-app--admin .table-wrap {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.04);
}

.tr-app.tr-app--admin .badge {
  border-radius: 999px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

/* Login */
.tr-app.tr-app--admin .tr-login-wrap {
  position: relative;
  z-index: 1;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  padding: 24px 32px 32px;
  background: var(--op-login-bg);
}

.tr-app.tr-app--admin .tr-login-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: auto;
  padding-top: 4px;
}

.tr-app.tr-app--admin .tr-login-header .tr-brand-icon {
  width: 64px;
  height: 64px;
}

.tr-app.tr-app--admin .tr-login-header .tr-brand-name--header,
.tr-app.tr-app--admin .tr-login-header .tr-brand-wordmark {
  font-size: 1.25rem;
  letter-spacing: -0.05em;
}

.tr-app.tr-app--admin .tr-login-main {
  flex: 1;
  display: grid;
  place-items: center;
  width: 100%;
  padding: 24px 0 48px;
}

.tr-app.tr-app--admin .tr-login-card {
  position: relative;
  width: 100%;
  max-width: 440px;
  padding: 36px 32px 32px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: linear-gradient(180deg, rgba(14, 16, 24, 0.98) 0%, rgba(10, 10, 16, 0.98) 100%);
  box-shadow:
    0 0 0 1px rgba(139, 92, 246, 0.06),
    0 0 40px rgba(34, 211, 238, 0.06),
    0 24px 48px rgba(0, 0, 0, 0.45);
  display: grid;
  gap: 16px;
}

.tr-app.tr-app--admin .tr-login-card__brand {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 14px;
  text-align: left;
  margin-bottom: 4px;
}

.tr-app.tr-app--admin .tr-login-card__brand-copy {
  display: grid;
  gap: 4px;
}

.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-icon {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
}

.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-name--login,
.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-wordmark {
  font-size: 2.125rem;
  letter-spacing: -0.055em;
  justify-content: flex-start;
}

.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-sub {
  font-size: 0.6875rem;
  letter-spacing: 0.12em;
}

.tr-app.tr-app--admin .tr-login-card .form-row {
  display: grid;
  gap: 6px;
}

.tr-app.tr-app--admin .tr-login-card label {
  font-size: 0.8125rem;
  color: #94a3b8;
  font-weight: 500;
}

.tr-app.tr-app--admin .tr-login-field {
  position: relative;
  display: flex;
  align-items: center;
}

.tr-app.tr-app--admin .tr-login-field__icon {
  position: absolute;
  left: 12px;
  width: 18px;
  height: 18px;
  color: #64748b;
  pointer-events: none;
  z-index: 1;
}

.tr-app.tr-app--admin .tr-login-field__icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  stroke: none;
}

.tr-app.tr-app--admin .tr-login-field__toggle {
  position: absolute;
  right: 8px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
}

.tr-app.tr-app--admin .tr-login-field__toggle:hover {
  color: #cbd5e1;
  background: rgba(255, 255, 255, 0.04);
}

.tr-app.tr-app--admin .tr-login-field__toggle .op-svg svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
  stroke: none;
}

.tr-app.tr-app--admin .tr-login-submit {
  width: 100%;
  min-height: 48px;
  margin-top: 4px;
  border: none;
  border-radius: 999px;
  background: var(--op-accent);
  color: #fff;
  font-family: var(--font-brand);
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(139, 92, 246, 0.22), 0 8px 24px rgba(34, 211, 238, 0.18);
  transition: filter 0.15s ease, transform 0.15s ease;
}

.tr-app.tr-app--admin .tr-login-submit:hover:not(:disabled) {
  filter: brightness(1.06);
}

.tr-app.tr-app--admin .tr-login-submit:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

.tr-app.tr-app--admin .tr-login-card button[type="submit"].tr-login-submit {
  min-height: 48px;
  border-radius: 999px;
}

.tr-app.tr-app--admin .tr-login-card .tr-login-field input {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 0 40px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.28);
  color: var(--tr-text);
  font-size: 0.875rem;
  box-shadow: none;
}

.tr-app.tr-app--admin .tr-login-card .tr-login-field input::placeholder {
  color: #475569;
}

.tr-app.tr-app--admin .tr-login-card .tr-login-field input:focus-visible {
  outline: 2px solid rgba(139, 92, 246, 0.45);
  outline-offset: 1px;
  border-color: rgba(139, 92, 246, 0.25);
  box-shadow: none;
}

.tr-app.tr-app--admin .tr-login-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 22px;
}

.tr-app.tr-app--admin .tr-login-brand .tr-brand-icon {
  width: 72px;
  height: 72px;
}

.tr-app.tr-app--admin .tr-login-brand .tr-brand-name--login,
.tr-app.tr-app--admin .tr-login-brand .tr-brand-wordmark {
  font-size: 1.5rem;
  letter-spacing: -0.055em;
}

.tr-app.tr-app--admin .tr-login-brand--lockup {
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.tr-app.tr-app--admin .tr-login-brand--lockup .tr-brand-sub {
  margin-top: 2px;
  padding-left: 2px;
}

.tr-app.tr-app--admin .tr-login-brand .tr-brand-logo {
  flex-shrink: 0;
  display: grid;
  place-items: center;
}

.tr-app.tr-app--admin .tr-login-brand .tr-brand-name {
  font-size: 1.28rem;
}

.tr-app.tr-app--admin .tr-login-hint {
  margin-top: 14px;
  font-size: 0.8125rem;
  color: #64748b;
  text-align: center;
}

.tr-app.tr-app--admin .tr-login-hint .mono {
  color: #c4b5fd;
}

.tr-app.tr-app--admin .tr-login-card h1,
.tr-app.tr-app--admin .tr-login-card .tr-login-title {
  margin: 0 0 4px;
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: -0.03em;
}

/* Drawer & toast polish */
.tr-app.tr-app--admin .drawer-panel {
  border-left: 1px solid rgba(255, 255, 255, 0.06);
  background: #0a0a10;
}

.tr-app.tr-app--admin .toast {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
}

@media (max-width: 900px) {
  .tr-app.tr-app--admin .tr-topbar {
    flex-wrap: wrap;
    gap: 12px;
  }

  .tr-app.tr-app--admin .tr-topbar-actions {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .tr-app.tr-app--admin .op-dash-hero {
    padding: 16px;
  }
}

/* Icon system */
.tr-app.tr-app--admin .op-svg,
.tr-app.tr-app--admin .op-svg svg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.tr-app.tr-app--admin .op-svg svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: currentColor;
  stroke: none;
}

.tr-app.tr-app--admin .payin-kpi-icon .op-svg svg,
.tr-app.tr-app--admin .tr-dash-metric-icon .op-svg svg {
  width: 1rem;
  height: 1rem;
}

.tr-app.tr-app--admin .payin-kpi-icon .op-svg,
.tr-app.tr-app--admin .tr-dash-metric-icon .op-svg {
  display: inline-grid;
  place-items: center;
}

.tr-app.tr-app--admin .icon-btn .op-svg svg {
  width: 1.0625rem;
  height: 1.0625rem;
}

.tr-app.tr-app--admin .icon-btn {
  border-radius: 10px;
  transition: background 0.15s, border-color 0.15s, color 0.15s, transform 0.12s, box-shadow 0.15s;
}

.tr-app.tr-app--admin .icon-btn--primary {
  background: linear-gradient(135deg, #7c3aed, #6366f1);
  border-color: rgba(139, 92, 246, 0.45);
  color: #fff;
  box-shadow: 0 6px 18px rgba(124, 58, 237, 0.28);
}

.tr-app.tr-app--admin .icon-btn--primary:hover:not(:disabled) {
  filter: brightness(1.06);
  box-shadow: 0 8px 22px rgba(124, 58, 237, 0.35);
}

.tr-app.tr-app--admin .icon-btn--active {
  background: rgba(34, 197, 94, 0.14);
  border-color: rgba(34, 197, 94, 0.4);
  color: #86efac;
}

.tr-app.tr-app--admin .icon-btn--save { color: #86efac; }
.tr-app.tr-app--admin .icon-btn--view {
  border-color: rgba(56, 189, 248, 0.35);
  color: #7dd3fc;
}
.tr-app.tr-app--admin .icon-btn--view:hover:not(:disabled) {
  border-color: rgba(56, 189, 248, 0.6);
  color: #bae6fd;
  background: rgba(56, 189, 248, 0.08);
}
.tr-app.tr-app--admin .icon-btn--callback {
  border-color: rgba(124, 58, 237, 0.4);
  color: #c4b5fd;
}
.tr-app.tr-app--admin .icon-btn--callback:hover:not(:disabled) {
  border-color: rgba(124, 58, 237, 0.65);
  color: #ddd6fe;
  background: rgba(124, 58, 237, 0.1);
}
.tr-app.tr-app--admin .icon-btn--close { color: #94a3b8; }

.tr-app.tr-app--admin .order-amount-panel {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--op-border);
}

.tr-app.tr-app--admin .icon-btn--login,
.tr-app.tr-app--admin .icon-btn--logout {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
}

.tr-app.tr-app--admin .payin-toolbar-right--icons,
.tr-app.tr-app--admin .drawer-actions--icons,
.tr-app.tr-app--admin .crypto-add-actions--icons,
.tr-app.tr-app--admin .balance-ops {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.tr-app.tr-app--admin .form-row--icon-action {
  display: flex;
  align-items: flex-end;
}

.tr-app.tr-app--admin .form-row--icon-action .icon-btn {
  width: 100%;
  min-height: 40px;
}

.tr-app.tr-app--admin .payin-panel-title--with-icon {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.tr-app.tr-app--admin .payin-panel-title-icon svg {
  width: 1.125rem;
  height: 1.125rem;
  color: #c4b5fd;
}

.tr-app.tr-app--admin .crypto-tab-icon.op-svg svg {
  width: 1rem;
  height: 1rem;
}

.tr-app.tr-app--admin .notif-rec-icon.op-svg svg,
.tr-app.tr-app--admin .notif-preview-icon.op-svg svg,
.tr-app.tr-app--admin .notif-send-icon.op-svg svg {
  width: 1.125rem;
  height: 1.125rem;
}

.tr-app.tr-app--admin .notif-send-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.tr-app.tr-app--admin .notif-history-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.tr-app.tr-app--admin .notif-badge-icon svg {
  width: 0.875rem;
  height: 0.875rem;
}

.tr-app.tr-app--admin .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Typography & density */
.tr-app.tr-app--admin .table-wrap td,
.tr-app.tr-app--admin .payin-table-wrap td {
  line-height: 1.35;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .table-wrap th,
.tr-app.tr-app--admin .payin-table-wrap th {
  font-size: 0.625rem;
  letter-spacing: 0.06em;
}

.tr-app.tr-app--admin input,
.tr-app.tr-app--admin select,
.tr-app.tr-app--admin textarea {
  font-family: inherit;
  font-size: 0.875rem;
}

.tr-app.tr-app--admin .faint,
.tr-app.tr-app--admin .mono {
  font-variant-numeric: tabular-nums;
}

/* Copy-on-click IDs */
.tr-app.tr-app--admin .op-copy-id {
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 2px 6px;
  border: none;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.04);
  color: inherit;
  font: inherit;
  font-family: ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace;
  font-size: 0.8125rem;
  line-height: 1.35;
  text-align: left;
  cursor: copy;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
  vertical-align: baseline;
}

.tr-app.tr-app--admin .op-copy-id:hover {
  background: rgba(139, 92, 246, 0.18);
  color: #e9d5ff;
  box-shadow: 0 0 0 1px rgba(139, 92, 246, 0.25);
}

.tr-app.tr-app--admin .op-copy-id:focus-visible {
  outline: 2px solid rgba(139, 92, 246, 0.55);
  outline-offset: 1px;
}

.tr-app.tr-app--admin .op-copy-id--sm {
  font-size: 0.75rem;
  padding: 1px 5px;
}

.tr-app.tr-app--admin .op-copy-id--cell {
  display: block;
  width: fit-content;
  max-width: 100%;
}

.tr-app.tr-app--admin .op-copy-id--inline {
  display: inline;
  vertical-align: middle;
}

.tr-app.tr-app--admin .op-copy-id--tile {
  font-size: 0.875rem;
  word-break: break-all;
}

.tr-app.tr-app--admin .op-copy-id--hero {
  font-size: 0.8125rem;
  word-break: break-all;
}

.tr-app.tr-app--admin .op-copy-id--seq {
  min-width: 1.75rem;
  padding: 2px 6px;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  text-align: center;
}

.tr-app.tr-app--admin .id-cell .op-copy-id--seq {
  max-width: none;
}

.tr-app.tr-app--admin .id-cell {
  vertical-align: middle;
}

.tr-app.tr-app--admin .id-cell .op-copy-id {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Aligned data tables */
.tr-app.tr-app--admin table.admin-data-table {
  table-layout: fixed;
  width: 100%;
}

.tr-app.tr-app--admin table.admin-data-table th,
.tr-app.tr-app--admin table.admin-data-table td {
  vertical-align: middle;
  overflow: hidden;
}

.tr-app.tr-app--admin table.admin-data-table td.amount-cell {
  white-space: nowrap;
}

.tr-app.tr-app--admin table.admin-data-table .crypto-address-code {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: copy;
  padding: 2px 0;
}

.tr-app.tr-app--admin table.admin-data-table .crypto-address-code:hover {
  color: #c4b5fd;
}

.tr-app.tr-app--admin table.crypto-table td:nth-child(4) {
  min-width: 0;
}

/* ── Compact density (admin-only) ── */
.tr-app.tr-app--admin .tr-page {
  gap: var(--op-gap-page);
}

.tr-app.tr-app--admin .tr-page > .payin-kpi-grid,
.tr-app.tr-app--admin .tr-page > .tr-dash-metrics {
  gap: var(--op-gap-grid);
}

.tr-app.tr-app--admin .payin-kpi-grid {
  gap: var(--op-gap-grid);
}

.tr-app.tr-app--admin .payin-kpi {
  gap: 10px;
  padding: 10px 12px;
  border-radius: var(--op-radius-lg);
}

.tr-app.tr-app--admin .payin-kpi-icon {
  width: 34px;
  height: 34px;
  border-radius: var(--op-radius-md);
  flex-shrink: 0;
}

.tr-app.tr-app--admin .payin-kpi-label {
  font-size: 0.6875rem;
  margin-bottom: 3px;
}

.tr-app.tr-app--admin .payin-kpi-value {
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.15;
}

.tr-app.tr-app--admin .payin-kpi-hint {
  font-size: 0.6875rem;
  margin-top: 3px;
}

.tr-app.tr-app--admin .tr-dash-metrics {
  gap: var(--op-gap-grid);
}

.tr-app.tr-app--admin .tr-dash-metric-label {
  font-size: 0.6875rem;
}

.tr-app.tr-app--admin .tr-dash-chart-head,
.tr-app.tr-app--admin .tr-dash-table-head {
  padding: 10px 12px;
}

.tr-app.tr-app--admin .tr-dash-chart-head h3,
.tr-app.tr-app--admin .tr-dash-table-head h3 {
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .tr-dash-chart-body,
.tr-app.tr-app--admin .tr-dash-table-wrap {
  padding: 0 12px 12px;
}

.tr-app.tr-app--admin .tr-dash-mini {
  padding: 10px 12px;
}

.tr-app.tr-app--admin .tr-dash-mini-value {
  font-size: 1rem;
}

.tr-app.tr-app--admin .tr-dash-mini-label {
  font-size: 0.6875rem;
}

.tr-app.tr-app--admin .payin-panel-title,
.tr-app.tr-app--admin .panel-header {
  padding: 10px 12px;
}

.tr-app.tr-app--admin .payin-panel-title,
.tr-app.tr-app--admin .panel-header h2 {
  font-size: 0.875rem;
}

.tr-app.tr-app--admin .payin-toolbar,
.tr-app.tr-app--admin .panel-toolbar {
  padding: 8px 12px;
  gap: 8px;
}

.tr-app.tr-app--admin .payin-filter-tab,
.tr-app.tr-app--admin .filter-chip {
  font-size: 0.75rem;
  min-height: 1.625rem;
  padding: 4px 10px;
}

.tr-app.tr-app--admin .payin-search input,
.tr-app.tr-app--admin .tr-search input,
.tr-app.tr-app--admin .tr-shell input[type="text"],
.tr-app.tr-app--admin .tr-shell input[type="password"],
.tr-app.tr-app--admin .tr-shell input[type="email"],
.tr-app.tr-app--admin .tr-shell input[type="number"],
.tr-app.tr-app--admin .tr-shell select,
.tr-app.tr-app--admin .tr-shell textarea {
  font-size: 0.8125rem;
  min-height: 30px;
  padding: 5px 9px;
  border-radius: var(--op-radius-sm);
}

.tr-app.tr-app--admin .btn,
.tr-app.tr-app--admin button.btn {
  font-size: 0.8125rem;
  min-height: 30px;
  padding: 5px 11px;
  border-radius: var(--op-radius-sm);
}

.tr-app.tr-app--admin .badge,
.tr-app.tr-app--admin .status-badge {
  font-size: 0.6875rem;
  padding: 2px 7px;
}

.tr-app.tr-app--admin table th,
.tr-app.tr-app--admin .table-wrap th {
  font-size: 0.625rem;
  padding: 6px 9px;
}

.tr-app.tr-app--admin table td,
.tr-app.tr-app--admin .table-wrap td {
  font-size: 0.8125rem;
  padding: 6px 9px;
}

.tr-app.tr-app--admin .table-wrap {
  border-radius: var(--op-radius-md);
}

.tr-app.tr-app--admin .table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(12, 12, 18, 0.96);
  backdrop-filter: blur(6px);
}

.tr-app.tr-app--admin .drawer-panel {
  width: min(420px, 92vw);
}

.tr-app.tr-app--admin .drawer-head {
  padding: 12px 14px;
}

.tr-app.tr-app--admin .drawer-head h2 {
  font-size: 0.9375rem;
}

.tr-app.tr-app--admin .drawer-body {
  padding: 12px 14px;
  gap: 10px;
}

.tr-app.tr-app--admin .drawer-tile {
  padding: 8px 10px;
  border-radius: var(--op-radius-sm);
}

.tr-app.tr-app--admin .drawer-tile-label {
  font-size: 0.625rem;
}

.tr-app.tr-app--admin .drawer-tile-value {
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .drawer-actions {
  padding: 10px 14px;
  gap: 8px;
}

.tr-app.tr-app--admin .tr-login-card {
  max-width: 400px;
  padding: 28px 24px;
}

.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-name--login,
.tr-app.tr-app--admin .tr-login-card__brand .tr-brand-wordmark {
  font-size: 1.75rem;
}

.tr-app.tr-app--admin .tr-login-submit {
  min-height: 44px;
  font-size: 0.875rem;
}

.tr-app.tr-app--admin .tr-login-brand {
  gap: 10px;
  margin-bottom: 16px;
}

.tr-app.tr-app--admin .icon-btn:hover:not(:disabled) {
  transform: none;
}

.tr-app.tr-app--admin .tr-profile-name {
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .tr-profile-email {
  font-size: 0.6875rem;
}

.tr-app.tr-app--admin .tr-notif-item {
  padding: 8px 10px;
}

.tr-app.tr-app--admin .tr-notif-title {
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .metric {
  padding: 8px 10px;
  border-radius: var(--op-radius-sm);
}

.tr-app.tr-app--admin .metric-value {
  font-size: 0.9375rem;
}

.tr-app.tr-app--admin .metric-label {
  font-size: 0.6875rem;
}

.tr-app.tr-app--admin .orders-panel > .orders-panel-head.payin-kpi-grid {
  padding: 10px 12px 8px;
  gap: var(--op-gap-grid);
}

/* ── Unified admin tables & icon buttons ── */
.tr-app.tr-app--admin {
  --op-icon-btn-size: 28px;
  --op-icon-svg-size: 14px;
  /* Плотность/читаемость таблиц — как в трейдер-PayIn (просторнее строки). */
  --op-table-cell-y: 8px;
  --op-table-cell-x: 11px;
}

/* Таблицы админки в стиле трейдер-PayIn: крупнее текст, ровный hairline-hover. */
.tr-app.tr-app--admin table.admin-data-table td,
.tr-app.tr-app--admin .payin-table-wrap td,
.tr-app.tr-app--admin .table-wrap td {
  font-size: 12px;
}
.tr-app.tr-app--admin table.admin-data-table th,
.tr-app.tr-app--admin .payin-table-wrap th,
.tr-app.tr-app--admin .table-wrap th {
  font-size: 10px;
}
.tr-app.tr-app--admin table.admin-data-table tbody tr:hover td,
.tr-app.tr-app--admin .payin-table-wrap tbody tr:hover td,
.tr-app.tr-app--admin .table-wrap tbody tr:hover td {
  background: rgba(124, 58, 237, 0.06);
}

.tr-app.tr-app--admin .payin-table-wrap th,
.tr-app.tr-app--admin .payin-table-wrap td,
.tr-app.tr-app--admin .table-wrap th,
.tr-app.tr-app--admin .table-wrap td,
.tr-app.tr-app--admin table.admin-data-table th,
.tr-app.tr-app--admin table.admin-data-table td {
  padding: var(--op-table-cell-y) var(--op-table-cell-x);
  vertical-align: middle;
}

.tr-app.tr-app--admin .payin-table-wrap .table-wrap thead th,
.tr-app.tr-app--admin .tr-dash-table-card .table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(12, 12, 18, 0.96);
  backdrop-filter: blur(6px);
}

.tr-app.tr-app--admin table.admin-data-table td .faint {
  font-size: 0.6875rem;
  line-height: 1.25;
  margin-top: 1px;
}

.tr-app.tr-app--admin table.admin-data-table td.amount-cell,
.tr-app.tr-app--admin table.admin-data-table th.op-th-num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.tr-app.tr-app--admin table.admin-data-table td.actions,
.tr-app.tr-app--admin table.admin-data-table th.op-th-actions {
  text-align: right;
  padding-inline: 4px;
  white-space: nowrap;
}

/* Компактнее (меньше масштабом) — таблицы Ордеров и Выплат. */
.tr-app.tr-app--admin table.admin-data-table.deals-compact td {
  font-size: 9px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact th {
  font-size: 7px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact th,
.tr-app.tr-app--admin table.admin-data-table.deals-compact td {
  padding: 2px 5px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact td .faint {
  font-size: 0.5rem;
  line-height: 1.15;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact .icon-btn {
  width: 21px;
  height: 21px;
  min-width: 21px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact .icon-btn .op-svg svg {
  width: 11px;
  height: 11px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact .status {
  font-size: 8px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact td.order-row-actions {
  padding-left: 2px;
  padding-right: 2px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact .order-row-actions .actions-compact {
  gap: 2px;
}
.tr-app.tr-app--admin table.admin-data-table.deals-compact .status-pill {
  font-size: 8px;
  padding: 2px 7px;
  white-space: nowrap;
}

.tr-app.tr-app--admin .tr-dash-bar {
  min-height: 0;
}

.tr-app.tr-app--admin .op-traffic-bars {
  min-height: 140px;
  align-items: flex-end;
}

.tr-app.tr-app--admin .op-traffic-bars--scroll {
  overflow-x: auto;
  flex-wrap: nowrap;
  gap: 4px;
  padding-bottom: 6px;
  max-width: 100%;
  scrollbar-width: thin;
}

.tr-app.tr-app--admin .op-traffic-bars--scroll .op-traffic-bar-col,
.tr-app.tr-app--admin .op-traffic-bars--scroll .op-traffic-hour-col {
  flex: 0 0 44px;
  min-width: 44px;
}

.tr-app.tr-app--admin .op-traffic-axis-label {
  display: block;
  min-height: 16px;
  line-height: 16px;
  font-size: 0.6875rem;
  color: var(--muted);
  text-align: center;
  white-space: nowrap;
}

.tr-app.tr-app--admin .op-traffic-bars--scroll .op-traffic-axis-label:empty {
  visibility: hidden;
}

.tr-app.tr-app--admin .op-traffic-line-chart-wrap {
  width: 100%;
}

.tr-app.tr-app--admin .op-traffic-line-chart-wrap .tr-dash-line-chart {
  display: block;
  width: 100%;
  height: 150px;
}

.tr-app.tr-app--admin .op-traffic-line-chart-wrap--scroll {
  overflow-x: auto;
  max-width: 100%;
  scrollbar-width: thin;
}

.tr-app.tr-app--admin .op-traffic-line-chart-wrap--scroll .tr-dash-line-chart {
  display: block;
  width: auto;
  height: 150px;
  max-width: none;
  flex-shrink: 0;
}

.tr-app.tr-app--admin .op-conv-empty-hint {
  margin: 8px 0 0;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .op-traffic-line-chart-wrap .tr-chart-label {
  font-size: 10px;
  fill: #64748b;
}

.tr-app.tr-app--admin .op-traffic-bar-col {
  flex: 1;
  min-width: 0;
}

.tr-app.tr-app--admin .op-traffic-bar-stack {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 2px;
  height: 100px;
  width: 100%;
}

.tr-app.tr-app--admin .op-traffic-bar--issued {
  background: linear-gradient(180deg, #4ade80, #16a34a);
}

.tr-app.tr-app--admin .op-traffic-bar--rejected {
  background: linear-gradient(180deg, #f87171, #dc2626);
}

.tr-app.tr-app--admin .op-traffic-bar--hour {
  background: linear-gradient(180deg, #a78bfa, #7c3aed);
}

.tr-app.tr-app--admin .op-traffic-hour-bars {
  min-height: 100px;
}

.tr-app.tr-app--admin .op-traffic-hour-col span {
  font-size: 0.625rem;
}

.tr-app.tr-app--admin .op-traffic-dual-legend {
  display: flex;
  gap: 16px;
  padding: 0 16px 8px;
  font-size: 0.75rem;
  color: var(--muted);
}

.tr-app.tr-app--admin .op-traffic-legend-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: middle;
}

.tr-app.tr-app--admin .traffic-sub-tabs {
  border-bottom: 1px solid var(--line);
  padding-bottom: 2px;
}

.tr-app.tr-app--admin .op-conv-toolbar-main {
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.tr-app.tr-app--admin .op-conv-period-label {
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .op-conv-charts {
  margin-top: 8px;
  min-width: 0;
  max-width: 100%;
}

.tr-app.tr-app--admin .op-conv-charts .tr-dash-chart-card {
  min-width: 0;
  overflow: hidden;
}

.tr-app.tr-app--admin .op-conv-charts .tr-dash-chart-card.wide {
  grid-column: 1 / -1;
}

.tr-app.tr-app--admin .op-conv-tables {
  margin-top: 16px;
  /* Мерчанты и Топ трейдеров — друг над другом, на всю ширину */
  grid-template-columns: 1fr;
}

.tr-app.tr-app--admin .op-conv-tables .tr-dash-table-head {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.tr-app.tr-app--admin .op-conv-tables .tr-dash-table-head .op-conv-toolbar {
  margin-bottom: 0;
  flex: 1 1 320px;
  justify-content: flex-end;
}

.tr-app.tr-app--admin .op-conv-panel {
  margin-top: 4px;
}

.tr-app.tr-app--admin .op-conv-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 12px;
}

.tr-app.tr-app--admin .op-conv-toolbar .payin-search {
  flex: 1 1 220px;
  min-width: 180px;
}

.tr-app.tr-app--admin .op-conv-sort-tabs {
  flex-wrap: wrap;
}

.tr-app.tr-app--admin .op-conv-hint {
  margin: 0 0 10px;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .op-conv-table-wrap .table-wrap {
  max-height: min(70vh, 720px);
  overflow: auto;
}

.tr-app.tr-app--admin .op-conv-table th,
.tr-app.tr-app--admin .op-conv-table td {
  vertical-align: middle;
}

.tr-app.tr-app--admin .op-conv-merchant-name {
  font-weight: 600;
  color: var(--op-panel-title);
}

.tr-app.tr-app--admin .op-conv-rate {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 108px;
}

.tr-app.tr-app--admin .op-conv-rate-bar {
  flex: 1;
  height: 6px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.18);
  overflow: hidden;
}

.tr-app.tr-app--admin .op-conv-rate-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #8b5cf6;
}

.tr-app.tr-app--admin .op-conv-rate--green .op-conv-rate-bar span { background: #22c55e; }
.tr-app.tr-app--admin .op-conv-rate--orange .op-conv-rate-bar span { background: #f59e0b; }
.tr-app.tr-app--admin .op-conv-rate--red .op-conv-rate-bar span { background: #ef4444; }
.tr-app.tr-app--admin .op-conv-rate--blue .op-conv-rate-bar span { background: #38bdf8; }
.tr-app.tr-app--admin .op-conv-rate--purple .op-conv-rate-bar span { background: #a78bfa; }

.tr-app.tr-app--admin .op-conv-rate strong {
  min-width: 38px;
  text-align: right;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .op-conv-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.tr-app.tr-app--admin .op-conv-summary-card {
  background: var(--op-elevated);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 14px 16px;
  box-shadow: var(--op-card-shadow);
}

.tr-app.tr-app--admin .op-conv-summary-card.wide {
  grid-column: 1 / -1;
}

.tr-app.tr-app--admin .op-conv-summary-card h3 {
  margin: 0 0 12px;
  font-size: 0.9375rem;
  color: var(--op-panel-title);
}

.tr-app.tr-app--admin .op-conv-summary-row {
  display: grid;
  grid-template-columns: minmax(120px, 38%) 1fr;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}

.tr-app.tr-app--admin .op-conv-summary-label {
  font-size: 0.8125rem;
  color: var(--muted);
}

.tr-app.tr-app--admin .op-conv-summary-foot {
  margin-top: 12px;
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .op-conv-direction-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.tr-app.tr-app--admin .op-conv-stat-card {
  background: var(--op-elevated);
  border: 1px solid var(--op-border-faint);
  border-radius: 10px;
  padding: 10px 12px;
  box-shadow: var(--op-card-shadow);
}

.tr-app.tr-app--admin .op-conv-stat-title {
  font-size: 0.75rem;
  color: var(--muted);
  margin-bottom: 4px;
}

.tr-app.tr-app--admin .op-conv-stat-value {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 8px;
}

.tr-app.tr-app--admin .op-conv-stat-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
  font-size: 0.75rem;
}

.tr-app.tr-app--admin .op-conv-trader-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tr-app.tr-app--admin .op-conv-trader-item {
  display: grid;
  grid-template-columns: 24px 1fr auto auto;
  gap: 8px;
  align-items: center;
  padding: 8px 10px;
  border-radius: 8px;
  background: var(--op-input-bg);
  border: 1px solid var(--op-border-faint);
}

.tr-app.tr-app--admin .op-conv-trader-name {
  font-weight: 600;
}

.tr-app.tr-app--admin .op-conv-trader-meta {
  font-size: 0.75rem;
  color: var(--muted);
  white-space: nowrap;
}

.tr-app.tr-app--admin .op-conv-empty {
  margin: 0;
}

.tr-app.tr-app--admin .op-conv-empty-state {
  margin: 8px 0 20px;
  padding: 28px 24px;
  border: 1px dashed rgba(148, 163, 184, 0.35);
  border-radius: 12px;
  text-align: center;
}

.tr-app.tr-app--admin .op-conv-empty-state p {
  margin: 0 0 8px;
}

.tr-app.tr-app--admin .op-conv-empty-state p:last-child {
  margin-bottom: 0;
}

@media (max-width: 960px) {
  .tr-app.tr-app--admin .op-conv-summary-grid,
  .tr-app.tr-app--admin .op-conv-direction-grid {
    grid-template-columns: 1fr;
  }

  .tr-app.tr-app--admin .op-conv-trader-item {
    grid-template-columns: 20px 1fr;
  }

  .tr-app.tr-app--admin .op-conv-trader-meta,
  .tr-app.tr-app--admin .op-conv-trader-item .amount-cell {
    grid-column: 2;
  }
}

.tr-app.tr-app--admin .actions-compact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-wrap: nowrap;
  white-space: nowrap;
}

/* Когда класс стоит прямо на <td> — ячейка должна оставаться table-cell,
   иначе inline-flex схлопывает её по контенту и справа появляется пробел
   (колонка «Действия» уже, чем задано). Кнопки раскладываем инлайном. */
.tr-app.tr-app--admin td.actions-compact {
  display: table-cell;
  text-align: right;
  white-space: nowrap;
}
.tr-app.tr-app--admin td.actions-compact .icon-btn,
.tr-app.tr-app--admin td.actions-compact button {
  display: inline-flex;
  vertical-align: middle;
  margin-left: 4px;
}

.tr-app.tr-app--admin .actions-compact button,
.tr-app.tr-app--admin .actions-compact .icon-btn {
  padding: 0;
  font-size: inherit;
  margin: 0;
}

.tr-app.tr-app--admin .icon-btn,
.tr-app.tr-app--admin .tr-icon-btn {
  width: var(--op-icon-btn-size);
  height: var(--op-icon-btn-size);
  min-width: var(--op-icon-btn-size);
  min-height: var(--op-icon-btn-size);
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: var(--op-radius-sm);
}

.tr-app.tr-app--admin .icon-btn--apply {
  width: var(--op-icon-btn-size);
  height: var(--op-icon-btn-size);
  min-width: var(--op-icon-btn-size);
  font-size: inherit;
  align-self: center;
}

.tr-app.tr-app--admin .icon-btn .op-svg,
.tr-app.tr-app--admin .icon-btn .op-svg svg,
.tr-app.tr-app--admin .tr-icon-btn svg {
  width: var(--op-icon-svg-size);
  height: var(--op-icon-svg-size);
}

.tr-app.tr-app--admin .icon-btn .op-svg {
  display: inline-grid;
  place-items: center;
}

.tr-app.tr-app--admin .stat-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.25rem;
  padding: 1px 7px;
  font-size: 0.6875rem;
  gap: 4px;
  font-variant-numeric: tabular-nums;
  vertical-align: middle;
}

.tr-app.tr-app--admin .merchant-type-badge {
  padding: 2px 7px;
  font-size: 0.625rem;
  line-height: 1.2;
  white-space: nowrap;
}

.tr-app.tr-app--admin .trader-cell {
  gap: 8px;
}

.tr-app.tr-app--admin .trader-cell .t-avatar {
  width: 28px;
  height: 28px;
  font-size: 0.6875rem;
}

.tr-app.tr-app--admin .trader-cell:hover .t-avatar {
  transform: none;
}

.tr-app.tr-app--admin table.admin-data-table tbody tr {
  min-height: 34px;
}

/* Orders grid */
.tr-app.tr-app--admin table.orders-grid th:nth-child(4),
.tr-app.tr-app--admin table.orders-grid td:nth-child(4) {
  text-align: right;
}

.tr-app.tr-app--admin table.orders-grid th:nth-child(10),
.tr-app.tr-app--admin table.orders-grid td:nth-child(10),
.tr-app.tr-app--admin table.orders-grid th:nth-child(11),
.tr-app.tr-app--admin table.orders-grid td:nth-child(11) {
  text-align: center;
}

/* Traders grid */
.tr-app.tr-app--admin table.traders-grid th:nth-child(3),
.tr-app.tr-app--admin table.traders-grid td:nth-child(3),
.tr-app.tr-app--admin table.traders-grid th:nth-child(5),
.tr-app.tr-app--admin table.traders-grid td:nth-child(5),
.tr-app.tr-app--admin table.traders-grid th:nth-child(6),
.tr-app.tr-app--admin table.traders-grid td:nth-child(6) {
  text-align: right;
}

.tr-app.tr-app--admin table.traders-grid th:nth-child(7),
.tr-app.tr-app--admin table.traders-grid td:nth-child(7) {
  text-align: center;
}

/* Merchants grid */
.tr-app.tr-app--admin table.merchants-grid th:nth-child(1),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(1),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(2),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(2),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(10),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(10),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(14),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(14) {
  text-align: center;
}

.tr-app.tr-app--admin table.merchants-grid th:nth-child(4),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(4),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(5),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(5),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(6),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(6),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(7),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(7),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(8),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(8),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(9),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(9),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(11),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(11),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(12),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(12),
.tr-app.tr-app--admin table.merchants-grid th:nth-child(13),
.tr-app.tr-app--admin table.merchants-grid td:nth-child(13) {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.tr-app.tr-app--admin table.merchants-grid td:nth-child(3) strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tr-app.tr-app--admin table.crypto-merchant-stats-grid td:nth-child(n+3),
.tr-app.tr-app--admin table.crypto-merchant-stats-grid th:nth-child(n+3) {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.tr-app.tr-app--admin table.crypto-merchant-stats-grid td:nth-child(9),
.tr-app.tr-app--admin table.crypto-merchant-stats-grid th:nth-child(9) {
  text-align: center;
}

.tr-app.tr-app--admin table.crypto-table td:last-child,
.tr-app.tr-app--admin table.crypto-table th:last-child {
  text-align: center;
  padding-inline: 4px;
}

.tr-app.tr-app--admin .crypto-clients-table table.crypto-table td:nth-child(5),
.tr-app.tr-app--admin .crypto-clients-table table.crypto-table th:nth-child(5),
.tr-app.tr-app--admin .crypto-deposits-table table.crypto-table td:nth-child(5),
.tr-app.tr-app--admin .crypto-deposits-table table.crypto-table th:nth-child(5) {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.tr-app.tr-app--admin table.crypto-table .crypto-address-code {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  font-size: 0.75rem;
}

/* Theme toggle */
.tr-app.tr-app--admin .tr-login-toolbar {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
}

.tr-app.tr-app--admin .tr-theme-toggle[aria-pressed="true"] {
  border-color: rgba(139, 92, 246, 0.45);
  background: rgba(139, 92, 246, 0.14);
  color: #c4b5fd;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-theme-toggle[aria-pressed="true"] {
  border-color: rgba(124, 58, 237, 0.35);
  background: rgba(124, 58, 237, 0.1);
  color: #6d28d9;
}

/* Light theme — component overrides */
.tr-app.tr-app--admin[data-theme="light"]::before {
  background:
    radial-gradient(680px 400px at 15% 85%, rgba(71, 85, 105, 0.14), transparent 58%),
    radial-gradient(620px 360px at 85% 15%, rgba(100, 116, 139, 0.12), transparent 55%),
    radial-gradient(720px 380px at 8% -5%, rgba(124, 58, 237, 0.06), transparent 58%),
    radial-gradient(560px 320px at 92% 0%, rgba(34, 211, 238, 0.05), transparent 52%),
    radial-gradient(480px 300px at 50% 100%, rgba(99, 102, 241, 0.04), transparent 48%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-sidebar {
  background: var(--op-sidebar-bg);
  border-right-color: var(--op-border);
  box-shadow: var(--op-sidebar-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand,
.tr-app.tr-app--admin[data-theme="light"] .tr-profile {
  border-color: var(--op-border);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-profile {
  background: var(--op-elevated);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand-sub,
.tr-app.tr-app--admin[data-theme="light"] .tr-topbar-kicker,
.tr-app.tr-app--admin[data-theme="light"] .tr-side-title {
  color: var(--op-kicker);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-side-link:hover {
  background: rgba(124, 58, 237, 0.06);
  border-color: rgba(124, 58, 237, 0.12);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-side-link.active {
  background: linear-gradient(90deg, rgba(124, 58, 237, 0.14), rgba(99, 102, 241, 0.06));
  border-color: rgba(124, 58, 237, 0.22);
  box-shadow: inset 3px 0 0 var(--tr-purple), 0 2px 8px rgba(124, 58, 237, 0.08);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-topbar {
  background: var(--op-topbar-bg);
  border-bottom-color: var(--op-border);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-live-pill {
  border-color: rgba(22, 163, 74, 0.35);
  background: rgba(22, 163, 74, 0.08);
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-rate-chip {
  border-color: rgba(99, 102, 241, 0.25);
  background: rgba(99, 102, 241, 0.08);
  color: #4338ca;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-traffic-chip {
  border-color: var(--op-border);
  background: var(--tr-surface);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-traffic-label {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-turbo-btn {
  border-color: rgba(217, 119, 6, 0.35);
  background: rgba(251, 191, 36, 0.12);
  color: #b45309;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-turbo-btn:hover:not(:disabled) {
  background: rgba(251, 191, 36, 0.2);
  border-color: rgba(217, 119, 6, 0.5);
  color: #92400e;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-turbo-btn.is-active {
  background: rgba(251, 191, 36, 0.22);
  border-color: rgba(217, 119, 6, 0.55);
  color: #78350f;
  box-shadow: 0 0 10px rgba(251, 191, 36, 0.2);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-turbo-timer {
  color: #b45309;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chip {
  border-color: var(--op-border);
  background: var(--tr-surface);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chip:hover,
.tr-app.tr-app--admin[data-theme="light"] .tr-balance-wrap.open .tr-balance-chip {
  border-color: rgba(124, 58, 237, 0.3);
  background: rgba(124, 58, 237, 0.06);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-menu {
  border-color: var(--op-border-strong);
  background: var(--op-elevated);
  box-shadow: var(--op-glow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-row:hover {
  background: rgba(124, 58, 237, 0.06);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-row strong.tr-bal-profit {
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chip span:first-child,
.tr-app.tr-app--admin[data-theme="light"] .tr-balance-row span,
.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chevron {
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chip strong,
.tr-app.tr-app--admin[data-theme="light"] .tr-balance-row strong {
  color: var(--op-metric-value);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-transfer {
  color: #15803d;
  background: rgba(22, 163, 74, 0.12);
  border-color: rgba(22, 163, 74, 0.35);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-balance-transfer:hover:not(:disabled) {
  background: rgba(22, 163, 74, 0.18);
  border-color: rgba(22, 163, 74, 0.5);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-notif-panel {
  border-color: var(--op-border-strong);
  background: var(--op-elevated);
  box-shadow: var(--op-glow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-notif-header {
  border-bottom-color: var(--op-border);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-notif-item {
  border-bottom-color: var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-notif-item:hover {
  background: rgba(124, 58, 237, 0.06);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-stat-chip {
  border-color: var(--op-border);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-stat-chip.green strong { color: #15803d; }
.tr-app.tr-app--admin[data-theme="light"] .tr-stat-chip.purple strong { color: #6d28d9; }

.tr-app.tr-app--admin[data-theme="light"] .tr-icon-btn {
  border-color: var(--op-border-strong);
  background: var(--tr-surface);
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-icon-btn:hover {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.25);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .op-dash-hero {
  border-color: var(--op-card-border);
  background:
    linear-gradient(145deg, rgba(124, 58, 237, 0.1) 0%, rgba(99, 102, 241, 0.04) 35%, transparent 70%),
    linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 45%, var(--op-card-face-lo) 100%);
  box-shadow: var(--op-card-3d-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .op-dash-hero h2 {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .op-quick-link {
  border-color: var(--op-card-border);
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face-lo) 100%);
  box-shadow: var(--op-card-3d-shadow);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .op-quick-link:hover {
  border-color: rgba(124, 58, 237, 0.35);
  background: linear-gradient(165deg, #f3effc 0%, #e4daf8 100%);
  box-shadow: var(--op-card-3d-hover);
  color: #5b21b6;
  transform: translateY(-1px);
}

.tr-app.tr-app--admin[data-theme="light"] .op-quick-link strong {
  color: #6d28d9;
}

/* Light theme — 3D elevated cards (shared base) */
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric,
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi,
.tr-app.tr-app--admin[data-theme="light"] .metric,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-chart-card,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-card,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-mini,
.tr-app.tr-app--admin[data-theme="light"] .payin-panel,
.tr-app.tr-app--admin[data-theme="light"] .panel,
.tr-app.tr-app--admin[data-theme="light"] .orders-panel,
.tr-app.tr-app--admin[data-theme="light"] .stat-pill,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter,
.tr-app.tr-app--admin[data-theme="light"] .tr-profile,
.tr-app.tr-app--admin[data-theme="light"] .tr-stat-chip,
.tr-app.tr-app--admin[data-theme="light"] .tr-rate-chip,
.tr-app.tr-app--admin[data-theme="light"] .tr-balance-chip,
.tr-app.tr-app--admin[data-theme="light"] .tr-live-pill,
.tr-app.tr-app--admin[data-theme="light"] .tr-icon-btn,
.tr-app.tr-app--admin[data-theme="light"] .table-wrap {
  border-color: var(--op-card-border);
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 42%, var(--op-card-face-lo) 100%);
  box-shadow: var(--op-card-3d-shadow);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric:hover,
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi:hover,
.tr-app.tr-app--admin[data-theme="light"] .metric:hover,
.tr-app.tr-app--admin[data-theme="light"] .stat-pill:hover,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter:hover {
  transform: translateY(-2px);
  box-shadow: var(--op-card-3d-hover);
}

/* Light theme — KPI grid / panel header carries a hardcoded dark gradient
   from trader.css; clear it so empty grid columns blend with the page. */
.tr-app.tr-app--admin[data-theme="light"] .orders-panel-head,
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi-grid {
  background: transparent;
  border-bottom-color: transparent;
  box-shadow: none;
}

/* Sticky toolbar/search row needs an opaque light surface so table rows
   don't bleed through while scrolling. */
.tr-app.tr-app--admin[data-theme="light"] .orders-panel-toolbar,
.tr-app.tr-app--admin[data-theme="light"] .payin-toolbar {
  background: var(--tr-surface);
  border-bottom-color: var(--tr-line);
}

/* Dark theme — same KPI strip / toolbar bar treatment as light */
.tr-app.tr-app--admin[data-theme="dark"] .orders-panel-head,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi-grid,
.tr-app.tr-app--admin:not([data-theme="light"]) .orders-panel-head,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi-grid {
  background: transparent;
  border-bottom-color: transparent;
  box-shadow: none;
}

.tr-app.tr-app--admin[data-theme="dark"] .tr-page--payin > .orders-panel-head,
.tr-app.tr-app--admin[data-theme="dark"] .tr-page--payout > .orders-panel-head,
.tr-app.tr-app--admin[data-theme="dark"] .tr-page--traffic > .orders-panel-head,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-page--payin > .orders-panel-head,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-page--payout > .orders-panel-head,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-page--traffic > .orders-panel-head {
  background: transparent;
  border-bottom-color: transparent;
  box-shadow: none;
}

.tr-app.tr-app--admin[data-theme="dark"] .orders-panel-toolbar,
.tr-app.tr-app--admin[data-theme="dark"] .payin-toolbar,
.tr-app.tr-app--admin:not([data-theme="light"]) .orders-panel-toolbar,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-toolbar {
  background: var(--tr-surface);
  border-bottom-color: var(--tr-line);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.purple {
  background: linear-gradient(165deg, #f3effc 0%, #e8dff8 42%, #d8ccf0 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.green {
  background: linear-gradient(165deg, #ecfdf3 0%, #dcf5e6 42%, #c8ead6 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.blue {
  background: linear-gradient(165deg, #ebf6fe 0%, #d9eefc 42%, #c4e4f8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.orange {
  background: linear-gradient(165deg, #fff4eb 0%, #fce8d4 42%, #f5d5b8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.purple {
  background: linear-gradient(165deg, #f3effc 0%, #e8dff8 42%, #d8ccf0 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.green {
  background: linear-gradient(165deg, #ecfdf3 0%, #dcf5e6 42%, #c8ead6 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.blue {
  background: linear-gradient(165deg, #ebf6fe 0%, #d9eefc 42%, #c4e4f8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.orange {
  background: linear-gradient(165deg, #fff4eb 0%, #fce8d4 42%, #f5d5b8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.red {
  background: linear-gradient(165deg, #fef2f2 0%, #fde4e4 42%, #f5cfcf 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.purple {
  background: linear-gradient(165deg, #f3effc 0%, #e8dff8 42%, #d8ccf0 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.green {
  background: linear-gradient(165deg, #ecfdf3 0%, #dcf5e6 42%, #c8ead6 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.blue {
  background: linear-gradient(165deg, #ebf6fe 0%, #d9eefc 42%, #c4e4f8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.orange {
  background: linear-gradient(165deg, #fff4eb 0%, #fce8d4 42%, #f5d5b8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.red {
  background: linear-gradient(165deg, #fef2f2 0%, #fde4e4 42%, #f5cfcf 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric-icon {
  background: rgba(124, 58, 237, 0.14);
  color: #6d28d9;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6), 0 2px 4px rgba(124, 58, 237, 0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.green .tr-dash-metric-icon {
  background: rgba(22, 163, 74, 0.14);
  color: #16a34a;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(22,163,74,0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.blue .tr-dash-metric-icon {
  background: rgba(14, 165, 233, 0.14);
  color: #0284c7;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(14,165,233,0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric.orange .tr-dash-metric-icon {
  background: rgba(234, 88, 12, 0.14);
  color: #ea580c;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(234,88,12,0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter {
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face-lo) 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter:hover {
  background: linear-gradient(165deg, #f3effc 0%, #e4daf8 100%);
}

.tr-app.tr-app--admin[data-theme="light"] .metric {
  border-color: var(--op-card-border);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-card th {
  background: #d8e1ee;
  color: #64748b;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-card tbody tr:hover td {
  background: rgba(124, 58, 237, 0.04);
}

.tr-app.tr-app--admin[data-theme="light"] .table-wrap {
  border-color: var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] .table-wrap thead th {
  background: #d8e1ee;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-wrap {
  background: var(--op-login-bg);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-wrap::before {
  display: none;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-card {
  border-color: var(--op-card-border);
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 42%, var(--op-card-face-lo) 100%);
  box-shadow: var(--op-card-3d-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-card .tr-login-field input {
  border-color: var(--op-border-strong);
  background: var(--op-input-bg);
  color: var(--tr-text);
  box-shadow: none;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-hint .mono {
  color: #0284c7;
}

.tr-app.tr-app--admin[data-theme="light"] input:not([type="checkbox"]):not([type="radio"]),
.tr-app.tr-app--admin[data-theme="light"] select,
.tr-app.tr-app--admin[data-theme="light"] textarea,
.tr-app.tr-app--admin[data-theme="light"] .payin-search,
.tr-app.tr-app--admin[data-theme="light"] .search-input {
  border-color: var(--op-border-strong);
  background: var(--op-input-bg);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] input::placeholder,
.tr-app.tr-app--admin[data-theme="light"] textarea::placeholder {
  color: var(--tr-muted);
  opacity: 1;
}

.tr-app.tr-app--admin[data-theme="light"] .op-copy-id {
  background: var(--op-elevated);
}

.tr-app.tr-app--admin[data-theme="light"] .op-copy-id:hover {
  background: rgba(124, 58, 237, 0.1);
  color: #5b21b6;
  box-shadow: 0 0 0 1px rgba(124, 58, 237, 0.18);
}

.tr-app.tr-app--admin[data-theme="light"] .op-conv-empty-state {
  border-color: rgba(100, 116, 139, 0.35);
}

.tr-app.tr-app--admin[data-theme="light"] .drawer-panel {
  border-color: var(--op-border);
  background: var(--tr-surface);
}

.tr-app.tr-app--admin[data-theme="light"] .drawer-tile {
  border-color: var(--op-border-faint);
  background: var(--op-elevated);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi-value {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-panel-title-icon svg {
  color: #6d28d9;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--active {
  background: rgba(22, 163, 74, 0.1);
  border-color: rgba(22, 163, 74, 0.35);
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--save {
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--close {
  color: #64748b;
}

.tr-app.tr-app--admin[data-theme="light"] .toast {
  border-color: var(--op-border-strong);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-login-error {
  background: rgba(239, 68, 68, 0.08);
  border-color: rgba(239, 68, 68, 0.2);
  color: #b91c1c;
}

/* Light theme — fix trader.css hardcoded dark-theme text colors */
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric-value,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-mini-value,
.tr-app.tr-app--admin[data-theme="light"] .metric-value,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter strong,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-volume-total strong,
.tr-app.tr-app--admin[data-theme="light"] .headline-num,
.tr-app.tr-app--admin[data-theme="light"] .stat-pill strong,
.tr-app.tr-app--admin[data-theme="light"] .legend-value,
.tr-app.tr-app--admin[data-theme="light"] .payin-amount,
.tr-app.tr-app--admin[data-theme="light"] .payin-req-id {
  color: var(--op-metric-value);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-chart-head h3,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-head h3,
.tr-app.tr-app--admin[data-theme="light"] .tr-profile-name,
.tr-app.tr-app--admin[data-theme="light"] .tr-topbar h1,
.tr-app.tr-app--admin[data-theme="light"] .headline-cap {
  color: var(--op-panel-title);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand-name {
  color: inherit;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand-lockup__sync,
.tr-app[data-theme="light"] .tr-brand-lockup__sync {
  fill: #0f172a;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand-wordmark__sync {
  color: #0f172a;
  text-shadow: none;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-brand-wordmark__pay {
  background: linear-gradient(90deg, #0284c7 0%, #db2777 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric-title,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-metric-sub,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-mini-label,
.tr-app.tr-app--admin[data-theme="light"] .metric-label {
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-sidebar {
  box-shadow: var(--op-sidebar-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-topbar {
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] .donut-value {
  fill: var(--op-metric-value);
}

.tr-app.tr-app--admin[data-theme="light"] .metric.green .metric-value { color: #15803d; }
.tr-app.tr-app--admin[data-theme="light"] .metric.orange .metric-value { color: #c2410c; }
.tr-app.tr-app--admin[data-theme="light"] .metric.red .metric-value { color: #b91c1c; }
.tr-app.tr-app--admin[data-theme="light"] .metric.blue .metric-value { color: #0369a1; }
.tr-app.tr-app--admin[data-theme="light"] .metric.purple .metric-value { color: #6d28d9; }

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-trend.up,
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi-hint.up,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-mini-hint.up {
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-trend.down,
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi-hint.down,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-mini-hint.down {
  color: #b91c1c;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter {
  border: 1px solid var(--op-border);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter.green {
  border-color: rgba(22, 163, 74, 0.28);
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter.orange {
  border-color: rgba(234, 88, 12, 0.28);
  color: #c2410c;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter.blue {
  border-color: rgba(14, 165, 233, 0.28);
  color: #0369a1;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-filter.purple {
  border-color: rgba(124, 58, 237, 0.22);
  color: #6d28d9;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-workspace {
  background:
    radial-gradient(900px 420px at 100% 0%, rgba(124, 58, 237, 0.07), transparent 55%),
    radial-gradient(700px 380px at 0% 100%, rgba(14, 165, 233, 0.05), transparent 50%),
    radial-gradient(640px 380px at 50% 55%, rgba(100, 116, 139, 0.1), transparent 58%),
    linear-gradient(180deg, #aab6cb 0%, #b8c4d8 72px, var(--tr-bg) 180px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.purple .payin-kpi-icon { background: rgba(124, 58, 237, 0.14); color: #6d28d9; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(124,58,237,0.12); }
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.green .payin-kpi-icon { background: rgba(22, 163, 74, 0.14); color: #15803d; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(22,163,74,0.12); }
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.orange .payin-kpi-icon { background: rgba(234, 88, 12, 0.14); color: #c2410c; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(234,88,12,0.12); }
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.red .payin-kpi-icon { background: rgba(239, 68, 68, 0.14); color: #b91c1c; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(239,68,68,0.12); }
.tr-app.tr-app--admin[data-theme="light"] .payin-kpi.blue .payin-kpi-icon { background: rgba(14, 165, 233, 0.14); color: #0369a1; box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 4px rgba(14,165,233,0.12); }

.tr-app.tr-app--admin[data-theme="light"] .tr-side-link {
  color: var(--op-nav-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-side-link .tr-side-icon {
  color: #64748b;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-side-link.active .tr-side-icon {
  color: #6d28d9;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-profile-role,
.tr-app.tr-app--admin[data-theme="light"] .tr-profile-name {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-profile-role {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .badge,
.tr-app.tr-app--admin[data-theme="light"] .status,
html[data-admin-theme="light"] .status {
  font-weight: 700;
  border: 1px solid transparent;
}

/* Light theme — readable status pills (tables, drawer, traffic) */
html[data-admin-theme="light"] .status,
.tr-app.tr-app--admin[data-theme="light"] .status,
html[data-admin-theme="light"] .status-pill,
.tr-app.tr-app--admin[data-theme="light"] .status-pill {
  background: #e2e8f0;
  color: #475569;
  border-color: rgba(71, 85, 105, 0.2);
}

html[data-admin-theme="light"] .status.paid,
html[data-admin-theme="light"] .status.approved,
html[data-admin-theme="light"] .status.active,
html[data-admin-theme="light"] .status-pill--paid,
.tr-app.tr-app--admin[data-theme="light"] .status.paid,
.tr-app.tr-app--admin[data-theme="light"] .status.approved,
.tr-app.tr-app--admin[data-theme="light"] .status.active,
.tr-app.tr-app--admin[data-theme="light"] .status-pill--paid {
  background: rgba(22, 163, 74, 0.14);
  border-color: rgba(22, 163, 74, 0.38);
  color: #15803d;
}

html[data-admin-theme="light"] .status.waiting-payment,
html[data-admin-theme="light"] .status.waiting_payment,
html[data-admin-theme="light"] .status.customer-claimed-paid,
html[data-admin-theme="light"] .status.customer_claimed_paid,
html[data-admin-theme="light"] .status.under-review,
html[data-admin-theme="light"] .status.under_review,
html[data-admin-theme="light"] .status.pending,
html[data-admin-theme="light"] .status.paused,
html[data-admin-theme="light"] .status-pill--wait,
.tr-app.tr-app--admin[data-theme="light"] .status.waiting-payment,
.tr-app.tr-app--admin[data-theme="light"] .status.waiting_payment,
.tr-app.tr-app--admin[data-theme="light"] .status.customer-claimed-paid,
.tr-app.tr-app--admin[data-theme="light"] .status.customer_claimed_paid,
.tr-app.tr-app--admin[data-theme="light"] .status.under-review,
.tr-app.tr-app--admin[data-theme="light"] .status.under_review,
.tr-app.tr-app--admin[data-theme="light"] .status.pending,
.tr-app.tr-app--admin[data-theme="light"] .status.paused,
.tr-app.tr-app--admin[data-theme="light"] .status-pill--wait {
  background: rgba(234, 88, 12, 0.12);
  border-color: rgba(234, 88, 12, 0.38);
  color: #c2410c;
}

html[data-admin-theme="light"] .status.expired,
html[data-admin-theme="light"] .status.cancelled,
html[data-admin-theme="light"] .status.disputed,
html[data-admin-theme="light"] .status.rejected,
html[data-admin-theme="light"] .status-pill--expired,
.tr-app.tr-app--admin[data-theme="light"] .status.expired,
.tr-app.tr-app--admin[data-theme="light"] .status.cancelled,
.tr-app.tr-app--admin[data-theme="light"] .status.disputed,
.tr-app.tr-app--admin[data-theme="light"] .status.rejected,
.tr-app.tr-app--admin[data-theme="light"] .status-pill--expired {
  background: rgba(220, 38, 38, 0.1);
  border-color: rgba(220, 38, 38, 0.35);
  color: #b91c1c;
}

html[data-admin-theme="light"] .order-detail-status,
.tr-app.tr-app--admin[data-theme="light"] .order-detail-status {
  font-size: 13px;
  padding: 4px 11px;
}

html[data-admin-theme="light"] .group-badge,
.tr-app.tr-app--admin[data-theme="light"] .group-badge {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.32);
  color: #6d28d9;
}

html[data-admin-theme="light"] .merchant-type-badge--p2p,
.tr-app.tr-app--admin[data-theme="light"] .merchant-type-badge--p2p {
  background: rgba(37, 99, 235, 0.1);
  border-color: rgba(37, 99, 235, 0.32);
  color: #1d4ed8;
}

html[data-admin-theme="light"] .merchant-type-badge--crypto,
.tr-app.tr-app--admin[data-theme="light"] .merchant-type-badge--crypto {
  background: rgba(5, 150, 105, 0.1);
  border-color: rgba(5, 150, 105, 0.32);
  color: #047857;
}

html[data-admin-theme="light"] .notif-badge-all,
.tr-app.tr-app--admin[data-theme="light"] .notif-badge-all {
  background: rgba(124, 58, 237, 0.12);
  color: #6d28d9;
}

html[data-admin-theme="light"] .notif-badge-one,
.tr-app.tr-app--admin[data-theme="light"] .notif-badge-one {
  background: rgba(2, 132, 199, 0.12);
  color: #0369a1;
}

.tr-app.tr-app--admin[data-theme="light"] .req-status-on {
  background: rgba(22, 163, 74, 0.14);
  border: 1px solid rgba(22, 163, 74, 0.32);
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .req-status-off {
  background: rgba(100, 116, 139, 0.14);
  border: 1px solid rgba(100, 116, 139, 0.28);
  color: #475569;
}

/* Traffic outcome pills (no base styles in styles.css) */
.tr-app.tr-app--admin .status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid transparent;
}

.tr-app.tr-app--admin .status-pill--paid {
  background: var(--green-soft);
  color: var(--green);
}

.tr-app.tr-app--admin .status-pill--expired {
  background: var(--red-soft);
  color: #f87171;
}

/* ── Light theme — filters, tables, forms, conversion ── */
.tr-app.tr-app--admin[data-theme="light"] .payin-filter-tab,
.tr-app.tr-app--admin[data-theme="light"] .filter-chip {
  border-color: var(--op-card-border);
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face-lo) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 1px 2px rgba(15, 23, 42, 0.06);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-filter-tab:hover,
.tr-app.tr-app--admin[data-theme="light"] .filter-chip:hover {
  border-color: rgba(124, 58, 237, 0.28);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-filter-tab.active {
  background: linear-gradient(165deg, #8b5cf6 0%, #6d28d9 55%, #5b21b6 100%);
  border-color: rgba(91, 33, 182, 0.45);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.25),
    0 4px 12px rgba(91, 33, 182, 0.28);
  color: #fff;
}

.tr-app.tr-app--admin[data-theme="light"] .payin-panel-title,
.tr-app.tr-app--admin[data-theme="light"] .panel-header h2 {
  color: var(--op-panel-title);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-kpi-label,
.tr-app.tr-app--admin[data-theme="light"] .payin-panel-sub,
.tr-app.tr-app--admin[data-theme="light"] .faint,
.tr-app.tr-app--admin[data-theme="light"] table.admin-data-table td .faint {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-toolbar,
.tr-app.tr-app--admin[data-theme="light"] .panel-toolbar {
  border-bottom-color: var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-search input,
.tr-app.tr-app--admin[data-theme="light"] .tr-search input {
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

.tr-app.tr-app--admin[data-theme="light"] input:focus-visible,
.tr-app.tr-app--admin[data-theme="light"] select:focus-visible,
.tr-app.tr-app--admin[data-theme="light"] textarea:focus-visible {
  outline: none;
  border-color: rgba(124, 58, 237, 0.45);
  box-shadow:
    0 0 0 3px rgba(124, 58, 237, 0.14),
    inset 0 1px 2px rgba(15, 23, 42, 0.04);
}

.tr-app.tr-app--admin[data-theme="light"] .table-wrap thead th,
.tr-app.tr-app--admin[data-theme="light"] .payin-table-wrap .table-wrap thead th,
.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-card .table-wrap thead th {
  background: #ccd6e6;
  color: #475569;
  border-bottom: 1px solid var(--op-border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.tr-app.tr-app--admin[data-theme="light"] table.admin-data-table tbody tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.22);
}

.tr-app.tr-app--admin[data-theme="light"] table.admin-data-table tbody tr:hover td {
  background: rgba(124, 58, 237, 0.06);
}

.tr-app.tr-app--admin[data-theme="light"] .op-conv-summary-card,
.tr-app.tr-app--admin[data-theme="light"] .op-conv-stat-card {
  border-color: var(--op-card-border);
  background: linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 42%, var(--op-card-face-lo) 100%);
  box-shadow: var(--op-card-3d-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .op-conv-trader-item {
  background: rgba(255, 255, 255, 0.35);
  border-color: var(--op-border-faint);
}

.tr-app.tr-app--admin[data-theme="light"] .op-conv-stat-value,
.tr-app.tr-app--admin[data-theme="light"] .op-conv-trader-name {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .trader-cell strong,
.tr-app.tr-app--admin[data-theme="light"] .merchant-cell strong,
.tr-app.tr-app--admin[data-theme="light"] table td strong {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .link-btn,
.tr-app.tr-app--admin[data-theme="light"] a.secondary {
  color: #6d28d9;
}

.tr-app.tr-app--admin[data-theme="light"] .notif-rec-btn {
  border-color: var(--op-border);
  background: var(--op-elevated);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .notif-rec-btn.active {
  border-color: rgba(124, 58, 237, 0.35);
  background: rgba(124, 58, 237, 0.1);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .notif-send-btn {
  background: linear-gradient(165deg, #8b5cf6 0%, #6d28d9 100%);
  box-shadow: 0 4px 14px rgba(91, 33, 182, 0.25);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-workspace,
.tr-app.tr-app--admin[data-theme="light"] .table-wrap,
.tr-app.tr-app--admin[data-theme="light"] .op-conv-table-wrap .table-wrap {
  scrollbar-color: rgba(71, 85, 105, 0.35) transparent;
}

/* Dark theme — sticky headers use semantic surface */
.tr-app.tr-app--admin[data-theme="dark"] .table-wrap thead th,
.tr-app.tr-app--admin[data-theme="dark"] .payin-table-wrap .table-wrap thead th,
.tr-app.tr-app--admin:not([data-theme="light"]) .table-wrap thead th {
  background: rgba(12, 12, 18, 0.96);
}

.tr-app.tr-app--admin[data-theme="dark"] table.admin-data-table tbody tr:nth-child(even) td,
.tr-app.tr-app--admin:not([data-theme="light"]) table.admin-data-table tbody tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.015);
}

.tr-app.tr-app--admin[data-theme="dark"] table.admin-data-table tbody tr:hover td,
.tr-app.tr-app--admin:not([data-theme="light"]) table.admin-data-table tbody tr:hover td {
  background: rgba(139, 92, 246, 0.06);
}

.tr-app.tr-app--admin input:focus-visible,
.tr-app.tr-app--admin select:focus-visible,
.tr-app.tr-app--admin textarea:focus-visible {
  outline: none;
  border-color: rgba(139, 92, 246, 0.45);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
}

/* ── Dark theme — 3D elevated cards (mirrors light-theme depth) ── */
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi,
.tr-app.tr-app--admin[data-theme="dark"] .metric,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-chart-card,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-table-card,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-mini,
.tr-app.tr-app--admin[data-theme="dark"] .payin-panel,
.tr-app.tr-app--admin[data-theme="dark"] .panel,
.tr-app.tr-app--admin[data-theme="dark"] .orders-panel,
.tr-app.tr-app--admin[data-theme="dark"] .op-conv-summary-card,
.tr-app.tr-app--admin[data-theme="dark"] .op-conv-stat-card,
.tr-app.tr-app--admin[data-theme="dark"] .op-dash-hero,
.tr-app.tr-app--admin[data-theme="dark"] .tr-login-card,
.tr-app.tr-app--admin[data-theme="dark"] .tr-stat-chip,
.tr-app.tr-app--admin[data-theme="dark"] .tr-rate-chip,
.tr-app.tr-app--admin[data-theme="dark"] .tr-balance-chip,
.tr-app.tr-app--admin[data-theme="dark"] .tr-live-pill,
.tr-app.tr-app--admin[data-theme="dark"] .tr-icon-btn,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi,
.tr-app.tr-app--admin:not([data-theme="light"]) .metric,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-chart-card,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-table-card,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-mini,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-panel,
.tr-app.tr-app--admin:not([data-theme="light"]) .panel,
.tr-app.tr-app--admin:not([data-theme="light"]) .orders-panel,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-conv-summary-card,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-conv-stat-card,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-dash-hero,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-login-card,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-stat-chip,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-rate-chip,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-balance-chip,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-live-pill,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-icon-btn {
  background:
    linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 45%, var(--op-card-face-lo) 100%);
  border: 1px solid var(--op-card-border);
  box-shadow: var(--op-card-3d-shadow);
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

/* Dashboard hero keeps its accent wash on top of the 3D base */
.tr-app.tr-app--admin[data-theme="dark"] .op-dash-hero,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-dash-hero {
  background:
    linear-gradient(135deg, rgba(139, 92, 246, 0.16) 0%, rgba(99, 102, 241, 0.05) 40%, transparent 75%),
    linear-gradient(165deg, var(--op-card-face-hi) 0%, var(--op-card-face) 45%, var(--op-card-face-lo) 100%);
}

.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric:hover,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi:hover,
.tr-app.tr-app--admin[data-theme="dark"] .metric:hover,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-chart-card:hover,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-table-card:hover,
.tr-app.tr-app--admin[data-theme="dark"] .op-conv-summary-card:hover,
.tr-app.tr-app--admin[data-theme="dark"] .op-conv-stat-card:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .metric:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-chart-card:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-table-card:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-conv-summary-card:hover,
.tr-app.tr-app--admin:not([data-theme="light"]) .op-conv-stat-card:hover {
  transform: translateY(-2px);
  border-color: rgba(139, 92, 246, 0.28);
  box-shadow: var(--op-card-3d-hover);
}

/* Dark theme — recessed inputs/search complete the 3D depth language */
.tr-app.tr-app--admin[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]),
.tr-app.tr-app--admin[data-theme="dark"] select,
.tr-app.tr-app--admin[data-theme="dark"] textarea,
.tr-app.tr-app--admin[data-theme="dark"] .payin-search,
.tr-app.tr-app--admin[data-theme="dark"] .search-input,
.tr-app.tr-app--admin:not([data-theme="light"]) input:not([type="checkbox"]):not([type="radio"]),
.tr-app.tr-app--admin:not([data-theme="light"]) select,
.tr-app.tr-app--admin:not([data-theme="light"]) textarea,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-search,
.tr-app.tr-app--admin:not([data-theme="light"]) .search-input {
  background: linear-gradient(180deg, #0a0a12 0%, #0d0d16 100%);
  border-color: var(--op-card-border);
  box-shadow:
    inset 0 2px 4px rgba(0, 0, 0, 0.5),
    inset 0 -1px 0 rgba(255, 255, 255, 0.03);
}

.tr-app.tr-app--admin[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):focus,
.tr-app.tr-app--admin[data-theme="dark"] select:focus,
.tr-app.tr-app--admin[data-theme="dark"] textarea:focus,
.tr-app.tr-app--admin[data-theme="dark"] .payin-search:focus,
.tr-app.tr-app--admin:not([data-theme="light"]) input:not([type="checkbox"]):not([type="radio"]):focus,
.tr-app.tr-app--admin:not([data-theme="light"]) select:focus,
.tr-app.tr-app--admin:not([data-theme="light"]) textarea:focus,
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-search:focus {
  border-color: rgba(139, 92, 246, 0.55);
  box-shadow:
    inset 0 2px 4px rgba(0, 0, 0, 0.5),
    0 0 0 3px rgba(139, 92, 246, 0.18);
}

/* Login card — keep username/password fields identical (override global admin input density) */
.tr-app.tr-app--admin .tr-login-card .tr-login-field input {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 0 40px;
  border-radius: 10px;
  font-size: 0.875rem;
  box-shadow: none;
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-login-card .tr-login-field input {
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.28);
  color: var(--tr-text);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-login-card .tr-login-field input:focus-visible {
  outline: 2px solid rgba(139, 92, 246, 0.45);
  outline-offset: 1px;
  border-color: rgba(139, 92, 246, 0.25);
  box-shadow: none;
}

/* Dark theme — 3D icon tiles (KPI, metrics, nav, action buttons) */
.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi-icon {
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 10px rgba(0, 0, 0, 0.28);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi.purple .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi.purple .payin-kpi-icon {
  background: linear-gradient(165deg, rgba(139, 92, 246, 0.34) 0%, rgba(124, 58, 237, 0.14) 100%);
  color: #c4b5fd;
  border-color: rgba(139, 92, 246, 0.28);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.4),
    0 6px 14px rgba(139, 92, 246, 0.22);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi.green .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi.green .payin-kpi-icon {
  background: linear-gradient(165deg, rgba(34, 197, 94, 0.28) 0%, rgba(22, 163, 74, 0.12) 100%);
  color: #86efac;
  border-color: rgba(34, 197, 94, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.4),
    0 6px 14px rgba(34, 197, 94, 0.18);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi.orange .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi.orange .payin-kpi-icon {
  background: linear-gradient(165deg, rgba(249, 115, 22, 0.3) 0%, rgba(234, 88, 12, 0.12) 100%);
  color: #fdba74;
  border-color: rgba(249, 115, 22, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.4),
    0 6px 14px rgba(249, 115, 22, 0.18);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi.red .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi.red .payin-kpi-icon {
  background: linear-gradient(165deg, rgba(239, 68, 68, 0.3) 0%, rgba(220, 38, 38, 0.12) 100%);
  color: #fca5a5;
  border-color: rgba(239, 68, 68, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.4),
    0 6px 14px rgba(239, 68, 68, 0.18);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-kpi.blue .payin-kpi-icon,
.tr-app.tr-app--admin[data-theme="dark"] .payin-kpi.blue .payin-kpi-icon {
  background: linear-gradient(165deg, rgba(56, 189, 248, 0.28) 0%, rgba(14, 165, 233, 0.12) 100%);
  color: #7dd3fc;
  border-color: rgba(56, 189, 248, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.4),
    0 6px 14px rgba(56, 189, 248, 0.18);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric-icon {
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: linear-gradient(165deg, rgba(139, 92, 246, 0.26) 0%, rgba(124, 58, 237, 0.1) 100%);
  color: #c4b5fd;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 10px rgba(139, 92, 246, 0.16);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric.green .tr-dash-metric-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric.green .tr-dash-metric-icon {
  background: linear-gradient(165deg, rgba(34, 197, 94, 0.24) 0%, rgba(22, 163, 74, 0.1) 100%);
  color: #86efac;
  border-color: rgba(34, 197, 94, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 10px rgba(34, 197, 94, 0.14);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric.blue .tr-dash-metric-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric.blue .tr-dash-metric-icon {
  background: linear-gradient(165deg, rgba(56, 189, 248, 0.24) 0%, rgba(14, 165, 233, 0.1) 100%);
  color: #7dd3fc;
  border-color: rgba(56, 189, 248, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 10px rgba(56, 189, 248, 0.14);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-dash-metric.orange .tr-dash-metric-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-dash-metric.orange .tr-dash-metric-icon {
  background: linear-gradient(165deg, rgba(251, 146, 60, 0.26) 0%, rgba(234, 88, 12, 0.1) 100%);
  color: #fdba74;
  border-color: rgba(251, 146, 60, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 10px rgba(251, 146, 60, 0.14);
}

/* Sidebar nav icons — flat like light theme (no 3D tile).
   Тонкий контур читается слабее текста того же цвета, поэтому иконки делаем
   ЯРЧЕ подписей (иначе на графите выглядят выцветшими). */
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-side-link .tr-side-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-side-link .tr-side-icon {
  color: #cbd5e1;
}
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-side-link .tr-side-icon svg,
.tr-app.tr-app--admin[data-theme="dark"] .tr-side-link .tr-side-icon svg {
  stroke-width: 1.9;
}
.tr-app.tr-app--admin:not([data-theme="light"]) .tr-side-link:hover .tr-side-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-side-link:hover .tr-side-icon {
  color: #fff;
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-side-link.active .tr-side-icon,
.tr-app.tr-app--admin[data-theme="dark"] .tr-side-link.active .tr-side-icon {
  color: #c4b5fd;
}

.tr-app.tr-app--admin:not([data-theme="light"]) .icon-btn:not(.icon-btn--primary):not(.icon-btn--active),
.tr-app.tr-app--admin[data-theme="dark"] .icon-btn:not(.icon-btn--primary):not(.icon-btn--active) {
  background: linear-gradient(165deg, #16161f 0%, #0e0e16 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    inset 0 -1px 0 rgba(0, 0, 0, 0.5),
    0 2px 0 rgba(0, 0, 0, 0.35);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .icon-btn--primary,
.tr-app.tr-app--admin[data-theme="dark"] .icon-btn--primary {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -1px 0 rgba(0, 0, 0, 0.25),
    0 2px 0 rgba(67, 56, 202, 0.55),
    0 8px 20px rgba(124, 58, 237, 0.32);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .icon-btn--active,
.tr-app.tr-app--admin[data-theme="dark"] .icon-btn--active {
  background: linear-gradient(165deg, rgba(34, 197, 94, 0.22) 0%, rgba(22, 163, 74, 0.1) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 2px 0 rgba(0, 0, 0, 0.35),
    0 5px 12px rgba(34, 197, 94, 0.16);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .icon-btn:hover:not(:disabled):not(.icon-btn--primary),
.tr-app.tr-app--admin[data-theme="dark"] .icon-btn:hover:not(:disabled):not(.icon-btn--primary) {
  background: linear-gradient(165deg, rgba(139, 92, 246, 0.16) 0%, rgba(99, 102, 241, 0.08) 100%);
  border-color: rgba(139, 92, 246, 0.32);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(0, 0, 0, 0.48),
    0 3px 0 rgba(0, 0, 0, 0.38),
    0 8px 16px rgba(139, 92, 246, 0.14);
  transform: translateY(-1px);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .icon-btn--primary:hover:not(:disabled),
.tr-app.tr-app--admin[data-theme="dark"] .icon-btn--primary:hover:not(:disabled) {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    inset 0 -1px 0 rgba(0, 0, 0, 0.28),
    0 3px 0 rgba(67, 56, 202, 0.6),
    0 12px 26px rgba(124, 58, 237, 0.38);
  transform: translateY(-1px);
}

/* Кнопки-действия в строках Ордеров/Выплат — светлые цветные чипы вместо
   тёмных 3D-боксов (перекрываем тёмный градиент .icon-btn выше).
   Открыть — фиолетовый, Переслать колбек — зелёный. */
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--view {
  background: rgba(139, 92, 246, 0.16) !important;
  border: 1px solid rgba(139, 92, 246, 0.32) !important;
  box-shadow: none !important;
  color: #a78bfa !important;
}
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--view:hover:not(:disabled) {
  background: rgba(139, 92, 246, 0.28) !important;
  border-color: rgba(139, 92, 246, 0.55) !important;
  color: #ddd6fe !important;
  transform: translateY(-1px);
}
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--callback {
  background: rgba(34, 197, 94, 0.16) !important;
  border: 1px solid rgba(34, 197, 94, 0.34) !important;
  box-shadow: none !important;
  color: #4ade80 !important;
}
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--callback:hover:not(:disabled) {
  background: rgba(34, 197, 94, 0.28) !important;
  border-color: rgba(34, 197, 94, 0.55) !important;
  color: #86efac !important;
  transform: translateY(-1px);
}
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--receipt {
  background: rgba(232, 148, 15, 0.16) !important;
  border: 1px solid rgba(232, 148, 15, 0.34) !important;
  box-shadow: none !important;
  color: #fdba74 !important;
}
.tr-app.tr-app--admin:not([data-theme="light"]) .order-row-actions .icon-btn--receipt:hover:not(:disabled) {
  background: rgba(232, 148, 15, 0.28) !important;
  border-color: rgba(232, 148, 15, 0.55) !important;
  color: #fed7aa !important;
  transform: translateY(-1px);
}

.tr-app.tr-app--admin:not([data-theme="light"]) .tr-profile-avatar,
.tr-app.tr-app--admin[data-theme="dark"] .tr-profile-avatar {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    inset 0 -1px 0 rgba(0, 0, 0, 0.25),
    0 2px 0 rgba(67, 56, 202, 0.5),
    0 6px 16px rgba(67, 56, 202, 0.35);
}

/* Pagination footer — readable labels, themed page-size select */
.tr-app.tr-app--admin .payin-table-footer {
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-top: 1px solid var(--op-card-border, rgba(255, 255, 255, 0.08));
  background: var(--op-card-face-lo, #0a0a10);
}

.tr-app.tr-app--admin .payin-page-size {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tr-app.tr-app--admin .payin-page-size-label,
.tr-app.tr-app--admin .payin-total-count,
.tr-app.tr-app--admin .payin-page-ellipsis {
  color: var(--tr-muted, #94a3b8);
  font-size: 0.8125rem;
}

.tr-app.tr-app--admin .payin-page-size select {
  width: auto;
  min-width: 68px;
  padding: 4px 28px 4px 10px;
  min-height: 32px;
  color: var(--tr-text, #e2e8f0);
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}

.tr-app.tr-app--admin:not([data-theme="light"]) .payin-page-size select {
  color-scheme: dark;
}

.tr-app.tr-app--admin[data-theme="light"] .payin-table-footer {
  background: var(--op-card-face-lo, #d2dbe8);
  border-top-color: var(--op-border, rgba(51, 65, 85, 0.16));
}

.tr-app.tr-app--admin[data-theme="light"] .payin-page-size-label,
.tr-app.tr-app--admin[data-theme="light"] .payin-total-count,
.tr-app.tr-app--admin[data-theme="light"] .payin-page-ellipsis {
  color: var(--tr-muted, #475569);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-page-size select {
  color-scheme: light;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23475569' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");
}

/* ── Light theme — remaining dark hardcodes (drawer tabs, settings, panels) ── */

/* Portaled drawers: trader / merchant tabs (order-detail already styled above) */
html[data-admin-theme="light"] .trader-detail .drawer-tabs,
html[data-admin-theme="light"] .merchant-detail .drawer-tabs {
  background: var(--surface-2);
  border-color: var(--line);
}

html[data-admin-theme="light"] .trader-detail .drawer-tab,
html[data-admin-theme="light"] .merchant-detail .drawer-tab {
  color: var(--muted);
}

html[data-admin-theme="light"] .trader-detail .drawer-tab:hover,
html[data-admin-theme="light"] .merchant-detail .drawer-tab:hover {
  color: var(--text);
}

html[data-admin-theme="light"] .trader-detail .drawer-tab.active,
html[data-admin-theme="light"] .merchant-detail .drawer-tab.active {
  background: rgba(124, 58, 237, 0.14);
  border-color: rgba(124, 58, 237, 0.42);
  color: #5b21b6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

html[data-admin-theme="light"] .trader-detail-hero {
  border-color: rgba(124, 58, 237, 0.35);
  background: linear-gradient(
    135deg,
    rgba(139, 92, 246, 0.16) 0%,
    rgba(255, 255, 255, 0.72) 55%
  );
}

html[data-admin-theme="light"] .trader-detail-sub {
  color: #475569;
}

html[data-admin-theme="light"] .trader-chip {
  color: #64748b;
  background: rgba(15, 23, 42, 0.04);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .drawer-section {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .drawer-section-head h3 {
  color: var(--text);
}

html[data-admin-theme="light"] .drawer-section-head p {
  color: var(--muted);
}

html[data-admin-theme="light"] .trader-stat {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .trader-stat-label {
  color: var(--muted);
}

html[data-admin-theme="light"] .trader-stat-value {
  color: var(--text);
}

html[data-admin-theme="light"] .trader-stat-sub {
  color: var(--faint);
}

html[data-admin-theme="light"] .trader-stat--green .trader-stat-value { color: #15803d; }
html[data-admin-theme="light"] .trader-stat--orange .trader-stat-value { color: #c2410c; }
html[data-admin-theme="light"] .trader-stat--purple .trader-stat-value { color: #6d28d9; }

html[data-admin-theme="light"] .perm-row {
  background: var(--surface-2);
  border-color: var(--line-soft);
}

html[data-admin-theme="light"] .perm-row:hover {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.28);
}

html[data-admin-theme="light"] .perm-row:has(input:checked) {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.35);
}

html[data-admin-theme="light"] .perm-icon {
  color: #6d28d9;
  background: rgba(124, 58, 237, 0.12);
  border-color: rgba(124, 58, 237, 0.25);
}

html[data-admin-theme="light"] .perm-row:has(input:checked) .perm-icon {
  color: #5b21b6;
  background: rgba(124, 58, 237, 0.18);
}

html[data-admin-theme="light"] .wallet-empty {
  background: rgba(124, 58, 237, 0.06);
  border-color: rgba(124, 58, 237, 0.28);
}

html[data-admin-theme="light"] .wallet-empty-icon {
  color: #6d28d9;
  background: rgba(124, 58, 237, 0.12);
}

/* Settings page */
.tr-app.tr-app--admin[data-theme="light"] .tr-settings-title,
.tr-app.tr-app--admin[data-theme="light"] .tr-settings-card-head h3 {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-card {
  background: linear-gradient(
    165deg,
    var(--op-card-face-hi) 0%,
    var(--op-card-face) 42%,
    var(--op-card-face-lo) 100%
  );
  border-color: var(--op-card-border);
  box-shadow: var(--op-card-3d-shadow);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-card:hover {
  border-color: var(--op-border-strong);
  box-shadow: var(--op-card-3d-hover);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-field input,
.tr-app.tr-app--admin[data-theme="light"] .tr-settings-telegram-input {
  background: var(--op-input-bg);
  border-color: var(--op-border-strong);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-telegram-input .tr-settings-at {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-totp-step {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-step-num {
  color: #5b21b6;
  background: rgba(124, 58, 237, 0.14);
  border-color: rgba(124, 58, 237, 0.35);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-totp-secret {
  background: var(--op-input-bg);
  border-color: var(--op-border-strong);
  color: var(--tr-text);
}

/* Generic panels / forms (API, traffic, etc.) */
.tr-app.tr-app--admin[data-theme="light"] .panel-header {
  background: var(--tr-surface);
  border-bottom-color: var(--tr-line);
}

.tr-app.tr-app--admin[data-theme="light"] .form-row input,
.tr-app.tr-app--admin[data-theme="light"] .form-row select,
.tr-app.tr-app--admin[data-theme="light"] .form-row textarea {
  background: var(--op-input-bg);
  border-color: var(--op-border-strong);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .output {
  background: var(--op-input-bg);
  border-color: var(--op-border-strong);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .notice {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.25);
  color: #5b21b6;
}

/* PayIn / tables — override trader.css #0e0e14 */
.tr-app.tr-app--admin[data-theme="light"] .payin-table-wrap th {
  background: #ccd6e6;
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] .table-wrap table thead th {
  background: #ccd6e6;
  color: #475569;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-view-btn.active {
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .payin-req-id {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .legend-label {
  color: var(--tr-muted);
}

/* Stat pills & chips — readable accent colors on light cards */
.tr-app.tr-app--admin[data-theme="light"] .stat-pill.green { color: #15803d; }
.tr-app.tr-app--admin[data-theme="light"] .stat-pill.purple { color: #6d28d9; }
.tr-app.tr-app--admin[data-theme="light"] .stat-pill.orange { color: #c2410c; }
.tr-app.tr-app--admin[data-theme="light"] .stat-pill.red { color: #b91c1c; }

.tr-app.tr-app--admin[data-theme="light"] .tr-stat-chip.purple strong { color: #6d28d9; }

.tr-app.tr-app--admin[data-theme="light"] .tr-dash-table-link:hover {
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-bell-badge {
  border-color: var(--tr-surface);
}

/* Action icon buttons — darker hues for light backgrounds */
.tr-app.tr-app--admin[data-theme="light"] .icon-btn--view {
  border-color: rgba(2, 132, 199, 0.35);
  color: #0369a1;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--view:hover:not(:disabled) {
  border-color: rgba(2, 132, 199, 0.55);
  color: #0c4a6e;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--callback {
  border-color: rgba(124, 58, 237, 0.35);
  color: #6d28d9;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--callback:hover:not(:disabled) {
  border-color: rgba(124, 58, 237, 0.55);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--retry {
  border-color: rgba(234, 88, 12, 0.35);
  color: #c2410c;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--retry:hover:not(:disabled) {
  border-color: rgba(234, 88, 12, 0.55);
  color: #9a3412;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--apply {
  border-color: rgba(22, 163, 74, 0.4);
  background: linear-gradient(180deg, rgba(22, 163, 74, 0.12), rgba(22, 163, 74, 0.08));
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn--apply:hover:not(:disabled) {
  border-color: rgba(22, 163, 74, 0.6);
  color: #166534;
}

/* ── Light theme pass 2 — drawer portal, forms, tabs, crypto ── */

/* Portaled drawer (#op-drawer lives on <body>, not inside .tr-app) */
html[data-admin-theme="light"] .drawer-titles h2 {
  color: var(--text);
}

html[data-admin-theme="light"] #op-drawer-sub,
html[data-admin-theme="light"] .drawer-titles .faint {
  color: var(--muted);
}

html[data-admin-theme="light"] .drawer-close {
  background: var(--surface-2);
  border-color: var(--line);
  color: var(--muted);
}

html[data-admin-theme="light"] .drawer-close:hover {
  color: var(--text);
  border-color: rgba(124, 58, 237, 0.45);
}

html[data-admin-theme="light"] .profile-name {
  color: var(--text);
}

html[data-admin-theme="light"] .drawer-tab {
  color: var(--muted);
}

html[data-admin-theme="light"] .drawer-tab:hover {
  color: var(--text);
}

html[data-admin-theme="light"] .drawer-tab.active {
  background: rgba(124, 58, 237, 0.14);
  border-color: rgba(124, 58, 237, 0.42);
  color: #5b21b6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

html[data-admin-theme="light"] .trader-detail .drawer-tabs,
html[data-admin-theme="light"] .merchant-detail .drawer-tabs,
html[data-admin-theme="light"] .order-detail .drawer-tabs {
  background: var(--surface-2);
}

html[data-admin-theme="light"] tbody tr {
  background: var(--surface-2);
}

html[data-admin-theme="light"] th {
  background: #ccd6e6;
  color: #475569;
  border-bottom-color: var(--line-soft);
}

html[data-admin-theme="light"] td {
  color: var(--text);
  border-bottom-color: var(--line-soft);
}

html[data-admin-theme="light"] tbody tr:nth-child(even) td {
  background: rgba(15, 23, 42, 0.035);
}

html[data-admin-theme="light"] tbody tr:hover td {
  background: rgba(124, 58, 237, 0.1);
}

html[data-admin-theme="light"] input,
html[data-admin-theme="light"] select,
html[data-admin-theme="light"] textarea {
  background: #eef2f8;
  border-color: var(--line);
  color: var(--text);
}

html[data-admin-theme="light"] input:focus,
html[data-admin-theme="light"] select:focus,
html[data-admin-theme="light"] textarea:focus {
  border-color: rgba(124, 58, 237, 0.45);
  box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.14);
}

html[data-admin-theme="light"] .form-row label {
  color: var(--muted);
}

html[data-admin-theme="light"] button.secondary {
  background: var(--surface-2);
  border-color: var(--line);
  color: var(--text);
}

html[data-admin-theme="light"] button.secondary:hover:not(:disabled) {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.35);
  color: #5b21b6;
}

html[data-admin-theme="light"] .notice {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.25);
  color: #5b21b6;
}

html[data-admin-theme="light"] .output {
  background: #eef2f8;
  border-color: var(--line);
  color: var(--text);
}

html[data-admin-theme="light"] .perm-toggle-ui {
  background: #cbd5e1;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.12);
}

html[data-admin-theme="light"] .perm-toggle-ui::before {
  background: #fff;
}

html[data-admin-theme="light"] a {
  color: #6d28d9;
}

html[data-admin-theme="light"] a:hover {
  color: #5b21b6;
}

/* Main cabinet — forms, buttons, settings, payin, crypto */
.tr-app.tr-app--admin[data-theme="light"] .form-row label {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] button.secondary {
  background: var(--op-input-bg);
  border-color: var(--op-border-strong);
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] button.secondary:hover:not(:disabled) {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.35);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-subtitle,
.tr-app.tr-app--admin[data-theme="light"] .tr-settings-card-head p {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-field label {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-2fa-body {
  background: rgba(124, 58, 237, 0.06);
  border-color: rgba(124, 58, 237, 0.22);
}

.tr-app.tr-app--admin[data-theme="light"] .tr-settings-btn--ghost:hover:not(:disabled) {
  background: rgba(124, 58, 237, 0.08);
  border-color: var(--op-border-strong);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-sub-amount,
.tr-app.tr-app--admin[data-theme="light"] .payin-req-pair {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-profit {
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .payin-view-btn {
  background: var(--tr-surface-2);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-view-btn:hover:not(:disabled) {
  color: var(--tr-text);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-table-wrap td {
  background: var(--op-card-face);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-table-wrap tbody tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.35);
}

.tr-app.tr-app--admin[data-theme="light"] .payin-table-wrap tbody tr:hover td {
  background: rgba(124, 58, 237, 0.08);
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-tab-count {
  background: rgba(15, 23, 42, 0.06);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-tab.active .crypto-tab-count {
  background: rgba(124, 58, 237, 0.18);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-tab.active {
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-status-chip {
  background: var(--tr-surface-2);
  border-color: var(--tr-line);
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-status-chip.active {
  background: rgba(22, 163, 74, 0.12);
  border-color: rgba(22, 163, 74, 0.35);
  color: #15803d;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn {
  background: var(--tr-surface);
  border-color: var(--op-border-strong);
  color: #475569;
}

.tr-app.tr-app--admin[data-theme="light"] .icon-btn:hover:not(:disabled) {
  background: rgba(124, 58, 237, 0.08);
  border-color: rgba(124, 58, 237, 0.25);
  color: #5b21b6;
}

.tr-app.tr-app--admin[data-theme="light"] .op-copy-id:hover {
  color: #5b21b6;
  background: rgba(124, 58, 237, 0.12);
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-tab {
  color: var(--tr-muted);
}

.tr-app.tr-app--admin[data-theme="light"] .crypto-tab:hover {
  color: var(--tr-text);
}

html[data-admin-theme="light"] .perm-title {
  color: var(--text);
}

html[data-admin-theme="light"] .perm-hint {
  color: var(--muted);
}

html[data-admin-theme="light"] .perm-toggle input:checked + .perm-toggle-ui {
  background: #16a34a;
}

/* ── Форма трейдера: вкладки + чекбоксы (Добавить/Редактировать трейдера) ── */
.tr-app.tr-app--admin .op-form-tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--op-border);
  margin-bottom: 16px;
}
.tr-app.tr-app--admin .op-form-tab {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--tr-muted);
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  padding: 8px 12px;
  margin-bottom: -1px;
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s;
}
.tr-app.tr-app--admin .op-form-tab:hover { color: var(--tr-text); }
.tr-app.tr-app--admin .op-form-tab.active {
  color: #ec4899;
  border-bottom-color: #ec4899;
}
.tr-app.tr-app--admin .op-form-panel { display: none; }
.tr-app.tr-app--admin .op-form-panel.is-active { display: block; }
.tr-app.tr-app--admin .form-row .req { color: #ec4899; }

.tr-app.tr-app--admin .op-check-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.tr-app.tr-app--admin .op-check {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--op-border);
  border-radius: var(--op-radius-md);
  background: rgba(255, 255, 255, 0.02);
  cursor: pointer;
  font-size: 0.8125rem;
  transition: border-color 0.15s, background 0.15s;
}
.tr-app.tr-app--admin .op-check:hover { border-color: rgba(139, 92, 246, 0.35); }
.tr-app.tr-app--admin .op-check input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #8b5cf6;
  flex: none;
  cursor: pointer;
}
.tr-app.tr-app--admin .op-check:has(input:checked) {
  border-color: rgba(139, 92, 246, 0.5);
  background: rgba(139, 92, 246, 0.08);
}
@media (max-width: 640px) {
  .tr-app.tr-app--admin .op-check-grid { grid-template-columns: 1fr; }
}
/* /форма трейдера */

/* Реквизиты: дополнительно уменьшенный масштаб таблицы */
.tr-app.tr-app--admin table.requisites-grid.deals-compact td,
.tr-app.tr-app--admin table.requisites-grid.deals-compact th {
  padding: 1px 4px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact td {
  font-size: 8px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact th {
  font-size: 6px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact td .faint {
  font-size: 7px;
  line-height: 1.1;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .t-avatar {
  width: 16px;
  height: 16px;
  font-size: 7px;
  border-radius: 5px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .trader-cell {
  gap: 5px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .group-badge {
  font-size: 7px;
  padding: 1px 6px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .status {
  font-size: 7px;
  padding: 1px 5px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .icon-btn {
  width: 18px;
  height: 18px;
  min-width: 18px;
}
.tr-app.tr-app--admin table.requisites-grid.deals-compact .icon-btn .op-svg svg {
  width: 10px;
  height: 10px;
}

/* Настройки трейдера: компактный масштаб всего drawer */
.tr-app.tr-app--admin .trader-detail .trader-detail-hero {
  padding: 10px 14px;
}
.tr-app.tr-app--admin .trader-detail .t-avatar-lg {
  width: 40px;
  height: 40px;
  font-size: 0.95rem;
}
.tr-app.tr-app--admin .trader-detail .profile-name {
  font-size: 1rem;
  gap: 8px;
}
.tr-app.tr-app--admin .trader-detail .trader-detail-sub,
.tr-app.tr-app--admin .trader-detail .trader-detail-contacts {
  font-size: 11px;
}
.tr-app.tr-app--admin .trader-detail .trader-detail-chips {
  margin-top: 4px;
}
.tr-app.tr-app--admin .trader-detail .trader-detail-chips .group-badge,
.tr-app.tr-app--admin .trader-detail .trader-detail-chips .trader-chip {
  font-size: 10px;
  padding: 2px 8px;
}
.tr-app.tr-app--admin .trader-detail-stats--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin-top: 8px;
}
.tr-app.tr-app--admin .trader-detail-stats--3 .trader-stat {
  padding: 6px 10px;
  border-radius: 10px;
}
.tr-app.tr-app--admin .trader-detail-stats--3 .trader-stat-label { font-size: 9px; }
.tr-app.tr-app--admin .trader-detail-stats--3 .trader-stat-value { font-size: 13px; margin-top: 2px; }
.tr-app.tr-app--admin .trader-detail-stats--3 .trader-stat-sub { font-size: 9px; margin-top: 1px; }
.tr-app.tr-app--admin .trader-detail .drawer-tab {
  padding: 6px 12px;
  font-size: 12px;
}
.tr-app.tr-app--admin .trader-detail .drawer-section {
  padding: 12px 14px;
}
.tr-app.tr-app--admin .trader-detail .drawer-section-head h3 {
  font-size: 0.95rem;
}
.tr-app.tr-app--admin .trader-detail .drawer-section-head p {
  font-size: 11px;
}
.tr-app.tr-app--admin .trader-detail .form-grid {
  gap: 8px 10px;
}
.tr-app.tr-app--admin .trader-detail .form-row label {
  font-size: 11px;
}
.tr-app.tr-app--admin .trader-detail .form-row input,
.tr-app.tr-app--admin .trader-detail .form-row select {
  padding: 7px 10px;
  font-size: 12px;
}

/* Детализация трейдера: карточки в 2 колонки, компактный масштаб
   (класс не имел grid-правил — карточки растягивались на всю ширину). */
.tr-app.tr-app--admin .trader-stats-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.tr-app.tr-app--admin .trader-stats-grid .trader-stat {
  padding: 6px 10px;
  border-radius: 10px;
}
.tr-app.tr-app--admin .trader-stats-grid .trader-stat-label {
  font-size: 9px;
}
.tr-app.tr-app--admin .trader-stats-grid .trader-stat-value {
  font-size: 13px;
  margin-top: 2px;
}
.tr-app.tr-app--admin .trader-stats-grid .trader-stat-sub {
  font-size: 9px;
  margin-top: 1px;
}

/* Нативный дропдаун select в тёмной теме: без этого браузер рисует
   выпадающий список белым, и светлый текст опций не читается. */
.tr-app.tr-app--admin:not([data-theme="light"]) select {
  color-scheme: dark;
}
.tr-app.tr-app--admin:not([data-theme="light"]) select option {
  background-color: #12121c;
  color: #f8fafc;
}
.tr-app.tr-app--admin:not([data-theme="light"]) select option:disabled {
  color: #6b7280;
}

/* Крупная кнопка действия (иконка + текст), напр. «Добавить списание» */
.tr-app.tr-app--admin .op-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #f8fafc;
  cursor: pointer;
  white-space: nowrap;
  background: linear-gradient(135deg, #6d5cf0, #5a49d6);
  box-shadow: 0 4px 14px rgba(90, 73, 214, 0.35);
  transition: transform 0.12s ease, box-shadow 0.12s ease, filter 0.12s ease;
}
.tr-app.tr-app--admin .op-action-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  filter: brightness(1.08);
}
.tr-app.tr-app--admin .op-action-btn:active:not(:disabled) {
  transform: translateY(0);
  filter: brightness(0.96);
}
.tr-app.tr-app--admin .op-action-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.tr-app.tr-app--admin .op-action-btn .op-svg,
.tr-app.tr-app--admin .op-action-btn .op-svg svg {
  width: 15px;
  height: 15px;
  display: inline-flex;
}
.tr-app.tr-app--admin .op-action-btn--danger {
  background: linear-gradient(135deg, #e5463f, #c62f2f);
  box-shadow: 0 4px 14px rgba(198, 47, 47, 0.35);
  border-color: rgba(255, 255, 255, 0.16);
}

/* Выплаты: квитанции на проверке (бывший раздел «Подтверждения») */
.tr-app.tr-app--admin .payout-confs {
  border: 1px solid rgba(232, 148, 15, 0.35);
  border-radius: 14px;
  background: rgba(232, 148, 15, 0.06);
  padding: 12px 14px;
  margin-bottom: 14px;
}
.tr-app.tr-app--admin .payout-confs-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.tr-app.tr-app--admin .payout-confs-head h3 {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
}

/* Модалка квитанции по выплате */
.tr-app.tr-app--admin .conf-recipient {
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.2));
  background: rgba(109, 92, 240, 0.08);
}
.tr-app.tr-app--admin .conf-recipient-card {
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #f8fafc;
}
.tr-app.tr-app--admin .conf-ocr {
  margin-top: 10px;
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 0.8rem;
  font-weight: 600;
}
.tr-app.tr-app--admin .conf-ocr--ok {
  color: #86efac;
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.3);
}
.tr-app.tr-app--admin .conf-ocr--warn {
  color: #fdba74;
  background: rgba(232, 148, 15, 0.12);
  border: 1px solid rgba(232, 148, 15, 0.3);
}
.tr-app.tr-app--admin .conf-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.tr-app.tr-app--admin .conf-received {
  margin: 0 0 10px;
  font-size: 0.9rem;
}
.tr-app.tr-app--admin .conf-receipt-link {
  display: block;
  margin-bottom: 10px;
}
.tr-app.tr-app--admin .conf-receipt-img {
  display: block;
  width: 100%;
  max-height: 70vh;
  object-fit: contain;
  border-radius: 12px;
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.2));
  background: rgba(0, 0, 0, 0.25);
}

/* Обзор трафика «Общая статистика за сегодня» */
.tr-app.tr-app--admin .op-tov {
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.16));
  border-radius: 16px;
  background: var(--op-surface, rgba(18, 18, 28, 0.6));
  padding: 14px 16px 16px;
  margin-bottom: 14px;
}
.tr-app.tr-app--admin .op-tov-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.tr-app.tr-app--admin .op-tov-head h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}
.tr-app.tr-app--admin .op-tov-period {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--op-muted, #8b8fa3);
  padding: 3px 10px;
  border-radius: 999px;
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.16));
  white-space: nowrap;
}
.tr-app.tr-app--admin .op-tov-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}
.tr-app.tr-app--admin .op-tov-merchant {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.2));
  background: rgba(0, 0, 0, 0.2);
  color: inherit;
  max-width: 170px;
}
.tr-app.tr-app--admin .op-tov-date {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.2));
  background: rgba(0, 0, 0, 0.2);
  color: inherit;
  color-scheme: dark;
}
.tr-app.tr-app--admin .op-tov-today {
  font-size: 0.72rem;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 8px;
  border: 1px solid rgba(109, 92, 240, 0.5);
  background: rgba(109, 92, 240, 0.16);
  color: #c4b5fd;
  cursor: pointer;
}
.tr-app.tr-app--admin .op-tov-today:hover { background: rgba(109, 92, 240, 0.26); }
.tr-app.tr-app--admin .op-tov-body {
  display: flex;
  gap: 12px;
  align-items: stretch;
}
.tr-app.tr-app--admin .op-tov-cards {
  flex: 1;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 10px;
}
.tr-app.tr-app--admin .op-tov-card {
  border-radius: 12px;
  padding: 10px 14px 11px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 6px;
  min-height: 64px;
  color: #f8fafc;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
}
.tr-app.tr-app--admin .op-tov-card--wide { grid-column: span 2; }
.tr-app.tr-app--admin .op-tov-label {
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.9;
  line-height: 1.25;
}
.tr-app.tr-app--admin .op-tov-value {
  font-size: 1.3rem;
  font-weight: 800;
  line-height: 1.05;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tr-app.tr-app--admin .op-tov-count {
  font-size: 0.8rem;
  font-weight: 600;
  opacity: 0.8;
}
.tr-app.tr-app--admin .op-tov-card--blue { background: linear-gradient(135deg, #2f6bed, #1d4fd0); }
.tr-app.tr-app--admin .op-tov-card--green { background: linear-gradient(135deg, #1f9d57, #16824a); }
.tr-app.tr-app--admin .op-tov-card--purple { background: linear-gradient(135deg, #6d5cf0, #5a49d6); }
.tr-app.tr-app--admin .op-tov-card--orange { background: linear-gradient(135deg, #e8940f, #cc7a06); }
.tr-app.tr-app--admin .op-tov-card--red { background: linear-gradient(135deg, #e5463f, #c62f2f); }
.tr-app.tr-app--admin .op-tov-charts {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 10px;
  flex-shrink: 0;
  width: 190px;
}
.tr-app.tr-app--admin .op-tov-chart {
  border: 1px solid var(--op-line, rgba(148, 163, 184, 0.16));
  border-radius: 12px;
  padding: 8px 10px 9px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.14);
}
.tr-app.tr-app--admin .op-tov-chart-title {
  font-size: 0.72rem;
  font-weight: 700;
  opacity: 0.8;
}
.tr-app.tr-app--admin .op-tov-chart .donut {
  width: 108px;
  height: 108px;
  margin: 2px 0;
}
.tr-app.tr-app--admin .op-tov-legend {
  display: flex;
  gap: 10px;
  font-size: 0.66rem;
  font-weight: 600;
  color: var(--op-muted, #8b8fa3);
}
.tr-app.tr-app--admin .op-tov-legend span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.tr-app.tr-app--admin .op-tov-legend i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
}
@media (max-width: 1100px) {
  .tr-app.tr-app--admin .op-tov-body { flex-direction: column; }
  .tr-app.tr-app--admin .op-tov-charts { grid-template-rows: none; grid-template-columns: 1fr 1fr; width: auto; }
}
@media (max-width: 720px) {
  .tr-app.tr-app--admin .op-tov-cards { grid-template-columns: 1fr 1fr; }
  .tr-app.tr-app--admin .op-tov-card--wide { grid-column: span 2; }
  .tr-app.tr-app--admin .op-tov-charts { grid-template-columns: 1fr; }
}

/* ==== Апелляции (очередь споров) ==== */
.tr-app.tr-app--admin .appeal-decide{ display:flex; flex-direction:column; gap:14px; }
.tr-app.tr-app--admin .appeal-comment{
  margin:0; padding:10px 13px; border-radius:10px;
  background: rgba(124, 58, 237, 0.08);
  font-size:.85rem; line-height:1.5;
}
.tr-app.tr-app--admin .appeal-file-label{
  font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em;
  color: var(--tr-muted); margin-bottom:7px;
}
.tr-app.tr-app--admin .appeal-decide .drawer-actions button.danger{
  background: rgba(229, 72, 77, 0.12);
  border: 1px solid rgba(229, 72, 77, 0.45);
  color: #ff6b74;
}
.tr-app.tr-app--admin .appeal-decide .drawer-actions button.danger:hover{
  background: rgba(229, 72, 77, 0.2);
}
.tr-app.tr-app--admin[data-theme="light"] .appeal-decide .drawer-actions button.danger{ color:#c22a30; }

/* ===== Дашборд оператора DB1 (Aurora light) ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-db-kpis{
  display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi{
  position:relative; overflow:hidden;
  background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important;
  border-radius:14px; padding:13px 15px; box-shadow:0 5px 14px rgba(22,27,43,.05);
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic{
  position:absolute; right:12px; top:12px; width:30px; height:30px; border-radius:9px;
  display:grid; place-items:center; font-size:.85rem; font-weight:800;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic.ic-green{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic.ic-purple{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic.ic-amber{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic.ic-violet{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic.ic-red{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-cap{
  font-size:.6rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--tr-muted);
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-v{ font-size:1.2rem; font-weight:800; margin-top:5px; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-h{ font-size:.64rem; font-weight:700; margin-top:3px; }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-h.up{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-h.dn{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-h.mut{ color:var(--tr-muted); }

html[data-app-scope="trader"] body.tr-app--admin .op-db-grid2{ display:grid; grid-template-columns:1.45fr 1fr; gap:12px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-db-grid3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; }
@media (max-width:1080px){
  html[data-app-scope="trader"] body.tr-app--admin .op-db-kpis{ grid-template-columns:repeat(2,1fr); }
  html[data-app-scope="trader"] body.tr-app--admin .op-db-grid2,
  html[data-app-scope="trader"] body.tr-app--admin .op-db-grid3{ grid-template-columns:1fr; }
}
html[data-app-scope="trader"] body.tr-app--admin .op-db-ph{
  display:flex; justify-content:space-between; align-items:center; padding:11px 14px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-db-ph b{ font-size:.8rem; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-db-tag{
  font-size:.6rem; font-weight:700; padding:2px 9px; border-radius:999px;
  background:var(--tr-purple-soft); color:var(--tr-purple);
}
html[data-app-scope="trader"] body.tr-app--admin .op-db-tag--g{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-db-donut-wrap{
  display:flex; gap:18px; align-items:center; padding:6px 15px 16px; flex-wrap:wrap;
}
/* «Требует внимания» — кликабельные строки */
html[data-app-scope="trader"] body.tr-app--admin .op-attn-row{
  display:flex; align-items:center; gap:11px; padding:10px 14px; border-top:1px solid var(--tr-line);
  text-decoration:none; color:inherit;
}
html[data-app-scope="trader"] body.tr-app--admin .op-attn-row:hover{ background:var(--nb-rowhover); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-ic{
  width:28px; height:28px; border-radius:8px; display:grid; place-items:center; flex:none; font-size:.85rem; font-weight:800;
}
html[data-app-scope="trader"] body.tr-app--admin .op-attn-ic.ic-violet{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-ic.ic-amber{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-ic.ic-red{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-ic.ic-green{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-main{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-main b{ display:block; font-size:.74rem; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-main span{ display:block; font-size:.64rem; color:var(--tr-muted); margin-top:1px; }
html[data-app-scope="trader"] body.tr-app--admin .op-attn-chev{ color:var(--tr-muted); font-size:1rem; }
/* ликвидность */
html[data-app-scope="trader"] body.tr-app--admin .op-db-liq{ padding:2px 14px 12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-liqrow{
  display:flex; justify-content:space-between; font-size:.72rem; padding:8px 0; border-top:1px solid var(--tr-line);
}
html[data-app-scope="trader"] body.tr-app--admin .op-liqrow:first-child{ border-top:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-liqrow span{ color:var(--tr-muted); }
/* /дашборд DB1 */

/* ===== Аналитика дашборда: тренд оборота + конверсия по дням ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-db-charts{
  display:grid; grid-template-columns:1.7fr 1fr; gap:12px; margin-bottom:12px;
}
@media (max-width:1080px){
  html[data-app-scope="trader"] body.tr-app--admin .op-db-charts{ grid-template-columns:1fr; }
}
html[data-app-scope="trader"] body.tr-app--admin .op-trend-legend{
  font-size:.62rem; color:var(--tr-muted); display:inline-flex; align-items:center; gap:6px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-trend-legend .dot{
  width:8px; height:8px; border-radius:50%; display:inline-block; margin-left:6px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-trend-legend .dot-vol{ background:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-trend-legend .dot-rev{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-trend-body{ padding:2px 14px 12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-area{ width:100%; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .op-trend-labels{
  display:flex; justify-content:space-between; margin-top:6px;
  font-size:.6rem; color:var(--tr-muted); font-variant-numeric:tabular-nums;
}
html[data-app-scope="trader"] body.tr-app--admin .op-trend-labels .is-today{ color:var(--tr-purple); font-weight:800; }
/* столбики конверсии */
html[data-app-scope="trader"] body.tr-app--admin .op-cbars{
  display:flex; align-items:flex-end; gap:8px; height:130px; padding:6px 14px 12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cbar{
  flex:1; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; gap:5px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cbar-fill{
  width:100%; max-width:26px; border-radius:7px 7px 3px 3px; position:relative;
  background:linear-gradient(180deg,#5b71ee,#3d54e0); min-height:4px;
  display:flex; align-items:flex-start; justify-content:center;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cbar-fill b{
  position:absolute; top:-15px; font-size:.56rem; font-weight:800; color:var(--tr-muted); font-variant-numeric:tabular-nums;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cbar:last-child .op-cbar-fill{ background:linear-gradient(180deg,#22c07a,#17a673); }
html[data-app-scope="trader"] body.tr-app--admin .op-cbar-lbl{ font-size:.56rem; color:var(--tr-muted); }
/* /аналитика */

/* топбар-чипы админки: плоский Aurora-вид вместо старого 3D-градиента */
html[data-app-scope="trader"] body.tr-app--admin .tr-stat-chip,
html[data-app-scope="trader"] body.tr-app--admin .tr-rate-chip{
  background:var(--tr-surface) !important;
  border:1px solid var(--tr-line) !important;
  box-shadow:0 1px 2px rgba(22,27,43,.04), 0 8px 22px rgba(30,40,90,.06) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .tr-stat-chip span{ color:var(--tr-muted) !important; }
html[data-app-scope="trader"] body.tr-app--admin .tr-stat-chip.green strong{ color:var(--nb-green) !important; }
html[data-app-scope="trader"] body.tr-app--admin .tr-rate-chip{ color:var(--tr-text) !important; }

/* номера карт в таблицах админки компактнее (в кабинете крупнее — не трогаем) */
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .tbl-card{
  font-size:11.5px; font-weight:600; letter-spacing:.03em;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .idchip-t{ font-size:11px; }

/* KPI-ряд разделов: 5 колонок */
html[data-app-scope="trader"] body.tr-app--admin .op-db-kpis--5{ grid-template-columns:repeat(5,1fr); }
@media (max-width:1080px){
  html[data-app-scope="trader"] body.tr-app--admin .op-db-kpis--5{ grid-template-columns:repeat(2,1fr); }
}

/* SVG-иконки в KPI-плашках разделов */
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic svg{ width:16px; height:16px; }

/* ===== KPI-плашки K5 (минимал): плоские, цветная точка + число в цвете ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat{
  background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important;
  box-shadow:0 5px 14px rgba(22,27,43,.05) !important; border-radius:13px; padding:14px 15px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat .op-kpi-top{
  display:flex; align-items:center; gap:7px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat .op-kpi-dot{
  width:8px; height:8px; border-radius:50%; flex:none;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat .op-kpi-cap{
  font-size:.6rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; color:var(--tr-muted);
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat .op-kpi-v{
  font-size:1.35rem; font-weight:800; margin-top:7px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat .op-kpi-sub{
  font-size:.62rem; color:var(--tr-muted); margin-top:2px;
}
/* цвета статусов: точка + число */
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-p .op-kpi-dot{ background:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-p .op-kpi-v{ color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-g .op-kpi-dot{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-g .op-kpi-v{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-a .op-kpi-dot{ background:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-a .op-kpi-v{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-r .op-kpi-dot{ background:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-r .op-kpi-v{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-v .op-kpi-dot{ background:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-v .op-kpi-v{ color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-n .op-kpi-dot{ background:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-n .op-kpi-v{ color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-b .op-kpi-dot{ background:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-b .op-kpi-v{ color:#2f7ad6; }
/* иконка вместо точки в плоской плашке (цвет по тону) */
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic{ display:inline-flex; align-items:center; justify-content:center; width:17px; height:17px; }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi-ic svg{ width:17px; height:17px; fill:currentColor; stroke:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-p .op-kpi-ic{ color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-g .op-kpi-ic{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-a .op-kpi-ic{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-r .op-kpi-ic{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-v .op-kpi-ic{ color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-b .op-kpi-ic{ color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .op-kpi--flat.k-n .op-kpi-ic{ color:var(--tr-muted); }

/* Кабинет трейдера использует контурный набор N1 (иконки со stroke, fill:none).
   ТОЛЬКО трейдер (без data-console) — у админки и кабинета мерчанта заливочный Phosphor. */
html[data-app-scope="trader"]:not([data-console]) body.tr-app--admin .tr-side-icon svg{
  fill:none !important;
  stroke:currentColor !important;
}
/* Админ-консоль и кабинет мерчанта — заливочный набор Phosphor (viewBox 256, fill:currentColor).
   Правило выше (для контурного набора трейдера) делало из залитых иконок тонкие
   «ниточки» → они были плохо видны. Возвращаем заливку. */
html[data-console="admin"] body.tr-app--admin .tr-side-icon svg,
html[data-console="merchant"] body.tr-app--admin .tr-side-icon svg{
  fill:currentColor !important;
  stroke:none !important;
}

/* ===== Колбеки (C2): вертикальный таймлайн ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-cb-timeline{
  position:relative; padding-left:22px; margin-top:2px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-timeline::before{
  content:""; position:absolute; left:7px; top:6px; bottom:6px; width:2px;
  background:var(--tr-line); border-radius:2px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-node{ position:relative; padding-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-node:last-child{ padding-bottom:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-dot{
  position:absolute; left:-19px; top:5px; width:10px; height:10px; border-radius:50%;
  box-shadow:0 0 0 3px var(--tr-surface);
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-node--delivered .op-cb-dot{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-node--pending .op-cb-dot{ background:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-node--failed .op-cb-dot{ background:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-card{
  background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:11px; padding:10px 12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-line{
  display:flex; align-items:center; gap:8px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-event{ font-size:.74rem; font-weight:700; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-http{
  font-size:.6rem; font-weight:800; padding:1px 8px; border-radius:999px; font-variant-numeric:tabular-nums;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-http--delivered{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-http--pending{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-http--failed{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-retry{ margin-left:auto; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-meta{ font-size:.64rem; color:var(--tr-muted); margin-top:4px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-err{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-details{ margin-top:7px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-details summary{
  font-size:.64rem; font-weight:700; color:var(--tr-purple); cursor:pointer; list-style:none;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cb-details summary::-webkit-details-marker{ display:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-cb-pre{
  background:var(--tr-surface-2); border-radius:8px; padding:8px 10px; margin:6px 0 0;
  font-size:.62rem; line-height:1.5; overflow-x:auto; color:var(--tr-text);
}

/* ===== Управление ордером (U1): серые карточки-секции с инлайн-формой ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-mng-sect{
  background:var(--tr-surface-2); border-radius:12px; padding:14px; margin-bottom:11px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-sect h4{
  margin:0 0 3px; font-size:.82rem; color:var(--tr-text);
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-sect p{
  margin:0 0 11px; font-size:.66rem; color:var(--tr-muted); line-height:1.45;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-frm{
  display:flex; gap:9px; align-items:flex-end;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-fld{ flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-mng-fld label{
  display:block; font-size:.56rem; font-weight:800; letter-spacing:.08em;
  text-transform:uppercase; color:var(--tr-muted); margin-bottom:5px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-fld .input{
  width:100%; background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important;
  border-radius:10px !important; padding:9px 11px !important; font-size:.78rem !important; color:var(--tr-text) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-btn{
  border:0 !important; border-radius:10px !important; padding:9px 16px !important;
  font-weight:800 !important; font-size:.74rem !important; color:#fff !important; cursor:pointer; white-space:nowrap;
  background:linear-gradient(180deg,#5b71ee,#3d54e0) !important;
  box-shadow:0 5px 12px rgba(61,84,224,.3), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-mng-btn:hover{ transform:translateY(-1px); }

/* ===== Обзор ордера: синяя hero-плашка суммы (как кнопки) + плитки O1 ===== */
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero{
  background:linear-gradient(135deg,#3d54e0 0%,#5b46d8 58%,#7b5cf0 100%) !important;
  border:0 !important; color:#fff !important;
  box-shadow:0 12px 26px rgba(61,84,224,.32) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-kicker{ color:rgba(255,255,255,.7) !important; }
html[data-app-scope="trader"] body.tr-app--admin .order-detail-amount{ color:#fff !important; }
html[data-app-scope="trader"] body.tr-app--admin .order-detail-sub{ color:rgba(255,255,255,.82) !important; }
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero .order-webhook-pill{
  background:rgba(255,255,255,.16) !important; color:#fff !important; border-color:transparent !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero .order-webhook-pill--empty{
  background:rgba(255,255,255,.12) !important; color:rgba(255,255,255,.8) !important;
}
/* плитки O1 — серые, компактные */
html[data-app-scope="trader"] body.tr-app--admin .order-info-tile{
  background:var(--tr-surface-2) !important; border:0 !important; border-radius:11px !important;
  padding:11px 13px !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-info-label{
  font-size:.55rem !important; font-weight:800 !important; letter-spacing:.08em !important;
  text-transform:uppercase !important; color:var(--tr-muted) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-info-value{
  font-size:.84rem !important; font-weight:700 !important; color:var(--tr-text) !important; margin-top:4px !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-info-sub{
  font-size:.62rem !important; color:var(--tr-muted) !important; margin-top:3px !important;
}

/* таб-бар дровера ордера — плоский светлый фон вместо тёмного 3D-градиента */
/* ===== Таб-бары всех дроверов — единый сегмент-контрол Aurora ===== */
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tabs,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs,
html[data-app-scope="trader"] body.tr-app--admin .merchant-detail .drawer-tabs{
  display:flex !important; flex-wrap:wrap !important; gap:4px !important; align-items:stretch !important;
  background:var(--tr-surface-2) !important;
  border:1px solid var(--tr-line) !important; border-radius:14px !important;
  padding:4px !important; box-shadow:none !important; background-image:none !important;
  margin-bottom:16px !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tab,
html[data-app-scope="trader"] body.tr-app--admin .merchant-detail .drawer-tab{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  gap:7px !important; min-width:0 !important; flex:0 1 auto !important;
  padding:9px 13px !important; border:1px solid transparent !important; border-radius:10px !important;
  background:transparent !important; color:var(--tr-muted) !important;
  font-weight:700 !important; font-size:.75rem !important; letter-spacing:.01em !important;
  cursor:pointer !important; white-space:nowrap !important;
  transition:background .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}
/* у дровера ордера мало вкладок + иконки — растягиваем на равные секции */
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab{ flex:1 1 0 !important; padding:9px 10px !important; }
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab .order-detail-tab-icon{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  width:16px !important; height:16px !important; flex:none !important; opacity:.9;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab .order-detail-tab-icon svg{
  width:16px !important; height:16px !important; display:block; fill:currentColor !important; stroke:none !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab:hover,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tab:hover,
html[data-app-scope="trader"] body.tr-app--admin .merchant-detail .drawer-tab:hover{
  color:var(--tr-text) !important; background:rgba(61,84,224,.06) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab.active,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tab.active,
html[data-app-scope="trader"] body.tr-app--admin .merchant-detail .drawer-tab.active{
  background:var(--tr-surface) !important; color:var(--tr-purple) !important;
  border-color:var(--tr-line) !important;
  box-shadow:0 4px 12px rgba(22,27,43,.10), 0 1px 0 rgba(255,255,255,.9) inset !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab.active .order-detail-tab-icon{ opacity:1; }
html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab:focus-visible,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tab:focus-visible,
html[data-app-scope="trader"] body.tr-app--admin .merchant-detail .drawer-tab:focus-visible{
  outline:2px solid var(--tr-purple) !important; outline-offset:2px !important;
}
/* на узких экранах у дровера ордера прячем подписи, оставляем иконки */
@media(max-width:560px){
  html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab span:not(.order-detail-tab-icon){ display:none !important; }
  html[data-app-scope="trader"] body.tr-app--admin .order-detail .drawer-tab{ padding:10px 8px !important; }
}

/* карта в синей hero-плашке ордера */
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero-card{
  margin-top:9px; display:flex; align-items:baseline; gap:9px; flex-wrap:wrap;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero-card-num{
  font-weight:700; font-size:.92rem; letter-spacing:.05em; color:#fff;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero-card-bank{
  font-size:.68rem; color:rgba(255,255,255,.72);
}

/* Убираем тёмные фоны из старой темы внутри дроверов (светлый Aurora) */
html[data-app-scope="trader"] body.tr-app--admin .drawer-section{
  background:var(--tr-surface-2) !important; border-color:var(--tr-line) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-recipient{
  background:var(--tr-purple-soft) !important; border-color:var(--tr-line) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-recipient-card{ color:var(--tr-text) !important; }
html[data-app-scope="trader"] body.tr-app--admin .conf-ocr--ok{
  color:var(--nb-green) !important; background:var(--nb-green-2) !important; border-color:rgba(23,166,115,.32) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-ocr--warn{
  color:var(--nb-amber) !important; background:var(--nb-amber-2) !important; border-color:rgba(192,124,16,.32) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-receipt-img{ background:var(--tr-surface-2) !important; }
/* действия под квитанцией: открыть / скачать (доступны и после закрытия выплаты) */
html[data-app-scope="trader"] body.tr-app--admin .conf-receipt-wrap{ margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .conf-receipt-wrap .conf-receipt-link{ margin-bottom:8px; }
html[data-app-scope="trader"] body.tr-app--admin .conf-receipt-acts{ display:flex; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-act{
  flex:1 1 0; display:inline-flex; align-items:center; justify-content:center; gap:7px;
  border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important;
  color:var(--tr-text) !important; border-radius:11px !important;
  padding:9px 12px !important; font-weight:700 !important; font-size:.74rem !important;
  text-decoration:none !important; cursor:pointer;
  transition:background .16s ease, color .16s ease, border-color .16s ease;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-act:hover{
  color:var(--tr-purple) !important; border-color:var(--tr-purple-soft) !important; background:var(--tr-purple-soft) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-act--dl:hover{
  color:var(--nb-green) !important; border-color:var(--nb-green-2) !important; background:var(--nb-green-2) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-act:disabled{ opacity:.55; cursor:default; }
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-ic{ display:inline-flex; width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .conf-rc-ic svg{ width:15px; height:15px; fill:currentColor; }

/* ===== Трафик · обзор T2 (воронка выдачи + причины отказа) — светлый Aurora ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-tf{
  border:1px solid var(--tr-line) !important; border-radius:16px !important;
  background:var(--tr-surface) !important; padding:15px 16px 16px !important; margin-bottom:14px !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf .op-tov-head h3{ color:var(--tr-text) !important; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf .op-tov-period{
  color:var(--tr-muted) !important; border-color:var(--tr-line) !important; background:var(--tr-surface-2) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf .op-tov-merchant,
html[data-app-scope="trader"] body.tr-app--admin .op-tf .op-tov-date{
  background:var(--tr-surface) !important; border-color:var(--tr-line) !important; color:var(--tr-text) !important; color-scheme:light !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf .op-tov-today{
  border-color:var(--tr-purple-soft) !important; background:var(--tr-purple-soft) !important; color:var(--tr-purple) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-grid{ display:grid; grid-template-columns:1.55fr 1fr; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-panel{
  background:var(--tr-surface-2) !important; border:1px solid var(--tr-line) !important; border-radius:13px; padding:14px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-phead{ display:flex; align-items:baseline; gap:8px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-phead h4{ margin:0; font-size:.92rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-phead span{ font-size:.72rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-funnel{ display:flex; flex-direction:column; gap:9px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-frow{ display:flex; align-items:center; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fbar{
  height:36px; border-radius:9px; display:flex; align-items:center; padding:0 13px;
  color:#fff; font-weight:800; font-size:.82rem; font-variant-numeric:tabular-nums;
  min-width:52px; box-shadow:0 3px 9px rgba(22,27,43,.12);
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fmeta{ font-size:.74rem; color:var(--tr-muted); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fmeta b{ color:var(--tr-text); font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-empty{
  display:flex; align-items:center; justify-content:center; min-height:96px;
  color:var(--tr-muted); font-size:.8rem; font-weight:600; text-align:center;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fbreak{
  margin-top:12px; padding-top:11px; border-top:1px solid var(--tr-line);
  font-size:.72rem; color:var(--tr-muted); display:flex; flex-wrap:wrap; gap:6px 14px; align-items:center;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb{ font-weight:800; font-variant-numeric:tabular-nums; display:inline-flex; align-items:center; gap:5px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb::before{ content:""; width:7px; height:7px; border-radius:50%; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--g{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--g::before{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--a{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--a::before{ background:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--r{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-fb--r::before{ background:var(--nb-red); }

/* ===== Подвкладка «Конверсия» — C1 (воронка-фокус), светлый Aurora ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-cv1{ display:flex; flex-direction:column; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-top{ display:grid; grid-template-columns:360px 1fr; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-mid{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-card{
  background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:16px; padding:15px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-head{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-head h3{ margin:0; font-size:.92rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-legend{ display:flex; gap:12px; font-size:.66rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-cv1-legend i{ width:10px; height:3px; border-radius:2px; display:inline-block; margin-right:5px; vertical-align:middle; }
/* вертикальная воронка */
html[data-app-scope="trader"] body.tr-app--admin .op-cvf{ display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-stg{
  color:#fff; border-radius:12px; padding:12px 15px; display:flex; align-items:center; justify-content:space-between; gap:10px;
  box-shadow:0 5px 14px rgba(22,27,43,.14);
}
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-stg--b{ background:linear-gradient(135deg,#5b74ee,#3d54e0); }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-stg--v{ background:linear-gradient(135deg,#8a72f5,#7b5cf0); }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-stg--g{ background:linear-gradient(135deg,#2bd18e,#17a673); }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-stg b{ font-size:1.5rem; font-weight:800; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-lab{ font-size:.72rem; opacity:.94; text-align:right; line-height:1.35; }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-vol{ display:block; font-size:.66rem; opacity:.8; }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-drop{ font-size:.68rem; color:var(--tr-muted); font-weight:700; padding:6px 4px; }
html[data-app-scope="trader"] body.tr-app--admin .op-cvf-drop b{ color:var(--tr-text); font-variant-numeric:tabular-nums; }
/* обёртка линейного графика */
html[data-app-scope="trader"] body.tr-app--admin .op-cv-line-wrap{ width:100%; }
html[data-app-scope="trader"] body.tr-app--admin .op-cv-line-wrap svg{ width:100%; height:auto; display:block; }
@media(max-width:920px){
  html[data-app-scope="trader"] body.tr-app--admin .op-cv1-top{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .op-cv1-mid{ grid-template-columns:1fr; }
}

/* ===== Детализация — D2 скоркарты + плашки/топы D3, светлый Aurora ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-dtop-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full{ margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full .op-dtreasury-wrap{ gap:32px; align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full .tr-dash-legend{ flex-direction:row; flex-wrap:wrap; gap:12px 40px; flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsec{ background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:16px; padding:15px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsec-head{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:10px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsec-head h3{ margin:0; font-size:.9rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-wrap{ display:flex; align-items:center; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-wrap .donut{ width:150px; height:150px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-wrap .donut-value{ fill:var(--tr-text); font-weight:800; font-size:15px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-wrap .donut-label{ fill:var(--tr-muted); font-size:8.5px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full .op-dtreasury-wrap .donut{ width:180px; height:180px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full .op-dtreasury-wrap .donut-value{ font-size:16px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dtreasury-full .op-dtreasury-wrap .donut-label{ font-size:8px; }
/* топы */
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-row{ display:grid; grid-template-columns:18px 1fr auto; gap:9px; align-items:center; padding:7px 0; border-bottom:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-row:last-child{ border:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-idx{ color:var(--tr-muted); font-weight:800; font-size:.72rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-name{ font-weight:700; font-size:.76rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-sub{ font-size:.6rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-dlb-amt{ font-weight:800; font-variant-numeric:tabular-nums; font-size:.82rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dc-pos{ color:var(--nb-green) !important; }
html[data-app-scope="trader"] body.tr-app--admin .op-dc-neg{ color:var(--nb-red) !important; }
/* тулбар */
html[data-app-scope="trader"] body.tr-app--admin .op-detal-toolbar{ align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .op-detal-count{ font-size:.9rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-detal-sorts{ display:inline-flex; gap:6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-detal-sort{
  border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-muted);
  font-size:.72rem; font-weight:700; padding:6px 12px; border-radius:999px; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-detal-sort.on{ background:var(--tr-purple-soft); color:var(--tr-purple); border-color:transparent; }
/* скоркарты */
html[data-app-scope="trader"] body.tr-app--admin .op-dcards{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard{
  background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:14px; padding:14px; cursor:pointer;
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dcard:hover{ border-color:var(--tr-purple-soft) !important; box-shadow:0 8px 20px rgba(22,27,43,.10); transform:translateY(-1px); }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-top{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-av{ width:30px; height:30px; border-radius:9px; background:linear-gradient(135deg,#7b5cf0,#3d54e0); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:.68rem; font-weight:800; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-idbox{ display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-name{ font-weight:800; font-size:.86rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-seq{ font-size:.6rem; color:var(--tr-muted); font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-grp{ margin-left:auto; font-size:.58rem; font-weight:700; color:var(--tr-muted); background:var(--tr-surface-2); border-radius:6px; padding:2px 8px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-bal{ font-size:1.28rem; font-weight:800; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-cur{ font-size:.66rem; color:var(--tr-muted); font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-sbar{ height:9px; border-radius:999px; overflow:hidden; display:flex; background:var(--tr-surface-2); margin:9px 0 6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-sbar i{ height:100%; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .op-dc-a{ background:#17a673; }
html[data-app-scope="trader"] body.tr-app--admin .op-dc-h{ background:#c07c10; }
html[data-app-scope="trader"] body.tr-app--admin .op-dc-i{ background:#7b5cf0; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-slegend{ display:flex; flex-wrap:wrap; gap:4px 12px; font-size:.62rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-slegend i{ width:7px; height:7px; border-radius:50%; display:inline-block; margin-right:4px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-grid{ display:grid; grid-template-columns:1fr 1fr; gap:9px 14px; margin-top:12px; padding-top:12px; border-top:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-grid .op-dc-lab{ display:block; font-size:.58rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); margin-bottom:2px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dcard-grid b{ font-size:.8rem; font-variant-numeric:tabular-nums; }
@media(max-width:920px){
  html[data-app-scope="trader"] body.tr-app--admin .op-dtop-row{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .op-dcards{ grid-template-columns:1fr; }
}

/* ===== Дровер детализации — DR1 (hero-баланс + вкладки) ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-dd-hero{
  border-radius:15px; padding:16px 17px; color:#fff; margin-bottom:14px;
  background:linear-gradient(135deg,#3d54e0,#5b46d8 70%,#5a49d6);
  box-shadow:0 12px 26px rgba(61,84,224,.30);
}
html[data-app-scope="trader"] body.tr-app--admin .op-dd-hero-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-cap{ font-size:.58rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; opacity:.8; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-big{ font-size:1.75rem; font-weight:800; margin:3px 0 2px; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-sub{ font-size:.72rem; opacity:.9; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-grp{ font-size:.6rem; font-weight:800; padding:3px 10px; border-radius:999px; background:rgba(255,255,255,.2); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-sbar{ height:9px; border-radius:999px; overflow:hidden; display:flex; background:rgba(255,255,255,.25); margin-top:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-sbar i{ height:100%; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-slg{ display:flex; flex-wrap:wrap; gap:5px 14px; font-size:.64rem; opacity:.94; margin-top:8px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dd-slg i{ width:8px; height:8px; border-radius:50%; display:inline-block; margin-right:5px; }
/* вкладки — сегмент-контрол на всю ширину */
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tabs{
  display:flex !important; gap:4px !important; background:var(--tr-surface-2) !important;
  border:1px solid var(--tr-line) !important; border-radius:12px !important; padding:4px !important;
  box-shadow:none !important; background-image:none !important; margin-bottom:16px !important;
}
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tab{
  flex:1 1 0 !important; display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:9px 10px !important; border:1px solid transparent !important; border-radius:9px !important;
  background:transparent !important; color:var(--tr-muted) !important;
  font-weight:700 !important; font-size:.75rem !important; cursor:pointer !important; white-space:nowrap !important;
  transition:background .16s ease, color .16s ease, box-shadow .16s ease !important;
}
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tab:hover{ color:var(--tr-text) !important; background:rgba(61,84,224,.06) !important; }
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tab.active{
  background:var(--tr-surface) !important; color:var(--tr-purple) !important; border-color:var(--tr-line) !important;
  box-shadow:0 4px 12px rgba(22,27,43,.10), 0 1px 0 rgba(255,255,255,.9) inset !important;
}
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tab-panel{ display:none; }
html[data-app-scope="trader"] body.tr-app--admin .detal-detail .drawer-tab-panel.is-active{ display:block; }

/* ===== Плитки-статы V4: иконка-чип + значение ===== */
html[data-app-scope="trader"] body.tr-app--admin .trader-stat{
  display:flex !important; gap:10px; align-items:center;
}
html[data-app-scope="trader"] body.tr-app--admin .trader-stats-grid .trader-stat{ padding:10px 12px !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat-ic{
  width:32px; height:32px; border-radius:9px; flex:none;
  display:flex; align-items:center; justify-content:center;
  background:var(--tr-surface-2); color:var(--tr-muted);
}
html[data-app-scope="trader"] body.tr-app--admin .trader-stat-ic svg{ width:17px; height:17px; fill:currentColor; stroke:none; }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat-main{ display:flex; flex-direction:column; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat--green .trader-stat-ic{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat--orange .trader-stat-ic{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat--purple .trader-stat-ic{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat--blue .trader-stat-ic{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .trader-stat--blue .trader-stat-value{ color:#2f7ad6; }

/* ===== Доходность — P3 (финансовый отчёт), светлый Aurora ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-prof-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-eyebrow{ font-size:.6rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-title{ margin:2px 0 0; font-size:1.35rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-period{ font-size:.72rem; font-weight:700; color:var(--tr-muted); background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:999px; padding:5px 12px; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-kpis{ grid-template-columns:repeat(5,1fr) !important; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-card{
  background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:16px; padding:15px; margin-bottom:14px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-prof-card-head{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-card-head h3{ margin:0; font-size:.92rem; }
/* разбивка по мерчантам */
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-row{ display:grid; grid-template-columns:20px 1fr auto; gap:11px; align-items:center; padding:9px 0; border-bottom:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-row:last-child{ border:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-idx{ color:var(--tr-muted); font-weight:800; font-size:.74rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-name{ font-weight:700; font-size:.8rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-sub{ font-size:.64rem; color:var(--tr-muted); margin:2px 0 5px; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-bar{ height:6px; border-radius:999px; background:var(--tr-surface-2); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#2bd18e,#17a673); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-lb-val{ font-weight:800; font-size:.9rem; color:var(--nb-green); font-variant-numeric:tabular-nums; }
/* таблица по суткам */
html[data-app-scope="trader"] body.tr-app--admin .op-prof-daily thead th{
  background:var(--tr-surface-2) !important; color:var(--tr-muted) !important;
  backdrop-filter:none !important; border-bottom:1px solid var(--tr-line) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-prof-daily td{ border-bottom:1px solid var(--tr-line2, #eaeef5) !important; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-daily .prof-day:hover td{ background:rgba(61,84,224,.05); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-spread{ color:var(--tr-purple); }
/* блок алертов «Заблокированные по курсу» */
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts{
  background:var(--nb-red-2) !important; border:1px solid rgba(216,76,90,.3) !important; border-radius:16px; padding:14px 15px; margin-bottom:14px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts-head{ display:flex; align-items:center; gap:9px; margin-bottom:11px; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts-head h3{ margin:0; font-size:.92rem; color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts-ic{ display:inline-flex; width:22px; height:22px; color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts-ic svg{ width:20px; height:20px; fill:currentColor; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-alerts-count{ margin-left:auto; font-size:.7rem; font-weight:800; color:var(--nb-red); background:rgba(216,76,90,.14); border-radius:999px; padding:3px 11px; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-delta{ color:var(--nb-red); font-weight:800; }
html[data-app-scope="trader"] body.tr-app--admin .op-prof-blk-count{ color:var(--nb-red); }
/* форма присетла */
html[data-app-scope="trader"] body.tr-app--admin .op-prof-settle-form{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px 14px; max-width:820px; }
@media(max-width:820px){
  html[data-app-scope="trader"] body.tr-app--admin .op-prof-kpis{ grid-template-columns:repeat(2,1fr) !important; }
  html[data-app-scope="trader"] body.tr-app--admin .op-prof-settle-form{ grid-template-columns:1fr; }
}
/* Журнал присетла — J3: таймлайн курсовой истории */
html[data-app-scope="trader"] body.tr-app--admin .op-pj-subhead{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin:2px 0 14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-subhead b{ font-size:.86rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-filter{
  border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important;
  border-radius:10px !important; padding:7px 11px !important; font-size:.74rem !important; font-weight:600;
}
html[data-app-scope="trader"] body.tr-app--admin .op-pj-tl{ position:relative; padding-left:26px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-tl::before{ content:""; position:absolute; left:9px; top:6px; bottom:6px; width:2px; background:var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-item{ position:relative; padding-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-item:last-child{ padding-bottom:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-dot{ position:absolute; left:-22px; top:12px; width:13px; height:13px; border-radius:50%; background:var(--tr-surface); border:3px solid var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-item.up .op-pj-dot{ border-color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-item.dn .op-pj-dot{ border-color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-card{ display:flex; align-items:center; gap:12px; background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:12px; padding:11px 14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-date{ font-size:.66rem; color:var(--tr-muted); font-weight:700; min-width:72px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-main{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate{ font-size:1.02rem; font-weight:800; font-variant-numeric:tabular-nums; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-sub{ font-size:.68rem; color:var(--tr-muted); margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-delta{ font-size:.76rem; font-weight:800; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-delta--up{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-delta--dn{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-first{ font-size:.68rem; font-weight:600; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-cur{ font-size:.56rem; font-weight:800; padding:2px 8px; border-radius:999px; background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-tx{ font-family:Consolas,ui-monospace,monospace; font-size:.64rem; color:var(--tr-purple); }
/* F2: форма присетла с акцентом на курс */
html[data-app-scope="trader"] body.tr-app--admin .op-pj-form{ display:grid; grid-template-columns:1fr 270px; gap:16px; margin-bottom:18px; align-items:stretch; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-form-fields{ display:grid; grid-template-columns:1fr 1fr; gap:11px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-fr--full{ grid-column:1/-1; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-fr label{ display:block; font-size:.58rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); margin-bottom:5px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-fr input,
html[data-app-scope="trader"] body.tr-app--admin .op-pj-fr select{
  width:100%; height:40px; border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important;
  border-radius:10px !important; padding:0 12px !important; font-size:.8rem !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-pj-add-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; width:100%; height:40px;
  background:var(--tr-purple) !important; color:#fff !important; border:0 !important; border-radius:10px !important;
  font-weight:700 !important; font-size:.8rem !important; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-pj-add-btn .op-svg{ display:inline-flex; width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-add-btn .op-svg svg{ width:15px; height:15px; fill:currentColor; }
/* курс-герой */
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-hero{
  background:linear-gradient(135deg,var(--tr-purple-soft),#eef1ff); border:1px solid var(--tr-purple-soft);
  border-radius:14px; padding:15px 16px; display:flex; flex-direction:column; justify-content:center;
}
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-hero > label{ font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-big{ display:flex; align-items:baseline; gap:8px; margin-top:5px; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-big input{
  flex:1; min-width:0; border:0 !important; background:transparent !important; outline:none;
  font-size:2rem !important; font-weight:800 !important; color:var(--tr-purple) !important; padding:0 !important;
  font-variant-numeric:tabular-nums; -moz-appearance:textfield;
}
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-big input::-webkit-outer-spin-button,
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-big input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-big input::placeholder{ color:rgba(61,84,224,.4); }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-unit{ font-size:.9rem; font-weight:700; color:var(--tr-purple); opacity:.7; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-pj-rate-hint{ font-size:.64rem; color:var(--tr-purple); opacity:.8; margin-top:8px; }
/* тёмная тема: карточка курса присетла имела светлый градиент (#eef1ff) — на графит */
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .op-pj-rate-hero{
  background:linear-gradient(135deg, rgba(91,157,255,.16), var(--tr-surface-2));
  border-color:rgba(91,157,255,.24);
}
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .op-prof-daily td{
  border-bottom-color:var(--tr-line) !important;
}
@media(max-width:760px){
  html[data-app-scope="trader"] body.tr-app--admin .op-pj-form{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .op-pj-form-fields{ grid-template-columns:1fr; }
}

/* ===== Депозиты — DP1 (дашборд движения средств) ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-dep-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-eyebrow{ font-size:.6rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-title{ margin:2px 0 0; font-size:1.35rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-add{
  display:inline-flex; align-items:center; gap:7px; background:var(--tr-purple) !important; color:#fff !important;
  border:0 !important; border-radius:11px !important; padding:9px 15px !important; font-weight:700 !important; font-size:.78rem !important; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dep-add .op-svg{ display:inline-flex; width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-add .op-svg svg{ width:15px; height:15px; fill:currentColor; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-kpis{ grid-template-columns:repeat(5,1fr) !important; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-card{ background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:16px; padding:15px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-card.op-dep-ledger{ padding:0; overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-card-head{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-card-head h3{ margin:0; font-size:.92rem; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-legend{ display:flex; gap:14px; font-size:.66rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-legend i{ width:10px; height:9px; border-radius:2px; display:inline-block; margin-right:5px; vertical-align:middle; }
/* график приток/отток */
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bars{ display:flex; align-items:flex-end; gap:5px; height:150px; padding-top:6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bcol{ flex:1; display:flex; flex-direction:column; justify-content:flex-end; align-items:center; height:100%; gap:3px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bstack{ width:100%; max-width:22px; display:flex; flex-direction:column; justify-content:flex-end; height:100%; gap:2px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bseg{ width:100%; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bseg--dep{ background:var(--nb-green); border-radius:3px 3px 0 0; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bseg--wd{ background:var(--nb-red); border-radius:0 0 3px 3px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-bx{ font-size:.52rem; color:var(--tr-muted); }
/* тулбар ленты */
html[data-app-scope="trader"] body.tr-app--admin .op-dep-toolbar{ display:flex; align-items:center; gap:9px; flex-wrap:wrap; padding:11px 13px; border-bottom:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-tb-spacer{ flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-chips{ display:inline-flex; gap:5px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-chip{
  border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-muted);
  font-size:.73rem; font-weight:700; padding:6px 13px; border-radius:999px; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dep-chip.on{ background:var(--tr-purple-soft); color:var(--tr-purple); border-color:transparent; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-select,
html[data-app-scope="trader"] body.tr-app--admin .op-dep-search{
  border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important;
  border-radius:10px !important; padding:7px 11px !important; font-size:.76rem !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dep-search{ min-width:190px; }
/* прогресс подтверждений в ленте */
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf{ display:inline-flex; align-items:center; gap:6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf-bar{ width:44px; height:5px; border-radius:999px; background:var(--tr-surface-2); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#f6c445,#e0920f); }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf-bar i.done{ background:linear-gradient(90deg,#2bd18e,#17a673); }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf-txt{ font-size:.6rem; font-weight:700; color:var(--tr-muted); font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-dep-conf-txt--wait{ color:var(--nb-amber); }
@media(max-width:820px){ html[data-app-scope="trader"] body.tr-app--admin .op-dep-kpis{ grid-template-columns:repeat(2,1fr) !important; } }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-reasons{ display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rrow{
  display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center;
  padding:9px 0; border-bottom:1px solid var(--tr-line);
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rrow:first-child{ padding-top:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rname{ font-size:.78rem; font-weight:700; margin-bottom:6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rbar{ height:6px; border-radius:999px; background:var(--tr-surface); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rbar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#e4677a,#d84c5a); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rcount{ font-size:1rem; font-weight:800; color:var(--nb-red); font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rempty{ font-size:.78rem; color:var(--tr-muted); margin:6px 0 0; }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rfoot{
  display:flex; justify-content:space-between; align-items:baseline;
  margin-top:12px; padding-top:11px; border-top:1px solid var(--tr-line); font-size:.78rem;
}
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rfoot span{ color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-tf-rfoot b{ font-size:1.05rem; color:var(--nb-green); font-variant-numeric:tabular-nums; }
@media(max-width:820px){ html[data-app-scope="trader"] body.tr-app--admin .op-tf-grid{ grid-template-columns:1fr; } }

/* кнопка перенаправления колбеков в футере дровера ордера */
html[data-app-scope="trader"] body.tr-app--admin .op-order-foot{
  display:flex; align-items:center; gap:9px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-reforward-btn{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important;
  color:var(--tr-text) !important; border-radius:11px !important;
  padding:9px 15px !important; font-weight:700 !important; font-size:.74rem !important; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-reforward-btn:hover{
  color:var(--tr-purple) !important; border-color:var(--tr-purple-soft) !important; background:var(--tr-purple-soft) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-reforward-btn:disabled{ opacity:.55; cursor:default; }

/* цветные иконки-действия в таблицах админки */
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--view{
  color:var(--tr-purple) !important; border-color:var(--tr-purple-soft) !important; background:var(--tr-purple-soft) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--view:hover{
  background:var(--tr-purple) !important; color:#fff !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--callback{
  color:var(--nb-green) !important; border-color:var(--nb-green-2) !important; background:var(--nb-green-2) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--callback:hover{
  background:var(--nb-green) !important; color:#fff !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--receipt{
  color:var(--nb-amber) !important; border-color:var(--nb-amber-2) !important; background:var(--nb-amber-2) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--receipt:hover{
  background:var(--nb-amber) !important; color:#fff !important;
}

/* ===== Дровер диспута (DV1): фиолетовая hero + доказательства + решение ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-dsp{ display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-hero{
  border-radius:14px; padding:15px 17px; color:#fff; position:relative; overflow:hidden; margin-bottom:14px;
  background:linear-gradient(135deg,#7b5cf0,#5b46d8 70%,#3d54e0);
  box-shadow:0 12px 26px rgba(123,92,240,.32);
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-hero--green{ background:linear-gradient(135deg,#2bd18e,#17a673 70%,#0f9268); box-shadow:0 12px 26px rgba(23,166,115,.3); }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-hero--red{ background:linear-gradient(135deg,#e4677a,#d84c5a 70%,#c2404d); box-shadow:0 12px 26px rgba(216,76,90,.3); }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-hero--amber{ background:linear-gradient(135deg,#f6c445,#e0920f 75%,#c07c10); box-shadow:0 12px 26px rgba(224,146,15,.3); }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-cap{ font-size:.55rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; opacity:.72; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-big{ font-size:1.6rem; font-weight:800; margin:3px 0 2px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-sub{ font-size:.7rem; opacity:.85; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-st{
  position:absolute; right:16px; top:15px; font-size:.6rem; font-weight:700;
  padding:3px 11px; border-radius:999px; background:rgba(255,255,255,.18);
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-facts{
  display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-bottom:12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-fact{ background:var(--tr-surface-2); border-radius:11px; padding:10px 13px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-l{
  font-size:.54rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--tr-muted); margin-bottom:5px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-v{ font-size:.8rem; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-comment{
  background:var(--nb-amber-2); border-radius:11px; padding:10px 13px; font-size:.72rem; color:#7d5407; line-height:1.45; margin-bottom:12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-notice{
  background:var(--nb-violet-2); border-radius:11px; padding:9px 13px; font-size:.7rem; color:var(--nb-violet); font-weight:600; margin-bottom:12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-doc{
  border:1px solid var(--tr-line); border-radius:12px; overflow:hidden; margin-bottom:12px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-doc-h{
  display:flex; align-items:center; gap:8px; padding:9px 12px; background:var(--tr-surface-2); font-size:.7rem; font-weight:700; color:var(--tr-text);
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-tag{
  margin-left:auto; font-size:.56rem; font-weight:800; padding:1px 9px; border-radius:999px;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-tag.m{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-tag.t{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-doc-img{ display:block; max-width:100%; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-doc-view{ width:100%; height:52vh; border:0; display:block; }
/* R2: hero-сравнение «ожидалось → получено» во вкладке «Квитанция» */
html[data-app-scope="trader"] body.tr-app--admin .op-rc-hero{
  position:relative; border-radius:16px; padding:16px 18px; color:#fff; margin-bottom:14px;
  box-shadow:0 10px 24px rgba(22,27,43,.16);
}
html[data-app-scope="trader"] body.tr-app--admin .op-rc-hero--match{ background:linear-gradient(135deg,#2bd18e,#17a673 70%,#0f9268); }
html[data-app-scope="trader"] body.tr-app--admin .op-rc-hero--mis{ background:linear-gradient(135deg,#e6a53a,#c07c10 72%,#a1670a); }
html[data-app-scope="trader"] body.tr-app--admin .op-rc-st{
  position:absolute; top:14px; right:16px; font-size:.56rem; font-weight:800; letter-spacing:.09em;
  padding:3px 10px; border-radius:999px; background:rgba(255,255,255,.22);
}
html[data-app-scope="trader"] body.tr-app--admin .op-rc-cap{ font-size:.6rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; opacity:.78; }
html[data-app-scope="trader"] body.tr-app--admin .op-rc-big{ font-size:1.55rem; font-weight:800; margin:4px 0 6px; letter-spacing:-.01em; }
html[data-app-scope="trader"] body.tr-app--admin .op-rc-sub{ font-size:.7rem; opacity:.92; }
html[data-app-scope="trader"] body.tr-app--admin .op-rc-sub .tbl-card{ color:#fff; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-decide{ display:flex; gap:9px; margin-top:4px; }
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-btn-ok{
  flex:1; border:0 !important; border-radius:11px !important; padding:12px !important; font-weight:800 !important; font-size:.78rem !important; color:#fff !important; cursor:pointer;
  background:linear-gradient(180deg,#2bd18e,#17a673) !important; box-shadow:0 6px 14px rgba(23,166,115,.32) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-btn-no{
  flex:1; border:0 !important; border-radius:11px !important; padding:12px !important; font-weight:800 !important; font-size:.78rem !important; color:#fff !important; cursor:pointer;
  background:linear-gradient(180deg,#e4677a,#d84c5a) !important; box-shadow:0 6px 14px rgba(216,76,90,.3) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-btn-ok:hover,
html[data-app-scope="trader"] body.tr-app--admin .op-dsp-btn-no:hover{ transform:translateY(-1px); }

/* кнопки действий в таблице диспутов */
html[data-app-scope="trader"] body.tr-app--admin .op-appeal-btn{
  border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important;
  color:var(--tr-text) !important; border-radius:10px !important;
  padding:7px 15px !important; font-weight:700 !important; font-size:.72rem !important; cursor:pointer;
}
html[data-app-scope="trader"] body.tr-app--admin .op-appeal-btn:hover{
  color:var(--tr-purple) !important; border-color:var(--tr-purple-soft) !important; background:var(--tr-purple-soft) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-appeal-btn--decide{
  border:0 !important; color:#fff !important;
  background:linear-gradient(180deg,#5b71ee,#3d54e0) !important;
  box-shadow:0 5px 12px rgba(61,84,224,.3), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .op-appeal-btn--decide:hover{
  color:#fff !important; background:linear-gradient(180deg,#5b71ee,#3d54e0) !important; transform:translateY(-1px);
}

/* кнопка «разобрать спор» в таблице диспутов — фиолетовая, иконка-весы обводкой */
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--dispute{
  color:var(--nb-violet) !important; border-color:var(--nb-violet-2) !important; background:var(--nb-violet-2) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .admin-data-table .icon-btn--dispute:hover{
  background:var(--nb-violet) !important; color:#fff !important;
}
html[data-app-scope="trader"] body.tr-app--admin .icon-btn--dispute .op-svg svg{
  fill:none !important; stroke:currentColor !important;
}

/* цвет hero-плашки ордера по статусу (как в дровере диспута) */
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--green{
  background:linear-gradient(135deg,#2bd18e,#17a673 70%,#0f9268) !important;
  box-shadow:0 12px 26px rgba(23,166,115,.3) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--red{
  background:linear-gradient(135deg,#e4677a,#d84c5a 70%,#c2404d) !important;
  box-shadow:0 12px 26px rgba(216,76,90,.3) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--amber{
  background:linear-gradient(135deg,#f6c445,#e0920f 75%,#c07c10) !important;
  box-shadow:0 12px 26px rgba(224,146,15,.3) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--violet{
  background:linear-gradient(135deg,#7b5cf0,#5b46d8 70%,#3d54e0) !important;
  box-shadow:0 12px 26px rgba(123,92,240,.32) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--slate{
  background:linear-gradient(135deg,#8a94ab,#68708a 70%,#525a72) !important;
  box-shadow:0 12px 26px rgba(104,112,138,.3) !important;
}
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero--blue{
  background:linear-gradient(135deg,#3d54e0,#5b46d8 58%,#7b5cf0) !important;
  box-shadow:0 12px 26px rgba(61,84,224,.32) !important;
}
/* статус-пилюля в hero — на белой полупрозрачной подложке, читаемо на любом цвете */
html[data-app-scope="trader"] body.tr-app--admin .order-detail-hero .order-detail-status{
  background:rgba(255,255,255,.2) !important; color:#fff !important; border:0 !important;
}

/* ===== Выплаты: блок «Квитанции на проверке» (PV1, янтарный акцент) ===== */
html[data-app-scope="trader"] body.tr-app--admin .op-rev{
  border:1px solid var(--nb-amber) !important; border-radius:14px; overflow:hidden; margin-bottom:12px; background:var(--tr-surface);
}
html[data-app-scope="trader"] body.tr-app--admin .op-rev-head{
  display:flex; align-items:center; gap:10px; padding:12px 15px;
  background:linear-gradient(90deg,var(--nb-amber-2),transparent);
}
html[data-app-scope="trader"] body.tr-app--admin .op-rev-ic{
  width:30px; height:30px; border-radius:9px; background:var(--nb-amber-2); color:var(--nb-amber);
  display:grid; place-items:center; font-size:.85rem;
}
html[data-app-scope="trader"] body.tr-app--admin .op-rev-head b{ font-size:.86rem; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-rev-badge{
  margin-left:auto; background:var(--nb-amber); color:#fff; border-radius:999px; padding:2px 11px; font-size:.62rem; font-weight:800;
}
html[data-app-scope="trader"] body.tr-app--admin .op-conf-diff{
  font-size:.58rem; font-weight:800; padding:1px 8px; border-radius:999px; margin-left:4px; white-space:nowrap;
}
html[data-app-scope="trader"] body.tr-app--admin .op-conf-diff--ok{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-conf-diff--bad{ background:var(--nb-red-2); color:var(--nb-red); }

/* ===== Скруглённый выпадающий список нативных select (customizable select).
   Работает в современных Chromium; в браузерах без поддержки правило игнорируется
   и список остаётся стандартным — безопасный прогрессив-энхансмент. ===== */
html[data-app-scope="trader"] body.tr-app--admin select{
  appearance:base-select;
  display:inline-flex; align-items:center; justify-content:space-between; gap:8px;
  line-height:normal;
}
html[data-app-scope="trader"] body.tr-app--admin select::selectedcontent{
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
html[data-app-scope="trader"] body.tr-app--admin select::picker-icon{ flex:none; }
html[data-app-scope="trader"] body.tr-app--admin select::picker(select){
  appearance:base-select;
  border:1px solid var(--tr-line);
  border-radius:12px;
  background:var(--tr-surface);
  box-shadow:0 16px 34px rgba(22,27,43,.16);
  padding:5px;
  margin-top:5px;
}
html[data-app-scope="trader"] body.tr-app--admin select option{
  border-radius:9px;
  padding:9px 12px;
  font-size:.8rem;
  color:var(--tr-text);
  background:transparent;
}
html[data-app-scope="trader"] body.tr-app--admin select option:hover,
html[data-app-scope="trader"] body.tr-app--admin select option:focus{
  background:var(--tr-purple-soft);
  color:var(--tr-purple);
}
html[data-app-scope="trader"] body.tr-app--admin select option:checked{
  background:var(--tr-purple);
  color:#fff;
}
html[data-app-scope="trader"] body.tr-app--admin select::picker-icon{ color:var(--tr-muted); transition:transform .18s ease; }
html[data-app-scope="trader"] body.tr-app--admin select:open::picker-icon{ transform:rotate(180deg); }

/* ===== Крипто-платежи — CR1 (казна: карточки балансов + донат + мерчанты) ===== */
html[data-app-scope="trader"] body.tr-app--admin .crypto-cr1-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin:6px 0 14px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-cards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(185px,1fr)); gap:11px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal{ background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:14px; padding:13px 14px; border-top:3px solid var(--tr-line) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--usdt{ border-top-color:#17a673 !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--usdc{ border-top-color:#2f7ad6 !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--btc{ border-top-color:#e08a1e !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--eth{ border-top-color:#7b5cf0 !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--trx{ border-top-color:#d84c5a !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-asset{ display:inline-flex; align-items:center; gap:7px; font-weight:800; font-size:.78rem; margin-bottom:7px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-ic{ width:22px; height:22px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:.66rem; font-weight:800; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-ic svg{ width:14px; height:14px; fill:currentColor; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--usdt .crypto-bal-ic{ background:#17a673; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--usdc .crypto-bal-ic{ background:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--btc .crypto-bal-ic{ background:#e08a1e; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--eth .crypto-bal-ic{ background:#7b5cf0; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--trx .crypto-bal-ic{ background:#d84c5a; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal--def .crypto-bal-ic{ background:#94a3b8; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-v{ font-size:1.15rem; font-weight:800; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-s{ font-size:.62rem; color:var(--tr-muted); margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-cr1-grid{ display:grid; grid-template-columns:320px 1fr; gap:14px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-cr1-grid .payin-table-wrap{ overflow-x:auto; }
@media(max-width:900px){
  html[data-app-scope="trader"] body.tr-app--admin .crypto-bal-cards{ grid-template-columns:repeat(2,1fr); }
  html[data-app-scope="trader"] body.tr-app--admin .crypto-cr1-grid{ grid-template-columns:1fr; }
}

/* Читаемые бейджи активов в светлой теме (базовые цвета — из тёмной темы, низкий контраст) */
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset{ background:var(--tr-surface-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-symbol{ color:var(--tr-text) !important; font-weight:800 !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-network{ color:var(--tr-muted) !important; font-weight:700 !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdt{ background:var(--nb-green-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdt .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdt .crypto-asset-network{ color:var(--nb-green) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdc{ background:#e4f0fb !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdc .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdc .crypto-asset-network{ color:#2f7ad6 !important; }
/* тёмная: USDC-чип имел светлый хардкод #e4f0fb → синий тинт как у остальных */
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .crypto-asset--usdc{ background:rgba(91,157,255,.15) !important; }
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .crypto-asset--usdc .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .crypto-asset--usdc .crypto-asset-network{ color:#7ab0ff !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--btc{ background:var(--nb-amber-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--btc .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--btc .crypto-asset-network{ color:var(--nb-amber) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--eth{ background:var(--nb-violet-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--eth .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--eth .crypto-asset-network{ color:var(--nb-violet) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--trx{ background:var(--nb-red-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--trx .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--trx .crypto-asset-network{ color:var(--nb-red) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--bnb{ background:var(--nb-amber-2) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--bnb .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--bnb .crypto-asset-network,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--doge .crypto-asset-symbol,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--doge .crypto-asset-network{ color:var(--nb-amber) !important; }
/* кружок-значок валюты в бейдже */
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset{ display:inline-flex !important; align-items:center; gap:6px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-ic{ width:16px; height:16px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; color:#fff; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-ic svg{ width:11px; height:11px; fill:currentColor; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-ic .crypto-bal-ic-txt{ font-size:.5rem; font-weight:800; line-height:1; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdt .crypto-asset-ic{ background:#17a673; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--usdc .crypto-asset-ic{ background:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--btc .crypto-asset-ic{ background:#e08a1e; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--eth .crypto-asset-ic{ background:#7b5cf0; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--trx .crypto-asset-ic{ background:#d84c5a; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--bnb .crypto-asset-ic,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--doge .crypto-asset-ic{ background:#e08a1e; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--ltc .crypto-asset-ic{ background:#546e9b; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--bch .crypto-asset-ic{ background:#17a673; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset--default .crypto-asset-ic{ background:#94a3b8; }

/* ===== Пул адресов — PL1 (панель генерации + фильтры + таблица) ===== */
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-panel .crypto-pool-add{ background:var(--tr-surface-2) !important; border:1px solid var(--tr-line) !important; border-radius:14px !important; padding:15px !important; margin-bottom:14px !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-genrow{ display:grid; grid-template-columns:minmax(160px,1fr) minmax(210px,1.7fr) auto auto; gap:12px; align-items:end; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-fr label{ display:block; font-size:.58rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); margin-bottom:5px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-fr input,
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-fr select{ width:100%; height:40px; border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important; border-radius:10px !important; padding:0 12px !important; font-size:.8rem !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-seg{ display:inline-flex; border:1px solid var(--tr-line); border-radius:10px; overflow:hidden; height:40px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-count{ border:0; background:var(--tr-surface); color:var(--tr-muted); font:inherit; font-size:.76rem; font-weight:700; padding:0 14px; cursor:pointer; border-right:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-count:last-child{ border-right:0; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-count.active{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-btn{ display:inline-flex; align-items:center; gap:7px; height:40px; padding:0 18px; border:0 !important; border-radius:10px !important; background:var(--tr-purple) !important; color:#fff !important; font-weight:700 !important; font-size:.8rem !important; cursor:pointer; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-btn .op-svg,
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-ghost .op-svg{ display:inline-flex; width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-btn .op-svg svg,
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-ghost .op-svg svg{ width:15px; height:15px; fill:currentColor; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-genfoot{ display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-top:12px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-ghost{ display:inline-flex; align-items:center; gap:7px; height:36px; padding:0 14px; border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important; border-radius:10px !important; font-weight:700 !important; font-size:.76rem !important; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-gen-ghost:hover{ border-color:var(--tr-purple-soft) !important; color:var(--tr-purple) !important; background:var(--tr-purple-soft) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-genfoot .crypto-add-hint{ font-size:.68rem; color:var(--tr-muted); margin:auto 0 auto 4px !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-assetchips{ display:flex !important; flex-wrap:wrap; gap:7px; margin-bottom:11px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-tbl-head{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:11px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-search-inp{ flex:1; min-width:180px; border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important; border-radius:10px !important; padding:8px 12px !important; font-size:.78rem !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-count{ font-size:.72rem; white-space:nowrap; }
/* фильтры-чипы (читаемые в светлой теме) */
html[data-app-scope="trader"] body.tr-app--admin .crypto-status-filters{ display:inline-flex; gap:6px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-status-chip{ border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-muted) !important; font-size:.73rem !important; font-weight:700 !important; padding:6px 13px !important; border-radius:999px !important; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-status-chip.active{ background:var(--tr-purple-soft) !important; color:var(--tr-purple) !important; border-color:transparent !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-chip{ display:inline-flex !important; align-items:center; justify-content:flex-start !important; gap:7px; flex:0 0 auto !important; width:auto !important; border:1px solid var(--tr-line) !important; background:var(--tr-surface) !important; color:var(--tr-text) !important; border-radius:10px !important; padding:6px 11px !important; font-size:.7rem !important; font-weight:700 !important; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-chip.active{ border-color:transparent !important; background:var(--tr-purple-soft) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-chip-meta{ color:var(--tr-muted) !important; font-weight:800; margin-left:2px; white-space:nowrap; }
/* контейнеры фильтров активов (Пул/Клиенты/Депозиты) — flex-wrap вместо тесного grid */
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-filters,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-filters--grid,
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-filters--inline{ display:flex !important; flex-wrap:wrap !important; gap:7px !important; grid-template-columns:none !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-asset-chip{ white-space:nowrap; }
@media(max-width:760px){ html[data-app-scope="trader"] body.tr-app--admin .crypto-pool-genrow{ grid-template-columns:1fr; } }

/* ==================== Курсы и провайдеры — RP1 «Курс-пульт» ==================== */
html[data-app-scope="trader"] body.tr-app--admin .rt-hero{ display:grid; grid-template-columns:minmax(280px,360px) 1fr; gap:14px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-rate{ background:linear-gradient(135deg,#3d54e0,#5b6ef0); color:#fff; border-radius:16px; padding:18px 20px; position:relative; overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .rt-rate .rt-lab{ font-size:.6rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; opacity:.85; }
html[data-app-scope="trader"] body.tr-app--admin .rt-big{ font-size:3rem; font-weight:800; line-height:1; margin:12px 0 4px; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .rt-big small{ font-size:1rem; font-weight:700; opacity:.8; }
html[data-app-scope="trader"] body.tr-app--admin .rt-meta{ font-size:.72rem; opacity:.92; display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .rt-meta .rt-up{ color:#8affce; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-meta .rt-dn{ color:#ffb9c2; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-auto{ position:absolute; top:16px; right:16px; font-size:.6rem; font-weight:800; background:rgba(255,255,255,.2); padding:3px 9px; border-radius:999px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-spark{ position:absolute; left:0; right:0; bottom:0; height:46px; opacity:.5; }
html[data-app-scope="trader"] body.tr-app--admin .rt-ctrl{ display:flex; flex-direction:column; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-ctrl-row{ display:flex; align-items:center; gap:12px; padding:13px 15px; background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:13px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-ic{ width:36px; height:36px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .rt-ic .op-svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-ic.g{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .rt-ic.p{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .rt-tx{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .rt-tx b{ font-size:.82rem; font-weight:800; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .rt-tx s{ display:block; color:var(--tr-muted); font-size:.66rem; text-decoration:none; margin-top:1px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-tgl{ width:44px; height:25px; border-radius:999px; background:var(--nb-green); position:relative; cursor:pointer; flex:none; border:0; padding:0; }
html[data-app-scope="trader"] body.tr-app--admin .rt-tgl::after{ content:""; position:absolute; top:3px; left:22px; width:19px; height:19px; border-radius:50%; background:#fff; transition:left .15s; }
html[data-app-scope="trader"] body.tr-app--admin .rt-tgl.off{ background:var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .rt-tgl.off::after{ left:3px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-man-input{ border:1px solid var(--tr-line); background:var(--tr-surface-2); border-radius:9px; padding:8px 11px; font:inherit; font-weight:800; width:96px; font-variant-numeric:tabular-nums; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .rt-grid2{ display:grid; grid-template-columns:1.3fr 1fr; gap:14px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-flag{ width:18px; height:18px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:.6rem; flex:none; color:#fff; font-weight:800; }
html[data-app-scope="trader"] body.tr-app--admin .rt-flag.f-uah{ background:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .rt-flag.f-try{ background:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .rt-flag.f-ars{ background:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .rt-cur{ display:inline-flex; align-items:center; gap:7px; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-view{ border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-purple); font-weight:800; font-size:.6rem; padding:4px 9px; border-radius:8px; cursor:pointer; display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .rt-view:hover{ background:var(--tr-purple-soft); border-color:transparent; }
html[data-app-scope="trader"] body.tr-app--admin .rt-view .rt-chev{ transition:transform .15s; display:inline-block; }
html[data-app-scope="trader"] body.tr-app--admin .rt-view.open{ background:var(--tr-purple-soft); border-color:transparent; }
html[data-app-scope="trader"] body.tr-app--admin .rt-view.open .rt-chev{ transform:rotate(180deg); }
html[data-app-scope="trader"] body.tr-app--admin tr.rt-detail>td{ padding:0; }
html[data-app-scope="trader"] body.tr-app--admin .rt-detail-inner{ display:none; padding:14px; background:var(--tr-surface-2); }
html[data-app-scope="trader"] body.tr-app--admin tr.rt-detail.show .rt-detail-inner{ display:block; }
html[data-app-scope="trader"] body.tr-app--admin .rt-detail-grid{ display:grid; grid-template-columns:1.2fr .9fr; gap:16px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dv-head{ font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); margin-bottom:8px; display:flex; align-items:center; gap:7px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dot{ width:7px; height:7px; border-radius:50%; display:inline-block; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dot.g{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .rt-dot.a{ background:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-row{ display:grid; grid-template-columns:auto 1fr auto auto; gap:10px; align-items:center; padding:7px 0; border-bottom:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-row:last-child{ border:0; }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-row.used{ background:var(--nb-green-2); margin:0 -8px; padding:7px 8px; border-radius:8px; border:0; }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-mn{ width:24px; height:24px; border-radius:7px; background:var(--tr-purple-soft); color:var(--tr-purple); font-weight:800; font-size:.62rem; display:inline-flex; align-items:center; justify-content:center; }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-name{ font-weight:700; font-size:.72rem; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-name s{ display:block; color:var(--tr-muted); font-size:.58rem; text-decoration:none; font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-price{ font-weight:800; font-variant-numeric:tabular-nums; font-size:.82rem; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .rt-p2p-lim{ font-size:.6rem; color:var(--tr-muted); text-align:right; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dv-stat{ display:flex; gap:14px; flex-wrap:wrap; margin-top:10px; padding-top:10px; border-top:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .rt-dv-stat div span{ font-size:.54rem; color:var(--tr-muted); text-transform:uppercase; font-weight:800; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dv-stat div b{ font-size:.86rem; font-variant-numeric:tabular-nums; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .rt-hist-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; flex-wrap:wrap; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-up{ color:var(--nb-green); font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-dn{ color:var(--nb-red); font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-flat{ color:var(--tr-muted); font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .rt-badge{ font-size:.58rem; font-weight:800; padding:2px 8px; border-radius:999px; display:inline-block; }
html[data-app-scope="trader"] body.tr-app--admin .rt-badge.now{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .rt-badge.auto{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .rt-badge.manual{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .rt-prov{ display:inline-flex; align-items:center; gap:7px; font-size:.7rem; font-weight:700; color:var(--tr-muted); background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:999px; padding:5px 12px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-prov .rt-live{ width:7px; height:7px; border-radius:50%; background:var(--nb-green); box-shadow:0 0 0 3px var(--nb-green-2); }
html[data-app-scope="trader"] body.tr-app--admin .rt-pairbar{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:14px; padding:12px 15px; background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:13px; }
html[data-app-scope="trader"] body.tr-app--admin .rt-pairbar-lab{ font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .rt-pair-select{ border:1px solid var(--tr-line); background:var(--tr-surface-2); border-radius:10px; padding:9px 14px; font:inherit; font-weight:800; font-size:.9rem; color:var(--tr-text); min-width:230px; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .rt-pair-select:focus{ outline:none; border-color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .rt-pair-detail{ padding:6px 2px; }
@media(max-width:900px){
  html[data-app-scope="trader"] body.tr-app--admin .rt-hero{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .rt-grid2{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .rt-detail-grid{ grid-template-columns:1fr; }
}

/* ==================== Крипто-вкладки — плашки-карточки с иконками ==================== */
html[data-app-scope="trader"] body.tr-app--admin .crypto-tabs{ display:flex !important; flex-wrap:wrap; gap:10px !important; border:0 !important; background:transparent !important; padding:0 !important; margin-bottom:16px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile{ display:inline-flex !important; align-items:center; gap:11px; padding:11px 16px 11px 11px !important; background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:14px !important; cursor:pointer; transition:border-color .15s, box-shadow .15s, transform .15s, background .15s; box-shadow:0 1px 2px rgba(22,27,43,.04); flex:1 1 180px; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile .crypto-tab-body{ flex:1; justify-content:space-between; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile:hover{ border-color:var(--acc) !important; transform:translateY(-1px); box-shadow:0 7px 18px rgba(22,27,43,.08); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-ic{ width:36px; height:36px; border-radius:11px; display:inline-flex; align-items:center; justify-content:center; flex:none; background:var(--acc-soft); color:var(--acc); transition:background .15s, color .15s; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-ic .op-svg{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-ic .op-svg svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-body{ display:inline-flex; align-items:center; gap:9px; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab-label{ font-size:.84rem; font-weight:800; color:var(--tr-text); letter-spacing:-.01em; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile .crypto-tab-count{ font-size:.62rem; font-weight:800; min-width:20px; text-align:center; padding:2px 7px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); }
/* акценты по вкладкам */
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.ct-purple{ --acc:var(--tr-purple); --acc-soft:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.ct-blue{ --acc:#2f7ad6; --acc-soft:#e4f0fb; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.ct-green{ --acc:var(--nb-green); --acc-soft:var(--nb-green-2); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.ct-amber{ --acc:var(--nb-amber); --acc-soft:var(--nb-amber-2); }
/* тёмная: у ct-blue был светлый --acc-soft (#e4f0fb) — на синий тинт как у green/amber */
html[data-app-scope="trader"] body.tr-app--admin[data-theme="dark"] .crypto-tab--tile.ct-blue{ --acc:#7ab0ff; --acc-soft:rgba(91,157,255,.16); }
/* активная плашка */
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.active{ border-color:var(--acc) !important; background:var(--acc-soft) !important; box-shadow:0 8px 20px rgba(22,27,43,.10); }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.active .crypto-tab-ic{ background:var(--acc); color:#fff; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.active .crypto-tab-label{ color:var(--acc) !important; }
html[data-app-scope="trader"] body.tr-app--admin .crypto-tab--tile.active .crypto-tab-count{ background:var(--tr-surface); color:var(--acc); }

/* ==================== Трейдеры — TR1 «Операционная таблица» ==================== */
html[data-app-scope="trader"] body.tr-app--admin .trd-toolbar{ align-items:center; gap:12px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .trd-chips{ display:inline-flex; flex-wrap:wrap; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .trd-chip{ border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-muted); font-size:.73rem; font-weight:700; padding:6px 12px; border-radius:999px; cursor:pointer; display:inline-flex; align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .trd-chip:hover{ border-color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trd-chip.active{ background:var(--tr-purple-soft); color:var(--tr-purple); border-color:transparent; }
html[data-app-scope="trader"] body.tr-app--admin .trd-chip .c{ font-size:.6rem; background:var(--tr-surface-2); border-radius:999px; padding:1px 7px; margin-left:6px; }
html[data-app-scope="trader"] body.tr-app--admin .trd-chip.active .c{ background:#fff; }
html[data-app-scope="trader"] body.tr-app--admin .trd-cell{ display:flex; align-items:center; gap:10px; }
html[data-app-scope="trader"] body.tr-app--admin .trd-av{ width:36px; height:36px; border-radius:11px; display:grid; place-items:center; font-weight:800; font-size:.74rem; flex:none; background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trd-av--p{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trd-av--g{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trd-av--b{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .trd-av--v{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .trd-av--a{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trd-name strong{ font-weight:700; font-size:.8rem; color:var(--tr-text); display:block; }
html[data-app-scope="trader"] body.tr-app--admin .trd-name s{ display:block; color:var(--tr-muted); font-size:.64rem; text-decoration:none; font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .trd-gb{ font-size:.62rem; font-weight:800; padding:3px 10px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .trd-gb--vip{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .trd-gb--std{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trd-gb--tr{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .trd-pct{ font-weight:800; font-variant-numeric:tabular-nums; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .trd-vol{ min-width:110px; }
html[data-app-scope="trader"] body.tr-app--admin .trd-vol-bar{ height:6px; border-radius:999px; background:var(--tr-surface-2); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .trd-vol-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#5b6ef0,#3d54e0); }
html[data-app-scope="trader"] body.tr-app--admin .trd-vol-num{ font-size:.68rem; font-weight:700; color:var(--tr-muted); margin-top:4px; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .trd-succ--g{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trd-succ--a{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trd-succ--r{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .trd-st{ font-size:.6rem; font-weight:800; padding:3px 10px; border-radius:999px; display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .trd-st::before{ content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }
html[data-app-scope="trader"] body.tr-app--admin .trd-st--ok{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trd-st--lim{ background:var(--nb-red-2); color:var(--nb-red); }

/* ==================== Дровер трейдера — DT2 «Боковая навигация» ==================== */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-dwr-split{ display:grid; grid-template-columns:196px minmax(0,1fr); gap:16px; align-items:start; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-dwr-split > .drawer-tab-panels{ min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tab-panel{ min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side{ display:flex !important; flex-direction:column !important; gap:4px !important; background:transparent !important; border:0 !important; padding:0 !important; margin:0 !important; flex-wrap:nowrap !important; position:sticky; top:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .drawer-tab{ display:flex !important; align-items:center; gap:10px; width:100% !important; justify-content:flex-start !important; text-align:left; padding:9px 11px !important; border-radius:10px !important; border:0 !important; background:transparent !important; box-shadow:none !important; color:var(--tr-muted); font-weight:700; font-size:.78rem; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .trd-snav-ic{ width:28px; height:28px; border-radius:8px; background:var(--tr-surface-2); color:var(--tr-muted); display:grid; place-items:center; flex:none; transition:background .15s, color .15s; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .trd-snav-ic svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .trd-snav-lb{ line-height:1.2; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .drawer-tab:hover{ background:var(--tr-surface-2) !important; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .drawer-tab.active{ background:var(--tr-purple-soft) !important; color:var(--tr-purple) !important; box-shadow:none !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .drawer-tab.active .trd-snav-ic{ background:var(--tr-surface); color:var(--tr-purple); }
@media(max-width:820px){
  html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-dwr-split{ grid-template-columns:1fr; }
  html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side{ flex-direction:row !important; overflow-x:auto; position:static; padding-bottom:4px !important; }
  html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-tabs--side .drawer-tab{ width:auto !important; white-space:nowrap; }
}

/* Настройки трейдера — цветные плашки разрешений */
html[data-app-scope="trader"] body.tr-app--admin .perm-row--green{ --pt:var(--nb-green); --pt-soft:var(--nb-green-2); }
html[data-app-scope="trader"] body.tr-app--admin .perm-row--blue{ --pt:#2f7ad6; --pt-soft:#e4f0fb; }
html[data-app-scope="trader"] body.tr-app--admin .perm-row--amber{ --pt:var(--nb-amber); --pt-soft:var(--nb-amber-2); }
html[data-app-scope="trader"] body.tr-app--admin .perm-row--purple{ --pt:var(--tr-purple); --pt-soft:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .perm-row--violet{ --pt:var(--nb-violet); --pt-soft:var(--nb-violet-2); }
html[data-app-scope="trader"] body.tr-app--admin .perm-row--red{ --pt:var(--nb-red); --pt-soft:var(--nb-red-2); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-list{ display:flex; flex-direction:column; gap:9px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-row{ display:flex; align-items:center; gap:12px; padding:12px 14px !important; background:var(--tr-surface) !important; border:1px solid var(--tr-line) !important; border-radius:13px !important; box-shadow:0 1px 2px rgba(22,27,43,.04); transition:border-color .15s; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-row:hover{ background:var(--tr-surface) !important; border-color:#cdd5e3 !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-icon{ width:38px !important; height:38px !important; border-radius:11px !important; display:grid; place-items:center; flex:none; background:var(--pt-soft) !important; color:var(--pt) !important; border:0 !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-icon svg{ width:19px; height:19px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-info{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-title{ font-size:.84rem; font-weight:800; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .perm-hint{ font-size:.66rem; color:var(--tr-muted); margin-top:2px; line-height:1.35; }

/* ==================== Шапка дровера трейдера — H1 ==================== */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero{ display:flex; align-items:center; gap:14px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-av{ width:56px; height:56px; border-radius:16px; background:var(--tr-purple); color:#fff; display:grid; place-items:center; font-weight:800; font-size:1.15rem; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-id{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-nm{ font-weight:800; font-size:1.15rem; color:var(--tr-text); display:flex; align-items:center; gap:9px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-sub{ color:var(--tr-muted); font-size:.78rem; margin-top:1px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-facts{ display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-fact{ font-size:.62rem; font-weight:800; padding:3px 10px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-fact--group{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict{ display:inline-flex; align-items:center; gap:7px; border-radius:10px; padding:8px 13px; font-weight:700; font-size:.76rem; cursor:pointer; flex:none; white-space:nowrap; border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict .op-svg{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict .op-svg svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict.danger{ background:var(--nb-red-2); color:var(--nb-red); border-color:var(--nb-red-2); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict.ok{ background:var(--nb-green-2); color:var(--nb-green); border-color:var(--nb-green-2); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-hero-restrict:disabled{ opacity:.6; cursor:default; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bals{ display:grid; grid-template-columns:repeat(3,1fr); gap:11px; margin-bottom:16px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal{ background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:14px; padding:13px 14px; display:flex; gap:12px; align-items:flex-start; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-ic{ width:36px; height:36px; border-radius:11px; display:grid; place-items:center; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-ic svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-main{ min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-l{ font-size:.56rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-v{ font-size:1.15rem; font-weight:800; font-variant-numeric:tabular-nums; margin-top:3px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal-s{ font-size:.64rem; color:var(--tr-muted); margin-top:1px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--green .trd-bal-ic{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--green .trd-bal-v{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--amber .trd-bal-ic{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--amber .trd-bal-v{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--violet .trd-bal-ic{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--violet .trd-bal-v{ color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--blue .trd-bal-ic{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--blue .trd-bal-v{ color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bals--4{ grid-template-columns:repeat(4,1fr); }
@media(max-width:760px){ html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bals--4{ grid-template-columns:1fr 1fr; } }
@media(max-width:720px){ html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bals{ grid-template-columns:1fr; } }

/* ==================== Формы дровера — F2 «поля-строки» ==================== */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-grid,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-grid.cols2{ display:block !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row{ display:grid !important; grid-template-columns:minmax(90px,1fr) minmax(0,300px); gap:4px 20px; align-items:start; padding:14px 0; margin:0; min-width:0; border-bottom:1px solid var(--tr-line2); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row:first-child{ padding-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row:last-child{ border-bottom:0; padding-bottom:2px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > label{ grid-column:1; grid-row:1; align-self:center; margin:0 !important; font-size:.8rem !important; font-weight:700 !important; color:var(--tr-text) !important; text-transform:none !important; letter-spacing:0 !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > input,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > select,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > textarea{ grid-column:2; grid-row:1 / span 2; align-self:start; width:100%; min-width:0; max-width:100%; border-radius:10px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > .faint{ grid-column:1; grid-row:2; margin-top:3px; font-size:.7rem; line-height:1.35; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row input:focus,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row select:focus,
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row textarea:focus{ border-color:var(--tr-purple) !important; box-shadow:0 0 0 3px rgba(61,84,224,.14) !important; outline:none; }
@media(max-width:640px){ html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row{ grid-template-columns:1fr; } html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > input, html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > select, html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > textarea{ grid-column:1; grid-row:auto; } html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > .faint{ grid-column:1; grid-row:auto; } }
/* Дровер трейдера — без серой подложки панели */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section{ background:transparent !important; border:0 !important; box-shadow:none !important; padding:0 !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section--table{ margin-top:16px !important; }

/* ==================== Вкладка «Страховой» — I2 ==================== */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status{ background:linear-gradient(135deg,#f6f4ff,#fdfdff); border:1px solid var(--tr-line); border-radius:14px; padding:16px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-top{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-l{ font-size:.56rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-v{ font-size:1.5rem; font-weight:800; font-variant-numeric:tabular-nums; color:var(--nb-violet); margin-top:3px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-req{ text-align:right; font-size:.72rem; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-req b{ color:var(--tr-text); font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-bar{ height:9px; border-radius:999px; background:var(--tr-surface-2); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#9d8bff,#7b5cf0); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-bar i.full{ background:linear-gradient(90deg,#2bd18e,#17a673); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-sub{ font-size:.72rem; margin-top:9px; font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-sub.warn{ color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-status-sub.ok{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-seg{ display:flex; flex-wrap:wrap; gap:4px; background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:11px; padding:4px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-seg-btn{ border:0; background:transparent; color:var(--tr-muted); font:inherit; font-weight:700; font-size:.76rem; padding:8px 14px; border-radius:8px; cursor:pointer; display:inline-flex; align-items:center; gap:7px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-seg-btn .op-svg svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-seg-btn.active{ background:var(--tr-surface); color:var(--tr-purple); box-shadow:0 2px 7px rgba(22,27,43,.1); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .ins-seg-btn--danger.active{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-actions .ins-btn{ display:inline-flex !important; align-items:center; justify-content:center; gap:8px; width:100% !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-actions .ins-btn .op-svg svg{ width:16px; height:16px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-actions .ins-btn.ins-btn--set:hover{ border-color:var(--tr-purple) !important; color:var(--tr-purple) !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-actions .ins-btn.ins-btn--debit{ background:var(--nb-red) !important; color:#fff !important; border:0 !important; box-shadow:0 2px 0 rgba(216,76,90,.35) !important; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-actions .ins-btn.ins-btn--debit:hover{ filter:brightness(.96); }

/* Пагинатор таблиц дровера */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pager{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:5px; margin-top:14px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-btn{ min-width:32px; height:32px; padding:0 9px; border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-muted); border-radius:9px; font:inherit; font-weight:700; font-size:.76rem; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-btn:hover:not(:disabled){ border-color:var(--tr-purple); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-btn.on{ background:var(--tr-purple); color:#fff; border-color:transparent; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-btn:disabled{ opacity:.45; cursor:default; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-nav{ font-size:1rem; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-pg-dots{ color:var(--tr-muted); padding:0 2px; }

/* Поле пароля с генерацией и показом (создание трейдера) — иконки внутри поля */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .drawer-section .form-row > .pwd-group{ grid-column:2; grid-row:1; position:relative; min-width:0; width:100%; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-group > input{ width:100%; min-width:0; padding-right:70px; border-radius:10px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn{ position:absolute; top:50%; transform:translateY(-50%); width:28px; height:28px; border:0; background:transparent; color:var(--tr-muted); border-radius:8px; display:grid; place-items:center; cursor:pointer; padding:0; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn:hover{ background:var(--tr-surface-2); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn .op-svg{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn .op-svg svg{ width:16px; height:16px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn#nt-pwd-eye{ right:6px; }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .pwd-btn#nt-pwd-gen{ right:37px; }

/* ==================== Группы: связки курсов ==================== */
html[data-app-scope="trader"] body.tr-app--admin .grp-tabs{ display:inline-flex; flex-wrap:wrap; gap:4px; background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:12px; padding:4px; margin-bottom:16px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-tab{ border:0; background:transparent; color:var(--tr-muted); font:inherit; font-size:.78rem; font-weight:700; padding:8px 14px; border-radius:9px; cursor:pointer; display:inline-flex; align-items:center; gap:7px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-tab .op-svg svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-tab.on{ background:var(--tr-surface); color:var(--tr-purple); box-shadow:0 3px 9px rgba(22,27,43,.1); }
html[data-app-scope="trader"] body.tr-app--admin .grp-tab .c{ font-size:.6rem; background:var(--tr-surface); border-radius:999px; padding:1px 7px; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .grp-tab.on .c{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .grp-route{ background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:16px; padding:16px; margin-bottom:12px; box-shadow:0 1px 2px rgba(22,27,43,.04); }
html[data-app-scope="trader"] body.tr-app--admin .grp-route-flow{ display:grid; grid-template-columns:1fr auto 1fr; gap:14px; align-items:stretch; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node{ border:1px solid var(--tr-line); border-radius:13px; padding:13px 14px; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--mer{ border-top:3px solid #2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--tra{ border-top:3px solid var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .grp-role{ font-size:.56rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); display:flex; align-items:center; gap:6px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-role i{ width:8px; height:8px; border-radius:50%; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--mer .grp-role i{ background:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--tra .grp-role i{ background:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .grp-gname{ font-weight:800; font-size:.9rem; margin-top:6px; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .grp-pair{ font-size:.66rem; color:var(--tr-muted); margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-rate{ font-size:1.5rem; font-weight:800; font-variant-numeric:tabular-nums; margin-top:8px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--mer .grp-rate{ color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .grp-node--tra .grp-rate{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .grp-cnt{ font-size:.62rem; color:var(--tr-muted); margin-top:3px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-mid{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; min-width:120px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-arrow{ color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .grp-arrow svg{ width:26px; height:26px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-spread{ background:var(--tr-purple-soft); color:var(--tr-purple); border-radius:12px; padding:8px 12px; text-align:center; }
html[data-app-scope="trader"] body.tr-app--admin .grp-spread .l{ font-size:.52rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; opacity:.85; }
html[data-app-scope="trader"] body.tr-app--admin .grp-spread .v{ font-size:1.15rem; font-weight:800; font-variant-numeric:tabular-nums; line-height:1.1; margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .grp-spread .p{ font-size:.62rem; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .grp-route-foot{ display:flex; align-items:center; gap:10px; margin-top:12px; padding-top:12px; border-top:1px solid var(--tr-line2); flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .grp-tgt{ font-size:.68rem; font-weight:700; padding:4px 10px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .grp-tgt.ok{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .grp-tgt.warn{ background:var(--nb-amber-2); color:var(--nb-amber); }
@media(max-width:820px){ html[data-app-scope="trader"] body.tr-app--admin .grp-route-flow{ grid-template-columns:1fr; } html[data-app-scope="trader"] body.tr-app--admin .grp-mid{ flex-direction:row; } }

/* ==================== Реквизиты — RQ1 (иконки банков, загрузка) ==================== */
html[data-app-scope="trader"] body.tr-app--admin .req-bank-cell{ display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:.74rem; }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk{ width:24px; height:24px; border-radius:7px; display:grid; place-items:center; color:#fff; font-size:.58rem; font-weight:800; flex:none; overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--logo{ background:#fff; border:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--logo img{ width:20px; height:20px; object-fit:contain; display:block; }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--0{ background:linear-gradient(135deg,#5468ff,#3345c4); }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--1{ background:linear-gradient(135deg,#161b2b,#3a4157); }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--2{ background:linear-gradient(135deg,#17b877,#0d7a51); }
html[data-app-scope="trader"] body.tr-app--admin .req-bnk--3{ background:linear-gradient(135deg,#8b7bff,#5d3fd4); }
html[data-app-scope="trader"] body.tr-app--admin .req-util{ min-width:100px; }
html[data-app-scope="trader"] body.tr-app--admin .req-util-bar{ height:6px; border-radius:999px; background:var(--tr-surface-2); overflow:hidden; }
html[data-app-scope="trader"] body.tr-app--admin .req-util-bar i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#5b6ef0,#3d54e0); }
html[data-app-scope="trader"] body.tr-app--admin .req-util-bar i.hi{ background:linear-gradient(90deg,#f6c445,#e0920f); }
html[data-app-scope="trader"] body.tr-app--admin .req-util-bar i.full{ background:linear-gradient(90deg,#f6a6ae,#d84c5a); }
html[data-app-scope="trader"] body.tr-app--admin .req-util-num{ font-size:.64rem; font-weight:700; color:var(--tr-muted); margin-top:4px; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .trd-st.req-st--ok{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .trd-st.req-st--test{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .trd-st.req-st--off{ background:var(--nb-red-2); color:var(--nb-red); }

/* ==================== Дровер реквизита — D1 ==================== */
html[data-app-scope="trader"] body.tr-app--admin .req-dr-card{ border-radius:16px; padding:18px; color:#fff; position:relative; overflow:hidden; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-card-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-bank{ display:flex; align-items:center; gap:10px; font-weight:800; font-size:1rem; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-logo{ width:36px; height:36px; border-radius:10px; background:#fff; display:grid; place-items:center; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-logo .req-bnk{ width:30px; height:30px; border-radius:8px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-logo .req-bnk--logo{ border:0; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-logo .req-bnk--logo img{ width:26px; height:26px; }

/* ==================== Мерчанты — M1 ==================== */
html[data-app-scope="trader"] body.tr-app--admin .mch-cell{ display:flex; align-items:center; gap:10px; }
html[data-app-scope="trader"] body.tr-app--admin .mch-av{ width:34px; height:34px; border-radius:11px; display:grid; place-items:center; font-weight:800; font-size:.72rem; flex:none; color:#fff; }
html[data-app-scope="trader"] body.tr-app--admin .mch-av--p2p{ background:linear-gradient(135deg,#3d54e0,#5b6ef0); }
html[data-app-scope="trader"] body.tr-app--admin .mch-av--crypto{ background:linear-gradient(135deg,#7b5cf0,#5d3fd4); }
html[data-app-scope="trader"] body.tr-app--admin .mch-name strong{ font-weight:700; font-size:.8rem; color:var(--tr-text); display:block; }
html[data-app-scope="trader"] body.tr-app--admin .mch-name s{ display:block; color:var(--tr-muted); font-size:.64rem; text-decoration:none; font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .mch-inc{ font-weight:800; font-variant-numeric:tabular-nums; color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-st{ font-size:.58rem; font-weight:800; background:rgba(255,255,255,.22); padding:4px 10px; border-radius:999px; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-no{ font-size:1.35rem; font-weight:700; letter-spacing:2px; margin:18px 0 6px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-owner{ font-size:.78rem; opacity:.92; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-progs{ display:grid; grid-template-columns:1fr 1fr; gap:11px; margin-bottom:14px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog{ background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:12px; padding:11px 13px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .l{ font-size:.56rem; font-weight:800; text-transform:uppercase; color:var(--tr-muted); display:flex; justify-content:space-between; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .b{ height:7px; border-radius:999px; background:var(--tr-surface); overflow:hidden; margin-top:8px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .b i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#5b6ef0,#3d54e0); }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .b i.hi{ background:linear-gradient(90deg,#f6c445,#e0920f); }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .b i.full{ background:linear-gradient(90deg,#f6a6ae,#d84c5a); }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-prog .n{ font-size:.66rem; color:var(--tr-muted); margin-top:6px; font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-sec{ font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); margin:16px 0 10px; display:flex; align-items:center; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-sec .n{ width:24px; height:24px; border-radius:7px; background:var(--tr-purple-soft); color:var(--tr-purple); display:grid; place-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-sec .n .op-svg svg{ width:14px; height:14px; }
html[data-app-scope="trader"] body.tr-app--admin .req-fr{ display:grid; grid-template-columns:1fr minmax(0,300px); gap:6px 20px; align-items:center; padding:12px 0; border-bottom:1px solid var(--tr-line2); }
html[data-app-scope="trader"] body.tr-app--admin .req-fr:last-of-type{ border-bottom:0; }
html[data-app-scope="trader"] body.tr-app--admin .req-fr > label{ font-size:.8rem; font-weight:700; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .req-fr > label s{ display:block; color:var(--tr-muted); font-size:.68rem; text-decoration:none; font-weight:600; margin-top:1px; }
html[data-app-scope="trader"] body.tr-app--admin .req-inp{ border:1px solid var(--tr-line); background:var(--tr-surface); border-radius:10px; padding:9px 12px; font:inherit; font-size:.84rem; width:100%; min-width:0; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .req-inp:focus{ outline:none; border-color:var(--tr-purple); box-shadow:0 0 0 3px rgba(61,84,224,.14); }
html[data-app-scope="trader"] body.tr-app--admin .req-inp--ro{ background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .req-inp.valid{ border-color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .req-inp.invalid{ border-color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .req-card-wrap{ min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .req-card-hint2{ display:block; font-size:.66rem; color:var(--tr-muted); margin-top:5px; }
html[data-app-scope="trader"] body.tr-app--admin .req-dr-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .req-fld label{ font-size:.58rem; font-weight:800; text-transform:uppercase; letter-spacing:.03em; color:var(--tr-muted); display:block; margin-bottom:6px; }
@media(max-width:640px){ html[data-app-scope="trader"] body.tr-app--admin .req-dr-progs, html[data-app-scope="trader"] body.tr-app--admin .req-dr-grid2{ grid-template-columns:1fr; } html[data-app-scope="trader"] body.tr-app--admin .req-fr{ grid-template-columns:1fr; } }

/* ==================== Баланс мерчанта (присетл / сетл) ==================== */
/* Красная баланс-карта в hero — перерасход присетла / переплата */
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--red .trd-bal-ic{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .trader-detail .trd-bal--red .trd-bal-v{ color:var(--nb-red); }

/* Карточка счёта во вкладке «Баланс» */
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct{ border:1px solid var(--tr-line); border-radius:16px; padding:16px 18px; background:linear-gradient(135deg,var(--nb-green-2),var(--tr-surface)); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct--neg{ background:linear-gradient(135deg,var(--nb-red-2),var(--tr-surface)); border-color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct-l{ font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct-v{ font-size:1.9rem; font-weight:800; font-variant-numeric:tabular-nums; margin-top:4px; color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct--neg .mbal-acct-v{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct-s{ font-size:.72rem; color:var(--tr-muted); margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-acct-alert{ margin-top:8px; display:inline-block; font-size:.72rem; font-weight:700; color:var(--nb-red); background:var(--nb-red-2); border-radius:8px; padding:4px 10px; }

/* Разбивка счёта: переводы vs трафик */
html[data-app-scope="trader"] body.tr-app--admin .mbal-break{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:12px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk{ border:1px solid var(--tr-line); border-radius:12px; padding:12px 14px; background:var(--tr-surface); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk span{ display:block; font-size:.68rem; font-weight:700; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk b{ display:block; font-size:1.1rem; font-weight:800; font-variant-numeric:tabular-nums; margin-top:3px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk small{ display:block; font-size:.64rem; color:var(--tr-muted); margin-top:2px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk--pos b{ color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-brk--neg b{ color:var(--nb-red); }

/* Список движений */
html[data-app-scope="trader"] body.tr-app--admin .mbal-list{ display:flex; flex-direction:column; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row{ display:flex; align-items:center; gap:10px; border:1px solid var(--tr-line); border-radius:12px; padding:10px 12px; background:var(--tr-surface); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-ic{ width:30px; height:30px; border-radius:9px; display:grid; place-items:center; flex:none; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-ic svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-main{ min-width:0; flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-t{ font-size:.82rem; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-t b{ font-variant-numeric:tabular-nums; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-row-s{ font-size:.68rem; color:var(--tr-muted); margin-top:2px; word-break:break-word; }
html[data-app-scope="trader"] body.tr-app--admin .mbal-del{ flex:none; }
@media(max-width:640px){ html[data-app-scope="trader"] body.tr-app--admin .mbal-break{ grid-template-columns:1fr; } }

/* Разбивка по выплатам в таблице мерчантов (оборот/доход) */
html[data-app-scope="trader"] body.tr-app--admin .merchants-grid .mch-sub{ margin-top:3px; padding-top:3px; border-top:1px dashed var(--tr-line); font-size:.64rem; font-weight:600; color:var(--nb-violet); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .merchants-grid .mch-sub .mch-sub-x{ font-size:.62rem; font-weight:500; color:var(--tr-muted); margin-top:1px; }

/* Фильтр периода + экспорт в разделе «Мерчанты» */
html[data-app-scope="trader"] body.tr-app--admin .mch-period{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .mch-period-l{ font-size:.66rem; font-weight:800; color:var(--tr-muted); text-transform:uppercase; letter-spacing:.03em; white-space:nowrap; flex:0 0 auto; }
html[data-app-scope="trader"] body.tr-app--admin .mch-date{ width:140px; flex:none; height:34px; border:1px solid var(--tr-line); border-radius:9px; padding:0 8px; background:var(--tr-surface); color:var(--tr-text); font-size:.78rem; }
html[data-app-scope="trader"] body.tr-app--admin .mch-date:focus{ border-color:var(--tr-purple); outline:none; box-shadow:0 0 0 3px rgba(61,84,224,.14); }
html[data-app-scope="trader"] body.tr-app--admin .mch-period-dash{ color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .mch-period-btn{ width:auto; min-width:0; height:34px; padding:0 14px; font-size:.78rem; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .mch-export-btn{ width:auto; min-width:0; display:inline-flex; align-items:center; gap:6px; height:34px; padding:0 14px; font-size:.78rem; font-weight:700; white-space:nowrap; flex:0 0 auto; }
html[data-app-scope="trader"] body.tr-app--admin .mch-export-btn .op-svg{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .mch-export-btn .op-svg svg{ width:15px; height:15px; }

/* Вариант 4: кнопка «Фильтры» + раскрывающаяся панель */
html[data-app-scope="trader"] body.tr-app--admin .mch-filters-btn{ display:inline-flex; align-items:center; gap:7px; height:34px; padding:0 13px; font-size:.78rem; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .mch-filters-btn .op-svg{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .mch-filters-btn .op-svg svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .mch-filters-btn.is-open{ border-color:var(--tr-purple); color:var(--tr-purple); background:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .mch-filters-badge{ font-style:normal; font-size:.6rem; font-weight:800; color:#fff; background:var(--tr-purple); border-radius:999px; padding:1px 6px; margin-left:1px; }
html[data-app-scope="trader"] body.tr-app--admin .mch-fbar{ display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; margin-top:14px; padding:12px 14px; background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:12px; }
html[data-app-scope="trader"] body.tr-app--admin .mch-fbar[hidden]{ display:none; }
html[data-app-scope="trader"] body.tr-app--admin .mch-range{ display:inline-flex; align-items:center; gap:8px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .mch-period-reset{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .mch-presets{ display:flex; gap:8px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .mch-preset{ font-size:.76rem; font-weight:700; padding:6px 12px; border-radius:999px; background:var(--tr-surface); color:var(--tr-text); cursor:pointer; border:1px solid var(--tr-line); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .mch-preset:hover{ border-color:var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .mch-preset.on{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .mch-fbar-spacer{ flex:1 1 auto; }

/* Экспорт — выбор колонок галочками */
html[data-app-scope="trader"] body.tr-app--admin .exp-col-tools{ display:flex; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-linkbtn{ background:none; border:0; color:var(--tr-purple); font-weight:700; font-size:.78rem; cursor:pointer; padding:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-linkbtn:hover{ text-decoration:underline; }
html[data-app-scope="trader"] body.tr-app--admin .exp-cols{ display:grid; grid-template-columns:repeat(2,1fr); gap:8px 12px; }
html[data-app-scope="trader"] body.tr-app--admin .exp-col{ display:flex; align-items:center; gap:9px; padding:9px 11px; border:1px solid var(--tr-line); border-radius:10px; background:var(--tr-surface); cursor:pointer; font-size:.82rem; font-weight:600; color:var(--tr-text); user-select:none; }
html[data-app-scope="trader"] body.tr-app--admin .exp-col:hover{ border-color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .exp-col input{ width:16px; height:16px; accent-color:var(--tr-purple); flex:none; margin:0; }
@media(max-width:560px){ html[data-app-scope="trader"] body.tr-app--admin .exp-cols{ grid-template-columns:1fr; } }

/* ==================== Колокол уведомлений оператора ==================== */
html[data-app-scope="trader"] body.tr-app--admin .op-bell-wrap{ position:relative; }
html[data-app-scope="trader"] body.tr-app--admin .op-bell{ position:relative; width:40px; height:40px; border-radius:12px; border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-text); display:grid; place-items:center; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .op-bell:hover{ border-color:var(--tr-purple); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-bell.on{ border-color:var(--tr-purple); color:var(--tr-purple); background:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .op-bell svg{ width:19px; height:19px; }
html[data-app-scope="trader"] body.tr-app--admin .op-bell-cnt{ position:absolute; top:-6px; right:-6px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--nb-red); color:#fff; font-size:.62rem; font-weight:800; display:grid; place-items:center; border:2px solid var(--tr-surface); }

html[data-app-scope="trader"] body.tr-app--admin .op-notif-dd{ position:absolute; top:52px; right:0; width:400px; max-width:calc(100vw - 32px); background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:16px; box-shadow:0 18px 44px rgba(22,27,43,.16); overflow:hidden; z-index:60; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 16px; border-bottom:1px solid var(--tr-line2, var(--tr-line)); }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-head b{ font-size:.95rem; font-weight:800; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-link{ font-size:.74rem; font-weight:700; color:var(--tr-purple); cursor:pointer; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-link:hover{ text-decoration:underline; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-chips{ display:flex; gap:7px; padding:10px 12px 4px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-nchip{ display:inline-flex; align-items:center; gap:6px; font-size:.73rem; font-weight:700; padding:5px 11px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-text); border:1px solid transparent; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .op-nchip.on{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-nchip .b{ font-size:.6rem; font-weight:800; color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-body{ padding:6px; max-height:360px; overflow:auto; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-empty{ padding:26px 16px; text-align:center; color:var(--tr-muted); font-size:.82rem; }

html[data-app-scope="trader"] body.tr-app--admin .op-n{ display:flex; gap:11px; padding:11px 12px; border-radius:12px; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .op-n:hover{ background:var(--tr-surface-2); }
html[data-app-scope="trader"] body.tr-app--admin .op-n.unread{ background:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .op-n-ic{ width:34px; height:34px; border-radius:10px; display:grid; place-items:center; flex:none; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-n-ic svg{ width:17px; height:17px; }
html[data-app-scope="trader"] body.tr-app--admin .op-n--crit .op-n-ic{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-n--warn .op-n-ic{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-n--info .op-n-ic{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .op-n--ok .op-n-ic{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-n-main{ min-width:0; flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-n-t{ font-size:.83rem; font-weight:700; line-height:1.35; }
html[data-app-scope="trader"] body.tr-app--admin .op-n-d{ font-size:.74rem; color:var(--tr-muted); margin-top:2px; line-height:1.4; word-break:break-word; }
html[data-app-scope="trader"] body.tr-app--admin .op-n-side{ display:flex; flex-direction:column; align-items:flex-end; gap:5px; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-n-time{ font-size:.68rem; color:var(--tr-muted); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-n-dot{ width:8px; height:8px; border-radius:50%; background:var(--tr-purple); }
@media(max-width:520px){ html[data-app-scope="trader"] body.tr-app--admin .op-notif-dd{ position:fixed; top:64px; right:16px; left:16px; width:auto; } }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-foot{ padding:10px 12px; border-top:1px solid var(--tr-line2, var(--tr-line)); text-align:center; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-all{ font-size:.78rem; font-weight:700; color:var(--tr-purple); cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .op-nd-all:hover{ text-decoration:underline; }

/* ==================== Раздел «Уведомления» (двухпанельный инбокс) ==================== */
html[data-app-scope="trader"] body.tr-app--admin .op-alerts-bar{ display:flex; align-items:center; gap:12px; padding:2px 2px 14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-alerts-bar .spacer{ flex:1 1 auto; }
html[data-app-scope="trader"] body.tr-app--admin .op-alerts-sub{ font-size:.82rem; color:var(--tr-muted); font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .op-alerts-readall{ width:auto; min-width:0; display:inline-flex; align-items:center; gap:6px; height:34px; padding:0 13px; font-size:.78rem; font-weight:700; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-alerts-readall .op-svg svg{ width:15px; height:15px; }

html[data-app-scope="trader"] body.tr-app--admin .op-alerts-split{ display:grid; grid-template-columns:232px minmax(0,1fr); gap:16px; }
html[data-app-scope="trader"] body.tr-app--admin .op-arail{ border:1px solid var(--tr-line); border-radius:14px; padding:8px; height:max-content; display:flex; flex-direction:column; gap:2px; }
html[data-app-scope="trader"] body.tr-app--admin .op-ari{ display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:10px; border:0; background:transparent; cursor:pointer; font-size:.82rem; font-weight:600; color:var(--tr-text); text-align:left; }
html[data-app-scope="trader"] body.tr-app--admin .op-ari:hover{ background:var(--tr-surface-2); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari.on{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-ic{ width:28px; height:28px; border-radius:8px; display:grid; place-items:center; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-ic svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-ic--all{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-ic--crit{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-ic--warn{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-lb{ flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-c{ font-size:.72rem; font-weight:800; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari-c b{ color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-ari.on .op-ari-c{ color:var(--tr-purple); }

html[data-app-scope="trader"] body.tr-app--admin .op-arows{ border:1px solid var(--tr-line); border-radius:14px; padding:6px; display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar{ display:flex; gap:12px; align-items:flex-start; padding:13px 12px; border-radius:12px; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar+.op-ar{ border-top:1px solid var(--tr-line2, var(--tr-line)); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar:hover{ background:var(--tr-surface-2); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar.unread{ background:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-ic{ width:36px; height:36px; border-radius:11px; display:grid; place-items:center; flex:none; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-ic svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar--crit .op-ar-ic{ background:var(--nb-red-2); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar--warn .op-ar-ic{ background:var(--nb-amber-2); color:var(--nb-amber); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar--info .op-ar-ic{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar--ok .op-ar-ic{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-main{ min-width:0; flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-t{ font-size:.86rem; font-weight:700; line-height:1.35; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-d{ font-size:.76rem; color:var(--tr-muted); margin-top:3px; line-height:1.4; word-break:break-word; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-side{ display:flex; flex-direction:column; align-items:flex-end; gap:6px; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-time{ font-size:.7rem; color:var(--tr-muted); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-open{ font-size:.72rem; font-weight:700; color:var(--tr-purple); white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-ar-empty{ padding:30px 16px; text-align:center; color:var(--tr-muted); font-size:.85rem; }
@media(max-width:680px){ html[data-app-scope="trader"] body.tr-app--admin .op-alerts-split{ grid-template-columns:1fr; } }

/* ==================== Рассылки трейдерам (композер + история) ==================== */
html[data-app-scope="trader"] body.tr-app--admin .op-notifications-layout{ display:grid; grid-template-columns:1.05fr .95fr; gap:16px; align-items:start; }
html[data-app-scope="trader"] body.tr-app--admin .nb-body{ padding:16px 18px; display:flex; flex-direction:column; gap:16px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-field{ display:flex; flex-direction:column; }
html[data-app-scope="trader"] body.tr-app--admin .nb-lbl{ font-size:.66rem; font-weight:800; text-transform:uppercase; letter-spacing:.03em; color:var(--tr-muted); margin-bottom:8px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-inp,
html[data-app-scope="trader"] body.tr-app--admin .nb-ta{ width:100%; border:1px solid var(--tr-line); border-radius:10px; padding:10px 12px; font:inherit; font-size:.86rem; background:var(--tr-surface); color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .nb-ta{ min-height:88px; resize:vertical; line-height:1.5; }
html[data-app-scope="trader"] body.tr-app--admin .nb-inp:focus,
html[data-app-scope="trader"] body.tr-app--admin .nb-ta:focus{ border-color:var(--tr-purple); outline:none; box-shadow:0 0 0 3px rgba(61,84,224,.14); }

html[data-app-scope="trader"] body.tr-app--admin .nb-aud-tabs{ display:flex; gap:6px; margin-bottom:12px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-aud{ font:inherit; font-size:.78rem; font-weight:700; padding:7px 13px; border-radius:999px; border:0; background:var(--tr-surface-2); color:var(--tr-muted); cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .nb-aud.on{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .nb-recs{ display:flex; gap:8px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .nb-rec{ display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border:1px solid var(--tr-line); border-radius:999px; font:inherit; font-size:.8rem; font-weight:600; color:var(--tr-text); background:var(--tr-surface); cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .nb-rec.on{ background:var(--tr-purple-soft); border-color:transparent; color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .nb-rec-ic{ display:inline-flex; }
html[data-app-scope="trader"] body.tr-app--admin .nb-rec-ic svg{ width:15px; height:15px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-rec-av{ width:24px; height:24px; border-radius:50%; background:linear-gradient(135deg,#3d54e0,#5b6ef0); color:#fff; font-size:.62rem; font-weight:800; display:grid; place-items:center; }

html[data-app-scope="trader"] body.tr-app--admin .nb-tpls{ display:flex; gap:7px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .nb-tpl{ font:inherit; font-size:.74rem; font-weight:600; padding:6px 11px; border-radius:8px; background:var(--tr-surface-2); color:var(--tr-text); border:1px dashed var(--tr-line); cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .nb-tpl:hover{ border-color:var(--tr-purple); color:var(--tr-purple); }

html[data-app-scope="trader"] body.tr-app--admin .nb-prev{ background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:14px; padding:14px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-lbl{ font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--tr-muted); margin-bottom:10px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-card{ display:flex; gap:11px; background:var(--tr-surface); border:1px solid var(--tr-line); border-radius:12px; padding:12px; box-shadow:0 6px 16px rgba(22,27,43,.06); }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-ic{ width:34px; height:34px; border-radius:10px; background:var(--nb-violet-2); color:var(--nb-violet); display:grid; place-items:center; flex:none; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-ic svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-main{ min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-t{ font-size:.86rem; font-weight:800; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-b{ font-size:.78rem; color:var(--tr-muted); margin-top:3px; line-height:1.45; white-space:pre-wrap; word-break:break-word; }
html[data-app-scope="trader"] body.tr-app--admin .nb-prev-meta{ font-size:.64rem; color:var(--tr-muted); margin-top:6px; }

html[data-app-scope="trader"] body.tr-app--admin .nb-send{ display:flex; align-items:center; justify-content:center; gap:9px; width:100%; height:46px; border:0; border-radius:12px; background:var(--tr-purple); color:#fff; font:inherit; font-size:.9rem; font-weight:800; cursor:pointer; }
html[data-app-scope="trader"] body.tr-app--admin .nb-send:disabled{ opacity:.6; cursor:default; }
html[data-app-scope="trader"] body.tr-app--admin .nb-send .op-svg svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-send small{ font-weight:600; opacity:.85; }

html[data-app-scope="trader"] body.tr-app--admin .nb-hist{ display:flex; flex-direction:column; padding:6px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h{ display:flex; gap:12px; padding:13px 12px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h+.nb-h{ border-top:1px solid var(--tr-line2, var(--tr-line)); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-av{ width:34px; height:34px; border-radius:10px; display:grid; place-items:center; flex:none; background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-av svg{ width:17px; height:17px; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-main{ min-width:0; flex:1; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-t{ font-size:.85rem; font-weight:700; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-b{ font-size:.76rem; color:var(--tr-muted); margin-top:2px; line-height:1.4; word-break:break-word; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-meta{ display:flex; gap:8px; align-items:center; margin-top:7px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-badge{ font-size:.64rem; font-weight:700; padding:3px 8px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-badge--all{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-read{ font-size:.64rem; font-weight:700; padding:3px 8px; border-radius:999px; background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-read.ok{ background:var(--nb-green-2); color:var(--nb-green); }
html[data-app-scope="trader"] body.tr-app--admin .nb-h-time{ font-size:.7rem; color:var(--tr-muted); margin-left:auto; white-space:nowrap; }
@media(max-width:820px){ html[data-app-scope="trader"] body.tr-app--admin .op-notifications-layout{ grid-template-columns:1fr; } }

/* ==================== Операторы (роли + доступы) ==================== */
html[data-app-scope="trader"] body.tr-app--admin .op-role{ font-size:.66rem; font-weight:800; padding:3px 10px; border-radius:999px; text-transform:uppercase; letter-spacing:.03em; white-space:nowrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-role--super{ background:var(--nb-violet-2); color:var(--nb-violet); }
html[data-app-scope="trader"] body.tr-app--admin .op-role--admin{ background:var(--tr-purple-soft); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-role--support{ background:#e4f0fb; color:#2f7ad6; }
html[data-app-scope="trader"] body.tr-app--admin .op-role--custom{ background:var(--tr-surface-2); color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px 16px; }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 11px; border:1px solid var(--tr-line); border-radius:10px; background:var(--tr-surface); }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-lbl{ font-size:.82rem; font-weight:600; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-sel{ height:32px; width:116px; flex:none; border:1px solid var(--tr-line); border-radius:8px; padding:0 8px; font-size:.78rem; background:var(--tr-surface); color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-sel:focus{ border-color:var(--tr-purple); outline:none; box-shadow:0 0 0 3px rgba(61,84,224,.14); }
html[data-app-scope="trader"] body.tr-app--admin .op-perm-sel:disabled{ opacity:.55; }
@media(max-width:640px){ html[data-app-scope="trader"] body.tr-app--admin .op-perm-grid{ grid-template-columns:1fr; } }

/* ── Логин: подсказка под полем 2FA ───────────────────────────── */
html[data-app-scope="trader"] body.tr-app--admin .tr-f3-hint{ font-size:12px; color:var(--tr-muted); margin-top:5px; }

/* ── Раздел «Безопасность» / 2FA оператора ────────────────────── */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-page{ max-width:680px; display:flex; flex-direction:column; gap:18px; }

/* Карточка-hero */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-card{ position:relative; overflow:hidden; border:1px solid var(--tr-line); border-radius:18px; background:var(--tr-surface); padding:24px; box-shadow:0 1px 2px rgba(16,24,45,.04); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-card::before{ content:""; position:absolute; inset:0 0 auto 0; height:96px; background:radial-gradient(120% 100% at 0% 0%, rgba(124,58,237,.10), transparent 70%); pointer-events:none; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-card.is-on::before{ background:radial-gradient(120% 100% at 0% 0%, rgba(34,197,94,.12), transparent 70%); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-hero{ position:relative; display:flex; gap:18px; align-items:flex-start; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-badge{ flex:none; width:56px; height:56px; border-radius:16px; display:inline-flex; align-items:center; justify-content:center; background:var(--tr-purple-soft); color:var(--tr-purple); box-shadow:inset 0 0 0 1px rgba(124,58,237,.14); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-badge svg{ width:30px; height:30px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-badge.on{ background:var(--nb-green-2); color:var(--nb-green); box-shadow:inset 0 0 0 1px rgba(34,197,94,.18); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-hero-txt{ flex:1; min-width:0; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-hero-top{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:6px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-hero-top h2{ margin:0; font-size:18px; font-weight:700; color:var(--tr-text); letter-spacing:-.01em; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-hero-txt p{ margin:0; font-size:13.5px; line-height:1.55; color:var(--tr-muted); max-width:52ch; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-pill{ display:inline-flex; align-items:center; gap:6px; height:24px; padding:0 11px; border-radius:999px; font-size:12px; font-weight:600; background:var(--tr-surface-2); color:var(--tr-muted); border:1px solid var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-pill i{ width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.75; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-pill.on{ background:var(--nb-green-2); color:var(--nb-green); border-color:rgba(34,197,94,.25); }

/* Область действия (кнопка / визард / отключение) */
html[data-app-scope="trader"] body.tr-app--admin #op-2fa-area:not(:empty){ margin-top:22px; padding-top:22px; border-top:1px dashed var(--tr-line); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-cta{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-cta .faint{ font-size:12.5px; color:var(--tr-muted); }

/* Визард подключения: две колонки */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-wizard{ display:flex; gap:24px; flex-wrap:wrap; align-items:flex-start; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-wz-left{ display:flex; flex-direction:column; gap:12px; align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-wz-right{ flex:1; min-width:230px; display:flex; flex-direction:column; gap:14px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-qr{ width:184px; height:184px; border-radius:14px; background:#fff; padding:10px; border:1px solid var(--tr-line); box-shadow:0 4px 16px rgba(16,24,45,.06); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-secret-wrap{ display:flex; flex-direction:column; gap:5px; align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-secret-lbl{ font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--tr-muted); font-weight:600; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-secret{ font-size:13.5px; letter-spacing:2px; background:var(--tr-surface-2); border:1px solid var(--tr-line); border-radius:9px; padding:8px 14px; cursor:pointer; user-select:all; word-break:break-all; text-align:center; transition:border-color .15s, background .15s; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-secret:hover{ border-color:var(--tr-purple); background:var(--tr-purple-soft); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-step{ font-size:13.5px; color:var(--tr-text); display:flex; align-items:flex-start; gap:11px; line-height:1.5; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-step b{ display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; background:var(--tr-purple-soft); color:var(--tr-purple); font-size:12.5px; font-weight:700; flex:none; margin-top:-1px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-row{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-row input{ width:150px; text-align:center; letter-spacing:5px; font-size:17px; font-weight:600; padding:10px 12px; border:1px solid var(--tr-line); border-radius:10px; background:var(--tr-surface); color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-row input:focus{ border-color:var(--tr-purple); outline:none; box-shadow:0 0 0 3px rgba(61,84,224,.14); }

/* Отключение 2FA */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-off-panel{ display:flex; flex-direction:column; gap:10px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-off-lbl{ font-size:14px; font-weight:600; color:var(--tr-text); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-off-panel p{ margin:0; font-size:13px; color:var(--tr-muted); }

/* Преимущества (когда 2FA выключена) */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feats{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feat{ display:flex; gap:12px; padding:16px; border:1px solid var(--tr-line); border-radius:14px; background:var(--tr-surface); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feat-ic{ flex:none; width:34px; height:34px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; background:var(--tr-surface-2); color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feat-ic svg{ width:18px; height:18px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feat b{ display:block; font-size:13.5px; color:var(--tr-text); margin-bottom:3px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feat span{ font-size:12px; line-height:1.5; color:var(--tr-muted); }
@media(max-width:720px){ html[data-app-scope="trader"] body.tr-app--admin .op-2fa-feats{ grid-template-columns:1fr; } }

/* ── Кнопки раздела «Безопасность» (текстовые, не квадратные icon-btn) ── */
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; width:auto; min-width:0; height:38px; padding:0 16px; border-radius:10px; border:1px solid var(--tr-line); background:var(--tr-surface); color:var(--tr-text); font-size:14px; font-weight:600; line-height:1; cursor:pointer; transition:filter .15s, border-color .15s, background .15s, box-shadow .15s; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn .op-svg svg{ width:16px; height:16px; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn:hover:not(:disabled){ border-color:var(--tr-purple); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn:disabled{ opacity:.55; cursor:not-allowed; }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn--primary{ background:linear-gradient(135deg,#7c3aed,#6366f1); border-color:rgba(139,92,246,.45); color:#fff; box-shadow:0 6px 18px rgba(124,58,237,.24); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn--primary:hover:not(:disabled){ filter:brightness(1.06); border-color:rgba(139,92,246,.45); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn--danger{ border-color:rgba(220,38,38,.35); color:var(--nb-red); }
html[data-app-scope="trader"] body.tr-app--admin .op-2fa-btn--danger:hover:not(:disabled){ border-color:var(--nb-red); background:var(--nb-red-2); }

/* ── Раздел «Доступ по IP» ─────────────────────────────────────── */
html[data-app-scope="trader"] body.tr-app--admin .ip-access{ display:flex; flex-direction:column; gap:16px; max-width:760px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-top{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
@media(max-width:640px){ html[data-app-scope="trader"] body.tr-app--admin .ip-top{ grid-template-columns:1fr; } }
html[data-app-scope="trader"] body.tr-app--admin .ip-card{ border:1px solid var(--tr-line); border-radius:14px; background:var(--tr-surface); padding:16px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-status{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-status.on{ border-color:rgba(34,197,94,.35); background:var(--nb-green-2); }
html[data-app-scope="trader"] body.tr-app--admin .ip-status-txt b{ font-size:14px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-status-txt p{ margin:3px 0 0; font-size:12px; line-height:1.45; max-width:32ch; }
html[data-app-scope="trader"] body.tr-app--admin .ip-yours{ display:flex; flex-direction:column; gap:8px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-yours > span{ font-size:12px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-yours-row{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
html[data-app-scope="trader"] body.tr-app--admin .ip-yours-val{ font-size:16px; font-weight:700; letter-spacing:.5px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-you{ display:inline-block; font-size:11px; font-weight:600; color:var(--nb-green); background:var(--nb-green-2); padding:2px 8px; border-radius:999px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addform{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addform input{ flex:1 1 200px; min-width:0; padding:9px 12px; border:1px solid var(--tr-line); border-radius:9px; background:var(--tr-surface); color:var(--tr-text); font-size:13px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addform input:focus{ border-color:var(--tr-purple); outline:none; box-shadow:0 0 0 3px rgba(61,84,224,.14); }
html[data-app-scope="trader"] body.tr-app--admin .ip-addform #ip-label{ flex:1 1 160px; }
/* кнопки доступа по IP — нормальные текстовые (были иконочные квадраты → текст вылезал) */
html[data-app-scope="trader"] body.tr-app--admin .ip-add-btn,
html[data-app-scope="trader"] body.tr-app--admin .ip-addme-btn{
  display:inline-flex; align-items:center; gap:6px; flex:none;
  border:0 !important; cursor:pointer; font-weight:700; color:#fff !important;
  border-radius:10px; white-space:nowrap; min-height:0;
  background:linear-gradient(180deg,#5468ff,#3d54e0) !important;
  box-shadow:0 2px 0 #2a3aa8, 0 4px 12px -3px rgba(61,84,224,.5);
  transition:transform .1s ease;
}
html[data-app-scope="trader"] body.tr-app--admin .ip-add-btn{ padding:10px 18px !important; font-size:13px !important; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addme-btn{ padding:6px 12px !important; font-size:12px !important; }
html[data-app-scope="trader"] body.tr-app--admin .ip-add-btn:hover,
html[data-app-scope="trader"] body.tr-app--admin .ip-addme-btn:hover{ transform:translateY(-1px); }
html[data-app-scope="trader"] body.tr-app--admin .ip-add-btn .op-svg svg,
html[data-app-scope="trader"] body.tr-app--admin .ip-addme-btn .op-svg svg{ width:14px; height:14px; fill:currentColor; display:block; }

/* карточка «Добавить IP» */
html[data-app-scope="trader"] body.tr-app--admin .ip-addcard{ display:flex; flex-direction:column; gap:12px; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addcard-title{ font-size:11.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; color:var(--tr-muted); }
html[data-app-scope="trader"] body.tr-app--admin .ip-addcard .ip-addform{ align-items:stretch; margin:0; }
html[data-app-scope="trader"] body.tr-app--admin .ip-addcard .ip-addform input{ padding:10px 13px; }

/* предупреждение о самоблокировке — янтарный notice */
html[data-app-scope="trader"] body.tr-app--admin .ip-warn{
  display:flex; align-items:flex-start; gap:9px; font-size:12.5px; line-height:1.5;
  background:var(--nb-amber-2); border:1px solid rgba(224,144,12,.3);
  color:var(--tr-text); border-radius:12px; padding:12px 14px;
}
html[data-app-scope="trader"] body.tr-app--admin .ip-warn-ic{ color:var(--nb-amber); font-size:15px; line-height:1.3; flex:none; }
