:root {
  color-scheme: light;
  --bg: var(--sr-page);
  --surface: var(--sr-surface);
  --surface-soft: var(--sr-surface-muted);
  --text: var(--sr-text);
  --muted: var(--sr-text-secondary);
  --line: var(--sr-border);
  --accent: var(--sr-primary);
  --accent-strong: var(--sr-primary-hover);
  --danger: var(--sr-danger);
  --warning: var(--sr-warning);
  --ok: var(--sr-success);
  --info: var(--sr-info);
  --shadow: var(--sr-shadow-card);
}

body.dark {
  color-scheme: dark;
  --sr-page: #0f151c;
  --sr-surface: #17202a;
  --sr-surface-muted: #202b36;
  --sr-surface-selected: #1e3537;
  --sr-border: #334555;
  --sr-border-strong: #526778;

  --sr-text: #edf4fa;
  --sr-text-secondary: #b5c4d0;
  --sr-text-muted: #8fa0ae;
  --sr-text-inverse: #081117;

  --sr-sidebar: #071522;
  --sr-sidebar-deep: #050f19;
  --sr-sidebar-hover: #122a3d;
  --sr-sidebar-active: #17364b;
  --sr-sidebar-muted: #8eb3c4;
  --sr-sidebar-text: #eef8fc;

  --sr-primary: #5eead4;
  --sr-primary-hover: #8cf4e4;
  --sr-primary-active: #b7fff3;
  --sr-primary-soft: #173b3b;

  --sr-success: #74e2a9;
  --sr-success-soft: #19382c;
  --sr-warning: #f6c562;
  --sr-warning-soft: #3d2d13;
  --sr-danger: #ff8a8f;
  --sr-danger-soft: #422126;
  --sr-info: #8ab4ff;
  --sr-info-soft: #1c2d49;
  --sr-violet: #c4a5ff;
  --sr-violet-soft: #302248;

  --sr-shadow-card: 0 1px 2px rgba(0, 0, 0, 0.34),
    0 14px 34px rgba(0, 0, 0, 0.24);
  --sr-shadow-inspector: -8px 0 28px rgba(0, 0, 0, 0.34);

  --bg: var(--sr-page);
  --surface: var(--sr-surface);
  --surface-soft: var(--sr-surface-muted);
  --text: var(--sr-text);
  --muted: var(--sr-text-secondary);
  --line: var(--sr-border);
  --accent: var(--sr-primary);
  --accent-strong: var(--sr-primary-hover);
  --danger: var(--sr-danger);
  --warning: var(--sr-warning);
  --ok: var(--sr-success);
  --info: var(--sr-info);
  --shadow: var(--sr-shadow-card);
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
}

button, input, textarea, select { font: inherit; }

button {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
  color: var(--text);
  cursor: pointer;
  padding: 7px 11px;
}

button:hover { border-color: var(--accent); }

button.primary {
  background: var(--accent);
  border-color: var(--accent);
  color: #ffffff;
}

button.danger { color: var(--danger); }
button.ghost { background: transparent; }

input, textarea, select {
  width: 100%;
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
  color: var(--text);
  padding: 7px 9px;
}

textarea {
  min-height: 84px;
  resize: vertical;
}

.preserve {
  white-space: pre-wrap;
}

.code-block {
  min-height: 180px;
  max-height: 360px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  padding: 10px;
  white-space: pre-wrap;
}

label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
}

table {
  width: 100%;
  border-collapse: collapse;
}

th, td {
  border-bottom: 1px solid var(--line);
  padding: 9px 8px;
  text-align: left;
  vertical-align: top;
}

th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
}

.login-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
}

.login-panel {
  width: min(380px, 100%);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 22px;
}

.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
}

.sidebar {
  background: #16212b;
  border-right: 1px solid #0f1720;
  color: #eef5f7;
  padding: 16px;
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: auto;
}

.brand {
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 18px;
}

.brand span {
  display: block;
  color: #9aaaba;
  font-size: 12px;
  font-weight: 500;
}

.nav {
  display: grid;
  gap: 6px;
}

.nav-group {
  display: grid;
  gap: 6px;
}

.nav-group + .nav-group {
  margin-top: 10px;
}

.nav-heading,
.nav-group summary {
  color: #8ea1b2;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  padding: 4px 8px;
}

.nav-group summary {
  cursor: pointer;
  list-style: none;
}

.nav-group summary::-webkit-details-marker {
  display: none;
}

.nav-group-items {
  display: grid;
  gap: 6px;
}

.nav button {
  width: 100%;
  text-align: left;
  border-color: transparent;
  background: transparent;
  color: #d8e2ea;
}

.nav button.active {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

.nav button:hover {
  border-color: rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.07);
}

.content-shell {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
}

.topbar {
  min-height: 58px;
  background: var(--surface);
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 18px;
  position: sticky;
  top: 0;
  z-index: 3;
}

.workspace {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  padding: 16px;
  max-width: 100%;
  overflow-x: hidden;
}

.workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 340px);
}

.workspace.desktop-workspace {
  grid-template-columns: minmax(0, 1fr);
}

.workspace.desktop-workspace > .inspector {
  display: none;
}

.main {
  min-width: 0;
  display: grid;
  gap: 16px;
  align-content: start;
}

.workspace > *,
.main > * {
  min-width: 0;
}

.inspector {
  position: sticky;
  top: 74px;
  height: calc(100vh - 92px);
  overflow: auto;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 14px;
}

.inspector-toolbar {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}

.panel, .stat, .row-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}

.panel {
  min-width: 0;
  padding: 14px;
}

.panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.panel-title {
  font-size: 16px;
  font-weight: 700;
}

.grid {
  display: grid;
  gap: 12px;
}

.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 12px;
}

.stat { padding: 12px; }
.stat .value { font-size: 24px; font-weight: 750; }
.stat .label { color: var(--muted); font-size: 12px; }

.status, .role, .priority {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border-radius: 999px;
  padding: 2px 8px;
  background: var(--surface-soft);
  color: var(--text);
  font-size: 12px;
  white-space: nowrap;
}

.status.done { color: var(--ok); }
.status.warn { color: var(--warning); }
.status.risk { color: var(--danger); }

.activity-row.unread {
  border-color: var(--accent);
  background: var(--surface-soft);
}

.activity-row.unread strong::after {
  content: " новое";
  color: var(--accent-strong);
  font-size: 11px;
  font-weight: 700;
}

.progress { display: grid; gap: 5px; }

.bar {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--surface-soft);
}

.bar span {
  display: block;
  height: 100%;
  background: var(--accent);
}

.toolbar, .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.muted { color: var(--muted); }
.small { font-size: 12px; }
.split { display: flex; justify-content: space-between; gap: 12px; }
.check-list { display: grid; gap: 8px; }

.check-item {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px;
}

.ops-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 16px;
}

.ops-hero h1 {
  margin: 2px 0 0;
  font-size: 24px;
  line-height: 1.2;
}

.ops-hero-meta {
  display: grid;
  justify-items: end;
  color: var(--muted);
  font-size: 12px;
}

.ops-hero-meta strong {
  color: var(--accent-strong);
  font-size: 28px;
  line-height: 1;
}

.desktop-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 16px;
}

.desktop-header h1 {
  margin: 0;
  font-size: 24px;
  line-height: 1.2;
}

.desktop-header p {
  margin: 4px 0 0;
  color: var(--muted);
}

.desktop-header-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.dashboard-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 12px;
}

.dashboard-kpi {
  min-height: 104px;
  display: grid;
  align-content: start;
  gap: 4px;
  text-align: left;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 12px;
}

.dashboard-kpi .value {
  font-size: 28px;
  font-weight: 750;
  line-height: 1;
}

.dashboard-kpi .label {
  font-weight: 700;
}

.dashboard-kpi .hint {
  color: var(--muted);
  font-size: 12px;
}

.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 16px;
  align-items: start;
}

.dashboard-main,
.dashboard-side,
.dashboard-actions,
.attention-list,
.activity-list,
.operation-mode-card,
.workload-list {
  display: grid;
  gap: 12px;
}

.dashboard-side {
  position: sticky;
  top: 74px;
}

.dashboard-side-card {
  min-width: 0;
}

.table-scroll {
  min-width: 0;
  max-width: 100%;
  overflow: auto;
}

.dashboard-table {
  min-width: 980px;
}

.compact-progress {
  min-width: 90px;
}

.workload-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(160px, 1.3fr) repeat(4, minmax(66px, .55fr)) minmax(96px, .7fr);
  align-items: center;
  gap: 10px;
  text-align: left;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
}

.workload-row > span {
  display: grid;
  gap: 2px;
}

.workload-progress {
  min-width: 90px;
}

.operation-mode-card p {
  margin: 0;
  color: var(--muted);
}

.two-tight {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.attention-row,
.activity-row {
  width: 100%;
  display: grid;
  gap: 4px;
  text-align: left;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
}

.attention-row.risk {
  border-left: 4px solid var(--danger);
}

.attention-row.warning {
  border-left: 4px solid var(--warning);
}

.attention-row.info {
  border-left: 4px solid var(--info);
}

.activity-row {
  grid-template-columns: 90px minmax(180px, .9fr) minmax(0, 1fr);
  align-items: start;
}

.dashboard-system-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  padding: 10px 12px;
}

.ops-stats {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.metric-card,
.soft-panel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  padding: 10px;
}

.metric-card strong {
  display: block;
  margin-top: 4px;
  font-size: 20px;
}

.summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.summary-grid > div {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  padding: 8px;
  min-width: 0;
}

.summary-grid span {
  display: block;
  color: var(--muted);
  font-size: 11px;
}

.summary-grid strong {
  display: block;
  overflow-wrap: anywhere;
}

.stage-flow {
  display: grid;
  grid-template-columns: repeat(7, minmax(92px, 1fr));
  gap: 6px;
}

.stage {
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  color: var(--muted);
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 3px;
  padding: 7px;
  text-align: center;
}

.stage.active {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent) 12%, var(--surface));
  color: var(--accent-strong);
}

.stage.done {
  border-color: color-mix(in srgb, var(--ok) 45%, var(--line));
  color: var(--ok);
}

.stage-index {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--surface);
  border: 1px solid var(--line);
  font-size: 11px;
}

.package-board,
.checklist-board,
.task-list {
  display: grid;
  gap: 10px;
}

.package-card {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: var(--shadow);
  padding: 12px;
}

.package-card h3 {
  margin: 0;
  font-size: 16px;
}

.mini-section {
  display: grid;
  gap: 5px;
  border-top: 1px solid var(--line);
  padding-top: 8px;
}

.task-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px;
}

.task-box {
  width: 16px;
  height: 16px;
  border: 1px solid var(--accent);
  border-radius: 4px;
  background: var(--surface);
}

.timeline {
  display: grid;
  gap: 10px;
}

.timeline-item {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
}

.timeline-dot {
  width: 10px;
  height: 10px;
  margin-top: 5px;
  border-radius: 999px;
  background: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent);
}

.audit-journal .timeline-item {
  border-bottom: 1px solid var(--line);
  padding-bottom: 9px;
}

.sticky-summary {
  display: grid;
  gap: 8px;
}

.toolbar.vertical {
  align-items: stretch;
  flex-direction: column;
}

.toolbar.vertical button {
  width: 100%;
}

.ticket-row { cursor: pointer; }
.ticket-row:hover { background: var(--surface-soft); }
.selected-row { outline: 2px solid var(--accent); outline-offset: -2px; }

.notice {
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: 8px;
  background: var(--surface);
  padding: 10px 12px;
}

.error { color: var(--danger); }
.success { color: var(--ok); }
.mono { font-family: Consolas, "Courier New", monospace; }

.checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.checkbox-grid label {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--text);
  font-size: 13px;
}

.checkbox-grid input {
  width: auto;
  min-height: auto;
}

.warning { border-left-color: var(--warning); }

.ai-stats {
  grid-template-columns: repeat(6, minmax(120px, 1fr));
}

.ai-stat {
  text-align: left;
  display: block;
}

.ai-expert-workspace {
  display: grid;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.ai-case-list {
  position: sticky;
  top: 74px;
  max-height: calc(100vh - 92px);
  overflow: auto;
}

.ai-case-center {
  min-width: 0;
  overflow: auto;
}

.compact { gap: 8px; }

.ticket-controls {
  align-items: end;
}

.ticket-controls input {
  min-width: min(360px, 100%);
}

.inline-details {
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px 12px;
  background: var(--surface-soft);
}

.inline-details summary {
  cursor: pointer;
  font-weight: 700;
}

.case-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.case-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px;
  cursor: pointer;
  background: var(--surface);
}

.case-card:hover { background: var(--surface-soft); }
.case-main, .case-meta { display: grid; gap: 3px; }
.case-meta { justify-items: end; }

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
}

.tabs button.active {
  background: var(--surface-soft);
  border-color: var(--accent);
  color: var(--accent-strong);
}

.inline-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.row-warning {
  outline: 2px solid var(--warning);
  outline-offset: -2px;
}

.comparison-table td {
  max-width: 260px;
  word-break: break-word;
}

.evaluation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.score-row {
  grid-template-columns: 120px 68px minmax(0, 1fr);
  align-items: center;
  color: var(--text);
}

.toggle-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.toggle-grid label {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--text);
  font-size: 13px;
}

.toggle-grid input,
.case-card input[type="checkbox"] {
  width: auto;
  min-height: auto;
}

.run-chip {
  display: block;
  width: 100%;
  text-align: left;
  margin-top: 6px;
}

.internal-messenger-inspector {
  width: min(500px, 34vw);
  min-width: 440px;
}

.internal-panel,
.internal-conversation {
  display: grid;
  gap: var(--sr-space-3);
  min-height: 0;
}

.internal-panel {
  height: calc(100vh - 112px);
}

.internal-panel-ticket {
  display: grid;
  gap: 4px;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.internal-panel-ticket span,
.internal-thread-card small,
.internal-message-meta,
.internal-reply {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.internal-panel-actions,
.internal-head-actions,
.internal-composer-actions,
.internal-message-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sr-space-2);
}

.internal-thread-list {
  display: grid;
  gap: var(--sr-space-2);
  overflow: auto;
}

.internal-thread-list.compact {
  max-height: 180px;
}

.internal-thread-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sr-space-2);
  width: 100%;
  min-height: 48px;
  padding: var(--sr-space-2) var(--sr-space-3);
  text-align: left;
  background: var(--sr-surface);
}

.internal-thread-card span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.internal-thread-card strong,
.internal-thread-card small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.internal-thread-card.active {
  border-color: var(--sr-primary);
  background: var(--sr-surface-selected);
}

.internal-thread-card b {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--sr-primary);
  color: var(--sr-text-inverse);
  font-size: 12px;
}

.internal-conversation {
  grid-template-rows: auto minmax(180px, 1fr) auto;
  height: 100%;
  min-height: 420px;
}

.internal-conversation.compact {
  min-height: 0;
  height: 100%;
}

.internal-conversation-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--sr-space-3);
  padding-bottom: var(--sr-space-2);
  border-bottom: 1px solid var(--sr-border);
}

.internal-message-list {
  display: grid;
  align-content: start;
  gap: var(--sr-space-3);
  overflow: auto;
  padding-right: 2px;
}

.internal-message {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: var(--sr-space-2);
}

.internal-message.mine .internal-message-body {
  background: var(--sr-surface-selected);
}

.internal-message.pinned .internal-message-body {
  border-color: var(--sr-primary);
}

.internal-message-avatar {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--sr-primary-soft);
  color: var(--sr-primary-hover);
  font-weight: 700;
}

.internal-message-body {
  display: grid;
  gap: var(--sr-space-2);
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.internal-message-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sr-space-2);
}

.internal-reply {
  padding: var(--sr-space-2);
  border-left: 3px solid var(--sr-primary);
  background: var(--sr-surface-muted);
  border-radius: var(--sr-radius-xs);
}

.internal-attachments {
  display: grid;
  gap: var(--sr-space-2);
}

.internal-attachment {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  gap: var(--sr-space-2);
  align-items: center;
  padding: var(--sr-space-2);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  color: var(--sr-text);
  text-decoration: none;
}

.internal-attachment span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.internal-message-actions button,
.internal-head-actions button {
  min-height: 28px;
  padding: 4px 8px;
  font-size: 12px;
}

.internal-message-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sr-space-2);
  align-items: end;
}

.internal-message-form textarea {
  min-height: 44px;
  resize: vertical;
}

.internal-message-form.compact {
  grid-template-columns: minmax(0, 1fr);
}

.internal-file-button {
  position: relative;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  cursor: pointer;
}

.internal-file-button input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.internal-empty {
  display: grid;
  gap: 4px;
  place-items: center;
  min-height: 120px;
  padding: var(--sr-space-4);
  border: 1px dashed var(--sr-border);
  border-radius: var(--sr-radius-sm);
  color: var(--sr-text-secondary);
  text-align: center;
}

.internal-inline-layout {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: var(--sr-space-3);
}

.internal-discussion-tab {
  display: grid;
  gap: var(--sr-space-3);
}

.internal-discussion-hero .panel-head {
  align-items: center;
}

.internal-messenger-tab-layout {
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
  align-items: stretch;
  min-height: 620px;
}

.internal-messenger-tab-layout .internal-inline-list,
.internal-messenger-tab-layout .internal-tab-chat {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.internal-messenger-tab-layout .internal-inline-list {
  display: grid;
  grid-template-rows: minmax(0, 1fr);
}

.internal-messenger-tab-layout .messenger-thread-list {
  align-content: start;
  gap: var(--sr-space-3);
  padding: var(--sr-space-3);
}

.internal-messenger-tab-layout .messenger-thread-card {
  min-height: 72px;
}

.internal-tab-chat {
  padding: 0;
}

.internal-tab-chat .messenger-chat-shell {
  min-height: 620px;
}

.internal-tab-chat .messenger-message-list {
  padding: var(--sr-space-4);
}

.internal-inline-list,
.messenger-sidebar,
.messenger-chat,
.messenger-context {
  min-width: 0;
}

.messenger-module {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr) minmax(220px, 280px);
  gap: var(--sr-space-3);
  min-height: calc(100vh - 180px);
}

.messenger-sidebar,
.messenger-chat,
.messenger-context {
  display: grid;
  align-content: start;
  gap: var(--sr-space-3);
}

.messenger-chat {
  min-height: 620px;
}

.messenger-module-modern {
  grid-template-columns: minmax(320px, 380px) minmax(520px, 1fr) minmax(280px, 340px);
  align-items: stretch;
  min-height: calc(100vh - 170px);
}

.messenger-module-modern .messenger-sidebar,
.messenger-module-modern .messenger-chat,
.messenger-module-modern .messenger-context {
  align-content: stretch;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 8px;
}

.messenger-module-modern .messenger-sidebar {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.messenger-filter-form {
  display: grid;
  align-content: start;
  gap: var(--sr-space-3);
  padding: 14px;
  border-bottom: 1px solid var(--sr-border);
}

.messenger-filter-form .ticket-search-field {
  min-height: 44px;
}

.messenger-filter-form .ticket-search-field input {
  min-height: 44px;
}

.messenger-filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.messenger-filter-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 7px 10px;
  font-size: 13px;
  font-weight: 700;
  background: var(--sr-surface);
}

.messenger-filter-tabs button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary);
  color: var(--sr-text-inverse);
}

.messenger-filter-tabs span {
  color: inherit;
  opacity: .82;
}

.messenger-filter-tabs i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--sr-warning);
}

.messenger-filter-tabs i.accent {
  background: var(--sr-primary);
}

.messenger-thread-list {
  align-content: start;
  gap: var(--sr-space-3);
  padding: var(--sr-space-3) var(--sr-space-4);
}

.messenger-thread-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--sr-space-2);
  width: 100%;
  min-height: 72px;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  text-align: left;
  align-self: start;
}

.messenger-thread-card.active {
  border-color: var(--sr-primary);
  background: var(--sr-surface-selected);
  box-shadow: inset 0 0 0 1px rgba(13, 148, 136, .18);
}

.messenger-thread-main {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.messenger-thread-main strong,
.messenger-thread-main small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messenger-thread-main strong {
  color: var(--sr-text);
  font-size: 14px;
}

.messenger-thread-main small {
  color: var(--sr-text-secondary);
}

.messenger-thread-meta {
  display: grid;
  justify-items: end;
  gap: 7px;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.messenger-thread-meta b,
.messenger-thread-meta i {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--sr-primary);
  color: var(--sr-text-inverse);
  font-style: normal;
  font-size: 12px;
}

.messenger-thread-meta i {
  background: var(--sr-surface);
  border: 1px solid var(--sr-primary);
  color: var(--sr-primary);
}

.messenger-sidebar-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-2);
  padding: var(--sr-space-3) var(--sr-space-4);
  color: var(--sr-text-secondary);
  border-top: 1px solid var(--sr-border);
}

.messenger-chat-shell {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto auto;
  height: 100%;
  min-height: calc(100vh - 170px);
}

.messenger-chat-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
  gap: var(--sr-space-3);
  padding: var(--sr-space-4) var(--sr-space-5);
  border-bottom: 1px solid var(--sr-border);
}

.messenger-chat-head > div:first-child {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.messenger-chat-head strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 16px;
}

.messenger-chat-head span:not(.status) {
  color: var(--sr-text-secondary);
}

.messenger-chat-participants {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
}

.messenger-chat-participants .internal-participants span {
  width: 30px;
  height: 30px;
  font-size: 11px;
}

.messenger-icon-button {
  display: grid;
  place-items: center;
  width: 36px;
  min-height: 36px;
  padding: 0;
  font-size: 20px;
}

.messenger-message-list {
  display: grid;
  align-content: start;
  gap: var(--sr-space-4);
  overflow: auto;
  padding: var(--sr-space-5);
}

.messenger-date-separator {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.messenger-date-separator::before,
.messenger-date-separator::after {
  content: "";
  height: 1px;
  background: var(--sr-border);
}

.messenger-message {
  display: grid;
  grid-template-columns: 38px minmax(0, 720px);
  align-items: start;
  gap: var(--sr-space-3);
}

.messenger-message.mine {
  grid-template-columns: minmax(0, 720px) 38px;
  justify-content: end;
}

.messenger-message.mine .messenger-message-avatar {
  order: 2;
}

.messenger-message-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--sr-primary-soft);
  color: var(--sr-primary-hover);
  font-size: 12px;
  font-weight: 800;
}

.messenger-message-bubble {
  display: grid;
  gap: var(--sr-space-2);
  padding: var(--sr-space-3) var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: 0 4px 18px rgba(15, 23, 42, .04);
}

.messenger-message.mine .messenger-message-bubble {
  background: var(--sr-surface-selected);
}

.messenger-message-head {
  display: flex;
  justify-content: space-between;
  gap: var(--sr-space-3);
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.messenger-message-head strong {
  color: var(--sr-primary);
}

.messenger-attachments {
  display: grid;
  gap: var(--sr-space-2);
  max-width: 360px;
}

.messenger-attachment {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 28px;
  align-items: center;
  gap: var(--sr-space-2);
  padding: var(--sr-space-2);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  text-decoration: none;
}

.messenger-attachment > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: var(--sr-primary-soft);
  color: var(--sr-primary-hover);
  font-size: 10px;
  font-weight: 800;
}

.messenger-attachment.pdf > span {
  background: #ffe4e6;
  color: #be123c;
}

.messenger-attachment.sheet > span {
  background: #dcfce7;
  color: #15803d;
}

.messenger-attachment.image > span {
  background: #dbeafe;
  color: #1d4ed8;
}

.messenger-attachment div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.messenger-attachment strong,
.messenger-attachment small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.messenger-attachment small {
  color: var(--sr-text-secondary);
}

.messenger-composer {
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sr-space-2);
  margin: 0 var(--sr-space-5);
  padding: var(--sr-space-2);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
}

.messenger-composer textarea {
  order: 0;
  min-height: 40px;
  border: 0;
  resize: none;
  font-size: 15px;
}

.messenger-composer select {
  display: none;
}

.messenger-composer .internal-composer-actions {
  display: contents;
}

.messenger-composer .internal-file-button {
  order: -1;
  border-radius: 8px;
  background: var(--sr-surface);
}

.messenger-composer button.primary {
  order: 1;
  display: grid;
  place-items: center;
  width: 42px;
  min-height: 42px;
  padding: 0;
  border-radius: 8px;
}

.messenger-composer-hint {
  padding: 6px var(--sr-space-5) var(--sr-space-3);
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.messenger-context-inner {
  display: grid;
  align-content: start;
  gap: var(--sr-space-4);
  height: 100%;
  padding: var(--sr-space-5);
}

.messenger-context-inner h3 {
  margin: 0;
  font-size: 18px;
}

.messenger-context-list {
  display: grid;
  gap: var(--sr-space-2);
}

.messenger-context-row {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: var(--sr-space-3);
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.messenger-context-row > span {
  color: var(--sr-text-secondary);
}

.messenger-context-row div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.messenger-context-row small {
  color: var(--sr-text-secondary);
}

.messenger-context-row strong {
  min-width: 0;
}

.messenger-person {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
}

.messenger-person b {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--sr-primary-soft);
  color: var(--sr-primary-hover);
  font-size: 11px;
}

.messenger-person span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.messenger-context-actions,
.messenger-recent-files {
  display: grid;
  gap: var(--sr-space-2);
}

.messenger-context-actions button {
  justify-content: start;
  width: 100%;
}

.messenger-recent-files .messenger-attachment {
  grid-template-columns: 30px minmax(0, 1fr) 32px;
}

.compact-messenger,
.compact-messenger-strip {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 70;
  box-shadow: var(--sr-shadow-card);
}

.compact-messenger {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(420px, calc(100vw - 48px));
  height: min(520px, calc(100vh - 96px));
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  overflow: hidden;
}

.compact-messenger-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--sr-space-2);
  padding: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
  background: var(--sr-surface-muted);
}

.compact-messenger-head button {
  min-height: 28px;
  padding: 3px 8px;
}

.compact-messenger .internal-conversation {
  padding: var(--sr-space-3);
}

.compact-messenger-strip {
  min-height: 40px;
  border-color: var(--sr-primary);
  background: var(--sr-surface);
}

.internal-detail-list {
  gap: 0;
  border-bottom: 1px solid var(--sr-border);
  padding-bottom: var(--sr-space-3);
}

.internal-side-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-2);
  margin-top: var(--sr-space-2);
}

.internal-side-head button {
  min-height: 28px;
  padding: 4px 8px;
  font-size: 12px;
}

.internal-conversation.side-panel {
  grid-template-rows: minmax(220px, 1fr) auto;
  min-height: 360px;
}

.internal-conversation.modal-chat {
  grid-template-rows: minmax(0, 1fr) auto;
  min-height: 0;
}

.internal-conversation.side-panel .internal-message-list,
.internal-conversation.modal-chat .internal-message-list {
  gap: var(--sr-space-4);
}

.internal-conversation.side-panel .internal-message-body,
.internal-conversation.modal-chat .internal-message-body {
  border: 0;
  background: transparent;
  padding: 0;
}

.internal-conversation.side-panel .internal-message.mine .internal-message-body,
.internal-conversation.modal-chat .internal-message.mine .internal-message-body {
  background: transparent;
}

.internal-conversation.side-panel .internal-message-actions,
.internal-conversation.modal-chat .internal-message-actions {
  display: none;
}

.internal-conversation.side-panel .internal-message-avatar,
.internal-conversation.modal-chat .internal-message-avatar,
.internal-participants span {
  color: var(--sr-text-inverse);
  background: linear-gradient(135deg, var(--sr-primary), var(--sr-sidebar));
}

.compact-messenger-layer {
  position: fixed;
  inset: 0;
  z-index: 70;
  pointer-events: none;
}

.compact-messenger-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(12, 22, 32, 0.28);
  backdrop-filter: blur(3px);
}

.compact-messenger-layer .compact-messenger {
  position: fixed;
  top: 32px;
  left: 50%;
  right: auto;
  bottom: auto;
  transform: translateX(-50%);
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  width: min(760px, calc(100vw - 64px));
  height: min(780px, calc(100vh - 116px));
  pointer-events: auto;
  border-radius: 8px;
}

.compact-messenger-layer .compact-messenger-strip {
  right: 64px;
  bottom: 24px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: var(--sr-space-3);
  width: min(560px, calc(100vw - 128px));
  min-height: 72px;
  padding: var(--sr-space-3) var(--sr-space-4);
  pointer-events: auto;
  text-align: left;
  border-radius: 8px;
}

.compact-messenger-strip span {
  display: block;
  margin-top: 2px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.compact-messenger-strip b,
.compact-messenger-tools b {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--sr-primary);
  color: var(--sr-text-inverse);
  font-size: 12px;
}

.compact-messenger-head {
  min-height: 78px;
  padding: var(--sr-space-4);
  background: var(--sr-surface);
}

.compact-messenger-head > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.compact-messenger-head > div:first-child strong {
  font-size: 19px;
}

.compact-messenger-head > div:first-child span {
  color: var(--sr-text-secondary);
}

.internal-participants {
  display: flex;
  align-items: center;
  margin-left: auto;
}

.internal-participants span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-left: -7px;
  border: 2px solid var(--sr-surface);
  border-radius: 50%;
  font-size: 12px;
  font-weight: 800;
}

.internal-participants .extra {
  background: var(--sr-surface-muted);
  color: var(--sr-text);
}

.compact-messenger-window-actions {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
}

.compact-messenger-window-actions button {
  display: grid;
  place-items: center;
  width: 34px;
  min-height: 34px;
  padding: 0;
  border-color: transparent;
  background: transparent;
  font-size: 24px;
}

.compact-context-card,
.compact-messenger-tools {
  display: grid;
  align-items: center;
  gap: var(--sr-space-3);
  margin-inline: var(--sr-space-4);
}

.compact-context-card {
  grid-template-columns: 38px minmax(0, 1fr) auto;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
}

.compact-context-card div {
  display: grid;
  gap: 3px;
}

.compact-context-card span {
  color: var(--sr-text-secondary);
}

.compact-context-icon {
  display: grid;
  place-items: center;
  color: var(--sr-primary);
}

.compact-messenger-tools {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  margin-top: var(--sr-space-3);
}

.compact-messenger-tools button {
  position: relative;
  min-height: 42px;
}

.compact-messenger .internal-conversation {
  padding: var(--sr-space-4);
}

.compact-messenger .internal-message-form {
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  padding: var(--sr-space-2);
}

.compact-messenger .internal-message-form textarea {
  order: 0;
  min-height: 38px;
  border: 0;
  resize: none;
  font-size: 16px;
}

.compact-messenger .internal-message-form select {
  display: none;
}

.compact-messenger .internal-file-button {
  order: -1;
  border: 0;
  background: transparent;
}

.compact-messenger .internal-composer-actions {
  display: contents;
}

.compact-messenger .internal-message-form button.primary {
  order: 1;
  display: grid;
  place-items: center;
  width: 42px;
  min-height: 42px;
  padding: 0;
  border-radius: 50%;
}

@media (max-width: 1200px) {
  .internal-messenger-inspector {
    width: min(440px, 40vw);
    min-width: 380px;
  }

  .messenger-module {
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
  }

  .messenger-context {
    display: none;
  }
}

@media (max-width: 760px) {
  .workspace { grid-template-columns: 1fr; }
  .inspector { position: static; height: auto; }
  .stats, .grid.three, .ops-stats, .stage-flow, .dashboard-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-grid { grid-template-columns: 1fr; }
  .dashboard-side { position: static; }
  .ai-expert-workspace { grid-template-columns: 1fr; }
  .ai-case-list { position: static; max-height: none; }
  .ai-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar {
    position: static;
    height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .nav, .nav-group-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nav-group, .nav-group + .nav-group { margin-top: 0; }
  .nav-heading, .nav-group summary { grid-column: 1 / -1; }
  .topbar {
    position: static;
    align-items: flex-start;
    flex-direction: column;
  }
  .stats, .grid.two, .grid.three, .checkbox-grid, .evaluation-grid, .toggle-grid, .ops-stats, .summary-grid, .stage-flow, .dashboard-kpis, .workload-row, .two-tight { grid-template-columns: 1fr; }
  .ops-hero, .desktop-header { align-items: flex-start; flex-direction: column; }
  .ops-hero-meta { justify-items: start; }
  .desktop-header-actions { justify-content: flex-start; }
  .activity-row { grid-template-columns: 1fr; }
  .task-row { grid-template-columns: auto minmax(0, 1fr); }
  .task-row .small { grid-column: 2; }
  .score-row { grid-template-columns: 1fr; }
  .case-card { grid-template-columns: 1fr; }
}

/* MVP-0.9.2 visual redesign layer */
html {
  min-width: 0;
  overflow-x: hidden;
}

body {
  background: var(--sr-page);
  color: var(--sr-text);
  font-family: var(--font-sans);
  overflow-x: hidden;
}

button,
input,
textarea,
select {
  min-height: var(--sr-control-height);
  border-color: var(--sr-border);
  border-radius: var(--sr-radius-sm);
}

button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sr-space-2);
  transition: border-color var(--sr-duration-fast) var(--sr-ease), background var(--sr-duration-fast) var(--sr-ease), color var(--sr-duration-fast) var(--sr-ease);
}

button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
.ticket-row:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--sr-primary) 30%, transparent);
  outline-offset: 2px;
}

button.primary {
  background: var(--sr-primary);
  border-color: var(--sr-primary);
  color: var(--sr-text-inverse);
}

button.primary:hover {
  background: var(--sr-primary-hover);
  border-color: var(--sr-primary-hover);
}

button.danger {
  border-color: color-mix(in srgb, var(--sr-danger) 35%, var(--sr-border));
  color: var(--sr-danger);
}

input,
textarea,
select {
  background: var(--sr-surface);
  color: var(--sr-text);
}

.app-shell {
  min-height: 100vh;
  grid-template-columns: var(--sr-sidebar-width) minmax(0, 1fr);
  background: var(--sr-page);
  position: relative;
}

.app-shell::before {
  content: "";
  width: var(--sr-sidebar-width);
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(180deg, var(--sr-sidebar), var(--sr-sidebar-deep));
}

.sidebar {
  width: var(--sr-sidebar-width);
  background: linear-gradient(180deg, var(--sr-sidebar), var(--sr-sidebar-deep));
  border-right: 1px solid color-mix(in srgb, var(--sr-sidebar-muted) 18%, transparent);
  color: var(--sr-sidebar-text, var(--sr-text-inverse));
  padding: var(--sr-space-6) var(--sr-space-4);
  overflow-y: auto;
  z-index: 2;
}

.content-shell {
  position: relative;
  z-index: 1;
}

.sidebar {
  position: relative;
  top: auto;
  height: auto;
  min-height: 100vh;
  overflow: visible;
  overflow-y: visible;
}

.brand {
  margin-bottom: var(--sr-space-8);
  color: var(--sr-sidebar-text, var(--sr-text-inverse));
  font-size: 24px;
  line-height: 1;
}

.brand span {
  margin-top: var(--sr-space-2);
  color: var(--sr-sidebar-muted);
}

.nav {
  gap: var(--sr-space-2);
}

.nav-heading,
.nav-group summary {
  color: var(--sr-sidebar-muted);
  padding: var(--sr-space-1) var(--sr-space-2);
}

.collapsible-nav-group summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.collapsible-nav-group summary::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  transition: transform 160ms ease;
}

.collapsible-nav-group[open] summary::after {
  transform: rotate(225deg);
}

.nav-group.collapsible-nav-group {
  gap: var(--sr-space-2);
}

.collapsible-nav-group:not([open]) {
  gap: 0;
}

.nav button {
  min-height: 44px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  justify-content: start;
  text-align: left;
  border-color: transparent;
  background: transparent;
  color: color-mix(in srgb, var(--sr-sidebar-text, var(--sr-text-inverse)) 88%, var(--sr-sidebar-muted));
  padding: var(--sr-space-2) var(--sr-space-3);
}

.nav button:hover {
  background: var(--sr-sidebar-hover);
  border-color: color-mix(in srgb, var(--sr-sidebar-muted) 20%, transparent);
}

.nav button.active {
  background: color-mix(in srgb, var(--sr-primary) 68%, var(--sr-sidebar-active));
  border-color: color-mix(in srgb, var(--sr-primary) 70%, var(--sr-sidebar-text, var(--sr-text-inverse)));
  box-shadow: inset 3px 0 0 var(--sr-primary-soft);
}

.nav-icon {
  width: 28px;
  min-height: 24px;
  display: inline-grid;
  place-items: center;
  color: inherit;
  font-size: 13px;
  font-weight: 800;
}

.icon-svg {
  width: 18px;
  height: 18px;
  display: block;
  flex: 0 0 auto;
  stroke: currentColor;
}

.nav-svg {
  width: 17px;
  height: 17px;
  stroke-width: 2;
}

.content-shell {
  min-width: 0;
}

.topbar {
  min-height: var(--sr-topbar-height);
  background: var(--sr-surface);
  border-bottom: 1px solid var(--sr-border);
  padding: var(--sr-space-3) var(--sr-space-5);
  z-index: 10;
}

.workspace {
  width: min(100%, var(--sr-content-max));
  margin-inline: auto;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--sr-space-5);
  padding: var(--sr-space-5);
  overflow-x: clip;
}

.workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) var(--sr-inspector-width);
}

.main {
  gap: var(--sr-space-5);
}

.page-header {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sr-space-4);
  padding-block: var(--sr-space-1);
}

.page-header h1 {
  margin: 0;
  font-size: 24px;
  line-height: 32px;
  font-weight: 750;
}

.page-header p {
  margin: var(--sr-space-1) 0 0;
  color: var(--sr-text-secondary);
}

.page-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--sr-space-2);
}

.panel,
.stat,
.row-card,
.dashboard-kpi,
.package-card,
.notice,
.login-panel,
.dashboard-system-line {
  background: var(--sr-surface);
  border-color: var(--sr-border);
  border-radius: var(--sr-radius-sm);
  box-shadow: var(--sr-shadow-card);
}

.panel {
  min-width: 0;
  padding: var(--sr-space-5);
}

.panel-head {
  gap: var(--sr-space-3);
  margin-bottom: var(--sr-space-4);
}

.panel-title {
  color: var(--sr-text);
  font-size: 18px;
  line-height: 26px;
}

.stat {
  min-height: 96px;
  display: grid;
  align-content: start;
  gap: var(--sr-space-2);
  padding: var(--sr-space-4);
}

.stat .value {
  color: var(--sr-text);
  font-size: 30px;
  line-height: 1;
}

.stat .label,
.muted,
label {
  color: var(--sr-text-secondary);
}

.status,
.role,
.priority {
  border: 1px solid var(--sr-border);
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-weight: 700;
}

.status.done,
.priority.done {
  border-color: color-mix(in srgb, var(--sr-success) 34%, var(--sr-border));
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.status.warn,
.priority.warn {
  border-color: color-mix(in srgb, var(--sr-warning) 40%, var(--sr-border));
  background: var(--sr-warning-soft);
  color: #9a5d00;
}

.status.risk,
.priority.risk {
  border-color: color-mix(in srgb, var(--sr-danger) 36%, var(--sr-border));
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.priority.info {
  border-color: color-mix(in srgb, var(--sr-info) 30%, var(--sr-border));
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.bar {
  height: 8px;
  background: var(--sr-surface-muted);
}

.bar span {
  background: var(--sr-primary);
}

.tabs {
  gap: var(--sr-space-2);
}

.tabs button {
  min-height: 38px;
  background: var(--sr-surface);
  white-space: nowrap;
}

.tabs button.active,
.pagination button.active {
  background: var(--sr-primary-soft);
  border-color: var(--sr-primary);
  color: var(--sr-primary-active);
}

.filter-strip {
  position: sticky;
  top: calc(var(--sr-topbar-height) + var(--sr-space-2));
  z-index: 2;
  padding: var(--sr-space-2) 0;
  background: var(--sr-surface);
}

.table-scroll {
  min-width: 0;
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
}

.table-scroll table {
  min-width: 960px;
}

table {
  background: var(--sr-surface);
  border-collapse: separate;
  border-spacing: 0;
}

th {
  background: var(--sr-surface);
  color: var(--sr-text-muted);
  font-weight: 700;
}

th,
td {
  min-height: var(--sr-table-row);
  border-bottom: 1px solid var(--sr-border);
  padding: var(--sr-space-3);
}

tbody tr:hover,
.ticket-row:hover {
  background: var(--sr-surface-selected);
}

.selected-row {
  outline: 2px solid color-mix(in srgb, var(--sr-primary) 68%, var(--sr-border));
  outline-offset: -2px;
  background: var(--sr-surface-selected);
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
  margin-top: var(--sr-space-4);
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.pagination .toolbar {
  justify-content: flex-end;
}

.inspector {
  width: var(--sr-inspector-width);
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  border-radius: var(--sr-radius-sm);
  box-shadow: var(--sr-shadow-inspector);
  padding: var(--sr-space-4);
}

.inspector-toolbar {
  justify-content: space-between;
  align-items: center;
  padding-bottom: var(--sr-space-2);
  border-bottom: 1px solid var(--sr-border);
}

.inspector-toolbar button {
  width: 36px;
  min-height: 36px;
  padding: 0;
}

.summary-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.summary-grid > div {
  background: var(--sr-surface-muted);
  border-color: var(--sr-border);
}

.stage-flow {
  overflow-x: auto;
  grid-template-columns: repeat(7, minmax(128px, 1fr));
}

.stage {
  min-height: 72px;
  border-radius: var(--sr-radius-sm);
}

.stage.current,
.stage.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary-active);
}

.desktop-header,
.page-header {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding-inline: 0;
}

.dashboard-grid {
  grid-template-columns: minmax(0, 1.8fr) minmax(320px, .8fr);
}

.dashboard-side {
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
}

.activity-row {
  border-color: var(--sr-border);
  background: var(--sr-surface);
}

.notification-list .activity-row {
  grid-template-columns: 120px minmax(220px, .9fr) minmax(0, 1fr);
}

.brand {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.brand .brand-mark {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 7px;
  background: linear-gradient(135deg, var(--sr-primary), #22c55e);
  color: var(--sr-text-inverse);
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

.brand-svg {
  width: 18px;
  height: 18px;
  display: block;
}

.brand > span:not(.brand-mark) {
  display: grid;
  gap: 2px;
  color: #eef5f7;
  font-size: 18px;
  font-weight: 700;
}

.brand small {
  display: block;
  color: var(--sr-sidebar-muted);
  font-size: 12px;
  font-weight: 500;
}

.topbar .toolbar {
  align-items: center;
  gap: var(--sr-space-2);
}

.topbar-action {
  min-height: 36px;
  gap: 7px;
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  white-space: nowrap;
}

.topbar-action.icon-only {
  min-width: 66px;
  padding-inline: 9px;
}

.button-icon {
  width: 18px;
  min-width: 18px;
  display: inline-grid;
  place-items: center;
  font-size: 14px;
  line-height: 1;
}

.button-icon .icon-svg,
.button-svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.1;
}

.theme-toggle-button {
  color: var(--sr-text-secondary);
}

.theme-pill {
  width: 32px;
  height: 18px;
  display: inline-block;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  border: 1px solid var(--sr-border-strong);
  position: relative;
}

.theme-pill::after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  left: 3px;
  top: 2px;
  border-radius: 50%;
  background: var(--sr-text-secondary);
}

body.dark .theme-pill::after {
  left: 15px;
  background: var(--sr-primary);
}

.desktop-controls {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  min-height: 44px;
  width: 100%;
}

.desktop-header-actions {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
  min-width: 0;
}

.desktop-header-actions > .small {
  flex: 0 0 auto;
  line-height: 34px;
  white-space: nowrap;
}

.desktop-header-actions .tabs.compact {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 0;
}

.desktop-header-actions .tabs.compact button {
  height: 34px;
  min-height: 34px;
  padding-inline: 13px;
}

.desktop-header-actions > button.primary {
  flex: 0 0 auto;
  height: 44px;
  min-height: 44px;
  align-self: center;
  padding-inline: 18px;
}

.mode-switch {
  flex: 0 0 auto;
  height: 34px;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 12px 0 8px;
  border: 1px solid color-mix(in srgb, var(--sr-primary) 42%, var(--sr-border));
  border-radius: 8px;
  background: color-mix(in srgb, var(--sr-primary-soft) 26%, var(--sr-surface));
  color: var(--sr-primary-active);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.mode-switch > span {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, var(--sr-primary) 45%, #ffffff);
  background: var(--sr-surface);
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--sr-primary) 12%, transparent);
}

.mode-switch.mode-assisted {
  border-color: color-mix(in srgb, var(--sr-warning) 42%, var(--sr-border));
  background: color-mix(in srgb, var(--sr-warning-soft) 30%, var(--sr-surface));
  color: var(--sr-warning);
}

.mode-switch.mode-assisted > span {
  border-color: color-mix(in srgb, var(--sr-warning) 52%, #ffffff);
  box-shadow: inset 0 0 0 3px color-mix(in srgb, var(--sr-warning) 14%, transparent);
}

body.dark .mode-switch {
  background: color-mix(in srgb, var(--sr-primary-soft) 54%, var(--sr-surface));
  color: var(--sr-primary-hover);
}

body.dark .mode-switch > span {
  background: var(--sr-page);
}

.dashboard-kpis {
  grid-template-columns: repeat(4, minmax(190px, 1fr));
  gap: var(--sr-space-4);
}

.dashboard-kpi {
  min-height: 92px;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  align-content: center;
  gap: 14px;
  border-radius: var(--sr-radius-sm);
  padding: 16px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.dashboard-kpi-combo {
  min-width: 0;
  min-height: 92px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.dashboard-kpi.compact-kpi {
  min-width: 0;
  min-height: 92px;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 9px;
  padding: 13px 12px;
}

.dashboard-kpi.compact-kpi .kpi-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
}

.dashboard-kpi.compact-kpi .kpi-icon .icon-svg,
.dashboard-kpi.compact-kpi .kpi-svg {
  width: 18px;
  height: 18px;
}

.dashboard-kpi.compact-kpi .value {
  font-size: 24px;
}

.dashboard-kpi.compact-kpi .label {
  font-size: 13px;
  line-height: 16px;
}

.dashboard-kpi.compact-kpi .hint {
  font-size: 12px;
  line-height: 15px;
}

.dashboard-kpi:hover {
  transform: translateY(-1px);
}

.kpi-icon {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 9px;
  font-size: 22px;
  font-weight: 700;
}

.kpi-icon .icon-svg,
.kpi-svg {
  width: 23px;
  height: 23px;
  stroke-width: 2.1;
}

.kpi-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-kpi .value {
  font-size: 28px;
  font-weight: 800;
  color: var(--sr-text);
}

.dashboard-kpi .label {
  color: var(--sr-text);
  line-height: 18px;
}

.dashboard-kpi .hint {
  line-height: 17px;
}

.dashboard-kpi.tone-mint .kpi-icon {
  background: #e6f7f0;
  color: #0f8b70;
}

.dashboard-kpi.tone-cyan .kpi-icon {
  background: #e3f7f8;
  color: #087f8c;
}

.dashboard-kpi.tone-orange .kpi-icon {
  background: #fff1db;
  color: #df6b16;
}

.dashboard-kpi.tone-red .kpi-icon {
  background: #ffe8e8;
  color: #dc3b3b;
}

.dashboard-kpi.tone-violet .kpi-icon {
  background: #f0e7ff;
  color: #7c3aed;
}

.dashboard-kpi.tone-blue .kpi-icon {
  background: #e5f0ff;
  color: #2563eb;
}

.dashboard-kpi.tone-amber .kpi-icon {
  background: #fff4d6;
  color: #c77700;
}

body.dark .dashboard-kpi.tone-mint .kpi-icon {
  background: #173b35;
  color: #7bf2cf;
}

body.dark .dashboard-kpi.tone-cyan .kpi-icon {
  background: #173842;
  color: #7ddbea;
}

body.dark .dashboard-kpi.tone-orange .kpi-icon {
  background: #402918;
  color: #ffb169;
}

body.dark .dashboard-kpi.tone-red .kpi-icon {
  background: #432126;
  color: #ff9aa0;
}

body.dark .dashboard-kpi.tone-violet .kpi-icon {
  background: #302248;
  color: #c9b4ff;
}

body.dark .dashboard-kpi.tone-blue .kpi-icon {
  background: #1c2d49;
  color: #9fc1ff;
}

body.dark .dashboard-kpi.tone-amber .kpi-icon {
  background: #3d2d13;
  color: #ffd37a;
}

.dashboard-grid {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
  gap: var(--sr-space-4);
}

.dashboard-main {
  gap: var(--sr-space-4);
}

.dashboard-completed-slot {
  width: min(100%, 310px);
}

.dashboard-completed-slot .dashboard-kpi {
  min-height: 82px;
}

.dashboard-side {
  gap: var(--sr-space-4);
}

.dashboard-side-card .panel-head {
  margin-bottom: var(--sr-space-3);
}

.dashboard-side-card .panel-title,
.dashboard-main .panel-title {
  font-size: 16px;
  line-height: 22px;
}

.link-button {
  min-height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sr-primary-active);
  font-weight: 600;
}

.link-button:hover {
  background: transparent;
  color: var(--sr-primary-hover);
}

.table-scroll table.dashboard-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.dashboard-table th,
.dashboard-table td {
  padding: 9px 10px;
  font-size: 12px;
  overflow-wrap: anywhere;
  vertical-align: top;
}

.dashboard-table th {
  color: var(--sr-text-secondary);
}

.dashboard-table th:nth-child(1),
.dashboard-table td:nth-child(1) {
  width: 7%;
}

.dashboard-table th:nth-child(2),
.dashboard-table td:nth-child(2) {
  width: 7%;
}

.dashboard-table th:nth-child(3),
.dashboard-table td:nth-child(3) {
  width: 12%;
}

.dashboard-table th:nth-child(4),
.dashboard-table td:nth-child(4) {
  width: 16%;
}

.dashboard-table th:nth-child(5),
.dashboard-table td:nth-child(5) {
  width: 13%;
}

.dashboard-table th:nth-child(6),
.dashboard-table td:nth-child(6) {
  width: 10%;
}

.dashboard-table th:nth-child(7),
.dashboard-table td:nth-child(7) {
  width: 11%;
}

.dashboard-table th:nth-child(8),
.dashboard-table td:nth-child(8) {
  width: 11%;
}

.dashboard-table th:nth-child(9),
.dashboard-table td:nth-child(9) {
  width: 12%;
}

.dashboard-table td:nth-child(5),
.dashboard-table td:nth-child(6) {
  overflow: hidden;
  padding-left: 6px;
  padding-right: 6px;
}

.dashboard-table .status,
.dashboard-table .priority {
  display: inline-block;
  max-width: 100%;
  min-height: 20px;
  overflow: hidden;
  padding: 2px 6px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.compact-progress {
  min-width: 105px;
}

.compact-progress .split {
  margin-bottom: 3px;
}

.bar {
  height: 7px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.bar span {
  border-radius: inherit;
}

.workload-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}

.workload-row {
  min-height: 52px;
  min-width: 0;
  grid-template-columns: minmax(116px, 1fr) repeat(4, minmax(26px, 34px)) minmax(52px, 64px);
  gap: 5px;
  border-radius: var(--sr-radius-sm);
  padding: 9px 10px;
  box-shadow: none;
  overflow: hidden;
}

.workload-row strong {
  font-size: 13px;
  line-height: 16px;
}

.workload-row .small {
  font-size: 11px;
  line-height: 14px;
}

.workload-row > span {
  min-width: 0;
  overflow: hidden;
}

.workload-row > span:not(:first-child) {
  justify-items: center;
  text-align: center;
}

.workload-row > span:first-child strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workload-row > span:not(:first-child) .small {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.workload-progress {
  min-width: 0;
  justify-items: stretch !important;
}

.workload-progress .bar {
  width: 100%;
}

.operation-mode-card {
  gap: var(--sr-space-3);
}

.operation-mode-card p {
  line-height: 19px;
}

.operation-mode-card .summary-grid {
  gap: var(--sr-space-2);
}

.operation-mode-card .summary-grid > div {
  min-height: 72px;
  position: relative;
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.operation-mode-card .summary-grid > div::after {
  content: "\2713";
  width: 18px;
  height: 18px;
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid var(--sr-primary);
  color: var(--sr-primary-active);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.dashboard-actions {
  gap: 7px;
}

.dashboard-actions button {
  width: 100%;
  min-height: 28px;
  padding-block: 4px;
  justify-content: center;
  font-size: 12px;
}

.attention-list {
  gap: 8px;
}

.attention-row {
  min-height: 54px;
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  padding: 9px 12px;
}

.attention-row.risk {
  border-left-color: var(--sr-danger);
}

.attention-row.warning {
  border-left-color: var(--sr-warning);
}

.attention-row.info {
  border-left-color: var(--sr-info);
}

.activity-list {
  gap: 0;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
}

.activity-row {
  min-height: 28px;
  grid-template-columns: 120px minmax(220px, .8fr) minmax(0, 1fr);
  gap: 10px;
  border: 0;
  border-bottom: 1px solid var(--sr-border);
  border-radius: 0;
  padding: 5px 10px;
  background: var(--sr-surface);
}

.activity-row > span {
  min-width: 0;
}

.activity-row strong,
.activity-row .small {
  display: block;
}

.activity-row:last-child {
  border-bottom: 0;
}

body.dark .status.warn,
body.dark .priority.warn {
  color: var(--sr-warning);
}

body.dark .topbar-action {
  background: var(--sr-surface);
  color: var(--sr-text);
}

body.dark .topbar-action.primary {
  background: var(--sr-primary);
  border-color: var(--sr-primary);
  color: var(--sr-text-inverse);
}

body.dark .link-button {
  color: var(--sr-primary-hover);
}

body.dark .theme-pill {
  background: #0b1118;
}

.switch {
  min-height: var(--sr-control-height);
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  color: var(--sr-text);
  font-size: 14px;
}

.switch input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
}

.switch span {
  width: 44px;
  height: 24px;
  border-radius: var(--sr-radius-pill);
  background: var(--sr-border-strong);
  position: relative;
}

.switch span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
  transition: transform var(--sr-duration-normal) var(--sr-ease);
}

.switch input:checked + span {
  background: var(--sr-primary);
}

.switch input:checked + span::after {
  transform: translateX(20px);
}

.muted-control {
  opacity: .72;
}

.mode-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.mode-card {
  min-height: 112px;
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  color: var(--sr-text);
  font-size: 14px;
  cursor: pointer;
}

.mode-card input {
  width: auto;
  min-height: auto;
}

.mode-card strong,
.mode-card span {
  display: block;
}

.mode-card span {
  margin-top: var(--sr-space-2);
  color: var(--sr-text-secondary);
}

.settings-panel {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sr-space-2);
}

.settings-tabs {
  margin-bottom: 0;
}

.integration-card {
  min-height: 84px;
}

.completion-lock {
  border-color: color-mix(in srgb, var(--sr-success) 30%, var(--sr-border));
}

.ticket-controls {
  margin-bottom: var(--sr-space-4);
}

.ticket-controls input {
  min-width: min(420px, 100%);
}

.package-card {
  border-radius: var(--sr-radius-sm);
}

.workpackage-table td {
  vertical-align: top;
}

.registry-filters {
  display: grid;
  grid-template-columns: minmax(260px, 1.6fr) repeat(4, minmax(140px, 1fr));
  align-items: end;
}

.registry-filters input,
.registry-filters select,
.registry-filters button {
  width: 100%;
}

.notification-group-expanded {
  display: grid;
  gap: var(--sr-space-2);
  margin: calc(var(--sr-space-2) * -1) 0 var(--sr-space-2) var(--sr-space-5);
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.drawer-panel {
  border-color: color-mix(in srgb, var(--sr-primary) 32%, var(--sr-border));
  box-shadow: var(--sr-shadow-inspector);
}

.workspace.tickets-workspace {
  gap: var(--sr-space-4);
}

.workspace.tickets-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 360px;
}

@media (min-width: 761px) {
  .workspace.tickets-workspace.with-inspector {
    grid-template-columns: minmax(1180px, 1fr) 360px;
    min-width: calc(1180px + 360px + var(--sr-space-4));
  }
}

@media (min-width: 761px) {
  .workspace.tickets-workspace.with-inspector {
    grid-template-columns: minmax(1180px, 1fr) 360px;
    min-width: calc(1180px + 360px + var(--sr-space-4));
  }

  .workspace.tickets-workspace.with-inspector .inspector {
    position: sticky;
    inset: auto;
    top: calc(var(--sr-topbar-height) + var(--sr-space-5));
    width: 360px;
    height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-5) * 2);
  }
}

.tickets-board {
  display: grid;
  gap: var(--sr-space-4);
}

.ticket-list-panel {
  display: grid;
  gap: var(--sr-space-3);
  padding: var(--sr-space-4);
}

.ticket-list-controls {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(210px, 260px) minmax(120px, 150px) minmax(180px, 230px);
  gap: var(--sr-space-3);
  align-items: center;
}

.ticket-list-controls label {
  margin: 0;
}

.ticket-list-controls input,
.ticket-list-controls select,
.ticket-list-controls button {
  width: 100%;
  min-height: 38px;
}

.ticket-search-field {
  position: relative;
}

.ticket-search-field input {
  padding-right: 42px;
}

.ticket-search-field .icon-svg {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
  transform: translateY(-50%);
  pointer-events: none;
}

.ticket-filter-submit,
.ticket-create-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.ticket-filter-submit.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
}

.ticket-filter-submit .icon-svg,
.ticket-create-button .icon-svg {
  width: 16px;
  height: 16px;
}

.ticket-advanced-filters {
  display: grid;
  grid-template-columns: minmax(180px, 0.75fr) minmax(0, 2fr) auto;
  gap: var(--sr-space-3);
  align-items: start;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.ticket-advanced-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ticket-advanced-filter-actions button {
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 800;
}

.ticket-advanced-filter-actions button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
}

.ticket-advanced-filter-actions button span {
  margin-left: 6px;
  color: var(--sr-text-secondary);
}

.ticket-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.ticket-filter-bar button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 7px;
  font-size: 12px;
  font-weight: 800;
}

.ticket-filter-bar button strong {
  min-width: 22px;
  min-height: 20px;
  display: inline-grid;
  place-items: center;
  padding-inline: 7px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.ticket-filter-bar button.active strong {
  background: color-mix(in srgb, var(--sr-primary) 12%, var(--sr-surface));
  color: var(--sr-primary);
}

.ticket-filter-bar .danger-filter strong {
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.ticket-filter-bar .done-filter strong {
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.ticket-registry-table {
  width: 100%;
  min-width: 1180px;
  table-layout: fixed;
}

.ticket-registry-table th,
.ticket-registry-table td {
  padding: 10px 9px;
  font-size: 12px;
  vertical-align: middle;
}

.ticket-registry-table th {
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ticket-registry-table th:nth-child(1),
.ticket-registry-table td:nth-child(1) {
  width: 42px;
}

.ticket-registry-table th:nth-child(2),
.ticket-registry-table td:nth-child(2) {
  width: 94px;
}

.ticket-registry-table th:nth-child(3),
.ticket-registry-table td:nth-child(3) {
  width: 90px;
}

.ticket-registry-table th:nth-child(4),
.ticket-registry-table td:nth-child(4) {
  width: 132px;
}

.ticket-registry-table th:nth-child(5),
.ticket-registry-table td:nth-child(5) {
  width: 180px;
}

.ticket-registry-table th:nth-child(6),
.ticket-registry-table td:nth-child(6) {
  width: 145px;
}

.ticket-registry-table th:nth-child(7),
.ticket-registry-table td:nth-child(7) {
  width: 120px;
}

.ticket-registry-table th:nth-child(8),
.ticket-registry-table td:nth-child(8) {
  width: 160px;
}

.ticket-registry-table th:nth-child(9),
.ticket-registry-table td:nth-child(9) {
  width: 94px;
}

.ticket-registry-table th:nth-child(10),
.ticket-registry-table td:nth-child(10) {
  width: 116px;
}

.ticket-registry-table th:nth-child(11),
.ticket-registry-table td:nth-child(11) {
  width: 122px;
}

.ticket-registry-table td:nth-child(4),
.ticket-registry-table td:nth-child(5),
.ticket-registry-table td:nth-child(6),
.ticket-registry-table td:nth-child(7),
.ticket-registry-table td:nth-child(11) {
  overflow: hidden;
  text-overflow: ellipsis;
}

.ticket-registry-table td:nth-child(4),
.ticket-registry-table td:nth-child(6),
.ticket-registry-table td:nth-child(7) {
  white-space: nowrap;
}

.ticket-registry-table .status,
.ticket-registry-table .priority {
  display: inline-block;
  max-width: 100%;
  min-height: 22px;
  overflow: hidden;
  padding: 2px 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-registry-check input,
.ticket-registry-table th input {
  width: 17px;
  height: 17px;
  accent-color: var(--sr-primary);
}

.ticket-registry-row.selected-row {
  background: var(--sr-primary-soft);
  box-shadow: inset 2px 0 0 var(--sr-primary), inset -2px 0 0 var(--sr-primary);
}

.ticket-progress {
  display: grid;
  gap: 4px;
  min-width: 90px;
}

.ticket-progress .bar {
  height: 7px;
}

.ticket-list-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
}

.ticket-list-footer .pagination {
  margin: 0;
}

.ticket-page-size {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 12px;
  color: var(--sr-text-secondary);
}

.ticket-page-size select {
  min-height: 34px;
  width: 64px;
}

.ticket-page-size select:not(:disabled) {
  cursor: pointer;
}

.ticket-inline-card {
  padding: var(--sr-space-4);
  scroll-margin-top: calc(var(--sr-topbar-height) + var(--sr-space-4));
}

.ticket-workspace-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
  margin-bottom: var(--sr-space-3);
}

.ticket-workspace-head-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.ticket-workspace-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: var(--sr-text);
  font-weight: 700;
}

.ticket-workspace-title strong {
  font-weight: 700;
}

.ticket-collapse-button {
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border-color: var(--sr-border);
  background: var(--sr-surface);
  color: var(--sr-text-secondary);
}

.ticket-collapse-button:hover {
  border-color: color-mix(in srgb, var(--sr-primary) 45%, var(--sr-border));
  color: var(--sr-primary);
}

.ticket-inline-card.is-collapsed {
  padding-bottom: var(--sr-space-3);
}

.ticket-detail-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: var(--sr-space-3);
}

.ticket-detail-tabs button {
  min-height: 32px;
  padding: 6px 12px;
  border: 1px solid var(--sr-border);
  background: var(--sr-surface);
  color: var(--sr-text);
  font-size: 12px;
  font-weight: 500;
  box-shadow: 0 1px 1px rgba(15, 35, 52, 0.03);
}

.ticket-detail-tabs button:hover {
  border-color: color-mix(in srgb, var(--sr-primary) 42%, var(--sr-border));
  color: var(--sr-primary);
}

.ticket-detail-tabs button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
}

.ticket-tab-body > .grid {
  gap: var(--sr-space-3);
}

.ticket-overview-split {
  align-items: stretch;
}

.ticket-overview-split .soft-panel {
  min-height: 96px;
  padding: 14px 16px;
}

.ticket-overview-split .panel-title {
  margin-bottom: 8px;
}

.ticket-overview-split .overview-task-list {
  gap: 6px;
}

.ticket-overview-split .task-row {
  min-height: 28px;
  padding: 4px 8px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface);
}

.ticket-overview-composition {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
  gap: var(--sr-space-3);
  align-items: stretch;
}

.ticket-overview-left {
  display: grid;
  grid-template-rows: minmax(112px, auto) auto;
  gap: var(--sr-space-3);
  min-width: 0;
}

.ticket-event-panel {
  min-height: 112px;
  padding: 16px;
}

.ticket-event-panel .panel-title,
.ticket-tasks-panel .panel-title {
  margin-bottom: 8px;
}

.ticket-tasks-panel {
  min-height: 100%;
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 16px;
  cursor: pointer;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.ticket-tasks-panel:hover {
  border-color: color-mix(in srgb, var(--sr-primary) 42%, var(--sr-border));
  box-shadow: 0 8px 24px rgba(15, 35, 52, 0.06);
}

.ticket-tasks-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.ticket-tasks-panel-head button {
  min-height: 30px;
  padding: 5px 10px;
  background: var(--sr-surface);
  color: var(--sr-primary);
  font-size: 12px;
}

.ticket-tasks-panel .overview-task-list {
  gap: 8px;
}

.ticket-tasks-panel .task-row {
  align-items: flex-start;
}

.task-more-row {
  color: var(--sr-text-secondary);
}

.ghost-box {
  border-style: dashed;
  background: transparent;
}

.ticket-tab-body > .notice + .ticket-route-mode-panel,
.ticket-tab-body > .ticket-route-mode-panel + .grid.two {
  margin-top: var(--sr-space-3);
}

.ticket-tab-body > .grid.two {
  gap: var(--sr-space-3);
}

.ticket-inline-card .stage-flow {
  display: grid;
  grid-template-columns: repeat(7, minmax(96px, 1fr));
  gap: 12px;
  overflow-x: auto;
  padding-bottom: var(--sr-space-1);
}

.ticket-inline-card .stage {
  position: relative;
  min-height: 64px;
  display: grid;
  place-items: center;
  gap: 3px;
  padding: 8px 10px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface);
  color: var(--sr-text-secondary);
  text-align: center;
  font-size: 11px;
  font-weight: 600;
}

.ticket-inline-card .stage::after {
  content: "";
  position: absolute;
  right: -12px;
  top: 50%;
  width: 12px;
  height: 2px;
  background: var(--sr-border);
}

.ticket-inline-card .stage:last-child::after {
  display: none;
}

.ticket-inline-card .stage-index {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.ticket-inline-card .stage.done {
  border-color: color-mix(in srgb, var(--sr-primary) 48%, var(--sr-border));
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
}

.ticket-inline-card .stage.done .stage-index {
  background: var(--sr-primary);
  color: #fff;
}

.ticket-inline-card .stage-check {
  display: inline-grid;
  place-items: center;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  color: var(--sr-primary);
}

.ticket-inline-card .stage-check-icon {
  width: 14px;
  height: 14px;
  stroke-width: 2.4;
}

.ticket-inline-card .stage strong {
  font-weight: 650;
}

.ticket-inline-card .row-card {
  min-height: 70px;
  display: grid;
  gap: 4px;
  align-content: center;
  padding: var(--sr-space-3);
  box-shadow: none;
}

.ticket-metric-grid {
  align-items: stretch;
}

.ticket-inline-card .ticket-metric-card {
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 10px;
  row-gap: 2px;
  align-content: center;
  min-height: 66px;
}

.ticket-metric-icon {
  grid-row: 1 / span 2;
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 0;
  background: transparent;
  color: var(--sr-text);
}

.ticket-metric-icon .icon-svg {
  width: 20px;
  height: 20px;
  stroke-width: 2.15;
}

.ticket-inline-card .ticket-metric-card > span:not(.ticket-metric-icon) {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 500;
}

.ticket-inline-card .ticket-metric-card strong {
  color: var(--sr-text);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.35;
}

.ticket-inline-card .soft-panel,
.ticket-inline-card .panel .soft-panel {
  border-color: var(--sr-border);
  box-shadow: none;
}

.ticket-inline-card .overview-task-list {
  gap: 9px;
}

.ticket-inline-card .task-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 22px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.ticket-inline-card .task-row-action {
  width: 100%;
  justify-content: flex-start;
  text-align: left;
  color: var(--sr-text);
  cursor: pointer;
}

.ticket-inline-card .task-row-action:hover .task-box {
  border-color: var(--sr-primary);
}

.ticket-inline-card .task-row-action:disabled {
  opacity: 1;
  cursor: default;
}

.ticket-inline-card .task-copy {
  display: grid;
  gap: 1px;
}

.ticket-inline-card .task-box {
  position: relative;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 1px solid var(--sr-border);
  border-radius: 4px;
  background: var(--sr-surface);
}

.ticket-inline-card .task-row.done .task-box {
  border-color: var(--sr-success);
  background: var(--sr-success);
}

.ticket-inline-card .task-row.done .task-box::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 1px;
  width: 5px;
  height: 9px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.ticket-tasks-overlay {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 32px;
}

.ticket-tasks-backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: rgba(15, 23, 42, 0.46);
  backdrop-filter: blur(3px);
  cursor: pointer;
}

.ticket-tasks-modal {
  position: relative;
  width: min(760px, calc(100vw - 48px));
  max-height: min(760px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
  box-shadow: var(--sr-shadow-inspector);
}

.ticket-tasks-modal-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--sr-border);
}

.ticket-tasks-modal-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.ticket-tasks-modal-body {
  min-height: 0;
  overflow: auto;
  padding: 16px 20px 20px;
}

.ticket-tasks-modal .overview-task-list {
  gap: 10px;
}

.ticket-tasks-modal .task-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface);
  color: var(--sr-text);
}

.ticket-tasks-modal .task-row-action {
  width: 100%;
  justify-content: flex-start;
  text-align: left;
  cursor: pointer;
}

.ticket-tasks-modal .task-row-action:hover .task-box {
  border-color: var(--sr-primary);
}

.ticket-tasks-modal .task-row-action:disabled {
  opacity: 1;
  cursor: default;
}

.ticket-tasks-modal .task-copy {
  display: grid;
  gap: 1px;
}

.ticket-tasks-modal .task-box {
  position: relative;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 1px solid var(--sr-border);
  border-radius: 4px;
  background: var(--sr-surface);
}

.ticket-tasks-modal .task-row.done .task-box {
  border-color: var(--sr-success);
  background: var(--sr-success);
}

.ticket-tasks-modal .task-row.done .task-box::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 1px;
  width: 5px;
  height: 9px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.ticket-inline-card input[type="checkbox"] {
  width: 16px;
  min-width: 16px;
  height: 16px;
  min-height: 16px;
  accent-color: var(--sr-primary);
}

.ticket-inline-card .manual-route-form,
.ticket-inline-card .completion-lock,
.ticket-inline-card .ticket-operation-panel,
.ticket-inline-card .ticket-route-mode-panel,
.ticket-inline-card .ticket-ai-route-panel {
  display: grid;
  gap: var(--sr-space-3);
  align-content: start;
  box-shadow: none;
}

.ticket-route-workspace {
  display: grid;
  gap: 12px;
}

.ticket-route-workspace > .panel,
.ticket-route-workspace > .grid {
  margin: 0;
}

.ticket-routing-summary {
  display: grid;
  gap: 10px;
  padding: 14px 16px 12px;
  box-shadow: none;
}

.route-proposal-summary-grid {
  display: grid;
  grid-template-columns: minmax(330px, 0.95fr) minmax(520px, 1.55fr) minmax(180px, 0.45fr);
  align-items: stretch;
  min-width: 0;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.route-proposal-status-block,
.route-proposal-checklist,
.route-proposal-confidence {
  min-width: 0;
  padding: 14px 18px;
}

.route-proposal-status-block,
.route-proposal-checklist {
  border-right: 1px solid var(--sr-border);
}

.route-proposal-status-block {
  display: grid;
  align-content: center;
  gap: 10px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.route-proposal-status-block > div:not(.route-proposal-state) span {
  color: var(--sr-text);
}

.route-proposal-state {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--sr-success);
}

.route-proposal-state strong {
  font-size: 16px;
  line-height: 1.2;
}

.route-proposal-state-icon {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  color: var(--sr-success);
}

.route-proposal-state-icon .icon-svg {
  width: 26px;
  height: 26px;
  stroke-width: 2;
}

.route-proposal-warning {
  display: flex;
  align-items: center;
  gap: 7px;
}

.route-proposal-warning.is-visible span {
  display: inline-grid;
  place-items: center;
  color: var(--sr-warning);
}

.route-proposal-warning .icon-svg {
  width: 17px;
  height: 17px;
}

.route-proposal-checklist {
  display: grid;
  align-content: center;
  gap: 8px;
}

.route-proposal-checklist-item {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  color: var(--sr-text-secondary);
  font-size: 13px;
  line-height: 1.3;
}

.route-proposal-checklist-item > span:first-child {
  display: inline-grid;
  place-items: center;
  color: var(--sr-primary);
}

.route-proposal-checklist-item .icon-svg {
  width: 16px;
  height: 16px;
}

.route-proposal-confidence {
  display: grid;
  align-content: center;
  gap: 7px;
}

.route-proposal-confidence > span {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.route-proposal-confidence strong {
  color: var(--sr-primary);
  font-size: 24px;
  line-height: 1;
}

.route-proposal-confidence .progress {
  display: block;
  width: 100%;
  max-width: 180px;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.route-proposal-confidence .progress > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.route-proposal-actions {
  justify-content: flex-end;
  padding-top: 0;
}

.ticket-inline-card .ticket-operation-panel .toolbar,
.ticket-inline-card .completion-lock,
.ticket-inline-card .ticket-ai-route-actions {
  gap: 12px;
}

.ticket-inline-card .ticket-operation-panel .toolbar {
  margin-top: var(--sr-space-2);
}

.ticket-inline-card .ticket-route-mode-panel {
  gap: 12px;
  padding: 14px 16px;
}

.ticket-route-workspace .ticket-route-mode-panel .route-mode-head .small {
  display: none;
}

.route-mode-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.route-mode-head .small {
  margin-top: 2px;
}

.route-mode-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.compact-route-mode {
  padding: 12px;
}

.compact-route-mode .route-mode-head .small {
  display: none;
}

.compact-route-mode .route-mode-board {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.compact-route-mode .route-mode-group {
  gap: 6px;
  padding: 8px;
}

.compact-route-mode .route-mode-group-head {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 6px;
  align-items: start;
}

.compact-route-mode .route-mode-icon {
  width: 24px;
  height: 24px;
}

.compact-route-mode .route-mode-icon .icon-svg {
  width: 18px;
  height: 18px;
}

.compact-route-mode .route-mode-label {
  font-size: 11px;
}

.compact-route-mode .route-mode-group strong {
  font-size: 12px;
}

.compact-route-mode .route-mode-actions,
.compact-route-mode .route-mode-group > button {
  margin-top: 2px;
}

.compact-route-mode .route-mode-actions button,
.compact-route-mode .route-mode-group > button {
  min-height: 28px;
  padding: 4px 8px;
  font-size: 11px;
}

.route-mode-group {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.route-mode-group-head {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.route-mode-group strong {
  display: block;
  color: var(--sr-text);
  font-size: 13px;
  line-height: 1.25;
}

.route-mode-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.route-mode-actions button,
.route-mode-group > button {
  width: fit-content;
  min-height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 600;
}

.route-mode-actions button.active,
.route-mode-actions button:disabled.active {
  border-color: color-mix(in srgb, var(--sr-primary) 45%, var(--sr-border));
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
}

.route-mode-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.route-mode-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-height: 30px;
  padding: 0;
  border: 0;
  background: transparent;
}

.route-mode-icon {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 0;
  background: transparent;
  color: var(--sr-text);
}

.route-mode-icon.tone-blue {
  background: transparent;
  color: var(--sr-text);
}

.route-mode-icon.tone-violet {
  background: transparent;
  color: var(--sr-text);
}

.route-mode-icon .icon-svg {
  width: 20px;
  height: 20px;
  stroke-width: 2.15;
}

.route-mode-label {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 500;
}

.route-mode-chip {
  min-height: 26px;
  padding: 3px 9px;
  border-color: color-mix(in srgb, var(--sr-primary) 35%, var(--sr-border));
  background: var(--sr-primary-soft);
  color: var(--sr-primary);
  font-size: 12px;
  font-weight: 650;
}

.route-mode-chip.is-on {
  background: var(--sr-success-soft);
  border-color: color-mix(in srgb, var(--sr-success) 42%, var(--sr-border));
  color: var(--sr-success);
}

.route-mode-chip:disabled {
  opacity: 1;
  cursor: default;
}

.ticket-inline-card .ticket-route-mode-panel .toolbar {
  gap: 8px;
  padding-top: 0;
}

.ticket-inline-card .ticket-route-mode-panel .toolbar button {
  min-height: 30px;
  padding: 5px 10px;
  margin-top: 0;
  font-size: 12px;
  font-weight: 500;
}

.ticket-ai-route-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.manual-route-required {
  display: flex;
  align-items: center;
  min-height: 38px;
  margin: 0;
  color: var(--sr-text);
}

.manual-route-required span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.ticket-inline-card .route-admin-grid {
  grid-template-columns: minmax(760px, 1.55fr) minmax(320px, 0.7fr);
  gap: 12px;
  align-items: stretch;
}

.ticket-inline-card .manual-route-form {
  grid-template-columns: minmax(290px, 1.2fr) minmax(230px, 1fr) minmax(150px, 0.65fr);
  column-gap: 14px;
  row-gap: 10px;
  padding: 16px;
}

.ticket-inline-card .manual-route-form .panel-title {
  grid-column: 1 / -1;
  margin-bottom: 2px;
}

.ticket-inline-card .manual-route-form > label,
.ticket-inline-card .manual-route-form > .grid.two label {
  gap: 5px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 500;
}

.ticket-inline-card .manual-route-form > .manual-route-primary {
  grid-column: 1;
  grid-row: 2;
}

.ticket-inline-card .manual-route-form > .manual-route-secondary {
  grid-column: 1;
  grid-row: 3 / span 4;
}

.ticket-inline-card .manual-route-form > .manual-route-priority {
  grid-column: 3;
  grid-row: 2;
}

.ticket-inline-card .manual-route-form > .manual-route-task {
  grid-column: 2;
  grid-row: 2;
}

.ticket-inline-card .manual-route-form > .manual-route-options {
  grid-column: 3;
  grid-row: 3;
  display: grid;
  gap: 5px;
}

.ticket-inline-card .manual-route-form > .manual-route-checklist {
  grid-column: 2;
  grid-row: 3;
}

.ticket-inline-card .manual-route-form > .manual-route-comment {
  grid-column: 2 / 4;
  grid-row: 4;
}

.ticket-inline-card .manual-route-form > .manual-route-footer {
  grid-column: 2 / 4;
  grid-row: 5;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.ticket-inline-card .manual-route-primary,
.ticket-inline-card .manual-route-secondary,
.ticket-inline-card .manual-route-priority,
.ticket-inline-card .manual-route-task,
.ticket-inline-card .manual-route-checklist,
.ticket-inline-card .manual-route-comment {
  min-width: 0;
  align-self: start;
  align-content: start;
}

.ticket-inline-card .manual-route-form select,
.ticket-inline-card .manual-route-form input,
.ticket-inline-card .manual-route-form textarea {
  min-height: 34px;
}

.ticket-inline-card .manual-route-form textarea {
  min-height: 58px;
}

.ticket-inline-card .manual-route-comment textarea {
  min-height: 118px;
}

.ticket-inline-card .manual-route-form .checkbox-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 7px;
}

.ticket-inline-card .manual-route-form .checkbox-grid label {
  align-self: start;
  min-height: 24px;
  gap: 6px;
  line-height: 1.2;
}

.ticket-inline-card .manual-route-footer > button[type="submit"] {
  flex: 0 0 auto;
  width: auto;
  min-width: 174px;
  height: 38px;
  min-height: 38px;
  padding: 0 16px;
  margin-top: 0;
}

.ticket-inline-card .manual-route-preview {
  max-width: 760px;
  margin: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
  line-height: 1.45;
}

.ticket-inline-card .ticket-ai-route-panel {
  padding: 16px;
}

.ticket-inline-card .ticket-ai-route-panel .notice {
  padding: 10px 12px;
}

.ticket-inline-card .ticket-ai-route-actions {
  gap: 10px;
}

.ticket-inline-card .ticket-ai-route-actions button {
  min-height: 34px;
  padding: 6px 11px;
}

.ticket-detail {
  display: grid;
  gap: var(--sr-space-4);
}

.ticket-detail-head {
  display: grid;
  gap: 8px;
}

.ticket-detail-number {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--sr-text);
}

.ticket-detail-number::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--sr-primary);
}

.ticket-detail h2 {
  margin: 0;
  font-size: 16px;
  line-height: 22px;
}

.ticket-detail-list {
  display: grid;
  gap: 2px;
}

.ticket-detail-row {
  display: grid;
  grid-template-columns: 22px minmax(92px, 1fr) minmax(0, 1.25fr);
  gap: 8px;
  align-items: center;
  min-height: 34px;
  padding: 5px 0;
  border-bottom: 1px solid var(--sr-border);
  font-size: 12px;
}

.ticket-detail-row > span:nth-child(2) {
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ticket-detail-row strong {
  min-width: 0;
  color: var(--sr-text);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.ticket-detail-icon {
  color: var(--sr-text-secondary);
}

.ticket-detail-icon .icon-svg {
  width: 17px;
  height: 17px;
}

.ticket-detail-progress {
  grid-column: 3;
  height: 7px;
  margin-top: -4px;
}

.ticket-detail-note {
  padding: 8px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface-muted);
  font-size: 12px;
}

.ticket-detail-actions {
  display: grid;
  gap: 9px;
}

.ticket-detail-actions button {
  justify-content: flex-start;
  gap: 8px;
  min-height: 40px;
}

.ticket-detail-actions .icon-svg {
  width: 17px;
  height: 17px;
}

.toolbar label {
  min-width: 180px;
}

.soft-panel {
  box-shadow: none;
}

.workspace.work-center-workspace {
  gap: var(--sr-space-4);
}

.workspace.work-center-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 292px;
}

.work-center-workspace .inspector {
  width: 292px;
  padding: var(--sr-space-4);
}

.work-center-board {
  display: grid;
  gap: var(--sr-space-4);
}

.work-center-notice:empty {
  display: none;
}

.work-center-notice:not(:empty) {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding: 0 var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.work-center-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(520px, .95fr);
  gap: var(--sr-space-4);
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.work-center-control-label {
  margin-bottom: 8px;
  color: var(--sr-text-secondary);
  font-size: 13px;
  font-weight: 800;
}

.work-center-queue-tabs,
.work-center-quick-periods {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.work-center-queue-tabs button,
.work-center-quick-periods button {
  min-height: 38px;
  padding-inline: 16px;
  background: var(--sr-surface);
}

.work-center-queue-tabs button.active,
.work-center-quick-periods button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary-active);
}

.work-center-period-panel {
  display: grid;
  grid-template-columns: minmax(190px, 1fr) minmax(210px, 1.1fr) minmax(92px, auto);
  gap: var(--sr-space-4);
  align-items: end;
}

.work-center-date-range {
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
  padding: 0 var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  color: var(--sr-text);
  font-weight: 650;
}

.work-center-date-range .icon-svg {
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
}

.work-center-switch {
  width: 44px;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding: 2px;
  border-radius: 999px;
  border-color: color-mix(in srgb, var(--sr-primary) 34%, var(--sr-border));
  background: var(--sr-surface-muted);
}

.work-center-switch span {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--sr-text-secondary);
  transition: transform .16s ease, background .16s ease;
}

.work-center-switch.active {
  background: var(--sr-primary-soft);
  justify-content: flex-end;
}

.work-center-switch.active span {
  background: var(--sr-primary);
}

.work-center-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: var(--sr-space-4);
}

.work-center-kpi {
  min-height: 118px;
}

.work-center-delta {
  margin-top: 4px;
  color: var(--sr-primary-active);
  font-size: 12px;
  font-weight: 700;
}

.work-center-kpi.tone-red .work-center-delta {
  color: var(--sr-danger);
}

.work-center-kpi.tone-orange .work-center-delta {
  color: var(--sr-warning);
}

.work-center-table-panel {
  padding: var(--sr-space-4);
}

.work-center-table-panel .panel-head {
  margin-bottom: var(--sr-space-3);
}

.work-center-count {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  margin-left: 8px;
  padding: 0 9px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.work-center-table {
  width: 100%;
  min-width: 1120px;
  table-layout: fixed;
}

.work-center-table th,
.work-center-table td {
  padding: 10px 12px;
  font-size: 13px;
  vertical-align: middle;
}

.work-center-table th {
  color: var(--sr-text-secondary);
}

.work-center-table th:nth-child(1),
.work-center-table td:nth-child(1) {
  width: 44px;
}

.work-center-table th:nth-child(2),
.work-center-table td:nth-child(2) {
  width: 82px;
}

.work-center-table th:nth-child(3),
.work-center-table td:nth-child(3) {
  width: 58px;
}

.work-center-table th:nth-child(4),
.work-center-table td:nth-child(4) {
  width: 140px;
}

.work-center-table th:nth-child(5),
.work-center-table td:nth-child(5) {
  width: 390px;
}

.work-center-table th:nth-child(6),
.work-center-table td:nth-child(6) {
  width: 146px;
}

.work-center-table th:nth-child(7),
.work-center-table td:nth-child(7) {
  width: 120px;
}

.work-center-table th:nth-child(8),
.work-center-table td:nth-child(8) {
  width: 198px;
}

.work-center-table th:nth-child(9),
.work-center-table td:nth-child(9) {
  width: 150px;
}

.work-center-table th:nth-child(10),
.work-center-table td:nth-child(10) {
  width: 70px;
}

.work-center-check input,
.work-center-table th input {
  width: 18px;
  height: 18px;
  accent-color: var(--sr-primary);
}

.work-center-type-icon {
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: var(--sr-radius-sm);
}

.work-center-type-icon .icon-svg {
  width: 20px;
  height: 20px;
}

.work-center-type-icon.tone-mint {
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.work-center-type-icon.tone-cyan {
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.work-center-type-icon.tone-blue {
  background: var(--sr-info-soft);
  color: #2563eb;
}

.work-center-type-icon.tone-orange {
  background: var(--sr-warning-soft);
  color: var(--sr-warning);
}

.work-center-type-icon.tone-red {
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.work-center-type-icon.tone-violet {
  background: var(--sr-violet-soft);
  color: var(--sr-violet);
}

.work-center-department {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 126px;
  max-width: 100%;
  overflow: hidden;
  padding: 3px 9px;
  border: 1px solid color-mix(in srgb, var(--sr-info) 26%, var(--sr-border));
  border-radius: 7px;
  background: var(--sr-info-soft);
  color: var(--sr-info);
  font-weight: 700;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.work-center-empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  color: var(--sr-text-secondary);
  font-weight: 800;
  line-height: 1.2;
}

.work-center-progress {
  display: grid;
  gap: 4px;
}

.work-center-progress .bar {
  width: 100%;
  height: 7px;
}

.work-center-overdue {
  color: var(--sr-danger);
  font-size: 12px;
  font-weight: 700;
}

.work-center-action-button {
  width: 42px;
  min-height: 42px;
  padding: 0;
}

.work-center-action-button .icon-svg {
  width: 18px;
  height: 18px;
}

.work-center-detail {
  display: grid;
  gap: var(--sr-space-4);
}

.work-center-detail-head,
.work-center-detail-section,
.work-center-detail-actions {
  display: grid;
  gap: 8px;
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.work-center-detail-number {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--sr-text);
  font-size: 20px;
}

.work-center-detail-number span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--sr-primary);
}

.work-center-detail-section > span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
}

.work-center-detail-section strong {
  color: var(--sr-text);
}

.work-center-detail-section .link-button {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.work-center-detail-section .link-button .icon-svg {
  width: 14px;
  height: 14px;
}

.detail-progress .bar {
  height: 8px;
}

.work-center-detail-actions {
  border-bottom: 0;
}

.work-center-detail-actions button {
  width: 100%;
  justify-content: center;
}

.work-center-detail-actions button .icon-svg {
  width: 16px;
  height: 16px;
  margin-right: 8px;
}

.settings-dashboard {
  display: grid;
  gap: var(--sr-space-4);
}

.settings-notice:empty {
  display: none;
}

.settings-notice:not(:empty) {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding: 0 var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.settings-section {
  padding: var(--sr-space-5);
}

.settings-section-title {
  margin-bottom: var(--sr-space-4);
  color: var(--sr-text);
  font-size: 20px;
  line-height: 28px;
  font-weight: 800;
}

.settings-section-title.small-title {
  margin-bottom: 0;
  font-size: 18px;
}

.settings-system-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(180px, 1fr)) minmax(160px, .8fr);
  gap: var(--sr-space-4);
  align-items: center;
}

.settings-card,
.settings-status-card,
.settings-help-card,
.settings-integration-card {
  min-width: 0;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.settings-card {
  min-height: 104px;
  display: grid;
  align-content: center;
  gap: var(--sr-space-2);
  padding: var(--sr-space-4);
}

.settings-switch-card {
  align-content: space-between;
}

.settings-info-dot {
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  margin-left: 6px;
  border: 1px solid var(--sr-border-strong);
  border-radius: 50%;
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.settings-value {
  color: var(--sr-text);
  font-size: 20px;
  line-height: 26px;
}

.settings-save-slot {
  display: flex;
  align-self: end;
  justify-content: flex-end;
  padding-bottom: 6px;
}

.settings-save-slot button,
.settings-form-actions .primary {
  min-height: 44px;
  padding-inline: 20px;
}

.settings-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sr-space-4);
  margin-bottom: var(--sr-space-4);
}

.settings-status-card {
  min-height: 92px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-content: center;
  column-gap: var(--sr-space-3);
  padding: var(--sr-space-4);
}

.settings-status-card > .small,
.settings-status-card > strong {
  grid-column: 2;
}

.settings-status-card strong {
  color: var(--sr-text);
  font-size: 20px;
  line-height: 26px;
}

.setting-icon {
  width: 36px;
  height: 36px;
  display: inline-grid;
  grid-row: 1 / span 3;
  place-items: center;
  border-radius: var(--sr-radius-sm);
}

.setting-icon .icon-svg {
  width: 20px;
  height: 20px;
}

.setting-icon.tone-mint {
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.setting-icon.tone-violet {
  background: var(--sr-violet-soft);
  color: var(--sr-violet);
}

.setting-icon.tone-amber {
  background: var(--sr-warning-soft);
  color: var(--sr-warning);
}

.setting-icon.tone-neutral {
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.settings-mode-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  gap: var(--sr-space-4);
  align-items: start;
}

.settings-subtitle {
  margin: var(--sr-space-3) 0 var(--sr-space-2);
  color: var(--sr-text);
  font-weight: 800;
}

.settings-mode-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.settings-mode-card {
  min-height: 66px;
  position: relative;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-content: center;
  gap: 2px 10px;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  color: var(--sr-text);
  cursor: pointer;
}

.settings-mode-card input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
}

.settings-radio {
  width: 18px;
  height: 18px;
  grid-row: 1 / span 2;
  align-self: start;
  border: 1px solid var(--sr-border-strong);
  border-radius: 50%;
  background: var(--sr-surface);
}

.settings-mode-card input:checked + .settings-radio {
  border: 5px solid var(--sr-primary);
}

.settings-mode-card strong {
  font-size: 14px;
}

.settings-mode-card small {
  color: var(--sr-text-secondary);
  font-size: 12px;
  line-height: 16px;
}

.settings-mode-card.selected-row {
  border-color: var(--sr-primary);
  background: color-mix(in srgb, var(--sr-primary-soft) 28%, var(--sr-surface));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--sr-primary) 16%, transparent);
}

.settings-mode-card.disabled {
  opacity: .64;
  cursor: default;
}

.settings-checks {
  display: grid;
  gap: var(--sr-space-2);
}

.settings-checks label {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
  color: var(--sr-text);
  font-size: 13px;
}

.settings-checks input {
  width: 18px;
  min-height: 18px;
  accent-color: var(--sr-primary);
}

.settings-help-card {
  min-height: 126px;
  padding: var(--sr-space-4);
  background: var(--sr-surface-muted);
}

.settings-help-title {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
  color: var(--sr-text);
  font-weight: 800;
}

.settings-help-card p {
  margin: var(--sr-space-3) 0 0;
  color: var(--sr-text-secondary);
  font-size: 13px;
  line-height: 19px;
}

.settings-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--sr-space-2);
  margin-top: var(--sr-space-4);
}

.settings-sla-layout {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.45fr);
  gap: var(--sr-space-4);
}

.settings-lines {
  display: grid;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
}

.settings-line {
  min-height: 56px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 190px);
  align-items: center;
  gap: var(--sr-space-3);
  padding: var(--sr-space-3) var(--sr-space-4);
  border-bottom: 1px solid var(--sr-border);
  background: var(--sr-surface);
}

.settings-line:last-child {
  border-bottom: 0;
}

.settings-line > span:first-child {
  display: grid;
  gap: 2px;
}

.settings-line strong {
  color: var(--sr-text);
}

.settings-line small {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.settings-line input,
.settings-line select {
  width: 100%;
  min-height: 34px;
}

.settings-line .switch {
  justify-self: end;
}

.compact-switch {
  min-height: 28px;
}

.compact-switch span {
  width: 38px;
  height: 22px;
}

.compact-switch span::after {
  width: 16px;
  height: 16px;
}

.compact-switch input:checked + span::after {
  transform: translateX(16px);
}

.settings-policy-card {
  display: grid;
  gap: var(--sr-space-3);
}

.settings-policy-form {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(180px, 1.2fr) minmax(100px, .6fr) auto;
  gap: var(--sr-space-2);
  align-items: end;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
}

.settings-policy-form strong {
  grid-column: 1 / -1;
}

.settings-policy-form input,
.settings-policy-form button {
  min-height: 34px;
}

.settings-policy-table {
  display: grid;
  border-top: 1px solid var(--sr-border);
}

.settings-policy-head,
.settings-policy-row {
  display: grid;
  grid-template-columns: 1fr 1.8fr .9fr .8fr;
  gap: var(--sr-space-2);
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid var(--sr-border);
  font-size: 13px;
}

.settings-policy-head {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.icon-text {
  min-height: 26px;
  padding: 2px 8px;
  color: var(--sr-primary-active);
}

.settings-integrations-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.settings-integration-card {
  min-height: 116px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 2px 10px;
  padding: var(--sr-space-4);
}

.settings-integration-card .setting-icon {
  grid-row: 1 / span 3;
}

.settings-integration-card strong {
  color: var(--sr-text);
}

.settings-integration-footer {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-2);
  margin-top: var(--sr-space-2);
}

.settings-integration-footer .connected,
.settings-integration-footer .disconnected {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.settings-integration-footer .connected::before,
.settings-integration-footer .disconnected::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}

.settings-integration-footer .connected {
  color: var(--sr-success);
}

.settings-integration-footer button {
  min-height: 30px;
  padding-inline: 12px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

@media (max-width: 1366px) {
  :root {
    --sr-sidebar-width: 220px;
  }

  .workspace {
    padding: var(--sr-space-4);
  }

  .workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .inspector {
    position: fixed;
    inset: var(--sr-topbar-height) 0 0 auto;
    width: min(var(--sr-inspector-width), 94vw);
    height: calc(100vh - var(--sr-topbar-height));
    border-radius: var(--sr-radius-sm) 0 0 var(--sr-radius-sm);
    z-index: 20;
  }

  .ai-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ai-expert-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .ai-case-list {
    position: static;
    max-height: none;
  }

  .registry-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1367px) and (max-width: 1700px) {
  .workspace.work-center-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 270px;
  }

  .work-center-workspace .inspector {
    width: 270px;
  }

  .work-center-table {
    min-width: 980px;
  }

  .work-center-table th,
  .work-center-table td {
    padding-inline: 9px;
    font-size: 12px;
  }

  .work-center-table th:nth-child(4),
  .work-center-table td:nth-child(4) {
    width: 118px;
  }

  .work-center-table th:nth-child(5),
  .work-center-table td:nth-child(5) {
    width: 300px;
  }

  .work-center-table th:nth-child(6),
  .work-center-table td:nth-child(6) {
    width: 136px;
  }

  .work-center-table th:nth-child(8),
  .work-center-table td:nth-child(8) {
    width: 182px;
  }

  .work-center-table th:nth-child(9),
  .work-center-table td:nth-child(9) {
    width: 138px;
  }

  .work-center-table th:nth-child(7),
  .work-center-table td:nth-child(7) {
    display: none;
  }
}

@media (min-width: 761px) {
  html,
  body {
    min-width: var(--sr-desktop-min-width);
    overflow-x: auto;
  }

  .app-shell {
    min-width: var(--sr-desktop-min-width);
  }

  .content-shell {
    min-width: calc(var(--sr-desktop-min-width) - var(--sr-sidebar-width));
  }

  .workspace {
    overflow-x: visible;
  }
}

@media (max-width: 760px) {
  .app-shell {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .app-shell::before {
    width: 72px;
  }

  .sidebar {
    width: 72px;
    padding-inline: var(--sr-space-2);
  }

  .brand {
    font-size: 0;
  }

  .brand::before {
    content: "SR";
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: var(--sr-radius-sm);
    background: var(--sr-primary);
    color: var(--sr-text-inverse);
    font-size: 16px;
  }

  .brand span,
  .nav-heading,
  .nav-group summary,
  .nav button span:not(.nav-icon) {
    display: none;
  }

  .nav button {
    grid-template-columns: 1fr;
    justify-items: center;
    padding-inline: var(--sr-space-2);
  }

  .nav-icon {
    width: 32px;
  }

  .page-header,
  .topbar {
    flex-direction: column;
    align-items: stretch;
  }

  .page-actions,
  .topbar .toolbar {
    justify-content: flex-start;
  }

  .dashboard-grid,
  .grid.two,
  .grid.three,
  .grid.four,
  .mode-cards,
  .notification-list .activity-row {
    grid-template-columns: 1fr;
  }
}

/* Notifications MVP 0.11.x */
.workspace.notifications-workspace {
  gap: var(--sr-space-4);
  align-items: start;
}

.workspace.notifications-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.notifications-workspace .main {
  min-width: 0;
}

.notifications-workspace .inspector {
  position: sticky;
  inset: auto;
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  justify-self: end;
  width: 360px;
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  padding: var(--sr-space-4);
  overflow: auto;
}

.notifications-actions-row {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: var(--sr-space-2);
  min-height: 38px;
}

.notifications-actions-row button {
  background: var(--sr-surface);
}

.notifications-board {
  display: grid;
  gap: var(--sr-space-4);
}

.notifications-notice:empty {
  display: none;
}

.notification-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sr-space-4);
}

.notification-metric-card {
  min-width: 0;
  min-height: 106px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: var(--sr-space-4);
  align-items: center;
  padding: 18px 20px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.notification-icon-badge,
.notification-card-icon,
.notification-detail-icon {
  display: grid;
  place-items: center;
  border-radius: 8px;
}

.notification-icon-badge {
  width: 42px;
  height: 42px;
}

.notification-metric-card > div {
  min-width: 0;
}

.notification-metric-card strong {
  display: block;
  color: var(--sr-text);
  font-size: 26px;
  line-height: 1;
  font-weight: 850;
}

.notification-metric-card span {
  display: block;
  margin-top: 5px;
  color: var(--sr-text);
  font-weight: 850;
}


.notification-metric-card .notification-icon-badge {
  width: 52px;
  height: 52px;
  background: transparent !important;
  color: var(--sr-primary);
  border-radius: 0;
}

.notification-metric-card .notification-icon-badge .icon-svg {
  width: 34px;
  height: 34px;
  stroke-width: 1.8;
}

.notification-metric-card.tone-blue .notification-icon-badge {
  color: var(--sr-info);
}

.notification-metric-card.tone-red .notification-icon-badge {
  color: var(--sr-danger);
}

.notification-metric-card small {
  display: block;
  margin-top: 4px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.notification-feed-panel {
  display: grid;
  gap: var(--sr-space-3);
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.notification-toolbar-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
}

.notification-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sr-space-2);
}

.notification-tabs button,
.notification-sort-control select {
  min-height: 36px;
  border-radius: 6px;
  background: var(--sr-surface);
}

.notification-tabs button {
  padding-inline: 15px;
}

.notification-tabs button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary-active);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--sr-primary) 22%, transparent);
}

.notification-sort-control {
  min-width: 178px;
}

.notification-sort-control select {
  width: 100%;
}

.notification-list-modern {
  display: grid;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.notification-card {
  width: 100%;
  min-height: 82px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sr-space-4);
  border: 0;
  border-bottom: 1px solid var(--sr-border);
  border-radius: 0;
  background: var(--sr-surface);
  text-align: left;
  padding: 15px 18px;
}

.notification-card:last-child {
  border-bottom: 0;
}

.notification-card:hover {
  background: var(--sr-surface-muted);
}

.notification-card.selected-row {
  outline: 0;
  background: var(--sr-surface-selected);
  box-shadow: inset 2px 0 0 var(--sr-primary), inset 0 0 0 1px color-mix(in srgb, var(--sr-primary) 60%, var(--sr-border));
}

.notification-card-icon {
  width: 38px;
  height: 38px;
}

.notification-card-main {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.notification-card-main strong {
  color: var(--sr-text);
  font-size: 15px;
  line-height: 20px;
  font-weight: 850;
}

.notification-card-main span,
.notification-card-main small {
  color: var(--sr-text-secondary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.notification-card-main small {
  font-size: 12px;
}

.notification-card-meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--sr-space-3);
  min-width: 132px;
}

.notification-card-meta i,
.notification-detail-head i {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--sr-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--sr-primary) 14%, transparent);
}

.notification-card-arrow {
  display: grid;
  place-items: center;
  color: var(--sr-text-secondary);
}

.notification-card-arrow .icon-svg {
  width: 18px;
  height: 18px;
  transform: rotate(-90deg);
}

.notification-group-expanded {
  display: grid;
  gap: var(--sr-space-2);
  padding: var(--sr-space-3) var(--sr-space-4);
  border-bottom: 1px solid var(--sr-border);
  background: var(--sr-surface-muted);
}

.notification-empty-state {
  min-height: 180px;
  display: grid;
  place-content: center;
  gap: var(--sr-space-2);
  text-align: center;
  color: var(--sr-text-secondary);
}

.notification-empty-state strong {
  color: var(--sr-text);
  font-size: 17px;
}

.notification-list-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-4);
}

.notification-list-footer .pagination {
  flex: 1;
  margin: 0;
}

.notification-page-size {
  white-space: nowrap;
}

.notification-detail {
  display: grid;
  gap: var(--sr-space-4);
}

.notification-detail-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: var(--sr-space-3);
  align-items: start;
  padding-bottom: var(--sr-space-4);
  border-bottom: 1px solid var(--sr-border);
}

.notification-detail-icon {
  width: 38px;
  height: 38px;
}

.notification-detail-head h2 {
  margin: 0 0 var(--sr-space-2);
  font-size: 16px;
  line-height: 22px;
  font-weight: 850;
}

.notification-status-line {
  display: inline-flex;
  align-items: center;
  gap: var(--sr-space-3);
}

.notification-detail-section,
.notification-detail-list > div {
  display: grid;
  gap: var(--sr-space-2);
  padding-bottom: var(--sr-space-4);
  border-bottom: 1px solid var(--sr-border);
}

.notification-detail-section > span,
.notification-detail-list span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 850;
}

.notification-detail-section p {
  margin: 0;
  color: var(--sr-text-secondary);
  line-height: 1.5;
}

.notification-detail-list {
  display: grid;
  gap: var(--sr-space-4);
}

.notification-detail-list strong {
  color: var(--sr-text);
}

.notification-detail-link {
  width: max-content;
  min-height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sr-info);
  font-weight: 850;
}

.notification-detail-link:hover {
  text-decoration: underline;
}

.notification-detail-link .icon-svg {
  width: 15px;
  height: 15px;
  margin-left: 5px;
}

.notification-detail-events {
  display: grid;
  gap: var(--sr-space-2);
}

.notification-detail-events > div {
  display: grid;
  gap: 3px;
  padding: var(--sr-space-2);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.notification-detail-progress {
  display: grid;
  gap: 5px;
}

.notification-detail-progress .bar {
  width: 100%;
  height: 8px;
}

.notification-detail-sla-block small.error {
  color: var(--sr-danger);
  font-weight: 800;
}

.notification-detail-actions {
  display: grid;
  gap: var(--sr-space-2);
}

.notification-detail-actions button {
  width: 100%;
  justify-content: center;
}

.notification-detail-actions button.primary {
  display: inline-flex;
  align-items: center;
  gap: var(--sr-space-2);
}

.tone-red .notification-icon-badge,
.notification-metric-card.tone-red .notification-icon-badge,
.notification-card.tone-red .notification-card-icon,
.notification-detail-head.tone-red .notification-detail-icon {
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.tone-amber .notification-icon-badge,
.notification-metric-card.tone-amber .notification-icon-badge,
.notification-card.tone-amber .notification-card-icon,
.notification-detail-head.tone-amber .notification-detail-icon {
  background: var(--sr-warning-soft);
  color: var(--sr-warning);
}

.tone-blue .notification-icon-badge,
.notification-metric-card.tone-blue .notification-icon-badge,
.notification-card.tone-blue .notification-card-icon,
.notification-detail-head.tone-blue .notification-detail-icon {
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.tone-mint .notification-icon-badge,
.notification-metric-card.tone-mint .notification-icon-badge,
.notification-card.tone-mint .notification-card-icon,
.notification-detail-head.tone-mint .notification-detail-icon,
.tone-green .notification-icon-badge,
.notification-metric-card.tone-green .notification-icon-badge,
.notification-card.tone-green .notification-card-icon,
.notification-detail-head.tone-green .notification-detail-icon {
  background: var(--sr-success-soft);
  color: var(--sr-primary);
}

@media (max-width: 1100px) {
  .workspace.notifications-workspace.with-inspector {
    grid-template-columns: 1fr;
  }

  .notifications-workspace .inspector {
    justify-self: stretch;
    width: 100%;
    position: static;
    height: auto;
  }
}

@media (max-width: 760px) {
  .notification-metrics,
  .notification-card {
    grid-template-columns: 1fr;
  }

  .notification-toolbar-row,
  .notification-list-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .notification-card-meta {
    justify-content: flex-start;
    min-width: 0;
  }
}

@media (min-width: 1101px) and (max-width: 1500px) {
  .workspace.notifications-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 340px;
  }

  .notifications-workspace .inspector {
    position: sticky;
    inset: auto;
    top: calc(var(--sr-topbar-height) + var(--sr-space-5));
    justify-self: end;
    width: 340px;
    height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  }

  .workspace.notifications-workspace.with-inspector .notification-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Workbench / Work packages MVP 0.11.x */
.workspace.workbench-workspace {
  gap: var(--sr-space-4);
}

.workspace.workbench-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 300px;
}

.workbench-workspace .inspector {
  position: sticky;
  inset: auto;
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  justify-self: end;
  width: 300px;
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  padding: var(--sr-space-4);
}

.workbench-board {
  display: grid;
  gap: var(--sr-space-4);
}

.workbench-hero {
  min-height: 112px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-5);
  padding: var(--sr-space-5);
}

.workbench-hero span,
.workbench-hero-count span {
  color: var(--sr-text-secondary);
}

.workbench-hero h2 {
  margin: var(--sr-space-1) 0 0;
  font-size: 25px;
  line-height: 32px;
}

.workbench-hero-count {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 160px;
}

.workbench-hero-count strong {
  color: var(--sr-primary);
  font-size: 28px;
  line-height: 1;
}

.workbench-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--sr-space-4);
}

.workbench-metric {
  min-width: 0;
  min-height: 104px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.workbench-metric > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
}

.workbench-metric strong {
  display: block;
  color: var(--sr-text);
  font-size: 24px;
  line-height: 1;
}

.workbench-metric small {
  display: block;
  margin-top: 7px;
  color: var(--sr-text-secondary);
  overflow-wrap: anywhere;
}

.workbench-midgrid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1fr);
  gap: var(--sr-space-4);
}

.workbench-today-panel,
.workbench-load-panel,
.workbench-packages-panel {
  min-width: 0;
}

.workbench-today-list {
  display: grid;
  gap: var(--sr-space-2);
  margin-top: var(--sr-space-4);
}

.workbench-action-line,
.workbench-today-row {
  min-height: 48px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--sr-space-3);
  padding: var(--sr-space-2) 0;
  border: 0;
  border-bottom: 1px solid var(--sr-border);
  border-radius: 0;
  background: transparent;
  text-align: left;
}

.workbench-action-line > span,
.workbench-today-row > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 6px;
}

.workbench-action-line small,
.workbench-today-row small {
  color: var(--sr-text-secondary);
  text-align: right;
}

.workbench-filter-form {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) repeat(4, minmax(130px, .8fr)) auto;
  gap: var(--sr-space-2);
  align-items: center;
}

.workbench-filter-form input,
.workbench-filter-form select {
  min-height: 34px;
}

.workbench-empty-state,
.workbench-inspector-empty {
  display: grid;
  place-items: center;
  text-align: center;
  color: var(--sr-text-secondary);
}

.workbench-empty-state {
  min-height: 300px;
  gap: var(--sr-space-3);
}

.workbench-empty-state > span,
.workbench-inspector-empty > span {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.workbench-empty-state strong,
.workbench-inspector-empty strong {
  color: var(--sr-text);
  font-size: 17px;
}

.workbench-empty-state p,
.workbench-inspector-empty p {
  max-width: 360px;
  margin: 0;
}

.workbench-table td {
  vertical-align: middle;
}

.workbench-detail,
.workbench-detail-list,
.workbench-detail-actions,
.workbench-inspector-empty {
  display: grid;
  gap: var(--sr-space-4);
}

.workbench-detail-head {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: var(--sr-space-3);
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.workbench-detail-head > span {
  width: 8px;
  height: 8px;
  margin-top: 8px;
  border-radius: 999px;
  background: var(--sr-primary);
}

.workbench-detail-head h2 {
  margin: 6px 0 3px;
  font-size: 18px;
  line-height: 24px;
}

.workbench-detail-head small,
.workbench-detail-list span {
  color: var(--sr-text-secondary);
}

.workbench-detail-list > div {
  display: grid;
  gap: 6px;
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.workbench-detail-progress {
  display: grid;
  gap: 5px;
}

.workbench-detail-actions button {
  width: 100%;
  justify-content: center;
}

.workbench-detail-actions button:not(.primary) {
  display: inline-flex;
  align-items: center;
  gap: var(--sr-space-2);
}

.workbench-metric.tone-mint > span,
.workbench-today-row.tone-mint > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.workbench-metric.tone-blue > span { background: var(--sr-info-soft); color: var(--sr-info); }
.workbench-metric.tone-amber > span,
.workbench-today-row.tone-amber > span { background: var(--sr-warning-soft); color: var(--sr-warning); }
.workbench-metric.tone-violet > span { background: var(--sr-violet-soft); color: var(--sr-violet); }
.workbench-metric.tone-red > span,
.workbench-today-row.tone-red > span { background: var(--sr-danger-soft); color: var(--sr-danger); }
.workbench-metric.tone-green > span { background: var(--sr-success-soft); color: var(--sr-primary); }

@media (max-width: 1500px) {
  .workspace.workbench-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 280px;
  }

  .workbench-workspace .inspector {
    width: 280px;
  }

  .workbench-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .workbench-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .workspace.workbench-workspace.with-inspector {
    grid-template-columns: 1fr;
  }

  .workbench-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }

  .workbench-midgrid,
  .workbench-metrics,
  .workbench-filter-form {
    grid-template-columns: 1fr;
  }
}
/* Brand logo MVP 0.11.x */
.brand {
  align-items: center;
  gap: 10px;
}

.brand .brand-mark {
  width: 32px;
  height: 28px;
  flex: 0 0 32px;
  border-radius: 0;
  background: transparent;
  color: #19d2bd;
  box-shadow: none;
}

.brand-svg {
  width: 32px;
  height: 28px;
  display: block;
  filter: drop-shadow(0 5px 10px rgba(25, 210, 189, .16));
}

.brand > span:not(.brand-mark) {
  gap: 3px;
  line-height: 1.1;
  letter-spacing: 0;
}

.brand small {
  margin-top: 1px;
}

@media (max-width: 760px) {
  .brand::before {
    content: none;
  }

  .brand .brand-mark {
    display: inline-grid;
    width: 40px;
    height: 34px;
    flex-basis: 40px;
  }

  .brand-svg {
    width: 40px;
    height: 34px;
  }
}

/* Departments registry MVP 0.11.x */
.workspace.departments-workspace {
  gap: var(--sr-space-4);
}

.workspace.departments-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 330px;
}

.departments-workspace .inspector {
  position: sticky;
  inset: auto;
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  justify-self: end;
  width: 330px;
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  padding: var(--sr-space-4);
}

.departments-page {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.department-editor-page {
  width: 100%;
  align-self: start;
}

.department-editor-page .department-editor-panel {
  width: 100%;
  min-height: 0;
}

.department-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.department-metric-card {
  min-height: 108px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.department-metric-card > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.department-metric-card strong {
  display: block;
  margin-top: 6px;
  color: var(--sr-text);
  font-size: 26px;
  line-height: 1;
}

.department-metric-card small,
.department-metric-card em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.department-metric-card em {
  margin-top: 8px;
  font-size: 12px;
}

.department-metric-card.tone-mint > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.department-metric-card.tone-blue > span { background: var(--sr-info-soft); color: var(--sr-info); }
.department-metric-card.tone-green > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.department-metric-card.tone-violet > span { background: var(--sr-violet-soft); color: var(--sr-violet); }
.department-metric-card.tone-amber > span { background: var(--sr-warning-soft); color: var(--sr-warning); }
.department-metric-card.tone-red > span { background: var(--sr-danger-soft); color: var(--sr-danger); }

.department-registry {
  display: grid;
  gap: var(--sr-space-4);
}

.department-filter-form {
  display: grid;
  grid-template-columns: minmax(280px, 1.25fr) repeat(4, minmax(118px, .52fr)) auto auto minmax(190px, auto);
  gap: 10px;
  align-items: end;
}

.department-filter-form label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
}

.department-filter-form select,
.department-filter-form input,
.department-filter-form button {
  min-height: 38px;
}

.department-search-field {
  position: relative;
}

.department-search-field svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  width: 18px;
  height: 18px;
  color: var(--sr-text-muted);
}

.department-search-field input {
  padding-left: 38px;
}

.departments-table {
  min-width: 1160px;
}

.departments-table th,
.departments-table td {
  vertical-align: middle;
  padding: 10px 12px;
}

.departments-table th:first-child,
.departments-table td:first-child {
  width: 36px;
}

.departments-table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--sr-primary);
}

.department-title-cell,
.department-manager,
.department-inspector-person {
  display: flex;
  align-items: center;
  gap: var(--sr-space-3);
  min-width: 0;
}

.department-title-cell strong,
.department-title-cell small,
.department-manager span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.department-title-cell small {
  margin-top: 3px;
  color: var(--sr-text-secondary);
}

.department-avatar,
.department-user-avatar {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 8px;
  font-weight: 800;
}

.department-avatar {
  width: 38px;
  height: 38px;
  font-size: 12px;
}

.department-avatar .icon-svg {
  width: 20px;
  height: 20px;
}

.department-user-avatar {
  width: 28px;
  height: 28px;
  border: 2px solid var(--sr-surface);
  font-size: 10px;
  overflow: hidden;
}

.department-avatar.tone-mint,
.department-user-avatar.tone-mint { background: var(--sr-success-soft); color: var(--sr-primary); }
.department-avatar.tone-blue,
.department-user-avatar.tone-blue { background: var(--sr-info-soft); color: var(--sr-info); }
.department-avatar.tone-violet,
.department-user-avatar.tone-violet { background: var(--sr-violet-soft); color: var(--sr-violet); }
.department-avatar.tone-amber,
.department-user-avatar.tone-amber { background: var(--sr-warning-soft); color: var(--sr-warning); }
.department-avatar.tone-red,
.department-user-avatar.tone-red { background: var(--sr-danger-soft); color: var(--sr-danger); }

.department-user-avatar.has-image,
.user-profile-avatar.has-image {
  padding: 0;
  background: var(--sr-surface-muted);
  color: transparent;
}

.department-user-avatar img,
.user-profile-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.department-risk,
.department-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 9px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.department-risk.high { border-color: color-mix(in srgb, var(--sr-danger) 35%, var(--sr-border)); background: var(--sr-danger-soft); color: var(--sr-danger); }
.department-risk.medium { border-color: color-mix(in srgb, var(--sr-warning) 45%, var(--sr-border)); background: var(--sr-warning-soft); color: #9a5d00; }
.department-risk.low { border-color: color-mix(in srgb, var(--sr-success) 32%, var(--sr-border)); background: var(--sr-success-soft); color: var(--sr-primary); }

.department-load-cell,
.department-load-summary {
  display: grid;
  gap: 6px;
}

.department-load-cell {
  min-width: 94px;
}

.department-load-cell .bar,
.department-load-summary .bar {
  height: 7px;
}

.department-load-cell.tone-red .bar span,
.department-load-summary.tone-red .bar span { background: var(--sr-danger); }
.department-load-cell.tone-amber .bar span,
.department-load-summary.tone-amber .bar span { background: var(--sr-warning); }
.department-load-cell.tone-green .bar span,
.department-load-summary.tone-green .bar span { background: var(--sr-primary); }

.department-tags {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  max-width: 230px;
  overflow: hidden;
}

.department-tags span {
  max-width: 92px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.department-row.selected-row {
  outline-color: color-mix(in srgb, var(--sr-primary) 72%, var(--sr-border));
}

.department-row .icon-button {
  width: 34px;
  min-height: 34px;
  padding: 0;
}

.department-empty-row {
  height: 120px;
  text-align: center;
  color: var(--sr-text-secondary);
}

.department-registry-footer {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: var(--sr-space-4);
  color: var(--sr-text-secondary);
}

.department-registry-footer .pagination {
  margin-top: 0;
}

.department-page-size {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
  white-space: nowrap;
}

.department-page-size select {
  min-height: 36px;
  min-width: 72px;
}

.department-editor-panel {
  grid-column: 1 / -1;
  display: grid;
  align-content: start;
  gap: 0;
  padding: 0;
  overflow: hidden;
}

.department-editor-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 64px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--sr-border);
}

.department-editor-title {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  font-size: 20px;
  font-weight: 750;
  line-height: 1.2;
}

.department-editor-title .icon-svg {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
}

.department-editor-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
}

.department-form {
  display: grid;
  align-content: start;
  gap: 0;
}

.department-form-section {
  padding: 18px 20px 12px;
}

.department-work-section {
  padding-top: 8px;
}

.department-form-section-title {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 14px;
  color: var(--sr-primary);
  font-size: 15px;
  font-weight: 750;
}

.department-form-section-title .icon-svg {
  width: 17px;
  height: 17px;
}

.department-form-grid {
  display: grid;
  gap: 16px 22px;
}

.department-form-grid-primary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.department-form-grid-text,
.department-form-grid-bottom {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.department-form-grid-text {
  margin-top: 16px;
}

.department-tag-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.department-form-grid-bottom {
  margin-top: 18px;
}

.department-form label {
  min-width: 0;
}

.department-field-label {
  display: block;
  margin-bottom: 7px;
  color: var(--sr-text-secondary);
  font-size: 13px;
  font-weight: 700;
}

.required-mark {
  color: var(--sr-danger);
}

.department-text-field textarea {
  min-height: 78px;
}

.department-field-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 5px;
  color: var(--sr-text-muted);
  font-size: 12px;
}

.department-field-count {
  flex: 0 0 auto;
  font-variant-numeric: tabular-nums;
}

.department-field-help {
  display: block;
  margin-top: 5px;
  color: var(--sr-text-muted);
  font-size: 12px;
  line-height: 1.35;
}

.department-status-select {
  position: relative;
  display: block;
}

.department-status-select select {
  padding-left: 38px;
  font-weight: 650;
}

.department-status-dot {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 16px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--sr-text-muted);
  transform: translateY(-50%);
  pointer-events: none;
}

.department-status-select.is-active .department-status-dot {
  background: var(--sr-success);
}

.department-tag-field {
  display: block;
  min-width: 0;
}

.department-tag-editor {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 6px;
  min-height: 72px;
  padding: 8px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface);
}

.department-tag-list {
  display: contents;
}

.department-tag-chip,
.department-manager-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  min-height: 28px;
  padding: 4px 8px;
  border: 1px solid var(--sr-border);
  border-radius: 5px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 12px;
  line-height: 1.2;
}

.department-tag-chip > span,
.department-manager-chip > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.department-tag-chip button,
.department-manager-chip-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 18px;
  width: 18px;
  min-height: 18px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sr-text-secondary);
}

.department-tag-chip button .icon-svg,
.department-manager-chip-remove .icon-svg {
  width: 13px;
  height: 13px;
}

.department-tag-editor input {
  flex: 1 1 150px;
  width: auto;
  min-width: 120px;
  min-height: 28px;
  padding: 3px 5px;
  border: 0;
  box-shadow: none;
  background: transparent;
}

.department-tag-editor input:focus {
  outline: none;
  box-shadow: none;
}

.department-manager-field {
  min-width: 0;
}

.department-manager-picker {
  position: relative;
}

.department-manager-picker summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 66px;
  padding: 8px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface);
  cursor: pointer;
  list-style: none;
}

.department-manager-picker summary::-webkit-details-marker {
  display: none;
}

.department-manager-picker[open] summary {
  border-color: var(--sr-primary);
}

.department-manager-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.department-manager-options {
  position: absolute;
  z-index: 40;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  display: grid;
  gap: 2px;
  max-height: 230px;
  overflow: auto;
  padding: 7px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.department-manager-options label {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 7px 8px;
  border-radius: 5px;
  cursor: pointer;
}

.department-manager-options label:hover {
  background: var(--sr-surface-muted);
}

.department-manager-options input {
  flex: 0 0 16px;
  width: 16px;
  min-height: 16px;
}

.department-form-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 20px;
  border-top: 1px solid var(--sr-border);
  background: var(--sr-surface-muted);
}

.department-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.department-form-actions button,
.department-save-note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.department-form-actions .icon-svg,
.department-save-note .icon-svg {
  width: 16px;
  height: 16px;
}

.department-archive-button {
  border-color: color-mix(in srgb, var(--sr-danger) 50%, var(--sr-border));
}

.department-save-note {
  max-width: 410px;
  padding: 9px 12px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  color: var(--sr-text-secondary);
  background: var(--sr-surface);
  font-size: 12px;
}

.department-inspector {
  display: grid;
  gap: var(--sr-space-4);
}

.department-inspector-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sr-space-3);
  align-items: start;
}

.department-inspector-head h2 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 25px;
}

.department-state-line {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.department-state-line span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--sr-primary);
}

.department-inspector-section {
  display: grid;
  gap: 8px;
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.department-inspector-label {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
}

.department-inspector-person small,
.department-load-summary small {
  display: block;
  color: var(--sr-text-secondary);
}

.department-inspector-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sr-space-2);
}

.department-inspector-stats > div {
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.department-inspector-stats span {
  display: block;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.department-inspector-stats strong {
  display: block;
  margin-top: 6px;
  font-size: 20px;
}

.department-activity {
  display: grid;
  gap: 10px;
}

.department-activity > div {
  position: relative;
  display: grid;
  gap: 3px;
  padding-left: 18px;
}

.department-activity > div::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--sr-info);
}

.department-activity > div.risk::before { background: var(--sr-danger); }
.department-activity > div.done::before { background: var(--sr-primary); }

.department-activity span {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.department-avatar-stack {
  display: flex;
  align-items: center;
  min-height: 32px;
}

.department-avatar-stack .department-user-avatar + .department-user-avatar {
  margin-left: -8px;
}

.department-user-avatar.more {
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.department-sparkline {
  height: 72px;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  align-items: end;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: linear-gradient(180deg, var(--sr-surface), var(--sr-surface-muted));
}

.department-sparkline span {
  display: block;
  min-height: 8px;
  border-radius: 999px 999px 0 0;
  background: color-mix(in srgb, var(--sr-danger) 78%, var(--sr-surface));
}

.department-inspector-actions {
  display: grid;
  gap: var(--sr-space-2);
}

.department-inspector-actions button {
  width: 100%;
  justify-content: center;
}

.department-inspector-empty {
  min-height: 260px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: var(--sr-space-3);
  text-align: center;
  color: var(--sr-text-secondary);
}

.department-inspector-empty > span {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--sr-surface-muted);
}

.department-inspector-empty strong {
  color: var(--sr-text);
}

@media (min-width: 1367px) and (max-width: 1500px) {
  .workspace.departments-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 300px;
  }

  .departments-workspace .inspector {
    width: 300px;
  }

  .department-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .department-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .department-registry-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}

@media (max-width: 1366px) {
  .workspace.departments-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .departments-workspace .inspector {
    position: fixed;
    inset: var(--sr-topbar-height) 0 0 auto;
    width: min(var(--sr-inspector-width), 94vw);
    height: calc(100vh - var(--sr-topbar-height));
    border-radius: var(--sr-radius-sm) 0 0 var(--sr-radius-sm);
    z-index: 20;
  }

  .department-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .department-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .department-registry-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}
@media (max-width: 1100px) {
  .workspace.departments-workspace.with-inspector {
    grid-template-columns: 1fr;
  }

  .departments-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }

  .department-metrics,
  .department-filter-form {
    grid-template-columns: 1fr;
  }

  .department-form-grid-primary,
  .department-form-grid-text,
  .department-form-grid-bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .department-tag-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .department-editor-head,
  .department-form-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .department-editor-close {
    align-self: flex-end;
  }

  .department-form-grid-primary,
  .department-form-grid-text,
  .department-form-grid-bottom {
    grid-template-columns: 1fr;
  }

  .department-form-footer {
    align-items: stretch;
  }

  .department-form-actions,
  .department-save-note {
    width: 100%;
  }
}
.department-create-button {
  white-space: nowrap;
}

.departments-table tbody tr {
  height: 70px;
}
/* Users registry MVP 0.11.x */
.workspace.users-workspace {
  gap: var(--sr-space-4);
}

.workspace.users-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 330px;
}

.users-workspace .inspector {
  position: sticky;
  inset: auto;
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  justify-self: end;
  width: 330px;
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  padding: var(--sr-space-4);
}

.users-page {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.user-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.user-metric-card {
  min-height: 108px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.user-metric-card > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.user-metric-card strong {
  display: block;
  margin-top: 6px;
  color: var(--sr-text);
  font-size: 26px;
  line-height: 1;
}

.user-metric-card small,
.user-metric-card em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.user-metric-card em {
  margin-top: 8px;
  font-size: 12px;
}

.user-metric-card.tone-mint > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.user-metric-card.tone-green > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.user-metric-card.tone-amber > span { background: var(--sr-warning-soft); color: var(--sr-warning); }
.user-metric-card.tone-red > span { background: var(--sr-danger-soft); color: var(--sr-danger); }

.user-registry {
  display: grid;
  gap: var(--sr-space-4);
}

.user-filter-form {
  display: grid;
  grid-template-columns: minmax(300px, 1.25fr) repeat(4, minmax(118px, .52fr)) auto auto minmax(190px, auto);
  gap: 10px;
  align-items: end;
}

.user-filter-form label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
}

.user-filter-form select,
.user-filter-form input,
.user-filter-form button {
  min-height: 38px;
}

.user-search-field {
  position: relative;
}

.user-search-field svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  width: 18px;
  height: 18px;
  color: var(--sr-text-muted);
}

.user-search-field input {
  padding-left: 38px;
}

.user-create-button {
  white-space: nowrap;
}

.users-table {
  min-width: 1260px;
  table-layout: fixed;
}

.users-table th,
.users-table td {
  vertical-align: middle;
  padding: 10px 12px;
}

.users-table th:first-child,
.users-table td:first-child {
  width: 36px;
}

.users-table th:nth-child(2),
.users-table td:nth-child(2) { width: 210px; }
.users-table th:nth-child(3),
.users-table td:nth-child(3) { width: 140px; }
.users-table th:nth-child(4),
.users-table td:nth-child(4) { width: 150px; }
.users-table th:nth-child(5),
.users-table td:nth-child(5) { width: 178px; }
.users-table th:nth-child(6),
.users-table td:nth-child(6) { width: 112px; }
.users-table th:nth-child(7),
.users-table td:nth-child(7) { width: 112px; }
.users-table th:nth-child(8),
.users-table td:nth-child(8) { width: 132px; }
.users-table th:nth-child(9),
.users-table td:nth-child(9) { width: 132px; }
.users-table th:nth-child(10),
.users-table td:nth-child(10) { width: 54px; }

.users-table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--sr-primary);
}

.user-row {
  height: 66px;
}

.user-row.selected-row {
  outline-color: color-mix(in srgb, var(--sr-primary) 72%, var(--sr-border));
}

.user-title-cell,
.user-profile-main,
.user-contact-row {
  display: flex;
  align-items: center;
  gap: var(--sr-space-3);
  min-width: 0;
}

.user-title-cell > div {
  min-width: 0;
}

.user-title-cell strong,
.user-title-cell small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-title-cell small {
  margin-top: 3px;
  color: var(--sr-text-secondary);
}

.user-role-label {
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.user-skills,
.user-inspector-tags {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  overflow: hidden;
}

.user-skills span,
.user-inspector-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 8px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 12px;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-skills span {
  max-width: 112px;
}

.user-skills span:first-child {
  max-width: 124px;
}

.user-skills span:last-child {
  flex: 0 0 auto;
}

.user-inspector-tags span {
  max-width: none;
  flex: 0 1 auto;
}

.user-load-cell,
.user-load-summary {
  display: grid;
  gap: 6px;
}

.user-load-cell {
  min-width: 94px;
}

.user-load-cell .bar,
.user-load-summary .bar {
  height: 7px;
}

.user-load-cell.tone-red .bar span,
.user-load-summary.tone-red .bar span { background: var(--sr-danger); }
.user-load-cell.tone-amber .bar span,
.user-load-summary.tone-amber .bar span { background: var(--sr-warning); }
.user-load-cell.tone-green .bar span,
.user-load-summary.tone-green .bar span { background: var(--sr-primary); }

.user-registry-footer {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: var(--sr-space-4);
  color: var(--sr-text-secondary);
}

.user-registry-footer .pagination {
  margin-top: 0;
}

.user-page-size {
  display: flex;
  align-items: center;
  gap: var(--sr-space-2);
  white-space: nowrap;
}

.user-page-size select {
  min-height: 36px;
  min-width: 72px;
}

.user-empty-row {
  height: 120px;
  text-align: center;
  color: var(--sr-text-secondary);
}

.user-editor-panel {
  display: grid;
  gap: var(--sr-space-4);
}

.user-form {
  display: grid;
  gap: var(--sr-space-4);
}

.user-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.user-form-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.user-form textarea {
  min-height: 88px;
}

.user-inline-check {
  display: inline-flex;
  align-items: center;
  gap: var(--sr-space-2);
  font-weight: 700;
}

.user-inline-check input {
  width: 18px;
  height: 18px;
  accent-color: var(--sr-primary);
}

.user-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sr-space-2);
}

.user-inspector {
  display: grid;
  gap: var(--sr-space-4);
}

.user-inspector-head h2 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 25px;
}

.user-inspector-head small {
  display: block;
  margin-top: 8px;
  color: var(--sr-text-secondary);
}

.user-profile-avatar {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 2px solid var(--sr-surface);
  font-size: 15px;
  font-weight: 850;
  overflow: hidden;
}

.user-profile-avatar.tone-mint { background: var(--sr-success-soft); color: var(--sr-primary); }
.user-profile-avatar.tone-blue { background: var(--sr-info-soft); color: var(--sr-info); }
.user-profile-avatar.tone-violet { background: var(--sr-violet-soft); color: var(--sr-violet); }
.user-profile-avatar.tone-amber { background: var(--sr-warning-soft); color: var(--sr-warning); }
.user-profile-avatar.tone-red { background: var(--sr-danger-soft); color: var(--sr-danger); }

.user-inspector-section {
  display: grid;
  gap: 8px;
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.user-inspector-label {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
}

.user-contact-row .icon-svg {
  width: 17px;
  height: 17px;
  color: var(--sr-text-secondary);
}

.user-contact-row span,
.user-contact-row strong,
.user-load-summary small {
  min-width: 0;
  color: var(--sr-text-secondary);
  overflow-wrap: anywhere;
}

.user-inspector-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sr-space-2);
}

.user-inspector-stats > div {
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.user-inspector-stats span {
  display: block;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.user-inspector-stats strong {
  display: block;
  margin-top: 6px;
  font-size: 20px;
}

.user-inspector-tags {
  flex-wrap: wrap;
}

.user-activity {
  display: grid;
  gap: 10px;
}

.user-activity > div {
  position: relative;
  display: grid;
  gap: 3px;
  padding-left: 18px;
}

.user-activity > div::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--sr-info);
}

.user-activity > div.risk::before { background: var(--sr-danger); }
.user-activity > div.done::before { background: var(--sr-primary); }

.user-activity span {
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.user-chart-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.user-sparkline {
  min-height: 104px;
  padding: 4px 0 0;
}

.user-sparkline svg {
  display: block;
  width: 100%;
  height: 118px;
  overflow: visible;
}

.user-sparkline .axis,
.user-sparkline .date {
  fill: var(--sr-text-secondary);
  font-size: 9px;
  font-weight: 650;
}

.user-sparkline .date {
  text-anchor: middle;
}

.user-sparkline .grid {
  stroke: var(--sr-border);
  stroke-width: 1;
  stroke-dasharray: 2 4;
}

.user-sparkline-area {
  fill: color-mix(in srgb, var(--sr-warning) 18%, transparent);
}

.user-sparkline-line {
  fill: none;
  stroke: var(--sr-warning);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.user-sparkline-dot {
  fill: var(--sr-warning);
  stroke: var(--sr-surface);
  stroke-width: 1.5;
}

.user-inspector-actions {
  display: grid;
  gap: var(--sr-space-2);
}

.user-inspector-actions button {
  width: 100%;
  justify-content: center;
  gap: 8px;
}

.user-inspector-actions .icon-svg {
  width: 17px;
  height: 17px;
}

@media (min-width: 1367px) and (max-width: 1500px) {
  .workspace.users-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 300px;
  }

  .users-workspace .inspector {
    width: 300px;
  }

  .user-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .user-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .user-registry-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}

@media (max-width: 1366px) {
  .workspace.users-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .users-workspace .inspector {
    position: fixed;
    inset: var(--sr-topbar-height) 0 0 auto;
    width: min(var(--sr-inspector-width), 94vw);
    height: calc(100vh - var(--sr-topbar-height));
    border-radius: var(--sr-radius-sm) 0 0 var(--sr-radius-sm);
    z-index: 20;
  }

  .user-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .user-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .user-registry-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}

@media (max-width: 1100px) {
  .workspace.users-workspace.with-inspector {
    grid-template-columns: 1fr;
  }

  .users-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }

  .user-metrics,
  .user-filter-form,
  .user-form-grid,
  .user-form-grid.compact {
    grid-template-columns: 1fr;
  }
}


/* Audit log screen */
.workspace.audit-workspace {
  gap: var(--sr-space-4);
}

.workspace.audit-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 370px;
}

.audit-workspace .inspector {
  position: sticky;
  inset: auto;
  top: calc(var(--sr-topbar-height) + var(--sr-space-5));
  justify-self: end;
  width: 370px;
  height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
  padding: var(--sr-space-4);
}

.audit-page {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.audit-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.audit-metric-card {
  min-height: 108px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-4);
  padding: 20px 24px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.audit-metric-icon {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border-radius: 0;
  background: transparent;
}

.audit-metric-icon .icon-svg {
  width: 34px;
  height: 34px;
  stroke-width: 1.9;
}

.audit-metric-card.tone-mint .audit-metric-icon { color: var(--sr-primary); }
.audit-metric-card.tone-red .audit-metric-icon { color: var(--sr-danger); }
.audit-metric-card.tone-amber .audit-metric-icon { color: var(--sr-warning); }
.audit-metric-card.tone-blue .audit-metric-icon { color: var(--sr-info); }

.audit-metric-card span {
  display: block;
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.audit-metric-card strong {
  display: block;
  margin-top: 6px;
  font-size: 30px;
  line-height: 1;
}

.audit-metric-card small {
  display: block;
  margin-top: 8px;
  color: var(--sr-text-secondary);
}

.audit-filter-panel {
  display: grid;
  grid-template-columns: minmax(260px, 1.45fr) repeat(4, minmax(130px, .72fr));
  gap: var(--sr-space-3);
  align-items: end;
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.audit-filter-panel label {
  display: grid;
  gap: 7px;
  min-width: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.audit-filter-panel input,
.audit-filter-panel select {
  min-width: 0;
  width: 100%;
  height: 42px;
}

.audit-search-field {
  position: relative;
}

.audit-search-field span {
  position: absolute;
  left: 13px;
  bottom: 11px;
  color: var(--sr-text-muted);
}

.audit-search-field .icon-svg {
  width: 18px;
  height: 18px;
}

.audit-search-field input {
  padding-left: 42px;
}

.audit-switch {
  align-self: end;
  min-height: 42px;
  display: flex !important;
  grid-column: span 1;
  flex-direction: row;
  align-items: center;
  gap: 10px !important;
  padding: 0 4px;
  color: var(--sr-text) !important;
}

.audit-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.audit-switch span {
  width: 38px;
  height: 22px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  border: 1px solid var(--sr-border);
  position: relative;
}

.audit-switch span::after {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  position: absolute;
  left: 3px;
  top: 2px;
  background: var(--sr-text-muted);
  transition: transform .16s ease, background .16s ease;
}

.audit-switch input:checked + span {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
}

.audit-switch input:checked + span::after {
  transform: translateX(15px);
  background: var(--sr-primary);
}

.audit-filter-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--sr-space-2);
  grid-column: span 2;
}

.audit-filter-actions button {
  height: 42px;
}

.audit-filter-actions .icon-svg {
  width: 18px;
  height: 18px;
}

.audit-table-panel {
  display: grid;
  gap: var(--sr-space-3);
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.audit-log-table {
  min-width: 1180px;
  border-collapse: separate;
  border-spacing: 0;
}

.audit-log-table th {
  height: 46px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
  text-align: left;
  border-bottom: 1px solid var(--sr-border);
}

.audit-log-table td {
  min-height: 58px;
  padding: 11px 10px;
  vertical-align: middle;
  border-bottom: 1px solid var(--sr-border);
}

.audit-log-table th:first-child,
.audit-log-table td:first-child {
  width: 46px;
  padding-left: 12px;
  padding-right: 8px;
  text-align: center;
}

.audit-log-table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  margin: 0 auto;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  accent-color: var(--sr-primary);
}

.audit-log-table td:nth-child(3) strong {
  display: block;
  font-size: 13px;
}

.audit-log-table td:nth-child(3) small,
.audit-actor-cell small {
  display: block;
  margin-top: 3px;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.audit-table-row {
  cursor: pointer;
}

.audit-table-row:hover {
  background: var(--sr-surface-muted);
}

.audit-table-row.selected-row {
  outline: 2px solid var(--sr-primary);
  outline-offset: -2px;
  background: var(--sr-surface-selected);
}

.audit-date {
  white-space: nowrap;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.audit-actor-cell {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 150px;
}

.audit-system-avatar {
  width: 28px;
  height: 28px;
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  color: var(--sr-info);
  background: var(--sr-info-soft);
}

.audit-system-avatar .icon-svg {
  width: 15px;
  height: 15px;
}

.audit-object-link {
  color: var(--sr-primary-hover);
  font-weight: 750;
  white-space: nowrap;
}

.audit-log-table .status.info,
.audit-inspector-detail .status.info {
  color: var(--sr-info);
  background: var(--sr-info-soft);
}

.audit-table-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
}

.audit-table-footer .pagination {
  flex: 1 1 auto;
}

.audit-inspector-detail {
  display: grid;
  gap: var(--sr-space-4);
}

.audit-inspector-head {
  display: grid;
  gap: 10px;
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.audit-inspector-head h2 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.25;
}

.audit-inspector-list {
  display: grid;
  gap: 2px;
}

.audit-inspector-row {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  padding: 8px 0;
  border-bottom: 1px solid var(--sr-border);
}

.audit-inspector-row > span {
  color: var(--sr-text-secondary);
}

.audit-inspector-row .icon-svg {
  width: 18px;
  height: 18px;
}

.audit-inspector-row small,
.audit-tech-grid span {
  display: block;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.audit-inspector-row strong {
  display: block;
  margin-top: 3px;
  overflow-wrap: anywhere;
}

.audit-inspector-row em {
  display: block;
  margin-top: 3px;
  color: var(--sr-text-secondary);
  font-style: normal;
  font-size: 12px;
}

.audit-object-blue {
  color: var(--sr-info);
}

.audit-inspector-section {
  display: grid;
  gap: 10px;
  padding-top: var(--sr-space-2);
}

.audit-inspector-section h3 {
  margin: 0;
  font-size: 13px;
}

.audit-tech-grid {
  display: grid;
  grid-template-columns: minmax(92px, .8fr) minmax(0, 1fr);
  gap: 8px 12px;
}

.audit-tech-grid strong {
  font-size: 12px;
  overflow-wrap: anywhere;
}

.audit-json {
  margin: 0;
  max-height: 150px;
  overflow: auto;
  padding: 12px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 12px;
  line-height: 1.45;
}

.audit-related-list {
  display: grid;
  gap: 7px;
}

.audit-related-list button {
  display: grid;
  grid-template-columns: minmax(80px, auto) minmax(0, 1fr) 18px;
  gap: 8px;
  align-items: center;
  justify-items: start;
  width: 100%;
  min-height: 36px;
  padding: 7px 8px;
  text-align: left;
  background: var(--sr-surface);
}

.audit-related-list span {
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.audit-related-list .icon-svg {
  width: 15px;
  height: 15px;
}

.audit-inspector-actions {
  display: grid;
  gap: 8px;
  padding-top: var(--sr-space-2);
}

.audit-inspector-actions button {
  width: 100%;
  min-height: 38px;
}

.audit-inspector-actions .icon-svg {
  width: 17px;
  height: 17px;
}

@media (max-width: 1360px) {
  .workspace.audit-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .audit-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }
}

@media (max-width: 1100px) {
  .audit-metrics,
  .audit-filter-panel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audit-filter-actions {
    grid-column: span 2;
  }
}

/* Pilot workspace */
.workspace.pilot-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 320px;
}

.pilot-workspace .inspector {
  width: 320px;
  min-width: 0;
}

.pilot-inspector-detail,
.pilot-inspector-list > div {
  min-width: 0;
}

.pilot-inspector-list strong {
  min-width: 0;
  overflow-wrap: anywhere;
}


.pilot-page {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.pilot-heading h1 {
  margin: 0;
  color: var(--sr-text);
  font-size: 26px;
  line-height: 1.15;
}

.pilot-heading p {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 8px 0 0;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.pilot-heading p span + span::before {
  content: "вЂє";
  margin-right: 10px;
  color: var(--sr-text-muted);
}

.pilot-heading small {
  display: block;
  margin-top: 12px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.pilot-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.pilot-metric-card {
  min-height: 116px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.pilot-metric-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.pilot-metric-icon .icon-svg {
  width: 25px;
  height: 25px;
}

.pilot-metric-card small,
.pilot-metric-card em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.pilot-metric-card strong {
  display: block;
  margin-top: 6px;
  color: var(--sr-text);
  font-size: 27px;
  line-height: 1;
}

.pilot-metric-card em {
  margin-top: 10px;
  font-size: 12px;
}

.pilot-metric-card.tone-mint .pilot-metric-icon,
.pilot-metric-card.tone-green .pilot-metric-icon {
  background: var(--sr-success-soft);
  color: var(--sr-primary);
}

.pilot-metric-card.tone-blue .pilot-metric-icon {
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.pilot-metric-card.tone-amber .pilot-metric-icon {
  background: var(--sr-warning-soft);
  color: var(--sr-warning);
}

.pilot-trend.good,
.pilot-signal-list em.good {
  color: var(--sr-primary);
}

.pilot-trend.bad,
.pilot-signal-list em.bad {
  color: var(--sr-danger);
}

.pilot-registry.panel,
.pilot-panel,
.pilot-admin-forms {
  border-radius: var(--sr-radius-sm);
  box-shadow: var(--sr-shadow-card);
}

.pilot-filter-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(130px, .55fr) repeat(3, minmax(110px, .46fr)) auto minmax(148px, auto);
  gap: 10px;
  align-items: end;
}

.pilot-filter-form label {
  display: grid;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.pilot-filter-form input,
.pilot-filter-form select,
.pilot-filter-form button {
  min-height: 38px;
}

.pilot-filter-form button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.pilot-filter-form .icon-svg {
  width: 17px;
  height: 17px;
}

.pilot-search-field {
  position: relative;
}

.pilot-search-field > .icon-svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  color: var(--sr-text-muted);
}

.pilot-search-field input {
  padding-left: 38px;
}

.pilot-table {
  min-width: 1180px;
  border-collapse: separate;
  border-spacing: 0;
}

.pilot-table th,
.pilot-table td {
  padding: 11px 10px;
  vertical-align: middle;
  border-bottom: 1px solid var(--sr-border);
}

.pilot-table th {
  height: 44px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
  text-align: left;
}

.pilot-table th:first-child,
.pilot-table td:first-child {
  width: 38px;
  text-align: center;
}

.pilot-table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--sr-primary);
}

.pilot-row {
  cursor: pointer;
}

.pilot-row:hover {
  background: var(--sr-surface-muted);
}

.pilot-row.selected-row {
  outline: 2px solid var(--sr-primary);
  outline-offset: -2px;
  background: var(--sr-surface-selected);
}

.pilot-person {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.pilot-person > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--sr-success-soft);
  color: var(--sr-primary);
  font-size: 11px;
  font-weight: 850;
}

.pilot-progress-cell {
  display: grid;
  grid-template-columns: minmax(76px, 1fr) 38px;
  align-items: center;
  gap: 9px;
}

.pilot-progress {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.pilot-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.pilot-page .status.info,
.pilot-inspector-detail .status.info {
  color: var(--sr-info);
  background: var(--sr-info-soft);
  border-color: color-mix(in srgb, var(--sr-info) 26%, var(--sr-border));
}

.pilot-page .status.muted,
.pilot-inspector-detail .status.muted {
  color: var(--sr-text-secondary);
  background: var(--sr-surface-muted);
  border-color: var(--sr-border);
}

.pilot-table .icon-button {
  width: 38px;
  height: 38px;
}

.pilot-table-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
  padding-top: var(--sr-space-3);
}

.pilot-table-footer .pagination {
  flex: 1;
}

.pilot-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--sr-space-4);
}

.pilot-panel {
  display: grid;
  gap: var(--sr-space-3);
  padding: var(--sr-space-4);
  border: 1px solid var(--sr-border);
  background: var(--sr-surface);
}

.pilot-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sr-space-3);
}

.pilot-panel h2,
.pilot-inspector-section h3,
.pilot-compact-form h3 {
  margin: 0;
  color: var(--sr-text);
  font-size: 16px;
}

.pilot-review-list,
.pilot-signal-list {
  display: grid;
  gap: 8px;
}

.pilot-review-list button {
  display: grid;
  grid-template-columns: 70px 72px minmax(0, 1fr) 130px;
  gap: 10px;
  align-items: center;
  width: 100%;
  min-height: 38px;
  padding: 7px 8px;
  text-align: left;
  background: var(--sr-surface);
}

.pilot-review-list time {
  color: var(--sr-text-secondary);
  font-size: 12px;
  text-align: right;
}

.pilot-signal-list div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 70px 60px;
  gap: 10px;
  align-items: center;
  min-height: 34px;
  border-bottom: 1px solid var(--sr-border);
}

.pilot-signal-list div:last-child {
  border-bottom: 0;
}

.pilot-signal-list strong,
.pilot-signal-list em {
  text-align: right;
}

.pilot-admin-forms {
  display: grid;
  border: 1px solid var(--sr-border);
  background: var(--sr-surface);
}

.pilot-admin-summary {
  width: 100%;
  min-height: 42px;
  justify-content: space-between;
  border: 0;
  background: transparent;
  color: var(--sr-text);
  font-weight: 800;
}

.pilot-admin-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sr-space-4);
  padding: var(--sr-space-4);
  border-top: 1px solid var(--sr-border);
}

.pilot-compact-form {
  display: grid;
  gap: var(--sr-space-3);
}

.pilot-inspector-detail {
  display: grid;
  gap: var(--sr-space-4);
}

.pilot-inspector-head {
  display: grid;
  gap: 10px;
}

.pilot-inspector-head h2 {
  margin: 0;
  color: var(--sr-text);
  font-size: 22px;
}

.pilot-inspector-head strong {
  display: block;
  margin-top: 4px;
  color: var(--sr-text);
}

.pilot-inspector-list {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--sr-border);
}

.pilot-inspector-list > div {
  display: grid;
  grid-template-columns: 22px minmax(0, .85fr) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 45px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sr-border);
}

.pilot-inspector-list .icon-svg {
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
}

.pilot-inspector-list span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.pilot-inspector-list strong {
  color: var(--sr-text);
  font-size: 13px;
}

.pilot-inspector-list .pilot-progress {
  grid-column: 3;
  width: 100%;
}

.pilot-inspector-section {
  display: grid;
  gap: 10px;
}

.pilot-note-list {
  display: grid;
  gap: 8px;
}

.pilot-note-list > div {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  gap: 10px;
}

.pilot-note-list > div > span {
  width: 7px;
  height: 7px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--sr-primary);
}

.pilot-note-list p {
  margin: 0;
  color: var(--sr-text);
  font-size: 12px;
  line-height: 1.4;
}

.pilot-note-list time {
  display: block;
  margin-bottom: 2px;
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.pilot-mini-chart {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  align-items: end;
  gap: 6px;
  height: 74px;
  padding: 8px 4px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: linear-gradient(180deg, transparent, var(--sr-surface-muted));
}

.pilot-mini-chart span {
  display: block;
  border-radius: 999px 999px 2px 2px;
  background: color-mix(in srgb, var(--sr-primary) 72%, white);
}

.pilot-inspector-actions {
  display: grid;
  gap: 8px;
}

.pilot-inspector-actions button {
  width: 100%;
  min-height: 38px;
}

@media (max-width: 1440px) {
  .workspace.pilot-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .pilot-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }
}

@media (max-width: 1180px) {
  .pilot-metrics,
  .pilot-bottom-grid,
  .pilot-admin-form-grid {
    grid-template-columns: 1fr 1fr;
  }

  .pilot-filter-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}



/* Inspector line charts */
.department-sparkline,
.pilot-mini-chart {
  --inspector-chart-color: var(--sr-primary);
  --inspector-chart-fill: color-mix(in srgb, var(--sr-primary) 18%, transparent);
  min-height: 108px;
  display: block;
  padding: 2px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.department-sparkline {
  --inspector-chart-color: var(--sr-danger);
  --inspector-chart-fill: color-mix(in srgb, var(--sr-danger) 16%, transparent);
}

.department-sparkline svg,
.pilot-mini-chart svg {
  display: block;
  width: 100%;
  height: 118px;
  overflow: visible;
}

.inspector-chart-axis,
.inspector-chart-date {
  fill: var(--sr-text-secondary);
  font-size: 9px;
  font-weight: 650;
}

.inspector-chart-date {
  text-anchor: middle;
}

.inspector-chart-grid {
  stroke: var(--sr-border);
  stroke-width: 1;
  stroke-dasharray: 2 4;
}

.inspector-chart-area {
  fill: var(--inspector-chart-fill);
}

.inspector-chart-line {
  fill: none;
  stroke: var(--inspector-chart-color);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.inspector-chart-dot {
  fill: var(--inspector-chart-color);
  stroke: var(--sr-surface);
  stroke-width: 1.5;
}


/* Knowledge base workspace */
.workspace.knowledge-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 320px;
}

.knowledge-workspace .inspector {
  width: 320px;
  min-width: 0;
}

.knowledge-page {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.knowledge-heading h1 {
  margin: 0;
  color: var(--sr-text);
  font-size: 26px;
  line-height: 1.15;
}

.knowledge-heading p {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 8px 0 0;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.knowledge-heading p span + span::before {
  content: "вЂє";
  margin-right: 10px;
  color: var(--sr-text-muted);
}

.knowledge-heading small {
  display: block;
  margin-top: 12px;
  color: var(--sr-text-secondary);
  font-size: 13px;
}

.knowledge-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.knowledge-metric-card {
  min-height: 112px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: var(--sr-space-3);
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.knowledge-metric-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.knowledge-metric-icon .icon-svg {
  width: 25px;
  height: 25px;
}

.knowledge-metric-card small,
.knowledge-metric-card em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.knowledge-metric-card strong {
  display: block;
  margin-top: 6px;
  color: var(--sr-text);
  font-size: 27px;
  line-height: 1;
}

.knowledge-metric-card em {
  margin-top: 10px;
  color: var(--sr-primary);
  font-size: 12px;
}

.knowledge-metric-card.tone-mint .knowledge-metric-icon,
.knowledge-metric-card.tone-green .knowledge-metric-icon {
  background: var(--sr-success-soft);
  color: var(--sr-primary);
}

.knowledge-metric-card.tone-blue .knowledge-metric-icon {
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.knowledge-metric-card.tone-amber .knowledge-metric-icon {
  background: var(--sr-warning-soft);
  color: var(--sr-warning);
}

.knowledge-registry.panel,
.knowledge-panel.panel {
  border-radius: var(--sr-radius-sm);
  box-shadow: var(--sr-shadow-card);
}

.knowledge-filter-form {
  display: grid;
  grid-template-columns: minmax(320px, 1.35fr) repeat(4, minmax(104px, .48fr)) auto minmax(154px, auto);
  gap: 10px;
  align-items: end;
  margin-bottom: var(--sr-space-4);
}

.knowledge-filter-form label {
  display: grid;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.knowledge-filter-form input,
.knowledge-filter-form select,
.knowledge-filter-form button {
  min-height: 38px;
}

.knowledge-filter-form button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.knowledge-filter-form .icon-svg {
  width: 17px;
  height: 17px;
}

.knowledge-search-field {
  position: relative;
}

.knowledge-search-field > .icon-svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  color: var(--sr-text-muted);
}

.knowledge-search-field input {
  padding-left: 38px;
}

.knowledge-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
}

.knowledge-table th,
.knowledge-table td {
  padding: 9px 8px;
  vertical-align: middle;
  border-bottom: 1px solid var(--sr-border);
  line-height: 1.32;
}

.knowledge-table th {
  height: 44px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
  text-align: left;
}

.knowledge-table th:first-child,
.knowledge-table td:first-child {
  width: 32px;
  text-align: center;
}

.knowledge-table input[type="checkbox"] {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--sr-primary);
}

.knowledge-table th:nth-child(2),
.knowledge-table td:nth-child(2) {
  width: 22%;
}

.knowledge-table th:nth-child(3),
.knowledge-table td:nth-child(3) {
  width: 8.5%;
}

.knowledge-table th:nth-child(4),
.knowledge-table td:nth-child(4) {
  width: 11%;
}

.knowledge-table th:nth-child(5),
.knowledge-table td:nth-child(5) {
  width: 10.5%;
}

.knowledge-table th:nth-child(6),
.knowledge-table td:nth-child(6) {
  width: 104px;
}

.knowledge-table th:nth-child(7),
.knowledge-table td:nth-child(7) {
  width: 86px;
}

.knowledge-table th:nth-child(8),
.knowledge-table td:nth-child(8) {
  width: 148px;
}

.knowledge-table th:nth-child(9),
.knowledge-table td:nth-child(9) {
  width: 62px;
}

.knowledge-table th:nth-child(10),
.knowledge-table td:nth-child(10) {
  width: 42px;
  padding-left: 4px;
  padding-right: 4px;
}

.knowledge-table td:nth-child(10) .icon-button {
  width: 32px;
  min-width: 32px;
  height: 32px;
  padding: 0;
}

.knowledge-row {
  cursor: pointer;
}

.knowledge-row:hover {
  background: var(--sr-surface-muted);
}

.knowledge-owner {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.knowledge-owner-avatar {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--sr-success-soft);
  color: var(--sr-primary);
  font-size: 11px;
  font-weight: 850;
}

.knowledge-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.knowledge-tag {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 11px;
  font-weight: 700;
}


.knowledge-status {
  display: inline-flex;
  max-width: 142px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}
.knowledge-status.info {
  border-color: color-mix(in srgb, var(--sr-info) 36%, var(--sr-border));
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.knowledge-status.muted {
  border-color: var(--sr-border);
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.knowledge-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--sr-space-4);
}

.knowledge-topic-list {
  display: grid;
  gap: 13px;
}

.knowledge-topic-list > div {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 36px;
  gap: 12px;
  align-items: center;
  color: var(--sr-text);
  font-size: 13px;
}

.knowledge-topic-bar {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.knowledge-topic-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.knowledge-updates {
  display: grid;
  gap: 0;
}

.knowledge-updates > div {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 94px 110px;
  gap: 10px;
  align-items: center;
  min-height: 42px;
  border-bottom: 1px solid var(--sr-border);
  font-size: 12px;
}

.knowledge-updates .icon-svg {
  width: 17px;
  height: 17px;
  color: var(--sr-text-secondary);
}

.knowledge-updates span,
.knowledge-updates em {
  color: var(--sr-text-secondary);
  font-style: normal;
}

.knowledge-link-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  min-height: 34px;
  margin-top: var(--sr-space-3);
  padding-inline: 0;
  border: 0;
  background: transparent;
  color: var(--sr-primary);
  box-shadow: none;
}

.knowledge-inspector-detail {
  display: grid;
  gap: var(--sr-space-4);
  min-width: 0;
}

.knowledge-inspector-head {
  display: grid;
  gap: 10px;
}

.knowledge-inspector-head h2 {
  margin: 0;
  color: var(--sr-text);
  font-size: 17px;
  line-height: 1.25;
}

.knowledge-code {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
  text-align: right;
}

.knowledge-inspector-list {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--sr-border);
}

.knowledge-inspector-list > div {
  display: grid;
  grid-template-columns: 22px minmax(0, .85fr) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 45px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sr-border);
}

.knowledge-inspector-list .icon-svg {
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
}

.knowledge-inspector-list span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.knowledge-inspector-list strong {
  min-width: 0;
  color: var(--sr-text);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.knowledge-inspector-section {
  display: grid;
  gap: 10px;
}

.knowledge-inspector-section h3 {
  margin: 0;
  color: var(--sr-text);
  font-size: 14px;
}

.knowledge-inspector-section p {
  margin: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
  line-height: 1.55;
}

.knowledge-related-list {
  display: grid;
  gap: 8px;
}

.knowledge-related-list button {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-height: 36px;
  text-align: left;
}

.knowledge-inspector-actions {
  display: grid;
  gap: var(--sr-space-2);
}

.knowledge-inspector-actions button {
  width: 100%;
  min-height: 38px;
}

@media (max-width: 1440px) {
  .workspace.knowledge-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .knowledge-workspace .inspector {
    position: static;
    width: 100%;
    height: auto;
  }
}

@media (max-width: 1180px) {
  .knowledge-metrics,
  .knowledge-bottom-grid {
    grid-template-columns: 1fr;
  }

  .knowledge-filter-form {
    grid-template-columns: 1fr 1fr;
  }
}




/* Operational memory workspace */


.memory-page {
  display: grid;
  gap: var(--sr-space-4);
}

.memory-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--sr-space-4);
}

.memory-heading h1 {
  margin: 0;
  font-size: 28px;
  line-height: 1.1;
  font-weight: 850;
}

.memory-heading p {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 0;
  color: var(--sr-text-secondary);
}

.memory-heading p span + span::before {
  content: "›";
  margin-right: 8px;
  color: var(--sr-text-muted);
}

.memory-heading small {
  display: block;
  margin-top: 10px;
  color: var(--sr-text-secondary);
  font-size: 14px;
}

.memory-heading-actions {
  display: flex;
  gap: var(--sr-space-2);
  flex: 0 0 auto;
}

.memory-filter-row {
  display: grid;
  grid-template-columns: minmax(320px, 1.6fr) minmax(160px, .62fr) minmax(210px, .82fr) minmax(180px, .68fr) minmax(260px, auto);
  gap: var(--sr-space-3);
  align-items: end;
}

.memory-filter-row label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.memory-search {
  position: relative;
}

.memory-search .icon-svg {
  position: absolute;
  left: 14px;
  bottom: 13px;
  width: 18px;
  height: 18px;
  color: var(--sr-text-muted);
}

.memory-search input {
  padding-left: 42px;
}

.memory-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.memory-metric {
  min-height: 90px;
  display: flex;
  align-items: center;
  gap: var(--sr-space-4);
  padding: 20px 24px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.memory-metric > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: var(--sr-success-soft);
  color: var(--sr-primary);
  flex: 0 0 auto;
}

.memory-metric.tone-blue > span { background: var(--sr-info-soft); color: var(--sr-info); }
.memory-metric.tone-violet > span { background: #f0e9ff; color: #7a4df3; }
.memory-metric.tone-slate > span { background: var(--sr-surface-muted); color: var(--sr-text-secondary); }

.memory-metric .icon-svg {
  width: 21px;
  height: 21px;
}

.memory-metric small {
  display: block;
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.memory-metric strong {
  display: block;
  margin-top: 4px;
  color: var(--sr-text);
  font-size: 27px;
  line-height: 1;
}

.memory-metric em {
  display: block;
  margin-top: 8px;
  color: var(--sr-primary);
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
}

.memory-layout {
  display: grid;
  grid-template-columns: minmax(330px, .92fr) minmax(0, 1.55fr);
  gap: var(--sr-space-4);
  align-items: start;
}

.memory-list,
.memory-detail {
  padding: var(--sr-space-4);
}

.memory-list-head,
.memory-detail-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--sr-space-3);
  margin-bottom: var(--sr-space-3);
}

.memory-list-head h2,
.memory-detail-head h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
}

.memory-list-head h2 span {
  color: var(--sr-text-secondary);
  font-size: 13px;
  font-weight: 700;
}

.memory-list-head small {
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.memory-template-list {
  display: grid;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
}

.memory-template-item {
  position: relative;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  grid-template-areas:
    "radio title count"
    "radio desc count"
    "radio deps version";
  gap: 4px 12px;
  min-height: 90px;
  padding: 14px 16px;
  border: 0;
  border-bottom: 1px solid var(--sr-border);
  background: var(--sr-surface);
  color: var(--sr-text);
  text-align: left;
  cursor: pointer;
}

.memory-template-item:last-child {
  border-bottom: 0;
}

.memory-template-item.active {
  border: 1px solid var(--sr-primary);
  background: var(--sr-primary-soft);
}

.memory-radio {
  grid-area: radio;
  width: 18px;
  height: 18px;
  border: 1px solid var(--sr-border-strong);
  border-radius: 50%;
  align-self: start;
  margin-top: 4px;
  color: var(--sr-primary);
}

.memory-radio .icon-svg {
  width: 18px;
  height: 18px;
}

.memory-template-item strong {
  grid-area: title;
  min-width: 0;
  font-size: 13px;
  line-height: 1.25;
}

.memory-template-item small {
  grid-area: desc;
  color: var(--sr-text-secondary);
  line-height: 1.35;
}

.memory-template-item em {
  grid-area: deps;
  color: var(--sr-text-secondary);
  font-style: normal;
  font-size: 12px;
  font-weight: 700;
}

.memory-template-item b {
  grid-area: count;
  justify-self: end;
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.memory-template-item i {
  grid-area: version;
  justify-self: end;
  align-self: end;
  padding: 2px 8px;
  border: 1px solid var(--sr-border);
  border-radius: 999px;
  color: var(--sr-primary);
  background: var(--sr-surface-muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.memory-version-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.memory-version-actions select {
  min-height: 34px;
  padding: 6px 30px 6px 12px;
}

.memory-tabs {
  margin: 0 0 var(--sr-space-4);
}

.memory-overview-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 0;
  border-bottom: 1px solid var(--sr-border);
  padding-bottom: var(--sr-space-3);
  margin-bottom: var(--sr-space-3);
}

.memory-overview-grid div:first-child,
.memory-overview-grid div:nth-child(4) {
  grid-column: 1 / -1;
}

.memory-overview-grid div {
  display: grid;
  gap: 4px;
  padding: 6px 0;
}

.memory-overview-grid span,
.memory-description h3,
.memory-assisted-search h3,
.memory-application-preview h3 {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
}

.memory-overview-grid strong {
  font-size: 14px;
}

.memory-description {
  padding: var(--sr-space-3) 0;
  border-bottom: 1px solid var(--sr-border);
}

.memory-description h3,
.memory-assisted-search h3,
.memory-application-preview h3 {
  margin: 0 0 8px;
  color: var(--sr-text);
  font-size: 14px;
}

.memory-description p {
  margin: 0;
  color: var(--sr-text);
  line-height: 1.55;
}

.memory-assisted-search {
  margin-top: var(--sr-space-4);
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.memory-assisted-search h3 span,
.memory-application-preview h3 span {
  color: var(--sr-text-secondary);
  font-weight: 650;
}

.memory-assisted-search > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--sr-space-2);
}

.memory-assisted-search ul {
  margin: 12px 0 0 18px;
  padding: 0;
  color: var(--sr-text);
}

.memory-assisted-search li {
  margin: 4px 0;
}

.memory-application-preview {
  margin-top: var(--sr-space-4);
}

.memory-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--sr-space-3);
}

.memory-preview-grid article {
  display: grid;
  gap: 8px;
  min-height: 128px;
  padding: var(--sr-space-3);
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
}

.memory-preview-grid h4 {
  margin: 0;
  font-size: 13px;
}

.memory-preview-grid article div {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--sr-text);
  font-size: 12px;
  line-height: 1.35;
}

.memory-preview-grid .icon-svg {
  width: 14px;
  height: 14px;
  color: var(--sr-primary);
  flex: 0 0 auto;
  margin-top: 1px;
}

.memory-detail-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--sr-space-2);
  margin-top: var(--sr-space-4);
  padding-top: var(--sr-space-3);
  border-top: 1px solid var(--sr-border);
}

.memory-inspector {
  display: grid;
  gap: var(--sr-space-4);
}

.memory-inspector-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--sr-space-2);
  padding-bottom: var(--sr-space-3);
  border-bottom: 1px solid var(--sr-border);
}

.memory-inspector-head h2 {
  margin: 0;
  font-size: 16px;
}

.memory-inspector-meta {
  display: grid;
}

.memory-inspector-meta div {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: var(--sr-space-2);
  padding: 10px 0;
  border-bottom: 1px solid var(--sr-border);
}

.memory-inspector-meta span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
}

.memory-inspector-meta strong {
  color: var(--sr-text);
  font-size: 13px;
}

.memory-inspector-meta small {
  grid-column: 2;
  color: var(--sr-text-secondary);
}

.memory-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.memory-tag-list span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface-muted);
  font-size: 12px;
  font-weight: 750;
}

.memory-snapshots,
.memory-application-history {
  display: grid;
  gap: 8px;
}

.memory-snapshots h3,
.memory-application-history h3,
.memory-inspector section h3 {
  margin: 0;
  font-size: 13px;
}

.memory-snapshots p {
  margin: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.memory-application-history div {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid var(--sr-border);
  font-size: 12px;
}

.memory-application-history em {
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--sr-success-soft);
  color: var(--sr-success);
  font-style: normal;
  font-weight: 800;
}

@media (max-width: 1500px) {
  .memory-filter-row {
    grid-template-columns: minmax(260px, 1.2fr) repeat(3, minmax(145px, .7fr));
  }

  .memory-filter-row > button {
    grid-column: 1 / -1;
    justify-self: end;
  }

  .memory-layout {
    grid-template-columns: minmax(300px, .85fr) minmax(0, 1.35fr);
  }
}

@media (max-width: 1180px) {
  .memory-metrics,
  .memory-layout,
  .memory-preview-grid {
    grid-template-columns: 1fr;
  }
}

/* Operational memory workspace fit */
.workspace.operational-memory-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 360px);
}

.operational-memory-workspace .memory-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.operational-memory-workspace .memory-heading-actions {
  min-width: 0;
}

.operational-memory-workspace .memory-heading-actions .button.primary {
  white-space: nowrap;
}

.workspace.operational-memory-workspace.with-inspector .memory-filter-row {
  grid-template-columns: minmax(240px, 1.1fr) repeat(3, minmax(132px, .52fr)) minmax(240px, auto);
}

.workspace.operational-memory-workspace.with-inspector .memory-filter-row > button {
  min-height: 42px;
  white-space: normal;
}

.workspace.operational-memory-workspace.with-inspector .memory-layout {
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
}

.workspace.operational-memory-workspace.with-inspector .memory-list,
.workspace.operational-memory-workspace.with-inspector .memory-detail {
  min-width: 0;
}

.workspace.operational-memory-workspace.with-inspector .memory-template-item {
  grid-template-columns: 22px minmax(0, 1fr) auto;
}

.workspace.operational-memory-workspace.with-inspector .memory-preview-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1500px) {
  .workspace.operational-memory-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 340px);
  }

  .workspace.operational-memory-workspace.with-inspector .memory-filter-row {
    grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(130px, .52fr));
  }

  .workspace.operational-memory-workspace.with-inspector .memory-filter-row > button {
    grid-column: 1 / -1;
    justify-self: end;
    min-width: 260px;
  }

  .workspace.operational-memory-workspace.with-inspector .memory-layout {
    grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
  }
}

/* Publication queue workspace */

.workspace.publication-workspace {
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
  overflow-x: hidden;
}

.publication-workspace .main {
  gap: 0;
}

.publication-page {
  display: grid;
  gap: 18px;
  padding: 24px 28px 26px;
  background: var(--sr-bg);
}

.publication-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
}

.publication-heading h1 {
  margin: 0;
  font-size: 28px;
  line-height: 1.1;
  font-weight: 850;
}

.publication-heading p {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 0;
  color: var(--sr-text-secondary);
}

.publication-heading p span + span::before {
  content: "›";
  margin-right: 8px;
  color: var(--sr-text-muted);
}

.publication-heading small {
  display: block;
  margin-top: 10px;
  color: var(--sr-text-secondary);
  font-size: 14px;
}

.publication-heading-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  flex: 0 0 auto;
}

.publication-heading-actions button,
.publication-side-actions button,
.publication-table-footer button,
.publication-tabs button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.publication-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.publication-metric {
  min-height: 100px;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 22px 24px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.publication-metric > span {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: var(--sr-info-soft);
  color: var(--sr-info);
  flex: 0 0 auto;
}

.publication-metric.tone-mint > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.publication-metric.tone-amber > span { background: var(--sr-warning-soft); color: var(--sr-warning); }
.publication-metric.tone-violet > span { background: #f0e9ff; color: #7a4df3; }

.publication-metric .icon-svg {
  width: 25px;
  height: 25px;
}

.publication-metric small {
  display: block;
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.publication-metric strong {
  display: block;
  margin-top: 4px;
  color: var(--sr-text);
  font-size: 28px;
  line-height: 1;
}

.publication-metric em {
  display: block;
  margin-top: 8px;
  color: var(--sr-primary);
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
}

.publication-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 330px);
  gap: 16px;
  align-items: start;
}

.publication-main-column {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.publication-table-panel,
.publication-detail-panel,
.publication-side-panel {
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.publication-table-panel {
  padding: 14px;
  overflow: hidden;
}

.publication-filters {
  display: grid;
  grid-template-columns: minmax(260px, 1.4fr) repeat(4, minmax(130px, .62fr));
  gap: 12px;
  align-items: end;
  margin-bottom: 14px;
}

.publication-filters label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.publication-search {
  position: relative;
  color: var(--sr-text-muted);
}

.publication-search .icon-svg {
  position: absolute;
  left: 14px;
  bottom: 13px;
  width: 18px;
  height: 18px;
}

.publication-search input {
  padding-left: 42px;
}

.publication-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
}

.publication-table th,
.publication-table td {
  padding: 12px 12px;
  border-bottom: 1px solid var(--sr-border);
  text-align: left;
  vertical-align: middle;
}

.publication-table th {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
  background: var(--sr-surface);
}

.publication-table th:nth-child(1),
.publication-table td:nth-child(1) { width: 44px; }
.publication-table th:nth-child(2),
.publication-table td:nth-child(2) { width: 32%; }
.publication-table th:nth-child(3),
.publication-table td:nth-child(3) { width: 13%; }
.publication-table th:nth-child(4),
.publication-table td:nth-child(4) { width: 13%; }
.publication-table th:nth-child(5),
.publication-table td:nth-child(5) { width: 16%; }
.publication-table th:nth-child(6),
.publication-table td:nth-child(6) { width: 14%; }
.publication-table th:nth-child(7),
.publication-table td:nth-child(7) { width: 13%; }
.publication-table th:nth-child(8),
.publication-table td:nth-child(8) { width: 42px; }

.publication-table tbody tr {
  cursor: pointer;
}

.publication-table tbody tr:hover {
  background: rgba(20, 154, 142, .05);
}

.publication-table tr.selected-row {
  background: var(--sr-primary-soft);
  outline: 1px solid var(--sr-primary);
  outline-offset: -1px;
}

.publication-table td strong,
.publication-table td small {
  display: block;
  min-width: 0;
}

.publication-table td strong {
  color: var(--sr-text);
  font-size: 13px;
  font-weight: 850;
}

.publication-table td small {
  margin-top: 4px;
  color: var(--sr-text-secondary);
  line-height: 1.25;
}

.publication-table-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: 1px solid var(--sr-border-strong);
  border-radius: 3px;
  color: var(--sr-surface);
}

.publication-table-check.checked {
  background: var(--sr-primary);
  border-color: var(--sr-primary);
}

.publication-table-check .icon-svg {
  width: 12px;
  height: 12px;
  stroke-width: 3;
}

.publication-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 24px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--sr-border);
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.publication-badge.tone-done,
.publication-badge.tone-mint {
  background: var(--sr-success-soft);
  border-color: var(--sr-success-border);
  color: var(--sr-success);
}

.publication-badge.tone-warn,
.publication-badge.tone-amber {
  background: var(--sr-warning-soft);
  border-color: var(--sr-warning-border);
  color: var(--sr-warning);
}

.publication-badge.tone-risk {
  background: var(--sr-danger-soft);
  border-color: var(--sr-danger-border);
  color: var(--sr-danger);
}

.publication-badge.tone-info,
.publication-badge.tone-blue,
.publication-badge.tone-cyan {
  background: var(--sr-info-soft);
  border-color: var(--sr-info-border);
  color: var(--sr-info);
}

.publication-table-footer {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
  color: var(--sr-text-secondary);
}

.publication-table-footer .pagination {
  justify-content: center;
}

.publication-table-footer label {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.publication-table-footer select {
  width: 72px;
  min-height: 36px;
}

.publication-detail-panel {
  padding: 12px 14px;
}

.publication-tabs {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.publication-tabs button {
  min-height: 34px;
  padding: 0 14px;
  background: var(--sr-surface);
}

.publication-tabs button.active {
  border-color: var(--sr-primary);
  color: var(--sr-primary);
  background: var(--sr-primary-soft);
}

.publication-tabs span {
  min-width: 20px;
  padding: 1px 7px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.publication-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .85fr);
  gap: 12px;
}

.publication-content-card {
  min-height: 120px;
  padding: 16px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.publication-content-card h3 {
  margin: 0 0 12px;
  font-size: 15px;
}

.publication-content-card p {
  margin: 0 0 10px;
  color: var(--sr-text-secondary);
  line-height: 1.45;
}

.publication-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.publication-tags span {
  padding: 4px 9px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  color: var(--sr-text);
  font-size: 12px;
  font-weight: 750;
}

.publication-checklist {
  display: grid;
  gap: 10px;
}

.publication-checklist div {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.publication-check {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--sr-border-strong);
  border-radius: 50%;
  color: var(--sr-surface);
}

.publication-check.tone-done {
  background: var(--sr-primary);
  border-color: var(--sr-primary);
}

.publication-check .icon-svg {
  width: 11px;
  height: 11px;
}

.publication-checklist em {
  font-style: normal;
  font-weight: 800;
  color: var(--sr-text-secondary);
}

.publication-checklist em.tone-done { color: var(--sr-success); }
.publication-checklist em.tone-info { color: var(--sr-info); }

.publication-side-panel {
  position: sticky;
  top: 74px;
  display: grid;
  gap: 14px;
  padding: 18px;
  max-height: calc(100vh - 92px);
  overflow: auto;
}

.publication-side-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--sr-border);
}

.publication-side-head h2 {
  margin: 0;
  font-size: 16px;
}

.publication-side-head button {
  width: 34px;
  height: 34px;
  padding: 0;
}

.publication-side-list {
  display: grid;
  gap: 0;
}

.publication-side-list > div {
  display: grid;
  grid-template-columns: 22px minmax(90px, .72fr) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid var(--sr-border);
}

.publication-side-list .icon-svg {
  width: 17px;
  height: 17px;
  color: var(--sr-text-secondary);
}

.publication-side-list span,
.publication-side-panel section h3 {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 850;
}

.publication-side-list strong {
  color: var(--sr-text);
  font-size: 13px;
}

.publication-side-panel section {
  display: grid;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--sr-border);
}

.publication-side-panel section h3 {
  margin: 0;
  color: var(--sr-text);
  font-size: 13px;
}

.publication-reviewers {
  display: grid;
  gap: 9px;
}

.publication-reviewers > div {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 8px;
  gap: 10px;
  align-items: center;
}

.publication-reviewers small {
  display: block;
  color: var(--sr-text-secondary);
}

.publication-reviewers > div > span {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--sr-primary);
}

.publication-side-actions {
  display: grid;
  gap: 10px;
}

.publication-side-actions button {
  width: 100%;
}

.publication-history,
.publication-comments {
  display: grid;
  gap: 10px;
}

.publication-history div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) minmax(120px, .5fr);
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sr-border);
}

.publication-history time,
.publication-history span {
  color: var(--sr-text-secondary);
}

@media (max-width: 1500px) {
  .publication-layout {
    grid-template-columns: minmax(0, 1fr) minmax(288px, 310px);
  }

  .publication-filters {
    grid-template-columns: minmax(240px, 1.2fr) repeat(4, minmax(120px, .6fr));
  }
}

@media (max-width: 1180px) {
  .publication-metrics,
  .publication-layout,
  .publication-detail-grid,
  .publication-filters {
    grid-template-columns: 1fr;
  }

  .publication-side-panel {
    position: static;
    max-height: none;
  }
}

/* Publication queue row actions spacing */
.publication-table th:nth-child(8),
.publication-table td:nth-child(8) {
  width: 64px;
  padding-left: 10px;
  padding-right: 18px;
  text-align: center;
}

.publication-table td:nth-child(8) .icon-button {
  margin-right: 4px;
}

/* AI laboratory workspace */
.workspace.ai-lab-workspace {
  width: min(100%, var(--sr-content-max));
}

.workspace.ai-lab-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 320px;
  align-items: start;
}

.ai-lab-workspace .main {
  min-width: 0;
}

.ai-lab-page {
  display: grid;
  gap: 16px;
}

.ai-lab-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.ai-lab-metric {
  min-height: 104px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
  text-align: left;
}

.ai-lab-metric > span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 8px;
}

.ai-lab-metric.tone-blue > span { background: var(--sr-info-soft); color: var(--sr-info); }
.ai-lab-metric.tone-mint > span { background: var(--sr-success-soft); color: var(--sr-primary); }
.ai-lab-metric.tone-amber > span { background: var(--sr-warning-soft); color: var(--sr-warning); }

.ai-lab-metric .icon-svg {
  width: 24px;
  height: 24px;
}

.ai-lab-metric small,
.ai-lab-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.ai-lab-metric strong {
  display: block;
  margin: 2px 0 4px;
  color: var(--sr-text);
  font-size: 28px;
  line-height: 1;
}

.ai-lab-table-panel,
.ai-lab-detail-card {
  min-width: 0;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.ai-lab-filter-form {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 14px 16px;
  border-bottom: 1px solid var(--sr-border);
}

.ai-lab-search {
  position: relative;
}

.ai-lab-search .icon-svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  color: var(--sr-text-muted);
}

.ai-lab-search input {
  width: 100%;
  padding-left: 40px;
}

.ai-lab-filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ai-lab-filter-tabs button {
  min-height: 36px;
  padding-inline: 14px;
  font-weight: 750;
}

.ai-lab-filter-tabs button span {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  height: 20px;
  margin-left: 8px;
  padding: 0 7px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.ai-lab-filter-tabs button.active {
  border-color: var(--sr-primary);
  background: var(--sr-primary-soft);
  color: var(--sr-primary-active);
}

.ai-lab-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
}

.ai-lab-table th,
.ai-lab-table td {
  padding: 12px 12px;
  border-bottom: 1px solid var(--sr-border);
  vertical-align: middle;
  line-height: 1.35;
}

.ai-lab-table th {
  height: 46px;
  color: var(--sr-text-secondary);
  font-weight: 750;
  text-align: left;
}

.ai-lab-table th:nth-child(1),
.ai-lab-table td:nth-child(1) { width: 42px; text-align: center; }
.ai-lab-table th:nth-child(2),
.ai-lab-table td:nth-child(2) { width: 98px; }
.ai-lab-table th:nth-child(3),
.ai-lab-table td:nth-child(3) { width: 17%; }
.ai-lab-table th:nth-child(4),
.ai-lab-table td:nth-child(4) { width: 19%; }
.ai-lab-table th:nth-child(5),
.ai-lab-table td:nth-child(5) { width: 22%; }
.ai-lab-table th:nth-child(6),
.ai-lab-table td:nth-child(6) { width: 138px; }
.ai-lab-table th:nth-child(7),
.ai-lab-table td:nth-child(7) { width: 92px; }
.ai-lab-table th:nth-child(8),
.ai-lab-table td:nth-child(8) { width: 146px; }

.ai-lab-row {
  cursor: pointer;
}

.ai-lab-row:hover {
  background: var(--sr-surface-muted);
}

.ai-lab-row.selected-row {
  background: var(--sr-primary-soft);
  outline-color: var(--sr-primary);
}

.ai-lab-row td strong {
  color: var(--sr-text);
}

.ai-lab-row-check {
  display: inline-grid;
  place-items: center;
  width: 16px;
  height: 16px;
  border: 1px solid var(--sr-border-strong);
  border-radius: 3px;
}

.ai-lab-row-check.checked {
  border-color: var(--sr-primary);
  background: var(--sr-primary);
  color: #fff;
}

.ai-lab-row-check .icon-svg {
  width: 12px;
  height: 12px;
}

.ai-lab-score-badge,
.ai-lab-status,
.ai-lab-route-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.ai-lab-score-badge.tone-done,
.ai-lab-status.tone-done,
.ai-lab-route-badge.tone-done {
  border-color: color-mix(in srgb, var(--sr-success) 34%, var(--sr-border));
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.ai-lab-score-badge.tone-warn,
.ai-lab-status.tone-warn,
.ai-lab-route-badge.tone-warn {
  border-color: color-mix(in srgb, var(--sr-warning) 40%, var(--sr-border));
  background: var(--sr-warning-soft);
  color: #a76400;
}

.ai-lab-score-badge.tone-risk,
.ai-lab-status.tone-risk,
.ai-lab-route-badge.tone-risk {
  border-color: color-mix(in srgb, var(--sr-danger) 36%, var(--sr-border));
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.ai-lab-status.tone-info,
.ai-lab-route-badge.tone-info {
  border-color: color-mix(in srgb, var(--sr-info) 34%, var(--sr-border));
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.ai-lab-sort-icon {
  width: 14px;
  height: 14px;
  vertical-align: text-bottom;
}

.ai-lab-table-footer {
  min-height: 56px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  color: var(--sr-text-secondary);
}

.ai-lab-table-footer .pagination {
  justify-content: center;
}

.ai-lab-table-footer label {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.ai-lab-table-footer select {
  min-height: 34px;
  width: 72px;
}

.ai-lab-detail-card {
  position: relative;
  padding: 0;
}

.ai-lab-tabs {
  display: flex;
  gap: 8px;
  padding: 12px 16px 0;
  border-bottom: 1px solid var(--sr-border);
}

.ai-lab-tabs button {
  min-height: 38px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-color: transparent;
  background: transparent;
  color: var(--sr-text-secondary);
}

.ai-lab-tabs button.active {
  border-color: var(--sr-border);
  border-bottom-color: var(--sr-surface);
  color: var(--sr-primary-active);
  background: var(--sr-surface);
}

.ai-lab-last-run {
  position: absolute;
  top: 14px;
  right: 18px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.ai-lab-last-run .icon-svg {
  width: 16px;
  height: 16px;
}

.ai-lab-compare-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-lab-compare-card {
  min-width: 0;
  padding: 18px;
  border-right: 1px solid var(--sr-border);
}

.ai-lab-compare-card:last-child {
  border-right: 0;
}

.ai-lab-compare-head {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 132px;
  gap: 12px;
  align-items: start;
  margin-bottom: 14px;
}

.ai-lab-compare-head > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
}

.ai-lab-compare-head > span.tone-mint {
  color: var(--sr-primary);
}

.ai-lab-compare-head > span.tone-blue {
  color: var(--sr-info);
}

.ai-lab-compare-head .icon-svg {
  width: 22px;
  height: 22px;
}

.ai-lab-compare-head h3,
.ai-lab-summary-card h3 {
  margin: 0;
  color: var(--sr-text);
  font-size: 18px;
  line-height: 24px;
}

.ai-lab-compare-head small,
.ai-lab-compare-head em {
  color: var(--sr-text-secondary);
  font-style: normal;
}

.ai-lab-compare-head em {
  padding: 10px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  text-align: center;
}

.ai-lab-compare-head em strong {
  color: var(--sr-primary);
  font-size: 18px;
}

.ai-lab-compare-head em strong.tone-warn { color: var(--sr-warning); }
.ai-lab-compare-head em strong.tone-risk { color: var(--sr-danger); }

.ai-lab-compare-card dl {
  display: grid;
  gap: 12px;
  margin: 0;
}

.ai-lab-compare-card dl > div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 12px;
}

.ai-lab-compare-card dt {
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.ai-lab-compare-card dd {
  margin: 0;
  color: var(--sr-text);
}

.ai-lab-compare-card ul {
  margin: 0;
  padding-left: 16px;
}

.ai-lab-text-box {
  padding: 10px 12px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
}

.ai-lab-summary-card {
  padding: 18px;
}

.ai-lab-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.ai-lab-summary-grid > div {
  padding: 12px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
}

.ai-lab-summary-grid span {
  display: block;
  color: var(--sr-text-secondary);
}

.ai-lab-inspector {
  display: grid;
  gap: 16px;
}

.ai-lab-inspector-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.ai-lab-inspector-head h2 {
  margin: 0;
  font-size: 18px;
  line-height: 24px;
}

.ai-lab-inspector-head span {
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  font-size: 12px;
  font-weight: 850;
}

.ai-lab-inspector section {
  display: grid;
  gap: 0;
}

.ai-lab-inspector-row {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid var(--sr-border);
}

.ai-lab-inspector-row .icon-svg {
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
  grid-row: span 2;
}

.ai-lab-inspector-row span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 750;
}

.ai-lab-inspector-row strong {
  color: var(--sr-text);
  font-size: 13px;
}

.ai-lab-inspector > button,
.ai-lab-final-score + button {
  width: 100%;
}

.ai-lab-final-score {
  padding: 14px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
}

.ai-lab-final-score h3 {
  margin: 0 0 8px;
  font-size: 16px;
}

.ai-lab-final-score > strong {
  display: block;
  color: var(--sr-primary);
  font-size: 32px;
  line-height: 1;
}

.ai-lab-final-score > strong.tone-warn { color: var(--sr-warning); }
.ai-lab-final-score > strong.tone-risk { color: var(--sr-danger); }

.ai-lab-final-score > span {
  display: block;
  margin: 4px 0 14px;
  color: var(--sr-warning);
  font-weight: 750;
}

.ai-lab-score-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 78px 38px;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.ai-lab-score-row i {
  height: 6px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  overflow: hidden;
}

.ai-lab-score-row b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.ai-lab-score-row strong {
  color: var(--sr-text);
  font-size: 12px;
}

@media (max-width: 1366px) {
  .workspace.ai-lab-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .ai-lab-metrics,
  .ai-lab-compare-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-lab-filter-form {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* AI laboratory compact table polish */
.ai-lab-filter-form {
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 12px;
}

.ai-lab-filter-tabs {
  gap: 8px;
}

.ai-lab-filter-tabs button {
  padding-inline: 12px;
}

.ai-lab-table th:nth-child(1),
.ai-lab-table td:nth-child(1) { width: 36px; }
.ai-lab-table th:nth-child(2),
.ai-lab-table td:nth-child(2) { width: 86px; }
.ai-lab-table th:nth-child(3),
.ai-lab-table td:nth-child(3) { width: 15%; }
.ai-lab-table th:nth-child(4),
.ai-lab-table td:nth-child(4) { width: 16%; }
.ai-lab-table th:nth-child(5),
.ai-lab-table td:nth-child(5) { width: 20%; }
.ai-lab-table th:nth-child(6),
.ai-lab-table td:nth-child(6) { width: 118px; }
.ai-lab-table th:nth-child(7),
.ai-lab-table td:nth-child(7) { width: 76px; }
.ai-lab-table th:nth-child(8),
.ai-lab-table td:nth-child(8) { width: 150px; }

.ai-lab-status {
  padding-inline: 8px;
  font-size: 11px;
}

/* Test ticket workspace */
.test-ticket-page {
  display: grid;
  gap: 18px;
  color: var(--sr-text);
}

.test-ticket-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.test-ticket-heading h1 {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: 0;
}

.test-ticket-heading p {
  margin: 6px 0 0;
  color: var(--sr-text-secondary);
}

.test-ticket-heading-actions {
  display: flex;
  gap: 12px;
  align-items: center;
}

.test-ticket-heading-actions button,
.test-ticket-upload-row button,
.test-ticket-json-head button,
.test-ticket-result-tabs button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  color: var(--sr-text);
  padding: 0 16px;
  font-weight: 700;
}

.test-ticket-heading-actions button.primary {
  min-width: 176px;
  border-color: var(--sr-primary);
  background: var(--sr-primary);
  color: #fff;
}

.test-ticket-mode-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.test-ticket-mode-card {
  min-height: 84px;
  display: flex;
  align-items: center;
  gap: 18px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-sm);
  padding: 18px 20px;
}

.test-ticket-mode-card > span {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
  flex: 0 0 auto;
}

.test-ticket-mode-card.tone-blue > span { color: #2563eb; background: #eff6ff; }
.test-ticket-mode-card.tone-violet > span { color: #7c3aed; background: #f5f3ff; }
.test-ticket-mode-card.tone-neutral > span { color: var(--sr-text-secondary); background: var(--sr-surface-muted); }

.test-ticket-mode-card small,
.test-ticket-mode-card em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.test-ticket-mode-card strong {
  display: block;
  margin-top: 4px;
  font-size: 15px;
}

.test-ticket-builder-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: 14px;
  align-items: start;
}

.test-ticket-form,
.test-ticket-preview,
.test-ticket-results {
  border-radius: 8px;
  border-color: var(--sr-border);
  box-shadow: var(--sr-shadow-sm);
}

.test-ticket-form {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.test-ticket-form label {
  display: grid;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.test-ticket-form .test-ticket-field-title {
  color: var(--sr-text-secondary);
}

.test-ticket-form .test-ticket-field-title b {
  color: var(--sr-danger);
}

.test-ticket-form input,
.test-ticket-form select,
.test-ticket-form textarea {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: var(--sr-surface);
  color: var(--sr-text);
  padding: 9px 12px;
  font: inherit;
  font-weight: 600;
}

.test-ticket-form textarea {
  min-height: 72px;
  resize: vertical;
}

.test-ticket-form label > small {
  justify-self: end;
  color: var(--sr-text-muted);
  font-weight: 600;
}

.test-ticket-form-row {
  display: grid;
  gap: 12px;
}

.test-ticket-form-row.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.test-ticket-form-row.three { grid-template-columns: 220px minmax(0, 1fr) 220px; }

.test-ticket-upload-row {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 36px;
}

.test-ticket-upload-row button {
  min-height: 34px;
  padding-inline: 12px;
}

.test-ticket-upload-row span {
  color: var(--sr-text-muted);
  font-size: 12px;
}

.test-ticket-toggle-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding-top: 4px;
}

.test-ticket-toggle-row label {
  grid-template-columns: 36px minmax(0, 1fr);
  column-gap: 8px;
  align-items: center;
  color: var(--sr-text);
}

.test-ticket-toggle-row input {
  width: 38px;
  min-height: 20px;
  height: 20px;
  appearance: none;
  position: relative;
  border: 0;
  border-radius: 999px;
  background: #dbe7ee;
  padding: 0;
  transition: background .18s ease;
}

.test-ticket-toggle-row input::before {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  top: 2px;
  left: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .2);
  transition: transform .18s ease;
}

.test-ticket-toggle-row input:checked {
  background: var(--sr-primary);
}

.test-ticket-toggle-row input:checked::before {
  transform: translateX(18px);
}

.test-ticket-toggle-row label span,
.test-ticket-toggle-row label small {
  grid-column: 2;
}

.test-ticket-toggle-row label span {
  color: var(--sr-text);
}

.test-ticket-toggle-row label small {
  color: var(--sr-text-muted);
  font-weight: 500;
}

.test-ticket-preview {
  padding: 18px;
}

.test-ticket-preview h2 {
  margin: 0 0 14px;
  font-size: 18px;
}

.test-ticket-preview-step {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  padding: 12px;
  margin-bottom: 12px;
}

.test-ticket-preview-step > span {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.test-ticket-preview-step strong,
.test-ticket-preview-step b,
.test-ticket-preview-step small {
  display: block;
}

.test-ticket-preview-step strong {
  color: var(--sr-text);
  font-size: 13px;
}

.test-ticket-preview-step b {
  margin-top: 2px;
  color: var(--sr-text);
  font-size: 12px;
}

.test-ticket-preview-step small {
  margin-top: 2px;
  color: var(--sr-text-muted);
}

.test-ticket-preview-note {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  border: 1px solid #bfd7f2;
  border-radius: 8px;
  background: #eff7ff;
  color: var(--sr-text-secondary);
  padding: 12px;
  font-size: 12px;
}

.test-ticket-preview-note .icon-svg {
  color: #2563eb;
  flex: 0 0 auto;
}

.test-ticket-results {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.7fr);
  gap: 18px;
  padding: 12px 16px;
}

.test-ticket-results-main {
  min-width: 0;
}

.test-ticket-result-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}

.test-ticket-result-tabs button {
  min-height: 34px;
  padding-inline: 14px;
  font-size: 13px;
}

.test-ticket-result-tabs button.active {
  border-color: var(--sr-primary);
  background: color-mix(in srgb, var(--sr-primary) 10%, white);
  color: var(--sr-primary);
}

.test-ticket-empty-result {
  min-height: 132px;
  display: flex;
  align-items: center;
  gap: 18px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  padding: 22px;
}

.test-ticket-empty-result > span {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.test-ticket-empty-result strong {
  display: block;
  font-size: 16px;
}

.test-ticket-empty-result p {
  margin: 8px 0 0;
  color: var(--sr-text-secondary);
}

.test-ticket-empty-result small {
  display: block;
  margin-top: 8px;
  color: var(--sr-text-muted);
}

.test-ticket-json-card {
  min-width: 0;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  overflow: hidden;
  background: var(--sr-surface);
}

.test-ticket-json-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--sr-border);
}

.test-ticket-json-head button {
  min-height: 30px;
  padding-inline: 10px;
  font-size: 12px;
}

.test-ticket-json-card pre {
  margin: 0;
  min-height: 220px;
  overflow: auto;
  padding: 14px 18px;
  color: #0f766e;
  background: #fbfdff;
  font-size: 12px;
  line-height: 1.65;
}

@media (max-width: 1380px) {
  .test-ticket-mode-grid,
  .test-ticket-toggle-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .test-ticket-builder-grid,
  .test-ticket-results {
    grid-template-columns: minmax(0, 1fr);
  }
}






/* Diagnostics */
.workspace.diagnostics-workspace {
  width: min(100%, var(--sr-content-max));
}

.diagnostics-page {
  display: grid;
  gap: 18px;
}

.diagnostic-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}

.diagnostic-metric,
.diagnostic-card {
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.diagnostic-metric {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 108px;
  padding: 20px;
}

.diagnostic-metric > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  color: var(--sr-accent);
  background: rgba(0, 137, 123, 0.08);
}

.diagnostic-metric.tone-amber > span {
  color: #f59e0b;
  background: #fff4df;
}

.diagnostic-metric.tone-blue > span {
  color: #2563eb;
  background: #eef5ff;
}

.diagnostic-metric.tone-neutral > span {
  color: var(--sr-text-primary);
  background: var(--sr-surface-muted);
}

.diagnostic-metric .icon-svg {
  width: 24px;
  height: 24px;
  stroke-width: 2.2;
}

.diagnostic-metric small,
.diagnostic-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
  font-weight: 650;
}

.diagnostic-metric strong {
  display: block;
  margin-top: 4px;
  font-size: 27px;
  line-height: 1;
  color: var(--sr-text-primary);
}

.diagnostic-overview {
  display: grid;
  grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr));
  align-items: center;
  min-height: 64px;
  padding: 0 22px;
}

.diagnostic-overview strong {
  color: var(--sr-text-primary);
}

.diagnostic-overview-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 34px;
  border-left: 1px solid var(--sr-border);
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.diagnostic-overview-item .icon-svg {
  width: 20px;
  height: 20px;
}

.diagnostic-overview-item.healthy .icon-svg,
.diagnostic-status.healthy {
  color: var(--sr-accent);
}

.diagnostic-overview-item.degraded .icon-svg,
.diagnostic-status.degraded {
  color: #f59e0b;
}

.diagnostic-overview-item.error .icon-svg,
.diagnostic-status.error {
  color: #ef4444;
}

.diagnostic-overview-item.info .icon-svg,
.diagnostic-status.info {
  color: #2563eb;
}

.diagnostics-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 16px;
  align-items: start;
}

.diagnostics-main {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.diagnostic-card {
  padding: 18px;
}

.diagnostic-card h2,
.diagnostic-card h3 {
  margin: 0;
  color: var(--sr-text-primary);
}

.diagnostic-card h2 {
  font-size: 18px;
}

.diagnostic-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.diagnostic-table-shell {
  overflow: hidden;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
}

.diagnostic-check-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.diagnostic-check-table th,
.diagnostic-check-table td {
  padding: 13px 16px;
  border-bottom: 1px solid var(--sr-border);
  text-align: left;
  vertical-align: middle;
}

.diagnostic-check-table th {
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.diagnostic-check-table tr:last-child td {
  border-bottom: 0;
}

.diagnostic-check-table tbody tr {
  cursor: pointer;
}

.diagnostic-check-table tbody tr:hover,
.diagnostic-check-table tr.selected-row {
  background: rgba(0, 137, 123, 0.07);
}

.diagnostic-check-table tr.selected-row {
  box-shadow: inset 2px 0 0 var(--sr-accent);
}

.diagnostic-check-table tr.diagnostic-row-degraded.selected-row {
  background: #fff8ea;
  box-shadow: inset 2px 0 0 #f59e0b;
}

.diagnostic-check-table tr.diagnostic-row-error.selected-row {
  background: #fff1f2;
  box-shadow: inset 2px 0 0 #ef4444;
}

.diagnostic-check-table td:first-child {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  column-gap: 12px;
  align-items: center;
}

.diagnostic-check-table td:first-child strong {
  grid-column: 2;
}

.diagnostic-check-table td:first-child small {
  grid-column: 2;
  color: var(--sr-text-secondary);
}

.diagnostic-component-icon {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 7px;
  color: var(--sr-text-secondary);
  background: var(--sr-surface-muted);
}

.diagnostic-component-icon .icon-svg {
  width: 18px;
  height: 18px;
}

.diagnostic-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 10px;
  border-radius: 999px;
  border: 1px solid currentColor;
  background: color-mix(in srgb, currentColor 10%, transparent);
  font-weight: 800;
  white-space: nowrap;
}

.diagnostic-check-table td:nth-child(3) small {
  display: block;
  color: var(--sr-text-secondary);
}

.diagnostic-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.8fr);
  gap: 16px;
}

.diagnostic-tabs {
  display: flex;
  gap: 24px;
  margin: -2px 0 14px;
  border-bottom: 1px solid var(--sr-border);
}

.diagnostic-tabs button {
  min-height: 36px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.diagnostic-tabs button.active {
  color: var(--sr-accent);
  box-shadow: inset 0 -2px 0 var(--sr-accent);
}

.diagnostic-events-table {
  width: 100%;
  border-collapse: collapse;
}

.diagnostic-events-table th,
.diagnostic-events-table td {
  padding: 10px 0;
  border-bottom: 1px solid var(--sr-border);
  text-align: left;
}

.diagnostic-event-level {
  color: #f59e0b;
  font-weight: 800;
}

.diagnostic-backup-card dl {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}

.diagnostic-backup-card dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.diagnostic-backup-card dt {
  color: var(--sr-text-secondary);
  font-weight: 650;
}

.diagnostic-backup-card dd {
  margin: 0;
  font-weight: 800;
}

.diagnostic-side-panel {
  position: sticky;
  top: 86px;
  display: grid;
  gap: 16px;
}

.diagnostic-side-head,
.diagnostic-side-title,
.diagnostic-side-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.diagnostic-side-head {
  justify-content: space-between;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--sr-border);
}

.diagnostic-side-head button {
  width: 34px;
  min-height: 34px;
  padding: 0;
}

.diagnostic-side-title {
  align-items: flex-start;
}

.diagnostic-side-title > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.diagnostic-side-title > span .icon-svg {
  width: 24px;
  height: 24px;
}

.diagnostic-side-title > div {
  flex: 1;
}

.diagnostic-side-title p {
  margin: 3px 0 0;
  color: var(--sr-text-secondary);
}

.diagnostic-detail-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.diagnostic-detail-list > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--sr-border);
}

.diagnostic-detail-list dt {
  color: var(--sr-text-secondary);
  font-weight: 650;
}

.diagnostic-detail-list dd {
  margin: 0;
  font-weight: 800;
  text-align: right;
}

.diagnostic-log {
  min-height: 172px;
  max-height: 260px;
  overflow: auto;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  padding: 12px;
  white-space: pre-wrap;
}

.diagnostic-side-actions {
  align-items: stretch;
}

.diagnostic-side-actions button {
  flex: 1;
}

@media (max-width: 1420px) {
  .diagnostic-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .diagnostics-layout,
  .diagnostic-bottom-grid {
    grid-template-columns: 1fr;
  }

  .diagnostic-side-panel {
    position: static;
  }
}


/* Diagnostics controls polish */
.diagnostic-notice {
  min-height: 0;
}

.diagnostic-notice span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 8px;
  background: rgba(0, 137, 123, 0.08);
  color: var(--sr-accent);
  font-weight: 750;
}

.diagnostics-layout.without-details {
  grid-template-columns: minmax(0, 1fr);
}

.diagnostic-check-table th:last-child,
.diagnostic-check-table td:last-child {
  padding-right: 18px;
}

.diagnostic-tabs button {
  cursor: pointer;
}

.diagnostic-bottom-log {
  min-height: 220px;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
  white-space: pre-wrap;
}

.diagnostic-tab-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.diagnostic-tab-summary > div {
  min-height: 76px;
  padding: 14px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface-muted);
}

.diagnostic-tab-summary span {
  display: block;
  color: var(--sr-text-secondary);
  font-weight: 650;
}

.diagnostic-tab-summary strong {
  display: block;
  margin-top: 6px;
  color: var(--sr-text-primary);
}

.diagnostic-status {
  min-height: 22px;
  padding: 2px 8px;
  font-size: 12px;
  line-height: 1.2;
}

.diagnostic-side-title {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: flex-start;
}

.diagnostic-side-title h3 {
  overflow-wrap: anywhere;
}

.diagnostic-side-title .diagnostic-status {
  max-width: 104px;
  justify-content: center;
}

/* Diagnostics status polish */
.diagnostic-status {
  min-width: max-content;
  min-height: 24px;
  padding: 3px 10px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.15;
  font-weight: 800;
  white-space: nowrap;
  box-shadow: none;
}

.diagnostic-status.healthy {
  color: var(--sr-accent);
  border-color: rgba(0, 137, 123, 0.24);
  background: rgba(0, 137, 123, 0.08);
}

.diagnostic-status.degraded {
  color: #b76a00;
  border-color: rgba(245, 158, 11, 0.28);
  background: rgba(245, 158, 11, 0.10);
}

.diagnostic-status.error {
  color: #dc2626;
  border-color: rgba(239, 68, 68, 0.26);
  background: rgba(239, 68, 68, 0.10);
}

.diagnostic-status.info {
  color: #2563eb;
  border-color: rgba(37, 99, 235, 0.22);
  background: rgba(37, 99, 235, 0.08);
}

.diagnostic-side-title {
  grid-template-columns: 48px minmax(0, 1fr);
}

.diagnostic-side-title .diagnostic-status {
  grid-column: 2;
  justify-self: start;
  display: inline-flex;
  width: auto;
  height: auto;
  max-width: none;
  margin-top: 8px;
  place-items: normal;
}

/* Prompt versions screen */
.workspace.prompts-workspace {
  width: min(100%, var(--sr-content-max));
}

.workspace.prompts-workspace.with-inspector {
  grid-template-columns: minmax(0, 1fr) 320px;
  align-items: start;
}

.prompts-workspace .main {
  min-width: 0;
}

.prompt-versions-page {
  display: grid;
  gap: 16px;
}

.prompt-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.prompt-page-head h1 {
  margin: 0 0 6px;
  font-size: 26px;
}

.prompt-head-actions {
  display: flex;
  gap: 10px;
}

.prompt-head-actions button,
.prompt-detail-actions button,
.prompt-table-footer button,
.prompt-table-footer select,
.prompt-filter-card select,
.prompt-filter-card input,
.prompt-create-card input,
.prompt-create-card select,
.prompt-create-card textarea,
.prompt-create-card button {
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  color: var(--text);
}

.prompt-head-actions .primary,
.prompt-detail-actions .primary,
.prompt-create-card .primary {
  background: var(--accent);
  border-color: var(--accent);
  color: white;
}

.prompt-head-actions button,
.prompt-detail-actions button,
.prompt-create-card button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  font-weight: 800;
}

.prompt-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.prompt-metric-card {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 86px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.prompt-metric-card .metric-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--accent);
  background: var(--accent-soft);
}

.prompt-metric-card .metric-icon.blue {
  color: #3178ff;
  background: #eaf2ff;
}

.prompt-metric-card .metric-icon.orange {
  color: #f59e0b;
  background: #fff4df;
}

.prompt-metric-card .metric-icon.red {
  color: #ef4444;
  background: #ffe8ea;
}

.prompt-metric-card strong {
  display: block;
  margin: 3px 0 1px;
  font-size: 26px;
  line-height: 1;
}

.prompt-metric-card span {
  color: var(--muted);
  font-weight: 800;
}

.prompt-metric-card small {
  color: var(--accent);
  font-weight: 800;
}

.prompt-board {
  display: grid;
  gap: 12px;
}

.prompt-filter-card,
.prompt-table-card,
.prompt-detail-card,
.prompt-create-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.prompt-filter-card {
  display: grid;
  grid-template-columns: 170px 170px 170px 170px minmax(260px, 1fr);
  gap: 12px;
  padding: 14px 16px;
}

.prompt-filter-card label {
  display: grid;
  gap: 6px;
}

.prompt-filter-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-filter-card select,
.prompt-filter-card input {
  width: 100%;
  padding: 0 12px;
  font-weight: 800;
}

.prompt-search {
  position: relative;
}

.prompt-search svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  width: 18px;
  height: 18px;
  color: var(--muted);
}

.prompt-search input {
  padding-left: 40px;
}

.prompt-version-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.prompt-version-table th,
.prompt-version-table td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.prompt-version-table th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-version-table td:first-child,
.prompt-version-table th:first-child {
  width: 44px;
  padding-left: 16px;
  padding-right: 8px;
}

.prompt-version-table th:nth-child(2),
.prompt-version-table td:nth-child(2) {
  width: 30%;
}

.prompt-version-table th:nth-child(3),
.prompt-version-table td:nth-child(3) {
  width: 15%;
}

.prompt-version-table th:nth-child(4),
.prompt-version-table td:nth-child(4) {
  width: 12%;
}

.prompt-version-table th:nth-child(5),
.prompt-version-table td:nth-child(5) {
  width: 13%;
}

.prompt-version-table th:nth-child(6),
.prompt-version-table td:nth-child(6) {
  width: 16%;
}

.prompt-version-table th:last-child,
.prompt-version-table td:last-child {
  width: 56px;
  padding-right: 20px;
  text-align: right;
}

.prompt-version-table tr {
  cursor: pointer;
}

.prompt-version-table tr.selected-row td {
  background: var(--accent-ghost);
  border-top: 1px solid var(--accent);
  border-bottom: 1px solid var(--accent);
}

.prompt-version-table tr.selected-row td:first-child {
  border-left: 1px solid var(--accent);
}

.prompt-version-table tr.selected-row td:last-child {
  border-right: 1px solid var(--accent);
}

.prompt-row-title {
  font-weight: 900;
}

.prompt-row-subtitle {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.prompt-check {
  width: 16px;
  height: 16px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  display: grid;
  place-items: center;
  color: transparent;
}

.selected-row .prompt-check {
  color: white;
  background: var(--accent);
  border-color: var(--accent);
}

.prompt-row-menu {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  color: var(--muted);
}

.prompt-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.prompt-status.published {
  color: var(--accent);
  border-color: rgba(0, 128, 118, 0.28);
  background: var(--accent-soft);
}

.prompt-status.draft {
  color: #3178ff;
  border-color: rgba(49, 120, 255, 0.28);
  background: #eaf2ff;
}

.prompt-status.review {
  color: #b45309;
  border-color: rgba(245, 158, 11, 0.3);
  background: #fff4df;
}

.prompt-table-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px 14px;
  color: var(--muted);
}

.prompt-table-footer div {
  display: flex;
  gap: 8px;
}

.prompt-table-footer button {
  min-width: 38px;
  padding: 0 12px;
}

.prompt-table-footer button.active {
  background: var(--accent);
  border-color: var(--accent);
  color: white;
}

.prompt-table-footer label {
  display: flex;
  align-items: center;
  gap: 8px;
}

.prompt-detail-card {
  overflow: hidden;
}

.prompt-detail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
}

.prompt-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.prompt-tabs button {
  min-height: 34px;
  padding: 0 14px;
  border: 0;
  border-radius: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--muted);
  font-weight: 900;
}

.prompt-tabs button.active {
  color: var(--accent);
  border-bottom-color: var(--accent);
}

.prompt-detail-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.prompt-detail-body {
  padding: 16px;
}

.prompt-diff-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
}

.prompt-code-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  background: #fbfdff;
}

.prompt-code-card header {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
}

.prompt-code-card pre {
  margin: 0;
  min-height: 190px;
  padding: 12px 14px;
  font: 13px/1.55 Consolas, "Roboto Mono", monospace;
  white-space: pre-wrap;
}

.prompt-code-card.previous pre {
  background: linear-gradient(#fff, #fff), linear-gradient(90deg, rgba(239, 68, 68, 0.12), transparent 65%);
  background-blend-mode: normal;
}

.prompt-code-card.current pre {
  background: linear-gradient(#fff, #fff), linear-gradient(90deg, rgba(0, 128, 118, 0.12), transparent 65%);
  background-blend-mode: normal;
}

.prompt-diff-rail {
  display: grid;
  place-items: center;
  color: var(--accent);
}

.prompt-history-list,
.prompt-usage-list {
  display: grid;
  gap: 10px;
}

.prompt-history-list div,
.prompt-usage-list div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 120px;
  gap: 16px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.prompt-detail-note {
  margin: 0 16px 16px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: #f8fbfc;
  font-size: 12px;
}

.prompt-create-card {
  padding: 16px;
}

.prompt-create-card h2 {
  margin: 0 0 12px;
}

.prompt-create-form {
  display: grid;
  gap: 12px;
}

.prompt-create-form .grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.prompt-create-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-weight: 900;
}

.prompt-create-form input,
.prompt-create-form select,
.prompt-create-form textarea {
  width: 100%;
  padding: 10px 12px;
  font-weight: 700;
}

.prompt-inspector {
  display: grid;
  gap: 18px;
}

.prompt-inspector-hero {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.prompt-inspector-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--text);
  background: #eef5f6;
}

.prompt-inspector-hero h2 {
  margin: 0 0 4px;
  font-size: 18px;
}

.prompt-inspector-meta,
.prompt-inspector-timeline,
.prompt-inspector-tags {
  display: grid;
  gap: 10px;
}

.prompt-inspector-meta div {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.prompt-inspector-meta span,
.prompt-inspector-timeline span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-inspector-meta strong,
.prompt-inspector-timeline strong {
  font-weight: 900;
}

.prompt-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.prompt-tag-list span {
  min-height: 24px;
  padding: 4px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #f5f9fa;
  font-size: 12px;
  font-weight: 800;
}

.prompt-inspector .vertical button {
  width: 100%;
}

@media (max-width: 1400px) {
  .workspace.prompts-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }
  .prompt-filter-card,
  .prompt-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Prompt versions class alignment */
.prompt-metric {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 86px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.prompt-metric > span {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--accent);
  background: var(--accent-soft);
}

.prompt-metric.tone-blue > span {
  color: #3178ff;
  background: #eaf2ff;
}

.prompt-metric.tone-amber > span,
.prompt-metric.tone-neutral > span {
  color: #f59e0b;
  background: #fff4df;
}

.prompt-metric strong {
  display: block;
  margin: 3px 0 2px;
  font-size: 26px;
  line-height: 1;
}

.prompt-metric small {
  color: var(--muted);
  font-weight: 900;
}

.prompt-metric em {
  color: var(--accent);
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
}

.prompt-filter-search {
  position: relative;
}

.prompt-filter-search svg {
  position: absolute;
  left: 12px;
  bottom: 10px;
  width: 18px;
  height: 18px;
  color: var(--muted);
}

.prompt-filter-search input {
  padding-left: 40px;
}

.prompt-version-table td strong {
  display: block;
  font-weight: 900;
}

.prompt-version-table td small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.row-check {
  width: 16px;
  height: 16px;
  border: 1px solid var(--line-strong);
  border-radius: 4px;
  display: grid;
  place-items: center;
  color: transparent;
}

.selected-row .row-check {
  color: white;
  background: var(--accent);
  border-color: var(--accent);
}

.selected-row .row-check svg {
  width: 12px;
  height: 12px;
}

.row-menu {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  color: var(--muted);
}

.prompt-inspector-head {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.prompt-inspector-head > span {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: var(--text);
  background: #eef5f6;
}

.prompt-inspector-head h2 {
  margin: 0 0 4px;
  font-size: 18px;
}

.prompt-inspector-list {
  display: grid;
  gap: 10px;
  margin: 0;
}

.prompt-inspector-list div {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.prompt-inspector-list dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-inspector-list dd {
  margin: 0;
  font-weight: 900;
}

.prompt-inspector-person {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.prompt-inspector-person span {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: var(--accent);
  background: var(--accent-soft);
  font-size: 12px;
  font-weight: 900;
  grid-row: span 2;
}

.prompt-inspector-person strong {
  font-weight: 900;
}

.prompt-inspector-person em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}

.prompt-create-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.prompt-create-head h2 {
  margin: 0;
}



/* Prompt versions final polish */
.prompt-version-table th:last-child,
.prompt-version-table td:last-child {
  padding-right: 30px;
}

.prompt-version-table .row-menu {
  margin-right: 8px;
}


/* Prompt versions status tones */
.prompt-status.tone-done,
.prompt-status.tone-mint {
  color: var(--accent);
  border-color: rgba(0, 128, 118, 0.28);
  background: var(--accent-soft);
}

.prompt-status.tone-info,
.prompt-status.tone-blue {
  color: #3178ff;
  border-color: rgba(49, 120, 255, 0.28);
  background: #eaf2ff;
}

.prompt-status.tone-warning,
.prompt-status.tone-amber {
  color: #b45309;
  border-color: rgba(245, 158, 11, 0.3);
  background: #fff4df;
}

.prompt-status.tone-error,
.prompt-status.tone-red {
  color: #ef4444;
  border-color: rgba(239, 68, 68, 0.3);
  background: #ffe8ea;
}

.prompt-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.prompt-tags span {
  min-height: 24px;
  padding: 4px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #f5f9fa;
  font-size: 12px;
  font-weight: 800;
}


/* Prompt versions edge fixes */
.prompt-status.tone-done,
.prompt-status.tone-mint {
  background-color: rgba(0, 128, 118, 0.1);
}

.prompt-status.tone-info,
.prompt-status.tone-blue {
  background-color: rgba(49, 120, 255, 0.1);
}

.prompt-status.tone-warning,
.prompt-status.tone-amber {
  background-color: rgba(245, 158, 11, 0.12);
}

.prompt-status.tone-error,
.prompt-status.tone-red {
  background-color: rgba(239, 68, 68, 0.1);
}

.prompt-version-table .row-menu {
  transform: translateX(-16px);
}

/* Prompt versions inspector clearance */
@media (max-width: 1400px) {
  .workspace.prompts-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr) 320px;
  }
}

@media (max-width: 1366px) {
  .workspace.prompts-workspace.with-inspector {
    padding-right: var(--sr-space-4);
  }

  .prompts-workspace .inspector {
    position: sticky;
    inset: auto;
    top: calc(var(--sr-topbar-height) + var(--sr-space-5));
    width: 320px;
    height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-10));
    border-radius: var(--sr-radius-sm);
  }
}

@media (max-width: 1100px) {
  .workspace.prompts-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
  }

  .prompts-workspace .inspector {
    position: static;
    width: auto;
    height: auto;
  }
}

/* Prompt versions user-requested polish */
.prompt-metric {
  grid-template-columns: 52px minmax(0, 1fr);
  min-height: 92px;
}

.prompt-metric > span,
.prompt-metric-card .metric-icon {
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
}

.prompt-metric > span .icon-svg,
.prompt-metric-card .metric-icon .icon-svg {
  width: 28px;
  height: 28px;
  stroke-width: 2.1;
}

.prompt-metric.tone-neutral > span,
.prompt-metric.tone-mint > span {
  color: var(--accent);
}

.prompt-metric.tone-blue > span {
  color: #3178ff;
}

.prompt-metric.tone-amber > span {
  color: #f59e0b;
}

.prompt-create-form textarea,
.prompt-create-form .prompt-content-textarea {
  min-height: 190px;
  max-height: none;
  line-height: 1.55;
  resize: vertical;
}

.prompt-tags span,
.prompt-tag-list span {
  min-height: 22px;
  border-radius: 4px;
  background: #f3f8fa;
  border-color: #d7e4ea;
  padding: 3px 8px;
}

.prompt-table-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px 18px;
}

.prompt-table-footer .prompt-pagination {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.prompt-pagination-more {
  color: var(--muted);
  font-weight: 800;
}

.prompt-page-size {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  line-height: 1;
}

.prompt-page-size select {
  width: 82px;
}

.prompt-detail-body {
  padding: 16px 18px;
}

.prompt-version-list {
  display: grid;
  gap: 10px;
}

.prompt-version-list > div {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fbfdff;
}

.prompt-version-list span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-version-list em {
  color: var(--muted);
  font-style: normal;
}

.prompt-diff-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.prompt-diff-grid > section {
  min-width: 0;
  display: grid;
  gap: 8px;
  align-content: start;
}

.prompt-diff-grid h3 {
  margin: 0;
}

.prompt-diff-grid p {
  margin: 0;
  color: var(--muted);
}

.prompt-code-preview {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fbfdff;
  font: 13px/1.5 Consolas, "Roboto Mono", monospace;
}

.prompt-code-preview div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  min-height: 24px;
  border-bottom: 1px solid rgba(203, 220, 228, 0.72);
}

.prompt-code-preview div:last-child {
  border-bottom: 0;
}

.prompt-code-preview span {
  padding: 4px 8px;
  color: var(--muted);
  background: #eef5f7;
  text-align: right;
  user-select: none;
}

.prompt-code-preview code {
  min-width: 0;
  padding: 4px 10px;
  white-space: pre-wrap;
  word-break: break-word;
}

.prompt-code-preview.previous code {
  background: rgba(239, 68, 68, 0.06);
}

.prompt-code-preview.current code {
  background: rgba(0, 128, 118, 0.06);
}

.prompt-history-list div,
.prompt-usage-list div {
  border-radius: 6px;
  background: #fbfdff;
}

.prompt-usage-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.prompt-usage-grid > div {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fbfdff;
}

.prompt-usage-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.prompt-usage-grid strong {
  font-size: 18px;
}

@media (max-width: 1250px) {
  .prompt-table-footer {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .prompt-diff-grid,
  .prompt-usage-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* AI runs */
.workspace.ai-runs-workspace.with-inspector {
  grid-template-columns: minmax(1180px, 1fr) 320px;
  align-items: start;
  gap: 16px;
  min-width: calc(1180px + 320px + 16px);
}

.ai-runs-workspace.with-inspector > .inspector {
  position: sticky;
  inset: auto;
  top: 74px;
  width: auto;
  margin-top: 4px;
  height: calc(100vh - 92px - 4px);
}

.ai-runs-workspace .main {
  min-width: 0;
}

.ai-runs-page {
  display: grid;
  gap: 14px;
  width: 100%;
}

.ai-runs-page .page-header {
  margin-bottom: 0;
}

.ai-runs-page .page-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.ai-runs-page .page-actions button,
.ai-runs-filters select,
.ai-runs-table-footer button,
.ai-runs-table-footer select,
.ai-runs-detail-card button,
.ai-runs-inspector button {
  min-height: 36px;
  border-radius: var(--sr-radius-xs);
}

.ai-runs-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.ai-runs-metric {
  min-height: 84px;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.ai-runs-metric > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  color: var(--sr-text-secondary);
}

.ai-runs-metric.tone-info > span { color: var(--sr-info); }
.ai-runs-metric.tone-done > span { color: var(--sr-success); }
.ai-runs-metric.tone-risk > span { color: var(--sr-danger); }

.ai-runs-metric .icon-svg {
  width: 22px;
  height: 22px;
}

.ai-runs-metric small,
.ai-runs-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.ai-runs-metric strong {
  display: block;
  margin: 2px 0 3px;
  color: var(--sr-text);
  font-size: 24px;
  line-height: 1;
}

.ai-runs-table-card,
.ai-runs-detail-card {
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.ai-runs-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.ai-runs-filters label {
  display: grid;
  gap: 5px;
  min-height: 62px;
  margin: 0;
  padding: 10px 14px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.ai-runs-filters span {
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
}

.ai-runs-filters select {
  min-height: 24px;
  padding: 0 22px 0 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  font-size: 13px;
  font-weight: 850;
}

.ai-runs-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
}

.ai-runs-table th,
.ai-runs-table td {
  padding: 11px 12px;
  border-bottom: 1px solid var(--sr-border);
  vertical-align: middle;
  line-height: 1.35;
}

.ai-runs-table th {
  height: 44px;
  color: var(--sr-text-secondary);
  font-weight: 800;
  text-align: left;
}

.ai-runs-table th:nth-child(1),
.ai-runs-table td:nth-child(1) { width: 42px; text-align: center; }
.ai-runs-table th:nth-child(2),
.ai-runs-table td:nth-child(2) { width: 130px; }
.ai-runs-table th:nth-child(3),
.ai-runs-table td:nth-child(3) { width: 13%; }
.ai-runs-table th:nth-child(4),
.ai-runs-table td:nth-child(4) { width: 21%; }
.ai-runs-table th:nth-child(5),
.ai-runs-table td:nth-child(5) { width: 16%; }
.ai-runs-table th:nth-child(6),
.ai-runs-table td:nth-child(6) { width: 126px; }
.ai-runs-table th:nth-child(7),
.ai-runs-table td:nth-child(7) { width: 108px; }
.ai-runs-table th:nth-child(8),
.ai-runs-table td:nth-child(8) { width: 132px; }
.ai-runs-table th:nth-child(9),
.ai-runs-table td:nth-child(9) { width: 124px; }

.ai-runs-row {
  cursor: pointer;
}

.ai-runs-row:hover {
  background: var(--sr-surface-muted);
}

.ai-runs-row.selected-row {
  background: var(--sr-primary-soft);
  outline-color: var(--sr-primary);
}

.ai-runs-row td strong,
.ai-runs-row td small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ai-runs-row td strong {
  color: var(--sr-text);
  font-weight: 850;
}

.ai-runs-row td small {
  margin-top: 2px;
  color: var(--sr-text-secondary);
}

.ai-runs-row-check {
  display: inline-grid;
  place-items: center;
  width: 16px;
  height: 16px;
  border: 1px solid var(--sr-border-strong);
  border-radius: 3px;
}

.ai-runs-row-check.checked {
  border-color: var(--sr-primary);
  background: var(--sr-primary);
  color: #fff;
}

.ai-runs-row-check .icon-svg {
  width: 12px;
  height: 12px;
}

.ai-runs-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.ai-runs-status.tone-done {
  border-color: color-mix(in srgb, var(--sr-success) 34%, var(--sr-border));
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.ai-runs-status.tone-info {
  border-color: color-mix(in srgb, var(--sr-info) 34%, var(--sr-border));
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.ai-runs-status.tone-warn {
  border-color: color-mix(in srgb, var(--sr-warning) 40%, var(--sr-border));
  background: var(--sr-warning-soft);
  color: #a76400;
}

.ai-runs-status.tone-risk {
  border-color: color-mix(in srgb, var(--sr-danger) 36%, var(--sr-border));
  background: var(--sr-danger-soft);
  color: var(--sr-danger);
}

.ai-runs-status.tone-neutral {
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.ai-runs-table-footer {
  min-height: 56px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  color: var(--sr-text-secondary);
}

.ai-runs-table-footer .pagination {
  justify-content: center;
}

.ai-runs-table-footer label {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.ai-runs-detail-card {
  min-width: 0;
}

.ai-runs-tabs {
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 0 16px;
  border-bottom: 1px solid var(--sr-border);
}

.ai-runs-tabs button {
  min-height: 48px;
  padding: 0 2px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--sr-text-secondary);
  font-weight: 850;
}

.ai-runs-tabs button.active {
  border-bottom-color: var(--sr-primary);
  color: var(--sr-primary-active);
}

.ai-runs-detail-grid {
  display: grid;
  grid-template-columns: minmax(300px, 0.9fr) minmax(0, 1.1fr);
  gap: 0;
  min-height: 250px;
}

.ai-runs-log-list {
  display: grid;
  align-content: start;
  gap: 0;
  padding: 16px 18px;
  border-right: 1px solid var(--sr-border);
}

.ai-runs-log-list div {
  display: grid;
  grid-template-columns: 88px 58px minmax(0, 1fr);
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid var(--sr-border);
  font-size: 12px;
}

.ai-runs-log-list .notice {
  display: block;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  font-size: 13px;
  line-height: 1.45;
}

.ai-runs-log-list time,
.ai-runs-log-list strong {
  color: var(--sr-text-secondary);
}

.ai-runs-log-list button {
  justify-self: start;
  margin-top: 12px;
  color: var(--sr-primary-active);
}

.ai-runs-json-card {
  min-width: 0;
  padding: 14px 16px;
}

.ai-runs-json-card header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.ai-runs-json-card pre {
  min-height: 196px;
  max-height: 320px;
  overflow: auto;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
  color: var(--sr-primary-active);
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.ai-runs-inspector {
  display: grid;
  gap: 16px;
}

.ai-runs-inspector-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--sr-border);
}

.ai-runs-inspector-head span,
.ai-runs-inspector section small {
  display: block;
  color: var(--sr-text-secondary);
}

.ai-runs-inspector-head strong {
  display: block;
  margin: 6px 0 4px;
  color: var(--sr-text);
  font-size: 15px;
}

.ai-runs-inspector section {
  display: grid;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--sr-border);
}

.ai-runs-inspector h3 {
  margin: 0;
  color: var(--sr-text);
  font-size: 14px;
}

.ai-runs-inspector dl {
  display: grid;
  gap: 9px;
  margin: 0;
}

.ai-runs-inspector dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.ai-runs-inspector dt {
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.ai-runs-inspector dd {
  margin: 0;
  color: var(--sr-text);
  font-weight: 850;
  text-align: right;
}

.ai-runs-meter {
  display: grid;
  grid-template-columns: 1fr minmax(90px, 1.2fr) auto;
  align-items: center;
  gap: 8px;
}

.ai-runs-meter span {
  color: var(--sr-text-secondary);
  font-weight: 750;
}

.ai-runs-meter i {
  display: block;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--sr-surface-muted);
}

.ai-runs-meter b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.ai-runs-inspector-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.ai-runs-inspector-actions .danger {
  border-color: color-mix(in srgb, var(--sr-danger) 40%, var(--sr-border));
  color: var(--sr-danger);
}

@media (max-width: 760px) {
  .ai-runs-metrics,
  .ai-runs-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workspace.ai-runs-workspace.with-inspector {
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
  }

  .ai-runs-workspace.with-inspector > .inspector {
    margin-top: 0;
    height: auto;
  }
}
/* AI settings */
.ai-settings-page {
  width: min(100%, var(--sr-content-max));
  display: grid;
  gap: 16px;
}

.ai-settings-page .page-header {
  margin-bottom: 0;
}

.ai-settings-page .page-actions {
  display: flex;
  gap: 10px;
}

.ai-settings-page button,
.ai-settings-page input,
.ai-settings-page select {
  min-height: 36px;
  border-radius: var(--sr-radius-xs);
}

.ai-settings-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.ai-settings-metric,
.ai-settings-card,
.ai-settings-tabs,
.ai-settings-tab-note {
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.ai-settings-metric {
  min-height: 94px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
}

.ai-settings-metric > span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  color: var(--sr-text-secondary);
}

.ai-settings-metric.tone-done > span { color: var(--sr-success); }
.ai-settings-metric.tone-info > span { color: var(--sr-info); }

.ai-settings-metric .icon-svg {
  width: 24px;
  height: 24px;
}

.ai-settings-metric small,
.ai-settings-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.ai-settings-metric strong {
  display: block;
  margin: 3px 0 5px;
  color: var(--sr-text);
  font-size: 21px;
  line-height: 1.1;
}

.ai-settings-tabs {
  display: flex;
  gap: 22px;
  padding: 0 16px;
}

.ai-settings-tabs button {
  min-height: 46px;
  padding: 0 2px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--sr-text-secondary);
  font-weight: 850;
}

.ai-settings-tabs button.active {
  border-bottom-color: var(--sr-primary);
  color: var(--sr-primary-active);
}

.ai-settings-tab-note {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
}

.ai-settings-tab-note > .icon-svg {
  width: 22px;
  height: 22px;
  color: var(--sr-primary);
}

.ai-settings-tab-note strong,
.ai-settings-tab-note span {
  display: block;
}

.ai-settings-tab-note span {
  margin-top: 3px;
  color: var(--sr-text-secondary);
}

.ai-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 16px;
  align-items: start;
}

.ai-settings-main {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.ai-settings-form {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
  gap: 16px;
}

.ai-settings-card {
  padding: 16px;
  min-width: 0;
}

.ai-settings-card h2 {
  margin: 0 0 16px;
  color: var(--sr-text);
  font-size: 17px;
}

.ai-settings-provider-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

.ai-settings-provider-fields label,
.ai-settings-threshold {
  display: grid;
  gap: 6px;
  margin: 0;
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ai-settings-provider-fields small {
  color: var(--sr-text-secondary);
  font-weight: 600;
}

.ai-settings-timeouts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.ai-settings-timeouts label {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: 6px 8px;
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ai-settings-timeouts label input {
  grid-column: 1;
}

.ai-settings-timeouts label span {
  grid-column: 2;
  align-self: end;
  padding-bottom: 10px;
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ai-settings-rules {
  align-content: start;
  display: grid;
  gap: 12px;
}

.ai-settings-rules .switch {
  grid-template-columns: 42px minmax(0, 1fr);
  min-height: 32px;
}

.ai-settings-rules .switch strong,
.ai-settings-rules .switch small {
  display: block;
}

.ai-settings-rules .switch small {
  margin-top: 3px;
  color: var(--sr-text-secondary);
  font-weight: 600;
}

.ai-settings-rules .ai-settings-threshold {
  grid-template-columns: minmax(0, 1fr) 92px;
  align-items: center;
}

.ai-settings-card-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.ai-settings-card-head h2 {
  margin: 0;
}

.ai-settings-profile-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  font-size: 12px;
}

.ai-settings-profile-table th,
.ai-settings-profile-table td {
  padding: 13px 12px;
  border-bottom: 1px solid var(--sr-border);
  text-align: left;
  vertical-align: middle;
}

.ai-settings-profile-table th {
  color: var(--sr-text-secondary);
  font-weight: 850;
}

.ai-settings-profile-table th:first-child,
.ai-settings-profile-table td:first-child {
  width: 36px;
  text-align: center;
}

.ai-settings-profile-table th:nth-child(2) { width: 17%; }
.ai-settings-profile-table th:nth-child(3) { width: 17%; }
.ai-settings-profile-table th:nth-child(4) { width: 84px; }
.ai-settings-profile-table th:nth-child(5) { width: 96px; }
.ai-settings-profile-table th:nth-child(7) { width: 116px; }
.ai-settings-profile-table th:last-child,
.ai-settings-profile-table td:last-child {
  width: 46px;
  padding-right: 18px;
}

.ai-settings-profile-table tr.selected-row td {
  background: var(--sr-primary-soft);
  border-top: 1px solid var(--sr-primary);
  border-bottom: 1px solid var(--sr-primary);
}

.ai-settings-profile-table tr.selected-row td:first-child {
  border-left: 1px solid var(--sr-primary);
}

.ai-settings-profile-table tr.selected-row td:last-child {
  border-right: 1px solid var(--sr-primary);
}

.ai-settings-profile-table strong {
  color: var(--sr-text);
}

.ai-settings-radio {
  width: 15px;
  height: 15px;
  display: inline-block;
  border: 1px solid var(--sr-border-strong);
  border-radius: 50%;
}

.ai-settings-radio.active {
  border: 4px solid var(--sr-primary);
}

.ai-settings-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 2px 10px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.ai-settings-badge.tone-done {
  border-color: color-mix(in srgb, var(--sr-success) 34%, var(--sr-border));
  background: var(--sr-success-soft);
  color: var(--sr-success);
}

.ai-settings-badge.tone-info {
  border-color: color-mix(in srgb, var(--sr-info) 34%, var(--sr-border));
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.ai-settings-badge.tone-neutral {
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
}

.ai-settings-row-menu {
  width: 32px;
  height: 32px;
  padding: 0;
}

.ai-settings-profiles footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding-top: 12px;
  color: var(--sr-text-secondary);
}

.ai-settings-profiles footer label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.ai-settings-side {
  display: grid;
  gap: 16px;
}

.ai-settings-active-title {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}

.ai-settings-active-title > span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--sr-primary);
}

.ai-settings-side dl,
.ai-settings-stats dl {
  display: grid;
  gap: 0;
  margin: 0;
}

.ai-settings-side dl > div,
.ai-settings-stats dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sr-border);
}

.ai-settings-side dt {
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.ai-settings-side dd {
  margin: 0;
  color: var(--sr-text);
  font-weight: 850;
  text-align: right;
}

.ai-settings-side-actions {
  display: grid;
  gap: 8px;
}

.ai-settings-side-actions button,
.ai-settings-side .ai-settings-card > button {
  width: 100%;
  justify-content: flex-start;
}

.ai-settings-output {
  max-height: 220px;
  overflow: auto;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface-muted);
  color: var(--sr-primary-active);
  white-space: pre-wrap;
}

@media (max-width: 1500px) {
  .ai-settings-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-settings-grid,
  .ai-settings-form {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* Benchmark center */
.workspace.benchmark-workspace.without-inspector {
  grid-template-columns: minmax(0, 1fr);
}

.benchmark-center {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.benchmark-center > [data-notice]:empty {
  display: none;
}

.benchmark-center > [data-notice] span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  border-radius: 6px;
  padding: 6px 10px;
  font-weight: 700;
}

.benchmark-center > [data-notice] .warning {
  color: #9a5a00;
  background: var(--sr-warning-soft);
  border: 1px solid rgba(245, 158, 11, .42);
}

.benchmark-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.benchmark-metric {
  min-height: 110px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
}

.benchmark-metric > span {
  width: 38px;
  height: 38px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  display: grid;
  place-items: center;
  color: var(--sr-text-secondary);
  background: var(--sr-surface-muted);
}

.benchmark-metric .icon-svg {
  width: 22px;
  height: 22px;
}

.benchmark-metric small,
.benchmark-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-style: normal;
}

.benchmark-metric strong {
  display: block;
  margin: 2px 0;
  font-size: 24px;
  line-height: 1.1;
}

.benchmark-filter-card {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1fr 1.15fr;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-card);
}

.benchmark-filter-card label {
  min-width: 0;
}

.benchmark-fake-select {
  min-height: 38px;
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  background: var(--sr-surface);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px 9px;
  color: var(--sr-text);
  font-weight: 650;
}

.benchmark-clear {
  min-height: 22px;
  width: 24px;
  padding: 0;
}

.benchmark-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 14px;
  align-items: start;
}

.benchmark-results-panel,
.benchmark-summary-card,
.benchmark-detail-panel {
  border-radius: 8px;
}

.benchmark-results-panel .panel-title span {
  display: inline-flex;
  margin-left: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.benchmark-table-wrap {
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  overflow: hidden;
}

.benchmark-table th,
.benchmark-table td {
  padding: 12px 14px;
  vertical-align: middle;
}

.benchmark-table td strong,
.benchmark-table td small {
  display: block;
}

.benchmark-table td small {
  margin-top: 3px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  line-height: 1.25;
}

.benchmark-table tr.selected-row {
  background: rgba(20, 184, 166, .10);
  outline: 1px solid var(--sr-primary);
  outline-offset: -1px;
}

.benchmark-score-cell {
  min-width: 120px;
  display: grid;
  grid-template-columns: 50px minmax(54px, 1fr);
  gap: 8px;
  align-items: center;
}

.benchmark-score-cell > i {
  height: 7px;
  border-radius: 999px;
  background: var(--sr-surface-muted);
  overflow: hidden;
}

.benchmark-score-cell > i > b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--sr-primary);
}

.benchmark-table-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 2px 0;
  color: var(--sr-text-secondary);
}

.benchmark-table-footer label {
  display: flex;
  align-items: center;
  grid-template-columns: none;
  flex-direction: row;
  gap: 8px;
  white-space: nowrap;
}

.benchmark-table-footer select {
  width: 70px;
}

.benchmark-summary-card {
  display: grid;
  gap: 14px;
}

.benchmark-summary-card h3,
.benchmark-detail-panel h3 {
  margin: 0;
}

.benchmark-winner-box {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 3px 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--sr-primary);
  border-radius: 7px;
  background: var(--sr-primary-soft);
}

.benchmark-winner-box .icon-svg {
  grid-row: span 3;
  color: var(--sr-primary);
}

.benchmark-winner-box span,
.benchmark-winner-box em {
  color: var(--sr-text-secondary);
  font-style: normal;
  font-size: 12px;
}

.benchmark-winner-box strong {
  color: var(--sr-primary);
}

.benchmark-summary-card dl {
  display: grid;
  gap: 11px;
  margin: 0;
}

.benchmark-summary-card dl div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--sr-border);
}

.benchmark-summary-card dt {
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.benchmark-summary-card dd {
  margin: 0;
  font-weight: 800;
}

.benchmark-side-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

button.planned-action {
  border-color: rgba(245, 158, 11, .62);
  background: #fff7e6;
  color: #9a5a00;
}

button.planned-action:hover {
  border-color: var(--sr-warning);
  background: var(--sr-warning-soft);
}

.benchmark-detail-panel {
  display: grid;
  gap: 12px;
}

.benchmark-detail-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--sr-border);
  padding-bottom: 10px;
}

.benchmark-tabs {
  display: flex;
  align-items: center;
  gap: 16px;
}

.benchmark-tabs button {
  min-height: 32px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  padding: 4px 0;
  color: var(--sr-text-secondary);
  font-weight: 800;
}

.benchmark-tabs button.active {
  color: var(--sr-primary);
  border-bottom-color: var(--sr-primary);
}

.benchmark-compare-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
}

.benchmark-profile-card {
  position: relative;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  padding: 16px;
  display: grid;
  gap: 12px;
  min-height: 170px;
}

.benchmark-profile-card.winner {
  border-color: var(--sr-primary);
  background: rgba(20, 184, 166, .07);
}

.benchmark-winner-badge {
  justify-self: start;
  border: 1px solid var(--sr-primary);
  color: var(--sr-primary);
  border-radius: 6px;
  padding: 2px 7px;
  font-size: 12px;
  font-weight: 800;
}

.benchmark-profile-card header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.benchmark-profile-card header strong {
  font-size: 16px;
}

.benchmark-profile-card header small {
  color: var(--sr-text-secondary);
}

.benchmark-profile-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.benchmark-profile-metrics div {
  border: 1px solid var(--sr-border);
  border-radius: 6px;
  padding: 8px 10px;
}

.benchmark-profile-metrics span {
  display: block;
  color: var(--sr-text-secondary);
  font-size: 12px;
}

.benchmark-strengths {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.benchmark-strengths span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 6px;
  background: var(--sr-success-soft);
  color: var(--sr-primary);
  font-size: 12px;
  font-weight: 700;
}

.benchmark-strengths .icon-svg {
  width: 14px;
  height: 14px;
}

.benchmark-vs {
  width: 38px;
  height: 38px;
  border: 1px solid var(--sr-border);
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: var(--sr-text-secondary);
  font-weight: 900;
}

.benchmark-case-grid,
.benchmark-history-list {
  display: grid;
  gap: 10px;
}

.benchmark-case-card,
.benchmark-history-list > div,
.benchmark-empty {
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  padding: 11px 13px;
}

.benchmark-case-card {
  display: grid;
  grid-template-columns: 1fr 180px 130px;
  gap: 12px;
  align-items: center;
}

.benchmark-case-card span,
.benchmark-case-card em,
.benchmark-history-list time,
.benchmark-history-list span,
.benchmark-empty {
  color: var(--sr-text-secondary);
  font-style: normal;
}

.benchmark-history-list > div {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr) 160px;
  gap: 12px;
  align-items: center;
}

body.dark button.planned-action {
  background: rgba(245, 158, 11, .16);
  color: var(--sr-warning);
}

@media (max-width: 1400px) {
  .benchmark-main-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .benchmark-summary-card {
    grid-template-columns: 1fr 1.2fr;
  }
}

@media (max-width: 1280px) {
  .benchmark-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benchmark-filter-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benchmark-filter-card label:first-child {
    grid-column: 1 / -1;
  }

  .benchmark-summary-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .benchmark-side-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .benchmark-compare-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .benchmark-vs {
    justify-self: center;
  }

  .benchmark-profile-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Benchmark center viewport containment */
.benchmark-workspace .page-header,
.benchmark-workspace .page-actions,
.benchmark-workspace .benchmark-center,
.benchmark-workspace .benchmark-metrics,
.benchmark-workspace .benchmark-filter-card,
.benchmark-workspace .benchmark-main-grid,
.benchmark-workspace .benchmark-detail-panel {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.benchmark-workspace .page-header {
  flex-wrap: wrap;
}

.benchmark-workspace .page-actions {
  flex: 1 1 320px;
}

.benchmark-workspace .page-actions .primary {
  max-width: 100%;
}

@media (max-width: 1320px) {
  .benchmark-workspace .page-actions {
    justify-content: flex-start;
  }
}

/* RAG SETTINGS DESIGN */
.screen-rag-settings .workspace-main {
  overflow-x: hidden;
}

.rag-page {
  display: grid;
  gap: 16px;
}

.rag-page-notice:empty {
  display: none;
}

.rag-page-notice span,
.rag-page-notice .warning {
  display: block;
  padding: 10px 14px;
  border: 1px solid rgba(217, 119, 6, 0.32);
  border-radius: 8px;
  color: #9a5b00;
  background: rgba(255, 247, 237, 0.96);
  font-weight: 800;
}

.rag-metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.rag-metric-card {
  min-height: 118px;
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 24px 28px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-sm);
}

.rag-metric-card > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.rag-metric-card span:not(.rag-metric-icon) {
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.rag-metric-card strong {
  color: var(--sr-text);
  font-size: 30px;
  line-height: 1;
}

.rag-metric-card small {
  color: var(--sr-text-muted);
  font-size: 13px;
  line-height: 1.3;
}

.rag-metric-icon {
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  display: grid;
  place-items: center;
  border-radius: 8px;
}

.rag-metric-icon .icon-svg {
  width: 30px;
  height: 30px;
  stroke-width: 2.3;
}

.rag-metric-card.tone-mint .rag-metric-icon { background: var(--sr-success-soft); color: var(--sr-primary); }
.rag-metric-card.tone-blue .rag-metric-icon { background: var(--sr-info-soft); color: var(--sr-info); }
.rag-metric-card.tone-violet .rag-metric-icon { background: var(--sr-violet-soft); color: var(--sr-violet); }
.rag-metric-card.tone-amber .rag-metric-icon { background: var(--sr-warning-soft); color: var(--sr-warning); }

.rag-workspace {
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-sm);
  overflow: hidden;
}

.rag-tabs {
  height: 54px;
  display: flex;
  align-items: stretch;
  gap: 0;
  border-bottom: 1px solid var(--sr-border);
}

.rag-tabs button {
  height: 100%;
  padding: 0 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--sr-text-secondary);
  font-weight: 800;
  box-shadow: none;
}

.rag-tabs button.active {
  color: var(--sr-primary);
  border-bottom: 3px solid var(--sr-primary);
}

.rag-index-grid {
  display: grid;
  grid-template-columns: 440px minmax(0, 1fr) 390px;
  gap: 0;
  min-width: 0;
}

.rag-settings-form {
  display: block;
}

.rag-settings-card,
.rag-jobs-card,
.rag-side-card,
.rag-retrieval-panel,
.rag-tab-panel {
  padding: 22px;
}

.rag-settings-card,
.rag-jobs-card {
  border-right: 1px solid var(--sr-border);
}

.rag-settings-card h2,
.rag-jobs-card h2,
.rag-side-card h2,
.rag-retrieval-panel h2,
.rag-tab-panel h2 {
  margin: 0 0 18px;
  font-size: 18px;
  line-height: 1.2;
}

.rag-form-stack {
  display: grid;
  gap: 13px;
}

.rag-form-stack label,
.rag-search-form label {
  display: grid;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.rag-form-stack label > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
}

.rag-form-stack input,
.rag-form-stack select,
.rag-search-form input,
.rag-search-form select {
  min-width: 0;
}

.rag-input-with-icon {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 6px;
}

.rag-input-with-icon .icon-button {
  width: 42px;
  min-width: 42px;
}

.rag-switch-line {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.rag-wide-action {
  margin-top: 16px;
  justify-content: flex-start;
}

.rag-table-shell {
  overflow-x: auto;
}

.rag-table-shell table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
}

.rag-table-shell th,
.rag-table-shell td {
  padding: 13px 10px;
  border-bottom: 1px solid var(--sr-border);
  text-align: left;
  vertical-align: middle;
}

.rag-table-shell th {
  color: var(--sr-text-secondary);
  font-size: 13px;
  font-weight: 800;
}

.rag-progress-cell {
  display: grid;
  grid-template-columns: 46px minmax(90px, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 150px;
}

.rag-progress-cell > span {
  color: var(--sr-text);
  font-weight: 800;
}

.rag-row-action {
  width: 46px;
  text-align: right;
}

.rag-row-action .icon-button {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  font-size: 22px;
  line-height: 1;
}

.rag-side-column {
  display: grid;
  align-content: start;
}

.rag-side-card + .rag-side-card {
  border-top: 1px solid var(--sr-border);
}

.rag-detail-list {
  display: grid;
  gap: 0;
  margin-bottom: 16px;
}

.rag-detail-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--sr-border);
}

.rag-detail-list span {
  color: var(--sr-text-secondary);
  font-weight: 700;
}

.rag-detail-list strong {
  color: var(--sr-text);
  text-align: right;
}

.rag-detail-list i {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin-right: 6px;
  border-radius: 50%;
  background: var(--sr-primary);
}

.rag-side-card button {
  width: 100%;
  justify-content: center;
  margin-top: 10px;
}

.rag-source-bars {
  display: grid;
  gap: 14px;
}

.rag-source-row {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 48px;
  align-items: center;
  gap: 12px;
}

.rag-source-row span {
  color: var(--sr-text);
  font-weight: 800;
}

.rag-source-row strong {
  text-align: right;
}

.rag-retrieval-panel {
  border-top: 1px solid var(--sr-border);
}

.rag-retrieval-panel > header {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 24px;
  align-items: end;
  margin-bottom: 18px;
}

.rag-retrieval-panel p,
.rag-tab-panel p {
  margin: -10px 0 0;
  color: var(--sr-text-secondary);
}

.rag-search-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px 150px;
  gap: 12px;
  align-items: end;
}

.rag-search-form input {
  height: 44px;
}

.rag-result-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.rag-result-card {
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: var(--sr-surface);
}

.rag-result-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.rag-result-card header span {
  color: var(--sr-info);
  font-weight: 700;
}

.rag-result-card header strong {
  padding: 3px 8px;
  border: 1px solid rgba(59, 130, 246, .45);
  border-radius: 6px;
  background: var(--sr-info-soft);
  color: var(--sr-info);
}

.rag-result-card h3 {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
}

.rag-result-card p {
  margin: 0;
  color: var(--sr-text);
  line-height: 1.45;
}

.rag-result-card small {
  color: var(--sr-text-muted);
}

.rag-tab-panel {
  min-height: 420px;
}

.rag-debugger-json {
  min-height: 360px;
  margin: 18px 0 0;
  padding: 18px;
  border: 1px solid var(--sr-border);
  border-radius: 8px;
  background: #eef6f8;
  overflow: auto;
  line-height: 1.55;
}

.rag-page button.planned-action {
  border-color: rgba(245, 158, 11, .62);
  background: #fff7e6;
  color: #9a5a00;
}

.rag-page button.planned-action.danger {
  border-color: rgba(245, 158, 11, .72);
  background: #fff7e6;
  color: #9a5a00;
}

@media (max-width: 1500px) {
  .rag-index-grid {
    grid-template-columns: minmax(360px, 430px) minmax(0, 1fr);
  }

  .rag-side-column {
    grid-column: 1 / -1;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid var(--sr-border);
  }

  .rag-side-card + .rag-side-card {
    border-top: 0;
    border-left: 1px solid var(--sr-border);
  }
}

@media (max-width: 1180px) {
  .rag-metrics-grid,
  .rag-result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rag-index-grid,
  .rag-retrieval-panel > header,
  .rag-search-form,
  .rag-side-column {
    grid-template-columns: 1fr;
  }

  .rag-settings-card,
  .rag-jobs-card,
  .rag-side-card + .rag-side-card {
    border-right: 0;
    border-left: 0;
    border-top: 1px solid var(--sr-border);
  }
}



/* Test Data page */
.test-data-page {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.test-data-header {
  margin: 0;
  align-items: start;
}

.test-data-header h1 {
  margin: 0 0 4px;
  font-size: 24px;
  line-height: 1.18;
  color: var(--sr-text);
}

.test-data-header p {
  margin: 0;
  color: var(--sr-text-secondary);
}

.test-data-header-actions {
  display: flex;
  gap: 10px;
}

.test-data-header-actions button,
.test-data-filters button,
.test-data-table-footer button,
.test-data-table-footer select,
.test-data-side-form button,
.test-data-card > button,
.test-data-quality-form button {
  min-height: 36px;
  border-radius: var(--sr-radius-xs);
}

.test-data-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.test-data-metric {
  min-height: 100px;
  display: grid;
  grid-template-columns: 50px 1fr;
  align-items: center;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.test-data-metric-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: var(--sr-soft);
  color: var(--sr-primary);
}

.test-data-metric.tone-blue .test-data-metric-icon { color: var(--sr-info); background: rgba(47, 118, 255, 0.1); }
.test-data-metric.tone-purple .test-data-metric-icon { color: var(--sr-purple); background: rgba(139, 92, 246, 0.12); }
.test-data-metric.tone-slate .test-data-metric-icon { color: var(--sr-text-secondary); background: rgba(100, 116, 139, 0.1); }

.test-data-metric .icon-svg {
  width: 23px;
  height: 23px;
}

.test-data-metric small,
.test-data-metric em {
  display: block;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-style: normal;
}

.test-data-metric strong {
  display: block;
  margin: 3px 0 4px;
  color: var(--sr-text);
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0;
}

.test-data-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 14px;
  align-items: start;
}

.test-data-main,
.test-data-sidebar {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.test-data-sidebar {
  position: sticky;
  top: 82px;
}

.test-data-card,
.test-data-filters {
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  background: var(--sr-surface);
  box-shadow: var(--sr-shadow-soft);
}

.test-data-card {
  padding: 14px;
}

.test-data-card h2 {
  margin: 0 0 12px;
  color: var(--sr-text);
  font-size: 16px;
  line-height: 1.25;
}

.test-data-filters {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 160px 160px 170px auto;
  gap: 10px;
  padding: 12px;
  align-items: center;
}

.test-data-search {
  position: relative;
  display: block;
}

.test-data-search .icon-svg {
  position: absolute;
  left: 12px;
  top: 50%;
  width: 18px;
  height: 18px;
  color: var(--sr-text-secondary);
  transform: translateY(-50%);
}

.test-data-search input {
  width: 100%;
  min-height: 38px;
  padding-left: 40px;
}

.test-data-filters select,
.test-data-filters button {
  width: 100%;
  min-height: 38px;
}

.test-data-table-card {
  padding: 0;
  overflow: hidden;
}

.test-data-table-card h2 {
  padding: 14px 14px 0;
}

.test-data-table-frame {
  margin: 0 14px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-sm);
  overflow: hidden;
}

.test-data-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.test-data-table th,
.test-data-table td {
  padding: 11px 10px;
  border-bottom: 1px solid var(--sr-border);
  vertical-align: middle;
  text-align: left;
}

.test-data-table th {
  height: 42px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.test-data-table tr:last-child td {
  border-bottom: 0;
}

.test-data-table tr.is-selected td {
  background: var(--sr-primary-soft);
  border-top: 1px solid var(--sr-primary);
  border-bottom: 1px solid var(--sr-primary);
}

.test-data-table th:nth-child(1),
.test-data-table td:nth-child(1) { width: 34px; text-align: center; }
.test-data-table th:nth-child(2),
.test-data-table td:nth-child(2) { width: 23%; }
.test-data-table th:nth-child(3),
.test-data-table td:nth-child(3) { width: 11%; }
.test-data-table th:nth-child(4),
.test-data-table td:nth-child(4) { width: 8%; }
.test-data-table th:nth-child(5),
.test-data-table td:nth-child(5) { width: 8%; }
.test-data-table th:nth-child(6),
.test-data-table td:nth-child(6) { width: 9%; }
.test-data-table th:nth-child(7),
.test-data-table td:nth-child(7) { width: 11%; }
.test-data-table th:nth-child(8),
.test-data-table td:nth-child(8) { width: 13%; }
.test-data-table th:nth-child(9),
.test-data-table td:nth-child(9) { width: 86px; text-align: right; padding-right: 10px; }

.test-data-table strong,
.test-data-table small {
  display: block;
}

.test-data-table small {
  color: var(--sr-text-secondary);
  font-size: 11px;
  line-height: 1.35;
}

.test-data-name-cell {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.test-data-name-cell strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.test-data-row-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: var(--sr-soft);
  color: var(--sr-text-secondary);
}

.test-data-row-icon .icon-svg {
  width: 17px;
  height: 17px;
}

.test-data-check {
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--sr-border-strong);
  border-radius: 4px;
  color: var(--sr-primary);
  background: var(--sr-surface);
}

.test-data-check:empty {
  background: transparent;
}

.test-data-check .icon-svg {
  width: 12px;
  height: 12px;
  stroke-width: 3;
}

.test-data-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  max-width: 100%;
  padding: 2px 9px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-xs);
  background: var(--sr-soft);
  color: var(--sr-text);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.test-data-badge.tone-done { color: var(--sr-success); border-color: rgba(16, 163, 127, 0.32); background: rgba(16, 163, 127, 0.1); }
.test-data-badge.tone-warn { color: var(--sr-warning); border-color: rgba(245, 158, 11, 0.36); background: rgba(245, 158, 11, 0.12); }
.test-data-badge.tone-risk { color: var(--sr-danger); border-color: rgba(239, 68, 68, 0.35); background: rgba(239, 68, 68, 0.1); }
.test-data-badge.tone-info,
.test-data-badge.tone-blue { color: var(--sr-info); border-color: rgba(47, 118, 255, 0.35); background: rgba(47, 118, 255, 0.1); }
.test-data-badge.tone-purple { color: var(--sr-purple); border-color: rgba(139, 92, 246, 0.32); background: rgba(139, 92, 246, 0.12); }
.test-data-badge.tone-muted { color: var(--sr-text-secondary); }

.test-data-row-actions {
  display: inline-flex;
  gap: 4px;
  justify-content: flex-end;
}

.test-data-row-actions .icon-button {
  width: 26px;
  height: 26px;
  min-height: 26px;
  padding: 0;
}

.test-data-row-actions .icon-svg {
  width: 15px;
  height: 15px;
}

.test-data-table-footer {
  min-height: 58px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  color: var(--sr-text-secondary);
}

.test-data-pages {
  display: flex;
  gap: 6px;
  align-items: center;
}

.test-data-pages button {
  min-width: 34px;
  padding: 0 10px;
}

.test-data-pages .active {
  background: var(--sr-primary);
  color: #fff;
  border-color: var(--sr-primary);
}

.test-data-table-footer label {
  justify-self: end;
  display: inline-flex;
  gap: 8px;
  align-items: center;
}

.test-data-table-footer select {
  width: 70px;
}

.test-data-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(260px, 0.85fr);
  gap: 14px;
  align-items: stretch;
}

.test-data-quality-list {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.test-data-quality-row {
  display: grid;
  grid-template-columns: 20px 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 2px 0;
}

.test-data-quality-row .icon-svg {
  width: 15px;
  height: 15px;
}

.test-data-quality-row.tone-done .icon-svg { color: var(--sr-success); }
.test-data-quality-row.tone-risk .icon-svg { color: var(--sr-danger); }

.test-data-quality-form button {
  width: 100%;
}

.test-data-output {
  max-height: 150px;
  margin: 10px 0 0;
  padding: 10px;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-radius-xs);
  background: var(--sr-soft);
  overflow: auto;
  font-size: 11px;
}

.test-data-output:empty {
  display: none;
}

.test-data-donut-wrap {
  display: grid;
  grid-template-columns: 116px 1fr;
  gap: 18px;
  align-items: center;
}

.test-data-donut {
  width: 112px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: conic-gradient(#2f76ff 0 45.2%, #f59e0b 45.2% 73.3%, #0f8f7f 73.3% 88.6%, #8b5cf6 88.6% 96.2%, #b8c4d3 96.2% 100%);
  position: relative;
}

.test-data-donut::after {
  content: "";
  position: absolute;
  inset: 24px;
  border-radius: 50%;
  background: var(--sr-surface);
  box-shadow: inset 0 0 0 1px var(--sr-border);
}

.test-data-legend {
  display: grid;
  gap: 8px;
}

.test-data-legend div {
  display: grid;
  grid-template-columns: 10px 1fr auto;
  gap: 8px;
  align-items: center;
  color: var(--sr-text-secondary);
}

.test-data-legend i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.test-data-legend .tone-blue { background: var(--sr-info); }
.test-data-legend .tone-warn { background: var(--sr-warning); }
.test-data-legend .tone-teal { background: var(--sr-primary); }
.test-data-legend .tone-purple { background: #8b5cf6; }
.test-data-legend .tone-muted { background: var(--sr-border-strong); }

.test-data-legend strong {
  color: var(--sr-text);
  font-weight: 700;
}

.test-data-actions-list,
.test-data-side-form {
  display: grid;
  gap: 8px;
}

.test-data-actions-list button {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 10px;
  align-items: center;
  width: 100%;
  min-height: 48px;
  padding: 8px 10px;
  text-align: left;
  border-radius: var(--sr-radius-xs);
}

.test-data-actions-list .icon-svg {
  width: 18px;
  height: 18px;
}

.test-data-actions-list strong,
.test-data-actions-list small {
  display: block;
}

.test-data-actions-list small {
  color: var(--sr-text-secondary);
  font-weight: 500;
}

.test-data-side-form label {
  display: grid;
  gap: 6px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 700;
}

.test-data-side-form select,
.test-data-side-form input {
  width: 100%;
}

.test-data-checkbox {
  grid-template-columns: 16px 1fr !important;
  align-items: center;
  color: var(--sr-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

.test-data-operation-list {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
}

.test-data-operation-list li {
  display: grid;
  grid-template-columns: 20px 1fr auto;
  gap: 10px;
  align-items: center;
}

.test-data-operation-list li > span {
  color: var(--sr-text-secondary);
  font-weight: 700;
  text-align: center;
}

.test-data-operation-list strong,
.test-data-operation-list small {
  display: block;
}

.test-data-operation-list small {
  color: var(--sr-text-secondary);
  font-size: 11px;
}

.test-data-footer {
  display: flex;
  justify-content: space-between;
  color: var(--sr-text-secondary);
  font-size: 12px;
  padding: 0 2px;
}

.test-data-page .planned-action {
  border-color: rgba(245, 158, 11, 0.45);
  background: rgba(245, 158, 11, 0.08);
}

.test-data-page .planned-action.primary {
  color: #8a5c00;
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(245, 158, 11, 0.62);
  box-shadow: none;
}

.test-data-page .planned-action.primary:hover {
  color: #7a4d00;
  background: rgba(245, 158, 11, 0.18);
  border-color: rgba(245, 158, 11, 0.72);
}

@media (max-width: 1400px) {
  .test-data-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .test-data-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .test-data-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Unified block icon treatment: remove tinted backplates */
.dashboard-kpi .kpi-icon,
.dashboard-kpi.compact-kpi .kpi-icon,
.ticket-metric-icon,
.ticket-detail-icon,
.route-mode-icon,
.compact-route-mode .route-mode-icon,
.work-center-type-icon,
.setting-icon,
.notification-icon-badge,
.notification-card-icon,
.notification-detail-icon,
.workbench-metric > span,
.department-metric-card > span,
.user-metric-card > span,
.audit-metric-icon,
.pilot-metric-icon,
.knowledge-metric-icon,
.memory-metric > span,
.publication-metric > span,
.ai-lab-metric > span,
.test-ticket-mode-card > span,
.diagnostic-metric > span,
.diagnostic-component-icon,
.prompt-metric-card .metric-icon,
.prompt-metric > span,
.ai-runs-metric > span,
.ai-settings-metric > span,
.benchmark-metric > span,
.rag-metric-icon,
.test-data-metric-icon {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
/* End unified block icon treatment */

/* Departments and users inspector layout polish 2026-07-16 */
.workspace.departments-workspace.with-inspector,
.workspace.users-workspace.with-inspector {
  align-items: start;
  overflow-x: clip;
}

.departments-workspace .main,
.users-workspace .main,
.departments-page,
.users-page,
.department-registry,
.user-registry {
  max-width: 100%;
  min-width: 0;
}

.department-registry,
.user-registry {
  overflow: hidden;
}

.departments-page .table-scroll,
.users-page .table-scroll {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
}

.department-filter-form,
.user-filter-form {
  min-width: 0;
  width: 100%;
}

.department-filter-form {
  grid-template-columns:
    minmax(220px, 1.4fr)
    repeat(4, minmax(104px, 0.65fr))
    minmax(108px, auto);
}

.user-filter-form {
  grid-template-columns:
    minmax(220px, 1.4fr)
    repeat(4, minmax(104px, 0.65fr))
    minmax(108px, auto)
    minmax(178px, auto);
}

.department-filter-form > *,
.user-filter-form > * {
  min-width: 0;
}

.user-create-button {
  justify-self: end;
  max-width: 100%;
}

.departments-table {
  min-width: 1080px;
}

.users-table {
  min-width: 1106px;
}

.departments-table th,
.departments-table td,
.users-table th,
.users-table td {
  padding-inline: 9px;
}

.users-table th:nth-child(1),
.users-table td:nth-child(1) {
  width: 34px;
}

.users-table th:nth-child(2),
.users-table td:nth-child(2) {
  width: 190px;
}

.users-table th:nth-child(3),
.users-table td:nth-child(3) {
  width: 116px;
}

.users-table th:nth-child(4),
.users-table td:nth-child(4) {
  width: 126px;
}

.users-table th:nth-child(5),
.users-table td:nth-child(5) {
  width: 156px;
}

.users-table th:nth-child(6),
.users-table td:nth-child(6) {
  width: 100px;
}

.users-table th:nth-child(7),
.users-table td:nth-child(7) {
  width: 104px;
}

.users-table th:nth-child(8),
.users-table td:nth-child(8) {
  width: 114px;
}

.users-table th:nth-child(9),
.users-table td:nth-child(9) {
  width: 118px;
}

.users-table th:nth-child(10),
.users-table td:nth-child(10) {
  width: 48px;
}

@media (min-width: 1367px) and (max-width: 1500px) {
  .department-filter-form,
  .user-filter-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .user-create-button {
    justify-self: stretch;
  }
}

@media (max-width: 760px) {
  .department-filter-form,
  .user-filter-form {
    grid-template-columns: 1fr;
  }
}
/* Desktop overflow guard 2026-07-16 */
.topbar,
.content-shell,
.workspace.desktop-workspace,
.desktop-workspace .main,
.desktop-controls,
.desktop-header-actions,
.dashboard-kpis,
.dashboard-grid,
.dashboard-main,
.dashboard-side {
  max-width: 100%;
  min-width: 0;
}

.topbar,
.workspace.desktop-workspace {
  overflow-x: clip;
}

.desktop-workspace .table-scroll {
  max-width: 100%;
  overflow-x: auto;
}

.desktop-header-actions {
  padding-right: 0;
}

@media (max-width: 1480px) {
  .desktop-header-actions {
    flex-wrap: wrap;
    row-gap: 8px;
  }

  .desktop-header-actions > .small {
    flex: 1 1 100%;
    line-height: 20px;
    text-align: right;
  }

  .desktop-header-actions > button.primary {
    padding-inline: 14px;
  }
}



/* Ticket focused workspace flow 2026-07-16 */
.workspace.tickets-workspace.tickets-workspace-open {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.tickets-focus-shell {
  display: grid;
  gap: var(--sr-space-4);
}

.ticket-workspace-full {
  min-height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-7));
}

.ticket-workspace-full .ticket-workspace-head {
  align-items: flex-start;
}

.ticket-back-button {
  min-height: 34px;
  border-radius: var(--sr-radius-button);
  padding: 7px 12px;
  border: 1px solid var(--sr-border);
  background: var(--sr-surface);
  color: var(--sr-text);
  font-weight: 700;
}

.ticket-back-button:hover {
  border-color: color-mix(in srgb, var(--sr-primary) 38%, var(--sr-border));
  color: var(--sr-primary);
}

.ticket-number-link {
  min-height: 0;
  border: 0;
  background: transparent;
  padding: 0;
  color: var(--sr-primary);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.ticket-number-link:hover strong {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ticket-registry-row {
  cursor: pointer;
}

@media (min-width: 761px) {
  .workspace.tickets-workspace.with-inspector .inspector {
    height: auto;
    max-height: calc(100vh - var(--sr-topbar-height) - var(--sr-space-5) * 2);
    overflow: auto;
    align-self: start;
  }
}

/* Ticket header polish 2026-07-16 */
.ticket-title-status {
  flex: 0 0 auto;
  margin-left: 2px;
}

.ticket-workspace-full .ticket-workspace-head-actions {
  justify-content: flex-end;
}


/* Ticket checklist workbench 2026-07-16 */
.ticket-event-panel .preserve {
  font-size: 14px;
  line-height: 1.62;
  white-space: pre-wrap;
}

.ticket-tasks-panel {
  cursor: default;
}

.ticket-tasks-panel:hover {
  border-color: var(--sr-border);
  box-shadow: none;
  background: var(--sr-surface);
}

.checklist-workbench-modal {
  width: min(1120px, calc(100vw - 48px));
  max-height: min(820px, calc(100vh - 48px));
}

.checklist-workbench {
  display: grid;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
}

.checklist-workbench-list,
.checklist-editor-pane {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  padding: 18px;
}

.checklist-workbench-list {
  border-right: 1px solid var(--sr-border);
  background: color-mix(in srgb, var(--sr-surface-muted) 48%, var(--sr-surface));
}

.interactive-task-list {
  gap: 8px;
}

.ticket-tasks-modal .interactive-task-list .task-row {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 8px;
  padding: 8px;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.ticket-tasks-modal .interactive-task-list .task-row.selected {
  border-color: var(--sr-primary);
  background: color-mix(in srgb, var(--sr-primary) 7%, var(--sr-surface));
}

.task-toggle,
.task-row-main {
  min-height: 0;
  border: 0;
  background: transparent;
  padding: 0;
  color: inherit;
  box-shadow: none;
}

.task-toggle {
  width: 24px;
  height: 30px;
  display: grid;
  place-items: center;
}

.task-row-main {
  width: 100%;
  text-align: left;
  justify-content: flex-start;
}

.task-row-indicators {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--sr-text-secondary);
}

.task-row-indicators .icon-svg {
  width: 15px;
  height: 15px;
}

.task-evidence-count {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 11px;
}

.checklist-add-item-form {
  display: grid;
  gap: 9px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--sr-border);
}

.checklist-section-title {
  font-weight: 800;
  color: var(--sr-text);
}

.checklist-add-item-form label,
.checklist-item-editor-form label {
  display: grid;
  gap: 5px;
  color: var(--sr-text-secondary);
  font-size: 12px;
  font-weight: 650;
}

.checklist-add-options {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
  align-items: center;
  padding: 3px 0 2px;
}

.checklist-add-item-form textarea {
  min-height: 66px;
  resize: vertical;
}

.checklist-weight-field {
  min-width: 0;
}

.checklist-weight-control {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.checklist-weight-control select {
  width: 100%;
  min-width: 0;
}

.checklist-weight-control select.is-invalid,
.checklist-weight-control select[aria-invalid="true"] {
  border-color: var(--sr-danger);
  background: color-mix(in srgb, var(--sr-danger) 6%, var(--sr-surface));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--sr-danger) 16%, transparent);
}

.checklist-weight-error {
  color: var(--sr-danger);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.3;
}

.checklist-weight-error[hidden] {
  display: none;
}

.checklist-weight-control.is-compact {
  min-width: 150px;
}

.checklist-item-editor-form {
  display: grid;
  gap: 18px;
}

.checklist-editor-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--sr-border);
}

.checklist-editor-heading h3 {
  margin: 3px 0 0;
  font-size: 18px;
  line-height: 1.35;
}

.checklist-editor-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.checklist-editor-grid .wide {
  grid-column: 1 / -1;
}

.checklist-required-toggle {
  display: flex !important;
  align-items: center;
  gap: 8px !important;
  min-height: 40px;
  color: var(--sr-text) !important;
}

.checklist-result-section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--sr-border);
  border-radius: 7px;
  background: color-mix(in srgb, var(--sr-surface-muted) 42%, var(--sr-surface));
}

.checklist-file-picker {
  position: relative;
  display: inline-flex !important;
  grid-template-columns: auto 1fr;
  align-items: center;
  justify-content: start;
  gap: 8px !important;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px dashed var(--sr-border-strong);
  border-radius: 6px;
  color: var(--sr-primary) !important;
  cursor: pointer;
}

.checklist-file-picker input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.checklist-evidence-list {
  display: grid;
  gap: 6px;
}

.checklist-evidence-list a {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: var(--sr-primary);
  text-decoration: none;
}

.checklist-evidence-list a span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.checklist-editor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.checklist-danger-zone {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  padding-top: 14px;
  border-top: 1px solid var(--sr-border);
}

.checklist-removal-reason {
  position: relative;
}

.checklist-removal-reason input.is-invalid,
.checklist-removal-reason input[aria-invalid="true"] {
  border-color: var(--sr-danger);
  background: color-mix(in srgb, var(--sr-danger) 6%, var(--sr-surface));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--sr-danger) 16%, transparent);
}

.checklist-field-error {
  display: block;
  margin-top: 5px;
  color: var(--sr-danger);
  font-size: 12px;
  font-weight: 600;
}

.checklist-field-error[hidden] {
  display: none;
}

.danger-outline {
  border-color: color-mix(in srgb, var(--sr-danger) 50%, var(--sr-border));
  color: var(--sr-danger);
  background: var(--sr-surface);
}

@media (max-width: 900px) {
  .checklist-add-options {
    grid-template-columns: 1fr;
  }

  .checklist-workbench {
    grid-template-columns: 1fr;
    overflow: auto;
  }

  .checklist-workbench-list {
    border-right: 0;
    border-bottom: 1px solid var(--sr-border);
    overflow: visible;
  }

  .checklist-editor-pane {
    overflow: visible;
  }
}

/* Ticket checklist: one outer scroll, no nested scroll areas */
html:has(.ticket-tasks-overlay .checklist-workbench-modal),
body:has(.ticket-tasks-overlay .checklist-workbench-modal) {
  overflow: hidden;
}

.ticket-tasks-overlay:has(.checklist-workbench-modal) {
  place-items: start center;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding: 24px;
}

.ticket-tasks-overlay:has(.checklist-workbench-modal) .ticket-tasks-backdrop {
  position: fixed;
}

.checklist-workbench-modal {
  width: min(1180px, calc(100vw - 48px));
  max-height: none;
  margin: auto 0;
  overflow: visible;
}

.checklist-workbench-modal .ticket-tasks-modal-body,
.checklist-workbench-list,
.checklist-editor-pane {
  min-height: auto;
  overflow: visible;
}

.checklist-workbench {
  grid-template-columns: 340px minmax(0, 1fr);
  align-items: start;
  overflow: visible;
}

.checklist-workbench-list {
  width: 340px;
}

.checklist-workbench-list > *,
.checklist-add-item-form,
.checklist-add-item-form > *,
.checklist-editor-pane > * {
  min-width: 0;
  max-width: 100%;
}

.checklist-add-item-form input,
.checklist-add-item-form select,
.checklist-add-item-form textarea,
.checklist-add-item-form button {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.checklist-add-item-form > button[type="submit"] {
  justify-content: center;
}

.checklist-item-editor-form {
  align-content: start;
}

.checklist-danger-zone {
  order: 5;
}

.checklist-editor-actions {
  order: 6;
  padding-top: 14px;
  border-top: 1px solid var(--sr-border);
}

@media (max-width: 900px) {
  .ticket-tasks-overlay:has(.checklist-workbench-modal) {
    padding: 12px;
  }

  .checklist-workbench-modal {
    width: calc(100vw - 24px);
  }

  .checklist-workbench {
    grid-template-columns: 1fr;
  }

  .checklist-workbench-list {
    width: auto;
  }
}

/* Ticket workspace: checklist cards */
.ticket-checklist-view {
  min-width: 0;
}

.ticket-checklist-board {
  gap: 8px;
}

.ticket-checklist-card {
  display: grid;
  gap: 0;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: 0 2px 8px rgb(15 41 61 / 4%);
  padding: 14px 16px 12px;
}

.ticket-checklist-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
  margin-bottom: 10px;
}

.ticket-checklist-card-head > div {
  min-width: 0;
}

.ticket-checklist-card h3 {
  margin: 0 0 3px;
  color: var(--text);
  font-size: 15px;
  line-height: 1.3;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.ticket-checklist-meta {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.ticket-checklist-state {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.ticket-checklist-state .icon-svg {
  width: 15px;
  height: 15px;
}

.ticket-checklist-state.done {
  background: color-mix(in srgb, var(--ok) 10%, var(--surface));
  color: var(--ok);
}

.ticket-checklist-state.waiting {
  background: color-mix(in srgb, #3b82f6 10%, var(--surface));
  color: #1769d2;
}

.ticket-checklist-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  margin-bottom: 4px;
}

.ticket-checklist-summary > div {
  min-height: 48px;
  border: 0;
  border-radius: 5px;
  background: color-mix(in srgb, var(--surface-soft) 88%, #dce9ef);
  padding: 8px 10px;
}

.ticket-checklist-summary span {
  margin-bottom: 2px;
  font-size: 11px;
}

.ticket-checklist-summary strong {
  color: var(--text);
  font-size: 13px;
  line-height: 1.25;
}

.ticket-checklist-section {
  gap: 2px;
  border-top: 0;
  border-bottom: 1px solid var(--line);
  padding: 8px 0 7px;
}

.ticket-checklist-section > strong {
  color: var(--text);
  font-size: 12px;
  line-height: 1.3;
}

.ticket-checklist-section .small {
  line-height: 1.4;
}

.ticket-checklist-history {
  border-bottom: 0;
  padding-bottom: 8px;
}

.ticket-checklist-history-entry {
  display: grid;
  grid-template-columns: 7px minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  color: var(--text);
  font-size: 12px;
  line-height: 1.35;
}

.ticket-checklist-history-entry > span {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--accent);
}

.ticket-checklist-actions,
.ticket-checklist-actions-primary,
.ticket-checklist-actions-secondary {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ticket-checklist-actions {
  justify-content: space-between;
  min-width: 0;
  padding-top: 7px;
}

.ticket-checklist-actions-primary,
.ticket-checklist-actions-secondary {
  min-width: 0;
}

.ticket-checklist-actions button,
.ticket-checklist-actions select {
  min-height: 34px;
}

.ticket-checklist-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;
}

.ticket-checklist-actions button .icon-svg {
  width: 15px;
  height: 15px;
}

.ticket-checklist-actions-secondary select {
  width: clamp(160px, 16vw, 220px);
  min-width: 0;
}

.ticket-checklist-actions .danger-outline {
  border-color: color-mix(in srgb, var(--danger) 45%, var(--line));
  color: var(--danger);
}

@media (max-width: 1100px) {
  .ticket-checklist-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .ticket-checklist-actions-primary,
  .ticket-checklist-actions-secondary {
    width: 100%;
  }

  .ticket-checklist-actions-secondary select {
    flex: 1 1 180px;
    width: auto;
  }
}

@media (max-width: 720px) {
  .ticket-checklist-card {
    padding: 12px;
  }

  .ticket-checklist-card-head,
  .ticket-checklist-actions-secondary {
    align-items: stretch;
    flex-direction: column;
  }

  .ticket-checklist-state {
    align-self: flex-start;
  }

  .ticket-checklist-summary {
    grid-template-columns: 1fr;
  }

  .ticket-checklist-actions-primary {
    flex-wrap: wrap;
  }

  .ticket-checklist-actions-secondary select,
  .ticket-checklist-actions-secondary button {
    width: 100%;
  }
}

/* Ticket workspace: final response */
.ticket-correspondence {
  display: grid;
  gap: 34px;
  min-height: 190px;
  padding: 22px 26px 24px;
  border-radius: 7px;
}

.ticket-correspondence-head {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  justify-content: space-between;
}

.ticket-correspondence-head h2 {
  margin: 0 0 7px;
  color: var(--text);
  font-size: 20px;
  line-height: 1.25;
}

.ticket-correspondence-head p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.ticket-correspondence-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.ticket-correspondence-actions button {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-color: var(--line);
  background: var(--surface);
  color: var(--text);
}

.ticket-correspondence-actions button:first-child {
  border-color: color-mix(in srgb, var(--accent) 42%, var(--line));
  color: var(--accent);
}

.ticket-correspondence-actions .icon-svg {
  width: 18px;
  height: 18px;
}

.ticket-correspondence-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 980px;
}

.ticket-correspondence-metric {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
  padding: 0 36px;
  border-right: 1px solid var(--line);
}

.ticket-correspondence-metric:first-child {
  padding-left: 8px;
}

.ticket-correspondence-metric:last-child {
  border-right: 0;
}

.ticket-correspondence-metric > .icon-svg {
  width: 25px;
  height: 25px;
  color: var(--text);
  stroke-width: 1.7;
}

.ticket-correspondence-metric > span {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.ticket-correspondence-metric small {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-correspondence-metric strong {
  overflow: hidden;
  color: var(--text);
  font-size: 14px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-correspondence-details {
  display: grid;
  gap: 10px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

.ticket-correspondence-details[hidden] {
  display: none;
}

.ticket-correspondence-message {
  width: min(760px, 88%);
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface-soft);
}

.ticket-correspondence-message.outgoing {
  justify-self: end;
  border-color: color-mix(in srgb, var(--accent) 34%, var(--line));
  background: color-mix(in srgb, var(--accent) 6%, var(--surface));
}

.ticket-correspondence-message-head {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}

.ticket-correspondence-message-head strong {
  font-size: 13px;
}

.ticket-correspondence-message-head time {
  color: var(--muted);
  font-size: 12px;
}

.ticket-correspondence-message p {
  margin: 8px 0 0;
  color: var(--text);
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.ticket-correspondence-files {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.ticket-correspondence-files span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--text);
  font-size: 12px;
}

.ticket-correspondence-files .icon-svg {
  width: 15px;
  height: 15px;
}

.ticket-correspondence-empty {
  padding: 18px;
  color: var(--muted);
  text-align: center;
}

@media (max-width: 1050px) {
  .ticket-correspondence-head {
    flex-direction: column;
  }

  .ticket-correspondence-actions {
    justify-content: flex-start;
  }

  .ticket-correspondence-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 0;
  }

  .ticket-correspondence-metric:nth-child(2) {
    border-right: 0;
  }
}

@media (max-width: 680px) {
  .ticket-correspondence {
    gap: 24px;
    padding: 18px;
  }

  .ticket-correspondence-actions,
  .ticket-correspondence-actions button {
    width: 100%;
  }

  .ticket-correspondence-actions button {
    justify-content: center;
  }

  .ticket-correspondence-metrics {
    grid-template-columns: 1fr;
  }

  .ticket-correspondence-metric,
  .ticket-correspondence-metric:first-child {
    padding: 8px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .ticket-correspondence-metric:last-child {
    border-bottom: 0;
  }

  .ticket-correspondence-message {
    width: 100%;
  }
}

.ticket-final-response {
  display: grid;
  gap: 14px;
}

.ticket-final-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr)) 48px;
  align-items: stretch;
  min-height: 94px;
  padding: 16px 12px 16px 18px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
}

.ticket-final-summary-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
  padding: 2px 22px;
  border-right: 1px solid var(--line);
}

.ticket-final-summary-item:first-child {
  padding-left: 8px;
}

.ticket-final-summary-icon {
  width: 22px;
  height: 22px;
  color: var(--text);
  stroke-width: 1.8;
}

.ticket-final-summary-item > div {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.ticket-final-summary-item span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.2;
}

.ticket-final-summary-item strong {
  overflow: hidden;
  color: var(--text);
  font-size: 14px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-final-status {
  justify-self: start;
  width: fit-content;
  max-width: 100%;
  overflow: visible !important;
  padding: 4px 9px;
  border: 1px solid #a9c9f7;
  border-radius: 6px;
  background: #e9f2ff;
  color: #1769d3 !important;
  font-size: 12px !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
}

.ticket-final-status.done {
  border-color: #a8d8c8;
  background: #edf9f4;
  color: #0b8a67 !important;
}

.ticket-final-status.risk {
  border-color: #efb8be;
  background: #fff0f1;
  color: var(--danger) !important;
}

.ticket-final-more {
  position: relative;
  display: grid;
  place-items: center;
}

.ticket-final-more > summary {
  display: grid;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  color: var(--text);
  cursor: pointer;
  list-style: none;
}

.ticket-final-more > summary::-webkit-details-marker {
  display: none;
}

.ticket-final-more > summary .icon-svg {
  width: 20px;
  height: 20px;
}

.ticket-final-more[open] > summary,
.ticket-final-more > summary:hover {
  border-color: var(--accent);
  color: var(--accent);
}

.ticket-final-more-popover {
  position: absolute;
  z-index: 12;
  top: calc(50% + 24px);
  right: 0;
  display: grid;
  grid-template-columns: auto minmax(100px, 1fr);
  gap: 8px 16px;
  width: 270px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.ticket-final-more-popover span {
  color: var(--muted);
  font-size: 12px;
}

.ticket-final-more-popover strong {
  overflow-wrap: anywhere;
  font-size: 12px;
}

.ticket-final-workspace,
.ticket-final-preparation {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
}

.ticket-final-workspace {
  padding: 18px;
}

.ticket-final-workspace-head {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.ticket-final-workspace-head > div:first-child {
  display: grid;
  gap: 3px;
}

.ticket-final-workspace-head span,
.ticket-final-workspace-meta {
  color: var(--muted);
  font-size: 12px;
}

.ticket-final-workspace-head h3 {
  margin: 0;
  font-size: 18px;
}

.final-response-editor-form {
  display: grid;
  gap: 12px;
}

.final-response-editor-form label,
.ticket-final-manual-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
}

.final-response-editor-form textarea,
.ticket-final-manual-form textarea {
  resize: vertical;
}

.ticket-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.ticket-final-actions button,
.ticket-final-manual-form > button,
.ticket-final-ai-panel button {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}

.ticket-final-readonly {
  min-height: 180px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-soft);
  line-height: 1.55;
}

.ticket-final-preparation {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  overflow: hidden;
}

.ticket-final-manual-form {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.ticket-final-form-head > div {
  display: flex;
  gap: 12px;
  align-items: center;
}

.ticket-final-form-head span {
  display: grid;
  gap: 3px;
}

.ticket-final-form-head small {
  color: var(--muted);
}

.ticket-final-form-icon,
.ticket-final-ai-icon {
  width: 24px;
  height: 24px;
  color: var(--accent);
}

.ticket-final-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ticket-final-field-wide {
  grid-column: 1 / -1;
}

.ticket-final-manual-form > button {
  justify-self: start;
}

.ticket-final-ai-panel {
  display: grid;
  align-content: start;
  gap: 18px;
  padding: 22px;
  border-left: 1px solid var(--line);
  background: var(--surface-soft);
}

.ticket-final-ai-panel > div {
  display: grid;
  gap: 8px;
}

.ticket-final-ai-panel p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

@media (max-width: 1200px) {
  .ticket-final-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) 48px;
  }

  .ticket-final-summary-item {
    min-height: 72px;
    border-bottom: 1px solid var(--line);
  }

  .ticket-final-summary-item:nth-child(even) {
    border-right: 0;
  }

  .ticket-final-summary-item:nth-child(5) {
    border-bottom: 0;
  }

  .ticket-final-more {
    grid-column: 3;
    grid-row: 1 / span 3;
  }

  .ticket-final-preparation {
    grid-template-columns: 1fr;
  }

  .ticket-final-ai-panel {
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}

@media (max-width: 700px) {
  .ticket-final-summary {
    grid-template-columns: minmax(0, 1fr) 48px;
  }

  .ticket-final-summary-item {
    grid-column: 1;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .ticket-final-more {
    grid-column: 2;
    grid-row: 1 / span 5;
  }

  .ticket-final-fields {
    grid-template-columns: 1fr;
  }

  .ticket-final-workspace-head {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* Ticket checklist control polish 2026-07-16 */
.checklist-required-toggle input[type="checkbox"],
.checklist-add-options input[type="checkbox"] {
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  margin: 0;
  accent-color: var(--sr-primary);
}

.checklist-required-toggle {
  grid-template-columns: 16px minmax(0, 1fr);
  justify-content: start;
  font-weight: 650 !important;
}
.planned-action,
[data-action$="-placeholder"] {
  border-color: #d99a23 !important;
  background: #fff8e8 !important;
  color: #8a5a00 !important;
}

.user-actions-cell {
  position: relative;
}

.user-row-menu {
  position: absolute;
  z-index: 30;
  right: 42px;
  top: 8px;
  width: 190px;
  padding: 6px;
  display: grid;
  gap: 4px;
  background: #fff;
  border: 1px solid var(--border, #d7e2e8);
  box-shadow: 0 10px 26px rgba(15, 43, 64, 0.14);
}

.user-row-menu button {
  width: 100%;
  justify-content: flex-start;
}

.benchmark-create-panel {
  margin-bottom: 16px;
}

.benchmark-create-form {
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(360px, 1.4fr) auto;
  gap: 12px;
  align-items: end;
}

.benchmark-create-form label,
.benchmark-create-form textarea {
  min-width: 0;
}

.test-ticket-result-code {
  min-height: 180px;
  margin: 0;
  padding: 18px;
  overflow: auto;
  background: #eef5f6;
  border: 1px solid var(--border, #d7e2e8);
}

.test-ticket-comparison {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.test-ticket-comparison article,
.test-ticket-history > div {
  padding: 14px;
  display: grid;
  gap: 6px;
  border: 1px solid var(--border, #d7e2e8);
}

.test-ticket-history {
  display: grid;
  gap: 8px;
}

@media (max-width: 1100px) {
  .benchmark-create-form,
  .test-ticket-comparison {
    grid-template-columns: 1fr;
  }
}

/* Open ticket: compact work-package registry. */
.ticket-packages-view {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.ticket-packages-summary {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(130px, .8fr) minmax(130px, .8fr) minmax(115px, .65fr) minmax(220px, 1.25fr) minmax(160px, .9fr) minmax(160px, .9fr) 42px;
  align-items: stretch;
  min-width: 1120px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: var(--surface);
}

.ticket-package-summary-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 14px 16px;
  border-right: 1px solid var(--border);
}

.ticket-package-summary-item > span:last-child,
.ticket-package-summary-date > span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.ticket-package-summary-item small,
.ticket-package-summary-item em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.25;
}

.ticket-package-summary-item strong {
  overflow: hidden;
  color: var(--text);
  font-size: 13px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-package-summary-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  color: var(--accent);
}

.ticket-package-summary-icon .icon-svg {
  width: 20px;
  height: 20px;
}

.ticket-package-summary-progress {
  display: grid;
  grid-template-columns: auto minmax(70px, 1fr) auto;
  gap: 9px;
}

.ticket-package-summary-progress > span {
  display: grid;
  gap: 3px;
}

.ticket-package-summary-progress b {
  font-size: 12px;
}

.ticket-package-progress {
  height: 7px;
  overflow: hidden;
  border-radius: 4px;
  background: var(--surface-soft);
}

.ticket-package-progress > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--accent);
}

.ticket-packages-summary > .icon-button {
  align-self: center;
  justify-self: center;
  width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
}

.ticket-packages-registry {
  padding: 0;
  overflow: hidden;
}

.ticket-packages-registry-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px 10px;
}

.ticket-packages-registry h3,
.ticket-package-bottom-grid h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.3;
}

.ticket-packages-registry-actions {
  justify-content: flex-end;
  gap: 7px;
}

.ticket-packages-registry-actions button,
.ticket-package-filterbar button {
  min-height: 34px;
  padding: 7px 12px;
  font-size: 12px;
}

.ticket-packages-registry-actions button.is-active,
.ticket-package-filterbar button.is-active {
  border-color: var(--accent);
  color: var(--accent);
  background: var(--accent-soft);
}

.ticket-package-filterbar {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 0 16px 10px;
}

.ticket-packages-table-wrap {
  width: 100%;
  overflow-x: auto;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.ticket-packages-table {
  width: 100%;
  min-width: 1180px;
  border-collapse: collapse;
  table-layout: fixed;
}

.ticket-packages-table th,
.ticket-packages-table td {
  padding: 10px 11px;
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
  text-align: left;
}

.ticket-packages-table th {
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
}

.ticket-packages-table td {
  color: var(--text);
  font-size: 11px;
}

.ticket-packages-table tbody tr:last-child td {
  border-bottom: 0;
}

.ticket-packages-table th:nth-child(1) { width: 18%; }
.ticket-packages-table th:nth-child(2) { width: 12%; }
.ticket-packages-table th:nth-child(3) { width: 9%; }
.ticket-packages-table th:nth-child(4) { width: 12%; }
.ticket-packages-table th:nth-child(5) { width: 6%; }
.ticket-packages-table th:nth-child(6) { width: 10%; }
.ticket-packages-table th:nth-child(7),
.ticket-packages-table th:nth-child(8) { width: 10%; }
.ticket-packages-table th:nth-child(9) { width: 13%; }

.ticket-packages-table td > strong,
.ticket-packages-table td > span,
.ticket-packages-table td > small {
  display: block;
}

.ticket-packages-table td > small,
.ticket-package-department small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.25;
}

.ticket-package-department {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
}

.ticket-package-department > span:last-child {
  min-width: 0;
}

.ticket-package-department strong,
.ticket-package-department small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-package-department-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--accent);
}

.ticket-package-department-icon .icon-svg {
  width: 19px;
  height: 19px;
}

.ticket-package-department-icon.tone-1 { color: #7c3aed; }
.ticket-package-department-icon.tone-2 { color: #d97706; }
.ticket-package-department-icon.tone-3 { color: #2563eb; }
.ticket-package-department-icon.tone-4 { color: #0f766e; }

.ticket-package-progress-cell {
  display: grid;
  grid-template-columns: 34px minmax(52px, 1fr);
  align-items: center;
  gap: 7px;
}

.ticket-package-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
}

.ticket-package-row-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
}

.ticket-package-row-actions .icon-svg {
  width: 15px;
  height: 15px;
}

.ticket-packages-registry-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 16px;
  color: var(--muted);
  font-size: 11px;
}

.ticket-packages-registry-foot label {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ticket-packages-registry-foot select {
  width: 66px;
  min-height: 31px;
  padding: 4px 8px;
}

.ticket-package-bottom-grid {
  display: grid;
  grid-template-columns: minmax(245px, .9fr) minmax(320px, 1.15fr) minmax(320px, 1.15fr);
  gap: 10px;
}

.ticket-package-bottom-grid > .panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 14px 16px;
}

.ticket-package-info-card dl {
  display: grid;
  gap: 8px;
  margin: 14px 0;
}

.ticket-package-info-card dl > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.ticket-package-info-card dt {
  color: var(--muted);
  font-size: 11px;
}

.ticket-package-info-card dd {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  text-align: right;
}

.ticket-package-info-card > button,
.ticket-package-activity-card > button {
  margin-top: auto;
}

.ticket-package-next-list,
.ticket-package-activity-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.ticket-package-next-list > div,
.ticket-package-activity-list > div {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  padding: 9px 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
}

.ticket-package-next-list > div > span,
.ticket-package-activity-list > div > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  color: var(--accent);
}

.ticket-package-next-list .icon-svg {
  width: 18px;
  height: 18px;
}

.ticket-package-next-list p,
.ticket-package-activity-list p {
  display: grid;
  gap: 3px;
  min-width: 0;
  margin: 0;
}

.ticket-package-next-list strong,
.ticket-package-activity-list strong {
  font-size: 11px;
  line-height: 1.25;
}

.ticket-package-next-list small,
.ticket-package-activity-list small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.35;
}

.ticket-package-activity-list > div {
  border: 0;
  border-radius: 0;
  padding: 4px 0;
}

.ticket-package-activity-list > div > span {
  border-radius: 50%;
  color: #fff;
  background: var(--accent);
  font-size: 10px;
  font-weight: 800;
}

.ticket-package-activity-list > div > span.info {
  background: #2563eb;
}

.ticket-package-bottom-grid button .icon-svg {
  width: 14px;
  height: 14px;
}

.ticket-packages-view .danger {
  color: var(--danger);
}

.ticket-packages-view .success {
  color: var(--success);
}

@media (max-width: 1450px) {
  .ticket-packages-view {
    overflow-x: auto;
  }

  .ticket-package-bottom-grid {
    min-width: 1120px;
  }
}

/* Ticket history */
.ticket-history-view {
  display: grid;
  gap: 12px;
}

.ticket-history-panel,
.ticket-history-comments {
  padding: 16px;
  border-radius: 8px;
}

.ticket-history-panel > h3,
.ticket-history-comments > h3 {
  margin: 0 0 10px;
  font-size: 16px;
  line-height: 1.3;
}

.ticket-history-timeline {
  display: grid;
}

.ticket-history-event {
  position: relative;
  display: grid;
  grid-template-columns: 22px 32px minmax(0, 1fr) minmax(116px, auto);
  gap: 10px;
  align-items: center;
  min-height: 56px;
  padding: 7px 2px;
  border-bottom: 1px solid var(--line);
}

.ticket-history-event:last-child {
  border-bottom: 0;
}

.ticket-history-rail {
  position: relative;
  align-self: stretch;
  display: grid;
  place-items: center;
}

.ticket-history-rail::after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: -29px;
  left: 50%;
  width: 1px;
  background: var(--line);
  transform: translateX(-50%);
}

.ticket-history-event:last-child .ticket-history-rail::after {
  display: none;
}

.ticket-history-dot {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  color: #fff;
  background: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent);
}

.ticket-history-dot svg {
  width: 8px;
  height: 8px;
  stroke-width: 3;
}

.ticket-history-event-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  color: var(--ink);
}

.ticket-history-event-icon svg {
  width: 21px;
  height: 21px;
  stroke-width: 1.8;
}

.ticket-history-event.type-checklist .ticket-history-event-icon,
.ticket-history-event.type-done .ticket-history-event-icon,
.ticket-history-event.type-final .ticket-history-event-icon {
  color: var(--accent);
}

.ticket-history-event-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.ticket-history-event-copy strong {
  font-size: 14px;
  line-height: 1.3;
}

.ticket-history-event-copy > span {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

.ticket-history-event > time {
  justify-self: end;
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
}

.ticket-history-comment-list {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
}

.ticket-history-comment {
  display: grid;
  grid-template-columns: minmax(120px, auto) minmax(0, 1fr) auto;
  gap: 12px;
  align-items: baseline;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
}

.ticket-history-comment > span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-history-comment time {
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.ticket-history-comment-form {
  display: grid;
  gap: 8px;
}

.ticket-history-comment-form textarea {
  width: 100%;
  min-height: 46px;
  max-height: 140px;
  resize: vertical;
}

.ticket-history-comment-form button {
  width: 100%;
}

@media (max-width: 900px) {
  .ticket-history-event {
    grid-template-columns: 22px 30px minmax(0, 1fr);
  }

  .ticket-history-event > time {
    grid-column: 3;
    justify-self: start;
  }

  .ticket-history-comment {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* Ticket workspace: client clarifications */
.ticket-clarifications-panel {
  display: flex;
  flex-direction: column;
  min-height: clamp(520px, 68vh, 760px);
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
}

.ticket-clarifications-head {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  justify-content: space-between;
}

.ticket-clarifications-head > div:first-child {
  min-width: 0;
}

.ticket-clarifications-head h3 {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 0;
  font-size: 17px;
  line-height: 1.35;
}

.ticket-clarifications-head h3 > svg {
  width: 23px;
  height: 23px;
  color: var(--text);
  stroke-width: 1.8;
}

.ticket-clarifications-head p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.ticket-clarification-composer {
  display: grid;
  gap: 12px;
  margin-top: 18px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
}

.ticket-clarification-composer[hidden] {
  display: none;
}

.ticket-clarification-composer-head {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
}

.ticket-clarification-composer-head > div {
  display: grid;
  gap: 3px;
}

.ticket-clarification-composer-head span {
  color: var(--muted);
  font-size: 12px;
}

.ticket-clarification-fields {
  display: grid;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  gap: 12px;
  align-items: end;
}

.ticket-clarification-fields label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
}

.ticket-clarification-fields textarea {
  min-height: 76px;
  resize: vertical;
}

.ticket-clarification-composer-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.ticket-clarification-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-height: 390px;
  padding: 48px 20px;
  text-align: center;
}

.ticket-clarification-empty-inner {
  display: flex;
  width: min(620px, 100%);
  flex-direction: column;
  align-items: center;
}

.ticket-clarification-empty-icon {
  width: 86px;
  height: 86px;
  margin-bottom: 18px;
  color: var(--muted);
  stroke-width: 1.45;
}

.ticket-clarification-empty-inner > strong {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.35;
}

.ticket-clarification-empty p {
  margin: 0 0 22px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.55;
}

.ticket-clarification-list {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.ticket-clarification-card {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 7px;
}

.ticket-clarification-marker {
  color: var(--accent);
}

.ticket-clarification-marker svg {
  width: 21px;
  height: 21px;
}

.ticket-clarification-copy {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.ticket-clarification-card-head {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

.ticket-clarification-card-head strong,
.ticket-clarification-copy p {
  overflow-wrap: anywhere;
}

.ticket-clarification-meta {
  color: var(--muted);
  font-size: 12px;
}

.ticket-clarification-copy p {
  margin: 0;
  line-height: 1.5;
}

.ticket-clarification-answer,
.ticket-clarification-error {
  padding: 10px 12px;
  border-left: 3px solid var(--accent);
  border-radius: 4px;
  background: var(--surface-soft);
}

.ticket-clarification-answer span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 12px;
}

.ticket-clarification-error {
  border-left-color: var(--danger);
  color: var(--danger);
}

.ticket-clarification-card-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

@media (max-width: 900px) {
  .ticket-clarifications-panel {
    min-height: 520px;
    padding: 16px;
  }

  .ticket-clarifications-head,
  .ticket-clarification-card-head {
    align-items: stretch;
    flex-direction: column;
  }

  .ticket-clarification-fields {
    grid-template-columns: 1fr;
  }

  .ticket-clarification-card {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .ticket-clarification-actions {
    grid-column: 2;
    justify-content: flex-start;
  }
}

/* Ticket workspace: departments */
.ticket-departments-view {
  display: grid;
  gap: 20px;
  color: var(--ink);
}

.ticket-department-summary-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 102px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
}

.ticket-department-summary-item {
  display: flex;
  align-items: center;
  gap: 24px;
  min-width: 0;
  padding: 22px 34px;
}

.ticket-department-summary-item + .ticket-department-summary-item {
  border-left: 1px solid var(--line);
}

.ticket-department-summary-item > .icon-svg {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  color: var(--accent);
}

.ticket-department-summary-item span {
  display: grid;
  gap: 6px;
}

.ticket-department-summary-item small {
  color: var(--muted);
  font-size: 14px;
}

.ticket-department-summary-item strong {
  font-size: 21px;
  line-height: 1;
}

.ticket-department-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.ticket-department-card {
  min-width: 0;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
}

.ticket-department-card header {
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) minmax(210px, 0.72fr) auto;
  align-items: center;
  gap: 14px;
}

.ticket-department-card header > strong {
  overflow: hidden;
  font-size: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticket-department-state-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  color: var(--accent);
}

.ticket-department-state-icon .icon-svg {
  width: 31px;
  height: 31px;
}

.ticket-department-card.waiting .ticket-department-state-icon {
  color: #e79822;
}

.ticket-department-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-height: 30px;
  padding: 4px 13px;
  border: 1px solid #92d8c8;
  border-radius: 999px;
  background: #ecf9f5;
  color: #087c69;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.ticket-department-status.waiting {
  border-color: #f2c881;
  background: #fff7e8;
  color: #aa6500;
}

.ticket-department-details {
  display: grid;
  gap: 13px;
  margin-top: 28px;
}

.ticket-department-details > div {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  color: var(--ink);
}

.ticket-department-details .icon-svg {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  color: var(--muted);
}

.ticket-department-card-progress {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

.ticket-department-progress {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.ticket-department-progress > span {
  min-width: 34px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.ticket-department-progress-track {
  position: relative;
  width: 100%;
  height: 8px;
  overflow: hidden;
  border-radius: 4px;
  background: #e7ebef;
}

.ticket-department-progress-track::after {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0, transparent calc(25% - 2px), rgba(255, 255, 255, .9) calc(25% - 2px), rgba(255, 255, 255, .9) 25%);
  content: "";
  pointer-events: none;
}

.ticket-department-progress-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--accent);
}

.ticket-department-progress > .icon-svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  color: var(--accent);
}

.ticket-department-progress.compact {
  min-width: 205px;
}

.ticket-department-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.ticket-department-actions button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 14px;
  background: var(--surface-soft);
}

.ticket-department-actions .icon-svg {
  width: 18px;
  height: 18px;
}

.ticket-department-register {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
}

.ticket-department-register h3 {
  margin: 0;
  padding: 20px 22px;
  font-size: 17px;
}

.ticket-department-register .table-wrap {
  overflow-x: auto;
  border: 0;
  border-radius: 0;
}

.ticket-department-register table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
}

.ticket-department-register th,
.ticket-department-register td {
  padding: 15px 20px;
  border-top: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.ticket-department-register th {
  background: var(--surface-soft);
  color: var(--muted);
  font-size: 13px;
}

.ticket-department-register td:nth-child(4) {
  width: 34%;
}

.ticket-department-name-state {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.ticket-department-name-state .icon-svg {
  width: 24px;
  height: 24px;
  color: var(--accent);
}

@media (max-width: 1120px) {
  .ticket-department-card header {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .ticket-department-card header .ticket-department-progress {
    grid-column: 2 / -1;
    grid-row: 2;
  }
}

@media (max-width: 820px) {
  .ticket-department-summary-strip,
  .ticket-department-cards {
    grid-template-columns: 1fr;
  }

  .ticket-department-summary-item + .ticket-department-summary-item {
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}

@media (max-width: 560px) {
  .ticket-department-summary-item,
  .ticket-department-card {
    padding: 16px;
  }

  .ticket-department-card header {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .ticket-department-card header .ticket-department-status,
  .ticket-department-card header .ticket-department-progress {
    grid-column: 1 / -1;
  }

  .ticket-department-card-progress {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
