:root {
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #0d0f16;
  color: #f4f5f8;
  --surface: #161821;
  --surface-2: #1d202c;
  --surface-3: #10121a;
  --border: #34384a;
  --border-soft: #292d3d;
  --text: #f4f5f8;
  --muted: #abb0bf;
  --primary: #7c62eb;
  --primary-strong: #927cf2;
  --success: #76dfa1;
  --danger: #ff9b9b;
  --focus: #b7a8ff;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { min-height: 100%; }
body {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: radial-gradient(circle at top, #252043 0, #11131a 48%);
  color: var(--text);
}
button, input, select { font: inherit; }
button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--focus) 55%, transparent);
  outline-offset: 2px;
}
a { color: #b8aaff; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 8px; font-size: clamp(1.55rem, 3vw, 1.95rem); }
h2 { margin-bottom: 4px; font-size: 1.15rem; }
h3 { margin-bottom: 4px; }
p { color: var(--muted); line-height: 1.55; }

.card {
  width: min(560px, 100%);
  padding: 32px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(22, 24, 33, .96);
  box-shadow: 0 24px 60px rgba(0, 0, 0, .35);
}
label { display: block; margin: 24px 0 8px; font-weight: 650; }
input, select {
  width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid #4a4f63;
  border-radius: 10px;
  background: var(--surface-3);
  color: #fff;
}
button, .button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 16px;
  padding: 12px 16px;
  border: 0;
  border-radius: 10px;
  background: var(--primary);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
}
button:hover, .button:hover { filter: brightness(1.08); }
button:disabled { cursor: not-allowed; opacity: .55; }
.secondary { background: #303447; }
.compact { width: auto; min-height: 38px; margin: 0; padding: 9px 13px; }


.status {
  min-height: 24px;
  margin: 14px 0;
  color: #d9dbe4;
  overflow-wrap: anywhere;
  font-size: .92rem;
}
.error { color: var(--danger); }
.success { color: var(--success); }
pre {
  overflow: auto;
  padding: 16px;
  border-radius: 10px;
  background: #0d0f15;
  color: #dfe2ef;
  white-space: pre-wrap;
}
.meta { font-size: .9rem; }
.muted { color: var(--muted); }
.eyebrow {
  margin-bottom: 5px;
  color: #9989e9;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.dashboard-page {
  display: block;
  padding: 0;
  background: #0d0f16;
}

.session-summary { display: grid; text-align: right; }
.session-summary span { color: var(--muted); font-size: .82rem; }
.live-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1px solid #2e6847;
  border-radius: 999px;
  background: #173523;
  color: #91ecb3;
  font-size: .8rem;
  font-weight: 750;
}
.live-badge span { font-size: .7rem; }
.vault-layout {
  display: grid;
  grid-template-columns: minmax(280px, 350px) minmax(0, 1fr);
  gap: 18px;
  max-width: 1800px;
  min-height: calc(100vh - 82px);
  margin: 0 auto;
  padding: 18px;
}
.panel {
  min-width: 0;
  border: 1px solid var(--border-soft);
  border-radius: 16px;
  background: var(--surface);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
}
.catalog-panel {
  align-self: start;
  position: sticky;
  top: 100px;
  max-height: calc(100vh - 118px);
  display: flex;
  flex-direction: column;
  padding: 18px;
}
.workspace-panel { min-height: calc(100vh - 118px); padding: 22px; }
.panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.icon-button {
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--border);
  background: var(--surface-2);
  font-size: 1.25rem;
}
.search-form, .inline-fields {
  display: flex;
  align-items: center;
  gap: 8px;
}
.search-form { margin-top: 14px; }
.search-form input, .inline-fields input { flex: 1; }
.catalog-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
}
.catalog-options label, .row-options label, .lookup-form label {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
}
.catalog-options select { width: 90px; min-height: 36px; }
.loading-block {
  padding: 13px;
  border: 1px dashed #4b5065;
  border-radius: 10px;
  color: var(--muted);
  text-align: center;
  font-size: .9rem;
}
.table-list {
  flex: 1;
  min-height: 80px;
  margin: 0;
  padding: 0 4px 0 0;
  overflow: auto;
  list-style: none;
}
.table-list li + li { margin-top: 7px; }
.table-list-item {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 12px;
  border: 1px solid transparent;
  background: var(--surface-2);
  text-align: left;
}
.table-list-item:hover { border-color: #545a72; }
.table-list-item.active {
  border-color: var(--primary-strong);
  background: #292342;
}
.table-list-item span { color: #b9acd9; font-size: .78rem; }
.table-list-item small {
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.catalog-empty { padding: 18px 8px; color: var(--muted); text-align: center; }
.pagination { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.pagination span { color: var(--muted); font-size: .86rem; }
.compact-pagination { justify-content: space-between; margin-top: 14px; }
.empty-state {
  min-height: 55vh;
  display: grid;
  place-content: center;
  justify-items: center;
  padding: 30px;
  text-align: center;
}
.empty-state p { max-width: 520px; }
.empty-icon { font-size: 3.4rem; color: #7662c9; margin-bottom: 15px; }
.workspace-heading { padding-bottom: 18px; border-bottom: 1px solid var(--border-soft); }
.metadata-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}
.metadata-grid div {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-2);
}
.metadata-grid dt { color: var(--muted); font-size: .75rem; }
.metadata-grid dd { margin: 5px 0 0; overflow-wrap: anywhere; font-size: .9rem; }
.schema-details {
  margin-bottom: 18px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
}
.schema-details summary { padding: 12px 14px; cursor: pointer; font-weight: 700; }
.schema-columns { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 14px 12px; }
.schema-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border: 1px solid #454a5e;
  border-radius: 8px;
  background: var(--surface-2);
  font-size: .78rem;
}
.schema-chip small { color: var(--muted); }
.schema-chip em {
  padding: 2px 5px;
  border-radius: 5px;
  background: #37304f;
  color: #c9bcff;
  font-style: normal;
  font-size: .68rem;
}
.code-block { max-height: 360px; margin: 0 14px 14px; font-size: .78rem; }
.rows-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin: 18px 0 8px;
}
.lookup-form { flex: 1; max-width: 620px; }
.lookup-form label { margin-bottom: 7px; }
.row-options { display: flex; align-items: center; gap: 8px; }
.row-options select { width: auto; min-width: 100px; }
.lookup-result {
  margin: 16px 0;
  padding: 16px;
  border: 1px solid #62568c;
  border-radius: 12px;
  background: #201c31;
}
.key-value-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.key-value-item {
  min-width: 0;
  padding: 10px;
  border: 1px solid #403951;
  border-radius: 8px;
  background: #171421;
}
.key-value-item strong { display: block; margin-bottom: 5px; color: #b8aaff; font-size: .76rem; }
.key-value-item span { display: block; overflow-wrap: anywhere; white-space: pre-wrap; font-size: .86rem; }
.data-grid-wrapper {
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
}
.data-grid { width: 100%; border-collapse: separate; border-spacing: 0; font-size: .84rem; }
.data-grid th, .data-grid td {
  max-width: 420px;
  padding: 10px 12px;
  border-right: 1px solid var(--border-soft);
  border-bottom: 1px solid var(--border-soft);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
.data-grid th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #242735;
  color: #d9d3f5;
}
.data-grid tr:last-child td { border-bottom: 0; }
.data-grid th:last-child, .data-grid td:last-child { border-right: 0; }
.data-grid tbody tr:hover td { background: #1c1f2a; }
.data-grid .reference-column { background: #221e32; font-weight: 700; }
.empty-table { padding: 34px; color: var(--muted); text-align: center; }
.rows-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 13px;
}
.query-meta { margin: 0; color: var(--muted); font-size: .78rem; }

@media (max-width: 1100px) {
  .vault-layout { grid-template-columns: 1fr; }
  .catalog-panel { position: static; max-height: none; }
  .table-list { max-height: 360px; }
  .metadata-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rows-toolbar { align-items: stretch; flex-direction: column; }
  .lookup-form { max-width: none; }
  .key-value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  body { padding: 14px; }
  .dashboard-page { padding: 0; }
  
  
  .session-summary { flex: 1; text-align: left; }
  .vault-layout { padding: 10px; }
  .workspace-panel, .catalog-panel { padding: 14px; border-radius: 12px; }
  .metadata-grid, .key-value-grid { grid-template-columns: 1fr; }
  .row-options { flex-wrap: wrap; }
  .rows-footer { align-items: flex-start; flex-direction: column; }
  .pagination { width: 100%; justify-content: space-between; }
  .search-form, .inline-fields { align-items: stretch; flex-direction: column; }
  .search-form .button, .inline-fields .button { width: 100%; }
}

/* V2.5 — visualização semântica de referências Genesys */
.enrichment-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid var(--border-soft);
  border-radius: 8px;
  background: var(--surface-3);
  color: var(--text);
  white-space: nowrap;
  cursor: pointer;
}
.enrichment-toggle input { width: auto; margin: 0; accent-color: #8f7cff; }
.column-title { display: block; }
.column-semantic {
  display: block;
  margin-top: 3px;
  color: #a99de0;
  font-size: .66rem;
  font-weight: 500;
  white-space: nowrap;
}
.cell-primary {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cell-secondary {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: #aea6cc;
  font-size: .72rem;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.resolution-warning {
  display: inline-block;
  margin-top: 5px;
  padding: 2px 5px;
  border: 1px solid #645d48;
  border-radius: 5px;
  background: #2c291f;
  color: #dbc98b;
  font-size: .65rem;
  white-space: nowrap;
}
.semantic-cell { min-width: 220px; }
.lookup-value { min-width: 0; }
.key-value-item.reference-item {
  border-color: #665a91;
  background: #211d31;
}
.data-grid th.reference-column {
  position: sticky;
  left: 0;
  z-index: 4;
  min-width: 170px;
  box-shadow: 2px 0 0 var(--border-soft);
}
.data-grid td.reference-column {
  position: sticky;
  left: 0;
  z-index: 1;
  min-width: 170px;
  box-shadow: 2px 0 0 var(--border-soft);
}
.data-grid tbody tr:hover td.reference-column { background: #29243a; }

@media (max-width: 680px) {
  .enrichment-toggle { width: 100%; justify-content: center; }
}

/* V2.6 — schema manual persistido */
.workspace-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.schema-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--border-soft);
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 700;
  white-space: nowrap;
}
.schema-badge.configured {
  border-color: #426c5c;
  background: #1c3029;
  color: #9ed4bc;
}
.schema-badge.missing {
  border-color: #735f3f;
  background: #30281b;
  color: #dfc38b;
}
.schema-badge.pending {
  background: var(--surface-3);
  color: var(--muted);
}
.configured-label,
.unconfigured-label {
  display: inline-block;
  margin-top: 4px;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: .64rem;
  font-weight: 700;
  white-space: nowrap;
}
.configured-label {
  background: #1c3029;
  color: #9ed4bc;
}
.unconfigured-label {
  background: #30281b;
  color: #dfc38b;
}

.schema-dialog {
  width: min(1180px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  padding: 0;
  border: 1px solid var(--border-soft);
  border-radius: 14px;
  background: var(--surface-2);
  color: var(--text);
  box-shadow: 0 28px 80px rgb(0 0 0 / 45%);
}
.schema-dialog::backdrop { background: rgb(7 6 13 / 76%); }
.schema-form { display: flex; flex-direction: column; max-height: calc(100vh - 34px); }
.schema-dialog-header,
.schema-dialog-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--border-soft);
}
.schema-dialog-footer {
  border-top: 1px solid var(--border-soft);
  border-bottom: 0;
}
.schema-dialog-footer-actions { display: flex; gap: 8px; }
.schema-guidance {
  margin: 14px 20px 0;
  padding: 12px 14px;
  border: 1px solid #4e4868;
  border-radius: 10px;
  background: #211d31;
}
.schema-guidance p { margin: 5px 0 0; color: var(--muted); }
.schema-editor-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 20px;
}
.schema-editor-toolbar .status { margin: 0; }
.schema-editor-scroll {
  min-height: 260px;
  padding: 0 20px 18px;
  overflow: auto;
}
.schema-editor-head,
.schema-editor-row {
  display: grid;
  grid-template-columns: 72px minmax(150px, 1.15fr) minmax(160px, 1.2fr) 140px minmax(240px, 1.7fr) 90px 58px;
  gap: 8px;
  align-items: center;
  min-width: 1020px;
}
.schema-editor-head {
  position: sticky;
  top: 0;
  z-index: 3;
  padding: 9px 10px;
  border: 1px solid var(--border-soft);
  border-radius: 8px 8px 0 0;
  background: var(--surface-3);
  color: var(--muted);
  font-size: .7rem;
  font-weight: 700;
  text-transform: uppercase;
}
.schema-editor-row {
  padding: 9px 10px;
  border-right: 1px solid var(--border-soft);
  border-bottom: 1px solid var(--border-soft);
  border-left: 1px solid var(--border-soft);
  background: var(--surface-2);
}
.schema-editor-row:last-child { border-radius: 0 0 8px 8px; }
.schema-editor-row input,
.schema-editor-row select { width: 100%; min-width: 0; }
.schema-key-row { background: #211d31; }
.schema-visible-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
}
.schema-visible-toggle input { width: auto; }
.schema-remove-button { justify-self: center; }
.button.danger {
  border-color: #7a414d;
  background: #3a2026;
  color: #f2b1bd;
}
.button.danger:hover { background: #4a252e; }
.enrichment-toggle:has(input:disabled) {
  cursor: not-allowed;
  opacity: .58;
}

@media (max-width: 760px) {
  .workspace-actions { justify-content: flex-start; }
  .schema-dialog-header,
  .schema-dialog-footer,
  .schema-editor-toolbar { align-items: stretch; flex-direction: column; }
  .schema-dialog-footer-actions { width: 100%; }
  .schema-dialog-footer-actions .button { flex: 1; }
}

/* Interactions V2.8 */

.module-link {
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--muted);
  font-weight: 700;
  text-decoration: none;
}
.module-link:hover { color: var(--text); background: var(--surface-2); }
.module-link.active { color: #fff; background: var(--primary); }
.storage-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #446655;
  border-radius: 999px;
  color: var(--success);
  background: #17271f;
  font-size: .78rem;
  font-weight: 800;
}
.interactions-page { overflow-x: hidden; }
.interactions-shell {
  width: 100%;
  display: grid;
  gap: 14px;
  padding: 18px;
}
.interaction-toolbar,
.interaction-results { min-width: 0; }
.interaction-title-row,
.results-header,
.results-footer,
.filter-actions-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.interaction-title-row { padding: 18px 20px 8px; }
.toolbar-actions,
.source-actions,
.pagination,
.drawer-header-actions,
.dialog-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.button.accent { background: linear-gradient(135deg, #6e52df, #8d6bf2); }
.interaction-filter-form { padding: 8px 20px 18px; }
.filter-primary-grid,
.advanced-filter-grid {
  display: grid;
  gap: 12px;
  align-items: end;
}
.filter-primary-grid {
  grid-template-columns: 1.15fr 1.15fr minmax(220px, 1.7fr) .9fr .8fr;
}
.advanced-filter-grid {
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--border-soft);
}
.filter-primary-grid label,
.advanced-filter-grid label {
  margin: 0;
  font-size: .78rem;
  color: var(--muted);
}
.filter-primary-grid label > span,
.advanced-filter-grid label > span {
  display: block;
  margin-bottom: 6px;
}
.checkbox-field {
  display: flex !important;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface-3);
}
.checkbox-field input { width: auto; min-height: auto; }
.checkbox-field span { margin: 0 !important; color: var(--text); }
.filter-actions-row { margin-top: 14px; }
.load-progress-area {
  min-width: 250px;
  display: grid;
  gap: 4px;
  justify-items: end;
}
.load-progress-area progress { width: 100%; height: 8px; }
.result-summary-cards {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.mini-stat {
  min-width: 112px;
  padding: 10px 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
}
.mini-stat span {
  display: block;
  color: var(--muted);
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.mini-stat strong { display: block; margin-top: 3px; font-size: .95rem; }
.results-header { padding: 14px 16px; border-bottom: 1px solid var(--border-soft); }
.results-header .status { margin: 0; text-align: right; }
.interaction-grid-wrapper {
  width: 100%;
  min-height: 360px;
  overflow: auto;
}
.interaction-grid {
  width: max-content;
  min-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: .82rem;
}
.interaction-grid th,
.interaction-grid td {
  max-width: 300px;
  padding: 10px 12px;
  border-right: 1px solid var(--border-soft);
  border-bottom: 1px solid var(--border-soft);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
.interaction-grid th {
  position: sticky;
  top: 0;
  z-index: 3;
  background: #171a24;
  color: #d7d9e5;
  font-size: .7rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.interaction-grid tbody tr { cursor: pointer; background: var(--surface); }
.interaction-grid tbody tr:nth-child(even) { background: #181b25; }
.interaction-grid tbody tr:hover,
.interaction-grid tbody tr:focus { background: #28243a; outline: none; }
.conversation-id-cell {
  display: block;
  max-width: 190px;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #c5baff;
}
.interaction-status-badge {
  display: inline-flex;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: .7rem;
  font-weight: 800;
}
.interaction-status-badge.finalized { background: #193328; color: #83e6ad; }
.interaction-status-badge.active { background: #3a3020; color: #f0c77f; }
.results-footer { padding: 12px 16px; border-top: 1px solid var(--border-soft); }
.interaction-drawer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 50;
  width: min(860px, 94vw);
  height: 100vh;
  display: grid;
  grid-template-rows: auto auto auto 1fr;
  border-left: 1px solid var(--border);
  background: #12141c;
  box-shadow: -22px 0 60px rgba(0, 0, 0, .45);
  transform: translateX(102%);
  transition: transform .22s ease;
}
.interaction-drawer.open { transform: translateX(0); }
.drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: rgba(4, 5, 10, .62);
  backdrop-filter: blur(2px);
}
.drawer-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--border-soft);
}
.copy-id-button {
  width: auto;
  max-width: 520px;
  min-height: auto;
  margin: 5px 0 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #b9adff;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .76rem;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.detail-tabs {
  display: flex;
  gap: 4px;
  padding: 8px 12px;
  overflow-x: auto;
  border-bottom: 1px solid var(--border-soft);
  background: var(--surface-3);
}
.detail-tab {
  width: auto;
  min-height: 34px;
  margin: 0;
  padding: 7px 10px;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  font-size: .78rem;
}
.detail-tab.active { background: #312a4d; color: #fff; }
.detail-content { min-height: 0; padding: 16px 20px 36px; overflow: auto; }
.detail-kv-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
.detail-kv-grid div {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface);
}
.detail-kv-grid dt {
  color: var(--muted);
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
}
.detail-kv-grid dd {
  margin: 5px 0 0;
  overflow-wrap: anywhere;
  color: var(--text);
}
.detail-table-wrapper { overflow: auto; border: 1px solid var(--border-soft); border-radius: 10px; }
.detail-table { width: 100%; border-collapse: collapse; font-size: .8rem; }
.detail-table th,
.detail-table td { padding: 9px 10px; border-bottom: 1px solid var(--border-soft); text-align: left; vertical-align: top; }
.detail-table th { position: sticky; top: 0; background: var(--surface-3); color: var(--muted); }
.interaction-timeline { position: relative; display: grid; gap: 10px; margin: 0; padding: 0 0 0 22px; list-style: none; }
.interaction-timeline::before { content: ""; position: absolute; top: 7px; bottom: 7px; left: 7px; width: 2px; background: #433a67; }
.interaction-timeline li { position: relative; display: grid; gap: 4px; padding: 11px 12px; border: 1px solid var(--border-soft); border-radius: 10px; background: var(--surface); }
.interaction-timeline li::before { content: ""; position: absolute; top: 16px; left: -20px; width: 10px; height: 10px; border-radius: 50%; background: var(--primary-strong); box-shadow: 0 0 0 4px #1f1b31; }
.interaction-timeline span { color: var(--muted); font-size: .78rem; }
.interaction-json { max-height: 480px; font-size: .74rem; white-space: pre; }
.columns-dialog {
  width: min(520px, calc(100vw - 32px));
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--surface);
  color: var(--text);
}
.columns-dialog::backdrop { background: rgba(4, 5, 10, .68); }
.columns-form { padding: 16px; }
.columns-options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin: 12px 0 18px; }
.column-option {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 9px 10px;
  border: 1px solid var(--border-soft);
  border-radius: 9px;
  background: var(--surface-3);
  font-size: .82rem;
}
.column-option input { width: auto; min-height: auto; }
.dialog-actions { justify-content: space-between; }

@media (max-width: 1120px) {
  
  
  .filter-primary-grid { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
  .advanced-filter-grid { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
  .detail-kv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .interactions-shell { padding: 10px; }
  .interaction-title-row,
  .results-header,
  .results-footer,
  .filter-actions-row,
  .drawer-header { align-items: stretch; flex-direction: column; }
  .filter-primary-grid,
  .advanced-filter-grid { grid-template-columns: 1fr; }
  .load-progress-area { width: 100%; min-width: 0; justify-items: stretch; }
  .detail-kv-grid { grid-template-columns: 1fr; }
  .columns-options { grid-template-columns: 1fr; }
  .interaction-drawer { width: 100vw; }
}

/* V2.8 — política de retenção e proteção de consumo */
.storage-settings-dialog {
  width: min(920px, calc(100vw - 32px));
  max-height: min(880px, calc(100vh - 32px));
  overflow: auto;
}
.storage-settings-dialog .columns-form {
  display: grid;
  gap: 16px;
}
.storage-policy-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.storage-policy-grid label {
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
}
.storage-policy-grid label > span {
  display: block;
  margin-bottom: 7px;
  color: var(--text);
  font-size: .78rem;
  font-weight: 750;
}
.storage-policy-grid small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  line-height: 1.35;
}
.input-with-suffix {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: var(--surface);
}
.input-with-suffix input {
  min-width: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.input-with-suffix span {
  padding: 0 11px;
  color: var(--muted);
  font-size: .75rem;
  font-weight: 800;
}
.storage-overview {
  padding: 14px;
  border: 1px solid var(--border-soft);
  border-radius: 12px;
  background: #141720;
}
.storage-overview h3 { margin: 0 0 10px; }
.storage-summary-cards { margin-bottom: 10px; }
.storage-summary-cards .mini-stat { flex: 1 1 120px; }
.storage-settings-dialog .status { min-height: 22px; margin: 0; text-align: left; }

@media (max-width: 900px) {
  .storage-policy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .storage-policy-grid { grid-template-columns: 1fr; }
  .storage-settings-dialog { width: calc(100vw - 16px); max-height: calc(100vh - 16px); }
}

/* V2.8.3: feedback visual para lotes inseridos durante a carga paginada. */
.progressive-row {
  animation: progressive-row-enter 180ms ease-out;
}

@keyframes progressive-row-enter {
  from { opacity: 0; transform: translateY(3px); }
  to { opacity: 1; transform: translateY(0); }
}

/* V3.0 — workspace de Interações com familiaridade visual do Analytics Genesys. */

.interactions-workspace {
  display: grid;
  gap: 12px;
  width: min(1900px, 100%);
  margin: 0 auto;
  padding: 14px 18px 24px;
}
.analytics-command-surface { overflow: visible; }
.analytics-view-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px 13px;
  border-bottom: 1px solid var(--border-soft);
}
.analytics-view-header h2 { margin: 0; font-size: 1.35rem; font-weight: 650; }
.analytics-view-header .muted { margin: 4px 0 0; font-size: .82rem; }
.analytics-breadcrumb {
  margin: 0 0 5px;
  color: #6e5a9d !important;
  font-size: .73rem;
  font-weight: 650;
}
.analytics-breadcrumb span { padding: 0 4px; color: #999da6; }
.database-source-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  padding: 8px 10px;
  border: 1px solid #c9dfd3;
  border-radius: 3px;
  background: #f1faf5;
  color: #24623f;
  font-size: .76rem;
  font-weight: 700;
}
.source-dot { width: 8px; height: 8px; border-radius: 50%; background: #258653; }
.view-command-bar,
.filter-actions-row,
.results-header,
.results-footer,
.insights-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.view-command-bar {
  min-height: 52px;
  padding: 7px 14px;
  border-bottom: 1px solid var(--border-soft);
  background: #fbfbfc;
}
.saved-view-controls,
.toolbar-actions,
.source-actions,
.pagination,
.inline-filter-fields,
.drawer-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.compact-field { display: flex; align-items: center; gap: 8px; margin: 0; }
.compact-field span { color: #565b65; font-size: .75rem; font-weight: 650; }
.compact-field select { min-width: 190px; min-height: 34px; padding: 6px 9px; }


.compact-icon { width: 34px; min-width: 34px; height: 34px; }

.date-preset-strip {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 42px;
  padding: 6px 14px;
  border-bottom: 1px solid var(--border-soft);
  background: #fff;
  overflow-x: auto;
}
.date-preset-strip > span:first-child { color: #5b606b; font-size: .75rem; font-weight: 700; }
.date-preset {
  width: auto;
  min-height: 28px;
  margin: 0;
  padding: 4px 9px;
  border: 1px solid transparent;
  border-radius: 3px;
  background: transparent;
  color: #4f535d;
  font-size: .75rem;
  font-weight: 650;
}
.date-preset:hover,
.date-preset.active { border-color: #d3c7ef; background: #f1edf9; color: #4d3196; }
.timezone-label { margin-left: auto; color: #777c86; font-size: .71rem; white-space: nowrap; }

.interaction-filter-form { padding: 12px 14px 10px; }
.genesys-filter-row {
  display: grid;
  grid-template-columns: 180px 180px minmax(220px, 1fr) 145px 92px;
  gap: 10px;
}
.interaction-filter-form label,
.storage-policy-grid label,
.columns-form label { margin: 0; }
.interaction-filter-form label > span,
.columns-form label > span {
  display: block;
  margin-bottom: 4px;
  color: #555a64;
  font-size: .72rem;
  font-weight: 700;
}
.interaction-filter-form input,
.interaction-filter-form select { min-height: 36px; padding: 7px 9px; border-radius: 3px; font-size: .8rem; }
.advanced-filter-panel {
  margin-top: 11px;
  padding: 12px;
  border: 1px solid #dfe1e6;
  border-radius: 3px;
  background: #f8f9fa;
}
.advanced-filter-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 10px;
}
.filter-extension-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.filter-extension-card {
  min-width: 0;
  margin: 0;
  padding: 11px;
  border: 1px solid #d9dce2;
  border-radius: 3px;
  background: #fff;
}
.filter-extension-card legend { padding: 0 5px; color: #4e3298; font-size: .74rem; font-weight: 800; }
.filter-extension-card label + label { margin-top: 8px; }
.inline-filter-fields { align-items: flex-end; }
.inline-filter-fields label { flex: 1; }
.inline-filter-fields label:first-child { flex: 0 0 112px; }
.checkbox-field { display: flex !important; align-items: center; gap: 8px; padding: 5px 0; }
.checkbox-field input { width: auto; min-height: auto; }
.checkbox-field span { margin: 0 !important; }
.field-help { margin: 8px 0 0; color: #777c86 !important; font-size: .7rem; line-height: 1.35; }
.active-filter-chips {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding-top: 9px;
  overflow-x: auto;
}
.filter-chip {
  flex: 0 0 auto;
  padding: 5px 8px;
  border: 1px solid #d6cfeb;
  border-radius: 999px;
  background: #f5f2fb;
  color: #4e3a7b;
  font-size: .7rem;
}
.filter-actions-row { padding-top: 8px; }
.load-progress-area { min-width: 280px; }
.load-progress-area progress { accent-color: #5b3dad; }

.analytics-content { overflow: hidden; }
.content-tabs {
  display: flex;
  align-items: center;
  gap: 2px;
  min-height: 43px;
  padding: 0 14px;
  border-bottom: 1px solid var(--border-soft);
  background: #fafbfc;
}
.content-tab {
  width: auto;
  min-height: 42px;
  margin: 0;
  padding: 9px 13px 7px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #565b65;
  font-size: .79rem;
}
.content-tab.active { border-bottom-color: #5b3dad; color: #4b2f96; }
.results-header { padding: 10px 14px; background: #fff; }
.result-summary-cards { gap: 6px; }

.interaction-grid-wrapper { min-height: 390px; background: #fff; }

.results-footer { padding: 9px 14px; background: #fafbfc; color: #5f646e; font-size: .78rem; }
.empty-table { padding: 50px 20px; text-align: center; color: #6f747e; }

.interaction-insights-view { padding: 16px; background: #f7f8fa; }
.insights-header { margin-bottom: 12px; }
.insights-header h3 { margin: 0; font-size: 1.05rem; }
.insight-kpis {
  display: grid;
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}
.insight-kpi,
.insight-panel {
  border: 1px solid #dde0e5;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(30, 33, 39, .05);
}
.insight-kpi { padding: 12px; }
.insight-kpi span { display: block; color: #6b707a; font-size: .7rem; }
.insight-kpi strong { display: block; margin-top: 5px; color: #2e3138; font-size: 1.15rem; }
.insights-two-column { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10px; }
.insights-three-column { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 10px 0; }
.insight-panel { padding: 13px; }
.insight-panel h4 { margin: 0 0 10px; color: #444850; font-size: .83rem; }
.insight-messages { display: grid; gap: 8px; }
.insight-message { padding: 9px 10px; border-left: 3px solid #6d54b2; background: #f8f7fb; }
.insight-message p { margin: 4px 0 0; font-size: .75rem; }
.insight-message.warning { border-left-color: #c47d00; background: #fff9ed; }
.insight-message.critical { border-left-color: #b3261e; background: #fff1f0; }
.insight-message.positive { border-left-color: #247a4d; background: #f1faf5; }
.insight-metric-list { display: grid; gap: 5px; }
.metric-insight-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 8px;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px solid #eceef1;
  font-size: .75rem;
}
.metric-insight-row small { color: #757a84; }
.breakdown-list { display: grid; gap: 8px; }
.breakdown-heading { display: flex; justify-content: space-between; gap: 8px; font-size: .72rem; }
.breakdown-track { height: 5px; margin-top: 4px; overflow: hidden; border-radius: 999px; background: #ece9f3; }
.breakdown-fill { display: block; height: 100%; border-radius: inherit; background: #6c50b5; }
.data-quality-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.quality-stat { padding: 9px; border: 1px solid #e1e3e7; background: #fafbfc; }
.quality-stat span { color: #6d727c; font-size: .7rem; }
.quality-stat strong { display: block; margin-top: 3px; }


@media (max-width: 1280px) {
  .genesys-filter-row { grid-template-columns: repeat(3, minmax(170px, 1fr)); }
  .advanced-filter-grid { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
  .insight-kpis { grid-template-columns: repeat(4, minmax(120px, 1fr)); }
}
@media (max-width: 900px) {
  .analytics-view-header,
  .view-command-bar,
  .filter-actions-row,
  .results-header,
  .insights-header { align-items: stretch; flex-direction: column; }
  .saved-view-controls,
  .toolbar-actions,
  .source-actions { flex-wrap: wrap; }
  .filter-extension-grid,
  .insights-two-column,
  .insights-three-column { grid-template-columns: 1fr; }
  .insight-kpis { grid-template-columns: repeat(2, minmax(120px, 1fr)); }
  .data-quality-grid { grid-template-columns: repeat(2, 1fr); }
  .load-progress-area { width: 100%; min-width: 0; }
}
@media (max-width: 620px) {
  .interactions-workspace { padding: 8px; }
  
  .genesys-filter-row,
  .advanced-filter-grid,
  .insight-kpis,
  .data-quality-grid { grid-template-columns: 1fr; }
  .date-preset-strip { align-items: flex-start; }
  .timezone-label { margin-left: 8px; }
}

/* V3.0 — preferências de colunas e matriz de paridade */
.column-group-title {
  margin: 14px 0 6px;
  padding: 0 2px 5px;
  border-bottom: 1px solid #dedfe4;
  color: #4d3297;
  font-size: .76rem;
  letter-spacing: .02em;
}
.reorderable-column-option {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) 130px auto;
  gap: 10px;
  align-items: center;
}
.column-width-control {
  display: grid;
  grid-template-columns: auto 72px;
  gap: 6px;
  align-items: center;
  color: #646974;
  font-size: .7rem;
}
.column-width-control input { min-width: 0; padding: 5px 7px; }
.column-order-controls { display: flex; gap: 4px; }

.parity-workspace {
  display: grid;
  gap: 12px;
  padding: 14px;
}
.parity-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px;
}
.parity-hero h2 { margin: 2px 0 5px; }
.parity-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(130px, 1fr));
  gap: 8px;
}
.parity-summary-card {
  padding: 12px;
  border: 1px solid #dfe1e6;
  border-left: 4px solid #6d54b2;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(30, 33, 39, .05);
}
.parity-summary-card span { display: block; color: #6a707a; font-size: .7rem; }
.parity-summary-card strong { display: block; margin-top: 5px; font-size: 1.2rem; }
.parity-summary-card.implemented { border-left-color: #247a4d; }
.parity-summary-card.partial { border-left-color: #c47d00; }
.parity-summary-card.planned { border-left-color: #5573b8; }
.parity-summary-card.blocked_by_license,
.parity-summary-card.blocked_by_permission { border-left-color: #a54545; }
.parity-controls {
  display: grid;
  grid-template-columns: 210px 230px minmax(260px, 1fr) auto;
  gap: 10px;
  align-items: end;
  padding: 13px;
}
.parity-controls label { display: grid; gap: 5px; color: #555b65; font-size: .72rem; font-weight: 650; }
.parity-search-field { min-width: 0; }
.parity-table-panel { overflow: hidden; }
.parity-table-wrapper { overflow: auto; }
.parity-table { width: 100%; border-collapse: collapse; font-size: .78rem; }
.parity-table th,
.parity-table td { padding: 10px 12px; border-right: 1px solid #eceef1; border-bottom: 1px solid #e5e7eb; vertical-align: top; text-align: left; }
.parity-table th { position: sticky; top: 0; z-index: 1; background: #f3f4f6; color: #4b505a; font-size: .69rem; }
.parity-table tbody tr:nth-child(even) { background: #fbfbfc; }
.parity-table td:nth-child(1) { min-width: 110px; }
.parity-table td:nth-child(2) { min-width: 230px; }
.parity-table td:nth-child(4) { min-width: 360px; }
.parity-key { display: block; margin-top: 5px; color: #767b85; font-size: .67rem; }
.parity-status-badge {
  display: inline-flex;
  max-width: 190px;
  padding: 4px 7px;
  border-radius: 999px;
  background: #eef0f3;
  color: #555b65;
  font-size: .65rem;
  font-weight: 750;
}
.parity-status-badge.implemented { background: #e7f6ee; color: #146c43; }
.parity-status-badge.partial { background: #fff4dc; color: #875b00; }
.parity-status-badge.planned { background: #eaf0fb; color: #365a98; }
.parity-status-badge.not_applicable { background: #eeeef1; color: #62656c; }
.parity-status-badge.blocked_by_api,
.parity-status-badge.blocked_by_license,
.parity-status-badge.blocked_by_permission { background: #fdecec; color: #8d2727; }

@media (max-width: 1100px) {
  .parity-summary { grid-template-columns: repeat(3, minmax(130px, 1fr)); }
  .parity-controls { grid-template-columns: repeat(2, minmax(200px, 1fr)); }
}
@media (max-width: 700px) {
  .reorderable-column-option { grid-template-columns: 1fr; }
  .parity-hero { align-items: flex-start; flex-direction: column; }
  .parity-summary, .parity-controls { grid-template-columns: 1fr; }
}

/* Analytics Studio V3.1 */
:root {
  --chart-1: #7c62eb;
  --chart-2: #48b7d8;
  --chart-3: #76dfa1;
  --chart-4: #f3b85a;
  --chart-5: #ec7a9d;
  --chart-6: #9b87f5;
  --chart-7: #69c2a3;
  --chart-8: #e58b63;
}
.analytics-page { min-width: 0; }
.analytics-layout {
  width: min(1900px, 100%);
  min-height: calc(100vh - 106px);
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 14px;
  padding: 14px;
}
.analytics-sidebar {
  align-self: start;
  position: sticky;
  top: 14px;
  max-height: calc(100vh - 134px);
  overflow: auto;
  padding: 14px;
}
.analytics-sidebar-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.analytics-note { font-size: .76rem; }
.dashboard-list { display: grid; gap: 7px; }
.dashboard-list-item {
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  display: grid;
  gap: 4px;
  justify-items: start;
  border: 1px solid var(--border-soft);
  border-radius: 9px;
  background: var(--surface-3);
  color: var(--text);
  text-align: left;
}
.dashboard-list-item:hover { border-color: #5b527e; }
.dashboard-list-item.active {
  border-color: var(--primary);
  background: color-mix(in srgb, var(--primary) 16%, var(--surface-2));
}
.dashboard-list-item strong { font-size: .88rem; }
.dashboard-list-item span { color: var(--muted); font-size: .68rem; }
.analytics-workspace { min-width: 0; display: grid; align-content: start; gap: 12px; }
.analytics-empty-state,
.analytics-empty-widgets {
  padding: 28px;
  text-align: center;
}
.analytics-empty-state p { max-width: 760px; margin-left: auto; margin-right: auto; }
.analytics-toolbar { padding: 16px; display: grid; gap: 15px; }
.analytics-title-block,
.analytics-control-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.analytics-title-actions,
.analytics-refresh-group {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.analytics-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: color-mix(in srgb, var(--surface-3) 88%, transparent);
}
.analytics-filter-grid label,
.analytics-dialog-body label,
.widget-builder-grid label,
.compact-field {
  display: grid;
  gap: 5px;
  margin: 0;
  color: var(--muted);
  font-size: .7rem;
  font-weight: 700;
}
.analytics-filter-actions { display: flex; gap: 8px; align-items: end; }
.analytics-freshness { display: grid; justify-items: end; gap: 2px; text-align: right; }
.analytics-freshness .status { margin: 0; min-height: 0; font-size: .78rem; }
.analytics-freshness .muted { font-size: .68rem; }
.compact-field { min-width: 170px; }
.compact-field select { min-height: 38px; }
.analytics-loading { padding: 14px; color: var(--muted); }
.dashboard-canvas {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
}
.analytics-widget-card {
  grid-column: span 6;
  min-width: 0;
  min-height: 340px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
  box-shadow: 0 8px 26px rgba(0, 0, 0, .18);
}
.analytics-widget-card.widget-kpi { grid-column: span 3; min-height: 210px; }
.analytics-widget-card.widget-table { grid-column: span 6; }
.analytics-widget-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  border-bottom: 1px solid var(--border-soft);
}
.analytics-widget-header h3 { margin: 0 0 3px; font-size: .92rem; }
.analytics-widget-header p { margin: 0; font-size: .69rem; }
.analytics-widget-actions { display: flex; gap: 5px; }
.analytics-widget-actions .icon-button { width: 32px; height: 32px; margin: 0; }
.danger-icon { color: var(--danger); }
.analytics-widget-content { min-width: 0; padding: 15px; overflow: auto; }
.analytics-widget-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px;
  border-top: 1px solid var(--border-soft);
  color: var(--muted);
  font-size: .64rem;
}
.analytics-kpi {
  min-height: 115px;
  display: grid;
  place-content: center;
  gap: 5px;
  text-align: center;
}
.analytics-kpi strong { font-size: clamp(2rem, 4vw, 3.4rem); color: #fff; }
.analytics-kpi span { color: var(--muted); font-size: .8rem; }
.analytics-bars { display: grid; gap: 9px; }
.analytics-bar-row {
  display: grid;
  grid-template-columns: minmax(100px, 180px) minmax(120px, 1fr) auto;
  gap: 9px;
  align-items: center;
  font-size: .72rem;
}
.analytics-bar-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.analytics-bar-track { height: 15px; overflow: hidden; border-radius: 999px; background: var(--surface-3); }
.analytics-bar-fill { height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--primary), #5bc0d7); }
.analytics-line-svg { width: 100%; min-width: 520px; height: auto; }
.analytics-line-axis { fill: none; stroke: #515669; stroke-width: 1; }
.analytics-line-path { fill: none; stroke: var(--primary-strong); stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.analytics-line-point { fill: #fff; stroke: var(--primary); stroke-width: 3; }
.analytics-line-label { fill: var(--muted); font-size: 10px; }
.analytics-pie-layout { display: grid; grid-template-columns: minmax(150px, 250px) minmax(180px, 1fr); gap: 22px; align-items: center; }
.analytics-pie { width: min(220px, 100%); aspect-ratio: 1; margin: auto; border-radius: 50%; box-shadow: inset 0 0 0 28px color-mix(in srgb, var(--surface) 35%, transparent); }
.analytics-pie-legend { display: grid; gap: 7px; }
.analytics-pie-legend-row { display: grid; grid-template-columns: 10px minmax(80px, 1fr) auto; gap: 8px; align-items: center; font-size: .7rem; }
.analytics-pie-legend-row span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.analytics-pie-dot { width: 9px; height: 9px; border-radius: 50%; }
.analytics-table-wrapper { overflow: auto; }
.analytics-data-table { width: 100%; border-collapse: collapse; font-size: .74rem; }
.analytics-data-table th,
.analytics-data-table td { padding: 8px 10px; border-bottom: 1px solid var(--border-soft); text-align: left; }
.analytics-data-table th { position: sticky; top: 0; background: var(--surface-2); color: var(--muted); }
.analytics-dialog { width: min(700px, calc(100vw - 30px)); }
.analytics-widget-dialog { width: min(860px, calc(100vw - 30px)); }
.analytics-dialog-body { display: grid; gap: 13px; padding: 15px 18px; }
.analytics-dialog-body textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #4a4f63;
  border-radius: 10px;
  resize: vertical;
  background: var(--surface-3);
  color: #fff;
  font: inherit;
}
.widget-builder-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.widget-builder-grid .analytics-builder-note,
.widget-builder-grid .status { grid-column: 1 / -1; }
.checkbox-row { display: flex !important; align-items: center; gap: 8px; }
.checkbox-row input { width: auto; min-height: auto; }
.analytics-builder-note { margin: 0; padding: 10px; border-radius: 8px; background: var(--surface-3); font-size: .72rem; }
.badge.positive { background: #184c34; color: #9ce4ba; }

@media (max-width: 1300px) {
  .analytics-filter-grid { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .analytics-widget-card { grid-column: span 12; }
  .analytics-widget-card.widget-kpi { grid-column: span 4; }
}
@media (max-width: 900px) {
  .analytics-layout { grid-template-columns: 1fr; }
  .analytics-sidebar { position: static; max-height: none; }
  .analytics-filter-grid { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
  .analytics-widget-card.widget-kpi { grid-column: span 6; }
  .analytics-title-block,
  .analytics-control-row { flex-direction: column; }
  .analytics-freshness { justify-items: start; text-align: left; }
}
@media (max-width: 620px) {
  .analytics-filter-grid,
  .widget-builder-grid { grid-template-columns: 1fr; }
  .analytics-widget-card.widget-kpi { grid-column: span 12; }
  .analytics-pie-layout { grid-template-columns: 1fr; }
  .analytics-bar-row { grid-template-columns: minmax(80px, 120px) 1fr; }
  .analytics-bar-row strong { grid-column: 2; }
}

/* V3.2 — SuethTech Design System + Analytics Studio Pro */
:root {
  --sueth-navy-950: #071126;
  --sueth-navy-900: #0b1833;
  --sueth-navy-800: #152550;
  --sueth-blue-700: #2a429c;
  --sueth-blue-500: #5b7cfa;
  --sueth-orange-500: #ff451a;
  --sueth-orange-400: #ff6a47;
  --sueth-ivory: #f9f8f5;
  --sueth-sand: #f1efea;
  --surface: #101c35;
  --surface-2: #152550;
  --surface-3: #081225;
  --border: #2d416d;
  --border-soft: #20345d;
  --text: #f9f8f5;
  --muted: #aeb9d2;
  --primary: #ff451a;
  --primary-strong: #ff6a47;
  --success: #4cc9b0;
  --danger: #ff8a8a;
  --focus: #6f8cff;
}


button, .button {
  background: linear-gradient(135deg, var(--sueth-orange-500), #df2e08);
  box-shadow: 0 6px 16px rgba(255, 69, 26, .16);
}
.secondary {
  border: 1px solid #3a5189;
  background: linear-gradient(135deg, #203768, var(--sueth-navy-800));
  box-shadow: none;
}
.button.danger { border: 1px solid #7a3440; background: #351928; color: #ffb0b6; box-shadow: none; }
.eyebrow { color: #8fa5e9; }
a { color: #91a8ff; }

.analytics-page {
  --chart-1: #ff451a;
  --chart-2: #2a429c;
  --chart-3: #5b7cfa;
  --chart-4: #8b5cf6;
  --chart-5: #4cc9b0;
  --chart-6: #f4b942;
  --chart-7: #d45d79;
  --chart-8: #7bc8f6;
}
.analytics-layout { grid-template-columns: 310px minmax(0, 1fr); gap: 18px; padding: 18px; }
.analytics-sidebar,
.analytics-toolbar,
.analytics-empty-state,
.analytics-empty-widgets,
.analytics-loading {
  border-color: rgba(91, 124, 250, .25);
  background: linear-gradient(150deg, rgba(21, 37, 80, .96), rgba(9, 21, 46, .98));
  box-shadow: 0 18px 44px rgba(0, 0, 0, .22);
}
.analytics-sidebar-divider { height: 1px; margin: 18px 0; background: linear-gradient(90deg, transparent, #3b528c, transparent); }
.sql-view-list-item { border-left: 3px solid var(--sueth-orange-500); }
.dashboard-list-item {
  border-color: #294273;
  border-radius: 10px;
  background: rgba(7, 17, 38, .62);
}
.dashboard-list-item:hover { transform: translateY(-1px); border-color: #5b7cfa; }
.dashboard-list-item.active {
  border-color: var(--sueth-orange-500);
  background: linear-gradient(135deg, rgba(255, 69, 26, .15), rgba(42, 66, 156, .2));
  box-shadow: inset 3px 0 var(--sueth-orange-500);
}
.analytics-filter-grid {
  border-color: #294273;
  background: rgba(7, 17, 38, .55);
}
.analytics-filter-grid input,
.analytics-filter-grid select,
.analytics-dialog input,
.analytics-dialog select,
.analytics-dialog textarea {
  border-color: #38518a;
  background: #071126;
  color: var(--sueth-ivory);
}
.analytics-source-chip {
  display: inline-flex;
  margin-top: 7px;
  padding: 3px 7px;
  border: 1px solid #36528e;
  border-radius: 999px;
  background: rgba(42, 66, 156, .16);
  color: #aebfff;
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.dashboard-canvas { gap: 16px; }
.analytics-widget-card {
  min-height: var(--widget-height, 340px);
  border-color: rgba(91, 124, 250, .29);
  border-radius: 14px;
  background:
    linear-gradient(145deg, rgba(21, 37, 80, .97), rgba(7, 17, 38, .99));
  box-shadow: 0 18px 42px rgba(0, 0, 0, .24);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.analytics-widget-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 69, 26, .55);
  box-shadow: 0 22px 48px rgba(0, 0, 0, .3);
}
.analytics-widget-header {
  padding: 15px 17px;
  border-bottom-color: #203a6d;
  background: linear-gradient(90deg, rgba(255, 69, 26, .06), transparent 42%);
}
.analytics-widget-header h3 { font-size: 1rem; color: #fff; }
.analytics-widget-footer { border-top-color: #203a6d; background: rgba(5, 14, 31, .56); }
.analytics-widget-content { padding: 17px; }

.analytics-kpi-premium {
  position: relative;
  min-height: 100%;
  place-content: center start;
  padding: 24px;
  overflow: hidden;
  text-align: left;
}
.analytics-kpi-accent { position: absolute; inset: 0 auto 0 0; width: 5px; }
.analytics-kpi-premium::after {
  content: '';
  position: absolute;
  width: 180px;
  height: 180px;
  right: -75px;
  bottom: -105px;
  border: 1px solid rgba(91, 124, 250, .22);
  border-radius: 50%;
  box-shadow: 0 0 0 28px rgba(42, 66, 156, .06), 0 0 0 55px rgba(42, 66, 156, .035);
}
.analytics-kpi-premium strong { position: relative; z-index: 1; color: #fff; font-size: clamp(2.25rem, 4.2vw, 4rem); letter-spacing: -.04em; }
.analytics-kpi-label { color: #9faed0 !important; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.analytics-kpi-premium small { color: #7f8fb2; }

.analytics-chart-layout { min-width: 0; display: grid; gap: 11px; }
.analytics-chart-svg { width: 100%; height: auto; min-width: 520px; overflow: visible; }
.analytics-grid-line { stroke: #29416f; stroke-width: 1; stroke-dasharray: 4 5; }
.analytics-axis-label { fill: #91a0c0; font-size: 10px; }
.analytics-axis-title { fill: #aab8d4; font-size: 11px; font-weight: 700; }
.analytics-bar-rect { transition: opacity .15s ease; }
.analytics-bar-rect:hover { opacity: .78; }
.analytics-series-path { stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 3px 5px rgba(0, 0, 0, .2)); }
.analytics-area-fill { opacity: .14; }
.analytics-line-point, .analytics-scatter-point { stroke: #071126; stroke-width: 2; }
.analytics-chart-legend { display: flex; flex-wrap: wrap; gap: 8px 14px; padding: 7px 4px 0; }
.analytics-chart-legend-item { display: inline-flex; align-items: center; gap: 6px; color: #b3bdd4; font-size: .68rem; }
.analytics-chart-legend-item i { width: 9px; height: 9px; border-radius: 3px; }

.analytics-horizontal-bars { display: grid; gap: 14px; }
.analytics-horizontal-group { display: grid; gap: 6px; }
.analytics-horizontal-category { color: #dce4f6; font-size: .75rem; }
.analytics-horizontal-row { display: grid; grid-template-columns: minmax(0, 110px) minmax(120px, 1fr) auto; gap: 8px; align-items: center; font-size: .7rem; }
.analytics-horizontal-series { overflow: hidden; color: #8f9db9; text-overflow: ellipsis; white-space: nowrap; }
.analytics-horizontal-track { height: 12px; overflow: hidden; border-radius: 999px; background: #071126; box-shadow: inset 0 0 0 1px #243963; }
.analytics-horizontal-fill { height: 100%; border-radius: inherit; }

.analytics-doughnut-layout { display: grid; grid-template-columns: minmax(180px, 280px) minmax(220px, 1fr); gap: 24px; align-items: center; }
.analytics-doughnut { position: relative; width: min(240px, 100%); aspect-ratio: 1; margin: auto; border-radius: 50%; box-shadow: 0 18px 35px rgba(0, 0, 0, .22); }
.analytics-doughnut-center { position: absolute; inset: 23%; display: grid; place-content: center; border-radius: 50%; background: #0b1833; text-align: center; box-shadow: inset 0 0 0 1px #2a4271; }
.analytics-doughnut-center strong { color: #fff; font-size: 1.4rem; }
.analytics-doughnut-center span { color: #8594b4; font-size: .68rem; }
.analytics-doughnut-legend { display: grid; gap: 8px; }
.analytics-doughnut-legend-row { display: grid; grid-template-columns: 10px minmax(80px, 1fr) auto; gap: 9px; align-items: center; padding-bottom: 7px; border-bottom: 1px solid #1f345e; font-size: .7rem; }
.analytics-doughnut-legend-row i { width: 9px; height: 9px; border-radius: 50%; }
.analytics-doughnut-legend-row span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.analytics-pivot-table { border: 1px solid #233a67; }
.analytics-pivot-table th { background: #152550; color: #c3cee5; }
.analytics-pivot-table tbody tr:hover { background: rgba(42, 66, 156, .13); }

.analytics-sidebar-divider + .panel-heading { margin-top: 0; }
.analytics-sql-dialog { width: min(1060px, calc(100vw - 30px)); }
.sql-view-builder { grid-template-columns: 1fr 1fr; }
.sql-editor-field, .sql-view-actions, .sql-preview, .sql-view-builder .analytics-builder-note, .sql-view-builder .status { grid-column: 1 / -1; }
#sql-view-sql {
  min-height: 280px;
  tab-size: 2;
  background: #050d1c;
  color: #dce7ff;
  font-family: "Cascadia Code", "SFMono-Regular", Consolas, monospace;
  font-size: .82rem;
  line-height: 1.55;
}
.sql-view-actions { display: flex; gap: 8px; }
.sql-preview { max-height: 320px; overflow: auto; padding: 12px; border: 1px solid #2c477b; border-radius: 10px; background: #071126; }
.analytics-builder-note code { color: #ff9a80; }

@media (max-width: 1300px) {
  .analytics-layout { grid-template-columns: 270px minmax(0, 1fr); }
  .analytics-widget-card { grid-column: span 12 !important; }
}
@media (max-width: 900px) {
  .analytics-layout { grid-template-columns: 1fr; }
  .analytics-doughnut-layout { grid-template-columns: 1fr; }
  .sql-view-builder { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .analytics-chart-svg { min-width: 430px; }
  .analytics-horizontal-row { grid-template-columns: 1fr; }
  .analytics-horizontal-series:empty { display: none; }
}

/* SuethTech skin for the Genesys-like operational workspace */


.column-group-title{ color: #2a429c; }


/* Forge Operations */
.operations-shell{max-width:1600px;margin:0 auto;padding:24px;display:grid;gap:18px}.operations-tabs{display:flex;gap:4px;flex-wrap:wrap}.operations-panel{display:grid;gap:18px}.operations-kpis{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px}.operations-kpis.compact{grid-template-columns:repeat(4,minmax(170px,1fr))}.kpi-card{background:linear-gradient(145deg,rgba(42,66,156,.22),rgba(7,17,38,.9));border:1px solid rgba(91,124,250,.24);border-radius:14px;padding:16px;min-height:105px;display:flex;flex-direction:column;gap:6px}.kpi-card span,.kpi-card small{color:var(--muted,#9aa8c7)}.kpi-card strong{font-size:1.7rem}.kpi-card .small-value{font-size:1rem;line-height:1.35}.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.health-card{border:1px solid rgba(91,124,250,.22);background:rgba(7,17,38,.7);border-radius:12px;padding:14px;display:grid;gap:8px}.health-card-head{display:flex;align-items:center;gap:8px}.health-card p,.health-card small{margin:0}.health-dot{width:10px;height:10px;border-radius:50%;background:#7f8ba8}.health-dot.ok{background:#34d399}.health-dot.warning{background:#fbbf24}.health-dot.error{background:#fb7185}.health-dot.disabled{background:#64748b}.button.small{padding:6px 10px;font-size:.82rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.section-heading input[type=search]{min-width:320px}@media(max-width:1100px){.operations-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.operations-kpis,.operations-kpis.compact{grid-template-columns:1fr 1fr}.section-heading{align-items:stretch;flex-direction:column}.section-heading input[type=search]{min-width:0;width:100%}}

/* Forge Governance V3.6 */
.governance-shell { max-width: 1680px; }
.governance-notice { display:flex; gap:.6rem; align-items:flex-start; padding:.85rem 1rem; border:1px solid rgba(91,124,250,.28); border-radius:12px; background:rgba(42,66,156,.12); margin-bottom:1rem; }
.governance-bars { display:grid; gap:.7rem; }
.governance-bar-row { display:grid; grid-template-columns:minmax(140px, 220px) 1fr 60px; gap:.8rem; align-items:center; }
.governance-bar-track { height:12px; background:rgba(255,255,255,.07); border-radius:999px; overflow:hidden; }
.governance-bar-fill { height:100%; border-radius:999px; background:linear-gradient(90deg,#2A429C,#5B7CFA); }
.governance-callout { padding:1rem; border-left:3px solid #FF451A; background:rgba(255,69,26,.07); border-radius:8px; }
.findings-list { display:grid; gap:.85rem; }
.finding-card { padding:1rem; border:1px solid rgba(255,255,255,.09); border-radius:12px; background:rgba(7,17,38,.48); }
.finding-card h4 { margin:.55rem 0 .4rem; }
.finding-card p { margin:0 0 .5rem; color:var(--text-muted, #b9c3dd); }
.finding-card-head { display:flex; gap:.55rem; align-items:center; }
.finding-badge { font-size:.72rem; font-weight:800; letter-spacing:.05em; padding:.24rem .48rem; border-radius:999px; }
.finding-badge.info { background:rgba(91,124,250,.16); color:#9eb3ff; }
.finding-badge.low { background:rgba(55,180,138,.15); color:#7de0bb; }
.finding-badge.medium { background:rgba(255,176,32,.15); color:#ffd078; }
.finding-badge.high { background:rgba(255,69,26,.18); color:#ff8b72; }
.finding-rule { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.78rem; opacity:.8; }
.finding-dot { width:.65rem; height:.65rem; border-radius:999px; display:inline-block; }
.finding-dot.info { background:#5B7CFA; }.finding-dot.low { background:#37B48A; }.finding-dot.medium { background:#FFB020; }.finding-dot.high { background:#FF451A; }
.compact-heading { padding-top:.5rem; }
@media (max-width: 860px) { .governance-bar-row { grid-template-columns:110px 1fr 45px; } }

/* Forge Governance V3.6.1 — Notification Topics */
.governance-topic-categories{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.governance-topic-categories .filter-chip{max-width:none}


/* V3.6.4 — SuethTech unified workspace + responsive usability */
:root {
  --forge-bg: #071126;
  --forge-surface: #0b1833;
  --forge-surface-2: #102149;
  --forge-surface-3: #152550;
  --forge-border: #29416f;
  --forge-border-soft: #20365f;
  --forge-text: #f9f8f5;
  --forge-muted: #9faed0;
  --forge-blue: #5b7cfa;
  --forge-blue-strong: #2a429c;
  --forge-orange: #ff451a;
  --forge-success: #37b48a;
  --forge-warning: #ffb020;
  --forge-danger: #ff6b6b;
}

.forge-workspace-page,
.forge-module-page {
  min-width: 0;
  background:
    radial-gradient(circle at 14% -10%, rgba(42,66,156,.30), transparent 34rem),
    linear-gradient(180deg, #071126, #09152d 60%, #071126);
  color: var(--forge-text);
}
.forge-workspace-page .panel,
.forge-module-page .panel,
.forge-workspace-page .card,
.forge-module-page .card {
  border-color: var(--forge-border-soft);
  background: rgba(11,24,51,.92);
  color: var(--forge-text);
  box-shadow: 0 14px 34px rgba(0,0,0,.20);
}
.forge-workspace-page p,
.forge-module-page p,
.forge-workspace-page .muted,
.forge-module-page .muted { color: var(--forge-muted); }
.forge-workspace-page input,
.forge-workspace-page select,
.forge-workspace-page textarea,
.forge-module-page input,
.forge-module-page select,
.forge-module-page textarea {
  border-color: #365486;
  background: #08152d;
  color: var(--forge-text);
}
.forge-workspace-page input::placeholder,
.forge-module-page input::placeholder,
.forge-workspace-page textarea::placeholder,
.forge-module-page textarea::placeholder { color: #7385aa; }

/* Shared workspace compatibility rules retained for current modules. */

.forge-module-page .module-link{
  height: 40px;
  flex: 0 0 auto;
  padding: 0 13px;
  border-bottom: 3px solid transparent;
  color: #c7d2eb;
}
.forge-module-page .module-link.active{
  border-bottom-color: var(--forge-orange);
  background: rgba(255,69,26,.08);
  color: #fff;
}

.forge-workspace-page .session-summary{ overflow: hidden; }
.forge-workspace-page .session-summary strong,
.forge-workspace-page .session-summary span{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Interaction + parity now use the same SuethTech dark design language. */
.forge-workspace-page .analytics-command-surface,
.forge-workspace-page .analytics-content,
.forge-workspace-page .parity-hero,
.forge-workspace-page .parity-controls,
.forge-workspace-page .parity-table-panel { background: rgba(11,24,51,.94); }
.forge-workspace-page .analytics-view-header,
.forge-workspace-page .view-command-bar,
.forge-workspace-page .date-preset-strip,
.forge-workspace-page .content-tabs,
.forge-workspace-page .results-header,
.forge-workspace-page .results-footer {
  border-color: var(--forge-border-soft);
  background: rgba(9,21,45,.94);
}
.forge-workspace-page .analytics-breadcrumb,
.forge-workspace-page .filter-extension-card legend,
.forge-workspace-page .column-group-title { color: #90a9ff !important; }
.forge-workspace-page .database-source-pill {
  border-color: rgba(55,180,138,.42);
  background: rgba(55,180,138,.10);
  color: #8ee1bd;
  border-radius: 999px;
}
.forge-workspace-page .source-dot { background: var(--forge-success); }
.forge-workspace-page .button {
  border: 1px solid #d93812;
  border-radius: 9px;
  background: linear-gradient(135deg, var(--forge-orange), #d82f09);
  color: #fff;
}
.forge-workspace-page .button.secondary {
  border-color: #39568a;
  background: #102149;
  color: #e8eeff;
}
.forge-workspace-page .button.secondary:hover,
.forge-workspace-page .button.secondary.active { border-color: #5b7cfa; background: #172f66; color: #fff; }
.forge-workspace-page .button.danger { border-color: #7c3747; background: #371b29; color: #ffb1bd; }
.forge-workspace-page .icon-button {
  border-color: #365486;
  background: #102149;
  color: #fff;
}
.forge-workspace-page .date-preset { color: #aebbd6; }
.forge-workspace-page .date-preset:hover,
.forge-workspace-page .date-preset.active { border-color: #5b7cfa; background: rgba(91,124,250,.15); color: #fff; }
.forge-workspace-page .date-preset-strip > span:first-child,
.forge-workspace-page .compact-field span,
.forge-workspace-page .interaction-filter-form label > span,
.forge-workspace-page .columns-form label > span,
.forge-workspace-page .parity-controls label { color: #aebbd6; }
.forge-workspace-page .advanced-filter-panel,
.forge-workspace-page .filter-extension-card,
.forge-workspace-page .mini-stat,
.forge-workspace-page .column-option,
.forge-workspace-page .storage-policy-grid label,
.forge-workspace-page .storage-overview {
  border-color: #29416f;
  background: #0a1732;
  color: #eef3ff;
}
.forge-workspace-page .field-help,
.forge-workspace-page .timezone-label { color: #8292b3 !important; }
.forge-workspace-page .filter-chip { border-color: #35538a; background: rgba(91,124,250,.11); color: #bac8ff; }
.forge-workspace-page .content-tab { color: #9fafd0; }
.forge-workspace-page .content-tab.active { border-bottom-color: var(--forge-orange); color: #fff; }
.forge-workspace-page .interaction-grid-wrapper { background: #08152d; }
.forge-workspace-page .interaction-grid th {
  border-color: #223a64;
  background: #102149;
  color: #bdc9e3;
}
.forge-workspace-page .interaction-grid td { border-color: #1f365e; }
.forge-workspace-page .interaction-grid tbody tr { background: #0a1732; }
.forge-workspace-page .interaction-grid tbody tr:nth-child(even) { background: #0c1b39; }
.forge-workspace-page .interaction-grid tbody tr:hover,
.forge-workspace-page .interaction-grid tbody tr:focus { background: #142b5b; }
.forge-workspace-page .conversation-id-cell,
.forge-workspace-page .copy-id-button { color: #8ca6ff; }
.forge-workspace-page .interaction-status-badge.finalized { background: rgba(55,180,138,.15); color: #83dfba; }
.forge-workspace-page .interaction-status-badge.active { background: rgba(255,176,32,.16); color: #ffd078; }
.forge-workspace-page .interaction-insights-view { background: #08152d; }
.forge-workspace-page .insight-kpi,
.forge-workspace-page .insight-panel {
  border-color: #29416f;
  background: #0b1833;
  color: #f4f7ff;
}
.forge-workspace-page .insight-kpi span,
.forge-workspace-page .metric-insight-row small,
.forge-workspace-page .quality-stat span { color: #91a1c3; }
.forge-workspace-page .insight-kpi strong,
.forge-workspace-page .insight-panel h4 { color: #f5f7ff; }
.forge-workspace-page .insight-message { border-left-color: #5b7cfa; background: rgba(91,124,250,.08); }
.forge-workspace-page .insight-message.warning { border-left-color: #ffb020; background: rgba(255,176,32,.08); }
.forge-workspace-page .insight-message.critical { border-left-color: #ff6b6b; background: rgba(255,107,107,.08); }
.forge-workspace-page .insight-message.positive { border-left-color: #37b48a; background: rgba(55,180,138,.08); }
.forge-workspace-page .metric-insight-row { border-bottom-color: #20365f; }
.forge-workspace-page .breakdown-track { background: #142a55; }
.forge-workspace-page .breakdown-fill { background: linear-gradient(90deg,#2a429c,#5b7cfa); }
.forge-workspace-page .quality-stat { border-color: #29416f; background: #091a38; }
.forge-workspace-page .interaction-drawer,
.forge-workspace-page .columns-dialog {
  border-color: #2c4777;
  background: #08152d;
  color: #f5f7ff;
}
.forge-workspace-page .drawer-header,
.forge-workspace-page .detail-tabs { border-color: #20365f; background: #0b1833; }
.forge-workspace-page .detail-tab { color: #9fafd0; }
.forge-workspace-page .detail-tab.active { background: #173169; color: #fff; }
.forge-workspace-page .detail-kv-grid div,
.forge-workspace-page .interaction-timeline li { border-color: #29416f; background: #0b1833; }
.forge-workspace-page .detail-kv-grid dt,
.forge-workspace-page .interaction-timeline span { color: #8fa0c4; }
.forge-workspace-page .detail-kv-grid dd { color: #f4f7ff; }
.forge-workspace-page .detail-table-wrapper { border-color: #29416f; }
.forge-workspace-page .detail-table th { background: #102149; color: #b9c6e2; }
.forge-workspace-page .detail-table td { border-bottom-color: #20365f; }
.forge-workspace-page .interaction-timeline::before { background: #2e4d84; }
.forge-workspace-page .interaction-timeline li::before { background: var(--forge-orange); box-shadow: 0 0 0 4px #142a55; }

/* Parity cards/table on the same palette. */
.forge-workspace-page .parity-summary-card {
  border-color: #29416f;
  border-left-color: #5b7cfa;
  background: #0b1833;
  color: #f4f7ff;
}
.forge-workspace-page .parity-summary-card span,
.forge-workspace-page .parity-key { color: #91a1c3; }
.forge-workspace-page .parity-table th,
.forge-workspace-page .parity-table td { border-color: #20365f; }
.forge-workspace-page .parity-table th { background: #102149; color: #bdc9e3; }
.forge-workspace-page .parity-table tbody tr { background: #0a1732; }
.forge-workspace-page .parity-table tbody tr:nth-child(even) { background: #0c1b39; }

/* Richer local insights. */
.insight-facts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.insight-fact { min-width: 0; padding: 10px; border: 1px solid #29416f; border-radius: 9px; background: #091a38; }
.insight-fact span { display:block; color:#91a1c3; font-size:.68rem; }
.insight-fact strong { display:block; margin-top:4px; overflow-wrap:anywhere; color:#f4f7ff; font-size:.9rem; }

/* Assisted Analytics builder for operators/supervisors. */
.builder-mode-switch { display:flex; gap:4px; margin-top:10px; }
.builder-mode-button {
  width:auto; min-height:34px; margin:0; padding:6px 10px;
  border:1px solid #365486; border-radius:8px; background:#08152d; color:#aebbd6; font-size:.75rem;
}
.builder-mode-button.active { border-color:#ff451a; background:rgba(255,69,26,.12); color:#fff; }
.guided-template-panel { padding: 14px 18px 0; }
.guided-template-panel p { margin:4px 0 0; font-size:.8rem; }
.guided-template-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:11px; }
.guided-template-card {
  width:100%; min-height:88px; margin:0; padding:12px; display:grid; align-content:start; gap:5px;
  border:1px solid #29416f; border-radius:11px; background:#0b1833; color:#f5f7ff; text-align:left;
}
.guided-template-card:hover { border-color:#5b7cfa; background:#102149; }
.guided-template-card strong { font-size:.82rem; }
.guided-template-card span { color:#9fafd0; font-size:.72rem; line-height:1.35; }
.analytics-widget-dialog.guided-mode .advanced-only { display:none !important; }
.analytics-widget-dialog.advanced-mode .guided-template-panel { display:none !important; }
.analytics-widget-dialog.guided-mode .widget-builder-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

/* Responsive/touch rules shared by every app tab. */
.icon-button,
.compact-icon { display:inline-grid; place-items:center; line-height:1; flex:0 0 auto; }
@media (max-width: 1180px) {
  
  
  
  .operations-kpis { grid-template-columns:repeat(3,minmax(140px,1fr)); }
}
@media (max-width: 820px) {
  
  
  
  
  .module-link { min-height:42px; }
  
  .toolbar-actions, .saved-view-controls, .source-actions { width:100%; }
  .toolbar-actions .button, .source-actions .button { flex:1 1 auto; min-height:42px; }
  .compact-field { width:100%; }
  .compact-field select { flex:1; min-width:0; }
  .guided-template-grid { grid-template-columns:1fr 1fr; }
  .operations-tabs, .content-tabs, .detail-tabs { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; }
  .operations-tabs .content-tab, .content-tabs .content-tab, .detail-tabs .detail-tab { flex:0 0 auto; }
  .operations-kpis, .operations-kpis.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  
  
  .session-summary { max-width:65vw; text-align:left; }
  .guided-template-grid, .analytics-widget-dialog.guided-mode .widget-builder-grid { grid-template-columns:1fr; }
  .operations-kpis, .operations-kpis.compact { grid-template-columns:1fr; }
  .insight-facts { grid-template-columns:1fr; }
  .interaction-drawer { width:100vw; }
  .drawer-header-actions .button { max-width:190px; }
  .parity-table td:nth-child(4) { min-width:280px; }
}

/* V3.6.5 — Experience Profiles */
.experience-profile-control{display:grid;gap:2px;min-width:118px;color:var(--muted,#9aa7c7);font-size:.7rem;font-weight:700;letter-spacing:.03em}.experience-profile-control select{min-height:34px;padding:5px 30px 5px 10px;border-radius:9px;border:1px solid rgba(91,124,250,.28);background:rgba(7,17,38,.72);color:var(--text,#f9f8f5);font:inherit}.experience-hidden{display:none!important}body[data-experience-profile="OPERATOR"] #toggle-filters-button,body[data-experience-profile="OPERATOR"] #columns-button,body[data-experience-profile="OPERATOR"] #storage-settings-button,body[data-experience-profile="OPERATOR"] #refresh-active-button,body[data-experience-profile="OPERATOR"] #delete-view-button,body[data-experience-profile="OPERATOR"] #advanced-filters{display:none!important}body[data-experience-profile="OPERATOR"] #new-sql-view-button,body[data-experience-profile="OPERATOR"] #sql-view-list,body[data-experience-profile="OPERATOR"] #sql-view-list-empty,body[data-experience-profile="OPERATOR"] #dataset-settings-button,body[data-experience-profile="OPERATOR"] #builder-advanced-mode,body[data-experience-profile="SUPERVISOR"] #new-sql-view-button,body[data-experience-profile="SUPERVISOR"] #sql-view-list,body[data-experience-profile="SUPERVISOR"] #sql-view-list-empty,body[data-experience-profile="SUPERVISOR"] #dataset-settings-button,body[data-experience-profile="SUPERVISOR"] #builder-advanced-mode{display:none!important}body[data-experience-profile="OPERATOR"] .advanced-only,body[data-experience-profile="SUPERVISOR"] .advanced-only{display:none!important}body[data-experience-profile="SUPERVISOR"] [data-tab="diagnostics"],body[data-experience-profile="SUPERVISOR"] [data-tab="dictionary"]{display:none!important}@media(max-width:820px){.experience-profile-control{min-width:104px}.experience-profile-control span{display:none}.experience-profile-control select{max-width:118px}.experience-profile-control{order:8}}


/* V3.6.6 — Insight drill-down */
.insight-drilldown-hint {
  margin: .35rem 0 0;
  color: var(--muted);
  font-size: .76rem;
}
.insight-action {
  cursor: pointer;
  transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease, background 140ms ease;
}
.insight-action:hover,
.insight-action:focus-visible {
  transform: translateY(-1px);
  border-color: var(--primary, #5b7cfa) !important;
  box-shadow: 0 0 0 2px rgba(91,124,250,.16);
  outline: none;
}
.insight-action:focus-visible { box-shadow: 0 0 0 3px rgba(91,124,250,.28); }
.breakdown-item.insight-action { padding: .35rem .45rem; border: 1px solid transparent; border-radius: 8px; }
.insight-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  border-color: var(--primary, #5b7cfa) !important;
}
.filter-chip-clear {
  display: inline-grid;
  place-items: center;
  width: 1.25rem;
  height: 1.25rem;
  margin-left: .2rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(91,124,250,.18);
  color: inherit;
  cursor: pointer;
  font: inherit;
  line-height: 1;
}
.filter-chip-clear:hover,
.filter-chip-clear:focus-visible { background: rgba(91,124,250,.32); outline: none; }
@media (max-width: 560px) {
  .insight-drilldown-hint { font-size: .72rem; }
  .insight-action:hover { transform: none; }
}

/* V3.6.7 — Period comparison for local insights */
.insights-header-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
#compare-insights-button.active { border-color:#ff451a; background:rgba(255,69,26,.12); color:#fff; }
.insight-comparison-panel {
  margin: 12px 0;
  padding: 14px;
  border: 1px solid #29416f;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(15,34,72,.96), rgba(8,21,45,.96));
}
.insight-comparison-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:12px; }
.insight-comparison-heading h4 { margin:2px 0 4px; color:#f5f7ff; font-size:.95rem; }
.insight-comparison-heading p { margin:0; }
.comparison-status-pill {
  flex:0 0 auto; display:inline-flex; align-items:center; min-height:28px; padding:4px 9px;
  border:1px solid #365486; border-radius:999px; background:#08152d; color:#aebbd6; font-size:.7rem; font-weight:700;
}
.comparison-status-pill.success { border-color:rgba(55,180,138,.55); color:#79d9b9; background:rgba(55,180,138,.08); }
.comparison-status-pill.warning { border-color:rgba(255,176,32,.55); color:#ffd07b; background:rgba(255,176,32,.08); }
.insight-comparison-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.comparison-kpi-card { min-width:0; padding:11px; border:1px solid #29416f; border-radius:10px; background:#091a38; }
.comparison-kpi-label { display:block; color:#91a1c3; font-size:.69rem; }
.comparison-kpi-card > strong { display:block; margin-top:4px; color:#f4f7ff; font-size:1.02rem; }
.comparison-kpi-card small { display:block; margin-top:3px; color:#7f90b4; font-size:.66rem; }
.comparison-delta { display:inline-flex; align-items:center; gap:4px; margin-top:6px; font-size:.73rem; font-weight:800; color:#aebbd6; }
.comparison-delta.positive { color:#79d9b9; }
.comparison-delta.negative { color:#ff9292; }
.comparison-delta.neutral { color:#b8c4df; }
.insight-comparison-lower { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:10px; }
.insight-comparison-lower > section { min-width:0; padding:11px; border:1px solid #20365f; border-radius:10px; background:#08152d; }
.insight-comparison-lower h5 { margin:0 0 8px; color:#dce5f8; font-size:.78rem; }
.comparison-list { display:grid; gap:6px; }
.comparison-list-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 10px; align-items:center; padding:7px 0; border-bottom:1px solid #1c3158; }
.comparison-list-row:last-child { border-bottom:0; }
.comparison-list-row span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#c9d4ea; font-size:.72rem; }
.comparison-list-row strong { color:#f4f7ff; font-size:.72rem; text-align:right; }
.comparison-list-row small { grid-column:1 / -1; color:#7688ad; font-size:.64rem; }
.comparison-notes { display:grid; gap:6px; }
.comparison-notes p { margin:0; color:#91a1c3; font-size:.69rem; line-height:1.4; }
@media (max-width: 900px) {
  .insight-comparison-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .insight-comparison-lower { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
  .insights-header-actions { width:100%; justify-content:stretch; }
  .insights-header-actions .button { flex:1 1 auto; min-height:42px; }
  .insight-comparison-heading { flex-direction:column; }
  .insight-comparison-kpis { grid-template-columns:1fr; }
  .comparison-status-pill { align-self:flex-start; }
}

/* V3.6.8 — Operational Baseline */
#baseline-insights-button.active { border-color:#5b7cfa; background:rgba(91,124,250,.14); color:#fff; }
.insight-baseline-panel {
  margin: 12px 0;
  padding: 14px;
  border: 1px solid #20365f;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(18,38,74,.96), rgba(8,21,45,.98));
}
.insight-baseline-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.insight-baseline-heading h4 { margin:2px 0 4px; color:#f5f7ff; font-size:.95rem; }
.insight-baseline-heading p { margin:0; }
.baseline-status-pill {
  flex:0 0 auto; padding:5px 9px; border:1px solid #315080; border-radius:999px;
  color:#bfd0ef; background:#0a1d3d; font-size:.7rem; font-weight:700;
}
.baseline-status-pill.success { border-color:#28795f; color:#8ee4c0; background:rgba(55,180,138,.08); }
.baseline-status-pill.warning { border-color:#9f7021; color:#ffd27e; background:rgba(255,176,32,.08); }
.baseline-status-pill.critical { border-color:#9a3e49; color:#ff9ca4; background:rgba(255,107,107,.08); }
.baseline-summary-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:12px; }
.baseline-summary-row > div { padding:10px; border:1px solid #20365f; border-radius:10px; background:#08152d; }
.baseline-summary-row span { display:block; color:#8fa5c9; font-size:.68rem; }
.baseline-summary-row strong { display:block; margin-top:4px; color:#f5f7ff; font-size:.95rem; }
.baseline-message { margin:10px 0; color:#cdd8ed; font-size:.78rem; line-height:1.45; }
.baseline-metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.baseline-metric-card { min-width:0; padding:11px; border:1px solid #20365f; border-radius:10px; background:#08152d; }
.baseline-metric-card.baseline-attention { border-color:#8e6828; background:rgba(255,176,32,.06); }
.baseline-metric-card.baseline-relevant_deviation { border-color:#8b3b45; background:rgba(255,107,107,.06); }
.baseline-metric-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:7px; }
.baseline-metric-heading > span { color:#aebdd7; font-size:.7rem; }
.baseline-metric-classification { color:#dce5f8; font-size:.62rem; text-align:right; }
.baseline-current-value { margin-top:8px; color:#fff; font-size:1.08rem; font-weight:800; }
.baseline-metric-card p { margin:6px 0 3px; color:#9eb0cf; font-size:.68rem; }
.baseline-metric-card small { color:#6f86aa; font-size:.62rem; line-height:1.35; }
.baseline-explanation { margin-top:10px; padding:10px 12px; border-left:3px solid #5b7cfa; background:rgba(91,124,250,.07); color:#aebdd7; }
.baseline-explanation strong { color:#dce5f8; font-size:.72rem; }
.baseline-explanation p { margin:4px 0 0; font-size:.7rem; line-height:1.45; }
.baseline-admin-settings { margin-top:14px; padding-top:14px; border-top:1px solid var(--border, #d9deea); }
.compact-heading h3 { margin:.15rem 0 .35rem; }

@media (max-width: 1180px) {
  .baseline-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .insight-baseline-heading { flex-direction:column; }
  .baseline-summary-row, .baseline-metric-grid { grid-template-columns:1fr; }
}

/* V3.6.9 — Smart dashboard suggestions */
.smart-suggestions-panel {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(91,124,250,.28);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(13,31,70,.88), rgba(8,20,45,.94));
}
.smart-suggestions-heading {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.smart-suggestions-heading strong { display:block; margin-top:3px; font-size:.86rem; color:#f5f7ff; }
.smart-suggestions-kicker { display:block; color:#ff8b6e; font-size:.7rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.smart-suggestions-heading p { margin:4px 0 0; color:#9fafd0; font-size:.72rem; }
.smart-suggestions-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:12px;
}
.smart-suggestion-card {
  width:100%;
  min-height:164px;
  margin:0;
  padding:12px;
  display:grid;
  align-content:start;
  gap:7px;
  border:1px solid #29416f;
  border-radius:11px;
  background:#091a38;
  color:#f5f7ff;
  text-align:left;
}
.smart-suggestion-card:hover,
.smart-suggestion-card:focus-visible {
  border-color:#5b7cfa;
  background:#102149;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(3,11,28,.24);
}
.smart-suggestion-card-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
.smart-suggestion-card-heading strong { font-size:.82rem; line-height:1.3; }
.smart-suggestion-description { color:#c8d2e8; font-size:.74rem; line-height:1.4; }
.smart-suggestion-stats { color:#86a2df; font-size:.7rem; font-weight:700; }
.smart-suggestion-samples { color:#a8b7d3; font-size:.69rem; line-height:1.35; overflow-wrap:anywhere; }
.smart-suggestion-reason { color:#91a1c3; font-size:.68rem; line-height:1.35; }
.smart-suggestion-action { margin-top:2px; color:#ff8b6e; font-size:.71rem; font-weight:800; }
.smart-suggestions-footnote { margin:10px 0 0!important; color:#8394b5!important; font-size:.67rem!important; line-height:1.45; }

@media (max-width: 820px) {
  .smart-suggestions-grid { grid-template-columns:1fr; }
  .smart-suggestions-heading { align-items:center; }
}
@media (max-width: 560px) {
  .smart-suggestions-panel { padding:11px; }
  .smart-suggestions-heading { align-items:flex-start; }
  .smart-suggestions-heading .badge { display:none; }
  .smart-suggestion-card { min-height:0; }
}

/* V3.6.10 — Participant Data Attribute Interpretation */
.attribute-interpretation-admin-settings {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--border, #d9deea);
}
.attribute-interpretation-dialog { width:min(1180px, 96vw); }
.attribute-interpretation-layout {
  display:grid;
  grid-template-columns:minmax(320px,.85fr) minmax(420px,1.15fr);
  gap:14px;
  align-items:start;
}
.attribute-config-panel,
.attribute-preview-panel,
.attribute-configs-overview {
  border:1px solid var(--border, #d9deea);
  border-radius:12px;
  padding:14px;
  background:var(--surface, #fff);
}
.attribute-config-panel { display:grid; gap:12px; }
.attribute-parser-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; }
.attribute-preview-panel { min-height:360px; }
.attribute-preview-content { display:grid; gap:10px; margin-top:10px; }
.attribute-preview-card {
  border:1px solid var(--border, #d9deea);
  border-radius:10px;
  padding:11px;
  background:var(--surface-soft, #f7f9fc);
}
.attribute-preview-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:8px; margin-bottom:8px; }
.attribute-raw-preview {
  max-height:150px;
  margin:5px 0 9px;
  padding:9px 10px;
  overflow:auto;
  border:1px solid var(--border, #d9deea);
  border-radius:8px;
  background:#07152d;
  color:#dbe7ff;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  font-size:.72rem;
}
.attribute-preview-table-wrap { max-height:260px; }
.attribute-configs-overview { margin-top:14px; }
.attribute-config-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:10px; }
.attribute-config-card {
  display:grid;
  gap:7px;
  padding:11px;
  min-height:86px;
  border:1px solid var(--border, #d9deea);
  border-radius:10px;
  background:var(--surface-soft, #f7f9fc);
  text-align:left;
  color:inherit;
}
.attribute-config-card:hover,
.attribute-config-card:focus-visible { border-color:#5b7cfa; box-shadow:0 7px 18px rgba(35,62,125,.12); }
.attribute-config-card-header { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.attribute-config-card .muted { font-size:.69rem; line-height:1.4; }
.badge.parse-valid { border-color:#28795f; color:#23745c; background:rgba(55,180,138,.08); }
.badge.parse-partial { border-color:#9f7021; color:#9a6710; background:rgba(255,176,32,.08); }
.badge.parse-invalid { border-color:#9a3e49; color:#ad3d49; background:rgba(255,107,107,.08); }
.badge.parse-raw_only { border-color:#62728c; color:#65748d; background:rgba(100,116,139,.08); }

@media (max-width: 980px) {
  .attribute-interpretation-layout { grid-template-columns:1fr; }
  .attribute-config-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .attribute-parser-options,
  .attribute-config-list { grid-template-columns:1fr; }
  .attribute-config-panel,
  .attribute-preview-panel,
  .attribute-configs-overview { padding:11px; }
}

/* V3.6.11 — SQL View Library */
.sql-view-sidebar-heading { align-items: flex-start; gap: 10px; }
.sql-view-library-actions { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.sql-view-tags-field { grid-column: 1 / -1; }
.sql-view-template-info { border-left: 3px solid var(--sueth-orange-500); padding-left: 10px; }
.sql-view-library-dialog { width: min(980px, calc(100vw - 30px)); }
.sql-view-template-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.sql-view-template-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #294273;
  border-radius: 12px;
  background: rgba(7, 17, 38, .68);
}
.sql-view-template-card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.sql-view-template-card h3 { margin: 2px 0 0; font-size: 1rem; }
.sql-view-template-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.sql-view-template-parameters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sql-view-template-parameters label { display: grid; gap: 5px; }
.sql-view-template-parameters input {
  min-width: 0;
  border: 1px solid #294273;
  border-radius: 8px;
  background: #071126;
  color: #e9efff;
  padding: 8px 10px;
}
@media (max-width: 900px) {
  .sql-view-template-list, .sql-view-template-parameters { grid-template-columns: 1fr; }
  .sql-view-library-actions { justify-content: flex-start; }
}

/* V3.8 — Forge Architect */
.architect-shell { display:grid; gap:18px; width:min(1500px, calc(100% - 28px)); margin:18px auto 34px; }
.architect-upload-panel, .architect-deployment-panel, .architect-history-panel { min-width:0; }
.architect-upload-form { display:grid; gap:14px; }
.architect-drop-zone { display:grid; gap:6px; min-height:128px; place-content:center; text-align:center; border:1px dashed #526796; border-radius:14px; background:rgba(18,34,69,.45); padding:22px; cursor:pointer; }
.architect-drop-zone:hover { border-color:#8aa1d7; background:rgba(29,51,99,.5); }
.architect-drop-zone input { max-width:100%; margin:8px auto 0; }
.architect-upload-actions, .architect-deploy-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.architect-action-spacer { flex:1 1 auto; }
.architect-metadata dd { overflow-wrap:anywhere; }
.architect-hash { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.82rem; }
.architect-result-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr); gap:16px; margin-top:16px; }
.architect-result-card { min-width:0; border:1px solid var(--forge-border, #334a7b); border-radius:14px; padding:14px; background:rgba(8,18,40,.32); }
.architect-dependency-table-wrap { max-height:340px; overflow:auto; }
.architect-result-details { margin-block:10px; }
.architect-deploy-actions { margin-top:16px; padding-top:16px; border-top:1px solid var(--forge-border, #334a7b); }
.architect-history-row { cursor:pointer; }
.architect-history-row:hover, .architect-history-row:focus { background:rgba(71,101,166,.18); outline:none; }
@media (max-width: 900px) { .architect-result-grid { grid-template-columns:1fr; } }
@media (max-width: 520px) { .architect-shell { width:min(100% - 18px, 1500px); margin-top:10px; } .architect-deploy-actions .button { flex:1 1 100%; } }

/* V3.8.6 — Architect UX & Diagnostics */
.architect-file-input { position:absolute !important; inline-size:1px; block-size:1px; opacity:0; pointer-events:none; }
.architect-drop-zone {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:230px;
  border:1.5px dashed rgba(124,151,214,.62);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(28,48,88,.38), rgba(8,18,40,.28));
  padding:32px 22px;
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease, transform .16s ease, box-shadow .16s ease;
  outline:none;
}
.architect-drop-zone:hover,
.architect-drop-zone:focus-visible,
.architect-drop-zone.is-dragging {
  border-color:#91abeb;
  background:linear-gradient(180deg, rgba(42,69,124,.52), rgba(13,28,58,.42));
  box-shadow:0 0 0 4px rgba(91,124,250,.09), inset 0 0 38px rgba(91,124,250,.05);
}
.architect-drop-zone.is-dragging { transform:translateY(-2px); }
.architect-upload-icon {
  display:grid;
  place-items:center;
  inline-size:58px;
  block-size:58px;
  border-radius:16px;
  color:#b8c9f8;
  background:rgba(91,124,250,.14);
  border:1px solid rgba(123,151,219,.24);
}
.architect-upload-icon svg { inline-size:30px; block-size:30px; }
.architect-drop-copy { display:grid; gap:4px; text-align:center; }
.architect-drop-copy strong { font-size:1.02rem; color:var(--text,#f6f8ff); }
.architect-drop-copy span, .architect-drop-zone small { color:var(--muted,#9aa7c7); }
.architect-drop-zone small { max-width:620px; line-height:1.45; }
.architect-file-card {
  display:flex;
  gap:14px;
  align-items:center;
  padding:14px 16px;
  border:1px solid rgba(91,124,250,.26);
  border-radius:14px;
  background:rgba(14,30,62,.42);
}
.architect-file-icon {
  display:grid;
  place-items:center;
  flex:0 0 52px;
  height:52px;
  border-radius:12px;
  background:rgba(49,188,129,.12);
  border:1px solid rgba(49,188,129,.24);
  color:#86e7bd;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.06em;
}
.architect-file-info { display:grid; gap:3px; min-width:0; flex:1 1 auto; }
.architect-file-info strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.architect-file-actions { display:flex; gap:8px; flex-wrap:wrap; }
.architect-upload-actions { justify-content:space-between; border-top:1px solid rgba(82,103,150,.32); padding-top:14px; }
.architect-preflight-note { display:grid; gap:2px; max-width:680px; color:var(--muted,#9aa7c7); font-size:.82rem; line-height:1.4; }
.architect-preflight-note strong { color:#dbe5ff; font-size:.8rem; }

.architect-dependency-summary { display:flex; gap:8px; flex-wrap:wrap; margin:2px 0 12px; }
.architect-dependency-metric { display:inline-flex; gap:5px; align-items:center; border:1px solid rgba(95,117,168,.28); border-radius:999px; padding:5px 9px; font-size:.74rem; color:var(--muted,#9aa7c7); background:rgba(12,25,51,.35); }
.architect-dependency-metric.resolved strong { color:#7fe0b3; }
.architect-dependency-metric.issue strong { color:#ffab9b; }
.architect-dependency-metric.observed strong { color:#a9c2ff; }
.architect-dependency-table-wrap td:nth-child(2) { min-width:210px; }
.architect-dependency-table-wrap td strong { display:block; font-size:.83rem; color:#e9efff; }
.architect-dependency-meta, .architect-dependency-detail { display:block; margin-top:2px; color:var(--muted,#9aa7c7); font-size:.72rem; line-height:1.35; }
.architect-dependency-detail { color:#d0d9ef; }
.architect-dependency-status { display:inline-flex; align-items:center; border-radius:999px; padding:4px 8px; font-size:.72rem; font-weight:700; white-space:nowrap; }
.architect-dependency-status.resolved { background:rgba(49,188,129,.12); color:#82e3b8; }
.architect-dependency-status.issue { background:rgba(232,91,77,.12); color:#ffab9b; }
.architect-dependency-status.observed { background:rgba(91,124,250,.13); color:#b9c9ff; }
.architect-dependency-status.pending { background:rgba(227,177,75,.12); color:#f0cf88; }

.architect-diagnostic-section { align-content:start; }
.architect-diagnostic-card { display:flex; gap:12px; align-items:flex-start; border:1px solid rgba(95,117,168,.3); border-radius:14px; padding:14px; background:rgba(10,22,46,.42); }
.architect-diagnostic-card.success { border-color:rgba(49,188,129,.34); background:rgba(29,113,81,.10); }
.architect-diagnostic-card.warning { border-color:rgba(227,177,75,.38); background:rgba(134,91,24,.11); }
.architect-diagnostic-card.error { border-color:rgba(232,91,77,.35); background:rgba(130,46,43,.11); }
.architect-diagnostic-icon { display:grid; place-items:center; flex:0 0 34px; height:34px; border-radius:50%; background:rgba(110,136,198,.14); color:#bdd0ff; font-weight:850; }
.architect-diagnostic-card.success .architect-diagnostic-icon { background:rgba(49,188,129,.16); color:#88e5bb; }
.architect-diagnostic-card.warning .architect-diagnostic-icon { background:rgba(227,177,75,.16); color:#f0cf88; }
.architect-diagnostic-card.error .architect-diagnostic-icon { background:rgba(232,91,77,.16); color:#ffaaa0; }
.architect-diagnostic-content { min-width:0; display:grid; gap:7px; }
.architect-diagnostic-title { margin:0; font-weight:780; color:#eef3ff; }
.architect-diagnostic-summary { margin:0; color:#cbd6ed; line-height:1.5; }
.architect-diagnostic-context { display:flex; gap:6px; flex-wrap:wrap; margin-top:2px; }
.architect-diagnostic-context span { border-radius:7px; padding:4px 7px; background:rgba(94,116,170,.13); color:#bdcae5; font-size:.72rem; }
.architect-diagnostic-hints { margin:3px 0 0; padding-left:18px; color:#bdc9e0; font-size:.8rem; line-height:1.45; }
.architect-technical-details { margin-top:12px; }
.architect-technical-details summary { color:#9fb0d2; font-size:.8rem; }
.architect-result-details { margin:12px 0; }
.architect-log-label { margin:12px 0 6px; color:#9fb0d2; font-size:.74rem; font-weight:700; }
.architect-log { max-height:300px; overflow:auto; font-size:.73rem; line-height:1.42; }

@media (max-width: 680px) {
  .architect-drop-zone { min-height:205px; padding:24px 16px; }
  .architect-file-card { align-items:flex-start; flex-wrap:wrap; }
  .architect-file-info { min-width:calc(100% - 70px); }
  .architect-file-actions { width:100%; padding-left:66px; }
  .architect-file-actions .button { flex:1 1 auto; }
  .architect-upload-actions { align-items:stretch; }
  .architect-upload-actions .button { width:100%; }
}


/* V3.9.3 — Organization reauthentication */
.access-context-actions { display:flex; align-items:center; gap:.65rem; margin-left:auto; flex-wrap:wrap; justify-content:flex-end; }
.access-context-card.is-live { border-color: color-mix(in srgb, currentColor 14%, transparent); }
@media (max-width: 720px) { .access-context-actions { width:100%; justify-content:flex-start; margin-left:0; } }

/* V3.10.9 hotfix — Archy validation diagnostics */
.archy-validation-issues { margin-top:12px; border:1px solid rgba(232,91,77,.28); border-radius:14px; background:rgba(130,46,43,.07); overflow:hidden; }
.archy-validation-issues-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border-bottom:1px solid rgba(232,91,77,.18); }
.archy-validation-issues-heading h4 { margin:2px 0 0; color:#eef3ff; font-size:.92rem; }
.archy-validation-issues-heading .eyebrow { margin:0; }
.archy-validation-issues-list { display:grid; gap:0; }
.archy-validation-issue { display:grid; gap:9px; padding:13px 14px; min-width:0; }
.archy-validation-issue + .archy-validation-issue { border-top:1px solid rgba(232,91,77,.16); }
.archy-validation-issue-header { display:flex; gap:10px; align-items:flex-start; min-width:0; }
.archy-validation-issue-index { flex:0 0 auto; display:inline-flex; align-items:center; min-height:24px; border-radius:999px; padding:3px 8px; background:rgba(232,91,77,.15); color:#ffb3a8; font-size:.7rem; font-weight:800; }
.archy-validation-issue-object { display:grid; min-width:0; gap:2px; }
.archy-validation-issue-object strong { color:#eef3ff; font-size:.84rem; overflow-wrap:anywhere; }
.archy-validation-issue-object span { color:var(--muted,#9aa7c7); font-size:.7rem; font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; overflow-wrap:anywhere; }
.archy-validation-issue-message { margin:0; color:#f1d8d4; font-size:.84rem; line-height:1.5; overflow-wrap:anywhere; }
.archy-validation-issue-meta { display:flex; flex-wrap:wrap; gap:6px; min-width:0; }
.archy-validation-issue-meta > span { display:inline-flex; min-width:0; max-width:100%; border-radius:7px; padding:4px 7px; background:rgba(94,116,170,.12); color:#bdcae5; font-size:.7rem; line-height:1.35; overflow-wrap:anywhere; }
.archy-validation-issue-meta strong { color:#dce6fb; }
.archy-validation-issue-meta .archy-validation-path { flex-basis:100%; font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; white-space:normal; word-break:break-word; }
@media (max-width: 520px) {
  .archy-validation-issues-heading { align-items:flex-start; }
  .archy-validation-issue { padding:12px; }
  .archy-validation-issue-header { flex-direction:column; }
}


/* V3.10.9 Archy authoritative diagnostic output */
.archy-diagnostic-output {
  margin: 0 0 14px;
  max-height: 34rem;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.archy-diagnostic-output[hidden] { display: none; }

/* V3.12.5 — duplicação de Data Tables */
.datatable-duplicate-dialog {
  width: min(720px, calc(100vw - 32px));
}
.duplicate-table-form {
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 34px);
}
.duplicate-table-content {
  display: grid;
  gap: 14px;
  padding: 18px 20px;
  overflow: auto;
}
.duplicate-source-card {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.duplicate-source-card > div,
.duplicate-progress-grid > div {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
}
.duplicate-source-card span,
.duplicate-progress-grid dt {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: .7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.duplicate-source-card strong,
.duplicate-progress-grid dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.duplicate-guidance { margin: 0; }
.duplicate-table-fields {
  display: grid;
  gap: 13px;
}
.duplicate-table-fields > label {
  display: grid;
  gap: 6px;
  font-weight: 700;
}
.duplicate-table-fields textarea {
  resize: vertical;
  min-height: 92px;
}
.duplicate-options {
  display: grid;
  gap: 9px;
}
.duplicate-options .check-line {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 12px;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  background: var(--surface-3);
  cursor: pointer;
}
.duplicate-options .check-line input { margin-top: 3px; }
.duplicate-options .check-line span { display: grid; gap: 3px; }
.duplicate-options .check-line small { color: var(--muted); font-weight: 500; }
.duplicate-options .check-line:has(input:disabled) { opacity: .58; cursor: not-allowed; }
.duplicate-progress { display: grid; gap: 10px; }
.duplicate-progress .status { margin: 0; }
.duplicate-progress-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}
.duplicate-threshold-hint { max-width: 52%; font-size: .72rem; }
@media (max-width: 680px) {
  .duplicate-source-card,
  .duplicate-progress-grid { grid-template-columns: 1fr; }
  .duplicate-threshold-hint { max-width: none; }
}
