
body {
  margin: 0;
  font-family: Arial, sans-serif;
  background: #fff;
  color: #000;
}

header {
  border-bottom: 1px solid #888;
  padding: 10px;
}

header h1 {
  margin: 0;
  font-size: 20px;
}

nav {
  border-bottom: 1px solid #888;
  padding: 8px 10px;
}

nav button,
button {
  margin-right: 5px;
  padding: 5px 8px;
  font: inherit;
}

main {
  padding: 10px;
}

input,
select,
textarea {
  width: 100%;
  padding: 5px;
  border: 1px solid #888;
  box-sizing: border-box;
  font: inherit;
}

textarea {
  min-height: 70px;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
}

th,
td {
  border: 1px solid #888;
  padding: 6px;
  text-align: left;
  font-size: 14px;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  max-width: 850px;
}

.full {
  grid-column: 1 / -1;
}

.inline {
  display: flex;
  gap: 5px;
  align-items: center;
}

.inline input {
  flex: 1;
}

.section {
  margin-top: 15px;
}

.summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 15px;
}

.summary div {
  border: 1px solid #888;
  padding: 8px;
}

.summary strong {
  display: block;
  font-size: 22px;
}

.empty {
  padding: 10px 0;
}

.modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.35);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 30px;
  z-index: 10;
}

.modal-box {
  background: #fff;
  border: 1px solid #555;
  width: min(900px, calc(100% - 20px));
  max-height: calc(100vh - 60px);
  overflow: auto;
  padding: 10px;
}

.modal-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.notice {
  border: 1px solid #888;
  padding: 8px;
  margin: 8px 0;
}

@media (max-width: 700px) {
  .form-grid,
  .summary {
    grid-template-columns: 1fr;
  }

  .full {
    grid-column: auto;
  }
}

.version {
  display: block;
  margin-top: 4px;
  font-size: 12px;
}

.agenda-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.agenda-title-row h2 {
  margin-right: auto;
}

.welcome-block {
  border: 1px solid #888;
  padding: 8px;
  margin-bottom: 15px;
}

.welcome-block strong,
.welcome-block span {
  display: block;
}

.welcome-block span {
  margin-top: 4px;
}

.table-scroll {
  overflow: auto;
  border: 1px solid #888;
}

.table-scroll table {
  margin-top: 0;
  min-width: 850px;
}

.table-scroll th,
.table-scroll td {
  border-top: 0;
  border-left: 0;
}

.table-scroll th:last-child,
.table-scroll td:last-child {
  border-right: 0;
}

.table-scroll tbody tr:last-child td {
  border-bottom: 0;
}

.table-scroll thead th {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 1;
}

.agenda-scroll {
  max-height: 300px;
}

.clients-inactive-scroll {
  max-height: 420px;
}

.actions-cell {
  white-space: nowrap;
}

.pending-count {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #888;
  padding: 8px;
  margin-top: 15px;
}

.pending-count span {
  border: 1px solid #888;
  padding: 2px 6px;
  min-width: 32px;
  text-align: center;
}

.next-month-section .empty {
  min-height: 70px;
  padding: 10px;
}

td small {
  display: block;
  margin-top: 3px;
}

.table-note {
  margin-top: 4px;
  font-size: 12px;
}


body {
  padding-bottom: 76px;
}

.form-section {
  border-top: 1px solid #888;
  padding-top: 10px;
  margin-top: 14px;
}

.form-section:first-of-type {
  margin-top: 0;
}

.form-section h3,
.section-heading-row h3 {
  margin: 0 0 8px;
}

.section-heading-row {
  margin-bottom: 8px;
}

.client-form-modal {
  width: min(1480px, calc(100vw - 24px));
  max-width: none;
}

.contact-entry-scroll,
.contact-view-scroll {
  width: 100%;
  max-height: 360px;
  overflow: auto;
}

.contact-entry-table,
.contact-view-table {
  width: 100%;
  table-layout: fixed;
  min-width: 0 !important;
}

.contact-entry-table th:nth-child(1), .contact-entry-table td:nth-child(1) { width: 14%; }
.contact-entry-table th:nth-child(2), .contact-entry-table td:nth-child(2) { width: 13%; }
.contact-entry-table th:nth-child(3), .contact-entry-table td:nth-child(3) { width: 13%; }
.contact-entry-table th:nth-child(4), .contact-entry-table td:nth-child(4) { width: 13%; }
.contact-entry-table th:nth-child(5), .contact-entry-table td:nth-child(5) { width: 16%; }
.contact-entry-table th:nth-child(6), .contact-entry-table td:nth-child(6) { width: 13%; }
.contact-entry-table th:nth-child(7), .contact-entry-table td:nth-child(7) { width: 6%; }
.contact-entry-table th:nth-child(8), .contact-entry-table td:nth-child(8) { width: 12%; }

.contact-entry-table input,
.contact-entry-table select {
  width: 100%;
  min-width: 0;
}

.contact-entry-table .decision-cell {
  text-align: center;
}

.contact-entry-table .decision-cell input {
  min-width: auto;
  width: auto;
}

.contact-action-cell {
  white-space: normal;
}

.contact-row-actions {
  display: grid;
  gap: 5px;
}

.contact-row-actions button {
  width: 100%;
  margin: 0;
  padding: 6px 4px;
}

.contact-details-box {
  width: min(940px, calc(100vw - 28px));
  max-width: none;
}

.contact-details-form {
  max-width: none;
}

.checkbox-card {
  border: 1px solid #d9cdbd;
  padding: 10px;
  background: #faf7f1;
}

.checkbox-card label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.checkbox-card input {
  width: auto;
}

@media (max-width: 1100px) {
  .contact-entry-table,
  .contact-view-table {
    min-width: 980px !important;
  }
}

@media (max-width: 720px) {
  .contact-details-form {
    grid-template-columns: 1fr;
  }
  .contact-details-form .full {
    grid-column: 1;
  }
}

.commercial-grid {
  max-width: 100%;
}

.rapport-field {
  min-height: 120px;
}

.text-panel > div {
  border: 1px solid #888;
  padding: 8px;
  min-height: 50px;
  white-space: pre-wrap;
}

.rapport-panel > div {
  min-height: 90px;
}

.integration-note,
.field-message {
  font-size: 13px;
}

.integration-actions {
  display: flex;
  align-items: end;
}

.integration-preview {
  border: 1px solid #888;
  padding: 8px;
  min-height: 70px;
  max-height: 260px;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  background: #fff;
  font-family: monospace;
  font-size: 12px;
}

.form-actions {
  margin: 14px 0 4px;
}

.system-license-footer { display: none !important; }

.modal {
  z-index: 200;
  padding-bottom: 70px;
}

@media (max-width: 700px) {
  body {
    padding-bottom: 112px;
  }

  .system-license-footer { display: none !important; }
}

/* Acesso, funil e relatórios — evolução sobre a base 1.2 */
header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.header-session {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
}

.header-session button {
  margin-right: 0;
}

.auth-locked header,
.auth-locked nav {
  display: none;
}

.access-shell {
  min-height: calc(100vh - 150px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.access-box {
  width: min(420px, 100%);
  border: 1px solid #555;
  padding: 16px;
  background: #fff;
}

.access-box h1 {
  margin: 0;
  font-size: 20px;
}

.access-box h2 {
  margin: 18px 0 6px;
}

.access-form {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}

.access-form button {
  margin: 2px 0 0;
}

.access-message {
  border: 1px solid #888;
  padding: 8px;
  margin: 10px 0;
}

.access-message.error {
  font-weight: bold;
}

.security-modal {
  width: min(620px, calc(100% - 20px));
}

.page-heading h2 {
  margin-right: auto;
}

.funnel-summary,
.report-summary {
  margin-top: 10px;
}

.funnel-summary span,
.report-summary span {
  display: block;
  font-size: 12px;
}

.funnel-toolbar,
.report-toolbar {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr auto;
  gap: 8px;
  align-items: end;
  border: 1px solid #888;
  padding: 8px;
  margin-bottom: 8px;
}

.funnel-toolbar-actions,
.report-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.funnel-board {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  align-items: flex-start;
  padding-bottom: 8px;
}

.funnel-column {
  flex: 0 0 290px;
  border: 1px solid #777;
  min-height: 260px;
  background: #fff;
}

.funnel-column.drag-over {
  outline: 2px dashed #333;
  outline-offset: -4px;
}

.funnel-column-head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #777;
  padding: 8px;
  background: #fff;
}

.funnel-column-head span {
  border: 1px solid #888;
  padding: 1px 5px;
}

.funnel-drop-zone {
  display: grid;
  gap: 7px;
  padding: 7px;
  min-height: 215px;
}

.funnel-card {
  border: 1px solid #888;
  padding: 8px;
  cursor: grab;
  background: #fff;
}

.funnel-card.dragging {
  opacity: .45;
}

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

.funnel-card > span {
  margin-top: 4px;
  font-size: 12px;
}

.funnel-card.compact > span:nth-of-type(2),
.funnel-card.compact > span:nth-of-type(3) {
  display: none;
}

.funnel-card-actions {
  display: flex;
  gap: 4px;
  margin-top: 8px;
}

.funnel-card-actions button {
  margin: 0;
  flex: 1;
  padding: 4px;
  font-size: 12px;
}

.funnel-empty {
  min-height: 60px;
}

.report-toolbar {
  grid-template-columns: 1fr 1fr auto;
}

.report-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.report-block {
  margin-top: 12px;
}

.report-block h3 {
  margin-bottom: 6px;
}

.report-detail-scroll {
  max-height: 380px;
}

@media print {
  header,
  nav,
  .report-toolbar,
  .page-heading button {
    display: none !important;
  }

  body {
    padding-bottom: 72px;
  }

  .system-license-footer { display: none !important; }
}

@media (max-width: 900px) {
  .funnel-toolbar,
  .report-toolbar,
  .report-grid {
    grid-template-columns: 1fr;
  }

  .header-session {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

@media (max-width: 700px) {
  header {
    align-items: flex-start;
    flex-direction: column;
  }

  .header-session {
    width: 100%;
    justify-content: flex-start;
  }

  .page-heading {
    flex-wrap: wrap;
  }

  .page-heading h2 {
    width: 100%;
  }
}


/* v1.2 — controle Master, relógio de Brasília e módulo Mercado */
.header-clock,
.session-identity {
  display: grid;
  gap: 2px;
  border: 1px solid #888;
  padding: 5px 7px;
  min-width: 165px;
}

.header-clock span,
.session-identity span {
  font-size: 11px;
}

.pending-access-alert,
.wip-label {
  border: 1px solid #888;
  padding: 5px 7px;
  font-size: 12px;
  font-weight: bold;
}

.access-secondary-actions {
  margin: -4px 0 12px;
}

.access-secondary-actions button {
  width: 100%;
  margin: 0;
}

.market-empty-area {
  min-height: 180px;
  border: 1px solid #888;
  padding: 12px;
  display: grid;
  align-content: start;
  gap: 6px;
}

.market-empty-area span {
  font-size: 13px;
}

.market-code-draft {
  margin-top: 12px;
  border: 1px solid #888;
}

.market-code-head {
  border-bottom: 1px solid #888;
  padding: 5px 8px;
  font-family: monospace;
  font-size: 12px;
}

.market-code-draft pre {
  margin: 0;
  padding: 10px;
  max-height: 340px;
  overflow: auto;
  white-space: pre-wrap;
  font: 12px/1.45 Consolas, Monaco, monospace;
}

.master-limit-note {
  max-width: 1000px;
}

.master-limit-note strong {
  display: inline;
}

code {
  font-family: Consolas, Monaco, monospace;
}

@media (max-width: 900px) {
  .header-clock,
  .session-identity {
    min-width: 0;
  }
}


/* Ambiente de demonstração comercial — controle Master */
.demo-environment-section {
  border: 1px solid #666;
  padding: 10px;
}

.demo-environment-builder {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) minmax(220px, 1fr) auto;
  gap: 8px;
  align-items: end;
  margin: 10px 0 4px;
}

.demo-environment-action button {
  margin: 0;
  min-height: 31px;
}

.master-preview-label {
  border: 1px solid #555;
  padding: 5px 7px;
  font-weight: bold;
  white-space: nowrap;
}

.demo-marker {
  display: block;
  margin-top: 2px;
  font-size: 10px;
  font-weight: bold;
}

.demo-marker-inline {
  font-size: 9px;
  border: 1px solid #777;
  padding: 1px 3px;
  vertical-align: middle;
}

@media (max-width: 850px) {
  .demo-environment-builder {
    grid-template-columns: 1fr;
  }

  .master-preview-label {
    white-space: normal;
  }
}


/* =========================================================
   MERION CRM — CRM 2.0
   Direção visual baseada na apresentação institucional:
   dourado, bordô, preto e superfícies claras.
   ========================================================= */
:root {
  --merion-burgundy: #4b0b16;
  --merion-burgundy-dark: #2f060d;
  --merion-burgundy-soft: #6a1422;
  --merion-gold: #e2c58f;
  --merion-gold-light: #f0d9aa;
  --merion-black: #11100f;
  --merion-ink: #25211e;
  --merion-paper: #f3efe8;
  --merion-panel: #ffffff;
  --merion-border: #d9d0c3;
  --merion-muted: #746d65;
  --merion-success: #285d42;
  --merion-danger: #8a2030;
  --shadow-soft: 0 8px 24px rgba(35, 20, 12, .08);
}

* { box-sizing: border-box; }
body {
  margin: 0;
  padding-bottom: 0;
  color: var(--merion-ink);
  background: var(--merion-paper);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}
button, input, select, textarea { font: inherit; }
button {
  min-height: 36px;
  padding: 7px 12px;
  margin: 0;
  border: 1px solid #b8afa4;
  border-radius: 5px;
  background: #fff;
  color: var(--merion-ink);
  cursor: pointer;
  font-weight: 600;
}
button:hover { border-color: var(--merion-gold); background: #fbf7ef; }
button:disabled { cursor: not-allowed; opacity: .52; }
.button-primary {
  border-color: var(--merion-gold);
  background: var(--merion-gold);
  color: #1b130b;
}
.button-primary:hover { background: #d0aa6d; border-color: #d0aa6d; }
.button-dark { background: var(--merion-black); color: #fff; border-color: var(--merion-black); }
.button-dark:hover { background: #2d2926; color: #fff; }
.button-danger { border-color: var(--merion-danger); color: var(--merion-danger); }

input, select, textarea {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #cfc5b9;
  border-radius: 4px;
  background: #fff;
  color: var(--merion-ink);
}
input:focus, select:focus, textarea:focus {
  outline: 2px solid rgba(193, 152, 89, .28);
  border-color: var(--merion-gold);
}
label { display: block; margin-bottom: 5px; font-size: 12px; font-weight: 700; color: #4b4540; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 258px minmax(0, 1fr); }
.side-panel {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 22px 15px 18px;
  background: var(--merion-black);
  color: #fff;
  border-right: 4px solid var(--merion-gold);
  overflow-y: auto;
}
.brand-block { display: flex; align-items: center; gap: 10px; padding: 0 7px 14px; border-bottom: 1px solid rgba(255,255,255,.16); }
.brand-seal {
  width: 42px; height: 42px; display: grid; place-items: center;
  border: 2px solid var(--merion-gold); border-radius: 50%;
  color: var(--merion-gold); font-family: Georgia, serif; font-size: 24px; font-weight: 700;
}
.brand-copy { display: grid; letter-spacing: .08em; }
.brand-copy strong { color: #fff; font-size: 18px; }
.brand-copy span { color: var(--merion-gold-light); font-size: 8px; }
.product-tagline { padding: 14px 7px 7px; color: #cfc7be; font-size: 12px; line-height: 1.45; }
.version-pill { margin: 4px 7px 16px; width: max-content; padding: 4px 7px; border: 1px solid var(--merion-gold); color: var(--merion-gold-light); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.side-navigation { display: grid; gap: 5px; padding: 0; border: 0; }
.side-navigation .nav-item {
  width: 100%; display: flex; align-items: center; gap: 10px; min-height: 42px;
  padding: 8px 9px; border: 1px solid transparent; border-radius: 4px;
  background: transparent; color: #ded9d4; text-align: left; font-weight: 600;
}
.side-navigation .nav-item:hover { border-color: rgba(193,152,89,.55); background: rgba(255,255,255,.05); color: #fff; }
.side-navigation .nav-item.active { border-color: var(--merion-gold); background: var(--merion-burgundy); color: #fff; }
.nav-mark { min-width: 27px; height: 27px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 3px; color: var(--merion-gold-light); font-size: 10px; }
.side-panel-footer { margin-top: auto; display: grid; gap: 2px; padding: 18px 7px 0; color: var(--merion-gold-light); }
.side-panel-footer strong { font-size: 12px; }
.side-panel-footer span { font-size: 11px; color: #fff; }
.side-panel-footer small { margin-top: 7px; color: #928b84; }

.workspace { min-width: 0; }
.workspace-header {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between; gap: 18px;
  min-height: 78px; padding: 12px 22px;
  border: 0; border-bottom: 1px solid var(--merion-border);
  background: rgba(255,255,255,.97);
}
.page-context { min-width: 210px; }
.page-context span, .section-eyebrow, .panel-heading > div > span, .hero-kicker, .logcomex-hero > div > span, .logcomex-module-heading span {
  display: block; margin-bottom: 3px; color: var(--merion-burgundy); font-size: 10px; font-weight: 800; letter-spacing: .12em;
}
.page-context h1 { margin: 0; font-size: 21px; color: var(--merion-black); }
.header-session { display: flex; align-items: center; justify-content: flex-end; gap: 7px; font-size: 12px; }
.header-clock, .session-identity {
  min-width: 150px; display: grid; gap: 2px; padding: 6px 9px;
  border: 1px solid var(--merion-border); border-radius: 4px; background: #fff;
}
.header-clock strong, .session-identity strong { color: var(--merion-burgundy); }
.header-clock span, .session-identity span { font-size: 10px; color: var(--merion-muted); }
.pending-access-alert, .master-preview-label, .wip-label, .status-pill {
  display: inline-flex; align-items: center; min-height: 30px; padding: 4px 8px;
  border: 1px solid var(--merion-gold); border-radius: 999px; background: #fffaf0;
  color: var(--merion-burgundy); font-size: 11px; font-weight: 800;
}
.workspace-main { padding: 22px; }

.hero-panel, .logcomex-hero {
  display: flex; justify-content: space-between; align-items: center; gap: 18px;
  padding: 24px; border: 1px solid var(--merion-burgundy); border-left: 6px solid var(--merion-gold);
  border-radius: 7px; background: var(--merion-burgundy); color: #fff; box-shadow: var(--shadow-soft);
}
.hero-panel h2, .logcomex-hero h2 { margin: 2px 0 7px; font-size: 26px; }
.hero-panel p, .logcomex-hero p { max-width: 760px; margin: 0; color: #eee7df; line-height: 1.5; }
.hero-kicker, .logcomex-hero > div > span { color: var(--merion-gold-light); }
.hero-actions { display: flex; gap: 8px; white-space: nowrap; }
.hero-actions button:not(.button-primary) { border-color: #fff; background: transparent; color: #fff; }
.hero-actions button:not(.button-primary):hover { background: rgba(255,255,255,.1); }

.kpi-grid, .intelligence-kpis, .master-quick-grid {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 14px 0;
}
.kpi-grid article, .intelligence-kpis article, .master-quick-grid > div, .master-quick-grid > button {
  min-height: 100px; padding: 15px; border: 1px solid var(--merion-border); border-radius: 6px;
  background: var(--merion-panel); box-shadow: 0 4px 16px rgba(35,20,12,.04); text-align: left;
}
.kpi-grid article { border-top: 3px solid var(--merion-gold); }
.kpi-grid span, .intelligence-kpis span, .master-quick-grid span { display: block; color: var(--merion-muted); font-size: 12px; }
.kpi-grid strong, .intelligence-kpis strong, .master-quick-grid strong { display: block; margin: 7px 0 2px; color: var(--merion-burgundy); font-size: 27px; }
.kpi-grid small { color: var(--merion-muted); }
.master-quick-grid > button strong { font-size: 17px; }

.content-panel, .section, .demo-environment-section {
  margin-top: 14px; padding: 16px; border: 1px solid var(--merion-border); border-radius: 6px; background: var(--merion-panel); box-shadow: 0 4px 18px rgba(35,20,12,.035);
}
.panel-heading, .page-heading, .section-heading-row {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px;
}
.panel-heading h3, .page-heading h2, .section h3, .demo-environment-section h3 { margin: 0; color: var(--merion-black); }
.count-badge { min-width: 34px; padding: 5px 8px; border-radius: 999px; background: var(--merion-burgundy); color: #fff; text-align: center; font-size: 12px; font-weight: 800; }

.table-scroll { overflow: auto; border: 1px solid var(--merion-border); border-radius: 5px; }
table { width: 100%; margin: 0; border-collapse: collapse; background: #fff; }
th, td { padding: 9px 10px; border: 0; border-bottom: 1px solid #e5ded5; text-align: left; font-size: 13px; }
th { position: sticky; top: 0; z-index: 1; background: #f1ebe2 !important; color: var(--merion-burgundy); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
tbody tr:hover { background: #fcf8f1; }
.table-scroll th:last-child, .table-scroll td:last-child { border-right: 0; }
.table-note { color: var(--merion-muted); }
.empty { padding: 18px; color: var(--merion-muted); }
.notice { border: 1px solid var(--merion-gold); border-left: 4px solid var(--merion-gold); border-radius: 4px; background: #fffaf0; }

.funnel-toolbar, .report-toolbar {
  border: 1px solid var(--merion-border); border-radius: 6px; background: #fff; padding: 12px;
}
.funnel-board { gap: 10px; }
.funnel-column { border: 1px solid var(--merion-border); border-radius: 6px; overflow: hidden; background: #f8f5f0; }
.funnel-column-head { border-bottom: 3px solid var(--merion-gold); background: var(--merion-burgundy); color: #fff; }
.funnel-column-head span { border-color: var(--merion-gold); color: var(--merion-gold-light); }
.funnel-card { border: 1px solid #d7cec4; border-left: 4px solid var(--merion-gold); border-radius: 5px; box-shadow: 0 3px 10px rgba(35,20,12,.05); }
.funnel-card-actions button { min-height: 30px; }

.modal { background: rgba(15, 8, 7, .65); backdrop-filter: blur(2px); }
.modal-box { border: 1px solid var(--merion-gold); border-radius: 7px; padding: 18px; box-shadow: 0 18px 50px rgba(0,0,0,.25); }
.modal-head { margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--merion-border); }
.form-section { border-top-color: var(--merion-border); }
.integration-preview, .text-panel > div { border-color: var(--merion-border); border-radius: 4px; background: #faf8f4; }

.access-shell-v2 {
  min-height: 100vh; padding: 30px;
  background: var(--merion-burgundy);
}
.access-box-v2 { width: min(460px, 100%); padding: 24px; border: 1px solid var(--merion-gold); border-radius: 8px; box-shadow: 0 22px 70px rgba(0,0,0,.35); }
.access-brand { display: flex; align-items: center; gap: 10px; }
.access-brand > div:last-child { display: grid; letter-spacing: .09em; }
.access-brand strong { font-size: 21px; color: var(--merion-burgundy); }
.access-brand span { font-size: 8px; color: #7c6a58; }
.access-product { margin: 20px -24px 18px; padding: 18px 24px; background: var(--merion-burgundy); color: #fff; }
.access-product h1 { margin: 8px 0 2px; font-size: 25px; }
.access-product p { margin: 0; color: var(--merion-gold-light); }
.preview-chip { display: inline-block; padding: 3px 6px; border: 1px solid var(--merion-gold); color: var(--merion-gold-light); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.access-form-heading h2 { margin-bottom: 4px; }
.access-form-heading p { margin-top: 0; color: var(--merion-muted); }
.access-submit { width: 100%; }

.logcomex-hero { background: var(--merion-black); }
.integration-state { min-width: 210px; padding: 12px; border: 1px solid var(--merion-gold); border-radius: 5px; background: rgba(87,13,25,.35); }
.integration-state span, .integration-state small { display: block; color: #cfc4b8; font-size: 11px; }
.integration-state strong { display: block; margin: 4px 0; color: var(--merion-gold-light); }
.integration-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(240px, .8fr); gap: 16px; }
.logcomex-config-grid { max-width: none; }
.integration-buttons { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.permission-panel { padding: 13px; border: 1px solid var(--merion-border); border-radius: 5px; background: #f8f5f0; }
.permission-panel > span { display: block; margin: 4px 0 10px; color: var(--merion-muted); font-size: 11px; }
.permission-list { display: grid; gap: 6px; max-height: 230px; overflow: auto; }
.permission-row { display: flex; gap: 8px; align-items: center; padding: 7px; margin: 0; border: 1px solid #ded5ca; border-radius: 4px; background: #fff; }
.permission-row input { width: auto; min-height: auto; }
.permission-row span { display: grid; }
.permission-row small { color: var(--merion-muted); }
.status-ok { border-color: #6da387; color: var(--merion-success); background: #eef8f2; }
.status-off { border-color: #b9afa4; color: #665e57; background: #f5f2ed; }
.status-preview { border-color: var(--merion-gold); }
.locked-integration { display: grid; gap: 5px; text-align: center; padding: 35px; }
.logcomex-query-bar { display: grid; grid-template-columns: 180px minmax(260px, 1fr) auto; gap: 8px; }
.logcomex-query-bar select, .logcomex-query-bar input { min-height: 40px; }
.module-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.module-tabs button.active { border-color: var(--merion-gold); background: var(--merion-burgundy); color: #fff; }
.logcomex-module-area { min-height: 340px; border: 1px solid var(--merion-border); border-radius: 5px; background: #f7f4ef; overflow: hidden; }
.logcomex-module-area iframe { width: 100%; min-height: 600px; border: 0; background: #fff; }
.iframe-note, .logcomex-preview-banner { padding: 8px 10px; background: #fff7e8; border-bottom: 1px solid var(--merion-gold); color: #6e4e1e; font-size: 11px; }
.logcomex-module-heading { display: flex; justify-content: space-between; gap: 20px; padding: 18px 18px 0; }
.logcomex-module-heading h3 { margin: 0; }
.logcomex-module-heading small { max-width: 460px; color: var(--merion-muted); }
.intelligence-kpis { margin: 14px 18px; }
.intelligence-kpis article { min-height: 80px; box-shadow: none; }
.logcomex-placeholder-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 0 18px 18px; }
.logcomex-placeholder-grid > div { min-height: 120px; padding: 14px; border: 1px dashed #baa98f; border-radius: 5px; background: #fff; }
.logcomex-placeholder-grid strong, .logcomex-placeholder-grid span { display: block; }
.logcomex-placeholder-grid span { margin-top: 7px; color: var(--merion-muted); font-size: 12px; line-height: 1.45; }
.logcomex-empty-state { display: grid; gap: 4px; min-height: 115px; place-content: center; margin-top: 12px; border: 1px dashed #c8bcad; border-radius: 5px; color: var(--merion-muted); text-align: center; }
.query-result { margin-top: 12px; border: 1px solid var(--merion-border); border-radius: 5px; overflow: hidden; }
.query-result-head { display: flex; justify-content: space-between; gap: 10px; padding: 9px 11px; background: var(--merion-burgundy); color: #fff; }
.query-result-head span { color: var(--merion-gold-light); font-size: 11px; }
.query-result pre { max-height: 300px; margin: 0; padding: 12px; overflow: auto; background: #171413; color: #ead9b9; font: 12px/1.5 Consolas, monospace; }

.market-notice { margin-bottom: 12px; }
.market-skeleton { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 20px; }
.market-skeleton i { display: block; min-height: 90px; border: 1px dashed #c8bcad; background: #faf7f2; }
.market-code-head { display: flex; justify-content: space-between; background: var(--merion-black); color: var(--merion-gold-light); }
.market-code-head small { color: #aaa29a; }
.market-code-draft pre { background: #171413; color: #ead9b9; }

.system-license-footer { display: none !important; }

@media (max-width: 1180px) {
  .app-shell { grid-template-columns: 205px minmax(0, 1fr); }
  .side-panel { padding-left: 10px; padding-right: 10px; }
  .workspace-header { align-items: flex-start; }
  .header-session { flex-wrap: wrap; }
  .kpi-grid, .intelligence-kpis, .master-quick-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 850px) {
  body { padding-bottom: 0; }
  .app-shell { display: block; }
  .side-panel { position: static; height: auto; padding: 12px; border-right: 0; border-bottom: 4px solid var(--merion-gold); }
  .brand-block { border: 0; padding-bottom: 6px; }
  .product-tagline, .side-panel-footer { display: none; }
  .version-pill { position: absolute; right: 14px; top: 20px; }
  .side-navigation { display: flex; overflow-x: auto; padding-top: 8px; }
  .side-navigation .nav-item { width: auto; min-width: max-content; }
  .workspace-header { position: static; flex-direction: column; padding: 13px; }
  .header-session { width: 100%; justify-content: flex-start; }
  .workspace-main { padding: 13px; }
  .hero-panel, .logcomex-hero { align-items: flex-start; flex-direction: column; padding: 18px; }
  .hero-actions { white-space: normal; }
  .integration-layout, .logcomex-query-bar, .logcomex-placeholder-grid { grid-template-columns: 1fr; }
  .system-license-footer { display: none !important; }
}
@media (max-width: 620px) {
  .kpi-grid, .intelligence-kpis, .master-quick-grid { grid-template-columns: 1fr; }
  .header-clock, .session-identity { min-width: 0; width: 100%; }
  .hero-actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .full { grid-column: auto; }
  .access-shell-v2 { padding: 12px; }
}


/* MERION CRM 2.0 — identidade oficial e execução localhost */
.brand-block-logo { justify-content: center; padding-bottom: 16px; }
.merion-sidebar-logo { display: block; width: 178px; max-width: 100%; height: auto; max-height: 158px; object-fit: contain; background: transparent; border: 0; }
.access-brand-logo { justify-content: center; }
.merion-login-logo { display: block; width: min(330px, 90%); max-height: 285px; object-fit: contain; margin: 0 auto; background: transparent; }
.network-access-section { border-left: 5px solid var(--merion-gold); }
.network-status-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.network-status-grid > div { display: grid; gap: 5px; min-height: 74px; padding: 11px; border: 1px solid var(--merion-border); border-radius: 5px; background: #faf8f4; }
.network-status-grid strong { color: var(--merion-burgundy); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.network-status-grid span { color: var(--merion-muted); font-size: 12px; overflow-wrap: anywhere; }
.network-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
button:disabled { opacity: .48; cursor: not-allowed; }
@media (max-width: 1000px) { .network-status-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .network-status-grid { grid-template-columns: 1fr; } .merion-sidebar-logo { width: 142px; height: auto; } }


/* Ajustes de interface — navegação, login preto e Mercado WIP */
.auth-locked { background: var(--merion-burgundy); }
.auth-locked #app { min-height: 100vh; }
.access-shell-v2 {
  position: relative;
  isolation: isolate;
  background: var(--merion-burgundy);
}
.access-shell-v2::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 15% 18%, rgba(226,197,143,.14), transparent 30%),
    radial-gradient(circle at 86% 78%, rgba(17,16,15,.18), transparent 34%),
    var(--merion-burgundy);
}
.access-box-v2 {
  border-width: 2px;
  background: rgba(255,255,255,.985);
}
.access-product h1 { font-size: 23px; letter-spacing: -.02em; }
.access-product p { font-size: 12px; }

.side-panel {
  padding: 18px 14px;
  border-right-width: 3px;
  background: #0e0d0c;
}
.brand-block-logo {
  padding: 2px 5px 14px;
  border-bottom: 1px solid rgba(193,152,89,.30);
}
.merion-sidebar-logo {
  width: 178px;
  height: auto;
  max-height: 158px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
.sidebar-product-name {
  display: grid;
  gap: 1px;
  padding: 14px 7px 12px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.sidebar-product-name > span {
  color: var(--merion-gold-light);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
}
.sidebar-product-name > strong {
  color: #fff;
  font-size: 16px;
  letter-spacing: -.01em;
}
.sidebar-product-name > small {
  margin-top: 5px;
  color: #a8a19a;
  font-size: 10px;
  line-height: 1.35;
}
.nav-section-label {
  padding: 14px 8px 7px;
  color: #857d76;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.nav-section-label-inside {
  margin-top: 7px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.side-navigation { gap: 6px; }
.side-navigation .nav-item {
  position: relative;
  min-height: 52px;
  gap: 11px;
  padding: 7px 8px;
  border-radius: 5px;
  overflow: hidden;
}
.side-navigation .nav-item::before {
  content: "";
  position: absolute;
  inset: 7px auto 7px 0;
  width: 3px;
  border-radius: 3px;
  background: transparent;
}
.side-navigation .nav-item:hover {
  transform: none;
  background: rgba(255,255,255,.045);
}
.side-navigation .nav-item.active {
  border-color: rgba(193,152,89,.90);
  background: linear-gradient(90deg, rgba(87,13,25,.98), rgba(87,13,25,.78));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
}
.side-navigation .nav-item.active::before { background: var(--merion-gold-light); }
.nav-mark {
  min-width: 31px;
  width: 31px;
  height: 31px;
  border-color: rgba(193,152,89,.48);
  background: rgba(255,255,255,.025);
  color: var(--merion-gold-light);
  font-weight: 800;
}
.nav-copy { min-width: 0; display: grid; gap: 1px; flex: 1; }
.nav-copy strong { color: inherit; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nav-copy small { color: #837c76; font-size: 9px; font-weight: 500; }
.nav-item.active .nav-copy small { color: #d5b980; }
.nav-arrow { color: #77706a; font-size: 18px; line-height: 1; }
.nav-item.active .nav-arrow { color: var(--merion-gold-light); }
.side-panel-footer, .product-tagline { display: none !important; }

.market-title-row { align-items: end; }
.market-notice { line-height: 1.5; }
.market-notice strong { display: block; margin-bottom: 4px; color: var(--merion-burgundy); }
.market-dev-copy { display: grid; gap: 5px; }
.market-dev-copy span { color: var(--merion-muted); }
.market-skeleton i {
  display: grid;
  place-items: center;
  font-style: normal;
  color: #978b7e;
}
.market-skeleton i small { font-family: Consolas, Monaco, monospace; }
.market-code-head small { font-style: italic; }

@media (max-width: 1180px) {
  .app-shell { grid-template-columns: 224px minmax(0, 1fr); }
  .nav-copy small { display: none; }
}
@media (max-width: 850px) {
  .sidebar-product-name { border: 0; padding: 6px 7px; }
  .nav-section-label { display: none; }
  .nav-copy small, .nav-arrow { display: none; }
  .side-navigation .nav-item { min-height: 42px; }
}


/* Inicialização segura e diagnóstico visual */
.boot-screen {
  min-height: 100vh;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 10px;
  padding: 28px;
  background: var(--merion-burgundy, #570d19);
  color: #fff;
  text-align: center;
}
.boot-screen img { width: min(310px, 75vw); max-height: 280px; object-fit: contain; }
.boot-screen strong { color: var(--merion-gold-light, #e2c58f); font-size: 21px; }
.boot-screen span, .boot-screen small { max-width: 560px; line-height: 1.5; color: #efe5d9; }
.boot-error strong { color: #fff; }
.direct-file-warning .access-message { line-height: 1.5; }


/* 2.0.2 — cache bust, acesso direto protegido e fallback visual */
.direct-denied { text-align: center; }
.direct-denied h2 { margin: 10px 0 6px; color: var(--merion-burgundy); }
.direct-denied > p { margin: 0 0 14px; color: var(--merion-muted, #5e5650); font-size: 12px; }
.direct-token { display: block; box-sizing: border-box; width: 100%; padding: 12px; border: 1px solid #d4c4ad; border-radius: 4px; background: #171413; color: #ead9b9; font: 700 12px/1.5 Consolas, Monaco, monospace; overflow-wrap: anywhere; letter-spacing: .06em; }


/* Ajustes 2.0.3 — alinhamento institucional e navegação limpa */
.access-product { text-align: center; }
.access-product h1,
.access-product p { text-align: center; }
.sidebar-product-name {
  justify-items: center;
  text-align: center;
}
.sidebar-product-name > span,
.sidebar-product-name > strong,
.sidebar-product-name > small {
  width: 100%;
  text-align: center;
}
.nav-copy {
  display: flex;
  align-items: center;
  min-height: 31px;
}
.nav-copy strong {
  line-height: 1.2;
}


/* 2.0.5 — recuperação do proprietário e acesso assistido Logcomex */
.recovery-code-display{display:block;padding:14px;margin:16px 0;border:1px dashed var(--gold,#c9a15b);background:#111;color:#f5dc9c;font-size:14px;line-height:1.6;word-break:break-all;text-align:center}
.owner-recovery-section small{display:block;margin-top:10px;color:#666}
.logcomex-access-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #d8d1c8;padding:18px;background:#fff}
.logcomex-access-card>div:first-child{display:grid;gap:5px;min-width:0}.logcomex-access-card strong{word-break:break-all}.logcomex-access-card span{color:#6b625d}
@media(max-width:900px){.logcomex-access-card{align-items:flex-start;flex-direction:column}}


/* Logcomex 2.0.6 — automação local de login */
.logcomex-automation-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:13px 14px;border:1px solid #d8c7a1;border-left:4px solid var(--merion-gold);background:#fffaf0}
.logcomex-automation-note>div{display:grid;gap:4px}.logcomex-automation-note span{color:var(--merion-muted);font-size:12px;line-height:1.45}
.automation-steps{display:grid;gap:9px;margin:14px 0;padding-left:22px;line-height:1.5}.automation-steps code{padding:2px 5px;border:1px solid #ddd3c5;background:#f7f3ed}
.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid #171313;text-decoration:none}
@media(max-width:760px){.logcomex-automation-note{align-items:flex-start;flex-direction:column}}


/* CRM Mérion 2.0.9 — ajuda de instalação da automação */
.browser-install-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.browser-install-grid>div{display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid #d9cbb8;border-radius:5px;background:#faf7f1}
.browser-install-grid strong{color:#590e1a}.browser-install-grid span{font-size:12px;line-height:1.45;color:#514942}
@media(max-width:760px){.browser-install-grid{grid-template-columns:1fr}}


/* 2.0.11 — cadastro proporcional, autenticação em rede e rapport visual */
.client-form-modal .form-grid { max-width: none; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; row-gap: 10px; }
.client-form-modal .form-section { width: 100%; }
.client-form-modal .inline { width: 100%; }
.client-form-modal #companyCnpj { min-width: 0; }
.client-form-modal #consultCnpj { flex: 0 0 auto; }
.commercial-grid textarea { min-height: 76px; }
.master-user-form { max-width: none; }
.rapport-tag-builder { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 8px; margin-bottom: 9px; }
.rapport-tags { display: flex !important; flex-wrap: wrap; align-items: center; gap: 7px; min-height: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.rapport-tags-editor { margin-bottom: 10px; }
.rapport-tag { display: inline-flex; align-items: center; width: auto; min-height: 30px; margin: 0; padding: 6px 11px; border: 1px solid var(--merion-gold); border-radius: 999px; background: var(--merion-burgundy); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .03em; }
span.rapport-tag { cursor: default; }
.rapport-panel > .rapport-tags + div { margin-top: 10px; }
@media (max-width: 900px) {
  .client-form-modal .form-grid { grid-template-columns: 1fr; }
  .client-form-modal .form-grid .full { grid-column: 1; }
  .rapport-tag-builder { grid-template-columns: 1fr; }
}


/* 2.0.13 — Rapport estruturado e módulos restritos */
.restricted-module-shell{position:relative;min-height:70vh;border:1px solid #d7d0ca;border-radius:18px;overflow:hidden;background:#f4f1ee}
.restricted-module-blur{position:absolute;inset:0;padding:28px;filter:blur(9px);opacity:.48;pointer-events:none;transform:scale(1.03)}
.restricted-fake-header{height:72px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.restricted-fake-header span{width:190px;height:20px;background:#681525;border-radius:6px;color:transparent}.restricted-fake-header i{width:110px;height:32px;background:#c7a75b;border-radius:8px}.restricted-fake-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.restricted-fake-grid i{height:170px;background:#fff;border:1px solid #ddd;border-radius:14px}
.restricted-module-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:rgba(255,255,255,.45);backdrop-filter:blur(2px)}.giant-lock{font-size:90px;line-height:1}.restricted-module-lock>span{font-size:12px;letter-spacing:.18em;font-weight:800;color:#681525}.restricted-module-lock h2{font-size:34px;margin:8px 0;color:#171412}.restricted-module-lock p{max-width:560px;margin:0 0 16px;color:#5f5852}.restricted-module-lock strong{padding:10px 18px;border-radius:999px;background:#681525;color:#fff}
.rapport-mega-modal{z-index:1300}.rapport-mega-box{width:min(1180px,96vw);max-height:94vh;overflow:auto}.rapport-mega-box form{display:grid;gap:16px}.rapport-block{border:1px solid #d9d1ca;border-radius:14px;padding:18px;background:#fff}.rapport-block h3{margin:0 0 14px;color:#681525}.rapport-block>label{display:block;font-weight:700;margin:14px 0 8px}.rapport-choice-grid{display:flex;flex-wrap:wrap;gap:8px}.rapport-choice input{position:absolute;opacity:0;pointer-events:none}.rapport-choice span{display:inline-flex;padding:9px 13px;border:1px solid #bdb3aa;border-radius:999px;background:#fff;cursor:pointer;font-size:13px}.rapport-choice input:checked+span{background:#681525;border-color:#681525;color:#fff;box-shadow:0 0 0 2px rgba(199,167,91,.35)}.rapport-strategy{border-color:#c7a75b;background:#fffaf0}.rapport-summary-board{display:flex;flex-wrap:wrap;gap:8px;min-height:42px}.rapport-summary-chip{display:inline-flex;gap:7px;align-items:center;padding:8px 12px;border-radius:999px;background:#681525;color:#fff;font-size:12px}.rapport-summary-chip:nth-child(even){background:#c7a75b;color:#1a1714}.rapport-summary-chip strong{opacity:.7;font-size:10px;text-transform:uppercase}.rapport-summary-empty{color:#81776f;font-size:13px}.legacy-company-rapport{display:none!important}.contact-row-actions{flex-wrap:wrap}.contact-row-actions button[data-contact-rapport]{background:#681525;color:#fff;border-color:#681525}
@media(max-width:850px){.restricted-fake-grid{grid-template-columns:1fr}.rapport-mega-box{width:98vw}.rapport-choice-grid{gap:6px}.rapport-choice span{padding:8px 10px}}


/* 2.0.15 — Mapa de Relacionamento e condições comerciais revisadas */
.rapport-summary-board,.rapport-decision-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px;width:100%}
.rapport-decision-card{border:1px solid #d8cfc5;border-radius:10px;background:#fff;overflow:hidden}
.rapport-decision-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;background:#f5f0e9;border-bottom:1px solid #ded4c8}
.rapport-decision-head>div{display:grid;gap:3px}.rapport-decision-head strong{font-size:16px;color:#151210}.rapport-decision-head span{font-size:12px;color:#6c6259}.rapport-decision-date{white-space:nowrap}
.rapport-decision-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-bottom:1px solid #e5ddd4}
.rapport-decision-facts>div{display:grid;gap:4px;padding:12px 16px;border-right:1px solid #e5ddd4;border-bottom:1px solid #e5ddd4}.rapport-decision-facts>div:nth-child(even){border-right:0}.rapport-decision-facts small{color:#6e635a;text-transform:uppercase;letter-spacing:.07em;font-size:9px}.rapport-decision-facts b{font-size:13px;color:#681525}
.rapport-decision-summary{padding:12px 16px;border-bottom:1px solid #eee7df}.rapport-decision-summary:last-child{border-bottom:0}.rapport-decision-summary h4{margin:0 0 5px;color:#681525;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.rapport-decision-summary p{margin:0;line-height:1.45;color:#3d3732;font-size:12px;white-space:pre-wrap}
.rapport-decision-card.compact .rapport-decision-summary p{max-height:72px;overflow:auto}.rapport-decision-panel h3{margin-bottom:12px}
.payment-term-field{grid-column:span 1}.payment-term-field .inline{align-items:stretch}.payment-term-field select{min-width:0}.payment-term-favorites{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.payment-term-favorites button{min-height:27px;padding:4px 9px;border-color:#681525;background:#681525;color:#fff;font-size:11px}.payment-term-favorites button:hover{background:#4f0d18}
.commission-box{margin-top:6px;padding-top:10px;border-top:1px solid #d8cfc5}.commission-box h4{margin:0;color:#681525;font-size:15px}
@media(max-width:760px){.rapport-summary-board,.rapport-decision-list{grid-template-columns:1fr}.rapport-decision-facts{grid-template-columns:1fr}.rapport-decision-facts>div{border-right:0}}

/* CRM Mérion 2.0.16 — gestão, relatórios e pendências */
.client-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) minmax(180px,280px) auto;gap:14px;align-items:end;margin:18px 0;padding:16px;border:1px solid #ddd2c8;border-radius:12px;background:#fff}.client-archive-toggle{min-height:42px;align-items:center}.clients-management-table .archived-row{opacity:.72;background:#f5f1ed}.button-danger{background:#8f1d2c!important;border-color:#8f1d2c!important;color:#fff!important}.page-actions{display:flex;gap:8px;flex-wrap:wrap}
.rapport-gold-section{border-color:#c7a75b;background:linear-gradient(180deg,#fffdf6,#fff)}.rapport-gold-section>h3{color:#9d721d!important;font-weight:800}.rapport-gold-section>h3::first-letter{color:#c7a75b}
.restricted-inline-module{position:relative;overflow:hidden;min-height:190px}.restricted-inline-content{filter:blur(5px);opacity:.35;pointer-events:none}.restricted-skeleton{display:grid;gap:10px;margin-top:18px}.restricted-skeleton span{display:block;height:38px;border-radius:8px;background:#ded8d2}.restricted-inline-lock{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;background:rgba(255,255,255,.82);backdrop-filter:blur(2px)}.restricted-lock-icon{font-size:48px;line-height:1}.restricted-inline-lock strong{font-size:18px;color:#681525}.restricted-inline-lock p{max-width:620px;margin:7px auto 0;color:#5d5650}
.commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.commercial-grid .payment-term-field .inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.commercial-grid input,.commercial-grid select,.commercial-grid textarea{width:100%;box-sizing:border-box}.commission-box{margin-top:4px;padding-top:14px;border-top:1px solid #d9d1ca}.commission-box h4{margin:0;color:#681525}.payment-term-favorites{display:none!important}
.report-hero{display:flex;justify-content:space-between;align-items:center;padding:22px;border-radius:14px;background:linear-gradient(135deg,#190f0d,#681525);color:#fff;margin:14px 0}.report-hero h3{font-size:26px;margin:3px 0}.report-hero p{margin:0;color:#eaded7}.report-kpi-grid>div{border-radius:12px;border:1px solid #dacfc5;background:#fff;box-shadow:0 5px 18px rgba(31,20,15,.06)}.report-modern-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.report-modern-grid .report-block{border-radius:14px;border:1px solid #d8cec5;background:#fff;overflow:hidden}.report-modern-grid .report-block h3{padding:16px;margin:0;background:#f4efe9;border-bottom:1px solid #ddd2c8}.report-modern-grid table{margin:0}.report-modern-grid th{background:#fbf8f5}
.kpi-overdue{border-color:#b12636!important;background:#fff1f2!important;box-shadow:0 0 0 2px rgba(177,38,54,.12)!important}.kpi-overdue span,.kpi-overdue strong,.kpi-overdue small{color:#a01425!important}.task-overdue-row{background:#fff0f1!important}.task-overdue-row td{color:#99192a;font-weight:700}.task-overdue-row td:first-child{border-left:4px solid #b12636}
@media (max-width:900px){.client-toolbar,.commercial-grid,.report-modern-grid{grid-template-columns:1fr}.client-archive-toggle{justify-self:start}}
@media print{body.printing-company .app-shell{display:none!important}body.printing-company .modal{position:static!important;background:#fff!important;padding:0!important}body.printing-company .company-detail-modal{display:block!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;box-shadow:none!important}body.printing-company .company-detail-modal .modal-head button{display:none!important}body.printing-company .company-detail-modal .section{break-inside:avoid}}
.required-fields-note{margin-bottom:12px;padding:10px 12px;border-left:4px solid #c7a75b;background:#fff8e9;color:#4d4035;font-size:13px}

/* CRM Mérion 2.0.17 — correções visuais, funil e Logcomex */
.page-heading-actions-only{justify-content:flex-end;margin-bottom:12px}.page-heading-actions-only .page-actions{margin-left:auto}
.rapport-gold-section{background:#fffdf7!important}.rapport-gold-section>h3,.rapport-gold-section>h3::first-letter{color:#c7a75b!important}
.report-hero{background:#050505!important;color:#c7a75b!important;border:1px solid #c7a75b;border-radius:12px;box-shadow:none!important}.report-hero .section-eyebrow,.report-hero h3,.report-hero p{color:#c7a75b!important}.report-hero-mark{display:grid;place-items:center;width:54px;height:54px;border:1px solid #c7a75b;color:#c7a75b;font-weight:900;font-size:20px;letter-spacing:.08em}
.report-modern-grid .report-block h3{background:#050505;color:#c7a75b;border-bottom:1px solid #c7a75b}.report-modern-grid th{background:#f2ede5;color:#4b0b16}.report-kpi-grid>div{border:1px solid #c7a75b;box-shadow:none}.report-kpi-grid>div strong{color:#4b0b16}
.funnel-summary{margin-bottom:14px}.funnel-summary>div{border-top:3px solid #c7a75b}.funnel-toolbar{border:1px solid #d8cec5;border-radius:12px;background:#fff;padding:14px}.funnel-board{gap:14px;padding-bottom:12px}.funnel-column{min-width:300px;border:1px solid #d6cdc5;border-radius:12px;background:#f7f4f1;overflow:hidden}.funnel-column-head{background:#0b0a09;color:#fff;padding:13px 14px;border-bottom:3px solid #c7a75b}.funnel-column-head>div{display:grid;gap:2px}.funnel-column-head small{font-size:10px;color:#c7a75b;font-weight:600}.funnel-column-head>span{background:#c7a75b;color:#15110d;border-radius:999px;min-width:30px;height:30px;display:grid;place-items:center;font-weight:900}.funnel-drop-zone{padding:10px;display:grid;gap:9px}.funnel-card{border:1px solid #d8d0c8;border-left:4px solid #c7a75b;border-radius:10px;background:#fff;padding:12px;box-shadow:none}.funnel-card.needs-attention{border-left-color:#b12636;background:#fff7f7}.funnel-card-title{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.funnel-stage-dot{width:8px;height:8px;border-radius:50%;background:#c7a75b;flex:0 0 auto;margin-top:5px}.funnel-card-meta{display:flex;justify-content:space-between;gap:8px;color:#756b63;font-size:11px;margin:6px 0 10px}.funnel-card-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #ece5df;border-radius:8px;overflow:hidden}.funnel-card-stats>span{display:grid;gap:3px;padding:7px;border-right:1px solid #ece5df}.funnel-card-stats>span:last-child{border-right:0}.funnel-card-stats small{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:#81776f}.funnel-card-stats b{font-size:11px;color:#2d2824}.funnel-card-actions{margin-top:10px}.funnel-card-actions button{min-height:30px}
.logcomex-restricted-shell{background:#0b0b0b;border-color:#2a2a2a}.logcomex-restricted-shell .restricted-module-blur{filter:blur(7px);opacity:.26}.logcomex-restricted-shell .restricted-fake-header,.logcomex-restricted-shell .restricted-fake-grid i{background:#171717;border-color:#333}.logcomex-restricted-panel{background:rgba(5,5,5,.88);backdrop-filter:blur(2px)}.logcomex-restricted-panel>span{color:#c7a75b}.logcomex-restricted-panel h2{color:#fff}.logcomex-restricted-panel p{color:#cfcfcf}.logcomex-restricted-panel strong{border:1px solid #c7a75b;background:transparent;color:#c7a75b;border-radius:4px;letter-spacing:.08em}.restricted-module-code{width:72px;height:72px;display:grid;place-items:center;border:1px solid #c7a75b;color:#c7a75b;font-size:28px;font-weight:900;letter-spacing:.08em;margin-bottom:14px;background:#050505}.restricted-module-code-small{width:42px;height:42px;font-size:16px;margin:0 auto 10px}.restricted-lock-icon,.giant-lock{display:none!important}.restricted-inline-lock{background:rgba(8,8,8,.92)!important}.restricted-inline-lock strong{color:#c7a75b!important}.restricted-inline-lock p{color:#ddd!important}.restricted-inline-content{background:#111;padding:18px}.restricted-inline-content h3,.restricted-inline-content .section-eyebrow{color:#c7a75b}
@media(max-width:760px){.funnel-card-stats{grid-template-columns:1fr}.funnel-card-stats>span{border-right:0;border-bottom:1px solid #ece5df}.funnel-card-stats>span:last-child{border-bottom:0}}

/* CRM Mérion 2.0.18 — paleta institucional consolidada */
/* Não usar amarelos auxiliares: dourado oficial do projeto = var(--merion-gold). */
.rapport-gold-section > h3,
.rapport-gold-section > h3::first-letter { color: var(--merion-gold) !important; }

/* Relatórios: bordô sólido e dourado institucional, sem gradiente e sem marcador 04. */
.report-hero {
  background: var(--merion-burgundy) !important;
  color: var(--merion-gold) !important;
  border: 1px solid var(--merion-gold) !important;
  border-radius: 12px;
  box-shadow: none !important;
}
.report-hero .section-eyebrow,
.report-hero h3,
.report-hero p { color: var(--merion-gold) !important; }
.report-hero-mark { display: none !important; }
.report-modern-grid .report-block h3 {
  background: var(--merion-burgundy) !important;
  color: var(--merion-gold) !important;
  border-bottom: 1px solid var(--merion-gold) !important;
}
.report-kpi-grid > div { border-color: var(--merion-gold) !important; }
.report-toolbar-actions button,
.page-context[data-page="relatorios"] ~ * .page-actions button { border-color: var(--merion-gold); }

/* Funil: cabeçalhos e controles em bordô + dourado, nunca preto + amarelo. */
.funnel-column-head {
  background: var(--merion-burgundy) !important;
  color: var(--merion-gold) !important;
  border-bottom-color: var(--merion-gold) !important;
}
.funnel-column-head strong,
.funnel-column-head small { color: var(--merion-gold) !important; }
.funnel-column-head > span {
  background: transparent !important;
  border: 1px solid var(--merion-gold) !important;
  color: var(--merion-gold) !important;
}
.funnel-toolbar {
  border-color: var(--merion-gold) !important;
  background: var(--merion-burgundy) !important;
}
.funnel-toolbar label { color: var(--merion-gold) !important; }
.funnel-toolbar input,
.funnel-toolbar select { background: #fff; color: var(--merion-ink); }
.funnel-toolbar-actions button {
  background: var(--merion-burgundy-dark) !important;
  color: var(--merion-gold) !important;
  border-color: var(--merion-gold) !important;
}
.funnel-toolbar-actions button:hover {
  background: var(--merion-burgundy-soft) !important;
  color: var(--merion-gold-light) !important;
}
.funnel-summary > div { border-top-color: var(--merion-gold) !important; }
.funnel-card { border-left-color: var(--merion-gold) !important; }
.funnel-stage-dot { background: var(--merion-gold) !important; }

/* Situação do cliente: texto simples, preto e em negrito. */
.client-state-text {
  color: var(--merion-black);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
}
.client-state-text.archived { color: var(--merion-muted); }

/* Logcomex restrito: retorna ao bordô institucional, sem emojis. */
.logcomex-restricted-shell {
  background: var(--merion-burgundy) !important;
  border: 1px solid var(--merion-gold) !important;
}
.logcomex-restricted-shell .restricted-module-blur {
  filter: blur(8px);
  opacity: .22;
}
.logcomex-restricted-shell .restricted-fake-header,
.logcomex-restricted-shell .restricted-fake-grid i {
  background: var(--merion-burgundy-dark) !important;
  border-color: rgba(193,152,89,.35) !important;
}
.logcomex-restricted-panel {
  background: rgba(51,7,14,.88) !important;
  backdrop-filter: blur(3px);
}
.logcomex-restricted-panel > span,
.logcomex-restricted-panel h2,
.logcomex-restricted-panel p { color: var(--merion-gold) !important; }
.logcomex-restricted-panel strong {
  border: 1px solid var(--merion-gold) !important;
  background: var(--merion-burgundy) !important;
  color: var(--merion-gold) !important;
}
.restricted-module-code {
  border-color: var(--merion-gold) !important;
  color: var(--merion-gold) !important;
  background: var(--merion-burgundy-dark) !important;
}
.restricted-lock-icon,
.giant-lock { display: none !important; }


/* CRM Mérion 2.0.19 — padronização cromática e separação do Logcomex */
:root {
  --merion-burgundy: #4b0b16;
  --merion-burgundy-dark: #2f060d;
  --merion-burgundy-soft: #6a1422;
  --merion-gold: #e2c58f;
  --merion-gold-light: #f0d9aa;
}
/* Bordô sempre igual ao texto institucional do cabeçalho. */
.page-context span, .section-eyebrow, .panel-heading > div > span,
.header-clock strong, .session-identity strong { color: var(--merion-burgundy) !important; }
/* Dourado sempre igual ao dourado claro da coluna lateral. */
.side-panel, .side-navigation, .nav-mark, .report-hero, .report-block,
.funnel-toolbar, .funnel-column-head, .logcomex-restricted-shell { --local-gold: var(--merion-gold); }
.report-hero, .report-modern-grid .report-block h3, .funnel-toolbar, .funnel-column-head,
.logcomex-restricted-shell, .restricted-inline-lock { background: var(--merion-burgundy) !important; }
.report-hero, .report-hero *, .report-modern-grid .report-block h3,
.funnel-toolbar label, .funnel-column-head, .funnel-column-head *,
.logcomex-restricted-panel *, .restricted-inline-lock strong { color: var(--merion-gold) !important; }
.report-hero, .report-modern-grid .report-block h3, .funnel-toolbar, .funnel-column-head,
.logcomex-restricted-shell, .restricted-inline-module { border-color: var(--merion-gold) !important; }
/* A numeração existe somente na navegação lateral. */
.restricted-module-code, .report-hero-mark { display: none !important; }
/* Logcomex como seção própria, nunca visualmente dentro do Rapport. */
.logcomex-section { margin-top: 18px !important; padding-top: 16px !important; border-top: 1px solid var(--merion-border) !important; }
.logcomex-section-heading { margin-bottom: 10px !important; }
.logcomex-section-heading h3 { margin: 0; color: var(--merion-black) !important; }
.logcomex-section .restricted-inline-module { position: relative; min-height: 210px; overflow: hidden; border: 1px solid var(--merion-gold); border-radius: 7px; }
.logcomex-section .restricted-inline-content { min-height: 210px; background: var(--merion-burgundy-dark) !important; }
.logcomex-section .restricted-inline-lock { background: rgba(75,11,22,.94) !important; }
.logcomex-section .restricted-inline-lock p { color: #fff !important; }
.rapport-summary-section { margin-bottom: 0 !important; }

/* CRM Mérion 2.0.20 — preto, branco e dourado institucional */
:root {
  --merion-module-gold: var(--merion-gold-light);
}

/* Funil: mesma linguagem visual da barra lateral. */
.funnel-toolbar {
  background: var(--merion-black) !important;
  border: 1px solid var(--merion-module-gold) !important;
  color: #fff !important;
}
.funnel-toolbar label,
.funnel-toolbar-actions label { color: var(--merion-module-gold) !important; }
.funnel-toolbar input,
.funnel-toolbar select { background: #fff !important; color: var(--merion-black) !important; border-color: #d8d0c7 !important; }
.funnel-toolbar-actions button {
  background: var(--merion-black) !important;
  color: var(--merion-module-gold) !important;
  border-color: var(--merion-module-gold) !important;
}
.funnel-toolbar-actions button:hover { background: #211f1d !important; color: #fff !important; }
.funnel-column { background: #fff !important; border-color: #d9d0c3 !important; }
.funnel-column-head {
  background: var(--merion-black) !important;
  color: var(--merion-module-gold) !important;
  border-bottom-color: var(--merion-module-gold) !important;
}
.funnel-column-head strong,
.funnel-column-head small,
.funnel-column-head > span { color: var(--merion-module-gold) !important; }
.funnel-column-head > span { border-color: var(--merion-module-gold) !important; }
.funnel-card { background: #fff !important; border-left-color: var(--merion-module-gold) !important; }
.funnel-stage-dot { background: var(--merion-module-gold) !important; }
.funnel-summary > div { background: #fff !important; border-top-color: var(--merion-module-gold) !important; }

/* Relatórios: preto, branco e dourado igual à navegação. */
.report-hero {
  background: var(--merion-black) !important;
  border-color: var(--merion-module-gold) !important;
  color: var(--merion-module-gold) !important;
}
.report-hero .section-eyebrow,
.report-hero h3,
.report-hero p { color: var(--merion-module-gold) !important; }
.report-modern-grid .report-block { background: #fff !important; border-color: #d9d0c3 !important; }
.report-modern-grid .report-block h3 {
  background: var(--merion-black) !important;
  color: var(--merion-module-gold) !important;
  border-bottom-color: var(--merion-module-gold) !important;
}
.report-kpi-grid > div { background: #fff !important; border-color: var(--merion-module-gold) !important; }
.report-kpi-grid > div strong { color: var(--merion-black) !important; }
.report-toolbar { background: #fff !important; }
.report-toolbar-actions button,
.page-actions #exportReports,
.page-actions #printReports,
.page-actions #exportBackup {
  background: var(--merion-black) !important;
  color: var(--merion-module-gold) !important;
  border-color: var(--merion-module-gold) !important;
}

/* Logcomex principal: restaura o painel claro, borrado e bloqueado. */
.logcomex-restricted-shell {
  background: #f4f1ee !important;
  border: 1px solid #d7d0ca !important;
  border-radius: 18px !important;
}
.logcomex-restricted-shell .restricted-module-blur {
  filter: blur(9px) !important;
  opacity: .48 !important;
}
.logcomex-restricted-shell .restricted-fake-header,
.logcomex-restricted-shell .restricted-fake-grid i {
  background: #fff !important;
  border-color: #ddd !important;
}
.logcomex-restricted-shell .restricted-fake-header span { background: var(--merion-burgundy) !important; }
.logcomex-restricted-shell .restricted-fake-header i { background: var(--merion-module-gold) !important; }
.logcomex-restricted-panel {
  background: rgba(255,255,255,.45) !important;
  backdrop-filter: blur(2px) !important;
}
.logcomex-restricted-panel > span { color: var(--merion-burgundy) !important; }
.logcomex-restricted-panel h2 { color: var(--merion-black) !important; }
.logcomex-restricted-panel p { color: #5f5852 !important; }
.logcomex-restricted-panel strong {
  padding: 10px 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--merion-burgundy) !important;
  color: #fff !important;
  letter-spacing: normal !important;
}

/* Logcomex na ficha da empresa: aviso simples, claro e centralizado. */
.logcomex-section .restricted-inline-module {
  min-height: 205px !important;
  border: 1px solid #d9d0c3 !important;
  border-radius: 0 !important;
  background: #fff !important;
}
.logcomex-section .restricted-inline-content {
  min-height: 205px !important;
  background: #fff !important;
  opacity: .2 !important;
  filter: blur(7px) !important;
}
.logcomex-section .restricted-inline-lock {
  background: rgba(255,255,255,.92) !important;
  color: var(--merion-ink) !important;
}
.restricted-inline-lock-icon {
  display: block !important;
  margin-bottom: 6px;
  font-size: 42px;
  line-height: 1;
}
.logcomex-section .restricted-inline-lock strong {
  color: var(--merion-burgundy) !important;
  font-size: 18px;
}
.logcomex-section .restricted-inline-lock p { color: #665f59 !important; }

/* CRM Mérion 2.0.21 — Funil e Relatórios alinhados ao Overview */
:root {
  /* Único dourado institucional: o mesmo usado na navegação lateral. */
  --merion-module-gold: var(--merion-gold);
}

/* Cabeçalhos de módulo: mesma composição do Overview, em preto, branco e dourado. */
.module-hero,
.report-hero {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 92px;
  box-sizing: border-box;
  margin: 14px 0;
  padding: 20px 24px 20px 30px !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--merion-black) !important;
  box-shadow: none !important;
}
.module-hero::before,
.report-hero::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: var(--merion-gold);
}
.module-hero .section-eyebrow,
.report-hero .section-eyebrow {
  color: var(--merion-gold) !important;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .13em;
}
.module-hero h3,
.report-hero h3 {
  margin: 3px 0 !important;
  color: #fff !important;
  font-size: 26px;
  line-height: 1.08;
}
.module-hero p,
.report-hero p {
  margin: 0 !important;
  color: #fff !important;
}

/* Filtros do funil: cartões brancos com barra superior dourada. */
.funnel-toolbar {
  display: grid;
  grid-template-columns: 1.35fr repeat(3, minmax(150px, .8fr)) auto;
  gap: 10px;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--merion-black) !important;
}
.funnel-toolbar > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid #d9d0c3;
  border-top: 5px solid var(--merion-gold);
  border-radius: 10px;
  background: #fff;
}
.funnel-toolbar label,
.funnel-toolbar-actions label {
  color: var(--merion-black) !important;
  font-weight: 800;
}
.funnel-toolbar input,
.funnel-toolbar select {
  background: #fff !important;
  color: var(--merion-black) !important;
  border-color: #cbc2b8 !important;
}
.funnel-toolbar-actions {
  align-content: end;
  align-items: center;
}
.funnel-toolbar-actions button {
  background: var(--merion-black) !important;
  color: var(--merion-gold) !important;
  border-color: var(--merion-gold) !important;
}

/* Etapas do funil: branco, preto e a mesma barra dourada dos filtros. */
.funnel-column {
  overflow: hidden;
  border: 1px solid #d9d0c3 !important;
  border-radius: 10px !important;
  background: #fff !important;
}
.funnel-column-head {
  min-height: 62px;
  padding: 14px !important;
  border: 0 !important;
  border-top: 6px solid var(--merion-gold) !important;
  border-bottom: 1px solid #e4ddd5 !important;
  background: #fff !important;
  color: var(--merion-black) !important;
}
.funnel-column-head strong {
  color: var(--merion-black) !important;
  font-size: 15px;
}
.funnel-column-head small { display: none !important; }
.funnel-column-head > span {
  min-width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid var(--merion-gold) !important;
  border-radius: 999px;
  background: var(--merion-black) !important;
  color: var(--merion-gold) !important;
  font-weight: 900;
}
.funnel-card,
.funnel-summary > div,
.report-kpi-grid > div {
  border-color: #d9d0c3 !important;
}
.funnel-card { border-left-color: var(--merion-gold) !important; }
.funnel-stage-dot { background: var(--merion-gold) !important; }

/* Relatórios: títulos dos quadros também usam exatamente o dourado lateral. */
.report-modern-grid .report-block h3 {
  background: var(--merion-black) !important;
  color: var(--merion-gold) !important;
  border-bottom-color: var(--merion-gold) !important;
}
.report-toolbar-actions button,
.page-actions #exportReports,
.page-actions #printReports,
.page-actions #exportBackup {
  background: var(--merion-black) !important;
  color: var(--merion-gold) !important;
  border-color: var(--merion-gold) !important;
}

@media (max-width: 1100px) {
  .funnel-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .funnel-toolbar-actions { grid-column: 1 / -1; }
}
@media (max-width: 680px) {
  .funnel-toolbar { grid-template-columns: 1fr; }
  .funnel-toolbar-actions { grid-column: auto; }
}

/* CRM Mérion 2.0.22 — acabamento visual de Funil e Relatórios */
:root {
  /* Dourado claro efetivamente usado na navegação lateral. */
  --merion-module-gold: var(--merion-gold-light);
}

/* Relatórios: elementos de ação e cabeçalhos em preto, branco e borda dourada fina. */
.report-toolbar-actions button,
.page-actions #exportReports,
.page-actions #printReports,
.page-actions #exportBackup,
.report-modern-grid .report-block h3 {
  background: var(--merion-black) !important;
  color: #fff !important;
  border: 1px solid var(--merion-module-gold) !important;
  box-shadow: none !important;
}
.report-modern-grid .report-block h3 {
  border-width: 0 0 1px 0 !important;
}
.report-toolbar-actions button:hover,
.page-actions #exportReports:hover,
.page-actions #printReports:hover,
.page-actions #exportBackup:hover {
  background: #171717 !important;
  color: #fff !important;
}
.report-hero::before { background: var(--merion-module-gold) !important; }
.report-hero .section-eyebrow { color: var(--merion-module-gold) !important; }

/* Funil: somente Aplicar e Limpar, ambos com texto branco. */
.funnel-toolbar-actions {
  justify-content: flex-end;
  align-self: stretch;
}
.funnel-toolbar-actions button {
  min-width: 82px;
  background: var(--merion-black) !important;
  color: #fff !important;
  border: 1px solid var(--merion-module-gold) !important;
  box-shadow: none !important;
}
.funnel-toolbar-actions button:hover {
  background: #171717 !important;
  color: #fff !important;
}

/* O mesmo dourado claro da coluna lateral em todos os detalhes do Funil. */
.module-hero-funnel::before,
.funnel-toolbar > div,
.funnel-column-head,
.funnel-card,
.funnel-summary > div {
  border-color: var(--merion-module-gold) !important;
}
.module-hero-funnel::before { background: var(--merion-module-gold) !important; }
.module-hero-funnel .section-eyebrow { color: var(--merion-module-gold) !important; }
.funnel-toolbar > div { border-top-color: var(--merion-module-gold) !important; }
.funnel-column-head { border-top-color: var(--merion-module-gold) !important; }
.funnel-card { border-left-color: var(--merion-module-gold) !important; }
.funnel-stage-dot { background: var(--merion-module-gold) !important; }

/* Contadores das etapas: número branco em fundo preto. */
.funnel-column-head > span {
  background: var(--merion-black) !important;
  color: #fff !important;
  border-color: var(--merion-module-gold) !important;
}

/* CRM Mérion 2.0.23 — refinamento de ações, Relatórios e Funil */

/* Relatórios: o título executivo vem antes dos filtros e mantém respiro uniforme. */
.report-hero {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
}
.report-page-actions {
  margin: 0 0 12px !important;
}
.report-page-actions .page-actions {
  width: 100%;
  justify-content: flex-end;
}

/* Ações de Relatórios: branco, texto preto e borda dourada institucional fina. */
.report-toolbar-actions button,
.page-actions #exportReports,
.page-actions #printReports,
.page-actions #exportBackup {
  background: #fff !important;
  color: var(--merion-black) !important;
  border: 1px solid var(--merion-gold-light) !important;
  box-shadow: none !important;
}
.report-toolbar-actions button:hover,
.page-actions #exportReports:hover,
.page-actions #printReports:hover,
.page-actions #exportBackup:hover {
  background: #faf7f1 !important;
  color: var(--merion-black) !important;
  border-color: var(--merion-gold-light) !important;
}

/* Funil: cabeçalho e ações em bordô, branco e dourado institucional. */
.module-hero-funnel {
  background: var(--merion-burgundy) !important;
  color: #fff !important;
  border-color: var(--merion-gold-light) !important;
}
.module-hero-funnel::before {
  background: var(--merion-gold-light) !important;
}
.module-hero-funnel .section-eyebrow {
  color: var(--merion-gold-light) !important;
}
.module-hero-funnel h3,
.module-hero-funnel p {
  color: #fff !important;
}
.funnel-toolbar-actions button {
  background: var(--merion-burgundy) !important;
  color: #fff !important;
  border: 1px solid var(--merion-gold-light) !important;
}
.funnel-toolbar-actions button:hover {
  background: #60101f !important;
  color: #fff !important;
}
.funnel-column-head > span {
  background: var(--merion-burgundy) !important;
  color: #fff !important;
  border-color: var(--merion-gold-light) !important;
}

/* CRM Mérion 2.0.25 — cadastro, OM e rapport */
.client-form-modal .company-cnpj-field { grid-column: auto; min-width: 0; }
.client-form-modal .company-cnpj-field .inline { align-items: stretch; }
.client-form-modal .company-cnpj-field input { min-width: 0; }
.contact-row-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
.contact-row-actions button { width: auto; padding: 4px 7px; font-size: 11px; }
.technical-company-view { border: 1px solid var(--merion-gold-light); background: #0d0d0d; color: #fff; }
.technical-title { display:flex; justify-content:space-between; gap:12px; align-items:center; border-left:5px solid var(--merion-gold-light); padding-left:12px; }
.technical-title span { color: var(--merion-gold-light); font-size:11px; letter-spacing:.16em; font-weight:700; }
.technical-title h3 { color:#fff; margin:4px 0 0; }
.technical-title > strong { color:var(--merion-gold-light); border:1px solid var(--merion-gold-light); padding:5px 8px; }
.technical-grid, .technical-clocks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:14px; }
.technical-grid > div, .technical-clocks > div { border:1px solid #3a342b; padding:9px; background:#151515; }
.technical-grid small, .technical-clocks span { display:block; color:var(--merion-gold-light); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.technical-grid b, .technical-clocks strong { display:block; color:#fff; margin-top:4px; }
.technical-code { background:#080808; border:1px solid #3a342b; color:#e7dfd1; padding:12px; overflow:auto; margin-top:12px; }
.technical-comments { display:grid; gap:4px; margin-top:10px; }
.technical-comments code { color:var(--merion-gold-light); }
@media (max-width: 900px) { .technical-grid, .technical-clocks { grid-template-columns:1fr 1fr; } }
