/* Premium shared modal, drawer, popover and drill-down layer for Analytics M&K. */
:root {
  --am-surface-0: var(--analytics-modal-surface-0, #071820);
  --am-surface-1: var(--analytics-modal-surface-1, #0a202a);
  --am-surface-2: var(--analytics-modal-surface-2, #0d2833);
  --am-surface-3: var(--analytics-modal-surface-3, #102f3b);
  --am-border: var(--analytics-theme-border, rgba(88, 135, 151, .26));
  --am-border-strong: var(--analytics-theme-border-strong, rgba(25, 208, 212, .48));
  --am-text: var(--analytics-modal-text, #edf7f8);
  --am-muted: var(--analytics-modal-muted, #9cb1b8);
  --am-soft: var(--analytics-modal-soft, #cbd9dc);
  --am-track: var(--analytics-modal-track, #17343f);
  --am-cyan: var(--analytics-theme-accent, #19d0d4);
  --am-purple: var(--analytics-chart-series-2, #8a5acb);
  --am-warning: var(--analytics-theme-warning, #e8ad2d);
  --am-danger: var(--analytics-theme-danger, #e86469);
  --am-success: var(--analytics-theme-success, #55e39b);
  --am-overlay: var(--analytics-theme-overlay, rgba(1, 9, 15, .72));
  --am-shadow: var(--analytics-theme-shadow, 0 26px 78px rgba(0, 0, 0, .58));
}

#stage,
.stage { position: relative; }

body:not([data-view="relatorios"]) .kpi[data-analytics-kpi-detail] {
  cursor: pointer;
}
body:not([data-view="relatorios"]) .kpi[data-analytics-kpi-detail]:focus-visible {
  outline: 2px solid var(--analytics-theme-focus, var(--am-cyan)) !important;
  outline-offset: 2px !important;
}

[data-analytics-help] {
  cursor: help;
}
.info[data-analytics-help] {
  position: relative;
}
.info[data-analytics-help]::before {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 50%;
}
[data-analytics-help]:focus-visible {
  outline: 2px solid var(--analytics-theme-focus, var(--am-cyan)) !important;
  outline-offset: 2px !important;
}
.info[data-analytics-help]:focus-visible {
  outline-offset: 6px !important;
}
.analytics-help-popover {
  position: fixed;
  z-index: 155;
  width: min(340px, calc(100vw - 16px));
  max-height: min(280px, calc(100vh - 16px));
  overflow: auto;
  box-sizing: border-box;
  padding: 11px 12px;
  border: 1px solid var(--am-border-strong);
  border-radius: 10px;
  color: var(--am-text);
  background: color-mix(in srgb, var(--am-surface-0) 96%, transparent);
  box-shadow: 0 14px 38px rgba(0,0,0,.38);
  font: 500 11px/1.48 Inter, Arial, sans-serif;
  overflow-wrap: anywhere;
}
.analytics-help-popover[hidden] { display: none !important; }
.analytics-help-popover[data-pinned="false"] {
  width: min(300px, calc(100vw - 16px));
  padding: 8px 10px;
  pointer-events: auto;
}
.analytics-help-popover[data-pinned="false"] .analytics-help-head { display: none; }
.analytics-help-popover[data-pinned="false"] .analytics-help-copy {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.analytics-help-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 7px;
}
.analytics-help-head strong {
  color: var(--am-text);
  font-size: 12px;
  font-weight: 760;
  letter-spacing: -.01em;
}
.analytics-help-close {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border: 1px solid var(--am-border);
  border-radius: 7px;
  padding: 0;
  color: var(--am-soft);
  background: var(--am-surface-2);
  font-size: 17px;
  line-height: 1;
}
.analytics-help-close:hover { border-color: var(--am-border-strong); background: var(--am-surface-3); color: var(--am-text); }
.analytics-help-close:focus-visible { outline: 2px solid var(--analytics-theme-focus, var(--am-cyan)); outline-offset: 2px; }
.analytics-help-copy { margin: 0; color: var(--am-muted); }

.analytics-export-menu {
  position: fixed;
  z-index: 154;
  width: min(300px, calc(100vw - 16px));
  box-sizing: border-box;
  display: grid;
  gap: 6px;
  padding: 7px;
  border: 1px solid var(--am-border-strong);
  border-radius: 10px;
  color: var(--am-text);
  background: color-mix(in srgb, var(--am-surface-0) 97%, transparent);
  box-shadow: 0 14px 38px rgba(0,0,0,.38);
  font-family: Inter, Arial, sans-serif;
}
.analytics-export-menu[hidden] { display: none !important; }
.analytics-export-menu [role="menuitem"] {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 10px 11px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--am-text);
  background: transparent;
  text-align: left;
}
.analytics-export-menu [role="menuitem"]:hover {
  border-color: var(--am-border);
  background: var(--am-surface-2);
}
.analytics-export-menu [role="menuitem"]:focus-visible {
  outline: 2px solid var(--analytics-theme-focus, var(--am-cyan));
  outline-offset: 1px;
  border-color: var(--am-border-strong);
  background: var(--am-surface-2);
}
.analytics-export-menu [role="menuitem"] strong {
  color: var(--am-text);
  font-size: 11.5px;
  font-weight: 760;
}
.analytics-export-menu [role="menuitem"] span {
  color: var(--am-muted);
  font-size: 9.8px;
  line-height: 1.38;
}

html[data-analytics-theme="executivo-claro"] .analytics-help-popover {
  background: var(--am-surface-0);
  box-shadow: 0 8px 20px rgba(28,52,61,.16);
}
html[data-analytics-theme="executivo-claro"] .analytics-export-menu {
  background: var(--am-surface-0);
  box-shadow: 0 8px 20px rgba(28,52,61,.16);
}
html[data-analytics-theme="alto-contraste"] .analytics-help-popover {
  border-width: 2px;
  background: var(--am-surface-0);
  box-shadow: none;
}
html[data-analytics-theme="alto-contraste"] .analytics-export-menu {
  border-width: 2px;
  background: var(--am-surface-0);
  box-shadow: none;
}
html[data-analytics-theme="alto-contraste"] :is([data-analytics-help],.analytics-help-close):focus-visible {
  outline: 3px solid var(--analytics-theme-focus, #ffe66d) !important;
  outline-offset: 2px !important;
}
html[data-analytics-theme="alto-contraste"] .analytics-export-menu [role="menuitem"]:focus-visible {
  outline: 3px solid var(--analytics-theme-focus, #ffe66d) !important;
  outline-offset: 2px !important;
}

@media (forced-colors: active) {
  .analytics-help-popover {
    color: CanvasText;
    background: Canvas;
    border-color: Highlight;
    box-shadow: none;
  }
  .analytics-export-menu {
    color: CanvasText;
    background: Canvas;
    border-color: Highlight;
    box-shadow: none;
  }
  .analytics-help-copy,
  .analytics-help-head strong { color: CanvasText; }
  .analytics-help-close {
    color: ButtonText;
    background: ButtonFace;
    border-color: ButtonText;
  }
  .analytics-export-menu [role="menuitem"] {
    color: ButtonText;
    background: ButtonFace;
    border-color: ButtonText;
  }
  :is([data-analytics-help],.analytics-help-close):focus-visible { outline-color: Highlight !important; }
  .analytics-export-menu [role="menuitem"]:focus-visible { outline-color: Highlight !important; }
  .analytics-records-table-wrap:focus-visible { outline-color: Highlight !important; }
}

#stage > .analytics-records-backdrop,
#stage > .analytics-drilldown-backdrop,
.analytics-modal-backdrop {
  position: absolute !important;
  inset: 0 !important;
  z-index: 160 !important;
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  overflow: hidden;
  padding: 18px !important;
  background: var(--am-overlay) !important;
  backdrop-filter: blur(3px) saturate(.85);
  animation: analytics-modal-fade .18s ease-out both;
  contain: layout paint;
}

/* Desktop overlays belong to the content canvas, not to the persistent shell. */
#stage > .analytics-records-backdrop,
#stage > .analytics-drilldown-backdrop,
#stage > .analytics-modal-backdrop {
  left: var(--analytics-shell-width, 216px) !important;
}
.stage.analytics-sidebar-collapsed > .analytics-records-backdrop,
.stage.analytics-sidebar-collapsed > .analytics-drilldown-backdrop,
.stage.analytics-sidebar-collapsed > .analytics-modal-backdrop {
  left: 68px !important;
}

.analytics-modal-backdrop[data-analytics-modal-variant="standard"],
.analytics-modal-backdrop[data-analytics-modal-variant="wide"] {
  display: grid !important;
  place-items: center !important;
}

.analytics-modal-backdrop[data-analytics-modal-variant="drawer"] {
  display: flex !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  padding: 12px !important;
}

.analytics-modal-surface {
  box-sizing: border-box;
  max-width: 100%;
  max-height: 100%;
  color: var(--am-text);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--am-cyan) 3%, transparent), transparent 22%),
    var(--am-surface-0) !important;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 14px !important;
  box-shadow: var(--am-shadow) !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.48 !important;
  animation: analytics-modal-enter .19s cubic-bezier(.22, 1, .36, 1) both;
}

.analytics-modal-surface:focus { outline: none; }
.analytics-modal-surface :is(button,a,input,select,textarea,[tabindex]):focus-visible,
.analytics-filter-popover :is(button,a,input,select,textarea,[tabindex]):focus-visible {
  outline: 2px solid var(--am-cyan) !important;
  outline-offset: 2px !important;
}

.analytics-records-dialog.analytics-modal-surface {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(720px, calc(100% - 28px)) !important;
  max-height: min(620px, calc(100% - 28px)) !important;
  overflow: hidden !important;
  padding: 0 !important;
}

body[data-view="leads"] .analytics-records-dialog.analytics-modal-surface {
  width: min(960px, calc(100% - 28px)) !important;
}
body[data-view="leads"] .analytics-records-list--table {
  min-width: 0;
  overflow: auto !important;
}
body[data-view="leads"] .analytics-records-table {
  width: 100%;
  min-width: 720px;
  table-layout: fixed;
}
body[data-view="leads"] .analytics-records-table :is(th,td) {
  min-width: 0 !important;
  width: auto !important;
  text-align: left !important;
}
body[data-view="leads"] .analytics-records-table :is(th,td):nth-child(1) { width: 30%; }
body[data-view="leads"] .analytics-records-table :is(th,td):nth-child(2) { width: 22%; }
body[data-view="leads"] .analytics-records-table :is(th,td):nth-child(3) { width: 24%; }
body[data-view="leads"] .analytics-records-table :is(th,td):nth-child(4) { width: 24%; }
body[data-view="leads"] .analytics-records-table td {
  color: var(--am-text) !important;
  overflow-wrap: anywhere;
  white-space: normal !important;
}
body[data-view="leads"] .analytics-records-table .analytics-table-action {
  color: var(--am-cyan) !important;
}

.analytics-records-dialog--ranking.analytics-modal-surface {
  width: min(1020px, calc(100% - 20px)) !important;
  max-height: min(680px, calc(100% - 20px)) !important;
}

.analytics-records-head {
  min-height: 58px;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 13px 16px 13px 18px !important;
  border-bottom: 1px solid var(--am-border) !important;
  background: linear-gradient(180deg, rgba(25,208,212,.035), rgba(13,40,51,.84));
}

.analytics-records-head > span,
.analytics-records-head [data-analytics-modal-title] {
  color: var(--am-text) !important;
  font-size: 17px !important;
  font-weight: 720 !important;
  letter-spacing: -.01em;
}

.analytics-record-detail-shell.analytics-modal-surface {
  width: min(820px, calc(100% - 24px)) !important;
  max-height: min(700px, calc(100% - 24px)) !important;
}
.analytics-record-detail-head > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.analytics-record-detail-type {
  color: var(--am-cyan) !important;
  font-size: 9.5px !important;
  font-weight: 760 !important;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.analytics-record-detail-body {
  display: grid !important;
  align-content: start;
  gap: 12px !important;
}
.analytics-record-detail-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.analytics-record-detail-chips > span {
  min-width: 0;
  border: 1px solid var(--am-border) !important;
  border-radius: 999px;
  padding: 6px 9px;
  color: var(--am-muted) !important;
  background: var(--am-surface-2) !important;
  font-size: 10.5px !important;
  line-height: 1.2;
}
.analytics-record-detail-chips b { color: var(--am-text) !important; }
.analytics-record-detail-section {
  display: grid;
  gap: 8px;
  border: 1px solid var(--am-border) !important;
  border-radius: 11px;
  padding: 13px;
  background: var(--am-surface-1) !important;
}
.analytics-record-detail-section h3 {
  margin: 0 !important;
  color: var(--am-text) !important;
  font-size: 12px !important;
  font-weight: 760 !important;
}
.analytics-record-detail-section p {
  margin: 0 !important;
  color: var(--am-muted) !important;
  font-size: 11.5px !important;
  line-height: 1.55 !important;
}
.analytics-record-detail-summary {
  min-width: 0;
}
.analytics-record-detail-summary .analytics-records-table-wrap {
  max-height: 280px !important;
  border: 1px solid var(--am-border) !important;
  border-radius: 9px;
}
.analytics-record-detail-unavailable {
  border-style: dashed !important;
  background: color-mix(in srgb, var(--am-warning) 6%, var(--am-surface-1)) !important;
}
.analytics-record-detail-footer {
  min-height: 58px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 14px 10px 18px !important;
  border-top: 1px solid var(--am-border) !important;
  background: var(--am-surface-1) !important;
}
.analytics-record-detail-source {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.analytics-record-detail-source strong {
  overflow: hidden;
  color: var(--am-text) !important;
  font-size: 10.5px !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.analytics-record-detail-source span {
  overflow: hidden;
  color: var(--am-muted) !important;
  font-size: 9.5px !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.analytics-record-detail-close {
  flex: 0 0 auto;
  min-height: 34px;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 8px;
  padding: 0 13px;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font: 700 11px/1 Inter, Arial, sans-serif !important;
}
.analytics-record-detail-close:hover { background: var(--am-surface-3) !important; }

.analytics-records-close,
.analytics-drilldown-close {
  display: grid !important;
  place-items: center;
  flex: 0 0 auto;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px;
  min-height: 34px;
  box-sizing: border-box;
  border: 1px solid var(--am-border) !important;
  border-radius: 8px !important;
  padding: 0 !important;
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.analytics-records-close:hover,
.analytics-drilldown-close:hover {
  border-color: var(--am-border-strong) !important;
  color: var(--am-text) !important;
  background: var(--am-surface-3) !important;
}

.analytics-records-list {
  min-height: 0;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  box-sizing: border-box;
  padding: 16px 18px 18px !important;
  gap: 9px !important;
  scrollbar-color: var(--analytics-theme-scroll-thumb, #31505c) var(--analytics-theme-scroll-track, var(--am-surface-0));
}

.analytics-records-list--table { padding: 0 !important; overflow: hidden !important; }
.analytics-records-table-wrap {
  max-height: 100% !important;
  overflow: auto !important;
  scrollbar-color: var(--analytics-theme-scroll-thumb, #31505c) var(--analytics-theme-scroll-track, var(--am-surface-0)) !important;
}
.analytics-records-table-wrap:focus-visible {
  outline: 2px solid var(--analytics-theme-focus, var(--am-cyan)) !important;
  outline-offset: -2px !important;
  border-radius: 6px !important;
}
.analytics-records-table { font-size: 12px !important; }
.analytics-records-table th {
  padding: 12px 13px !important;
  color: var(--am-muted) !important;
  background: var(--am-surface-1) !important;
  font-size: 11px !important;
  letter-spacing: .015em;
}
.analytics-records-table td { padding: 10px 13px !important; font-size: 12px !important; }
.analytics-records-seller-copy strong { font-size: 12px !important; }
.analytics-records-seller-copy small { font-size: 10px !important; }
.analytics-record {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 12px !important;
  padding: 11px 12px !important;
  border-color: var(--am-border) !important;
  border-radius: 9px !important;
  background: var(--am-surface-1) !important;
}
.analytics-record span { overflow: visible !important; color: var(--am-soft) !important; font-size: 12px !important; white-space: normal !important; }
.analytics-record b { color: var(--am-text) !important; }
.analytics-records-empty {
  padding: 14px;
  border: 1px dashed color-mix(in srgb, var(--am-warning) 52%, transparent);
  border-radius: 9px;
  color: var(--am-warning) !important;
  background: color-mix(in srgb, var(--am-warning) 7%, var(--am-surface-1));
  font-size: 12px;
}
.analytics-records-state {
  display: grid;
  gap: 6px;
  align-content: start;
}
.analytics-records-state strong { color: var(--am-text) !important; font-size: 12px !important; }
.analytics-records-state span { color: var(--am-muted) !important; font-size: 11px !important; line-height: 1.45 !important; }
.analytics-records-retry,
.analytics-records-pagination button {
  min-height: 34px;
  border: 1px solid var(--am-border) !important;
  border-radius: 8px !important;
  padding: 0 11px;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font: 650 11px/1 Inter, Arial, sans-serif !important;
}
.analytics-records-retry { justify-self: start; margin-top: 4px; }
.analytics-records-retry:hover,
.analytics-records-pagination button:hover:not(:disabled) {
  border-color: var(--am-border-strong) !important;
  background: var(--am-surface-3) !important;
}
.analytics-records-pagination button:disabled { opacity: .46; cursor: not-allowed; }
.analytics-records-pagination {
  min-height: 54px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 14px !important;
  border-top: 1px solid var(--am-border) !important;
  background: var(--am-surface-1) !important;
}
.analytics-records-page-status {
  min-width: 0;
  color: var(--am-muted) !important;
  font-size: 10.5px !important;
  line-height: 1.35 !important;
  text-align: center;
}

.analytics-drilldown-dialog.analytics-modal-surface {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) auto !important;
  width: min(900px, calc(100% - 18px)) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  animation: analytics-drawer-enter .2s cubic-bezier(.22, 1, .36, 1) both;
}

.analytics-drilldown-head {
  grid-template-columns: 94px minmax(0, 1fr) 38px !important;
  min-height: 68px !important;
  padding: 11px 14px !important;
  gap: 12px !important;
  border-bottom: 1px solid var(--am-border) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--am-cyan) 4%, var(--am-surface-1)), var(--am-surface-1)) !important;
}
.analytics-drilldown-heading { gap: 3px !important; }
.analytics-drilldown-breadcrumb {
  color: var(--am-muted) !important;
  font-size: 10.5px !important;
  letter-spacing: .02em;
}
.analytics-drilldown-title {
  color: var(--am-text) !important;
  font-size: 18px !important;
  font-weight: 730 !important;
  letter-spacing: -.015em;
}
.analytics-drilldown-back {
  min-height: 34px !important;
  padding: 0 10px !important;
  border: 1px solid var(--am-border) !important;
  border-radius: 8px !important;
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
  font-size: 10.5px !important;
}
.analytics-drilldown-back:hover { border-color: var(--am-border-strong) !important; background: var(--am-surface-3) !important; }

.analytics-drilldown-body {
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  box-sizing: border-box;
  padding: 17px 18px 22px !important;
  color: var(--am-soft);
  font-size: 12.5px !important;
  scrollbar-color: var(--analytics-theme-scroll-thumb, #31505c) var(--analytics-theme-scroll-track, var(--am-surface-0)) !important;
}
.analytics-drilldown-context { gap: 7px !important; margin-bottom: 14px !important; }
.analytics-drilldown-context span {
  padding: 5px 8px !important;
  border-color: var(--am-border) !important;
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
  font-size: 10px !important;
}
.analytics-drilldown-section { margin-bottom: 17px !important; }
.analytics-drilldown-section h3 {
  margin-bottom: 9px !important;
  color: var(--am-text) !important;
  font-size: 12.5px !important;
  font-weight: 680 !important;
  letter-spacing: .012em !important;
}
.analytics-drilldown-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 9px !important;
}
.analytics-drilldown-metric {
  min-height: 86px !important;
  padding: 11px 12px !important;
  border-color: var(--am-border) !important;
  border-radius: 10px !important;
  background: linear-gradient(160deg, rgba(25,208,212,.025), var(--am-surface-1)) !important;
}
.analytics-drilldown-metric span { color: var(--am-muted) !important; font-size: 10.5px !important; }
.analytics-drilldown-metric strong { color: var(--am-text) !important; font-size: 18px !important; line-height: 1.12; }
.analytics-drilldown-metric small { color: var(--am-muted) !important; font-size: 9.5px !important; line-height: 1.35 !important; }
.analytics-drilldown-metric.sem-dado {
  border-color: color-mix(in srgb, var(--am-warning) 44%, transparent) !important;
  border-style: dashed !important;
  background: color-mix(in srgb, var(--am-warning) 5%, var(--am-surface-1)) !important;
}
.analytics-drilldown-facts { gap: 8px !important; }
.analytics-drilldown-facts > div,
.analytics-drilldown-distribution > div {
  padding: 9px 10px !important;
  border-color: var(--am-border) !important;
  border-radius: 8px !important;
  background: var(--am-surface-1) !important;
}
.analytics-drilldown-facts span,
.analytics-drilldown-distribution span { color: var(--am-muted) !important; font-size: 11px !important; }
.analytics-drilldown-facts b,
.analytics-drilldown-distribution b { color: var(--am-text) !important; font-size: 11.5px !important; }
.analytics-drilldown-facts small { color: var(--am-muted) !important; font-size: 9.5px !important; }

.analytics-drilldown-series {
  gap: 7px !important;
  padding: 11px !important;
  border-color: var(--am-border) !important;
  border-radius: 9px !important;
  background: var(--am-surface-1) !important;
}
.analytics-drilldown-series-row {
  grid-template-columns: 82px minmax(0, 1fr) 96px !important;
  min-height: 22px !important;
  gap: 9px !important;
}
.analytics-drilldown-series-row > span:first-child { color: var(--am-muted) !important; font-size: 10px !important; }
.analytics-drilldown-series-row b { color: var(--am-text) !important; font-size: 10.5px !important; }
.analytics-drilldown-series-track { height: 7px !important; background: var(--am-track) !important; }
.analytics-drilldown-series-track i { transition-duration: .2s !important; }

.analytics-drilldown-tabs {
  gap: 6px !important;
  padding: 2px 0 8px !important;
  scrollbar-width: thin;
}
.analytics-drilldown-tabs button {
  min-height: 32px;
  padding: 7px 10px !important;
  border-radius: 8px !important;
  color: var(--am-muted) !important;
  background: var(--am-surface-1) !important;
  font-size: 10.5px !important;
}
.analytics-drilldown-tabs button[aria-selected="true"] {
  color: var(--am-text) !important;
  border-color: var(--am-border-strong) !important;
  background: var(--am-surface-3) !important;
}
.analytics-drilldown-tab-panel { min-height: 120px !important; }
.analytics-drilldown-tab-list { gap: 7px !important; max-height: 330px !important; }
.analytics-drilldown-tab-record {
  gap: 7px 12px !important;
  padding: 11px !important;
  border-color: var(--am-border) !important;
  border-radius: 9px !important;
  background: var(--am-surface-1) !important;
}
.analytics-drilldown-tab-record span { color: var(--am-muted) !important; font-size: 10.5px !important; }
.analytics-drilldown-tab-record b { color: var(--am-text) !important; }

.analytics-drilldown-related-scroll { gap: 7px !important; max-height: 270px !important; }
.analytics-drilldown-client-pager {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--am-border) !important;
}
.analytics-drilldown-client-pager button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--am-border) !important;
  border-radius: 8px !important;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font: 650 10px/1 Inter, Arial, sans-serif !important;
}
.analytics-drilldown-client-pager button:hover:not(:disabled) {
  border-color: var(--am-border-strong) !important;
  background: var(--am-surface-3) !important;
}
.analytics-drilldown-client-pager button:disabled { opacity: .46; cursor: not-allowed; }
.analytics-drilldown-client-page-status {
  min-width: 0;
  color: var(--am-muted) !important;
  font-size: 10px !important;
  line-height: 1.35;
  text-align: center;
}
.analytics-drilldown-client-coverage {
  margin-top: 7px;
  padding: 8px 10px;
  border: 1px dashed color-mix(in srgb, var(--am-warning) 52%, transparent) !important;
  border-radius: 8px;
  color: var(--am-warning) !important;
  background: color-mix(in srgb, var(--am-warning) 6%, transparent) !important;
  font-size: 10px !important;
  line-height: 1.42;
}
.analytics-drilldown-paged-collection {
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 7px;
}
.analytics-drilldown-pager-host { min-width: 0; }
.analytics-drilldown-collection-pager {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--am-border) !important;
}
.analytics-drilldown-collection-pager button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--am-border) !important;
  border-radius: 8px !important;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font: 650 10px/1 Inter, Arial, sans-serif !important;
}
.analytics-drilldown-collection-pager button:hover:not(:disabled) {
  border-color: var(--am-border-strong) !important;
  background: var(--am-surface-3) !important;
}
.analytics-drilldown-collection-pager button:disabled { opacity: .46; cursor: not-allowed; }
.analytics-drilldown-collection-pager > span {
  min-width: 0;
  color: var(--am-muted) !important;
  font-size: 10px !important;
  line-height: 1.35;
  text-align: center;
}
.analytics-drilldown-collection-coverage {
  margin-top: 7px;
  padding: 8px 10px;
  border: 1px dashed color-mix(in srgb, var(--am-warning) 52%, transparent) !important;
  border-radius: 8px;
  color: var(--am-warning) !important;
  background: color-mix(in srgb, var(--am-warning) 6%, transparent) !important;
  font-size: 10px !important;
  line-height: 1.42;
}
.analytics-unified-history-pager { margin-top: 7px; }
.analytics-drilldown-related {
  gap: 4px !important;
  padding: 10px 11px !important;
  border-color: var(--am-border) !important;
  border-radius: 9px !important;
  background: var(--am-surface-1) !important;
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.analytics-drilldown-related:hover { border-color: var(--am-border-strong) !important; background: var(--am-surface-2) !important; transform: translateY(-1px); }
.analytics-drilldown-related strong { font-size: 11.5px !important; }
.analytics-drilldown-related span { color: var(--am-muted) !important; font-size: 10px !important; }
.analytics-drilldown-record { padding: 9px 10px !important; }
.analytics-drilldown-record strong { font-size: 11px !important; }
.analytics-drilldown-record span { color: var(--am-muted) !important; font-size: 10px !important; }

.analytics-drilldown-state {
  gap: 5px !important;
  padding: 14px !important;
  border-radius: 9px !important;
  background: var(--am-surface-1) !important;
}
.analytics-drilldown-state strong { font-size: 12px !important; }
.analytics-drilldown-state span { color: var(--am-muted) !important; font-size: 11px !important; }
.analytics-drilldown-state.loading { border-color: color-mix(in srgb, var(--am-cyan) 55%, var(--am-border)) !important; }
.analytics-drilldown-state.insufficient { border-color: color-mix(in srgb, var(--am-warning) 58%, var(--am-border)) !important; background: color-mix(in srgb, var(--am-warning) 6%, var(--am-surface-1)) !important; }
.analytics-drilldown-state.error { border-color: color-mix(in srgb, var(--am-danger) 62%, var(--am-border)) !important; background: color-mix(in srgb, var(--am-danger) 6%, var(--am-surface-1)) !important; }
.analytics-drilldown-state.success { border-color: color-mix(in srgb, var(--am-success) 54%, var(--am-border)) !important; background: color-mix(in srgb, var(--am-success) 6%, var(--am-surface-1)) !important; }
.analytics-drilldown-state.success strong { color: var(--am-success) !important; }

.analytics-call-media {
  gap: 9px !important;
  margin-top: 5px !important;
  padding-top: 10px !important;
}
.analytics-call-media > strong { font-size: 11px !important; }
.analytics-call-media audio { height: 34px !important; }
.analytics-call-media-state,
.analytics-call-transcription,
.analytics-call-transcription span,
.analytics-call-transcription p { font-size: 10.5px !important; line-height: 1.5 !important; }
.analytics-call-media-button {
  min-height: 32px !important;
  padding: 7px 10px !important;
  border-radius: 7px !important;
  font-size: 10px !important;
}
.analytics-ai-analysis { gap: 9px !important; padding: 10px !important; border-radius: 9px !important; }
.analytics-ai-analysis > strong,
.analytics-ai-analysis-reason { font-size: 10.5px !important; }
.analytics-ai-analysis-grid b,
.analytics-ai-analysis-grid span,
.analytics-ai-evidence span { font-size: 10px !important; }
.analytics-ai-analysis-meta span { font-size: 9px !important; }
.analytics-unified-history-toolbar input { height: 34px !important; font-size: 10.5px !important; }
.analytics-unified-history-toolbar > span { font-size: 10px !important; }
.analytics-unified-timeline { gap: 8px !important; max-height: 390px !important; }
.analytics-unified-event { gap: 7px !important; padding: 11px !important; border-radius: 9px !important; }
.analytics-unified-event > header strong { font-size: 10.5px !important; }
.analytics-unified-event > header time,
.analytics-unified-event-meta span { font-size: 9.5px !important; }
.analytics-unified-event > p { font-size: 10.5px !important; }
.analytics-drilldown-notes { gap: 6px !important; color: var(--am-muted) !important; font-size: 11px !important; }
.analytics-drilldown-footer[hidden] { display: none !important; }
.analytics-drilldown-footer {
  min-height: 54px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(0, 1.7fr);
  align-items: center;
  gap: 5px 14px;
  padding: 9px 16px 10px !important;
  border-top: 1px solid var(--am-border) !important;
  color: var(--am-muted) !important;
  background: var(--am-surface-1) !important;
  font-size: 10px !important;
}
.analytics-drilldown-source {
  min-width: 0;
  display: grid;
  gap: 2px;
  color: var(--am-muted) !important;
  font-size: 10px !important;
}
.analytics-drilldown-source strong {
  min-width: 0;
  overflow: hidden;
  color: var(--am-text) !important;
  font-size: 10.5px !important;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.analytics-drilldown-footer > .analytics-drilldown-source strong {
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}
.analytics-drilldown-source > span { color: var(--am-muted) !important; }
.analytics-drilldown-source-meta {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px 7px;
}
.analytics-drilldown-source-meta span {
  padding: 3px 6px;
  border: 1px solid var(--am-border);
  border-radius: 999px;
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
  white-space: nowrap;
}
.analytics-drilldown-footer > .analytics-drilldown-source-meta span {
  overflow-wrap: anywhere;
  white-space: normal;
}
.analytics-drilldown-source-reason {
  grid-column: 1 / -1;
  min-width: 0;
  color: var(--am-warning) !important;
  font-size: 9.5px !important;
  line-height: 1.35;
}
.analytics-drilldown-source-basis {
  grid-column: 1 / -1;
  min-width: 0;
  display: grid;
  gap: 3px;
  color: var(--am-soft) !important;
  font-size: 9.5px !important;
  line-height: 1.38;
}
.analytics-drilldown-source-basis strong { color: var(--am-text) !important; font-size: 10px !important; }
.analytics-drilldown-provenance {
  display: grid;
  gap: 6px;
  margin: 10px 0 2px;
  padding: 10px 11px;
  border: 1px solid var(--am-border);
  border-radius: 9px;
  background: var(--am-surface-2) !important;
  color: var(--am-soft) !important;
  font-size: 10px !important;
  line-height: 1.4;
}
.analytics-drilldown-provenance.is-partial { border-color: color-mix(in srgb, var(--am-warning) 55%, var(--am-border)); }
.analytics-drilldown-provenance > strong { color: var(--am-text) !important; font-size: 11px !important; }
.analytics-drilldown-provenance-list { display: grid; gap: 4px; }
.analytics-drilldown-provenance-list span { overflow-wrap: anywhere; }
.analytics-drilldown-provenance-list b { color: var(--am-text) !important; }

.analytics-filter-popover {
  z-index: 145 !important;
  width: min(350px, calc(100% - 28px)) !important;
  box-sizing: border-box;
  padding: 15px !important;
  color: var(--am-text) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--am-cyan) 3%, var(--am-surface-0)), var(--am-surface-0)) !important;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 12px !important;
  box-shadow: var(--am-shadow) !important;
  font-size: 12.5px !important;
  line-height: 1.42 !important;
  animation: analytics-popover-enter .17s cubic-bezier(.22,1,.36,1) both;
}
.analytics-filter-title {
  margin-bottom: 13px !important;
  color: var(--am-text);
  font-size: 16px !important;
  font-weight: 720 !important;
}
.analytics-filter-close {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border: 1px solid var(--am-border) !important;
  border-radius: 7px !important;
  padding: 0 !important;
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
}
.analytics-filter-row { gap: 6px !important; margin: 10px 0 !important; }
.analytics-filter-row label { color: var(--am-muted) !important; font-size: 11.5px !important; }
.analytics-filter-row select {
  min-height: 35px !important;
  border-color: var(--am-border) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font-size: 12px !important;
}
.analytics-filter-compare { color: var(--am-soft) !important; font-size: 12px !important; }
.analytics-filter-actions button {
  min-height: 34px !important;
  border-radius: 8px !important;
  padding: 7px 11px !important;
  font-size: 11.5px !important;
}
.analytics-scope-drilldown { min-height: 28px; color: var(--analytics-theme-accent-strong, var(--am-cyan)) !important; font-size: 10.5px !important; }

:is(.chart-tip,.donut-tip,.heat-tip) {
  max-width: 280px;
  box-sizing: border-box;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 9px !important;
  padding: 8px 10px !important;
  color: var(--am-text) !important;
  background: color-mix(in srgb, var(--am-surface-0) 97%, transparent) !important;
  box-shadow: var(--am-shadow) !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 11.5px !important;
  line-height: 1.4 !important;
}

.history-processing-dialog.analytics-modal-surface {
  width: min(760px, calc(100% - 28px)) !important;
  max-height: min(650px, calc(100% - 28px)) !important;
}
.history-processing-list { min-height: 0 !important; max-height: none !important; overflow-y: auto !important; }
.history-processing-actions {
  position: relative;
  z-index: 1;
  min-height: 52px;
  box-sizing: border-box;
  padding: 9px 14px !important;
  border-top: 1px solid var(--am-border) !important;
  background: var(--am-surface-1) !important;
}

body[data-view="relatorios"] .report-filter-dock {
  z-index: 145 !important;
  width: min(680px, calc(100% - 36px)) !important;
  box-sizing: border-box;
  padding: 13px 14px !important;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 12px !important;
  color: var(--am-text);
  background: linear-gradient(180deg, color-mix(in srgb, var(--am-cyan) 3%, var(--am-surface-0)), var(--am-surface-0)) !important;
  box-shadow: var(--am-shadow) !important;
  animation: analytics-popover-enter .17s cubic-bezier(.22,1,.36,1) both;
}
body[data-view="relatorios"] .report-filter-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 11px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--am-border);
}
body[data-view="relatorios"] .report-filter-head strong { color: var(--am-text); font-size: 15px; font-weight: 720; }
body[data-view="relatorios"] .report-filter-head span { color: var(--am-muted); font-size: 9.5px; text-align: right; }
body[data-view="relatorios"] .filter-grid { gap: 9px !important; }
body[data-view="relatorios"] .filter-grid label { gap: 5px !important; color: var(--am-muted) !important; font-size: 10.5px !important; }
body[data-view="relatorios"] .filter-grid select {
  height: 35px !important;
  border-color: var(--am-border) !important;
  border-radius: 8px !important;
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  font-size: 11.5px !important;
}
body[data-view="relatorios"] .filter-help { margin: 9px 0 0 !important; color: var(--am-muted) !important; font-size: 10px !important; }

body[data-view="relatorios"] .export-menu {
  z-index: 150 !important;
  width: 210px !important;
  padding: 7px !important;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 10px !important;
  background: var(--am-surface-0) !important;
  box-shadow: var(--am-shadow) !important;
  animation: analytics-popover-enter .17s cubic-bezier(.22,1,.36,1) both;
}
body[data-view="relatorios"] .export-menu button {
  min-height: 34px !important;
  border-radius: 7px !important;
  padding: 7px 9px !important;
  color: var(--am-soft) !important;
  font-size: 11px !important;
  transition: background .18s ease, color .18s ease;
}
body[data-view="relatorios"] .export-menu button:hover { color: var(--am-text) !important; background: var(--am-surface-2) !important; }

body[data-view="relatorios"] .history-card {
  position: relative;
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 11px !important;
  padding: 11px !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--am-cyan) 2.5%, var(--am-surface-1)), var(--am-surface-1)) !important;
  box-shadow: var(--am-shadow);
  animation: analytics-modal-enter .18s cubic-bezier(.22,1,.36,1) both;
}
body[data-view="relatorios"] .history-card .selected-head strong { color: var(--am-text) !important; font-size: 13px !important; }
body[data-view="relatorios"] .history-card .selected-head span,
body[data-view="relatorios"] .history-list { font-size: 10.5px !important; }

body[data-view="relatorios"] .pdf-qa {
  border: 1px solid var(--am-border-strong) !important;
  border-radius: 12px !important;
  background: var(--am-surface-0) !important;
  box-shadow: var(--am-shadow) !important;
  overflow: hidden;
  animation: analytics-modal-enter .18s cubic-bezier(.22,1,.36,1) both;
}
body[data-view="relatorios"] .pdf-qa-head {
  min-height: 54px;
  box-sizing: border-box;
  border-bottom: 1px solid var(--am-border) !important;
  background: var(--am-surface-1) !important;
}
body[data-view="relatorios"] .pdf-qa-close { min-width: 32px; min-height: 32px; border-radius: 7px !important; }
body[data-view="relatorios"] .assistant-report-card,
body[data-view="relatorios"] .assistant-progress {
  border-color: var(--am-border) !important;
  border-radius: 10px !important;
  background: var(--am-surface-1) !important;
}

/* Non-default themes override only color/elevation. Geometry remains identical,
 * so the approved M&K Dark layout and all drill-down contracts stay stable. */
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-records-head,
  .analytics-drilldown-head
) {
  color: var(--am-text) !important;
  background: linear-gradient(180deg, var(--am-surface-2), var(--am-surface-1)) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-records-close,
  .analytics-drilldown-close,
  .analytics-drilldown-back,
  .analytics-filter-close
) {
  color: var(--am-soft) !important;
  background: var(--am-surface-2) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-records-close,
  .analytics-drilldown-close,
  .analytics-drilldown-back,
  .analytics-filter-close
):hover {
  color: var(--am-text) !important;
  background: var(--am-surface-3) !important;
  border-color: var(--am-border-strong) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .analytics-records-table th {
  color: var(--am-muted) !important;
  background: var(--am-surface-1) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-record span,
  .analytics-drilldown-body,
  .analytics-drilldown-context span,
  .analytics-drilldown-facts span,
  .analytics-drilldown-distribution span,
  .analytics-drilldown-series-row > span:first-child,
  .analytics-drilldown-tabs button,
  .analytics-drilldown-tab-record span,
  .analytics-drilldown-related span,
  .analytics-drilldown-record span,
  .analytics-drilldown-state span,
  .analytics-drilldown-notes,
  .analytics-drilldown-source
) { color: var(--am-muted) !important; }
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-record b,
  .analytics-drilldown-title,
  .analytics-drilldown-metric strong,
  .analytics-drilldown-facts b,
  .analytics-drilldown-distribution b,
  .analytics-drilldown-series-row b,
  .analytics-drilldown-tab-record b,
  .analytics-drilldown-state strong
) { color: var(--am-text) !important; }
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-drilldown-series,
  .analytics-drilldown-tabs button,
  .analytics-drilldown-tab-record,
  .analytics-drilldown-related,
  .analytics-drilldown-state
) {
  background: var(--am-surface-1) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .analytics-drilldown-series-track {
  background: var(--am-track) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .analytics-drilldown-tabs button[aria-selected="true"] {
  color: var(--am-text) !important;
  background: var(--am-surface-3) !important;
  border-color: var(--am-border-strong) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .analytics-filter-popover {
  color: var(--am-text) !important;
  background: var(--am-surface-0) !important;
  border-color: var(--am-border-strong) !important;
  box-shadow: var(--am-shadow) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(
  .analytics-filter-row label,
  .analytics-filter-compare
) { color: var(--am-muted) !important; }
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .analytics-filter-row select {
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) :is(.chart-tip,.donut-tip,.heat-tip) {
  color: var(--am-text) !important;
  background: color-mix(in srgb, var(--am-surface-0) 96%, transparent) !important;
  border-color: var(--am-border-strong) !important;
  box-shadow: var(--am-shadow) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) .history-processing-actions {
  background: var(--am-surface-1) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) body[data-view="relatorios"] :is(
  .report-filter-dock,
  .export-menu,
  .history-card,
  .pdf-qa,
  .pdf-qa-head,
  .assistant-report-card,
  .assistant-progress
) {
  color: var(--am-text) !important;
  background: var(--am-surface-0) !important;
  border-color: var(--am-border) !important;
  box-shadow: var(--am-shadow) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) body[data-view="relatorios"] :is(
  .report-filter-head strong,
  .filter-grid select,
  .export-menu button,
  .history-card .selected-head strong
) { color: var(--am-text) !important; }
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) body[data-view="relatorios"] :is(
  .report-filter-head span,
  .filter-grid label,
  .filter-help
) { color: var(--am-muted) !important; }
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) body[data-view="relatorios"] .filter-grid select {
  background: var(--am-surface-2) !important;
  border-color: var(--am-border) !important;
}
html:is([data-analytics-theme="executivo-claro"],[data-analytics-theme="alto-contraste"]) body[data-view="relatorios"] .export-menu button:hover {
  color: var(--am-text) !important;
  background: var(--am-surface-2) !important;
}

/* Theme-specific finish. Geometry intentionally stays shared across all themes. */
html[data-analytics-theme="executivo-claro"] .analytics-modal-backdrop {
  background: color-mix(in srgb, var(--analytics-theme-overlay) 78%, transparent) !important;
  backdrop-filter: blur(1px) saturate(.96);
}
html[data-analytics-theme="executivo-claro"] .analytics-modal-surface {
  background: var(--am-surface-0) !important;
  box-shadow: 0 10px 24px rgba(28, 52, 61, .16) !important;
}
html[data-analytics-theme="executivo-claro"] :is(
  .analytics-records-head,
  .analytics-drilldown-head,
  .analytics-filter-popover,
  .chart-tip,
  .donut-tip,
  .heat-tip
) {
  background: var(--am-surface-0) !important;
  box-shadow: 0 6px 16px rgba(28, 52, 61, .12) !important;
}

html[data-analytics-theme="alto-contraste"] .analytics-modal-backdrop {
  background: #000 !important;
  backdrop-filter: none !important;
}
html[data-analytics-theme="alto-contraste"] .analytics-modal-surface,
html[data-analytics-theme="alto-contraste"] .analytics-filter-popover,
html[data-analytics-theme="alto-contraste"] :is(.chart-tip,.donut-tip,.heat-tip) {
  background: var(--am-surface-0) !important;
  border-color: var(--am-text) !important;
  box-shadow: none !important;
  outline: 2px solid var(--am-text);
  outline-offset: -2px;
}
html[data-analytics-theme="alto-contraste"] :is(
  .analytics-records-head,
  .analytics-drilldown-head,
  .analytics-records-pagination,
  .analytics-record-detail-footer,
  .history-processing-actions
) {
  background: var(--am-surface-0) !important;
  border-color: var(--am-text) !important;
}
html[data-analytics-theme="alto-contraste"] :is(
  .analytics-modal-surface,
  .analytics-filter-popover,
  body[data-view="relatorios"] .report-filter-dock,
  body[data-view="relatorios"] .export-menu,
  body[data-view="relatorios"] .history-card,
  body[data-view="relatorios"] .pdf-qa
) :is(button,a,input,select,textarea,[tabindex]):focus-visible {
  outline: 3px solid var(--analytics-theme-focus) !important;
  outline-offset: 3px !important;
}
html[data-analytics-theme="alto-contraste"] :is(
  [aria-selected="true"],
  [aria-pressed="true"],
  .analytics-filter-active
) {
  outline: 2px solid var(--am-text) !important;
  outline-offset: -3px !important;
  text-decoration: underline 2px !important;
  text-underline-offset: 4px !important;
  font-weight: 800 !important;
}
html[data-analytics-theme="alto-contraste"] body[data-view="relatorios"] :is(
  .report-filter-dock,
  .export-menu,
  .history-card,
  .pdf-qa,
  .assistant-report-card,
  .assistant-progress
) {
  box-shadow: none !important;
  border-color: var(--am-text) !important;
}

@media (forced-colors: active) {
  body:not([data-view="relatorios"]) .kpi[data-analytics-kpi-detail]:focus-visible {
    outline-color: Highlight !important;
  }
  .analytics-modal-backdrop {
    background: transparent !important;
    backdrop-filter: none !important;
  }
  .analytics-modal-surface,
  .analytics-filter-popover,
  :is(.chart-tip,.donut-tip,.heat-tip) {
    color: CanvasText !important;
    background: Canvas !important;
    border-color: CanvasText !important;
    box-shadow: none !important;
  }
  :is(
    .analytics-modal-surface,
    .analytics-filter-popover,
    body[data-view="relatorios"] .report-filter-dock,
    body[data-view="relatorios"] .export-menu
  ) :is(button,a,input,select,textarea,[tabindex]):focus-visible {
    outline: 3px solid Highlight !important;
    outline-offset: 3px !important;
  }
  :is([aria-selected="true"],[aria-pressed="true"],.analytics-filter-active) {
    outline: 2px solid Highlight !important;
    text-decoration: underline !important;
  }
}

@keyframes analytics-modal-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes analytics-modal-enter {
  from { opacity: 0; transform: translateY(6px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes analytics-drawer-enter {
  from { opacity: 0; transform: translateX(14px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes analytics-popover-enter {
  from { opacity: 0; transform: translateY(-5px) scale(.99); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 900px) {
  #stage > .analytics-records-backdrop,
  #stage > .analytics-drilldown-backdrop,
  .analytics-modal-backdrop { padding: 10px !important; }
  #stage > .analytics-records-backdrop,
  #stage > .analytics-drilldown-backdrop,
  #stage > .analytics-modal-backdrop,
  .stage.analytics-sidebar-collapsed > .analytics-records-backdrop,
  .stage.analytics-sidebar-collapsed > .analytics-drilldown-backdrop,
  .stage.analytics-sidebar-collapsed > .analytics-modal-backdrop { left: 0 !important; }
  .analytics-modal-backdrop[data-analytics-modal-variant="drawer"] { padding: 8px !important; }
  .analytics-records-dialog.analytics-modal-surface,
  .analytics-records-dialog--ranking.analytics-modal-surface,
  .history-processing-dialog.analytics-modal-surface {
    width: calc(100% - 8px) !important;
    max-height: calc(100% - 8px) !important;
  }
  .analytics-drilldown-dialog.analytics-modal-surface { width: calc(100% - 4px) !important; height: 100% !important; }
  .analytics-drilldown-metrics,
  .analytics-drilldown-facts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .analytics-drilldown-tab-record { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .analytics-ai-analysis-grid { grid-template-columns: 1fr !important; }
  body[data-view="relatorios"] .report-filter-dock {
    position: absolute !important;
    left: auto !important;
    right: 12px !important;
    top: 68px !important;
    width: min(620px, calc(100% - 24px)) !important;
  }
}

@media (max-width: 560px) {
  #stage > .analytics-records-backdrop,
  #stage > .analytics-drilldown-backdrop,
  .analytics-modal-backdrop { padding: 6px !important; }
  .analytics-records-dialog.analytics-modal-surface,
  .analytics-records-dialog--ranking.analytics-modal-surface,
  .history-processing-dialog.analytics-modal-surface,
  .analytics-drilldown-dialog.analytics-modal-surface {
    width: 100% !important;
    max-height: 100% !important;
    border-radius: 10px !important;
  }
  .analytics-records-head { min-height: 54px; padding: 10px 11px 10px 13px !important; }
  .analytics-records-head > span { font-size: 16px !important; }
  .analytics-records-list { padding: 12px !important; }
  .analytics-record { grid-template-columns: 1fr !important; }
  .analytics-drilldown-head {
    grid-template-columns: 78px minmax(0, 1fr) 34px !important;
    min-height: 60px !important;
    padding: 8px 9px !important;
  }
  .analytics-drilldown-title { font-size: 16px !important; }
  .analytics-drilldown-body { padding: 13px 12px 18px !important; }
  .analytics-drilldown-footer {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 8px 11px 9px !important;
  }
  .analytics-drilldown-source-meta { justify-content: flex-start; }
  .analytics-drilldown-metrics,
  .analytics-drilldown-facts,
  .analytics-drilldown-distribution,
  .analytics-drilldown-tab-record { grid-template-columns: 1fr !important; }
  .analytics-drilldown-series-row { grid-template-columns: 68px minmax(0,1fr) 78px !important; }
  .analytics-filter-popover { top: 66px !important; right: 8px !important; width: calc(100% - 16px) !important; }
  body[data-view="relatorios"] .report-filter-dock {
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
  }
  body[data-view="relatorios"] .filter-grid { grid-template-columns: 1fr 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  .analytics-modal-backdrop,
  .analytics-modal-surface,
  .analytics-filter-popover,
  body[data-view="relatorios"] .report-filter-dock,
  body[data-view="relatorios"] .export-menu,
  body[data-view="relatorios"] .history-card,
  body[data-view="relatorios"] .pdf-qa {
    animation: none !important;
    transition-duration: 0s !important;
  }
  .analytics-drilldown-series-track i,
  .analytics-drilldown-related,
  .analytics-records-close,
  .analytics-drilldown-close { transition-duration: 0s !important; }
}

/* Client detail: factual cards and compact status chips, not raw CRM text. */
.analytics-drilldown-head:has(> .analytics-drilldown-back[hidden]) { grid-template-columns: minmax(0, 1fr) 38px !important; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; margin-bottom: 15px; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-metric { min-width: 0; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-metric strong { overflow-wrap: anywhere; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-facts { margin: 0 0 15px; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-facts h3 { grid-column: 1 / -1; margin: 0; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-facts > div { grid-template-columns: 1fr; align-content: start; gap: 5px; min-width: 0; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-facts span { overflow: visible; white-space: normal; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-facts b { overflow-wrap: anywhere; }
.analytics-drilldown-body.is-client-detail .analytics-client-risk,
.analytics-drilldown-body.is-client-detail .analytics-client-evaluation,
.analytics-drilldown-body.is-client-detail .analytics-contextual-slot {
  display: grid;
  gap: 12px !important;
  margin: 0 0 14px;
  padding: 16px !important;
  border: 1px solid var(--am-border) !important;
  border-radius: 14px !important;
  color: var(--am-text);
  background: var(--am-surface-1) !important;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .06);
}
.analytics-drilldown-body.is-client-detail .analytics-client-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}
.analytics-drilldown-body.is-client-detail .analytics-client-section-head h3 {
  margin: 0;
  color: var(--am-text);
  font-size: 14px;
  line-height: 1.35;
}
.analytics-drilldown-body.is-client-detail .analytics-client-status-chip,
.analytics-drilldown-body.is-client-detail .analytics-client-record-chips span,
.analytics-drilldown-body.is-client-detail .analytics-client-record-date {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 3px 9px;
  border: 1px solid var(--am-border);
  border-radius: 999px;
  color: var(--am-muted);
  background: var(--am-surface-2);
  font-size: 10.5px;
  font-weight: 650;
  line-height: 1.35;
}
.analytics-drilldown-body.is-client-detail .analytics-client-status-chip.is-available {
  border-color: var(--am-border-strong);
  color: var(--am-text);
}
.analytics-drilldown-body.is-client-detail .analytics-client-signal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.analytics-drilldown-body.is-client-detail .analytics-client-signal {
  display: grid;
  align-content: start;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--am-border);
  border-radius: 11px;
  background: var(--am-surface-2);
}
.analytics-drilldown-body.is-client-detail .analytics-client-signal strong { color: var(--am-text); font-size: 11.5px; line-height: 1.4; }
.analytics-drilldown-body.is-client-detail .analytics-client-signal p,
.analytics-drilldown-body.is-client-detail .analytics-client-evaluation p,
.analytics-drilldown-body.is-client-detail .analytics-contextual-slot p {
  margin: 0;
  color: var(--am-muted);
  font-size: 11.5px;
  line-height: 1.55;
}
.analytics-drilldown-body.is-client-detail .analytics-client-signal:not(.is-unavailable) p { color: var(--am-text); font-size: 16px; font-weight: 700; }
.analytics-drilldown-body.is-client-detail .analytics-client-signal-source summary {
  color: var(--am-cyan);
  font-size: 10.5px;
  cursor: pointer;
}
.analytics-drilldown-body.is-client-detail .analytics-client-signal-source small { display: block; margin-top: 7px; color: var(--am-muted); font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.analytics-drilldown-body.is-client-detail .analytics-client-coverage { color: var(--am-muted); font-size: 10.5px; }
.analytics-drilldown-body.is-client-detail .analytics-client-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 15px 0 10px;
}
.analytics-drilldown-body.is-client-detail .analytics-client-tabs button {
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid var(--am-border);
  border-radius: 999px;
  color: var(--am-muted);
  background: var(--am-surface-1);
  font: 650 11px/1.3 Inter, Arial, sans-serif;
  cursor: pointer;
}
.analytics-drilldown-body.is-client-detail .analytics-client-tabs button[aria-selected="true"] {
  border-color: var(--am-border-strong);
  color: var(--am-text);
  background: var(--am-surface-3);
}
.analytics-drilldown-body.is-client-detail .analytics-client-tab-panel { display: grid; gap: 8px; min-width: 0; }
.analytics-drilldown-body.is-client-detail .analytics-drilldown-record,
.analytics-drilldown-body.is-client-detail .analytics-client-empty {
  display: grid;
  gap: 9px;
  padding: 12px !important;
  border: 1px solid var(--am-border);
  border-radius: 11px;
  background: var(--am-surface-1);
}
.analytics-drilldown-body.is-client-detail .analytics-client-record-head { display: flex; justify-content: space-between; align-items: start; flex-wrap: wrap; gap: 7px; }
.analytics-drilldown-body.is-client-detail .analytics-client-record-head strong,
.analytics-drilldown-body.is-client-detail .analytics-client-empty strong { color: var(--am-text); font-size: 12px !important; }
.analytics-drilldown-body.is-client-detail .analytics-client-record-date { white-space: nowrap; }
.analytics-drilldown-body.is-client-detail .analytics-client-record-summary,
.analytics-drilldown-body.is-client-detail .analytics-client-empty p { margin: 0; color: var(--am-muted); font-size: 11px; line-height: 1.5; }
.analytics-drilldown-body.is-client-detail .analytics-client-record-chips { display: flex; flex-wrap: wrap; gap: 5px; }
.analytics-drilldown-body.is-client-detail .analytics-contextual-slot > strong { color: var(--am-text); font-size: 12px; }
@media (max-width: 620px) {
  .analytics-drilldown-body.is-client-detail .analytics-drilldown-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .analytics-drilldown-body.is-client-detail .analytics-client-signal-grid { grid-template-columns: 1fr; }
  .analytics-drilldown-body.is-client-detail .analytics-client-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
  .analytics-drilldown-body.is-client-detail .analytics-client-tabs button { flex: 0 0 auto; }
}
