/* RecruMax Theme Engine — shared component bridge.
   This normalizes legacy module markup into the same visual language without changing
   routes, forms, permissions, calculations or module behavior. */
body.theme-mockup {
  background: var(--rx-page-bg);
  color: var(--rx-text);
}

body.theme-mockup .card,
body.theme-mockup .panel,
body.theme-mockup .surface,
body.theme-mockup .widget,
body.theme-mockup .summary-mini,
body.theme-mockup .metric-card,
body.theme-mockup .stat-card,
body.theme-mockup .workspace-card {
  border-color: var(--rx-border);
  border-radius: var(--rx-radius-card);
  box-shadow: var(--rx-shadow-card);
}

body.theme-mockup .card,
body.theme-mockup .panel,
body.theme-mockup .surface,
body.theme-mockup .workspace-card {
  background: var(--rx-surface);
}

body.theme-mockup .section-head,
body.theme-mockup .card-head,
body.theme-mockup .panel-head {
  gap: 12px;
}

body.theme-mockup .section-head h2,
body.theme-mockup .section-head h3,
body.theme-mockup .card h2,
body.theme-mockup .card h3,
body.theme-mockup .page-intro h1,
body.theme-mockup .page-intro h2 {
  color: var(--rx-text-strong);
  letter-spacing: -.02em;
}

body.theme-mockup input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
body.theme-mockup select,
body.theme-mockup textarea {
  border: 1px solid var(--rx-border-strong);
  border-radius: var(--rx-radius-control);
  background: #fff;
  color: var(--rx-text);
  min-height: var(--rx-control-height);
  box-shadow: 0 1px 2px rgba(20, 35, 60, .02);
}

body.theme-mockup input:focus,
body.theme-mockup select:focus,
body.theme-mockup textarea:focus {
  border-color: #8db5ff;
  box-shadow: 0 0 0 3px rgba(23, 105, 255, .12);
  outline: 0;
}

body.theme-mockup .btn,
body.theme-mockup button:not(.nav-group-toggle):not(.sidebar-close) {
  border-radius: var(--rx-radius-control);
}

body.theme-mockup .btn-primary,
body.theme-mockup .button-primary,
body.theme-mockup button.primary {
  background: var(--rx-primary);
  border-color: var(--rx-primary);
}

body.theme-mockup .btn-primary:hover,
body.theme-mockup .button-primary:hover,
body.theme-mockup button.primary:hover {
  background: var(--rx-primary-strong);
  border-color: var(--rx-primary-strong);
}

body.theme-mockup table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

body.theme-mockup table thead th {
  background: #f7f9fc;
  color: #63738a;
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  border-bottom: 1px solid var(--rx-border);
}

body.theme-mockup table tbody td {
  border-bottom-color: #e8eef6;
  min-height: var(--rx-table-row-height);
}

body.theme-mockup table tbody tr:hover td {
  background: #fbfdff;
}

body.theme-mockup .table-wrap,
body.theme-mockup .table-scroll,
body.theme-mockup .data-table-wrap {
  border-color: var(--rx-border);
  border-radius: 13px;
  overflow: auto;
  background: #fff;
}

body.theme-mockup .tabs,
body.theme-mockup .subtabs,
body.theme-mockup .tab-list,
body.theme-mockup .settings-tabs,
body.theme-mockup .pills {
  gap: 6px;
}

body.theme-mockup .tab,
body.theme-mockup .tabs a,
body.theme-mockup .subtabs a,
body.theme-mockup .tab-list a,
body.theme-mockup .settings-tabs a,
body.theme-mockup .pill {
  border-radius: var(--rx-radius-pill);
}

body.theme-mockup .tab.active,
body.theme-mockup .tabs a.active,
body.theme-mockup .subtabs a.active,
body.theme-mockup .tab-list a.active,
body.theme-mockup .settings-tabs a.active,
body.theme-mockup .pill.active {
  background: var(--rx-surface-accent);
  color: var(--rx-primary-strong);
  border-color: #cfe0ff;
}

body.theme-mockup .badge,
body.theme-mockup .status,
body.theme-mockup .status-badge,
body.theme-mockup .chip {
  border-radius: var(--rx-radius-pill);
}

body.theme-mockup dialog,
body.theme-mockup .modal,
body.theme-mockup .popover,
body.theme-mockup .dropdown-menu {
  border-color: var(--rx-border);
  border-radius: var(--rx-radius-card);
  box-shadow: var(--rx-shadow-float);
}

body.theme-mockup .empty-state,
body.theme-mockup .empty,
body.theme-mockup .placeholder-card {
  border-radius: var(--rx-radius-card);
  border-color: var(--rx-border);
  background: var(--rx-surface-soft);
}

body.theme-mockup .toolbar,
body.theme-mockup .filter-bar,
body.theme-mockup .filters,
body.theme-mockup .page-actions,
body.theme-mockup .actions-row {
  gap: 10px;
}
