/* source: 00-legacy/app.css */
/* ============================================================
   CIRS bundled stylesheet. Generated by scripts/build-css-bundle.js.
   Update scripts/css-manifest.json to change the visual load order.
   ============================================================ */

/* ===== 00-tokens.css ===== */
:root {
  --dark: #111f19;
  --dark-2: #1a2b24;
  --sand: #bebfa8;
  --light: #e4e4e4;
  --white: #ffffff;
  --bg: #f5f5f2;
  --text: #17211b;
  --muted: #647067;
  --success-bg: #eef7f0;
  --success-text: #255c39;
  --warning-bg: #fff8e8;
  --warning-text: #8a6420;
  --error-bg: #fbeeee;
  --error-text: #9d2f2f;
  --border: rgba(17, 31, 25, 0.08);
  --border-strong: rgba(17, 31, 25, 0.14);
  --shadow: 0 12px 28px rgba(17, 31, 25, 0.08);
  --shadow-soft: 0 6px 18px rgba(17, 31, 25, 0.06);
  --radius: 22px;
  --radius-sm: 14px;
  --font-sans: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Cormorant Garamond", Georgia, serif;
}

/* ===== 01-reset.css ===== */
* {
  box-sizing: border-box;
}

/* ===== 02-base.css ===== */
html,
body {
  margin: 0;
  padding: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body,
input,
button,
select,
textarea {
  font-family: var(--font-sans);
}

a {
  color: inherit;
  text-decoration: none;
}

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

button {
  transition:
    transform 0.15s ease,
    opacity 0.15s ease,
    box-shadow 0.15s ease,
    background-color 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease;
}

button:hover {
  transform: translateY(-1px);
}

button:active {
  transform: translateY(0);
}

input,
select,
textarea,
button,
a {
  outline: none;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible {
  box-shadow: 0 0 0 4px rgba(190, 191, 168, 0.28);
  border-color: rgba(17, 31, 25, 0.22);
}

/* ===== 03-layout/shell.css ===== */
.shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 290px 1fr;
}

.sidebar {
  background: linear-gradient(180deg, var(--dark), var(--dark-2));
  color: var(--white);
  padding: 26px 20px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: sticky;
  top: 0;
  min-height: 100vh;
}

.brand-card,
.user-card {
  display: flex;
  gap: 12px;
  align-items: center;
}

.brand-card > div,
.user-card > div {
  min-width: 0;
}

.brand-card p,
.user-card p {
  margin: 4px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
  line-height: 1.4;
}

.brand-card strong,
.user-card strong {
  font-weight: 700;
}

.brand-mark,
.avatar {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.12);
  display: grid;
  place-items: center;
  font-weight: 800;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  overflow: hidden;
}

.brand-mark.large {
  width: 56px;
  height: 56px;
  font-size: 22px;
}

.avatar-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  display: block;
}

.avatar-sm {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  font-size: 14px;
}

.avatar-lg {
  width: 64px;
  height: 64px;
  border-radius: 18px;
  font-size: 20px;
}

.nav-links {
  display: grid;
  gap: 10px;
}

.nav-links a {
  padding: 12px 14px;
  border-radius: 14px;
  color: rgba(255, 255, 255, 0.84);
  font-weight: 600;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.15s ease;
  display: flex;
  align-items: center;
  gap: 12px;
}

.nav-links a.active,
.nav-links a:hover {
  background: rgba(255, 255, 255, 0.12);
  color: var(--white);
}

.nav-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.88);
  flex: 0 0 18px;
}

.nav-icon svg {
  width: 18px;
  height: 18px;
}

.nav-label {
  min-width: 0;
}

.nav-section-label {
  margin: 8px 8px 2px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: rgba(255, 255, 255, 0.44);
  font-weight: 700;
}

.sidebar-footer {
  margin-top: auto;
  display: grid;
  gap: 14px;
}

.main-content {
  padding: 28px;
  min-width: 0;
}

.main-content.auth-layout {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px;
  background:
    linear-gradient(rgba(17, 31, 25, 0.38), rgba(17, 31, 25, 0.38)),
    url('https://roldaoestuart.com.br/wp-content/uploads/2024/02/new-home-page-bg-v2.png') center center / cover no-repeat;
}

.main-content.auth-layout .auth-card {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.main-content.auth-layout .auth-card,
.main-content.auth-layout .error-card {
  width: min(460px, calc(100vw - 32px));
  margin: 0 auto;
}

.page-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 22px;
}

.page-header h1,
.auth-card h1,
.error-card h1 {
  margin: 6px 0;
  font-size: 32px;
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.page-header p,
.auth-card p,
.error-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

/* ===== 04-components/core.css ===== */
.eyebrow {
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.12em;
  color: var(--muted);
  font-weight: 700;
}

.title-split {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.title-split span {
  color: rgba(23, 33, 27, 0.35);
}

.flash {
  padding: 14px 16px;
  border-radius: 16px;
  margin-bottom: 18px;
  font-weight: 600;
  border: 1px solid transparent;
}

.flash-success {
  background: var(--success-bg);
  color: var(--success-text);
  border-color: rgba(37, 92, 57, 0.12);
}

.flash-error {
  background: var(--error-bg);
  color: var(--error-text);
  border-color: rgba(157, 47, 47, 0.12);
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}

.stat-card,
.panel-card,
.table-card,
.auth-card {
  background: var(--white);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
}

.stat-card {
  padding: 18px;
  display: grid;
  gap: 10px;
}

.stat-card span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 500;
}

.stat-card strong {
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.stat-card small {
  color: var(--muted);
}

.stat-card.accent {
  background: linear-gradient(135deg, var(--dark), var(--dark-2));
  color: var(--white);
}

.stat-card.accent span,
.stat-card.accent small {
  color: rgba(255, 255, 255, 0.72);
}

.dashboard-grid,
.content-grid {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 18px;
}

.users-grid {
  grid-template-columns: 420px 1fr;
}

.panel-card,
.table-card {
  padding: 20px;
}

.panel-card.compact {
  padding: 18px;
  margin-bottom: 18px;
}

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

.panel-header h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.panel-header.small-gap {
  margin-bottom: 10px;
}

.top-gap {
  margin-top: 18px;
}

.list-stack,
.metric-list {
  display: grid;
  gap: 12px;
}

.list-item {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 14px;
  background: #fafaf8;
  box-shadow: var(--shadow-soft);
}

.list-item.compact {
  padding: 12px;
}

.list-item-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.list-item p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.meta-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  color: var(--muted);
  font-size: 13px;
  margin-top: 10px;
  line-height: 1.5;
}

.meta-line.compact {
  font-size: 12px;
  margin-top: 8px;
}

.metric-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--border);
}

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

.metric-row span {
  color: var(--muted);
}

.metric-row strong {
  font-weight: 700;
}

.metric-row.wide span {
  max-width: 82%;
}

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

.form-grid.single-column {
  grid-template-columns: 1fr;
}

.filters-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
}

.field {
  display: grid;
  gap: 7px;
}

.field label {
  font-weight: 700;
  font-size: 14px;
}

.field small {
  color: var(--muted);
  font-weight: 500;
}

.full-width {
  grid-column: 1 / -1;
  width: 100%;
}

.checkbox-field label,
.checkbox-inline {
  display: flex;
  align-items: center;
  gap: 10px;
}

.checkbox-inline {
  padding-top: 4px;
}

.checkbox-inline input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--dark);
  margin: 0;
}

.checkbox-inline label {
  margin: 0;
  font-weight: 700;
  font-size: 14px;
  color: var(--text);
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid rgba(17, 31, 25, 0.12);
  background: var(--white);
  color: var(--text);
  border-radius: 14px;
  padding: 12px 14px;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    background-color 0.15s ease;
}

input::placeholder,
textarea::placeholder {
  color: #8a938d;
}

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

.primary-button,
.ghost-button,
.danger-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 14px;
  font-weight: 700;
  border: 0;
  cursor: pointer;
}

.primary-button {
  background: var(--dark);
  color: var(--white);
  box-shadow: var(--shadow-soft);
}

.primary-button:hover {
  background: #0e1914;
}

.ghost-button {
  background: #eff1ed;
  color: var(--text);
}

.ghost-button:hover {
  background: #e7ebe5;
}

.danger-button {
  background: #8f2d2d;
  color: #ffffff;
}

.danger-button:hover {
  background: #772424;
}

.outline-danger {
  background: #ffffff;
  color: #8f2d2d;
  border: 1px solid #8f2d2d;
}

.outline-danger:hover {
  background: #fff5f5;
}

.actions-inline {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}

.table-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #eef1ed;
  color: var(--text);
  min-height: 34px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.pill-success {
  background: var(--success-bg);
  color: var(--success-text);
}

.pill-warning {
  background: var(--warning-bg);
  color: var(--warning-text);
}

.pill-error {
  background: var(--error-bg);
  color: var(--error-text);
}

.pill-muted {
  background: #eff1ed;
  color: #667268;
}

.preview-card {
  border: 1px solid var(--border);
  background: #fbfbf8;
  border-radius: 18px;
  padding: 16px;
  display: grid;
  gap: 8px;
}

.preview-label {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 11px;
  color: var(--muted);
  font-weight: 700;
}

.preview-card strong {
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.side-panel {
  align-content: start;
}

.table-card {
  overflow: auto;
}

table {
  width: 100%;
  border-collapse: collapse;
  min-width: 900px;
}

th,
td {
  text-align: left;
  padding: 14px 12px;
  border-bottom: 1px solid var(--border);
  vertical-align: top;
  line-height: 1.5;
}

th {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
  font-weight: 700;
  background: #fcfcfa;
  position: sticky;
  top: 0;
  z-index: 1;
}

tr:hover td {
  background: #fcfcf9;
}

.table-link {
  font-weight: 700;
  color: var(--dark);
}

.empty-state {
  border: 1px dashed rgba(17, 31, 25, 0.15);
  border-radius: 16px;
  padding: 18px;
  text-align: center;
  color: var(--muted);
  background: #fcfcfa;
  line-height: 1.55;
}

.auth-card {
  width: min(460px, 100%);
  padding: 28px;
}

.auth-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}

.error-card {
  max-width: 560px;
}

hr {
  border: 0;
  border-top: 1px solid var(--border);
  margin: 20px 0;
}

.profile-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.automation-toggle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
}

.automation-toggle-card {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  box-shadow: var(--shadow-soft);
}

.automation-toggle-card p {
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.automation-card-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}

.automation-shortcuts {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

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

.bluebot-group-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}

.bluebot-group-card h3 {
  margin: 0 0 14px;
  font-size: 18px;
}

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

.option-hint {
  color: var(--muted);
}

.payment-preview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 18px;
  margin-top: 12px;
}

.payment-preview-grid span {
  display: block;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #fafaf8;
  color: var(--text);
}

.contracts-page-grid,
.contract-detail-grid {
  align-items: start;
}

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

.single-column-grid {
  grid-template-columns: 1fr;
}


/* ===== UX Patch: padronização de componentes visuais ===== */
*, *::before, *::after {
  box-sizing: border-box;
}

.main-content,
.settings-console-shell,
.labor-page,
.contracts-page,
.documents-page-grid {
  max-width: 100%;
  min-width: 0;
  overflow-x: visible;
}

.panel-card,
.premium-panel,
.metric-card,
.card,
.grid,
.form-grid,
.table-actions,
.actions-inline {
  min-width: 0;
}

.primary-button,
.ghost-button,
.secondary-button,
.danger-button,
button.primary-button,
button.ghost-button,
button.secondary-button,
button.danger-button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 13px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.primary-button {
  border: 1px solid #063d31;
  background: #063d31;
  color: #fff;
}

.ghost-button,
.secondary-button {
  border: 1px solid rgba(12, 35, 31, .12);
  background: #fffefa;
  color: #10251f;
}

.danger-button {
  border: 1px solid rgba(190, 18, 60, .18);
  background: rgba(190, 18, 60, .075);
  color: #9f1239;
}

.primary-button.tiny,
.ghost-button.tiny,
.secondary-button.tiny,
.danger-button.tiny,
.tiny {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 10px;
  font-size: .82rem;
}

.pill,
.pill-success,
.pill-muted,
.pill-warning,
.pill-danger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  border: 1px solid rgba(12, 35, 31, .08);
  background: rgba(12, 35, 31, .045);
  color: #25362f;
}

.pill-success,
.pill.is-active {
  background: rgba(22, 163, 74, .1);
  border-color: rgba(22, 163, 74, .16);
  color: #166534;
}

.pill-muted {
  background: rgba(100, 116, 139, .08);
  color: #475569;
}

.pill.warning,
.pill-warning {
  background: rgba(245, 158, 11, .12);
  border-color: rgba(245, 158, 11, .2);
  color: #92400e;
}

.pill.danger,
.pill-danger {
  background: rgba(220, 38, 38, .09);
  border-color: rgba(220, 38, 38, .16);
  color: #991b1b;
}

input,
select,
textarea {
  max-width: 100%;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="date"],
input[type="number"],
select,
textarea {
  border-radius: 14px;
  border: 1px solid rgba(12, 35, 31, .12);
}

input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #063d31;
}

/* ===== 05-pages/contacts.css ===== */
/* Contatos */
.contact-filters-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.contact-hero-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 18px;
}

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

.contact-summary-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  box-shadow: var(--shadow-soft);
  padding: 16px;
  display: grid;
  gap: 8px;
}

.contact-summary-card span {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
  font-weight: 700;
}

.contact-summary-card strong {
  font-size: 24px;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.role-chips,
.tag-chips,
.missing-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: #eff1ed;
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
}

.chip-soft {
  background: #fafaf8;
  border: 1px solid var(--border);
}

.chip-danger {
  background: #fff2f2;
  color: var(--error-text);
  border: 1px solid rgba(157, 47, 47, 0.12);
}

.progress-track {
  width: 100%;
  height: 10px;
  border-radius: 999px;
  background: #ecefe9;
  overflow: hidden;
}

.progress-bar {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #355f46, #6d8d71);
}

.progress-bar.warning {
  background: linear-gradient(90deg, #b5872e, #d1b06c);
}

.progress-bar.error {
  background: linear-gradient(90deg, #a13a3a, #cf7070);
}

.contact-card-grid {
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  gap: 18px;
}

.contact-detail-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 18px;
}

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

.contact-info-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}

.contact-info-card h3 {
  margin: 0 0 14px;
  font-size: 18px;
}

.contact-definition-list {
  display: grid;
  gap: 12px;
}

.contact-definition-row {
  display: grid;
  gap: 4px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border);
}

.contact-definition-row:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.contact-definition-row span {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
  font-weight: 700;
}

.contact-definition-row strong,
.contact-definition-row p {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}

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

.contact-radio {
  position: relative;
}

.contact-radio input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.contact-radio span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: #fafaf8;
  font-weight: 700;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.contact-radio input:checked + span {
  background: var(--dark);
  color: var(--white);
  border-color: var(--dark);
  box-shadow: var(--shadow-soft);
}

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

.contact-check {
  position: relative;
}

.contact-check input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.contact-check span {
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: #fafaf8;
  font-weight: 600;
  line-height: 1.4;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.contact-check input:checked + span {
  background: rgba(17, 31, 25, 0.08);
  border-color: rgba(17, 31, 25, 0.2);
  color: var(--text);
  box-shadow: var(--shadow-soft);
}

.helper-text {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    display: none;
  }

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

  .dashboard-grid,
  .content-grid,
  .users-grid,
  .filters-grid,
  .form-grid,
  .contact-filters-grid,
  .contact-hero-grid,
  .contact-card-grid,
  .contact-detail-grid,
  .contact-info-grid,
  .bluebot-groups-grid,
  .automation-toggle-grid,
  .detail-groups-grid {
    grid-template-columns: 1fr;
  }

  .automation-toggle-card {
    flex-direction: column;
  }

  .automation-card-actions {
    align-items: stretch;
  }

  table {
    min-width: 720px;
  }

  .nav-section-label {
    margin-top: 4px;
  }
}

@media (max-width: 900px) {
  .payment-preview-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .main-content {
    padding: 18px;
  }

  .main-content.auth-layout {
    padding: 18px;
  }

  .page-header {
    flex-direction: column;
  }

  .page-header h1,
  .auth-card h1,
  .error-card h1 {
    font-size: 28px;
  }

  .stats-grid,
  .contact-summary-grid,
  .contact-person-switch,
  .contact-check-grid {
    grid-template-columns: 1fr;
  }

  .actions-inline {
    flex-direction: column;
    align-items: stretch;
  }

  .primary-button,
  .ghost-button,
  .danger-button {
    width: 100%;
  }

  .table-card {
    padding: 14px;
  }

  table {
    min-width: 620px;
  }
}

/* ===== 05-pages/crm.css ===== */
/* ===== CRM Jurídico — cockpit comercial profissional ===== */
.crm-page {
  --crm-green: #073526;
  --crm-green-2: #0c4c39;
  --crm-ink: #071d16;
  --crm-muted: #68756d;
  --crm-line: rgba(7, 29, 22, .11);
  --crm-soft: #f7f7f2;
  --crm-card: rgba(255,255,255,.92);
  display: grid;
  gap: 1.35rem;
  max-width: 1480px;
  margin: 0 auto;
  padding: clamp(1rem, 2vw, 1.7rem);
}

.crm-workspace-hero,
.crm-panel,
.crm-metric-card {
  border: 1px solid var(--crm-line);
  background: var(--crm-card);
  box-shadow: 0 18px 48px rgba(7, 29, 22, .08);
}

.crm-workspace-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: end;
  padding: clamp(1.4rem, 2.6vw, 2.35rem);
  border-radius: 30px;
  background:
    radial-gradient(circle at 92% 18%, rgba(217, 230, 210, .75), transparent 26%),
    linear-gradient(135deg, #ffffff 0%, #f5f5ef 55%, #ebeee6 100%);
}

.crm-hero-copy h1 {
  margin: .35rem 0 .55rem;
  font-size: clamp(2.35rem, 4.4vw, 5.4rem);
  line-height: .88;
  letter-spacing: -.07em;
  color: var(--crm-ink);
}

.crm-hero-copy p {
  max-width: 820px;
  margin: 0;
  color: var(--crm-muted);
  font-size: 1.02rem;
  line-height: 1.65;
}

.crm-hero-chips,
.crm-hero-actions,
.crm-view-switch,
.crm-filter-actions,
.crm-card-actions,
.crm-stage-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
}

.crm-hero-chips { margin-top: 1rem; }
.crm-hero-chips span {
  display: inline-flex;
  gap: .35rem;
  align-items: center;
  min-height: 36px;
  padding: 0 .85rem;
  border-radius: 999px;
  background: rgba(7, 53, 38, .07);
  color: #355045;
  font-weight: 700;
}

.crm-hero-actions {
  justify-content: flex-end;
  min-width: 330px;
}

.crm-command-center {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: .85rem;
}

.crm-metric-card {
  min-height: 114px;
  border-radius: 22px;
  padding: 1rem;
  display: grid;
  align-content: center;
  gap: .2rem;
}

.crm-metric-card strong {
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  line-height: .95;
  letter-spacing: -.06em;
}

.crm-metric-card small,
.crm-metric-kicker,
.crm-section-heading p,
.crm-opportunity-card p,
.crm-task-item small,
.crm-pipeline-tile small,
.crm-funnel-label small {
  color: var(--crm-muted);
}

.crm-metric-kicker,
.crm-page .eyebrow {
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .18em;
}

.crm-panel {
  border-radius: 26px;
  padding: clamp(1rem, 2vw, 1.35rem);
}

.crm-section-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1rem;
}

.crm-section-heading.compact { margin-bottom: .75rem; }
.crm-section-heading h2,
.crm-section-heading h3 {
  margin: .18rem 0 0;
  letter-spacing: -.04em;
}
.crm-section-heading h2 { font-size: clamp(1.5rem, 2vw, 2.1rem); }
.crm-section-heading h3 { font-size: 1.2rem; }
.crm-section-heading p { margin: .35rem 0 0; line-height: 1.55; }

.crm-filter-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.4fr) repeat(4, minmax(150px, 1fr)) auto;
  gap: .8rem;
  align-items: end;
}
.crm-filter-grid .field-span-2 { grid-column: span 2; }

.crm-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 360px);
  gap: 1rem;
  align-items: start;
}

.crm-main-stack,
.crm-sidebar-stack,
.crm-task-list,
.crm-pipeline-list {
  display: grid;
  gap: 1rem;
}

.crm-funnel-chart {
  display: grid;
  gap: .75rem;
}

.crm-funnel-row {
  display: grid;
  grid-template-columns: minmax(170px, .42fr) minmax(220px, 1fr) 60px;
  gap: .75rem;
  align-items: center;
}

.crm-funnel-label strong { display: block; }
.crm-funnel-bar {
  height: 16px;
  border-radius: 999px;
  background: rgba(7, 29, 22, .07);
  overflow: hidden;
}
.crm-funnel-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--crm-green), #82a878);
}
.crm-funnel-prob {
  justify-self: end;
  color: var(--crm-green);
}

.crm-kanban-shell { overflow: hidden; }
.crm-kanban-board {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(310px, 360px);
  gap: 1rem;
  overflow-x: auto;
  padding: .25rem .15rem 1rem;
  scroll-snap-type: x proximity;
}

.crm-kanban-column {
  min-height: 520px;
  border: 1px solid var(--crm-line);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(7, 53, 38, .035), rgba(255,255,255,.66));
  padding: .85rem;
  scroll-snap-align: start;
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.crm-kanban-column.is-drop-target {
  border-color: rgba(7, 53, 38, .45);
  background: rgba(217,230,210,.42);
  transform: translateY(-2px);
}

.crm-column-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .75rem;
  padding: .3rem .35rem .85rem;
}
.crm-column-head strong,
.crm-column-head small { display: block; }
.crm-column-head span {
  min-width: 34px;
  min-height: 34px;
  border-radius: 999px;
  background: #e9efe6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
}

.crm-column-cards {
  display: grid;
  gap: .75rem;
}

.crm-opportunity-card,
.crm-task-item,
.crm-pipeline-tile,
.crm-table-row,
.crm-stage-row {
  border: 1px solid var(--crm-line);
  border-radius: 18px;
  background: #fff;
}

.crm-opportunity-card {
  padding: .95rem;
  cursor: grab;
  box-shadow: 0 10px 22px rgba(7, 29, 22, .06);
}
.crm-opportunity-card.is-dragging {
  opacity: .55;
  transform: scale(.98);
}
.crm-opportunity-top {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  align-items: flex-start;
}
.crm-opportunity-card p {
  margin: .65rem 0 .75rem;
  line-height: 1.45;
}

.crm-opportunity-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .55rem;
  margin: .65rem 0;
}
.crm-opportunity-meta span {
  min-width: 0;
  font-size: .82rem;
  color: var(--crm-muted);
}
.crm-opportunity-meta strong {
  display: block;
  color: #394d43;
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.crm-status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 .75rem;
  border-radius: 999px;
  font-weight: 900;
  font-size: .78rem;
  white-space: nowrap;
}
.crm-status-badge.success { background: rgba(22,101,52,.1); color: #166534; }
.crm-status-badge.info { background: rgba(33,102,74,.12); color: #0f3f2d; }
.crm-status-badge.warning { background: rgba(180,83,9,.12); color: #92400e; }
.crm-status-badge.danger { background: rgba(185,28,28,.1); color: #991b1b; }
.crm-status-badge.muted { background: rgba(75,85,99,.12); color: #4b5563; }
.crm-status-badge.neutral { background: rgba(7,53,38,.08); color: var(--crm-green); }

.crm-pipeline-tile {
  display: grid;
  gap: .22rem;
  padding: .95rem;
}
.crm-pipeline-tile.active {
  border-color: rgba(7,53,38,.38);
  box-shadow: inset 4px 0 0 var(--crm-green);
}
.crm-pipeline-tile strong,
.crm-pipeline-tile span {
  color: var(--crm-ink);
}
.crm-pipeline-tile span {
  font-weight: 900;
}

.crm-task-item {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  align-items: center;
  padding: .85rem;
}

.crm-empty-column {
  padding: .9rem;
  border-radius: 16px;
  background: rgba(7,53,38,.05);
  color: var(--crm-muted);
  text-align: center;
}

.crm-table {
  display: grid;
  gap: .45rem;
}
.crm-table-head,
.crm-table-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(120px, .8fr) minmax(120px, .8fr) minmax(120px, .7fr) auto;
  gap: .75rem;
  align-items: center;
}
.crm-table-head {
  color: var(--crm-muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  padding: 0 .85rem;
}
.crm-table-row { padding: .85rem; }
.crm-table-row small { display: block; color: var(--crm-muted); }

.crm-admin-studio {
  background:
    radial-gradient(circle at 90% 10%, rgba(217,230,210,.55), transparent 20%),
    #fff;
}

.crm-admin-grid {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(240px, .6fr) minmax(420px, 1.4fr);
  gap: 1rem;
  align-items: start;
}

.crm-admin-form,
.crm-admin-stages {
  display: grid;
  gap: .8rem;
  padding: 1rem;
  border: 1px solid var(--crm-line);
  border-radius: 22px;
  background: rgba(255,255,255,.72);
}

.crm-mini-form,
.crm-stage-create {
  display: grid;
  gap: .75rem;
}

.crm-stage-list {
  display: grid;
  gap: .75rem;
  max-height: 560px;
  overflow: auto;
  padding-right: .25rem;
}

.crm-stage-row {
  display: grid;
  gap: .75rem;
  padding: .75rem;
}
.crm-stage-row form:first-child,
.crm-stage-create {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) 92px 90px auto auto auto;
  gap: .55rem;
  align-items: center;
}
.crm-stage-row label {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-weight: 800;
  font-size: .78rem;
}
.crm-stage-actions {
  justify-content: flex-end;
}
.crm-danger-zone {
  padding-top: .75rem;
  border-top: 1px solid var(--crm-line);
}
.danger-button {
  color: #991b1b;
}

.crm-check-card {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-height: 42px;
  padding: .75rem .85rem;
  border: 1px solid var(--crm-line);
  border-radius: 14px;
  background: rgba(7,53,38,.04);
  font-weight: 800;
}
.crm-check-card input {
  width: 18px;
  height: 18px;
  accent-color: var(--crm-green);
}

.crm-drawer-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(7, 29, 22, .45);
  backdrop-filter: blur(3px);
  z-index: 80;
}
.crm-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: min(720px, 96vw);
  height: 100dvh;
  transform: translateX(104%);
  transition: transform .24s ease;
  z-index: 90;
  padding: 1rem 0 1rem 1rem;
  pointer-events: none;
}
.crm-drawer.is-open {
  transform: translateX(0);
  pointer-events: auto;
}
.crm-drawer-panel {
  height: 100%;
  overflow: auto;
  border-radius: 28px 0 0 28px;
  padding: 1.25rem;
  box-shadow: -18px 0 48px rgba(7,29,22,.2);
}
.crm-drawer-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.crm-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
}
.crm-form-grid .field-span-2 { grid-column: span 2; }
body.crm-drawer-open { overflow: hidden; }

.crm-page .primary-button,
.crm-page .ghost-button {
  white-space: nowrap;
}

@media (max-width: 1320px) {
  .crm-command-center { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .crm-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .crm-filter-grid .field-span-2,
  .crm-filter-actions { grid-column: 1 / -1; }
  .crm-main-grid,
  .crm-admin-grid { grid-template-columns: 1fr; }
  .crm-sidebar-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .crm-workspace-hero {
    grid-template-columns: 1fr;
  }
  .crm-hero-actions {
    justify-content: flex-start;
    min-width: 0;
  }
  .crm-command-center,
  .crm-sidebar-stack,
  .crm-form-grid,
  .crm-filter-grid {
    grid-template-columns: 1fr;
  }
  .crm-form-grid .field-span-2,
  .crm-filter-grid .field-span-2 { grid-column: auto; }
  .crm-funnel-row {
    grid-template-columns: 1fr;
  }
  .crm-funnel-prob { justify-self: start; }
  .crm-kanban-board {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: 1fr;
  }
  .crm-kanban-column { min-height: auto; }
  .crm-table-head { display: none; }
  .crm-table-row {
    grid-template-columns: 1fr;
  }
  .crm-stage-row form:first-child,
  .crm-stage-create {
    grid-template-columns: 1fr;
  }
  .crm-drawer {
    width: 100vw;
    padding: 0;
  }
  .crm-drawer-panel { border-radius: 0; }
}

html[data-theme='dark'] .crm-page {
  --crm-ink: #eff7f1;
  --crm-muted: rgba(239,247,241,.68);
  --crm-line: rgba(255,255,255,.1);
  --crm-card: rgba(18, 29, 24, .94);
  --crm-soft: #0f1b16;
}
html[data-theme='dark'] .crm-workspace-hero,
html[data-theme='dark'] .crm-panel,
html[data-theme='dark'] .crm-metric-card,
html[data-theme='dark'] .crm-opportunity-card,
html[data-theme='dark'] .crm-task-item,
html[data-theme='dark'] .crm-pipeline-tile,
html[data-theme='dark'] .crm-table-row,
html[data-theme='dark'] .crm-stage-row,
html[data-theme='dark'] .crm-admin-form,
html[data-theme='dark'] .crm-admin-stages {
  background: rgba(18, 29, 24, .88);
  border-color: rgba(255,255,255,.1);
}
html[data-theme='dark'] .crm-workspace-hero {
  background: linear-gradient(135deg, rgba(18, 29, 24, .98), rgba(20, 47, 35, .92));
}
html[data-theme='dark'] .crm-column-head span,
html[data-theme='dark'] .crm-empty-column,
html[data-theme='dark'] .crm-check-card {
  background: rgba(255,255,255,.07);
}


/* Correcoes solicitadas no CRM */
.crm-page-header {
  margin-bottom: 18px;
}

.crm-page-header .crm-hero-copy {
  max-width: 860px;
}

.crm-page-header .crm-hero-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.crm-page-header .crm-hero-chips span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(17, 31, 25, .06);
  color: var(--crm-ink);
  font-size: .9rem;
  font-weight: 800;
}

.crm-page-header .crm-hero-actions {
  align-self: flex-start;
}

.crm-command-center {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 22px;
}

.crm-metric-card {
  min-height: 118px;
  gap: 8px;
}

.crm-metric-kicker {
  font-size: .8rem;
  letter-spacing: 0;
  text-transform: none;
  color: var(--crm-muted);
}

.crm-metric-card strong {
  font-size: clamp(2rem, 2.1vw, 2.6rem);
  line-height: 1;
}

.crm-metric-card small {
  font-size: .82rem;
  line-height: 1.35;
}

.crm-admin-shortcut {
  display: flex;
  justify-content: flex-end;
  margin: 6px 0 18px;
}

.crm-settings-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
}

.crm-settings-subnav .ghost-button.is-active {
  background: rgba(7, 53, 38, .12);
  border-color: rgba(7, 53, 38, .18);
  color: var(--crm-green);
}

.crm-settings-pipeline-list {
  display: grid;
  gap: .65rem;
}

.crm-webhook-notes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

@media (max-width: 1320px) {
  .crm-command-center {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

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

  .crm-webhook-notes {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .crm-command-center {
    grid-template-columns: 1fr;
  }
}

/* Correção de pré-produção: esteira completa, botões ativos e feedback de drag/drop. */
.crm-board-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
}

.crm-board-search,
.crm-board-tools {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.crm-board-search .field {
  min-width: min(360px, 72vw);
  margin: 0;
}

.crm-board-menu {
  position: relative;
}

.crm-board-menu > summary {
  list-style: none;
  cursor: pointer;
}

.crm-board-menu > summary::-webkit-details-marker {
  display: none;
}

.crm-board-popover {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 250px;
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--crm-line);
  border-radius: 18px;
  background: var(--crm-card, #fff);
  box-shadow: 0 18px 42px rgba(7, 29, 22, .14);
  z-index: 12;
}

.crm-board-filter-panel {
  min-width: min(560px, 88vw);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.crm-board-filter-panel .actions-inline {
  grid-column: 1 / -1;
}

.crm-board-popover .danger-link,
.crm-board-popover a,
.crm-board-popover button {
  width: 100%;
  justify-content: center;
}

.crm-board-popover .danger-link {
  border: 1px solid rgba(153, 27, 27, .18);
  background: rgba(153, 27, 27, .07);
  color: #991b1b;
  border-radius: 999px;
  min-height: 36px;
  padding: 0 12px;
  font-weight: 900;
  cursor: pointer;
}

.crm-full-column.is-drop-target,
.crm-kanban-column.is-drop-target {
  border-color: rgba(7, 53, 38, .45);
  background: rgba(217, 230, 210, .42);
  transform: translateY(-2px);
}

.crm-opportunity-card[draggable='true'] {
  cursor: grab;
}

.crm-opportunity-card[draggable='true']:active {
  cursor: grabbing;
}

.crm-lead-card {
  border-style: dashed;
}

.crm-full-column-drop {
  min-height: 240px;
}

html[data-theme='dark'] .crm-board-popover {
  background: var(--crm-card, #121d18);
  border-color: var(--crm-line, rgba(255,255,255,.12));
  box-shadow: 0 18px 42px rgba(0,0,0,.34);
}

html[data-theme='dark'] .crm-board-popover .danger-link {
  background: rgba(239, 105, 105, .12);
  border-color: rgba(239, 105, 105, .22);
  color: #ffc9c9;
}

@media (max-width: 900px) {
  .crm-board-toolbar,
  .crm-board-search,
  .crm-board-tools {
    align-items: stretch;
  }

  .crm-board-filter-panel {
    grid-template-columns: 1fr;
    left: 0;
    right: auto;
  }
}

/* ===== 05-pages/intelligence.css ===== */
/* Responde BlueBot v3 */
.vs-layout {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 18px;
  align-items: stretch;
  min-height: calc(100vh - 210px);
}

.vs-sidebar-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 720px;
  padding: 18px;
}

.vs-sidebar-top {
  display: grid;
  gap: 12px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--border);
}

.vs-sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.vs-sidebar-header h2 {
  margin: 0;
  font-size: 18px;
  letter-spacing: -0.01em;
}

.vs-conversation-list {
  display: grid;
  gap: 10px;
  overflow: auto;
  padding-right: 2px;
}

.vs-conversation-item {
  display: grid;
  gap: 8px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--border);
  background: #fafaf8;
  box-shadow: var(--shadow-soft);
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    background-color 0.15s ease,
    transform 0.15s ease;
}

.vs-conversation-item:hover {
  background: #f7f8f4;
  border-color: rgba(17, 31, 25, 0.12);
}

.vs-conversation-item.active {
  background: rgba(17, 31, 25, 0.06);
  border-color: rgba(17, 31, 25, 0.18);
}

.vs-conversation-item-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.vs-conversation-item-top strong {
  font-size: 15px;
  line-height: 1.4;
}

.vs-conversation-item-top span {
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.vs-conversation-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
  font-size: 13px;
}

.vs-chat-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 720px;
  padding: 0;
  overflow: hidden;
}

.vs-chat-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  padding: 24px 24px 18px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(180deg, rgba(17, 31, 25, 0.02), rgba(17, 31, 25, 0));
}

.vs-chat-header h2 {
  margin: 6px 0 8px;
  font-size: 28px;
  line-height: 1.12;
  letter-spacing: -0.02em;
}

.vs-chat-header p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.vs-chat-header-meta {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.vs-chat-scroll {
  overflow: auto;
  padding: 24px;
  background:
    radial-gradient(circle at top, rgba(17, 31, 25, 0.03), transparent 35%),
    #ffffff;
}

.vs-empty-chat {
  max-width: 760px;
  margin: 40px auto;
  text-align: center;
  display: grid;
  gap: 16px;
}

.vs-empty-chat-badge {
  margin: 0 auto;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(17, 31, 25, 0.08);
  color: var(--text);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.vs-empty-chat h3 {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.vs-empty-chat p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.vs-suggestion-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}

.vs-suggestion-button {
  border: 1px solid var(--border);
  cursor: pointer;
}

.vs-suggestion-button:hover {
  background: rgba(17, 31, 25, 0.08);
}

.vs-message-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.vs-message-row.user {
  grid-template-columns: minmax(0, 1fr) 44px;
}

.vs-message-row.user .vs-message-avatar {
  order: 2;
}

.vs-message-row.user .vs-message-content {
  order: 1;
}

.vs-message-avatar {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-weight: 800;
  box-shadow: var(--shadow-soft);
}

.vs-message-avatar.assistant {
  background: linear-gradient(135deg, var(--dark), var(--dark-2));
  color: var(--white);
}

.vs-message-avatar.user {
  background: rgba(17, 31, 25, 0.08);
  color: var(--text);
}

.vs-message-content {
  min-width: 0;
  display: grid;
  gap: 8px;
}

.vs-message-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.vs-message-meta strong {
  font-size: 14px;
}

.vs-message-meta span {
  color: var(--muted);
  font-size: 12px;
}

.vs-message-row.user .vs-message-meta {
  justify-content: flex-end;
}

.vs-message-bubble {
  max-width: min(920px, 100%);
  border-radius: 22px;
  padding: 16px 18px;
  line-height: 1.7;
  white-space: normal;
  word-break: break-word;
  border: 1px solid var(--border);
  box-shadow: var(--shadow-soft);
}

.vs-message-bubble.assistant {
  background: #fafaf8;
  color: var(--text);
}

.vs-message-bubble.user {
  background: linear-gradient(135deg, var(--dark), var(--dark-2));
  color: var(--white);
  border-color: transparent;
  margin-left: auto;
}

.vs-composer {
  padding: 18px 24px 24px;
  border-top: 1px solid var(--border);
  background: #fcfcfa;
  display: grid;
  gap: 12px;
}

.vs-composer-field {
  gap: 10px;
}

.vs-composer textarea {
  min-height: 74px;
  max-height: 220px;
  resize: none;
  line-height: 1.6;
  padding: 14px 16px;
}

.vs-composer-footer {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}

.vs-composer-footer .helper-text {
  margin: 0;
}

@media (max-width: 1100px) {
  .vs-layout {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .vs-sidebar-card,
  .vs-chat-card {
    min-height: auto;
  }

  .vs-chat-card {
    min-height: 72vh;
  }
}

@media (max-width: 680px) {
  .vs-chat-header,
  .vs-chat-scroll,
  .vs-composer {
    padding-left: 18px;
    padding-right: 18px;
  }

  .vs-chat-header {
    flex-direction: column;
  }

  .vs-chat-header h2 {
    font-size: 24px;
  }

  .vs-chat-header-meta {
    justify-content: flex-start;
  }

  .vs-message-row,
  .vs-message-row.user {
    grid-template-columns: 1fr;
  }

  .vs-message-row.user .vs-message-avatar,
  .vs-message-row.user .vs-message-content {
    order: initial;
  }

  .vs-message-avatar {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .vs-message-row.user .vs-message-meta {
    justify-content: flex-start;
  }

  .vs-message-bubble.user {
    margin-left: 0;
  }

  .vs-composer-footer {
    flex-direction: column;
    align-items: stretch;
  }
}

.nav-icon,
.nav-icon svg {
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}

.nav-icon svg {
  display: block;
}

.contract-hero-card {
  margin-bottom: 18px;
}

.contract-hero-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.contract-hero-item {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  padding: 16px;
  min-width: 0;
}

.contract-hero-item strong {
  display: block;
  font-size: 18px;
  line-height: 1.35;
  letter-spacing: -0.01em;
  min-width: 0;
  word-break: break-word;
}

.contract-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.9fr);
  gap: 18px;
  align-items: start;
}

.contract-sidebar-stack {
  display: grid;
  gap: 18px;
}

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

.contract-info-card {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: #fafaf8;
  padding: 18px;
  box-shadow: var(--shadow-soft);
  min-width: 0;
}

.contract-info-card h3 {
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.25;
}

.contract-info-card-wide {
  grid-column: 1 / -1;
}

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

.contract-field {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #ffffff;
  padding: 12px 14px;
  min-width: 0;
  display: grid;
  gap: 6px;
}

.contract-field span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.contract-field strong {
  font-size: 15px;
  line-height: 1.5;
  font-weight: 700;
  min-width: 0;
  word-break: break-word;
  white-space: normal;
}

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

.contract-field-textarea {
  align-content: start;
  min-height: 120px;
}

.contract-action-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  align-items: stretch;
}

.contract-action-grid form {
  margin: 0;
  min-width: 0;
}

.contract-action-grid .primary-button,
.contract-action-grid .ghost-button {
  width: 100%;
  min-width: 0;
  justify-content: center;
  text-align: center;
}

@media (max-width: 1280px) {
  .contract-hero-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .contract-detail-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .contract-hero-grid,
  .contract-section-grid,
  .contract-field-grid {
    grid-template-columns: 1fr;
  }

  .contract-action-grid {
    flex-direction: column;
    align-items: stretch;
  }

  .contract-action-grid .primary-button,
  .contract-action-grid .ghost-button {
    width: 100%;
    min-width: 0;
  }
}
/* Expedientes - Novo formulário */
.record-create-layout {
  display: grid;
  grid-template-columns: minmax(560px, 700px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.record-create-panel,
.record-feedback-panel {
  padding: 20px;
}

.record-create-panel {
  width: 100%;
  overflow: hidden;
}

.record-form-grid {
  gap: 14px;
}

.record-status-field {
  max-width: 220px;
}

.field-subject-select {
  width: 100%;
}

.record-action-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: center;
  margin-top: 2px;
}

.record-action-row .primary-button,
.record-action-row .ghost-button {
  width: 100%;
  min-width: 0;
  white-space: nowrap;
}

.record-feedback-panel {
  min-height: 0;
}

.record-feedback-panel .panel-header {
  margin-bottom: 12px;
}

.record-feedback-box {
  min-height: 64px;
  padding: 16px 18px;
  display: grid;
  place-items: center;
}

.record-feedback-list {
  display: grid;
  gap: 12px;
}

.record-feedback-panel .preview-card {
  padding: 14px 16px;
}

.record-feedback-panel .preview-card strong {
  font-size: 20px;
}

@media (max-width: 1400px) {
  .record-create-layout {
    grid-template-columns: minmax(500px, 620px) minmax(0, 1fr);
  }
}

@media (max-width: 1200px) {
  .record-create-layout {
    grid-template-columns: 1fr;
  }

  .record-action-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .record-action-row {
    grid-template-columns: 1fr;
  }

  .record-action-row .primary-button,
  .record-action-row .ghost-button {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 680px) {
  .record-status-field {
    max-width: none;
  }
}

/* ===== 05-pages/documents-hygiene.css ===== */
/* Formatar | BlueBot */
.sanitize-overlay {
  position: fixed;
  inset: 0;
  background: rgba(9, 20, 16, 0.45);
  backdrop-filter: blur(2px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 24px;
}

.sanitize-overlay.is-visible {
  display: flex;
}

.sanitize-overlay-card {
  width: min(460px, 100%);
  background: #ffffff;
  border-radius: 24px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.18);
  padding: 28px;
  display: grid;
  gap: 14px;
  text-align: center;
}

.sanitize-spinner {
  width: 44px;
  height: 44px;
  margin: 0 auto;
  border-radius: 999px;
  border: 4px solid rgba(15, 23, 42, 0.12);
  border-top-color: #0f766e;
  animation: sanitize-spin 0.9s linear infinite;
}

@keyframes sanitize-spin {
  to { transform: rotate(360deg); }
}

.sanitize-page-grid {
  display: grid;
  grid-template-columns: minmax(340px, 420px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.sanitize-record-list {
  display: grid;
  gap: 12px;
  max-height: 690px;
  overflow: auto;
  padding-right: 2px;
}

.sanitize-record-item {
  display: grid;
  gap: 8px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fafaf8;
  padding: 14px;
  box-shadow: var(--shadow-soft);
}

.sanitize-record-item.active {
  border-color: rgba(15, 118, 110, 0.25);
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.08);
}

.sanitize-main-stack {
  display: grid;
  gap: 18px;
}

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

.sanitize-card {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: #fafaf8;
  padding: 18px;
  box-shadow: var(--shadow-soft);
  min-width: 0;
}

.sanitize-card h3 {
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.25;
}

.sanitize-card-wide {
  grid-column: 1 / -1;
}

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

.sanitize-field {
  display: grid;
  gap: 7px;
  min-width: 0;
}

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

.sanitize-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 14px;
}

.sanitize-preview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.sanitize-preview-card {
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #ffffff;
  padding: 12px 14px;
  display: grid;
  gap: 6px;
}

.sanitize-preview-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.sanitize-preview-card strong {
  font-size: 15px;
  line-height: 1.5;
  font-weight: 700;
  min-width: 0;
  word-break: break-word;
}

@media (max-width: 1280px) {
  .sanitize-page-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .sanitize-section-grid,
  .sanitize-field-grid,
  .sanitize-preview-grid {
    grid-template-columns: 1fr;
  }

  .sanitize-actions-row {
    flex-direction: column;
    align-items: stretch;
  }

  .sanitize-actions-row .primary-button,
  .sanitize-actions-row .ghost-button {
    width: 100%;
  }
}

/* ===== 05-pages/intelligence-agents.css ===== */
/* Agentes do Responde BlueBot */
.vs-agent-switcher {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 16px;
}

.vs-agent-button {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: #fafaf8;
  color: var(--text);
  font-weight: 700;
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}

.vs-agent-button:hover {
  background: #f2f4ef;
}

.vs-agent-button.active {
  background: linear-gradient(135deg, var(--dark), var(--dark-2));
  color: var(--white);
  border-color: transparent;
  box-shadow: var(--shadow-soft);
}

.vs-message-row.pending .vs-message-bubble {
  opacity: 0.92;
}

.vs-message-bubble.pending {
  background: #fafaf8;
}

.vs-typing {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-weight: 600;
}

.vs-typing i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(17, 31, 25, 0.35);
  display: inline-block;
  animation: vsTypingPulse 1.2s infinite ease-in-out;
}

.vs-typing i:nth-child(2) {
  animation-delay: 0.15s;
}

.vs-typing i:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes vsTypingPulse {
  0%, 80%, 100% {
    transform: scale(0.8);
    opacity: 0.45;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}


/* ===== UX Patch: Central de IA responsiva ===== */
.settings-ai-header,
.ai-agents-layout,
.ai-agent-builder,
.ai-agent-actions,
.ai-quick-actions {
  max-width: 100%;
  min-width: 0;
}

.settings-ai-header {
  gap: 18px;
}

.settings-ai-header .settings-header-actions,
.ai-agent-actions,
.ai-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.settings-ai-header .primary-button,
.settings-ai-header .ghost-button {
  flex: 0 0 auto;
}

@media (max-width: 900px) {
  .settings-ai-header,
  .ai-agents-layout {
    grid-template-columns: 1fr;
  }
  .settings-ai-header .settings-header-actions,
  .ai-agent-actions,
  .ai-quick-actions {
    justify-content: flex-start;
  }
}

/* ===== 05-pages/contracts.css ===== */
/* Contratos | BlueBot refinado */
.compact-strip {
  padding-top: 18px;
  padding-bottom: 18px;
}

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

.summary-pill-card {
  border: 1px solid var(--border);
  background: #fafaf8;
  border-radius: 18px;
  padding: 14px 16px;
  display: grid;
  gap: 6px;
}

.summary-pill-card span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.summary-pill-card strong {
  font-size: 16px;
  line-height: 1.35;
}

.cirs-emphasis strong {
  font-size: 18px;
}

.contract-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(360px, 0.9fr);
  gap: 18px;
  align-items: start;
}

.contract-side-stack {
  display: grid;
  gap: 18px;
}

.compact-summary-grid {
  gap: 14px;
}

.dense-card {
  padding: 18px;
}

.dense-card h3 {
  margin-bottom: 12px;
}

.dense-fields {
  gap: 10px;
}

.dense-fields .summary-field {
  padding: 12px 14px;
  min-height: 0;
}

.highlighted-summary-field {
  border-left: 4px solid rgba(15, 118, 110, 0.65);
  background: #fcfdfb;
}

.document-card-list {
  display: grid;
  gap: 12px;
}

.document-action-card {
  border: 1px solid var(--border);
  background: #fafaf8;
  border-radius: 18px;
  padding: 14px 16px;
}

.document-action-header {
  display: flex;
  gap: 14px;
  justify-content: space-between;
  align-items: flex-start;
}

.document-action-header h3 {
  margin: 0 0 4px;
  font-size: 16px;
}

.document-action-header p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
  word-break: break-word;
}

.small-button {
  padding: 10px 14px;
  min-width: 0;
  white-space: nowrap;
}

.contract-action-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.contract-action-list form {
  margin: 0;
}

@media (max-width: 1400px) {
  .summary-pill-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .contract-detail-grid {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 720px) {
  .summary-pill-grid {
    grid-template-columns: 1fr;
  }

  .document-action-header {
    flex-direction: column;
    align-items: stretch;
  }

  .contract-action-list {
    flex-direction: column;
    align-items: stretch;
  }

  .contract-action-list .primary-button,
  .contract-action-list .ghost-button,
  .contract-action-list form {
    width: 100%;
  }
}

/* ===== 05-pages/documents-tables.css ===== */
/* ============================================================
   Grid da página Documentos | BlueBot (redesign Fase 3b)
   ============================================================ */
.documents-page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

@media (max-width: 1100px) {
  .documents-page-grid {
    grid-template-columns: 1fr;
  }
}

.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

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

/* ============================================================
   Responsividade geral (tablet e mobile)
   Objetivos:
   - Sidebar colapsa em um menu horizontal superior
   - Grids de 2 colunas viram coluna unica
   - Formularios ocupam largura total
   - Tabelas rolam horizontalmente sem quebrar o layout
   ============================================================ */
@media (max-width: 900px) {
  .shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: static;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 12px 16px;
    border-right: none;
    border-bottom: 1px solid var(--border-strong);
  }

  .sidebar .brand-card {
    margin-bottom: 12px;
  }

  .sidebar .nav-links {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
  }

  .sidebar .nav-section-label {
    width: 100%;
    margin-top: 8px;
  }

  .sidebar .nav-links a {
    flex: 0 1 auto;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(0, 34, 24, 0.05);
  }

  .sidebar .nav-links a.active {
    background: #002218;
    color: #fff;
  }

  .sidebar .nav-icon {
    display: none;
  }

  .sidebar .profile-card {
    margin-top: 12px;
  }

  main.content,
  .content {
    padding: 16px;
  }

  .page-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .page-header .actions-inline {
    width: 100%;
    flex-wrap: wrap;
  }

  .content-grid,
  .users-grid,
  .contact-card-grid {
    grid-template-columns: 1fr;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }

  .sanitize-field-grid {
    grid-template-columns: 1fr;
  }

  .stats-grid {
    grid-template-columns: 1fr 1fr;
  }

  table {
    font-size: 0.875rem;
  }

  .panel-card,
  .table-card {
    padding: 16px;
  }

  .sanitize-actions-row {
    flex-direction: column;
    align-items: stretch;
  }

  .sanitize-actions-row .primary-button,
  .sanitize-actions-row .ghost-button {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .stats-grid {
    grid-template-columns: 1fr;
  }

  .page-header h1 {
    font-size: 1.5rem;
  }

  .automation-shortcuts {
    flex-direction: column;
    align-items: stretch;
  }

  .automation-shortcuts a {
    width: 100%;
    text-align: center;
  }

  /* Toca tudo que ainda tentar ficar lado a lado em telas muito pequenas */
  .actions-inline {
    flex-wrap: wrap;
  }
}

/* Ajuste pequeno que torna o form de contatos mais respiravel no mobile */
@media (max-width: 520px) {
  .contact-person-switch {
    flex-direction: column;
    gap: 8px;
  }
}
/* =========================
   Painel integrado BlueBot
   ========================= */

/* ===== 05-pages/automations.css ===== */
#painel-bluebot {
  scroll-margin-top: 24px;
}

.automation-shortcuts a {
  text-decoration: none;
}

.automation-shortcuts .quick-access-primary,
.automation-shortcuts .quick-access-primary:visited,
.automation-shortcuts .quick-access-primary:hover,
.automation-shortcuts .quick-access-primary:focus {
  background: var(--dark);
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

.automation-shortcuts .ghost-button,
.automation-shortcuts .ghost-button:visited {
  color: var(--text);
  -webkit-text-fill-color: var(--text);
}

.automation-shortcuts .primary-button,
.automation-shortcuts .ghost-button {
  min-width: 210px;
}

@media (max-width: 900px) {
  .automation-shortcuts .primary-button,
  .automation-shortcuts .ghost-button {
    width: 100%;
  }
}

/* ===== 05-pages/automations-extracted.css ===== */
/* ============================================================
   CIRS · estilos extraidos de partials EJS
   Centraliza estados visuais de automacoes para reduzir CSS inline.
   ============================================================ */

/* Contratos: overlay de processamento */
  .contract-loading-overlay {
    position: fixed;
    inset: 0;
    background: rgba(9, 20, 16, 0.42);
    backdrop-filter: blur(2px);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 24px;
  }

  .contract-loading-overlay.is-visible {
    display: flex;
  }

  .contract-loading-card {
    width: min(480px, 100%);
    background: #ffffff;
    border-radius: 24px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.18);
    padding: 28px;
    display: grid;
    gap: 14px;
    text-align: center;
  }

  .contract-loading-spinner {
    width: 44px;
    height: 44px;
    margin: 0 auto;
    border-radius: 999px;
    border: 4px solid rgba(15, 23, 42, 0.12);
    border-top-color: #0f766e;
    animation: contract-spin 0.9s linear infinite;
  }

  .contract-loading-title {
    margin: 0;
    font-size: 24px;
    font-weight: 800;
    color: #0f172a;
  }

  .contract-loading-text {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
  }

  .contract-action-grid .is-busy {
    opacity: 0.7;
    pointer-events: none;
  }

  @keyframes contract-spin {
    to { transform: rotate(360deg); }
  }

/* Higienizacao de contratos: wizard, overlays e previews */
  .sanitize-overlay {
    position: fixed;
    inset: 0;
    background: var(--overlay-bg, rgba(9, 20, 16, 0.45));
    backdrop-filter: blur(2px);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 24px;
  }

  .sanitize-overlay.is-visible {
    display: flex;
  }

  .sanitize-overlay-card {
    width: min(460px, 100%);
    background: var(--rs-card-bg, #ffffff);
    border-radius: 24px;
    border: 1px solid var(--border, rgba(15, 23, 42, 0.08));
    box-shadow: var(--shadow, 0 22px 60px rgba(15, 23, 42, 0.18));
    padding: 28px;
    display: grid;
    gap: 14px;
    text-align: center;
  }

  .sanitize-spinner {
    width: 44px;
    height: 44px;
    margin: 0 auto;
    border-radius: 999px;
    border: 4px solid var(--border-strong, rgba(15, 23, 42, 0.12));
    border-top-color: var(--rs-green-800, #0f766e);
    animation: sanitize-spin 0.9s linear infinite;
  }

  @keyframes sanitize-spin {
    to { transform: rotate(360deg); }
  }

  .sanitize-page-grid {
    display: grid;
    grid-template-columns: minmax(340px, 420px) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
  }

  .sanitize-record-list {
    display: grid;
    gap: 12px;
    max-height: 690px;
    overflow: auto;
    padding-right: 2px;
  }

  .sanitize-record-item {
    display: grid;
    gap: 8px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--rs-page-bg, #fafaf8);
    padding: 14px;
    box-shadow: var(--shadow-soft);
  }

  .sanitize-record-item.active {
    border-color: var(--success-border, rgba(15, 118, 110, 0.25));
    box-shadow: 0 0 0 3px var(--success-ring, rgba(15, 118, 110, 0.08));
  }

  .sanitize-main-stack {
    display: grid;
    gap: 18px;
  }

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

  .sanitize-card {
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--rs-page-bg, #fafaf8);
    padding: 18px;
    box-shadow: var(--shadow-soft);
    min-width: 0;
  }

  .sanitize-card h3 {
    margin: 0 0 14px;
    font-size: 18px;
    line-height: 1.25;
  }

  .sanitize-card-wide {
    grid-column: 1 / -1;
  }

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

  .sanitize-field {
    display: grid;
    gap: 7px;
    min-width: 0;
  }

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

  .sanitize-actions-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 14px;
  }

  .sanitize-actions-row form,
  .sanitize-actions-row button {
    margin: 0;
  }

  .sanitize-preview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
  }

  .sanitize-preview-card {
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--rs-card-bg, #ffffff);
    padding: 12px 14px;
    display: grid;
    gap: 6px;
  }

  .sanitize-preview-card span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  .sanitize-preview-card strong {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 700;
    min-width: 0;
    word-break: break-word;
  }

  .document-check-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(220px, 1fr));
    gap: 10px;
    max-width: none;
  }

  .document-check-card {
    position: relative;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--rs-card-bg, #ffffff);
    padding: 12px 16px;
    cursor: pointer;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
  }

  .document-check-card:hover {
    transform: translateY(-1px);
    border-color: var(--border-strong, rgba(13, 59, 45, 0.16));
  }

  .document-check-card input {
    margin: 0;
    flex: 0 0 auto;
  }

  .document-check-mark {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    background: var(--success-bg, #eef5f2);
    border: 1px solid var(--border-strong, rgba(13, 59, 45, 0.14));
    color: var(--dark, #0d3b2d);
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
  }

  .document-check-copy {
    display: flex;
    align-items: center;
    min-width: 0;
  }

  .document-check-card span {
    min-width: 0;
  }

  .document-check-card strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 800;
  }

  .document-check-card small {
    display: none;
  }

  .document-check-card.is-selected {
    background: var(--success-bg, #f3f7f4);
    border-color: var(--border-strong, rgba(13, 59, 45, 0.24));
    box-shadow: 0 0 0 3px var(--focus-ring, rgba(13, 59, 45, 0.06));
  }

  .document-check-card.is-selected .document-check-mark {
    background: var(--dark, #0d3b2d);
    border-color: var(--dark, #0d3b2d);
    color: var(--white, #ffffff);
  }

  .contract-wizard {
    display: grid;
    gap: 18px;
  }

  .wizard-progress-card {
    border: 1px solid var(--border);
    border-radius: 24px;
    background: linear-gradient(180deg, var(--rs-card-bg, #ffffff) 0%, var(--rs-page-bg, #fafbf9) 100%);
    padding: 22px;
    box-shadow: var(--shadow-soft);
  }

  .wizard-progress-top {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
    margin-bottom: 16px;
  }

  .wizard-progress-top p {
    margin: 6px 0 0;
    color: var(--muted);
    max-width: 760px;
  }

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

  .wizard-step {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid var(--border);
    background: var(--rs-page-bg, #fafaf8);
    color: var(--muted);
  }

  .wizard-step-number {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: var(--rs-card-bg, #ffffff);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
  }

  .wizard-step-text strong,
  .wizard-step-text span {
    display: block;
  }

  .wizard-step-text strong {
    font-size: 13px;
    color: var(--text);
  }

  .wizard-step-text span {
    font-size: 12px;
    margin-top: 3px;
  }

  .wizard-step.is-active {
    border-color: var(--success-border, rgba(15, 118, 110, 0.28));
    background: var(--success-bg, rgba(15, 118, 110, 0.08));
    color: var(--text);
  }

  .wizard-step.is-active .wizard-step-number {
    background: var(--rs-green-800, #0f766e);
    border-color: var(--rs-green-800, #0f766e);
    color: var(--white, #ffffff);
  }

  .wizard-step.is-complete {
    border-color: var(--success-border-subtle, rgba(15, 118, 110, 0.18));
    background: var(--success-soft-bg, rgba(15, 118, 110, 0.04));
  }

  .wizard-step.is-complete .wizard-step-number {
    background: var(--success-bg, rgba(15, 118, 110, 0.14));
    border-color: var(--success-border, rgba(15, 118, 110, 0.22));
    color: var(--rs-green-800, #0f766e);
  }

  .wizard-stage[hidden] {
    display: none;
  }

  .wizard-stage-card {
    border: 1px solid var(--border);
    border-radius: 24px;
    background: var(--rs-card-bg, #ffffff);
    box-shadow: var(--shadow-soft);
    padding: 22px;
    display: grid;
    gap: 18px;
  }

  .wizard-stage-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
  }

  .wizard-stage-head h2,
  .wizard-stage-head h3 {
    margin: 0;
  }

  .wizard-stage-head p {
    margin: 6px 0 0;
    color: var(--muted);
    max-width: 720px;
  }

  .wizard-stage-chip {
    border-radius: 999px;
    background: var(--success-bg, rgba(15, 118, 110, 0.08));
    color: var(--rs-green-800, #0f766e);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 8px 12px;
    white-space: nowrap;
  }

  .wizard-focus-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
  }

  .wizard-summary-item {
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--rs-page-bg, #fafaf8);
    padding: 12px 14px;
    display: grid;
    gap: 6px;
  }

  .wizard-summary-item span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .wizard-summary-item strong {
    font-size: 15px;
    line-height: 1.4;
  }

  .wizard-config-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

  .wizard-mini-section {
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--rs-page-bg, #fafaf8);
    padding: 18px;
    display: grid;
    gap: 14px;
  }

  .wizard-mini-section h3 {
    margin: 0;
    font-size: 17px;
  }

  .wizard-mini-section p {
    margin: 0;
    color: var(--muted);
  }

  .wizard-divider {
    height: 1px;
    background: var(--border);
  }

  .wizard-floating-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

  .wizard-floating-actions .actions-left,
  .wizard-floating-actions .actions-right {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
  }

  .ghost-button.subtle-button {
    background: var(--rs-soft-bg, rgba(17, 31, 25, 0.04));
  }

  .document-check-copy {
    display: flex;
    align-items: center;
    min-width: 0;
  }

  .document-check-copy strong {
    line-height: 1.2;
    white-space: nowrap;
  }

  .lead-register-button.is-saved,
  .lead-register-button:disabled {
    cursor: default;
    color: var(--white, #f8fafc);
    border-color: var(--success-border, rgba(15, 118, 110, 0.28));
    background: var(--success-strong-bg, rgba(15, 118, 110, 0.82));
    opacity: 1;
    min-width: 168px;
    font-weight: 700;
  }

  .wizard-stage-head > div {
    min-width: 0;
  }

  .wizard-stage-head h2 {
    line-height: 1.12;
  }

  @media (max-width: 1280px) {
    .sanitize-page-grid {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 900px) {
    .sanitize-section-grid,
    .sanitize-field-grid,
    .sanitize-preview-grid,
    .document-check-grid,
    .wizard-stepper,
    .wizard-focus-summary {
      grid-template-columns: 1fr;
    }

    .sanitize-actions-row,
    .wizard-floating-actions,
    .wizard-floating-actions .actions-left,
    .wizard-floating-actions .actions-right,
    .wizard-stage-head,
    .wizard-progress-top {
      flex-direction: column;
      align-items: stretch;
    }

    .sanitize-actions-row .primary-button,
    .sanitize-actions-row .ghost-button,
    .wizard-floating-actions .primary-button,
    .wizard-floating-actions .ghost-button {
      width: 100%;
    }
  }

/* Producao juridica: fases e anexos */
  .legal-phase[hidden] { display: none; }
  .legal-phase-trail {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 16px;
  }
  .legal-phase-pill {
    border: 1px solid var(--border-color, #d7d3c9);
    border-radius: 999px;
    padding: 7px 12px;
    background: #fff;
    color: #56615f;
    font-weight: 700;
    font-size: .82rem;
  }
  .legal-phase-pill.is-active {
    background: #062f25;
    border-color: #062f25;
    color: #fff;
  }
  .legal-phase-actions {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    flex-wrap: wrap;
    margin-top: 18px;
  }
  .contact-search-results {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
  }
  .contact-search-results:empty { display: none; }
  .contact-picker-note {
    font-size: .82rem;
    color: #6e7875;
    margin-top: 6px;
  }
  .inline-search-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
  }
  .annex-helper-card {
    border: 1px dashed var(--border-color, #d7d3c9);
    border-radius: 18px;
    padding: 14px;
    background: #fbfaf6;
    margin-bottom: 14px;
  }
  .annex-helper-card p { margin: 0; color: #66706d; }
  .annex-preview-box textarea { min-height: 110px; }

/* ===== 05-pages/legal-builder.css ===== */
/* =========================
   Produção Jurídica v2
   ========================= */

.legal-builder-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(360px, 1fr);
  gap: 20px;
  align-items: start;
}

.legal-builder-main {
  min-width: 0;
}

.legal-builder-preview {
  position: sticky;
  top: 20px;
}

.legal-preview-card {
  padding: 16px;
}

.legal-preview-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.legal-document-preview {
  max-height: 72vh;
  overflow: auto;
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(17,31,25,0.08);
  border-radius: 16px;
  padding: 18px;
}

.legal-addenda-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.panel-card.compact {
  padding: 18px;
}

.panel-card.compact .panel-header {
  margin-bottom: 14px;
}

#authorRawData,
#opponentRawData,
#factsRawData,
#authorFormattedText,
#opponentFormattedText,
#factsFormattedText,
#addressingManual {
  min-height: 110px;
}

textarea[name="customLegalPrompt"],
textarea[name="customLegalText"],
textarea[name="requestsText"],
textarea[name="closingText"] {
  min-height: 120px;
}

.permissions-fieldset {
  border: 1px solid rgba(17,31,25,0.1);
  border-radius: 16px;
  padding: 14px;
  margin: 0;
}

.permissions-fieldset legend {
  padding: 0 8px;
  font-weight: 700;
  color: var(--text);
}

@media (max-width: 1100px) {
  .legal-builder-grid {
    grid-template-columns: 1fr;
  }

  .legal-builder-preview {
    position: static;
  }

  .legal-addenda-grid {
    grid-template-columns: 1fr;
  }
}

/* =========================
   Fix de responsividade / overflow
   Documentos | BlueBot e grids similares
   ========================= */

.content-grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  align-items: start;
  gap: 20px;
}

.content-grid > * {
  min-width: 0;
}

.panel-card,
.table-card,
.side-panel {
  min-width: 0;
}

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

.form-grid > * {
  min-width: 0;
}

.field,
.full-width {
  min-width: 0;
}

.field input,
.field select,
.field textarea,
.form-grid input,
.form-grid select,
.form-grid textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

textarea {
  resize: vertical;
}

.table-card {
  overflow: auto;
}

.table-card table {
  width: 100%;
  min-width: 720px;
}

@media (max-width: 1180px) {
  .content-grid {
    grid-template-columns: 1fr;
  }

  .table-card table {
    min-width: 640px;
  }
}

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

  .table-card table {
    min-width: 560px;
  }
}

/* =========================
   Fix visual Produção Jurídica
   MT fields + núcleos
   ========================= */

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

.legal-structure-grid .full-width {
  grid-column: 1 / -1;
}

#mtCity,
#mtUnitName {
  width: 100%;
  box-sizing: border-box;
}

input[list]::-webkit-calendar-picker-indicator {
  opacity: 0.6;
}

@media (max-width: 768px) {
  .legal-structure-grid {
    grid-template-columns: 1fr;
  }

  .legal-structure-grid .full-width {
    grid-column: auto;
  }
}

button:disabled,
.primary-button:disabled,
.ghost-button:disabled,
.danger-button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  pointer-events: none;
}

/* ===== 05-pages/contracts-polish.css ===== */
/* Contratos | BlueBot - polish operacional */
.contracts-builder-card {
  position: relative;
  overflow: hidden;
}

.contract-stepper {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 6px 0 18px;
}

.contract-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #fafaf8;
  color: var(--muted);
}

.contract-step span {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid var(--border);
  font-weight: 800;
  color: var(--muted);
}

.contract-step strong {
  font-size: 13px;
}

.contract-step.is-active {
  border-color: rgba(15, 118, 110, 0.28);
  background: rgba(15, 118, 110, 0.07);
  color: var(--text);
}

.contract-step.is-active span {
  background: #0f766e;
  color: #ffffff;
  border-color: #0f766e;
}

.contract-template-alert {
  border: 1px solid rgba(180, 83, 9, 0.25);
  background: rgba(251, 191, 36, 0.12);
  color: #92400e;
  border-radius: 16px;
  padding: 12px 14px;
  margin-bottom: 14px;
  font-weight: 700;
  line-height: 1.5;
}

.contract-search-input {
  width: min(280px, 100%);
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 10px 14px;
  background: #fff;
}

.muted-text {
  color: var(--muted);
  margin: 4px 0 0;
  font-size: 13px;
}

.contracts-list-card .panel-header {
  gap: 14px;
  align-items: center;
}

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

  .contracts-list-card .panel-header {
    align-items: stretch;
  }

  .contract-search-input {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .contract-stepper {
    grid-template-columns: 1fr;
  }
}

/* ===== 03-layout/app-shell-v2.css ===== */
/* ============================================================
   CIRS 2026 - acabamento operacional profissional
   ============================================================ */
.app-shell-v2 {
  grid-template-columns: 292px minmax(0, 1fr);
}

.sidebar-v2 {
  background: linear-gradient(180deg, #06251b 0%, #082d22 100%);
  padding: 20px 18px;
  gap: 20px;
}

.brand-card-v2 {
  display: grid;
  gap: 4px;
  padding: 4px 0 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.brand-card-v2 strong {
  font-size: 28px;
  line-height: 1;
  letter-spacing: -0.04em;
}

.brand-card-v2 span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.nav-links-v2 {
  gap: 4px;
  overflow-y: auto;
  padding-right: 4px;
}

.nav-links-v2 .nav-section-label {
  margin: 18px 0 8px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.nav-links-v2 a {
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 12px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
  border: 1px solid transparent;
}

.nav-links-v2 a:hover,
.nav-links-v2 a.active {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.12);
}

.nav-glyph {
  width: 24px;
  flex: 0 0 24px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #e5e7c8;
  font-weight: 700;
  font-size: 17px;
  line-height: 1;
  font-family: var(--font-sans);
}

.sidebar-footer-v2 {
  margin-top: auto;
}

.main-content {
  max-width: none;
  overflow-x: clip;
}

.primary-button,
.primary-button:visited,
button.primary-button,
a.primary-button {
  background: #06251b;
  border-color: #06251b;
  color: #ffffff;
  font-weight: 800;
}

.primary-button:hover,
button.primary-button:hover,
a.primary-button:hover {
  background: #0a3428;
  color: #ffffff;
}

.primary-button:disabled,
button:disabled,
.ghost-button:disabled {
  opacity: 0.58;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
}

.ghost-button:disabled,
.secondary-button:disabled {
  color: var(--muted);
  background: var(--surface-muted, #f7f6f1);
  border-color: var(--line, rgba(17, 31, 25, 0.11));
}

button,
select,
input,
textarea {
  color: var(--text);
}

select option {
  color: #111f19;
  background: #ffffff;
  white-space: normal;
}

.page-header {
  margin-bottom: 24px;
}

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

.dashboard-main-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(380px, 0.8fr);
  align-items: start;
}

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

.shortcut-card,
.settings-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fbfbf8;
  padding: 16px;
  display: grid;
  gap: 8px;
  min-width: 0;
}

.shortcut-card strong,
.settings-card strong {
  font-size: 16px;
}

.shortcut-card span,
.settings-card span,
.settings-card p {
  color: var(--muted);
  margin: 0;
  line-height: 1.45;
}

.settings-layout {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.doc-organizer-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.doc-organizer-sidebar {
  position: sticky;
  top: 20px;
}

.doc-batch-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fbfbf8;
  padding: 16px;
}

.doc-batch-header h2 {
  margin: 4px 0 8px;
}

.doc-flow-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}

.doc-flow-steps span {
  border: 1px solid var(--border);
  background: #fbfbf8;
  border-radius: 999px;
  padding: 10px 12px;
  font-weight: 800;
  text-align: center;
  color: var(--muted);
}

.doc-flow-steps .is-active,
.doc-flow-steps .is-complete {
  background: rgba(15, 118, 110, 0.08);
  color: #0f766e;
  border-color: rgba(15, 118, 110, 0.22);
}

.doc-file-list {
  display: grid;
  gap: 12px;
}

.doc-file-card {
  display: grid;
  grid-template-columns: 110px minmax(240px, 1fr) minmax(220px, 0.8fr) minmax(320px, 1.2fr) 150px;
  gap: 14px;
  align-items: center;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #ffffff;
  padding: 14px;
}

.doc-file-index {
  display: grid;
  gap: 6px;
}

.doc-file-index strong {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.1);
  color: #0f766e;
  padding: 6px 10px;
}

.doc-file-index span,
.doc-file-original span,
.doc-file-original small,
.doc-file-status {
  color: var(--muted);
  font-size: 12px;
}

.doc-file-original {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.doc-file-original strong {
  word-break: break-word;
}

.doc-file-status {
  text-align: right;
}

.doc-organizer-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  align-items: center;
  margin-top: 14px;
}

.send-drive-form {
  border-top: 1px solid var(--border);
  padding-top: 16px;
}

.vs-sidebar-top .primary-button,
.vs-sidebar-top .primary-button:visited {
  color: #ffffff;
  opacity: 1;
}

.legal-builder-grid .panel-card,
.legal-builder-main .panel-card {
  overflow: visible;
}

.record-create-layout {
  align-items: start;
}

.record-create-panel,
.record-feedback-panel {
  max-width: 100%;
}

@media (max-width: 1280px) {
  .metric-grid-4,
  .dashboard-main-grid,
  .shortcut-grid,
  .settings-grid,
  .settings-layout,
  .doc-organizer-layout,
  .doc-flow-steps {
    grid-template-columns: 1fr;
  }

  .doc-file-card {
    grid-template-columns: 1fr;
  }

  .doc-file-status {
    text-align: left;
  }
}

@media (max-width: 900px) {
  .app-shell-v2 {
    grid-template-columns: 1fr;
  }

  .sidebar-v2 {
    position: relative;
    min-height: auto;
  }
}


/* ===== UX Patch: prevenir overflow horizontal global ===== */
.app-shell,
.main-content,
.page-content,
.content-shell {
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
}

/* ===== 06-theme/rs-premium.css ===== */
/* ============================================================
   CIRS V2 Premium
   ============================================================ */
:root {
  --rs-green-950: #111f19;
  --rs-green-900: #15251e;
  --rs-green-850: #192b24;
  --rs-sage: #bebfa8;
  --rs-sage-2: #adae91;
  --rs-mist: #e4e4e4;
  --rs-ivory: #f6f5ef;
  --rs-card: rgba(255, 255, 252, 0.88);
  --rs-text: #111f19;
  --rs-muted: #6f776f;
  --rs-line: rgba(17, 31, 25, 0.1);
  --rs-line-strong: rgba(17, 31, 25, 0.18);
  --rs-shadow: 0 26px 70px rgba(17, 31, 25, 0.10);
  --rs-shadow-soft: 0 12px 34px rgba(17, 31, 25, 0.075);
  --rs-radius-xl: 28px;
  --rs-radius: 20px;
  --rs-radius-sm: 14px;
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
}

html, body {
  background:
    radial-gradient(circle at 78% 0%, rgba(190,191,168,.36), transparent 34rem),
    linear-gradient(135deg, #f8f7f1 0%, #f3f3ee 56%, #eceee7 100%);
  color: var(--rs-text);
  font-family: var(--font-sans);
}

body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(17,31,25,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17,31,25,.028) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.55), transparent 70%);
  z-index: -1;
}

.rs-shell { grid-template-columns: 284px minmax(0, 1fr); }
.rs-main { padding: clamp(28px, 3vw, 54px); width: min(100%, 1720px); margin: 0 auto; }

.rs-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  min-height: 100vh;
  padding: 24px 18px;
  background:
    radial-gradient(circle at 20% 0%, rgba(190,191,168,.15), transparent 17rem),
    linear-gradient(180deg, #111f19 0%, #0d1b15 100%);
  border-right: 1px solid rgba(190,191,168,.16);
  box-shadow: 16px 0 48px rgba(17,31,25,.12);
}

.rs-brand-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 4px 2px 18px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.brand-mark-rs {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.10);
  color: var(--rs-sage);
  font-family: var(--font-serif);
  font-weight: 800;
  letter-spacing: -0.04em;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.rs-brand-card strong { display: block; color: #fff; font-weight: 850; line-height: 1.1; }
.rs-brand-card span { color: rgba(255,255,255,.62); font-size: 12px; font-weight: 700; }

.rs-nav { gap: 4px; overflow-y: auto; padding-right: 4px; }
.rs-nav::-webkit-scrollbar { width: 6px; }
.rs-nav::-webkit-scrollbar-thumb { background: rgba(255,255,255,.16); border-radius: 999px; }

.nav-links-v2 .nav-section-label {
  display: block;
  margin: 18px 8px 7px;
  padding-top: 18px;
  color: rgba(190,191,168,.74);
  border-top: 1px solid rgba(190,191,168,.12);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .18em;
}
.nav-links-v2 .nav-section-label:first-child { border-top: 0; padding-top: 0; margin-top: 4px; }

.nav-links-v2 a {
  position: relative;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 14px;
  color: rgba(255,255,255,.82);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 800;
  border: 1px solid transparent;
}
.nav-links-v2 a::before {
  content: '';
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 999px;
  background: transparent;
}
.nav-links-v2 a:hover,
.nav-links-v2 a.active {
  background: rgba(255,255,255,.105);
  color: #fff;
  border-color: rgba(255,255,255,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.nav-links-v2 a.active::before { background: var(--rs-sage); }
.nav-glyph { color: var(--rs-sage); opacity: .96; font-weight: 900; }

.rs-sidebar-footer {
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.10);
}
.rs-user-card {
  padding: 12px;
  border-radius: 18px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.09);
}
.rs-user-card .avatar { background: #050907; color: #fff; border: 1px solid rgba(190,191,168,.22); }
.rs-logout { min-height: 40px; border-radius: 14px; background: rgba(255,255,255,.92); }

.rs-topbar, .sidebar-overlay { display: none; }

.page-header.rs-page-hero,
.rs-page-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 24px;
  padding-bottom: 8px;
}
.rs-page-hero::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -8px;
  height: 1px;
  background: linear-gradient(90deg, rgba(17,31,25,.18), transparent 70%);
}

.page-header h1,
.rs-page-hero h1,
.auth-card h1,
.error-card h1 {
  font-family: var(--font-serif);
  font-weight: 800;
  font-size: clamp(42px, 4.2vw, 72px);
  line-height: .92;
  letter-spacing: -0.055em;
  color: var(--rs-green-950);
  margin: 8px 0 10px;
}
.page-header p,
.rs-page-hero p { max-width: 780px; color: var(--rs-muted); font-size: 15px; line-height: 1.65; }
.eyebrow { color: #546156; font-size: 11px; font-weight: 900; letter-spacing: .18em; }
.hero-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

.panel-card, .table-card, .auth-card, .stat-card, .metric-card {
  background: var(--rs-card);
  border: 1px solid rgba(17,31,25,.095);
  border-radius: var(--rs-radius-xl);
  box-shadow: var(--rs-shadow-soft);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.panel-card { padding: clamp(20px, 2vw, 28px); }
.panel-header h2 { font-size: 20px; letter-spacing: -0.025em; color: var(--rs-green-950); }

.metric-grid, .premium-metric-grid { display: grid; gap: 16px; margin-bottom: 22px; }
.metric-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.premium-metric-card, .metric-card {
  position: relative;
  overflow: hidden;
  min-height: 148px;
  padding: 22px;
  border: 1px solid rgba(17,31,25,.10);
  border-radius: 26px;
  background: rgba(255,255,252,.78);
  box-shadow: var(--rs-shadow-soft);
}
.premium-metric-card::after, .metric-card::after {
  content: '';
  position: absolute;
  width: 120px;
  height: 120px;
  right: -42px;
  top: -42px;
  border-radius: 50%;
  background: rgba(190,191,168,.24);
}
.premium-metric-card span, .metric-card span { display: block; color: var(--rs-muted); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .12em; }
.premium-metric-card strong, .metric-card strong { display: block; margin-top: 12px; font-family: var(--font-serif); font-size: clamp(36px, 3vw, 54px); line-height: .9; letter-spacing: -0.05em; }
.premium-metric-card p, .metric-card p { margin: 12px 0 0; color: var(--rs-muted); line-height: 1.5; }
.premium-metric-card.accent { background: linear-gradient(135deg, var(--rs-green-950), #193127); color: #fff; }
.premium-metric-card.accent span, .premium-metric-card.accent p { color: rgba(255,255,255,.72); }
.premium-metric-card.warning { background: linear-gradient(135deg, #fffdf2, #f4f0d7); }

.primary-button, .ghost-button, .danger-button {
  min-height: 46px;
  border-radius: 15px;
  padding: 0 18px;
  font-weight: 900;
  letter-spacing: -0.01em;
}
.primary-button, .primary-button:visited, button.primary-button, a.primary-button {
  color: #fff;
  background: linear-gradient(135deg, #0b2018, #17392c);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 14px 28px rgba(17,31,25,.18);
}
.ghost-button {
  background: rgba(17,31,25,.065);
  border: 1px solid rgba(17,31,25,.08);
  color: var(--rs-green-950);
}
.ghost-button:hover { background: rgba(17,31,25,.10); }

input, select, textarea {
  min-height: 46px;
  border-radius: 15px;
  border: 1px solid rgba(17,31,25,.13);
  background: rgba(255,255,255,.84);
  color: var(--rs-green-950);
}
input:focus, select:focus, textarea:focus {
  border-color: rgba(17,31,25,.34);
  box-shadow: 0 0 0 4px rgba(190,191,168,.32);
}
.field label { color: var(--rs-green-950); font-size: 13px; font-weight: 900; }
.field small, .helper-text { color: var(--rs-muted); }

.pill {
  border-radius: 999px;
  border: 1px solid rgba(17,31,25,.08);
  background: rgba(17,31,25,.06);
  color: var(--rs-green-950);
  font-weight: 900;
}

.premium-dashboard-grid { grid-template-columns: minmax(0, 1.15fr) minmax(430px, .85fr); align-items: start; }
.premium-shortcut-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.premium-shortcut-card {
  position: relative;
  min-height: 132px;
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(17,31,25,.09);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.premium-shortcut-card:hover { transform: translateY(-2px); border-color: rgba(17,31,25,.18); box-shadow: var(--rs-shadow-soft); }
.premium-shortcut-card > span { color: var(--rs-sage-2); font-weight: 900; letter-spacing: .12em; }
.premium-shortcut-card strong { font-size: 17px; color: var(--rs-green-950); }
.premium-shortcut-card p { margin: 4px 0 0; color: var(--rs-muted); line-height: 1.55; }
.premium-list-stack { gap: 10px; }
.premium-list-item, .list-item { background: rgba(255,255,255,.58); border: 1px solid rgba(17,31,25,.09); box-shadow: none; }
.premium-list-item:hover { background: rgba(255,255,255,.82); box-shadow: var(--rs-shadow-soft); }

.insight-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(360px, .6fr); gap: 18px; align-items: stretch; }
.progress-insights, .bar-report-list { display: grid; gap: 14px; }
.insight-row, .bar-report-row { display: grid; gap: 8px; }
.insight-row { grid-template-columns: minmax(180px, 1fr) 70px minmax(180px, 2fr); align-items: center; }
.insight-row span, .bar-report-row span { color: var(--rs-muted); }
.insight-row i, .bar-report-row i { display: block; height: 10px; border-radius: 999px; background: rgba(17,31,25,.07); overflow: hidden; }
.insight-row i::before, .bar-report-row i::before { content: ''; display: block; width: var(--w); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #183328, var(--rs-sage)); }
.executive-note p { margin-bottom: 18px; }

.reports-premium-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.wide-report-card { grid-column: 1 / -1; }
.bar-report-row > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.bar-report-row strong { color: var(--rs-green-950); }

.search-command-card { padding: 14px; margin-bottom: 20px; }
.search-command-form { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 10px; }
.search-command-form > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: rgba(17,31,25,.08); font-weight: 900; color: var(--rs-green-950); }
.search-command-form input { border: 0; box-shadow: none; background: transparent; font-size: 18px; }
.search-empty-grid, .search-results-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.search-empty-card { min-height: 150px; }
.search-empty-card strong { display: block; font-size: 20px; margin-bottom: 8px; }
.search-empty-card p { color: var(--rs-muted); line-height: 1.55; }
.search-results-header { margin: 12px 0 16px; }
.search-results-header h2 { margin: 4px 0 0; font-family: var(--font-serif); font-size: 32px; letter-spacing: -0.04em; }
.search-result-section.wide { grid-column: 1 / -1; }
.search-result-item strong { font-size: 16px; }

.settings-premium-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 20px; align-items: start; }
.settings-main-stack { display: grid; gap: 18px; }
.settings-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.settings-field-card { padding: 16px; border: 1px solid rgba(17,31,25,.08); border-radius: 20px; background: rgba(255,255,255,.50); }
.settings-field-card.compact { padding: 14px; }
.id-preview { font-size: 12px; color: #436050; background: rgba(190,191,168,.18); border-radius: 999px; padding: 6px 10px; width: fit-content; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.settings-status-card { position: sticky; top: 28px; display: grid; gap: 16px; }
.settings-status-card h2 { font-family: var(--font-serif); font-size: 34px; line-height: 1; letter-spacing: -0.045em; margin: 0; }
.settings-status-card p { color: var(--rs-muted); line-height: 1.65; }
.settings-check-list { display: grid; gap: 10px; }
.settings-check-list span { padding: 10px 12px; border-radius: 14px; background: rgba(17,31,25,.055); font-weight: 800; }
code { padding: 2px 6px; border-radius: 7px; background: rgba(17,31,25,.08); }

.users-premium-grid { display: grid; grid-template-columns: minmax(520px, .95fr) minmax(0, 1.05fr); gap: 20px; align-items: start; }
.premium-permissions-fieldset { border: 1px solid rgba(17,31,25,.10); border-radius: 22px; padding: 18px; background: rgba(255,255,255,.44); }
.premium-permissions-fieldset legend { padding: 0 10px; font-weight: 900; }
.premium-permissions-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.permission-card { position: relative; display: flex; align-items: center; gap: 10px; min-height: 50px; padding: 12px 14px; border-radius: 16px; border: 1px solid rgba(17,31,25,.10); background: rgba(255,255,255,.66); font-weight: 850; cursor: pointer; }
.permission-card input { width: 18px; min-height: 18px; height: 18px; accent-color: var(--rs-green-950); }
.users-card-list { display: grid; gap: 12px; }
.user-row-card { display: grid; grid-template-columns: minmax(230px, 1fr) auto auto; gap: 14px; align-items: center; padding: 16px; border: 1px solid rgba(17,31,25,.09); border-radius: 22px; background: rgba(255,255,255,.56); }
.user-row-card p { margin: 3px 0 0; color: var(--rs-muted); }
.user-row-meta, .user-row-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.user-row-actions .ghost-button, .user-row-actions .danger-button { min-height: 38px; padding: 0 12px; }

.contract-page-flow, .sanitize-page-grid, .doc-organizer-layout { align-items: start; }
.document-check-card { border-radius: 16px; background: rgba(255,255,255,.72); }
.document-check-card.is-selected { border-color: rgba(7,61,47,.35); background: rgba(236,244,240,.82); box-shadow: inset 0 0 0 1px rgba(7,61,47,.08); }

.empty-state { background: rgba(255,255,255,.52); border-color: rgba(17,31,25,.13); }
.table-card { overflow: auto; }
table { min-width: 760px; }
th { background: rgba(255,255,255,.74); }

@media (max-width: 1380px) {
  .metric-grid-4, .premium-metric-grid.metric-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .premium-dashboard-grid, .reports-premium-grid, .settings-premium-layout, .users-premium-grid, .insight-grid { grid-template-columns: 1fr; }
  .settings-status-card { position: static; }
}

@media (max-width: 1020px) {
  .rs-shell { grid-template-columns: 1fr; }
  .rs-topbar {
    display: flex;
    position: sticky;
    top: 0;
    z-index: 50;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 68px;
    padding: 12px 18px;
    background: rgba(17,31,25,.96);
    color: #fff;
    border-bottom: 1px solid rgba(190,191,168,.16);
    backdrop-filter: blur(14px);
  }
  .rs-menu-button, .rs-topbar-search {
    height: 42px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.08);
    color: #fff;
    padding: 0 14px;
    font-weight: 900;
  }
  .rs-topbar-brand { display: flex; align-items: center; gap: 10px; font-weight: 900; }
  .rs-topbar-brand span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 12px; background: rgba(255,255,255,.10); color: var(--rs-sage); font-family: var(--font-serif); }
  .rs-sidebar { position: fixed; z-index: 80; inset: 0 auto 0 0; width: min(86vw, 330px); transform: translateX(-105%); transition: transform .22s ease; }
  .sidebar-overlay { position: fixed; inset: 0; z-index: 70; background: rgba(8,18,14,.48); backdrop-filter: blur(2px); }
  body.nav-open .rs-sidebar { transform: translateX(0); }
  body.nav-open .sidebar-overlay { display: block; }
  .rs-main { padding: 22px; }
}

@media (max-width: 760px) {
  .rs-main { padding: 18px; }
  .rs-page-hero { flex-direction: column; align-items: stretch; }
  .page-header h1, .rs-page-hero h1 { font-size: clamp(36px, 13vw, 54px); }
  .hero-actions, .actions-inline { align-items: stretch; }
  .metric-grid-4, .premium-metric-grid.metric-grid-4, .premium-shortcut-grid, .settings-field-grid, .premium-permissions-grid, .search-empty-grid, .search-results-grid { grid-template-columns: 1fr; }
  .search-command-form { grid-template-columns: 38px minmax(0, 1fr); }
  .search-command-form .primary-button { grid-column: 1 / -1; }
  .search-command-form input { font-size: 15px; }
  .user-row-card { grid-template-columns: 1fr; }
  .user-row-meta, .user-row-actions { justify-content: flex-start; }
  .insight-row { grid-template-columns: 1fr; }
}

/* ===== 04-components/document-picker.css ===== */
/* Contratos e Anexos | seleção de documentos */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.document-picker-shell {
  border: 1px solid rgba(17, 31, 25, 0.08);
  background: linear-gradient(180deg, rgba(255,255,255,0.95) 0%, rgba(250,250,246,0.96) 100%);
  border-radius: 20px;
  padding: 18px;
  display: grid;
  gap: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);
}

.document-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.document-picker-title {
  display: block;
  margin: 0 0 4px;
  color: var(--text);
  font-size: 15px;
  font-weight: 800;
}

.document-picker-head p,
.document-picker-help {
  margin: 0;
  color: var(--muted);
  line-height: 1.25;
  font-size: 11.5px;
}

.document-picker-counter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 116px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.09);
  color: #0f766e;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

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

.document-check-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 64px;
  border: 1px solid rgba(17, 31, 25, 0.12);
  border-radius: 16px;
  padding: 12px 14px;
  background: #fff;
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.document-check-card:hover {
  transform: translateY(-1px);
  border-color: rgba(15, 118, 110, 0.24);
  box-shadow: 0 16px 32px rgba(17, 31, 25, 0.06);
}

.document-check-card.is-selected {
  border-color: rgba(15, 118, 110, 0.34);
  background: linear-gradient(180deg, rgba(236, 246, 243, 0.96) 0%, rgba(255,255,255,1) 100%);
  box-shadow: 0 18px 34px rgba(15, 118, 110, 0.08);
}

.document-check-mark {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, 0.10);
  background: rgba(7, 61, 47, 0.10);
  color: #073d2f;
  font-weight: 900;
  font-size: 13px;
  line-height: 1;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.document-check-card.is-selected .document-check-mark {
  background: #073d2f;
  border-color: #073d2f;
  color: #fff;
}

.document-check-copy {
  display: grid;
  gap: 2px;
}

.document-check-copy strong {
  font-size: 14px;
  line-height: 1.15;
  color: var(--text);
}

.document-check-copy small {
  color: var(--muted);
  line-height: 1.55;
  font-size: 13px;
}

@media (max-width: 1024px) {
  .document-check-grid {
    grid-template-columns: 1fr;
  }

  .document-picker-head {
    flex-direction: column;
  }
}

@media (max-width: 640px) {
  .document-picker-shell {
    padding: 14px;
    border-radius: 18px;
  }

  .document-check-card {
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 15px;
    min-height: 0;
  }

  .document-check-mark {
    width: 36px;
    height: 36px;
    border-radius: 12px;
    font-size: 18px;
  }

  .document-check-copy strong {
    font-size: 15px;
  }
}

/* ===== 06-theme/theme-and-loading.css ===== */
/* ============================================================
   CIRS V2.2 · dark mode, loading bar e refinamento minimalista
   ============================================================ */
:root {
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --rs-page-bg: #f6f5ef;
  --rs-card-bg: rgba(255, 255, 252, 0.92);
  --rs-field-bg: rgba(255, 255, 255, 0.88);
  --rs-text-main: #0d2119;
  --rs-text-muted: #647269;
  --rs-border-subtle: rgba(17, 31, 25, 0.10);
}

html[data-theme='light'] body {
  background: var(--rs-page-bg);
  color: var(--rs-text-main);
}

html[data-theme='light'] body::before {
  opacity: 0.16;
}

html[data-theme='dark'] {
  --bg: #0b130f;
  --text: #edf1ea;
  --muted: #abb6ae;
  --rs-card: rgba(18, 30, 24, 0.94);
  --rs-text: #edf1ea;
  --rs-muted: #aab7ae;
  --rs-line: rgba(231, 238, 230, 0.12);
  --rs-line-strong: rgba(231, 238, 230, 0.20);
  --rs-page-bg: #0b130f;
  --rs-card-bg: rgba(18, 30, 24, 0.94);
  --rs-field-bg: rgba(11, 19, 15, 0.74);
  --rs-text-main: #edf1ea;
  --rs-text-muted: #aab7ae;
  --rs-border-subtle: rgba(231, 238, 230, 0.12);
}

html[data-theme='dark'] body {
  background: #0b130f;
  color: var(--rs-text-main);
}

html[data-theme='dark'] body::before {
  opacity: 0.04;
}

html[data-theme='dark'] .rs-main,
html[data-theme='dark'] .main-content {
  color: var(--rs-text-main);
}

html[data-theme='dark'] .panel-card,
html[data-theme='dark'] .table-card,
html[data-theme='dark'] .stat-card,
html[data-theme='dark'] .metric-card,
html[data-theme='dark'] .preview-card,
html[data-theme='dark'] .sanitize-card,
html[data-theme='dark'] .wizard-progress-card,
html[data-theme='dark'] .wizard-stage-card,
html[data-theme='dark'] .settings-premium-card,
html[data-theme='dark'] .settings-status-card,
html[data-theme='dark'] .record-feedback-panel,
html[data-theme='dark'] .document-picker-shell {
  background: var(--rs-card-bg);
  border-color: var(--rs-border-subtle);
  color: var(--rs-text-main);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
}

html[data-theme='dark'] .page-header h1,
html[data-theme='dark'] .rs-page-hero h1,
html[data-theme='dark'] .panel-header h2,
html[data-theme='dark'] h1,
html[data-theme='dark'] h2,
html[data-theme='dark'] h3,
html[data-theme='dark'] strong,
html[data-theme='dark'] .field label {
  color: var(--rs-text-main);
}

html[data-theme='dark'] .page-header p,
html[data-theme='dark'] .rs-page-hero p,
html[data-theme='dark'] .field small,
html[data-theme='dark'] .helper-text,
html[data-theme='dark'] small,
html[data-theme='dark'] .muted-text,
html[data-theme='dark'] .wizard-step-text span,
html[data-theme='dark'] .document-check-copy small {
  color: var(--rs-text-muted);
}

html[data-theme='dark'] input,
html[data-theme='dark'] select,
html[data-theme='dark'] textarea {
  background: var(--rs-field-bg);
  color: var(--rs-text-main);
  border-color: rgba(231, 238, 230, 0.16);
}

html[data-theme='dark'] option {
  background: #101b15;
  color: #edf1ea;
}

html[data-theme='dark'] .ghost-button {
  background: rgba(231, 238, 230, 0.08);
  border-color: rgba(231, 238, 230, 0.14);
  color: #edf1ea;
}

html[data-theme='dark'] .primary-button {
  background: #d6d7bd;
  border-color: #d6d7bd;
  color: #0b130f;
}

.rs-loading-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 3px;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #0d3b2d, #9da378);
  box-shadow: 0 1px 14px rgba(13, 59, 45, 0.34);
  transition: width .18s ease, opacity .18s ease;
}

.rs-loading-bar.is-visible { opacity: 1; }

.theme-toggle-button {
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .07);
  color: rgba(255, 255, 255, .90);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  cursor: pointer;
  font-weight: 850;
  justify-content: flex-start;
}

.theme-toggle-button span {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(190, 191, 168, .16);
  color: var(--rs-sage);
}

.theme-toggle-button:hover { background: rgba(255, 255, 255, .11); }

.rs-sidebar {
  background: #0b2119;
  box-shadow: 12px 0 34px rgba(17, 31, 25, .10);
}

html[data-theme='light'] .panel-card,
html[data-theme='light'] .table-card,
html[data-theme='light'] .stat-card,
html[data-theme='light'] .metric-card,
html[data-theme='light'] .preview-card,
html[data-theme='light'] .sanitize-card,
html[data-theme='light'] .wizard-progress-card,
html[data-theme='light'] .wizard-stage-card {
  background: var(--rs-card-bg);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-theme='light'] .primary-button,
html[data-theme='light'] button.primary-button,
html[data-theme='light'] a.primary-button {
  background: #0d2a20;
  border-color: #0d2a20;
  box-shadow: 0 10px 22px rgba(17, 31, 25, .14);
}

html[data-theme='light'] .primary-button:hover,
html[data-theme='light'] button.primary-button:hover,
html[data-theme='light'] a.primary-button:hover { background: #123729; }

.page-header h1,
.rs-page-hero h1,
.auth-card h1,
.error-card h1 {
  font-family: var(--font-serif);
  font-weight: 700;
}

body, input, select, textarea, button {
  font-family: var(--font-sans);
}

.flow-summary-chips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.flow-summary-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(17, 31, 25, .055);
  border: 1px solid rgba(17, 31, 25, .08);
  color: var(--rs-green-950);
  font-weight: 850;
  font-size: 13px;
}

html[data-theme='dark'] .flow-summary-chips span {
  background: rgba(231, 238, 230, .08);
  border-color: rgba(231, 238, 230, .12);
  color: #edf1ea;
}

.preview-only-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(138, 100, 32, .12);
  color: #8a6420;
  border: 1px solid rgba(138, 100, 32, .18);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.preview-notice-card {
  display: grid;
  gap: 6px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255, 248, 232, .86);
  border: 1px solid rgba(138, 100, 32, .16);
  color: #6f4f18;
}

.preview-notice-card strong { color: #6f4f18; }
.preview-notice-card span { line-height: 1.5; }

html[data-theme='dark'] .preview-only-badge,
html[data-theme='dark'] .preview-notice-card {
  background: rgba(221, 191, 108, .12);
  border-color: rgba(221, 191, 108, .20);
  color: #f2dfaa;
}

html[data-theme='dark'] .preview-notice-card strong { color: #f2dfaa; }

.contact-person-switch {
  margin-bottom: 18px;
}

.contact-page-mode-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(17, 31, 25, .055);
  border: 1px solid rgba(17, 31, 25, .08);
  color: var(--rs-green-950);
  font-size: 13px;
  font-weight: 800;
  margin-top: 8px;
}

html[data-theme='dark'] .contact-page-mode-chip {
  background: rgba(231, 238, 230, .08);
  border-color: rgba(231, 238, 230, .12);
  color: #edf1ea;
}

.settings-status-card .helper-text code,
.settings-status-card .helper-text:has(code) {
  word-break: break-word;
}

/* ===== 06-theme/visual-refinements.css ===== */
/* ============================================================
   CIRS V2.3 · Minimalismo real
   Reduz ornamentos visuais: menos gradiente, menos sombra, títulos sans.
   ============================================================ */
:root {
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --rs-page-bg: #f7f6f1;
  --rs-card-bg: #ffffff;
  --rs-field-bg: #ffffff;
  --rs-text-main: #10211a;
  --rs-text-muted: #5f6b64;
  --rs-border-subtle: #deddd4;
  --rs-border-strong: #cecdc3;
  --rs-shadow-flat: 0 1px 2px rgba(17, 31, 25, 0.04);
  --rs-shadow-panel: 0 8px 22px rgba(17, 31, 25, 0.045);
  --radius: 18px;
}

html[data-theme='light'] body,
body {
  background: var(--rs-page-bg);
  color: var(--rs-text-main);
}

body::before,
.main-content::before,
.rs-main::before,
.page-header::before,
.rs-page-hero::before,
.dashboard-hero::before,
.premium-metric-card::after,
.metric-card::after,
.stat-card::after,
.panel-card::after,
.table-card::after {
  display: none;
  content: none;
}

.page-header,
.page-header.rs-page-hero,
.rs-page-hero,
.dashboard-hero {
  padding: 0;
  margin-bottom: 22px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.page-header h1,
.rs-page-hero h1,
.auth-card h1,
.error-card h1,
.title-split,
.brand-card-v2 strong,
.rs-brand-card strong {
  font-family: var(--font-sans);
  font-weight: 800;
  letter-spacing: -0.045em;
}

.page-header h1,
.rs-page-hero h1 {
  font-size: clamp(38px, 3.6vw, 58px);
  line-height: 1.02;
}

.page-header p,
.rs-page-hero p {
  max-width: 780px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--rs-text-muted);
}

.panel-card,
.table-card,
.auth-card,
.stat-card,
.metric-card,
.premium-panel,
.premium-metric-card,
.shortcut-card,
.premium-shortcut-card,
.list-item,
.premium-list-item,
.record-feedback-panel,
.wizard-progress-card,
.wizard-stage-card,
.sanitize-card,
.document-picker-shell,
.preview-card,
.settings-premium-card,
.settings-status-card {
  background: var(--rs-card-bg);
  border: 1px solid var(--rs-border-subtle);
  box-shadow: var(--rs-shadow-panel);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.panel-card,
.table-card,
.wizard-progress-card,
.wizard-stage-card,
.sanitize-card,
.record-feedback-panel,
.settings-premium-card,
.settings-status-card {
  border-radius: 18px;
}

.metric-grid,
.premium-metric-grid,
.metric-grid-4,
.premium-metric-grid.metric-grid-4 {
  gap: 14px;
  margin-bottom: 18px;
}

.premium-metric-card,
.metric-card,
.stat-card {
  min-height: 112px;
  padding: 20px;
  border-radius: 16px;
  color: var(--rs-text-main);
  background: #ffffff;
}

.premium-metric-card.accent,
.stat-card.accent,
.metric-card.accent,
.premium-metric-card.warning {
  color: var(--rs-text-main);
  background: #ffffff;
  border-color: var(--rs-border-subtle);
}

.premium-metric-card.accent,
.stat-card.accent {
  border-left: 4px solid #0d3b2d;
}

.premium-metric-card.warning {
  border-left: 4px solid #b59b4d;
}

.premium-metric-card span,
.metric-card span,
.stat-card span {
  color: var(--rs-text-muted);
  font-size: 11px;
  letter-spacing: 0.12em;
}

.premium-metric-card strong,
.metric-card strong,
.stat-card strong {
  margin-top: 10px;
  color: var(--rs-text-main);
  font-family: var(--font-sans);
  font-size: clamp(30px, 2.5vw, 42px);
  font-weight: 750;
  line-height: 1;
  letter-spacing: -0.04em;
}

.premium-metric-card p,
.metric-card p,
.stat-card small,
.stat-card p {
  color: var(--rs-text-muted);
  margin-top: 8px;
}

.premium-dashboard-grid,
.dashboard-main-grid {
  gap: 18px;
}

.quick-actions-panel,
.recent-panel,
.executive-note {
  padding: 22px;
}

.premium-shortcut-card,
.shortcut-card {
  border-radius: 14px;
  padding: 17px;
  box-shadow: none;
  background: #fff;
}

.premium-shortcut-card:hover,
.shortcut-card:hover,
.premium-list-item:hover,
.list-item:hover {
  transform: none;
  box-shadow: var(--rs-shadow-flat);
  border-color: var(--rs-border-strong);
}

.premium-shortcut-card > span,
.shortcut-card > span {
  color: #8d947d;
}

.premium-list-item,
.list-item {
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}

.insight-grid {
  gap: 18px;
}

.progress-insights i,
.progress-bar {
  background: #0d3b2d;
}

.primary-button,
button.primary-button,
a.primary-button {
  box-shadow: none;
  border-radius: 12px;
}

.ghost-button,
button.ghost-button,
a.ghost-button {
  box-shadow: none;
  border-radius: 12px;
  background: #f2f1ec;
  border-color: #deddd4;
}

.rs-sidebar {
  background: #092218;
  box-shadow: none;
  border-right: 1px solid rgba(255,255,255,.08);
}

.rs-brand-card strong {
  font-size: 26px;
}

.rs-nav a,
.nav-links-v2 a {
  min-height: 38px;
  border-radius: 11px;
}

.rs-nav a.active,
.nav-links-v2 a.active {
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.12);
}

.wizard-progress-card {
  padding: 24px;
}

.wizard-progress-top {
  gap: 20px;
}

.flow-summary-chips {
  margin-top: 10px;
}

.flow-summary-chips span {
  background: #f3f2ed;
  border-color: #deddd4;
  color: #0d3b2d;
}

.wizard-step {
  background: #fff;
  border-color: var(--rs-border-subtle);
  box-shadow: none;
}

.wizard-step.is-active,
.wizard-step.is-done {
  background: #f3f7f4;
  border-color: rgba(13,59,45,.22);
}

.wizard-step-number {
  background: #eef3ef;
  color: #0d3b2d;
}

.wizard-step.is-active .wizard-step-number,
.wizard-step.is-done .wizard-step-number {
  background: #0d3b2d;
  color: #fff;
}

.rs-loading-bar {
  height: 3px;
  background: #2f80ed;
  box-shadow: none;
}

/* Dark minimal */
html[data-theme='dark'] {
  --rs-page-bg: #0c1410;
  --rs-card-bg: #111d17;
  --rs-field-bg: #0d1813;
  --rs-text-main: #edf1ea;
  --rs-text-muted: #aab5ad;
  --rs-border-subtle: rgba(237, 241, 234, .12);
  --rs-border-strong: rgba(237, 241, 234, .20);
}

html[data-theme='dark'] body {
  background: var(--rs-page-bg);
}

html[data-theme='dark'] .panel-card,
html[data-theme='dark'] .table-card,
html[data-theme='dark'] .stat-card,
html[data-theme='dark'] .metric-card,
html[data-theme='dark'] .premium-panel,
html[data-theme='dark'] .premium-metric-card,
html[data-theme='dark'] .shortcut-card,
html[data-theme='dark'] .premium-shortcut-card,
html[data-theme='dark'] .list-item,
html[data-theme='dark'] .premium-list-item,
html[data-theme='dark'] .record-feedback-panel,
html[data-theme='dark'] .wizard-progress-card,
html[data-theme='dark'] .wizard-stage-card,
html[data-theme='dark'] .sanitize-card,
html[data-theme='dark'] .document-picker-shell,
html[data-theme='dark'] .preview-card,
html[data-theme='dark'] .settings-premium-card,
html[data-theme='dark'] .settings-status-card {
  background: var(--rs-card-bg);
  border-color: var(--rs-border-subtle);
  box-shadow: 0 1px 2px rgba(0,0,0,.18);
}

html[data-theme='dark'] .premium-metric-card,
html[data-theme='dark'] .metric-card,
html[data-theme='dark'] .stat-card,
html[data-theme='dark'] .premium-metric-card.accent,
html[data-theme='dark'] .stat-card.accent,
html[data-theme='dark'] .premium-metric-card.warning {
  background: var(--rs-card-bg);
  color: var(--rs-text-main);
}

html[data-theme='dark'] .premium-metric-card strong,
html[data-theme='dark'] .metric-card strong,
html[data-theme='dark'] .stat-card strong,
html[data-theme='dark'] .premium-metric-card span,
html[data-theme='dark'] .metric-card span,
html[data-theme='dark'] .stat-card span,
html[data-theme='dark'] .premium-metric-card p,
html[data-theme='dark'] .metric-card p,
html[data-theme='dark'] .stat-card small {
  color: inherit;
}

html[data-theme='dark'] .premium-metric-card span,
html[data-theme='dark'] .metric-card span,
html[data-theme='dark'] .stat-card span,
html[data-theme='dark'] .premium-metric-card p,
html[data-theme='dark'] .metric-card p,
html[data-theme='dark'] .stat-card small {
  color: var(--rs-text-muted);
}

html[data-theme='dark'] .ghost-button,
html[data-theme='dark'] button.ghost-button,
html[data-theme='dark'] a.ghost-button,
html[data-theme='dark'] .flow-summary-chips span,
html[data-theme='dark'] .wizard-step {
  background: #111d17;
  border-color: var(--rs-border-subtle);
  color: var(--rs-text-main);
}

@media (max-width: 768px) {
  .page-header h1,
  .rs-page-hero h1 {
    font-size: clamp(34px, 11vw, 46px);
  }
}

/* ===== 05-pages/contracts-client-prefill.css ===== */
/* ============================================================
   Ajustes V2.4 · fluxo, financeiro e produção jurídica
   ============================================================ */
.insight-grid-single {
  grid-template-columns: 1fr;
}

.contract-client-lookup {
  border-top: 1px solid var(--border, rgba(17,31,25,.12));
  padding-top: 16px;
  display: grid;
  gap: 12px;
}

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

.prefill-results {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.prefill-chip {
  min-height: 38px;
  border-radius: 999px;
  padding: 0 14px;
  font-size: 13px;
}

.legal-document-preview {
  border: 1px solid var(--border, rgba(17,31,25,.12));
  border-radius: 18px;
  background: rgba(255,255,255,.68);
  padding: 18px;
  line-height: 1.75;
  max-height: 72vh;
  overflow: auto;
}

.flow-summary-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.flow-summary-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--border, rgba(17,31,25,.12));
  background: rgba(255,255,255,.64);
  font-size: 12px;
  font-weight: 700;
  color: var(--text, #10211a);
}

#financePaymentTermsPreview,
#paymentTermsPreview {
  min-height: 82px;
}

@media (max-width: 720px) {
  .contract-search-inline {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   Configurações em nível de produção · layout Advbox-like
   ============================================================ */

/* ===== 05-pages/contracts-overrides.css ===== */
/* ============================================================
   CIRS - ajuste visual pontual solicitado em 28/04
   Corrige documentos, lead cadastrado, ações externas, usuários e IA.
   ============================================================ */

/* Contratos e Anexos: checklist documental padronizado.
   Esta regra substitui o padrão antigo de "botãozão" azul/centralizado.
   Mantém compatibilidade com os seletores legados usados em outras telas. */
.document-picker-shell .document-check-grid,
.wizard-mini-section .document-check-grid,
.sanitize-field.full .document-check-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  align-items: stretch;
}

.document-picker-shell .document-check-card,
.wizard-mini-section .document-check-card,
.sanitize-field.full .document-check-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  justify-content: start;
  gap: 12px;
  min-width: 0;
  width: 100%;
  min-height: 64px;
  height: auto;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(11, 40, 30, .14);
  box-shadow: none;
  overflow: hidden;
  cursor: pointer;
}

.document-picker-shell .document-check-card:hover,
.wizard-mini-section .document-check-card:hover,
.sanitize-field.full .document-check-card:hover {
  border-color: rgba(7, 61, 47, .35);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(11, 40, 30, .07);
}

.document-picker-shell .document-check-card.is-selected,
.wizard-mini-section .document-check-card.is-selected,
.sanitize-field.full .document-check-card.is-selected {
  background: rgba(236, 244, 240, .82);
  border-color: rgba(7, 61, 47, .35);
  box-shadow: inset 0 0 0 1px rgba(7, 61, 47, .08);
}

.document-check-card input:not(.sr-only) {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

.document-check-card .document-check-mark {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(7, 61, 47, .1);
  border: 1px solid rgba(7, 61, 47, .18);
  color: #073d2f;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
}

.document-check-card.is-selected .document-check-mark {
  background: #073d2f;
  border-color: #073d2f;
  color: #fff;
}

.document-check-card .document-check-copy,
.document-check-card > span:not(.document-check-mark) {
  min-width: 0;
  display: grid;
  gap: 2px;
  align-items: center;
  justify-content: start;
  margin: 0;
  text-align: left;
}

.document-check-card .document-check-copy strong,
.document-check-card > span:not(.document-check-mark) strong {
  color: var(--text, #0b281e);
  font-size: 14px;
  font-weight: 850;
  line-height: 1.15;
  letter-spacing: -.01em;
  max-width: none;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  text-align: left;
}

.document-check-card .document-check-copy small,
.document-check-card small {
  display: block;
  color: rgba(11, 40, 30, .62);
  font-size: 11.5px;
  line-height: 1.25;
  text-align: left;
}

@media (max-width: 760px) {
  .document-picker-shell .document-check-grid,
  .wizard-mini-section .document-check-grid,
  .sanitize-field.full .document-check-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== 05-pages/contracts-actions.css ===== */
/* Botão Lead Cadastrado legível mesmo desabilitado. */
.lead-register-button.is-saved,
.lead-register-button.is-saved:disabled,
.lead-register-button:disabled.is-saved {
  background: var(--dark, #111f19);
  border-color: var(--dark, #111f19);
  color: #fff;
  opacity: 1;
  box-shadow: 0 10px 22px rgba(17, 31, 25, .12);
  cursor: default;
}

/* Ações externas: todos os botões na mesma linha, com tamanho menor. */
.contract-action-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  align-items: stretch;
}

.contract-action-grid form {
  display: block;
  min-width: 0;
}

.contract-action-grid .primary-button,
.contract-action-grid .ghost-button,
.contract-action-grid button,
.contract-action-grid a {
  min-height: 36px;
  width: 100%;
  min-width: 0;
  padding: 0 9px;
  border-radius: 11px;
  font-size: 12px;
  line-height: 1.12;
  white-space: normal;
  text-align: center;
}

@media (max-width: 760px) {
  .contract-action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ===== 05-pages/processes.css ===== */
.process-metric-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}

.process-metric-strip article {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: #fff;
  box-shadow: var(--shadow-soft);
  padding: 16px 18px;
  display: grid;
  gap: 4px;
  min-height: 96px;
}

.process-metric-strip span,
.process-metric-strip small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-metric-strip strong {
  color: var(--text);
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1;
  letter-spacing: -0.04em;
}

.process-layout-grid-refined {
  grid-template-columns: minmax(0, 1.55fr) minmax(420px, .95fr);
  align-items: start;
}

.process-form-card-refined {
  max-height: calc(100vh - 28px);
  overflow: auto;
  scrollbar-gutter: stable;
}

.process-fieldset {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  margin: 0;
  display: grid;
  gap: 14px;
  background: rgba(255,255,255,.72);
}

.process-fieldset legend {
  padding: 0 8px;
  color: var(--text);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

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

.process-table-refined td,
.process-table-refined th {
  vertical-align: top;
}

.capture-initial-block[hidden] {
  display: none;
}

.document-check-card strong {
  white-space: normal;
  line-height: 1.2;
}

.document-check-grid {
  max-width: none;
}

html[data-theme='dark'] .process-metric-strip article,
html[data-theme='dark'] .process-fieldset {
  background: rgba(8, 27, 22, .94);
  border-color: rgba(144, 203, 184, .16);
}

html[data-theme='dark'] .process-metric-strip strong,
html[data-theme='dark'] .process-fieldset legend {
  color: #f8fafc;
}

@media (max-width: 1180px) {
  .process-metric-strip,
  .process-layout-grid-refined,
  .form-grid.two-columns {
    grid-template-columns: 1fr;
  }

  .process-form-card-refined {
    max-height: none;
  }
}

/* Ajuste visual final — Processos, barras e configurações (29/04/2026) */
.refined-process-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}

.process-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 18px 0 20px;
}

.process-kpi-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 112px;
  padding: 18px;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 24px;
  background: rgba(255,255,255,.74);
  box-shadow: 0 18px 42px rgba(17,31,25,.06);
}

.process-kpi-card > span {
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(6, 70, 52, .08);
  color: #063f30;
  font-weight: 900;
}

.process-kpi-card strong {
  display: block;
  color: #071f18;
  font-size: clamp(24px, 2.7vw, 38px);
  line-height: 1;
  letter-spacing: -.04em;
}

.process-kpi-card small {
  display: block;
  margin-top: 4px;
  color: #4d6259;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.process-kpi-card em {
  grid-column: 1 / -1;
  color: #65786f;
  font-style: normal;
  font-size: 13px;
}

.refined-process-filter {
  margin-bottom: 20px;
}

.process-filter-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(180px, .55fr) minmax(180px, .55fr) minmax(180px, .65fr) auto;
  gap: 14px;
  align-items: end;
}

.process-filter-grid .field-span-2 {
  grid-column: auto;
}

.process-filter-actions {
  align-self: end;
  flex-wrap: nowrap;
}

.process-board-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(430px, .85fr);
  gap: 24px;
  align-items: start;
}

.refined-process-list-card,
.refined-process-form-card {
  min-width: 0;
}

.refined-process-form-card {
  position: sticky;
  top: 22px;
  max-height: calc(100vh - 28px);
  overflow: auto;
  scrollbar-gutter: stable;
}

.process-card-list {
  display: grid;
  gap: 12px;
}

.process-row-card {
  display: grid;
  grid-template-columns: minmax(190px, 1.1fr) minmax(180px, 1fr) minmax(130px, .7fr) minmax(140px, .8fr) minmax(150px, .75fr);
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid rgba(17,31,25,.09);
  border-radius: 20px;
  background: rgba(255,255,255,.72);
}

.process-row-card strong {
  display: block;
  color: #071f18;
}

.process-row-card span,
.process-row-card small {
  display: block;
  color: #63746d;
  font-size: 12px;
  line-height: 1.35;
}

.process-empty-state {
  padding: 28px;
  text-align: left;
}

.refined-process-form {
  gap: 16px;
}

.process-form-section {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 16px;
  border: 1px solid rgba(17,31,25,.10);
  border-radius: 22px;
  background: rgba(255,255,255,.68);
}

.process-section-title {
  display: flex;
  gap: 12px;
  align-items: center;
}

.process-section-title > span {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #063f30;
  color: #fff;
  font-weight: 900;
}

.process-section-title strong {
  display: block;
  color: #071f18;
}

.process-section-title small {
  color: #65786f;
}

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

.refined-process-form .field-span-full {
  grid-column: 1 / -1;
}

.process-submit-row {
  position: sticky;
  bottom: -1px;
  padding: 12px 0 0;
  background: linear-gradient(180deg, rgba(250,249,244,0), #faf9f4 48%);
}

/* Barras do painel: trilho claro + preenchimento sólido e contínuo */
.progress-insights i,
.bar-report-row i,
.progress-track {
  background: rgba(17,31,25,.09);
  border-radius: 999px;
  overflow: hidden;
}

.progress-insights i::before,
.bar-report-row i::before {
  background: linear-gradient(90deg, #0b3d2e 0%, #315942 100%);
  box-shadow: none;
}

.progress-bar {
  background: linear-gradient(90deg, #0b3d2e 0%, #315942 100%);
  box-shadow: none;
}

.progress-bar.warning { background: linear-gradient(90deg, #9a6a18 0%, #c39a43 100%); }
.progress-bar.error { background: linear-gradient(90deg, #8f2f2f 0%, #b34b4b 100%); }

/* Configurações: respiro, ações e metas */
.settings-console-shell {
  align-items: start;
}

.settings-workspace {
  min-width: 0;
}

.ai-production-table th:last-child,
.ai-production-table td:last-child {
  width: 132px;
  min-width: 132px;
  text-align: right;
}

.row-action-pack {
  display: inline-flex;
  flex-wrap: nowrap;
  gap: 6px;
  align-items: center;
  justify-content: flex-end;
}

.row-action-pack form { margin: 0; }
.row-action-pack .ghost-button.tiny,
.row-action-pack button.ghost-button.tiny,
.row-action-pack a.ghost-button.tiny {
  min-height: 30px;
  padding: 0 10px;
  font-size: 11px;
  white-space: nowrap;
}

.settings-menu-icon-integrations::before { content: 'API'; }

.settings-goals-header {
  margin-bottom: 16px;
}

.goals-dashboard-form {
  display: grid;
  gap: 18px;
}

.goals-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.goals-kpi-card {
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid rgba(17,31,25,.10);
  border-radius: 22px;
  background: rgba(255,255,255,.72);
  box-shadow: 0 16px 40px rgba(17,31,25,.06);
}

.goals-kpi-card small {
  color: #63746d;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.goals-kpi-card strong {
  color: #071f18;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1;
  letter-spacing: -.045em;
}

.goals-kpi-card span {
  color: #65786f;
  line-height: 1.45;
}

.goals-layout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
  gap: 18px;
  align-items: stretch;
}

.goals-layout-grid.secondary {
  grid-template-columns: minmax(0, 1fr) minmax(320px, .7fr);
}

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

.goals-rules-card,
.goals-cycle-card {
  display: grid;
  align-content: start;
  gap: 14px;
}

.goals-cycle-list {
  display: grid;
  gap: 10px;
}

.goals-cycle-list div {
  padding: 14px;
  border-radius: 18px;
  background: rgba(17,31,25,.055);
}

.goals-cycle-list strong,
.goals-cycle-list span {
  display: block;
}

.goals-cycle-list span { color: #65786f; margin-top: 4px; }

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

.goals-nuclei-grid article {
  padding: 14px;
  border: 1px solid rgba(17,31,25,.08);
  border-radius: 18px;
  background: rgba(255,255,255,.62);
}

.goals-nuclei-grid article > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.goals-nuclei-grid span {
  color: #65786f;
  font-size: 12px;
}

.goals-nuclei-grid i {
  display: block;
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(17,31,25,.09);
}

.goals-nuclei-grid i::before {
  content: '';
  display: block;
  width: var(--w);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0b3d2e, #315942);
}

.goals-submit-row {
  justify-content: flex-end;
}

html[data-theme='dark'] .process-kpi-card,
html[data-theme='dark'] .process-row-card,
html[data-theme='dark'] .process-form-section,
html[data-theme='dark'] .goals-kpi-card,
html[data-theme='dark'] .goals-nuclei-grid article,
html[data-theme='dark'] .goals-cycle-list div {
  background: rgba(8,27,22,.92);
  border-color: rgba(144,203,184,.16);
}

html[data-theme='dark'] .process-kpi-card strong,
html[data-theme='dark'] .process-section-title strong,
html[data-theme='dark'] .process-row-card strong,
html[data-theme='dark'] .goals-kpi-card strong {
  color: #f8fafc;
}

@media (max-width: 1280px) {
  .process-filter-grid,
  .process-board-grid,
  .goals-layout-grid,
  .goals-layout-grid.secondary {
    grid-template-columns: 1fr;
  }
  .refined-process-form-card { position: static; max-height: none; }
}

@media (max-width: 900px) {
  .refined-process-header,
  .settings-goals-header { flex-direction: column; }
  .process-kpi-grid,
  .goals-kpi-grid,
  .goals-nuclei-grid,
  .refined-process-form .form-grid.two-columns,
  .goals-form-grid { grid-template-columns: 1fr; }
  .process-row-card { grid-template-columns: 1fr; }
}


/* ============================================================
   Merged legacy process patches (v26-v29)
   Consolidated here to avoid import-order override conflicts.
   ============================================================ */
.process-filter-grid-compact {
  grid-template-columns: minmax(280px, 2fr) repeat(4, minmax(150px, 1fr)) auto;
  gap: 14px;
  align-items: end;
}

.process-filter-grid-compact .field-span-3 {
  grid-column: span 2;
}

.process-filter-grid-compact .field-span-2,
.process-filter-grid-compact .monitoring-inline-flags.field-span-2 {
  grid-column: 1 / span 3;
  align-self: center;
  padding-bottom: 0;
}

.process-filter-grid-compact .process-filter-actions {
  grid-column: 4 / -1;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  align-self: center;
  padding-top: 4px;
}

.process-filter-grid-compact .process-filter-actions .primary-button,
.process-filter-grid-compact .process-filter-actions .ghost-button {
  min-width: 92px;
  justify-content: center;
}

.process-clients-card,
.processes-monitoring-card {
  padding: 0;
  overflow: hidden;
  border-radius: 24px;
}

.process-clients-card .process-monitoring-details,
.processes-monitoring-card .process-section-collapse,
.process-section-collapse {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
}

.process-clients-card .process-monitoring-details > summary,
.process-section-collapse > summary.process-section-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-height: 86px;
  margin: 0;
  padding: 22px 24px;
  list-style: none;
  cursor: pointer;
  border-bottom: 1px solid rgba(8, 38, 68, .08);
  background: #f7f9f8;
  box-sizing: border-box;
}

.process-clients-card .process-summary-heading,
.process-section-summary > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-clients-summary-side {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: max-content;
}

.process-summary-chevron {
  width: 32px;
  height: 32px;
  min-width: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(8, 38, 68, .055);
  color: #26443c;
}

.process-section-collapse[open] .process-summary-chevron {
  transform: rotate(180deg);
}

.process-clients-card .process-client-toolbar,
.process-clients-card .process-client-list,
.processes-monitoring-card .monitoring-card-list {
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

.process-clients-card .process-client-toolbar {
  padding-top: 16px;
  padding-bottom: 10px;
  margin: 0;
}

.process-clients-card .process-client-list,
.processes-monitoring-card .monitoring-card-list {
  padding-bottom: 24px;
}

.processes-monitoring-card .monitoring-card-list {
  padding-top: 24px;
  margin-top: 0;
}

.process-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.process-action-chip {
  min-height: 42px;
  padding: 0 14px;
  border-radius: 14px;
  white-space: nowrap;
  font-weight: 800;
}

.system-link-chip:not(.is-muted) {
  background: #eef4f1;
  border-color: rgba(6, 45, 34, .16);
  color: #0b3428;
}

.system-link-chip.is-muted {
  opacity: .72;
}

.process-edit-panel[hidden] { display: none; }
.process-edit-panel:not([hidden]) {
  display: block;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
}

.process-edit-form .process-edit-footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 1280px) {
  .process-filter-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .process-filter-grid-compact .field-span-3,
  .process-filter-grid-compact .field-span-2,
  .process-filter-grid-compact .process-filter-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .process-clients-card .process-monitoring-details > summary,
  .process-section-collapse > summary.process-section-summary {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .process-clients-summary-side {
    justify-content: flex-start;
  }

  .process-clients-card .process-client-toolbar,
  .process-clients-card .process-client-list,
  .processes-monitoring-card .monitoring-card-list {
    padding-left: 18px;
    padding-right: 18px;
  }
}

/* ===== 05-pages/process-monitoring.css ===== */
/* === Expedientes: monitoramento processual e diário de análise (29/04/2026) === */
.process-header-actions {
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.process-kpi-grid-monitoring {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.monitoring-filter-grid {
  grid-template-columns: minmax(260px, 1.25fr) minmax(130px, .55fr) minmax(130px, .55fr) minmax(170px, .75fr) minmax(155px, .65fr) minmax(130px, .5fr) auto;
}

.compact-check-field {
  display: grid;
  align-content: end;
  gap: 6px;
  min-height: 42px;
}

.compact-check-field label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  color: #51645b;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
}

.compact-check-field input[type='checkbox'] {
  width: 16px;
  height: 16px;
  accent-color: #063f30;
}

.process-monitoring-board-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(430px, .65fr);
}

.monitoring-card-list {
  gap: 14px;
}

.process-monitoring-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  padding: 18px;
}

.process-row-main {
  display: grid;
  grid-template-columns: minmax(180px, 1.15fr) minmax(160px, 1fr) minmax(130px, .75fr) minmax(170px, .9fr);
  gap: 14px;
  align-items: start;
}

.status-badge {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.status-badge.success {
  background: rgba(33, 119, 78, .10);
  color: #1f6a49;
}

.status-badge.warning {
  background: rgba(177, 116, 26, .13);
  color: #845817;
}

.status-badge.danger {
  background: rgba(163, 50, 50, .11);
  color: #8d2d2d;
}

.status-badge.neutral {
  background: rgba(17, 31, 25, .07);
  color: #43584f;
}

.process-consult-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border-radius: 16px;
  background: rgba(9, 55, 43, .045);
}

.process-consult-strip .tiny,
.ghost-button.tiny {
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.ghost-button.is-disabled {
  opacity: .45;
  pointer-events: none;
}

.process-consult-note {
  color: #60746b;
  font-size: 12px;
  margin-left: auto;
}

.process-monitoring-details {
  border: 1px solid rgba(9, 55, 43, .10);
  border-radius: 18px;
  background: rgba(255,255,255,.54);
  overflow: hidden;
}

.process-monitoring-details > summary {
  cursor: pointer;
  padding: 13px 15px;
  color: #0b3d2e;
  font-weight: 900;
  list-style-position: inside;
}

.process-monitoring-details[open] > summary {
  border-bottom: 1px solid rgba(9, 55, 43, .09);
  background: rgba(9, 55, 43, .045);
}

.process-monitoring-form {
  display: grid;
  gap: 14px;
  padding: 14px;
}

.process-monitoring-form .field-span-full,
.process-form-stack .field-span-full {
  grid-column: 1 / -1;
}

.process-log-timeline {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  background: rgba(17,31,25,.035);
}

.process-log-timeline > strong {
  color: #071f18;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.process-log-item {
  display: grid;
  gap: 3px;
  padding: 10px;
  border-radius: 14px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(9, 55, 43, .08);
}

.process-log-item span,
.process-log-item small {
  color: #65786f;
  font-size: 12px;
  line-height: 1.35;
}

.process-log-item p {
  margin: 0;
  color: #10251d;
  font-weight: 800;
}

.process-link-preview {
  display: grid;
  gap: 3px;
  padding: 12px;
  border-radius: 16px;
  border: 1px dashed rgba(9,55,43,.22);
  background: rgba(9,55,43,.045);
}

.process-link-preview strong,
.process-link-preview span,
.process-link-preview small {
  display: block;
}

.process-link-preview strong {
  color: #0b3d2e;
}

.process-link-preview span,
.process-link-preview small {
  color: #60746b;
  font-size: 12px;
}

html[data-theme='dark'] .process-monitoring-details,
html[data-theme='dark'] .process-log-item,
html[data-theme='dark'] .process-link-preview {
  background: rgba(8,27,22,.82);
  border-color: rgba(144,203,184,.16);
}

html[data-theme='dark'] .process-log-timeline,
html[data-theme='dark'] .process-consult-strip {
  background: rgba(144,203,184,.06);
}

html[data-theme='dark'] .process-log-timeline > strong,
html[data-theme='dark'] .process-log-item p {
  color: #f8fafc;
}

@media (max-width: 1400px) {
  .process-kpi-grid-monitoring,
  .monitoring-filter-grid,
  .process-monitoring-board-grid,
  .process-row-main {
    grid-template-columns: 1fr;
  }
  .process-consult-note { margin-left: 0; }
}

/* === Expedientes e processos | refinamento V13 === */
.process-filter-grid-compact {
  grid-template-columns: minmax(240px, 2fr) repeat(3, minmax(160px, 1fr)) minmax(220px, 1.25fr) auto;
  gap: 1rem;
  align-items: end;
}

.process-filter-grid-compact .field-span-3 {
  grid-column: span 3;
}

.monitoring-inline-flags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .8rem 1rem;
  padding-bottom: .25rem;
}

.check-inline {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-weight: 600;
  color: var(--text-secondary);
}

.process-filter-actions {
  align-self: end;
  justify-content: flex-end;
}

.with-client-board {
  grid-template-columns: minmax(0, 1.4fr) minmax(360px, .95fr);
  gap: 1.25rem;
  align-items: start;
}

.process-monitoring-left-column {
  display: grid;
  gap: 1.25rem;
}

.process-clients-details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  list-style: none;
  cursor: pointer;
}

.process-clients-details > summary::-webkit-details-marker {
  display: none;
}

.compact-client-list {
  margin-top: 1rem;
}

.process-client-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.process-client-row strong,
.process-monitoring-card strong,
.process-party-card strong {
  display: block;
}

.compact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  justify-content: flex-end;
}

.process-monitoring-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .4rem 1rem;
  font-size: .92rem;
  color: var(--text-secondary);
}

.process-monitoring-meta-grid strong {
  display: inline;
  font-weight: 700;
}

.process-party-list {
  display: grid;
  gap: .75rem;
}

.process-party-card,
.process-party-empty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .95rem 1rem;
  border: 1px dashed var(--border-primary);
  border-radius: 18px;
  background: var(--surface-subtle);
}

.process-party-card a {
  color: inherit;
  text-decoration: none;
}

.process-party-card a:hover strong {
  text-decoration: underline;
}

.process-party-card small,
.process-party-empty {
  color: var(--text-secondary);
}

.compact-role-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 .8rem;
  border-radius: 999px;
  background: rgba(5, 59, 49, 0.08);
  color: var(--brand-primary);
  font-size: .85rem;
  font-weight: 700;
}

.process-party-actions {
  align-items: center;
}

.process-row-main {
  align-items: flex-start;
}

html[data-theme='dark'] .process-party-card,
html[data-theme='dark'] .process-party-empty {
  background: rgba(255,255,255,.03);
}

@media (max-width: 1180px) {
  .process-filter-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .process-filter-grid-compact .field-span-3,
  .process-filter-grid-compact .field-span-2,
  .process-filter-actions {
    grid-column: 1 / -1;
  }

  .with-client-board {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .process-monitoring-meta-grid,
  .process-client-row,
  .process-party-card,
  .monitoring-inline-flags {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: flex-start;
  }

  .compact-actions,
  .process-filter-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* === Configurações | mapeamento de tribunais === */
.tribunal-mapping-layout {
  margin-top: 1.25rem;
}

.tribunal-settings-card .settings-section-intro {
  margin: 0 0 1rem;
  color: var(--text-secondary);
}

.tribunal-settings-form {
  gap: 1rem;
}

.tribunal-mapping-list {
  display: grid;
  gap: .85rem;
}

.tribunal-mapping-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: .9rem;
  align-items: center;
  padding: 1rem 1.1rem;
  border: 1px solid var(--border-primary);
  border-radius: 18px;
  background: var(--surface-subtle);
}

.tribunal-mapping-main small,
.tribunal-mapping-main p {
  color: var(--text-secondary);
}

.tribunal-mapping-main p {
  margin: .3rem 0 0;
}

.tribunal-mapping-links {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}

.tribunal-mapping-links a {
  font-size: .9rem;
  font-weight: 700;
  color: var(--brand-primary);
  text-decoration: none;
}

.tribunal-mapping-links a:hover {
  text-decoration: underline;
}

@media (max-width: 860px) {
  .tribunal-mapping-item {
    grid-template-columns: 1fr;
  }
}

/* === Expedientes e processos | refinamento V14 === */
[hidden] {
  display: none;
}

.process-filter-grid-compact {
  grid-template-columns: minmax(260px, 2.2fr) repeat(3, minmax(150px, 1fr)) minmax(230px, 1.2fr) auto;
  gap: 16px;
  align-items: end;
}

.process-filter-grid-compact .field-span-3 {
  grid-column: span 2;
}

.process-filter-grid-compact .field-span-2 {
  grid-column: span 2;
}

.monitoring-inline-flags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  padding: 0 0 10px;
}

.check-inline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
  color: #27443a;
  white-space: nowrap;
}

.check-inline input[type='checkbox'],
.process-check-card input[type='checkbox'] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  accent-color: #0b3d2e;
  border-radius: 5px;
}

.process-check-card {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(9,55,43,.12);
  border-radius: 16px;
  background: rgba(9,55,43,.035);
  font-weight: 800;
  color: #0c2d23;
}

.process-card-list {
  gap: 14px;
}

.process-client-row,
.process-party-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.process-party-card {
  padding: 14px 16px;
  border-style: solid;
  background: rgba(9,55,43,.035);
}

.process-party-main,
.process-party-main a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.process-party-main strong {
  font-size: 1.04rem;
}

.search-preview-list {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(9,55,43,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 20px 40px rgba(9,55,43,.10);
}

.search-preview-item,
.search-preview-item-clean {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  border: 1px solid rgba(9,55,43,.08);
  border-radius: 14px;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.search-preview-item:hover,
.search-preview-item-clean:hover {
  border-color: rgba(9,55,43,.22);
  background: rgba(9,55,43,.04);
}

.search-preview-item strong,
.search-preview-item-clean strong {
  margin: 0;
  color: #08251c;
  font-size: .98rem;
}

.process-monitoring-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.process-row-main {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.process-monitoring-meta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 18px;
  padding: 14px 16px;
  border: 1px solid rgba(9,55,43,.08);
  border-radius: 18px;
  background: rgba(9,55,43,.03);
}

.process-consult-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.process-monitoring-details {
  width: 100%;
}

.process-monitoring-details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
}

.process-monitoring-details > summary::-webkit-details-marker {
  display: none;
}

.process-monitoring-form {
  padding: 16px;
}

.process-monitoring-form .form-grid.two-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.process-log-timeline {
  margin-top: 2px;
}

.process-link-preview {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border-radius: 16px;
  border-style: solid;
}

.process-link-preview strong {
  font-size: .9rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.process-link-preview span {
  font-size: .98rem;
  font-weight: 700;
  color: #0b3d2e;
}

.process-form-section .form-grid.two-columns {
  align-items: start;
}

html[data-theme='dark'] .process-check-card,
html[data-theme='dark'] .search-preview-list,
html[data-theme='dark'] .search-preview-item,
html[data-theme='dark'] .search-preview-item-clean,
html[data-theme='dark'] .process-monitoring-meta-grid,
html[data-theme='dark'] .process-party-card {
  background: rgba(8,27,22,.92);
  border-color: rgba(144,203,184,.16);
}

html[data-theme='dark'] .search-preview-item strong,
html[data-theme='dark'] .search-preview-item-clean strong,
html[data-theme='dark'] .check-inline,
html[data-theme='dark'] .process-check-card,
html[data-theme='dark'] .process-link-preview span {
  color: #f4fbf7;
}

@media (max-width: 1280px) {
  .process-filter-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .process-filter-grid-compact .field-span-3,
  .process-filter-grid-compact .field-span-2,
  .process-filter-actions {
    grid-column: 1 / -1;
  }

  .process-monitoring-meta-grid,
  .process-monitoring-form .form-grid.two-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .process-row-main,
  .process-client-row,
  .process-party-card,
  .monitoring-inline-flags,
  .process-monitoring-form .form-grid.two-columns,
  .process-monitoring-meta-grid {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }

  .compact-actions,
  .process-filter-actions,
  .process-party-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* === Patch v15: processos premium + drawer lateral === */
.process-board-single {
  display: block;
}

.process-board-single .process-monitoring-left-column {
  width: 100%;
}

.process-header-actions .primary-button,
.process-header-actions .ghost-button {
  min-height: 44px;
}

.process-clients-card,
.refined-process-list-card {
  border-radius: 24px;
  box-shadow: 0 20px 48px rgba(6, 18, 38, .08);
}

.process-client-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin: 4px 0 16px;
}

.process-client-toolbar label {
  margin: 0;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  opacity: .72;
}

.process-client-toolbar select {
  min-width: 230px;
  border-radius: 14px;
}

.compact-client-list {
  gap: 10px;
}

.process-client-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,248,251,.98));
  border: 1px solid rgba(8, 38, 68, .08);
}

.process-client-row strong {
  font-size: 1rem;
}

.monitoring-card-list {
  gap: 16px;
}

.process-monitoring-card {
  border-radius: 22px;
  border: 1px solid rgba(8, 38, 68, .08);
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(247,249,252,.98));
  box-shadow: 0 16px 40px rgba(8, 26, 54, .06);
  padding: 20px;
  gap: 16px;
}

.process-row-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.process-row-main > div:first-child {
  display: grid;
  gap: 6px;
}

.process-row-main strong {
  font-size: 1.08rem;
  line-height: 1.2;
}

.process-row-main small {
  font-size: .9rem;
  color: rgba(30, 47, 69, .72);
}

.process-monitoring-meta-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(7, 58, 45, .035);
  border: 1px solid rgba(7, 58, 45, .07);
}

.process-monitoring-meta-grid span {
  display: grid;
  gap: 2px;
  font-size: .91rem;
  color: rgba(31, 49, 71, .85);
}

.process-monitoring-meta-grid strong {
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: rgba(31, 49, 71, .56);
}

.process-consult-note {
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(8, 38, 68, .03);
  border: 1px dashed rgba(8, 38, 68, .12);
}

.process-consult-strip {
  justify-content: space-between;
  gap: 12px;
}

.process-consult-strip .tiny {
  margin-left: auto;
  font-size: .84rem;
  color: rgba(31, 49, 71, .64);
}

.process-monitoring-details {
  border: 1px solid rgba(8, 38, 68, .08);
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,.72);
}

.process-monitoring-details > summary {
  cursor: pointer;
  padding: 14px 16px;
  font-weight: 700;
  background: rgba(8, 38, 68, .03);
}

.process-monitoring-details > summary::after {
  content: '▾';
  font-size: .9rem;
  opacity: .7;
}

.process-monitoring-details[open] > summary::after {
  transform: rotate(180deg);
}

.process-monitoring-form {
  background: rgba(255,255,255,.9);
}

.process-log-timeline {
  padding: 16px;
  border-radius: 18px;
  background: rgba(8, 38, 68, .03);
  border: 1px solid rgba(8, 38, 68, .08);
}

.process-log-item {
  padding: 10px 0;
}

.process-log-item + .process-log-item {
  border-top: 1px solid rgba(8, 38, 68, .08);
}

.process-drawer-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(4, 15, 31, .48);
  backdrop-filter: blur(4px);
  z-index: 70;
}

.process-drawer-shell {
  position: fixed;
  top: 0;
  right: 0;
  width: min(720px, 96vw);
  height: 100dvh;
  transform: translateX(104%);
  transition: transform .28s ease;
  z-index: 80;
  pointer-events: none;
  padding: 18px 16px 18px 0;
}

.process-drawer-shell.is-open {
  transform: translateX(0);
  pointer-events: auto;
}

.process-drawer-panel {
  height: 100%;
  border-radius: 28px 0 0 28px;
  box-shadow: -24px 0 64px rgba(4, 15, 31, .22);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.process-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 0;
}

.process-drawer-panel .panel-header {
  margin: 0;
  padding: 0;
  border-bottom: 0;
  flex: 1;
}

.process-drawer-panel .refined-process-form {
  flex: 1;
  overflow: auto;
  padding: 8px 22px 22px;
}

.process-drawer-close {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid rgba(8, 38, 68, .12);
  background: rgba(8, 38, 68, .04);
  font-size: 1.5rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.process-drawer-panel .process-submit-row {
  position: sticky;
  bottom: 0;
  padding: 18px 0 4px;
  margin-top: auto;
  background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.98) 34%);
}

.process-drawer-panel .primary-button {
  width: 100%;
  min-height: 48px;
  border-radius: 16px;
}

.process-check-card {
  min-height: 58px;
  border-radius: 18px;
  padding: 14px 16px;
  align-items: center;
}

.process-check-card input[type='checkbox'] {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  border-radius: 7px;
}

body.process-drawer-open {
  overflow: hidden;
}

html[data-theme='dark'] .process-client-row,
html[data-theme='dark'] .process-monitoring-card,
html[data-theme='dark'] .process-monitoring-details,
html[data-theme='dark'] .process-log-timeline,
html[data-theme='dark'] .process-consult-note,
html[data-theme='dark'] .process-drawer-close,
html[data-theme='dark'] .process-monitoring-meta-grid {
  background: rgba(8, 22, 42, .94);
  border-color: rgba(148, 179, 210, .14);
}

html[data-theme='dark'] .process-row-main small,
html[data-theme='dark'] .process-monitoring-meta-grid span,
html[data-theme='dark'] .process-consult-strip .tiny,
html[data-theme='dark'] .process-monitoring-meta-grid strong {
  color: rgba(235, 243, 255, .76);
}

html[data-theme='dark'] .process-monitoring-details > summary,
html[data-theme='dark'] .process-drawer-close {
  background: rgba(255,255,255,.03);
}

html[data-theme='dark'] .process-drawer-panel .process-submit-row {
  background: linear-gradient(180deg, rgba(7, 18, 35, 0), rgba(7, 18, 35, .98) 34%);
}

@media (max-width: 1080px) {
  .process-monitoring-meta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .process-drawer-shell {
    width: 100vw;
    padding: 0;
  }

  .process-drawer-panel {
    border-radius: 0;
  }

  .process-client-toolbar,
  .process-client-row,
  .process-row-main,
  .process-consult-strip {
    flex-direction: column;
    align-items: stretch;
  }

  .process-client-toolbar select {
    min-width: 0;
    width: 100%;
  }

  .process-monitoring-meta-grid {
    grid-template-columns: 1fr;
  }
}

/* === Patch v16: fila de acompanhamento premium === */
.process-clients-details > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
}

.process-summary-heading {
  display: grid;
  gap: 6px;
}

.process-clients-summary-side {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.process-summary-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: rgba(8, 38, 68, .05);
  color: rgba(14, 34, 61, .72);
  font-size: .82rem;
}

.process-clients-details[open] .process-summary-chevron {
  transform: rotate(180deg);
}

.process-client-toolbar {
  justify-content: flex-start;
  gap: 12px;
}

.process-client-toolbar label {
  min-width: auto;
  opacity: .78;
}

.process-client-row {
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}

.process-client-row-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.process-client-main {
  display: grid;
  gap: 6px;
}

.process-client-main small {
  font-size: .88rem;
  color: rgba(31, 49, 71, .7);
}

.process-client-action-row {
  align-items: center;
}

.contact-processes-disclosure {
  position: relative;
}

.contact-processes-disclosure > summary {
  list-style: none;
  cursor: pointer;
}

.contact-processes-disclosure > summary::-webkit-details-marker {
  display: none;
}

.contact-processes-panel {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(860px, 75vw);
  min-width: 360px;
  padding: 14px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(8, 38, 68, .1);
  box-shadow: 0 22px 48px rgba(8, 26, 54, .16);
  z-index: 30;
}

.contact-process-list {
  display: grid;
  gap: 12px;
}

.contact-process-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(7, 58, 45, .035);
  border: 1px solid rgba(7, 58, 45, .09);
}

.contact-process-card-main {
  display: grid;
  gap: 4px;
}

.contact-process-card-main strong {
  font-size: .98rem;
}

.contact-process-card-main small {
  color: rgba(31, 49, 71, .72);
}

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

.contact-process-meta-grid span {
  display: grid;
  gap: 4px;
}

.contact-process-meta-grid strong {
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: rgba(31, 49, 71, .56);
}

.contact-process-meta-grid em {
  font-style: normal;
  font-weight: 700;
  color: rgba(15, 33, 58, .9);
}

.contact-process-actions {
  justify-content: flex-start;
}

.compact-empty-state {
  padding: 14px;
  margin: 0;
}

html[data-theme='dark'] .process-summary-chevron,
html[data-theme='dark'] .contact-process-card,
html[data-theme='dark'] .contact-processes-panel {
  background: rgba(8, 27, 22, .96);
  border-color: rgba(144, 203, 184, .16);
}

html[data-theme='dark'] .process-client-main small,
html[data-theme='dark'] .contact-process-card-main small,
html[data-theme='dark'] .contact-process-meta-grid em,
html[data-theme='dark'] .process-summary-chevron {
  color: #f4fbf7;
}

@media (max-width: 980px) {
  .process-client-row-top {
    flex-direction: column;
    align-items: stretch;
  }

  .contact-processes-panel {
    width: min(100%, 100vw - 40px);
    min-width: 0;
    left: 0;
    right: auto;
  }
}

@media (max-width: 720px) {
  .process-clients-details > summary {
    grid-template-columns: 1fr;
  }

  .process-clients-summary-side,
  .process-client-action-row {
    width: 100%;
    justify-content: flex-start;
  }

  .contact-process-meta-grid {
    grid-template-columns: 1fr;
  }
}

/* === Patch v18: acompanhamento premium, ações e edição === */
.processes-monitoring-card .process-list-header,
.process-clients-details > summary {
  border-bottom: 1px solid rgba(8, 38, 68, .08);
  padding-bottom: 18px;
  margin-bottom: 18px;
}

.process-clients-details > summary::after {
  content: none;
}

.process-clients-summary-side .pill,
.process-list-header .pill {
  position: static;
  margin: 0;
  align-self: center;
}

.process-client-title-line {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.process-count-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(19, 78, 74, .08);
  border: 1px solid rgba(19, 78, 74, .14);
  color: #24534b;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}

.process-client-row {
  overflow: visible;
}

.process-client-row-top {
  width: 100%;
}

.process-client-action-row,
.process-card-actions {
  gap: 8px;
}

.process-client-action-row .compact-chip,
.process-card-actions .compact-chip {
  min-height: 38px;
  border-radius: 13px;
  font-weight: 800;
}

.js-toggle-contact-processes.is-active,
.js-toggle-process-edit.is-active {
  background: rgba(5, 59, 49, .1);
  color: #063b31;
  border-color: rgba(5, 59, 49, .22);
}

.contact-processes-panel {
  position: static;
  inset: auto;
  width: 100%;
  min-width: 0;
  margin-top: 12px;
  padding: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(8, 38, 68, .08);
  box-shadow: none;
  z-index: auto;
}

.contact-process-list {
  display: grid;
  gap: 12px;
}

.contact-process-card {
  position: relative;
  display: grid;
  gap: 12px;
  padding: 15px 16px 15px 18px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(17, 31, 25, .10);
  box-shadow: 0 10px 24px rgba(8, 26, 54, .04);
  overflow: hidden;
}

.contact-process-card::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: #94a3b8;
}

.contact-process-card.success::before { background: #15803d; }
.contact-process-card.warning::before { background: #b7791f; }
.contact-process-card.danger::before { background: #b91c1c; }
.contact-process-card.neutral::before { background: #64748b; }

.contact-process-card.success { background: linear-gradient(90deg, rgba(21,128,61,.05), #fff 30%); }
.contact-process-card.warning { background: linear-gradient(90deg, rgba(183,121,31,.07), #fff 30%); }
.contact-process-card.danger { background: linear-gradient(90deg, rgba(185,28,28,.06), #fff 30%); }

.contact-process-card-main strong {
  font-size: 1rem;
}

.contact-process-meta-grid,
.process-monitoring-meta-grid {
  align-items: stretch;
}

.contact-process-meta-grid span,
.process-monitoring-meta-grid span {
  display: grid;
  gap: 4px;
}

.contact-process-meta-grid em,
.process-monitoring-meta-grid em {
  font-style: normal;
  font-weight: 700;
  color: #173d30;
}

.processes-monitoring-card {
  overflow: visible;
}

.process-monitoring-card {
  border-radius: 22px;
  border: 1px solid rgba(17, 31, 25, .10);
  background: linear-gradient(180deg, #fff, #f8fafc);
  overflow: visible;
}

.process-row-main-premium {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 18px;
}

.process-title-block {
  display: grid;
  gap: 6px;
}

.process-title-block strong {
  font-size: 1.08rem;
  line-height: 1.2;
}

.process-title-block small {
  color: rgba(31, 49, 71, .68);
}

.process-card-actions {
  justify-content: flex-end;
  align-items: center;
}

.process-monitoring-meta-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  background: #f5f8fa;
  border: 1px solid rgba(8, 38, 68, .08);
}

.process-last-review-strip {
  justify-content: flex-end;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 16px;
  background: rgba(8, 38, 68, .035);
}

.process-edit-panel {
  padding: 16px;
  border-radius: 20px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(17, 31, 25, .10);
  box-shadow: 0 14px 32px rgba(8, 26, 54, .06);
}

.process-edit-form .form-grid.two-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.process-diary-details {
  margin-top: 0;
}

.process-diary-details > summary {
  color: #063b31;
  font-weight: 900;
}

html[data-theme='dark'] .process-count-badge,
html[data-theme='dark'] .contact-processes-panel,
html[data-theme='dark'] .contact-process-card,
html[data-theme='dark'] .process-edit-panel,
html[data-theme='dark'] .process-last-review-strip {
  background: rgba(8, 27, 22, .96);
  border-color: rgba(144, 203, 184, .16);
  color: #f4fbf7;
}

html[data-theme='dark'] .contact-process-meta-grid em,
html[data-theme='dark'] .process-monitoring-meta-grid em,
html[data-theme='dark'] .process-title-block small {
  color: rgba(244, 251, 247, .82);
}

@media (max-width: 1120px) {
  .process-row-main-premium {
    grid-template-columns: 1fr;
  }

  .process-card-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .process-client-title-line,
  .process-client-action-row,
  .process-card-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .process-monitoring-meta-grid,
  .process-edit-form .form-grid.two-columns,
  .contact-process-meta-grid {
    grid-template-columns: 1fr;
  }
}

/* === Patch v19: padronização da fila de processos e edição completa === */
.process-clients-card .process-monitoring-details > summary,
.processes-monitoring-card .process-list-header {
  min-height: 92px;
  padding: 22px 24px;
  border-bottom: 1px solid rgba(8, 38, 68, .08);
  background: rgba(8, 38, 68, .025);
}

.process-clients-card .process-monitoring-details > summary::after {
  display: none;
}

.processes-monitoring-card {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 20px 48px rgba(6, 18, 38, .08);
}

.processes-monitoring-card .monitoring-card-list {
  padding: 20px 24px 24px;
  gap: 14px;
}

.processes-monitoring-card .process-monitoring-card {
  padding: 18px 20px;
  border-radius: 20px;
  border: 1px solid rgba(8, 38, 68, .1);
  background: linear-gradient(180deg, #fff, #f8fafc);
  box-shadow: none;
}

.process-row-main-premium {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  align-items: start;
  gap: 18px;
}

.process-title-block {
  display: grid;
  gap: 6px;
}

.process-title-block strong {
  font-size: 1.04rem;
  line-height: 1.2;
}

.process-title-block small {
  color: rgba(31, 49, 71, .72);
}

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

.process-action-chip {
  min-height: 38px;
  padding-inline: 13px;
  border-radius: 13px;
  white-space: nowrap;
}

.system-link-chip {
  background: rgba(7, 58, 45, .08);
  border-color: rgba(7, 58, 45, .16);
  color: #08392c;
}

.process-action-chip.is-muted,
.process-action-chip:disabled,
button.process-action-chip[disabled] {
  opacity: .55;
  cursor: not-allowed;
  filter: grayscale(.18);
}

.process-monitoring-meta-grid {
  background: #f4f7f8;
  border-color: rgba(8, 38, 68, .08);
  border-radius: 18px;
  padding: 14px 16px;
}

.process-monitoring-meta-grid span {
  display: grid;
  gap: 4px;
}

.process-monitoring-meta-grid strong {
  color: rgba(31, 49, 71, .55);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.process-monitoring-meta-grid em {
  font-style: normal;
  font-weight: 700;
  color: #092a21;
}

.process-last-review-strip {
  justify-content: flex-end;
  min-height: 42px;
  border-radius: 16px;
  background: rgba(8, 38, 68, .035);
  padding: 10px 14px;
}

.process-edit-panel {
  margin-top: 4px;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 22px;
  background: #fff;
  overflow: hidden;
}

.process-edit-form {
  display: grid;
  gap: 16px;
  padding: 18px;
}

.process-edit-section {
  border: 1px solid rgba(8, 38, 68, .08);
  border-radius: 20px;
  background: linear-gradient(180deg, #fff, #fbfcfd);
  padding: 18px;
}

.process-edit-section .process-section-title {
  margin-bottom: 16px;
}

.process-edit-section .process-section-title span {
  width: 36px;
  height: 36px;
  min-width: 36px;
}

.process-edit-section .form-grid.two-columns {
  gap: 14px;
}

.process-edit-section .field-span-full {
  grid-column: 1 / -1;
}

.process-edit-form .process-submit-row {
  position: sticky;
  bottom: 0;
  z-index: 2;
  justify-content: flex-end;
  padding: 18px 0 0;
  background: linear-gradient(180deg, rgba(255,255,255,0), #fff 35%);
}

.process-diary-details {
  border-radius: 18px;
  border-color: rgba(8, 38, 68, .09);
}

.process-diary-details > summary {
  color: #07372b;
  background: #fbfcfd;
}

html[data-theme='dark'] .process-clients-card .process-monitoring-details > summary,
html[data-theme='dark'] .processes-monitoring-card .process-list-header,
html[data-theme='dark'] .processes-monitoring-card .process-monitoring-card,
html[data-theme='dark'] .process-edit-panel,
html[data-theme='dark'] .process-edit-section,
html[data-theme='dark'] .process-last-review-strip,
html[data-theme='dark'] .process-monitoring-meta-grid,
html[data-theme='dark'] .process-diary-details > summary {
  background: rgba(8, 22, 42, .94);
  border-color: rgba(148, 179, 210, .14);
}

html[data-theme='dark'] .process-title-block small,
html[data-theme='dark'] .process-monitoring-meta-grid strong,
html[data-theme='dark'] .process-monitoring-meta-grid em,
html[data-theme='dark'] .system-link-chip,
html[data-theme='dark'] .process-diary-details > summary {
  color: #f4fbf7;
}

html[data-theme='dark'] .process-edit-form .process-submit-row {
  background: linear-gradient(180deg, rgba(7,18,35,0), rgba(7,18,35,.98) 35%);
}

@media (max-width: 1120px) {
  .process-row-main-premium {
    grid-template-columns: 1fr;
  }

  .process-card-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .process-clients-card .process-monitoring-details > summary,
  .processes-monitoring-card .process-list-header {
    min-height: auto;
    padding: 18px;
  }

  .processes-monitoring-card .monitoring-card-list {
    padding: 16px;
  }

  .process-edit-section .form-grid.two-columns,
  .process-edit-form .form-grid.two-columns {
    grid-template-columns: 1fr;
  }

  .process-card-actions,
  .process-edit-form .process-submit-row {
    justify-content: stretch;
  }

  .process-action-chip,
  .process-card-actions .compact-chip {
    width: 100%;
    justify-content: center;
  }
}

/* === V24 | Expedientes CIRS e diário processual === */
.record-create-layout-v24 {
  grid-template-columns: minmax(560px, 720px) minmax(360px, 1fr);
  gap: 20px;
  align-items: start;
}

.record-modern-panel,
.record-modern-preview {
  border-radius: 24px;
  overflow: visible;
}

.record-modern-header .panel-header,
.record-modern-header {
  align-items: flex-start;
}

.record-modern-header p {
  margin: 6px 0 0;
  color: var(--muted, #60706a);
}

.record-form-grid-v24 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}

.record-classification-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.record-classification-card {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 12px;
  align-items: center;
  min-height: 92px;
  padding: 16px;
  border: 1px solid var(--border, #dfe3dc);
  border-radius: 20px;
  background: #fff;
  color: var(--text, #0a261f);
  cursor: pointer;
  text-align: left;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.record-classification-card:hover {
  transform: translateY(-1px);
  border-color: rgba(6, 55, 42, .22);
}

.record-classification-card.is-selected {
  background: rgba(8, 61, 47, .055);
  border-color: rgba(8, 61, 47, .28);
  box-shadow: 0 0 0 3px rgba(8, 61, 47, .06);
}

.record-classification-card span {
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: rgba(8, 61, 47, .08);
  color: #06372a;
  font-weight: 800;
}

.record-classification-card.is-selected span {
  background: #06372a;
  color: #fff;
}

.record-classification-card strong {
  align-self: end;
  font-size: 1rem;
}

.record-classification-card small {
  align-self: start;
  color: var(--muted, #60706a);
}

.record-status-field-compact {
  max-width: none;
}

.record-status-field-compact select {
  min-height: 48px;
}

.record-form-grid-v24 .field textarea {
  min-height: 124px;
}

.record-side-stack {
  display: grid;
  gap: 20px;
}

.record-preview-empty {
  display: grid;
  place-items: start;
  gap: 8px;
  min-height: 120px;
  border-radius: 20px;
  border: 1px dashed var(--border, #dfe3dc);
  background: rgba(248, 250, 248, .8);
}

.record-preview-empty strong {
  font-size: 1.45rem;
  color: var(--text, #0a261f);
}

.record-preview-empty small {
  color: var(--muted, #60706a);
}

.process-diary-consult-details > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.process-diary-consult-details > summary span {
  font-size: .82rem;
  color: var(--muted, #60706a);
  font-weight: 700;
}

.process-log-timeline-compact {
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

.process-log-timeline-compact .process-log-item {
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(8, 38, 68, .035);
  border: 1px solid rgba(8, 38, 68, .08);
}

.process-title-block small,
.contact-process-card-main small {
  line-height: 1.45;
}

@media (max-width: 1180px) {
  .record-create-layout-v24 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .record-form-grid-v24,
  .record-classification-cards {
    grid-template-columns: 1fr;
  }
}

/* ===== 05-pages/financeiro-asaas.css ===== */
.asaas-page-header {
  align-items: flex-start;
  gap: 20px;
}

.asaas-generated-card {
  min-width: 240px;
  padding: 14px 16px;
  border: 1px solid rgba(0, 68, 50, .14);
  border-radius: 18px;
  background: rgba(234, 248, 244, .92);
  box-shadow: 0 10px 26px rgba(17, 31, 25, .08);
}

.asaas-generated-card span,
.asaas-generated-card a {
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #006b57;
}

.asaas-generated-card strong {
  display: block;
  margin: 4px 0 8px;
  color: #071f1a;
}

.asaas-checkout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 22px;
  align-items: start;
}

.asaas-checkout-main {
  display: grid;
  gap: 18px;
}

.asaas-card,
.asaas-preview-card,
.asaas-recent-card {
  border: 1px solid rgba(17, 31, 25, .1);
  background: rgba(255, 255, 255, .88);
}

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

.asaas-form-grid .full-width {
  grid-column: 1 / -1;
}

.asaas-description-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.mini-button {
  border: 1px solid rgba(0, 68, 50, .16);
  border-radius: 999px;
  padding: 7px 11px;
  background: rgba(234, 248, 244, .9);
  color: #004432;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.asaas-preview-panel {
  position: sticky;
  top: 22px;
}

.asaas-preview-card .panel-header.compact {
  margin-bottom: 8px;
}

.asaas-preview-list {
  display: grid;
  gap: 10px;
  margin: 0;
}

.asaas-preview-list div {
  padding: 10px 0;
  border-bottom: 1px solid rgba(17, 31, 25, .08);
}

.asaas-preview-list dt {
  margin-bottom: 3px;
  color: #607069;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.asaas-preview-list dd {
  margin: 0;
  color: #071f1a;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  word-break: break-word;
}

.asaas-checklist {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(17, 31, 25, .08);
  border-radius: 18px;
  background: rgba(246, 245, 240, .65);
}

.asaas-checklist h3 {
  margin: 0 0 10px;
  font-size: 14px;
}

.asaas-checklist div {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  color: #596861;
  font-size: 13px;
  font-weight: 800;
}

.asaas-checklist div::before {
  content: '';
  width: 18px;
  height: 18px;
  border: 1px solid rgba(17, 31, 25, .2);
  border-radius: 999px;
  background: #fff;
}

.asaas-checklist div.is-ok {
  color: #004432;
}

.asaas-checklist div.is-ok::before {
  content: '✓';
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-color: #004432;
  background: #004432;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.asaas-action-stack {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.asaas-action-stack .primary-button,
.asaas-action-stack .secondary-button,
.asaas-action-stack .ghost-button,
.asaas-open-link {
  width: 100%;
  justify-content: center;
  text-align: center;
}

.asaas-action-stack button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.asaas-recent-card {
  overflow: hidden;
}

.asaas-status-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 5px 9px;
  background: rgba(234, 248, 244, .95);
  color: #004432;
  font-size: 12px;
  font-weight: 900;
}

.asaas-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.as-button-link {
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0;
}

.as-button-link:disabled {
  opacity: .4;
  cursor: not-allowed;
}

@media (max-width: 1100px) {
  .asaas-checkout-grid {
    grid-template-columns: 1fr;
  }

  .asaas-preview-panel {
    position: static;
  }
}

@media (max-width: 760px) {
  .asaas-form-grid {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   Merged Asaas accent rules from legacy brand patch.
   ============================================================ */
.asaas-integration-layout {
  margin: 1.25rem 0;
}

.asaas-integration-card {
  position: relative;
  overflow: hidden;
}

.asaas-integration-card::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #0b3d2e, #12a06f);
  opacity: .9;
}

.asaas-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
  margin: 1rem 0;
}

.asaas-status-grid > div {
  padding: .95rem 1rem;
  border: 1px solid var(--border-primary, rgba(10, 40, 31, .10));
  border-radius: 18px;
  background: var(--surface-subtle, #fafaf8);
}

.asaas-status-grid span {
  display: block;
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--text-secondary, #677066);
  margin-bottom: .35rem;
}

.asaas-status-grid strong {
  display: block;
  overflow-wrap: anywhere;
  color: var(--text-primary, #081f19);
}

@media (max-width: 900px) {
  .asaas-status-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== 05-pages/nfse.css ===== */
.nfse-page {
  display: grid;
  gap: 20px;
}

.nfse-page-header {
  align-items: flex-start;
  gap: 16px;
}

.nfse-page-header .page-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.nfse-highlight-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 14px 16px;
  border: 1px solid rgba(176, 112, 54, 0.26);
  background: rgba(237, 219, 200, 0.44);
  border-radius: 16px;
  color: #7c4211;
}

.nfse-highlight-banner strong {
  font-weight: 700;
}

.nfse-draft-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.85fr) minmax(320px, 0.95fr);
  gap: 20px;
  align-items: start;
}

.nfse-main-column,
.nfse-side-column {
  display: grid;
  gap: 20px;
}

.nfse-sticky-card {
  position: sticky;
  top: 96px;
}

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

.nfse-form-grid.three-columns {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nfse-form-grid .full-width {
  grid-column: 1 / -1;
}

.nfse-surface-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(15, 59, 45, 0.14);
  background: rgba(15, 59, 45, 0.06);
  color: #0f3b2d;
  font-size: 0.82rem;
  font-weight: 700;
}

.nfse-mini-list {
  display: grid;
  gap: 10px;
}

.nfse-mini-list > div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(15, 59, 45, 0.04);
  border: 1px solid rgba(15, 59, 45, 0.08);
}

.nfse-mini-list span {
  display: block;
  color: var(--text-muted, #5f6f68);
  font-size: 0.82rem;
}

.nfse-mini-list strong {
  display: block;
  text-align: right;
  color: var(--text-primary, #0f1412);
  font-size: 0.96rem;
}

.nfse-preview-card {
  padding: 16px;
  border-radius: 16px;
  background: rgba(15, 59, 45, 0.05);
  border: 1px solid rgba(15, 59, 45, 0.08);
}

.nfse-preview-card h3 {
  margin: 0 0 8px;
  font-size: 1rem;
}

.nfse-preview-card ul {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
}

.nfse-danger-note {
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(176, 112, 54, 0.24);
  background: rgba(237, 219, 200, 0.42);
  color: #7c4211;
}

.nfse-danger-note strong,
.nfse-danger-note p {
  margin: 0;
}

.nfse-danger-note p {
  margin-top: 4px;
  color: inherit;
}

.nfse-side-actions {
  display: grid;
  gap: 10px;
}

.nfse-side-actions .full-width,
.nfse-page .full-width {
  width: 100%;
}

.nfse-checkbox-note {
  align-items: flex-start;
  padding: 6px 0 0;
}

.nfse-checkbox-note small {
  display: inline-block;
  color: var(--text-muted, #5f6f68);
}

.nfse-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.nfse-stat-card {
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(15, 59, 45, 0.08);
  background: #fff;
}

.nfse-stat-card span {
  display: block;
  font-size: 0.8rem;
  color: var(--text-muted, #5f6f68);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.nfse-stat-card strong {
  display: block;
  margin-top: 6px;
  font-size: 1.4rem;
  color: var(--text-primary, #10211a);
}

.nfse-history-layout,
.nfse-detail-layout {
  display: grid;
  gap: 20px;
}

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

.nfse-info-item {
  padding: 14px;
  border-radius: 14px;
  background: rgba(15, 59, 45, 0.04);
  border: 1px solid rgba(15, 59, 45, 0.08);
}

.nfse-info-item span {
  display: block;
  font-size: 0.8rem;
  color: var(--text-muted, #5f6f68);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.nfse-info-item strong,
.nfse-info-item p {
  display: block;
  margin-top: 4px;
  color: var(--text-primary, #10211a);
}

.nfse-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 700;
  white-space: nowrap;
}

.nfse-badge-muted { background: rgba(95, 111, 104, 0.12); color: #4d5d56; }
.nfse-badge-info { background: rgba(25, 107, 168, 0.12); color: #165f95; }
.nfse-badge-success { background: rgba(40, 126, 84, 0.12); color: #236e48; }
.nfse-badge-warn { background: rgba(176, 112, 54, 0.12); color: #9a5f1f; }
.nfse-badge-danger { background: rgba(169, 53, 53, 0.12); color: #913434; }

.nfse-table small,
.nfse-info-item small {
  color: var(--text-muted, #5f6f68);
}

.nfse-actions-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nfse-actions-stack form {
  margin: 0;
}

.nfse-xml-preview {
  max-height: 420px;
  overflow: auto;
  padding: 14px 16px;
  border-radius: 16px;
  background: #0f1412;
  color: #d9e6dd;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.85rem;
  line-height: 1.55;
  white-space: pre-wrap;
  word-break: break-word;
}

.nfse-checklist {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}

.nfse-checklist li {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(15, 59, 45, 0.08);
  background: rgba(15, 59, 45, 0.04);
}

.nfse-checklist li strong {
  font-size: 0.92rem;
}

.nfse-checklist li.ok {
  border-color: rgba(40, 126, 84, 0.18);
  background: rgba(40, 126, 84, 0.08);
}

.nfse-checklist li.warn {
  border-color: rgba(176, 112, 54, 0.18);
  background: rgba(176, 112, 54, 0.08);
}

.nfse-empty-note {
  padding: 18px;
  border-radius: 16px;
  border: 1px dashed rgba(15, 59, 45, 0.18);
  background: rgba(15, 59, 45, 0.03);
  color: var(--text-muted, #5f6f68);
}

.nfse-issuer-grid {
  display: grid;
  gap: 16px;
}

.nfse-issuer-item {
  display: grid;
  gap: 14px;
}

.nfse-issuer-item-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.settings-toggle-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.92rem;
}

@media (min-width: 1320px) {
  .nfse-issuer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .nfse-draft-layout {
    grid-template-columns: 1fr;
  }

  .nfse-sticky-card {
    position: static;
  }

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

@media (max-width: 920px) {
  .nfse-form-grid.two-columns,
  .nfse-form-grid.three-columns,
  .nfse-info-grid {
    grid-template-columns: 1fr;
  }

  .nfse-page-header {
    flex-direction: column;
  }
}

@media (max-width: 680px) {
  .nfse-stat-grid {
    grid-template-columns: 1fr;
  }

  .nfse-mini-list > div {
    flex-direction: column;
  }

  .nfse-mini-list strong {
    text-align: left;
  }

  .nfse-highlight-banner {
    align-items: flex-start;
  }
}

/* Compatibilidade visual para telas NFS-e da primeira versão do patch.
   Mantém as views antigas bonitas mesmo após a reorganização dos nomes de classes. */
.nfse-hero {
  align-items: flex-start;
  gap: 16px;
}

.nfse-hero .hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
}

.nfse-warning-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-top: 14px;
  padding: 12px 14px;
  max-width: 720px;
  border-radius: 16px;
  border: 1px solid rgba(176, 112, 54, 0.26);
  background: rgba(237, 219, 200, 0.44);
  color: #7c4211;
}

.nfse-warning-strip strong,
.nfse-warning-strip span {
  display: inline-flex;
  line-height: 1.35;
}

.nfse-status-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(160px, 1fr));
  gap: 14px;
}

.nfse-status-card {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 18px;
  border-radius: 18px;
}

.nfse-status-card span,
.nfse-status-card strong,
.nfse-status-card small {
  display: block;
  min-width: 0;
  line-height: 1.35;
}

.nfse-status-card span {
  color: var(--text-muted, #5f6f68);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nfse-status-card strong {
  color: var(--text-primary, #10211a);
  font-size: 1.12rem;
  overflow-wrap: anywhere;
}

.nfse-status-card small {
  color: var(--text-muted, #5f6f68);
  font-size: 0.86rem;
  overflow-wrap: anywhere;
}

.nfse-status-card.danger {
  border-color: rgba(176, 112, 54, 0.24);
  background: rgba(237, 219, 200, 0.32);
}

.nfse-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.8fr);
  gap: 20px;
  align-items: start;
}

.nfse-detail-main,
.nfse-side-card,
.nfse-history-card,
.nfse-xml-card {
  min-width: 0;
}

.nfse-side-card {
  display: grid;
  gap: 14px;
}

.nfse-flow-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}

.nfse-flow-steps > div {
  display: grid;
  gap: 6px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(15, 59, 45, 0.08);
  background: rgba(15, 59, 45, 0.04);
}

.nfse-flow-steps > div.done {
  border-color: rgba(40, 126, 84, 0.18);
  background: rgba(40, 126, 84, 0.08);
}

.nfse-flow-steps strong {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(15, 59, 45, 0.1);
}

.nfse-actions-row,
.nfse-downloads {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nfse-actions-row form,
.nfse-disabled-action form {
  margin: 0;
}

.nfse-disabled-action {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

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

.nfse-fiscal-summary > div {
  min-width: 0;
  padding: 14px;
  border-radius: 14px;
  border: 1px solid rgba(15, 59, 45, 0.08);
  background: rgba(15, 59, 45, 0.04);
}

.nfse-fiscal-summary span,
.nfse-fiscal-summary strong,
.nfse-fiscal-summary small {
  display: block;
  min-width: 0;
  line-height: 1.35;
}

.nfse-fiscal-summary span {
  color: var(--text-muted, #5f6f68);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nfse-fiscal-summary strong {
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.nfse-fiscal-summary small {
  margin-top: 4px;
  color: var(--text-muted, #5f6f68);
  overflow-wrap: anywhere;
}

.nfse-checklist {
  display: grid;
  gap: 10px;
}

.nfse-check {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(15, 59, 45, 0.08);
  background: rgba(15, 59, 45, 0.04);
}

.nfse-check.ok {
  border-color: rgba(40, 126, 84, 0.18);
  background: rgba(40, 126, 84, 0.08);
}

.nfse-check.warn,
.nfse-check.danger {
  border-color: rgba(176, 112, 54, 0.2);
  background: rgba(237, 219, 200, 0.34);
}

.nfse-check span,
.nfse-check small {
  display: block;
  line-height: 1.35;
}

@media (max-width: 1280px) {
  .nfse-status-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .nfse-status-grid,
  .nfse-detail-grid,
  .nfse-fiscal-summary,
  .nfse-flow-steps {
    grid-template-columns: 1fr;
  }

  .nfse-hero .hero-actions {
    justify-content: flex-start;
  }
}

/* ===== 05-pages/contracts-document-steps.css ===== */
/* Contratos e Anexos - etapa de documentacao
   Padrao consolidado: checklist documental compacto, verde institucional,
   texto alinhado a esquerda e sem numeracao azul dominante. */

.document-picker-shell-stage,
.document-stage-grid,
.document-stage-card {
  max-width: 100%;
  min-width: 0;
}

.document-picker-shell-stage {
  padding: 14px;
  border: 1px solid rgba(11, 40, 30, .10);
  border-radius: 18px;
  background: rgba(255, 255, 255, .72);
}

.document-picker-head-stage {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 10px;
}

.document-picker-head-stage p {
  margin-top: 2px;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-grid,
.document-picker-shell-stage .document-stage-grid,
.document-stage-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  align-items: stretch;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card,
.document-picker-shell-stage .document-stage-card,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card,
.document-check-card.document-stage-card {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  justify-content: start;
  gap: 12px;
  min-height: 64px;
  height: auto;
  width: 100%;
  min-width: 0;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(11, 40, 30, .14);
  background: rgba(255, 255, 255, .72);
  box-shadow: none;
  overflow: hidden;
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card:hover,
.document-picker-shell-stage .document-stage-card:hover,
.document-check-card.document-stage-card:hover {
  border-color: rgba(7, 61, 47, .35);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(11, 40, 30, .07);
  transform: translateY(-1px);
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card.is-selected,
.document-picker-shell-stage .document-stage-card.is-selected,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card.is-selected,
.document-check-card.document-stage-card.is-selected {
  border-color: rgba(7, 61, 47, .35);
  background: rgba(236, 244, 240, .82);
  box-shadow: inset 0 0 0 1px rgba(7, 61, 47, .08);
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card .document-check-mark,
.document-picker-shell-stage .document-stage-card .document-check-mark,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card .document-check-mark,
.document-check-card.document-stage-card .document-check-mark {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(7, 61, 47, .10);
  border: 1px solid rgba(7, 61, 47, .18);
  color: #073d2f;
  font-size: 13px;
  line-height: 1;
  font-weight: 900;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card.is-selected .document-check-mark,
.document-picker-shell-stage .document-stage-card.is-selected .document-check-mark,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card.is-selected .document-check-mark,
.document-check-card.document-stage-card.is-selected .document-check-mark {
  background: #073d2f;
  border-color: #073d2f;
  color: #fff;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card .document-check-copy,
.document-picker-shell-stage .document-stage-card .document-check-copy,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card .document-check-copy,
.document-check-card.document-stage-card .document-check-copy {
  display: grid;
  gap: 2px;
  align-items: center;
  justify-content: start;
  min-width: 0;
  text-align: left;
  margin: 0;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card .document-check-copy strong,
.document-picker-shell-stage .document-stage-card .document-check-copy strong,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card .document-check-copy strong,
.document-check-card.document-stage-card .document-check-copy strong {
  display: block;
  max-width: none;
  color: #0b281e;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.15;
  letter-spacing: -.01em;
  text-align: left;
  white-space: normal;
  word-break: normal;
}

.sanitize-field.full .document-picker-shell-stage .document-stage-card .document-check-copy small,
.document-picker-shell-stage .document-stage-card .document-check-copy small,
.sanitize-field.full .document-picker-shell-stage .document-check-card.document-stage-card .document-check-copy small,
.document-check-card.document-stage-card .document-check-copy small {
  display: block;
  color: rgba(11, 40, 30, .62);
  font-size: 11.5px;
  line-height: 1.25;
  text-align: left;
}

@media (max-width: 900px) {
  .sanitize-field.full .document-picker-shell-stage .document-stage-grid,
  .document-picker-shell-stage .document-stage-grid,
  .document-stage-grid {
    grid-template-columns: 1fr;
  }

  .document-picker-head-stage {
    flex-direction: column;
  }
}

/* ===== 05-pages/labor-calculations.css ===== */
/* ===== Módulo: Cálculos Trabalhistas ===== */
.labor-page {
  display: grid;
  gap: 24px;
}

.labor-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 8px 0 2px;
}

.labor-hero h1 {
  margin: 0;
  font-size: clamp(2.5rem, 5vw, 4.6rem);
  line-height: .94;
  letter-spacing: -.055em;
  color: var(--ink, #0b211e);
}

.labor-hero p {
  max-width: 820px;
  margin: 14px 0 0;
  color: var(--muted, #627068);
  font-size: 1.04rem;
  line-height: 1.6;
}

.labor-hero-actions,
.labor-card-actions,
.labor-submit-row,
.labor-sidebar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
}

.labor-metric-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.labor-card-heading,
.labor-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.labor-card-heading h2,
.labor-section-heading h2,
.labor-sticky-card h2,
.labor-worker-card h2 {
  margin: 4px 0 0;
  font-size: 1.35rem;
  line-height: 1.18;
}

.labor-section-heading p {
  margin: 8px 0 0;
  color: var(--muted, #627068);
  line-height: 1.55;
}

.labor-filter-card,
.labor-list-card,
.labor-worker-card,
.labor-section,
.labor-sticky-card {
  border-radius: 26px;
}

.labor-filter-grid {
  display: grid;
  grid-template-columns: minmax(280px, 2fr) repeat(2, minmax(180px, 1fr)) auto;
  gap: 14px;
  align-items: end;
}

.labor-filter-grid .field-span-2 {
  grid-column: span 2;
}

.labor-board-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 22px;
  align-items: start;
}

.labor-sidebar-stack {
  display: grid;
  gap: 18px;
}

.labor-calculation-list {
  display: grid;
  gap: 16px;
}

.labor-calculation-card {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(12, 35, 31, .08);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,249,247,.96));
  box-shadow: 0 14px 32px rgba(20, 36, 30, .05);
}

.labor-calculation-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.labor-calculation-main strong {
  display: block;
  font-size: 1.05rem;
}

.labor-calculation-main small,
.labor-mini-title small,
.labor-preview-list small {
  color: var(--muted, #627068);
}

.labor-status-badge,
.labor-worker-state,
.labor-quality-ok {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 800;
  color: #0d3b2d;
  background: rgba(15, 118, 110, .1);
  border: 1px solid rgba(15, 118, 110, .12);
}

.status-erro .labor-status-badge,
.labor-worker-state.error {
  color: #8f1d1d;
  background: rgba(220, 38, 38, .1);
  border-color: rgba(220, 38, 38, .16);
}

.status-aguardando_revisao .labor-status-badge,
.status-rascunho .labor-status-badge,
.labor-worker-state.warn {
  color: #7a4a00;
  background: rgba(245, 158, 11, .12);
  border-color: rgba(245, 158, 11, .18);
}

.labor-worker-state.ok {
  color: #0d3b2d;
  background: rgba(22, 163, 74, .1);
  border-color: rgba(22, 163, 74, .16);
}

.labor-calculation-meta,
.labor-preview-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(7, 58, 45, .035);
  border: 1px solid rgba(7, 58, 45, .06);
}

.labor-calculation-meta span,
.labor-preview-list span {
  display: grid;
  gap: 4px;
}

.labor-calculation-meta strong,
.labor-preview-list strong {
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #7b877f;
}

.labor-calculation-meta em,
.labor-preview-list em {
  font-style: normal;
  font-weight: 800;
  color: #10251f;
}

.labor-quality-warning {
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(245, 158, 11, .1);
  border: 1px solid rgba(245, 158, 11, .18);
  color: #583b04;
}

.labor-quality-warning ul {
  margin: 8px 0 0;
  padding-left: 18px;
}

.labor-quality-ok {
  width: 100%;
  min-height: auto;
  padding: 14px 16px;
  justify-content: flex-start;
  border-radius: 18px;
}

.labor-ordered-list {
  display: grid;
  gap: 12px;
  margin: 16px 0 0;
  padding-left: 20px;
  color: #25362f;
}

.labor-wizard-nav {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border-radius: 26px;
  background: #fff;
  border: 1px solid rgba(12, 35, 31, .08);
  box-shadow: 0 12px 28px rgba(20, 36, 30, .05);
}

.labor-wizard-nav a {
  display: flex;
  gap: 12px;
  align-items: center;
  min-height: 64px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fbfbf8;
  text-decoration: none;
}

.labor-wizard-nav a span {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e7efeb;
  color: #0d3b2d;
  font-weight: 900;
}

.labor-wizard-nav a strong {
  display: block;
  font-size: .92rem;
}

.labor-wizard-nav a small {
  display: block;
  color: var(--muted, #627068);
  font-size: .78rem;
}

.labor-editor-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 22px;
  align-items: start;
}

.labor-editor-main,
.labor-main-form,
.labor-review-sidebar {
  display: grid;
  gap: 18px;
}

.labor-review-sidebar {
  position: sticky;
  top: 18px;
}

.labor-section {
  padding: 24px;
}

.labor-form-grid {
  gap: 14px;
}

.form-grid.three-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.form-grid.four-columns {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.field-span-4 {
  grid-column: 1 / -1;
}

.labor-subsection-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0;
}

.labor-fieldset {
  border: 1px solid rgba(12, 35, 31, .08);
  border-radius: 22px;
  padding: 18px;
  margin: 0;
  background: rgba(255,255,255,.74);
}

.labor-fieldset legend {
  padding: 0 8px;
  font-weight: 900;
}

.labor-upload-box {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  padding: 18px;
  border: 1px dashed rgba(13, 59, 45, .22);
  border-radius: 20px;
  background: rgba(13, 59, 45, .035);
}

.labor-table-card {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding: 16px;
  border-radius: 22px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: rgba(250, 250, 247, .74);
}

.labor-mini-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}

.labor-history-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 10px;
  align-items: center;
}

.labor-history-header {
  color: #748078;
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
}

.labor-verb-library {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.labor-verb-category {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(12, 35, 31, .08);
  border-radius: 22px;
  background: rgba(255,255,255,.75);
}

.labor-verb-category h3 {
  margin: 0;
  font-size: 1rem;
}

.labor-verb-card {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
  cursor: pointer;
}

.labor-verb-card.is-selected {
  background: rgba(8, 66, 47, .08);
  border-color: rgba(8, 66, 47, .24);
}

.labor-verb-card strong,
.labor-verb-card small {
  display: block;
}

.labor-verb-card small {
  margin-top: 3px;
  color: #68766d;
  font-size: .78rem;
}

.labor-verb-detail {
  border: 1px solid rgba(12, 35, 31, .08);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
}

.labor-verb-detail summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  cursor: pointer;
}

.labor-verb-detail .form-grid {
  padding: 0 16px 16px;
}

.labor-incidence-table-wrap {
  width: 100%;
  overflow: auto;
  border-radius: 22px;
  border: 1px solid rgba(12, 35, 31, .08);
}

.labor-incidence-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  background: #fff;
}

.labor-incidence-table th,
.labor-incidence-table td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(12, 35, 31, .08);
  text-align: center;
}

.labor-incidence-table th:first-child,
.labor-incidence-table td:first-child {
  text-align: left;
  min-width: 260px;
}

.labor-incidence-table small {
  display: block;
  color: #68766d;
}

.labor-sticky-card {
  padding: 20px;
}

.labor-sidebar-actions {
  justify-content: stretch;
}

.labor-sidebar-actions > *,
.labor-sidebar-actions button,
.labor-sidebar-actions a {
  width: 100%;
}

.labor-worker-history {
  display: grid;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}

.labor-worker-history li {
  display: grid;
  gap: 2px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(7, 58, 45, .035);
}

.labor-worker-history small {
  color: #6f7a72;
}

.danger-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid rgba(220, 38, 38, .22);
  background: rgba(220, 38, 38, .08);
  color: #9f1d1d;
  font-weight: 900;
  cursor: pointer;
}

@media (max-width: 1280px) {
  .labor-metric-grid,
  .labor-wizard-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .labor-board-grid,
  .labor-editor-grid,
  .labor-subsection-grid {
    grid-template-columns: 1fr;
  }
  .labor-review-sidebar {
    position: static;
  }
}

@media (max-width: 900px) {
  .labor-hero,
  .labor-calculation-main,
  .labor-card-heading,
  .labor-section-heading,
  .labor-upload-box {
    flex-direction: column;
    align-items: stretch;
  }
  .labor-filter-grid,
  .form-grid.three-columns,
  .form-grid.four-columns,
  .labor-verb-library,
  .labor-calculation-meta,
  .labor-preview-list,
  .labor-history-grid {
    grid-template-columns: 1fr;
  }
  .labor-filter-grid .field-span-2 {
    grid-column: auto;
  }
}

/* UX visual polish 2026-04-30: labor dashboard, autocomplete, PJeCalc review and forms */
.labor-page,
.labor-hero,
.labor-filter-card,
.labor-board-grid,
.labor-editor-grid,
.labor-editor-main,
.labor-review-sidebar,
.labor-section,
.labor-sidebar-stack {
  max-width: 100%;
  min-width: 0;
  overflow-x: visible;
}

.labor-hero {
  align-items: start;
  gap: clamp(1rem, 2vw, 2rem);
}

.labor-hero h1 {
  font-size: clamp(2.7rem, 5vw, 5rem);
  line-height: .92;
  letter-spacing: -.07em;
}

.labor-filter-card,
.labor-filter-card form,
.labor-filter-grid,
.labor-filter-grid .field {
  position: relative;
  min-width: 0;
}

/* Normalize browser/autocomplete popover containers that were appearing as a dark debug block. */
.labor-filter-card [role='listbox'],
.labor-filter-card .autocomplete-list,
.labor-filter-card .autocomplete-results,
.labor-filter-card .suggestions,
.labor-filter-card .search-suggestions,
.labor-filter-card .labor-search-suggestions,
.labor-filter-card datalist + div,
.labor-search-suggestions {
  width: 100%;
  max-width: 100%;
  max-height: 240px;
  overflow-y: auto;
  margin-top: .45rem;
  padding: .45rem;
  border: 1px solid rgba(11, 40, 30, .12);
  border-radius: 16px;
  background: #fff;
  color: #0b281e;
  box-shadow: 0 18px 42px rgba(11, 40, 30, .14);
  z-index: 40;
}

.labor-filter-card [role='option'],
.labor-filter-card .autocomplete-item,
.labor-filter-card .suggestion-item,
.labor-filter-card .labor-search-suggestion-item,
.labor-search-suggestion-item {
  display: block;
  padding: .72rem .85rem;
  border-radius: 12px;
  color: #0b281e;
  background: transparent;
  font-weight: 700;
}

.labor-filter-card [role='option']:hover,
.labor-filter-card .autocomplete-item:hover,
.labor-filter-card .suggestion-item:hover,
.labor-filter-card .labor-search-suggestion-item:hover,
.labor-search-suggestion-item:hover {
  background: rgba(7, 61, 47, .07);
}

.labor-worker-card {
  padding: 1.25rem;
  display: grid;
  gap: .75rem;
}

.labor-worker-card h2 {
  margin: 0;
  line-height: 1.05;
}

.labor-worker-state {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: .28rem .7rem;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 900;
}

.labor-worker-state.warn { background: #fff3cd; color: #7a4f00; }
.labor-worker-state.ok { background: #d1fae5; color: #07543d; }
.labor-worker-state.error { background: #fde2e1; color: #9b1c1c; }

.labor-ordered-list {
  display: grid;
  gap: .55rem;
  margin: 0;
  padding-left: 1.2rem;
}

.labor-sticky-card {
  display: grid;
  gap: .75rem;
}

.labor-preview-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  margin-top: .35rem;
}

.labor-preview-list span {
  display: grid;
  gap: .2rem;
  padding: .75rem;
  border: 1px solid rgba(11, 40, 30, .08);
  border-radius: 14px;
  background: rgba(245, 243, 236, .6);
  min-width: 0;
}

.labor-preview-list strong {
  color: rgba(11, 40, 30, .66);
  font-size: .68rem;
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.labor-preview-list em {
  color: #0b281e;
  font-style: normal;
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.labor-quality-ok,
.labor-quality-warning {
  border-radius: 16px;
  padding: .8rem .9rem;
  line-height: 1.35;
}

.labor-verb-library {
  display: grid;
  grid-template-columns: repeat(3, minmax(190px, 1fr));
  gap: .8rem;
  align-items: start;
}

.labor-verb-category {
  min-width: 0;
  padding: .8rem;
  border-radius: 18px;
}

.labor-verb-category h3 {
  margin: 0 0 .65rem;
}

.labor-verb-card {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: .65rem;
  min-height: 0;
  padding: .75rem;
  border-radius: 14px;
}

.labor-verb-card input[type='checkbox'] {
  width: 20px;
  height: 20px;
  margin: .1rem 0 0;
}

.labor-verb-card span,
.labor-verb-card strong,
.labor-verb-card small {
  min-width: 0;
}

.labor-verb-card strong {
  line-height: 1.14;
}

.labor-verb-card small {
  display: block;
  margin-top: .18rem;
  color: rgba(11, 40, 30, .58);
  line-height: 1.2;
}

.labor-verb-card.is-selected {
  border-color: rgba(7, 61, 47, .35);
  background: rgba(232, 245, 239, .82);
}

.labor-incidence-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(11, 40, 30, .08);
  border-radius: 18px;
}

.labor-incidence-table {
  min-width: 820px;
  border-collapse: separate;
  border-spacing: 0;
}

.labor-incidence-table th,
.labor-incidence-table td {
  vertical-align: middle;
}

.labor-incidence-table th {
  background: rgba(245, 243, 236, .9);
  color: rgba(11, 40, 30, .66);
  font-size: .72rem;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.labor-incidence-table td:first-child,
.labor-incidence-table th:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  background: #fff;
  min-width: 230px;
}

.labor-incidence-table th:first-child { background: rgba(245, 243, 236, .95); z-index: 2; }
.labor-incidence-table tbody tr:hover td { background: rgba(232, 245, 239, .45); }
.labor-incidence-table tbody tr:hover td:first-child { background: rgba(232, 245, 239, .85); }

.labor-incidence-table input[type='checkbox'],
.labor-fieldset input[type='checkbox'],
.check-inline input[type='checkbox'] {
  width: 20px;
  height: 20px;
  min-width: 20px;
  accent-color: #073d2f;
}

.labor-incidence-table td:not(:first-child) {
  text-align: center;
}

.labor-subsection-grid {
  align-items: stretch;
}

.labor-fieldset {
  display: grid;
  gap: .65rem;
  align-content: start;
}

.labor-fieldset .check-inline,
.check-inline {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  line-height: 1.25;
}

#cartao-ponto .labor-history-grid {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(140px, .8fr) minmax(140px, .8fr) 24px;
  gap: .65rem;
  align-items: center;
}

#cartao-ponto .labor-history-header {
  margin-top: 1rem;
  color: rgba(11, 40, 30, .64);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
}

#execucao .labor-form-grid {
  display: grid;
  grid-template-columns: minmax(220px, .9fr) repeat(3, max-content);
  align-items: center;
  gap: 1rem 1.35rem;
}

.labor-submit-row {
  justify-content: flex-end;
  margin-top: 1.25rem;
}

@media (max-width: 1180px) {
  .labor-verb-library { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #execucao .labor-form-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
  .labor-verb-library,
  .labor-preview-list,
  #execucao .labor-form-grid { grid-template-columns: 1fr; }
  #cartao-ponto .labor-history-grid { grid-template-columns: 1fr; }
}

.labor-page .metric-icon {
  width: 36px;
  height: 36px;
  min-width: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(17,31,25,.08);
  color: #0f2b21;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .08em;
}

/* ===== 05-pages/dashboard.css ===== */
/* Atualização do Painel Geral - dashboard modular */
.dashboard-page-v2 {
  display: grid;
  gap: 24px;
}

.dashboard-command-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
}

.dashboard-command-copy h1 {
  margin: 4px 0 0;
  font-size: clamp(3rem, 5.5vw, 5.8rem);
  line-height: .9;
  letter-spacing: -.065em;
  color: var(--rs-green-950, #08251d);
}

.dashboard-command-copy p {
  max-width: 780px;
  margin: 16px 0 0;
  color: var(--rs-muted, #66736b);
  font-size: 1.05rem;
  line-height: 1.65;
}

.dashboard-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.dashboard-global-search {
  display: grid;
  gap: 8px;
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,248,245,.98));
  border: 1px solid rgba(12, 35, 31, .08);
  box-shadow: 0 16px 36px rgba(20, 34, 28, .05);
}

.dashboard-global-search label {
  color: var(--rs-muted, #66736b);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.dashboard-global-search div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.dashboard-global-search input {
  min-height: 52px;
  width: 100%;
  border-radius: 16px;
  border: 1px solid rgba(12, 35, 31, .11);
  padding: 0 18px;
  font: inherit;
  background: #fff;
}

.dashboard-top-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}

.dashboard-kpi-card {
  position: relative;
  min-height: 178px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  border-radius: 24px;
  background: #fff;
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
  border: 1px solid rgba(12, 35, 31, .09);
  box-shadow: 0 18px 38px rgba(20, 34, 28, .055);
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-kpi-card:hover,
.dashboard-shortcut-card:hover,
.dashboard-attention-item:hover,
.dashboard-activity-item:hover,
.dashboard-health-row:hover {
  transform: translateY(-2px);
  border-color: rgba(5, 64, 45, .22);
  box-shadow: 0 22px 44px rgba(20, 34, 28, .08);
}

.dashboard-kpi-card::after {
  content: '';
  position: absolute;
  inset: auto -42px -54px auto;
  width: 128px;
  height: 128px;
  border-radius: 50%;
  background: rgba(7, 70, 50, .055);
}

.dashboard-kpi-card span {
  position: relative;
  z-index: 1;
  color: var(--rs-muted, #66736b);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.dashboard-kpi-card strong {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 12px;
  font-family: var(--font-serif, Georgia, serif);
  font-size: clamp(2.5rem, 3.4vw, 4.2rem);
  line-height: .86;
  letter-spacing: -.055em;
}

.dashboard-kpi-card h2 {
  position: relative;
  z-index: 1;
  margin: 12px 0 0;
  font-size: 1rem;
  line-height: 1.2;
}

.dashboard-kpi-card p {
  position: relative;
  z-index: 1;
  margin: 10px 0 0;
  color: var(--rs-muted, #66736b);
  line-height: 1.45;
}

.dashboard-kpi-card.tone-accent {
  background: linear-gradient(135deg, var(--rs-green-950, #062d22), #193127);
  color: #fff;
}

.dashboard-kpi-card.tone-accent span,
.dashboard-kpi-card.tone-accent p {
  color: rgba(255, 255, 255, .72);
}

.dashboard-kpi-card.tone-warning {
  background: linear-gradient(135deg, #fffaf0, #f7f0d9);
}

.dashboard-attention-grid,
.dashboard-main-grid-v2 {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  gap: 18px;
  align-items: start;
}

.dashboard-panel-header {
  align-items: center;
}

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

.dashboard-attention-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 16px;
  border-radius: 18px;
  background: #fbfbf9;
  border: 1px solid rgba(12, 35, 31, .08);
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-attention-item strong,
.dashboard-mini-list strong,
.dashboard-activity-item strong,
.dashboard-shortcut-card strong {
  display: block;
  line-height: 1.2;
}

.dashboard-attention-item p {
  margin: 5px 0 0;
  color: var(--rs-muted, #66736b);
  line-height: 1.4;
}

.dashboard-attention-item > span {
  display: inline-flex;
  width: 52px;
  height: 52px;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(8, 67, 49, .08);
  font-family: var(--font-serif, Georgia, serif);
  font-size: 1.9rem;
  font-weight: 800;
}

.dashboard-attention-item.tone-warning > span,
.dashboard-shortcut-card.tone-warning em {
  background: #fff1cf;
  color: #7a5200;
}

.dashboard-attention-item.tone-danger > span,
.dashboard-shortcut-card.tone-danger em {
  background: #fee2e2;
  color: #991b1b;
}

.dashboard-attention-item.tone-success > span {
  background: #dff7e8;
  color: #0f6b42;
}

.dashboard-crm-panel {
  background: linear-gradient(180deg, #fff, #fbfcf8);
}

.dashboard-crm-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.dashboard-crm-metrics div,
.dashboard-now-list a,
.dashboard-health-row {
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
  border-radius: 18px;
  padding: 14px;
}

.dashboard-crm-metrics span,
.dashboard-now-list span {
  display: block;
  color: var(--rs-muted, #66736b);
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 800;
}

.dashboard-crm-metrics strong,
.dashboard-now-list strong {
  display: block;
  margin-top: 6px;
  font-family: var(--font-serif, Georgia, serif);
  font-size: 2.2rem;
  line-height: .9;
}

.dashboard-crm-metrics small {
  display: block;
  margin-top: 8px;
  color: var(--rs-muted, #66736b);
}

.dashboard-mini-list,
.dashboard-activity-list,
.dashboard-now-list,
.dashboard-health-list {
  display: grid;
  gap: 10px;
}

.dashboard-mini-list a {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
}

.dashboard-mini-list span,
.dashboard-activity-item p,
.dashboard-activity-item small,
.dashboard-health-row span {
  color: var(--rs-muted, #66736b);
}

.dashboard-shortcuts-panel {
  padding: 24px;
}

.dashboard-shortcut-groups {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.dashboard-shortcut-group {
  display: grid;
  gap: 10px;
}

.dashboard-shortcut-group h3 {
  margin: 0;
  color: var(--rs-muted, #66736b);
  font-size: .78rem;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.dashboard-shortcut-list {
  display: grid;
  gap: 10px;
}

.dashboard-shortcut-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  position: relative;
  min-height: 118px;
  padding: 16px;
  border-radius: 20px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-shortcut-card > span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: rgba(8, 67, 49, .07);
  color: #174a38;
  font-weight: 900;
}

.dashboard-shortcut-card p {
  margin: 8px 0 0;
  color: var(--rs-muted, #66736b);
  line-height: 1.42;
}

.dashboard-shortcut-card em {
  position: absolute;
  right: 12px;
  bottom: 12px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #f0f2ec;
  color: #405044;
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
}

.dashboard-activity-panel,
.dashboard-side-stack {
  min-width: 0;
}

.dashboard-tab-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.dashboard-tab-pills span {
  padding: 6px 10px;
  border-radius: 999px;
  background: #f2f3ee;
  color: var(--rs-muted, #66736b);
  font-size: .76rem;
  font-weight: 800;
}

.dashboard-activity-item {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr) 145px;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-activity-item > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border-radius: 999px;
  background: rgba(8, 67, 49, .07);
  color: #174a38;
  font-size: .78rem;
  font-weight: 900;
}

.dashboard-activity-item.tone-warning > span { background: #fff1cf; color: #7a5200; }
.dashboard-activity-item.tone-danger > span { background: #fee2e2; color: #991b1b; }
.dashboard-activity-item.tone-success > span { background: #dff7e8; color: #0f6b42; }
.dashboard-activity-item.tone-info > span { background: #e0f2fe; color: #075985; }

.dashboard-activity-item p {
  margin: 5px 0 0;
  line-height: 1.4;
}

.dashboard-activity-item small {
  text-align: right;
  line-height: 1.45;
}

.dashboard-side-stack {
  display: grid;
  gap: 18px;
}

.dashboard-now-panel,
.dashboard-health-panel-v2 {
  padding: 22px;
}

.dashboard-now-panel h2,
.dashboard-health-panel-v2 h2 {
  margin: 6px 0 16px;
}

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

.dashboard-now-list a {
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
}

.dashboard-health-row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  overflow: hidden;
  color: var(--rs-green-950, #08251d);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.dashboard-health-row em {
  font-style: normal;
  font-weight: 900;
}

.dashboard-health-row i {
  grid-column: 1 / -1;
  display: block;
  height: 8px;
  border-radius: 999px;
  background: #e8ece5;
  overflow: hidden;
}

.dashboard-health-row i::before {
  content: '';
  display: block;
  width: var(--w, 0%);
  height: 100%;
  border-radius: inherit;
  background: var(--rs-green-800, #0f513b);
}

@media (max-width: 1320px) {
  .dashboard-top-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

@media (max-width: 1080px) {
  .dashboard-command-hero,
  .dashboard-attention-grid,
  .dashboard-main-grid-v2 {
    grid-template-columns: 1fr;
  }

  .dashboard-command-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .dashboard-top-grid,
  .dashboard-attention-list,
  .dashboard-shortcut-groups,
  .dashboard-crm-metrics,
  .dashboard-now-list {
    grid-template-columns: 1fr;
  }

  .dashboard-global-search div {
    grid-template-columns: 1fr;
  }

  .dashboard-activity-item {
    grid-template-columns: 1fr;
  }

  .dashboard-activity-item small {
    text-align: left;
  }
}

html[data-theme='dark'] .dashboard-global-search,
html[data-theme='dark'] .dashboard-kpi-card,
html[data-theme='dark'] .dashboard-attention-item,
html[data-theme='dark'] .dashboard-crm-metrics div,
html[data-theme='dark'] .dashboard-mini-list a,
html[data-theme='dark'] .dashboard-shortcut-card,
html[data-theme='dark'] .dashboard-activity-item,
html[data-theme='dark'] .dashboard-now-list a,
html[data-theme='dark'] .dashboard-health-row {
  background: rgba(9, 24, 20, .92);
  border-color: rgba(219, 231, 220, .12);
}

/* Correção de pré-produção: tons legíveis no dark mode sem badges azulados. */
html[data-theme='dark'] .dashboard-kpi-card,
html[data-theme='dark'] .dashboard-attention-item,
html[data-theme='dark'] .dashboard-shortcut-card,
html[data-theme='dark'] .dashboard-activity-item,
html[data-theme='dark'] .dashboard-now-list a,
html[data-theme='dark'] .dashboard-health-row {
  color: var(--rs-text-main, #edf1ea);
}

html[data-theme='dark'] .dashboard-kpi-card span,
html[data-theme='dark'] .dashboard-kpi-card p,
html[data-theme='dark'] .dashboard-attention-item p,
html[data-theme='dark'] .dashboard-activity-item p,
html[data-theme='dark'] .dashboard-activity-item small {
  color: var(--rs-text-muted, #aab7ae);
}

html[data-theme='dark'] .dashboard-attention-item > span,
html[data-theme='dark'] .dashboard-shortcut-card em,
html[data-theme='dark'] .dashboard-activity-item > span {
  background: rgba(214, 215, 189, .12);
  color: #edf1ea;
}

html[data-theme='dark'] .dashboard-attention-item.tone-warning > span,
html[data-theme='dark'] .dashboard-shortcut-card.tone-warning em,
html[data-theme='dark'] .dashboard-activity-item.tone-warning > span {
  background: rgba(214, 215, 189, .18);
  color: #f2dfaa;
}

html[data-theme='dark'] .dashboard-attention-item.tone-danger > span,
html[data-theme='dark'] .dashboard-shortcut-card.tone-danger em,
html[data-theme='dark'] .dashboard-activity-item.tone-danger > span {
  background: rgba(239, 105, 105, .14);
  color: #ffc9c9;
}

html[data-theme='dark'] .dashboard-attention-item.tone-success > span,
html[data-theme='dark'] .dashboard-shortcut-card.tone-success em,
html[data-theme='dark'] .dashboard-activity-item.tone-success > span,
html[data-theme='dark'] .dashboard-activity-item.tone-info > span,
html[data-theme='dark'] .dashboard-shortcut-card.tone-info em {
  background: rgba(125, 177, 138, .16);
  color: #d7f5dd;
}

/* ===== 05-pages/asaas-brand-integrated.css ===== */
/* Integrado a partir de 06-overrides/brand-asaas-v25.css para permitir remoção da pasta 06-overrides. */
/* === Patch v25: Asaas lateral, logo estável e seções compactáveis === */
.rs-brand-card-enhanced {
  overflow: visible;
}

.rs-brand-link-enhanced {
  gap: .72rem;
  padding: .85rem;
}

.rs-brand-logo-stage {
  width: 100%;
  height: 128px;
  min-height: 128px;
  overflow: visible;
  display: block;
}

.rs-brand-logo-placeholder {
  width: 100%;
  height: 128px;
  min-height: 0;
  max-height: 128px;
  padding: 10px;
  overflow: hidden;
  box-sizing: border-box;
}

.rs-brand-logo-img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.rs-brand-copy .rs-brand-title {
  font-size: 1.78rem;
  line-height: 1;
}

.rs-brand-copy .rs-brand-subtitle {
  line-height: 1.25;
}

.process-clients-card .process-summary-heading h2,
.processes-monitoring-card .process-section-summary h2 {
  margin: 0;
}

.process-section-collapse {
  border: 0;
  background: transparent;
}

.process-section-collapse > summary.process-section-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  list-style: none;
  cursor: pointer;
  padding: 0 0 18px;
  border-bottom: 1px solid rgba(9, 48, 36, .08);
}

.process-section-collapse > summary.process-section-summary::-webkit-details-marker {
  display: none;
}

.process-section-collapse[open] .process-summary-chevron {
  transform: rotate(180deg);
}

.process-section-collapse:not([open]) > summary.process-section-summary {
  padding-bottom: 0;
  border-bottom: 0;
}

.process-section-collapse .monitoring-card-list {
  margin-top: 20px;
}

/* Atalho visual da Integração Asaas */
.rs-nav a[href='/automations/financeiro'] .nav-glyph {
  font-weight: 900;
}

.asaas-integration-layout {
  margin: 1.25rem 0;
}

.asaas-integration-card {
  position: relative;
  overflow: hidden;
}

.asaas-integration-card::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #0b3d2e, #12a06f);
  opacity: .9;
}

.asaas-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
  margin: 1rem 0;
}

.asaas-status-grid > div {
  padding: .95rem 1rem;
  border: 1px solid var(--border-primary, rgba(10, 40, 31, .10));
  border-radius: 18px;
  background: var(--surface-subtle, #fafaf8);
  min-width: 0;
}

.asaas-status-grid span {
  display: block;
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--text-secondary, #677066);
  margin-bottom: .35rem;
}

.asaas-status-grid strong {
  display: block;
  overflow-wrap: anywhere;
  color: var(--text-primary, #081f19);
}

.asaas-status-grid strong.ok {
  color: #047857;
}

.asaas-status-grid strong.warn {
  color: #b45309;
}

.settings-tip-stack.compact {
  gap: .6rem;
}

@media (max-width: 900px) {
  .asaas-status-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== 05-pages/process-edit-actions-integrated.css ===== */
/* Integrado a partir de 06-overrides/process-edit-actions.css para permitir remoção da pasta 06-overrides. */
/* ============================================================
   PATCH V29 - Ações de processos: largura estável e link funcional
   ============================================================ */
.process-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.process-action-chip {
  min-height: 42px;
  padding: 0 14px;
  border-radius: 14px;
  white-space: nowrap;
  font-weight: 800;
}

.system-link-chip:not(.is-muted) {
  background: #eef4f1;
  border-color: rgba(6, 45, 34, .16);
  color: #0b3428;
}

.system-link-chip.is-muted {
  opacity: .72;
}

.process-edit-panel[hidden] {
  display: none;
}

.process-edit-panel:not([hidden]) {
  display: block;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
}

.process-edit-form .process-edit-footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

/* ===== 05-pages/processes-v26-v27-integrated.css ===== */
/* Integrado a partir de 06-overrides/processes-v26-v27.css para permitir remoção da pasta 06-overrides. */
/* === Patch v26: correção visual da fila e filtro por esfera === */
.process-filter-grid-compact {
  grid-template-columns: minmax(280px, 2fr) repeat(4, minmax(150px, 1fr)) auto;
  gap: 14px;
  align-items: end;
}

.process-filter-grid-compact .field-span-3 {
  grid-column: span 2;
}

.process-filter-grid-compact .field-span-2 {
  grid-column: 1 / span 3;
}

.process-filter-actions {
  align-self: end;
  justify-content: flex-start;
}

.process-clients-card,
.processes-monitoring-card {
  padding: 0;
  overflow: hidden;
  border-radius: 24px;
}

.process-clients-card .process-monitoring-details,
.processes-monitoring-card .process-section-collapse {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
}

.process-clients-card .process-monitoring-details > summary,
.process-section-collapse > summary.process-section-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-height: 86px;
  margin: 0;
  padding: 22px 24px;
  list-style: none;
  cursor: pointer;
  border-bottom: 1px solid rgba(8, 38, 68, .08);
  background: #f7f9f8;
  box-sizing: border-box;
}

.process-clients-card .process-monitoring-details > summary::after,
.process-section-collapse > summary.process-section-summary::after,
.process-monitoring-details > summary::after {
  display: none;
  content: none;
}

.process-clients-card .process-summary-heading,
.process-section-summary > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-clients-card .process-summary-heading h2,
.processes-monitoring-card .process-section-summary h2 {
  margin: 0;
  font-size: 1.28rem;
  line-height: 1.15;
}

.process-clients-summary-side {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: max-content;
}

.process-summary-chevron {
  width: 32px;
  height: 32px;
  min-width: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(8, 38, 68, .055);
  color: #26443c;
}

.process-clients-card .process-client-toolbar,
.process-clients-card .process-client-list,
.processes-monitoring-card .monitoring-card-list {
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

.process-clients-card .process-client-toolbar {
  padding-top: 16px;
  padding-bottom: 10px;
  margin: 0;
}

.process-clients-card .process-client-list {
  padding-bottom: 24px;
}

.processes-monitoring-card .monitoring-card-list {
  padding-top: 24px;
  padding-bottom: 24px;
  margin-top: 0;
}

.process-clients-card .process-client-row,
.processes-monitoring-card .process-monitoring-card {
  width: 100%;
  box-sizing: border-box;
}

.process-section-collapse:not([open]) > summary.process-section-summary {
  border-bottom: 0;
  min-height: 86px;
  padding: 22px 24px;
}

@media (max-width: 1280px) {
  .process-filter-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .process-filter-grid-compact .field-span-3,
  .process-filter-grid-compact .field-span-2,
  .process-filter-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .process-clients-card .process-monitoring-details > summary,
  .process-section-collapse > summary.process-section-summary {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .process-clients-summary-side {
    justify-content: flex-start;
  }

  .process-clients-card .process-client-toolbar,
  .process-clients-card .process-client-list,
  .processes-monitoring-card .monitoring-card-list {
    padding-left: 18px;
    padding-right: 18px;
  }
}

/* === Patch v27: alinhamento do filtro e logo lateral responsiva === */
.process-filter-grid-compact {
  align-items: end;
}

.process-filter-grid-compact .monitoring-inline-flags.field-span-2 {
  grid-column: 1 / span 3;
  align-self: center;
  padding-bottom: 0;
}

.process-filter-grid-compact .process-filter-actions {
  grid-column: 4 / -1;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  align-self: center;
  padding-top: 4px;
}

.process-filter-grid-compact .process-filter-actions .primary-button,
.process-filter-grid-compact .process-filter-actions .ghost-button {
  min-width: 92px;
  justify-content: center;
}

/* Mantém a marca estável em telas menores, zoom alto e notebooks com pouca altura. */
.rs-sidebar .rs-brand-card-enhanced {
  overflow: hidden;
  flex: 0 0 auto;
}

.rs-sidebar .rs-brand-link-enhanced {
  display: grid;
  gap: 8px;
  padding: 12px;
  min-width: 0;
  box-sizing: border-box;
}

.rs-sidebar .rs-brand-logo-stage {
  width: 100%;
  height: clamp(78px, 10vh, 108px);
  min-height: 78px;
  max-height: 108px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.rs-sidebar .rs-brand-logo-placeholder {
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  padding: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.rs-sidebar .rs-brand-logo-img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.rs-sidebar .rs-brand-copy {
  min-width: 0;
  gap: 2px;
}

.rs-sidebar .rs-brand-copy .rs-brand-title {
  font-size: clamp(1.28rem, 2.5vh, 1.7rem);
  line-height: .98;
  letter-spacing: .12em;
  overflow-wrap: anywhere;
}

.rs-sidebar .rs-brand-copy .rs-brand-subtitle {
  font-size: clamp(.58rem, 1.35vh, .72rem);
  line-height: 1.2;
  letter-spacing: .13em;
  overflow-wrap: anywhere;
}

@media (max-height: 820px) {
  .rs-sidebar .rs-brand-link-enhanced {
    padding: 10px;
    gap: 6px;
  }

  .rs-sidebar .rs-brand-logo-stage {
    height: 72px;
    min-height: 72px;
    max-height: 72px;
  }

  .rs-sidebar .rs-brand-logo-placeholder {
    padding: 7px;
    border-radius: 18px;
  }

  .rs-sidebar .rs-brand-copy .rs-brand-title {
    font-size: 1.2rem;
  }

  .rs-sidebar .rs-brand-copy .rs-brand-subtitle {
    font-size: .56rem;
    letter-spacing: .11em;
  }
}

@media (max-width: 1280px) {
  .process-filter-grid-compact .process-filter-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }
}

@media (max-width: 720px) {
  .process-filter-grid-compact .process-filter-actions {
    justify-content: stretch;
  }

  .process-filter-grid-compact .process-filter-actions .primary-button,
  .process-filter-grid-compact .process-filter-actions .ghost-button {
    flex: 1 1 0;
  }
}

/* ===== 05-pages/ui-stability.css ===== */
/* Integrado a partir de 06-overrides/victor-2026-04.css para permitir remoção da pasta 06-overrides. */
/* === ajustes Victor abril 2026 === */
.sidebar-brand-card {
  min-height: 96px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 18px 18px 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(9, 62, 50, 0.96), rgba(6, 38, 31, 0.98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 18px 42px rgba(4, 20, 17, 0.28);
}

.sidebar-brand-copy {
  display: grid;
  gap: 4px;
}

.brand-title {
  margin: 0;
  letter-spacing: -0.04em;
}

.brand-subtitle {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(225, 240, 233, 0.78);
}

.login-card-refined {
  max-width: 520px;
  padding: 34px 30px;
  border-radius: 28px;
}

.login-brand-refined {
  align-items: flex-start;
  gap: 18px;
}

.login-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.10);
  color: #0f766e;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.login-brand-refined h1 {
  margin-bottom: 4px;
  font-size: clamp(44px, 7vw, 64px);
  line-height: 0.95;
}

.login-brand-refined p {
  font-size: 18px;
  color: #667085;
}

.settings-config-head {
  overflow-wrap: anywhere;
}

.settings-user-avatar,
.settings-user-photo,
.settings-user-media,
.user-avatar-lg {
  width: 60px;
  height: 60px;
  min-width: 60px;
  border-radius: 18px;
}

.ai-table-card,
.ai-list-card {
  overflow: hidden;
}

.ai-agents-table,
.ai-table-shell,
.ai-agent-row {
  width: 100%;
}

.ai-table-scroll,
.ai-agents-scroll {
  overflow-x: auto;
}

.ai-agent-name {
  min-width: 180px;
}

.process-layout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(360px, 0.95fr);
  gap: 24px;
  align-items: start;
}

.process-filter-grid .field-span-2 { grid-column: span 2; }
.process-form-stack .field-span-full { grid-column: 1 / -1; }
.process-form-stack .form-grid { align-items: start; }

.process-form-card {
  position: sticky;
  top: 24px;
}

.process-form-stack {
  display: grid;
  gap: 16px;
}

.process-mini-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.compact-chip,
.compact-copy-button {
  min-height: 38px;
  padding: 0 12px;
  font-size: 13px;
}

.table-subline {
  margin-top: 4px;
  font-size: 12px;
  color: #667085;
}

.process-autocomplete-shell { position: relative; }

.search-preview-list[hidden] { display: none; }

.search-preview-list {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 40;
}

html[data-theme='dark'] .search-preview-list,
html[data-theme='dark'] .prefill-results,
html[data-theme='dark'] .sanitize-record-list,
html[data-theme='dark'] .record-feedback-panel,
html[data-theme='dark'] .contract-stage-summary {
  background: rgba(8, 26, 22, 0.95);
  border-color: rgba(144, 203, 184, 0.14);
}

html[data-theme='dark'] .sanitize-record-item,
html[data-theme='dark'] .prefill-card,
html[data-theme='dark'] .search-preview-item,
html[data-theme='dark'] .wizard-mini-section,
html[data-theme='dark'] .contract-info-card,
html[data-theme='dark'] .list-item {
  background: linear-gradient(180deg, rgba(8, 27, 22, 0.92), rgba(6, 20, 18, 0.98));
  border-color: rgba(144, 203, 184, 0.14);
}

html[data-theme='dark'] .sanitize-record-item strong,
html[data-theme='dark'] .prefill-card strong,
html[data-theme='dark'] .search-preview-item strong,
html[data-theme='dark'] .contract-field strong,
html[data-theme='dark'] .document-check-copy strong {
  color: #f8fafc;
}

html[data-theme='dark'] .search-preview-item span,
html[data-theme='dark'] .prefill-card small,
html[data-theme='dark'] .table-subline,
html[data-theme='dark'] .contract-field span,
html[data-theme='dark'] .record-feedback-meta,
html[data-theme='dark'] .document-check-copy small {
  color: rgba(225, 240, 233, 0.74);
}

html[data-theme='dark'] .document-check-card {
  background: rgba(8, 28, 23, 0.96);
  border-color: rgba(144, 203, 184, 0.14);
}

html[data-theme='dark'] .document-check-card.is-selected {
  background: rgba(14, 87, 72, 0.38);
  border-color: rgba(99, 192, 165, 0.5);
}

html[data-theme='dark'] .wizard-stage-card,
html[data-theme='dark'] .wizard-progress-card {
  background: linear-gradient(180deg, rgba(6, 21, 18, 0.95), rgba(5, 17, 15, 0.98));
}

html[data-theme='dark'] .lead-register-button,
html[data-theme='dark'] .lead-register-button[disabled] {
  background: rgba(24, 84, 69, 0.88);
  border-color: rgba(72, 166, 140, 0.34);
  color: #f8fafc;
}

html[data-theme='dark'] .contract-action-grid .primary-button,
html[data-theme='dark'] .contract-action-grid .ghost-button {
  min-height: 40px;
  padding: 0 14px;
  font-size: 13px;
}

@media (max-width: 1100px) {
  .process-layout-grid {
    grid-template-columns: 1fr;
  }

  .process-form-card {
    position: static;
  }
}


.rs-brand-block {
  display: grid;
  gap: 4px;
  align-items: start;
}

.rs-brand-title {
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
}

.rs-brand-subtitle {
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(222, 232, 228, 0.72);
}

.auth-panel--refined {
  max-width: 520px;
  border-radius: 30px;
  box-shadow: 0 32px 72px rgba(10, 23, 19, 0.22);
}

.auth-badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  margin-bottom: 10px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.1);
  color: #0f766e;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}


/* === 2026-04 UI refinement overrides === */
:root {
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Cormorant Garamond', 'Georgia', serif;
  --bg-soft: #f4f1ea;
  --panel: #fffdfa;
  --border: rgba(18, 43, 31, 0.12);
  --accent: #0e5f49;
  --accent-soft: #e6f3ee;
}

body {
  font-family: var(--font-sans);
}

h1, h2, h3, .sidebar-brand-copy strong {
  letter-spacing: -0.03em;
}

.sidebar-brand-card {
  display: grid;
  gap: 0.9rem;
  padding: 1rem 0 1.4rem;
}

.sidebar-brand-logo-shell {
  display: flex;
}

.sidebar-brand-logo-frame {
  width: 100%;
  min-height: 150px;
  border: 1px dashed rgba(232, 237, 233, 0.24);
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.5rem;
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  color: rgba(245, 248, 246, 0.92);
  text-align: center;
  padding: 1rem;
}

.sidebar-brand-monogram {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border-radius: 22px;
  background: rgba(255,255,255,0.1);
  font-size: 1.75rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.sidebar-brand-logo-frame small,
.sidebar-brand-copy small {
  color: rgba(236, 243, 239, 0.72);
}

.sidebar-brand-copy strong {
  font-size: 1.18rem;
}

.operation-health-panel {
  background: linear-gradient(180deg, rgba(13, 95, 73, 0.06), rgba(255, 255, 255, 0.95));
}

.operation-health-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 1.15rem;
}

.operation-health-stat {
  border: 1px solid rgba(14, 95, 73, 0.14);
  border-radius: 18px;
  background: rgba(255,255,255,0.82);
  padding: 1rem 1.05rem;
}

.operation-health-stat span {
  display: block;
  font-size: 0.82rem;
  color: #4b665b;
}

.operation-health-stat strong {
  display: block;
  margin-top: 0.45rem;
  font-size: 1.8rem;
}

.operation-health-stat small,
.operation-status-list .insight-row small {
  color: #678074;
}

.operation-status-list .insight-row {
  grid-template-columns: minmax(150px, 1fr) auto auto;
  align-items: center;
  row-gap: 0.35rem;
}

.operation-status-list .insight-row i {
  grid-column: 1 / -1;
  background: rgba(14, 95, 73, 0.14);
  overflow: hidden;
}

.operation-status-list .insight-row i::after {
  content: '';
  display: block;
  width: var(--w);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0e5f49, #2f8f76);
}

.settings-status-card-minimal {
  gap: 1rem;
  justify-content: space-between;
}

.settings-template-library {
  display: grid;
  gap: 0.85rem;
}

.settings-template-library-item,
.vs-conversation-entry {
  display: grid;
  gap: 0.6rem;
}

.settings-template-library-item {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 0.9rem 1rem;
  background: rgba(255,255,255,0.65);
}

.settings-template-library-item p {
  margin: 0.25rem 0 0;
  color: var(--muted);
}

.document-check-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.document-check-card {
  min-height: 64px;
  border-radius: 16px;
  border: 1px solid rgba(15, 50, 39, 0.14);
  background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(248,248,245,0.96));
  box-shadow: none;
}

.document-check-card .document-check-copy {
  display: grid;
  gap: 0.25rem;
}

.document-check-card .document-check-copy small {
  color: #5b6f66;
  font-size: 0.82rem;
  line-height: 1.35;
}

.document-check-card.is-selected {
  border-color: rgba(14, 95, 73, 0.35);
  background: linear-gradient(180deg, rgba(230,243,238,0.92), rgba(255,255,255,0.98));
  box-shadow: 0 0 0 2px rgba(14, 95, 73, 0.12);
}

.document-check-mark {
  background: rgba(14, 95, 73, 0.12);
  color: #0e5f49;
}

.document-check-card.is-selected .document-check-mark {
  background: #073d2f;
  color: #fff;
}

.tiny-link,
.inline-action-link {
  color: #0e5f49;
  font-weight: 700;
  text-decoration: none;
}

.inline-action-link {
  margin-left: 0.5rem;
}

.vs-sidebar-actions {
  margin-bottom: 1rem;
}

[data-theme='dark'] .vs-panel,
[data-theme='dark'] .vs-thread,
[data-theme='dark'] .vs-composer,
[data-theme='dark'] .vs-conversation-card,
[data-theme='dark'] .vs-empty-state,
[data-theme='dark'] .vs-conversation-entry,
[data-theme='dark'] .document-picker-shell,
[data-theme='dark'] .document-check-card,
[data-theme='dark'] .sanitize-card,
[data-theme='dark'] .sanitize-inline-overview,
[data-theme='dark'] .legal-builder-shell,
[data-theme='dark'] .legal-builder-main,
[data-theme='dark'] .legal-builder-side,
[data-theme='dark'] .wizard-panel,
[data-theme='dark'] .wizard-preview,
[data-theme='dark'] .wizard-step-panel,
[data-theme='dark'] .settings-template-library-item,
[data-theme='dark'] .operation-health-stat {
  background: rgba(10, 24, 19, 0.92);
  color: #eef5f1;
  border-color: rgba(199, 215, 206, 0.14);
}

[data-theme='dark'] .vs-thread,
[data-theme='dark'] .wizard-preview,
[data-theme='dark'] .wizard-panel textarea,
[data-theme='dark'] .wizard-panel input,
[data-theme='dark'] .wizard-panel select,
[data-theme='dark'] .wizard-step-panel textarea,
[data-theme='dark'] .wizard-step-panel input,
[data-theme='dark'] .wizard-step-panel select,
[data-theme='dark'] .sanitize-card input,
[data-theme='dark'] .sanitize-card select,
[data-theme='dark'] .sanitize-card textarea,
[data-theme='dark'] .vs-composer textarea,
[data-theme='dark'] .vs-composer input {
  background: rgba(5, 16, 12, 0.96);
  color: #f4fbf7;
  border-color: rgba(199, 215, 206, 0.14);
}

[data-theme='dark'] .vs-empty-state,
[data-theme='dark'] .document-check-card .document-check-copy small,
[data-theme='dark'] .tiny-link,
[data-theme='dark'] .inline-action-link,
[data-theme='dark'] .operation-health-stat small,
[data-theme='dark'] .operation-status-list .insight-row small {
  color: rgba(226, 237, 231, 0.78);
}

@media (max-width: 1100px) {
  .operation-health-grid,
  .document-check-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .operation-health-grid,
  .document-check-grid {
    grid-template-columns: 1fr;
  }
}

/* Brand card enhanced */
.rs-brand-card-enhanced {
  padding: 0;
  border: 1px solid rgba(234, 242, 238, 0.08);
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
  overflow: hidden;
}

.rs-brand-link-enhanced {
  display: grid;
  gap: 0.9rem;
  text-decoration: none;
  padding: 1rem;
}

.rs-brand-logo-stage {
  display: flex;
}

.rs-brand-logo-placeholder {
  width: 100%;
  min-height: 150px;
  border-radius: 22px;
  border: 1px dashed rgba(233, 240, 236, 0.22);
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-align: center;
  padding: 1rem;
  color: rgba(243, 247, 245, 0.92);
}

.rs-brand-logo-monogram {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 76px;
  border-radius: 24px;
  background: rgba(255,255,255,0.1);
  font-weight: 800;
  font-size: 1.7rem;
  letter-spacing: 0.14em;
}

.rs-brand-copy {
  display: grid;
  gap: 0.25rem;
}

.rs-brand-copy .rs-brand-title {
  font-size: 2rem;
}

.rs-brand-copy .rs-brand-subtitle {
  font-size: 0.78rem;
  letter-spacing: 0.2em;
}

.rs-brand-caption {
  color: rgba(230, 238, 234, 0.74);
  font-size: 0.84rem;
  font-style: normal;
  line-height: 1.35;
}


/* Contratos e Anexos: seleção real dos documentos */
.document-check-card {
  cursor: pointer;
  user-select: none;
}

.document-check-card:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(14, 95, 73, 0.18);
}

.document-check-card:not(.is-selected) .document-check-mark {
  background: rgba(7, 61, 47, 0.10);
  border-color: rgba(7, 61, 47, 0.18);
  color: #073d2f;
}

/* Logo do escritório na lateral */
.rs-brand-logo-img {
  max-width: 100%;
  max-height: 122px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.rs-brand-logo-placeholder.has-logo {
  border-style: solid;
  background: rgba(255,255,255,0.06);
}

.rs-brand-logo-placeholder.has-logo .rs-brand-logo-monogram,
.rs-brand-logo-placeholder.has-logo small {
  display: none;
}

/* Ajustes de processos e contratos - abril/2026 */

/* ===== 05-pages/settings-permissions.css ===== */
/* ============================================================
   Fieldset de permissões (form de usuário)
   ============================================================ */
.permissions-fieldset {
  border: 1px solid var(--border-strong);
  border-radius: 12px;
  padding: 16px 20px 20px;
  margin: 0;
  background: rgba(255, 255, 255, 0.4);
}

.permissions-fieldset legend {
  font-weight: 600;
  padding: 0 8px;
  color: var(--ink, #111f19);
}

.permissions-fieldset .helper-text {
  margin: 0 0 14px;
  color: var(--muted, #647067);
  font-size: 0.875rem;
}

.permissions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px 18px;
}

.permissions-grid .checkbox-inline {
  margin: 0;
}

@media (max-width: 720px) {
  .permissions-grid {
    grid-template-columns: 1fr;
  }
}


/* ===== UX Patch: usuários em configuração ===== */
.settings-users-grid {
  grid-template-columns: minmax(520px, 1.15fr) minmax(420px, .85fr);
}

.settings-users-list-card {
  min-width: 0;
  overflow: visible;
}

.settings-users-card-list {
  display: grid;
  gap: 12px;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(12, 35, 31, .08);
  background: #fff;
}

.settings-user-row-card .profile-row {
  min-width: 0;
}

.settings-user-row-card .profile-row > div {
  min-width: 0;
}

.settings-user-row-card .profile-row p,
.settings-user-row-card .profile-row strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-user-row-card .user-row-meta,
.settings-user-row-card .user-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.settings-user-row-card .user-row-actions button,
.settings-user-row-card .user-row-actions a {
  min-height: 34px;
  padding: 0 11px;
  border-radius: 10px;
  white-space: nowrap;
}

@media (max-width: 1100px) {
  .settings-users-grid,
  .settings-user-row-card {
    grid-template-columns: 1fr;
  }
  .settings-user-row-card .user-row-meta,
  .settings-user-row-card .user-row-actions {
    justify-content: flex-start;
  }
}

/* ===== 05-pages/settings-catalog.css ===== */
/* Settings catalog manager */
.settings-subheader {
  margin-top: 28px;
  margin-bottom: 12px;
}

.settings-catalog-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, .8fr);
  gap: 18px;
  align-items: start;
  margin-bottom: 18px;
}

.settings-area-list {
  display: grid;
  gap: 16px;
}

.settings-catalog-card {
  display: grid;
  gap: 16px;
}

.settings-catalog-card-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.settings-catalog-card-head h3 {
  margin: 4px 0 4px;
}

.settings-catalog-card-head p {
  margin: 0;
  color: var(--muted, #647067);
}

.settings-catalog-columns {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(320px, 1.2fr);
  gap: 16px;
  align-items: start;
}

.settings-mini-form {
  gap: 12px;
}

.settings-mini-form textarea {
  min-height: 160px;
  resize: vertical;
}

.settings-inline-check {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-size: .9rem;
  color: var(--muted, #647067);
}

.settings-inline-form {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

@media (max-width: 980px) {
  .settings-catalog-grid,
  .settings-catalog-columns {
    grid-template-columns: 1fr;
  }

  .settings-catalog-card-head {
    flex-direction: column;
  }
}

/* ===== 05-pages/settings-console.css ===== */
.settings-console-shell {
  --cfg-bg: #08111f;
  --cfg-panel: rgba(15, 29, 47, 0.94);
  --cfg-panel-2: rgba(19, 36, 58, 0.92);
  --cfg-line: rgba(158, 177, 206, 0.16);
  --cfg-line-strong: rgba(158, 177, 206, 0.26);
  --cfg-text: #edf4ff;
  --cfg-muted: #9daec6;
  --cfg-blue: #2f6df6;
  --cfg-blue-2: #5b8cff;
  --cfg-green: #36c275;
  --cfg-amber: #f5b942;
  --cfg-purple: #9b70ff;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  color: var(--cfg-text);
}

.settings-console-shell .panel-card,
.settings-console-shell .settings-premium-card,
.settings-console-shell .settings-status-card,
.settings-console-shell .settings-field-card,
.settings-console-shell .settings-catalog-card {
  background: var(--cfg-panel);
  border: 1px solid var(--cfg-line);
  color: var(--cfg-text);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24);
}

.settings-config-nav {
  position: sticky;
  top: 24px;
  min-height: calc(100vh - 72px);
  padding: 20px;
  border-radius: 22px;
  background:
    radial-gradient(circle at 16% 0%, rgba(47, 109, 246, 0.20), transparent 34%),
    linear-gradient(180deg, rgba(12, 28, 47, 0.98), rgba(9, 18, 31, 0.98));
}

.settings-config-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.settings-config-head h1,
.settings-ai-header h2,
.settings-placeholder-card h2 {
  margin: 4px 0 0;
  color: var(--cfg-text);
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

.settings-console-shell .eyebrow,
.settings-breadcrumb {
  color: #77a4ff;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 900;
}

.icon-only-button {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  border: 1px solid var(--cfg-line);
  color: var(--cfg-text);
  background: rgba(255, 255, 255, 0.06);
}

.settings-search-box,
.settings-inline-search {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--cfg-line);
  border-radius: 14px;
  background: rgba(4, 12, 23, 0.56);
  color: var(--cfg-muted);
}

.settings-search-box input,
.settings-inline-search input {
  border: 0;
  background: transparent;
  color: var(--cfg-text);
  min-height: 40px;
  box-shadow: none;
}

.settings-search-box input::placeholder,
.settings-inline-search input::placeholder,
.settings-console-shell input::placeholder,
.settings-console-shell textarea::placeholder {
  color: rgba(198, 210, 229, 0.52);
}

.settings-menu-list {
  display: grid;
  gap: 6px;
  margin-top: 18px;
  max-height: calc(100vh - 210px);
  overflow: auto;
  padding-right: 4px;
}

.settings-menu-list a {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 13px;
  color: var(--cfg-muted);
  border: 1px solid transparent;
  font-weight: 800;
  font-size: 14px;
}

.settings-menu-list a:hover,
.settings-menu-list a.active {
  background: rgba(47, 109, 246, 0.16);
  border-color: rgba(91, 140, 255, 0.30);
  color: var(--cfg-text);
}

.settings-menu-list a.active {
  box-shadow: inset 3px 0 0 var(--cfg-blue);
}

.settings-menu-icon {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  opacity: .92;
}

.settings-workspace {
  min-height: calc(100vh - 72px);
  padding: clamp(20px, 2.3vw, 32px);
  border: 1px solid rgba(120, 150, 196, 0.14);
  border-radius: 26px;
  background:
    radial-gradient(circle at 78% 0%, rgba(47, 109, 246, 0.18), transparent 34%),
    radial-gradient(circle at 12% 18%, rgba(96, 59, 255, 0.12), transparent 28%),
    linear-gradient(180deg, #0b1728, var(--cfg-bg));
  overflow: hidden;
}

.settings-ai-header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.settings-ai-header.compact {
  margin-bottom: 20px;
}

.settings-ai-header h2 {
  font-size: clamp(30px, 3vw, 46px);
  margin-top: 8px;
}

.settings-ai-header p,
.settings-placeholder-card p,
.settings-console-shell .helper-text,
.settings-console-shell small,
.settings-console-shell .settings-catalog-card-head p,
.settings-console-shell .settings-card p {
  color: var(--cfg-muted);
  line-height: 1.6;
}

.settings-header-actions,
.row-action-pack {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.settings-console-shell .primary-button,
.settings-console-shell button.primary-button,
.settings-console-shell a.primary-button {
  min-height: 42px;
  padding: 0 18px;
  border-radius: 12px;
  background: linear-gradient(180deg, var(--cfg-blue-2), var(--cfg-blue));
  border-color: rgba(95, 145, 255, 0.65);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 12px 28px rgba(47, 109, 246, 0.30);
}

.settings-console-shell .ghost-button,
.settings-console-shell button.ghost-button,
.settings-console-shell a.ghost-button {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 12px;
  border: 1px solid var(--cfg-line-strong);
  color: var(--cfg-text);
  background: rgba(255, 255, 255, 0.045);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.settings-console-shell .ghost-button.tiny,
.settings-console-shell button.ghost-button.tiny,
.settings-console-shell a.ghost-button.tiny {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.settings-local-tabs {
  display: inline-flex;
  gap: 4px;
  flex-wrap: wrap;
  padding: 6px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid var(--cfg-line);
  margin-bottom: 22px;
}

.settings-local-tabs a {
  padding: 10px 15px;
  border-radius: 999px;
  color: var(--cfg-muted);
  font-weight: 900;
  font-size: 13px;
}

.settings-local-tabs a.active,
.settings-local-tabs a:hover {
  color: #fff;
  background: rgba(47, 109, 246, 0.28);
}

.ai-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}

.ai-kpi-card {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 4px 14px;
  align-items: center;
  min-height: 126px;
  padding: 18px;
  border-radius: 18px;
  border: 1px solid var(--cfg-line);
  background: rgba(18, 35, 57, 0.72);
}

.ai-kpi-card small,
.ai-kpi-card em {
  color: var(--cfg-muted);
  font-style: normal;
}

.ai-kpi-card strong {
  color: #fff;
  font-size: 32px;
  line-height: 1;
}

.ai-kpi-icon {
  grid-row: span 3;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  font-size: 22px;
}

.ai-kpi-icon.blue { background: rgba(47, 109, 246, 0.20); color: #8eb2ff; }
.ai-kpi-icon.purple { background: rgba(155, 112, 255, 0.20); color: #c9b5ff; }
.ai-kpi-icon.green { background: rgba(54, 194, 117, 0.18); color: #89e6b0; }
.ai-kpi-icon.amber { background: rgba(245, 185, 66, 0.18); color: #ffd27a; }

.settings-ai-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 16px;
  align-items: start;
}

.settings-ai-layout.prompt-layout {
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
}

.ai-card-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 16px;
}

.ai-card-head.compact {
  align-items: baseline;
  margin-bottom: 10px;
}

.ai-card-head h3,
.settings-console-shell .panel-header h3,
.settings-console-shell .panel-header h2,
.settings-console-shell h3 {
  color: var(--cfg-text);
  margin: 4px 0 0;
  letter-spacing: -0.03em;
}

.ai-table-wrap {
  overflow-x: auto;
  margin: 0 -18px -18px;
}

.ai-production-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  color: var(--cfg-text);
}

.ai-production-table th,
.ai-production-table td {
  padding: 14px 18px;
  border-top: 1px solid var(--cfg-line);
  text-align: left;
  vertical-align: middle;
  font-size: 13px;
}

.ai-production-table th {
  color: var(--cfg-muted);
  font-weight: 900;
  background: rgba(255, 255, 255, 0.025);
}

.ai-production-table tbody tr:hover {
  background: rgba(47, 109, 246, 0.07);
}

.ai-agent-name {
  display: flex;
  align-items: center;
  gap: 10px;
}

.ai-agent-name strong,
.prompt-library-item strong,
.automation-event strong {
  display: block;
  color: #fff;
}

.ai-agent-name small,
.prompt-library-item small,
.automation-event small {
  display: block;
  margin-top: 2px;
}

.ai-agent-avatar {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(47, 109, 246, .35), rgba(91, 140, 255, .14));
  color: #dce8ff;
  display: grid;
  place-items: center;
  font-weight: 900;
  border: 1px solid rgba(129, 170, 255, .28);
}

.status-pill,
.model-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.status-pill::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: currentColor;
}

.status-pill.is-active { color: #8af0b8; background: rgba(54, 194, 117, 0.15); }
.status-pill.is-paused { color: #ffd27a; background: rgba(245, 185, 66, 0.15); }
.status-pill.is-draft { color: #b7c7de; background: rgba(157, 174, 198, 0.14); }
.status-pill.is-archived { color: #ff9f9f; background: rgba(255, 101, 101, 0.14); }
.model-chip { color: #aecdff; background: rgba(47, 109, 246, 0.18); }

.ai-side-stack {
  display: grid;
  gap: 14px;
  position: sticky;
  top: 24px;
}

.ai-quick-card,
.ai-usage-card,
.ai-list-card {
  display: grid;
  gap: 12px;
}

.usage-line {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 0;
  border-top: 1px solid var(--cfg-line);
  color: var(--cfg-muted);
}

.usage-line strong { color: #fff; font-size: 22px; }
.usage-bars { display: grid; gap: 10px; margin-top: 6px; }
.usage-bars div { display: grid; grid-template-columns: minmax(0, 1fr); gap: 5px; color: var(--cfg-muted); font-size: 12px; }
.usage-bars i { height: 6px; border-radius: 999px; background: rgba(255,255,255,.08); overflow: hidden; }
.usage-bars i::before { content: ''; display: block; width: var(--w); height: 100%; background: linear-gradient(90deg, var(--cfg-blue), var(--cfg-purple)); border-radius: inherit; }

.automation-event {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 10px 0;
  border-top: 1px solid var(--cfg-line);
}

.automation-event > span {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(54, 194, 117, .16);
  color: #8af0b8;
}

.ai-agent-builder {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 16px;
  align-items: start;
}

.ai-builder-main {
  padding: 20px;
}

.ai-builder-side {
  display: grid;
  gap: 14px;
  position: sticky;
  top: 24px;
}

.ai-builder-side textarea,
.settings-console-shell textarea,
.settings-console-shell input,
.settings-console-shell select {
  background: rgba(5, 14, 26, 0.74);
  border: 1px solid var(--cfg-line-strong);
  color: var(--cfg-text);
  border-radius: 12px;
}

.settings-console-shell select option {
  background: #0d1a2c;
  color: var(--cfg-text);
}

.settings-console-shell .field label {
  color: #dce8ff;
  font-weight: 900;
}

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

.ai-form-grid .full-width,
.settings-console-shell .full-width {
  grid-column: 1 / -1;
}

.form-section-title {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 18px 0 12px;
  margin-top: 8px;
  border-top: 1px solid var(--cfg-line);
}

.form-section-title:first-of-type {
  border-top: 0;
  padding-top: 4px;
}

.form-section-title > span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(47, 109, 246, .22);
  color: #aecdff;
  font-weight: 900;
}

.form-section-title strong { color: #fff; }
.form-section-title small { display: block; margin-top: 3px; }

.temperature-control {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.temperature-control input[type='range'] {
  accent-color: var(--cfg-blue);
  border: 0;
  padding: 0;
  background: transparent;
}

.ai-prompt-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: end;
  margin-bottom: 10px;
}

.ai-prompt-toolbar label {
  display: grid;
  gap: 6px;
  min-width: min(420px, 100%);
  color: var(--cfg-muted);
  font-weight: 800;
}

.ai-code-editor {
  width: 100%;
  min-height: 420px;
  padding: 16px 18px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  line-height: 1.6;
  resize: vertical;
  background: linear-gradient(180deg, rgba(4, 15, 29, 0.98), rgba(5, 18, 34, 0.92));
}

.ai-code-editor.compact {
  min-height: 520px;
}

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

.ai-output-option {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--cfg-line);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
}

.ai-output-option input {
  width: 18px;
  min-height: 18px;
  accent-color: var(--cfg-blue);
}

.ai-output-option strong { display: block; color: #fff; }
.ai-output-option small { display: block; }

.variable-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}

.variable-chip-list button {
  border: 1px solid var(--cfg-line);
  background: rgba(255, 255, 255, .055);
  color: #dbe8ff;
  border-radius: 999px;
  padding: 8px 10px;
  font-weight: 900;
}

.ai-sticky-actions {
  grid-column: 1 / -1;
  position: sticky;
  bottom: 14px;
  z-index: 5;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 14px;
  border: 1px solid var(--cfg-line);
  border-radius: 18px;
  background: rgba(9, 19, 34, 0.92);
  backdrop-filter: blur(18px);
}

.ai-edit-row {
  display: grid;
  grid-template-columns: 90px minmax(160px, 1fr) minmax(130px, .8fr) 120px auto;
  gap: 10px;
  align-items: center;
  padding: 12px 0;
  border-top: 1px solid var(--cfg-line);
}

.ai-edit-row.model-row {
  grid-template-columns: 110px minmax(130px, 1fr) minmax(150px, 1fr) 80px 90px 120px auto;
}

.prompt-library-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 14px 0;
  border-top: 1px solid var(--cfg-line);
}

.inside-workspace,
.inside-workspace-list {
  margin-top: 0;
}

.settings-console-shell .settings-premium-layout.inside-workspace {
  grid-template-columns: minmax(0, 1fr) 320px;
}

.settings-console-shell .settings-field-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-console-shell .settings-check-list.compact span,
.settings-console-shell .settings-check-list span {
  background: rgba(255, 255, 255, 0.055);
  color: var(--cfg-text);
  border: 1px solid var(--cfg-line);
}

.settings-placeholder-card {
  min-height: 360px;
  display: grid;
  align-content: start;
  gap: 16px;
  max-width: 860px;
}

@media (max-width: 1320px) {
  .settings-console-shell { grid-template-columns: 250px minmax(0, 1fr); }
  .ai-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settings-ai-layout,
  .settings-ai-layout.prompt-layout,
  .ai-agent-builder,
  .settings-console-shell .settings-premium-layout.inside-workspace { grid-template-columns: 1fr; }
  .ai-side-stack,
  .ai-builder-side,
  .settings-status-card { position: static; }
}

@media (max-width: 980px) {
  .settings-console-shell { grid-template-columns: 1fr; }
  .settings-config-nav { position: static; min-height: 0; }
  .settings-menu-list { max-height: none; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settings-ai-header { flex-direction: column; }
  .ai-form-grid,
  .settings-console-shell .settings-field-grid,
  .ai-output-options { grid-template-columns: 1fr; }
  .ai-edit-row,
  .ai-edit-row.model-row { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .settings-workspace { padding: 16px; border-radius: 18px; }
  .settings-menu-list { grid-template-columns: 1fr; }
  .ai-kpi-grid { grid-template-columns: 1fr; }
  .settings-local-tabs { display: grid; border-radius: 18px; }
  .ai-prompt-toolbar { flex-direction: column; align-items: stretch; }
  .ai-sticky-actions { position: static; }
}

/* ============================================================
   Ajustes CIRS - configurações sem itens Advbox e sem marca auxiliar
   Mantém o verde já existente do escritório.
   ============================================================ */
.rs-brand-card-textonly {
  display: block;
  padding: 6px 2px 18px;
}

.rs-brand-name-only,
.rs-topbar-brand-textonly strong {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #fff;
  font-weight: 900;
  font-size: 30px;
  line-height: 1;
  letter-spacing: -0.05em;
}

.rs-topbar-brand-textonly {
  display: inline-flex;
  align-items: center;
  gap: 0;
}

.settings-console-shell {
  --cfg-bg: var(--rs-page-bg);
  --cfg-panel: var(--rs-card-bg);
  --cfg-panel-2: #fbfaf6;
  --cfg-line: var(--rs-border-subtle);
  --cfg-line-strong: var(--rs-border-strong);
  --cfg-text: var(--rs-text-main);
  --cfg-muted: var(--rs-text-muted);
  --cfg-blue: var(--rs-green-950);
  --cfg-blue-2: var(--rs-green-950);
  --cfg-green: var(--rs-green-950);
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr);
  gap: 24px;
  color: var(--rs-text-main);
}

.settings-console-shell .panel-card,
.settings-console-shell .settings-premium-card,
.settings-console-shell .settings-status-card,
.settings-console-shell .settings-field-card,
.settings-console-shell .settings-catalog-card {
  background: var(--rs-card-bg);
  border: 1px solid var(--rs-border-subtle);
  color: var(--rs-text-main);
  box-shadow: var(--rs-shadow-panel);
}

.settings-config-nav {
  min-height: calc(100vh - 108px);
  padding: 28px;
  border-radius: 24px;
  background: var(--rs-card-bg);
  border: 1px solid var(--rs-border-subtle);
  box-shadow: var(--rs-shadow-panel);
}

.settings-config-head h1,
.settings-ai-header h2,
.settings-page-header h2,
.settings-placeholder-card h2 {
  color: var(--rs-text-main);
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.04;
  letter-spacing: -0.05em;
}

.settings-console-shell .eyebrow,
.settings-breadcrumb {
  color: var(--rs-green-950);
  letter-spacing: .16em;
}

.icon-only-button,
.settings-search-box,
.settings-inline-search {
  background: var(--rs-field-bg);
  border-color: var(--rs-border-subtle);
  color: var(--rs-text-muted);
}

.settings-search-box input,
.settings-inline-search input,
.settings-console-shell textarea,
.settings-console-shell input,
.settings-console-shell select {
  background: var(--rs-field-bg);
  border-color: var(--rs-border-subtle);
  color: var(--rs-text-main);
}

.settings-search-box input::placeholder,
.settings-inline-search input::placeholder,
.settings-console-shell input::placeholder,
.settings-console-shell textarea::placeholder {
  color: rgba(95, 107, 100, .58);
}

.settings-menu-list {
  gap: 10px;
  max-height: none;
  overflow: visible;
}

.settings-menu-list a {
  min-height: 54px;
  color: var(--rs-text-main);
  font-size: 15px;
  border-color: transparent;
}

.settings-menu-list a:hover,
.settings-menu-list a.active {
  background: #f0efe8;
  border-color: var(--rs-border-subtle);
  color: var(--rs-green-950);
}

.settings-menu-list a.active {
  box-shadow: inset 4px 0 0 var(--rs-green-950);
}

.settings-menu-icon {
  color: var(--rs-green-950);
}

.settings-workspace {
  min-height: calc(100vh - 108px);
  padding: clamp(26px, 3vw, 42px);
  border: 1px solid var(--rs-border-subtle);
  border-radius: 28px;
  background: var(--rs-card-bg);
  color: var(--rs-text-main);
  box-shadow: var(--rs-shadow-panel);
  overflow: visible;
}

.settings-ai-header,
.settings-page-header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-start;
  margin-bottom: 24px;
}

.settings-ai-header p,
.settings-page-header p,
.settings-placeholder-card p,
.settings-console-shell .helper-text,
.settings-console-shell small,
.settings-console-shell .settings-catalog-card-head p,
.settings-console-shell .settings-card p,
.settings-catalog-card p {
  color: var(--rs-text-muted);
}

.settings-console-shell .primary-button,
.settings-console-shell button.primary-button,
.settings-console-shell a.primary-button {
  background: var(--rs-green-950);
  border-color: var(--rs-green-950);
  color: #fff;
  box-shadow: 0 10px 22px rgba(17, 31, 25, .12);
}

.settings-console-shell .ghost-button,
.settings-console-shell button.ghost-button,
.settings-console-shell a.ghost-button {
  background: #f2f1ec;
  border-color: #deddd4;
  color: var(--rs-green-950);
}

.settings-console-shell .danger-button,
.settings-console-shell button.danger-button,
.settings-console-shell a.danger-button {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(157, 47, 47, .20);
  color: var(--error-text);
  background: var(--error-bg);
}

.settings-users-grid {
  display: grid;
  grid-template-columns: minmax(340px, .82fr) minmax(520px, 1.18fr);
  gap: 18px;
  align-items: start;
}

.settings-user-form-card,
.settings-users-list-card,
.settings-nucleus-form-card {
  padding: 24px;
}

.settings-user-form-card .panel-header,
.settings-users-list-card .panel-header,
.settings-nucleus-form-card .panel-header {
  margin-bottom: 18px;
}

.settings-user-form-card h3,
.settings-users-list-card h3,
.settings-section-title h3,
.settings-nucleus-form-card h3,
.settings-catalog-card h3 {
  color: var(--rs-text-main);
  margin: 4px 0 0;
}

.settings-users-card-list {
  display: grid;
  gap: 12px;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--rs-border-subtle);
  border-radius: 18px;
  background: #fff;
}

.settings-user-row-card strong,
.settings-user-row-card p {
  color: var(--rs-text-main);
}

.settings-user-row-card p {
  color: var(--rs-text-muted);
}

.settings-console-shell .permission-card {
  background: #fff;
  border-color: var(--rs-border-subtle);
  color: var(--rs-text-main);
}

.settings-console-shell input[type='checkbox'] {
  accent-color: var(--rs-green-950);
}

.settings-nucleus-form {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-section-title {
  margin: 28px 0 12px;
}

.settings-section-title h3 {
  font-size: 20px;
}

.settings-section-title p {
  margin: 4px 0 0;
  color: var(--rs-text-muted);
}

.settings-nuclei-list {
  display: grid;
  gap: 14px;
}

.settings-nucleus-row {
  padding: 22px;
}

.settings-catalog-card-head {
  align-items: center;
}

.settings-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.settings-catalog-columns {
  gap: 16px;
  margin-top: 16px;
}

.settings-inline-check {
  color: var(--rs-text-main);
}

.ai-kpi-card,
.ai-table-card,
.ai-quick-card,
.ai-usage-card,
.ai-list-card,
.ai-builder-main,
.ai-builder-side .panel-card {
  background: var(--rs-card-bg);
  color: var(--rs-text-main);
  border-color: var(--rs-border-subtle);
}

.ai-agent-name strong,
.prompt-library-item strong,
.automation-event strong,
.usage-line strong,
.form-section-title strong {
  color: var(--rs-text-main);
}

.ai-production-table,
.ai-production-table th,
.ai-production-table td {
  color: var(--rs-text-main);
  border-color: var(--rs-border-subtle);
}

.ai-production-table th {
  color: var(--rs-text-muted);
  background: #f6f5ef;
}

.settings-local-tabs {
  background: #f0efe8;
}

.settings-local-tabs a {
  color: var(--rs-text-muted);
}

.settings-local-tabs a.active {
  background: var(--rs-green-950);
  color: #fff;
}

@media (max-width: 1320px) {
  .settings-users-grid { grid-template-columns: 1fr; }
  .settings-user-row-card { grid-template-columns: 1fr; }
}

@media (max-width: 980px) {
  .settings-console-shell { grid-template-columns: 1fr; }
  .settings-config-nav { min-height: 0; }
  .settings-menu-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settings-ai-header,
  .settings-page-header { flex-direction: column; }
  .settings-nucleus-form { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .settings-menu-list { grid-template-columns: 1fr; }
}

/* ============================================================
   Correção final CIRS - Configurações limpas e legíveis
   Sem mudar o verde original do sistema.
   ============================================================ */
.settings-console-shell {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  color: var(--rs-green-950);
}

.settings-config-nav {
  position: sticky;
  top: 28px;
  min-height: 620px;
  height: auto;
  padding: 24px;
  border-radius: 22px;
  background: rgba(255, 255, 252, .94);
  border: 1px solid rgba(17, 31, 25, .10);
  box-shadow: 0 18px 45px rgba(17, 31, 25, .08);
  color: var(--rs-green-950);
}

.settings-config-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 12px;
  align-items: start;
  margin-bottom: 18px;
}

.settings-config-head h1 {
  font-family: var(--font-sans);
  font-size: 34px;
  line-height: .98;
  letter-spacing: -.055em;
  margin: 6px 0 0;
  color: var(--rs-green-950);
}

.settings-console-shell .eyebrow,
.settings-breadcrumb {
  display: block;
  color: var(--rs-green-950);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  line-height: 1.2;
  text-transform: uppercase;
  opacity: .84;
}

.settings-search-box {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  min-height: 48px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid rgba(17, 31, 25, .12);
  background: #fff;
  color: rgba(17, 31, 25, .58);
}

.settings-search-box input {
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: var(--rs-green-950);
}

.settings-menu-list {
  display: grid;
  gap: 10px;
  margin-top: 22px;
  padding: 0;
  max-height: none;
  overflow: visible;
}

.settings-menu-list a {
  min-height: 54px;
  padding: 0 14px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border-radius: 14px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--rs-green-950);
  font-size: 14px;
  font-weight: 900;
  box-shadow: none;
}

.settings-menu-list a:hover,
.settings-menu-list a.active {
  color: var(--rs-green-950);
  background: rgba(190, 191, 168, .20);
  border-color: rgba(17, 31, 25, .08);
}

.settings-menu-list a.active {
  box-shadow: inset 4px 0 0 var(--rs-green-950);
}

.settings-menu-icon {
  width: 26px;
  height: 26px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  color: var(--rs-green-950);
  background: rgba(17, 31, 25, .06);
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
  opacity: 1;
}

.settings-menu-icon-users::before { content: 'US'; }
.settings-menu-icon-ia::before { content: 'IA'; }
.settings-menu-icon-goals::before { content: 'M'; }
.settings-menu-icon-nuclei::before { content: 'N'; }

.settings-workspace {
  min-height: 0;
  padding: 8px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  color: var(--rs-green-950);
}

.settings-page-header,
.settings-ai-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 22px;
  margin: 0 0 24px;
  padding: 0;
}

.settings-page-header-copy {
  min-width: 0;
}

.settings-page-header h2,
.settings-ai-header h2 {
  font-family: var(--font-sans);
  color: var(--rs-green-950);
  font-size: clamp(34px, 3.2vw, 52px);
  line-height: 1.02;
  letter-spacing: -.06em;
  margin: 14px 0 10px;
}

.settings-page-header p,
.settings-ai-header p {
  max-width: 720px;
  margin: 0;
  color: var(--rs-muted);
  font-size: 15px;
  line-height: 1.65;
}

.settings-header-actions {
  flex: 0 0 auto;
  padding-top: 12px;
}

.settings-console-shell .panel-card,
.settings-user-form-card,
.settings-users-list-card,
.settings-nucleus-form-card,
.settings-placeholder-card,
.settings-catalog-card,
.ai-kpi-card,
.ai-table-card,
.ai-quick-card,
.ai-usage-card,
.ai-list-card,
.ai-builder-main,
.ai-builder-side .panel-card {
  background: rgba(255, 255, 252, .94);
  border: 1px solid rgba(17, 31, 25, .10);
  color: var(--rs-green-950);
  box-shadow: 0 18px 45px rgba(17, 31, 25, .075);
}

.settings-users-grid {
  display: grid;
  grid-template-columns: minmax(390px, .82fr) minmax(500px, 1.18fr);
  gap: 18px;
  align-items: start;
  max-width: 1180px;
}

.settings-user-form-card,
.settings-users-list-card,
.settings-nucleus-form-card {
  border-radius: 22px;
  padding: 22px;
}

.settings-user-form-card .panel-header,
.settings-users-list-card .panel-header,
.settings-nucleus-form-card .panel-header {
  margin-bottom: 18px;
}

.settings-user-form-card h3,
.settings-users-list-card h3,
.settings-section-title h3,
.settings-nucleus-form-card h3,
.settings-catalog-card h3 {
  color: var(--rs-green-950);
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: -.03em;
  margin: 4px 0 0;
}

.settings-console-shell .form-grid {
  gap: 14px;
}

.settings-console-shell .field label,
.settings-console-shell .checkbox-inline label,
.settings-inline-check,
.premium-permissions-fieldset legend {
  color: var(--rs-green-950);
  font-weight: 900;
  opacity: 1;
}

.settings-console-shell input,
.settings-console-shell select,
.settings-console-shell textarea {
  min-height: 46px;
  border: 1px solid rgba(17, 31, 25, .13);
  background: #fff;
  color: var(--rs-green-950);
  border-radius: 14px;
  box-shadow: none;
}

.settings-console-shell input::placeholder,
.settings-console-shell textarea::placeholder {
  color: rgba(95, 107, 100, .58);
}

.premium-permissions-fieldset {
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 18px;
  padding: 18px;
  background: rgba(255, 255, 255, .52);
}

.premium-permissions-fieldset .helper-text {
  color: var(--rs-muted);
  font-size: 13px;
  line-height: 1.55;
  margin: 4px 0 14px;
}

.settings-console-shell .premium-permissions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 0;
}

.settings-console-shell .permission-card {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(17, 31, 25, .11);
  border-radius: 14px;
  background: #fff;
  color: var(--rs-green-950);
  font-weight: 900;
  opacity: 1;
}

.settings-console-shell .permission-card span {
  color: var(--rs-green-950);
  opacity: 1;
}

.settings-console-shell input[type='checkbox'] {
  width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  accent-color: var(--rs-green-950);
}

.settings-users-card-list {
  display: grid;
  gap: 12px;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(235px, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 22px rgba(17, 31, 25, .045);
}

.settings-user-row-card .profile-row {
  min-width: 0;
}

.settings-user-row-card .avatar {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 14px;
  background: var(--rs-green-950);
  color: #fff;
  border: 0;
  box-shadow: none;
  font-size: 13px;
  font-weight: 900;
}

.settings-user-row-card strong {
  color: var(--rs-green-950);
  display: block;
  font-weight: 900;
  line-height: 1.2;
}

.settings-user-row-card p {
  color: var(--rs-muted);
  margin: 3px 0 0;
  line-height: 1.35;
  word-break: break-word;
}

.settings-user-row-card .pill {
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: #f2f1ec;
  color: var(--rs-green-950);
  font-size: 11px;
  font-weight: 900;
}

.settings-user-row-card .pill-success {
  background: var(--success-bg);
  color: var(--success-text);
  border-color: rgba(37, 92, 57, .14);
}

.settings-console-shell .primary-button,
.settings-console-shell button.primary-button,
.settings-console-shell a.primary-button {
  min-height: 44px;
  padding: 0 18px;
  border-radius: 13px;
  background: var(--rs-green-950);
  border: 1px solid var(--rs-green-950);
  color: #fff;
  box-shadow: 0 12px 26px rgba(17, 31, 25, .14);
  font-weight: 900;
}

.settings-console-shell .ghost-button,
.settings-console-shell button.ghost-button,
.settings-console-shell a.ghost-button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(17, 31, 25, .10);
  background: #f2f1ec;
  color: var(--rs-green-950);
  box-shadow: none;
  font-weight: 900;
}

.settings-console-shell .danger-button,
.settings-console-shell button.danger-button,
.settings-console-shell a.danger-button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(157, 47, 47, .22);
  background: var(--error-bg);
  color: var(--error-text);
  box-shadow: none;
  font-weight: 900;
}

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

.settings-nuclei-list,
.settings-area-list {
  max-width: 1180px;
}

.settings-catalog-card.settings-nucleus-row {
  border-radius: 20px;
  padding: 20px;
}

.settings-catalog-card-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.settings-catalog-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
  margin-top: 16px;
}

.settings-placeholder-card {
  min-height: 0;
  max-width: 760px;
  border-radius: 22px;
  padding: 22px;
}

.settings-check-list span {
  background: rgba(190, 191, 168, .18);
  color: var(--rs-green-950);
  border: 1px solid rgba(17, 31, 25, .08);
}

@media (max-width: 1420px) {
  .settings-console-shell {
    grid-template-columns: 260px minmax(0, 1fr);
  }
  .settings-users-grid {
    grid-template-columns: minmax(360px, .85fr) minmax(470px, 1.15fr);
  }
  .settings-user-row-card {
    grid-template-columns: 1fr;
  }
  .user-row-meta,
  .user-row-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 1180px) {
  .settings-users-grid,
  .settings-catalog-columns {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .settings-console-shell {
    grid-template-columns: 1fr;
  }
  .settings-config-nav {
    position: static;
    min-height: 0;
  }
  .settings-menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .settings-page-header,
  .settings-ai-header {
    flex-direction: column;
  }
}

@media (max-width: 620px) {
  .settings-menu-list,
  .settings-console-shell .premium-permissions-grid,
  .settings-nucleus-form {
    grid-template-columns: 1fr;
  }
}

/* Ajuste de largura para caber bem com ou sem a barra lateral principal. */
.settings-users-grid {
  grid-template-columns: minmax(360px, .82fr) minmax(440px, 1.18fr);
}

@media (max-width: 1320px) {
  .settings-users-grid {
    grid-template-columns: 1fr;
  }
}

/* ============================================================
   CIRS - correção definitiva do módulo Configurações
   Mantém o verde original e neutraliza conflitos de tema claro/escuro.
   ============================================================ */
.settings-console-shell {
  --cirs-config-green: var(--dark, #111f19);
  --cirs-config-bg: #f6f5ef;
  --cirs-config-card: #fffffc;
  --cirs-config-card-soft: #f2f1ec;
  --cirs-config-text: #0d2119;
  --cirs-config-muted: #667269;
  --cirs-config-line: rgba(17, 31, 25, .11);
  --cirs-config-shadow: 0 18px 44px rgba(17, 31, 25, .08);
  width: min(1480px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  color: var(--cirs-config-text);
}

.settings-console-shell *,
.settings-console-shell *::before,
.settings-console-shell *::after {
  box-sizing: border-box;
}

.settings-config-nav {
  position: sticky;
  top: 24px;
  min-height: 0;
  height: auto;
  padding: 24px;
  border-radius: 22px;
  background: var(--cirs-config-card);
  border: 1px solid var(--cirs-config-line);
  box-shadow: var(--cirs-config-shadow);
  color: var(--cirs-config-text);
  overflow: hidden;
}

.settings-config-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 12px;
  align-items: start;
  margin: 0 0 18px;
}

.settings-config-head h1 {
  max-width: 100%;
  margin: 6px 0 0;
  color: var(--cirs-config-text);
  font-family: var(--font-sans);
  font-size: 34px;
  line-height: 1;
  letter-spacing: -.055em;
  overflow-wrap: anywhere;
}

.settings-console-shell .eyebrow,
.settings-console-shell .settings-breadcrumb {
  color: var(--cirs-config-text);
  opacity: .78;
}

.settings-config-head .icon-only-button {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 12px;
  background: var(--cirs-config-card);
  border: 1px solid var(--cirs-config-line);
  color: var(--cirs-config-green);
  box-shadow: none;
}

.settings-search-box,
.settings-inline-search {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  min-height: 48px;
  width: 100%;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid var(--cirs-config-line);
  background: #fff;
  color: var(--cirs-config-muted);
  box-shadow: none;
}

.settings-search-box input,
.settings-inline-search input {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--cirs-config-text);
  box-shadow: none;
}

.settings-menu-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  max-height: none;
  overflow: visible;
}

.settings-menu-list a {
  width: 100%;
  min-height: 54px;
  padding: 0 14px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border-radius: 14px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--cirs-config-text);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  opacity: 1;
  box-shadow: none;
}

.settings-menu-list a span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-menu-list a:hover,
.settings-menu-list a.active {
  background: rgba(190, 191, 168, .22);
  border-color: var(--cirs-config-line);
  color: var(--cirs-config-green);
}

.settings-menu-list a.active {
  box-shadow: inset 4px 0 0 var(--cirs-config-green);
}

.settings-menu-icon {
  width: 26px;
  height: 26px;
  min-width: 26px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(17, 31, 25, .06);
  color: var(--cirs-config-green);
  font-size: 10px;
  font-weight: 950;
  opacity: 1;
}

.settings-workspace {
  min-width: 0;
  min-height: 0;
  padding: 6px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--cirs-config-text);
  overflow: visible;
}

.settings-page-header,
.settings-ai-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 22px;
  margin: 0 0 24px;
  padding: 0;
}

.settings-page-header h2,
.settings-ai-header h2 {
  margin: 12px 0 10px;
  color: var(--cirs-config-text);
  font-size: clamp(34px, 3.2vw, 52px);
  line-height: 1.02;
  letter-spacing: -.06em;
}

.settings-page-header p,
.settings-ai-header p,
.settings-console-shell .helper-text,
.settings-console-shell small,
.settings-console-shell p {
  color: var(--cirs-config-muted);
}

.settings-users-grid {
  width: 100%;
  max-width: 1180px;
  display: grid;
  grid-template-columns: minmax(360px, .86fr) minmax(520px, 1.14fr);
  gap: 18px;
  align-items: start;
}

.settings-console-shell .panel-card,
.settings-console-shell .premium-panel,
.settings-user-form-card,
.settings-users-list-card,
.settings-nucleus-form-card,
.settings-placeholder-card,
.settings-catalog-card,
.ai-kpi-card,
.ai-table-card,
.ai-quick-card,
.ai-usage-card,
.ai-list-card,
.ai-builder-main,
.ai-builder-side .panel-card {
  background: var(--cirs-config-card);
  border: 1px solid var(--cirs-config-line);
  color: var(--cirs-config-text);
  box-shadow: var(--cirs-config-shadow);
}

.settings-user-form-card,
.settings-users-list-card,
.settings-nucleus-form-card,
.settings-placeholder-card {
  border-radius: 22px;
  padding: 22px;
}

.settings-console-shell h1,
.settings-console-shell h2,
.settings-console-shell h3,
.settings-console-shell h4,
.settings-console-shell strong,
.settings-console-shell label,
.settings-console-shell legend,
.settings-console-shell .panel-header h3,
.settings-console-shell .panel-header h2 {
  color: var(--cirs-config-text);
  opacity: 1;
}

.settings-console-shell input,
.settings-console-shell select,
.settings-console-shell textarea {
  min-width: 0;
  min-height: 46px;
  border: 1px solid var(--cirs-config-line);
  background: #fff;
  color: var(--cirs-config-text);
  border-radius: 14px;
  box-shadow: none;
}

.settings-console-shell input::placeholder,
.settings-console-shell textarea::placeholder {
  color: rgba(95, 107, 100, .62);
}

.premium-permissions-fieldset {
  border: 1px solid var(--cirs-config-line);
  border-radius: 18px;
  padding: 18px;
  background: rgba(255, 255, 255, .58);
}

.settings-console-shell .premium-permissions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.settings-console-shell .permission-card {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--cirs-config-line);
  border-radius: 14px;
  background: #fff;
  color: var(--cirs-config-text);
  font-weight: 900;
  opacity: 1;
}

.settings-console-shell .permission-card span {
  color: var(--cirs-config-text);
  opacity: 1;
}

.settings-users-card-list {
  display: grid;
  gap: 12px;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(250px, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid var(--cirs-config-line);
  border-radius: 18px;
  background: #fff;
  color: var(--cirs-config-text);
  box-shadow: 0 10px 22px rgba(17, 31, 25, .045);
}

.settings-user-row-card .profile-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.settings-user-row-card .profile-row > div {
  min-width: 0;
}

.settings-user-row-card p {
  margin: 3px 0 0;
  color: var(--cirs-config-muted);
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.settings-user-row-card .avatar {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 14px;
  background: var(--cirs-config-green);
  color: #fff;
}

.settings-user-row-card .pill {
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  background: var(--cirs-config-card-soft);
  color: var(--cirs-config-text);
  border: 1px solid var(--cirs-config-line);
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.settings-user-row-card .pill-success {
  background: var(--success-bg);
  color: var(--success-text);
}

.settings-console-shell .primary-button,
.settings-console-shell button.primary-button,
.settings-console-shell a.primary-button {
  min-height: 44px;
  padding: 0 18px;
  border-radius: 13px;
  background: var(--cirs-config-green);
  border: 1px solid var(--cirs-config-green);
  color: #fff;
  box-shadow: 0 12px 26px rgba(17, 31, 25, .14);
  font-weight: 900;
}

.settings-console-shell .ghost-button,
.settings-console-shell button.ghost-button,
.settings-console-shell a.ghost-button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid var(--cirs-config-line);
  background: var(--cirs-config-card-soft);
  color: var(--cirs-config-green);
  box-shadow: none;
  font-weight: 900;
}

.settings-console-shell .danger-button,
.settings-console-shell button.danger-button,
.settings-console-shell a.danger-button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(157, 47, 47, .22);
  background: var(--error-bg);
  color: var(--error-text);
  box-shadow: none;
  font-weight: 900;
}

/* Modo escuro: mesmo verde original, mas com contraste correto. */
html[data-theme='dark'] .settings-console-shell {
  --cirs-config-bg: #0b130f;
  --cirs-config-card: #111d17;
  --cirs-config-card-soft: rgba(237, 241, 234, .08);
  --cirs-config-text: #edf1ea;
  --cirs-config-muted: #aab7ae;
  --cirs-config-line: rgba(237, 241, 234, .14);
  --cirs-config-shadow: 0 18px 44px rgba(0, 0, 0, .22);
  color: var(--cirs-config-text);
}

html[data-theme='dark'] .settings-config-nav,
html[data-theme='dark'] .settings-console-shell .panel-card,
html[data-theme='dark'] .settings-console-shell .premium-panel,
html[data-theme='dark'] .settings-user-form-card,
html[data-theme='dark'] .settings-users-list-card,
html[data-theme='dark'] .settings-nucleus-form-card,
html[data-theme='dark'] .settings-placeholder-card,
html[data-theme='dark'] .settings-catalog-card,
html[data-theme='dark'] .ai-kpi-card,
html[data-theme='dark'] .ai-table-card,
html[data-theme='dark'] .ai-quick-card,
html[data-theme='dark'] .ai-usage-card,
html[data-theme='dark'] .ai-list-card,
html[data-theme='dark'] .ai-builder-main,
html[data-theme='dark'] .ai-builder-side .panel-card {
  background: var(--cirs-config-card);
  border-color: var(--cirs-config-line);
  color: var(--cirs-config-text);
  box-shadow: var(--cirs-config-shadow);
}

html[data-theme='dark'] .settings-menu-list a,
html[data-theme='dark'] .settings-config-head h1,
html[data-theme='dark'] .settings-page-header h2,
html[data-theme='dark'] .settings-ai-header h2,
html[data-theme='dark'] .settings-console-shell h1,
html[data-theme='dark'] .settings-console-shell h2,
html[data-theme='dark'] .settings-console-shell h3,
html[data-theme='dark'] .settings-console-shell h4,
html[data-theme='dark'] .settings-console-shell strong,
html[data-theme='dark'] .settings-console-shell label,
html[data-theme='dark'] .settings-console-shell legend {
  color: var(--cirs-config-text);
  opacity: 1;
}

html[data-theme='dark'] .settings-menu-list a:hover,
html[data-theme='dark'] .settings-menu-list a.active {
  background: rgba(237, 241, 234, .10);
  border-color: rgba(237, 241, 234, .16);
  color: #fff;
}

html[data-theme='dark'] .settings-menu-icon {
  background: rgba(237, 241, 234, .10);
  color: #fff;
}

html[data-theme='dark'] .settings-search-box,
html[data-theme='dark'] .settings-inline-search,
html[data-theme='dark'] .settings-console-shell input,
html[data-theme='dark'] .settings-console-shell select,
html[data-theme='dark'] .settings-console-shell textarea {
  background: #0d1813;
  border-color: rgba(237, 241, 234, .16);
  color: var(--cirs-config-text);
}

html[data-theme='dark'] .settings-search-box input,
html[data-theme='dark'] .settings-inline-search input {
  background: transparent;
  border: 0;
  color: var(--cirs-config-text);
}

html[data-theme='dark'] .premium-permissions-fieldset {
  background: rgba(237, 241, 234, .04);
  border-color: rgba(237, 241, 234, .14);
}

html[data-theme='dark'] .settings-console-shell .permission-card,
html[data-theme='dark'] .settings-user-row-card {
  background: #0d1813;
  border-color: rgba(237, 241, 234, .14);
  color: var(--cirs-config-text);
}

html[data-theme='dark'] .settings-console-shell .permission-card span,
html[data-theme='dark'] .settings-user-row-card p,
html[data-theme='dark'] .settings-page-header p,
html[data-theme='dark'] .settings-ai-header p,
html[data-theme='dark'] .settings-console-shell .helper-text,
html[data-theme='dark'] .settings-console-shell small {
  color: var(--cirs-config-muted);
}

html[data-theme='dark'] .settings-user-row-card .pill {
  background: rgba(237, 241, 234, .08);
  color: #edf1ea;
  border-color: rgba(237, 241, 234, .12);
}

html[data-theme='dark'] .settings-user-row-card .pill-success {
  background: rgba(37, 92, 57, .24);
  color: #9ee4b5;
}

html[data-theme='dark'] .settings-console-shell .ghost-button,
html[data-theme='dark'] .settings-console-shell button.ghost-button,
html[data-theme='dark'] .settings-console-shell a.ghost-button {
  background: rgba(237, 241, 234, .08);
  border-color: rgba(237, 241, 234, .14);
  color: #edf1ea;
}

html[data-theme='dark'] .settings-console-shell .primary-button,
html[data-theme='dark'] .settings-console-shell button.primary-button,
html[data-theme='dark'] .settings-console-shell a.primary-button {
  background: var(--dark, #111f19);
  border-color: rgba(237, 241, 234, .20);
  color: #fff;
}

@media (max-width: 1420px) {
  .settings-users-grid {
    grid-template-columns: 1fr;
    max-width: 980px;
  }
  .settings-user-row-card {
    grid-template-columns: minmax(250px, 1fr) auto auto;
  }
}

@media (max-width: 1080px) {
  .settings-console-shell {
    grid-template-columns: 1fr;
  }
  .settings-config-nav {
    position: static;
  }
  .settings-menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .settings-page-header,
  .settings-ai-header {
    flex-direction: column;
  }
  .settings-user-row-card {
    grid-template-columns: 1fr;
  }
  .settings-console-shell .premium-permissions-grid,
  .settings-menu-list {
    grid-template-columns: 1fr;
  }
}


/* Ajustes solicitados em Contratos e Anexos + retorno de Integrações e API */
.settings-menu-icon-integrations::before { content: 'API'; }

.document-check-card span small { display: block; }
.document-check-card span {
  display: flex;
  align-items: center;
  min-width: 0;
}
.document-check-card span strong {
  display: block;
  color: var(--text, #111f19);
  font-weight: 900;
  line-height: 1.15;
}


/* Correcoes estruturais da pagina de Configuracoes */
.settings-page-intro {
  margin-bottom: 18px;
}

.settings-page-intro .settings-console-hero-copy {
  max-width: 820px;
}

.settings-page-intro-actions {
  align-self: flex-start;
}

.settings-console-summary-row {
  display: grid;
  grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  margin-bottom: 22px;
}

.settings-search-box-hero {
  min-height: 100%;
}

.settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-highlight-card {
  min-height: 0;
}

.settings-menu-icon {
  font-size: 10px;
  letter-spacing: .04em;
}

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

.settings-rule-card {
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(17, 31, 25, .1);
  background: rgba(255, 255, 255, .7);
}

.settings-rule-card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 1rem;
  color: var(--cirs-config-green);
}

.settings-rule-card p {
  margin: 0;
}

@media (max-width: 1080px) {
  .settings-console-summary-row {
    grid-template-columns: 1fr;
  }

  .settings-hero-highlights {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .settings-hero-highlights,
  .settings-rules-grid {
    grid-template-columns: 1fr;
  }
}

.settings-menu-icon::before { content: none; }

/* ===== 05-pages/settings-nuclei.css ===== */
/* === Núcleos: visual profissional e gestão documental === */
.settings-nuclei-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.settings-nuclei-kpi-card {
  display: grid;
  gap: 6px;
  padding: 18px 20px;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 245, 239, 0.98));
}

.settings-nuclei-kpi-card strong {
  font-size: 34px;
  line-height: 1;
  color: var(--dark);
  letter-spacing: -0.04em;
}

.settings-nuclei-kpi-card span:not(.eyebrow) {
  color: var(--text);
  font-weight: 800;
}

.settings-nuclei-kpi-card small {
  color: var(--muted);
  line-height: 1.45;
}

.settings-nucleus-create-card,
.settings-nuclei-toolbar,
.settings-nucleus-card {
  border-radius: 22px;
  overflow: hidden;
}

.settings-disclosure {
  display: block;
}

.settings-disclosure > summary {
  list-style: none;
  cursor: pointer;
}

.settings-disclosure > summary::-webkit-details-marker {
  display: none;
}

.settings-disclosure-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.settings-disclosure-summary h3 {
  margin: 4px 0 4px;
  font-size: 22px;
}

.settings-disclosure-summary p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.settings-disclosure-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, 0.08);
  background: rgba(17, 31, 25, 0.04);
  color: var(--dark);
  font-weight: 800;
  white-space: nowrap;
}

.settings-disclosure[open] .settings-disclosure-toggle {
  background: rgba(17, 31, 25, 0.08);
}

.settings-nucleus-form-enhanced {
  margin-top: 18px;
}

.settings-nuclei-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 18px 0;
  padding: 16px 18px;
  border: 1px solid rgba(17, 31, 25, 0.08);
  background: rgba(255, 255, 255, 0.92);
}

.settings-nuclei-toolbar-main {
  display: grid;
  gap: 8px;
  flex: 1;
}

.settings-nuclei-toolbar-main p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.settings-toolbar-search {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 14px;
  border-radius: 16px;
  border: 1px solid rgba(17, 31, 25, 0.1);
  background: #ffffff;
}

.settings-toolbar-search span {
  color: var(--muted);
  font-weight: 800;
}

.settings-toolbar-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.settings-toolbar-filters {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.settings-filter-chip {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, 0.1);
  background: rgba(17, 31, 25, 0.03);
  color: var(--dark);
  font-weight: 800;
  cursor: pointer;
}

.settings-filter-chip.is-active {
  background: var(--dark);
  color: var(--white);
  border-color: var(--dark);
}

.settings-section-title-inline {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  margin-top: 6px;
}

.settings-inline-order-note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(17, 31, 25, 0.07);
  color: var(--dark);
  font-weight: 800;
  font-size: 13px;
  white-space: nowrap;
}

.settings-nucleus-card {
  padding: 0;
  border: 1px solid rgba(17, 31, 25, 0.08);
}

.settings-nucleus-summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px;
}

.settings-nucleus-summary-main {
  display: grid;
  gap: 12px;
  min-width: 0;
  flex: 1;
}

.settings-nucleus-title-wrap h3 {
  margin: 4px 0 6px;
  font-size: 22px;
  line-height: 1.15;
}

.settings-nucleus-title-wrap p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.settings-nucleus-tags {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.settings-tag,
.settings-subject-chip {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(17, 31, 25, 0.05);
  border: 1px solid rgba(17, 31, 25, 0.08);
  color: var(--dark);
  font-weight: 700;
  font-size: 13px;
}

.settings-tag.subject,
.settings-subject-chip {
  background: rgba(17, 31, 25, 0.075);
}

.settings-tag.muted {
  background: rgba(17, 31, 25, 0.035);
  color: var(--muted);
}

.settings-nucleus-summary-side {
  display: grid;
  justify-items: end;
  gap: 10px;
  min-width: 150px;
}

.settings-nucleus-summary-metric {
  display: grid;
  gap: 4px;
  min-width: 120px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(17, 31, 25, 0.04);
  text-align: right;
}

.settings-nucleus-summary-metric small {
  color: var(--muted);
}

.settings-nucleus-summary-metric strong {
  font-size: 26px;
  line-height: 1;
  color: var(--dark);
}

.settings-disclosure-icon {
  font-size: 18px;
  color: var(--muted);
  transition: transform 0.18s ease;
}

.settings-nucleus-disclosure[open] .settings-disclosure-icon {
  transform: rotate(180deg);
}

.settings-nucleus-body {
  padding: 0 22px 22px;
  border-top: 1px solid rgba(17, 31, 25, 0.08);
}

.settings-catalog-columns-nuclei {
  margin-top: 18px;
}

.settings-nucleus-panel {
  display: grid;
  gap: 14px;
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(17, 31, 25, 0.08);
  background: rgba(255, 255, 255, 0.74);
}

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

.settings-nucleus-panel-head h4 {
  margin: 4px 0 0;
  font-size: 20px;
  line-height: 1.2;
}

.settings-nucleus-panel-head p {
  margin: 0;
  max-width: 300px;
  color: var(--muted);
  text-align: right;
  line-height: 1.5;
}

.settings-subject-preview-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.settings-subject-empty {
  width: 100%;
  padding: 14px;
  border-radius: 14px;
  border: 1px dashed rgba(17, 31, 25, 0.14);
  color: var(--muted);
  background: rgba(17, 31, 25, 0.03);
  line-height: 1.5;
}

.settings-nucleus-panel-form {
  gap: 12px;
}

.settings-nucleus-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(17, 31, 25, 0.08);
}

.settings-foot-note {
  color: var(--muted);
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .settings-nuclei-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .settings-nuclei-toolbar,
  .settings-section-title-inline,
  .settings-nucleus-summary,
  .settings-nucleus-panel-head,
  .settings-nucleus-foot {
    flex-direction: column;
    align-items: stretch;
  }

  .settings-nucleus-summary-side,
  .settings-nucleus-panel-head p {
    justify-items: start;
    text-align: left;
    max-width: none;
  }

  .settings-inline-order-note {
    white-space: normal;
  }
}

@media (max-width: 860px) {
  .settings-nuclei-overview-grid,
  .settings-catalog-columns.settings-catalog-columns-nuclei {
    grid-template-columns: minmax(0, 1fr);
  }

  .settings-nucleus-form,
  .settings-nucleus-form-enhanced {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ===== 05-pages/settings-console-pro.css ===== */
/* ============================================================
   Settings console - consolidated professional layout
   Replaces the old chain of visual patch overrides.
   ============================================================ */
.settings-console-shell.settings-console-shell-pro {
  width: min(100%, 1380px);
  max-width: 1380px;
  margin: 0 auto;
  display: grid;
  gap: 18px;
  color: var(--text);
  overflow: visible;
}

.settings-console-shell-pro,
.settings-console-shell-pro * {
  min-width: 0;
}

.settings-console-shell-pro .panel-card,
.settings-console-shell-pro .settings-premium-card,
.settings-console-shell-pro .settings-status-card,
.settings-console-shell-pro .premium-panel,
.settings-console-shell-pro .settings-catalog-card,
.settings-console-shell-pro .settings-field-card {
  width: 100%;
  max-width: 100%;
  border-radius: 24px;
  overflow: hidden;
}

.settings-console-shell-pro .settings-console-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .88fr);
  gap: 20px;
  align-items: start;
  padding: 26px;
  margin: 0;
  border-radius: 28px;
  border: 1px solid var(--border);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.settings-console-shell-pro .settings-console-hero-copy h1 {
  margin: 6px 0 0;
  max-width: 780px;
  font-size: clamp(2.4rem, 4vw, 4rem);
  line-height: .95;
  letter-spacing: -.055em;
  color: var(--text);
}

.settings-console-shell-pro .settings-console-hero-copy p {
  margin: 14px 0 0;
  max-width: 760px;
  color: var(--muted);
  font-size: .98rem;
  line-height: 1.65;
}

.settings-console-shell-pro .settings-hero-tags,
.settings-console-shell-pro .settings-header-actions,
.settings-console-shell-pro .settings-inline-actions,
.settings-console-shell-pro .actions-inline,
.settings-console-shell-pro .user-row-actions,
.settings-console-shell-pro .settings-save-bar,
.settings-console-shell-pro .template-config-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  align-items: center;
}

.settings-console-shell-pro .settings-hero-tags {
  margin-top: 18px;
}

.settings-console-shell-pro .settings-hero-badge,
.settings-console-shell-pro .settings-hero-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: #f3f5f1;
  color: var(--text);
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}

.settings-console-shell-pro .settings-console-hero-side {
  display: grid;
  gap: 12px;
}

.settings-console-shell-pro .settings-search-box,
.settings-console-shell-pro .settings-search-box-hero {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 15px;
  border-radius: 16px;
  border: 1px solid var(--border);
  background: #fff;
}

.settings-console-shell-pro .settings-search-box input {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.settings-console-shell-pro .settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-console-shell-pro .settings-highlight-card {
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--border);
  background: #fafaf8;
}

.settings-console-shell-pro .settings-highlight-card span,
.settings-console-shell-pro .eyebrow,
.settings-console-shell-pro .settings-breadcrumb,
.settings-console-shell-pro .settings-process-table > div:first-child strong,
.settings-console-shell-pro .settings-process-table > div:first-child span {
  display: block;
  font-size: .7rem;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 800;
  color: var(--muted);
}

.settings-console-shell-pro .settings-highlight-card strong {
  display: block;
  margin-top: 6px;
  font-size: clamp(1.05rem, 1.8vw, 1.45rem);
  line-height: 1.05;
  letter-spacing: -.03em;
  color: var(--text);
}

.settings-console-shell-pro .settings-highlight-card small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.45;
}

.settings-console-shell-pro .settings-menu-list.settings-menu-list-pro {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  padding: 8px;
  margin: 0;
  border-radius: 24px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow-soft);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.settings-console-shell-pro .settings-menu-list a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #52635a;
  background: transparent;
  font-weight: 800;
  font-size: .92rem;
  white-space: nowrap;
}

.settings-console-shell-pro .settings-menu-list a:hover,
.settings-console-shell-pro .settings-menu-list a.active {
  background: #063d31;
  border-color: #063d31;
  color: #fff;
  box-shadow: 0 10px 24px rgba(6, 61, 49, .16);
}

.settings-console-shell-pro .settings-menu-icon {
  width: 28px;
  height: 28px;
  min-width: 28px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border-radius: 999px;
  background: rgba(6, 61, 49, .08);
  color: currentColor;
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.settings-console-shell-pro .settings-menu-list a.active .settings-menu-icon,
.settings-console-shell-pro .settings-menu-list a:hover .settings-menu-icon {
  background: rgba(255,255,255,.18);
}

.settings-console-shell-pro .settings-workspace {
  display: grid;
  gap: 18px;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.settings-console-shell-pro .settings-page-header.compact,
.settings-console-shell-pro .settings-ai-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding: 24px;
  margin: 0;
  border-radius: 24px;
  border: 1px solid var(--border);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.settings-console-shell-pro .settings-page-header h2,
.settings-console-shell-pro .settings-ai-header h2 {
  margin: 6px 0 0;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: .95;
  letter-spacing: -.05em;
}

.settings-console-shell-pro .settings-page-header p,
.settings-console-shell-pro .settings-ai-header p,
.settings-console-shell-pro .helper-text,
.settings-console-shell-pro small,
.settings-console-shell-pro .settings-section-intro,
.settings-console-shell-pro .empty-state p {
  color: var(--muted);
  line-height: 1.6;
}

.settings-console-shell-pro .settings-field-grid,
.settings-console-shell-pro .settings-section-grid,
.settings-console-shell-pro .settings-finance-grid,
.settings-console-shell-pro .settings-ai-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

.settings-console-shell-pro .settings-goals-form,
.settings-console-shell-pro .production-settings-card,
.settings-console-shell-pro .settings-user-form-card,
.settings-console-shell-pro .settings-users-list-card,
.settings-console-shell-pro .settings-process-monitoring-card,
.settings-console-shell-pro .process-config-card,
.settings-console-shell-pro .settings-nucleus-card,
.settings-console-shell-pro .settings-nucleus-selector-card,
.settings-console-shell-pro .settings-nucleus-create-card,
.settings-console-shell-pro .settings-tribunal-list-card,
.settings-console-shell-pro .settings-placeholder-card,
.settings-console-shell-pro .ai-table-card,
.settings-console-shell-pro .ai-builder-main,
.settings-console-shell-pro .settings-status-card,
.settings-console-shell-pro .settings-template-stack,
.settings-console-shell-pro .settings-template-list-card,
.settings-console-shell-pro .settings-main-stack > .panel-card,
.settings-console-shell-pro .settings-main-stack > form.panel-card {
  padding: 22px;
}

.settings-console-shell-pro .settings-save-bar {
  justify-content: flex-end;
  margin-top: 8px;
}

.settings-console-shell-pro .settings-save-bar .primary-button,
.settings-console-shell-pro .settings-inline-actions .primary-button {
  min-width: 164px;
}

.settings-console-shell-pro .settings-users-grid-refined {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .78fr);
  gap: 18px;
  align-items: start;
}

.settings-console-shell-pro .settings-users-card-list {
  display: grid;
  gap: 14px;
}

.settings-console-shell-pro .settings-user-row-card {
  display: grid;
  gap: 12px;
  padding: 16px 18px;
  border: 1px solid rgba(7, 61, 47, .10);
  border-radius: 20px;
  background: rgba(255,255,255,.72);
}

.settings-console-shell-pro .settings-user-row-card .profile-row {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.settings-console-shell-pro .settings-user-row-card .avatar {
  width: 56px;
  height: 56px;
  min-width: 56px;
  border-radius: 16px;
}

.settings-console-shell-pro .settings-user-row-card .profile-row > div {
  display: grid;
  gap: 4px;
}

.settings-console-shell-pro .settings-user-row-card strong {
  display: block;
  margin: 0;
  font-size: 1.08rem;
}

.settings-console-shell-pro .settings-user-row-card p {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-console-shell-pro .settings-user-row-card .user-row-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.settings-console-shell-pro .settings-user-row-card .user-row-actions {
  justify-content: flex-start;
}

.settings-console-shell-pro .settings-user-row-card .user-row-actions form {
  margin: 0;
}

.settings-console-shell-pro .settings-user-row-card .user-row-actions .ghost-button,
.settings-console-shell-pro .settings-user-row-card .user-row-actions .danger-button {
  min-height: 38px;
}

.settings-console-shell-pro .premium-permissions-grid,
.settings-console-shell-pro .permissions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.settings-console-shell-pro .permission-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border: 1px solid rgba(7, 61, 47, .1);
  border-radius: 16px;
  background: rgba(255,255,255,.72);
  font-weight: 700;
}

.settings-console-shell-pro .settings-field-card,
.settings-console-shell-pro .permission-card,
.settings-console-shell-pro .settings-checkbox-row label,
.settings-console-shell-pro .settings-simple-row,
.settings-console-shell-pro .tribunal-edit-item,
.settings-console-shell-pro .template-config-item,
.settings-console-shell-pro .process-config-row {
  border: 1px solid rgba(7, 61, 47, .10);
  background: rgba(255,255,255,.74);
  box-shadow: none;
}

.settings-console-shell-pro .settings-field-card {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-radius: 18px;
}

.settings-console-shell-pro .settings-field-card.full-width,
.settings-console-shell-pro .field.full-width,
.settings-console-shell-pro .actions-inline.full-width {
  grid-column: 1 / -1;
}

.settings-console-shell-pro .settings-field-card code {
  white-space: nowrap;
}

.settings-console-shell-pro .settings-nuclei-control-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr);
  gap: 18px;
}

.settings-console-shell-pro .settings-nuclei-single-list {
  display: grid;
  gap: 18px;
}

.settings-console-shell-pro .settings-nucleus-summary.static {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.settings-console-shell-pro .settings-catalog-columns-nuclei {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.settings-console-shell-pro .settings-nucleus-panel {
  padding: 18px;
  border: 1px solid rgba(7, 61, 47, .1);
  border-radius: 20px;
  background: rgba(255,255,255,.72);
}

.settings-console-shell-pro .settings-premium-layout,
.settings-console-shell-pro .tribunal-mapping-layout,
.settings-console-shell-pro .settings-integrations-refined {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
  gap: 18px;
  align-items: start;
}

.settings-console-shell-pro .settings-main-stack {
  display: grid;
  gap: 18px;
}

.settings-console-shell-pro .settings-save-aside,
.settings-console-shell-pro .settings-status-card {
  position: sticky;
  top: 16px;
}

.settings-console-shell-pro .tribunal-settings-form,
.settings-console-shell-pro .tribunal-inline-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.settings-console-shell-pro .tribunal-edit-list,
.settings-console-shell-pro .template-config-list {
  display: grid;
  gap: 14px;
  max-height: min(72vh, 840px);
  overflow: auto;
  padding-right: 4px;
}

.settings-console-shell-pro .tribunal-edit-item,
.settings-console-shell-pro .template-config-item {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
}

.settings-console-shell-pro .tribunal-mapping-delete {
  display: flex;
  justify-content: flex-end;
}

.settings-console-shell-pro .settings-template-grid {
  display: grid;
  grid-template-columns: minmax(340px, .78fr) minmax(0, 1.22fr);
  gap: 18px;
  align-items: start;
}

.settings-console-shell-pro .settings-template-list-card {
  min-height: 0;
}

.settings-console-shell-pro .template-config-item {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-console-shell-pro .template-config-actions {
  grid-column: 1 / -1;
  justify-content: space-between;
}

.settings-console-shell-pro .settings-checkbox-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.settings-console-shell-pro .settings-checkbox-row label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 14px;
}

.settings-console-shell-pro .refined-process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}

.settings-console-shell-pro .process-config-card p,
.settings-console-shell-pro .settings-process-monitoring-card p {
  margin-top: 0;
}

.settings-console-shell-pro .settings-inline-catalog-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  margin: 14px 0;
}

.settings-console-shell-pro .process-config-list {
  display: grid;
  gap: 10px;
}

.settings-console-shell-pro .process-config-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border-radius: 16px;
}

.settings-console-shell-pro .process-config-row input[name="label"] {
  width: 100%;
}

.settings-console-shell-pro .settings-inline-check.compact {
  margin: 0;
  white-space: nowrap;
}

.settings-console-shell-pro .process-monitor-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.settings-console-shell-pro .settings-process-table {
  display: grid;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.settings-console-shell-pro .settings-process-table > div {
  display: grid;
  grid-template-columns: minmax(230px, 1.4fr) minmax(140px, .8fr) minmax(160px, .9fr) minmax(140px, .8fr) minmax(150px, .8fr);
  gap: 14px;
  align-items: center;
  min-width: 860px;
  padding: 14px 16px;
  border: 1px solid rgba(7, 61, 47, .10);
  border-radius: 16px;
  background: rgba(255,255,255,.74);
}

.settings-console-shell-pro .settings-process-table > div:first-child {
  background: #f2efe7;
}

.settings-console-shell-pro .settings-process-table em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(22, 163, 74, .12);
  color: #166534;
  font-style: normal;
  font-weight: 800;
}

.settings-console-shell-pro .settings-process-table em.warn { background: rgba(245, 158, 11, .14); color: #92400e; }
.settings-console-shell-pro .settings-process-table em.danger { background: rgba(220, 38, 38, .12); color: #991b1b; }

.settings-console-shell-pro .settings-ai-layout,
.settings-console-shell-pro .settings-local-tabs,
.settings-console-shell-pro .ai-agent-builder,
.settings-console-shell-pro .ai-table-wrap {
  min-width: 0;
}

.settings-console-shell-pro .settings-local-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 6px;
  margin: 0;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.82);
}

.settings-console-shell-pro .settings-local-tabs a {
  padding: 11px 16px;
  border-radius: 999px;
  color: #5d6e65;
  font-size: .9rem;
  font-weight: 800;
}

.settings-console-shell-pro .settings-local-tabs a.active,
.settings-console-shell-pro .settings-local-tabs a:hover {
  background: #082d22;
  color: #fff;
}

.settings-console-shell-pro .ai-table-wrap {
  overflow-x: auto;
}

.settings-console-shell-pro .ai-table-wrap table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
}

.settings-console-shell-pro .ai-table-wrap th,
.settings-console-shell-pro .ai-table-wrap td {
  padding: 12px 10px;
  border-bottom: 1px solid rgba(7, 61, 47, .08);
  text-align: left;
  vertical-align: top;
}

.settings-console-shell-pro .ai-table-wrap td small {
  display: block;
  margin-top: 4px;
}

.settings-console-shell-pro .settings-ai-grid.prompts-layout {
  grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr);
}

.settings-console-shell-pro .settings-simple-list {
  display: grid;
  gap: 12px;
}

.settings-console-shell-pro .settings-simple-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 16px;
}

.settings-console-shell-pro .settings-simple-row > div {
  display: grid;
  gap: 4px;
}

.settings-console-shell-pro .settings-simple-row strong {
  display: block;
}

.settings-console-shell-pro .prompt-library-row {
  align-items: start;
}

.settings-console-shell-pro .settings-placeholder-card {
  padding: 24px;
}

.settings-console-shell-pro .danger-ghost {
  color: #9a1f2f;
}

@media (max-width: 1440px) {
  .settings-console-shell.settings-console-shell-pro {
    width: min(100%, calc(100vw - 34px));
  }

  .settings-console-shell-pro .settings-console-hero,
  .settings-console-shell-pro .settings-premium-layout,
  .settings-console-shell-pro .tribunal-mapping-layout,
  .settings-console-shell-pro .settings-integrations-refined,
  .settings-console-shell-pro .settings-users-grid-refined,
  .settings-console-shell-pro .settings-nuclei-control-grid,
  .settings-console-shell-pro .settings-template-grid,
  .settings-console-shell-pro .settings-ai-grid.prompts-layout {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .settings-save-aside,
  .settings-console-shell-pro .settings-status-card {
    position: static;
  }

  .settings-console-shell-pro .refined-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .settings-console-shell-pro .process-monitor-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .settings-console-shell-pro .settings-console-hero,
  .settings-console-shell-pro .settings-page-header.compact,
  .settings-console-shell-pro .settings-ai-header,
  .settings-console-shell-pro .settings-catalog-columns-nuclei,
  .settings-console-shell-pro .settings-field-grid,
  .settings-console-shell-pro .settings-section-grid,
  .settings-console-shell-pro .settings-finance-grid,
  .settings-console-shell-pro .settings-ai-grid,
  .settings-console-shell-pro .template-config-item,
  .settings-console-shell-pro .tribunal-settings-form,
  .settings-console-shell-pro .tribunal-inline-form,
  .settings-console-shell-pro .premium-permissions-grid,
  .settings-console-shell-pro .permissions-grid {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .settings-hero-highlights {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .refined-process-grid,
  .settings-console-shell-pro .process-monitor-filters {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .process-config-row {
    grid-template-columns: 1fr 1fr;
  }

  .settings-console-shell-pro .process-config-row input[name="label"] {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .settings-console-shell.settings-console-shell-pro {
    width: min(100%, calc(100vw - 18px));
    gap: 14px;
  }

  .settings-console-shell-pro .settings-console-hero,
  .settings-console-shell-pro .settings-page-header.compact,
  .settings-console-shell-pro .settings-ai-header,
  .settings-console-shell-pro .settings-goals-form,
  .settings-console-shell-pro .production-settings-card,
  .settings-console-shell-pro .settings-user-form-card,
  .settings-console-shell-pro .settings-users-list-card,
  .settings-console-shell-pro .settings-process-monitoring-card,
  .settings-console-shell-pro .process-config-card,
  .settings-console-shell-pro .settings-nucleus-card,
  .settings-console-shell-pro .settings-nucleus-selector-card,
  .settings-console-shell-pro .settings-nucleus-create-card,
  .settings-console-shell-pro .settings-tribunal-list-card,
  .settings-console-shell-pro .settings-template-list-card,
  .settings-console-shell-pro .settings-main-stack > .panel-card,
  .settings-console-shell-pro .settings-main-stack > form.panel-card,
  .settings-console-shell-pro .settings-placeholder-card,
  .settings-console-shell-pro .ai-table-card,
  .settings-console-shell-pro .ai-builder-main {
    padding: 18px;
    border-radius: 20px;
  }

  .settings-console-shell-pro .settings-menu-list a {
    padding: 0 12px;
    font-size: .86rem;
  }

  .settings-console-shell-pro .settings-page-header.compact,
  .settings-console-shell-pro .settings-ai-header {
    flex-direction: column;
  }

  .settings-console-shell-pro .settings-header-actions,
  .settings-console-shell-pro .settings-user-row-card .user-row-actions,
  .settings-console-shell-pro .actions-inline,
  .settings-console-shell-pro .settings-save-bar {
    width: 100%;
  }

  .settings-console-shell-pro .settings-header-actions > *,
  .settings-console-shell-pro .settings-user-row-card .user-row-actions > *,
  .settings-console-shell-pro .settings-user-row-card .user-row-actions form,
  .settings-console-shell-pro .settings-user-row-card .user-row-actions a,
  .settings-console-shell-pro .settings-user-row-card .user-row-actions button,
  .settings-console-shell-pro .actions-inline > *,
  .settings-console-shell-pro .settings-save-bar > * {
    width: 100%;
  }

  .settings-console-shell-pro .settings-inline-catalog-form,
  .settings-console-shell-pro .process-config-row {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .process-config-row .settings-inline-check.compact,
  .settings-console-shell-pro .process-config-row .ghost-button {
    width: 100%;
  }

  .settings-console-shell-pro .settings-simple-row,
  .settings-console-shell-pro .settings-user-row-card {
    grid-template-columns: 1fr;
  }

  .settings-console-shell-pro .settings-user-row-card .profile-row p {
    white-space: normal;
    overflow: visible;
  }
}

/* ===== 05-pages/settings-refactor.css ===== */
/* ============================================================
   CIRS - Configurações administrativas compactas
   Objetivo: integrar Configurações ao shell principal com a mesma
   ritmo operacional da página de Contatos, sem alterar regras.
   ============================================================ */

/* ---------- Shell da área ---------- */
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
  color: var(--text);
  overflow: visible;
}

.settings-refactor-shell,
.settings-refactor-shell *,
.settings-refactor-shell *::before,
.settings-refactor-shell *::after {
  box-sizing: border-box;
  min-width: 0;
}

.settings-refactor-shell [hidden] {
  display: none;
}

.settings-refactor-shell h1,
.settings-refactor-shell h2,
.settings-refactor-shell h3,
.settings-refactor-shell h4,
.settings-refactor-shell p {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.settings-refactor-shell p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.settings-refactor-shell .settings-breadcrumb,
.settings-refactor-shell .eyebrow {
  display: block;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* ---------- Header principal compacto ---------- */
.settings-refactor-shell .settings-console-hero {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
  gap: 18px;
  align-items: start;
  margin: 0;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(250, 250, 248, .94));
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.settings-refactor-shell .settings-console-hero-copy {
  display: grid;
  align-content: start;
  gap: 8px;
}

.settings-refactor-shell .settings-console-hero-copy h1 {
  margin: 0;
  max-width: 980px;
  color: var(--text);
  font-size: clamp(25px, 2.45vw, 34px);
  line-height: 1.08;
  letter-spacing: -.035em;
}

.settings-refactor-shell .settings-console-hero-copy p {
  margin: 0;
  max-width: 78ch;
  font-size: 14px;
  line-height: 1.52;
}

.settings-refactor-shell .settings-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 2px;
}

.settings-refactor-shell .settings-hero-badge,
.settings-refactor-shell .settings-hero-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .10);
  background: #f7f8f4;
  color: var(--text);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  box-shadow: none;
}

.settings-refactor-shell .settings-hero-link {
  background: #fff;
}

.settings-refactor-shell .settings-console-hero-side {
  display: grid;
  gap: 10px;
  align-content: start;
  width: 100%;
}

.settings-refactor-shell .settings-search-box,
.settings-refactor-shell .settings-search-box-hero,
.settings-refactor-shell .settings-inline-search {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid rgba(17, 31, 25, .11);
  border-radius: 13px;
  background: #fff;
  color: var(--muted);
  box-shadow: none;
}

.settings-refactor-shell .settings-search-box input,
.settings-refactor-shell .settings-inline-search input {
  min-height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.settings-refactor-shell .settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.settings-refactor-shell .settings-highlight-card {
  display: grid;
  gap: 4px;
  min-height: auto;
  padding: 12px;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 15px;
  background: #fbfbf8;
  box-shadow: none;
  overflow: hidden;
}

.settings-refactor-shell .settings-highlight-card span,
.settings-refactor-shell .settings-highlight-card small {
  display: block;
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.32;
}

.settings-refactor-shell .settings-highlight-card span {
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.settings-refactor-shell .settings-highlight-card strong {
  display: block;
  margin: 0;
  color: var(--text);
  font-size: clamp(17px, 1.5vw, 22px);
  line-height: 1.12;
  letter-spacing: -.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ---------- Navegação interna: aba administrativa, não landing page ---------- */
.settings-refactor-shell .settings-refactor-menu.settings-menu-list,
.settings-refactor-shell .settings-menu-list.settings-menu-list-pro {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 0;
  padding: 0 0 14px;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  max-height: none;
  white-space: normal;
}

.settings-refactor-shell .settings-menu-list a,
.settings-refactor-shell .settings-refactor-menu.settings-menu-list a,
.settings-refactor-shell .settings-menu-list.settings-menu-list-pro a {
  width: auto;
  max-width: 100%;
  min-width: 0;
  flex: 0 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  grid-template-columns: none;
  gap: 8px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 999px;
  background: #fffefa;
  color: var(--text);
  box-shadow: none;
  font-size: 13px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-refactor-shell .settings-menu-list a:hover,
.settings-refactor-shell .settings-menu-list a.active {
  background: #06251b;
  border-color: #06251b;
  color: #fff;
}

.settings-refactor-shell .settings-menu-list a.active {
  box-shadow: 0 8px 18px rgba(6, 37, 27, .14);
}

.settings-refactor-shell .settings-menu-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font-size: 14px;
  line-height: 1;
  font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', var(--font-sans);
}

.settings-refactor-shell .settings-menu-icon::before {
  content: none;
}

.settings-refactor-shell .settings-menu-list a span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ---------- Workspace e headers internos ---------- */
.settings-refactor-shell .settings-workspace {
  width: 100%;
  min-height: 0;
  display: grid;
  gap: 14px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.settings-refactor-shell .settings-page-header.compact,
.settings-refactor-shell .settings-ai-header,
.settings-refactor-shell .settings-ai-header.compact {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.settings-refactor-shell .settings-page-header h2,
.settings-refactor-shell .settings-ai-header h2 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: clamp(20px, 2vw, 26px);
  line-height: 1.15;
  letter-spacing: -.025em;
}

.settings-refactor-shell .settings-page-header p,
.settings-refactor-shell .settings-ai-header p {
  margin: 5px 0 0;
  max-width: 80ch;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.48;
}

.settings-refactor-shell .settings-header-actions,
.settings-refactor-shell .settings-inline-actions,
.settings-refactor-shell .actions-inline,
.settings-refactor-shell .user-row-actions,
.settings-refactor-shell .settings-save-bar,
.settings-refactor-shell .template-config-actions,
.settings-refactor-shell .row-action-pack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.settings-refactor-shell .settings-header-actions,
.settings-refactor-shell .settings-save-bar {
  justify-content: flex-end;
}

.settings-refactor-shell .settings-save-bar {
  margin-top: 14px;
}

/* ---------- Cards administrativos ---------- */
.settings-refactor-shell .panel-card,
.settings-refactor-shell .settings-premium-card,
.settings-refactor-shell .premium-panel,
.settings-refactor-shell .settings-catalog-card,
.settings-refactor-shell .settings-status-card,
.settings-refactor-shell .settings-nucleus-selector-card,
.settings-refactor-shell .settings-nucleus-create-card,
.settings-refactor-shell .settings-process-card,
.settings-refactor-shell .settings-process-monitoring-card,
.settings-refactor-shell .ai-table-card,
.settings-refactor-shell .ai-builder-main,
.settings-refactor-shell .settings-placeholder-card {
  width: 100%;
  max-width: 100%;
  min-height: auto;
  height: auto;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  color: var(--text);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.settings-refactor-shell .settings-premium-layout,
.settings-refactor-shell .settings-premium-layout.inside-workspace {
  width: 100%;
  max-width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  gap: 14px;
  align-items: start;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.settings-refactor-shell .settings-main-stack,
.settings-refactor-shell .settings-users-card-list,
.settings-refactor-shell .settings-folder-single-list,
.settings-refactor-shell .settings-nuclei-single-list,
.settings-refactor-shell .template-config-list,
.settings-refactor-shell .settings-compact-list,
.settings-refactor-shell .list-stack {
  display: grid;
  gap: 12px;
}

.settings-refactor-shell .panel-header,
.settings-refactor-shell .ai-card-head,
.settings-refactor-shell .settings-nucleus-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 12px;
}

.settings-refactor-shell .panel-header h2,
.settings-refactor-shell .panel-header h3,
.settings-refactor-shell .panel-header h4,
.settings-refactor-shell .ai-card-head h3,
.settings-refactor-shell .settings-nucleus-panel-head h4,
.settings-refactor-shell .settings-placeholder-card h3 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 18px;
  line-height: 1.22;
  letter-spacing: -.015em;
}

.settings-refactor-shell .settings-section-intro,
.settings-refactor-shell .settings-process-card > p,
.settings-refactor-shell .settings-process-monitoring-card > p,
.settings-refactor-shell .helper-text,
.settings-refactor-shell small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.settings-refactor-shell .settings-disclosure {
  width: 100%;
}

.settings-refactor-shell .settings-disclosure-summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  list-style: none;
  cursor: pointer;
}

.settings-refactor-shell .settings-disclosure-summary::-webkit-details-marker {
  display: none;
}

.settings-refactor-shell .settings-disclosure-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .10);
  background: #fbfbf8;
  color: var(--text);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.settings-refactor-shell .settings-disclosure[open] .settings-disclosure-summary {
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border);
}

/* ---------- Grids: sem cards espremidos ---------- */
.settings-refactor-shell .settings-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}

.settings-refactor-shell .settings-section-grid,
.settings-refactor-shell .settings-section-grid-processes,
.settings-refactor-shell .settings-finance-grid,
.settings-refactor-shell .settings-template-grid,
.settings-refactor-shell .refined-process-grid,
.settings-refactor-shell .settings-catalog-columns-nuclei,
.settings-refactor-shell .settings-ai-layout,
.settings-refactor-shell .settings-ai-layout-refined,
.settings-refactor-shell .settings-two-column-grid {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 14px;
  align-items: start;
}

.settings-refactor-shell .settings-users-grid,
.settings-refactor-shell .settings-users-grid-refined,
.settings-refactor-shell .integration-grid,
.settings-refactor-shell .tribunal-mapping-layout {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);
  gap: 14px;
  align-items: start;
}

.settings-refactor-shell .settings-catalog-columns,
.settings-refactor-shell .settings-catalog-columns-nuclei {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 14px;
}

.settings-refactor-shell .form-grid,
.settings-refactor-shell .settings-mini-form,
.settings-refactor-shell .user-premium-form,
.settings-refactor-shell .tribunal-settings-form,
.settings-refactor-shell .tribunal-inline-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: 12px;
}

.settings-refactor-shell .full-width,
.settings-refactor-shell .field.full-width,
.settings-refactor-shell fieldset.full-width,
.settings-refactor-shell .actions-inline.full-width {
  grid-column: 1 / -1;
}

/* ---------- Campos, inputs e upload ---------- */
.settings-refactor-shell .field,
.settings-refactor-shell fieldset.field {
  display: grid;
  gap: 6px;
  min-width: 0;
  margin: 0;
}

.settings-refactor-shell .field label,
.settings-refactor-shell .field > span,
.settings-refactor-shell fieldset legend {
  color: var(--text);
  font-size: 13px;
  line-height: 1.3;
  font-weight: 850;
  white-space: normal;
}

.settings-refactor-shell input,
.settings-refactor-shell select,
.settings-refactor-shell textarea {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  border: 1px solid rgba(17, 31, 25, .12);
  border-radius: 12px;
  background: #fff;
  color: var(--text);
  box-shadow: none;
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
}

.settings-refactor-shell input,
.settings-refactor-shell select {
  min-height: 40px;
  padding: 9px 11px;
}

.settings-refactor-shell textarea {
  min-height: 108px;
  padding: 10px 11px;
  resize: vertical;
}

.settings-refactor-shell textarea[rows='12'],
.settings-refactor-shell textarea[data-prompt-editor] {
  min-height: 260px;
}

.settings-refactor-shell input:focus,
.settings-refactor-shell select:focus,
.settings-refactor-shell textarea:focus {
  outline: none;
  border-color: rgba(6, 37, 27, .34);
  box-shadow: 0 0 0 4px rgba(6, 37, 27, .08);
}

.settings-refactor-shell input::placeholder,
.settings-refactor-shell textarea::placeholder {
  color: rgba(17, 31, 25, .46);
}

.settings-refactor-shell input[type='file'] {
  padding: 8px;
  min-height: 42px;
  background: #fbfbf8;
}

.settings-refactor-shell input[type='file']::file-selector-button {
  min-height: 30px;
  margin-right: 10px;
  padding: 0 12px;
  border: 1px solid rgba(17, 31, 25, .12);
  border-radius: 10px;
  background: #fff;
  color: var(--text);
  font-weight: 850;
  cursor: pointer;
}

.settings-refactor-shell input[type='checkbox'] {
  width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  accent-color: #06251b;
  flex: 0 0 18px;
}

.settings-refactor-shell .settings-field-card,
.settings-refactor-shell fieldset.settings-field-card {
  min-height: auto;
  padding: 12px;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 14px;
  background: #fbfbf8;
  box-shadow: none;
}

.settings-refactor-shell .settings-field-card.compact {
  padding: 12px;
}

.settings-refactor-shell .id-preview,
.settings-refactor-shell code {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  background: rgba(17, 31, 25, .06);
  color: rgba(17, 31, 25, .72);
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 800;
}

.settings-refactor-shell .checkbox-inline,
.settings-refactor-shell .settings-inline-check,
.settings-refactor-shell .settings-checkbox-row label,
.settings-refactor-shell .permission-card {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.settings-refactor-shell .settings-checkbox-row,
.settings-refactor-shell .permissions-grid,
.settings-refactor-shell .premium-permissions-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.settings-refactor-shell .permission-card,
.settings-refactor-shell .settings-checkbox-row label {
  min-height: 36px;
  padding: 8px 10px;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 12px;
  background: #fff;
  color: var(--text);
  font-size: 13px;
  font-weight: 750;
}

/* ---------- Botões ---------- */
.settings-refactor-shell .primary-button,
.settings-refactor-shell button.primary-button,
.settings-refactor-shell a.primary-button,
.settings-refactor-shell .secondary-button,
.settings-refactor-shell button.secondary-button,
.settings-refactor-shell a.secondary-button,
.settings-refactor-shell .ghost-button,
.settings-refactor-shell button.ghost-button,
.settings-refactor-shell a.ghost-button,
.settings-refactor-shell .danger-button,
.settings-refactor-shell button.danger-button,
.settings-refactor-shell a.danger-button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 38px;
  max-width: 100%;
  padding: 0 13px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  box-shadow: none;
}

.settings-refactor-shell .primary-button,
.settings-refactor-shell button.primary-button,
.settings-refactor-shell a.primary-button {
  border: 1px solid #06251b;
  background: #06251b;
  color: #fff;
}

.settings-refactor-shell .primary-button:hover,
.settings-refactor-shell button.primary-button:hover,
.settings-refactor-shell a.primary-button:hover {
  background: #0a3428;
  border-color: #0a3428;
}

.settings-refactor-shell .secondary-button,
.settings-refactor-shell button.secondary-button,
.settings-refactor-shell a.secondary-button,
.settings-refactor-shell .ghost-button,
.settings-refactor-shell button.ghost-button,
.settings-refactor-shell a.ghost-button {
  border: 1px solid rgba(17, 31, 25, .12);
  background: #fffefa;
  color: var(--text);
}

.settings-refactor-shell .danger-button,
.settings-refactor-shell button.danger-button,
.settings-refactor-shell a.danger-button,
.settings-refactor-shell .danger-ghost,
.settings-refactor-shell .outline-danger {
  border: 1px solid rgba(157, 47, 47, .22);
  background: #fff7f7;
  color: #8f2d2d;
}

.settings-refactor-shell .ghost-button.tiny,
.settings-refactor-shell button.ghost-button.tiny,
.settings-refactor-shell a.ghost-button.tiny,
.settings-refactor-shell .compact-chip,
.settings-refactor-shell .tiny {
  min-height: 30px;
  padding: 0 9px;
  border-radius: 10px;
  font-size: 12px;
}

.settings-refactor-shell .full-width.primary-button,
.settings-refactor-shell .full-width.ghost-button,
.settings-refactor-shell .full-width.secondary-button,
.settings-refactor-shell .full-width.danger-button {
  width: 100%;
}

/* ---------- Linhas, listas, tabelas e componentes específicos ---------- */
.settings-refactor-shell .settings-user-row-card,
.settings-refactor-shell .list-item,
.settings-refactor-shell .tribunal-mapping-item,
.settings-refactor-shell .template-config-item,
.settings-refactor-shell .prompt-library-item,
.settings-refactor-shell .process-config-row {
  width: 100%;
  max-width: 100%;
  min-height: auto;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 14px;
  background: #fbfbf8;
  box-shadow: none;
  overflow: hidden;
}

.settings-refactor-shell .settings-user-row-card,
.settings-refactor-shell .list-item,
.settings-refactor-shell .prompt-library-item {
  padding: 12px;
}

.settings-refactor-shell .settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
  align-items: start;
}

.settings-refactor-shell .profile-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.settings-refactor-shell .avatar.avatar-sm {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
}

.settings-refactor-shell .profile-row strong,
.settings-refactor-shell .profile-row p,
.settings-refactor-shell .user-row-meta,
.settings-refactor-shell .table-actions,
.settings-refactor-shell .template-config-actions,
.settings-refactor-shell .prompt-library-item > div {
  min-width: 0;
}

.settings-refactor-shell .profile-row strong,
.settings-refactor-shell .profile-row p,
.settings-refactor-shell .prompt-library-item strong,
.settings-refactor-shell .prompt-library-item small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-refactor-shell .user-row-meta,
.settings-refactor-shell .table-actions,
.settings-refactor-shell .user-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  justify-content: flex-start;
}

.settings-refactor-shell .table-actions form,
.settings-refactor-shell .user-row-actions form,
.settings-refactor-shell .tribunal-mapping-delete {
  margin: 0;
}

.settings-refactor-shell .pill,
.settings-refactor-shell .ai-status {
  min-height: 26px;
  max-width: 100%;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  white-space: nowrap;
}

.settings-refactor-shell .settings-nucleus-summary.static {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin: 0 0 14px;
}

.settings-refactor-shell .settings-nucleus-panel {
  padding: 14px;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 16px;
  background: #fbfbf8;
}

.settings-refactor-shell .settings-single-folder-select,
.settings-refactor-shell .settings-tribunal-filter,
.settings-refactor-shell .settings-nucleus-selector-card .field {
  margin: 0;
}

.settings-refactor-shell .settings-save-aside {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 10px;
  align-content: start;
}

.settings-refactor-shell .asaas-status-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.settings-refactor-shell .asaas-status-grid > div {
  display: grid;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 14px;
  background: #fbfbf8;
  overflow: hidden;
}

.settings-refactor-shell .asaas-status-grid span,
.settings-refactor-shell .asaas-status-grid strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-refactor-shell .process-monitor-filters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.settings-refactor-shell .settings-process-table {
  width: 100%;
  max-width: 100%;
  display: block;
  overflow-x: auto;
  border: 1px solid rgba(17, 31, 25, .09);
  border-radius: 14px;
  background: #fbfbf8;
}

.settings-refactor-shell .settings-process-table > div {
  min-width: 760px;
  display: grid;
  grid-template-columns: 1.25fr .75fr .9fr .8fr .85fr;
  gap: 10px;
  align-items: center;
  padding: 11px 12px;
  border-bottom: 1px solid rgba(17, 31, 25, .08);
}

.settings-refactor-shell .settings-process-table > div:last-child {
  border-bottom: 0;
}

.settings-refactor-shell .settings-process-table > div:first-child {
  background: rgba(17, 31, 25, .035);
}

.settings-refactor-shell .settings-process-table span,
.settings-refactor-shell .settings-process-table strong,
.settings-refactor-shell .settings-process-table em {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-style: normal;
}

.settings-refactor-shell .process-config-row,
.settings-refactor-shell .template-config-item,
.settings-refactor-shell .tribunal-mapping-item {
  padding: 12px;
}

.settings-refactor-shell .process-config-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto auto;
  gap: 8px;
  align-items: center;
}

.settings-refactor-shell .template-config-item,
.settings-refactor-shell .tribunal-inline-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  gap: 10px;
}

.settings-refactor-shell .ai-table-wrap,
.settings-refactor-shell .tribunal-edit-list {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

.settings-refactor-shell .tribunal-edit-list {
  max-height: min(68vh, 720px);
  overflow-y: auto;
  padding-right: 4px;
}

.settings-refactor-shell table {
  width: 100%;
  min-width: 680px;
  border-collapse: collapse;
}

.settings-refactor-shell th,
.settings-refactor-shell td {
  padding: 11px 10px;
  border-bottom: 1px solid rgba(17, 31, 25, .08);
  text-align: left;
  vertical-align: middle;
}

.settings-refactor-shell th {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.settings-refactor-shell td,
.settings-refactor-shell td small {
  color: var(--text);
}

.settings-refactor-shell td small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
}

.settings-refactor-shell .empty-state {
  padding: 18px;
  border: 1px dashed rgba(17, 31, 25, .14);
  border-radius: 14px;
  background: #fbfbf8;
  color: var(--muted);
  font-weight: 700;
  text-align: center;
}

/* ---------- Logo premium no shell lateral ---------- */
.rs-sidebar .rs-brand-card-enhanced {
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 22px;
  background:
    radial-gradient(circle at 24% 0%, rgba(229, 231, 200, .16), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .025));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 16px 32px rgba(0, 0, 0, .16);
  overflow: hidden;
}

.rs-sidebar .rs-brand-link-enhanced {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 13px;
  text-decoration: none;
}

.rs-sidebar .rs-brand-logo-stage {
  width: 74px;
  height: 74px;
  min-width: 74px;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rs-sidebar .rs-brand-logo-placeholder {
  position: relative;
  width: 74px;
  height: 74px;
  min-height: 0;
  max-height: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .13), rgba(255, 255, 255, .045));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
  overflow: hidden;
  text-align: center;
}

.rs-sidebar .rs-brand-logo-placeholder::after {
  content: '';
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(229, 231, 200, .16);
  border-radius: 14px;
  pointer-events: none;
}

.rs-sidebar .rs-brand-logo-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.rs-sidebar .rs-brand-logo-monogram {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .10);
  color: #f8f3db;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: .10em;
}

.rs-sidebar .rs-brand-logo-placeholder small {
  display: none;
}

.rs-sidebar .rs-brand-logo-placeholder.has-logo .rs-brand-logo-monogram,
.rs-sidebar .rs-brand-logo-placeholder.has-logo small {
  display: none;
}

.rs-sidebar .rs-brand-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.rs-sidebar .rs-brand-copy .rs-brand-title {
  display: block;
  color: #fff;
  font-size: 25px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.025em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rs-sidebar .rs-brand-copy .rs-brand-subtitle {
  display: block;
  color: rgba(255, 255, 255, .68);
  font-size: 10px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rs-topbar-brand-textonly {
  letter-spacing: .02em;
}

/* ---------- Dark mode ---------- */
html[data-theme='dark'] .settings-refactor-shell .settings-console-hero,
html[data-theme='dark'] .settings-refactor-shell .panel-card,
html[data-theme='dark'] .settings-refactor-shell .settings-premium-card,
html[data-theme='dark'] .settings-refactor-shell .premium-panel,
html[data-theme='dark'] .settings-refactor-shell .settings-catalog-card,
html[data-theme='dark'] .settings-refactor-shell .settings-status-card,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-selector-card,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-create-card,
html[data-theme='dark'] .settings-refactor-shell .settings-process-card,
html[data-theme='dark'] .settings-refactor-shell .settings-process-monitoring-card,
html[data-theme='dark'] .settings-refactor-shell .ai-table-card,
html[data-theme='dark'] .settings-refactor-shell .ai-builder-main,
html[data-theme='dark'] .settings-refactor-shell .settings-placeholder-card {
  background: rgba(15, 29, 47, .92);
  border-color: rgba(158, 177, 206, .16);
  color: #edf4ff;
}

html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card,
html[data-theme='dark'] .settings-refactor-shell .settings-field-card,
html[data-theme='dark'] .settings-refactor-shell .list-item,
html[data-theme='dark'] .settings-refactor-shell .settings-user-row-card,
html[data-theme='dark'] .settings-refactor-shell .tribunal-mapping-item,
html[data-theme='dark'] .settings-refactor-shell .template-config-item,
html[data-theme='dark'] .settings-refactor-shell .prompt-library-item,
html[data-theme='dark'] .settings-refactor-shell .process-config-row,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-panel,
html[data-theme='dark'] .settings-refactor-shell .asaas-status-grid > div,
html[data-theme='dark'] .settings-refactor-shell .settings-process-table,
html[data-theme='dark'] .settings-refactor-shell .empty-state {
  background: rgba(255, 255, 255, .045);
  border-color: rgba(158, 177, 206, .14);
}

html[data-theme='dark'] .settings-refactor-shell input,
html[data-theme='dark'] .settings-refactor-shell select,
html[data-theme='dark'] .settings-refactor-shell textarea,
html[data-theme='dark'] .settings-refactor-shell .settings-search-box,
html[data-theme='dark'] .settings-refactor-shell .settings-inline-search,
html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a,
html[data-theme='dark'] .settings-refactor-shell .ghost-button,
html[data-theme='dark'] .settings-refactor-shell .secondary-button,
html[data-theme='dark'] .settings-refactor-shell input[type='file']::file-selector-button {
  background: rgba(4, 12, 23, .58);
  border-color: rgba(158, 177, 206, .16);
  color: #edf4ff;
}

html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a.active,
html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a:hover,
html[data-theme='dark'] .settings-refactor-shell .primary-button {
  background: #e5e7c8;
  border-color: #e5e7c8;
  color: #08111f;
}

html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card span,
html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card small,
html[data-theme='dark'] .settings-refactor-shell .settings-breadcrumb,
html[data-theme='dark'] .settings-refactor-shell .eyebrow,
html[data-theme='dark'] .settings-refactor-shell p,
html[data-theme='dark'] .settings-refactor-shell small,
html[data-theme='dark'] .settings-refactor-shell .helper-text {
  color: #9daec6;
}

html[data-theme='dark'] .settings-refactor-shell h1,
html[data-theme='dark'] .settings-refactor-shell h2,
html[data-theme='dark'] .settings-refactor-shell h3,
html[data-theme='dark'] .settings-refactor-shell h4,
html[data-theme='dark'] .settings-refactor-shell strong,
html[data-theme='dark'] .settings-refactor-shell label,
html[data-theme='dark'] .settings-refactor-shell .field > span {
  color: #edf4ff;
}

/* ---------- Responsividade ---------- */
@media (max-width: 1280px) {
  .settings-refactor-shell .settings-console-hero,
  .settings-refactor-shell .settings-users-grid,
  .settings-refactor-shell .settings-users-grid-refined,
  .settings-refactor-shell .settings-premium-layout,
  .settings-refactor-shell .settings-premium-layout.inside-workspace,
  .settings-refactor-shell .integration-grid,
  .settings-refactor-shell .tribunal-mapping-layout {
    grid-template-columns: 1fr;
  }

  .settings-refactor-shell .settings-save-aside {
    position: static;
  }
}

@media (max-width: 900px) {
  .settings-refactor-shell .settings-console-hero {
    padding: 16px;
  }

  .settings-refactor-shell .settings-hero-highlights,
  .settings-refactor-shell .settings-field-grid,
  .settings-refactor-shell .settings-section-grid,
  .settings-refactor-shell .settings-section-grid-processes,
  .settings-refactor-shell .settings-finance-grid,
  .settings-refactor-shell .settings-template-grid,
  .settings-refactor-shell .refined-process-grid,
  .settings-refactor-shell .settings-catalog-columns-nuclei,
  .settings-refactor-shell .settings-ai-layout,
  .settings-refactor-shell .settings-two-column-grid,
  .settings-refactor-shell .form-grid,
  .settings-refactor-shell .settings-mini-form {
    grid-template-columns: 1fr;
  }

  .settings-refactor-shell .settings-page-header.compact,
  .settings-refactor-shell .settings-ai-header,
  .settings-refactor-shell .settings-disclosure-summary {
    flex-direction: column;
    align-items: stretch;
  }

  .settings-refactor-shell .settings-header-actions,
  .settings-refactor-shell .settings-save-bar {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .settings-console-shell.settings-console-shell-pro.settings-refactor-shell {
    gap: 12px;
  }

  .settings-refactor-shell .settings-console-hero-copy h1 {
    font-size: clamp(23px, 7vw, 30px);
  }

  .settings-refactor-shell .settings-page-header h2,
  .settings-refactor-shell .settings-ai-header h2 {
    font-size: clamp(19px, 6vw, 24px);
  }

  .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
  .settings-refactor-shell .settings-menu-list.settings-menu-list-pro {
    gap: 6px;
    padding-bottom: 12px;
  }

  .settings-refactor-shell .settings-menu-list a,
  .settings-refactor-shell .settings-refactor-menu.settings-menu-list a,
  .settings-refactor-shell .settings-menu-list.settings-menu-list-pro a {
    min-height: 34px;
    padding: 0 10px;
    font-size: 12px;
  }

  .settings-refactor-shell .panel-card,
  .settings-refactor-shell .settings-premium-card,
  .settings-refactor-shell .premium-panel,
  .settings-refactor-shell .settings-catalog-card,
  .settings-refactor-shell .settings-status-card,
  .settings-refactor-shell .settings-nucleus-selector-card,
  .settings-refactor-shell .settings-nucleus-create-card,
  .settings-refactor-shell .settings-process-card,
  .settings-refactor-shell .settings-process-monitoring-card,
  .settings-refactor-shell .ai-table-card,
  .settings-refactor-shell .ai-builder-main,
  .settings-refactor-shell .settings-placeholder-card {
    padding: 15px;
    border-radius: 16px;
  }

  .settings-refactor-shell .process-config-row {
    grid-template-columns: 1fr;
  }

  .rs-sidebar .rs-brand-link-enhanced {
    grid-template-columns: 62px minmax(0, 1fr);
  }

  .rs-sidebar .rs-brand-logo-stage,
  .rs-sidebar .rs-brand-logo-placeholder {
    width: 62px;
    height: 62px;
    min-width: 62px;
    min-height: 62px;
  }

  .rs-sidebar .rs-brand-copy .rs-brand-title {
    font-size: 21px;
  }
}

/* Correção de pré-produção: remove o viés azul do dark mode em Configurações. */
html[data-theme='dark'] .settings-refactor-shell {
  --settings-dark-bg: #0b130f;
  --settings-dark-card: rgba(18, 30, 24, .96);
  --settings-dark-field: rgba(11, 19, 15, .78);
  --settings-dark-soft: rgba(237, 241, 234, .06);
  --settings-dark-border: rgba(237, 241, 234, .14);
  --settings-dark-border-strong: rgba(237, 241, 234, .22);
  --settings-dark-text: #edf1ea;
  --settings-dark-muted: #aab7ae;
  --settings-dark-accent: #d6d7bd;
}

html[data-theme='dark'] .settings-refactor-shell .settings-console-hero,
html[data-theme='dark'] .settings-refactor-shell .panel-card,
html[data-theme='dark'] .settings-refactor-shell .settings-premium-card,
html[data-theme='dark'] .settings-refactor-shell .premium-panel,
html[data-theme='dark'] .settings-refactor-shell .settings-catalog-card,
html[data-theme='dark'] .settings-refactor-shell .settings-status-card,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-selector-card,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-create-card,
html[data-theme='dark'] .settings-refactor-shell .settings-process-card,
html[data-theme='dark'] .settings-refactor-shell .settings-process-monitoring-card,
html[data-theme='dark'] .settings-refactor-shell .ai-table-card,
html[data-theme='dark'] .settings-refactor-shell .ai-builder-main,
html[data-theme='dark'] .settings-refactor-shell .settings-placeholder-card {
  background: var(--settings-dark-card);
  border-color: var(--settings-dark-border);
  color: var(--settings-dark-text);
}

html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card,
html[data-theme='dark'] .settings-refactor-shell .settings-field-card,
html[data-theme='dark'] .settings-refactor-shell .list-item,
html[data-theme='dark'] .settings-refactor-shell .settings-user-row-card,
html[data-theme='dark'] .settings-refactor-shell .tribunal-mapping-item,
html[data-theme='dark'] .settings-refactor-shell .template-config-item,
html[data-theme='dark'] .settings-refactor-shell .prompt-library-item,
html[data-theme='dark'] .settings-refactor-shell .process-config-row,
html[data-theme='dark'] .settings-refactor-shell .settings-nucleus-panel,
html[data-theme='dark'] .settings-refactor-shell .asaas-status-grid > div,
html[data-theme='dark'] .settings-refactor-shell .settings-process-table,
html[data-theme='dark'] .settings-refactor-shell .empty-state,
html[data-theme='dark'] .settings-refactor-shell .settings-goal-group {
  background: var(--settings-dark-soft);
  border-color: var(--settings-dark-border);
}

html[data-theme='dark'] .settings-refactor-shell input,
html[data-theme='dark'] .settings-refactor-shell select,
html[data-theme='dark'] .settings-refactor-shell textarea,
html[data-theme='dark'] .settings-refactor-shell .settings-search-box,
html[data-theme='dark'] .settings-refactor-shell .settings-inline-search,
html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a,
html[data-theme='dark'] .settings-refactor-shell .ghost-button,
html[data-theme='dark'] .settings-refactor-shell .secondary-button,
html[data-theme='dark'] .settings-refactor-shell input[type='file']::file-selector-button {
  background: var(--settings-dark-field);
  border-color: var(--settings-dark-border);
  color: var(--settings-dark-text);
}

html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card span,
html[data-theme='dark'] .settings-refactor-shell .settings-highlight-card small,
html[data-theme='dark'] .settings-refactor-shell .settings-breadcrumb,
html[data-theme='dark'] .settings-refactor-shell .eyebrow,
html[data-theme='dark'] .settings-refactor-shell p,
html[data-theme='dark'] .settings-refactor-shell small,
html[data-theme='dark'] .settings-refactor-shell .helper-text,
html[data-theme='dark'] .settings-refactor-shell fieldset legend {
  color: var(--settings-dark-muted);
}

html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a.active,
html[data-theme='dark'] .settings-refactor-shell .settings-menu-list a:hover,
html[data-theme='dark'] .settings-refactor-shell .primary-button,
html[data-theme='dark'] .settings-refactor-shell .settings-local-tabs a.active,
html[data-theme='dark'] .settings-refactor-shell .settings-local-tabs a:hover {
  background: var(--settings-dark-accent);
  border-color: var(--settings-dark-accent);
  color: var(--settings-dark-bg);
}

/* ===== 05-pages/settings-overrides.css ===== */
/* Configurações: impede quebra de palavra no título e organiza o submenu. */
.settings-console-shell {
  grid-template-columns: 300px minmax(0, 1fr);
}

.settings-config-head {
  align-items: start;
}

.settings-config-head h1 {
  font-size: clamp(28px, 2.15vw, 32px);
  line-height: 1.02;
  letter-spacing: -.045em;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: keep-all;
}

.settings-config-head .icon-only-button {
  transform: translateY(-2px);
}

@media (max-width: 1080px) {
  .settings-console-shell {
    grid-template-columns: 1fr;
  }
  .settings-config-head h1 {
    white-space: normal;
  }
}

/* Usuários: foto maior e linhas mais estáveis. */
.settings-users-grid {
  max-width: 1240px;
  grid-template-columns: minmax(380px, .78fr) minmax(620px, 1.22fr);
}

.settings-user-row-card {
  grid-template-columns: minmax(320px, 1fr) auto auto;
  gap: 14px;
  padding: 16px 18px;
}

.settings-user-row-card .profile-row {
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 14px;
}

.settings-user-row-card .avatar {
  width: 56px;
  height: 56px;
  min-width: 56px;
  border-radius: 16px;
  font-size: 15px;
}

.settings-user-row-card .avatar img,
.settings-user-row-card .avatar-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.settings-user-row-card p {
  overflow-wrap: anywhere;
  word-break: normal;
}

/* Inteligência Artificial: layout sem corte na tabela e cards estáveis. */
.settings-workspace-ia {
  overflow: visible;
}

.settings-workspace-ia .settings-ai-layout {
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 14px;
  max-width: 1280px;
}

.settings-workspace-ia .ai-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  max-width: 1280px;
}

.settings-workspace-ia .ai-kpi-card {
  min-height: 96px;
  padding: 14px;
  grid-template-columns: 42px minmax(0, 1fr);
}

.settings-workspace-ia .ai-kpi-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  font-size: 18px;
}

.settings-workspace-ia .ai-kpi-card strong {
  font-size: 26px;
}

.settings-workspace-ia .ai-table-card {
  padding: 16px;
  min-width: 0;
  overflow: hidden;
}

.settings-workspace-ia .ai-card-head {
  align-items: center;
}

.settings-workspace-ia .ai-card-head .settings-inline-search {
  max-width: 330px;
}

.settings-workspace-ia .ai-table-wrap {
  overflow-x: visible;
  margin: 0;
}

.settings-workspace-ia .ai-production-table {
  min-width: 0;
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.settings-workspace-ia .ai-production-table th,
.settings-workspace-ia .ai-production-table td {
  padding: 11px 9px;
  font-size: 12px;
  line-height: 1.25;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-workspace-ia .ai-production-table th:nth-child(1),
.settings-workspace-ia .ai-production-table td:nth-child(1) { width: 25%; }
.settings-workspace-ia .ai-production-table th:nth-child(2),
.settings-workspace-ia .ai-production-table td:nth-child(2) { width: 13%; }
.settings-workspace-ia .ai-production-table th:nth-child(3),
.settings-workspace-ia .ai-production-table td:nth-child(3) { width: 17%; }
.settings-workspace-ia .ai-production-table th:nth-child(4),
.settings-workspace-ia .ai-production-table td:nth-child(4) { width: 11%; }
.settings-workspace-ia .ai-production-table th:nth-child(5),
.settings-workspace-ia .ai-production-table td:nth-child(5) { width: 12%; }
.settings-workspace-ia .ai-production-table th:nth-child(6),
.settings-workspace-ia .ai-production-table td:nth-child(6) { width: 12%; }
.settings-workspace-ia .ai-production-table th:nth-child(7),
.settings-workspace-ia .ai-production-table td:nth-child(7) { width: 10%; }

.settings-workspace-ia .ai-agent-name {
  gap: 8px;
  min-width: 0;
}

.settings-workspace-ia .ai-agent-name > div {
  min-width: 0;
}

.settings-workspace-ia .ai-agent-name strong,
.settings-workspace-ia .ai-agent-name small {
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-workspace-ia .ai-agent-avatar {
  width: 34px;
  height: 34px;
  min-width: 34px;
  border-radius: 11px;
  font-size: 11px;
}

.settings-workspace-ia .status-pill,
.settings-workspace-ia .model-chip {
  padding: 5px 8px;
  font-size: 10px;
  max-width: 100%;
}

.settings-workspace-ia .row-action-pack {
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
}

.settings-workspace-ia .row-action-pack .ghost-button.tiny {
  min-height: 28px;
  padding: 0 7px;
  font-size: 11px;
}

.settings-workspace-ia .ai-side-stack {
  width: 100%;
}

.settings-workspace-ia .ai-quick-card .primary-button,
.settings-workspace-ia .ai-quick-card .ghost-button {
  min-height: 38px;
  font-size: 13px;
}

@media (max-width: 1280px) {
  .settings-workspace-ia .settings-ai-layout {
    grid-template-columns: 1fr;
  }
  .settings-workspace-ia .ai-side-stack {
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .settings-workspace-ia .ai-kpi-grid,
  .settings-workspace-ia .ai-side-stack {
    grid-template-columns: 1fr;
  }
  .settings-workspace-ia .ai-table-wrap {
    overflow-x: auto;
  }
  .settings-workspace-ia .ai-production-table {
    min-width: 760px;
  }
}

.document-picker-shell .document-check-grid,
.wizard-mini-section .document-check-grid,
.sanitize-field.full .document-check-grid {
  max-width: none;
}


/* UX visual polish 2026-04-30: settings navigation, headers, process rows and users */
.settings-console-shell,
.settings-console-shell-pro,
.settings-workspace,
.settings-section-grid,
.settings-two-column-grid,
.settings-users-grid,
.settings-ai-layout {
  max-width: 100%;
  min-width: 0;
  overflow-x: visible;
}

.settings-console-shell-pro .settings-console-hero,
.settings-console-hero.panel-card {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
  padding: clamp(1.4rem, 3vw, 2.2rem);
  min-height: 0;
}

.settings-console-shell-pro .settings-console-hero-copy h1,
.settings-console-hero-copy h1 {
  font-size: clamp(2.4rem, 5vw, 4.35rem);
  line-height: .95;
  max-width: 780px;
  letter-spacing: -.065em;
}

.settings-console-shell-pro .settings-console-hero-copy p,
.settings-console-hero-copy p {
  max-width: 760px;
  margin-top: .75rem;
}

.settings-console-hero-side,
.settings-hero-highlights,
.settings-highlight-card {
  min-width: 0;
}

.settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(112px, 1fr));
  gap: .75rem;
}

.settings-highlight-card {
  padding: .95rem;
  overflow: hidden;
}

.settings-highlight-card strong,
.settings-highlight-card span,
.settings-highlight-card small {
  overflow-wrap: anywhere;
}

.settings-menu-list.settings-menu-list-pro,
.settings-console-shell-pro .settings-menu-list.settings-menu-list-pro {
  display: flex;
  flex-wrap: nowrap;
  gap: .55rem;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  padding: .75rem .9rem;
  max-width: 100%;
}

.settings-menu-list.settings-menu-list-pro a,
.settings-console-shell-pro .settings-menu-list.settings-menu-list-pro a {
  flex: 0 0 auto;
  min-height: 42px;
  white-space: nowrap;
  border-radius: 999px;
}

.settings-menu-list a.active {
  box-shadow: 0 10px 24px rgba(2, 45, 31, .16);
}

.settings-menu-icon-finance::before { content: '$'; }
.settings-menu-icon-apis::before { content: 'API'; }
.settings-menu-icon-processes::before { content: 'P'; }

.settings-section-grid-processes {
  align-items: stretch;
}

.process-config-card {
  min-width: 0;
}

.settings-mini-input-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .65rem;
  align-items: center;
}

.settings-mini-input-line .compact-action {
  min-height: 40px;
  padding-inline: 1rem;
}

.settings-edit-list {
  display: grid;
  gap: .55rem;
  padding: 0;
  margin: 1rem 0 0;
  list-style: none;
}

.settings-edit-list li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: .65rem;
  padding: .65rem .75rem;
  border: 1px solid rgba(11, 40, 30, .1);
  border-radius: 14px;
  background: rgba(255, 255, 255, .72);
}

.settings-edit-list li span {
  min-width: 0;
  font-weight: 800;
}

.settings-edit-list li em {
  justify-self: end;
  padding: .28rem .58rem;
  border-radius: 999px;
  background: rgba(209, 250, 229, .82);
  color: #07543d;
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
}

.settings-edit-list .tiny,
.ghost-button.tiny {
  min-height: 32px;
  padding: .38rem .7rem;
  font-size: .78rem;
}

.settings-process-table {
  display: grid;
  gap: .55rem;
  margin-top: 1rem;
}

.settings-process-table > div {
  display: grid;
  grid-template-columns: minmax(170px, 1.35fr) minmax(90px, .75fr) minmax(120px, .9fr) minmax(105px, .8fr) auto;
  gap: .75rem;
  align-items: center;
  padding: .75rem;
  border: 1px solid rgba(11, 40, 30, .1);
  border-radius: 14px;
  background: #fff;
}

.settings-process-table-head {
  background: rgba(245, 243, 236, .88);
  color: rgba(11, 40, 30, .72);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .72rem;
  font-weight: 900;
}

.settings-process-table em {
  justify-self: start;
  padding: .28rem .55rem;
  border-radius: 999px;
  background: rgba(209, 250, 229, .82);
  color: #07543d;
  font-style: normal;
  font-size: .78rem;
  font-weight: 800;
}

.settings-process-table em.warning { background: #fff3cd; color: #8a5a00; }
.settings-process-table em.danger { background: #fde2e1; color: #9b1c1c; }
.settings-process-table strong { justify-self: end; color: #073d2f; font-weight: 900; }

.settings-users-grid {
  grid-template-columns: minmax(520px, 1.15fr) minmax(420px, .85fr);
  align-items: start;
}

.settings-users-list-card {
  min-width: 0;
  overflow: visible;
}

.settings-users-card-list {
  display: grid;
  gap: .85rem;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-areas: 'profile meta actions';
  align-items: center;
  gap: .8rem;
  width: 100%;
  min-width: 0;
  padding: .85rem;
  overflow: visible;
}

.settings-user-row-card .profile-row { grid-area: profile; min-width: 0; }
.settings-user-row-card .profile-row > div { min-width: 0; }
.settings-user-row-card .profile-row p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 245px; }
.settings-user-row-card .user-row-meta { grid-area: meta; display: flex; flex-wrap: wrap; gap: .45rem; justify-content: flex-end; min-width: 0; }
.settings-user-row-card .user-row-actions { grid-area: actions; display: grid; grid-auto-flow: row; gap: .42rem; justify-items: stretch; min-width: 86px; }
.settings-user-row-card .user-row-actions form { margin: 0; }
.settings-user-row-card .user-row-actions .ghost-button,
.settings-user-row-card .user-row-actions .danger-button { width: 100%; min-height: 34px; padding: .45rem .7rem; }

.settings-ai-header,
.settings-local-tabs,
.ai-kpi-grid,
.settings-ai-layout,
.ai-table-card,
.ai-table-wrap {
  min-width: 0;
  max-width: 100%;
}

.settings-ai-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: start;
}

.settings-ai-header .settings-header-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .6rem;
}

.api-center-card-primary {
  border-left: 4px solid #073d2f;
}

@media (max-width: 1100px) {
  .settings-console-shell-pro .settings-console-hero,
  .settings-console-hero.panel-card,
  .settings-users-grid,
  .settings-ai-header {
    grid-template-columns: 1fr;
  }
  .settings-hero-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settings-process-table { overflow-x: auto; }
  .settings-process-table > div { min-width: 760px; }
}

@media (max-width: 720px) {
  .settings-hero-highlights { grid-template-columns: 1fr; }
  .settings-user-row-card {
    grid-template-columns: 1fr;
    grid-template-areas: 'profile' 'meta' 'actions';
  }
  .settings-user-row-card .user-row-meta { justify-content: flex-start; }
  .settings-user-row-card .user-row-actions { grid-auto-flow: column; min-width: 0; }
}

/* ===== 05-pages/settings-ui-polish.css ===== */
/* Polimento visual final de Configurações e ajustes do shell lateral */

/* Marca lateral */
.rs-sidebar .rs-brand-link-enhanced {
  grid-template-columns: 1fr;
  gap: 14px;
}

.rs-sidebar .rs-brand-logo-placeholder {
  border-radius: 26px;
  overflow: hidden;
}

.rs-sidebar .rs-brand-logo-img {
  border-radius: inherit;
  object-fit: cover;
}

.rs-sidebar .rs-brand-copy {
  width: 100%;
  align-items: flex-start;
  text-align: left;
}


/* Correção estrutural definitiva da área de Configurações.
   Neutraliza o layout antigo em duas colunas que espremia o conteúdo à esquerda. */

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  overflow: visible;
}

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell > * {
  grid-column: 1 / -1;
  min-width: 0;
  max-width: 100%;
}

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-console-hero,
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-workspace,
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-menu-list,
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-page-header,
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-goals-form,
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-area-list {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-console-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  align-items: start;
}

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
}

@media (max-width: 980px) {
  .settings-console-shell.settings-console-shell-pro.settings-refactor-shell .settings-console-hero {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ===== 05-pages/processes-settings-integrated.css ===== */
/* Integrado a partir de 06-overrides/processes-settings-2026-04-29.css para permitir remoção da pasta 06-overrides. */
/* === Patch profissional CIRS - processos, metas e sincronizacao (29/04/2026) === */
.refined-process-header,
.process-page-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 18px;
}

.process-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 22px;
}

.process-kpi-card {
  display: grid;
  grid-template-columns: 40px 1fr;
  grid-template-areas: "icon main" "meta meta";
  gap: 10px 12px;
  align-items: center;
  min-height: 98px;
  padding: 16px;
  border: 1px solid rgba(9, 55, 43, .10);
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 14px 34px rgba(15, 31, 24, .055);
}

.process-kpi-card > span {
  grid-area: icon;
  width: 40px;
  height: 40px;
  border-radius: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(5, 71, 53, .09);
  color: #063f30;
  font-weight: 900;
}

.process-kpi-card > div {
  grid-area: main;
  display: grid;
  gap: 3px;
}

.process-kpi-card strong {
  display: block;
  color: #081f19;
  font-size: clamp(28px, 3vw, 40px);
  line-height: .95;
  letter-spacing: -.045em;
}

.process-kpi-card small {
  color: #43584f;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.process-kpi-card em {
  grid-area: meta;
  color: #61756b;
  font-size: 13px;
  font-style: normal;
}

.process-filter-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1.4fr) minmax(170px, .55fr) minmax(170px, .55fr) minmax(180px, .65fr) auto;
  gap: 14px;
  align-items: end;
}

.process-filter-grid .field-span-2 {
  grid-column: auto;
}

.process-board-grid,
.process-layout-grid-refined {
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(420px, .78fr);
  gap: 24px;
  align-items: start;
}

.refined-process-list-card,
.process-list-card-refined,
.refined-process-form-card,
.process-form-card-refined {
  min-width: 0;
}

.refined-process-form-card,
.process-form-card-refined {
  position: sticky;
  top: 22px;
  max-height: calc(100vh - 32px);
  overflow: auto;
  scrollbar-gutter: stable;
}

.refined-process-form,
.process-form-stack {
  display: grid;
  gap: 16px;
}

.process-form-section,
.process-fieldset {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(9, 55, 43, .12);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.68));
  box-shadow: none;
}

.process-form-section legend,
.process-fieldset legend {
  display: none;
}

.process-section-title {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 2px;
}

.process-section-title > span {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #063f30;
  color: #fff;
  font-weight: 900;
}

.process-section-title strong {
  display: block;
  color: #071f18;
  font-size: 17px;
}

.process-section-title small {
  color: #6a7b73;
  font-size: 13px;
}

.refined-process-form .form-grid.two-columns,
.process-form-stack .form-grid.two-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.process-row-card {
  display: grid;
  grid-template-columns: minmax(190px, 1.2fr) minmax(170px, 1fr) minmax(125px, .75fr) minmax(140px, .8fr) minmax(150px, .8fr);
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid rgba(9, 55, 43, .10);
  border-radius: 20px;
  background: rgba(255,255,255,.76);
}

.process-row-card:hover {
  border-color: rgba(9, 55, 43, .22);
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(9,55,43,.07);
}

.process-submit-row {
  justify-content: flex-end;
  position: sticky;
  bottom: -1px;
  padding: 12px 0 0;
  background: linear-gradient(180deg, rgba(250,249,244,0), #faf9f4 48%);
}

/* Barras: preenchimento sólido, sem degradê que muda de intensidade */
.operation-status-list .insight-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  gap: 8px 14px;
  align-items: center;
}

.operation-status-list .insight-row i,
.progress-insights i,
.bar-report-row i,
.progress-track {
  position: relative;
  display: block;
  width: 100%;
  height: 11px;
  grid-column: 1 / -1;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(9, 55, 43, .12);
}

.operation-status-list .insight-row i::after,
.operation-status-list .insight-row i::before,
.progress-insights i::before,
.bar-report-row i::before {
  content: '';
  display: block;
  width: var(--w, 0%);
  height: 100%;
  border-radius: inherit;
  background: #0a4d3d;
  box-shadow: none;
}

.progress-bar {
  background: #0a4d3d;
  box-shadow: none;
}

/* Configurações e Metas */
.settings-console-shell {
  align-items: start;
}

.settings-sidebar {
  align-self: start;
}

.ai-production-table th:last-child,
.ai-production-table td:last-child,
.ai-agents-table th:last-child,
.ai-agents-table td:last-child {
  width: 96px;
  min-width: 96px;
  text-align: center;
}

.ai-production-table .actions-inline,
.ai-agents-table .actions-inline {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
}

.ai-production-table .ghost-button,
.ai-agents-table .ghost-button {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
  border-radius: 999px;
}

.goals-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.goals-kpi-card,
.goals-nuclei-grid article,
.goals-cycle-list div {
  border-radius: 22px;
  border: 1px solid rgba(9,55,43,.10);
  background: rgba(255,255,255,.76);
}

html[data-theme='dark'] .process-kpi-card,
html[data-theme='dark'] .process-row-card,
html[data-theme='dark'] .process-form-section,
html[data-theme='dark'] .process-fieldset,
html[data-theme='dark'] .goals-kpi-card,
html[data-theme='dark'] .goals-nuclei-grid article,
html[data-theme='dark'] .goals-cycle-list div {
  background: rgba(8,27,22,.94);
  border-color: rgba(144,203,184,.16);
}

html[data-theme='dark'] .process-kpi-card strong,
html[data-theme='dark'] .process-row-card strong,
html[data-theme='dark'] .process-section-title strong,
html[data-theme='dark'] .goals-kpi-card strong {
  color: #f8fafc;
}

html[data-theme='dark'] .operation-status-list .insight-row i,
html[data-theme='dark'] .progress-insights i,
html[data-theme='dark'] .bar-report-row i,
html[data-theme='dark'] .progress-track {
  background: rgba(230, 242, 237, .12);
}

html[data-theme='dark'] .operation-status-list .insight-row i::after,
html[data-theme='dark'] .operation-status-list .insight-row i::before,
html[data-theme='dark'] .progress-insights i::before,
html[data-theme='dark'] .bar-report-row i::before,
html[data-theme='dark'] .progress-bar {
  background: #9fb49b;
}

@media (max-width: 1280px) {
  .process-filter-grid,
  .process-board-grid,
  .process-layout-grid-refined,
  .goals-kpi-grid,
  .goals-layout-grid,
  .goals-layout-grid.secondary {
    grid-template-columns: 1fr;
  }
  .refined-process-form-card,
  .process-form-card-refined {
    position: static;
    max-height: none;
  }
}

@media (max-width: 900px) {
  .refined-process-header,
  .process-page-header,
  .settings-goals-header {
    flex-direction: column;
  }
  .process-kpi-grid,
  .refined-process-form .form-grid.two-columns,
  .process-form-stack .form-grid.two-columns,
  .goals-kpi-grid,
  .goals-nuclei-grid {
    grid-template-columns: 1fr;
  }
  .process-row-card {
    grid-template-columns: 1fr;
  }
}

/* ===== 05-pages/settings-unified.css ===== */
/* Camada unificada de Configurações.
   O carregamento em produção agora é feito pelo bundle /css/app.css,
   gerado a partir de scripts/css-manifest.json.
   Arquivo mantido sem diretivas de importação para evitar cascatas em runtime. */

/* ===== 06-theme/visual-system-stability.css ===== */
/* ============================================================
   CIRS visual system stability
   Permanent post-audit layer for global visual contracts.

   This file replaces the historical numbered repair layers 07-12.
   Keep only durable rules here: semantic tokens, overflow policy,
   dark mode coverage, page layout stability, component states and
   accessibility guardrails.
   ============================================================ */

/* ---- migrated: 07 audit fixes ---- */
html,
body {
  width: 100%;
  min-width: 0;
  overflow-x: visible;
}

body.nav-open,
body.crm-drawer-open,
body.process-drawer-open {
  overflow: hidden;
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

.shell,
.app-shell-v2,
.rs-shell,
.main-content,
.rs-main,
.dashboard-page-v2,
.labor-page,
.crm-dashboard-page,
.crm-detail-page,
.contacts-page,
.records-page,
.process-page,
.settings-console-shell,
.settings-workspace,
.panel-card,
.table-card,
.preview-card,
.empty-state,
.list-item,
.stat-card,
.metric-card,
.premium-panel {
  min-width: 0;
}

.main-content,
.rs-main {
  width: 100%;
  max-width: 100%;
}

.rs-main > *,
.main-content > *,
.panel-card > *,
.table-card > *,
.dashboard-page-v2 > *,
.labor-page > *,
.crm-dashboard-page > *,
.settings-workspace > * {
  min-width: 0;
}

/* Sidebar/header */
.sidebar,
.rs-sidebar {
  max-height: 100vh;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.nav-links a,
.rs-nav a {
  min-width: 0;
}

.nav-label,
.rs-nav .nav-label,
.rs-brand-title,
.rs-brand-subtitle,
.user-card strong,
.user-card p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rs-topbar-brand,
.rs-topbar-search {
  min-width: 0;
}

.rs-topbar-search {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flash {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.flash::before {
  content: '';
  width: 8px;
  min-width: 8px;
  height: 8px;
  margin-top: 0.45em;
  border-radius: 999px;
  background: currentColor;
  opacity: 0.6;
}

/* Cabeçalhos e ações */
.page-header,
.rs-page-hero,
.labor-hero,
.dashboard-command-hero,
.crm-hero,
.reports-hero,
.search-hero,
.panel-header,
.dashboard-panel-header,
.labor-card-heading,
.labor-section-heading,
.settings-ai-header,
.settings-config-head,
.process-header-actions {
  min-width: 0;
}

.page-header > div,
.rs-page-hero > div,
.labor-hero > div,
.dashboard-command-copy,
.panel-header > div,
.dashboard-panel-header > div,
.settings-ai-header > div,
.settings-config-head > div {
  min-width: 0;
}

.page-header h1,
.rs-page-hero h1,
.dashboard-command-copy h1,
.labor-hero h1,
.crm-hero h1,
.reports-hero h1,
.search-hero h1,
.panel-header h2,
.panel-header h3 {
  overflow-wrap: anywhere;
}

.actions-inline,
.table-actions,
.dashboard-command-actions,
.hero-actions,
.labor-hero-actions,
.labor-card-actions,
.settings-header-actions,
.row-action-pack,
.process-submit-row,
.contract-action-grid,
.template-config-actions,
.settings-save-bar {
  min-width: 0;
}

.actions-inline form,
.table-actions form,
.labor-card-actions form,
.user-row-actions form,
.contract-action-grid form {
  margin: 0;
  min-width: 0;
}

.primary-button,
.ghost-button,
.secondary-button,
.danger-button,
.icon-button,
button.primary-button,
button.ghost-button,
button.secondary-button,
button.danger-button,
a.primary-button,
a.ghost-button,
a.secondary-button,
a.danger-button,
.table-link,
.as-button-link {
  max-width: 100%;
  min-width: 0;
  text-align: center;
  text-decoration: none;
}

.primary-button,
.ghost-button,
.secondary-button,
.danger-button,
button.primary-button,
button.ghost-button,
button.secondary-button,
button.danger-button,
a.primary-button,
a.ghost-button,
a.secondary-button,
a.danger-button {
  gap: 8px;
  line-height: 1.15;
  white-space: normal;
}

.icon-button {
  flex: 0 0 auto;
}

button:disabled,
.primary-button:disabled,
.ghost-button:disabled,
.secondary-button:disabled,
.danger-button:disabled {
  pointer-events: none;
}

/* Formulários */
.form-grid,
.filters-grid,
.contact-filters-grid,
.labor-filter-grid,
.settings-field-grid,
.settings-mini-form,
.user-premium-form,
.asaas-form-grid,
.legal-structure-grid,
.template-config-item,
.tribunal-inline-form,
.refined-process-form {
  min-width: 0;
}

.field,
.field > *,
.checkbox-inline,
.checkbox-field,
.full-width,
fieldset,
legend {
  min-width: 0;
}

.field label,
.field span,
.field small,
.helper-text,
.option-hint {
  overflow-wrap: anywhere;
}

input,
select,
textarea {
  max-width: 100%;
  min-width: 0;
}

input:not([type='checkbox']):not([type='radio']):not([type='range']),
select,
textarea {
  min-height: 46px;
}

textarea {
  line-height: 1.55;
}

select {
  text-overflow: ellipsis;
}

input[type='file'] {
  min-height: 46px;
  padding: 10px 12px;
  line-height: 1.25;
}

input[type='file']::file-selector-button {
  margin-right: 10px;
  border: 1px solid rgba(12, 35, 31, 0.14);
  border-radius: 10px;
  background: #eff1ed;
  color: var(--text);
  font-weight: 800;
  padding: 8px 10px;
}

.checkbox-inline,
.settings-checkbox-row label,
.permission-card,
.document-check-card,
.contact-check span,
.contact-radio span {
  align-items: flex-start;
}

.checkbox-inline input,
.settings-checkbox-row input,
.permission-card input,
.document-check-card input,
.contact-check input,
.contact-radio input {
  flex: 0 0 auto;
}

/* Tabelas e listas extensas */
.table-card,
.table-scroll,
.ai-table-wrap,
.ai-table-scroll,
.ai-agents-scroll,
.settings-process-table,
.settings-table-wrap,
.contracts-list-card,
.asaas-recent-card {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.table-card table,
.table-scroll table,
.ai-table-wrap table,
.ai-table-scroll table,
.ai-agents-scroll table {
  width: max-content;
  min-width: min(760px, 100%);
}

th,
td {
  overflow-wrap: anywhere;
}

.table-actions {
  align-items: center;
}

.table-link,
.as-button-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  border-radius: 10px;
}

/* Grids: evita colunas rígidas e cards irregulares */
.stats-grid,
.metric-grid-4,
.premium-metric-grid,
.dashboard-top-grid,
.contact-summary-grid,
.process-metric-strip,
.labor-metric-grid,
.operation-health-grid,
.document-check-grid,
.search-empty-grid,
.search-results-grid,
.premium-shortcut-grid,
.shortcut-grid,
.settings-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}

.dashboard-top-grid,
.contact-summary-grid,
.process-metric-strip,
.labor-metric-grid,
.operation-health-grid,
.search-results-grid,
.search-empty-grid,
.premium-shortcut-grid,
.shortcut-grid,
.settings-grid {
  grid-auto-rows: 1fr;
}

.dashboard-kpi-card,
.contact-summary-card,
.process-metric-strip article,
.labor-calculation-card,
.dashboard-shortcut-card,
.shortcut-card,
.settings-card,
.search-result-card,
.search-empty-card,
.user-row-card,
.permission-card,
.document-check-card {
  min-width: 0;
}

.dashboard-kpi-card p,
.dashboard-shortcut-card p,
.dashboard-attention-item p,
.dashboard-activity-item p,
.shortcut-card p,
.settings-card p,
.contact-info-card p,
.list-item p,
.empty-state p {
  overflow-wrap: anywhere;
}

.labor-calculation-meta,
.labor-preview-list,
.contact-info-grid,
.detail-groups-grid,
.payment-preview-grid,
.bluebot-groups-grid,
.automation-toggle-grid,
.settings-section-grid,
.crm-detail-grid,
.crm-settings-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}

.dashboard-attention-list {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}

/* Drawers, overlays e painéis modais */
.crm-drawer,
.process-drawer-shell,
.contract-loading-overlay,
.sanitize-overlay {
  max-width: 100vw;
}

.crm-drawer-panel,
.process-drawer-panel,
.contract-loading-card,
.sanitize-overlay-card {
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.crm-drawer-head,
.process-drawer-header {
  gap: 12px;
}

.crm-drawer-head > div,
.process-drawer-header > div {
  min-width: 0;
}

.crm-drawer-head h2,
.process-drawer-header h2 {
  overflow-wrap: anywhere;
}

/* Dark mode: componentes corrigidos também precisam herdar contraste */
html[data-theme='dark'] input[type='file']::file-selector-button {
  background: rgba(255, 255, 255, 0.08);
  color: var(--rs-text-main, #eef5f1);
  border-color: rgba(199, 215, 206, 0.16);
}

html[data-theme='dark'] .flash {
  border-color: rgba(199, 215, 206, 0.14);
}

@media (max-width: 1280px) {
  .dashboard-attention-grid,
  .dashboard-main-grid,
  .dashboard-main-grid-v2,
  .premium-dashboard-grid,
  .content-grid,
  .contact-hero-grid,
  .contact-card-grid,
  .contact-detail-grid,
  .labor-board-grid,
  .process-layout-grid,
  .process-layout-grid-refined,
  .settings-layout,
  .settings-premium-layout,
  .settings-console-shell,
  .users-premium-grid,
  .doc-organizer-layout,
  .contracts-page-grid,
  .contract-detail-grid,
  .sanitize-page-grid,
  .legal-builder-shell,
  .reports-premium-grid,
  .insight-grid {
    grid-template-columns: 1fr;
  }

  .doc-organizer-sidebar,
  .process-form-card,
  .settings-config-nav,
  .settings-status-card {
    position: static;
    max-height: none;
  }
}

@media (max-width: 900px) {
  .page-header,
  .rs-page-hero,
  .labor-hero,
  .dashboard-command-hero,
  .crm-hero,
  .reports-hero,
  .search-hero,
  .panel-header,
  .dashboard-panel-header,
  .settings-ai-header,
  .settings-config-head,
  .labor-card-heading,
  .labor-section-heading,
  .doc-batch-header,
  .labor-calculation-main {
    flex-direction: column;
    display: flex;
    align-items: stretch;
  }

  .dashboard-command-actions,
  .actions-inline,
  .table-actions,
  .hero-actions,
  .labor-hero-actions,
  .labor-card-actions,
  .settings-header-actions,
  .row-action-pack,
  .settings-save-bar {
    justify-content: flex-start;
  }

  .dashboard-global-search div,
  .search-command-form,
  .labor-filter-grid,
  .filters-grid,
  .contact-filters-grid,
  .form-grid,
  .settings-field-grid,
  .settings-mini-form,
  .user-premium-form,
  .asaas-form-grid,
  .template-config-item,
  .tribunal-inline-form,
  .refined-process-form {
    grid-template-columns: 1fr;
  }

  .full-width,
  .field-span-2,
  .field-span-full,
  .process-filter-grid .field-span-2,
  .process-form-stack .field-span-full {
    grid-column: 1 / -1;
  }

  .settings-menu-list {
    max-height: none;
  }
}

@media (max-width: 760px) {
  .main-content,
  .rs-main {
    padding-left: 16px;
    padding-right: 16px;
  }

  .panel-card,
  .table-card,
  .auth-card,
  .error-card,
  .premium-panel,
  .dashboard-global-search,
  .dashboard-kpi-card,
  .labor-calculation-card,
  .contact-summary-card,
  .process-metric-strip article {
    border-radius: 18px;
  }

  .panel-card,
  .table-card,
  .premium-panel {
    padding: 16px;
  }

  .primary-button,
  .ghost-button,
  .secondary-button,
  .danger-button,
  button.primary-button,
  button.ghost-button,
  button.secondary-button,
  button.danger-button,
  a.primary-button,
  a.ghost-button,
  a.secondary-button,
  a.danger-button {
    width: 100%;
  }

  .table-actions .primary-button,
  .table-actions .ghost-button,
  .table-actions .secondary-button,
  .table-actions .danger-button,
  .user-row-actions .primary-button,
  .user-row-actions .ghost-button,
  .user-row-actions .secondary-button,
  .user-row-actions .danger-button {
    width: auto;
    flex: 1 1 140px;
  }

  .pill,
  .pill-success,
  .pill-muted,
  .pill-warning,
  .pill-danger,
  .chip {
    white-space: normal;
    text-align: center;
  }

  .crm-drawer,
  .process-drawer-shell {
    width: 100vw;
  }

  .crm-drawer-panel,
  .process-drawer-panel {
    max-width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }

  .rs-brand-logo-placeholder {
    min-height: 112px;
  }

  .rs-brand-logo-img {
    max-height: 90px;
  }
}

/* ---- migrated: 08 runtime ui fixes ---- */
/* Dashboard: mantém os grupos de atalhos alinhados e previsíveis. */
.dashboard-shortcut-groups {
  display: grid;
  grid-template-columns: repeat(4, minmax(220px, 1fr));
  align-items: start;
  gap: 14px;
}

.dashboard-shortcut-group {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 12px;
}

.dashboard-shortcut-group h3 {
  display: flex;
  align-items: flex-end;
  min-height: 24px;
  margin: 0;
}

.dashboard-shortcut-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.dashboard-shortcut-card {
  width: 100%;
  min-width: 0;
  min-height: 132px;
  align-content: start;
  padding-bottom: 42px;
}

.dashboard-shortcut-card strong,
.dashboard-shortcut-card p {
  overflow-wrap: anywhere;
}

.dashboard-shortcut-card em {
  max-width: calc(100% - 24px);
  white-space: normal;
  text-align: center;
  line-height: 1.15;
}

/* Processos: elimina cards estreitos, ações sobrepostas e metadados estourando layout. */
.process-monitoring-board-grid.process-board-single,
.process-board-single {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
}

.process-board-single .process-monitoring-left-column,
.process-monitoring-left-column,
.process-clients-card,
.processes-monitoring-card {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.process-clients-card .process-client-list,
.processes-monitoring-card .monitoring-card-list {
  min-width: 0;
}

.process-client-row,
.process-monitoring-card,
.contact-process-card {
  min-width: 0;
  overflow: hidden;
}

.process-client-row-top {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(280px, 420px);
  align-items: center;
  gap: 16px;
}

.process-client-main,
.process-title-block,
.contact-process-card-main {
  min-width: 0;
}

.process-client-title-line strong,
.process-title-block strong,
.process-title-block small,
.contact-process-card-main strong,
.contact-process-card-main small {
  overflow-wrap: anywhere;
  word-break: normal;
}

.process-client-action-row,
.process-card-actions,
.contact-process-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.process-client-action-row {
  justify-content: flex-end;
}

.process-card-actions,
.contact-process-actions {
  justify-content: flex-start;
}

.process-client-action-row .compact-chip,
.process-card-actions .compact-chip,
.contact-process-actions .compact-chip,
.process-action-chip {
  width: auto;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.15;
}

.process-row-main-premium {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.process-monitoring-meta-grid,
.contact-process-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  min-width: 0;
  overflow: hidden;
}

.process-monitoring-meta-grid span,
.contact-process-meta-grid span {
  min-width: 0;
}

.process-monitoring-meta-grid em,
.contact-process-meta-grid em {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.process-last-review-strip {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
  min-width: 0;
}

@media (max-width: 1320px) {
  .dashboard-shortcut-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .process-client-row-top {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

  .process-client-action-row {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .dashboard-shortcut-groups {
    grid-template-columns: 1fr;
  }

  .process-client-action-row .compact-chip,
  .process-card-actions .compact-chip,
  .contact-process-actions .compact-chip,
  .process-action-chip {
    width: 100%;
    justify-content: center;
  }
}

/* Correcoes finais na listagem de clientes/processos */
.process-client-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  padding: 18px 20px;
  min-height: 0;
}

.process-client-row-top {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.process-client-title-line {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.process-client-title-line strong {
  flex: 1 1 240px;
  white-space: normal;
  line-height: 1.2;
}

.process-client-action-row {
  justify-content: flex-end;
  align-items: center;
}

.process-client-action-row .compact-chip {
  white-space: nowrap;
}

@media (max-width: 900px) {
  .process-client-row-top {
    grid-template-columns: 1fr;
  }

  .process-client-action-row {
    justify-content: flex-start;
  }
}

/* ---- migrated: 09 sector repair ---- */
/* Marca lateral: remove o recorte estranho e alinha a imagem com o card. */
.rs-brand-logo-stage {
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  padding: 0;
  border-radius: 20px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  overflow: hidden;
}

.rs-brand-logo-placeholder {
  width: 58px;
  height: 58px;
  min-width: 58px;
  min-height: 58px;
  display: grid;
  place-items: center;
  padding: 0;
  border-radius: 16px;
  background: rgba(5, 9, 7, .38);
  box-shadow: none;
}

.rs-brand-logo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.rs-brand-logo-placeholder small,
.rs-brand-logo-monogram {
  display: none;
}

/* Títulos: usa o padrão visual de Clientes nas abas internas; Painel Geral fica preservado. */
.page-header:not(.dashboard-command-hero) h1,
.rs-page-hero:not(.dashboard-command-hero) h1,
.crm-page-header h1,
.settings-page-intro h1,
.settings-page-header h2,
.settings-ai-header h2 {
  font-size: clamp(38px, 3.6vw, 58px);
  line-height: 1.02;
  letter-spacing: -.045em;
  font-family: var(--font-sans);
  font-weight: 800;
}

.crm-hero-copy h1,
.crm-page-header .crm-hero-copy h1 {
  font-size: clamp(38px, 3.6vw, 58px);
  line-height: 1.02;
}

/* Painel Geral: números no padrão sans, sem aparência de fonte editorial. */
.dashboard-kpi-card strong,
.dashboard-crm-metrics strong,
.dashboard-attention-item span,
.stat-card strong,
.metric-card strong,
.premium-metric-card strong,
.crm-metric-card strong {
  font-family: var(--font-sans);
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  letter-spacing: -.045em;
}

/* Usuários: remove navegação morta, alinha permissões e normaliza cards. */
.settings-workspace-users .settings-users-grid-refined {
  grid-template-columns: minmax(360px, 500px) minmax(560px, 760px);
  gap: 22px;
  align-items: start;
}

.settings-workspace-users .premium-permissions-fieldset {
  padding: 18px;
}

.settings-workspace-users .premium-permissions-fieldset legend {
  padding: 0 8px;
}

.settings-workspace-users .premium-permissions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 4px;
}

.settings-workspace-users .permission-card {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 14px;
  white-space: normal;
}

.settings-workspace-users .permission-card input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.settings-workspace-users .permission-card span {
  min-width: 0;
  line-height: 1.25;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.settings-user-row-card {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(230px, .95fr) 150px;
  gap: 14px;
  align-items: center;
  min-height: 92px;
  overflow: visible;
}

.settings-user-profile {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
}

.settings-user-avatar {
  width: 54px;
  height: 54px;
  min-width: 54px;
  border-radius: 16px;
  font-size: 16px;
}

.settings-user-identity {
  min-width: 0;
}

.settings-user-identity strong,
.settings-user-identity p {
  display: block;
  max-width: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-user-identity strong {
  font-size: 16px;
  line-height: 1.2;
}

.settings-user-identity p {
  margin-top: 5px;
  color: var(--muted);
}

.settings-user-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
}

.settings-user-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  justify-items: stretch;
}

.settings-user-actions form {
  margin: 0;
}

.settings-user-actions .compact-action,
.settings-user-actions a.compact-action,
.settings-user-actions button.compact-action {
  width: 100%;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 12px;
  font-size: 13px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

/* CRM: melhora leitura dos cards e abre caminho para a esteira dedicada. */
.crm-board-title-link {
  color: inherit;
  text-decoration: none;
}

.crm-board-title-link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.crm-command-center {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
}

.crm-metric-card {
  min-height: 124px;
  align-content: start;
  padding: 18px;
}

.crm-metric-kicker {
  min-height: 34px;
  display: flex;
  align-items: flex-start;
  color: var(--crm-muted);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.25;
}

.crm-lead-card {
  border-style: dashed;
  background: linear-gradient(180deg, rgba(236, 242, 238, .78), rgba(255, 255, 255, .9));
}

.crm-board-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 2px 0 18px;
  color: var(--muted);
  font-weight: 700;
}

.crm-board-breadcrumb a {
  color: #244783;
}

.crm-board-page {
  max-width: none;
}

.crm-board-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
  margin-bottom: 18px;
}

.crm-board-search {
  display: grid;
  grid-template-columns: minmax(280px, 440px) auto;
  gap: 10px;
  align-items: end;
}

.crm-board-search .field {
  margin: 0;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.crm-board-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.crm-board-menu {
  position: relative;
}

.crm-board-menu summary {
  list-style: none;
  cursor: pointer;
}

.crm-board-menu summary::-webkit-details-marker {
  display: none;
}

.crm-board-menu > div {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 30;
  min-width: 180px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.crm-board-menu a {
  display: block;
  padding: 13px 16px;
  font-weight: 700;
}

.crm-board-menu a:hover {
  background: rgba(17,31,25,.05);
}

.crm-board-menu .danger-link {
  color: #b91c1c;
}

.crm-full-board-shell {
  overflow-x: auto;
  padding-bottom: 18px;
}

.crm-full-board {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(360px, 420px);
  gap: 20px;
  align-items: stretch;
  min-height: 620px;
}

.crm-full-column {
  display: flex;
  flex-direction: column;
  min-height: 620px;
  border: 1px solid rgba(17,31,25,.16);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
}

.crm-full-column-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
  background: rgba(248,248,244,.82);
}

.crm-full-column-head div {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.crm-full-column-head strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 16px;
}

.crm-full-column-head span,
.crm-full-column-head em {
  flex: 0 0 auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(17,31,25,.06);
  font-style: normal;
  font-weight: 800;
  font-size: 12px;
}

.crm-full-column-head a {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  border: 1px solid var(--border);
  font-weight: 900;
}

.crm-full-column-drop {
  display: grid;
  gap: 14px;
  align-content: start;
  padding: 16px;
  min-height: 540px;
  background: #f8fafc;
}

.crm-new-card-link {
  display: grid;
  place-items: center;
  min-height: 48px;
  border-radius: 12px;
  background: #fff;
  border: 1px dashed rgba(36, 71, 131, .30);
  color: #244783;
  font-weight: 800;
}

.crm-full-opportunity-card {
  box-shadow: none;
}

/* Responsivo */
@media (max-width: 1220px) {
  .settings-workspace-users .settings-users-grid-refined {
    grid-template-columns: 1fr;
  }

  .settings-user-row-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .settings-user-actions {
    grid-template-columns: repeat(2, minmax(0, 160px));
    justify-content: flex-start;
  }

  .crm-command-center {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

  .crm-board-search {
    grid-template-columns: 1fr auto;
  }

  .crm-board-tools {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .settings-workspace-users .premium-permissions-grid,
  .crm-command-center,
  .crm-board-search {
    grid-template-columns: 1fr;
  }

  .settings-user-actions {
    grid-template-columns: 1fr;
  }

  .crm-full-board {
    grid-auto-columns: minmax(300px, 88vw);
  }
}

.settings-console-summary-row-users { grid-template-columns: minmax(0, 1fr); }

.settings-menu-icon::before { content: none; }

.settings-user-identity strong,
.settings-user-identity p {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

.settings-user-row-card {
  min-height: 98px;
}

/* ==========================================================================
   Ajustes globais de ocupação de espaço, contraste e refinamento visual
   ========================================================================== */

.rs-shell {
  align-items: stretch;
  min-height: 100vh;
}

.rs-main {
  width: 100%;
  max-width: none;
  padding-inline: clamp(18px, 2vw, 34px);
}

.rs-sidebar,
.sidebar,
.sidebar-v2 {
  align-self: stretch;
  min-height: 100vh;
  height: auto;
}

/* Aproveitamento melhor do canvas em páginas operacionais */
.page-header,
.panel-card,
.table-card,
.crm-page,
.crm-workspace-hero,
.crm-panel,
.process-page,
.settings-console-shell,
.settings-console-shell-pro,
.settings-refactor-shell,
.contract-detail-layout,
.record-create-layout {
  max-width: none;
}

/* Tabelas principais devem ocupar o card inteiro em telas amplas */
body:not(.auth-layout) .table-card table,
body:not(.auth-layout) .records-table table,
body:not(.auth-layout) .contacts-table table,
body:not(.auth-layout) .clients-table table,
body:not(.auth-layout) .table-scroll table {
  width: 100%;
  min-width: 100%;
  table-layout: auto;
}

.table-card > .panel-header,
.table-card > table,
.table-card > .empty-state,
.table-card > .list-stack {
  width: 100%;
}

.table-card {
  overflow-x: auto;
}

/* Contatos, clientes e expedientes */
.contact-filters-grid,
.filters-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.table-card tbody tr td:last-child,
.table-card thead tr th:last-child {
  white-space: nowrap;
}

/* CRM: usar a largura integral do layout padrão */
.crm-page,
.crm-page > *,
.crm-page-header,
.crm-workspace-hero,
.crm-panel,
.crm-main-grid,
.crm-admin-grid,
.crm-sidebar-stack,
.crm-funnel-shell,
.crm-full-board-shell,
.crm-board-shell {
  width: 100%;
  max-width: none;
}

.crm-page-header {
  grid-template-columns: minmax(0, 1fr) auto;
}

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

.crm-main-grid,
.crm-admin-grid {
  grid-template-columns: minmax(0, 1fr);
}

.crm-kanban-board,
.crm-full-board {
  grid-auto-columns: minmax(280px, 1fr);
}

/* Sidebar deve acompanhar até o final visual da página */
.main-content,
.rs-main {
  min-height: 100vh;
}

/* Contraste no modo escuro e cards de expediente */
.record-classification-card {
  min-height: 102px;
}

.record-classification-card strong {
  color: var(--text);
}

.record-classification-card small {
  color: #61706a;
}

html[data-theme='dark'] .record-classification-card,
html[data-theme='dark'] .record-side-card,
html[data-theme='dark'] .labor-step-card,
html[data-theme='dark'] .panel-card,
html[data-theme='dark'] .table-card {
  background: rgba(14, 27, 22, 0.94);
}

html[data-theme='dark'] .record-classification-card strong,
html[data-theme='dark'] .record-classification-card small,
html[data-theme='dark'] .record-side-card strong,
html[data-theme='dark'] .record-side-card p,
html[data-theme='dark'] .record-side-card span,
html[data-theme='dark'] .labor-step-card strong,
html[data-theme='dark'] .labor-step-card span,
html[data-theme='dark'] .field label,
html[data-theme='dark'] .field small,
html[data-theme='dark'] .helper-text,
html[data-theme='dark'] .contact-summary-card span,
html[data-theme='dark'] .stat-card span,
html[data-theme='dark'] .stat-card small {
  color: rgba(239, 247, 241, 0.92);
}

html[data-theme='dark'] input,
html[data-theme='dark'] select,
html[data-theme='dark'] textarea {
  color: #eff7f1;
}

html[data-theme='dark'] input::placeholder,
html[data-theme='dark'] textarea::placeholder {
  color: rgba(239, 247, 241, 0.58);
}

/* Contratos e anexos: reduzir vazios e lidar com nomes longos */
.contract-detail-layout {
  grid-template-columns: minmax(0, 1.5fr) minmax(330px, 0.92fr);
  align-items: start;
}

.contract-section-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.contract-info-card,
.contract-sidebar-stack > .panel-card {
  height: auto;
}

.contract-field-textarea {
  min-height: 86px;
}

.contract-sidebar-stack .list-item-top,
.contract-sidebar-stack .list-item-top strong,
.contract-sidebar-stack .list-item-top .pill,
.contract-sidebar-stack .list-item p {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}

.contract-sidebar-stack .list-item-top {
  align-items: flex-start;
}

.contract-sidebar-stack .pill {
  max-width: 100%;
  text-align: left;
}

.contract-action-grid {
  align-items: stretch;
}

.contract-action-grid .primary-button,
.contract-action-grid .ghost-button,
.contract-action-grid a,
.contract-action-grid button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Configurações: ícones mais sóbrios, sem submenus internos */
nav.settings-local-tabs[aria-label='Grupos de metas'],
nav.settings-local-tabs[aria-label='Subabas do núcleo'],
nav.settings-local-tabs[aria-label='Subabas de integrações'],
nav.settings-local-tabs[aria-label='Subabas financeiras'],
nav.settings-local-tabs[aria-label='Subabas de produção jurídica'],
nav.settings-local-tabs[aria-label='Subabas processuais'] {
  display: none;
}

.settings-menu-icon {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  background: rgba(17, 31, 25, 0.06);
  border: 1px solid rgba(17, 31, 25, 0.08);
  color: var(--text);
}

html[data-theme='dark'] .settings-menu-icon {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.1);
  color: #eff7f1;
}

/* Usuários: alinhar ações laterais */
.settings-user-row-card,
.user-row-card.settings-user-row-card {
  grid-template-columns: minmax(260px, 1fr) minmax(220px, .95fr) 150px;
  align-items: center;
}

.settings-user-actions,
.user-row-actions.settings-user-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-self: center;
}

.settings-user-actions > *,
.user-row-actions.settings-user-actions > * {
  width: 100%;
}

.settings-user-actions .compact-action,
.user-row-actions.settings-user-actions .compact-action {
  min-height: 38px;
}

/* Painel operacional movido para Processos */
.process-monitoring-governance-card {
  display: grid;
  gap: 14px;
}

.process-monitoring-governance-card p {
  margin: 0;
}

.process-monitor-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.process-monitoring-table > div {
  display: grid;
  grid-template-columns: minmax(280px, 1.3fr) minmax(160px, .8fr) minmax(220px, 1fr) minmax(140px, .75fr) minmax(150px, .7fr);
  gap: 14px;
  align-items: center;
}

.process-monitoring-table > div strong a {
  color: inherit;
  text-decoration: none;
}

.process-monitoring-table > div strong a:hover {
  text-decoration: underline;
}

.process-monitoring-table em.success,
.process-monitoring-table em.warning,
.process-monitoring-table em.danger,
.process-monitoring-table em.neutral {
  display: inline-flex;
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
}

.process-monitoring-table em.success { background: rgba(53, 95, 70, 0.12); color: #2f5b43; }
.process-monitoring-table em.warning { background: rgba(181, 135, 46, 0.14); color: #8d6113; }
.process-monitoring-table em.danger { background: rgba(161, 58, 58, 0.12); color: #933535; }
.process-monitoring-table em.neutral { background: rgba(17, 31, 25, 0.08); color: var(--text); }

.process-monitoring-empty-row {
  display: block;
}

.process-monitoring-empty-row .empty-state {
  width: 100%;
}

.process-monitoring-actions-inline {
  justify-content: flex-start;
}

@media (max-width: 1280px) {
  .contract-detail-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1080px) {
  .crm-workspace-hero,
  .crm-page-header,
  .process-monitor-filters {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 820px) {
  .settings-user-row-card,
  .user-row-card.settings-user-row-card,
  .process-monitoring-table > div,
  .contact-filters-grid,
  .filters-grid {
    grid-template-columns: 1fr;
  }
}

/* Refino extra: Contratos e Anexos deve ocupar melhor a área livre do resumo */
.contract-detail-layout {
  grid-template-columns: minmax(0, 1.72fr) minmax(360px, 0.86fr);
}

.contract-section-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  grid-auto-flow: row dense;
}

.contract-info-card-contract {
  grid-column: 1 / -1;
}

.contract-info-card-contract .contract-field-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.contract-info-card-contract .contract-field-full,
.contract-info-card-contract .contract-field-textarea {
  grid-column: 1 / -1;
}

.contract-info-card-address {
  min-height: 100%;
}

.contract-info-card-address .contract-field-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contract-address-field {
  min-height: 180px;
}

.contract-address-field strong {
  align-self: start;
}

@media (max-width: 1400px) {
  .contract-detail-layout {
    grid-template-columns: minmax(0, 1.45fr) minmax(330px, 0.92fr);
  }

  .contract-info-card-contract .contract-field-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .contract-info-card-contract .contract-field-grid,
  .contract-info-card-address .contract-field-grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   Rodada 3 — ajuste fino para 1080p, remoção de espaço morto e revisão de grids
   ========================================================================== */

/* Sidebar e marca: alinhar o símbolo com a moldura e manter linguagem sóbria */
.rs-brand-card,
.brand-card-v2.rs-brand-card {
  padding: 0 0 18px;
}

.rs-brand-link-enhanced {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.02) 100%);
}

.rs-brand-logo-stage {
  width: 72px;
  height: 72px;
  border-radius: 18px;
  background: rgba(255, 255, 255, .07);
}

.rs-brand-logo-placeholder {
  width: 56px;
  height: 56px;
  min-width: 56px;
  min-height: 56px;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(5, 9, 7, .26);
  border: 1px solid rgba(255,255,255,.09);
}

.rs-brand-logo-img {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  object-fit: contain;
  border-radius: 12px;
}

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

.rs-brand-title {
  line-height: 0.95;
}

.rs-brand-subtitle {
  display: block;
  letter-spacing: .18em;
}

/* Navegação lateral: ícones consistentes com o padrão visual do sistema */
.nav-glyph {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0;
}

/* Papel do usuário no rodapé deve respeitar o gênero configurado */
.rs-user-card p {
  text-transform: none;
}

/* Organização geral de páginas operacionais */
.process-page,
.crm-page,
.settings-console-shell,
.contract-detail-layout,
.record-create-layout {
  row-gap: 20px;
}

/* Processos: separar melhor os blocos de governança e filtro */
.process-page {
  display: grid;
  gap: 20px;
}

.process-monitoring-governance-card {
  gap: 16px;
  padding-bottom: 18px;
}

.process-monitoring-governance-card .settings-inline-actions {
  padding-top: 12px;
  border-top: 1px solid rgba(17, 31, 25, 0.08);
}

.process-monitoring-governance-card + .refined-process-filter {
  margin-top: 4px;
  position: relative;
}

.process-monitoring-governance-card + .refined-process-filter::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -12px;
  height: 1px;
  background: rgba(17, 31, 25, 0.08);
}

.refined-process-filter {
  padding-top: 22px;
}

.refined-process-filter .panel-header {
  margin-bottom: 12px;
}

.process-monitor-filters {
  gap: 12px;
}

.process-monitoring-table {
  margin-top: 4px;
}

.with-client-board {
  gap: 20px;
}

.process-clients-card,
.processes-monitoring-card,
.refined-process-list-card {
  min-height: 0;
}

.processes-monitoring-card .process-list-header,
.process-clients-card .panel-header {
  margin-bottom: 12px;
}

/* Contratos e Anexos: pequenos refinamentos extras para reduzir sensação de vazio */
.contract-section-grid {
  gap: 14px;
}

.contract-info-card {
  padding: 16px;
}

/* Em telas 1080p: prioriza leitura, preenchimento e respiro equilibrado */
@media (max-width: 1440px) {
  .app-shell-v2 {
    grid-template-columns: 274px minmax(0, 1fr);
  }

  .process-kpi-grid-monitoring {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

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

  .process-monitoring-table > div {
    grid-template-columns: minmax(180px, 1.1fr) minmax(130px, .7fr) minmax(180px, .95fr) minmax(120px, .65fr) minmax(120px, .6fr);
  }

  .process-filter-grid-compact {
    grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(140px, 1fr)) auto;
  }
}

@media (max-width: 1180px) {
  .app-shell-v2 {
    grid-template-columns: 1fr;
  }

  .process-kpi-grid-monitoring,
  .process-filter-grid-compact,
  .process-monitor-filters,
  .with-client-board {
    grid-template-columns: 1fr;
  }

  .process-monitoring-table > div {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-block: 12px;
  }
}

html[data-theme='dark'] .process-monitoring-governance-card .settings-inline-actions {
  border-top-color: rgba(255, 255, 255, 0.08);
}

html[data-theme='dark'] .process-monitoring-governance-card + .refined-process-filter::before {
  background: rgba(255, 255, 255, 0.08);
}

/* Correção fina pós-validação: marca lateral e papel do usuário */
.rs-brand-link-enhanced {
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 12px;
  padding: 12px;
}

.rs-brand-logo-stage {
  width: 64px;
  height: 64px;
  padding: 0;
  border-radius: 16px;
  background: transparent;
  border: none;
  box-shadow: none;
}

.rs-brand-logo-placeholder {
  width: 64px;
  height: 64px;
  min-width: 64px;
  min-height: 64px;
  padding: 0;
  border-radius: 16px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rs-brand-logo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
  background: transparent;
}

.rs-brand-title {
  font-size: 24px;
}

.rs-brand-subtitle {
  font-size: 11px;
}

.rs-user-card div p {
  color: rgba(255,255,255,.72);
  font-size: 12px;
  font-weight: 700;
}

/* ---- migrated: 10 preprod hardening ---- */
:root {
  --cirs-green-rgb: 9, 55, 43;
  --cirs-dark-surface: #0f1b16;
  --cirs-dark-surface-2: #13231c;
  --cirs-dark-field: #0b1712;
  --cirs-dark-border: rgba(232, 238, 230, .15);
  --cirs-dark-text: #f3f6ef;
  --cirs-dark-muted: #b7c3ba;
}

/* Base dark mode: evita texto apagado sobre cartões, campos e estados vazios. */
html[data-theme='dark'] body,
html[data-theme='dark'] .main-content,
html[data-theme='dark'] .rs-main {
  color: var(--cirs-dark-text);
}

html[data-theme='dark'] h1,
html[data-theme='dark'] h2,
html[data-theme='dark'] h3,
html[data-theme='dark'] h4,
html[data-theme='dark'] strong,
html[data-theme='dark'] label,
html[data-theme='dark'] .panel-header h2,
html[data-theme='dark'] .panel-header h3,
html[data-theme='dark'] .page-header h1,
html[data-theme='dark'] .rs-page-hero h1,
html[data-theme='dark'] .dashboard-command-copy h1,
html[data-theme='dark'] .labor-hero h1,
html[data-theme='dark'] .crm-hero-copy h1,
html[data-theme='dark'] .settings-page-intro h1 {
  color: var(--cirs-dark-text);
}

html[data-theme='dark'] p,
html[data-theme='dark'] small,
html[data-theme='dark'] .helper-text,
html[data-theme='dark'] .empty-state,
html[data-theme='dark'] .eyebrow,
html[data-theme='dark'] .settings-breadcrumb,
html[data-theme='dark'] .page-header p,
html[data-theme='dark'] .rs-page-hero p,
html[data-theme='dark'] .labor-hero p,
html[data-theme='dark'] .crm-hero-copy p,
html[data-theme='dark'] .dashboard-command-copy p {
  color: var(--cirs-dark-muted);
}

html[data-theme='dark'] .empty-state,
html[data-theme='dark'] .premium-empty-state,
html[data-theme='dark'] .process-empty-state {
  background: rgba(232, 238, 230, .07);
  border-color: rgba(232, 238, 230, .16);
}

html[data-theme='dark'] input::placeholder,
html[data-theme='dark'] textarea::placeholder {
  color: rgba(232, 238, 230, .55);
}

/* Tabelas: elimina cabeçalho sem contraste/azulado em Expedientes CIRS e páginas similares. */
.table-card table {
  border-collapse: separate;
  border-spacing: 0;
}

.table-card th {
  background: #eef0e8;
  color: #24352d;
  border-bottom: 1px solid rgba(9, 55, 43, .16);
  font-weight: 900;
}

.table-card td {
  color: var(--rs-text-main, #10211a);
}

html[data-theme='dark'] .table-card th {
  background: #1a2b23;
  color: var(--cirs-dark-text);
  border-bottom-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .table-card td {
  color: var(--cirs-dark-text);
  border-bottom-color: rgba(232, 238, 230, .10);
}

html[data-theme='dark'] .table-card tr:hover td {
  background: rgba(232, 238, 230, .045);
}

html[data-theme='dark'] .pill,
html[data-theme='dark'] .chip,
html[data-theme='dark'] .chip-soft {
  background: rgba(232, 238, 230, .10);
  color: var(--cirs-dark-text);
  border-color: rgba(232, 238, 230, .14);
}

/* Inteligência RS: remove canvas branco no dark mode e aumenta contraste do estado inicial. */
html[data-theme='dark'] .vs-sidebar-card,
html[data-theme='dark'] .vs-chat-card {
  background: var(--cirs-dark-surface);
  border-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .vs-chat-header,
html[data-theme='dark'] .vs-composer {
  background: var(--cirs-dark-surface-2);
  border-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .vs-chat-scroll {
  background:
    radial-gradient(circle at 50% 0%, rgba(214, 215, 189, .08), transparent 34%),
    var(--cirs-dark-field);
}

html[data-theme='dark'] .vs-empty-chat {
  width: min(760px, 100%);
  margin: 56px auto;
  padding: 34px;
  border-radius: 24px;
  background: rgba(232, 238, 230, .06);
  border: 1px solid rgba(232, 238, 230, .12);
}

html[data-theme='dark'] .vs-empty-chat-badge,
html[data-theme='dark'] .vs-agent-button {
  background: rgba(232, 238, 230, .10);
  border-color: rgba(232, 238, 230, .14);
  color: var(--cirs-dark-text);
}

html[data-theme='dark'] .vs-agent-button.active,
html[data-theme='dark'] .vs-message-bubble.user,
html[data-theme='dark'] .vs-message-avatar.assistant {
  background: #d6d7bd;
  color: #0b130f;
}

html[data-theme='dark'] .vs-conversation-item,
html[data-theme='dark'] .vs-message-bubble.assistant,
html[data-theme='dark'] .vs-message-bubble.pending {
  background: rgba(232, 238, 230, .075);
  border-color: rgba(232, 238, 230, .14);
  color: var(--cirs-dark-text);
}

/* Processos: remove tom azul e mantém os 5 KPIs em uma linha útil quando houver espaço. */
.process-kpi-grid-monitoring {
  grid-template-columns: repeat(5, minmax(170px, 1fr));
  align-items: stretch;
}

.process-kpi-card {
  background: rgba(255, 255, 252, .92);
  border-color: rgba(var(--cirs-green-rgb), .13);
}

.process-kpi-card > span,
.process-summary-chevron {
  background: rgba(var(--cirs-green-rgb), .08);
  color: #0b3d2e;
}

.process-clients-card .process-monitoring-details > summary,
.process-section-collapse > summary.process-section-summary {
  background: rgba(var(--cirs-green-rgb), .045);
  border-bottom-color: rgba(var(--cirs-green-rgb), .10);
}

.processes-monitoring-card,
.process-clients-card,
.process-monitoring-card,
.contact-process-card,
.process-party-card,
.process-party-empty {
  border-color: rgba(var(--cirs-green-rgb), .12);
}

html[data-theme='dark'] .process-kpi-card,
html[data-theme='dark'] .processes-monitoring-card,
html[data-theme='dark'] .process-clients-card,
html[data-theme='dark'] .process-monitoring-card,
html[data-theme='dark'] .contact-process-card,
html[data-theme='dark'] .process-party-card,
html[data-theme='dark'] .process-party-empty {
  background: var(--cirs-dark-surface);
  border-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .process-clients-card .process-monitoring-details > summary,
html[data-theme='dark'] .process-section-collapse > summary.process-section-summary {
  background: var(--cirs-dark-surface-2);
  border-bottom-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .process-kpi-card small,
html[data-theme='dark'] .process-kpi-card em,
html[data-theme='dark'] .process-monitoring-meta-grid,
html[data-theme='dark'] .process-monitoring-meta-grid em,
html[data-theme='dark'] .contact-process-meta-grid em {
  color: var(--cirs-dark-muted);
}

@media (max-width: 1100px) {
  .process-kpi-grid-monitoring { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .process-kpi-grid-monitoring { grid-template-columns: 1fr; }
}

/* Painel Geral: seis KPIs cabem na primeira linha e descrições não quebram em duas linhas. */
.dashboard-top-grid {
  grid-template-columns: repeat(6, minmax(148px, 1fr));
}

.dashboard-kpi-card {
  min-height: 148px;
  padding: 18px;
}

.dashboard-kpi-card h2,
.dashboard-kpi-card p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dashboard-kpi-card p {
  font-size: .95rem;
}

@media (max-width: 1160px) {
  .dashboard-top-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .dashboard-top-grid { grid-template-columns: 1fr; }
  .dashboard-kpi-card h2,
  .dashboard-kpi-card p { white-space: normal; }
}

/* CRM: a prévia do Kanban ocupa a largura da página em vez de deixar vazio lateral. */
.crm-main-grid {
  grid-template-columns: minmax(0, 1fr);
}

.crm-page:not(.crm-detail-page) .crm-sidebar-stack {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.crm-kanban-board {
  grid-auto-columns: minmax(300px, 1fr);
}

.crm-kanban-column {
  min-height: 560px;
}

.crm-full-board-shell,
.crm-kanban-shell {
  width: 100%;
}

html[data-theme='dark'] .crm-kanban-column,
html[data-theme='dark'] .crm-full-column,
html[data-theme='dark'] .crm-full-column-head,
html[data-theme='dark'] .crm-full-column-drop,
html[data-theme='dark'] .crm-lead-card {
  background: var(--cirs-dark-surface);
  border-color: var(--cirs-dark-border);
}

@media (max-width: 900px) {
  .crm-page:not(.crm-detail-page) .crm-sidebar-stack { grid-template-columns: 1fr; }
  .crm-kanban-board { grid-auto-flow: row; grid-template-columns: 1fr; }
}

/* Cálculos Trabalhistas: status do worker com leitura clara no dark mode. */
html[data-theme='dark'] .labor-worker-card,
html[data-theme='dark'] .labor-list-card,
html[data-theme='dark'] .labor-filter-card,
html[data-theme='dark'] .labor-calculation-card,
html[data-theme='dark'] .labor-calculation-meta,
html[data-theme='dark'] .settings-tip-stack div,
html[data-theme='dark'] .labor-ordered-list {
  background: var(--cirs-dark-surface);
  border-color: var(--cirs-dark-border);
  color: var(--cirs-dark-text);
}

html[data-theme='dark'] .labor-worker-card .settings-tip-stack div,
html[data-theme='dark'] .labor-ordered-list li,
html[data-theme='dark'] .labor-calculation-meta strong,
html[data-theme='dark'] .labor-calculation-meta em {
  color: var(--cirs-dark-muted);
}

/* Erros: tela 403/500 mais legível e coerente com tema. */
.error-card {
  max-width: 720px;
  margin: min(12vh, 96px) auto;
  padding: clamp(26px, 4vw, 44px);
  border-radius: 28px;
}

.error-card .error-code,
.error-code {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(143, 45, 45, .10);
  color: #8f2d2d;
  font-weight: 900;
}

html[data-theme='dark'] .error-card {
  background: var(--cirs-dark-surface);
  border-color: var(--cirs-dark-border);
}

html[data-theme='dark'] .error-code {
  background: rgba(255, 180, 180, .12);
  color: #ffc9c9;
}

/* ---- migrated: 11 production visual hardening ---- */
:root {
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --cirs-surface: #ffffff;
  --cirs-surface-soft: #f7f6f1;
  --cirs-ink: #10211a;
  --cirs-muted: #5f6b64;
  --cirs-line: #deddd4;
  --cirs-line-strong: #cecdc3;
  --cirs-focus: rgba(13, 59, 45, .24);
}

html[data-theme='dark'] {
  --cirs-surface: #0f1b16;
  --cirs-surface-soft: #13231c;
  --cirs-ink: #f3f6ef;
  --cirs-muted: #b7c3ba;
  --cirs-line: rgba(232, 238, 230, .15);
  --cirs-line-strong: rgba(232, 238, 230, .24);
  --cirs-focus: rgba(214, 215, 189, .28);
}

html,
body {
  overflow-x: hidden;
}

body,
input,
select,
textarea,
button {
  font-family: var(--font-sans);
}

.page-header h1,
.rs-page-hero h1,
.auth-card h1,
.error-card h1,
.premium-metric-card strong,
.metric-card strong {
  font-family: var(--font-serif);
}

body.nav-open,
body.crm-drawer-open,
body.process-drawer-open {
  overflow: hidden;
}

.main-content,
.rs-main,
.app-shell-v2,
.shell {
  overflow-x: clip;
}

.table-card,
.table-scroll,
.ai-table-wrap,
.ai-table-scroll,
.ai-agents-scroll,
.settings-process-table,
.settings-table-wrap,
.contracts-list-card,
.asaas-recent-card,
.crm-kanban-board,
.crm-full-board-shell {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--cirs-focus);
  outline-offset: 2px;
}

/* Shared utilities for static styles removed from EJS views. */
.text-lg { font-size: 18px; }
.m-0 { margin: 0; }
.pre-wrap-block { margin: 0; white-space: pre-wrap; }
.progress-track-spaced { margin-top: 8px; }
.textarea-tall { min-height: 320px; }
.grid-column-full { grid-column: 1 / -1; }
.grid-two-one { grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr); }
.grid-equal { grid-template-columns: repeat(2, minmax(0, 1fr)); }

@media (max-width: 900px) {
  .grid-two-one,
  .grid-equal {
    grid-template-columns: 1fr;
  }
}

/* Dark mode coverage for styles extracted from automation partials. */
html[data-theme='dark'] .contract-loading-overlay,
html[data-theme='dark'] .sanitize-overlay {
  background: rgba(2, 6, 4, .68);
}

html[data-theme='dark'] .contract-loading-card,
html[data-theme='dark'] .sanitize-overlay-card {
  background: var(--cirs-surface);
  border-color: var(--cirs-line);
  color: var(--cirs-ink);
  box-shadow: 0 22px 60px rgba(0, 0, 0, .35);
}

html[data-theme='dark'] .contract-loading-title,
html[data-theme='dark'] .contract-loading-text,
html[data-theme='dark'] .sanitize-overlay-card h2,
html[data-theme='dark'] .sanitize-overlay-card p {
  color: var(--cirs-ink);
}

html[data-theme='dark'] .contract-loading-spinner,
html[data-theme='dark'] .sanitize-spinner {
  border-color: rgba(232, 238, 230, .16);
  border-top-color: #d6d7bd;
}

html[data-theme='dark'] .legal-phase-pill {
  background: rgba(232, 238, 230, .08);
  border-color: var(--cirs-line);
  color: var(--cirs-muted);
}

html[data-theme='dark'] .legal-phase-pill.is-active {
  background: #d6d7bd;
  border-color: #d6d7bd;
  color: #0b130f;
}

html[data-theme='dark'] .annex-helper-card,
html[data-theme='dark'] .sanitize-record-item,
html[data-theme='dark'] .sanitize-preview-card,
html[data-theme='dark'] .preview-notice-card {
  background: var(--cirs-surface-soft);
  border-color: var(--cirs-line);
  color: var(--cirs-ink);
}

html[data-theme='dark'] .annex-helper-card p,
html[data-theme='dark'] .contact-picker-note,
html[data-theme='dark'] .sanitize-record-item small,
html[data-theme='dark'] .sanitize-preview-card small {
  color: var(--cirs-muted);
}

/* CRM detail pages: close the visual gap between kanban/list pages and internals. */
.crm-detail-page {
  max-width: 1480px;
}

.crm-detail-page .crm-hero.compact {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1rem;
  padding: clamp(1.2rem, 2.2vw, 2rem);
  border: 1px solid var(--crm-line, rgba(7, 29, 22, .11));
  border-radius: 26px;
  background: var(--crm-card, rgba(255,255,255,.92));
  box-shadow: 0 14px 34px rgba(7, 29, 22, .07);
}

.crm-detail-page .crm-hero.compact h1 {
  margin: .3rem 0 .45rem;
  font-size: clamp(2rem, 3.3vw, 4.2rem);
  line-height: .95;
  letter-spacing: -.055em;
  color: var(--crm-ink, #071d16);
}

.crm-detail-page .crm-hero.compact p {
  max-width: 760px;
  margin: 0;
  color: var(--crm-muted, #68756d);
  line-height: 1.6;
}

.crm-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  gap: 1rem;
  align-items: start;
}

.crm-detail-page .crm-main-stack,
.crm-detail-page .crm-sidebar-stack,
.crm-detail-page .crm-detail-card,
.crm-detail-page .crm-side-card,
.crm-detail-page .crm-timeline {
  display: grid;
  gap: 1rem;
}

.crm-detail-page .crm-sidebar-stack {
  grid-template-columns: 1fr;
}

.crm-detail-card,
.crm-side-card {
  border-color: var(--crm-line, rgba(7, 29, 22, .11));
  background: var(--crm-card, rgba(255,255,255,.94));
}

.crm-card-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .9rem;
  margin-bottom: .9rem;
}

.crm-card-heading h2 {
  margin: .18rem 0 0;
  letter-spacing: -.035em;
}

.crm-note-form {
  display: grid;
  gap: .8rem;
  padding: .9rem;
  border: 1px solid var(--crm-line, rgba(7, 29, 22, .11));
  border-radius: 18px;
  background: var(--crm-soft, #f7f7f2);
}

.crm-timeline-item {
  display: grid;
  gap: .3rem;
  border: 1px solid var(--crm-line, rgba(7, 29, 22, .11));
  border-radius: 18px;
  padding: .95rem;
  background: var(--crm-soft, #f7f7f2);
}

.crm-timeline-item > span,
.crm-timeline-item p,
.crm-side-card p {
  margin: 0;
  color: var(--crm-muted, #68756d);
  line-height: 1.5;
}

.crm-timeline-item > span {
  font-size: .78rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.crm-side-card .crm-task-list {
  margin-top: .75rem;
}

html[data-theme='dark'] .crm-detail-page .crm-hero.compact,
html[data-theme='dark'] .crm-detail-card,
html[data-theme='dark'] .crm-side-card,
html[data-theme='dark'] .crm-note-form,
html[data-theme='dark'] .crm-timeline-item {
  background: var(--cirs-surface);
  border-color: var(--cirs-line);
  color: var(--cirs-ink);
}

html[data-theme='dark'] .crm-detail-page .crm-hero.compact h1,
html[data-theme='dark'] .crm-card-heading h2,
html[data-theme='dark'] .crm-timeline-item strong,
html[data-theme='dark'] .crm-side-card h2 {
  color: var(--cirs-ink);
}

html[data-theme='dark'] .crm-detail-page .crm-hero.compact p,
html[data-theme='dark'] .crm-timeline-item > span,
html[data-theme='dark'] .crm-timeline-item p,
html[data-theme='dark'] .crm-side-card p {
  color: var(--cirs-muted);
}

@media (max-width: 1180px) {
  .crm-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .crm-detail-page .crm-hero.compact {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .crm-detail-page .crm-hero-actions,
  .crm-detail-page .crm-hero-actions form,
  .crm-detail-page .crm-hero-actions a,
  .crm-detail-page .crm-hero-actions button {
    width: 100%;
  }

  .crm-card-heading {
    display: grid;
  }
}

/* ---- migrated: 12 visual system final ---- */
:root {
  color-scheme: light;
  --surface: #ffffff;
  --surface-raised: rgba(255, 255, 255, 0.94);
  --surface-muted: #f7f6f1;
  --surface-subtle: #eeede5;
  --ink: #10211a;
  --ink-soft: #314139;
  --muted: #647067;
  --line: rgba(17, 31, 25, 0.11);
  --line-strong: rgba(17, 31, 25, 0.18);
  --accent: #0a3428;
  --accent-strong: #06251b;
  --accent-soft: rgba(10, 52, 40, 0.09);
  --brand-gold: #d6d7bd;
  --danger: #9d2f2f;
  --warning: #8a6420;
  --success: #255c39;
  --focus-ring: rgba(10, 52, 40, 0.28);
  --radius-card: 24px;
  --radius-control: 14px;
  --shadow-card: 0 18px 42px rgba(17, 31, 25, 0.08);
  --shadow-float: 0 26px 70px rgba(17, 31, 25, 0.14);
  --page-max: 1480px;
}

html[data-theme='dark'] {
  color-scheme: dark;
  --bg: #0b130f;
  --text: #f3f6ef;
  --surface: #101d17;
  --surface-raised: rgba(18, 32, 25, 0.96);
  --surface-muted: #15251d;
  --surface-subtle: #1c3027;
  --ink: #f3f6ef;
  --ink-soft: #dce5dc;
  --muted: #b8c4bb;
  --line: rgba(232, 238, 230, 0.14);
  --line-strong: rgba(232, 238, 230, 0.24);
  --accent: #d6d7bd;
  --accent-strong: #f1f2d9;
  --accent-soft: rgba(214, 215, 189, 0.12);
  --brand-gold: #d6d7bd;
  --focus-ring: rgba(214, 215, 189, 0.32);
  --shadow-card: 0 18px 42px rgba(0, 0, 0, 0.28);
  --shadow-float: 0 28px 78px rgba(0, 0, 0, 0.42);
}

html {
  min-width: 320px;
  overflow-x: hidden;
  scrollbar-gutter: stable;
}

body {
  min-width: 0;
  overflow-x: hidden;
  background: var(--bg);
  color: var(--text);
}

body.nav-open,
body.crm-drawer-open,
body.process-drawer-open {
  overflow: hidden;
}

.shell,
.app-shell-v2,
.main-content,
.rs-main,
.auth-layout {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}

.rs-main > *,
.main-content > *:not(.flash),
.crm-page,
.crm-detail-page,
.dashboard-page,
.settings-page,
.process-page,
.processes-page,
.contacts-page,
.nfse-page,
.labor-page,
.automations-page,
.intelligence-page,
.documents-page {
  max-width: var(--page-max);
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

.table-card,
.table-scroll,
.table-responsive,
.table-wrap,
.ai-table-wrap,
.ai-table-scroll,
.ai-agents-scroll,
.settings-process-table,
.settings-table-wrap,
.contracts-list-card,
.asaas-recent-card,
.crm-kanban-board,
.crm-full-board-shell,
.process-monitor-table,
.documents-table-wrap,
.nfse-table-wrap,
[data-scroll-x] {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

.table-card table,
.table-scroll table,
.table-responsive table,
.table-wrap table,
.settings-table-wrap table,
.documents-table-wrap table,
.nfse-table-wrap table {
  width: max-content;
  min-width: 100%;
}

body,
input,
select,
textarea,
button {
  font-family: var(--font-sans);
}

.page-header h1,
.rs-page-hero h1,
.auth-card h1,
.error-card h1,
.premium-metric-card strong,
.metric-card strong {
  font-family: var(--font-serif);
  letter-spacing: -0.035em;
}

.card,
.stat-card,
.metric-card,
.premium-metric-card,
.shortcut-card,
.settings-card,
.crm-card,
.crm-detail-card,
.crm-side-card,
.dashboard-card,
.content-card,
.panel,
.form-panel,
.auth-card,
.error-card {
  background: var(--surface-raised);
  border-color: var(--line);
  box-shadow: var(--shadow-card);
}

.primary-button,
button.primary-button,
a.primary-button,
.primary-button:visited {
  background: var(--accent-strong);
  border-color: var(--accent-strong);
  color: #ffffff;
  font-weight: 800;
}

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

html[data-theme='dark'] .primary-button,
html[data-theme='dark'] button.primary-button,
html[data-theme='dark'] a.primary-button {
  background: var(--brand-gold);
  border-color: var(--brand-gold);
  color: #0b130f;
}

.ghost-button,
a.ghost-button,
.secondary-button,
a.secondary-button {
  border-color: var(--line);
  color: var(--ink);
  background: var(--surface);
}

.ghost-button:hover,
a.ghost-button:hover,
.secondary-button:hover,
a.secondary-button:hover {
  border-color: var(--line-strong);
  background: var(--surface-muted);
}

input,
select,
textarea {
  max-width: 100%;
  background: var(--surface);
  color: var(--ink);
  border-color: var(--line);
}

input::placeholder,
textarea::placeholder {
  color: color-mix(in srgb, var(--muted) 78%, transparent);
}

select option {
  color: var(--ink);
  background: var(--surface);
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px;
  box-shadow: none;
}

.rs-sidebar,
.sidebar-v2,
.sidebar {
  overflow-x: hidden;
}

.rs-nav a,
.nav-links-v2 a,
.nav-links a {
  min-width: 0;
}

.nav-glyph {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  display: inline-grid;
  place-items: center;
  color: currentColor;
  opacity: 0.92;
}

.nav-glyph svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.nav-links a.active .nav-glyph,
.nav-links a:hover .nav-glyph,
.nav-links-v2 a.active .nav-glyph,
.nav-links-v2 a:hover .nav-glyph {
  opacity: 1;
}

.rs-topbar-search {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.rs-topbar-search svg {
  width: 17px;
  height: 17px;
  stroke: currentColor;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 17px;
}

.auth-layout {
  position: relative;
  isolation: isolate;
}

.auth-layout::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 18%, rgba(214, 215, 189, 0.28), transparent 34%),
    radial-gradient(circle at 84% 22%, rgba(6, 37, 27, 0.22), transparent 30%),
    linear-gradient(135deg, rgba(5, 24, 17, 0.68), rgba(12, 50, 39, 0.48));
}

.auth-card-refined {
  width: min(480px, calc(100vw - 32px));
  border: 1px solid rgba(255, 255, 255, 0.58);
  border-radius: 30px;
  padding: clamp(24px, 4vw, 36px);
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(18px) saturate(1.15);
  -webkit-backdrop-filter: blur(18px) saturate(1.15);
  box-shadow: 0 34px 90px rgba(5, 24, 17, 0.28);
}

html[data-theme='dark'] .auth-card-refined {
  border-color: rgba(232, 238, 230, 0.16);
  background: rgba(16, 29, 23, 0.9);
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.52);
}

.auth-header-refined {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 26px;
}

.auth-header-refined .brand-mark.large {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  border-radius: 22px;
  background: linear-gradient(145deg, #06251b, #0c3b2d);
  color: var(--brand-gold);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16), 0 16px 34px rgba(6, 37, 27, 0.24);
}

.auth-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 10px;
  color: var(--accent-strong);
  background: var(--accent-soft);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-theme='dark'] .auth-badge {
  color: var(--brand-gold);
}

.auth-card-refined form {
  gap: 18px;
}

.auth-card-refined .field {
  gap: 8px;
}

.auth-card-refined input {
  min-height: 48px;
  border-radius: 16px;
  padding-inline: 14px;
}

.rs-loading-bar {
  height: 3px;
  background: linear-gradient(90deg, var(--brand-gold), var(--accent));
}

.flash {
  max-width: var(--page-max);
}

@media (max-width: 1080px) {
  .shell,
  .app-shell-v2 {
    grid-template-columns: 1fr;
  }

  .rs-main,
  .main-content {
    padding-inline: clamp(16px, 4vw, 24px);
  }
}

@media (max-width: 760px) {
  .page-header,
  .crm-detail-page .crm-hero.compact,
  .doc-batch-header {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }

  .auth-header-refined {
    align-items: flex-start;
  }

  .auth-card-refined {
    border-radius: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html *,
  html *::before,
  html *::after {
    animation-duration: 0.001ms;
    animation-iteration-count: 1;
    scroll-behavior: auto;
    transition-duration: 0.001ms;
  }

  button:hover,
  .nav-links a:hover,
  .nav-links-v2 a:hover {
    transform: none;
  }
}

/* ---- production-safe component states ---- */
button:disabled,
.primary-button:disabled,
.secondary-button:disabled,
.ghost-button:disabled,
.danger-button:disabled,
a.primary-button[aria-disabled='true'],
a.secondary-button[aria-disabled='true'],
a.ghost-button[aria-disabled='true'],
a.danger-button[aria-disabled='true'] {
  opacity: 0.58;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: none;
}

.primary-button:disabled,
button.primary-button:disabled,
a.primary-button[aria-disabled='true'] {
  color: color-mix(in srgb, #ffffff 88%, var(--accent-strong));
  background: color-mix(in srgb, var(--accent-strong) 72%, var(--surface-muted));
  border-color: transparent;
}

html[data-theme='dark'] .primary-button:disabled,
html[data-theme='dark'] button.primary-button:disabled,
html[data-theme='dark'] a.primary-button[aria-disabled='true'] {
  color: rgba(11, 19, 15, 0.78);
  background: color-mix(in srgb, var(--brand-gold) 74%, #0b130f);
  border-color: transparent;
}

.ghost-button:disabled,
.secondary-button:disabled,
button.ghost-button:disabled,
button.secondary-button:disabled,
a.ghost-button[aria-disabled='true'],
a.secondary-button[aria-disabled='true'] {
  color: var(--muted);
  background: var(--surface-muted);
  border-color: var(--line);
}

html[data-theme='dark'] .ghost-button:disabled,
html[data-theme='dark'] .secondary-button:disabled,
html[data-theme='dark'] button.ghost-button:disabled,
html[data-theme='dark'] button.secondary-button:disabled,
html[data-theme='dark'] a.ghost-button[aria-disabled='true'],
html[data-theme='dark'] a.secondary-button[aria-disabled='true'] {
  color: var(--muted);
  background: var(--surface-subtle);
  border-color: var(--line);
}

.danger-button:disabled,
button.danger-button:disabled,
a.danger-button[aria-disabled='true'] {
  color: color-mix(in srgb, #ffffff 86%, var(--danger));
  background: color-mix(in srgb, var(--danger) 68%, var(--surface-muted));
  border-color: transparent;
}

/* ---- login/auth dark-mode contract ---- */
.main-content.auth-layout {
  color: var(--ink);
}

html[data-theme='dark'] .main-content.auth-layout {
  background:
    linear-gradient(rgba(2, 8, 5, 0.72), rgba(2, 8, 5, 0.76)),
    url('https://roldaoestuart.com.br/wp-content/uploads/2024/02/new-home-page-bg-v2.png') center center / cover no-repeat;
  color: var(--ink);
}

html[data-theme='dark'] .auth-layout::before {
  background:
    radial-gradient(circle at 18% 18%, rgba(214, 215, 189, 0.14), transparent 34%),
    radial-gradient(circle at 84% 22%, rgba(214, 215, 189, 0.08), transparent 30%),
    linear-gradient(135deg, rgba(2, 8, 5, 0.74), rgba(7, 26, 18, 0.66));
}

html[data-theme='dark'] .main-content.auth-layout .auth-card,
html[data-theme='dark'] .main-content.auth-layout .auth-card.auth-card-refined,
html[data-theme='dark'] .main-content.auth-layout .error-card {
  background: rgba(16, 29, 23, 0.92);
  border-color: rgba(232, 238, 230, 0.18);
  color: var(--ink);
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.54);
}

html[data-theme='dark'] .main-content.auth-layout .auth-card h1,
html[data-theme='dark'] .main-content.auth-layout .auth-card h2,
html[data-theme='dark'] .main-content.auth-layout .auth-card strong,
html[data-theme='dark'] .main-content.auth-layout .auth-card label {
  color: var(--ink);
}

html[data-theme='dark'] .main-content.auth-layout .auth-card p,
html[data-theme='dark'] .main-content.auth-layout .auth-card small {
  color: var(--muted);
}

html[data-theme='dark'] .main-content.auth-layout .auth-card input,
html[data-theme='dark'] .main-content.auth-layout .auth-card select,
html[data-theme='dark'] .main-content.auth-layout .auth-card textarea {
  background: rgba(9, 18, 14, 0.88);
  border-color: rgba(232, 238, 230, 0.20);
  color: var(--ink);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

html[data-theme='dark'] .main-content.auth-layout .auth-card input::placeholder,
html[data-theme='dark'] .main-content.auth-layout .auth-card textarea::placeholder {
  color: rgba(232, 238, 230, 0.48);
}

html[data-theme='dark'] .auth-header-refined .brand-mark.large {
  background: linear-gradient(145deg, #d6d7bd, #f1f2d9);
  color: #0b130f;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.32);
}

html[data-theme='dark'] .auth-badge {
  background: rgba(214, 215, 189, 0.12);
  border-color: rgba(214, 215, 189, 0.24);
  color: var(--brand-gold);
}

/* ===== 07-production-visual-contract.css ===== */
/* Consolidated production visual layer. Replaces runtime preprod-ui.css and legacy repair files. */
/* Pré-produção visual/UX: P0-P2
   Camada intencionalmente carregada após o bundle legado para estabilizar shell,
   sidebar, CRM, leads, configurações e drawers rápidos sem tocar regras antigas. */
:root {
  --rs-sidebar-w: 288px;
  --rs-sidebar-compact-w: 264px;
  --rs-page-max: 1480px;
  --rs-page-max-operational: 1920px;
  --rs-page-max-wide: 2200px;
  --rs-surface: #f7f6f0;
  --rs-ink: #10211a;
  --rs-muted: #66736b;
  --rs-line: rgba(16, 33, 26, .12);
  --rs-gold: #c7b272;
  --rs-sidebar-bg: #061f17;
  --rs-sidebar-bg-2: #0a2a1f;
}

html,
body {
  min-height: 100%;
  background: var(--rs-surface);
}

.rs-shell,
.shell.app-shell-v2 {
  min-height: 100dvh;
  background: var(--rs-surface);
}

@media (min-width: 1181px) {
  .rs-shell,
  .shell.app-shell-v2 {
    display: grid;
    grid-template-columns: var(--rs-sidebar-w) minmax(0, 1fr);
    align-items: stretch;
  }

  .rs-sidebar,
  .sidebar.sidebar-v2 {
    position: sticky;
    top: 0;
    align-self: start;
    width: var(--rs-sidebar-w);
    height: 100dvh;
    min-height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, var(--rs-sidebar-bg), var(--rs-sidebar-bg-2));
    border-right: 1px solid rgba(239, 232, 200, .08);
    scrollbar-width: thin;
  }

  .rs-main,
  .main-content.rs-main {
    min-width: 0;
    width: 100%;
    padding-inline: clamp(18px, 2.1vw, 40px);
  }
}

.rs-brand-card-production,
.brand-card-v2.rs-brand-card-production {
  margin: 18px 18px 14px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.rs-brand-link-production,
.rs-brand-link-enhanced.rs-brand-link-production {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: auto;
  padding: 14px;
  border: 1px solid rgba(239, 232, 200, .16);
  border-radius: 24px;
  background: rgba(255, 255, 255, .045);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}

.rs-brand-logo-stage-production,
.rs-brand-logo-stage.rs-brand-logo-stage-production {
  width: 58px;
  height: 58px;
  min-width: 58px;
  padding: 0;
  border: 0;
  background: transparent;
}

.rs-brand-logo-placeholder-production,
.rs-brand-logo-placeholder.rs-brand-logo-placeholder-production {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  padding: 0;
  overflow: hidden;
  border-radius: 18px;
  background: rgba(255, 255, 255, .055);
  border: 1px solid rgba(239, 232, 200, .18);
}

.rs-brand-logo-img-production,
.rs-brand-logo-img.rs-brand-logo-img-production,
.rs-brand-logo-placeholder-production img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 0;
  border-radius: 0;
}

.rs-brand-copy-production,
.rs-brand-copy.rs-brand-copy-production {
  min-width: 0;
  gap: 2px;
}

.rs-brand-eyebrow {
  color: rgba(239, 232, 200, .66);
  font-size: 10px;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.rs-brand-title {
  display: block;
  color: #fffdf1;
  font-size: 21px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -.04em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rs-brand-subtitle {
  display: block;
  color: var(--rs-gold);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rs-nav,
.nav-links-v2.rs-nav {
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 14px 12px;
}

.rs-nav .nav-section-label,
.nav-section-label {
  margin: 16px 10px 6px;
  color: rgba(239, 232, 200, .48);
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.rs-nav a {
  min-height: 40px;
  padding: 9px 10px;
  border-radius: 14px;
  gap: 10px;
}

.rs-nav a.active {
  background: rgba(239, 232, 200, .13);
  color: #fffdf1;
  box-shadow: inset 3px 0 0 var(--rs-gold);
}

.rs-nav .nav-label {
  font-size: 13px;
  line-height: 1.1;
}

.rs-nav .nav-glyph {
  width: 18px;
  height: 18px;
  opacity: .92;
}

.rs-sidebar-footer,
.sidebar-footer-v2.rs-sidebar-footer {
  flex: 0 0 auto;
  margin-top: auto;
  padding: 12px 16px 18px;
  background: linear-gradient(180deg, rgba(6,31,23,0), rgba(6,31,23,.9) 18%);
  border-top: 1px solid rgba(239, 232, 200, .08);
}

.rs-main > .crm-page,
.rs-main > .contacts-page,
.rs-main > .processes-page,
.rs-main > .documents-page,
.rs-main > .reports-page,
.rs-main > .settings-console-shell,
.rs-main > .page-header,
.rs-main > .stats-grid,
.rs-main > .panel-card,
.rs-main > .table-card {
  width: 100%;
  max-width: min(var(--rs-page-max-operational), calc(100vw - var(--rs-sidebar-w) - 72px));
  margin-inline: auto;
}

@media (min-width: 2600px) {
  .rs-main > .crm-page,
  .rs-main > .contacts-page,
  .rs-main > .settings-console-shell,
  .rs-main > .reports-page {
    max-width: var(--rs-page-max-wide);
  }
}

@media (max-height: 780px) and (min-width: 1181px) {
  .rs-brand-card-production { margin: 12px 14px 8px; }
  .rs-brand-link-production { grid-template-columns: 48px minmax(0, 1fr); padding: 10px; border-radius: 18px; }
  .rs-brand-logo-stage-production,
  .rs-brand-logo-placeholder-production { width: 48px; height: 48px; min-width: 48px; border-radius: 14px; }
  .rs-brand-title { font-size: 18px; }
  .rs-brand-eyebrow,
  .rs-brand-subtitle { font-size: 9px; }
  .rs-nav { padding-inline: 10px; }
  .rs-nav a { min-height: 34px; padding: 7px 9px; border-radius: 12px; }
  .rs-nav .nav-section-label { margin-block: 10px 4px; }
  .rs-sidebar-footer { padding: 9px 14px 12px; }
  .rs-user-card { display: none; }
}

.settings-menu-list-pro.settings-refactor-menu {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.settings-local-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
  overflow: visible;
}

.settings-local-tabs a {
  border: 1px solid var(--rs-line);
  background: rgba(255,255,255,.72);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 800;
}

.settings-workspace-office .settings-branding-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: 18px;
}

.settings-visual-guidelines {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-visual-guidelines article {
  border: 1px solid var(--rs-line);
  background: rgba(255,255,255,.74);
  border-radius: 18px;
  padding: 16px;
}

.crm-leads-page .crm-leads-toolbar,
.contacts-quick-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.crm-leads-page .crm-leads-filter-grid {
  grid-template-columns: minmax(240px, 2fr) repeat(3, minmax(170px, 1fr)) auto;
  align-items: end;
}

.crm-lead-list-table {
  display: grid;
  gap: 8px;
}

.crm-lead-list-head,
.crm-lead-list-row {
  display: grid;
  grid-template-columns: minmax(230px, 1.4fr) minmax(150px, .9fr) minmax(120px, .7fr) minmax(150px, .8fr) minmax(120px, .65fr) 120px;
  gap: 12px;
  align-items: center;
}

.crm-lead-list-head {
  padding: 0 12px;
  color: var(--rs-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.crm-lead-list-row {
  padding: 12px;
  border: 1px solid var(--rs-line);
  border-radius: 18px;
  background: rgba(255,255,255,.82);
}

.crm-lead-list-row strong,
.crm-lead-list-row small {
  display: block;
}

.crm-lead-list-row small {
  color: var(--rs-muted);
  margin-top: 3px;
}

.contact-quick-drawer .crm-drawer-panel {
  max-width: 620px;
}

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

.contact-quick-drawer .contact-quick-mode label {
  border: 1px solid var(--rs-line);
  border-radius: 14px;
  padding: 10px 12px;
  background: rgba(255,255,255,.7);
  font-weight: 800;
}

@media (max-width: 1180px) {
  .rs-main > .crm-page,
  .rs-main > .contacts-page,
  .rs-main > .settings-console-shell,
  .rs-main > .page-header,
  .rs-main > .stats-grid,
  .rs-main > .panel-card,
  .rs-main > .table-card {
    max-width: 100%;
  }

  .crm-lead-list-head { display: none; }
  .crm-lead-list-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .crm-lead-list-row > span::before {
    display: block;
    color: var(--rs-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .crm-lead-list-row > span:nth-child(2)::before { content: 'Origem'; }
  .crm-lead-list-row:not(.crm-lead-list-row-no-temperature) > span:nth-child(3)::before { content: 'Temperatura'; }
  .crm-lead-list-row-no-temperature > span:nth-child(3)::before { content: 'Follow-up'; }
  .crm-lead-list-row-no-temperature > span:nth-child(4)::before { content: 'Ação'; }
  .crm-lead-list-row > span:nth-child(4)::before { content: 'Responsável'; }
  .crm-lead-list-row > span:nth-child(5)::before { content: 'Follow-up'; }

  .settings-workspace-office .settings-branding-grid,
  .settings-visual-guidelines {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .crm-leads-page .crm-leads-filter-grid,
  .contact-filters-grid,
  .form-grid {
    grid-template-columns: 1fr;
  }
  .hero-actions,
  .crm-hero-actions,
  .contacts-quick-actions {
    width: 100%;
    justify-content: stretch;
  }
  .hero-actions > *,
  .crm-hero-actions > *,
  .contacts-quick-actions > * {
    flex: 1 1 auto;
  }
}

/* ===== 08-production-hardening.css ===== */
/* Aggressive pre-production visual hardening: important-free cascade, stable shell, responsive dark-mode contracts. */
:root {
  --rs-sidebar-w: 288px;
  --rs-page-max: 1480px;
  --rs-page-max-operational: 1920px;
  --rs-page-max-wide: 2200px;
  --surface: var(--rs-surface, #f7f6f0);
  --surface-elevated: #ffffff;
  --surface-muted: #f0efe7;
  --ink: var(--rs-ink, #10211a);
  --ink-muted: var(--rs-muted, #66736b);
  --line: var(--rs-line, rgba(16, 33, 26, .12));
  --brand-green: #06251b;
  --brand-green-2: #0a2f22;
  --brand-gold: #c7b272;
  --danger: #9d2f2f;
  --success: #255c39;
  --warning: #8a6420;
  --info: #285b8a;
  --focus-ring: 0 0 0 4px rgba(199, 178, 114, .22);
  --shadow-card: 0 18px 46px rgba(16, 33, 26, .08);
  --shadow-float: 0 28px 78px rgba(16, 33, 26, .16);
}

html[data-theme='dark'] {
  --surface: #08110d;
  --surface-elevated: #101d17;
  --surface-muted: #13231c;
  --ink: #f3f6ef;
  --ink-muted: #b7c3ba;
  --line: rgba(232, 238, 230, .16);
  --focus-ring: 0 0 0 4px rgba(214, 215, 189, .2);
  --shadow-card: 0 18px 46px rgba(0, 0, 0, .34);
  --shadow-float: 0 34px 84px rgba(0, 0, 0, .52);
}

html,
body {
  min-height: 100%;
  background: var(--surface);
  color: var(--ink);
}

body { overflow-x: hidden; }
button:hover { transform: none; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 0; box-shadow: var(--focus-ring); }

.rs-shell,
.shell.app-shell-v2 {
  min-height: 100dvh;
  background: var(--surface);
}

.rs-main,
.main-content.rs-main {
  min-width: 0;
  width: 100%;
  background: radial-gradient(circle at top left, rgba(199, 178, 114, .08), transparent 32rem), var(--surface);
}

.page-header,
.rs-page-hero,
.crm-page-header,
.settings-page-intro,
.dashboard-command-hero,
.labor-hero,
.nfse-hero { color: var(--ink); }

.page-header h1,
.rs-page-hero h1,
.crm-page-header h1,
.settings-page-intro h1,
.dashboard-command-copy h1,
.labor-hero h1,
.nfse-hero h1 {
  max-width: 980px;
  font-family: var(--font-sans);
  font-size: clamp(2.15rem, 3.4vw, 3.75rem);
  line-height: .98;
  letter-spacing: -.055em;
  color: var(--ink);
}

.page-header p,
.rs-page-hero p,
.crm-page-header p,
.settings-page-intro p,
.dashboard-command-copy p,
.labor-hero p,
.nfse-hero p,
.helper-text,
.empty-state,
.eyebrow,
small { color: var(--ink-muted); }

.panel-card,
.table-card,
.metric-card,
.premium-card,
.card,
.crm-panel,
.settings-card,
.nfse-card,
.dashboard-card,
.process-card,
.records-card,
.auth-card,
.error-card {
  background: var(--surface-elevated);
  border-color: var(--line);
  color: var(--ink);
  box-shadow: var(--shadow-card);
}

html[data-theme='dark'] .panel-card,
html[data-theme='dark'] .table-card,
html[data-theme='dark'] .metric-card,
html[data-theme='dark'] .premium-card,
html[data-theme='dark'] .card,
html[data-theme='dark'] .crm-panel,
html[data-theme='dark'] .settings-card,
html[data-theme='dark'] .nfse-card,
html[data-theme='dark'] .dashboard-card,
html[data-theme='dark'] .process-card,
html[data-theme='dark'] .records-card,
html[data-theme='dark'] .auth-card,
html[data-theme='dark'] .error-card {
  background: color-mix(in srgb, var(--surface-elevated) 94%, #ffffff 6%);
}

input,
select,
textarea,
.search-input,
.form-control,
.form-input {
  background: var(--surface-elevated);
  border-color: var(--line);
  color: var(--ink);
}

input::placeholder,
textarea::placeholder { color: color-mix(in srgb, var(--ink-muted) 72%, transparent); }

html[data-theme='dark'] input,
html[data-theme='dark'] select,
html[data-theme='dark'] textarea,
html[data-theme='dark'] .search-input,
html[data-theme='dark'] .form-control,
html[data-theme='dark'] .form-input {
  background: #0b1712;
  border-color: rgba(232, 238, 230, .18);
  color: var(--ink);
}

table { border-collapse: separate; border-spacing: 0; }
.table-responsive,
.table-wrap,
.data-table-wrapper,
.crm-table-wrapper {
  max-width: 100%;
  overflow-x: auto;
  border-radius: 22px;
}

.status-pill,
.badge,
.chip,
.pill,
.tag {
  border-color: var(--line);
  color: var(--ink);
}

.status-success,
.badge-success,
.flash-success {
  color: var(--success);
  background: color-mix(in srgb, var(--success) 10%, white);
  border-color: color-mix(in srgb, var(--success) 24%, transparent);
}

.status-warning,
.badge-warning,
.flash-warning {
  color: var(--warning);
  background: color-mix(in srgb, var(--warning) 10%, white);
  border-color: color-mix(in srgb, var(--warning) 24%, transparent);
}

.status-error,
.badge-error,
.flash-error {
  color: var(--danger);
  background: color-mix(in srgb, var(--danger) 10%, white);
  border-color: color-mix(in srgb, var(--danger) 24%, transparent);
}

.status-info,
.badge-info,
.flash-info {
  color: var(--info);
  background: color-mix(in srgb, var(--info) 10%, white);
  border-color: color-mix(in srgb, var(--info) 24%, transparent);
}

.rs-sidebar,
.sidebar.sidebar-v2 {
  background: linear-gradient(180deg, var(--brand-green), var(--brand-green-2));
  color: #f4f1dc;
}

.rs-sidebar a,
.sidebar.sidebar-v2 a { color: rgba(244, 241, 220, .78); }
.rs-sidebar a.active,
.sidebar.sidebar-v2 a.active,
.rs-sidebar a[aria-current='page'] {
  color: #fffbe9;
  background: rgba(255, 255, 255, .11);
  border-color: rgba(255, 255, 255, .13);
}

.rs-brand-logo-stage {
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  padding: 0;
  border-radius: 20px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  overflow: hidden;
}

.rs-brand-logo-placeholder {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  min-width: 58px;
  min-height: 58px;
  padding: 0;
  border-radius: 16px;
  background: rgba(5, 9, 7, .38);
  box-shadow: none;
}

.rs-brand-logo-img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.rs-brand-logo-placeholder small,
.rs-brand-logo-monogram { display: none; }

@media (min-width: 1181px) {
  .rs-shell,
  .shell.app-shell-v2 {
    display: grid;
    grid-template-columns: var(--rs-sidebar-w) minmax(0, 1fr);
    align-items: stretch;
  }

  .rs-sidebar,
  .sidebar.sidebar-v2 {
    position: sticky;
    top: 0;
    align-self: start;
    width: var(--rs-sidebar-w);
    height: 100dvh;
    min-height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    border-right: 1px solid rgba(239, 232, 200, .08);
    scrollbar-width: thin;
  }

  .rs-main,
  .main-content.rs-main { padding-inline: clamp(2rem, 3.2vw, 4.5rem); }
}

@media (max-width: 1180px) {
  .rs-topbar { display: flex; }
  .rs-sidebar,
  .sidebar.sidebar-v2 {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 80;
    width: min(88vw, 340px);
    transform: translateX(-105%);
    transition: transform .24s ease;
    overflow-y: auto;
  }

  body.nav-open .rs-sidebar,
  body.nav-open .sidebar.sidebar-v2,
  .rs-sidebar.is-open,
  .sidebar.sidebar-v2.is-open { transform: translateX(0); }

  .sidebar-overlay {
    position: fixed;
    inset: 0;
    z-index: 70;
    background: rgba(2, 8, 5, .56);
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease;
  }

  body.nav-open .sidebar-overlay { opacity: 1; pointer-events: auto; }
  .rs-main,
  .main-content.rs-main { padding: 5.5rem clamp(1rem, 4vw, 2rem) 2rem; }
}

@media (max-width: 720px) {
  .page-header,
  .rs-page-hero,
  .crm-page-header,
  .settings-page-intro,
  .dashboard-command-hero,
  .labor-hero,
  .nfse-hero { padding: 1.25rem; border-radius: 24px; }

  .page-header h1,
  .rs-page-hero h1,
  .crm-page-header h1,
  .settings-page-intro h1,
  .dashboard-command-copy h1,
  .labor-hero h1,
  .nfse-hero h1 { font-size: clamp(2rem, 11vw, 3rem); }

  .panel-card,
  .table-card,
  .metric-card,
  .premium-card,
  .card,
  .crm-panel,
  .settings-card,
  .nfse-card,
  .dashboard-card,
  .process-card,
  .records-card { border-radius: 22px; }

  .actions,
  .form-actions,
  .toolbar-actions,
  .page-actions,
  .button-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .primary-button,
  .secondary-button,
  .ghost-button,
  .danger-button,
  button[type='submit'] { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms;
    animation-iteration-count: 1;
    scroll-behavior: auto;
    transition-duration: 0.001ms;
  }
}


/* source: 03-layout/production-stabilization.css */
/* ============================================================
   P0 Production Stabilization
   Escopo: corrigir uso de tela, overflow e contratos visuais
   sem alterar regra de negócio.
   ============================================================ */

:root {
  --page-readable: 980px;
  --page-standard: 1540px;
  --page-operational-max: none;
  --table-min-operational: 1080px;
  --table-min-standard: 820px;
}

/* O main não deve esconder conteúdo operacional. Overflow horizontal
   deve ficar restrito a shells de tabela/kanban/form, onde o usuário
   consegue rolar de forma explícita. */
html,
body {
  overflow-x: visible;
}

.app-shell,
.shell,
.rs-shell,
.main-content,
.rs-main,
.page-content,
.content-shell {
  min-width: 0;
  max-width: 100%;
  overflow-x: visible;
}

body.nav-open {
  overflow: hidden;
}

.rs-main,
.main-content:not(.auth-layout) {
  justify-self: stretch;
  width: 100%;
  max-width: none;
}

.rs-main > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash) {
  min-width: 0;
}

.rs-main.rs-layout-readable > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash) {
  width: min(100%, var(--page-readable));
  margin-inline: auto;
}

.rs-main.rs-layout-standard > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash) {
  width: min(100%, var(--page-standard));
  margin-inline: auto;
}

.rs-main.rs-layout-wide > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash) {
  width: min(100%, var(--page-wide, 1760px));
  margin-inline: auto;
}

.rs-main.rs-layout-operational > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash),
.rs-main > :where(.page-fluid, .page-operational, .crm-board-page, .process-monitoring-board, .settings-console-shell, .nfse-page, .reports-page):not(.full-bleed) {
  width: 100%;
  max-width: var(--page-operational-max);
  margin-inline: 0;
}

.rs-page-readable,
.page-readable {
  width: min(100%, var(--page-readable));
  margin-inline: auto;
}

.rs-page-standard,
.page-standard {
  width: min(100%, var(--page-standard));
  margin-inline: auto;
}

.rs-page-wide,
.page-wide {
  width: min(100%, var(--page-wide, 1760px));
  margin-inline: auto;
}

.rs-page-fluid,
.page-fluid,
.rs-page-operational,
.page-operational {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

@media (min-width: 1920px) {
  .rs-main.rs-layout-operational,
  .main-content.rs-layout-operational {
    padding-inline: clamp(32px, 2.35vw, 72px);
  }
}

@media (min-width: 2560px) {
  .rs-main.rs-layout-operational,
  .main-content.rs-layout-operational {
    padding-inline: clamp(40px, 2vw, 96px);
  }
}

/* Shells explícitos de rolagem: tabelas e quadros densos recebem o
   overflow, não o main. */
.rs-table-shell,
.table-card,
.table-scroll,
.data-table-wrapper,
.table-responsive,
.crm-table-wrap,
.nfse-table-wrap,
.audit-table-wrap,
.reports-table-wrap,
.settings-process-table,
.kanban-scroll,
.board-scroll,
.crm-board-scroll {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

.rs-table-shell {
  scrollbar-gutter: stable both-edges;
}

.rs-table-shell > table,
.table-card > table,
.table-scroll > table,
.data-table-wrapper > table,
.table-responsive > table,
.crm-table-wrap > table,
.nfse-table-wrap > table,
.audit-table-wrap > table,
.reports-table-wrap > table,
.settings-process-table > table {
  width: 100%;
  min-width: var(--table-min-standard);
  border-collapse: separate;
  border-spacing: 0;
}

.rs-layout-operational :where(.rs-table-shell, .table-card, .table-scroll, .data-table-wrapper, .table-responsive) > table,
.rs-layout-operational table.rs-responsive-table.rs-table-wide {
  min-width: var(--table-min-operational);
}

.rs-table-shell th,
.table-card > table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--color-bg-card, #ffffff);
}

.rs-layout-operational .rs-table-shell > table:not(.no-sticky-first-column) :where(th, td):first-child,
.rs-layout-operational .table-card > table:not(.no-sticky-first-column) :where(th, td):first-child {
  position: sticky;
  left: 0;
  z-index: 3;
  background: var(--color-bg-card, #ffffff);
  box-shadow: 1px 0 0 var(--color-border-soft, rgba(17, 31, 25, 0.10));
}

.rs-layout-operational .rs-table-shell > table:not(.no-sticky-first-column) th:first-child,
.rs-layout-operational .table-card > table:not(.no-sticky-first-column) th:first-child {
  z-index: 4;
}

html[data-theme="dark"] .rs-table-shell th,
html[data-theme="dark"] .table-card > table th,
html[data-theme="dark"] .rs-layout-operational .rs-table-shell > table :where(th, td):first-child,
html[data-theme="dark"] .rs-layout-operational .table-card > table :where(th, td):first-child {
  background: var(--color-bg-card, #10211a);
}

/* Melhor aproveitamento de grids operacionais em telas grandes. */
.rs-layout-operational :where(.metric-grid-4, .stats-grid, .dashboard-kpi-grid, .settings-console-summary-row) {
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
}

.rs-layout-operational :where(.dashboard-main-grid, .settings-layout, .settings-console-shell, .crm-layout, .processes-layout, .nfse-layout, .reports-layout) {
  max-width: none;
}

/* Formulários longos: evita que ações e campos estourem por largura. */
:where(.form-grid, .settings-form-grid, .filters-grid, .crm-form-grid, .nfse-form-grid, .labor-form-grid) {
  min-width: 0;
}

:where(.actions-inline, .form-actions, .panel-actions, .settings-inline-actions) {
  min-width: 0;
  flex-wrap: wrap;
}


@media (max-width: 760px) {
  .rs-table-shell,
  .table-card,
  .table-scroll,
  .data-table-wrapper,
  .table-responsive,
  .crm-table-wrap,
  .nfse-table-wrap,
  .audit-table-wrap,
  .reports-table-wrap,
  .settings-process-table {
    overflow: visible;
  }

  .rs-table-shell > table,
  .table-card > table,
  .table-scroll > table,
  .data-table-wrapper > table,
  .table-responsive > table,
  .crm-table-wrap > table,
  .nfse-table-wrap > table,
  .audit-table-wrap > table,
  .reports-table-wrap > table,
  .settings-process-table > table,
  .rs-layout-operational table.rs-responsive-table.rs-table-wide {
    min-width: 0;
  }

  .rs-table-shell th,
  .table-card > table th,
  .rs-layout-operational .rs-table-shell > table :where(th, td):first-child,
  .rs-layout-operational .table-card > table :where(th, td):first-child {
    position: static;
    box-shadow: none;
  }

  .rs-main.rs-layout-operational > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay):not(.flash) {
    width: 100%;
  }
}

/* Ferramenta de diagnóstico visual ativável pelo Playwright ou pelo console:
   document.documentElement.dataset.visualDebugOverflow = 'true' */
html[data-visual-debug-overflow="true"] * {
  outline: 1px solid rgba(196, 44, 44, 0.18);
  outline-offset: -1px;
}


/* source: 03-layout/interactive-feedback.css */
/* P0/P1 production polish: non-blocking toasts and styled confirmations */
.cirs-toast-stack {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 9999;
  display: grid;
  gap: .75rem;
  max-width: min(420px, calc(100vw - 2rem));
}
.cirs-toast {
  transform: translateY(10px);
  opacity: 0;
  border: 1px solid rgba(17,31,25,.12);
  border-radius: 16px;
  background: #111f19;
  color: #fff;
  padding: .85rem 1rem;
  box-shadow: 0 18px 45px rgba(17,31,25,.18);
  font-weight: 700;
  transition: opacity .18s ease, transform .18s ease;
}
.cirs-toast.is-visible { opacity: 1; transform: translateY(0); }
.cirs-toast-error { background: #7f1d1d; }
.cirs-toast-success { background: #14532d; }
.cirs-confirm-overlay {
  position: fixed;
  inset: 0;
  z-index: 9998;
  display: grid;
  place-items: center;
  padding: 1rem;
  background: rgba(17,31,25,.42);
  backdrop-filter: blur(8px);
}
.cirs-confirm-dialog {
  width: min(460px, 100%);
  border: 1px solid rgba(17,31,25,.12);
  border-radius: 24px;
  background: var(--surface, #fff);
  color: var(--text, #111f19);
  padding: 1.25rem;
  box-shadow: 0 24px 70px rgba(17,31,25,.22);
}
.cirs-confirm-dialog strong { display: block; font-size: 1.05rem; margin-bottom: .35rem; }
.cirs-confirm-dialog p { margin: 0 0 1rem; color: var(--muted, #5f6f66); }


/* source: 03-layout/visual-system.css */
/* ============================================================
   P0/P2 Visual System Hardening
   Objetivo: estabilizar a linguagem visual em pre-producao sem
   reescrever as views existentes. Este arquivo deve ser carregado
   por ultimo no bundle de CSS.
   ============================================================ */

:root {
  color-scheme: light;

  --color-bg-page: #f6f5ee;
  --color-bg-page-rgb: 246 245 238;
  --color-bg-card: #ffffff;
  --color-bg-card-rgb: 255 255 255;
  --color-bg-soft: #fbfaf6;
  --color-bg-muted: #efeee6;
  --color-bg-elevated: #ffffff;
  --color-bg-input: #ffffff;

  --color-text-main: #10211a;
  --color-text-strong: #071711;
  --color-text-muted: #627067;
  --color-text-soft: #7d887f;
  --color-text-inverse: #ffffff;

  --color-brand-primary: #06251b;
  --color-brand-secondary: #0b3528;
  --color-brand-tertiary: #123f31;
  --color-brand-accent: #c7b272;
  --color-brand-accent-soft: #eee6c8;

  --color-border-soft: rgba(16, 33, 26, 0.10);
  --color-border-medium: rgba(16, 33, 26, 0.16);
  --color-border-strong: rgba(16, 33, 26, 0.24);

  --color-success-bg: #edf8f0;
  --color-success-text: #245c38;
  --color-success-border: rgba(36, 92, 56, 0.22);
  --color-warning-bg: #fff7e4;
  --color-warning-text: #7b5819;
  --color-warning-border: rgba(123, 88, 25, 0.22);
  --color-danger-bg: #fbefef;
  --color-danger-text: #8e2424;
  --color-danger-border: rgba(142, 36, 36, 0.22);
  --color-info-bg: #eef6fb;
  --color-info-text: #215470;
  --color-info-border: rgba(33, 84, 112, 0.22);

  --color-focus-ring: rgba(199, 178, 114, 0.34);

  --surface: var(--color-bg-card);
  --surface-soft: var(--color-bg-soft);
  --surface-muted: var(--color-bg-muted);
  --text: var(--color-text-main);
  --muted: var(--color-text-muted);
  --dark: var(--color-brand-primary);
  --dark-2: var(--color-brand-secondary);
  --sand: var(--color-brand-accent);
  --white: var(--color-text-inverse);
  --bg: var(--color-bg-page);
  --border: var(--color-border-soft);
  --border-strong: var(--color-border-medium);
  --success-bg: var(--color-success-bg);
  --success-text: var(--color-success-text);
  --warning-bg: var(--color-warning-bg);
  --warning-text: var(--color-warning-text);
  --error-bg: var(--color-danger-bg);
  --error-text: var(--color-danger-text);

  --radius-xs: 9px;
  --radius-sm: 13px;
  --radius-md: 18px;
  --radius-lg: 22px;
  --radius-xl: 28px;
  --radius: var(--radius-lg);

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;

  --shadow-xs: 0 1px 2px rgba(16, 33, 26, 0.05);
  --shadow-sm: 0 6px 18px rgba(16, 33, 26, 0.07);
  --shadow-md: 0 14px 38px rgba(16, 33, 26, 0.10);
  --shadow-lg: 0 28px 76px rgba(16, 33, 26, 0.16);
  --shadow: var(--shadow-md);
  --shadow-soft: var(--shadow-sm);

  --focus-ring: 0 0 0 4px var(--color-focus-ring), 0 0 0 1px rgba(6, 37, 27, 0.18);
  --transition-fast: 150ms ease;
  --transition-base: 210ms ease;
  --content-max: 1440px;
  --content-readable: 920px;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --color-bg-page: #0d1613;
  --color-bg-page-rgb: 13 22 19;
  --color-bg-card: #16231d;
  --color-bg-card-rgb: 22 35 29;
  --color-bg-soft: #1b2b23;
  --color-bg-muted: #111d18;
  --color-bg-elevated: #1e3027;
  --color-bg-input: #101c17;
  --color-text-main: #f3f1e8;
  --color-text-strong: #fffaf0;
  --color-text-muted: #c4cec7;
  --color-text-soft: #9faca5;
  --color-border-soft: rgba(243, 241, 232, 0.12);
  --color-border-medium: rgba(243, 241, 232, 0.20);
  --color-border-strong: rgba(243, 241, 232, 0.32);
  --color-success-bg: rgba(46, 125, 77, 0.24);
  --color-success-text: #c8f3d0;
  --color-success-border: rgba(142, 230, 162, 0.28);
  --color-warning-bg: rgba(199, 160, 64, 0.20);
  --color-warning-text: #f6e4a8;
  --color-warning-border: rgba(246, 209, 111, 0.30);
  --color-danger-bg: rgba(177, 56, 56, 0.24);
  --color-danger-text: #ffd1d1;
  --color-danger-border: rgba(255, 145, 145, 0.28);
  --color-info-bg: rgba(65, 132, 172, 0.22);
  --color-info-text: #d4edff;
  --color-info-border: rgba(150, 211, 249, 0.28);
  --color-focus-ring: rgba(226, 198, 113, 0.42);
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.24);
  --shadow-sm: 0 8px 24px rgba(0, 0, 0, 0.28);
  --shadow-md: 0 18px 46px rgba(0, 0, 0, 0.34);
  --shadow-lg: 0 34px 86px rgba(0, 0, 0, 0.46);
  --focus-ring: 0 0 0 4px var(--color-focus-ring), 0 0 0 1px rgba(255, 255, 255, 0.30);
}

html {
  background: var(--color-bg-page);
  overflow-x: visible;
  scroll-behavior: smooth;
}

body {
  background:
    radial-gradient(circle at top left, rgba(199, 178, 114, 0.11), transparent 34rem),
    linear-gradient(180deg, var(--color-bg-page), var(--color-bg-page));
  color: var(--color-text-main);
  overflow-x: visible;
}


@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
    scroll-behavior: auto;
    transition-duration: 0.01ms;
  }
}

.sr-only,
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 10000;
  transform: translateY(-150%);
  border: 1px solid var(--color-border-medium);
  border-radius: var(--radius-sm);
  background: var(--color-bg-card);
  color: var(--color-text-main);
  padding: 0.75rem 1rem;
  box-shadow: var(--shadow-md);
  font-weight: 800;
}

.skip-link:focus-visible {
  transform: translateY(0);
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 0;
  box-shadow: var(--focus-ring);
}

:where(input, select, textarea):focus {
  border-color: var(--color-brand-accent);
  box-shadow: var(--focus-ring);
}

:where(button, .primary-button, .secondary-button, .ghost-button, .danger-button, .mini-button, .compact-chip) {
  touch-action: manipulation;
}

.shell,
.rs-shell,
.main-content,
.rs-main {
  min-width: 0;
}

.rs-main,
.main-content:not(.auth-layout) {
  width: 100%;
  max-width: none;
}

.rs-main > :where(section, article, form, div):not(.full-bleed) {
  min-width: 0;
}

.page-header,
.rs-page-hero,
.dashboard-command-hero,
.crm-page-header,
.labor-hero,
.nfse-hero,
.settings-page-header,
.reports-hero,
.audit-hero {
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-xl);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.48)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.16), rgba(6, 37, 27, 0.03));
  color: var(--color-text-main);
  box-shadow: var(--shadow-sm);
}

html[data-theme="dark"] :where(.page-header, .rs-page-hero, .dashboard-command-hero, .crm-page-header, .labor-hero, .nfse-hero, .settings-page-header, .reports-hero, .audit-hero) {
  background:
    linear-gradient(135deg, rgba(19, 42, 33, 0.94), rgba(13, 29, 23, 0.84)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.13), rgba(255, 255, 255, 0.02));
}

:where(.page-header, .rs-page-hero, .dashboard-command-hero, .crm-page-header, .labor-hero, .nfse-hero, .settings-page-header, .reports-hero, .audit-hero) h1,
:where(.page-header, .rs-page-hero, .dashboard-command-hero, .crm-page-header, .labor-hero, .nfse-hero, .settings-page-header, .reports-hero, .audit-hero) h2 {
  color: var(--color-text-strong);
  letter-spacing: -0.035em;
}

:where(.page-header, .rs-page-hero, .dashboard-command-hero, .crm-page-header, .labor-hero, .nfse-hero, .settings-page-header, .reports-hero, .audit-hero) p {
  color: var(--color-text-muted);
}

.eyebrow,
.settings-breadcrumb,
.section-eyebrow {
  color: var(--color-brand-secondary);
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

html[data-theme="dark"] :where(.eyebrow, .settings-breadcrumb, .section-eyebrow) {
  color: var(--color-brand-accent-soft);
}

.panel-card,
.premium-panel,
.crm-panel,
.settings-premium-card,
.stat-card,
.metric-card,
.dashboard-card,
.card,
.nfse-card,
.labor-card,
.report-card,
.audit-card {
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  background: rgba(var(--color-bg-card-rgb), 0.94);
  color: var(--color-text-main);
  box-shadow: var(--shadow-xs);
}

:where(.panel-card, .premium-panel, .crm-panel, .settings-premium-card, .stat-card, .metric-card, .dashboard-card, .card, .nfse-card, .labor-card, .report-card, .audit-card):hover {
  border-color: var(--color-border-medium);
}

.panel-header,
.card-header,
.settings-card-header {
  gap: var(--space-4);
}

.panel-header h2,
.panel-header h3,
.card-header h2,
.card-header h3 {
  color: var(--color-text-strong);
}

.panel-header p,
.card-header p,
.settings-section-intro,
.muted,
.help-text,
.field small {
  color: var(--color-text-muted);
}

.primary-button,
.secondary-button,
.ghost-button,
.danger-button,
.mini-button,
.compact-chip,
.table-link,
button.primary-button,
button.secondary-button,
button.ghost-button,
a.primary-button,
a.secondary-button,
a.ghost-button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-radius: var(--radius-sm);
  font-weight: 800;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  border: 1px solid transparent;
  transition:
    transform var(--transition-fast),
    box-shadow var(--transition-fast),
    background-color var(--transition-fast),
    border-color var(--transition-fast),
    color var(--transition-fast),
    opacity var(--transition-fast);
}

.primary-button {
  background: linear-gradient(135deg, var(--color-brand-primary), var(--color-brand-secondary));
  border-color: rgba(6, 37, 27, 0.88);
  color: var(--color-text-inverse);
  box-shadow: 0 12px 28px rgba(6, 37, 27, 0.18);
}

.primary-button:hover {
  box-shadow: 0 16px 36px rgba(6, 37, 27, 0.24);
}

.secondary-button {
  background: var(--color-bg-card);
  border-color: var(--color-border-medium);
  color: var(--color-text-strong);
}

.ghost-button,
.table-link,
.mini-button,
.compact-chip {
  background: rgba(var(--color-bg-card-rgb), 0.66);
  border-color: var(--color-border-soft);
  color: var(--color-text-main);
}

.danger-button,
.danger-ghost,
button[data-danger="true"] {
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-danger-text);
}

.primary-button:hover,
.secondary-button:hover,
.ghost-button:hover,
.danger-button:hover,
.table-link:hover,
.mini-button:hover,
.compact-chip:hover {
  transform: translateY(-1px);
}

.primary-button:active,
.secondary-button:active,
.ghost-button:active,
.danger-button:active,
.table-link:active,
.mini-button:active,
.compact-chip:active {
  transform: translateY(0);
}

.primary-button:disabled,
.secondary-button:disabled,
.ghost-button:disabled,
.danger-button:disabled,
button[disabled] {
  cursor: not-allowed;
  opacity: 0.56;
  transform: none;
  box-shadow: none;
}

.full-width {
  width: 100%;
}

.actions-inline,
.settings-inline-actions,
.form-actions,
.panel-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

.field,
.form-field {
  min-width: 0;
}

.field label,
.form-field label,
label.field span,
.settings-field-card label {
  color: var(--color-text-strong);
  font-weight: 800;
  line-height: 1.25;
}

input,
select,
textarea {
  max-width: 100%;
  border: 1px solid var(--color-border-medium);
  border-radius: var(--radius-sm);
  background: var(--color-bg-input, var(--color-bg-card));
  color: var(--color-text-main);
  caret-color: var(--color-brand-primary);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background: var(--color-bg-input);
  border-color: var(--color-border-medium);
  color: var(--color-text-main);
}

html[data-theme="dark"] select option {
  background: var(--color-bg-elevated);
  color: var(--color-text-main);
}

textarea {
  min-height: 6rem;
  resize: vertical;
}

input::placeholder,
textarea::placeholder {
  color: var(--color-text-soft);
}

.form-grid,
.settings-field-grid,
.crm-form-grid,
.nfse-form-grid {
  min-width: 0;
}

.pill,
.badge,
.status-badge,
.legal-phase-pill,
.crm-status-pill,
.nfse-status-pill {
  border: 1px solid var(--color-border-soft);
  border-radius: 999px;
  background: var(--color-bg-soft);
  color: var(--color-text-main);
  font-weight: 800;
}

.pill-success,
.badge-success,
.status-success,
.is-active {
  background: var(--color-success-bg);
  border-color: var(--color-success-border);
  color: var(--color-success-text);
}

.pill-warning,
.badge-warning,
.status-warning,
.is-paused,
.is-draft {
  background: var(--color-warning-bg);
  border-color: var(--color-warning-border);
  color: var(--color-warning-text);
}

.pill-danger,
.badge-danger,
.status-danger,
.is-archived {
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-danger-text);
}

.empty-state,
.empty-card,
.rs-empty-state {
  border: 1px dashed var(--color-border-medium);
  border-radius: var(--radius-lg);
  background: rgba(var(--color-bg-card-rgb), 0.62);
  color: var(--color-text-muted);
  padding: var(--space-6);
  text-align: center;
}

.table-scroll,
.data-table-wrapper,
.table-responsive,
.settings-process-table,
.crm-table-wrap,
.nfse-table-wrap,
.audit-table-wrap,
.reports-table-wrap {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  border-radius: var(--radius-lg);
  -webkit-overflow-scrolling: touch;
}

table {
  max-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

th {
  color: var(--color-text-muted);
  font-size: 0.76rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

td {
  color: var(--color-text-main);
}

.rs-loading-bar {
  background: linear-gradient(90deg, var(--color-brand-accent), var(--color-brand-primary));
  box-shadow: 0 0 20px rgba(199, 178, 114, 0.42);
}

.rs-topbar,
.sidebar,
.rs-sidebar {
  border-color: rgba(255, 255, 255, 0.10);
}

.rs-sidebar,
.sidebar-v2 {
  background:
    radial-gradient(circle at 20% 0%, rgba(199, 178, 114, 0.18), transparent 17rem),
    linear-gradient(180deg, #061f17, #0b2c22 52%, #081c16);
}

.rs-nav-tools {
  display: grid;
  gap: 0.75rem;
  margin: -0.25rem 0 0.25rem;
}

.rs-nav-filter {
  position: relative;
}

.rs-nav-filter input {
  width: 100%;
  min-height: 42px;
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  padding: 0.7rem 0.9rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.rs-nav-filter input::placeholder {
  color: rgba(255, 255, 255, 0.64);
}

.rs-nav-recent {
  display: none;
  gap: 0.45rem;
}

.rs-nav-recent.has-items {
  display: grid;
}

.rs-nav-recent-title {
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.rs-nav-recent-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.rs-recent-link {
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.90);
  padding: 0.42rem 0.62rem;
  font-size: 0.74rem;
  font-weight: 800;
}

.rs-recent-link:hover,
.rs-recent-link:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  color: #ffffff;
}


.rs-nav a[hidden],
.nav-section-label[hidden] {
  display: none;
}

.nav-links a.active {
  background: rgba(199, 178, 114, 0.16);
  color: #ffffff;
  box-shadow: inset 3px 0 0 var(--color-brand-accent);
}

.nav-links a:hover {
  background: rgba(255, 255, 255, 0.12);
}

.nav-glyph svg,
.rs-topbar-search svg {
  stroke: currentColor;
}

.flash {
  border-radius: var(--radius-md);
  border: 1px solid var(--color-border-medium);
  box-shadow: var(--shadow-xs);
}

.flash-success {
  background: var(--color-success-bg);
  color: var(--color-success-text);
  border-color: var(--color-success-border);
}

.flash-error,
.flash-danger {
  background: var(--color-danger-bg);
  color: var(--color-danger-text);
  border-color: var(--color-danger-border);
}

.flash-warning {
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
  border-color: var(--color-warning-border);
}

.cirs-toast-stack {
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
}

.cirs-toast {
  border-color: rgba(255, 255, 255, 0.12);
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-brand-primary), var(--color-brand-secondary));
  color: #ffffff;
}

.cirs-toast-error {
  background: linear-gradient(135deg, #7f1d1d, #9d2f2f);
}

.cirs-toast-success {
  background: linear-gradient(135deg, #14532d, #246b3c);
}

.cirs-confirm-overlay {
  background: rgba(7, 19, 15, 0.58);
}

.cirs-confirm-dialog {
  border-color: var(--color-border-medium);
  background: var(--color-bg-card);
  color: var(--color-text-main);
}

.cirs-confirm-dialog[data-variant="danger"] {
  border-color: var(--color-danger-border);
}

.cirs-confirm-dialog strong {
  color: var(--color-text-strong);
}

.cirs-confirm-dialog p {
  color: var(--color-text-muted);
  white-space: pre-line;
}

.cirs-confirm-dialog [data-confirm] {
  min-width: 9rem;
}

.cirs-confirm-dialog[data-variant="danger"] [data-confirm] {
  background: var(--color-danger-text);
  border-color: var(--color-danger-text);
  color: #ffffff;
}

.settings-change-review {
  border-color: var(--color-warning-border);
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
}

@media (max-width: 1100px) {
  .shell,
  .rs-shell {
    grid-template-columns: 1fr;
  }

  body.nav-open {
    overflow: hidden;
  }

  .sidebar-overlay,
  .rs-sidebar,
  .sidebar {
    overscroll-behavior: contain;
  }
}

@media (max-width: 760px) {
  .rs-main,
  .main-content:not(.auth-layout) {
    padding-inline: clamp(0.85rem, 4vw, 1.25rem);
  }

  :where(.page-header, .rs-page-hero, .dashboard-command-hero, .crm-page-header, .labor-hero, .nfse-hero, .settings-page-header, .reports-hero, .audit-hero) {
    border-radius: var(--radius-lg);
    padding: var(--space-6);
  }

  .actions-inline,
  .settings-inline-actions,
  .form-actions,
  .panel-actions {
    align-items: stretch;
  }

  .actions-inline > *,
  .settings-inline-actions > *,
  .form-actions > *,
  .panel-actions > * {
    flex: 1 1 100%;
  }

  .primary-button,
  .secondary-button,
  .ghost-button,
  .danger-button {
    width: 100%;
  }

  .table-scroll table.rs-responsive-table,
  .data-table-wrapper table.rs-responsive-table,
  table.rs-responsive-table {
    display: block;
    width: 100%;
    min-width: 0;
  }

  table.rs-responsive-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
  }

  table.rs-responsive-table tbody,
  table.rs-responsive-table tr,
  table.rs-responsive-table td {
    display: block;
    width: 100%;
  }

  table.rs-responsive-table tbody {
    display: grid;
    gap: 0.75rem;
  }

  table.rs-responsive-table tr {
    border: 1px solid var(--color-border-soft);
    border-radius: var(--radius-md);
    background: var(--color-bg-card);
    padding: 0.8rem;
    box-shadow: var(--shadow-xs);
  }

  table.rs-responsive-table td {
    border: 0;
    padding: 0.55rem 0;
  }

  table.rs-responsive-table td + td {
    border-top: 1px solid var(--color-border-soft);
  }

  table.rs-responsive-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 0.25rem;
    color: var(--color-text-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  table.rs-responsive-table td[data-label=""]::before {
    display: none;
  }
}

@media (max-width: 520px) {
  .panel-card,
  .premium-panel,
  .crm-panel,
  .settings-premium-card,
  .stat-card,
  .metric-card,
  .dashboard-card,
  .card,
  .nfse-card,
  .labor-card,
  .report-card,
  .audit-card {
    border-radius: var(--radius-md);
  }

  .cirs-toast-stack {
    left: 0.75rem;
    right: 0.75rem;
    max-width: none;
  }

  .cirs-confirm-dialog {
    padding: 1rem;
    border-radius: var(--radius-lg);
  }
}

html[data-visual-debug-overflow="true"] * {
  outline: 1px solid rgba(196, 44, 44, 0.18);
}


/* source: 04-pages/operational-refactor.css */
/* ============================================================
   P0/P4 Complete Visual + Usability Refactor
   Escopo: 4K layout, sidebar, submenu de configuracoes e refinamento
   dos modulos operacionais sem alterar regras de negocio.
   ============================================================ */

:root {
  --app-sidebar-width: 292px;
  --page-max: 1540px;
  --page-wide: 1760px;
  --page-gutter: clamp(24px, 2.35vw, 48px);
  --page-section-gap: clamp(18px, 1.6vw, 28px);
  --card-pad: clamp(18px, 1.4vw, 26px);
  --control-height: 46px;
  --kpi-min: 180px;
}

html,
body {
  min-width: 320px;
}

body {
  text-rendering: geometricPrecision;
}

.rs-shell,
.shell.app-shell-v2 {
  display: grid;
  grid-template-columns: var(--app-sidebar-width) minmax(0, 1fr);
  align-items: stretch;
  width: 100%;
  min-height: 100vh;
}

.rs-main,
.main-content:not(.auth-layout) {
  justify-self: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: var(--page-gutter);
  overflow-x: visible;
}

.rs-main > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay),
.main-content:not(.auth-layout) > :where(section, article, form, div):not(.full-bleed):not(.sidebar-overlay) {
  width: min(100%, var(--page-max));
  margin-inline: auto;
}

.rs-main > :where(.crm-page, .crm-board-page, .dashboard-page-v2, .processes-page, .process-monitoring-board, .settings-console-shell, .nfse-page, .labor-page, .reports-page, .asaas-page):not(.full-bleed) {
  width: min(100%, var(--page-wide));
}

@media (min-width: 1920px) {
  :root {
    --page-max: 1580px;
    --page-wide: 1880px;
  }

  .rs-main,
  .main-content:not(.auth-layout) {
    padding-inline: clamp(44px, 4.4vw, 104px);
  }
}

@media (min-width: 2560px) {
  :root {
    --page-max: 1660px;
    --page-wide: 2040px;
  }

  .rs-main,
  .main-content:not(.auth-layout) {
    padding-inline: clamp(72px, 7vw, 180px);
  }
}

/* ---------- Page rhythm and shared components ---------- */
.page-header,
.rs-page-hero,
.dashboard-command-hero,
.crm-page-header,
.crm-hero,
.labor-hero,
.nfse-hero,
.asaas-page-header,
.reports-hero,
.audit-hero,
.record-create-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(16px, 2vw, 32px);
  min-height: clamp(112px, 9vw, 164px);
  margin: 0 0 var(--page-section-gap);
  padding: clamp(22px, 2.2vw, 34px);
  overflow: hidden;
}

.page-header h1,
.rs-page-hero h1,
.dashboard-command-hero h1,
.crm-page-header h1,
.crm-hero h1,
.labor-hero h1,
.nfse-hero h1,
.asaas-page-header h1,
.reports-hero h1 {
  max-width: 17ch;
  margin-block: 0.2rem 0.45rem;
  font-size: clamp(2.35rem, 3.2vw, 4.45rem);
  line-height: 0.96;
}

.page-header p,
.rs-page-hero p,
.dashboard-command-hero p,
.crm-page-header p,
.crm-hero p,
.labor-hero p,
.nfse-hero p,
.asaas-page-header p,
.reports-hero p {
  max-width: 82ch;
  margin: 0;
}

.hero-actions,
.dashboard-command-actions,
.crm-hero-actions,
.process-header-actions,
.settings-page-intro-actions,
.actions-inline,
.form-actions,
.panel-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
}

.panel-card,
.table-card,
.stat-card,
.metric-card,
.dashboard-kpi-card,
.crm-metric-card,
.process-kpi-card,
.nfse-status-card,
.labor-worker-card,
.asaas-card,
.report-card {
  padding: var(--card-pad);
  border-radius: clamp(18px, 1.6vw, 26px);
}

.panel-header,
.dashboard-panel-header,
.labor-card-heading,
.crm-section-heading,
.title-split {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}

.panel-header h2,
.panel-header h3,
.dashboard-panel-header h2,
.labor-card-heading h2,
.crm-section-heading h2,
.title-split h2,
.title-split h3 {
  margin: 0;
  letter-spacing: -0.03em;
}

.stats-grid,
.metric-grid,
.metric-grid-4,
.dashboard-top-grid,
.process-kpi-grid,
.process-kpi-grid-monitoring,
.nfse-status-grid,
.labor-metric-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--kpi-min), 1fr));
  gap: clamp(12px, 1.25vw, 18px);
  margin-bottom: var(--page-section-gap);
}

.stat-card,
.metric-card,
.crm-metric-card,
.dashboard-kpi-card,
.process-kpi-card,
.nfse-status-card {
  min-height: 128px;
  display: grid;
  align-content: space-between;
  gap: 10px;
}

.stat-card strong,
.metric-card strong,
.crm-metric-card strong,
.dashboard-kpi-card strong,
.process-kpi-card strong,
.nfse-status-card strong {
  font-size: clamp(2rem, 2.2vw, 3.4rem);
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.form-grid,
.crm-form-grid,
.contact-filters-grid,
.crm-filter-grid,
.crm-leads-filter-grid,
.monitoring-filter-grid,
.monitoring-filter-grid-compact,
.process-filter-grid-compact,
.asaas-form-grid,
.nfse-form-grid,
.labor-form-grid,
.sanitize-field-grid,
.settings-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 14px;
  align-items: end;
}

.field-span-2,
.field-span-3,
.field-span-full,
.full-width,
.grid-column-full,
.full {
  grid-column: 1 / -1;
}

input,
select,
textarea,
.primary-button,
.secondary-button,
.ghost-button,
.danger-button,
.mini-button,
.compact-chip {
  min-height: var(--control-height);
}

.table-card,
.table-scroll,
.crm-table-wrap,
.data-table-wrapper {
  overflow-x: auto;
}

.empty-state,
.premium-empty-state,
.compact-empty-state,
.process-empty-state,
.vs-empty-chat {
  min-height: 96px;
  display: grid;
  place-items: center;
}

/* ---------- Sidebar polish ---------- */
.rs-sidebar,
.sidebar-v2 {
  width: var(--app-sidebar-width);
  max-width: var(--app-sidebar-width);
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px 16px;
}

.rs-brand-card-production,
.brand-card-v2.rs-brand-card-production {
  padding: 0 0 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.rs-brand-link-production,
.rs-brand-block.rs-brand-link-production {
  width: 100%;
  display: grid;
  justify-items: center;
  gap: 9px;
  text-align: center;
  padding: 10px 8px 8px;
  border-radius: 20px;
}

.rs-brand-link-production:hover {
  background: rgba(255, 255, 255, 0.07);
}

.rs-brand-logo-stage-production,
.rs-brand-logo-stage {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
}

.rs-brand-logo-placeholder-production,
.rs-brand-logo-placeholder {
  width: 62px;
  height: 62px;
  border-radius: 19px;
  overflow: hidden;
}

.rs-brand-logo-img-production,
.rs-brand-logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.rs-brand-copy-production,
.rs-brand-copy {
  width: 100%;
  display: grid;
  justify-items: center;
  gap: 2px;
  color: rgba(255, 255, 255, 0.86);
}

.rs-brand-eyebrow {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.rs-brand-title,
.rs-brand-copy .rs-brand-title {
  display: block;
  max-width: 100%;
  color: #fff;
  font-size: 1.08rem;
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.rs-brand-subtitle,
.rs-brand-copy .rs-brand-subtitle {
  display: block;
  max-width: 100%;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.rs-nav-tools {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.rs-nav-filter-icononly {
  position: relative;
  width: 44px;
  min-height: 44px;
  display: grid;
  align-items: center;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.08);
  transition: width 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.rs-nav-filter-icononly:hover,
.rs-nav-filter-icononly:focus-within {
  width: 100%;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.18);
}

.rs-nav-filter-icon {
  position: absolute;
  left: 13px;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  color: rgba(255, 255, 255, 0.82);
  pointer-events: none;
}

.rs-nav-filter-icon svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
}

.rs-nav-filter-icononly input {
  width: 100%;
  min-height: 42px;
  padding: 0 12px 0 42px;
  border: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
  opacity: 0;
  cursor: pointer;
}

.rs-nav-filter-icononly:focus-within input,
.rs-nav-filter-icononly:hover input {
  opacity: 1;
  cursor: text;
}

.rs-nav-filter-icononly input::placeholder {
  color: rgba(255, 255, 255, 0.62);
}


.rs-nav {
  flex: 1 1 auto;
  min-height: 0;
  padding-right: 4px;
}

.nav-links-v2 a {
  min-height: 40px;
}

.sidebar-footer-v2,
.rs-sidebar-footer {
  flex: 0 0 auto;
}

/* ---------- Dashboard ---------- */
.dashboard-page-v2 {
  display: grid;
  gap: var(--page-section-gap);
}

.dashboard-command-hero {
  margin-bottom: 0;
}

.dashboard-global-search {
  padding: 14px;
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  background: rgba(var(--color-bg-card-rgb), 0.86);
  box-shadow: var(--shadow-xs);
}

.dashboard-global-search label {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dashboard-global-search > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}

.dashboard-filter-panel {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 180px) minmax(140px, 160px) minmax(140px, 160px) auto auto;
  align-items: end;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  background: rgba(var(--color-bg-card-rgb), 0.86);
  box-shadow: var(--shadow-xs);
}

.dashboard-filter-copy {
  display: grid;
  gap: 4px;
}

.dashboard-filter-copy strong {
  color: var(--color-text);
  font-size: 0.94rem;
}

.dashboard-filter-panel label {
  display: grid;
  gap: 6px;
  margin: 0;
}

.dashboard-filter-panel label span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-filter-panel select,
.dashboard-filter-panel input[type="date"] {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--color-border-soft);
  border-radius: 12px;
  padding: 0 12px;
  background: var(--color-bg-card);
  color: var(--color-text);
}

.dashboard-attention-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr);
  gap: var(--page-section-gap);
  align-items: start;
}

.dashboard-main-grid-v2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--page-section-gap);
  align-items: start;
}

.dashboard-activity-panel {
  width: 100%;
}

.dashboard-side-stack {
  display: none;
}

.dashboard-attention-list,
.dashboard-crm-metrics,
.dashboard-now-list,
.dashboard-health-list,
.dashboard-activity-list {
  display: grid;
  gap: 10px;
}

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

.dashboard-shortcut-groups {
  display: grid;
  grid-template-columns: repeat(4, minmax(220px, 1fr));
  gap: 16px;
}

.dashboard-shortcut-list {
  display: grid;
  gap: 10px;
}

.dashboard-shortcut-card,
.dashboard-attention-item,
.dashboard-activity-item,
.dashboard-health-row,
.dashboard-mini-list a,
.dashboard-now-list a {
  border-radius: 16px;
}

/* ---------- CRM / Kanban ---------- */
.crm-page,
.crm-dashboard-page,
.crm-board-page,
.crm-leads-page {
  display: grid;
  gap: var(--page-section-gap);
}

.crm-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr);
  gap: var(--page-section-gap);
  align-items: start;
}

.crm-sidebar-stack,
.crm-main-stack {
  display: grid;
  gap: 16px;
}

.crm-filter-panel,
.crm-board-filter-panel,
.crm-leads-toolbar,
.contact-filters-grid,
.process-monitor-filters,
.labor-filter-card {
  padding: var(--card-pad);
}

.crm-kanban-shell,
.crm-full-board-shell {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 10px;
  scrollbar-color: rgba(6, 37, 27, 0.35) rgba(6, 37, 27, 0.08);
}

.crm-kanban-board,
.crm-full-board {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(290px, 330px);
  gap: 14px;
  min-width: max-content;
}

.crm-kanban-column,
.crm-full-column {
  min-height: clamp(420px, 44vh, 640px);
  border-radius: 20px;
  background: rgba(245, 247, 245, 0.82);
}

.crm-column-head,
.crm-full-column-head {
  position: sticky;
  top: 0;
  z-index: 1;
  backdrop-filter: blur(10px);
}

.crm-opportunity-card,
.crm-full-opportunity-card,
.crm-lead-card {
  padding: 14px;
  border-radius: 16px;
}

.crm-table,
.crm-lead-list-table {
  min-width: 920px;
}

/* ---------- Clientes e processos ---------- */
.contact-filters-grid,
.process-filter-grid-compact,
.monitoring-filter-grid,
.monitoring-filter-grid-compact {
  align-items: end;
}

.process-monitoring-board-grid,
.process-board-grid,
.process-monitoring-governance-card,
.processes-monitoring-card {
  width: 100%;
}

.process-monitoring-board-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--page-section-gap);
}

.process-monitoring-card,
.process-clients-card,
.processes-monitoring-card,
.refined-process-list-card,
.refined-process-form-card {
  padding: var(--card-pad);
}

.process-monitoring-table table,
.contacts-table,
.table-card table {
  width: 100%;
}

/* ---------- Contratos, anexos e documentos ---------- */
.sanitize-page-grid,
.documents-page-grid,
.contract-wizard,
.legal-structure-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  gap: var(--page-section-gap);
  align-items: start;
}

.sanitize-main-stack,
.contracts-builder-card,
.legal-phase {
  display: grid;
  gap: 16px;
}

.sanitize-preview-card,
.preview-card,
.legal-preview-card,
.nfse-sticky-card,
.asaas-preview-panel {
  position: sticky;
  top: var(--page-gutter);
}

.wizard-stepper,
.contract-stepper,
.legal-phase-trail {
  overflow-x: auto;
  padding-bottom: 4px;
}

.wizard-floating-actions {
  position: sticky;
  bottom: 12px;
  z-index: 3;
  border-radius: 18px;
  background: rgba(var(--color-bg-card-rgb), 0.92);
  backdrop-filter: blur(12px);
}

/* ---------- Cálculos trabalhistas ---------- */
.labor-board-grid,
.labor-editor-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
  gap: var(--page-section-gap);
  align-items: start;
}

.labor-worker-card {
  background: rgba(var(--color-bg-card-rgb), 0.72);
}

.labor-worker-card .eyebrow,
.labor-worker-card h2 {
  opacity: 0.84;
}

.labor-sidebar-stack,
.labor-review-sidebar {
  display: grid;
  gap: 16px;
  position: sticky;
  top: var(--page-gutter);
}

/* ---------- Produção jurídica e revisões ---------- */
.content-grid,
.grid-two-one,
.legal-addenda-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
  gap: var(--page-section-gap);
  align-items: start;
}

.side-panel {
  position: sticky;
  top: var(--page-gutter);
}

.textarea-tall,
.legal-document-preview,
.pre-wrap-block {
  min-height: clamp(260px, 32vh, 520px);
}

/* ---------- Financeiro / Asaas ---------- */
.asaas-checkout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 420px);
  gap: var(--page-section-gap);
  align-items: start;
}

.asaas-checkout-main,
.asaas-action-stack {
  display: grid;
  gap: 16px;
}

.asaas-preview-card,
.asaas-preview-panel {
  border-left: 4px solid var(--color-brand-primary);
}

.asaas-checklist {
  display: grid;
  gap: 9px;
}

/* ---------- NFS-e ---------- */
.nfse-status-card.danger,
.nfse-status-card:has(strong) {
  overflow: hidden;
}

.nfse-status-card.danger {
  border-color: var(--color-danger-border);
  background: linear-gradient(180deg, var(--color-danger-bg), rgba(var(--color-bg-card-rgb), 0.92));
}

.nfse-history-card {
  margin-top: var(--page-section-gap);
}

/* ---------- IA Jurídica ---------- */
.vs-layout {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: var(--page-section-gap);
  align-items: stretch;
}

.vs-sidebar-card,
.vs-chat-card {
  min-height: clamp(560px, calc(100vh - 180px), 820px);
}

.vs-chat-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.vs-chat-scroll {
  min-height: 0;
}

.vs-composer {
  position: sticky;
  bottom: 0;
  background: rgba(var(--color-bg-card-rgb), 0.96);
  backdrop-filter: blur(12px);
}

/* ---------- Relatórios ---------- */
.reports-page,
.reports-grid,
.reports-dashboard {
  display: grid;
  gap: var(--page-section-gap);
}

.reports-kpi-grid,
.report-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 14px;
}

/* ---------- Configurações com submenu vertical ---------- */
.settings-console-shell.settings-console-shell-pro.settings-refactor-shell {
  width: min(100%, var(--page-wide));
  max-width: var(--page-wide);
  display: grid;
  grid-template-columns: minmax(260px, 304px) minmax(0, 1fr);
  gap: var(--page-section-gap);
  align-items: start;
  margin-inline: auto;
  overflow: visible;
}

.settings-refactor-shell .settings-page-intro,
.settings-refactor-shell .settings-console-summary-row {
  grid-column: 1 / -1;
}

.settings-refactor-shell .settings-page-intro {
  margin-bottom: 0;
}

.settings-refactor-shell .settings-console-summary-row {
  display: grid;
  grid-template-columns: minmax(260px, 400px) minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  margin: 0;
}

.settings-refactor-shell .settings-console-summary-row-users {
  grid-template-columns: 1fr;
}

.settings-refactor-shell .settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-refactor-shell .settings-highlight-card {
  min-height: 104px;
}

.settings-refactor-shell .settings-refactor-menu.settings-menu-list,
.settings-refactor-shell .settings-menu-list.settings-menu-list-pro {
  grid-column: 1;
  position: sticky;
  top: var(--page-gutter);
  max-height: calc(100vh - (var(--page-gutter) * 2));
  display: grid;
  gap: 8px;
  align-content: start;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--color-border-soft);
  border-radius: 24px;
  background: rgba(var(--color-bg-card-rgb), 0.88);
  box-shadow: var(--shadow-sm);
  overflow-y: auto;
  overflow-x: visible;
  white-space: normal;
  backdrop-filter: blur(16px);
}

.settings-refactor-shell .settings-workspace {
  grid-column: 2;
  display: grid;
  gap: var(--page-section-gap);
  min-width: 0;
}

.settings-menu-group {
  display: block;
  margin: 12px 8px 4px;
  color: var(--color-text-muted);
  font-size: 0.68rem;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.settings-menu-group:first-child {
  margin-top: 2px;
}

.settings-refactor-shell .settings-menu-list a,
.settings-refactor-shell .settings-refactor-menu.settings-menu-list a,
.settings-refactor-shell .settings-menu-list.settings-menu-list-pro a {
  width: 100%;
  min-height: 64px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  justify-content: start;
  align-items: center;
  gap: 11px;
  padding: 10px 12px;
  border-radius: 17px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--color-text-main);
  font-size: 0.9rem;
  line-height: 1.2;
  text-align: left;
  white-space: normal;
}

.settings-refactor-shell .settings-menu-list a:hover,
.settings-refactor-shell .settings-menu-list a.active {
  background: linear-gradient(135deg, rgba(6, 37, 27, 0.08), rgba(199, 178, 114, 0.14));
  border-color: var(--color-border-medium);
  color: var(--color-text-strong);
}

.settings-refactor-shell .settings-menu-list a.active {
  box-shadow: inset 4px 0 0 var(--color-brand-primary), var(--shadow-xs);
}

.settings-refactor-shell .settings-menu-icon {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(6, 37, 27, 0.08);
  color: var(--color-brand-primary);
  font-family: var(--font-sans);
  font-size: 0.86rem;
  font-weight: 950;
}

.settings-menu-text {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.settings-menu-text strong,
.settings-refactor-shell .settings-menu-list a span:last-child strong {
  display: block;
  color: inherit;
  overflow: hidden;
  text-overflow: ellipsis;
}

.settings-menu-text small {
  display: block;
  color: var(--color-text-muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.25;
  white-space: normal;
}

.settings-refactor-shell .settings-page-header.compact,
.settings-refactor-shell .settings-ai-header,
.settings-refactor-shell .settings-ai-header.compact {
  padding: var(--card-pad);
  border: 1px solid var(--color-border-soft);
  border-radius: 22px;
  background: rgba(var(--color-bg-card-rgb), 0.76);
}

.settings-refactor-shell .settings-premium-layout,
.settings-refactor-shell .settings-premium-layout.inside-workspace,
.settings-refactor-shell .settings-ai-layout,
.settings-refactor-shell .settings-two-column-grid,
.settings-refactor-shell .settings-users-grid,
.settings-refactor-shell .settings-users-grid-refined,
.settings-refactor-shell .integration-grid,
.settings-refactor-shell .tribunal-mapping-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  gap: var(--page-section-gap);
  align-items: start;
}

.settings-refactor-shell .panel-card,
.settings-refactor-shell .settings-premium-card,
.settings-refactor-shell .premium-panel,
.settings-refactor-shell .settings-catalog-card,
.settings-refactor-shell .settings-status-card {
  padding: var(--card-pad);
}

/* ---------- Dark theme pass ---------- */
html[data-theme="dark"] .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
html[data-theme="dark"] .dashboard-global-search,
html[data-theme="dark"] .dashboard-filter-panel,
html[data-theme="dark"] .crm-kanban-column,
html[data-theme="dark"] .crm-full-column,
html[data-theme="dark"] .settings-refactor-shell .settings-page-header.compact,
html[data-theme="dark"] .settings-refactor-shell .settings-ai-header,
html[data-theme="dark"] .settings-refactor-shell .settings-ai-header.compact {
  background: rgba(var(--color-bg-card-rgb), 0.84);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-icon {
  background: rgba(199, 178, 114, 0.12);
  color: var(--color-brand-accent-soft);
}

/* ---------- Responsive ---------- */
@media (max-width: 1320px) {
  .dashboard-attention-grid,
  .dashboard-main-grid-v2,
  .crm-main-grid,
  .sanitize-page-grid,
  .documents-page-grid,
  .contract-wizard,
  .legal-structure-grid,
  .labor-board-grid,
  .labor-editor-grid,
  .content-grid,
  .grid-two-one,
  .asaas-checkout-grid,
  .vs-layout,
  .settings-refactor-shell .settings-premium-layout,
  .settings-refactor-shell .settings-premium-layout.inside-workspace,
  .settings-refactor-shell .settings-ai-layout,
  .settings-refactor-shell .settings-two-column-grid,
  .settings-refactor-shell .settings-users-grid,
  .settings-refactor-shell .settings-users-grid-refined,
  .settings-refactor-shell .integration-grid,
  .settings-refactor-shell .tribunal-mapping-layout {
    grid-template-columns: 1fr;
  }

  .sanitize-preview-card,
  .preview-card,
  .legal-preview-card,
  .nfse-sticky-card,
  .asaas-preview-panel,
  .labor-sidebar-stack,
  .labor-review-sidebar,
  .side-panel {
    position: static;
  }

  .dashboard-shortcut-groups {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }
}

@media (max-width: 1100px) {
  .rs-shell,
  .shell.app-shell-v2 {
    grid-template-columns: 1fr;
  }

  .rs-sidebar,
  .sidebar-v2 {
    width: min(86vw, 330px);
    max-width: min(86vw, 330px);
  }

  .rs-main,
  .main-content:not(.auth-layout) {
    padding: clamp(18px, 4vw, 28px);
    overflow-x: visible;
  }

  .settings-console-shell.settings-console-shell-pro.settings-refactor-shell {
    grid-template-columns: 1fr;
  }

  .settings-refactor-shell .settings-page-intro,
  .settings-refactor-shell .settings-console-summary-row,
  .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
  .settings-refactor-shell .settings-menu-list.settings-menu-list-pro,
  .settings-refactor-shell .settings-workspace {
    grid-column: 1;
  }

  .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
  .settings-refactor-shell .settings-menu-list.settings-menu-list-pro {
    position: relative;
    top: auto;
    max-height: none;
  }
}

@media (max-width: 760px) {
  :root {
    --page-gutter: 16px;
    --control-height: 44px;
  }

  .page-header,
  .rs-page-hero,
  .dashboard-command-hero,
  .crm-page-header,
  .crm-hero,
  .labor-hero,
  .nfse-hero,
  .asaas-page-header,
  .reports-hero,
  .audit-hero,
  .record-create-hero {
    display: grid;
    min-height: 0;
    padding: 20px;
  }

  .dashboard-global-search > div,
  .dashboard-filter-panel,
  .settings-refactor-shell .settings-console-summary-row,
  .settings-refactor-shell .settings-hero-highlights,
  .dashboard-crm-metrics,
  .dashboard-shortcut-groups {
    grid-template-columns: 1fr;
  }

  .hero-actions,
  .dashboard-command-actions,
  .crm-hero-actions,
  .process-header-actions,
  .settings-page-intro-actions,
  .actions-inline,
  .form-actions,
  .panel-actions {
    justify-content: stretch;
  }

  .crm-kanban-board,
  .crm-full-board {
    grid-auto-columns: minmax(272px, 82vw);
  }
}


.rs-nav-filter-inline input {
  opacity: 1;
  position: static;
  width: 100%;
  min-height: 34px;
  padding: 8px 10px;
  border-radius: 12px;
}


.rs-sidebar-brand-top {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 8px;
}

.rs-sidebar-toggle-button {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.9);
  cursor: pointer;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.rs-sidebar-toggle-button:hover,
.rs-sidebar-toggle-button:focus-visible {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.24);
}

.rs-sidebar-toggle-icon {
  font-size: 1.05rem;
  line-height: 1;
}

@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-shell,
  body.sidebar-collapsed .shell.app-shell-v2 {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  body.sidebar-collapsed .rs-sidebar,
  body.sidebar-collapsed .sidebar-v2 {
    width: 96px;
    max-width: 96px;
    padding-inline: 10px;
  }

  body.sidebar-collapsed .rs-sidebar-brand-top {
    justify-content: center;
  }

  body.sidebar-collapsed .rs-brand-card-production,
  body.sidebar-collapsed .brand-card-v2.rs-brand-card-production {
    padding-bottom: 10px;
  }

  body.sidebar-collapsed .rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production {
    padding-inline: 0;
    gap: 0;
  }

  body.sidebar-collapsed .rs-brand-copy,
  body.sidebar-collapsed .rs-brand-copy-production,
  body.sidebar-collapsed .nav-section-label,
  body.sidebar-collapsed .nav-label {
    display: none;
  }

  body.sidebar-collapsed .rs-brand-logo-stage,
  body.sidebar-collapsed .rs-brand-logo-stage-production,
  body.sidebar-collapsed .rs-brand-logo-placeholder,
  body.sidebar-collapsed .rs-brand-logo-placeholder-production {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }

  body.sidebar-collapsed .rs-nav,
  body.sidebar-collapsed .nav-links-v2 {
    padding-right: 0;
  }

  body.sidebar-collapsed .rs-nav a,
  body.sidebar-collapsed .nav-links-v2 a {
    justify-content: center;
    padding-inline: 0;
    min-height: 46px;
  }

  body.sidebar-collapsed .nav-glyph {
    margin: 0;
  }
}

@media (max-width: 1180px) {
  .rs-sidebar-toggle-button {
    display: none;
  }
}


/* source: 04-pages/visual-refinement.css */
/* ============================================================
   P1 - Refinamento visual transversal
   Objetivo: unificar headers, cards métricos e layouts com
   o padrão mais premium já usado em Expedientes / Processos.
   ============================================================ */

:where(
  .page-header.rs-page-hero,
  .crm-page-header,
  .reports-hero,
  .contracts-page-header,
  .settings-page-intro,
  .audit-hero,
  .record-create-hero,
  .crm-leads-page .crm-hero
) {
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(18px, 2.2vw, 36px);
  min-height: clamp(132px, 11vw, 188px);
  padding: clamp(24px, 2.4vw, 36px);
  border: 1px solid var(--color-border-soft);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.56)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.14), rgba(6, 37, 27, 0.05));
  box-shadow: 0 18px 40px rgba(6, 37, 27, 0.06);
}

html[data-theme="dark"] :where(
  .page-header.rs-page-hero,
  .crm-page-header,
  .reports-hero,
  .contracts-page-header,
  .settings-page-intro,
  .audit-hero,
  .record-create-hero,
  .crm-leads-page .crm-hero
) {
  background:
    linear-gradient(135deg, rgba(20, 34, 28, 0.94), rgba(13, 24, 19, 0.88)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.12), rgba(255, 255, 255, 0.02));
}

:where(
  .page-header.rs-page-hero,
  .crm-page-header,
  .reports-hero,
  .contracts-page-header,
  .settings-page-intro,
  .crm-leads-page .crm-hero
) > :first-child {
  min-width: 0;
}

:where(
  .page-header.rs-page-hero,
  .crm-page-header,
  .reports-hero,
  .contracts-page-header,
  .settings-page-intro,
  .crm-leads-page .crm-hero
) h1 {
  max-width: 15ch;
  margin-block: 0.3rem 0.55rem;
  letter-spacing: -0.05em;
}

:where(
  .page-header.rs-page-hero,
  .crm-page-header,
  .reports-hero,
  .contracts-page-header,
  .settings-page-intro,
  .crm-leads-page .crm-hero
) p {
  max-width: 78ch;
  color: var(--color-text-muted);
}

.crm-leads-page .crm-hero .crm-hero-actions,
.crm-leads-page .hero-actions,
.contacts-quick-actions,
.crm-hero-actions,
.settings-page-intro-actions {
  align-self: flex-start;
}

@media (min-width: 1200px) {
  .metric-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) {
  position: relative;
  min-height: 132px;
  overflow: hidden;
}

:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) > span:first-child,
:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) .crm-metric-kicker {
  display: block;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) strong {
  color: var(--color-text-strong);
}

:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) small,
:where(
  .stat-card,
  .premium-metric-card,
  .metric-card,
  .crm-metric-card,
  .dashboard-kpi-card,
  .process-kpi-card,
  .nfse-status-card,
  .report-card
) p {
  margin: 0;
  color: var(--color-text-muted);
}

.stat-card.accent,
.premium-metric-card.accent {
  border-color: rgba(6, 37, 27, 0.78);
  background: linear-gradient(135deg, var(--color-brand-primary), var(--color-brand-secondary));
  box-shadow: 0 18px 36px rgba(6, 37, 27, 0.16);
}

.stat-card.accent > span:first-child,
.stat-card.accent small,
.premium-metric-card.accent > span:first-child,
.premium-metric-card.accent p {
  color: rgba(255, 255, 255, 0.76);
}

.stat-card.accent strong,
.premium-metric-card.accent strong {
  color: #fff;
}

.ghost-button,
.primary-button,
.secondary-button,
.danger-button,
.mini-button,
.compact-chip {
  writing-mode: horizontal-tb;
  word-break: normal;
  overflow-wrap: normal;
}

.documents-page-grid {
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  gap: clamp(16px, 1.8vw, 24px);
  align-items: start;
}

.contracts-builder-card,
.contracts-list-card {
  min-width: 0;
}

.contracts-list-card {
  position: sticky;
  top: 26px;
}

.contracts-list-card .panel-header {
  flex-wrap: wrap;
  align-items: flex-start;
}

.contract-search-input {
  width: min(100%, 320px);
}

@media (max-width: 1380px) {
  .documents-page-grid {
    grid-template-columns: 1fr;
  }

  .contracts-list-card {
    position: static;
  }
}

.settings-console-shell.settings-refactor-shell {
  width: min(100%, var(--page-wide));
  max-width: none;
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: clamp(18px, 2vw, 28px);
  align-items: start;
}

.settings-console-shell.settings-refactor-shell > .settings-page-intro,
.settings-console-shell.settings-refactor-shell > .settings-console-summary-row {
  grid-column: 1 / -1;
}

.settings-console-shell.settings-refactor-shell > .settings-menu-list {
  grid-column: 1;
  position: sticky;
  top: 24px;
  align-self: start;
  max-height: calc(100vh - 110px);
  padding: 18px;
  border: 1px solid var(--color-border-soft);
  border-radius: 24px;
  background: rgba(var(--color-bg-card-rgb), 0.94);
  box-shadow: 0 18px 38px rgba(6, 37, 27, 0.06);
  overflow: auto;
}

.settings-console-shell.settings-refactor-shell > .settings-workspace {
  grid-column: 2;
  min-width: 0;
}

.settings-console-summary-row {
  display: grid;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
  gap: clamp(14px, 1.6vw, 22px);
  align-items: stretch;
}

.settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-highlight-card {
  min-height: 122px;
  display: grid;
  align-content: space-between;
  gap: 10px;
  padding: 18px 20px;
  border: 1px solid var(--color-border-soft);
  border-radius: 20px;
  background: rgba(var(--color-bg-card-rgb), 0.94);
  box-shadow: var(--shadow-xs);
}

.settings-highlight-card span {
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.settings-highlight-card strong {
  color: var(--color-text-strong);
  font-size: clamp(1.75rem, 2vw, 2.55rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
}

.settings-highlight-card small {
  margin: 0;
  color: var(--color-text-muted);
}

.settings-menu-list a {
  min-height: 66px;
  align-items: start;
  padding: 12px 14px;
}

.settings-menu-text {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.settings-menu-text strong,
.settings-menu-text small {
  display: block;
  line-height: 1.25;
  white-space: normal;
}

.settings-menu-text strong {
  color: var(--color-text-strong);
}

.settings-menu-text small {
  color: var(--color-text-muted);
  font-size: 12px;
  font-weight: 650;
}

.settings-menu-group {
  display: block;
  margin: 10px 0 4px;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

@media (max-width: 1280px) {
  .settings-console-shell.settings-refactor-shell {
    grid-template-columns: 1fr;
  }

  .settings-console-shell.settings-refactor-shell > .settings-page-intro,
  .settings-console-shell.settings-refactor-shell > .settings-console-summary-row,
  .settings-console-shell.settings-refactor-shell > .settings-menu-list,
  .settings-console-shell.settings-refactor-shell > .settings-workspace {
    grid-column: 1;
  }

  .settings-console-shell.settings-refactor-shell > .settings-menu-list {
    position: static;
    max-height: none;
  }

  .settings-console-summary-row {
    grid-template-columns: 1fr;
  }

  .settings-hero-highlights {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

@media (max-width: 760px) {
  :where(
    .page-header.rs-page-hero,
    .crm-page-header,
    .reports-hero,
    .contracts-page-header,
    .settings-page-intro,
    .crm-leads-page .crm-hero
  ) {
    align-items: flex-start;
  }

  :where(
    .page-header.rs-page-hero,
    .crm-page-header,
    .reports-hero,
    .contracts-page-header,
    .settings-page-intro,
    .crm-leads-page .crm-hero
  ) h1 {
    max-width: none;
  }

  .hero-actions,
  .crm-hero-actions,
  .contacts-quick-actions,
  .settings-page-intro-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* ============================================================
   P1 HOTFIX - especificidade real sobre legado visual
   Motivo: :where() tem especificidade zero; regras legadas venciam.
   ============================================================ */

.rs-main .page-header.rs-page-hero,
.rs-main .crm-page-header,
.rs-main .reports-hero,
.rs-main .contracts-page-header,
.rs-main .settings-page-intro,
.rs-main .audit-hero,
.rs-main .record-create-hero,
.rs-main .crm-leads-page > .crm-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(18px, 2.2vw, 36px);
  min-height: clamp(132px, 11vw, 188px);
  margin: 0 0 var(--page-section-gap);
  padding: clamp(24px, 2.4vw, 36px);
  border: 1px solid var(--color-border-soft);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.58)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.16), rgba(6, 37, 27, 0.06));
  color: var(--color-text-main);
  box-shadow: 0 18px 42px rgba(6, 37, 27, 0.08);
  overflow: hidden;
}

html[data-theme="dark"] .rs-main .page-header.rs-page-hero,
html[data-theme="dark"] .rs-main .crm-page-header,
html[data-theme="dark"] .rs-main .reports-hero,
html[data-theme="dark"] .rs-main .contracts-page-header,
html[data-theme="dark"] .rs-main .settings-page-intro,
html[data-theme="dark"] .rs-main .audit-hero,
html[data-theme="dark"] .rs-main .record-create-hero,
html[data-theme="dark"] .rs-main .crm-leads-page > .crm-hero {
  background:
    linear-gradient(135deg, rgba(20, 34, 28, 0.94), rgba(13, 24, 19, 0.88)),
    linear-gradient(135deg, rgba(199, 178, 114, 0.12), rgba(255, 255, 255, 0.02));
}

.rs-main .page-header.rs-page-hero h1,
.rs-main .crm-page-header h1,
.rs-main .reports-hero h1,
.rs-main .contracts-page-header h1,
.rs-main .settings-page-intro h1,
.rs-main .audit-hero h1,
.rs-main .record-create-hero h1,
.rs-main .crm-leads-page > .crm-hero h1 {
  max-width: 15ch;
  margin-block: 0.3rem 0.55rem;
  color: var(--color-text-strong);
  font-size: clamp(2.35rem, 3.2vw, 4.45rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
}

.rs-main .page-header.rs-page-hero p,
.rs-main .crm-page-header p,
.rs-main .reports-hero p,
.rs-main .contracts-page-header p,
.rs-main .settings-page-intro p,
.rs-main .audit-hero p,
.rs-main .record-create-hero p,
.rs-main .crm-leads-page > .crm-hero p {
  max-width: 78ch;
  margin: 0;
  color: var(--color-text-muted);
  font-size: 15px;
  line-height: 1.65;
}

.rs-main .crm-leads-page .hero-actions,
.rs-main .crm-leads-page .crm-hero-actions,
.rs-main .contacts-quick-actions,
.rs-main .crm-hero-actions,
.rs-main .settings-page-intro-actions {
  align-self: flex-start;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
}

.rs-main .stat-card,
.rs-main .premium-metric-card,
.rs-main .metric-card,
.rs-main .crm-metric-card,
.rs-main .dashboard-kpi-card,
.rs-main .process-kpi-card,
.rs-main .nfse-status-card,
.rs-main .report-card {
  position: relative;
  min-height: 132px;
  display: grid;
  align-content: space-between;
  gap: 10px;
  overflow: hidden;
  border: 1px solid var(--color-border-soft);
  border-radius: clamp(18px, 1.6vw, 26px);
  background: rgba(var(--color-bg-card-rgb), 0.94);
  box-shadow: var(--shadow-xs);
}

.rs-main .stat-card > span:first-child,
.rs-main .premium-metric-card > span:first-child,
.rs-main .metric-card > span:first-child,
.rs-main .crm-metric-card > span:first-child,
.rs-main .dashboard-kpi-card > span:first-child,
.rs-main .process-kpi-card > span:first-child,
.rs-main .nfse-status-card > span:first-child,
.rs-main .report-card > span:first-child,
.rs-main .crm-metric-card .crm-metric-kicker {
  display: block;
  color: var(--color-text-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.rs-main .stat-card strong,
.rs-main .premium-metric-card strong,
.rs-main .metric-card strong,
.rs-main .crm-metric-card strong,
.rs-main .dashboard-kpi-card strong,
.rs-main .process-kpi-card strong,
.rs-main .nfse-status-card strong,
.rs-main .report-card strong {
  color: var(--color-text-strong);
  font-size: clamp(2rem, 2.2vw, 3.4rem);
  line-height: 0.92;
  letter-spacing: -0.05em;
}

.rs-main .stat-card small,
.rs-main .premium-metric-card p,
.rs-main .metric-card small,
.rs-main .crm-metric-card small,
.rs-main .dashboard-kpi-card p,
.rs-main .process-kpi-card small,
.rs-main .nfse-status-card small,
.rs-main .report-card p {
  margin: 0;
  color: var(--color-text-muted);
}

.rs-main .stat-card.accent,
.rs-main .premium-metric-card.accent {
  border-color: rgba(6, 37, 27, 0.78);
  background: linear-gradient(135deg, var(--color-brand-primary), var(--color-brand-secondary));
  box-shadow: 0 18px 36px rgba(6, 37, 27, 0.16);
}

.rs-main .stat-card.accent > span:first-child,
.rs-main .stat-card.accent small,
.rs-main .premium-metric-card.accent > span:first-child,
.rs-main .premium-metric-card.accent p {
  color: rgba(255, 255, 255, 0.76);
}

.rs-main .stat-card.accent strong,
.rs-main .premium-metric-card.accent strong {
  color: #fff;
}

.rs-main .documents-page-grid {
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  gap: clamp(16px, 1.8vw, 24px);
  align-items: start;
}

.rs-main .contracts-builder-card,
.rs-main .contracts-list-card {
  min-width: 0;
}

.rs-main .contracts-list-card {
  position: sticky;
  top: 26px;
}

.rs-main .contracts-list-card .panel-header {
  flex-wrap: wrap;
  align-items: flex-start;
}

.rs-main .contract-search-input {
  width: min(100%, 320px);
}

.rs-main .settings-console-shell.settings-refactor-shell {
  width: min(100%, var(--page-wide));
  max-width: none;
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: clamp(18px, 2vw, 28px);
  align-items: start;
}

.rs-main .settings-console-shell.settings-refactor-shell > .settings-page-intro,
.rs-main .settings-console-shell.settings-refactor-shell > .settings-console-summary-row {
  grid-column: 1 / -1;
}

.rs-main .settings-console-shell.settings-refactor-shell > .settings-menu-list {
  grid-column: 1;
  position: sticky;
  top: 24px;
  align-self: start;
  max-height: calc(100vh - 110px);
  padding: 18px;
  border: 1px solid var(--color-border-soft);
  border-radius: 24px;
  background: rgba(var(--color-bg-card-rgb), 0.94);
  box-shadow: 0 18px 38px rgba(6, 37, 27, 0.06);
  overflow: auto;
}

.rs-main .settings-console-shell.settings-refactor-shell > .settings-workspace {
  grid-column: 2;
  min-width: 0;
}

.rs-main .settings-console-summary-row {
  display: grid;
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
  gap: clamp(14px, 1.6vw, 22px);
  align-items: stretch;
}

.rs-main .settings-hero-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.rs-main .settings-highlight-card {
  min-height: 122px;
  display: grid;
  align-content: space-between;
  gap: 10px;
  padding: 18px 20px;
  border: 1px solid var(--color-border-soft);
  border-radius: 20px;
  background: rgba(var(--color-bg-card-rgb), 0.94);
  box-shadow: var(--shadow-xs);
}

.rs-main .settings-menu-list a {
  min-height: 66px;
  align-items: start;
  padding: 12px 14px;
}

.rs-main .settings-menu-text {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.rs-main .settings-menu-text strong,
.rs-main .settings-menu-text small {
  display: block;
  line-height: 1.25;
  white-space: normal;
}

@media (max-width: 1380px) {
  .rs-main .documents-page-grid {
    grid-template-columns: 1fr;
  }

  .rs-main .contracts-list-card {
    position: static;
  }
}

@media (max-width: 1280px) {
  .rs-main .settings-console-shell.settings-refactor-shell {
    grid-template-columns: 1fr;
  }

  .rs-main .settings-console-shell.settings-refactor-shell > .settings-page-intro,
  .rs-main .settings-console-shell.settings-refactor-shell > .settings-console-summary-row,
  .rs-main .settings-console-shell.settings-refactor-shell > .settings-menu-list,
  .rs-main .settings-console-shell.settings-refactor-shell > .settings-workspace {
    grid-column: 1;
  }

  .rs-main .settings-console-shell.settings-refactor-shell > .settings-menu-list {
    position: static;
    max-height: none;
  }

  .rs-main .settings-console-summary-row {
    grid-template-columns: 1fr;
  }

  .rs-main .settings-hero-highlights {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

@media (max-width: 760px) {
  .rs-main .page-header.rs-page-hero,
  .rs-main .crm-page-header,
  .rs-main .reports-hero,
  .rs-main .contracts-page-header,
  .rs-main .settings-page-intro,
  .rs-main .crm-leads-page > .crm-hero {
    align-items: flex-start;
  }

  .rs-main .page-header.rs-page-hero h1,
  .rs-main .crm-page-header h1,
  .rs-main .reports-hero h1,
  .rs-main .contracts-page-header h1,
  .rs-main .settings-page-intro h1,
  .rs-main .crm-leads-page > .crm-hero h1 {
    max-width: none;
  }

  .rs-main .hero-actions,
  .rs-main .crm-hero-actions,
  .rs-main .contacts-quick-actions,
  .rs-main .settings-page-intro-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

.rs-main .nucleus-select-form {
  align-items: end;
}

.rs-main .settings-select-filter {
  width: 100%;
  margin-bottom: .55rem;
}

.rs-main .nucleus-select-form select[data-filterable-select] {
  min-height: 3rem;
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(15, 23, 42, 0.55) 50%),
    linear-gradient(135deg, rgba(15, 23, 42, 0.55) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) calc(50% - 4px),
    calc(100% - 12px) calc(50% - 4px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 2.7rem;
}

.rs-main .nucleus-select-form .helper-text {
  display: block;
  margin-top: .5rem;
}

.rs-main .vs-responde-layout {
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  align-items: stretch;
}

.rs-main .vs-responde-sidebar,
.rs-main .vs-responde-panel {
  min-height: calc(100vh - 18rem);
}

.rs-main .vs-responde-panel {
  display: flex;
  flex-direction: column;
}

.rs-main .vs-responde-shell {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.rs-main .vs-responde-thread {
  min-height: 22rem;
  flex: 1;
}

.rs-main .vs-responde-composer {
  margin-top: auto;
}

.rs-main .vs-conversation-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .65rem;
  align-items: start;
}

.rs-main .vs-conversation-item .history-card-link {
  min-width: 0;
}

.rs-main .vs-conversation-menu-shell {
  position: relative;
}

.rs-main .vs-conversation-menu-toggle {
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: rgba(255, 255, 255, 0.92);
  color: #0f172a;
  border-radius: 999px;
  width: 2.2rem;
  height: 2.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.rs-main .vs-conversation-menu {
  position: absolute;
  top: calc(100% + .4rem);
  right: 0;
  min-width: 13rem;
  z-index: 30;
  background: #111827;
  color: #f8fafc;
  border-radius: 1rem;
  padding: .45rem;
  display: grid;
  gap: .2rem;
  box-shadow: 0 24px 40px rgba(15, 23, 42, 0.28);
}

.rs-main .vs-conversation-menu[hidden] { display: none; }

.rs-main .vs-conversation-menu form,
.rs-main .vs-conversation-menu button,
.rs-main .vs-conversation-menu a {
  display: block;
  width: 100%;
}

.rs-main .vs-conversation-menu button,
.rs-main .vs-conversation-menu a {
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  text-align: left;
  padding: .7rem .8rem;
  border-radius: .8rem;
  font-weight: 600;
}

.rs-main .vs-conversation-menu button:hover,
.rs-main .vs-conversation-menu a:hover {
  background: rgba(255, 255, 255, 0.08);
}

.rs-main .vs-conversation-menu .danger-action {
  color: #fca5a5;
}

.rs-main .vs-history-pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: .35rem;
}

.rs-main .vs-history-pill-row .badge { font-size: .72rem; }

.rs-main .contracts-filters-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  align-items: center;
  justify-content: space-between;
  margin: .9rem 0 1.1rem;
}

.rs-main .period-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.rs-main .period-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.2rem;
  padding: 0 .9rem;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  background: #fff;
  color: #0f172a;
  font-weight: 700;
  text-decoration: none;
}

.rs-main .period-chip.is-active {
  background: linear-gradient(135deg, #0c5a43, #062d22);
  color: #fff;
  border-color: transparent;
}

.rs-main .recent-signature-item .admin-inline-actions,
.rs-main .recent-contract-item .admin-inline-actions {
  margin-top: .55rem;
}

.rs-main .stats-icon-box,
.rs-main .process-stat-card > span:first-child,
.rs-main .labor-stat-card > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.rs-main .labor-stats-grid .stat-card-emoji,
.rs-main .process-stats-grid .stat-card-emoji {
  margin-inline: auto;
}

.rs-main .labor-filter-actions,
.rs-main .crm-filter-actions,
.rs-main .crm-leads-filter-actions,
.rs-main .contacts-filter-actions,
.rs-main .process-filter-actions {
  display: flex;
  gap: .65rem;
  justify-content: flex-end;
  align-items: center;
}

.rs-main .contacts-primary-contact {
  display: grid;
  gap: .2rem;
}

.rs-main .contacts-primary-contact strong {
  font-size: .98rem;
  color: #0f172a;
}

.rs-main .contacts-primary-contact small {
  color: #64748b;
  font-weight: 600;
}

.rs-main .contacts-primary-contact .contact-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
}

.rs-main .contacts-primary-contact .contact-chip {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .18rem .55rem;
  border-radius: 999px;
  background: rgba(12, 90, 67, 0.08);
  color: #0c5a43;
  font-size: .78rem;
  font-weight: 700;
}

.rs-main .crm-dashboard-toolbar,
.rs-main .crm-leads-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .8rem;
  margin-bottom: 1rem;
}

.rs-main .quick-library-collapsible summary {
  cursor: pointer;
  list-style: none;
}

.rs-main .quick-library-collapsible summary::-webkit-details-marker { display: none; }

.rs-main .quick-library-collapsible[open] .quick-library-summary-indicator::after { content: '−'; }
.rs-main .quick-library-collapsible .quick-library-summary-indicator::after { content: '+'; }

.rs-main .dashboard-shortcut-groups.five-across {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.rs-main .dashboard-shortcut-group.shortcuts-compact {
  min-width: 0;
}

.rs-main .ai-store-agent-card.photo-card {
  text-align: left;
}

.rs-main .ai-agent-avatar.ai-agent-photo {
  width: 4rem;
  height: 4rem;
  border-radius: 1rem;
  overflow: hidden;
  padding: 0;
  background: linear-gradient(135deg, rgba(12, 90, 67, 0.16), rgba(15, 23, 42, 0.12));
}

.rs-main .ai-agent-avatar.ai-agent-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rs-main .ai-agent-identity {
  display: flex;
  gap: .8rem;
  align-items: center;
}

.rs-main .ai-agent-identity-copy {
  display: grid;
  gap: .15rem;
}

.rs-main .ai-base-op-card {
  border: 1px solid rgba(12, 90, 67, 0.08);
  border-radius: 1.3rem;
  padding: 1rem;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(241,245,249,0.98));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.rs-main .ai-base-op-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  margin-bottom: .75rem;
}

.rs-main .ai-base-op-card p { margin: .4rem 0 0; }

@media (max-width: 1180px) {
  .rs-main .dashboard-shortcut-groups.five-across {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .rs-main .vs-responde-layout {
    grid-template-columns: 1fr;
  }

  .rs-main .vs-responde-sidebar,
  .rs-main .vs-responde-panel {
    min-height: auto;
  }
}

@media (max-width: 720px) {
  .rs-main .dashboard-shortcut-groups.five-across {
    grid-template-columns: 1fr;
  }
}

.rs-main .vs-layout {
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  align-items: stretch;
}

.rs-main .vs-sidebar-card,
.rs-main .vs-chat-card {
  min-height: calc(100vh - 18rem);
}

.rs-main .vs-chat-card {
  display: flex;
  flex-direction: column;
}

.rs-main .vs-shell {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.rs-main .vs-chat-log {
  flex: 1;
  min-height: 24rem;
}

.rs-main .vs-composer {
  margin-top: auto;
}

@media (max-width: 900px) {
  .rs-main .vs-layout {
    grid-template-columns: 1fr;
  }
  .rs-main .vs-sidebar-card,
  .rs-main .vs-chat-card {
    min-height: auto;
  }
}

.rs-main .metric-card .metric-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
}

/* Target real chat layout classes used by Inteligência RS */
.rs-main .vs-layout {
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  align-items: stretch;
}

.rs-main .vs-sidebar-card,
.rs-main .vs-chat-card {
  min-height: calc(100vh - 18rem);
}

.rs-main .vs-chat-card {
  display: flex;
  flex-direction: column;
}

.rs-main .vs-chat-scroll {
  flex: 1;
  min-height: 24rem;
}

.rs-main .vs-composer {
  margin-top: auto;
}

/* Target dashboard icons precisely */
.rs-main .metric-card .metric-icon,
.rs-main .process-kpi-card .process-kpi-icon,
.rs-main .dashboard-stat-card .dashboard-stat-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.rs-main .filters-panel .form-actions,
.rs-main .filters-card .form-actions,
.rs-main .toolbar-actions.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: .65rem;
}

@media (max-width: 900px) {
  .rs-main .vs-layout {
    grid-template-columns: 1fr;
  }

  .rs-main .vs-sidebar-card,
  .rs-main .vs-chat-card {
    min-height: auto;
  }
}


/* Atendimento: bolhas sempre separadas por direção */
.rs-main [data-assisted-service] .chat-messages {
  align-items: stretch;
}

.rs-main [data-assisted-service] .chat-bubble.incoming {
  align-self: flex-start;
  margin-left: 0;
  margin-right: auto;
}

.rs-main [data-assisted-service] .chat-bubble.outgoing {
  align-self: flex-end;
  margin-left: auto;
  margin-right: 0;
  text-align: left;
}

html[data-theme='dark'] .rs-main [data-assisted-service] .chat-bubble.incoming {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .14);
}

html[data-theme='dark'] .rs-main [data-assisted-service] .chat-bubble.outgoing {
  background: rgba(84, 170, 127, .22);
  border-color: rgba(84, 170, 127, .34);
}

/* Inteligencia RS: aproveitamento horizontal e menu de conversa sem recorte */
.rs-main.rs-route-automations-responde > .page-header,
.rs-main.rs-route-automations-responde > .vs-layout {
  width: min(100%, calc(100vw - var(--sidebar-width, 0px) - 48px));
  max-width: none;
  margin-inline: auto;
}

.rs-main.rs-route-automations-responde > .vs-layout {
  grid-template-columns: clamp(300px, 22vw, 380px) minmax(720px, 1fr);
  min-height: calc(100dvh - 220px);
}

.rs-main.rs-route-automations-responde .vs-sidebar-card,
.rs-main.rs-route-automations-responde .vs-chat-card {
  min-height: calc(100dvh - 220px);
}

.rs-main.rs-route-automations-responde .vs-chat-scroll {
  min-height: 0;
  flex: 1;
}

.rs-main.rs-route-automations-responde .vs-conversation-list,
.rs-main.rs-route-automations-responde .vs-conversation-item {
  overflow: visible;
}

.rs-main.rs-route-automations-responde .vs-conversation-item {
  position: relative;
  padding-right: 2.75rem;
}

.rs-main.rs-route-automations-responde .vs-conversation-menu-shell {
  position: absolute;
  top: .65rem;
  right: .65rem;
  z-index: 20;
}

.rs-main.rs-route-automations-responde .vs-conversation-menu {
  top: calc(100% + .35rem);
  right: 0;
  z-index: 90;
}

/* Busca Global: resultado com a mesma fonte da interface */
.search-results-header h2,
.search-result-item strong,
.search-result-item span,
.search-result-item small {
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.search-results-header h2 {
  font-size: clamp(1.2rem, 1.7vw, 1.55rem);
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1.15;
}

.search-result-item strong {
  font-size: .98rem;
  font-weight: 800;
  letter-spacing: -.01em;
}


/* source: 04-pages/accesses.css */
/* ============================================================
   Access Vault - area sensivel para acessos recorrentes
   ============================================================ */
.access-hero h1 {
  max-width: 12ch;
}

.access-hero-actions {
  align-items: stretch;
}

.access-security-note {
  display: flex;
  gap: .85rem;
  align-items: flex-start;
  margin: 0 0 var(--space-5);
  padding: .95rem 1rem;
  border: 1px solid var(--color-warning-border);
  border-radius: var(--radius-md);
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
  box-shadow: var(--shadow-xs);
}

.access-security-note strong {
  flex: 0 0 auto;
  font-weight: 900;
}

.access-security-note span {
  line-height: 1.55;
}

.access-filter-panel {
  margin: var(--space-5) 0 var(--space-6);
  padding: var(--space-5);
}

.access-filter-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(5, minmax(150px, 1fr));
  gap: .9rem;
  align-items: end;
}

.access-filter-grid .field,
.access-entry-form .field {
  display: grid;
  gap: .45rem;
}

.access-filter-grid input,
.access-filter-grid select,
.access-entry-form input,
.access-entry-form select,
.access-entry-form textarea {
  width: 100%;
  min-height: 44px;
  padding: .72rem .82rem;
}

.access-search-field {
  grid-column: span 2;
}

.access-check-filter {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .72rem .82rem;
  border: 1px solid var(--color-border-medium);
  border-radius: var(--radius-sm);
  background: rgba(var(--color-bg-card-rgb), .72);
  color: var(--color-text-main);
  font-weight: 800;
}

.access-check-filter input,
.access-checkbox-field input {
  width: auto;
  min-height: auto;
  accent-color: var(--color-brand-primary);
}

.access-filter-actions {
  display: flex;
}

.access-filter-actions .primary-button {
  width: 100%;
}

.access-quick-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: var(--space-4);
}

.access-quick-filters .compact-chip.is-active,
.access-check-filter:has(input:checked) {
  border-color: rgba(199, 178, 114, .44);
  background: rgba(199, 178, 114, .16);
  color: var(--color-text-strong);
}

.access-category-board {
  display: grid;
  gap: var(--space-6);
}

.access-category-section {
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-xl);
  background: rgba(var(--color-bg-card-rgb), .72);
  box-shadow: var(--shadow-xs);
  overflow: clip;
}

.access-category-section::before {
  content: '';
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--access-accent, var(--color-brand-accent)), transparent);
}

.access-category-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-5);
  border-bottom: 1px solid var(--color-border-soft);
}

.access-category-title-wrap {
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  min-width: 0;
}

.access-category-title-wrap h2 {
  margin: 0 0 .28rem;
  color: var(--color-text-strong);
  letter-spacing: -.035em;
}

.access-category-title-wrap p {
  margin: 0;
  color: var(--color-text-muted);
  line-height: 1.5;
}

.access-category-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  border-radius: 16px;
  border: 1px solid color-mix(in srgb, var(--access-accent, var(--color-brand-accent)) 44%, transparent);
  background: color-mix(in srgb, var(--access-accent, var(--color-brand-accent)) 16%, transparent);
  color: var(--color-text-strong);
  font-size: 1.2rem;
}

.access-category-icon[data-icon='key']::before { content: '🔑'; }
.access-category-icon[data-icon='shield']::before { content: '🛡️'; }
.access-category-icon[data-icon='server']::before { content: '▦'; }
.access-category-icon[data-icon='database']::before { content: '◎'; }
.access-category-icon[data-icon='globe']::before { content: '🌐'; }
.access-category-icon[data-icon='wallet']::before { content: '◈'; }
.access-category-icon[data-icon='megaphone']::before { content: '◔'; }
.access-category-icon[data-icon='users']::before { content: '👥'; }
.access-category-icon[data-icon='code']::before { content: '</>'; font-size: .9rem; font-weight: 900; }
.access-category-icon[data-icon='lock']::before { content: '🔒'; }

.access-category-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .5rem;
}

.access-category-actions form {
  margin: 0;
}

.access-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: var(--space-4);
  padding: var(--space-5);
}

.access-card {
  position: relative;
  display: grid;
  gap: var(--space-4);
  padding: var(--space-4);
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(180deg, rgba(var(--color-bg-card-rgb), .96), rgba(var(--color-bg-card-rgb), .88)),
    var(--color-bg-card);
  box-shadow: var(--shadow-xs);
  transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.access-card:hover {
  transform: translateY(-2px);
  border-color: var(--color-border-medium);
  box-shadow: var(--shadow-sm);
}

.access-card.is-sensitive {
  border-color: var(--color-warning-border);
}

.access-card.is-sensitive::after {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: var(--radius-lg) 0 0 var(--radius-lg);
  background: linear-gradient(180deg, #f59e0b, #dc2626);
}

.access-card-header {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  align-items: flex-start;
}

.access-card-kicker,
.access-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .42rem;
}

.access-card h3 {
  margin: .55rem 0 .25rem;
  color: var(--color-text-strong);
  font-size: clamp(1.04rem, 1.2vw, 1.22rem);
  line-height: 1.18;
}

.access-card-header p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: .88rem;
}

.access-favorite {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--color-border-soft);
  border-radius: 999px;
  background: rgba(var(--color-bg-card-rgb), .72);
  color: var(--color-brand-accent);
  font-size: 1.1rem;
  cursor: pointer;
}

.access-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: .22rem .5rem;
  border: 1px solid var(--color-border-soft);
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .015em;
}

.access-badge.tone-success { background: var(--color-success-bg); color: var(--color-success-text); border-color: var(--color-success-border); }
.access-badge.tone-warning { background: var(--color-warning-bg); color: var(--color-warning-text); border-color: var(--color-warning-border); }
.access-badge.tone-danger,
.access-badge.tone-critical { background: var(--color-danger-bg); color: var(--color-danger-text); border-color: var(--color-danger-border); }
.access-badge.tone-info { background: var(--color-info-bg); color: var(--color-info-text); border-color: var(--color-info-border); }
.access-badge.tone-neutral { background: var(--color-bg-soft); color: var(--color-text-muted); border-color: var(--color-border-soft); }

.access-sensitive-alert {
  padding: .7rem .8rem;
  border: 1px solid var(--color-warning-border);
  border-radius: var(--radius-sm);
  background: var(--color-warning-bg);
  color: var(--color-warning-text);
  font-size: .84rem;
  font-weight: 800;
  line-height: 1.45;
}

.access-detail-list {
  display: grid;
  gap: .75rem;
  margin: 0;
}

.access-detail-list > div {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
}

.access-detail-list dt {
  color: var(--color-text-muted);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.access-detail-list dd {
  min-width: 0;
  margin: 0;
  color: var(--color-text-main);
  line-height: 1.45;
}

.access-url {
  display: inline-block;
  max-width: 100%;
  color: var(--color-brand-secondary);
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: 3px;
}

html[data-theme='dark'] .access-url {
  color: var(--color-brand-accent-soft);
}

.access-secret-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
}

.access-secret-row code {
  max-width: 100%;
  overflow-wrap: anywhere;
  padding: .32rem .5rem;
  border: 1px solid var(--color-border-soft);
  border-radius: 10px;
  background: var(--color-bg-muted);
  color: var(--color-text-strong);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .85rem;
}

.access-tags span {
  border-radius: 999px;
  background: var(--color-bg-soft);
  color: var(--color-text-muted);
  padding: .28rem .5rem;
  font-size: .76rem;
  font-weight: 800;
}

.access-notes {
  margin: 0;
  padding: .8rem;
  border-radius: var(--radius-sm);
  background: var(--color-bg-soft);
  color: var(--color-text-muted);
  line-height: 1.55;
  white-space: pre-wrap;
}

.access-card-footer {
  display: flex;
  justify-content: space-between;
  gap: .65rem;
  align-items: center;
  padding-top: .2rem;
}

.access-actions-menu {
  position: relative;
}

.access-actions-menu summary {
  list-style: none;
  cursor: pointer;
}

.access-actions-menu summary::-webkit-details-marker {
  display: none;
}

.access-actions-popover {
  position: absolute;
  right: 0;
  top: calc(100% + .5rem);
  z-index: 20;
  min-width: 230px;
  display: grid;
  gap: .45rem;
  padding: .65rem;
  border: 1px solid var(--color-border-medium);
  border-radius: var(--radius-md);
  background: var(--color-bg-card);
  box-shadow: var(--shadow-lg);
}

.access-actions-popover form {
  margin: 0;
}

.access-actions-popover button,
.access-actions-popover select {
  width: 100%;
  min-height: 38px;
}

.access-actions-popover button {
  border: 1px solid var(--color-border-soft);
  border-radius: 11px;
  background: var(--color-bg-soft);
  color: var(--color-text-main);
  cursor: pointer;
}

.access-actions-popover .danger-text {
  color: var(--color-danger-text);
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
}

.access-move-form {
  display: grid;
  gap: .45rem;
}

.access-category-empty {
  margin: var(--space-5);
  padding: var(--space-5);
  border: 1px dashed var(--color-border-medium);
  border-radius: var(--radius-lg);
  background: rgba(var(--color-bg-card-rgb), .46);
  color: var(--color-text-muted);
  text-align: center;
}

.access-category-empty strong,
.access-empty-state h2 {
  display: block;
  color: var(--color-text-strong);
}

.access-empty-state {
  margin: var(--space-6) 0;
}

.access-empty-icon {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  margin: 0 auto var(--space-3);
  border: 1px solid var(--color-border-soft);
  border-radius: 22px;
  background: var(--color-bg-soft);
  font-size: 1.7rem;
}

.access-form-surface .form-surface-panel {
  max-width: min(920px, 100vw - 2rem);
}

.access-form-surface.is-drawer .form-surface-panel {
  max-width: min(760px, 100vw);
}

.access-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.access-form-grid .span-2 {
  grid-column: 1 / -1;
}

.access-input-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .5rem;
  align-items: center;
}

.access-strength-meter {
  display: grid;
  gap: .35rem;
}

.access-strength-meter::before {
  content: '';
  grid-row: 1;
  display: block;
  width: 100%;
  height: 7px;
  border-radius: 999px;
  background: var(--color-bg-muted);
}

.access-strength-meter span {
  grid-row: 1;
  display: block;
  width: 0%;
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--color-danger-text), var(--color-warning-text), var(--color-success-text));
  transition: width var(--transition-base);
}

.access-strength-meter small,
.access-entry-form small {
  color: var(--color-text-muted);
}

.access-checkbox-field {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: var(--color-text-main);
  font-weight: 800;
}

.access-entry-form.was-validated :invalid {
  border-color: var(--color-danger-text);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-danger-text) 22%, transparent);
}

html[data-theme='dark'] .access-card,
html[data-theme='dark'] .access-category-section,
html[data-theme='dark'] .access-filter-panel {
  background: rgba(var(--color-bg-card-rgb), .82);
}

html[data-theme='dark'] .access-secret-row code,
html[data-theme='dark'] .access-notes,
html[data-theme='dark'] .access-tags span {
  background: rgba(255, 255, 255, .045);
}

html[data-theme='dark'] .access-actions-popover {
  background: var(--color-bg-elevated, var(--color-bg-card));
}

@media (max-width: 1320px) {
  .access-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .access-search-field {
    grid-column: 1 / -1;
  }
}

@media (max-width: 860px) {
  .access-category-header,
  .access-card-footer,
  .access-security-note {
    flex-direction: column;
    align-items: stretch;
  }
  .access-category-actions,
  .access-card-footer > * {
    width: 100%;
  }
  .access-category-actions > *,
  .access-card-footer > * > summary,
  .access-card-footer > button,
  .access-card-footer > form,
  .access-card-footer .secondary-button {
    width: 100%;
  }
  .access-filter-grid,
  .access-form-grid {
    grid-template-columns: 1fr;
  }
  .access-form-grid .span-2 {
    grid-column: auto;
  }
  .access-detail-list > div {
    grid-template-columns: 1fr;
    gap: .28rem;
  }
  .access-actions-popover {
    position: static;
    margin-top: .5rem;
    box-shadow: var(--shadow-xs);
  }
}

@media (max-width: 560px) {
  .access-filter-panel,
  .access-category-header,
  .access-card-grid {
    padding: var(--space-4);
  }
  .access-input-action {
    grid-template-columns: 1fr;
  }
  .access-secret-row .mini-button {
    flex: 1 1 100%;
  }
}

/* Simplificação operacional: sem aviso superior e sem filtro de ambiente. */
.access-filter-grid {
  grid-template-columns: minmax(260px, 1.45fr) repeat(4, minmax(150px, 1fr)) auto auto;
}

@media (max-width: 1280px) {
  .access-filter-grid {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }

  .access-search-field {
    grid-column: span 3;
  }
}

@media (max-width: 860px) {
  .access-filter-grid,
  .access-search-field {
    grid-template-columns: 1fr;
    grid-column: auto;
  }
}


/* source: 04-pages/preproduction-usability.css */
/* Pre-production scale refinements - 2026-05-01 */

/* Recent shortcuts: remove artificial 3-item limit and keep pills in a clean wrap. */
.rs-nav-recent-title::after { content: none; }
.rs-nav-recent-list { display: flex; flex-wrap: wrap; gap: 8px; }
.rs-nav-recent-list .rs-recent-link:nth-child(n+4) { display: inline-flex; }

/* Global title scale: all main page titles now follow the same visual rhythm. */
.rs-main :where(.page-header,.rs-page-hero,.crm-page-header,.labor-hero,.settings-page-header,.settings-ai-header,.reports-hero,.contracts-page-header) :where(h1) {
  font-family: var(--font-heading, inherit);
  font-size: clamp(2.55rem, 4vw, 4.5rem);
  line-height: .92;
  letter-spacing: -.06em;
}
.rs-main :where(.panel-header,.crm-section-heading,.labor-card-heading,.settings-page-header,.settings-ai-header) :where(h2,h3) {
  font-family: var(--font-heading, inherit);
  letter-spacing: -.035em;
}

/* Revisões internas: same premium structure as the other operational pages. */
.review-hero { max-width: 1360px; margin-inline: auto; }
.review-workspace-grid { max-width: 1360px; margin-inline: auto; align-items: start; grid-template-columns: minmax(0, 1.65fr) minmax(320px, .65fr); }
.review-editor-card,.review-history-card,.review-result-grid > .panel-card { border-radius: 24px; box-shadow: var(--rs-shadow-soft, 0 18px 48px rgba(12,31,24,.08)); }
.review-editor-card .textarea-tall { min-height: 360px; }
.review-history-card .list-stack { max-height: 420px; overflow: auto; padding-right: 4px; }
.review-result-grid { max-width: 1360px; margin-inline: auto; }

/* CRM board access polish. */
.crm-section-heading { position: relative; }
.crm-funnel-fixed-link {
  position: sticky;
  right: 20px;
  top: 96px;
  z-index: 3;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 16px;
  border-radius: 999px;
  background: var(--rs-green-950, #092d22);
  color: #fff;
  text-decoration: none;
  font-weight: 900;
  box-shadow: 0 16px 32px rgba(9,45,34,.22);
}
.crm-kanban-shell,.crm-kanban-board { background: #f6f8f6; }
.crm-kanban-column { background: #f9faf9; }
html[data-theme='dark'] .crm-kanban-shell,html[data-theme='dark'] .crm-kanban-board,html[data-theme='dark'] .crm-kanban-column { background: rgba(255,255,255,.045); }

/* Search fields across settings/records/CRM/global search. */
.search-command-card,.settings-search-card,.crm-filter-panel,.labor-filter-card { border-radius: 24px; }
.search-command-form { min-height: 72px; }
.search-command-form > span { width: 52px; height: 52px; border-radius: 18px; }
.search-command-form input { font-size: clamp(1rem, 1.2vw, 1.25rem); }
.search-empty-grid { grid-template-columns: repeat(4, minmax(220px, 1fr)); align-items: stretch; }
.search-empty-card { min-height: 150px; transition: transform .18s ease, box-shadow .18s ease; }
.search-empty-card:hover { transform: translateY(-2px); box-shadow: var(--rs-shadow-soft, 0 16px 38px rgba(12,31,24,.08)); }

/* Reports number typography standardized with the app numeric scale. */
.reports-hero ~ .metric-grid .metric-card strong,
.reports-page .metric-card strong,
.metric-card strong {
  font-family: var(--font-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  letter-spacing: -.025em;
}

/* Settings: Demandas, Fases, Etapas and separate fiscal workspace. */
.process-config-columns { display: grid; grid-template-columns: repeat(3, minmax(260px, 1fr)); gap: 16px; align-items: start; }
.process-config-columns .settings-premium-card { min-height: 100%; }
.settings-fiscal-grid { display: grid; grid-template-columns: repeat(3, minmax(280px, 1fr)); gap: 16px; align-items: start; }
.settings-fiscal-grid .settings-premium-card { min-height: 100%; }
.settings-quick-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.settings-quick-card { display: block; padding: 18px; border: 1px solid var(--rs-border, #dfe8e2); border-radius: 18px; text-decoration: none; color: inherit; background: #fff; }
.settings-quick-card strong { display: block; font-size: 1rem; }
.settings-quick-card span { color: var(--rs-muted); font-size: .9rem; }

/* Tribunals: replace the cramped right drawer with wide editable accordions. */
.tribunal-admin-shell { display: grid; gap: 18px; }
.tribunal-create-card,.tribunal-list-wide { width: 100%; }
.tribunal-accordion-list { display: grid; gap: 12px; max-height: none; overflow: visible; }
.tribunal-edit-item { border: 1px solid var(--rs-border, #dfe8e2); border-radius: 18px; background: #fff; padding: 0; overflow: hidden; }
.tribunal-edit-item > summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; list-style: none; }
.tribunal-edit-item > summary::-webkit-details-marker { display: none; }
.tribunal-inline-form { padding: 0 18px 18px; }
.tribunal-row-actions { align-items: center; }
.tribunal-mapping-delete { padding: 0 18px 18px; }

/* IA agents: card-based operational overview. */
.ai-agent-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; }
.ai-agent-card { border: 1px solid var(--rs-border, #dfe8e2); border-radius: 20px; padding: 18px; background: #fff; box-shadow: var(--rs-shadow-xs, 0 8px 20px rgba(12,31,24,.05)); display: grid; gap: 12px; }
.ai-agent-card-header { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.ai-agent-card h3 { margin: 0; }
.ai-agent-card p { color: var(--rs-muted); margin: 0; line-height: 1.45; }
.ai-agent-meta-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.ai-agent-meta-grid span { border-radius: 14px; background: #f6f8f6; padding: 10px; font-size: .85rem; }
.ai-agent-meta-grid strong { display: block; text-transform: uppercase; letter-spacing: .08em; font-size: .68rem; color: var(--rs-muted); }
.ai-agent-actions { display: flex; flex-wrap: wrap; gap: 8px; }

/* Users: bigger photos and operational dates. */
.user-row-card { gap: 16px; }
.user-card-avatar,.settings-user-avatar { width: 62px; height: 62px; font-size: 1.25rem; }
.user-date-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.user-date-grid span { display: grid; gap: 2px; border-radius: 14px; background: #f6f8f6; padding: 10px 12px; color: var(--rs-muted); font-size: .85rem; }
.user-date-grid strong { color: var(--rs-green-950); text-transform: uppercase; letter-spacing: .08em; font-size: .68rem; }
.preview-dates { margin-top: 14px; }

/* Labor calculations: stronger visual grouping and more breathable cards. */
.labor-status-overview { grid-template-columns: repeat(5, minmax(180px, 1fr)); gap: 16px; align-items: stretch; }
.labor-status-overview .metric-card { min-height: 150px; border-radius: 24px; display: grid; align-content: center; border: 1px solid var(--rs-border, #dfe8e2); box-shadow: var(--rs-shadow-xs, 0 10px 24px rgba(12,31,24,.05)); }
.labor-status-overview .metric-icon { width: 38px; height: 38px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(9,45,34,.08); }
.labor-status-overview .metric-card strong { font-size: clamp(2rem, 2.5vw, 3.1rem); }
.labor-board-grid { align-items: start; }

/* Contracts: avoid collapsed side panel / vertical text bug on wide screens. */
.contracts-page-grid { grid-template-columns: minmax(0, 1fr); }
.contracts-page-grid .contracts-list-card { position: static; max-height: none; }
.contracts-page-grid .contracts-builder-card { max-width: none; }

/* Expedientes actions: consistent button standard. */
.records-action-cell { min-width: 118px; }
.records-action-cell .table-actions, .records-action-cell .table-actions-inline { display: flex; flex-direction: column; align-items: stretch; gap: 6px; }
.compact-action { min-height: 30px; padding: 0 10px; border-radius: 10px; font-size: .82rem; justify-content: center; }
.danger-ghost { color: #8a1f1f; border-color: rgba(138,31,31,.25); background: rgba(138,31,31,.04); }
.danger-ghost:hover { background: rgba(138,31,31,.09); }

/* Dark mode for new surfaces. */
html[data-theme='dark'] .settings-quick-card,html[data-theme='dark'] .tribunal-edit-item,html[data-theme='dark'] .ai-agent-card { background: rgba(255,255,255,.055); border-color: rgba(255,255,255,.12); }
html[data-theme='dark'] .ai-agent-meta-grid span,html[data-theme='dark'] .user-date-grid span { background: rgba(255,255,255,.06); }

@media (max-width: 1180px) {
  .review-workspace-grid,.process-config-columns,.settings-fiscal-grid { grid-template-columns: 1fr; }
  .labor-status-overview { grid-template-columns: repeat(2, minmax(180px, 1fr)); }
  .search-empty-grid { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
}
@media (max-width: 720px) {
  .labor-status-overview,.search-empty-grid,.ai-agent-card-grid { grid-template-columns: 1fr; }
  .crm-funnel-fixed-link { position: static; margin-left: auto; }
}

/* Match refined settings markup introduced in this pass. */
.refined-process-grid { display: grid; grid-template-columns: repeat(3, minmax(260px, 1fr)); gap: 16px; align-items: start; }
.process-config-card { min-height: 100%; border-radius: 22px; }
.process-config-card > p { color: var(--rs-muted); margin-top: -4px; }
.fiscal-company-form { display: grid; gap: 18px; }
.fiscal-company-form .settings-form-section { border: 1px solid var(--rs-border, #dfe8e2); border-radius: 20px; padding: 18px; background: #fff; }
.fiscal-company-form .settings-form-section legend { padding: 0 8px; font-weight: 900; }
.ai-agent-card-top { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; align-items: start; }
.ai-agent-avatar { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 16px; background: rgba(9,45,34,.08); font-weight: 900; color: var(--rs-green-950); }
.ai-agent-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.ai-agent-meta span { border-radius: 14px; background: #f6f8f6; padding: 10px; font-size: .85rem; }
.ai-agent-meta strong { display: block; text-transform: uppercase; letter-spacing: .08em; font-size: .68rem; color: var(--rs-muted); }
html[data-theme='dark'] .fiscal-company-form .settings-form-section { background: rgba(255,255,255,.045); border-color: rgba(255,255,255,.12); }
html[data-theme='dark'] .ai-agent-meta span { background: rgba(255,255,255,.06); }
@media (max-width: 1180px) { .refined-process-grid { grid-template-columns: 1fr; } }

/* Tribunal filters: wide, readable controls instead of a narrow side drawer. */
.tribunal-list-header { align-items: flex-start; }
.tribunal-filter-toolbar { display: grid; grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(150px, 1fr)) auto; gap: 12px; align-items: end; margin: 0 0 16px; }
.tribunal-filter-toolbar .field { margin: 0; }
.tribunal-filter-toolbar input,.tribunal-filter-toolbar select { min-height: 42px; }
.tribunal-edit-item[hidden] { display: none; }

/* Contracts: prevent recent records from collapsing into vertical text. */
.contracts-page-grid { align-items: start; gap: 20px; }
.contracts-page-grid .contracts-list-card { min-width: min(100%, 320px); overflow: visible; }
.contracts-page-grid .contracts-list-card :where(h2,h3,strong,small,span,a,p,button) { writing-mode: horizontal-tb; text-orientation: mixed; overflow-wrap: anywhere; word-break: normal; }
.contracts-page-grid .contracts-list-card .list-stack,.contracts-page-grid .contracts-list-card .table-list { max-height: none; overflow: visible; }

@media (max-width: 1180px) {
  .tribunal-filter-toolbar { grid-template-columns: repeat(2, minmax(180px, 1fr)); }
}
@media (max-width: 720px) {
  .tribunal-filter-toolbar { grid-template-columns: 1fr; }
}

/* Higienizacao/Contratos: the wizard must be a single vertical page shell.
   The previous generic documents grid treated .contract-wizard as a two-column
   layout, which squeezed the stage content and turned labels into vertical text. */
.rs-main .contract-wizard,
.main-content:not(.auth-layout) .contract-wizard {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--page-section-gap, 24px);
  align-items: start;
  width: min(100%, var(--page-max, 1540px));
  max-width: 100%;
  min-width: 0;
  margin-inline: auto;
}

.rs-main .contract-wizard > :where(.wizard-progress-card, .wizard-stage, form),
.main-content:not(.auth-layout) .contract-wizard > :where(.wizard-progress-card, .wizard-stage, form) {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.rs-main .contract-wizard > .wizard-stage > .sanitize-page-grid,
.main-content:not(.auth-layout) .contract-wizard > .wizard-stage > .sanitize-page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 460px);
  gap: var(--page-section-gap, 24px);
  align-items: start;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.rs-main .contract-wizard .sanitize-page-grid > .panel-card,
.main-content:not(.auth-layout) .contract-wizard .sanitize-page-grid > .panel-card,
.rs-main .contract-wizard .contract-client-lookup,
.main-content:not(.auth-layout) .contract-wizard .contract-client-lookup,
.rs-main .contract-wizard .contract-search-inline,
.main-content:not(.auth-layout) .contract-wizard .contract-search-inline {
  min-width: 0;
}

.rs-main .contract-wizard .sanitize-record-item :where(strong, span, small, p, a, label, button),
.main-content:not(.auth-layout) .contract-wizard .sanitize-record-item :where(strong, span, small, p, a, label, button),
.rs-main .contract-wizard .contract-client-lookup :where(label, small, span, p, button),
.main-content:not(.auth-layout) .contract-wizard .contract-client-lookup :where(label, small, span, p, button) {
  writing-mode: horizontal-tb;
  text-orientation: mixed;
  word-break: normal;
  overflow-wrap: anywhere;
}

.rs-main .contract-wizard .sanitize-record-list,
.main-content:not(.auth-layout) .contract-wizard .sanitize-record-list {
  max-height: min(68vh, 760px);
  overflow: auto;
}

@media (max-width: 1100px) {
  .rs-main .contract-wizard > .wizard-stage > .sanitize-page-grid,
  .main-content:not(.auth-layout) .contract-wizard > .wizard-stage > .sanitize-page-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* Users and permissions: production hardening for narrow nested panels. */
.settings-workspace-users .settings-users-grid-refined {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  align-items: start;
}

.settings-workspace-users .settings-users-list-card,
.settings-workspace-users .settings-users-card-list,
.users-list-card .users-card-list {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.settings-workspace-users .settings-users-list-card {
  container-type: inline-size;
}

.settings-user-list-tools {
  margin: 0 0 12px;
}

.compact-search-field {
  margin: 0;
  display: grid;
  gap: 6px;
}

.compact-search-field span {
  color: var(--color-text-muted, #52645d);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.settings-workspace-users .settings-user-row-card,
.settings-user-row-card,
.user-row-card.settings-user-row-card {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "profile"
    "badges"
    "actions";
}

.settings-user-profile,
.settings-user-row-card .profile-row {
  grid-area: profile;
  min-width: 0;
}

.settings-user-identity,
.settings-user-row-card .profile-row > div {
  min-width: 0;
  max-width: 100%;
}

.settings-user-identity strong,
.settings-user-identity p,
.settings-user-row-card .profile-row strong,
.settings-user-row-card .profile-row p {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-user-badges,
.settings-user-row-card .user-row-meta {
  grid-area: badges;
  justify-content: flex-start;
  min-width: 0;
  max-width: 100%;
}

.settings-user-actions,
.user-row-actions.settings-user-actions {
  grid-area: actions;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.settings-user-actions > *,
.settings-user-actions form,
.settings-user-actions .compact-action,
.user-row-actions.settings-user-actions > *,
.user-row-actions.settings-user-actions form,
.user-row-actions.settings-user-actions .compact-action {
  min-width: 0;
  width: 100%;
}

.user-row-card[hidden] {
  display: none;
}

button[disabled],
input[type="submit"][disabled] {
  cursor: progress;
  opacity: .68;
}

.form-grid[aria-busy="true"] {
  pointer-events: none;
}

.form-grid[aria-busy="true"] button,
.form-grid[aria-busy="true"] input,
.form-grid[aria-busy="true"] select,
.form-grid[aria-busy="true"] textarea {
  pointer-events: auto;
}

.form-hint,
.helper-text,
.meta-text,
.card-caption,
.settings-workspace small,
.settings-user-identity p,
.user-row-card p {
  color: var(--color-text-muted, #52645d);
}

.rs-main .page-header.rs-page-hero.users-hero h1,
.settings-page-intro h1 {
  font-size: clamp(2rem, 2.6vw, 3rem);
}

@container (max-width: 340px) {
  .settings-user-actions,
  .user-row-actions.settings-user-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 1480px) {
  .settings-workspace-users .settings-users-grid-refined {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 720px) {
  .settings-user-actions,
  .user-row-actions.settings-user-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Operational storage refactor: production UX polish */
.rs-topbar { gap: 1rem; }
.rs-topbar-user-tools { margin-left: auto; display: flex; align-items: center; gap: .65rem; min-width: 0; }
.rs-topbar-user-tools .theme-toggle-button.compact.icon-only { width: 36px; height: 36px; min-height: 36px; padding: 0; border-radius: 999px; display: inline-grid; place-items: center; font-size: 1rem; line-height: 1; }
.rs-topbar-user-tools .rs-user-card.compact { padding: .3rem .55rem; border-radius: 999px; background: rgba(255,255,255,.82); border: 1px solid rgba(17,31,25,.08); box-shadow: none; }
.rs-topbar-user-tools .rs-user-card.compact .avatar { width: 32px; height: 32px; }
.rs-topbar-user-tools .rs-user-card.compact p { margin: 0; font-size: .68rem; }
.rs-topbar-user-tools .rs-logout.compact { min-height: 38px; padding: .45rem .85rem; border-radius: 999px; }
.rs-sidebar .rs-sidebar-footer { display: none; }

#crm-lead-drawer .crm-drawer-panel { width: min(720px, calc(100vw - 2rem)); max-height: calc(100dvh - 3rem); overflow: auto; }
#crm-lead-drawer .crm-form-grid { gap: .85rem; }
.lead-drawer-actions { justify-content: flex-end; align-items: center; gap: .65rem; }
.crm-duplicate-list { display: grid; gap: .65rem; margin-bottom: .9rem; }
.crm-warning-text { color: #8a5b00; font-size: .84rem; margin: 0; }
.crm-duplicate-card { display: grid; gap: .25rem; padding: .75rem; border: 1px solid rgba(17,31,25,.1); border-radius: 16px; background: #fff; }
.crm-duplicate-card .tiny, .table-actions .tiny { min-height: 30px; padding: .25rem .55rem; font-size: .76rem; }
.crm-muted { color: #607066; font-size: .9rem; }

.process-diary-form { display: grid; gap: .85rem; }
.process-diary-card { border: 1px solid rgba(17,31,25,.08); border-radius: 18px; padding: .9rem; background: rgba(255,255,255,.76); }
.process-diary-card .process-section-title { margin-bottom: .75rem; }
.process-log-item-readable { display: grid; gap: .3rem; }
.process-log-item-readable small { color: #5d6b63; }
.process-stats-grid .metric-card, .process-dashboard-grid .metric-card { align-items: center; min-height: 112px; }

.labor-filter-form .actions-inline, .labor-filters .actions-inline { align-items: center; gap: .5rem; }
.labor-filter-form .primary-button, .labor-filter-form .ghost-button, .labor-filters .primary-button, .labor-filters .ghost-button { min-height: 40px; }

.nfse-production-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .85rem; }
.nfse-status-card { padding: .9rem; min-height: 112px; }
.nfse-status-card span { font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.nfse-status-card strong { font-size: clamp(1.15rem, 1.6vw, 1.65rem); line-height: 1.12; }
.nfse-status-card small { font-size: .72rem; }
.nfse-table th, .nfse-table td { vertical-align: middle; }

.table-actions, .records-actions, .cirs-actions { display: flex; align-items: center; justify-content: flex-end; gap: .4rem; }
.table-actions .danger-button, .table-actions .ghost-button { min-height: 32px; padding: .3rem .65rem; }

.settings-identity-card .settings-branding-grid-simplified { align-items: stretch; gap: 1rem; }
.settings-brand-form-simplified { display: grid; gap: 1rem; }
.settings-identity-actions { justify-content: flex-end; gap: .75rem; margin-top: .25rem; }
.settings-brand-preview-simple { display: grid; align-content: start; gap: .8rem; }
.settings-users-grid-refined { grid-template-columns: minmax(360px, .9fr) minmax(520px, 1.4fr); gap: 1rem; }
.settings-user-row-card { min-height: 112px; }

.legal-hidden-compatible { display: none; }
[data-phase="2"] textarea#authorRawData, [data-phase="2"] textarea#opponentRawData { min-height: 170px; }

.contact-type-toggle, .contact-segmented, .person-type-toggle { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; }
.contact-type-toggle button, .contact-segmented button, .person-type-toggle button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; text-align: center; }

@media (max-width: 900px) {
  .rs-topbar-user-tools { gap: .35rem; }
  .rs-topbar-user-tools .rs-user-card.compact div { display: none; }
  .rs-topbar-user-tools .theme-toggle-button.compact strong { display: none; }
  .settings-users-grid-refined { grid-template-columns: 1fr; }
  #crm-lead-drawer .crm-drawer-panel { width: calc(100vw - 1rem); }
}

/* Hotfix: iguala a antiga aba Pipeline/Funil ao Kanban da Esteira Comercial do CRM. */
body .crm-full-board-shell,
body .crm-full-board-shell.panel-card,
body .crm-full-board {
  background: #f6f8f6;
}

body .crm-full-board-shell {
  border-color: rgba(17, 31, 25, .12);
}

body .crm-full-board {
  padding: 0;
}

body .crm-full-column {
  background: #f9faf9;
  border-color: rgba(17, 31, 25, .14);
}

body .crm-full-column-head {
  background: #f9faf9;
  border-bottom-color: rgba(17, 31, 25, .10);
}

body .crm-full-column-drop {
  background: #f9faf9;
}

body .crm-full-board-shell .crm-empty-column,
body .crm-full-column-drop .crm-empty-column {
  background: rgba(17, 31, 25, .045);
}

html[data-theme='dark'] body .crm-full-board-shell,
html[data-theme='dark'] body .crm-full-board-shell.panel-card,
html[data-theme='dark'] body .crm-full-board,
html[data-theme='dark'] body .crm-full-column,
html[data-theme='dark'] body .crm-full-column-head,
html[data-theme='dark'] body .crm-full-column-drop {
  background: rgba(255,255,255,.045);
  border-color: var(--cirs-dark-border);
}


/* Rodada 3 - escala visual operacional e superfície modal/drawer */
:root {
  --rs-title-xl: clamp(1.55rem, 1.8vw, 2.15rem);
  --rs-title-lg: clamp(1.25rem, 1.35vw, 1.65rem);
  --rs-title-md: 1.05rem;
  --rs-text-sm: .86rem;
  --rs-surface-radius: 22px;
  --rs-soft-border: 1px solid rgba(17, 31, 25, .10);
}
.rs-page-hero h1,
.page-header h1,
.crm-page-header h1,
.labor-hero h1,
.nfse-hero h1 { font-size: var(--rs-title-xl); line-height: 1.08; letter-spacing: -.035em; }
.panel-header h2,
.crm-section-heading h2,
.labor-card-heading h2 { font-size: var(--rs-title-md); line-height: 1.2; }
.stat-card, .metric-card, .crm-metric-card, .nfse-status-card, .process-kpi-card { border-radius: 18px; min-width: 0; }
.stat-card strong, .metric-card strong, .crm-metric-card strong, .nfse-status-card strong, .process-kpi-card strong { font-size: clamp(1.35rem, 1.6vw, 1.85rem); }
.ghost-button, .primary-button, .secondary-button, .danger-button { white-space: nowrap; }
.rs-sidebar .nav-links a { min-height: 38px; padding-top: 8px; padding-bottom: 8px; }
.rs-sidebar .nav-section-label { margin-top: 14px; }
.form-surface-backdrop,
.crm-drawer-backdrop.contact-quick-backdrop,
.crm-drawer-backdrop { position: fixed; inset: 0; z-index: 70; background: rgba(8, 20, 15, .42); backdrop-filter: blur(3px); }
.form-surface,
.crm-drawer.contact-quick-drawer,
.crm-drawer#crm-lead-drawer { position: fixed; z-index: 80; inset: 0 0 0 auto; display: none; pointer-events: none; }
.form-surface.is-open,
.crm-drawer.contact-quick-drawer.is-open,
.crm-drawer#crm-lead-drawer.is-open { display: block; pointer-events: auto; }
.form-surface-panel,
.crm-drawer.contact-quick-drawer .crm-drawer-panel,
.crm-drawer#crm-lead-drawer .crm-drawer-panel { width: min(560px, calc(100vw - 24px)); max-height: calc(100vh - 24px); overflow: auto; margin: 12px 12px 12px auto; border-radius: var(--rs-surface-radius); box-shadow: 0 26px 70px rgba(17, 31, 25, .28); }
.form-surface.is-modal,
.crm-drawer.contact-quick-drawer.is-modal,
.crm-drawer#crm-lead-drawer.is-modal { inset: 0; display: none; place-items: center; }
.form-surface.is-modal.is-open,
.crm-drawer.contact-quick-drawer.is-modal.is-open,
.crm-drawer#crm-lead-drawer.is-modal.is-open { display: grid; }
.form-surface.is-modal .form-surface-panel,
.crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
.crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel { margin: 16px; width: min(720px, calc(100vw - 32px)); }
.form-surface-toolbar,
.crm-drawer-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; position: sticky; top: 0; z-index: 2; background: inherit; padding-bottom: 10px; border-bottom: var(--rs-soft-border); margin-bottom: 14px; }
.form-surface-controls { display: flex; align-items: center; gap: 6px; }
.form-surface-icon-btn,
.form-surface-close { width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 999px; border: var(--rs-soft-border); background: rgba(255,255,255,.72); color: inherit; cursor: pointer; font-weight: 800; }
.form-surface-icon-btn.is-active { background: #112019; color: #f8f4e8; }
.form-surface-close { font-size: 1.2rem; line-height: 1; }
.crm-drawer-head > button[data-crm-drawer-close],
[data-contact-drawer-close] { width: 34px; height: 34px; border-radius: 999px; padding: 0; font-size: 0; position: relative; }
.crm-drawer-head > button[data-crm-drawer-close]::before,
[data-contact-drawer-close]::before { content: '×'; font-size: 1.35rem; line-height: 1; }
.crm-form-grid select[multiple] { min-height: 112px; }
.crm-hero-chips span { font-size: .86rem; }
.crm-pipeline-tile span.crm-pipeline-open-action { color: inherit; font-weight: 700; font-size: .8rem; }
.crm-pipeline-overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin-bottom: 18px; }
.crm-commercial-report-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 420px); gap: 18px; align-items: start; }
.commercial-report-list { display: grid; gap: 10px; }
.commercial-report-card { padding: 14px; border: var(--rs-soft-border); border-radius: 16px; background: rgba(255,255,255,.72); }
.commercial-report-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.commercial-report-metrics span { padding: 8px; border-radius: 12px; background: rgba(17,31,25,.05); font-size: .82rem; }
.documents-page-grid.contracts-page-grid { grid-template-columns: minmax(0, 1fr) minmax(360px, 430px); }
.contracts-recent-panel, .contracts-page-grid .contracts-recent-card, .contracts-page-grid aside.panel-card { min-width: 340px; }
.process-kpi-card { display: grid; grid-template-columns: 42px 1fr; gap: 12px; align-items: center; padding: 16px; }
.process-kpi-card .process-kpi-icon, .metric-card .metric-icon { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: rgba(17,31,25,.08); font-size: 1rem; font-weight: 800; }
.process-kpi-card em { grid-column: 1 / -1; font-style: normal; color: var(--muted, #647067); font-size: .82rem; }
.labor-status-overview .metric-card { align-items: flex-start; }
.labor-status-overview .metric-icon { min-width: 42px; font-size: 1.05rem; }
.nfse-status-grid.nfse-production-grid { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.nfse-status-card { padding: 16px; }
.nfse-status-card span { font-size: .82rem; }
.nfse-status-card small { font-size: .78rem; }
@media (max-width: 760px) {
  .form-surface-panel,
  .crm-drawer.contact-quick-drawer .crm-drawer-panel,
  .crm-drawer#crm-lead-drawer .crm-drawer-panel { width: calc(100vw - 12px); max-height: calc(100vh - 12px); margin: 6px; }
  .crm-commercial-report-grid { grid-template-columns: 1fr; }
  .documents-page-grid.contracts-page-grid { grid-template-columns: 1fr; }
}


/* Rodada 3.1 - superfícies, cards e estados operacionais */
.form-surface-backdrop,
.crm-drawer-backdrop.contact-quick-backdrop,
.crm-drawer-backdrop { position: fixed; inset: 0; z-index: 70; background: rgba(8, 20, 15, .42); backdrop-filter: blur(3px); }

.form-surface,
.crm-drawer.contact-quick-drawer,
.crm-drawer#crm-lead-drawer { position: fixed; z-index: 80; inset: 0 0 0 auto; display: none; pointer-events: none; }

.form-surface.is-open,
.crm-drawer.contact-quick-drawer.is-open,
.crm-drawer#crm-lead-drawer.is-open { display: block; pointer-events: auto; }

.form-surface-panel,
.crm-drawer.contact-quick-drawer .crm-drawer-panel,
.crm-drawer#crm-lead-drawer .crm-drawer-panel {
  width: clamp(420px, 38vw, 560px);
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  overflow: auto;
  margin: 12px 12px 12px auto;
  border-radius: 22px;
  box-shadow: 0 26px 70px rgba(17, 31, 25, .28);
  background: var(--color-bg-card, #fff);
}

.form-surface.is-modal,
.crm-drawer.contact-quick-drawer.is-modal,
.crm-drawer#crm-lead-drawer.is-modal { inset: 0; display: none; place-items: center; }

.form-surface.is-modal.is-open,
.crm-drawer.contact-quick-drawer.is-modal.is-open,
.crm-drawer#crm-lead-drawer.is-modal.is-open { display: grid; }

.form-surface.is-modal .form-surface-panel,
.crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
.crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel {
  margin: 16px;
  width: clamp(420px, 44vw, 560px);
  max-width: calc(100vw - 32px);
}

.form-surface-toolbar,
.crm-drawer-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  position: sticky;
  top: 0;
  z-index: 2;
  background: inherit;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(17, 31, 25, .1);
  margin-bottom: 14px;
}

.form-surface-controls { display: flex; align-items: center; gap: 6px; }
.form-surface-icon-btn,
.form-surface-close {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .1);
  background: rgba(255, 255, 255, .72);
  color: inherit;
  cursor: pointer;
  font-weight: 800;
}
.form-surface-icon-btn.is-active { background: #112019; color: #f8f4e8; }

.crm-form-grid select[multiple] { min-height: 112px; }
.crm-lead-tags-disclosure,
.contact-advanced-field {
  grid-column: 1 / -1;
  border: 1px solid rgba(17, 31, 25, .1);
  border-radius: 16px;
  padding: 10px 12px;
  background: rgba(17, 31, 25, .035);
}
.crm-lead-tags-disclosure summary,
.contact-advanced-field summary { cursor: pointer; font-weight: 800; }

.crm-pipeline-overview-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.crm-pipeline-overview-card { align-items: flex-start; padding: 16px; min-height: 190px; }

.contact-quick-mode,
.contact-person-switch { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.contact-quick-mode label,
.contact-person-switch .contact-radio {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .1);
  background: rgba(17, 31, 25, .035);
  text-align: center;
  font-weight: 800;
  line-height: 1.2;
}
.contact-quick-mode input,
.contact-person-switch .contact-radio input { margin: 0; }

.contact-linked-processes {
  border: 1px solid rgba(17, 31, 25, .1);
  border-radius: 16px;
  padding: 12px;
  background: rgba(17, 31, 25, .035);
}
.contact-linked-processes h3 { margin: 0 0 6px; font-size: .95rem; }
.contact-linked-processes p { margin: 0 0 10px; color: var(--muted, #647067); font-size: .84rem; line-height: 1.35; }

.asaas-client-select-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; }
.process-kpi-card { display: grid; grid-template-columns: 46px 1fr; gap: 12px; align-items: center; padding: 16px; }
.process-kpi-card .process-kpi-icon,
.metric-card .metric-icon {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(17, 31, 25, .08);
  color: #112019;
  overflow: hidden;
}
.process-kpi-card .process-kpi-icon svg,
.metric-card .metric-icon svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.process-kpi-card em {
  grid-column: 2;
  font-style: normal;
  color: var(--muted, #647067);
  font-size: .82rem;
  line-height: 1.35;
}
.process-kpi-card small,
.labor-status-overview .metric-card small { display: block; font-weight: 800; line-height: 1.25; }
.labor-status-overview .metric-card { display: grid; grid-template-columns: 46px 1fr; gap: 12px; align-items: center; }

@media (max-width: 760px) {
  .form-surface-panel,
  .crm-drawer.contact-quick-drawer .crm-drawer-panel,
  .crm-drawer#crm-lead-drawer .crm-drawer-panel {
    width: calc(100vw - 12px);
    max-width: calc(100vw - 12px);
    max-height: calc(100vh - 12px);
    margin: 6px;
  }
  .asaas-client-select-row { grid-template-columns: 1fr; }
}

/* Round 3.2: topbar and dark-mode palette polish */
.rs-user-menu{position:relative;min-width:0}.rs-user-menu summary{list-style:none;cursor:pointer}.rs-user-menu summary::-webkit-details-marker{display:none}.rs-user-dropdown{position:absolute;top:calc(100% + .55rem);right:0;min-width:180px;padding:.45rem;border-radius:16px;border:1px solid rgba(17,31,25,.10);background:rgba(255,255,255,.98);box-shadow:0 24px 60px rgba(17,31,25,.18);z-index:80;display:grid;gap:.25rem}.rs-user-dropdown a,.rs-user-dropdown button{width:100%;display:flex;align-items:center;min-height:38px;padding:.55rem .7rem;border:0;border-radius:12px;background:transparent;color:#111f19;font:inherit;font-weight:800;text-align:left;cursor:pointer}.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary{padding:.28rem .5rem .28rem .35rem}.rs-topbar-user-tools .rs-user-card.compact .avatar{width:36px;height:36px;min-width:36px;overflow:hidden}.rs-topbar-user-tools .rs-user-card.compact .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:inherit}.contact-linked-processes{display:grid;gap:.6rem}.contact-linked-process-list{display:flex;flex-wrap:wrap;gap:.35rem}.contact-linked-process-chip{display:inline-flex;align-items:center;padding:.35rem .55rem;border-radius:999px;background:rgba(17,31,25,.06);color:#173d30;font-size:.75rem;font-weight:800}.contact-linked-processes select[multiple]{min-height:9.5rem}.top-gap-small{margin-top:.35rem}.crm-status-badge.info{background:rgba(33,102,74,.12);color:#0f3f2d;border-color:rgba(33,102,74,.22)}html[data-theme='dark'] .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary,html[data-theme='dark'] .rs-user-dropdown{background:rgba(10,30,23,.96);border-color:rgba(214,215,189,.16);color:#f5f1df}html[data-theme='dark'] .rs-user-dropdown a,html[data-theme='dark'] .rs-user-dropdown button{color:#f5f1df}html[data-theme='dark'] .theme-toggle-button.icon-only,html[data-theme='dark'] .crm-status-badge.info,html[data-theme='dark'] .contact-linked-process-chip{background:rgba(214,215,189,.12);color:#f5f1df;border-color:rgba(214,215,189,.18)}html[data-theme='dark'] .process-monitoring-card,html[data-theme='dark'] .process-check-card,html[data-theme='dark'] .process-diary-card,html[data-theme='dark'] .contact-linked-processes,html[data-theme='dark'] .contact-process-card,html[data-theme='dark'] .crm-board-access-card{background:rgba(9,29,22,.86);border-color:rgba(214,215,189,.14)}

/* Atendimento Assistido */
.assisted-page { display: flex; flex-direction: column; gap: 18px; max-width: 1680px; margin: 0 auto; padding: 20px; }
.assisted-hero { display: flex; justify-content: space-between; gap: 16px; align-items: flex-end; padding: 18px; border: 1px solid rgba(17,31,25,.12); border-radius: 22px; background: linear-gradient(135deg, #fcfcf8, #edf3ef); box-shadow: 0 18px 50px rgba(17,31,25,.08); }
.assisted-hero h1 { margin: 4px 0; font-size: clamp(1.8rem, 3vw, 2.7rem); letter-spacing: -.04em; }
.assisted-hero p { max-width: 760px; margin: 0; color: #526057; }
.assisted-hero-actions, .button-row, .chat-header-actions, .filter-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.assisted-tabs { display: flex; gap: 8px; overflow-x: auto; padding: 8px; border: 1px solid rgba(17,31,25,.1); border-radius: 18px; background: rgba(255,255,255,.7); }
.assisted-tabs a { white-space: nowrap; padding: 10px 12px; border-radius: 12px; color: #4b5a51; font-weight: 700; font-size: .86rem; }
.assisted-tabs a.active { background: #0f2f24; color: #fff; box-shadow: 0 12px 24px rgba(17,31,25,.16); }
.assisted-metrics-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.assisted-metric, .assisted-card, .assisted-list-panel, .assisted-chat-panel, .assisted-context-panel { border: 1px solid rgba(17,31,25,.1); border-radius: 20px; background: rgba(255,255,255,.88); box-shadow: 0 14px 34px rgba(17,31,25,.07); }
.assisted-metric { padding: 16px; }
.assisted-metric span { display: block; color: #66736a; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.assisted-metric strong { display: block; margin-top: 8px; font-size: 1.8rem; letter-spacing: -.04em; }
.assisted-dashboard-grid, .assisted-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.assisted-card { padding: 16px; }
.assisted-card.wide { grid-column: 1 / -1; }
.assisted-card-header { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 12px; }
.assisted-card h2, .context-card h3, .chat-header h2 { margin: 0; letter-spacing: -.03em; }
.assisted-row, .assisted-bar-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0; border-top: 1px solid rgba(17,31,25,.08); }
.assisted-row:first-child, .assisted-bar-row:first-child { border-top: 0; }
.assisted-row small, .assisted-row span, .muted, .empty { color: #6b776f; }
.assisted-bar-row i { display: inline-block; width: 10px; height: 10px; border-radius: 999px; margin-right: 8px; }
.badge { display: inline-flex; align-items: center; justify-content: center; gap: 4px; border: 1px solid rgba(17,31,25,.12); border-radius: 999px; padding: 4px 8px; font-size: .72rem; font-weight: 800; background: #f4f4ef; color: #26362e; }
.badge.success { background: #e8f7ed; color: #166534; border-color: #b6e4c1; }
.badge.danger { background: #fff1f2; color: #be123c; border-color: #fecdd3; }
.badge.neutral { background: #f8fafc; color: #475569; }
.tag-cloud { display: flex; flex-wrap: wrap; gap: 7px; }
.assisted-workspace { display: grid; grid-template-columns: minmax(290px, 360px) minmax(430px, 1fr) minmax(280px, 360px); gap: 14px; min-height: 72vh; }
.assisted-list-panel, .assisted-chat-panel, .assisted-context-panel { min-height: 0; overflow: hidden; }
.assisted-filter-form { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-bottom: 1px solid rgba(17,31,25,.08); }
.assisted-filter-form input, .assisted-filter-form select, .settings-form input, .settings-form select, .settings-form textarea, .chat-composer textarea, .context-card select, .context-card textarea { width: 100%; box-sizing: border-box; border: 1px solid rgba(17,31,25,.13); border-radius: 12px; padding: 10px 11px; background: #fff; font: inherit; }
.conversation-list { display: flex; flex-direction: column; overflow: auto; max-height: 66vh; }
.conversation-item { display: grid; grid-template-columns: 42px 1fr auto; gap: 10px; padding: 12px; border-bottom: 1px solid rgba(17,31,25,.08); }
.conversation-item.active { background: #eef6f1; }
.avatar { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #0f2f24; color: #fff; font-weight: 800; }
.conversation-main { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.conversation-main small, .conversation-main em, .conversation-meta small { color: #647067; font-style: normal; font-size: .76rem; }
.conversation-main strong, .conversation-main em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversation-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; min-width: 90px; }
.conversation-meta i { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: #0f766e; color: #fff; font-style: normal; font-size: .72rem; }
.chat-header { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 14px; border-bottom: 1px solid rgba(17,31,25,.08); }
.chat-header p { margin: 4px 0 0; color: #647067; }
.chat-alert { margin: 12px; border-radius: 14px; padding: 10px 12px; font-weight: 700; font-size: .84rem; }
.chat-alert.success { background: #e8f7ed; color: #166534; }
.chat-alert.warning { background: #fff7ed; color: #9a3412; }
.chat-messages { display: flex; flex-direction: column; gap: 10px; padding: 14px; overflow: auto; max-height: 48vh; background: linear-gradient(180deg, #f8faf8, #f3f1ea); }
.message-bubble { max-width: 76%; border-radius: 18px; padding: 10px 12px; box-shadow: 0 8px 18px rgba(17,31,25,.06); }
.message-bubble p { margin: 5px 0; white-space: pre-wrap; }
.message-bubble small, .message-bubble em { display: block; font-size: .7rem; color: #66736a; font-style: normal; }
.message-bubble.contact { align-self: flex-start; background: #fff; border: 1px solid rgba(17,31,25,.08); }
.message-bubble.human, .message-bubble.ai { align-self: flex-end; background: #123c2d; color: #fff; }
.message-bubble.ai { background: #1f5f46; }
.message-bubble.human small, .message-bubble.human em, .message-bubble.ai small, .message-bubble.ai em { color: rgba(255,255,255,.75); }
.message-bubble.system, .message-bubble.internal_note { align-self: center; max-width: 90%; background: #fff7ed; border: 1px dashed #f59e0b; color: #7c2d12; }
.chat-composer { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: end; padding: 12px; border-top: 1px solid rgba(17,31,25,.08); }
.assisted-context-panel { padding: 12px; overflow: auto; }
.context-card { padding: 12px; border: 1px solid rgba(17,31,25,.08); border-radius: 16px; margin-bottom: 12px; background: #fff; }
.context-card dl { display: grid; grid-template-columns: 88px 1fr; gap: 6px 10px; margin: 10px 0; font-size: .86rem; }
.context-card dt { color: #6b776f; }
.context-card dd { margin: 0; font-weight: 700; }
.timeline p { border-left: 3px solid #c5d0c8; padding-left: 9px; }
.timeline small, .timeline span { display: block; color: #6b776f; font-size: .76rem; }
.button { border: 0; border-radius: 12px; padding: 10px 13px; font-weight: 800; cursor: pointer; text-align: center; }
.button.primary { background: #0f2f24; color: #fff; }
.button.secondary { background: #edf2ee; color: #193127; border: 1px solid rgba(17,31,25,.12); }
.button.danger { background: #be123c; color: #fff; }
.button.compact { padding: 8px 10px; font-size: .78rem; }
.button.full { width: 100%; margin-top: 8px; }
.settings-form { display: flex; flex-direction: column; gap: 10px; }
.form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.check-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; font-size: .84rem; }
.zapi-card dl { display: grid; grid-template-columns: 140px 1fr; gap: 6px 10px; }
.zapi-card dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.qr-box { display: grid; place-items: center; min-height: 220px; border: 1px dashed rgba(17,31,25,.18); border-radius: 18px; background: #f8fafc; margin: 12px 0; padding: 12px; }
.qr-box img { width: min(260px, 100%); border-radius: 12px; }
.success-text { color: #166534; font-weight: 800; }
.quick-reply-dialog { border: 0; border-radius: 22px; width: min(680px, 92vw); padding: 18px; box-shadow: 0 30px 100px rgba(0,0,0,.32); }
.dialog-close { float: right; border: 0; border-radius: 50%; width: 32px; height: 32px; background: #edf2ee; font-size: 1.2rem; }
.quick-reply-option { display: flex; flex-direction: column; gap: 4px; width: 100%; text-align: left; margin: 8px 0; padding: 10px; border: 1px solid rgba(17,31,25,.08); border-radius: 14px; background: #fff; }
.quick-reply-option span { color: #647067; }
.assisted-empty-state { display: grid; place-items: center; min-height: 45vh; text-align: center; padding: 24px; color: #5c695f; }
.assisted-settings-grid code { display: block; margin: 8px 0; padding: 10px; border-radius: 10px; background: #0f172a; color: #dbeafe; }
@media (max-width: 1180px) { .assisted-workspace { grid-template-columns: 320px 1fr; } .assisted-context-panel { grid-column: 1 / -1; } .form-grid, .check-grid, .assisted-metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .assisted-page { padding: 12px; } .assisted-hero, .chat-header { align-items: flex-start; flex-direction: column; } .assisted-workspace, .assisted-dashboard-grid, .assisted-settings-grid, .assisted-metrics-grid, .form-grid, .check-grid { grid-template-columns: 1fr; } .chat-composer { grid-template-columns: 1fr; } .message-bubble { max-width: 94%; } }
/* Regressao visual Fase 1: CRM, Atendimento, NFS-e e cadastros */
.rs-brand-card .rs-brand-title,
.rs-brand-card .rs-brand-subtitle { line-height: 1.15; }

.contact-form-page {
  display: grid;
  gap: 18px;
  width: min(100%, 1320px);
  margin-inline: auto;
}
.contact-form-page .contact-form-header,
.contact-form-page #contactForm {
  width: 100%;
  max-width: 1320px;
  margin-inline: auto;
}
.contact-form-page #contactForm.contact-card-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
  gap: 18px;
  align-items: start;
}
.contact-form-page .panel-card,
.contact-form-page .side-panel {
  min-width: 0;
}
.contact-form-page .side-panel {
  position: sticky;
  top: 84px;
  align-self: start;
}
.contact-form-page .form-grid {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
}
.contact-form-page .form-grid .full-width,
.contact-form-page .field.full-width {
  grid-column: 1 / -1;
}
.contact-form-page textarea {
  min-height: 96px;
}
.contact-form-page .contact-linked-processes select[multiple] {
  min-height: 8.5rem;
}

.crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel,
.crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
.form-surface.is-modal .form-surface-panel {
  margin: 16px;
  width: min(560px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
}
.crm-drawer#crm-lead-drawer.is-modal,
.crm-drawer.contact-quick-drawer.is-modal,
.form-surface.is-modal {
  align-items: center;
  justify-items: center;
}
.crm-drawer#crm-lead-drawer .crm-form-grid,
.crm-drawer.contact-quick-drawer .crm-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.crm-drawer#crm-lead-drawer .field-span-2,
.crm-drawer.contact-quick-drawer .field-span-2 {
  grid-column: 1 / -1;
}

.nfse-page {
  display: grid;
  gap: 22px;
}
.nfse-status-grid.nfse-production-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(240px, 1fr));
  gap: 14px;
  align-items: stretch;
}
.nfse-status-card {
  min-height: 124px;
  padding: 18px;
  overflow: hidden;
}
.rs-main .nfse-status-card strong,
.nfse-status-card strong {
  font-size: clamp(1.45rem, 1.65vw, 2.15rem);
  line-height: 1.05;
  letter-spacing: -0.045em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.nfse-status-card span,
.nfse-status-card small {
  overflow-wrap: normal;
  word-break: normal;
}
.nfse-status-card small {
  line-height: 1.35;
}
.nfse-history-card {
  overflow: hidden;
}
.nfse-history-card .table-scroll,
.nfse-table-wrap {
  width: 100%;
  overflow-x: auto;
}

@media (min-width: 1440px) {
  .nfse-status-grid.nfse-production-grid {
    grid-template-columns: repeat(4, minmax(220px, 1fr));
  }
}
@media (max-width: 980px) {
  .contact-form-page #contactForm.contact-card-grid,
  .nfse-status-grid.nfse-production-grid {
    grid-template-columns: 1fr;
  }
  .contact-form-page .side-panel {
    position: static;
  }
}
@media (max-width: 640px) {
  .crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel,
  .crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
  .form-surface.is-modal .form-surface-panel {
    width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
    margin: 8px;
  }
  .crm-drawer#crm-lead-drawer .crm-form-grid,
  .crm-drawer.contact-quick-drawer .crm-form-grid,
  .contact-form-page .form-grid {
    grid-template-columns: 1fr;
  }
}

/* Fase 1.2 - Atendimento/WhatsApp inspirado no DigiSac com paleta CIRS */
.assisted-overview-hub { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.assisted-hub-card { display: grid; gap: 8px; padding: 18px; border: 1px solid rgba(17,31,25,.11); border-radius: 20px; background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(237,243,239,.86)); box-shadow: 0 14px 36px rgba(17,31,25,.07); text-decoration: none; color: inherit; }
.assisted-hub-card strong { font-size: 1.08rem; letter-spacing: -.02em; }
.assisted-hub-card small { color: #5f6d64; line-height: 1.45; }
.assisted-whatsapp-shell { grid-template-columns: minmax(280px, 340px) minmax(520px, 1fr) minmax(260px, 330px); min-height: calc(100vh - 240px); }
.digisac-chat-panel { display: grid; grid-template-rows: auto auto minmax(320px, 1fr) auto; min-height: 0; }
.digisac-chat-messages { max-height: none; min-height: 0; background-color: #f4f7f3; background-image: radial-gradient(circle at 12px 12px, rgba(20, 63, 47, .055) 1.5px, transparent 1.8px), radial-gradient(circle at 36px 36px, rgba(20, 63, 47, .04) 1px, transparent 1.3px); background-size: 48px 48px; }
.digisac-chat-messages .message-bubble { position: relative; border-radius: 14px; box-shadow: 0 8px 18px rgba(17,31,25,.08); }
.digisac-chat-messages .message-bubble.contact { background: #fff; }
.digisac-chat-messages .message-bubble.human { background: #d9f7b9; color: #061a12; border: 1px solid rgba(76, 119, 58, .25); }
.digisac-chat-messages .message-bubble.ai { background: #e7f4ee; color: #082519; border: 1px solid rgba(17,31,25,.13); }
.digisac-chat-messages .message-bubble.internal_note { align-self: center; background: #fff2cf; color: #6d4300; border: 1px dashed #d6a943; max-width: min(620px, 92%); }
.digisac-chat-messages .message-bubble.human small,
.digisac-chat-messages .message-bubble.human em,
.digisac-chat-messages .message-bubble.ai small,
.digisac-chat-messages .message-bubble.ai em { color: rgba(6,26,18,.68); }
.digisac-dock { position: relative; border-top: 1px solid rgba(17,31,25,.12); background: #f4f6fb; }
.digisac-panel { position: absolute; left: 14px; right: 14px; bottom: calc(100% + 8px); z-index: 4; border: 1px solid rgba(17,31,25,.13); border-radius: 18px; background: rgba(255,255,255,.98); box-shadow: 0 22px 60px rgba(17,31,25,.18); padding: 14px; }
.digisac-panel[hidden] { display: none; }
.digisac-panel button { border: 0; border-radius: 12px; background: rgba(7,61,47,.06); color: #0b3024; font-weight: 800; padding: 10px 12px; cursor: pointer; }
.digisac-panel button:hover { background: rgba(7,61,47,.12); }
.digisac-panel > small, .digisac-panel > p { display: block; margin: 10px 0 0; color: #63736a; }
.digisac-panel-title { font-weight: 800; color: #22362d; margin-bottom: 8px; }
.digisac-emoji-panel { display: flex; flex-wrap: wrap; gap: 6px; max-width: 420px; right: auto; }
.digisac-emoji-panel button { width: 34px; height: 34px; padding: 0; font-size: 1.2rem; background: transparent; }
.digisac-quick-panel { min-height: 260px; max-height: min(520px, 55vh); overflow: auto; }
.quick-panel-header { display: grid; grid-template-columns: auto minmax(180px, 1fr); gap: 12px; align-items: center; margin-bottom: 12px; }
.quick-panel-header input { border: 1px solid rgba(17,31,25,.13); border-radius: 999px; padding: 10px 14px; font: inherit; }
.quick-reply-option { display: grid; width: 100%; text-align: left; gap: 4px; margin-bottom: 8px; }
.quick-reply-option span { font-weight: 500; color: #5c6b62; }
.digisac-composer { display: grid; grid-template-columns: auto minmax(160px, 1fr) auto; gap: 10px; align-items: end; padding: 10px 12px; }
.digisac-toolbar { display: flex; align-items: center; gap: 8px; padding-bottom: 4px; }
.chat-tool-button { width: 34px; height: 34px; border: 0; border-radius: 50%; background: transparent; color: #294c82; font-size: 1.18rem; font-weight: 800; cursor: pointer; display: inline-grid; place-items: center; }
.chat-tool-button:hover { background: rgba(41,76,130,.10); }
.digisac-composer-body { display: grid; gap: 6px; }
.digisac-composer textarea { width: 100%; min-height: 42px; max-height: 130px; resize: vertical; border: 1px solid rgba(41,76,130,.35); border-radius: 999px; padding: 12px 18px; background: #fff; font: inherit; }
.digisac-send-button { min-height: 42px; padding: 0 18px; border: 0; border-radius: 999px; background: #294c82; color: #fff; font-weight: 800; cursor: pointer; }
.digisac-attachment-preview { border-radius: 12px; padding: 8px 10px; background: #fff7ed; color: #7c2d12; font-size: .8rem; border: 1px solid #fed7aa; }
.internal-comment-dialog { width: min(760px, 92vw); border: 0; border-radius: 24px; padding: 0; box-shadow: 0 30px 100px rgba(8,20,15,.34); }
.internal-comment-dialog::backdrop { background: rgba(8,20,15,.54); backdrop-filter: blur(2px); }
.internal-comment-dialog form { display: grid; gap: 16px; padding: 28px; position: relative; }
.internal-comment-dialog h2 { margin: 0; text-align: center; }
.internal-comment-dialog label { display: grid; gap: 8px; color: #4d6072; font-weight: 700; }
.internal-comment-dialog textarea { min-height: 110px; border: 1px solid rgba(41,76,130,.28); border-radius: 18px; padding: 14px; font: inherit; resize: vertical; }
.internal-comment-dialog .dialog-close { position: absolute; top: 16px; right: 16px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: #edf3f8; font-size: 1.6rem; cursor: pointer; }
.internal-comment-dialog .dialog-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.round-check-grid label { display: grid; grid-template-columns: 28px 1fr; gap: 10px; align-items: center; min-height: 44px; padding: 9px 10px; border: 1px solid rgba(17,31,25,.10); border-radius: 14px; background: rgba(255,255,255,.75); }
.round-check-grid input[type='checkbox'] { appearance: none; width: 22px; height: 22px; border: 2px solid rgba(7,61,47,.32); border-radius: 50%; display: grid; place-items: center; margin: 0; background: #fff; }
.round-check-grid input[type='checkbox']::after { content: ''; width: 10px; height: 10px; border-radius: 50%; transform: scale(0); background: #073d2f; transition: transform .15s ease; }
.round-check-grid input[type='checkbox']:checked::after { transform: scale(1); }
.round-check-grid input[type='checkbox']:checked { border-color: #073d2f; }

/* Fase 1.2 - Previa de funil no formato compacto tipo DigiSac */
.crm-pipeline-overview-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.crm-pipeline-overview-card { display: grid; gap: 12px; align-content: start; }
.crm-pipeline-overview-card > strong { font-size: clamp(1.45rem, 2.2vw, 2.1rem); }
.crm-pipeline-preview { display: grid; gap: 10px; margin: 4px 0 2px; }
.crm-pipeline-preview-bars { display: grid; grid-template-columns: repeat(var(--stage-count, 6), minmax(34px, 1fr)); align-items: end; gap: 8px; min-height: 150px; padding: 10px 4px 0; background: #f5f7f5; border-radius: 14px; border: 1px solid rgba(7,61,47,.08); }
.crm-pipeline-preview-stage { display: grid; grid-template-rows: minmax(90px, 1fr) auto; gap: 7px; min-width: 0; }
.crm-pipeline-preview-bar { align-self: end; min-height: 8px; height: var(--bar-height, 8%); border-radius: 9px 9px 3px 3px; background: linear-gradient(180deg, #d9e8df 0%, #073d2f 100%); position: relative; box-shadow: inset 0 0 0 1px rgba(255,255,255,.25); }
.crm-pipeline-preview-bar strong { position: absolute; left: 50%; top: -24px; transform: translateX(-50%); min-width: 34px; text-align: center; padding: 2px 8px; border-radius: 999px; background: #fff; box-shadow: 0 6px 18px rgba(17,31,25,.15); font-size: .78rem; }
.crm-pipeline-preview-stage small { display: block; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #263f35; }
.crm-pipeline-preview-footer { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(17,31,25,.10); padding-top: 10px; gap: 8px; }
.crm-pipeline-preview-footer span { display: grid; gap: 2px; color: #092b20; }
.crm-pipeline-preview-footer small { color: #5f6d64; }

/* Fase 1.2 - ajustes fiscais */
.nfse-production-grid { grid-template-columns: repeat(4, minmax(220px, 1fr)); }
.nfse-issuer-manager { display: grid; gap: 16px; }
.nfse-issuer-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.nfse-issuer-card { padding: 14px; border: 1px solid rgba(17,31,25,.10); border-radius: 16px; background: rgba(255,255,255,.86); display: grid; gap: 6px; }
.nfse-issuer-card strong { font-size: 1rem; }
.nfse-issuer-card small { color: #647067; }
.nfse-issuer-form { display: grid; gap: 14px; }
@media (max-width: 1180px) {
  .assisted-overview-hub { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assisted-whatsapp-shell { grid-template-columns: 320px 1fr; }
  .crm-pipeline-overview-list { grid-template-columns: 1fr; }
  .nfse-production-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .assisted-overview-hub { grid-template-columns: 1fr; }
  .digisac-composer { grid-template-columns: 1fr; }
  .digisac-toolbar { justify-content: space-between; }
  .quick-panel-header { grid-template-columns: 1fr; }
  .nfse-production-grid { grid-template-columns: 1fr; }
}


/* Round atendimento UX incremental - 2026-05-03 */
.rs-layout-wide .rs-main-inner,.rs-route-dashboard .rs-main-inner,.rs-route-search .rs-main-inner,.rs-route-busca-global .rs-main-inner{width:min(100%,1760px);margin-inline:auto;padding-inline:clamp(20px,3vw,56px)}
.assisted-main-tabs{margin-bottom:12px}.assisted-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.assisted-filter-form.compact,.assisted-filter-form.kanban-filter{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(180px,1fr)) auto;gap:10px;align-items:end}.assisted-kanban-board{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:16px;align-items:start;margin-top:18px}.assisted-kanban-column{background:rgba(255,255,255,.72);border:var(--rs-soft-border);border-radius:22px;padding:14px;min-height:360px;box-shadow:0 12px 30px rgba(17,31,25,.06)}.assisted-kanban-column>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.assisted-kanban-column h2{margin:0;font-size:.98rem;color:#112019}.assisted-kanban-column header span{min-width:30px;height:30px;border-radius:999px;background:#10251d;color:#f8f4e8;display:inline-grid;place-items:center;font-weight:800}.assisted-kanban-card{display:grid;gap:7px;padding:13px;border:1px solid rgba(17,31,25,.12);border-radius:18px;background:#fff;margin-bottom:12px;color:#112019}.assisted-kanban-card p{margin:0;color:#5b655f;font-size:.9rem}.assisted-kanban-card footer{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:.78rem;color:#67726c}.tag-chip{--tag-color:#334155;display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;background:color-mix(in srgb,var(--tag-color) 12%,#fff);border:1px solid color-mix(in srgb,var(--tag-color) 40%,#fff);color:#112019;font-size:.78rem;font-weight:700}.tag-chip:before{content:'';width:8px;height:8px;border-radius:999px;background:var(--tag-color)}.pill-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(17,31,25,.12);background:#fff;border-radius:18px;padding:10px 12px;min-height:44px}.pill-toggle input[type=checkbox]{appearance:none;width:44px;height:24px;border-radius:999px;background:#d7dbd4;border:1px solid rgba(17,31,25,.18);position:relative;flex:0 0 auto;transition:.18s ease}.pill-toggle input[type=checkbox]:after{content:'';position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;box-shadow:0 2px 6px rgba(17,31,25,.2);transition:.18s ease}.pill-toggle input[type=checkbox]:checked{background:#0f5138;border-color:#0f5138}.pill-toggle input[type=checkbox]:checked:after{transform:translateX(20px)}.pill-toggle.compact{padding:6px 9px;min-height:36px}.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.admin-row form:first-child{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:8px;align-items:center;width:100%}.admin-row input,.admin-row textarea,.admin-row select{min-height:38px;border-radius:12px;border:1px solid rgba(17,31,25,.14);padding:8px 10px}.chat-bubble.internal{margin-inline:auto;background:#fff8df;border:1px dashed #a97016;color:#533b12;max-width:78%}.internal-note-compose{background:#fff9e8;border:1px dashed #b8871c;border-radius:18px;margin-top:8px}.compose-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.tool-button{border:1px solid rgba(17,31,25,.13);background:#fff;border-radius:999px;padding:8px 11px;min-height:36px;font-weight:800;color:#112019;cursor:pointer}.compose-menu{position:absolute;z-index:10;display:grid;gap:6px;padding:10px;border-radius:14px;background:#fff;border:var(--rs-soft-border);box-shadow:0 16px 35px rgba(17,31,25,.14)}.compose-menu button{border:0;background:#f5f2e8;border-radius:10px;padding:8px 10px;text-align:left}.round-check-grid{gap:10px;margin:14px 0 16px}#crm-lead-drawer.is-open,#contactQuickDrawer.is-open,#financeClientDrawer.is-open{left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 32px));max-height:min(82vh,760px);border-radius:24px}.crm-pipeline-overview-card>p{display:none}.crm-pipeline-overview-card>div:first-child small{display:block;margin-top:8px;font-size:.84rem;color:#68716b}.crm-pipeline-preview-bar strong{font-size:.72rem}.crm-pipeline-preview-footer strong{font-size:.9rem}.record-form-grid-v24 .field-subject-select:disabled{background:#eeede6;color:#737970;cursor:not-allowed}@media(max-width:980px){.assisted-metrics-grid,.assisted-kanban-board{grid-template-columns:1fr}.assisted-filter-form.compact,.assisted-filter-form.kanban-filter{grid-template-columns:1fr}.admin-row,.admin-row form:first-child{grid-template-columns:1fr}}

/* Round 5 - prontidao de atendimento real e correcao de regressao visual */
.assisted-presence-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.presence-chip { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 12px; border: 1px solid rgba(17,31,25,.11); border-radius: 16px; background: rgba(255,255,255,.86); color: #10251d; }
.presence-dot { width: 10px; height: 10px; border-radius: 50%; background: #17a55b; box-shadow: 0 0 0 4px rgba(23,165,91,.12); }
.presence-chip small { color: #617066; }

.assisted-kanban-card[draggable='true'] { cursor: grab; }
.assisted-kanban-card.is-dragging { opacity: .55; transform: scale(.99); }
.assisted-kanban-column.is-drop-target { outline: 2px dashed rgba(7,61,47,.36); outline-offset: 5px; }
.kanban-card-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 3px; }
.kanban-card-actions form { margin: 0; }
.kanban-card-actions button { border: 1px solid rgba(17,31,25,.12); border-radius: 999px; padding: 6px 9px; background: #f7f4eb; color: #112019; font-size: .76rem; font-weight: 800; cursor: pointer; }
.kanban-card-actions button:hover { background: rgba(7,61,47,.08); }

.chat-panel-strip { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 8px; }
.chat-panel-strip[hidden] { display: none; }
.chat-panel-card { border: 1px solid rgba(17,31,25,.12); border-radius: 18px; background: rgba(255,255,255,.96); padding: 10px; box-shadow: 0 10px 24px rgba(17,31,25,.08); }
.attachment-menu { display: grid; grid-template-columns: repeat(3, minmax(120px, 1fr)); gap: 8px; width: min(520px, 100%); }
.attachment-menu button,
.sticker-panel button,
.quick-reply-panel button { border: 1px solid rgba(17,31,25,.11); border-radius: 13px; background: #f5f2e8; color: #10251d; font-weight: 800; padding: 9px 10px; cursor: pointer; }
.attachment-menu button:hover,
.sticker-panel button:hover,
.quick-reply-panel button:hover { background: rgba(7,61,47,.08); }
.emoji-panel { max-width: 360px; }
.emoji-panel button { width: 34px; height: 34px; padding: 0; border-radius: 50%; background: transparent; border: 0; font-size: 1.2rem; cursor: pointer; }
.sticker-panel,
.quick-reply-panel,
.contact-share-panel { min-width: min(480px, 100%); }
.quick-reply-panel { max-height: 280px; overflow: auto; display: grid; gap: 8px; }
.quick-reply-button { display: grid; gap: 3px; text-align: left; }
.quick-reply-button small { color: #617066; font-weight: 500; }
.contact-share-panel form { display: grid; grid-template-columns: repeat(2, minmax(160px, 1fr)) auto; gap: 8px; align-items: end; }
.contact-share-panel input { min-height: 38px; border: 1px solid rgba(17,31,25,.14); border-radius: 12px; padding: 8px 10px; font: inherit; }
.internal-note-panel { width: min(620px, 100%); }
.internal-note-panel form { display: grid; gap: 8px; }
.internal-note-panel textarea { min-height: 76px; border: 1px dashed rgba(169,112,22,.5); background: #fffaf0; border-radius: 14px; padding: 10px; font: inherit; }
.internal-note-panel button { justify-self: end; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.connection-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 14px; margin-top: 18px; }
.connection-card { display: grid; gap: 10px; padding: 16px; border: 1px solid rgba(17,31,25,.12); border-radius: 20px; background: #fff; box-shadow: 0 12px 28px rgba(17,31,25,.06); }
.connection-card header { display: flex; justify-content: space-between; gap: 12px; align-items: start; }
.connection-card dl { display: grid; grid-template-columns: auto 1fr; gap: 5px 14px; margin: 0; }
.connection-card dt { color: #657269; }
.connection-card dd { margin: 0; font-weight: 800; color: #10251d; }
.connection-card-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.zapi-qr-box { min-height: 140px; display: grid; place-items: center; border: 1px dashed rgba(17,31,25,.18); border-radius: 16px; background: #f8faf8; padding: 12px; text-align: center; }
.zapi-qr-box img { max-width: 220px; max-height: 220px; }
.baileys-qr-box { margin-top: 10px; min-height: 96px; display: grid; place-items: center; border: 1px dashed rgba(17,31,25,.16); border-radius: 16px; background: #fbfdfb; padding: 12px; text-align: center; }
.baileys-qr-box[hidden] { display: none; }
.baileys-qr-result { display: grid; gap: 8px; justify-items: center; }
.baileys-qr-result img { width: min(220px, 80vw); max-height: 220px; border-radius: 12px; background: #fff; padding: 6px; }
.baileys-qr-result small { color: #64716a; font-weight: 700; }

.round-check-grid { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: 10px; margin: 12px 0 12px; }
.round-check-grid .pill-toggle { display: flex; flex-direction: row-reverse; justify-content: flex-end; gap: 12px; min-height: 52px; }
.round-check-grid .pill-toggle input[type='checkbox'] { appearance: none; width: 42px; height: 24px; border-radius: 999px; border: 1px solid rgba(7,61,47,.35); background: #fff; position: relative; margin: 0; flex: 0 0 auto; }
.round-check-grid .pill-toggle input[type='checkbox']::after { content: ''; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: rgba(7,61,47,.38); transition: .16s ease; }
.round-check-grid .pill-toggle input[type='checkbox']:checked { background: rgba(7,61,47,.12); border-color: #073d2f; }
.round-check-grid .pill-toggle input[type='checkbox']:checked::after { transform: translateX(18px); background: #073d2f; }

.tag-picker-grid { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; max-height: 132px; overflow: auto; padding: 8px; border: 1px solid rgba(17,31,25,.10); border-radius: 16px; background: rgba(255,255,255,.78); }
.tag-option-chip { --tag-color:#16a34a; display: inline-flex; align-items: center; gap: 7px; min-height: 32px; padding: 7px 10px; border-radius: 999px; border: 1px solid color-mix(in srgb, var(--tag-color) 44%, #fff); background: color-mix(in srgb, var(--tag-color) 12%, #fff); color: #10251d; font-weight: 800; cursor: pointer; user-select: none; }
.tag-option-chip input { position: absolute; opacity: 0; pointer-events: none; }
.tag-option-chip::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: var(--tag-color); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tag-color) 16%, transparent); }
.tag-option-chip:has(input:checked),
.tag-option-chip.is-selected { background: color-mix(in srgb, var(--tag-color) 26%, #fff); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--tag-color) 60%, #fff); }
.tag-color-field { display: inline-grid; grid-template-columns: auto 1fr; gap: 8px; align-items: center; }
.tag-color-field input[type='color'] { width: 40px; height: 34px; border: 0; background: transparent; padding: 0; }

.crm-drawer#crm-lead-drawer.is-modal.is-open,
.crm-drawer.contact-quick-drawer.is-modal.is-open,
.form-surface.is-modal.is-open,
#contactQuickDrawer.is-open,
#financeClientDrawer.is-open { position: fixed; left: 50%; top: 50%; right: auto; bottom: auto; transform: translate(-50%, -50%); width: min(760px, calc(100vw - 32px)); max-height: min(88vh, 780px); overflow: auto; border-radius: 24px; }
.crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel,
.crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel { min-height: 0; max-height: none; }
#crm-lead-drawer.is-open .crm-drawer-body { max-height: none; }
#crm-lead-drawer .crm-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
#crm-lead-drawer .crm-drawer-body { padding-bottom: 18px; }
#crm-lead-drawer .crm-field-full { grid-column: 1 / -1; }

.contact-form-page { width: min(100%, 1500px); }
.contact-form-page #contactForm.contact-card-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, 360px); gap: 20px; align-items: start; }
.contact-form-page .contact-main-panel { display: grid; gap: 18px; }
.contact-form-page .contact-primary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.contact-form-page .contact-primary-grid .field-wide { grid-column: span 2; }
.contact-form-page .contact-address-panel { grid-column: 1 / -1; }
.contact-form-page .contact-address-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.contact-form-page .contact-address-grid .field-wide { grid-column: span 3; }
.contact-form-page .contact-address-grid .field-full { grid-column: 1 / -1; }
.contact-form-page .side-panel { position: sticky; top: 18px; }

.crm-pipeline-overview-card { gap: 10px; }
.crm-pipeline-overview-card > strong { font-size: clamp(1.55rem, 1.8vw, 2rem); line-height: 1.02; }
.crm-pipeline-overview-card > .crm-pipeline-card-meta { display: block; margin-top: 7px; color: #6b746e; font-size: .94rem; }
.crm-pipeline-preview-bars { min-height: 96px; padding-top: 24px; }
.crm-pipeline-preview-stage { grid-template-rows: minmax(44px, 1fr) auto; }
.crm-pipeline-preview-bar strong { top: -20px; min-width: 24px; padding: 1px 6px; font-size: .68rem; box-shadow: 0 4px 11px rgba(17,31,25,.12); }
.crm-pipeline-preview-stage small { font-size: .72rem; }
.crm-pipeline-preview-footer strong { font-size: 1.15rem; }

@media (max-width: 1180px) {
  .round-check-grid,
  .assisted-kanban-board,
  .assisted-metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-share-panel form,
  .assisted-filter-form.kanban-filter { grid-template-columns: 1fr; }
  .contact-form-page #contactForm.contact-card-grid { grid-template-columns: 1fr; }
  .contact-form-page .side-panel { position: static; }
}
@media (max-width: 760px) {
  .round-check-grid,
  .assisted-kanban-board,
  .assisted-metrics-grid,
  .contact-form-page .contact-primary-grid,
  .contact-form-page .contact-address-grid { grid-template-columns: 1fr; }
  .contact-form-page .contact-primary-grid .field-wide,
  .contact-form-page .contact-address-grid .field-wide { grid-column: auto; }
  .attachment-menu { grid-template-columns: 1fr; }
}

/* === Final CIRS UX stabilization: Atendimento, Kanban, Funis, Expediente e Tags === */
.assisted-digisac-shell {
  display: grid;
  grid-template-columns: minmax(320px, 380px) minmax(0, 1fr);
  min-height: clamp(680px, calc(100vh - 220px), 920px);
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(246,243,233,.96));
  box-shadow: 0 22px 58px rgba(17,31,25,.10);
}
.assisted-conversation-sidebar {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border-right: 1px solid rgba(17,31,25,.10);
  background: rgba(249,247,239,.95);
  overflow: hidden;
}
.conversation-sidebar-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.conversation-sidebar-head h2 { margin: 2px 0 0; font-size: 1.3rem; }
.icon-button { width: 40px; height: 40px; border-radius: 14px; display: inline-grid; place-items: center; border: 1px solid rgba(17,31,25,.12); background: #fff; cursor: pointer; font-weight: 900; }
.sidebar-filter-menu { position: relative; }
.sidebar-filter-menu[open] .sidebar-filter-panel { position: absolute; right: 0; top: 46px; z-index: 20; width: min(320px, calc(100vw - 32px)); }
.sidebar-filter-panel { display: grid; gap: 10px; padding: 14px; border-radius: 20px; border: 1px solid rgba(17,31,25,.12); background: #fff; box-shadow: 0 18px 44px rgba(17,31,25,.16); }
.sidebar-filter-panel label { display: grid; gap: 5px; font-size: .78rem; color: #5f6b64; font-weight: 800; }
.assisted-searchbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.conversation-search-field,
.sidebar-filter-panel select { width: 100%; min-height: 42px; border-radius: 15px; border: 1px solid rgba(17,31,25,.14); background: #fff; padding: 9px 12px; }
.assisted-inbox-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.assisted-inbox-tabs a { display: flex; justify-content: space-between; align-items: center; gap: 6px; padding: 9px 10px; border-radius: 16px; border: 1px solid rgba(17,31,25,.10); background: #fff; color: #10251d; font-weight: 850; }
.assisted-inbox-tabs a strong { min-width: 24px; height: 24px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(15,81,56,.10); font-size: .72rem; }
.assisted-inbox-tabs a.active { color: #fff; background: #0f5138; border-color: #0f5138; box-shadow: 0 10px 24px rgba(15,81,56,.20); }
.assisted-inbox-tabs a.active strong { background: rgba(255,255,255,.22); color: #fff; }
.conversation-list { min-height: 0; overflow-y: auto; display: grid; align-content: start; gap: 8px; padding-right: 2px; }
.conversation-item { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 12px; align-items: start; padding: 13px; border-radius: 18px; color: #10251d; border: 1px solid rgba(17,31,25,.08); background: rgba(255,255,255,.82); transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
.conversation-item:hover,
.conversation-item.active { transform: translateY(-1px); border-color: rgba(15,81,56,.30); box-shadow: 0 12px 28px rgba(17,31,25,.10); background: #fff; }
.conversation-avatar { width: 56px; height: 56px; display: inline-grid; place-items: center; border-radius: 18px; background: linear-gradient(135deg, #0f5138, #16a34a); color: #fff; font-weight: 900; letter-spacing: .02em; font-size: 1rem; }
.conversation-avatar.large { width: 72px; height: 72px; border-radius: 22px; font-size: 1.2rem; }
.conversation-main { min-width: 0; display: grid; gap: 2px; }
.conversation-main strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversation-main small { color: #66726b; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversation-main em { color: #42504a; font-style: normal; font-size: .86rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversation-meta { display: grid; justify-items: end; gap: 7px; white-space: nowrap; }
.conversation-meta small { color: #7b847f; font-size: .72rem; }
.digisac-chat-panel { min-width: 0; min-height: 0; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; background: radial-gradient(circle at 10% 0%, rgba(15,81,56,.06), transparent 28%), #f7f5ee; }
.chat-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 18px; border-bottom: 1px solid rgba(17,31,25,.10); background: rgba(255,255,255,.94); }
.chat-contact-title { min-width: 0; display: flex; align-items: center; gap: 16px; }
.chat-contact-title h2 { margin: 0; font-size: 1.35rem; }
.chat-contact-title p { margin: 2px 0 0; color: #65716a; }
.chat-header-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; align-items: center; }
.chat-header-actions form { margin: 0; }
.chat-messages { min-height: 0; overflow-y: auto; padding: 20px; display: flex; flex-direction: column; gap: 10px; }
.chat-bubble { max-width: min(680px, 78%); padding: 10px 13px; border-radius: 18px; border: 1px solid rgba(17,31,25,.08); box-shadow: 0 8px 18px rgba(17,31,25,.05); }
.chat-bubble span { display: block; margin-bottom: 4px; font-size: .72rem; font-weight: 900; text-transform: uppercase; letter-spacing: .04em; color: #627069; }
.chat-bubble p { margin: 0; white-space: pre-wrap; line-height: 1.45; }
.chat-bubble small { display: block; margin-top: 6px; color: #6b746e; font-size: .72rem; }
.chat-bubble.incoming { align-self: flex-start; background: #fff; border-bottom-left-radius: 6px; }
.chat-bubble.outgoing { align-self: flex-end; background: #dcf8e8; border-color: rgba(15,81,56,.14); border-bottom-right-radius: 6px; }
.chat-bubble.internal { align-self: center; background: #fff7df; border: 1px dashed #ba8520; color: #583e10; max-width: min(620px, 88%); }
.assisted-chat-empty { display: grid; place-items: center; min-height: 100%; padding: 34px; text-align: center; }
.assisted-chat-empty > div { max-width: 430px; padding: 32px; border-radius: 28px; border: 1px solid rgba(17,31,25,.10); background: rgba(255,255,255,.82); box-shadow: 0 18px 48px rgba(17,31,25,.08); }
.assisted-chat-empty span { font-size: 2.1rem; }
.assisted-chat-empty h2 { margin: 8px 0; }
.assisted-chat-empty p { color: #65716a; }
.chat-compose { align-self: end; display: grid; gap: 10px; margin: 0; padding: 14px 16px 16px; border-top: 1px solid rgba(17,31,25,.10); background: rgba(255,255,255,.96); box-shadow: 0 -12px 34px rgba(17,31,25,.05); }
.compose-tools { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.tool-button { border: 1px solid rgba(17,31,25,.13); background: #fff; border-radius: 999px; padding: 8px 11px; min-height: 36px; font-weight: 850; color: #112019; cursor: pointer; }
.tool-button.internal { background: #fff7df; border-color: rgba(186,133,32,.38); }
.compose-input-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.compose-input-row textarea { resize: none; min-height: 48px; max-height: 140px; border-radius: 18px; border: 1px solid rgba(17,31,25,.14); padding: 12px 14px; }
.chat-panel-strip,
.quick-reply-panel,
.chat-panel-card { border-radius: 18px; border: 1px solid rgba(17,31,25,.10); background: #fff; padding: 10px; box-shadow: 0 12px 30px rgba(17,31,25,.08); }
.chat-panel-strip { display: flex; flex-wrap: wrap; gap: 6px; }
.chat-panel-strip[hidden], .quick-reply-panel[hidden], .chat-panel-card[hidden] { display: none; }
.chat-panel-strip button { border: 0; border-radius: 12px; padding: 7px 10px; background: #f3f0e7; cursor: pointer; }
.quick-reply-panel input { width: 100%; min-height: 38px; margin-bottom: 8px; border-radius: 12px; border: 1px solid rgba(17,31,25,.12); padding: 8px 10px; }
.internal-note-compose { background: #fff9e8; border-style: dashed; }

.assisted-kanban-board { gap: 18px; }
.assisted-kanban-column { min-height: 520px; }
.assisted-kanban-card { transition: transform .16s ease, box-shadow .16s ease; }
.assisted-kanban-card:hover { transform: translateY(-2px); box-shadow: 0 14px 32px rgba(17,31,25,.10); }
.kanban-card-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }

.tag-cloud.compact { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 4px; }
.tag-chip { --tag-color:#334155; display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:5px 9px; background:color-mix(in srgb,var(--tag-color) 12%,#fff); border:1px solid color-mix(in srgb,var(--tag-color) 40%,#fff); color:#10251d; font-size:.78rem; font-weight:800; line-height:1; }
.tag-chip::before { content:''; width:8px; height:8px; border-radius:999px; background:var(--tag-color); box-shadow:0 0 0 3px color-mix(in srgb,var(--tag-color) 15%,transparent); }
.tag-chip.mini { padding: 4px 7px; font-size: .68rem; }
.tag-picker-grid { display:flex; flex-wrap:wrap; gap:8px; align-items:center; max-height:150px; overflow:auto; padding:8px; border:1px solid rgba(17,31,25,.10); border-radius:16px; background:rgba(255,255,255,.78); }
.tag-option-chip { --tag-color:#16a34a; display:inline-flex; align-items:center; gap:7px; min-height:32px; padding:7px 10px; border-radius:999px; border:1px solid color-mix(in srgb,var(--tag-color) 44%,#fff); background:color-mix(in srgb,var(--tag-color) 12%,#fff); color:#10251d; font-weight:850; cursor:pointer; user-select:none; }
.tag-option-chip input { position:absolute; opacity:0; pointer-events:none; }
.tag-option-chip::before { content:''; width:9px; height:9px; border-radius:50%; background:var(--tag-color); box-shadow:0 0 0 3px color-mix(in srgb,var(--tag-color) 16%,transparent); }
.tag-option-chip:has(input:checked), .tag-option-chip.is-selected { background:color-mix(in srgb,var(--tag-color) 26%,#fff); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tag-color) 60%,#fff); }

.crm-pipeline-overview-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 18px; align-items: stretch; }
.crm-pipeline-overview-card { display: grid; gap: 15px; align-content: start; padding: 18px; min-height: 0; }
.crm-pipeline-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.crm-pipeline-card-head > div { min-width: 0; display: grid; gap: 6px; }
.crm-pipeline-card-head strong { font-size: clamp(1.25rem, 1.4vw, 1.65rem); line-height: 1.08; }
.crm-pipeline-card-head small { color: #66726b; line-height: 1.35; }
.crm-pipeline-status-pill { width: fit-content; border-radius: 999px; padding: 4px 9px; font-size: .72rem; font-weight: 900; }
.crm-pipeline-status-pill.active { color: #0f5138; background: rgba(22,163,74,.13); }
.crm-pipeline-status-pill.inactive { color: #7a3d11; background: rgba(245,158,11,.14); }
.crm-pipeline-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.crm-pipeline-stat-grid span { display: grid; gap: 2px; min-width: 0; padding: 11px; border-radius: 16px; background: #f7f4eb; border: 1px solid rgba(17,31,25,.08); }
.crm-pipeline-stat-grid strong { font-size: 1.15rem; color: #10251d; }
.crm-pipeline-stat-grid small { color: #66726b; font-size: .74rem; font-weight: 750; }
.crm-pipeline-stage-preview-list { display: flex; flex-wrap: wrap; gap: 8px; }
.crm-pipeline-stage-chip { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 7px 10px; border-radius: 999px; background: #fff; border: 1px solid rgba(17,31,25,.10); color: #10251d; font-size: .82rem; font-weight: 750; }
.crm-pipeline-stage-chip strong { min-width: 23px; height: 23px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(15,81,56,.10); font-size: .72rem; }
.crm-pipeline-stage-chip.muted { color: #68746d; }
.crm-pipeline-nuclei { margin: 0; color: #5f6b64; }

.record-create-layout-v24 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 360px); gap: 20px; align-items: start; max-width: 1560px; margin-inline: auto; }
.record-modern-panel,
.record-modern-preview { min-height: 0; }
.record-form-grid-v24 { display: grid; grid-template-columns: repeat(3, minmax(180px, 1fr)); gap: 14px; align-items: start; }
.record-form-grid-v24 .full-width,
.record-form-grid-v24 .record-action-row { grid-column: 1 / -1; }
.record-classification-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.record-observations-field { grid-column: span 2; }
.record-observations-field textarea { min-height: 92px; }
.record-form-grid-v24 .field-subject-select:disabled { background:#eeede6; color:#737970; cursor:not-allowed; border-style:dashed; }
.record-side-stack { display: grid; gap: 14px; position: sticky; top: 18px; }
.record-preview-empty { min-height: 180px; display: grid; align-content: center; }

@media (min-width: 1800px) {
  .assisted-digisac-shell { grid-template-columns: 420px minmax(0, 1fr); min-height: 900px; }
  .chat-bubble { max-width: min(820px, 72%); }
  .crm-pipeline-overview-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1180px) {
  .assisted-digisac-shell { grid-template-columns: 320px minmax(0,1fr); }
  .chat-header { align-items: flex-start; flex-direction: column; }
  .record-create-layout-v24 { grid-template-columns: 1fr; }
  .record-side-stack { position: static; }
}
@media (max-width: 820px) {
  .assisted-digisac-shell { grid-template-columns: 1fr; min-height: auto; }
  .assisted-conversation-sidebar { border-right: 0; border-bottom: 1px solid rgba(17,31,25,.10); max-height: 58vh; }
  .digisac-chat-panel { min-height: 620px; }
  .conversation-item { grid-template-columns: 38px minmax(0,1fr); }
  .conversation-meta { grid-column: 2; justify-items: start; display: flex; }
  .compose-input-row,
  .assisted-searchbar,
  .crm-pipeline-card-head { grid-template-columns: 1fr; display: grid; }
  .chat-bubble { max-width: 92%; }
  .crm-pipeline-stat-grid,
  .record-form-grid-v24,
  .record-classification-cards { grid-template-columns: 1fr; }
  .record-observations-field { grid-column: auto; }
}


/* === Rodada homologacao visual 03/05: consistencia real de Atendimento, CRM e formularios === */
.rs-layout-wide .rs-main-inner,
.rs-route-home .rs-main-inner,
.rs-route-dashboard .rs-main-inner,
.rs-route-search .rs-main-inner,
.rs-route-busca-global .rs-main-inner,
.rs-route-automations-responde .rs-main-inner,
.rs-route-automations-vs-responde .rs-main-inner,
.rs-route-automations-revisao .rs-main-inner,
.rs-route-automations-legal-review .rs-main-inner {
  width: min(100%, 1760px);
  margin-inline: auto;
  padding-inline: clamp(20px, 3vw, 56px);
}

.assisted-page {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-inline: clamp(12px, 1.4vw, 24px);
}
.assisted-digisac-shell {
  position: relative;
  width: 100%;
  grid-template-columns: clamp(300px, 22vw, 380px) minmax(0, 1fr);
  min-height: clamp(700px, calc(100vh - 190px), 980px);
  overflow: hidden;
}
.assisted-conversation-sidebar {
  width: 100%;
  min-width: 0;
}
.digisac-chat-panel {
  width: 100%;
  min-width: 0;
  grid-template-rows: auto minmax(0, 1fr) auto;
}
.chat-header {
  width: 100%;
  min-width: 0;
}
.chat-contact-open {
  appearance: none;
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
  border-radius: 18px;
  padding: 6px;
}
.chat-contact-open:hover,
.chat-contact-open:focus-visible {
  background: rgba(15, 81, 56, .07);
  outline: none;
}
.chat-contact-copy {
  min-width: 0;
  display: block;
}
.chat-messages {
  width: 100%;
  min-height: 0;
  padding-inline: clamp(18px, 3vw, 48px);
  scroll-padding-bottom: 120px;
}
.chat-bubble,
.chat-bubble.incoming,
.chat-bubble.outgoing,
.chat-bubble.internal {
  align-self: flex-end;
  max-width: min(860px, 84%);
}
.chat-bubble.incoming {
  background: #fff;
  border-color: rgba(17,31,25,.12);
  border-bottom-right-radius: 6px;
  border-bottom-left-radius: 18px;
}
.chat-bubble.outgoing {
  background: #dcf8e8;
  border-color: rgba(15,81,56,.16);
}
.chat-bubble.internal {
  background: #fff7df;
  border-style: dashed;
  border-color: #ba8520;
  color: #583e10;
}
.chat-compose {
  width: 100%;
  align-self: stretch;
  position: sticky;
  bottom: 0;
  z-index: 2;
}
.compose-tools {
  margin-bottom: 0;
}
.compose-input-row textarea {
  width: 100%;
}
.assisted-contact-drawer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 80;
  width: min(440px, calc(100vw - 24px));
  height: 100dvh;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  background: #fffdf7;
  border-left: 1px solid rgba(17,31,25,.12);
  box-shadow: -24px 0 55px rgba(17,31,25,.18);
  transform: translateX(110%);
  transition: transform .22s ease;
}
.assisted-contact-drawer.is-open {
  transform: translateX(0);
}
.assisted-contact-drawer-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 20px;
  border-bottom: 1px solid rgba(17,31,25,.10);
  background: rgba(255,255,255,.95);
}
.assisted-contact-identity {
  display: flex;
  gap: 16px;
  min-width: 0;
}
.conversation-avatar.xlarge {
  width: 88px;
  height: 88px;
  border-radius: 26px;
  font-size: 1.5rem;
}
.assisted-contact-identity h2 {
  margin: 3px 0;
  font-size: 1.32rem;
}
.assisted-contact-identity p {
  margin: 0;
  color: #65716a;
}
.assisted-contact-drawer-body {
  min-height: 0;
  overflow: auto;
  padding: 18px;
  display: grid;
  gap: 14px;
}
.drawer-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.drawer-info-grid article,
.drawer-section {
  border: 1px solid rgba(17,31,25,.10);
  border-radius: 18px;
  background: #fff;
  padding: 12px;
}
.drawer-info-grid span,
.drawer-section h3 {
  display: block;
  margin: 0 0 5px;
  color: #65716a;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.drawer-info-grid strong {
  display: block;
  color: #10251d;
  overflow-wrap: anywhere;
}
.drawer-section p {
  margin: 0;
  color: #4e5b55;
  line-height: 1.45;
}
.drawer-media-list {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}
.drawer-media-list span {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  border-radius: 12px;
  background: #f6f2e8;
  padding: 8px 10px;
}

.whatsapp-toggle-grid.round-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  align-items: stretch;
  margin: 16px 0;
}
.whatsapp-toggle-grid.round-check-grid .pill-toggle {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas: 'label control';
  align-items: center;
  min-height: 56px;
  padding: 12px 14px;
}
.whatsapp-toggle-grid .pill-toggle span { grid-area: label; min-width: 0; line-height: 1.25; }
.whatsapp-toggle-grid .pill-toggle input[type='checkbox'] { grid-area: control; justify-self: end; }

.contact-person-switch,
.contact-quick-mode {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 4px;
  width: min(100%, 430px);
  padding: 4px;
  border: 1px solid rgba(17,31,25,.12);
  border-radius: 999px;
  background: #f5f1e7;
}
.contact-radio,
.contact-quick-mode label {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 999px;
  color: #536059;
  font-weight: 850;
  cursor: pointer;
  white-space: nowrap;
}
.contact-radio input,
.contact-quick-mode input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.contact-radio:has(input:checked),
.contact-quick-mode label:has(input:checked) {
  background: #fff;
  color: #073d2f;
  box-shadow: 0 8px 20px rgba(17,31,25,.08), inset 0 0 0 1px rgba(15,81,56,.14);
}

.crm-pipeline-overview-list {
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 20px;
}
.crm-pipeline-overview-card {
  min-height: 360px;
  border: 1px solid rgba(17,31,25,.10);
  box-shadow: 0 18px 44px rgba(17,31,25,.08);
}
.crm-pipeline-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
}
.crm-pipeline-stat-grid strong {
  font-size: clamp(1rem, 1.1vw, 1.35rem);
  line-height: 1.05;
  overflow-wrap: anywhere;
}
.crm-pipeline-preview {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  background: #fbf8ef;
  border: 1px solid rgba(17,31,25,.08);
}
.crm-pipeline-preview-bars {
  display: grid;
  grid-template-columns: repeat(var(--stage-count, 4), minmax(46px, 1fr));
  gap: 10px;
  align-items: end;
  min-height: 130px;
}
.crm-pipeline-preview-stage {
  min-width: 0;
  display: grid;
  grid-template-rows: 1fr auto;
  gap: 7px;
  height: 100%;
}
.crm-pipeline-preview-bar {
  align-self: end;
  display: grid;
  place-items: start center;
  min-height: 20px;
  height: var(--bar-height, 20%);
  border-radius: 14px 14px 8px 8px;
  background: linear-gradient(180deg, rgba(15,81,56,.28), rgba(15,81,56,.08));
  border: 1px solid rgba(15,81,56,.14);
  padding-top: 6px;
  font-style: normal;
}
.crm-pipeline-preview-stage small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  color: #617069;
  font-size: .74rem;
}
.crm-pipeline-preview-footer {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.crm-pipeline-preview-footer span {
  display: grid;
  gap: 2px;
  padding: 9px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(17,31,25,.08);
}
.crm-board-edit-menu { position: relative; }
.crm-board-edit-panel {
  width: min(940px, calc(100vw - 60px));
  max-height: min(78vh, 760px);
  overflow: auto;
  right: 0;
  left: auto;
  display: grid;
  gap: 14px;
}
.crm-board-edit-form,
.crm-board-stage-create {
  display: grid;
  grid-template-columns: repeat(2, minmax(190px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}
.crm-board-edit-form .field-span-2 { grid-column: span 2; }
.crm-board-stage-editor {
  display: grid;
  gap: 10px;
  border-top: 1px solid rgba(17,31,25,.08);
  padding-top: 12px;
}
.crm-board-stage-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid rgba(17,31,25,.08);
  background: #fff;
}
.crm-board-stage-row > form:first-child {
  display: grid;
  grid-template-columns: minmax(170px, 1.2fr) 84px 84px repeat(2, auto) auto;
  gap: 8px;
  align-items: center;
}
.crm-stage-actions {
  display: flex;
  gap: 6px;
  align-items: center;
}

@media (min-width: 1800px) {
  .assisted-digisac-shell { grid-template-columns: 400px minmax(0, 1fr); }
  .chat-bubble,
  .chat-bubble.incoming,
  .chat-bubble.outgoing,
  .chat-bubble.internal { max-width: min(980px, 76%); }
}
@media (max-width: 1180px) {
  .assisted-digisac-shell { grid-template-columns: 320px minmax(0, 1fr); }
  .crm-board-edit-form,
  .crm-board-stage-create,
  .crm-board-stage-row,
  .crm-board-stage-row > form:first-child { grid-template-columns: 1fr; }
  .crm-stage-actions { flex-wrap: wrap; }
}
@media (max-width: 820px) {
  .assisted-digisac-shell { grid-template-columns: 1fr; min-height: auto; }
  .chat-messages { padding-inline: 14px; }
  .chat-bubble,
  .chat-bubble.incoming,
  .chat-bubble.outgoing,
  .chat-bubble.internal { max-width: 94%; }
  .drawer-info-grid,
  .contact-person-switch,
  .contact-quick-mode,
  .crm-pipeline-preview-footer { grid-template-columns: 1fr; }
  .assisted-contact-drawer { width: min(100vw, 420px); }
  .crm-board-edit-panel { width: calc(100vw - 28px); right: -8px; }
}

/* Topbar user tools: avatar/greeting, theme toggle and explicit profile action */
.rs-topbar-user-tools {
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.55rem;
  min-width: 0;
  max-width: 100%;
}
.rs-topbar-user-tools .rs-user-menu { min-width: 0; flex: 0 1 auto; }
.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 42px;
  max-width: min(32vw, 280px);
  padding: 0.28rem 0.62rem 0.28rem 0.35rem;
  border-radius: 999px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(17,31,25,0.10);
  color: #111f19;
  box-shadow: 0 10px 24px rgba(17,31,25,0.08);
}
.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary .avatar {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 999px;
  overflow: hidden;
  background: #0b2018;
  color: #fff;
  border: 1px solid rgba(190,191,168,0.28);
}
.rs-user-summary-copy { display: grid; gap: 0.05rem; min-width: 0; }
.rs-user-summary-copy strong,
.rs-user-summary-copy p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rs-user-summary-copy strong { color: inherit; font-size: 0.82rem; line-height: 1.1; }
.rs-user-summary-copy p { margin: 0; color: rgba(17,31,25,0.62); font-size: 0.68rem; line-height: 1.1; }
.rs-theme-toggle.theme-toggle-button.compact.icon-only,
.rs-profile-button.compact {
  display: inline-grid;
  place-items: center;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(17,31,25,0.10);
  background: rgba(255,255,255,0.86);
  color: #111f19;
  box-shadow: 0 10px 24px rgba(17,31,25,0.08);
}
.rs-theme-toggle.theme-toggle-button.compact.icon-only { padding: 0; font-size: 1rem; line-height: 1; }
.rs-profile-button.compact { padding-inline: 0.9rem; font-size: 0.82rem; font-weight: 900; letter-spacing: -0.01em; }
.rs-profile-button.compact:hover,
.rs-profile-button.compact:focus-visible,
.rs-theme-toggle.theme-toggle-button.compact.icon-only:hover,
.rs-theme-toggle.theme-toggle-button.compact.icon-only:focus-visible,
.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary:hover,
.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary:focus-visible { background: #ffffff; border-color: rgba(17,31,25,0.18); transform: translateY(-1px); }
html[data-theme='dark'] .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary,
html[data-theme='dark'] .rs-theme-toggle.theme-toggle-button.compact.icon-only,
html[data-theme='dark'] .rs-profile-button.compact { background: rgba(10,30,23,0.94); border-color: rgba(214,215,189,0.18); color: #f5f1df; }
html[data-theme='dark'] .rs-user-summary-copy p { color: rgba(245,241,223,0.68); }
@media (max-width: 900px) {
  .rs-topbar-user-tools { gap: 0.4rem; }
  .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary { max-width: 44vw; }
}
@media (max-width: 620px) {
  .rs-topbar { gap: 0.45rem; }
  .rs-topbar-brand-textonly,
  .rs-topbar-search span { display: none; }
  .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary { max-width: none; padding-right: 0.35rem; }
  .rs-user-summary-copy { display: none; }
  .rs-profile-button.compact { min-width: 44px; width: 44px; padding-inline: 0; overflow: hidden; color: transparent; position: relative; }
  .rs-profile-button.compact::before { content: '↗'; position: absolute; inset: 0; display: grid; place-items: center; color: #111f19; font-size: 1rem; }
  html[data-theme='dark'] .rs-profile-button.compact::before { color: #f5f1df; }
}

@media (min-width: 1181px) {
  .rs-topbar {
    display: flex;
    position: fixed;
    top: clamp(1rem, 1.4vw, 1.5rem);
    right: clamp(1rem, 2vw, 2.5rem);
    z-index: 90;
    width: auto;
    min-height: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    color: #111f19;
    pointer-events: none;
  }

  .rs-topbar > :not(.rs-topbar-user-tools) {
    display: none;
  }

  .rs-topbar-user-tools {
    pointer-events: auto;
  }
}

/* ============================================================
   Ajustes solicitados em homologacao visual - 2026-05-04
   Alinhamento operacional, IA, funis e navegacao lateral.
   ============================================================ */

/* As paginas principais abaixo passam a seguir o mesmo alinhamento das telas
   operacionais: conteudo nasce proximo a sidebar, sem ficar flutuando no
   centro em monitores largos. */
.rs-main.rs-route-home > .dashboard-page-v2,
.rs-main.rs-route-search > :where(.search-hero, .search-command-card, .search-empty-grid, .search-results-header, .search-results-grid),
.rs-main.rs-route-automations-responde > :where(.page-header, .vs-layout),
.rs-main.rs-route-automations-revisao > :where(.review-hero, .review-workspace-grid, .review-result-grid) {
  width: min(100%, var(--page-wide, 1880px));
  max-width: none;
  margin-inline: 0;
}

.rs-main.rs-route-search > .search-empty-grid,
.rs-main.rs-route-search > .search-results-grid {
  align-self: start;
}

.rs-main.rs-route-automations-revisao > .review-hero,
.rs-main.rs-route-automations-revisao > .review-workspace-grid,
.rs-main.rs-route-automations-revisao > .review-result-grid {
  width: min(100%, var(--page-wide, 1880px));
  max-width: none;
}

.rs-main.rs-route-automations-revisao > .review-workspace-grid {
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, .62fr);
}

/* Inteligencia RS: remove o esticamento vertical que fazia o chat quase tocar
   o limite inferior da pagina em telas altas. */
.rs-main.rs-route-automations-responde > .vs-layout {
  min-height: auto;
  align-items: start;
  padding-bottom: clamp(28px, 3vw, 56px);
}

.rs-main.rs-route-automations-responde .vs-sidebar-card,
.rs-main.rs-route-automations-responde .vs-chat-card {
  align-self: start;
  min-height: clamp(560px, 58vh, 760px);
}

.rs-main.rs-route-automations-responde .vs-chat-scroll {
  min-height: 320px;
}

/* Navegacao lateral: padroniza a escala para que itens longos, como
   "Visao Geral", tenham o mesmo peso visual de "Leads" e demais entradas. */
.rs-nav a,
.nav-links-v2 a {
  font-size: 14px;
  font-weight: 760;
  line-height: 1.2;
}

.rs-nav .nav-label,
.nav-links-v2 .nav-label {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: 0;
}

/* Funis e carteiras: visual menos comprimido, numeros sem sobrepor labels e
   pre-visualizacao do funil em blocos legiveis. */
.crm-pipeline-overview-list {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr));
  gap: clamp(18px, 1.6vw, 28px);
}

.crm-pipeline-overview-card {
  min-height: 0;
  padding: clamp(18px, 1.6vw, 26px);
  gap: clamp(14px, 1.2vw, 20px);
  border-radius: 26px;
}

.crm-pipeline-card-head {
  align-items: flex-start;
  gap: 16px;
}

.crm-pipeline-card-head strong {
  font-size: clamp(1.75rem, 2vw, 2.45rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.crm-pipeline-card-head small {
  max-width: 72ch;
  font-size: .92rem;
  line-height: 1.45;
}

.crm-pipeline-card-actions .compact-chip {
  min-height: 36px;
  padding-inline: 14px;
}

.crm-pipeline-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.crm-pipeline-stat-grid span {
  min-height: 70px;
  align-content: center;
  padding: 12px 14px;
  border-radius: 18px;
}

.crm-pipeline-stat-grid strong {
  font-size: clamp(1.55rem, 1.8vw, 2.35rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.crm-pipeline-stat-grid small {
  margin-top: 2px;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: normal;
}

.crm-pipeline-preview {
  padding: clamp(14px, 1.1vw, 18px);
  background: linear-gradient(180deg, #fbfaf5, #f5f8f6);
}

.crm-pipeline-preview-bars {
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  grid-template-columns: repeat(var(--stage-count, 4), minmax(96px, 1fr));
  align-items: stretch;
  gap: 10px;
}

.crm-pipeline-preview-stage {
  min-height: 74px;
  grid-template-rows: auto auto;
  align-content: space-between;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(17, 31, 25, .08);
  border-radius: 16px;
  background: rgba(255, 255, 255, .86);
}

.crm-pipeline-preview-bar {
  width: 100%;
  min-height: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(15,81,56,.10), rgba(15,81,56,.28));
}

.crm-pipeline-preview-bar strong {
  position: static;
  left: auto;
  top: auto;
  transform: none;
  min-width: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
  color: #10251d;
  font-size: 1.05rem;
  line-height: 1;
}

.crm-pipeline-preview-stage small {
  min-height: 2.4em;
  display: grid;
  place-items: center;
  white-space: normal;
  overflow: hidden;
  text-overflow: initial;
  color: #425249;
  font-size: .74rem;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.crm-pipeline-preview-footer {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.crm-pipeline-preview-footer span {
  min-height: 58px;
  align-content: center;
}

.crm-pipeline-preview-footer strong {
  font-size: 1.25rem;
  line-height: 1;
}

html[data-theme='dark'] .crm-pipeline-preview {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.12);
}

html[data-theme='dark'] .crm-pipeline-preview-stage,
html[data-theme='dark'] .crm-pipeline-preview-footer span {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.11);
}

html[data-theme='dark'] .crm-pipeline-preview-bar strong,
html[data-theme='dark'] .crm-pipeline-preview-stage small {
  color: var(--color-text-strong, #f5f5ea);
}

@media (min-width: 1800px) {
  .crm-pipeline-overview-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1180px) {
  .rs-main.rs-route-automations-revisao > .review-workspace-grid {
    grid-template-columns: 1fr;
  }

  .crm-pipeline-overview-list,
  .crm-pipeline-stat-grid,
  .crm-pipeline-preview-bars,
  .crm-pipeline-preview-footer {
    grid-template-columns: 1fr;
  }

  .crm-pipeline-card-head {
    display: grid;
  }

  .crm-pipeline-card-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .rs-main.rs-route-home > .dashboard-page-v2,
  .rs-main.rs-route-search > :where(.search-hero, .search-command-card, .search-empty-grid, .search-results-header, .search-results-grid),
  .rs-main.rs-route-automations-responde > :where(.page-header, .vs-layout),
  .rs-main.rs-route-automations-revisao > :where(.review-hero, .review-workspace-grid, .review-result-grid) {
    width: 100%;
  }

  .rs-main.rs-route-automations-responde .vs-sidebar-card,
  .rs-main.rs-route-automations-responde .vs-chat-card {
    min-height: auto;
  }
}


/* === Batch refinements: 2026-05-05 === */

/* Topbar do usuario: maior, mais estavel e sem fixacao durante a rolagem. */
.rs-topbar-user-tools {
  position: static;
  top: auto;
  right: auto;
  z-index: auto;
  gap: 0.9rem;
  flex-wrap: nowrap;
}

.rs-page-shell.has-floating-user-tools .rs-main-header {
  padding-right: 0;
}

.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary,
.rs-theme-toggle.theme-toggle-button.compact.icon-only,
.rs-profile-button.compact {
  min-height: 56px;
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(17, 31, 25, 0.07);
}

.rs-topbar-user-tools .rs-user-card.compact.rs-user-summary {
  min-width: 252px;
  padding: 0.45rem 0.92rem 0.45rem 0.48rem;
  gap: 0.82rem;
}

.rs-topbar-user-tools .rs-user-card.compact .avatar {
  width: 52px;
  height: 52px;
  min-width: 52px;
}

.rs-topbar-user-tools .rs-user-meta strong {
  font-size: 0.94rem;
  line-height: 1.1;
}

.rs-topbar-user-tools .rs-user-meta span {
  font-size: 0.76rem;
}

.rs-theme-toggle.theme-toggle-button.compact.icon-only,
.rs-profile-button.compact {
  min-width: 56px;
  padding-inline: 1rem;
}

.rs-theme-toggle.theme-toggle-button.compact.icon-only {
  font-size: 1.18rem;
}

.rs-profile-button.compact {
  font-size: 0.84rem;
  font-weight: 800;
}

.rs-user-menu > summary,
.rs-theme-toggle,
.rs-profile-button {
  transform: none;
}

/* Microtipografia e botoes secundarios */
label,
.form-label,
.field-label,
.settings-form label,
.contact-form-page label,
.record-create-form label,
.assisted-card label,
.crm-filter-field label,
.review-form label {
  line-height: 1.35;
}

label small,
.form-help,
small,
.helper-text,
.muted,
.settings-highlight-card small {
  line-height: 1.45;
}

.eyebrow,
.section-label,
.table-eyebrow,
.card-eyebrow,
.settings-highlight-card .eyebrow,
.contact-card .eyebrow,
.client-card .eyebrow {
  font-size: 0.74rem;
  letter-spacing: 0.1em;
}

.button.secondary,
button.secondary,
.button.ghost,
button.ghost,
.ghost-button,
a.ghost-button {
  background: rgba(15, 81, 56, 0.1);
  color: #0b3f2f;
  border-color: rgba(15, 81, 56, 0.22);
}

.button.secondary:hover,
button.secondary:hover,
.button.ghost:hover,
button.ghost:hover,
.ghost-button:hover,
a.ghost-button:hover {
  background: rgba(15, 81, 56, 0.16);
  border-color: rgba(15, 81, 56, 0.3);
}

/* Tema escuro: corrige superficies claras remanescentes e melhora contraste. */
html[data-theme='dark'] body,
html[data-theme='dark'] .rs-page-shell,
html[data-theme='dark'] .rs-main,
html[data-theme='dark'] .rs-main-header,
html[data-theme='dark'] .page-header,
html[data-theme='dark'] .content-card,
html[data-theme='dark'] .form-card,
html[data-theme='dark'] .assisted-card,
html[data-theme='dark'] .digisac-chat-panel,
html[data-theme='dark'] .assisted-inbox-sidebar,
html[data-theme='dark'] .assisted-contact-drawer,
html[data-theme='dark'] .crm-pipeline-overview-card,
html[data-theme='dark'] .crm-board-hero,
html[data-theme='dark'] .settings-highlight-card,
html[data-theme='dark'] .settings-workspace-panel,
html[data-theme='dark'] .settings-users-list-card,
html[data-theme='dark'] .contact-card,
html[data-theme='dark'] .side-panel,
html[data-theme='dark'] .contact-main-panel,
html[data-theme='dark'] .record-create-form,
html[data-theme='dark'] .record-create-sidebar,
html[data-theme='dark'] .vs-sidebar-card,
html[data-theme='dark'] .vs-chat-card,
html[data-theme='dark'] .review-input-card,
html[data-theme='dark'] .review-history-card,
html[data-theme='dark'] .chat-panel-card,
html[data-theme='dark'] .modal-card,
html[data-theme='dark'] .form-surface.is-modal,
html[data-theme='dark'] .crm-drawer.is-modal {
  background: linear-gradient(180deg, rgba(16, 31, 25, 0.98), rgba(10, 22, 18, 0.98));
  color: #f2efde;
  border-color: rgba(214, 215, 189, 0.12);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.34);
}

html[data-theme='dark'] input,
html[data-theme='dark'] select,
html[data-theme='dark'] textarea,
html[data-theme='dark'] .input,
html[data-theme='dark'] .select,
html[data-theme='dark'] .textarea,
html[data-theme='dark'] .tool-button,
html[data-theme='dark'] .compose-menu,
html[data-theme='dark'] .chat-panel-strip,
html[data-theme='dark'] .quick-reply-panel,
html[data-theme='dark'] .assisted-overview-subnav,
html[data-theme='dark'] .assisted-conversation-card,
html[data-theme='dark'] .kanban-column,
html[data-theme='dark'] .kanban-card,
html[data-theme='dark'] .settings-side-nav,
html[data-theme='dark'] .settings-summary-nav,
html[data-theme='dark'] .settings-user-card {
  background: rgba(13, 29, 23, 0.92);
  color: #f2efde;
  border-color: rgba(214, 215, 189, 0.14);
}

html[data-theme='dark'] .button.secondary,
html[data-theme='dark'] button.secondary,
html[data-theme='dark'] .button.ghost,
html[data-theme='dark'] button.ghost,
html[data-theme='dark'] .ghost-button,
html[data-theme='dark'] a.ghost-button {
  background: rgba(214, 215, 189, 0.1);
  color: #f5f1df;
  border-color: rgba(214, 215, 189, 0.24);
}

html[data-theme='dark'] .button.secondary:hover,
html[data-theme='dark'] button.secondary:hover,
html[data-theme='dark'] .button.ghost:hover,
html[data-theme='dark'] button.ghost:hover,
html[data-theme='dark'] .ghost-button:hover,
html[data-theme='dark'] a.ghost-button:hover {
  background: rgba(214, 215, 189, 0.16);
}

html[data-theme='dark'] .compose-menu button,
html[data-theme='dark'] .chat-panel-strip button,
html[data-theme='dark'] .quick-reply-card,
html[data-theme='dark'] .quick-reply-empty {
  background: rgba(20, 36, 29, 0.96);
  color: #f5f1df;
  border-color: rgba(214, 215, 189, 0.12);
}

/* Funil / Carteiras ativas */
.crm-pipeline-overview-card {
  padding: 20px;
  gap: 16px;
}

.crm-pipeline-card-head strong {
  font-size: clamp(1.9rem, 2vw, 2.7rem);
  line-height: 0.98;
}

.crm-pipeline-card-head small,
.crm-pipeline-card-head p {
  font-size: 1rem;
  line-height: 1.45;
}

.crm-pipeline-card-actions .button,
.crm-pipeline-card-actions button,
.crm-pipeline-card-actions a {
  min-height: 38px;
  padding-inline: 1rem;
}

.crm-pipeline-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.crm-pipeline-stat {
  min-height: 92px;
  padding: 14px 14px 12px;
}

.crm-pipeline-stat strong {
  font-size: clamp(2rem, 2.4vw, 2.6rem);
  line-height: 1;
}

.crm-pipeline-stat small {
  font-size: 0.78rem;
  line-height: 1.2;
}

.crm-pipeline-preview {
  padding: 12px;
}

.crm-pipeline-preview-bars {
  gap: 10px;
}

.crm-pipeline-preview-stage {
  min-height: 76px;
  padding: 12px 8px;
  align-content: start;
}

.crm-pipeline-preview-bar {
  min-height: 24px;
}

.crm-pipeline-preview-bar strong {
  font-size: 0.92rem;
  line-height: 1;
}

.crm-pipeline-preview-stage small {
  font-size: 0.68rem;
  letter-spacing: 0.04em;
  line-height: 1.2;
  min-height: 2.35em;
  display: block;
  overflow-wrap: anywhere;
}

.crm-pipeline-preview-footer {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.crm-pipeline-preview-footer article {
  min-height: 76px;
}

.crm-pipeline-preview-footer strong {
  font-size: clamp(1.7rem, 2vw, 2.35rem);
}

/* Modais centrais maiores */
.crm-drawer#crm-lead-drawer.is-modal.is-open,
.crm-drawer.contact-quick-drawer.is-modal.is-open,
.form-surface.is-modal.is-open,
#contactQuickDrawer.is-open,
#financeClientDrawer.is-open {
  width: min(920px, calc(100vw - 40px));
  max-height: min(90vh, 860px);
}

.quick-action-modal {
  width: min(920px, calc(100vw - 40px));
}

.quick-action-modal .modal-card,
.form-surface.is-modal.is-open .modal-card,
.crm-drawer.is-modal.is-open .drawer-panel {
  padding: 22px;
}

.quick-action-modal .form-grid.two,
.quick-action-modal .form-grid,
.crm-drawer.is-modal.is-open .form-grid,
.form-surface.is-modal.is-open .form-grid {
  gap: 14px;
}

/* Novo cliente / contato completo */
.contact-form-page {
  width: min(100%, 1680px);
}

.contact-form-page #contactForm.contact-card-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(330px, 0.78fr);
  gap: 24px;
}

.contact-form-page .contact-main-panel,
.contact-form-page .side-panel {
  padding: 20px;
}

.contact-form-page .contact-primary-grid,
.contact-form-page .contact-address-grid,
.contact-form-page .grid.two,
.contact-form-page .grid.three,
.contact-form-page .grid.four {
  gap: 14px;
}

.contact-form-page .page-header h1,
.contact-form-page .contact-hero-title {
  font-size: clamp(2.35rem, 3vw, 3.55rem);
}

.contact-form-page .side-panel {
  position: sticky;
  top: 18px;
}

.contact-form-page .side-panel .tag-cloud,
.contact-form-page .side-panel .pill-stack {
  gap: 8px;
}

.contact-form-page input,
.contact-form-page select,
.contact-form-page textarea {
  min-height: 44px;
}

/* Configuracoes: cards de destaque e usuarios cadastrados maiores */
.settings-highlight-grid {
  grid-template-columns: repeat(3, minmax(170px, 220px));
  gap: 14px;
  align-items: stretch;
}

.settings-highlight-card {
  min-height: 144px;
  padding: 18px 18px 16px;
}

.settings-highlight-card strong {
  font-size: clamp(2rem, 2.5vw, 2.7rem);
  line-height: 1;
}

.settings-highlight-card small {
  font-size: 0.88rem;
}

.settings-users-grid-refined {
  grid-template-columns: minmax(230px, 286px) minmax(0, 1fr) minmax(300px, 380px);
  gap: 20px;
}

.settings-users-list-card {
  min-height: 100%;
  padding: 16px;
}

.user-directory-grid {
  gap: 16px;
}

.user-directory-card,
.settings-user-card {
  padding: 14px;
}

.user-directory-card .avatar,
.settings-user-card .avatar {
  width: 52px;
  height: 52px;
}

/* Kanban: descoberta de rolagem horizontal */
.crm-full-board-shell,
.kanban-board,
.assisted-kanban-board,
.board-scroll-area {
  position: relative;
  overflow-x: auto;
  padding-bottom: 12px;
  scrollbar-width: thin;
  scrollbar-color: rgba(15, 81, 56, 0.48) rgba(15, 81, 56, 0.08);
}

.crm-full-board-shell::after,
.kanban-board::after,
.assisted-kanban-board::after,
.board-scroll-area::after {
  content: none;
  position: sticky;
  right: 0;
  float: right;
  margin-top: -2px;
  margin-right: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(15, 81, 56, 0.1);
  color: #0b3f2f;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  z-index: 2;
}

.crm-full-board-shell::-webkit-scrollbar,
.kanban-board::-webkit-scrollbar,
.assisted-kanban-board::-webkit-scrollbar,
.board-scroll-area::-webkit-scrollbar {
  height: 12px;
}

.crm-full-board-shell::-webkit-scrollbar-thumb,
.kanban-board::-webkit-scrollbar-thumb,
.assisted-kanban-board::-webkit-scrollbar-thumb,
.board-scroll-area::-webkit-scrollbar-thumb {
  background: rgba(15, 81, 56, 0.4);
  border-radius: 999px;
}

/* Inbox / Atendimento ocupando o maximo da area */
.assisted-inbox-layout {
  grid-template-columns: minmax(290px, 330px) minmax(0, 1fr);
  align-items: stretch;
  min-height: clamp(760px, 80vh, 980px);
}

.assisted-inbox-sidebar,
.digisac-chat-panel {
  min-height: clamp(760px, 80vh, 980px);
}

.digisac-chat-panel {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.chat-messages {
  min-height: 0;
  padding: 22px;
}

.assisted-chat-empty {
  min-height: clamp(680px, 72vh, 900px);
}

.assisted-chat-empty div {
  display: grid;
  gap: 12px;
  justify-items: center;
}

.assisted-chat-empty p {
  max-width: 360px;
  margin: 0;
  font-size: 0.98rem;
  color: var(--muted, #66766f);
}

.compose-tools {
  gap: 8px;
  flex-wrap: wrap;
}

.tool-button.icon-tool,
.compose-tools details > summary.tool-button.icon-tool,
[data-emoji-toggle],
[data-sticker-toggle],
[data-quick-reply-toggle],
[data-internal-comment-toggle] {
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  font-size: 1rem;
}

.compose-tools details > summary.tool-button.icon-tool {
  list-style: none;
}
.compose-tools details > summary.tool-button.icon-tool::-webkit-details-marker { display: none; }

.chat-compose textarea {
  min-height: 52px;
}

/* Visao Geral x Metricas: seletor mais claro */
.assisted-overview-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px;
  border-radius: 16px;
}

.assisted-overview-subnav .tab,
.assisted-overview-subnav a,
.assisted-overview-subnav button {
  min-height: 40px;
  padding: 0.55rem 0.9rem;
  border-radius: 12px;
  font-size: 0.84rem;
  font-weight: 760;
}

.assisted-overview-subnav .is-active,
.assisted-overview-subnav [aria-current='page'],
.assisted-overview-subnav .active {
  box-shadow: inset 0 0 0 1px rgba(15, 81, 56, 0.18), 0 10px 18px rgba(15, 81, 56, 0.12);
}

/* Inteligencia RS: chat maior sem tocar a parte inferior */
.rs-main.rs-route-automations-responde > .vs-layout {
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  min-height: auto;
  align-items: start;
  padding-bottom: clamp(36px, 4vw, 68px);
}

.rs-main.rs-route-automations-responde .vs-sidebar-card,
.rs-main.rs-route-automations-responde .vs-chat-card {
  min-height: clamp(660px, 72vh, 880px);
}

.rs-main.rs-route-automations-responde .vs-chat-scroll {
  min-height: 420px;
  max-height: clamp(500px, 58vh, 700px);
}

/* Responsividade */
@media (min-width: 1181px) {
  .rs-topbar-user-tools {
    position: static;
  }
}

@media (max-width: 1280px) {
  .settings-users-grid-refined,
  .contact-form-page #contactForm.contact-card-grid,
  .assisted-inbox-layout,
  .rs-main.rs-route-automations-responde > .vs-layout {
    grid-template-columns: 1fr;
  }

  .contact-form-page .side-panel {
    position: static;
  }
}

@media (max-width: 980px) {
  .crm-pipeline-stat-grid,
  .crm-pipeline-preview-bars,
  .crm-pipeline-preview-footer,
  .settings-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .crm-full-board-shell::after,
  .kanban-board::after,
  .assisted-kanban-board::after,
  .board-scroll-area::after {
    position: static;
    display: inline-flex;
    margin: 0 0 8px auto;
  }
}

@media (max-width: 760px) {
  .settings-highlight-grid,
  .crm-pipeline-stat-grid,
  .crm-pipeline-preview-bars,
  .crm-pipeline-preview-footer {
    grid-template-columns: 1fr;
  }

  .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary {
    min-width: 0;
    width: auto;
  }
}

/* Tabs do Atendimento: Visao Geral x Metricas e demais secoes */
.assisted-tabs.assisted-management-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(17, 31, 25, 0.08);
}

.assisted-tabs.assisted-management-tabs .assisted-tab {
  min-height: 40px;
  padding: 0.55rem 0.9rem;
  border-radius: 12px;
  border: 1px solid transparent;
  font-size: 0.84rem;
  font-weight: 760;
  letter-spacing: 0.01em;
}

.assisted-tabs.assisted-management-tabs .assisted-tab.active,
.assisted-tabs.assisted-management-tabs .assisted-tab[aria-current='page'] {
  background: rgba(15, 81, 56, 0.12);
  border-color: rgba(15, 81, 56, 0.18);
  box-shadow: 0 10px 18px rgba(15, 81, 56, 0.12);
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs {
  background: rgba(16, 31, 25, 0.94);
  border-color: rgba(214, 215, 189, 0.12);
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab.active,
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab[aria-current='page'] {
  background: rgba(214, 215, 189, 0.14);
  border-color: rgba(214, 215, 189, 0.22);
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.22);
}


/* === Projeto CIRS: ajustes finais de usabilidade 04.05.2026 === */
:where(.page-header,.crm-page-header,.settings-page-header,.dashboard-command-hero,.assisted-hero,.labor-hero,.crm-hero,.nfse-hero,.contracts-page-header,.process-page-header,.reports-hero) {
  padding-right: clamp(14rem, 19vw, 18rem);
}
.settings-page-intro,
.settings-page-header,
.assisted-hero,
.crm-page-header,
.page-header {
  scroll-margin-top: 7rem;
}
.settings-search-box-hero {
  min-height: 4rem;
  border-radius: 1.15rem;
  padding: 0.6rem 0.95rem;
  gap: 0.75rem;
  box-shadow: 0 14px 32px rgba(17,31,25,.06);
}
.settings-search-box-hero span {
  width: 2.4rem;
  height: 2.4rem;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(15,63,45,.08);
  font-size: 1rem;
}
.settings-search-box-hero input { font-size: .98rem; }
.settings-refactor-shell .settings-console-summary-row {
  align-items: stretch;
}
.settings-refactor-shell .settings-hero-highlights {
  min-width: 0;
}

/* Atendimento */
.as-page-shell {
  grid-template-columns: minmax(370px, 430px) minmax(0, 1fr);
  min-height: calc(100vh - 15.5rem);
}
.as-page-shell.has-drawer {
  grid-template-columns: minmax(360px, 410px) minmax(0, 1fr) minmax(320px, 360px);
}
.as-inbox-panel,
.as-conversation-panel,
.as-contact-drawer {
  min-height: calc(100vh - 15.5rem);
}
.as-contact-drawer {
  padding: 1rem;
  display: grid;
  align-content: start;
  gap: .85rem;
  border-left: 1px solid rgba(17,31,25,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,248,244,.96));
}
.as-drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .75rem;
}
.as-drawer-profile { display:flex; gap:.85rem; align-items:flex-start; }
.as-contact-avatar.large { width: 54px; height: 54px; font-size: 1rem; }
.as-drawer-header-pills { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:.4rem; }
.as-drawer-section { gap:.65rem; }
.as-drawer-section-head { display:grid; gap:.15rem; }
.as-contact-quick-grid {
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .65rem;
}
.as-contact-quick-grid article {
  display:grid;
  gap:.2rem;
  padding:.75rem;
  border-radius: 14px;
  background: rgba(17,31,25,.035);
}
.as-contact-quick-grid span { font-size: .72rem; color: rgba(17,31,25,.65); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.as-contact-quick-grid strong { font-size: .94rem; }
.as-conversation-list { gap: .8rem; }
.as-conversation-card {
  min-height: 104px;
  padding: .95rem 1rem;
  border-radius: 20px;
}
.as-conversation-card .meta {
  gap: .3rem;
}
.as-message-composer .tool-button { font-size: 1.05rem; }
.as-message-list { padding-right: 1rem; }
.as-conversation-panel .messages { min-height: 0; }

/* Núcleos e assuntos */
.settings-nuclei-split-layout {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
}
.settings-nuclei-secondary-layout {
  margin-top: 1rem;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
}
.settings-mini-stats {
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: .75rem;
  margin: .8rem 0 1rem;
}
.settings-mini-stats article {
  padding: .9rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(17,31,25,.08);
  background: rgba(17,31,25,.03);
  display:grid;
  gap:.2rem;
}
.settings-mini-stats span { font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: rgba(17,31,25,.62); font-weight: 700; }
.settings-mini-stats strong { font-size: 1.3rem; }
.linked-template-list { align-items: flex-start; }
.linked-template-chip-form { display:inline-flex; }
.linked-template-chip-form .chip { cursor:pointer; border:1px solid rgba(17,31,25,.12); }
.linked-template-chip-form .chip.is-active { background: rgba(15,63,45,.12); color: #0f3f2d; }

/* Processos */
.settings-process-grid {
  display:grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .9fr);
  gap: 1rem;
}
.settings-process-side-stack {
  display:grid;
  gap:1rem;
  align-content:start;
}
.settings-process-toolbar {
  display:flex;
  justify-content:flex-start;
  margin-bottom: .9rem;
}
.process-filter-field { min-width: 240px; }
.settings-process-create-form,
.settings-process-inline-edit {
  margin-bottom: .95rem;
}
.settings-process-list {
  display:grid;
  gap: .8rem;
}
.settings-process-list.compact { gap: .65rem; }
.settings-process-item {
  border: 1px solid rgba(17,31,25,.08);
  border-radius: 18px;
  background: rgba(255,255,255,.88);
  overflow: hidden;
}
.settings-process-item > summary {
  list-style: none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding: 1rem 1.05rem;
  cursor:pointer;
}
.settings-process-item > summary::-webkit-details-marker { display:none; }
.settings-process-item > summary small { display:block; margin-top:.2rem; color: rgba(17,31,25,.62); }
.settings-process-summary-meta { display:flex; gap:.45rem; flex-wrap:wrap; }
.settings-process-item form { padding: 0 1rem 1rem; }
.settings-process-item.compact form { padding-top: .2rem; }
.settings-process-mini-form {
  display:flex;
  gap:.55rem;
  margin-bottom:.8rem;
}
.settings-process-mini-form input { flex:1; }

/* Tribunais */
.settings-tribunal-list details {
  border-radius: 22px;
  border: 1px solid rgba(17,31,25,.08);
  background: rgba(255,255,255,.92);
  overflow: hidden;
}
.settings-tribunal-list summary {
  padding: 1rem 1.05rem;
  background: linear-gradient(180deg, rgba(17,31,25,.03), rgba(17,31,25,.015));
}
.settings-tribunal-list details[open] summary {
  border-bottom: 1px solid rgba(17,31,25,.08);
}
.settings-tribunal-list details form {
  padding: 1rem 1.05rem 1.1rem;
}

/* Fiscal + Integracoes */
.settings-fiscal-layout,
.settings-integration-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.settings-integration-layout .panel-card {
  align-self: start;
  position: relative;
}
.settings-integration-layout .panel-card:nth-child(1) { grid-column: span 2; }

/* CRM / funis */
.crm-board-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
}
.crm-board-search { flex: 1 1 340px; }
.crm-board-tools { display:flex; flex-wrap:wrap; gap:.55rem; }
.crm-full-board-shell { overflow-x: auto; padding-bottom: .5rem; }
.crm-full-board {
  align-items: stretch;
  min-width: max-content;
  gap: 1rem;
}
.crm-full-column {
  min-width: 312px;
  max-width: 312px;
}
.crm-full-column-drop { min-height: 28rem; }
.crm-full-opportunity-card { min-height: 148px; }
.crm-empty-column { min-height: 78px; display:grid; place-items:center; }

@media (max-width: 1180px) {
  :where(.page-header,.crm-page-header,.settings-page-header,.dashboard-command-hero,.assisted-hero,.labor-hero,.crm-hero,.nfse-hero,.contracts-page-header,.process-page-header,.reports-hero) { padding-right: 1.5rem; }
  .as-page-shell,
  .as-page-shell.has-drawer,
  .settings-process-grid,
  .settings-nuclei-split-layout,
  .settings-nuclei-secondary-layout,
  .settings-fiscal-layout,
  .settings-integration-layout { grid-template-columns: 1fr; }
  .settings-integration-layout .panel-card:nth-child(1) { grid-column: auto; }
}
@media (max-width: 920px) {
  .as-contact-quick-grid { grid-template-columns: 1fr; }
  .as-page-shell,
  .as-page-shell.has-drawer { grid-template-columns: 1fr; }
  .as-contact-drawer { border-left: 0; border-top: 1px solid rgba(17,31,25,.08); }
  .crm-full-column { min-width: 280px; max-width: 280px; }
}


/* Ajustes complementares do atendimento baseado no layout atual */
.assisted-digisac-shell {
  grid-template-columns: clamp(340px, 26vw, 430px) minmax(0, 1fr);
  min-height: clamp(760px, calc(100vh - 180px), 1040px);
}
.conversation-list {
  gap: 12px;
  max-height: none;
}
.conversation-item {
  min-height: 104px;
  padding: 14px 14px 14px 12px;
  border-radius: 20px;
}
.conversation-avatar { width: 48px; height: 48px; font-size: 1rem; }
.assisted-contact-drawer {
  width: min(460px, calc(100vw - 24px));
  background: linear-gradient(180deg, #fffdf7 0%, #f7f6f1 100%);
}
.assisted-contact-drawer-head {
  padding: 22px 20px 18px;
}
.assisted-contact-drawer-body {
  padding: 18px 18px 24px;
  gap: 16px;
}
.drawer-info-grid article,
.drawer-section {
  border-radius: 20px;
  padding: 14px;
  box-shadow: 0 8px 22px rgba(17,31,25,.04);
}
.drawer-info-grid article strong,
.drawer-section strong,
.drawer-section p {
  word-break: break-word;
}
.chat-messages {
  padding-inline: clamp(24px, 4vw, 64px);
}
.chat-bubble,
.chat-bubble.incoming,
.chat-bubble.outgoing,
.chat-bubble.internal {
  max-width: min(920px, 86%);
}
@media (min-width: 1320px) {
  .assisted-digisac-shell.has-drawer {
    grid-template-columns: clamp(330px, 24vw, 410px) minmax(0, 1fr);
  }
}

/* === Ajustes solicitados 04/05: atendimento, cadastros e configuracoes === */
.assisted-page {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding: clamp(12px, 1.25vw, 22px);
}

.assisted-workbench.assisted-digisac-shell {
  width: 100%;
  max-width: none;
  grid-template-columns: clamp(320px, 24vw, 420px) minmax(0, 1fr);
  min-height: clamp(760px, calc(100vh - 168px), 1040px);
}

.assisted-conversation-sidebar,
.digisac-chat-panel {
  min-height: clamp(760px, calc(100vh - 168px), 1040px);
}

.digisac-chat-panel .chat-messages {
  min-height: 0;
  padding-inline: clamp(24px, 4vw, 72px);
}

.digisac-chat-panel .chat-bubble,
.digisac-chat-panel .chat-bubble.incoming,
.digisac-chat-panel .chat-bubble.outgoing,
.digisac-chat-panel .chat-bubble.internal {
  max-width: min(920px, 78%);
}

.form-surface.is-drawer,
.crm-drawer.contact-quick-drawer.is-drawer,
.crm-drawer#crm-lead-drawer.is-drawer {
  inset: 0 0 0 auto;
}

.form-surface.is-drawer.is-open,
.crm-drawer.contact-quick-drawer.is-drawer.is-open,
.crm-drawer#crm-lead-drawer.is-drawer.is-open {
  display: block;
}

.form-surface.is-drawer .form-surface-panel,
.crm-drawer.contact-quick-drawer.is-drawer .crm-drawer-panel,
.crm-drawer#crm-lead-drawer.is-drawer .crm-drawer-panel {
  width: clamp(440px, 38vw, 620px);
  max-width: calc(100vw - 18px);
  max-height: calc(100vh - 18px);
  margin: 9px 9px 9px auto;
  border-radius: 24px 0 0 24px;
}

.contact-form-page {
  width: min(100%, 1580px);
}

.contact-form-page .contact-form-header,
.contact-form-page #contactForm {
  max-width: 1580px;
}

.contact-form-page #contactForm.contact-card-grid {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
  align-items: start;
  gap: 20px;
}

.contact-form-page #contactForm.contact-card-grid > .panel-card:first-of-type {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
}

.contact-form-page #contactForm.contact-card-grid > .side-panel {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: start;
}

.contact-form-page #contactForm.contact-card-grid > .panel-card.full-width {
  grid-column: 1;
  grid-row: 2;
}

.contact-form-page .contact-person-switch {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  gap: 4px;
  padding: 5px;
  border-radius: 999px;
  border: 1px solid rgba(17, 31, 25, .12);
  background: rgba(17, 31, 25, .055);
  box-shadow: inset 0 1px 2px rgba(17, 31, 25, .06);
}

.contact-form-page .contact-person-switch .contact-radio {
  min-width: 150px;
}

.contact-form-page .contact-person-switch .contact-radio span {
  min-height: 36px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
  color: #20352b;
  font-weight: 850;
}

.contact-form-page .contact-person-switch .contact-radio input:checked + span {
  background: #0a3a2a;
  color: #fffdf5;
  box-shadow: 0 8px 18px rgba(10, 58, 42, .22);
}

.contact-form-page .contact-advanced-field > summary,
.crm-lead-tags-disclosure > summary {
  font-size: .98rem;
  font-weight: 900;
}

.settings-picker-card {
  margin-bottom: 16px;
}

.settings-picker-card .nucleus-select-form {
  margin-top: 10px;
}

.settings-single-workspace,
.settings-process-grid-single {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}

.settings-links-layout {
  grid-template-columns: minmax(320px, .95fr) minmax(0, 1.05fr);
  gap: 1rem;
  align-items: start;
}

.settings-links-template-card {
  grid-column: 1 / -1;
}

.settings-mini-stats-large {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-quick-links-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.settings-checkbox-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
  max-height: 320px;
  overflow: auto;
  padding: 6px;
  border-radius: 18px;
  border: 1px solid rgba(17, 31, 25, .1);
  background: rgba(17, 31, 25, .025);
}

.settings-checkbox-card {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: rgba(255, 255, 255, .86);
  cursor: pointer;
}

.settings-checkbox-card input {
  width: 18px;
  height: 18px;
  accent-color: #0a3a2a;
}

.settings-checkbox-card span {
  display: grid;
  gap: 2px;
}

.settings-checkbox-card strong {
  font-size: .9rem;
}

.settings-checkbox-card small {
  color: var(--muted, #66736a);
  font-size: .76rem;
}

.settings-process-grid-single .settings-process-card,
.settings-single-workspace .panel-card {
  width: 100%;
}

@media (max-width: 1280px) {
  .assisted-workbench.assisted-digisac-shell,
  .contact-form-page #contactForm.contact-card-grid,
  .settings-links-layout {
    grid-template-columns: 1fr;
  }

  .contact-form-page #contactForm.contact-card-grid > .panel-card:first-of-type,
  .contact-form-page #contactForm.contact-card-grid > .side-panel,
  .contact-form-page #contactForm.contact-card-grid > .panel-card.full-width {
    grid-column: 1;
    grid-row: auto;
  }

  .contact-form-page #contactForm.contact-card-grid > .side-panel {
    position: static;
  }
}

@media (max-width: 760px) {
  .form-surface.is-drawer .form-surface-panel,
  .crm-drawer.contact-quick-drawer.is-drawer .crm-drawer-panel,
  .crm-drawer#crm-lead-drawer.is-drawer .crm-drawer-panel {
    width: calc(100vw - 12px);
    max-width: calc(100vw - 12px);
    margin: 6px;
    border-radius: 22px;
  }

  .contact-form-page .contact-person-switch {
    display: grid;
    width: 100%;
  }

  .contact-form-page .contact-person-switch .contact-radio {
    min-width: 0;
  }
}

/* === Homologation pass 04/05: compact CRM cards, desktop density and safe disabled actions === */
.crm-pipeline-overview-list {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: clamp(12px, 1vw, 18px);
  align-items: stretch;
}

.crm-pipeline-overview-card {
  display: grid;
  grid-template-rows: auto auto minmax(112px, auto) auto;
  gap: 12px;
  min-height: 0;
  padding: clamp(14px, 1vw, 18px);
}

.crm-pipeline-overview-card.is-empty {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,248,.94));
}

.crm-pipeline-card-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.crm-pipeline-card-head strong {
  font-size: 1rem;
  line-height: 1.2;
}

.crm-pipeline-card-head small {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.crm-pipeline-card-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.crm-pipeline-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
  gap: 8px;
}

.crm-pipeline-stat-grid span {
  min-height: 58px;
  padding: 9px 10px;
  border-radius: 14px;
}

.crm-pipeline-preview {
  padding: 10px;
  border-radius: 16px;
  min-height: 110px;
}

.crm-pipeline-preview-bars {
  min-height: 82px;
  align-items: end;
}

.crm-pipeline-preview-stage.is-zero .crm-pipeline-preview-bar {
  opacity: .28;
  background: rgba(17,31,25,.09);
}

.crm-pipeline-empty-note {
  margin: 0;
  color: var(--muted, #647067);
  font-size: .82rem;
  font-weight: 700;
}

.ghost-button.is-disabled,
.compact-chip.is-disabled {
  opacity: .58;
  cursor: not-allowed;
  pointer-events: none;
  background: rgba(17,31,25,.04);
}

.assisted-workbench.assisted-digisac-shell {
  grid-template-columns: clamp(300px, 23vw, 400px) minmax(0, 1fr);
}

.digisac-chat-panel .chat-messages {
  padding-inline: clamp(18px, 3vw, 56px);
}

.digisac-chat-panel .chat-bubble {
  word-break: break-word;
  overflow-wrap: anywhere;
}

.contact-form-page #contactForm.contact-card-grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
}

.contact-form-page #contactForm.contact-card-grid > .panel-card,
.contact-form-page #contactForm.contact-card-grid > .side-panel {
  min-width: 0;
}

.contact-form-page .contact-person-switch {
  max-width: max-content;
}

.contact-form-page .tag-picker-grid {
  max-height: 190px;
  align-content: start;
}

.settings-checkbox-list {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  max-height: min(420px, 55vh);
}

.settings-checkbox-card {
  min-width: 0;
}

.settings-checkbox-card span,
.settings-checkbox-card strong,
.settings-checkbox-card small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 1440px) {
  .crm-pipeline-overview-list {
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  }

  .contact-form-page {
    width: min(100%, 1660px);
  }
}

@media (max-width: 980px) {
  .crm-pipeline-card-head {
    grid-template-columns: 1fr;
  }

  .crm-pipeline-card-actions {
    justify-content: flex-start;
  }
}

/* === Homologation follow-up 04/05: perfil seguro e funis em lista demonstrativa === */
.rs-main .crm-page-header.crm-funnel-overview-hero {
  min-height: 0;
  align-items: flex-start;
  padding: clamp(20px, 2vw, 30px);
  padding-right: clamp(20px, 2vw, 30px);
  gap: clamp(14px, 2vw, 28px);
}

.rs-main .crm-page-header.crm-funnel-overview-hero h1 {
  max-width: none;
  margin-block: .25rem .35rem;
  font-size: clamp(2.15rem, 3vw, 3.45rem);
}

.rs-main .crm-page-header.crm-funnel-overview-hero p {
  max-width: 78ch;
  line-height: 1.45;
}

.crm-funnel-overview-hero .crm-hero-chips {
  margin-top: 12px;
}

.crm-pipeline-overview {
  padding: clamp(18px, 1.8vw, 28px);
}

.crm-pipeline-overview .section-heading {
  align-items: end;
  gap: 12px;
  margin-bottom: 14px;
}

.crm-pipeline-overview-list {
  grid-template-columns: 1fr;
  gap: 14px;
  align-items: stretch;
}

.crm-pipeline-overview-card {
  grid-template-columns: minmax(280px, .82fr) minmax(360px, 1.18fr);
  grid-template-rows: auto auto auto;
  column-gap: clamp(16px, 2vw, 28px);
  row-gap: 12px;
  padding: clamp(16px, 1.45vw, 24px);
  border-radius: 24px;
}

.crm-pipeline-overview-card .crm-pipeline-card-head {
  grid-column: 1;
  grid-template-columns: minmax(0, 1fr);
}

.crm-pipeline-overview-card .crm-pipeline-card-head strong {
  font-size: clamp(1.55rem, 2vw, 2.25rem);
  line-height: 1.02;
  letter-spacing: -.045em;
}

.crm-pipeline-overview-card .crm-pipeline-card-head small {
  -webkit-line-clamp: 3;
  line-height: 1.35;
}

.crm-pipeline-overview-card .crm-pipeline-card-actions {
  justify-content: flex-start;
  margin-top: 4px;
}

.crm-pipeline-overview-card .crm-pipeline-stat-grid {
  grid-column: 1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.crm-pipeline-overview-card .crm-pipeline-stat-grid span {
  min-height: 54px;
}

.crm-pipeline-overview-card .crm-pipeline-preview {
  grid-column: 2;
  grid-row: 1 / span 3;
  min-height: 0;
  padding: 14px;
  border: 1px solid rgba(17,31,25,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(247,249,247,.92));
}

.crm-pipeline-overview-card .crm-pipeline-stage-preview-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(142px, 1fr));
  gap: 8px;
  align-content: start;
}

.crm-pipeline-overview-card .crm-pipeline-stage-chip {
  min-height: 46px;
  border-radius: 14px;
  padding: 8px 10px;
  justify-content: flex-start;
  white-space: normal;
}

.crm-pipeline-overview-card .crm-pipeline-stage-chip span {
  min-width: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-height: 1.12;
}

.crm-pipeline-overview-card .crm-pipeline-stage-chip.has-cards {
  background: rgba(15,81,56,.09);
  border-color: rgba(15,81,56,.22);
}

.crm-pipeline-overview-card .crm-pipeline-empty-note {
  margin-top: 10px;
}

.crm-pipeline-overview-card .crm-pipeline-nuclei {
  grid-column: 1 / -1;
}

@media (min-width: 1440px) {
  .crm-pipeline-overview-list {
    grid-template-columns: 1fr;
  }

  .crm-pipeline-overview-card .crm-pipeline-stage-preview-list {
    grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  }
}

@media (max-width: 1120px) {
  .crm-pipeline-overview-card {
    grid-template-columns: 1fr;
  }

  .crm-pipeline-overview-card .crm-pipeline-preview,
  .crm-pipeline-overview-card .crm-pipeline-nuclei {
    grid-column: 1;
    grid-row: auto;
  }
}

@media (max-width: 760px) {
  .rs-main .crm-page-header.crm-funnel-overview-hero {
    display: grid;
  }

  .crm-funnel-overview-hero .hero-actions,
  .crm-funnel-overview-hero .crm-hero-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .crm-pipeline-overview-card .crm-pipeline-stat-grid,
  .crm-pipeline-overview-card .crm-pipeline-stage-preview-list {
    grid-template-columns: 1fr;
  }
}


/* Follow-up homologacao: permissoes, Atendimento dark mode e credenciais Z-API. */
.permissions-fieldset {
  border: 1px solid rgba(15, 81, 56, .14);
  border-radius: 22px;
  padding: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(247,245,237,.72));
}
.permissions-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin: 12px 0 14px;
  padding: 10px 12px;
  border: 1px solid rgba(15, 81, 56, .14);
  border-radius: 16px;
  background: rgba(15, 81, 56, .06);
}
.permission-bulk-toggle {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  font-weight: 900;
  color: #0f3327;
}
.permission-bulk-toggle input,
.permissions-grid input[type='checkbox'],
.premium-permissions-grid input[type='checkbox'] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  accent-color: #0f5138;
}
.permissions-count {
  color: #607068;
  font-size: .82rem;
  font-weight: 800;
}
.permissions-grid,
.premium-permissions-grid {
  gap: 10px 12px;
}
.permissions-grid .checkbox-inline,
.permissions-grid .permission-card,
.premium-permissions-grid .permission-card {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid rgba(15, 81, 56, .12);
  border-radius: 15px;
  background: rgba(255,255,255,.76);
  color: #10251d;
  font-weight: 850;
  line-height: 1.2;
}
.permissions-grid .checkbox-inline:hover,
.permissions-grid .permission-card:hover,
.premium-permissions-grid .permission-card:hover {
  background: #fff;
  border-color: rgba(15, 81, 56, .28);
}

.connection-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.connection-form-grid .connection-name-field {
  grid-column: 1 / -1;
  max-width: 520px;
}
.connection-credentials-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(15, 81, 56, .12);
  border-radius: 18px;
  background: rgba(15, 81, 56, .04);
}
.connection-credentials-row label,
.connection-form-grid > label {
  min-width: 0;
}
.connection-credentials-row input,
.connection-form-grid input,
.connection-form-grid select {
  min-height: 46px;
}
.whatsapp-toggle-grid {
  grid-template-columns: repeat(3, minmax(210px, 1fr));
  gap: 12px;
}
.whatsapp-toggle-grid .pill-toggle {
  min-height: 54px;
  padding: 11px 13px;
}
.whatsapp-toggle-grid .pill-toggle input[type='checkbox'] {
  order: 2;
  margin-left: auto;
}
.whatsapp-toggle-grid .pill-toggle span {
  order: 1;
  line-height: 1.25;
}

html[data-theme='dark'] .permissions-fieldset {
  background: linear-gradient(135deg, rgba(16,31,25,.96), rgba(22,42,34,.88));
  border-color: rgba(214, 215, 189, .18);
}
html[data-theme='dark'] .permissions-toolbar,
html[data-theme='dark'] .permissions-grid .checkbox-inline,
html[data-theme='dark'] .permissions-grid .permission-card,
html[data-theme='dark'] .premium-permissions-grid .permission-card {
  background: rgba(246,243,233,.08);
  color: #f8f4e8;
  border-color: rgba(214, 215, 189, .16);
}
html[data-theme='dark'] .permission-bulk-toggle,
html[data-theme='dark'] .permissions-count {
  color: #f8f4e8;
}

html[data-theme='dark'] .assisted-page {
  color: #f8f4e8;
}
html[data-theme='dark'] .assisted-hero {
  background: linear-gradient(135deg, rgba(246,243,233,.96), rgba(220,230,222,.92));
  color: #10251d;
  border-color: rgba(214,215,189,.30);
}
html[data-theme='dark'] .assisted-hero h1,
html[data-theme='dark'] .assisted-hero p,
html[data-theme='dark'] .assisted-hero .eyebrow {
  color: #10251d;
}
html[data-theme='dark'] .assisted-tabs,
html[data-theme='dark'] .assisted-filter-form.compact,
html[data-theme='dark'] .assisted-filter-form.kanban-filter {
  background: rgba(15,35,27,.92);
  border-color: rgba(214,215,189,.16);
}
html[data-theme='dark'] .assisted-metric,
html[data-theme='dark'] .metric-card,
html[data-theme='dark'] .assisted-card,
html[data-theme='dark'] .assisted-kanban-column {
  background: rgba(20, 39, 31, .96);
  color: #f8f4e8;
  border-color: rgba(214,215,189,.16);
}
html[data-theme='dark'] .assisted-kanban-card,
html[data-theme='dark'] .conversation-item,
html[data-theme='dark'] .chat-bubble.incoming,
html[data-theme='dark'] .assisted-chat-empty > div,
html[data-theme='dark'] .connection-card,
html[data-theme='dark'] .chat-header,
html[data-theme='dark'] .chat-compose,
html[data-theme='dark'] .chat-panel-strip,
html[data-theme='dark'] .quick-reply-panel,
html[data-theme='dark'] .chat-panel-card {
  background: rgba(248,246,238,.96);
  color: #10251d;
  border-color: rgba(15,81,56,.16);
}
html[data-theme='dark'] .assisted-kanban-card p,
html[data-theme='dark'] .assisted-kanban-card small,
html[data-theme='dark'] .assisted-kanban-card footer,
html[data-theme='dark'] .conversation-main small,
html[data-theme='dark'] .conversation-main em,
html[data-theme='dark'] .conversation-meta small,
html[data-theme='dark'] .chat-contact-title p,
html[data-theme='dark'] .assisted-chat-empty p,
html[data-theme='dark'] .connection-card dt {
  color: #53645b;
}
html[data-theme='dark'] .assisted-conversation-sidebar {
  background: rgba(249,247,239,.96);
  color: #10251d;
  border-color: rgba(15,81,56,.16);
}
html[data-theme='dark'] .digisac-chat-panel {
  background: radial-gradient(circle at 10% 0%, rgba(15,81,56,.10), transparent 30%), #10251d;
}
html[data-theme='dark'] .conversation-search-field,
html[data-theme='dark'] .sidebar-filter-panel select,
html[data-theme='dark'] .assisted-filter-form input,
html[data-theme='dark'] .assisted-filter-form select,
html[data-theme='dark'] .connection-form-grid input,
html[data-theme='dark'] .connection-form-grid select,
html[data-theme='dark'] .connection-credentials-row input {
  background: #fffdf6;
  color: #10251d;
  border-color: rgba(15,81,56,.18);
}
html[data-theme='dark'] .connection-credentials-row {
  background: rgba(246,243,233,.08);
  border-color: rgba(214,215,189,.16);
}
html[data-theme='dark'] .pill-toggle,
html[data-theme='dark'] .whatsapp-toggle-grid .pill-toggle {
  background: rgba(248,246,238,.96);
  color: #10251d;
  border-color: rgba(15,81,56,.16);
}

@media (max-width: 960px) {
  .connection-form-grid,
  .connection-credentials-row,
  .whatsapp-toggle-grid {
    grid-template-columns: 1fr;
  }
  .connection-form-grid .connection-name-field {
    max-width: none;
  }
}

/* Meu perfil: visual premium com leitura rápida e troca ágil de foto. */
.user-profile-header,
.user-me-shell,
.user-me-grid {
  width: min(100%, var(--page-max, 1540px));
  margin-inline: auto;
}

.user-profile-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.user-me-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .75fr);
  gap: 18px;
  align-items: start;
}

.user-me-overview,
.user-me-photo-card,
.user-me-section-card {
  min-width: 0;
}

.user-me-profile-row {
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}

.user-me-avatar {
  width: 86px;
  height: 86px;
  font-size: 1.75rem;
  border-radius: 24px;
}

.user-me-identity h2 {
  margin: 4px 0 6px;
  font-size: clamp(1.75rem, 2.2vw, 2.5rem);
  letter-spacing: -.04em;
}

.user-me-identity p {
  margin: 0;
  color: var(--color-text-muted, #52645d);
}

.user-me-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.user-me-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.user-me-summary-card {
  display: grid;
  gap: 6px;
  padding: 18px;
  border: 1px solid var(--rs-border, #dfe8e2);
  border-radius: 22px;
  background: #f7faf8;
  box-shadow: var(--rs-shadow-xs, 0 10px 24px rgba(12,31,24,.05));
}

.user-me-summary-card span {
  color: var(--color-text-muted, #52645d);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.user-me-summary-card strong {
  font-family: var(--font-heading, inherit);
  font-size: clamp(1.35rem, 1.8vw, 2rem);
  letter-spacing: -.03em;
  color: var(--rs-green-950, #092d22);
}

.user-me-summary-card small {
  color: var(--color-text-muted, #52645d);
}

.user-me-summary-card.accent {
  background: linear-gradient(135deg, rgba(9,45,34,.98), rgba(3,92,64,.92));
  color: #fff;
}

.user-me-summary-card.accent span,
.user-me-summary-card.accent strong,
.user-me-summary-card.accent small {
  color: #fff;
}

.user-me-photo-card {
  display: grid;
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--rs-border, #dfe8e2);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,248,246,.96));
  box-shadow: var(--rs-shadow-soft, 0 18px 48px rgba(12,31,24,.08));
}

.user-me-photo-card h3 {
  margin: 6px 0;
  font-size: 1.3rem;
}

.user-me-photo-card p {
  margin: 0;
  color: var(--color-text-muted, #52645d);
  line-height: 1.55;
}

.user-me-photo-form {
  display: grid;
  gap: 14px;
}

.user-me-photo-form .field {
  display: grid;
  gap: 6px;
}

.user-me-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}

.user-me-section-card {
  display: grid;
  gap: 18px;
  padding: 24px;
  border-radius: 24px;
  box-shadow: var(--rs-shadow-soft, 0 18px 48px rgba(12,31,24,.08));
}

.user-me-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
}

.user-me-detail-grid > div {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #f7faf8;
  border: 1px solid var(--rs-border, #dfe8e2);
}

.user-me-detail-grid dt {
  margin: 0;
  color: var(--color-text-muted, #52645d);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.user-me-detail-grid dd {
  margin: 0;
  color: var(--rs-green-950, #092d22);
  font-weight: 800;
  line-height: 1.45;
}

.user-me-permissions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.user-me-timeline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.user-me-timeline > div {
  display: grid;
  gap: 5px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #f7faf8;
  border: 1px solid var(--rs-border, #dfe8e2);
}

.user-me-timeline strong {
  font-size: .98rem;
  color: var(--rs-green-950, #092d22);
}

.break-all {
  overflow-wrap: anywhere;
}

html[data-theme='dark'] .user-me-summary-card,
html[data-theme='dark'] .user-me-photo-card,
html[data-theme='dark'] .user-me-detail-grid > div,
html[data-theme='dark'] .user-me-timeline > div {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.12);
}

@media (max-width: 1100px) {
  .user-me-shell,
  .user-me-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .user-me-summary-grid,
  .user-me-detail-grid,
  .user-me-timeline {
    grid-template-columns: 1fr;
  }

  .user-me-profile-row {
    align-items: flex-start;
  }
}


/* === UX refinements: sidebar collapse, topbar clearance and drawer stability === */
.user-me-permissions .compact-chip {
  padding-inline: 14px;
  border-radius: 999px;
  font-weight: 800;
}

@media (min-width: 1181px) {
  .rs-topbar {
    top: clamp(16px, 1.6vw, 26px);
    right: clamp(18px, 2.4vw, 34px);
    z-index: 120;
  }

  .rs-main,
  .main-content:not(.auth-layout) {
    padding-top: clamp(82px, 5vw, 104px);
  }

  .rs-main .page-header.rs-page-hero,
  .rs-main .crm-page-header,
  .rs-main .reports-hero,
  .rs-main .contracts-page-header,
  .rs-main .settings-page-intro,
  .rs-main .audit-hero,
  .rs-main .record-create-hero,
  .rs-main .crm-leads-page > .crm-hero,
  .rs-main .dashboard-command-hero {
    padding-right: var(--card-pad, clamp(18px, 1.4vw, 26px));
  }

  .rs-main .page-header.rs-page-hero,
  .rs-main .crm-page-header,
  .rs-main .reports-hero,
  .rs-main .contracts-page-header,
  .rs-main .settings-page-intro,
  .rs-main .audit-hero,
  .rs-main .record-create-hero,
  .rs-main .crm-leads-page > .crm-hero,
  .rs-main .dashboard-command-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(18px, 2vw, 32px);
  }

  .rs-main .page-header.rs-page-hero > div:first-child,
  .rs-main .crm-page-header > div:first-child,
  .rs-main .reports-hero > div:first-child,
  .rs-main .contracts-page-header > div:first-child,
  .rs-main .settings-page-intro > div:first-child,
  .rs-main .audit-hero > div:first-child,
  .rs-main .record-create-hero > div:first-child,
  .rs-main .crm-leads-page > .crm-hero > div:first-child,
  .rs-main .dashboard-command-copy {
    min-width: 0;
    max-width: min(72ch, calc(100% - 360px));
  }

  .rs-main .hero-actions,
  .rs-main .dashboard-command-actions,
  .rs-main .crm-hero-actions,
  .rs-main .settings-page-intro-actions,
  .rs-main .contacts-quick-actions {
    margin-left: auto;
    justify-content: flex-end;
    align-items: center;
    flex: 0 0 auto;
  }
}

.form-surface-backdrop,
.crm-drawer-backdrop.contact-quick-backdrop,
.crm-drawer-backdrop {
  z-index: 180;
}

.form-surface,
.crm-drawer.contact-quick-drawer,
.crm-drawer#crm-lead-drawer {
  z-index: 190;
  align-items: stretch;
  justify-content: flex-end;
  padding: 12px;
  box-sizing: border-box;
}

.form-surface.is-open,
.crm-drawer.contact-quick-drawer.is-open,
.crm-drawer#crm-lead-drawer.is-open {
  display: flex;
}

.form-surface-panel,
.crm-drawer.contact-quick-drawer .crm-drawer-panel,
.crm-drawer#crm-lead-drawer .crm-drawer-panel {
  margin: 0 0 0 auto;
  width: clamp(430px, 40vw, 620px);
  max-width: min(620px, calc(100vw - 24px));
  height: calc(100vh - 24px);
  max-height: calc(100vh - 24px);
}

.form-surface.is-modal.is-open,
.crm-drawer.contact-quick-drawer.is-modal.is-open,
.crm-drawer#crm-lead-drawer.is-modal.is-open {
  display: grid;
}

.form-surface.is-modal .form-surface-panel,
.crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
.crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel {
  margin: 16px;
  width: min(720px, calc(100vw - 32px));
  height: auto;
  max-height: calc(100vh - 32px);
}

@media (max-width: 760px) {
  .form-surface,
  .crm-drawer.contact-quick-drawer,
  .crm-drawer#crm-lead-drawer {
    padding: 6px;
  }

  .form-surface-panel,
  .crm-drawer.contact-quick-drawer .crm-drawer-panel,
  .crm-drawer#crm-lead-drawer .crm-drawer-panel {
    width: calc(100vw - 12px);
    max-width: calc(100vw - 12px);
    height: calc(100vh - 12px);
    max-height: calc(100vh - 12px);
  }

  .form-surface.is-modal .form-surface-panel,
  .crm-drawer.contact-quick-drawer.is-modal .crm-drawer-panel,
  .crm-drawer#crm-lead-drawer.is-modal .crm-drawer-panel {
    height: auto;
  }
}

/* Ajuste fino do cabeçalho: topbar legível e ações alinhadas à direita. */
.rs-user-summary-copy strong {
  font-size: 0.96rem;
  line-height: 1.12;
}

.rs-user-summary-copy p {
  font-size: 0.76rem;
  line-height: 1.12;
}

.rs-profile-button.compact {
  font-size: 0.94rem;
  font-weight: 900;
  min-width: auto;
}

@media (min-width: 1181px) {
  .rs-topbar-user-tools .rs-user-card.compact.rs-user-summary {
    min-width: 284px;
  }

  .rs-profile-button.compact {
    min-width: 104px;
    padding-inline: 1.15rem;
  }
}

@media (max-width: 1180px) {
  .rs-main .page-header.rs-page-hero,
  .rs-main .crm-page-header,
  .rs-main .reports-hero,
  .rs-main .contracts-page-header,
  .rs-main .settings-page-intro,
  .rs-main .audit-hero,
  .rs-main .record-create-hero,
  .rs-main .crm-leads-page > .crm-hero,
  .rs-main .dashboard-command-hero {
    display: grid;
    gap: 16px;
  }

  .rs-main .hero-actions,
  .rs-main .dashboard-command-actions,
  .rs-main .crm-hero-actions,
  .rs-main .settings-page-intro-actions,
  .rs-main .contacts-quick-actions {
    justify-content: flex-start;
    margin-left: 0;
  }
}

/* Z-API actions: explicit connection tools and safe history import block. */
.zapi-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.zapi-actions form {
  margin: 0;
}
.zapi-import-panel {
  margin-top: 12px;
  border: 1px solid var(--rs-border, #dfe8e2);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  overflow: hidden;
}
.zapi-import-panel > summary {
  cursor: pointer;
  padding: 12px 14px;
  font-weight: 900;
  list-style: none;
}
.zapi-import-panel > summary::-webkit-details-marker { display: none; }
.zapi-import-panel form {
  display: grid;
  gap: 12px;
  padding: 0 14px 14px;
}
.zapi-import-options {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) repeat(2, minmax(140px, auto));
  gap: 10px;
  align-items: end;
}
html[data-theme='dark'] .zapi-import-panel {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.12);
}
@media (max-width: 760px) {
  .zapi-import-options { grid-template-columns: 1fr; }
}

/* Round 08 - atendimento, conexoes, IA e legibilidade */
@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production {
    width: 100%;
    min-height: 54px;
    justify-content: center;
    align-items: center;
    padding: 0;
    overflow: visible;
  }

  body.sidebar-collapsed .rs-brand-logo-stage,
  body.sidebar-collapsed .rs-brand-logo-stage-production {
    width: 44px;
    height: 44px;
    min-width: 44px;
    max-width: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    overflow: visible;
    transform: none;
  }

  body.sidebar-collapsed .rs-brand-logo-placeholder,
  body.sidebar-collapsed .rs-brand-logo-placeholder-production {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    overflow: hidden;
  }

  body.sidebar-collapsed .rs-brand-logo-img,
  body.sidebar-collapsed .rs-brand-logo-img-production {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
  }
}

.assisted-card-header {
  gap: 1rem;
  align-items: flex-start;
}

.assisted-card-header p {
  margin: .2rem 0 0;
  color: var(--muted, #647067);
}

.integration-switch-grid,
.core-admin-grid,
.ai-rules-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: .85rem;
}

.setting-switch-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .95rem 1rem;
  border: 1px solid rgba(15, 61, 46, .14);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(245,250,247,.88));
  box-shadow: 0 8px 24px rgba(8, 48, 37, .06);
  cursor: pointer;
}

.setting-switch-card.single {
  margin: .25rem 0 .85rem;
}

.setting-switch-card.compact {
  padding: .7rem .8rem;
  border-radius: 16px;
}

.setting-switch-card input[type="checkbox"] {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
  pointer-events: none;
}

.switch-copy {
  display: grid;
  gap: .2rem;
  min-width: 0;
}

.switch-copy strong {
  font-size: .94rem;
  color: #09281f;
}

.switch-copy small {
  color: #62706b;
  line-height: 1.35;
}

.switch-control {
  position: relative;
  display: inline-flex;
  flex: 0 0 54px;
  width: 54px;
  height: 32px;
  border-radius: 999px;
  background: #d9e5df;
  border: 1px solid rgba(9, 40, 31, .16);
  transition: background .2s ease, border-color .2s ease;
}

.switch-control::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 4px 10px rgba(9, 40, 31, .18);
  transition: transform .2s ease;
}

.setting-switch-card input:checked ~ .switch-control {
  background: #0b6b53;
  border-color: #0b6b53;
}

.setting-switch-card input:checked ~ .switch-control::after {
  transform: translateX(22px);
}

.connection-form-grid {
  grid-template-columns: minmax(220px, 1.2fr) minmax(260px, 2fr);
}

.connection-name-field,
.connection-credentials-row {
  grid-column: span 1;
}

.connection-credentials-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: .75rem;
}

.connection-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  gap: 1rem;
}

.connection-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .8rem;
  margin-bottom: .75rem;
}

.connection-protected {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 .75rem;
  border-radius: 999px;
  background: rgba(15, 61, 46, .08);
  color: #0f3d2e;
  font-weight: 700;
  font-size: .8rem;
}

.core-library-card,
.quick-library-card,
.ai-control-center {
  grid-column: 1 / -1;
}

.core-admin-card,
.quick-reply-admin-card,
.ai-conversation-card,
.ai-rules-grid section {
  border: 1px solid rgba(15, 61, 46, .12);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(9, 40, 31, .06);
}

.core-admin-card {
  padding: .9rem;
}

.core-admin-card.is-inactive {
  opacity: .68;
}

.core-card-top {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .55rem;
  align-items: center;
  margin-bottom: .65rem;
}

.core-color-dot {
  width: 28px;
  height: 28px;
  border-radius: 12px;
  border: 2px solid rgba(255,255,255,.9);
  box-shadow: 0 0 0 1px rgba(9, 40, 31, .15);
}

.core-status {
  padding: .35rem .55rem;
  border-radius: 999px;
  background: rgba(15, 61, 46, .08);
  color: #0f3d2e;
  font-size: .78rem;
  font-weight: 800;
}

.quick-library-search {
  min-width: min(360px, 100%);
}

.quick-category-tabs {
  display: flex;
  gap: .5rem;
  overflow-x: auto;
  padding-bottom: .45rem;
  margin-bottom: .85rem;
}

.quick-category-tabs a {
  flex: 0 0 auto;
  border: 1px solid rgba(15, 61, 46, .16);
  border-radius: 999px;
  padding: .45rem .75rem;
  color: #0f3d2e;
  background: rgba(231, 240, 235, .75);
  font-weight: 800;
  text-decoration: none;
}

.quick-category-stack {
  display: grid;
  gap: 1rem;
}

.quick-category-section h3 {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .7rem;
}

.quick-category-section h3 span {
  min-width: 24px;
  text-align: center;
  border-radius: 999px;
  background: rgba(15, 61, 46, .08);
  color: #0f3d2e;
  font-size: .75rem;
}

.quick-reply-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: .75rem;
}

.quick-reply-admin-card {
  padding: .75rem;
}

.quick-reply-admin-card summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  cursor: pointer;
  list-style: none;
}

.quick-reply-admin-card summary::-webkit-details-marker {
  display: none;
}

.quick-reply-admin-card summary p {
  margin: .2rem 0 0;
  color: #65726d;
}

.quick-reply-admin-card form {
  margin-top: .75rem;
}

.quick-card-deactivate {
  margin-top: .35rem;
}

.ai-control-center {
  display: grid;
  gap: 1rem;
}

.ai-rules-grid section {
  padding: 1rem;
}

.ai-rules-grid h3,
.ai-rules-grid p {
  margin: .2rem 0 0;
}

.ai-conversation-list {
  display: grid;
  gap: .8rem;
}

.ai-conversation-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .9rem;
  padding: .9rem;
  align-items: center;
}

.ai-conversation-main {
  display: flex;
  gap: .8rem;
  align-items: flex-start;
  min-width: 0;
}

.ai-conversation-main p {
  margin: .25rem 0 .35rem;
  color: #65726d;
}

.ai-action-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .4rem;
}

.conversation-sidebar-tools {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
}

.notification-opt-in.is-enabled {
  background: #0f6b50;
  color: #fff;
  border-color: #0f6b50;
}

.conversation-avatar.has-photo {
  overflow: hidden;
  background: #edf5f0;
}

.conversation-avatar.has-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.conversation-phone {
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}

.conversation-unread {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 .35rem;
  border-radius: 999px;
  background: #0f6b50;
  color: #fff;
  font-size: .75rem;
  font-weight: 900;
}

.assisted-toast-stack {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 9999;
  display: grid;
  gap: .55rem;
  width: min(360px, calc(100vw - 32px));
}

.assisted-toast {
  display: grid;
  gap: .2rem;
  padding: .85rem .95rem;
  border-radius: 18px;
  background: #09281f;
  color: #fff;
  box-shadow: 0 18px 45px rgba(0,0,0,.22);
  text-decoration: none;
}

.assisted-toast span {
  color: rgba(255,255,255,.8);
}

html[data-theme="dark"] .assisted-page,
body.dark .assisted-page,
.theme-dark .assisted-page {
  color: #eef7f2;
}

html[data-theme="dark"] .assisted-hero,
body.dark .assisted-hero,
.theme-dark .assisted-hero,
html[data-theme="dark"] .assisted-card,
body.dark .assisted-card,
.theme-dark .assisted-card,
html[data-theme="dark"] .assisted-list-panel,
body.dark .assisted-list-panel,
.theme-dark .assisted-list-panel,
html[data-theme="dark"] .assisted-chat-panel,
body.dark .assisted-chat-panel,
.theme-dark .assisted-chat-panel,
html[data-theme="dark"] .assisted-chat-empty > div,
body.dark .assisted-chat-empty > div,
.theme-dark .assisted-chat-empty > div,
html[data-theme="dark"] .core-admin-card,
html[data-theme="dark"] .quick-reply-admin-card,
html[data-theme="dark"] .ai-conversation-card,
html[data-theme="dark"] .ai-rules-grid section,
body.dark .core-admin-card,
body.dark .quick-reply-admin-card,
body.dark .ai-conversation-card,
body.dark .ai-rules-grid section,
.theme-dark .core-admin-card,
.theme-dark .quick-reply-admin-card,
.theme-dark .ai-conversation-card,
.theme-dark .ai-rules-grid section {
  background: #08261d;
  border-color: rgba(210, 230, 220, .18);
  color: #eef7f2;
}

html[data-theme="dark"] .setting-switch-card,
body.dark .setting-switch-card,
.theme-dark .setting-switch-card,
html[data-theme="dark"] .conversation-item,
body.dark .conversation-item,
.theme-dark .conversation-item,
html[data-theme="dark"] .chat-panel-card,
body.dark .chat-panel-card,
.theme-dark .chat-panel-card {
  background: #0c3025;
  border-color: rgba(210, 230, 220, .16);
  color: #eef7f2;
}

html[data-theme="dark"] .switch-copy strong,
body.dark .switch-copy strong,
.theme-dark .switch-copy strong,
html[data-theme="dark"] .conversation-main strong,
body.dark .conversation-main strong,
.theme-dark .conversation-main strong,
html[data-theme="dark"] .chat-contact-copy h2,
body.dark .chat-contact-copy h2,
.theme-dark .chat-contact-copy h2,
html[data-theme="dark"] .assisted-page h1,
html[data-theme="dark"] .assisted-page h2,
html[data-theme="dark"] .assisted-page h3,
body.dark .assisted-page h1,
body.dark .assisted-page h2,
body.dark .assisted-page h3,
.theme-dark .assisted-page h1,
.theme-dark .assisted-page h2,
.theme-dark .assisted-page h3 {
  color: #f8fffb;
}

html[data-theme="dark"] .assisted-page p,
html[data-theme="dark"] .assisted-page small,
html[data-theme="dark"] .switch-copy small,
html[data-theme="dark"] .conversation-main em,
html[data-theme="dark"] .conversation-phone,
html[data-theme="dark"] .chat-contact-copy p,
body.dark .assisted-page p,
body.dark .assisted-page small,
body.dark .switch-copy small,
body.dark .conversation-main em,
body.dark .conversation-phone,
body.dark .chat-contact-copy p,
.theme-dark .assisted-page p,
.theme-dark .assisted-page small,
.theme-dark .switch-copy small,
.theme-dark .conversation-main em,
.theme-dark .conversation-phone,
.theme-dark .chat-contact-copy p {
  color: #c7d8cf;
}

html[data-theme="dark"] .assisted-page input,
html[data-theme="dark"] .assisted-page textarea,
html[data-theme="dark"] .assisted-page select,
body.dark .assisted-page input,
body.dark .assisted-page textarea,
body.dark .assisted-page select,
.theme-dark .assisted-page input,
.theme-dark .assisted-page textarea,
.theme-dark .assisted-page select {
  background: #0a221b;
  border-color: rgba(220, 238, 229, .2);
  color: #f8fffb;
}

html[data-theme="dark"] .assisted-page input::placeholder,
html[data-theme="dark"] .assisted-page textarea::placeholder,
body.dark .assisted-page input::placeholder,
body.dark .assisted-page textarea::placeholder,
.theme-dark .assisted-page input::placeholder,
.theme-dark .assisted-page textarea::placeholder {
  color: #95aaa0;
}

html[data-theme="dark"] .button.secondary,
body.dark .button.secondary,
.theme-dark .button.secondary {
  background: #dfece5;
  color: #08261d;
  border-color: rgba(255,255,255,.28);
}

html[data-theme="dark"] .button.ghost,
body.dark .button.ghost,
.theme-dark .button.ghost {
  color: #f4fff9;
  border-color: rgba(255,255,255,.24);
}

html[data-theme="dark"] .badge.neutral,
body.dark .badge.neutral,
.theme-dark .badge.neutral {
  background: rgba(220, 238, 229, .14);
  color: #ecfff6;
}

@media (max-width: 760px) {
  .connection-form-grid,
  .ai-conversation-card {
    grid-template-columns: 1fr;
  }
  .ai-action-grid {
    justify-content: flex-start;
  }
}

/* Round attendance upgrade: fast chat workspace and editable client drawer */
.assisted-digisac-shell {
  position: relative;
  isolation: isolate;
}
.digisac-chat-panel {
  min-width: 0;
  transition: opacity .16s ease, filter .16s ease;
}
.digisac-chat-panel.is-loading {
  opacity: .72;
  filter: saturate(.85);
  pointer-events: none;
}
.digisac-chat-panel.is-loading::after,
.assisted-contact-drawer.is-busy::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent);
  animation: assisted-shimmer 1.1s infinite;
  pointer-events: none;
}
@keyframes assisted-shimmer {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
.conversation-item {
  will-change: transform;
  contain: content;
}
.conversation-item.is-loading {
  border-color: rgba(15,81,56,.45);
  box-shadow: 0 14px 30px rgba(15,81,56,.16);
  opacity: .82;
}
.conversation-item.is-loading::after {
  content: 'Abrindo...';
  align-self: center;
  justify-self: end;
  grid-column: 3;
  grid-row: 1;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(15,81,56,.1);
  color: #0f5138;
  font-size: .68rem;
  font-weight: 900;
}
.chat-header-actions form.is-submitting,
.chat-compose.is-submitting,
.drawer-edit-form.is-submitting,
.contact-share-panel.is-submitting,
.internal-note-compose.is-submitting {
  opacity: .68;
  pointer-events: none;
}
.chat-header-actions {
  flex-wrap: wrap;
  gap: 8px;
}
.assisted-contact-drawer {
  top: clamp(72px, 8vh, 92px);
  right: clamp(10px, 1.4vw, 22px);
  height: calc(100dvh - clamp(86px, 10vh, 112px));
  width: clamp(400px, 33vw, 560px);
  max-width: calc(100vw - 24px);
  border: 1px solid rgba(17,31,25,.12);
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -10px 18px 60px rgba(17,31,25,.18);
  background: linear-gradient(180deg, #fffdf7 0%, #f6f5ef 100%);
}
.assisted-contact-drawer.is-open {
  transform: translateX(0);
}
.assisted-contact-drawer-head {
  align-items: center;
  padding: 20px 20px 16px;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(12px);
}
.assisted-contact-identity {
  align-items: center;
}
.assisted-contact-identity h2 {
  max-width: 310px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.assisted-contact-drawer-body {
  padding: 16px 16px 22px;
  gap: 14px;
  scrollbar-gutter: stable;
}
.drawer-kpi-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.drawer-kpi-grid article {
  min-height: 86px;
  display: grid;
  align-content: start;
  gap: 5px;
}
.drawer-section-headline {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}
.drawer-section-headline h3,
.drawer-section h3 {
  margin: 0;
}
.drawer-section-headline span {
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(15,81,56,.08);
  color: #0f5138;
  font-size: .68rem;
  font-weight: 900;
  white-space: nowrap;
}
.drawer-edit-form {
  display: grid;
  gap: 12px;
}
.drawer-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.drawer-form-grid.compact-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.drawer-form-grid label,
.drawer-edit-form > label {
  display: grid;
  gap: 6px;
  color: #4e5b55;
  font-size: .78rem;
  font-weight: 850;
}
.drawer-edit-form input,
.drawer-edit-form select,
.drawer-edit-form textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid rgba(17,31,25,.14);
  border-radius: 13px;
  background: #fffdf9;
  color: #10251d;
  padding: 10px 12px;
  font: inherit;
  outline: none;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.drawer-edit-form textarea {
  resize: vertical;
  min-height: 92px;
}
.drawer-edit-form input:focus,
.drawer-edit-form select:focus,
.drawer-edit-form textarea:focus {
  border-color: rgba(15,81,56,.58);
  box-shadow: 0 0 0 4px rgba(15,81,56,.1);
  background: #fff;
}
.drawer-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 10px;
}
.drawer-funnel-section {
  border-color: rgba(15,81,56,.2);
  background: linear-gradient(180deg, #ffffff 0%, #f4fbf7 100%);
}
.drawer-tag-picker {
  max-height: 160px;
  overflow: auto;
  padding: 2px;
}
.drawer-media-list span {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(15,81,56,.06);
}
.button.compact {
  min-height: 34px;
  padding: 7px 12px;
}
.assisted-toast-stack {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 130;
  display: grid;
  gap: 10px;
  max-width: min(380px, calc(100vw - 24px));
}
.assisted-toast {
  display: grid;
  gap: 3px;
  padding: 13px 15px;
  border-radius: 18px;
  background: rgba(16,37,29,.96);
  color: #fff;
  box-shadow: 0 16px 36px rgba(17,31,25,.22);
  text-decoration: none;
}
.assisted-toast span {
  color: rgba(255,255,255,.78);
  font-size: .86rem;
}
.whatsapp-toggle-grid.round-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
  align-items: stretch;
}
html[data-theme="dark"] .assisted-contact-drawer,
body.dark .assisted-contact-drawer,
.theme-dark .assisted-contact-drawer {
  background: linear-gradient(180deg, #08261d 0%, #061b15 100%);
  border-color: rgba(210,230,220,.2);
}
html[data-theme="dark"] .drawer-funnel-section,
body.dark .drawer-funnel-section,
.theme-dark .drawer-funnel-section,
html[data-theme="dark"] .drawer-info-grid article,
body.dark .drawer-info-grid article,
.theme-dark .drawer-info-grid article,
html[data-theme="dark"] .drawer-section,
body.dark .drawer-section,
.theme-dark .drawer-section {
  background: #0c3025;
  border-color: rgba(210,230,220,.16);
}
html[data-theme="dark"] .drawer-section-headline span,
body.dark .drawer-section-headline span,
.theme-dark .drawer-section-headline span {
  background: rgba(220,238,229,.12);
  color: #e6fff4;
}
@media (max-width: 1120px) {
  .assisted-digisac-shell { grid-template-columns: minmax(280px, 360px) minmax(0, 1fr); }
  .assisted-contact-drawer { width: min(500px, calc(100vw - 24px)); }
}
@media (max-width: 820px) {
  .assisted-contact-drawer {
    top: 10px;
    right: 10px;
    left: 10px;
    width: auto;
    max-width: none;
    height: calc(100dvh - 20px);
    border-radius: 24px;
  }
  .drawer-form-grid,
  .drawer-form-grid.compact-two,
  .drawer-kpi-grid { grid-template-columns: 1fr; }
  .assisted-contact-identity h2 { max-width: 190px; }
}

/* === Ajustes finos Chat/Kanban solicitados em homologacao === */
.badge.ia-active,
.conversation-meta .badge.ia-active,
.chat-header-actions .badge.ia-active,
.assisted-kanban-card .badge.ia-active {
  background: #dff8e9;
  border-color: rgba(15, 81, 56, 0.18);
  color: #0f5138;
}
.badge.ia-inactive,
.conversation-meta .badge.ia-inactive,
.chat-header-actions .badge.ia-inactive,
.assisted-kanban-card .badge.ia-inactive {
  background: #eef0ed;
  border-color: rgba(82, 92, 86, 0.18);
  color: #47534d;
}
.badge.status-finalized,
.conversation-meta .badge.status-finalized,
.chat-header-actions .badge.status-finalized,
.assisted-kanban-card .badge.status-finalized {
  background: #edf2f7;
  border-color: rgba(71, 85, 105, 0.18);
  color: #334155;
}
.conversation-avatar.default-whatsapp {
  overflow: hidden;
  border-radius: 999px;
  background: linear-gradient(180deg, #f2f7f4, #e4eee8);
  box-shadow: inset 0 0 0 1px rgba(51,92,75,.14), 0 8px 20px rgba(17,31,25,.08);
}
.conversation-avatar .whatsapp-default-avatar,
.whatsapp-default-avatar {
  width: 100%;
  height: 100%;
  display: block;
}
.conversation-avatar.has-photo {
  overflow: hidden;
  background: #eef2ed;
}
.conversation-avatar.has-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  image-rendering: auto;
}
.conversation-phone { display: none; }

.rs-main.rs-route-assisted-service-inbox,
.rs-main.rs-route-assisted-service-queue,
.rs-main.rs-route-assisted-service-contacts {
  overflow: hidden;
}
.assisted-page[data-section="inbox"],
.assisted-page[data-section="queue"],
.assisted-page[data-section="contacts"] {
  height: calc(100dvh - clamp(92px, 7vw, 126px));
  min-height: 680px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  gap: 14px;
}
.assisted-page[data-section="inbox"] .assisted-hero,
.assisted-page[data-section="queue"] .assisted-hero,
.assisted-page[data-section="contacts"] .assisted-hero {
  flex: 0 0 auto;
  margin-bottom: 0;
}
.assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
  grid-template-columns: clamp(330px, 24vw, 420px) minmax(0, 1fr);
}
.assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
.assisted-page[data-section="queue"] .assisted-conversation-sidebar,
.assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
.assisted-page[data-section="inbox"] .digisac-chat-panel,
.assisted-page[data-section="queue"] .digisac-chat-panel,
.assisted-page[data-section="contacts"] .digisac-chat-panel {
  min-height: 0;
  height: auto;
}
.digisac-chat-panel {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}
.chat-messages {
  min-height: 0;
  overscroll-behavior: contain;
}
.chat-compose {
  position: relative;
  z-index: 4;
}
.assisted-searchbar {
  grid-template-columns: minmax(0, 1fr) minmax(128px, auto) auto;
}
.conversation-sort-field {
  min-height: 42px;
  border-radius: 15px;
  border: 1px solid rgba(17,31,25,.14);
  background: #fff;
  padding: 9px 12px;
  color: #10251d;
  font: inherit;
  font-weight: 800;
}
.compose-input-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
}
.compose-textarea-wrap {
  display: grid;
  gap: 4px;
}
.compose-textarea-wrap textarea {
  width: 100%;
  min-height: 54px;
}
.compose-textarea-wrap small {
  color: #69746e;
  font-size: .74rem;
  padding-left: 3px;
}
.assisted-chat-empty-inline {
  margin: auto;
  align-self: center;
  justify-self: center;
  display: grid;
  gap: 6px;
  place-items: center;
  text-align: center;
  color: #5f6b64;
  padding: 28px;
  border-radius: 24px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(17,31,25,.08);
}
.assisted-chat-empty-inline span { font-size: 1.8rem; }
.assisted-chat-empty-inline strong { color: #10251d; font-size: 1.05rem; }
.assisted-chat-empty-inline p { margin: 0; }
.chat-closed-feedback {
  margin: 10px 16px 0;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(15,81,56,.16);
  background: #e7f8ea;
  color: #0f5138;
  font-weight: 850;
  box-shadow: 0 10px 22px rgba(15,81,56,.08);
}
.chat-transfer-menu {
  position: relative;
}
.chat-transfer-menu > summary {
  list-style: none;
  cursor: pointer;
}
.chat-transfer-menu > summary::-webkit-details-marker { display: none; }
.chat-transfer-menu form {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 30;
  width: min(320px, calc(100vw - 36px));
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(17,31,25,.12);
  background: #fffdf8;
  box-shadow: 0 18px 44px rgba(17,31,25,.16);
}
.chat-transfer-menu label {
  display: grid;
  gap: 6px;
  color: #4e5b55;
  font-size: .78rem;
  font-weight: 850;
}
.chat-transfer-menu select {
  width: 100%;
  min-height: 42px;
  border: 1px solid rgba(17,31,25,.14);
  border-radius: 13px;
  background: #fff;
  padding: 10px 12px;
  font: inherit;
}
.assisted-toast-stack {
  top: 18px;
  right: 18px;
  bottom: auto;
}
.assisted-toast.is-success {
  background: #e7f8ea;
  color: #0f5138;
  border: 1px solid rgba(15,81,56,.16);
}
.assisted-toast.is-success span { color: #305f49; }
.digisac-chat-panel.is-loading {
  opacity: 1;
  filter: none;
}
.digisac-chat-panel.is-loading::after { display: none; }

.kanban-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.kanban-title-row h1 {
  outline: none;
  border-radius: 12px;
  padding: 2px 6px 2px 0;
}
.kanban-title-row h1:focus {
  background: rgba(15,81,56,.08);
  box-shadow: 0 0 0 4px rgba(15,81,56,.08);
}
.kanban-title-edit {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  font-size: .9rem;
}
.assisted-filter-form.kanban-filter {
  grid-template-columns: minmax(240px, 1.5fr) repeat(4, minmax(150px, 1fr)) auto;
}
.assisted-kanban-column {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 0;
  max-height: calc(100dvh - 285px);
  overflow: hidden;
}
.kanban-column-scroll {
  min-height: 0;
  max-height: min(1040px, calc((102px * 10) + 12px));
  overflow-y: auto;
  display: grid;
  align-content: start;
  gap: 10px;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: rgba(15,81,56,.38) transparent;
}
.assisted-kanban-card {
  margin-bottom: 0;
  gap: 9px;
}
.kanban-card-main {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  color: inherit;
}
.kanban-card-main .conversation-avatar {
  width: 48px;
  height: 48px;
  border-radius: 999px;
}
.kanban-card-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.kanban-card-copy strong,
.kanban-card-copy p,
.kanban-card-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.kanban-card-copy p {
  color: #4e5b55;
}
.kanban-card-copy small {
  color: #69746e;
  font-size: .78rem;
}
.kanban-card-copy .badge {
  justify-self: start;
  margin-top: 2px;
}
.kanban-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}
.kanban-column-footer {
  padding-top: 10px;
  color: #68746e;
  font-size: .78rem;
  font-weight: 800;
}
.assisted-kanban-board::after { display: none; }

@media (min-width: 1181px) {
  .rs-topbar {
    position: absolute;
  }
}
@media (max-width: 1180px) {
  .assisted-filter-form.kanban-filter,
  .assisted-searchbar {
    grid-template-columns: 1fr;
  }
  .assisted-page[data-section="inbox"],
  .assisted-page[data-section="queue"],
  .assisted-page[data-section="contacts"] {
    height: auto;
    overflow: visible;
  }
}

/* Ajustes atendimento 04/05: fundo do chat, nova conversa, IA no composer e sidebar recolhida */
.assisted-hero-actions {
  flex-wrap: wrap;
}
.new-conversation-button {
  box-shadow: 0 14px 28px rgba(6, 37, 27, .16);
}
.digisac-chat-panel {
  background: #f3efe5;
}
.digisac-chat-panel .chat-header {
  background: #fffef9;
}
.digisac-chat-panel .chat-messages,
.digisac-chat-messages {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  background:
    radial-gradient(circle at 18% 22%, rgba(255, 255, 255, .48), transparent 27%),
    radial-gradient(circle at 75% 5%, rgba(15, 81, 56, .05), transparent 22%),
    linear-gradient(180deg, #f6f2e9 0%, #ede9de 100%);
  border-top: 1px solid rgba(15, 81, 56, .08);
  border-bottom: 1px solid rgba(15, 81, 56, .08);
}
.digisac-chat-panel .chat-compose,
.digisac-composer {
  background: #fffdf8;
  border-top: 1px solid rgba(15, 81, 56, .08);
}
.ai-compose-tool {
  background: linear-gradient(135deg, #fff8d8, #fff3bc);
  border-color: #efd078;
  color: #6c4b00;
}
.ai-compose-tool.is-loading {
  opacity: .78;
  cursor: progress;
}
.assisted-modal-open {
  overflow: hidden;
}
.assisted-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(3, 18, 13, .46);
  backdrop-filter: blur(7px);
}
.assisted-modal-backdrop[hidden] {
  display: none;
}
.new-conversation-dialog {
  position: relative;
  width: min(680px, 100%);
  display: grid;
  gap: 12px;
  padding: 28px;
  border: 1px solid rgba(15, 81, 56, .16);
  border-radius: 28px;
  background: #fffdf8;
  box-shadow: 0 34px 90px rgba(2, 20, 14, .28);
}
.new-conversation-dialog h2 {
  margin: 0;
  font-size: clamp(1.6rem, 2vw, 2.2rem);
}
.new-conversation-dialog p {
  margin: 0;
  color: #53625c;
}
.new-conversation-form {
  display: grid;
  gap: 14px;
}
.new-conversation-form textarea {
  min-height: 118px;
}
.new-conversation-hint {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  color: #66736e;
  font-size: .84rem;
}
.modal-actions {
  justify-content: flex-end;
}
@media (max-width: 720px) {
  .new-conversation-dialog {
    padding: 22px;
    border-radius: 22px;
  }
  .new-conversation-hint,
  .modal-actions {
    align-items: stretch;
    flex-direction: column;
  }
}
@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-brand-card-production {
    display: grid;
    place-items: center;
    padding: 10px 0 16px;
  }
  body.sidebar-collapsed .rs-sidebar-brand-top {
    justify-content: center;
    width: 100%;
    margin: 0 0 10px;
  }
  body.sidebar-collapsed .rs-sidebar-toggle-button {
    margin-inline: auto;
  }
  body.sidebar-collapsed .rs-brand-link-production {
    width: 58px;
    height: 58px;
    margin: 0 auto;
    overflow: visible;
    justify-content: center;
  }
  body.sidebar-collapsed .rs-brand-logo-stage-production {
    width: 58px;
    height: 58px;
    margin: 0;
  }
  body.sidebar-collapsed .rs-brand-logo-placeholder-production,
  body.sidebar-collapsed .rs-brand-logo-img-production {
    width: 100%;
    height: 100%;
  }
  body.sidebar-collapsed .rs-brand-logo-img-production {
    object-fit: contain;
  }
}

/* Ajustes 05/05: sidebar, Conexões e títulos do Kanban */
.rs-sidebar-control-row {
  display: flex;
  justify-content: flex-start;
  padding: 14px 18px 2px;
  flex: 0 0 auto;
}
.rs-sidebar .rs-sidebar-control-row + .rs-brand-card-production {
  margin-top: 6px;
}
@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-sidebar-control-row {
    justify-content: center;
    padding: 12px 0 8px;
  }
  body.sidebar-collapsed .rs-sidebar-control-row + .rs-brand-card-production {
    margin-top: 0;
  }
  body.sidebar-collapsed .rs-brand-card-production {
    padding-top: 0;
  }
  body.sidebar-collapsed .rs-sidebar-brand-top {
    display: none;
  }
}

.connection-builder-form {
  display: grid;
  gap: 16px;
}
.connection-form-layout {
  display: grid;
  grid-template-columns: minmax(320px, .95fr) minmax(360px, 1.05fr);
  gap: 18px;
  align-items: stretch;
}
.connection-form-layout-compact {
  grid-template-columns: 1fr;
  gap: 12px;
}
.connection-main-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(140px, .42fr);
  gap: 12px;
  align-items: end;
}
.connection-form-left,
.connection-form-right {
  display: grid;
  gap: 12px;
  align-content: start;
}
.connection-form-right {
  padding: 16px;
  border: 1px solid rgba(15, 61, 46, .10);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(246,250,247,.7));
}
.connection-credentials-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(15, 61, 46, .12);
  border-radius: 20px;
  background: linear-gradient(145deg, #f8fbf8, #eef6f2);
}
.connection-mini-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.connection-mini-heading strong {
  color: #09281f;
  font-weight: 900;
}
.connection-mini-heading small {
  color: #66746e;
  font-weight: 700;
}
.connection-credentials-row,
.connection-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.connection-credentials-row label:first-child {
  grid-column: auto;
}
.whatsapp-toggle-grid.integration-switch-grid,
.integration-switch-grid.whatsapp-toggle-grid {
  grid-template-columns: repeat(3, minmax(210px, 1fr));
  align-items: stretch;
}
.whatsapp-toggle-grid .setting-switch-card {
  min-height: 118px;
  align-items: flex-end;
}
.connection-card-grid {
  grid-template-columns: 1fr;
  gap: 16px;
}
.connection-card {
  gap: 14px;
  border-radius: 24px;
  padding: 18px;
}
.connection-card.is-connected {
  border-color: rgba(15, 81, 56, .20);
  background:
    radial-gradient(circle at top right, rgba(54, 224, 127, .08), transparent 26rem),
    #fff;
}
.connection-card-header {
  align-items: center;
  margin-bottom: 0;
}
.connection-title-block {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}
.connection-title-block strong {
  font-size: 1.02rem;
  line-height: 1.15;
  color: #08261d;
}
.connection-title-block small {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(15, 61, 46, .08);
  color: #456059;
  font-weight: 900;
  letter-spacing: .04em;
}
.connection-health-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 900;
  border: 1px solid rgba(15, 61, 46, .16);
  background: #eef5f0;
  color: #0f5138;
}
.connection-health-pill::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 0 4px rgba(15, 81, 56, .10);
}
.connection-health-pill.needs-attention {
  color: #8a6420;
  background: #fff7df;
  border-color: rgba(138, 100, 32, .20);
}
.connection-health-card {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 20px;
  border: 1px solid rgba(15, 81, 56, .14);
  background: linear-gradient(135deg, rgba(236, 250, 240, .96), rgba(255, 255, 255, .94));
}
.connection-health-card.is-warning {
  border-color: rgba(138, 100, 32, .18);
  background: linear-gradient(135deg, rgba(255, 248, 222, .96), rgba(255, 255, 255, .92));
}
.connection-health-orb {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: #0f5138;
  position: relative;
  box-shadow: 0 12px 24px rgba(15, 81, 56, .18);
}
.connection-health-card.is-warning .connection-health-orb {
  background: #b8871c;
}
.connection-health-orb::after {
  content: '✓';
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 900;
}
.connection-health-card.is-warning .connection-health-orb::after {
  content: '!';
}
.connection-health-card strong {
  display: block;
  color: #09281f;
  font-weight: 900;
}
.connection-health-card small {
  display: block;
  margin-top: 2px;
  color: #61706a;
  font-weight: 700;
}
.connection-details {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 8px 16px;
  padding: 4px 2px 2px;
}
.connection-details dd {
  overflow-wrap: anywhere;
}
.zapi-qr-box.is-connected {
  min-height: 112px;
  border-color: rgba(15, 81, 56, .18);
  background: linear-gradient(135deg, rgba(237, 250, 240, .72), rgba(255, 255, 255, .92));
}
.zapi-connected-state {
  display: grid;
  place-items: center;
  gap: 4px;
  color: #0f5138;
}
.zapi-connected-state > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #0f5138;
  color: #fff;
  font-weight: 900;
}
.zapi-connected-state strong {
  font-weight: 900;
}
.zapi-connected-state small {
  color: #5f6d67;
  font-weight: 700;
}

.kanban-column-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}
.kanban-column-title-form {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.kanban-column-title-input {
  width: 100%;
  min-height: 38px;
  border-radius: 13px;
  border: 1px solid transparent;
  background: rgba(15, 81, 56, .06);
  color: #112019;
  font-weight: 900;
  font-size: .98rem;
  padding: 7px 10px;
}
.kanban-column-title-input:focus {
  border-color: rgba(15, 81, 56, .22);
  background: #fff;
}
.kanban-column-title-save {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  color: #0f5138;
  background: #e6f4eb;
  border-color: rgba(15, 81, 56, .16);
}
.kanban-column-count {
  min-width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #10251d;
  color: #f8f4e8;
  display: inline-grid;
  place-items: center;
  font-weight: 800;
}
.assisted-kanban-column > header .kanban-column-count {
  margin-left: 0;
}
@media (max-width: 980px) {
  .connection-form-layout,
  .connection-main-row,
  .connection-credentials-row,
  .connection-mini-grid,
  .whatsapp-toggle-grid.integration-switch-grid,
  .integration-switch-grid.whatsapp-toggle-grid {
    grid-template-columns: 1fr;
  }
  .connection-details {
    grid-template-columns: 1fr;
  }
}

/* 05/05 - Redesenho refinado do Inbox e Chat do Atendimento */
[data-assisted-service][data-section='inbox'],
[data-assisted-service][data-section='queue'],
[data-assisted-service][data-section='contacts'] {
  --as-green: #073d2f;
  --as-green-2: #0f5138;
  --as-muted: #63736a;
  --as-border: rgba(17, 31, 25, .10);
  --as-soft: #f7f5ee;
}
[data-assisted-service] .assisted-operation-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: -8px 0 14px;
}
[data-assisted-service] .assisted-core-switcher select {
  min-height: 44px;
  min-width: 190px;
  border-radius: 14px;
  border: 1px solid var(--as-border);
  background: rgba(255,255,255,.88);
  color: #10251d;
  font-weight: 850;
  padding: 0 40px 0 14px;
  box-shadow: 0 8px 20px rgba(17,31,25,.05);
}
[data-assisted-service] .assisted-timezone-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(15,81,56,.10);
  background: rgba(230,244,235,.72);
  color: #0f5138;
  font-size: .78rem;
  font-weight: 850;
}
[data-assisted-service] .assisted-digisac-shell {
  grid-template-columns: minmax(350px, 420px) minmax(0, 1fr);
  gap: 10px;
  border: 0;
  border-radius: 28px;
  background: transparent;
  box-shadow: none;
  min-height: clamp(720px, calc(100vh - 210px), 980px);
  overflow: visible;
}
[data-assisted-service] .assisted-conversation-sidebar,
[data-assisted-service] .digisac-chat-panel {
  border: 1px solid var(--as-border);
  border-radius: 26px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 58px rgba(17,31,25,.08);
  overflow: hidden;
}
[data-assisted-service] .assisted-conversation-sidebar {
  padding: 16px;
  gap: 12px;
  border-right: 1px solid var(--as-border);
}
[data-assisted-service] .conversation-sidebar-head h2 {
  margin: 0;
  color: #10251d;
  font-size: 1.08rem;
  letter-spacing: -.02em;
}
[data-assisted-service] .conversation-sidebar-tools {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
[data-assisted-service] .notification-opt-in,
[data-assisted-service] .sidebar-filter-menu > summary.icon-button {
  width: 38px;
  height: 38px;
  border-radius: 14px;
  background: rgba(255,255,255,.88);
  color: #233b31;
}
[data-assisted-service] .assisted-searchbar {
  position: relative;
  display: block;
}
[data-assisted-service] .assisted-searchbar .search-icon {
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  color: #7a8b82;
  font-weight: 900;
  z-index: 1;
}
[data-assisted-service] .conversation-search-field {
  min-height: 46px;
  border-radius: 16px;
  border: 1px solid rgba(17,31,25,.10);
  background: #fff;
  padding: 0 14px 0 38px;
  color: #1d3128;
  box-shadow: inset 0 1px 0 rgba(17,31,25,.02);
}
[data-assisted-service] .conversation-search-field::placeholder {
  color: #79877f;
}
[data-assisted-service] .assisted-inbox-tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}
[data-assisted-service] .assisted-inbox-tabs a {
  min-height: 40px;
  justify-content: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 14px;
  background: #fff;
  color: #16352a;
  box-shadow: 0 5px 14px rgba(17,31,25,.04);
}
[data-assisted-service] .assisted-inbox-tabs a strong {
  min-width: 24px;
  height: 24px;
  font-size: .7rem;
}
[data-assisted-service] .assisted-inbox-tabs a.active {
  background: linear-gradient(135deg, #073d2f, #0f5138);
  color: #fff;
}
[data-assisted-service] .conversation-list {
  gap: 6px;
  padding: 0 2px 4px 0;
}
[data-assisted-service] .conversation-item {
  position: relative;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  min-height: 76px;
  padding: 12px 10px;
  border: 0;
  border-bottom: 1px solid rgba(17,31,25,.07);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
[data-assisted-service] .conversation-item::before {
  content: '';
  position: absolute;
  inset: 8px auto 8px 0;
  width: 3px;
  border-radius: 999px;
  background: transparent;
}
[data-assisted-service] .conversation-item:hover,
[data-assisted-service] .conversation-item.active {
  transform: none;
  background: linear-gradient(90deg, rgba(230,244,235,.94), rgba(255,255,255,.82));
  border-radius: 16px;
  box-shadow: inset 0 0 0 1px rgba(15,81,56,.08), 0 12px 24px rgba(17,31,25,.06);
}
[data-assisted-service] .conversation-item.active::before {
  background: #00a870;
}
[data-assisted-service] .conversation-avatar {
  width: 50px;
  height: 50px;
  min-width: 50px;
  border-radius: 999px;
  overflow: hidden;
  box-shadow: 0 7px 16px rgba(17,31,25,.13);
}
[data-assisted-service] .conversation-avatar.large,
[data-assisted-service] .chat-header .conversation-avatar {
  width: 50px;
  height: 50px;
  min-width: 50px;
  border-radius: 999px;
}
[data-assisted-service] .conversation-avatar.xlarge {
  width: 74px;
  height: 74px;
  border-radius: 999px;
}
[data-assisted-service] .conversation-avatar img,
[data-assisted-service] .conversation-avatar svg {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
[data-assisted-service] .conversation-main strong {
  color: #10251d;
  font-size: .95rem;
}
[data-assisted-service] .conversation-main small {
  color: #68766f;
  font-size: .76rem;
}
[data-assisted-service] .conversation-main em {
  color: #42544b;
  font-size: .80rem;
}
[data-assisted-service] .conversation-meta {
  align-self: stretch;
  align-content: start;
  gap: 8px;
}
[data-assisted-service] .conversation-meta > small {
  font-size: .72rem;
  color: #607169;
}
[data-assisted-service] .conversation-unread {
  min-width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: #0f5138;
  color: #fff;
  font-size: .68rem;
  font-weight: 900;
}
[data-assisted-service] .conversation-meta .badge {
  padding: 6px 9px;
  border-radius: 9px;
  font-size: .68rem;
}
[data-assisted-service] .digisac-chat-panel {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  background: #fffdf8;
}
[data-assisted-service] .chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 20px;
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid var(--as-border);
}
[data-assisted-service] .chat-contact-title {
  border: 0;
  background: transparent;
  padding: 0;
  min-width: 220px;
}
[data-assisted-service] .chat-contact-copy h2 {
  color: #10251d;
  font-size: 1.1rem;
  letter-spacing: -.02em;
}
[data-assisted-service] .chat-contact-copy p {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #617169;
  font-size: .82rem;
  font-weight: 700;
}
[data-assisted-service] .wa-dot {
  color: #22c55e;
  font-size: .68rem;
}
[data-assisted-service] .chat-header-actions {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
[data-assisted-service] .chat-header-actions form,
[data-assisted-service] .chat-transfer-menu {
  flex: 0 0 auto;
}
[data-assisted-service] .chat-header-actions .button,
[data-assisted-service] .chat-header-actions .badge,
[data-assisted-service] .chat-transfer-menu > summary {
  min-height: 42px;
  border-radius: 12px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  font-weight: 900;
}
[data-assisted-service] .chat-transfer-menu {
  position: relative;
}
[data-assisted-service] .chat-transfer-menu form {
  position: absolute;
  right: 0;
  top: 48px;
  z-index: 25;
  width: min(320px, 86vw);
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--as-border);
  background: #fff;
  box-shadow: 0 18px 48px rgba(17,31,25,.16);
}
[data-assisted-service] .chat-messages {
  position: relative;
  min-height: 0;
  overflow-y: auto;
  padding: 22px 28px 20px;
  gap: 14px;
  background:
    radial-gradient(circle at 18% 8%, rgba(15,81,56,.055), transparent 20%),
    radial-gradient(circle at 78% 16%, rgba(15,81,56,.035), transparent 22%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(250,247,239,.86));
}
[data-assisted-service] .chat-messages::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .60;
  background-image:
    radial-gradient(circle, rgba(15,81,56,.14) 0 2px, transparent 2.5px),
    linear-gradient(115deg, transparent 0 22%, rgba(15,81,56,.07) 22.15%, transparent 22.3% 100%),
    linear-gradient(25deg, transparent 0 52%, rgba(15,81,56,.055) 52.1%, transparent 52.25% 100%);
  background-size: 220px 140px, 520px 260px, 620px 320px;
  background-position: 30px 20px, -80px 20px, 140px 90px;
}
[data-assisted-service] .chat-messages > * {
  position: relative;
  z-index: 1;
}
[data-assisted-service] .chat-date-separator {
  align-self: center;
  margin: 0 auto 8px;
}
[data-assisted-service] .chat-date-separator span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(17,31,25,.08);
  box-shadow: 0 8px 18px rgba(17,31,25,.06);
  color: #36483f;
  font-weight: 850;
  font-size: .78rem;
}
[data-assisted-service] .chat-timeline-event {
  align-self: center;
  max-width: min(520px, 84%);
  border-radius: 18px;
  border: 1px solid rgba(17,31,25,.08);
  background: rgba(255,255,255,.88);
  box-shadow: 0 16px 34px rgba(17,31,25,.08);
  color: #1e352b;
  text-align: center;
}
[data-assisted-service] .chat-start-card {
  display: grid;
  justify-items: center;
  gap: 8px;
  min-width: min(430px, 84%);
  padding: 18px 22px 16px;
  border-radius: 20px;
}
[data-assisted-service] .chat-start-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  margin-top: -32px;
  border-radius: 999px;
  border: 1px solid rgba(15,81,56,.14);
  background: #dff6e8;
  color: #0f5138;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(15,81,56,.16);
}
[data-assisted-service] .chat-start-card strong {
  color: #10251d;
  font-size: 1rem;
}
[data-assisted-service] .chat-start-card p {
  margin: 0;
  color: #5b6a62;
  font-weight: 750;
}
[data-assisted-service] .chat-start-card small {
  width: 100%;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(17,31,25,.08);
  color: #53675d;
}
[data-assisted-service] .chat-bubble {
  max-width: min(700px, 70%);
  padding: 12px 14px;
  border-radius: 17px;
  box-shadow: 0 12px 28px rgba(17,31,25,.06);
}
[data-assisted-service] .chat-bubble.incoming {
  background: rgba(255,255,255,.96);
}
[data-assisted-service] .chat-bubble.outgoing {
  background: linear-gradient(135deg, #dff7e6, #d3f1df);
  border-color: rgba(15,81,56,.12);
}
[data-assisted-service] .chat-bubble span {
  color: #607169;
  letter-spacing: .06em;
}
[data-assisted-service] .chat-compose {
  padding: 12px 18px 16px;
  background: rgba(255,255,255,.96);
  border-top: 1px solid var(--as-border);
  box-shadow: 0 -12px 34px rgba(17,31,25,.04);
}
[data-assisted-service] .compose-tools {
  gap: 8px;
}
[data-assisted-service] .tool-button {
  min-width: 38px;
  min-height: 38px;
  border-radius: 13px;
  background: #fff;
  border: 1px solid rgba(17,31,25,.10);
  box-shadow: 0 6px 14px rgba(17,31,25,.04);
}
[data-assisted-service] .compact-summary-tool {
  min-width: auto;
  gap: 7px;
  padding: 0 12px;
  color: #0f5138;
}
[data-assisted-service] .compose-input-row {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
}
[data-assisted-service] .compose-textarea-wrap {
  display: grid;
  gap: 5px;
}
[data-assisted-service] .compose-input-row textarea {
  min-height: 50px;
  border-radius: 17px;
  border-color: rgba(17,31,25,.12);
  background: #fff;
  padding: 14px 16px;
}
[data-assisted-service] .compose-textarea-wrap small {
  color: #718078;
  font-size: .72rem;
}
[data-assisted-service] .send-message-button {
  min-height: 50px;
  gap: 9px;
  border-radius: 16px;
  padding: 0 22px;
  box-shadow: 0 12px 28px rgba(7,61,47,.22);
}
[data-assisted-service] .summary-panel {
  border-radius: 18px;
  border: 1px solid rgba(17,31,25,.10);
  background: #fff;
  padding: 12px;
  box-shadow: 0 12px 30px rgba(17,31,25,.08);
}
[data-assisted-service] .summary-panel[hidden] {
  display: none;
}
[data-assisted-service] .summary-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
[data-assisted-service] .summary-panel-header div {
  display: grid;
  gap: 2px;
}
[data-assisted-service] .summary-panel-header small,
[data-assisted-service] .summary-panel-card.empty p {
  color: #65746c;
}
[data-assisted-service] .summary-panel-card {
  margin-top: 10px;
  padding: 12px;
  border-radius: 14px;
  background: #f7f5ee;
}
[data-assisted-service] .summary-panel-card pre {
  margin: 0;
  white-space: pre-wrap;
  font: inherit;
  color: #21372d;
}
[data-assisted-service] .summary-kicker {
  display: block;
  margin-bottom: 8px;
  color: #0f5138;
  font-size: .75rem;
  font-weight: 900;
}
.rs-sidebar-control-row {
  position: relative;
  z-index: 2;
  justify-content: flex-end;
  padding: 10px 14px 0;
  margin-bottom: -38px;
  pointer-events: none;
}
.rs-sidebar-toggle-button {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: rgba(255,255,255,.055);
  border-color: rgba(255,255,255,.11);
  color: rgba(255,255,255,.70);
  box-shadow: none;
  pointer-events: auto;
}
.rs-sidebar-toggle-button:hover,
.rs-sidebar-toggle-button:focus-visible {
  background: rgba(255,255,255,.13);
  color: #fff;
}
.rs-sidebar-toggle-icon {
  font-size: .82rem;
}
@media (max-width: 1180px) {
  [data-assisted-service] .assisted-digisac-shell {
    grid-template-columns: 1fr;
  }
  [data-assisted-service] .chat-header,
  [data-assisted-service] .chat-header-actions {
    flex-wrap: wrap;
  }
  [data-assisted-service] .chat-bubble {
    max-width: 92%;
  }
}

/* Ajustes operacionais 05/05/2026: Kanban, Chat e sidebar */
.rs-brand-card-production,
.brand-card-v2.rs-brand-card-production {
  position: relative;
  overflow: visible;
}
.rs-sidebar-brand-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
}
.rs-sidebar-brand-top .rs-brand-link-production {
  min-width: 0;
  flex: 1 1 auto;
}
.rs-sidebar-toggle-button {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.16);
  color: rgba(255,255,255,.82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(0,0,0,.12);
  pointer-events: auto;
}
.rs-sidebar-toggle-button:hover,
.rs-sidebar-toggle-button:focus-visible {
  transform: translateY(-1px);
  background: rgba(255,255,255,.14);
  color: #fff;
}
@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-brand-card-production,
  body.sidebar-collapsed .brand-card-v2.rs-brand-card-production {
    display: grid;
    place-items: center;
    padding: 10px 0 14px;
  }
  body.sidebar-collapsed .rs-sidebar-brand-top {
    display: grid;
    place-items: center;
    width: 100%;
    margin: 0;
  }
  body.sidebar-collapsed .rs-sidebar-brand-top .rs-brand-link-production {
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    justify-content: center;
  }
  body.sidebar-collapsed .rs-sidebar-toggle-button {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 28px;
    height: 28px;
    border-radius: 10px;
    background: rgba(255,255,255,.10);
  }
  body.sidebar-collapsed .rs-brand-copy-production {
    display: none;
  }
}

[data-assisted-service] .assisted-hero-actions {
  flex-wrap: wrap;
}
[data-assisted-service] .assisted-core-switcher select {
  min-width: 170px;
  font-size: .86rem;
  font-weight: 820;
  letter-spacing: -.01em;
}
[data-assisted-service] .assisted-inbox-tabs {
  gap: 6px;
}
[data-assisted-service] .assisted-inbox-tabs a {
  min-width: 0;
  padding: 8px 7px;
  gap: 5px;
  font-size: .78rem;
  font-weight: 760;
  letter-spacing: -.01em;
}
[data-assisted-service] .assisted-inbox-tabs a span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
[data-assisted-service] .assisted-inbox-tabs a strong {
  min-width: 20px;
  height: 20px;
  padding-inline: 5px;
  font-size: .66rem;
}

[data-assisted-service] .kanban-admin-tools {
  display: grid;
  grid-template-columns: minmax(240px,.9fr) minmax(420px,1.4fr);
  gap: 14px;
  align-items: end;
  margin: 14px 0 0;
  padding: 14px;
  border: 1px solid rgba(15,81,56,.12);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(15,81,56,.06), rgba(255,255,255,.86));
  box-shadow: 0 12px 28px rgba(17,31,25,.05);
}
[data-assisted-service] .kanban-admin-tools p {
  margin: 4px 0 0;
  color: #65746c;
  font-size: .86rem;
}
[data-assisted-service] .kanban-admin-tools form {
  display: grid;
  grid-template-columns: minmax(160px,1fr) minmax(190px,1fr) auto;
  gap: 10px;
  align-items: center;
}
[data-assisted-service] .kanban-admin-tools input,
[data-assisted-service] .kanban-admin-tools select {
  min-height: 38px;
  border-radius: 12px;
  border: 1px solid rgba(17,31,25,.14);
  padding: 8px 10px;
  background: #fff;
}
[data-assisted-service] .assisted-kanban-board {
  grid-template-columns: repeat(3, minmax(310px, 1fr));
  grid-auto-flow: column;
  grid-auto-columns: minmax(310px, 1fr);
  overflow-x: auto;
  padding-bottom: 10px;
  scroll-snap-type: x proximity;
}
[data-assisted-service] .assisted-kanban-column {
  scroll-snap-align: start;
}
[data-assisted-service] .assisted-kanban-column.is-custom {
  background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(246,250,247,.72));
  border-style: dashed;
}
[data-assisted-service] .kanban-column-header {
  gap: 10px;
}
[data-assisted-service] .kanban-column-title-form {
  min-width: 0;
}
[data-assisted-service] .kanban-column-title-static {
  min-width: 0;
  display: grid;
  gap: 3px;
}
[data-assisted-service] .kanban-column-title-static small {
  color: #65746c;
  font-size: .72rem;
  font-weight: 760;
}
[data-assisted-service] .kanban-column-side {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
[data-assisted-service] .kanban-column-remove {
  width: 28px;
  height: 28px;
  border-radius: 10px;
  color: #8a173f;
  background: rgba(190,18,60,.08);
  border-color: rgba(190,18,60,.18);
}
[data-assisted-service] .kanban-column-footer {
  color: #63716a;
  font-weight: 760;
}

[data-assisted-service] .chat-timeline-event.is-finished {
  width: fit-content;
  max-width: min(360px, 76%);
  margin-inline: auto;
  padding: 12px 16px;
  border-radius: 16px;
  background: rgba(255,255,255,.94);
  border: 1px dashed rgba(15,81,56,.22);
  box-shadow: 0 12px 28px rgba(17,31,25,.08);
  color: #25362f;
}
[data-assisted-service] .chat-timeline-event.is-finished strong {
  display: block;
  margin-bottom: 4px;
  color: #0f3d2e;
  font-size: .92rem;
}
[data-assisted-service] .chat-timeline-event.is-finished p {
  margin: 0;
  font-size: .88rem;
  color: #526159;
}
[data-assisted-service] .compact-summary-tool {
  padding-inline: 14px;
  font-size: .84rem;
  font-weight: 900;
}
@media (max-width: 900px) {
  [data-assisted-service] .kanban-admin-tools,
  [data-assisted-service] .kanban-admin-tools form {
    grid-template-columns: 1fr;
  }
  [data-assisted-service] .assisted-kanban-board {
    grid-auto-flow: row;
    grid-template-columns: 1fr;
    overflow-x: visible;
  }
}


/* Ajustes finos 05/05/2026 - refinamento visual Conexões, Chat e sidebar */
.rs-sidebar-brand-top {
  gap: 8px;
  align-items: center;
}
.rs-sidebar-brand-top .rs-brand-link-production {
  padding-right: 2px;
}
.rs-sidebar-toggle-button {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.68);
  box-shadow: none;
}
.rs-sidebar-toggle-button:hover,
.rs-sidebar-toggle-button:focus-visible {
  transform: none;
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.16);
  color: rgba(255,255,255,.92);
}
body.sidebar-collapsed .rs-sidebar-toggle-button {
  width: 26px;
  height: 26px;
}

[data-assisted-service] .assisted-chat-empty-inline {
  min-width: min(320px, calc(100% - 32px));
  max-width: 420px;
  gap: 8px;
  padding: 24px 28px;
  border-radius: 22px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(17,31,25,.07);
  box-shadow: 0 18px 36px rgba(17,31,25,.05);
}
[data-assisted-service] .assisted-chat-empty-inline span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 14px;
  font-size: 1.25rem;
  background: rgba(15,81,56,.08);
}
[data-assisted-service] .assisted-chat-empty-inline strong {
  font-size: 1rem;
}
[data-assisted-service] .assisted-chat-empty-inline p {
  color: #69766f;
  line-height: 1.45;
}

[data-assisted-service] .chat-compose {
  position: relative;
}
[data-assisted-service] .compact-summary-tool {
  min-width: 38px;
  width: 38px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  font-size: 1.05rem;
  color: #0f5138;
}
[data-assisted-service] .compact-summary-tool span[aria-hidden="true"] {
  line-height: 1;
}
[data-assisted-service] .summary-panel {
  position: absolute;
  left: 16px;
  bottom: calc(100% + 10px);
  z-index: 8;
  width: min(360px, calc(100% - 32px));
  padding: 14px;
  border-radius: 20px;
  box-shadow: 0 18px 42px rgba(17,31,25,.10);
}
[data-assisted-service] .summary-panel-header {
  align-items: flex-start;
}
[data-assisted-service] .summary-panel-header small,
[data-assisted-service] .summary-panel-card.empty p {
  line-height: 1.45;
}
[data-assisted-service] .summary-panel-card {
  max-height: 260px;
  overflow: auto;
}

.whatsapp-toggle-grid.integration-switch-grid,
.integration-switch-grid.whatsapp-toggle-grid {
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  gap: 12px;
}
.whatsapp-toggle-grid .setting-switch-card {
  min-height: 98px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,250,247,.92));
  box-shadow: 0 10px 24px rgba(8,48,37,.05);
}
.whatsapp-toggle-grid .switch-copy {
  gap: 4px;
}
.whatsapp-toggle-grid .switch-copy strong {
  font-size: .9rem;
  line-height: 1.2;
}
.whatsapp-toggle-grid .switch-copy small {
  font-size: .78rem;
  line-height: 1.4;
  color: #6d7a73;
}
.whatsapp-toggle-grid .switch-control {
  flex: 0 0 50px;
  width: 50px;
  height: 30px;
}
.whatsapp-toggle-grid .switch-control::after {
  width: 20px;
  height: 20px;
}
.whatsapp-toggle-grid .setting-switch-card input:checked ~ .switch-control::after {
  transform: translateX(20px);
}

.connection-card {
  border-radius: 22px;
}
.connection-card-header {
  gap: 12px;
}
.connection-health-card {
  gap: 10px;
  padding: 12px 14px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(240,250,244,.96), rgba(255,255,255,.96));
}
.connection-health-card strong {
  font-size: .95rem;
  letter-spacing: -.01em;
}
.connection-health-card small {
  margin-top: 4px;
  font-weight: 600;
  line-height: 1.45;
}
.connection-health-orb {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  box-shadow: 0 10px 20px rgba(15,81,56,.14);
}
.zapi-connected-state strong {
  font-size: .95rem;
}
.zapi-connected-state small {
  font-weight: 600;
}

@media (max-width: 1180px) {
  .whatsapp-toggle-grid.integration-switch-grid,
  .integration-switch-grid.whatsapp-toggle-grid {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }
}
@media (max-width: 760px) {
  [data-assisted-service] .summary-panel {
    left: 12px;
    width: calc(100% - 24px);
  }
  .whatsapp-toggle-grid.integration-switch-grid,
  .integration-switch-grid.whatsapp-toggle-grid {
    grid-template-columns: 1fr;
  }
}

/* Correção definitiva 05/05/2026 - marca da sidebar sem sobreposição e sem corte */
.rs-sidebar .rs-brand-card-production,
.rs-sidebar .brand-card-v2.rs-brand-card-production {
  overflow: visible;
}

.rs-sidebar .rs-sidebar-brand-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px;
  align-items: center;
  gap: 8px;
  width: 100%;
}

.rs-sidebar .rs-brand-link-production,
.rs-sidebar .rs-brand-block.rs-brand-link-production {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  justify-items: start;
  gap: 10px;
  padding: 10px 8px;
  text-align: left;
  overflow: visible;
}

.rs-sidebar .rs-brand-logo-stage-production,
.rs-sidebar .rs-brand-logo-stage {
  width: 54px;
  height: 54px;
  min-width: 54px;
  flex: 0 0 54px;
}

.rs-sidebar .rs-brand-logo-placeholder-production,
.rs-sidebar .rs-brand-logo-placeholder {
  width: 54px;
  height: 54px;
  border-radius: 18px;
}

.rs-sidebar .rs-brand-copy-production,
.rs-sidebar .rs-brand-copy {
  width: auto;
  min-width: 0;
  max-width: 100%;
  display: grid;
  justify-items: start;
  gap: 2px;
  overflow: visible;
}

.rs-sidebar .rs-brand-title,
.rs-sidebar .rs-brand-copy .rs-brand-title {
  max-width: 100%;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  letter-spacing: .035em;
}

.rs-sidebar .rs-brand-subtitle,
.rs-sidebar .rs-brand-copy .rs-brand-subtitle {
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  font-size: .62rem;
  line-height: 1.1;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.rs-sidebar .rs-sidebar-toggle-button {
  position: static;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.72);
  box-shadow: none;
  pointer-events: auto;
  transform: none;
}

.rs-sidebar .rs-sidebar-toggle-button:hover,
.rs-sidebar .rs-sidebar-toggle-button:focus-visible {
  background: rgba(255,255,255,.12);
  color: rgba(255,255,255,.95);
}

@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-sidebar,
  body.sidebar-collapsed .sidebar-v2 {
    width: 96px;
    max-width: 96px;
    padding-inline: 10px;
  }

  body.sidebar-collapsed .rs-brand-card-production,
  body.sidebar-collapsed .brand-card-v2.rs-brand-card-production {
    display: block;
    padding: 8px 0 14px;
    margin: 0;
    background: transparent;
    box-shadow: none;
    border-bottom: 1px solid rgba(255,255,255,.11);
  }

  body.sidebar-collapsed .rs-sidebar-brand-top {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    place-items: center;
    gap: 0;
    width: 100%;
    margin: 0;
  }

  body.sidebar-collapsed .rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production {
    width: 58px;
    height: 58px;
    min-height: 58px;
    margin: 0 auto;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr;
    place-items: center;
    gap: 0;
    border-radius: 20px;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }

  body.sidebar-collapsed .rs-brand-logo-stage-production,
  body.sidebar-collapsed .rs-brand-logo-stage {
    width: 52px;
    height: 52px;
    min-width: 52px;
    max-width: 52px;
    margin: 0;
    display: grid;
    place-items: center;
    transform: none;
  }

  body.sidebar-collapsed .rs-brand-logo-placeholder-production,
  body.sidebar-collapsed .rs-brand-logo-placeholder {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    overflow: hidden;
  }

  body.sidebar-collapsed .rs-brand-logo-img-production,
  body.sidebar-collapsed .rs-brand-logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
  }

  body.sidebar-collapsed .rs-brand-copy,
  body.sidebar-collapsed .rs-brand-copy-production {
    display: none;
  }

  body.sidebar-collapsed .rs-sidebar-toggle-button {
    position: absolute;
    top: -2px;
    right: -4px;
    z-index: 4;
    width: 24px;
    height: 24px;
    min-width: 24px;
    border-radius: 999px;
    background: rgba(5,28,22,.92);
    border: 1px solid rgba(255,255,255,.16);
    color: rgba(255,255,255,.78);
    box-shadow: 0 8px 18px rgba(0,0,0,.18);
  }

  body.sidebar-collapsed .rs-sidebar-toggle-icon {
    font-size: .72rem;
    line-height: 1;
  }
}


/* Refino sidebar 05/05/2026 - logo limpo e botão melhor alinhado */
.rs-sidebar .rs-brand-card-production,
.rs-sidebar .brand-card-v2.rs-brand-card-production {
  padding-right: 0;
}

.rs-sidebar .rs-sidebar-brand-top {
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: end;
  gap: 4px;
}

.rs-sidebar .rs-brand-link-production,
.rs-sidebar .rs-brand-block.rs-brand-link-production {
  padding: 8px 0 10px 8px;
}

.rs-sidebar .rs-sidebar-toggle-button {
  justify-self: end;
  align-self: end;
  margin-right: 0;
  margin-bottom: -8px;
}

@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-brand-card-production,
  body.sidebar-collapsed .brand-card-v2.rs-brand-card-production {
    padding: 6px 0 14px;
  }

  body.sidebar-collapsed .rs-sidebar-brand-top {
    padding-top: 2px;
  }

  body.sidebar-collapsed .rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production {
    width: auto;
    height: auto;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  body.sidebar-collapsed .rs-brand-logo-stage-production,
  body.sidebar-collapsed .rs-brand-logo-stage {
    width: 46px;
    height: 46px;
    min-width: 46px;
    max-width: 46px;
  }

  body.sidebar-collapsed .rs-brand-logo-placeholder-production,
  body.sidebar-collapsed .rs-brand-logo-placeholder {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  body.sidebar-collapsed .rs-brand-logo-img-production,
  body.sidebar-collapsed .rs-brand-logo-img {
    padding: 0;
    object-fit: contain;
  }

  body.sidebar-collapsed .rs-sidebar-toggle-button {
    top: -8px;
    right: 0;
    margin: 0;
  }
}

/* Correção final 05/05/2026 - sidebar: logo limpo no modo recolhido e botão alinhado na linha */
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-card-production,
body:not(.sidebar-collapsed) .rs-sidebar .brand-card-v2.rs-brand-card-production {
  position: relative;
  overflow: visible;
  padding-right: 0;
  margin-right: 0;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-brand-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 0;
  width: 100%;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-link-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-block.rs-brand-link-production {
  width: 100%;
  padding-right: 18px;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-toggle-button {
  position: absolute;
  right: -12px;
  bottom: -13px;
  z-index: 7;
  width: 28px;
  height: 28px;
  min-width: 28px;
  margin: 0;
  border-radius: 999px;
  background: rgba(8, 43, 33, .96);
  border: 1px solid rgba(255, 255, 255, .18);
  color: rgba(255, 255, 255, .82);
  box-shadow: 0 10px 20px rgba(0, 0, 0, .18);
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-toggle-button:hover,
body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-toggle-button:focus-visible {
  background: rgba(13, 61, 47, .98);
  color: #fff;
  transform: none;
}

@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-sidebar,
  body.sidebar-collapsed .sidebar-v2 {
    width: 92px;
    max-width: 92px;
    padding-inline: 10px;
  }

  body.sidebar-collapsed .rs-brand-card-production,
  body.sidebar-collapsed .brand-card-v2.rs-brand-card-production {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    overflow: visible;
    min-height: 74px;
    padding: 2px 0 15px;
    margin: 0 0 14px;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .11);
    box-shadow: none;
  }

  body.sidebar-collapsed .rs-sidebar-brand-top {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    place-items: center;
    width: 52px;
    height: 52px;
    padding: 0;
    margin: 0 auto;
    gap: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  body.sidebar-collapsed .rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production,
  body.sidebar-collapsed .rs-brand-logo-stage-production,
  body.sidebar-collapsed .rs-brand-logo-stage,
  body.sidebar-collapsed .rs-brand-logo-placeholder-production,
  body.sidebar-collapsed .rs-brand-logo-placeholder {
    width: 48px;
    height: 48px;
    min-width: 48px;
    max-width: 48px;
    min-height: 48px;
    padding: 0;
    margin: 0;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 0;
    outline: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }

  body.sidebar-collapsed .rs-brand-link-production::before,
  body.sidebar-collapsed .rs-brand-link-production::after,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production::before,
  body.sidebar-collapsed .rs-brand-block.rs-brand-link-production::after,
  body.sidebar-collapsed .rs-brand-logo-stage-production::before,
  body.sidebar-collapsed .rs-brand-logo-stage-production::after,
  body.sidebar-collapsed .rs-brand-logo-stage::before,
  body.sidebar-collapsed .rs-brand-logo-stage::after,
  body.sidebar-collapsed .rs-brand-logo-placeholder-production::before,
  body.sidebar-collapsed .rs-brand-logo-placeholder-production::after,
  body.sidebar-collapsed .rs-brand-logo-placeholder::before,
  body.sidebar-collapsed .rs-brand-logo-placeholder::after {
    content: none;
    display: none;
  }

  body.sidebar-collapsed .rs-brand-logo-img-production,
  body.sidebar-collapsed .rs-brand-logo-img {
    width: 48px;
    height: 48px;
    max-width: 48px;
    max-height: 48px;
    padding: 0;
    object-fit: contain;
    filter: none;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  body.sidebar-collapsed .rs-brand-copy,
  body.sidebar-collapsed .rs-brand-copy-production {
    display: none;
  }

  body.sidebar-collapsed .rs-sidebar-toggle-button {
    position: absolute;
    top: -13px;
    right: -13px;
    z-index: 8;
    width: 24px;
    height: 24px;
    min-width: 24px;
    margin: 0;
    border-radius: 999px;
    background: rgba(8, 43, 33, .96);
    border: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .80);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
  }

  body.sidebar-collapsed .rs-sidebar-toggle-button:hover,
  body.sidebar-collapsed .rs-sidebar-toggle-button:focus-visible {
    background: rgba(13, 61, 47, .98);
    color: #fff;
    transform: none;
  }

  body.sidebar-collapsed .rs-sidebar-toggle-icon {
    font-size: .72rem;
    line-height: 1;
  }
}


/* Execução UX 05/05 - Relatórios, Chat, Inbox e Kanban */
.reports-page .metric-card strong,
.reports-hero ~ .metric-grid .metric-card strong,
.metric-card strong,
.premium-metric-card strong,
.stat-card strong {
  font-family: var(--font-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
  letter-spacing: -.025em;
}

[data-assisted-service] .chat-date-separator {
  width: min(560px, 72%);
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 8px auto 12px;
}
[data-assisted-service] .chat-date-separator::before,
[data-assisted-service] .chat-date-separator::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(15,81,56,.18), transparent);
}
[data-assisted-service] .chat-date-separator span {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 0 13px;
  border: 1px solid rgba(15,81,56,.12);
  background: rgba(255,255,255,.86);
  box-shadow: 0 8px 18px rgba(17,31,25,.05);
}
[data-assisted-service] .chat-timeline-event {
  max-width: min(420px, 78%);
  padding: 10px 14px;
  border: 1px solid rgba(15,81,56,.10);
  background: rgba(255,255,255,.78);
  box-shadow: 0 10px 24px rgba(17,31,25,.05);
}
[data-assisted-service] .chat-timeline-event strong {
  font-size: .86rem;
  color: #0f3d2e;
}
[data-assisted-service] .chat-timeline-event p {
  margin: 3px 0 0;
  font-size: .82rem;
  color: #65746c;
  line-height: 1.4;
}
[data-assisted-service] .chat-timeline-event.is-ai-event {
  border-style: solid;
  background: linear-gradient(135deg, rgba(230,244,235,.78), rgba(255,255,255,.86));
}
[data-assisted-service] .chat-timeline-event.is-ai-event strong::before {
  content: '✦';
  margin-right: 6px;
  color: #0f5138;
}

[data-assisted-service] .chat-compose {
  padding: 10px 14px 12px;
}
[data-assisted-service] .compact-chat-composer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}
[data-assisted-service] .compose-left-tools {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 48px;
}
[data-assisted-service] .compose-plus-menu {
  position: relative;
}
[data-assisted-service] .plus-tool span[aria-hidden="true"] {
  font-size: 1.35rem;
  line-height: 1;
  font-weight: 600;
}
[data-assisted-service] .compose-menu {
  bottom: calc(100% + 8px);
  top: auto;
  left: 0;
  min-width: 190px;
}
[data-assisted-service] .compose-menu button {
  min-height: 38px;
  font-weight: 800;
}
[data-assisted-service] .compose-textarea-wrap {
  align-self: end;
}
[data-assisted-service] .compose-input-row textarea,
[data-assisted-service] textarea[data-autosize-textarea] {
  min-height: 48px;
  height: 48px;
  max-height: 150px;
  overflow-y: auto;
  resize: none;
  line-height: 1.45;
  padding: 13px 16px;
}
[data-assisted-service] .audio-tool {
  align-self: end;
  width: 48px;
  min-width: 48px;
  height: 48px;
  border-radius: 16px;
  color: #0f5138;
}
[data-assisted-service] .send-message-button { display: none; }

[data-assisted-service] .kanban-column-title-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
}
[data-assisted-service] .kanban-column-title-input[readonly] {
  cursor: default;
  background: rgba(15,81,56,.06);
  border-color: transparent;
  color: #10251d;
}
[data-assisted-service] .kanban-column-title-form:not(.is-editing) .kanban-column-title-save {
  display: none;
}
[data-assisted-service] .kanban-column-title-edit {
  min-height: 34px;
  padding-inline: 10px;
  border-radius: 11px;
  font-size: .76rem;
}
[data-assisted-service] .kanban-column-title-form.is-editing .kanban-column-title-input {
  background: #fff;
  border-color: rgba(15,81,56,.24);
  box-shadow: 0 0 0 3px rgba(15,81,56,.08);
}

@media (max-width: 860px) {
  [data-assisted-service] .compact-chat-composer {
    grid-template-columns: 1fr auto;
  }
  [data-assisted-service] .compose-left-tools {
    grid-column: 1 / -1;
    overflow-x: auto;
    padding-bottom: 2px;
  }
}


/* 05/05 - refinamento Chat/Contato/SIA/roteamento */
[data-assisted-service] .conversation-sidebar-tools .sidebar-filter-menu { display: none; }
[data-assisted-service] .message-read-state {
  display: inline-flex;
  margin-left: 8px;
  gap: 3px;
  font-weight: 850;
  color: #0f7658;
}
[data-assisted-service] .message-read-state.error { color: #be123c; }
[data-assisted-service] .compact-chat-composer {
  grid-template-columns: auto minmax(280px, 1fr) auto;
  align-items: end;
  gap: 10px;
}
[data-assisted-service] .compose-left-tools {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  flex-wrap: nowrap;
}
[data-assisted-service] .compose-left-tools .tool-button,
[data-assisted-service] .audio-tool {
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
  padding: 0;
  border-radius: 15px;
}
[data-assisted-service] .compose-textarea-wrap textarea[data-autosize-textarea] {
  min-height: 42px;
  height: 42px;
  max-height: 150px;
  resize: none;
  overflow-y: auto;
  padding: 11px 16px;
}
[data-assisted-service] .audio-tool {
  justify-self: end;
  margin-left: auto;
  border-color: rgba(15,81,56,.16);
  background: #fff;
}
[data-assisted-service] .audio-tool.is-recording {
  color: #fff;
  background: #be123c;
  border-color: #be123c;
  animation: audioPulse 1.1s infinite;
}
@keyframes audioPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(190,18,60,.24); }
  50% { box-shadow: 0 0 0 8px rgba(190,18,60,0); }
}
[data-assisted-service] .compose-menu {
  min-width: 210px;
  padding: 10px;
  border-radius: 18px;
}
[data-assisted-service] .compose-menu button {
  font-size: .94rem;
  font-weight: 900;
  min-height: 42px;
}
[data-assisted-service] .contact-share-panel {
  margin: 10px 18px 16px;
  padding: 16px;
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,251,248,.94));
  border: 1px solid rgba(17,31,25,.10);
  box-shadow: 0 16px 38px rgba(17,31,25,.08);
}
[data-assisted-service] .contact-share-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
[data-assisted-service] .contact-share-head strong { color: #09281f; font-size: 1rem; }
[data-assisted-service] .contact-share-head small { color: #68766f; }
[data-assisted-service] .contact-share-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr);
  gap: 12px;
}
[data-assisted-service] .phone-prefix-field {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  border: 1px solid rgba(17,31,25,.13);
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}
[data-assisted-service] .phone-prefix-field b {
  display: grid;
  place-items: center;
  align-self: stretch;
  padding: 0 12px;
  color: #0f5138;
  background: rgba(15,81,56,.08);
}
[data-assisted-service] .phone-prefix-field input { border: 0; border-radius: 0; }
[data-assisted-service] .sia-control-center {
  background: radial-gradient(circle at top left, rgba(15,81,56,.08), transparent 28rem), #fff;
}
[data-assisted-service] .sia-hero h2 { font-size: clamp(1.6rem, 2vw, 2.3rem); }
[data-assisted-service] .sia-board {
  display: grid;
  grid-template-columns: minmax(280px, .85fr) minmax(360px, 1.15fr);
  gap: 16px;
}
[data-assisted-service] .sia-panel {
  border-radius: 24px;
  border: 1px solid rgba(17,31,25,.10);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 46px rgba(17,31,25,.07);
}
[data-assisted-service] .assignment-grid {
  display: grid;
  grid-template-columns: 1fr 160px;
  gap: 12px;
  align-items: end;
}
[data-assisted-service] .assignment-grid .setting-switch-card { grid-column: 1 / -1; }
[data-assisted-service] .assignment-users {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-top: 12px;
  max-height: 260px;
  overflow: auto;
  padding-right: 4px;
}
[data-assisted-service] .assignment-user-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 64px;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid rgba(17,31,25,.10);
  background: #fff;
}
[data-assisted-service] .assignment-user-card strong { display: block; color: #10251d; }
[data-assisted-service] .assignment-user-card small { color: #65746c; }
[data-assisted-service] .ai-agent-card-grid.game-style {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
  gap: 14px;
  max-height: 760px;
  overflow: auto;
  padding: 2px 4px 8px 2px;
}
[data-assisted-service] .ai-agent-game-card {
  position: relative;
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 22px;
  border: 1px solid rgba(17,31,25,.10);
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(242,248,244,.92));
  box-shadow: 0 16px 34px rgba(17,31,25,.07);
}
[data-assisted-service] .ai-agent-game-card.filled {
  border-color: rgba(15,81,56,.22);
  background: radial-gradient(circle at top right, rgba(54,224,127,.12), transparent 12rem), #fff;
}
[data-assisted-service] .ai-agent-game-card.empty-slot { opacity: .78; }
[data-assisted-service] .agent-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
[data-assisted-service] .agent-card-top > span {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: #0f5138;
  color: #fff;
  font-weight: 950;
}
[data-assisted-service] .agent-card-top label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: #0f5138;
  font-weight: 850;
}
[data-assisted-service] .ai-rules-grid { display: none; }
@media (max-width: 1000px) {
  [data-assisted-service] .sia-board,
  [data-assisted-service] .contact-share-grid { grid-template-columns: 1fr; }
  [data-assisted-service] .compact-chat-composer { grid-template-columns: 1fr; }
  [data-assisted-service] .compose-left-tools { flex-wrap: wrap; }
}


/* Ajustes finos 05/05/2026 - Chat, histórico e cliente em foco */
[data-assisted-service] .chat-compose {
  padding: 10px 18px 12px;
}
[data-assisted-service] .compact-chat-composer {
  display: grid;
  grid-template-columns: auto minmax(320px, 1fr) auto;
  width: 100%;
  gap: 12px;
  align-items: end;
}
[data-assisted-service] .compose-left-tools {
  min-width: max-content;
}
[data-assisted-service] .compose-textarea-wrap {
  width: 100%;
  min-width: 0;
}
[data-assisted-service] .compose-textarea-wrap textarea[data-autosize-textarea] {
  width: 100%;
  min-height: 42px;
  height: 42px;
  max-height: 150px;
}
[data-assisted-service] .audio-tool {
  justify-self: end;
  margin-left: 0;
}
[data-assisted-service] .message-read-state {
  min-width: 18px;
  justify-content: center;
  font-size: .84rem;
  letter-spacing: -.08em;
  font-weight: 950;
}
[data-assisted-service] .message-read-state.error {
  letter-spacing: 0;
}
[data-assisted-service] .assisted-core-switcher select,
[data-assisted-service] .assisted-core-switcher select option,
[data-assisted-service] .sidebar-filter-panel select,
[data-assisted-service] .sidebar-filter-panel select option {
  font-weight: 600;
}
[data-assisted-service] .chat-encryption-note {
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
[data-assisted-service] .chat-start-card {
  max-width: min(520px, calc(100% - 32px));
}
[data-assisted-service] .quick-reply-panel {
  position: absolute;
  right: 96px;
  bottom: calc(100% + 10px);
  z-index: 12;
  width: min(440px, calc(100% - 34px));
  padding: 12px;
  border-radius: 22px;
  background: rgba(255,255,255,.98);
  border: 1px solid rgba(17,31,25,.10);
  box-shadow: 0 22px 54px rgba(17,31,25,.13);
}
[data-assisted-service] .quick-reply-panel input {
  min-height: 42px;
  margin: 0 0 10px;
  border-radius: 16px;
  background: #fff;
}
[data-assisted-service] .quick-reply-panel [data-quick-reply-list] {
  display: grid;
  gap: 8px;
  max-height: 310px;
  overflow: auto;
  padding-right: 3px;
}
[data-assisted-service] .quick-reply-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 10px;
  align-items: start;
  width: 100%;
  text-align: left;
  padding: 10px 12px;
  border: 1px solid rgba(17,31,25,.10);
  border-radius: 16px;
  background: linear-gradient(135deg, #fff, #f6f3ea);
  cursor: pointer;
}
[data-assisted-service] .quick-reply-option:hover {
  border-color: rgba(15,81,56,.25);
  box-shadow: 0 8px 18px rgba(17,31,25,.07);
}
[data-assisted-service] .quick-reply-option .quick-reply-shortcut {
  grid-row: span 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(15,81,56,.09);
  color: #0f5138;
  font-weight: 900;
  font-size: .78rem;
}
[data-assisted-service] .quick-reply-option strong {
  color: #10251d;
  font-size: .92rem;
  line-height: 1.2;
}
[data-assisted-service] .quick-reply-option small {
  color: #65746c;
  line-height: 1.35;
}
[data-assisted-service] .service-history-panel {
  margin: 10px 16px 0;
  padding: 14px;
  border: 1px solid rgba(15,81,56,.13);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,248,244,.86));
  box-shadow: 0 18px 42px rgba(17,31,25,.08);
}
[data-assisted-service] .service-history-panel[hidden] {
  display: none;
}
[data-assisted-service] .service-history-panel header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
[data-assisted-service] .service-history-panel header strong {
  color: #09281f;
  font-size: 1rem;
}
[data-assisted-service] .service-history-panel header small {
  color: #65746c;
}
[data-assisted-service] .service-history-list {
  display: grid;
  gap: 8px;
  max-height: 260px;
  overflow: auto;
}
[data-assisted-service] .service-history-list article {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 15px;
  background: #fff;
  border: 1px solid rgba(17,31,25,.08);
}
[data-assisted-service] .service-history-list time {
  color: #6d7972;
  font-size: .78rem;
  font-weight: 700;
}
[data-assisted-service] .service-history-list strong {
  color: #10251d;
}
[data-assisted-service] .service-history-list p {
  margin: 0;
  color: #5e6a63;
  line-height: 1.35;
}
[data-assisted-service] .chat-history-toggle.is-active {
  background: #0f5138;
  color: #fff;
  border-color: #0f5138;
}
[data-assisted-service] .drawer-section-headline:has(span:empty) span {
  display: none;
}
[data-assisted-service] .drawer-media-list strong {
  text-transform: none;
}
[data-assisted-service] .assisted-contact-identity p {
  color: #65746c;
  font-weight: 750;
}
@media (max-width: 860px) {
  [data-assisted-service] .compact-chat-composer {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  [data-assisted-service] .compose-left-tools {
    grid-column: 1 / -1;
    overflow-x: auto;
  }
  [data-assisted-service] .quick-reply-panel {
    right: 12px;
    left: 12px;
    width: auto;
  }
}

/* Correção final 05/05/2026 - composer do chat ocupando toda a largura */
[data-assisted-service] form.chat-compose.digisac-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: none;
  align-items: stretch;
  gap: 8px;
  padding: 10px 18px 12px;
}
[data-assisted-service] form.chat-compose.digisac-composer > input[type='hidden'] {
  display: none;
}
[data-assisted-service] form.chat-compose.digisac-composer > .compose-input-row.compact-chat-composer {
  grid-column: 1 / -1;
  justify-self: stretch;
  width: 100%;
  max-width: none;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 44px 44px;
  align-items: end;
  gap: 12px;
}
[data-assisted-service] form.chat-compose.digisac-composer > .chat-panel-strip,
[data-assisted-service] form.chat-compose.digisac-composer > .quick-reply-panel,
[data-assisted-service] form.chat-compose.digisac-composer > .summary-panel,
[data-assisted-service] form.chat-compose.digisac-composer > .contact-share-panel {
  grid-column: 1 / -1;
}
[data-assisted-service] .compose-textarea-wrap {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: none;
}
[data-assisted-service] .compose-textarea-wrap textarea[data-autosize-textarea] {
  width: 100%;
  max-width: none;
}
[data-assisted-service] .audio-tool {
  justify-self: end;
  align-self: end;
  width: 42px;
  min-width: 42px;
  height: 42px;
  margin-left: 0;
}
@media (max-width: 860px) {
  [data-assisted-service] form.chat-compose.digisac-composer > .compose-input-row.compact-chat-composer {
    grid-template-columns: minmax(0, 1fr) 44px;
  }
  [data-assisted-service] form.chat-compose.digisac-composer .compose-left-tools {
    grid-column: 1 / -1;
  }
}

/* Ajustes 05/05/2026 - chat: composer estilo WhatsApp, criptografia e status visual */
[data-assisted-service] .chat-start-card {
  width: fit-content;
  min-width: min(520px, calc(100% - 32px));
  max-width: calc(100% - 32px);
}
[data-assisted-service] .chat-encryption-note {
  display: block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: .78rem;
  line-height: 1.35;
}
[data-assisted-service] form.chat-compose.digisac-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: none;
  align-items: stretch;
  padding: 10px 18px 12px;
}
[data-assisted-service] form.chat-compose.digisac-composer > .compose-input-row.compact-chat-composer {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr) 48px;
  align-items: end;
  width: 100%;
  max-width: none;
  gap: 12px;
}
[data-assisted-service] form.chat-compose.digisac-composer .compose-left-tools {
  min-width: max-content;
  justify-self: start;
}
[data-assisted-service] form.chat-compose.digisac-composer .compose-textarea-wrap {
  min-width: 0;
  width: 100%;
}
[data-assisted-service] form.chat-compose.digisac-composer .audio-tool {
  justify-self: end;
  align-self: end;
  width: 48px;
  min-width: 48px;
  height: 48px;
  margin-left: 0;
  border-radius: 999px;
}
[data-assisted-service] .chat-bubble-meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  width: 100%;
  margin-top: 6px;
  color: #667781;
  font-size: .72rem;
  line-height: 1;
}
[data-assisted-service] .message-read-state {
  display: inline-flex;
  align-items: center;
  min-width: 18px;
  margin-left: 2px;
  color: #667781;
  font-weight: 950;
  letter-spacing: -.08em;
  line-height: 1;
}
[data-assisted-service] .message-read-state.sent,
[data-assisted-service] .message-read-state.delivered {
  color: #667781;
}
[data-assisted-service] .message-read-state.read {
  color: #34b7f1;
}
[data-assisted-service] .message-read-state.pending {
  color: #8a948e;
  letter-spacing: 0;
}
[data-assisted-service] .message-read-state.error {
  color: #be123c;
  letter-spacing: 0;
}
@media (max-width: 860px) {
  [data-assisted-service] form.chat-compose.digisac-composer > .compose-input-row.compact-chat-composer {
    grid-template-columns: minmax(0, 1fr) 48px;
  }
  [data-assisted-service] form.chat-compose.digisac-composer .compose-left-tools {
    grid-column: 1 / -1;
    overflow-x: auto;
    padding-bottom: 2px;
  }
}
@media (max-width: 620px) {
  [data-assisted-service] .chat-encryption-note {
    white-space: normal;
  }
}

/* Backfill de mensagens antigas da Z-API */
.zapi-backfill-form {
  border-top: 1px solid var(--rs-border, #dfe8e2);
  margin-top: 2px;
  padding-top: 14px;
}

html[data-theme='dark'] .zapi-backfill-form {
  border-top-color: rgba(255,255,255,.12);
}

/* ================================
   Incremental refinement | users + assisted service
   ================================ */
.rs-user-role-caption {
  margin: 2px 0 0;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: rgba(70, 90, 82, 0.88);
}

.users-edit-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  margin-inline: 0;
}

.users-edit-grid {
  align-items: start;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 360px);
  gap: clamp(20px, 2.2vw, 28px);
}

.users-edit-main-card,
.users-edit-preview-card {
  min-height: 100%;
}

.users-edit-preview-card {
  position: sticky;
  top: 110px;
}

.settings-console-summary-row-users .settings-hero-highlights,
.settings-console-summary-row-users {
  gap: 16px;
}

.settings-console-summary-row-users .settings-highlight-card {
  min-height: 132px;
  padding: 22px 24px;
  border-radius: 24px;
}

.settings-console-summary-row-users .settings-highlight-card strong,
.settings-console-summary-row-users .settings-highlight-value {
  font-size: clamp(1.9rem, 2.3vw, 2.45rem);
  line-height: 1;
}

.settings-console-summary-row-users .settings-highlight-card span,
.settings-console-summary-row-users .settings-highlight-label {
  font-size: 0.95rem;
  font-weight: 600;
}

.assisted-digisac-shell {
  overflow: hidden;
}

.digisac-chat-messages {
  background-color: #ece7de;
  background-image:
    radial-gradient(circle at 20% 20%, rgba(84, 101, 111, 0.06) 0 1.4px, transparent 1.6px),
    radial-gradient(circle at 80% 35%, rgba(84, 101, 111, 0.05) 0 1.2px, transparent 1.4px),
    linear-gradient(135deg, rgba(84, 101, 111, 0.035) 0, rgba(84, 101, 111, 0.035) 1px, transparent 1px, transparent 26px),
    linear-gradient(45deg, rgba(84, 101, 111, 0.03) 0, rgba(84, 101, 111, 0.03) 1px, transparent 1px, transparent 34px);
  background-size: 32px 32px, 40px 40px, 120px 120px, 140px 140px;
  background-position: 0 0, 14px 12px, 0 0, 24px 18px;
}

.conversation-lifecycle-card {
  border: 1px dashed rgba(120, 146, 132, 0.32);
  box-shadow: 0 14px 28px rgba(17, 24, 39, 0.08);
}

.conversation-lifecycle-card strong {
  color: #163f33;
}

.conversation-lifecycle-card p,
.conversation-lifecycle-card .timeline-summary-body,
.conversation-lifecycle-card .chat-encryption-note {
  color: rgba(31, 52, 43, 0.78);
}

html[data-theme='dark'] .rs-user-role-caption {
  color: rgba(216, 232, 223, 0.78);
}

html[data-theme='dark'] .assisted-digisac-shell {
  background: linear-gradient(180deg, rgba(5, 23, 21, 0.98) 0%, rgba(4, 18, 16, 0.98) 100%);
  border-color: rgba(108, 157, 136, 0.22);
  box-shadow: 0 28px 56px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

html[data-theme='dark'] .assisted-conversation-sidebar {
  background: linear-gradient(180deg, rgba(5, 27, 24, 0.98) 0%, rgba(3, 18, 16, 0.98) 100%);
  border-right: 1px solid rgba(111, 159, 139, 0.16);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.02);
}

html[data-theme='dark'] .assisted-conversation-sidebar .panel-header h3,
html[data-theme='dark'] .assisted-conversation-sidebar .panel-header h4,
html[data-theme='dark'] .assisted-conversation-sidebar .panel-header strong,
html[data-theme='dark'] .assisted-conversation-sidebar .panel-header span,
html[data-theme='dark'] .assisted-conversation-sidebar .empty {
  color: #edf7f2;
}

html[data-theme='dark'] .assisted-conversation-sidebar .icon-button,
html[data-theme='dark'] .assisted-conversation-sidebar .filters-row .button,
html[data-theme='dark'] .assisted-conversation-sidebar .filters-row .button.secondary {
  background: rgba(12, 39, 34, 0.82);
  border-color: rgba(120, 175, 152, 0.18);
  color: #eff8f4;
}

html[data-theme='dark'] .conversation-search-field {
  background: rgba(7, 26, 23, 0.94);
  border: 1px solid rgba(111, 159, 139, 0.16);
  color: #eef7f2;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme='dark'] .conversation-search-field::placeholder {
  color: rgba(214, 230, 223, 0.55);
}

html[data-theme='dark'] .assisted-inbox-tabs {
  gap: 10px;
}

html[data-theme='dark'] .assisted-inbox-tabs a {
  background: rgba(12, 37, 33, 0.72);
  border: 1px solid rgba(111, 159, 139, 0.16);
  color: rgba(221, 236, 228, 0.84);
  box-shadow: none;
}

html[data-theme='dark'] .assisted-inbox-tabs a:hover {
  background: rgba(18, 49, 43, 0.88);
  color: #f5fcf8;
}

html[data-theme='dark'] .assisted-inbox-tabs a.active {
  background: linear-gradient(135deg, #0f4b3b 0%, #136c54 100%);
  border-color: rgba(155, 219, 190, 0.26);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
}

html[data-theme='dark'] .conversation-item {
  background: rgba(8, 32, 28, 0.92);
  border: 1px solid rgba(111, 159, 139, 0.14);
  border-radius: 18px;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
}

html[data-theme='dark'] .conversation-item:hover {
  background: rgba(12, 42, 37, 0.96);
  border-color: rgba(155, 219, 190, 0.22);
  transform: translateY(-1px);
}

html[data-theme='dark'] .conversation-item.active {
  background: linear-gradient(135deg, rgba(16, 62, 52, 0.98) 0%, rgba(12, 43, 36, 0.98) 100%);
  border-color: rgba(161, 223, 194, 0.32);
  box-shadow: 0 16px 28px rgba(0, 0, 0, 0.24);
}

html[data-theme='dark'] .conversation-main strong {
  color: #f3faf6;
}

html[data-theme='dark'] .conversation-main small,
html[data-theme='dark'] .conversation-main em,
html[data-theme='dark'] .conversation-meta small {
  color: rgba(213, 228, 221, 0.76);
}

html[data-theme='dark'] .conversation-main em {
  font-style: normal;
}

html[data-theme='dark'] .conversation-meta .badge {
  background: rgba(240, 248, 244, 0.08);
  border-color: rgba(184, 220, 203, 0.18);
  color: #eff7f3;
}

html[data-theme='dark'] .conversation-unread {
  background: #1f9d6d;
  color: #ffffff;
  box-shadow: 0 8px 16px rgba(31, 157, 109, 0.3);
}

html[data-theme='dark'] .tag-chip.mini {
  border-color: rgba(170, 214, 192, 0.24);
}

html[data-theme='dark'] .digisac-chat-panel {
  background: linear-gradient(180deg, rgba(12, 20, 24, 0.98) 0%, rgba(8, 15, 19, 0.98) 100%);
  border: 1px solid rgba(111, 159, 139, 0.12);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03), 0 24px 48px rgba(0, 0, 0, 0.26);
}

html[data-theme='dark'] .digisac-chat-panel .chat-header,
html[data-theme='dark'] .digisac-chat-panel .chat-compose {
  background: rgba(12, 20, 24, 0.92);
  border-color: rgba(111, 159, 139, 0.12);
}

html[data-theme='dark'] .chat-contact-copy h2,
html[data-theme='dark'] .digisac-chat-panel .button,
html[data-theme='dark'] .digisac-chat-panel .button.secondary,
html[data-theme='dark'] .digisac-chat-panel .button.ghost,
html[data-theme='dark'] .digisac-chat-panel summary.button {
  color: #f6fbf8;
}

html[data-theme='dark'] .chat-contact-copy p,
html[data-theme='dark'] .chat-bubble small,
html[data-theme='dark'] .chat-bubble-meta,
html[data-theme='dark'] .media-label {
  color: rgba(219, 231, 225, 0.72);
}

html[data-theme='dark'] .digisac-chat-messages {
  background-color: #0b141a;
  background-image:
    radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.035) 0 1.2px, transparent 1.4px),
    radial-gradient(circle at 80% 35%, rgba(255, 255, 255, 0.03) 0 1px, transparent 1.2px),
    linear-gradient(135deg, rgba(255, 255, 255, 0.028) 0, rgba(255, 255, 255, 0.028) 1px, transparent 1px, transparent 28px),
    linear-gradient(45deg, rgba(255, 255, 255, 0.024) 0, rgba(255, 255, 255, 0.024) 1px, transparent 1px, transparent 36px),
    linear-gradient(180deg, rgba(11, 20, 26, 0.98) 0%, rgba(11, 20, 26, 0.98) 100%);
  background-size: 30px 30px, 42px 42px, 120px 120px, 150px 150px, auto;
  background-position: 0 0, 18px 16px, 0 0, 18px 20px, 0 0;
}

html[data-theme='dark'] .chat-bubble.received {
  background: rgba(26, 39, 46, 0.96);
  border-color: rgba(120, 143, 154, 0.16);
  color: #eff6f2;
}

html[data-theme='dark'] .chat-bubble.sent {
  background: linear-gradient(135deg, rgba(0, 92, 75, 0.98) 0%, rgba(0, 122, 95, 0.98) 100%);
  border-color: rgba(121, 208, 182, 0.2);
  color: #ffffff;
}

html[data-theme='dark'] .chat-bubble.sent .chat-bubble-meta,
html[data-theme='dark'] .chat-bubble.sent .media-label,
html[data-theme='dark'] .chat-bubble.sent small,
html[data-theme='dark'] .chat-bubble.sent span {
  color: rgba(237, 248, 244, 0.84);
}

html[data-theme='dark'] .chat-date-separator span {
  background: rgba(13, 25, 30, 0.88);
  color: rgba(226, 238, 232, 0.84);
  border-color: rgba(111, 159, 139, 0.14);
}

html[data-theme='dark'] .conversation-lifecycle-card {
  background: rgba(13, 25, 30, 0.88);
  border: 1px dashed rgba(121, 173, 151, 0.24);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.26);
}

html[data-theme='dark'] .conversation-lifecycle-card strong {
  color: #f3faf6;
}

html[data-theme='dark'] .conversation-lifecycle-card p,
html[data-theme='dark'] .conversation-lifecycle-card .timeline-summary-body,
html[data-theme='dark'] .conversation-lifecycle-card .chat-encryption-note {
  color: rgba(219, 232, 225, 0.78);
}

html[data-theme='dark'] .conversation-lifecycle-card.is-finished {
  background: rgba(34, 20, 20, 0.9);
  border-color: rgba(232, 120, 120, 0.24);
}

html[data-theme='dark'] .conversation-lifecycle-card.is-ai-event,
html[data-theme='dark'] .conversation-lifecycle-card.chat-start-card {
  border-color: rgba(121, 173, 151, 0.24);
}

html[data-theme='dark'] .compact-chat-composer {
  background: rgba(10, 17, 21, 0.95);
}

html[data-theme='dark'] .compact-chat-composer .compose-actions button,
html[data-theme='dark'] .compact-chat-composer .compose-actions label,
html[data-theme='dark'] .compact-chat-composer .chat-send-button {
  background: rgba(17, 28, 33, 0.96);
  border-color: rgba(111, 159, 139, 0.18);
  color: #edf7f2;
  box-shadow: none;
}

html[data-theme='dark'] .compact-chat-composer .chat-send-button {
  background: linear-gradient(135deg, #0f4b3b 0%, #136c54 100%);
}

html[data-theme='dark'] .compact-chat-composer input[type='text'] {
  background: rgba(14, 23, 28, 0.96);
  border-color: rgba(111, 159, 139, 0.16);
  color: #f3faf6;
}

html[data-theme='dark'] .compact-chat-composer input[type='text']::placeholder {
  color: rgba(215, 229, 222, 0.52);
}

@media (max-width: 1100px) {
  .users-edit-grid {
    grid-template-columns: 1fr;
  }

  .users-edit-preview-card {
    position: static;
  }
}

/* ================================
   Hotfix visual 05/05: perfil, topbar e cards de usuarios
   ================================ */
.rs-profile-button.compact.rs-profile-emoji-button {
  width: 46px;
  min-width: 46px;
  height: 46px;
  padding: 0;
  display: inline-grid;
  place-items: center;
  font-size: 1.08rem;
  line-height: 1;
  color: #0d2f25;
}

.rs-profile-button.compact.rs-profile-emoji-button span[aria-hidden='true'] {
  display: inline-block;
  transform: translateY(1px);
}

html[data-theme='dark'] .rs-profile-button.compact.rs-profile-emoji-button {
  color: #f5f1df;
  background: rgba(10, 30, 23, 0.94);
}

@media (max-width: 620px) {
  .rs-profile-button.compact.rs-profile-emoji-button {
    color: #111f19;
  }

  .rs-profile-button.compact.rs-profile-emoji-button::before {
    content: none;
  }
}

.user-profile-header,
.user-me-shell,
.user-me-grid {
  width: min(100%, 1360px);
  max-width: 1360px;
  margin-left: 0;
  margin-right: auto;
}

.user-profile-header > div > p,
.user-me-photo-card > div > p,
.user-me-section-card .panel-header p,
.user-me-summary-card.accent small {
  display: none;
}

.user-me-shell {
  align-items: stretch;
}

.user-me-overview,
.user-me-photo-card,
.user-me-section-card {
  height: 100%;
}

.settings-console-summary-row-users {
  display: block;
  width: 100%;
  margin-block: 28px 24px;
}

.settings-refactor-shell .settings-console-summary-row-users .settings-hero-highlights,
.settings-console-summary-row-users .settings-hero-highlights {
  width: min(100%, 760px);
  display: grid;
  grid-template-columns: repeat(3, minmax(190px, 1fr));
  align-items: stretch;
  gap: 18px;
}

.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card,
.settings-console-summary-row-users .settings-highlight-card {
  min-width: 0;
  min-height: 138px;
  padding: 24px 26px;
  border-radius: 24px;
  display: grid;
  align-content: center;
  gap: 12px;
}

.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card span,
.settings-console-summary-row-users .settings-highlight-card span {
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  max-width: none;
  font-size: 0.86rem;
  line-height: 1.18;
  letter-spacing: 0.1em;
}

.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card strong,
.settings-console-summary-row-users .settings-highlight-card strong {
  font-size: clamp(2rem, 3vw, 2.55rem);
  line-height: 0.95;
}

.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card small,
.settings-console-summary-row-users .settings-highlight-card small {
  white-space: normal;
  word-break: normal;
  line-height: 1.25;
}

html[data-theme='dark'] .settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card,
html[data-theme='dark'] .settings-console-summary-row-users .settings-highlight-card {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(214, 215, 189, 0.18);
  color: #f5f1df;
}

html[data-theme='dark'] .settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card span,
html[data-theme='dark'] .settings-console-summary-row-users .settings-highlight-card span,
html[data-theme='dark'] .settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card small,
html[data-theme='dark'] .settings-console-summary-row-users .settings-highlight-card small {
  color: rgba(245, 241, 223, 0.76);
}

html[data-theme='dark'] .settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card strong,
html[data-theme='dark'] .settings-console-summary-row-users .settings-highlight-card strong {
  color: #ffffff;
}

html[data-theme='dark'] .settings-refactor-shell .page-header .badge,
html[data-theme='dark'] .settings-refactor-shell .settings-page-badge,
html[data-theme='dark'] .settings-refactor-shell .page-header .pill {
  background: rgba(245, 241, 223, 0.12);
  border-color: rgba(245, 241, 223, 0.2);
  color: #f5f1df;
}

@media (max-width: 900px) {
  .settings-refactor-shell .settings-console-summary-row-users .settings-hero-highlights,
  .settings-console-summary-row-users .settings-hero-highlights {
    width: 100%;
    grid-template-columns: 1fr;
  }
}


/* === V16 access/profile hotfix: stable admin access UI and profile alignment === */
.rs-profile-button.compact.rs-profile-emoji-button {
  width: 52px;
  min-width: 52px;
  height: 52px;
  padding: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  line-height: 1;
}

.rs-profile-button.compact.rs-profile-emoji-button::before,
.rs-profile-button.compact.rs-profile-emoji-button::after {
  content: none;
}

.user-profile-header,
.user-me-shell,
.user-me-grid {
  width: min(100%, var(--page-max, 1540px));
  max-width: var(--page-max, 1540px);
  margin-left: 0;
  margin-right: auto;
}

.user-profile-header > div > p,
.user-me-photo-card > div > p,
.user-me-section-card .panel-header p,
.user-me-summary-card small {
  display: none;
}

.user-me-shell {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
  align-items: stretch;
}

.user-me-grid {
  align-items: start;
}

.settings-console-summary-row-users,
.settings-refactor-shell .settings-console-summary-row-users {
  width: 100%;
  display: block;
  margin-block: 28px 24px;
}

.settings-console-summary-row-users .settings-hero-highlights,
.settings-refactor-shell .settings-console-summary-row-users .settings-hero-highlights {
  width: min(100%, 1040px);
  max-width: 1040px;
  display: grid;
  grid-template-columns: repeat(3, minmax(240px, 1fr));
  gap: 18px;
  align-items: stretch;
}

.settings-console-summary-row-users .settings-highlight-card,
.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card {
  min-width: 0;
  min-height: 132px;
  padding: 24px 28px;
  align-content: center;
}

.settings-console-summary-row-users .settings-highlight-card span,
.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card span {
  display: block;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  max-width: none;
  min-width: 0;
  font-size: .9rem;
  line-height: 1.18;
  letter-spacing: .08em;
}

.settings-console-summary-row-users .settings-highlight-card strong,
.settings-refactor-shell .settings-console-summary-row-users .settings-highlight-card strong {
  font-size: clamp(2.1rem, 2.8vw, 2.65rem);
  line-height: 1;
}

.settings-page-intro-actions:empty {
  display: none;
}

@media (max-width: 1100px) {
  .user-me-shell,
  .user-me-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .settings-console-summary-row-users .settings-hero-highlights,
  .settings-refactor-shell .settings-console-summary-row-users .settings-hero-highlights {
    grid-template-columns: 1fr;
    width: 100%;
  }
}


/* Produção: evita sobreposição dos seletores na aba Conexões. */
.whatsapp-toggle-grid .setting-switch-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 0.875rem;
  row-gap: 0.25rem;
}
.whatsapp-toggle-grid .setting-switch-card > input[type='checkbox'] { grid-column: 1; grid-row: 1; }
.whatsapp-toggle-grid .setting-switch-card .switch-copy { grid-column: 1; grid-row: 1; min-width: 0; padding-right: 0; }
.whatsapp-toggle-grid .setting-switch-card .switch-control { grid-column: 2; grid-row: 1; justify-self: end; align-self: center; flex: 0 0 auto; }


/* Atendimento: botao de exclusao permanente visivel apenas para administradores via EJS. */
.assisted-delete-chat-button {
  display: inline-grid;
  place-items: center;
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0;
  border-radius: 14px;
  border: 1px solid rgba(154, 52, 18, 0.28);
  background: linear-gradient(180deg, #fff7ed, #ffedd5);
  color: #9a3412;
  font-size: 1.05rem;
  line-height: 1;
  box-shadow: 0 8px 18px rgba(154, 52, 18, 0.08);
  white-space: nowrap;
}
.assisted-delete-chat-button:hover,
.assisted-delete-chat-button:focus-visible {
  background: linear-gradient(180deg, #ffedd5, #fed7aa);
  border-color: rgba(154, 52, 18, 0.48);
  color: #7c2d12;
}
.drawer-danger-zone .assisted-delete-chat-button {
  width: 48px;
  min-width: 48px;
  justify-self: start;
}
.drawer-danger-zone {
  border-color: rgba(190, 18, 60, 0.28);
  background: linear-gradient(180deg, rgba(255, 241, 242, 0.86), rgba(255, 255, 255, 0.96));
}
.drawer-danger-zone .drawer-section-headline span {
  background: rgba(190, 18, 60, 0.08);
  color: #9f1239;
}

/* Central de IA v2 */
.ai-central-v2 .sia-hero p { max-width: 760px; }
.ai-governance-grid { align-items: stretch; }
.ai-decision-rules { display: grid; gap: 8px; margin: 12px 0 16px; }
.ai-decision-rules span { display: inline-flex; align-items: center; gap: 8px; padding: 9px 11px; border-radius: 14px; background: rgba(7, 61, 47, .065); color: #123328; font-weight: 800; font-size: .86rem; }
.ai-library-search { width: 100%; min-height: 46px; margin: 10px 0 18px; border-radius: 16px; border: 1px solid rgba(15, 61, 47, .16); padding: 0 16px; background: rgba(255,255,255,.86); font-weight: 750; }
.ai-prompt-card-grid, .ai-folder-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
.ai-prompt-card, .ai-folder-card { display: grid; gap: 12px; padding: 16px; border-radius: 24px; border: 1px solid rgba(15, 61, 47, .13); background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,251,249,.92)); box-shadow: 0 16px 36px rgba(17,31,25,.07); }
.ai-prompt-card-head, .ai-agent-mini-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 12px; }
.ai-prompt-card textarea, .ai-folder-card textarea { min-height: 140px; resize: vertical; }
.ai-knowledge-section .drawer-section-headline span { background: rgba(236, 244, 240, .9); color: #0f3d2f; }
.ai-agent-card-grid-v2 { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.ai-agent-v2 { border-radius: 24px; border-color: rgba(15,61,47,.14); background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(246,250,247,.95)); }
.ai-agent-v2 .agent-card-top { align-items: center; }
.ai-agent-v2 .agent-card-top > span { background: #0f3d2f; color: #fff; }
.ai-agent-v2 label { gap: 6px; }
@media (max-width: 820px) { .ai-prompt-card-head, .ai-agent-mini-grid { grid-template-columns: 1fr; } }

/* Hotfix Python AI architecture: agent file paths and prompt editors */
.ai-server-knowledge-intro { overflow: hidden; }
.ai-server-help-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 12px; }
.ai-server-help-grid > div { border: 1px solid rgba(15,61,47,.12); border-radius: 18px; background: rgba(246,250,247,.9); padding: 14px; display: grid; gap: 6px; }
.ai-server-help-grid strong { color: #0f3d2f; font-size: .82rem; text-transform: uppercase; letter-spacing: .06em; }
.ai-server-help-grid code { white-space: normal; word-break: break-all; border-radius: 12px; background: rgba(15,61,47,.08); padding: 8px; color: #0f3d2f; font-size: .82rem; }
.ai-agent-card-grid-editor { grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)); align-items: start; }
.ai-agent-editor-card { gap: 12px; }
.ai-agent-editor-card label { display: grid; gap: 6px; font-weight: 800; color: #173b31; }
.ai-agent-editor-card input,
.ai-agent-editor-card select,
.ai-agent-editor-card textarea { width: 100%; border-radius: 14px; border: 1px solid rgba(15,61,47,.16); background: rgba(255,255,255,.92); padding: 10px 12px; font: inherit; color: #10251e; }
.ai-agent-editor-card textarea { min-height: 130px; resize: vertical; line-height: 1.45; font-size: .92rem; }
.ai-file-path-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.ai-agent-file-hint { margin: 0; border-radius: 16px; background: rgba(255,244,221,.75); border: 1px solid rgba(204,130,30,.22); padding: 10px 12px; color: #6f4a14; font-size: .86rem; line-height: 1.45; }
html[data-theme='dark'] .ai-server-help-grid > div,
html[data-theme='dark'] .ai-agent-editor-card input,
html[data-theme='dark'] .ai-agent-editor-card select,
html[data-theme='dark'] .ai-agent-editor-card textarea { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.13); color: rgba(255,255,255,.9); }
@media (max-width: 860px) { .ai-agent-card-grid-editor, .ai-file-path-grid { grid-template-columns: 1fr; } }


/* Central de IA UX refresh */
.ai-central-ux { gap: 22px; }
.ai-ux-hero { align-items: flex-start; gap: 18px; }
.ai-hero-actions { display: flex; align-items: center; gap: 12px; margin-left: auto; flex-wrap: wrap; }
.ai-hero-note { display: grid; gap: 2px; max-width: 320px; padding: 12px 14px; border-radius: 18px; background: linear-gradient(180deg, rgba(15,61,47,.08), rgba(15,61,47,.03)); border: 1px solid rgba(15,61,47,.12); color: #16372d; }
.ai-hero-note strong { font-size: .9rem; }
.ai-hero-note span { font-size: .82rem; line-height: 1.4; }
.ai-metrics-grid-ux .metric-card { background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,249,246,.92)); border: 1px solid rgba(15,61,47,.1); }
.ai-admin-form-ux { gap: 18px; }
.ai-ux-sticky-bar { position: sticky; top: 18px; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px; border-radius: 22px; border: 1px solid rgba(15,61,47,.12); background: rgba(248, 251, 249, .9); backdrop-filter: blur(14px); box-shadow: 0 18px 40px rgba(17,31,25,.08); }
.ai-ux-tablist { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ai-ux-tab { appearance: none; border: 1px solid rgba(15,61,47,.12); background: rgba(255,255,255,.82); color: #173b31; font: inherit; font-weight: 800; border-radius: 999px; padding: 11px 16px; cursor: pointer; transition: all .18s ease; }
.ai-ux-tab:hover, .ai-ux-tab:focus-visible { border-color: rgba(15,61,47,.3); transform: translateY(-1px); }
.ai-ux-tab.is-active { background: #0f3d2f; border-color: #0f3d2f; color: #fff; box-shadow: 0 12px 24px rgba(15,61,47,.18); }
.ai-ux-save-box { display: flex; align-items: center; justify-content: flex-end; gap: 12px; flex-wrap: wrap; }
.ai-ux-save-box span { color: #48635a; font-size: .86rem; max-width: 420px; text-align: right; }
.ai-ux-panel { display: grid; gap: 18px; }
.ai-overview-grid, .ai-overview-secondary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.ai-overview-card { min-width: 0; }
.ai-overview-checklist ol { margin: 4px 0 0; padding-left: 18px; display: grid; gap: 10px; color: #173b31; line-height: 1.5; }
.ai-decision-rules-ux span { border-radius: 16px; }
.ai-toolbar { display: grid; grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(160px, .65fr)) auto; gap: 12px; align-items: end; }
.ai-search-shell, .ai-filter-shell { display: grid; gap: 6px; }
.ai-search-shell span, .ai-filter-shell span { font-size: .82rem; font-weight: 800; color: #234538; }
.ai-search-shell input, .ai-filter-shell select { width: 100%; min-height: 46px; border-radius: 16px; border: 1px solid rgba(15,61,47,.14); padding: 0 14px; background: rgba(255,255,255,.92); font: inherit; color: #10251e; }
.ai-toolbar-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.ai-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.ai-section-heading h3 { margin: 0; font-size: 1.15rem; }
.ai-section-heading p { margin: 4px 0 0; color: #536b63; }
.ai-section-chip { display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 999px; background: rgba(15,61,47,.07); color: #123328; font-weight: 800; }
.ai-section-chip span { display: inline-grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 999px; background: #0f3d2f; color: #fff; }
.ai-prompt-accordion-list, .ai-agent-card-grid-ux { display: grid; gap: 16px; }
.ai-prompt-accordion, .ai-agent-accordion { border: 1px solid rgba(15,61,47,.12); border-radius: 24px; background: linear-gradient(180deg, rgba(255,255,255,.97), rgba(246,250,247,.95)); box-shadow: 0 14px 30px rgba(17,31,25,.06); overflow: hidden; }
.ai-prompt-accordion > summary, .ai-agent-accordion > summary { list-style: none; cursor: pointer; }
.ai-prompt-accordion > summary::-webkit-details-marker, .ai-agent-accordion > summary::-webkit-details-marker { display: none; }
.ai-prompt-accordion > summary { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 18px 20px; }
.ai-prompt-accordion > summary strong { display: block; font-size: 1rem; color: #16372d; }
.ai-prompt-accordion > summary p { margin: 6px 0 0; color: #567067; line-height: 1.5; }
.ai-prompt-summary-meta { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.ai-summary-chevron { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: rgba(15,61,47,.06); color: #173b31; transition: transform .18s ease; }
.ai-prompt-accordion[open] .ai-summary-chevron, .ai-agent-accordion[open] .ai-summary-chevron { transform: rotate(180deg); }
.ai-prompt-accordion-body { padding: 0 20px 20px; display: grid; gap: 12px; }
.ai-agent-card-grid-ux { grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); align-items: start; }
.ai-agent-accordion { padding: 0; }
.ai-agent-summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 18px; }
.ai-agent-summary-left { display: flex; align-items: flex-start; gap: 14px; min-width: 0; }
.ai-agent-avatar { width: 50px; height: 50px; border-radius: 16px; display: grid; place-items: center; background: linear-gradient(180deg, #0f3d2f, #1d6a53); color: #fff; font-weight: 900; box-shadow: inset 0 1px 0 rgba(255,255,255,.18); flex-shrink: 0; }
.ai-agent-summary-copy { min-width: 0; display: grid; gap: 4px; }
.ai-agent-summary-copy strong { font-size: 1rem; color: #16372d; }
.ai-agent-summary-copy p { margin: 0; color: #5b736b; line-height: 1.4; }
.ai-agent-chip-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
.ai-agent-summary-right { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.ai-agent-state { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 12px; border-radius: 999px; font-weight: 800; }
.ai-agent-state.is-active { background: rgba(22, 163, 74, .12); color: #166534; }
.ai-agent-state.is-inactive { background: rgba(100,116,139,.14); color: #475569; }
.ai-agent-editor-body { display: grid; gap: 14px; padding: 0 18px 18px; border-top: 1px solid rgba(15,61,47,.08); }
.ai-form-subsection { display: grid; gap: 10px; padding: 14px; border-radius: 20px; background: rgba(249,251,250,.95); border: 1px solid rgba(15,61,47,.08); }
.ai-subsection-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.ai-subsection-head h4 { margin: 0; font-size: .98rem; color: #173b31; }
.ai-subsection-head span { color: #60776f; font-size: .82rem; }
.ai-form-subsection-prompts textarea { min-height: 150px; }
.ai-settings-footer-ux { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 18px; border-radius: 22px; border: 1px solid rgba(15,61,47,.12); background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,249,246,.96)); }
.ai-settings-footer-ux strong { display: block; color: #173b31; }
.ai-settings-footer-ux span { color: #5b736b; font-size: .88rem; }
.assignment-users-compact { max-height: 280px; overflow: auto; padding-right: 4px; }
html[data-theme='dark'] .ai-hero-note,
html[data-theme='dark'] .ai-ux-sticky-bar,
html[data-theme='dark'] .ai-prompt-accordion,
html[data-theme='dark'] .ai-agent-accordion,
html[data-theme='dark'] .ai-form-subsection,
html[data-theme='dark'] .ai-settings-footer-ux,
html[data-theme='dark'] .ai-search-shell input,
html[data-theme='dark'] .ai-filter-shell select { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); color: rgba(255,255,255,.92); }
html[data-theme='dark'] .ai-search-shell span,
html[data-theme='dark'] .ai-filter-shell span,
html[data-theme='dark'] .ai-section-heading p,
html[data-theme='dark'] .ai-subsection-head span,
html[data-theme='dark'] .ai-ux-save-box span,
html[data-theme='dark'] .ai-agent-summary-copy p,
html[data-theme='dark'] .ai-settings-footer-ux span { color: rgba(255,255,255,.72); }
@media (max-width: 1100px) { .ai-overview-grid, .ai-overview-secondary { grid-template-columns: 1fr; } .ai-toolbar { grid-template-columns: 1fr 1fr; } .ai-toolbar-actions { grid-column: 1 / -1; justify-content: flex-start; } }
@media (max-width: 860px) { .ai-ux-sticky-bar, .ai-section-heading, .ai-settings-footer-ux { flex-direction: column; align-items: stretch; } .ai-ux-save-box { justify-content: space-between; } .ai-toolbar { grid-template-columns: 1fr; } .ai-agent-summary { flex-direction: column; align-items: flex-start; } .ai-agent-summary-right { width: 100%; justify-content: space-between; } .ai-hero-actions { width: 100%; margin-left: 0; } .ai-agent-card-grid-ux { grid-template-columns: 1fr; } }


/* Central de IA premium UX: setup guiado, duplicacao, completude e alteracoes nao salvas */
.ai-unsaved-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(245, 158, 11, .14);
  border: 1px solid rgba(245, 158, 11, .26);
  color: #92400e;
  font-weight: 900;
  font-size: .82rem;
}
.ai-unsaved-pill::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f59e0b;
  box-shadow: 0 0 0 4px rgba(245, 158, 11, .14);
}
.ai-admin-form-ux.has-unsaved-changes .ai-ux-sticky-bar {
  border-color: rgba(245, 158, 11, .26);
  box-shadow: 0 18px 44px rgba(146, 64, 14, .10);
}
.ai-setup-guide-card {
  position: relative;
  overflow: hidden;
}
.ai-setup-guide-card::after {
  content: "";
  position: absolute;
  inset: auto -40px -80px auto;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(15, 61, 47, .12), transparent 68%);
  pointer-events: none;
}
.ai-setup-progress {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0;
}
.ai-setup-progress > div {
  display: grid;
  gap: 2px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(15, 61, 47, .06);
  border: 1px solid rgba(15, 61, 47, .10);
}
.ai-setup-progress strong {
  color: #0f3d2f;
  font-size: 1.55rem;
  line-height: 1;
}
.ai-setup-progress span {
  color: #536b63;
  font-size: .82rem;
  font-weight: 750;
}
.ai-setup-steps {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 12px 0 16px;
  list-style: none;
}
.ai-setup-steps li {
  display: grid;
  grid-template-columns: auto minmax(0, .45fr) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(15, 61, 47, .08);
}
.ai-setup-steps li > span {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  background: #0f3d2f;
  color: #fff;
  font-weight: 900;
}
.ai-setup-steps strong {
  color: #173b31;
}
.ai-setup-steps small {
  color: #5b736b;
  line-height: 1.35;
}
.ai-agent-completion {
  display: grid;
  gap: 5px;
  min-width: 72px;
}
.ai-agent-completion strong {
  font-size: .8rem;
  color: #173b31;
  text-align: right;
}
.ai-agent-completion i {
  display: block;
  width: 72px;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(15, 61, 47, .10);
}
.ai-agent-completion b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0f3d2f, #24a37b);
}
.ai-agent-duplicate-button {
  appearance: none;
  border: 1px solid rgba(15, 61, 47, .16);
  background: rgba(255, 255, 255, .86);
  color: #0f3d2f;
  border-radius: 999px;
  min-height: 34px;
  padding: 0 12px;
  font: inherit;
  font-size: .78rem;
  font-weight: 900;
  cursor: pointer;
  transition: all .18s ease;
}
.ai-agent-duplicate-button:hover,
.ai-agent-duplicate-button:focus-visible {
  border-color: rgba(15, 61, 47, .34);
  background: rgba(15, 61, 47, .08);
  transform: translateY(-1px);
}
.ai-toolbar-actions [data-ai-show-incomplete],
.ai-setup-guide-card [data-ai-start-setup] {
  border-color: rgba(15, 61, 47, .28);
  background: linear-gradient(180deg, rgba(15,61,47,.08), rgba(15,61,47,.04));
  color: #0f3d2f;
}
.ai-toolbar-actions [data-ai-show-incomplete]::before {
  content: "⚙";
  margin-right: 6px;
}
.ai-agent-accordion[data-completion="100"] .ai-agent-completion b {
  background: linear-gradient(90deg, #16a34a, #22c55e);
}
.ai-agent-accordion:not([data-completion="100"]) {
  border-color: rgba(245, 158, 11, .18);
}
@media (max-width: 860px) {
  .ai-setup-progress,
  .ai-setup-steps li {
    grid-template-columns: 1fr;
  }
  .ai-setup-steps li > span {
    width: 32px;
  }
  .ai-agent-completion {
    min-width: 100%;
  }
  .ai-agent-completion strong {
    text-align: left;
  }
  .ai-agent-completion i {
    width: 100%;
  }
  .ai-agent-duplicate-button {
    width: 100%;
  }
}
html[data-theme='dark'] .ai-unsaved-pill,
html[data-theme='dark'] .ai-setup-progress > div,
html[data-theme='dark'] .ai-setup-steps li,
html[data-theme='dark'] .ai-agent-duplicate-button {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
  color: rgba(255,255,255,.9);
}
html[data-theme='dark'] .ai-setup-progress span,
html[data-theme='dark'] .ai-setup-steps small {
  color: rgba(255,255,255,.68);
}

/* Ajustes finos V.29 - atendimento, CRM e contratos */
.assisted-page[data-section="inbox"],
.assisted-page[data-section="queue"],
.assisted-page[data-section="contacts"],
.assisted-page[data-section="ia"] {
  height: auto;
  min-height: 0;
  overflow: visible;
}

.assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
  min-height: clamp(560px, 64vh, 760px);
  max-height: none;
  overflow: visible;
}

.assisted-page .digisac-chat-panel {
  grid-template-rows: auto minmax(260px, min(58vh, 620px)) auto;
}

.assisted-page .digisac-chat-panel .chat-messages,
.assisted-page .chat-thread,
.assisted-page .chat-messages-list {
  max-height: min(58vh, 620px);
  overflow-y: auto;
}

.assisted-page .composer,
.assisted-page .chat-composer,
.assisted-page [data-message-composer] {
  position: sticky;
  bottom: 0;
  z-index: 5;
  background: var(--surface-card, #fff);
}

.assisted-inbox-tabs,
.assisted-management-tabs {
  display: flex;
  gap: .5rem;
  overflow-x: auto;
  flex-wrap: nowrap;
  align-items: center;
}

.assisted-inbox-tabs a,
.assisted-management-tabs a {
  white-space: nowrap;
}

.core-admin-list {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.core-admin-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: .75rem;
  padding: .75rem;
}

.core-admin-row > form:first-child {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(260px, 1fr) minmax(220px, .8fr) auto;
  gap: .75rem;
  align-items: center;
}

.core-admin-row .core-card-top,
.core-admin-row .compact-grid {
  margin: 0;
}

.core-admin-row input[name="description"] {
  min-width: 260px;
}

.quick-category-manager-card,
.quick-editor-card {
  align-self: start;
}

.quick-category-admin-list {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  margin-top: .75rem;
}

.quick-category-admin-row,
.quick-category-deactivate-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 64px auto auto auto;
  gap: .5rem;
  align-items: center;
}

.quick-category-deactivate-row {
  grid-template-columns: 1fr auto;
  justify-content: end;
  margin-top: -.25rem;
}

.quick-library-heading h2,
.quick-library-heading p {
  white-space: nowrap;
}

.quick-library-heading {
  gap: 1rem;
  align-items: center;
}

.quick-library-search {
  min-width: min(320px, 38vw);
}

.assisted-row.admin-row form {
  align-items: center;
}

.assisted-row.admin-row .pill-toggle.compact {
  min-width: 96px;
  justify-content: center;
}

.crm-full-board-shell::after,
.crm-full-board::after {
  content: none;
  display: none;
}

.crm-full-column-head {
  align-items: flex-start;
  gap: .75rem;
}

.crm-full-column-head div {
  display: grid;
  grid-template-columns: 1fr;
  gap: .4rem;
  min-width: 0;
}

.crm-full-column-head strong {
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  line-height: 1.2;
  font-size: .98rem;
}

.crm-full-column-head span,
.crm-full-column-head em {
  justify-self: start;
}

.crm-full-column-head > a {
  display: none;
}

.crm-new-card-link {
  border-color: rgba(15, 81, 56, .35);
  color: var(--color-primary-strong, #0f5138);
  background: rgba(15, 81, 56, .06);
  font-weight: 800;
}

.crm-new-card-link:hover {
  background: rgba(15, 81, 56, .12);
  border-color: rgba(15, 81, 56, .55);
}

.nucleus-select-form-apply {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: .75rem;
}

.nucleus-select-form-apply select {
  width: 100%;
  min-height: 42px;
}

.contract-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(130px, 1fr));
  gap: .75rem;
  margin: 1rem 0 1.25rem;
}

.contract-dashboard-card {
  display: grid;
  gap: .25rem;
  padding: 1rem;
}

.contract-dashboard-card span {
  color: var(--text-muted, #5f6f68);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-weight: 800;
}

.contract-dashboard-card strong {
  font-size: clamp(1.6rem, 3vw, 2.25rem);
  color: var(--color-primary-strong, #0f5138);
}

.contract-dashboard-card small {
  color: var(--text-muted, #5f6f68);
}

.contract-dashboard-events {
  margin-bottom: 1.25rem;
}

.contract-dashboard-event-list {
  display: grid;
  gap: .5rem;
}

.contract-dashboard-event-row {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) auto auto;
  gap: .75rem;
  align-items: center;
  padding: .6rem .75rem;
  border: 1px solid var(--border-subtle, #dce8e2);
  border-radius: .75rem;
}

.contract-dashboard-event-row em {
  font-style: normal;
  font-weight: 800;
  color: var(--color-primary-strong, #0f5138);
}

@media (max-width: 980px) {
  .core-admin-row,
  .core-admin-row > form:first-child,
  .quick-category-admin-row,
  .nucleus-select-form-apply,
  .contract-dashboard-event-row {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 640px) {
  .contract-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .quick-library-heading h2,
  .quick-library-heading p {
    white-space: normal;
  }
}


/* Ajustes finais 08/05/2026 - IA, dashboards, contratos e atendimento */
.settings-ai-header .settings-header-actions { flex-wrap: wrap; }
.settings-section-grid .ai-agent-card.compact { display: grid; gap: 14px; padding: 18px; }

.process-kpi-grid-monitoring,
.labor-status-overview,
.labor-metric-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.process-kpi-card,
.labor-status-overview .metric-card {
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  align-content: start;
  gap: 14px;
  min-height: 148px;
}

.process-kpi-card .process-kpi-icon,
.labor-status-overview .metric-card .metric-icon {
  width: 42px;
  height: 42px;
  align-self: start;
  justify-self: start;
  display: inline-grid;
  place-items: center;
  margin-top: 2px;
}

.process-kpi-card .process-kpi-icon svg,
.labor-status-overview .metric-card .metric-icon svg {
  width: 20px;
  height: 20px;
}

.process-kpi-card > div,
.labor-status-overview .metric-card > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.process-kpi-card strong,
.labor-status-overview .metric-card strong {
  line-height: .95;
}

.process-kpi-card small,
.labor-status-overview .metric-card small {
  display: block;
  line-height: 1.25;
}

.contract-dashboard-events .panel-header {
  align-items: center;
}
.contract-dashboard-events.is-collapsed {
  padding-bottom: 16px;
}

.rs-main.rs-route-automations-responde > .vs-layout {
  width: min(100%, var(--page-wide, 1880px));
  grid-template-columns: clamp(300px, 24vw, 380px) minmax(0, 1fr);
  gap: clamp(18px, 1.5vw, 24px);
}

.rs-main.rs-route-automations-responde .vs-sidebar-card,
.rs-main.rs-route-automations-responde .vs-chat-card {
  min-height: clamp(620px, 66vh, 860px);
}

.rs-main.rs-route-automations-responde .vs-chat-scroll {
  min-height: 420px;
}

.assisted-page[data-section="inbox"],
.assisted-page[data-section="queue"],
.assisted-page[data-section="contacts"] {
  min-height: 0;
  height: calc(100dvh - clamp(84px, 6vw, 118px));
}

.assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell {
  grid-template-columns: clamp(320px, 26vw, 430px) minmax(0, 1fr);
  gap: 16px;
}

.assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
.assisted-page[data-section="queue"] .assisted-conversation-sidebar,
.assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
.assisted-page[data-section="inbox"] .digisac-chat-panel,
.assisted-page[data-section="queue"] .digisac-chat-panel,
.assisted-page[data-section="contacts"] .digisac-chat-panel {
  min-height: calc(100dvh - 260px);
}

.assisted-page[data-section="inbox"] .conversation-list,
.assisted-page[data-section="queue"] .conversation-list,
.assisted-page[data-section="contacts"] .conversation-list {
  min-height: 0;
}

@media (max-width: 1280px) {
  .rs-main.rs-route-automations-responde > .vs-layout {
    grid-template-columns: 1fr;
  }

  .assisted-page[data-section="inbox"],
  .assisted-page[data-section="queue"],
  .assisted-page[data-section="contacts"] {
    height: auto;
    overflow: visible;
  }

  .assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
  .assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
  .assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .process-kpi-grid-monitoring,
  .labor-status-overview,
  .labor-metric-grid {
    grid-template-columns: 1fr;
  }

  .process-page-header .actions-inline,
  .labor-hero-actions,
  .settings-ai-header .settings-header-actions {
    width: 100%;
    justify-content: flex-start;
  }
}


/* source: 04-pages/assisted-ai-console.css */
/* Central de IA - tema tokenizado para claro/escuro.
   Migrado de <style id="central-ia-hotfix-v213"> para o pipeline CSS.
   Regra de manutenção: usar tokens e evitar aumento artificial de especificidade nesta camada. */
.ai-command-center {
  --ai-surface-raised: var(--color-bg-card, #ffffff);
  --ai-surface-raised-92: color-mix(in srgb, var(--color-bg-card, #ffffff) 92%, transparent);
  --ai-surface-panel: color-mix(in srgb, var(--color-bg-card, #ffffff) 94%, transparent);
  --ai-surface-soft: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 6%, var(--color-bg-card, #ffffff));
  --ai-surface-muted: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 8%, var(--color-bg-card, #ffffff));
  --ai-surface-hover: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 5%, var(--color-bg-card, #ffffff));
  --ai-surface-subtle: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 3%, var(--color-bg-card, #ffffff));
  --ai-surface-editor: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 4%, var(--color-bg-card, #ffffff));
  --ai-surface-tint: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 4%, transparent);
  --ai-hero-from: color-mix(in srgb, var(--color-brand-accent, #0f6b53) 10%, var(--color-bg-card, #ffffff));
  --ai-hero-to: color-mix(in srgb, var(--color-bg-card, #ffffff) 98%, transparent);
  --ai-page-gradient: linear-gradient(180deg, var(--ai-surface-raised) 0%, var(--ai-surface-soft) 100%);
  --ai-card-gradient: linear-gradient(145deg, var(--ai-surface-raised) 0%, var(--ai-surface-soft) 100%);
  --ai-text-strong: var(--color-text-strong, #082e24);
  --ai-text-main: var(--color-text-main, #173e33);
  --ai-text-muted: var(--color-text-muted, #5c7169);
  --ai-text-accent: var(--color-brand-strong, #104936);
  --ai-accent: var(--color-brand-accent, #0f6b53);
  --ai-accent-strong: var(--color-brand-strong, #0f3d2f);
  --ai-accent-soft: color-mix(in srgb, var(--ai-accent-strong) 8%, transparent);
  --ai-on-accent: #ffffff;
  --ai-border-hairline: color-mix(in srgb, var(--ai-accent-strong) 8%, transparent);
  --ai-border-soft: color-mix(in srgb, var(--ai-accent-strong) 10%, transparent);
  --ai-border-strong: color-mix(in srgb, var(--ai-accent-strong) 16%, transparent);
  --ai-border-hover: color-mix(in srgb, var(--ai-accent) 28%, transparent);
  --ai-border-control: color-mix(in srgb, var(--ai-accent-strong) 32%, transparent);
  --ai-warning-bg: color-mix(in srgb, #f59e0b 16%, var(--ai-surface-raised));
  --ai-warning-text: #9a5200;
  --ai-backdrop: rgba(3,24,18,.42);
  --ai-shadow-soft: color-mix(in srgb, var(--ai-accent-strong) 5%, transparent);
  --ai-shadow-panel: color-mix(in srgb, var(--ai-accent-strong) 6%, transparent);
  --ai-shadow-active: color-mix(in srgb, var(--ai-accent-strong) 18%, transparent);
  --ai-shadow-hover: color-mix(in srgb, var(--ai-accent-strong) 9%, transparent);
  --ai-shadow-modal: rgba(0,0,0,.22);
}

html[data-theme='dark'] .ai-command-center {
  --ai-surface-raised: var(--color-bg-card, #16231d);
  --ai-surface-raised-92: color-mix(in srgb, var(--color-bg-card, #16231d) 92%, transparent);
  --ai-surface-panel: color-mix(in srgb, var(--color-bg-card, #16231d) 94%, transparent);
  --ai-surface-soft: color-mix(in srgb, var(--color-bg-card, #16231d) 88%, #0d1613);
  --ai-surface-muted: color-mix(in srgb, var(--color-bg-card, #16231d) 82%, #d6d7bd 6%);
  --ai-surface-hover: color-mix(in srgb, var(--color-bg-card, #16231d) 76%, #d6d7bd 7%);
  --ai-surface-subtle: color-mix(in srgb, var(--color-bg-card, #16231d) 90%, #d6d7bd 4%);
  --ai-surface-editor: color-mix(in srgb, var(--color-bg-card, #16231d) 90%, #d6d7bd 5%);
  --ai-surface-tint: color-mix(in srgb, #d6d7bd 7%, transparent);
  --ai-hero-from: color-mix(in srgb, var(--color-bg-card, #16231d) 90%, #d6d7bd 5%);
  --ai-hero-to: color-mix(in srgb, var(--color-bg-card, #16231d) 96%, transparent);
  --ai-page-gradient: linear-gradient(180deg, color-mix(in srgb, var(--color-bg-page, #0d1613) 72%, var(--color-bg-card, #16231d)) 0%, var(--color-bg-page, #0d1613) 100%);
  --ai-card-gradient: linear-gradient(145deg, var(--ai-surface-raised) 0%, var(--ai-surface-soft) 100%);
  --ai-text-strong: var(--color-text-strong, #f3f1e8);
  --ai-text-main: var(--color-text-main, #f3f1e8);
  --ai-text-muted: var(--color-text-muted, #c4cec7);
  --ai-text-accent: var(--color-brand-accent, #d6d7bd);
  --ai-accent: var(--color-brand-accent, #d6d7bd);
  --ai-accent-strong: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 78%, #0d1613);
  --ai-accent-soft: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 13%, transparent);
  --ai-on-accent: #0d1613;
  --ai-border-hairline: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 10%, transparent);
  --ai-border-soft: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 14%, transparent);
  --ai-border-strong: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 20%, transparent);
  --ai-border-hover: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 30%, transparent);
  --ai-border-control: color-mix(in srgb, var(--color-brand-accent, #d6d7bd) 34%, transparent);
  --ai-warning-bg: color-mix(in srgb, #f59e0b 18%, var(--ai-surface-raised));
  --ai-warning-text: #facc15;
  --ai-backdrop: rgba(2,10,8,.72);
  --ai-shadow-soft: rgba(0,0,0,.16);
  --ai-shadow-panel: rgba(0,0,0,.20);
  --ai-shadow-active: rgba(0,0,0,.32);
  --ai-shadow-hover: rgba(0,0,0,.28);
  --ai-shadow-modal: rgba(0,0,0,.46);
}

.ai-command-center{display:grid;gap:18px;padding:18px;border-radius:28px;background:var(--ai-page-gradient);overflow:visible}
.ai-command-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:clamp(18px,3vw,28px);border:1px solid var(--ai-border-strong);border-radius:24px;background:linear-gradient(135deg,var(--ai-hero-from),var(--ai-hero-to))}
.ai-command-hero>div{min-width:0}
.ai-command-hero h2{margin:4px 0 8px;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.06em;line-height:1;color:var(--ai-text-strong)}
.ai-command-hero p{max-width:820px;margin:0;color:var(--ai-text-muted);font-size:1rem;line-height:1.55}
.ai-command-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0}
.ai-command-kpis article{display:grid;gap:6px;padding:18px;border:1px solid var(--ai-border-soft);border-radius:20px;background:var(--ai-surface-raised);box-shadow:0 14px 40px var(--ai-shadow-soft)}
.ai-command-kpis span,.ai-command-kpis small{display:block;color:var(--ai-text-muted);font-weight:800}
.ai-command-kpis span{text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:var(--ai-text-accent)}
.ai-command-kpis strong{display:block;margin:6px 0 2px;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.07em;color:var(--ai-text-strong);line-height:1}
.ai-pro-layout.ai-command-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:start}
.ai-pro-sidebar{position:sticky;top:92px;display:grid;gap:12px;align-self:start}
.ai-pro-subnav{display:grid;gap:8px}
.ai-pro-nav-item{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'num title' 'num helper';gap:2px 10px;align-items:center;text-align:left;border:1px solid var(--ai-border-soft);border-radius:18px;background:var(--ai-surface-raised);padding:12px;color:var(--ai-text-main);cursor:pointer;box-shadow:none}
.ai-pro-nav-item.is-active{background:var(--ai-accent-strong);border-color:var(--ai-accent-strong);color:var(--ai-on-accent);box-shadow:0 18px 34px var(--ai-shadow-active)}
.ai-pro-nav-item span{grid-area:num;display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--ai-accent-soft);font-weight:950;font-size:.78rem}
.ai-pro-nav-item.is-active span{background:rgba(255,255,255,.16);color:var(--ai-on-accent)}
.ai-pro-nav-item strong{grid-area:title;font-size:.95rem;line-height:1.15}
.ai-pro-nav-item small{grid-area:helper;color:var(--ai-text-muted);font-size:.78rem;font-weight:750}
.ai-pro-nav-item.is-active small{color:rgba(255,255,255,.72)}
.ai-pro-save-card{display:grid;gap:8px;padding:16px;border-radius:22px;border:1px solid var(--ai-border-soft);background:var(--ai-surface-raised-92);box-shadow:0 14px 34px var(--ai-shadow-soft)}
.ai-pro-save-card small{color:var(--ai-text-muted);line-height:1.4}
.ai-unsaved-pill{display:inline-flex;width:max-content;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:var(--ai-warning-bg);color:var(--ai-warning-text);font-weight:900}
.ai-pro-content{min-width:0;display:grid;gap:16px}
.ai-pro-panel{display:grid;gap:18px;padding:22px;border-radius:28px;border:1px solid var(--ai-border-soft);background:var(--ai-surface-panel);box-shadow:0 18px 46px var(--ai-shadow-panel)}
.ai-pro-panel[hidden]{display:none}
.ai-pro-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.ai-pro-panel-head h3{margin:4px 0 0;color:var(--ai-text-strong);font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.035em;line-height:1.05}
.ai-pro-panel-head p{margin:6px 0 0;color:var(--ai-text-muted);max-width:760px;line-height:1.55}
.ai-ops-table{display:block;border:1px solid var(--ai-border-soft);border-radius:20px;overflow:hidden;background:var(--ai-surface-raised)}
.ai-ops-table-head,.ai-ops-row{display:grid;grid-template-columns:minmax(220px,1.6fr) .7fr .85fr .75fr .85fr .75fr;gap:10px;align-items:center;padding:12px 16px}
.ai-ops-table-head{background:var(--ai-surface-muted);color:var(--ai-text-accent);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.ai-ops-row{width:100%;border:0;border-top:1px solid var(--ai-border-hairline);background:var(--ai-surface-raised);color:var(--ai-text-main);text-align:left;cursor:pointer}
.ai-ops-row:hover{background:var(--ai-surface-hover)}
.ai-ops-row strong,.ai-ops-row small{display:block}
.ai-ops-row small{color:var(--ai-text-muted)}
.ai-automation-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.ai-automation-cards article{display:grid;gap:8px;padding:16px;border:1px solid var(--ai-border-soft);border-radius:18px;background:var(--ai-surface-subtle)}
.ai-agent-store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.ai-store-agent-card{position:relative;width:100%;min-height:230px;display:grid;gap:8px;align-content:start;padding:18px;border:1px solid var(--ai-border-strong);border-radius:20px;background:var(--ai-card-gradient);color:var(--ai-text-strong);text-align:left;cursor:pointer;box-shadow:0 16px 44px var(--ai-shadow-soft)}
.ai-store-agent-card:hover{transform:translateY(-2px);border-color:var(--ai-border-hover);box-shadow:0 20px 50px var(--ai-shadow-hover)}
.ai-store-agent-card strong{font-size:1.05rem;line-height:1.15}
.ai-store-agent-card small{color:var(--ai-text-muted);font-size:.92rem}
.ai-store-agent-footer{display:flex;justify-content:space-between;gap:8px;margin-top:8px;color:var(--ai-text-muted);font-size:.78rem;font-weight:800}
.ai-store-agent-card .ai-agent-state{position:absolute;top:14px;right:14px}
.ai-agent-modal[hidden]{display:none}
.ai-agent-modal{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:28px;background:var(--ai-backdrop);backdrop-filter:blur(8px)}
.ai-agent-modal-card{position:relative;width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 56px);overflow:auto;padding:24px;border:1px solid var(--ai-border-strong);border-radius:24px;background:var(--ai-surface-raised);box-shadow:0 30px 90px var(--ai-shadow-modal)}
.ai-agent-modal-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.ai-agent-modal-head h3{margin:2px 0 4px;font-size:1.7rem;letter-spacing:-.05em}
.ai-modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--ai-border-soft)}
.round-check-card{display:inline-flex;align-items:center;gap:10px}
.round-check-card>input[type="checkbox"]{position:absolute;opacity:0;pointer-events:none}
.round-check-card>i{width:22px;height:22px;border-radius:999px;border:2px solid var(--ai-border-control);background:var(--ai-surface-raised);box-shadow:inset 0 0 0 4px var(--ai-surface-raised)}
.round-check-card>input[type="checkbox"]:checked+i{background:var(--ai-accent-strong);border-color:var(--ai-accent-strong);box-shadow:inset 0 0 0 5px var(--ai-surface-raised)}
.ai-documents-list,.ai-agent-prompt-list{display:grid;gap:14px}
.ai-doc-card,.ai-agent-prompt-card{display:grid;gap:12px;padding:18px;border:1px solid var(--ai-border-soft);border-radius:20px;background:var(--ai-surface-raised)}
.ai-doc-card label,.ai-prompt-three-grid label{display:grid;gap:6px;font-weight:800;color:var(--ai-text-accent)}
.ai-prompt-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ai-agent-pill,.ai-agent-state,.ai-badge{display:inline-flex;align-items:center;width:max-content;gap:6px;padding:6px 10px;border-radius:999px;background:var(--ai-accent-soft);color:var(--ai-accent-strong);font-weight:900;font-size:.78rem}
.avatar-badge{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border-radius:14px;background:var(--ai-accent);color:var(--ai-on-accent);font-weight:950}
.ai-pro-toolbar{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(170px,.55fr) minmax(170px,.55fr) auto;gap:10px;align-items:end;padding:12px;border-radius:22px;background:var(--ai-surface-tint);border:1px solid var(--ai-accent-soft)}
.ai-pro-toolbar-simple{grid-template-columns:minmax(260px,1fr)}
.ai-pro-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ai-pro-editor-card{min-width:0;padding:18px;border-radius:24px;background:var(--ai-surface-editor);border:1px solid var(--ai-border-soft)}
.ai-settings-footer-ux,.ai-pro-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px;border:1px solid var(--ai-border-soft);border-radius:18px;background:var(--ai-surface-raised)}
.setting-switch-card{display:flex;align-items:center;justify-content:space-between;gap:12px}
.switch-control.round{border-radius:999px}
@media(max-width:1280px){.ai-command-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.ai-ops-table-head,.ai-ops-row{grid-template-columns:minmax(180px,1.2fr) .65fr .8fr .7fr}
.ai-ops-table-head span:nth-child(5),.ai-ops-table-head span:nth-child(6),.ai-ops-row span:nth-child(5),.ai-ops-row span:nth-child(6){display:none}
.ai-prompt-three-grid{grid-template-columns:1fr}
}
@media(max-width:1080px){.ai-pro-layout.ai-command-layout{grid-template-columns:1fr}
.ai-pro-sidebar{position:static}
.ai-pro-subnav{grid-template-columns:repeat(2,minmax(0,1fr))}
.ai-pro-two-col,.ai-automation-cards{grid-template-columns:1fr}
}
@media(max-width:760px){.ai-command-hero,.ai-pro-panel-head,.ai-settings-footer-ux{flex-direction:column;align-items:flex-start}
.ai-command-kpis,.ai-pro-subnav,.ai-pro-toolbar{grid-template-columns:1fr}
.ai-ops-table-head{display:none}
.ai-ops-row{grid-template-columns:1fr}
.ai-pro-panel{padding:16px;border-radius:22px}
}

/* V28 AdvBox + Chat refinements */
.inline-form { display: inline-flex; align-items: center; margin: 0; }
.inline-form button { white-space: nowrap; }
[data-assisted-service] .assisted-inbox-tabs,
.assisted-inbox-tabs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: column;
  align-items: stretch;
}
[data-assisted-service] .assisted-inbox-tabs a,
.assisted-inbox-tabs a { white-space: nowrap; min-width: 0; }
[data-assisted-service] .assisted-inbox-tabs a span,
.assisted-inbox-tabs a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
.assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
  grid-template-columns: clamp(390px, 29vw, 500px) minmax(0, 1fr);
}
.emoji-rich-panel {
  display: grid;
  grid-template-columns: 1fr;
  max-height: min(42vh, 420px);
  overflow: auto;
  padding: 10px;
  align-items: stretch;
}
.emoji-rich-panel[hidden] { display: none; }
.emoji-rich-group { display: grid; gap: 6px; padding: 7px 0; border-bottom: 1px solid rgba(17,31,25,.08); }
.emoji-rich-group:last-child { border-bottom: 0; }
.emoji-rich-group > strong { font-size: .76rem; color: #66756d; text-transform: uppercase; letter-spacing: .06em; }
.emoji-rich-group > span { display: flex; flex-wrap: wrap; gap: 5px; }
.emoji-rich-group button { width: 34px; height: 34px; padding: 0; display: inline-grid; place-items: center; border-radius: 11px; font-size: 1.18rem; line-height: 1; }
html[data-theme='dark'] .emoji-rich-group { border-color: rgba(255,255,255,.10); }
html[data-theme='dark'] .emoji-rich-group > strong { color: rgba(255,255,255,.68); }
@media (max-width: 980px) {
  .assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
  .assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
  .assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
  .assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: 1fr;
  }
}

/* V31 Chat layout repair: fixa as trilhas do atendimento e evita linhas auto esticadas. */
[data-assisted-service].assisted-page[data-section="inbox"],
[data-assisted-service].assisted-page[data-section="queue"],
[data-assisted-service].assisted-page[data-section="contacts"],
[data-assisted-service].assisted-page[data-section="ia"] {
  height: auto;
  min-height: 0;
  overflow: visible;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
  display: grid;
  grid-template-columns: clamp(340px, 27vw, 440px) minmax(0, 1fr);
  align-items: stretch;
  gap: 16px;
  height: clamp(620px, calc(100dvh - 250px), 840px);
  min-height: 0;
  max-height: calc(100dvh - 210px);
  overflow: hidden;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  height: 100%;
  min-height: 0;
  max-height: 100%;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  overflow: hidden;
}

[data-assisted-service].assisted-page[data-section="inbox"] .conversation-list,
[data-assisted-service].assisted-page[data-section="queue"] .conversation-list,
[data-assisted-service].assisted-page[data-section="contacts"] .conversation-list,
[data-assisted-service].assisted-page[data-section="ia"] .conversation-list {
  min-height: 0;
  max-height: none;
  overflow-y: auto;
  align-content: start;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  align-content: stretch;
  overflow: hidden;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-header {
  grid-row: 1;
  align-self: start;
  min-height: 74px;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-messages {
  grid-row: 2;
  height: 100%;
  min-height: 0;
  max-height: none;
  overflow-y: auto;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-compose {
  grid-row: 3;
  align-self: stretch;
  min-height: 0;
  margin: 0;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-panel-card:not([hidden]) {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 92px;
  z-index: 6;
  max-height: min(42vh, 360px);
  overflow: auto;
}

@media (max-width: 1280px) {
  [data-assisted-service].assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: minmax(300px, 36vw) minmax(0, 1fr);
    height: clamp(600px, calc(100dvh - 230px), 800px);
    max-height: none;
  }
}

@media (max-width: 980px) {
  [data-assisted-service].assisted-page[data-section="inbox"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="queue"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="contacts"] .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="ia"] .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: 1fr;
    height: auto;
    overflow: visible;
  }

  [data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar {
    height: min(46vh, 480px);
    max-height: min(46vh, 480px);
  }

  [data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
    height: min(72vh, 760px);
    min-height: 560px;
  }
}

/* V32 Chat viewport contract: corrige o seletor do wrapper e impede trilhas max-content de esticarem. */
[data-assisted-service].assisted-page[data-section="inbox"],
[data-assisted-service].assisted-page[data-section="queue"],
[data-assisted-service].assisted-page[data-section="contacts"],
[data-assisted-service].assisted-page[data-section="ia"] {
  display: flex;
  flex-direction: column;
  gap: 14px;
  height: calc(100dvh - clamp(76px, 7vh, 120px));
  min-height: min(720px, calc(100dvh - clamp(76px, 7vh, 120px)));
  overflow: hidden;
}

[data-assisted-service].assisted-page[data-section="inbox"] > .assisted-hero,
[data-assisted-service].assisted-page[data-section="queue"] > .assisted-hero,
[data-assisted-service].assisted-page[data-section="contacts"] > .assisted-hero,
[data-assisted-service].assisted-page[data-section="ia"] > .assisted-hero,
[data-assisted-service].assisted-page[data-section="inbox"] > .assisted-operation-toolbar,
[data-assisted-service].assisted-page[data-section="queue"] > .assisted-operation-toolbar,
[data-assisted-service].assisted-page[data-section="contacts"] > .assisted-operation-toolbar,
[data-assisted-service].assisted-page[data-section="ia"] > .assisted-operation-toolbar {
  flex: 0 0 auto;
}

[data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="queue"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="contacts"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="ia"] > .assisted-workbench.assisted-digisac-shell {
  flex: 1 1 0;
  height: auto;
  min-height: 0;
  max-height: none;
  overflow: hidden;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  height: 100%;
  min-height: 0;
  max-height: 100%;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar {
  grid-template-rows: max-content max-content max-content minmax(0, 1fr);
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  grid-template-rows: max-content minmax(0, 1fr) max-content;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-header,
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-compose,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-compose {
  height: auto;
  min-height: 0;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-messages,
[data-assisted-service].assisted-page[data-section="inbox"] .conversation-list,
[data-assisted-service].assisted-page[data-section="queue"] .conversation-list,
[data-assisted-service].assisted-page[data-section="contacts"] .conversation-list,
[data-assisted-service].assisted-page[data-section="ia"] .conversation-list {
  min-height: 0;
  max-height: none;
  overflow-y: auto;
}

@media (max-width: 980px) {
  [data-assisted-service].assisted-page[data-section="inbox"],
  [data-assisted-service].assisted-page[data-section="queue"],
  [data-assisted-service].assisted-page[data-section="contacts"],
  [data-assisted-service].assisted-page[data-section="ia"] {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  [data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="queue"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="contacts"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="ia"] > .assisted-workbench.assisted-digisac-shell {
    height: auto;
    overflow: visible;
  }
}

/* V32.1: em conversas curtas, mantém o histórico junto ao composer em vez de deixar vazio abaixo das bolhas. */
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-messages::before,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-messages::before,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-messages::before,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-messages::before {
  content: "";
  flex: 0 0 auto;
  margin-top: auto;
}

/* V32.2 QA visual: ancora overlays no painel correto e evita recortes em viewports baixos. */
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  position: relative;
  isolation: isolate;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .assisted-chat-empty,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .assisted-chat-empty,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .assisted-chat-empty,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .assisted-chat-empty {
  grid-row: 1 / -1;
  min-height: 0;
  height: 100%;
}

[data-assisted-service].assisted-page[data-section="inbox"] .chat-contact-title,
[data-assisted-service].assisted-page[data-section="queue"] .chat-contact-title,
[data-assisted-service].assisted-page[data-section="contacts"] .chat-contact-title,
[data-assisted-service].assisted-page[data-section="ia"] .chat-contact-title,
[data-assisted-service].assisted-page[data-section="inbox"] .chat-contact-copy,
[data-assisted-service].assisted-page[data-section="queue"] .chat-contact-copy,
[data-assisted-service].assisted-page[data-section="contacts"] .chat-contact-copy,
[data-assisted-service].assisted-page[data-section="ia"] .chat-contact-copy {
  min-width: 0;
}

[data-assisted-service].assisted-page[data-section="inbox"] .chat-contact-copy h2,
[data-assisted-service].assisted-page[data-section="queue"] .chat-contact-copy h2,
[data-assisted-service].assisted-page[data-section="contacts"] .chat-contact-copy h2,
[data-assisted-service].assisted-page[data-section="ia"] .chat-contact-copy h2,
[data-assisted-service].assisted-page[data-section="inbox"] .chat-contact-copy p,
[data-assisted-service].assisted-page[data-section="queue"] .chat-contact-copy p,
[data-assisted-service].assisted-page[data-section="contacts"] .chat-contact-copy p,
[data-assisted-service].assisted-page[data-section="ia"] .chat-contact-copy p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-panel-card:not([hidden]) {
  max-width: calc(100% - 32px);
}

[data-assisted-service] [data-panel-toggle][aria-expanded="true"] {
  border-color: rgba(15, 81, 56, .32);
  background: rgba(15, 81, 56, .08);
}

@media (max-width: 980px) {
  [data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
  [data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar {
    height: min(46vh, 480px);
    min-height: 0;
    max-height: min(46vh, 480px);
  }

  [data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
    height: auto;
    min-height: min(560px, 72dvh);
    max-height: none;
  }
}

@media (max-width: 640px) {
  [data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
  [data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
    min-height: min(540px, 78dvh);
  }

  [data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
  [data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
  [data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel > .chat-panel-card:not([hidden]),
  [data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel > .chat-panel-card:not([hidden]) {
    left: 10px;
    right: 10px;
    bottom: 84px;
    max-width: calc(100% - 20px);
  }
}


/* V32.3 QA UX follow-up - Chat tabs, contratos rápidos, filtros e dashboards */
[data-assisted-service] .assisted-inbox-tabs,
.assisted-inbox-tabs {
  gap: 6px;
}

[data-assisted-service] .assisted-inbox-tabs a,
.assisted-inbox-tabs a {
  gap: 4px;
  padding: 8px 9px;
  font-size: 0.82rem;
  border: 1px solid rgba(17,31,25,.12);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.72);
}

[data-assisted-service] .assisted-inbox-tabs a.active,
.assisted-inbox-tabs a.active {
  border-color: rgba(15,81,56,.92);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16), 0 10px 24px rgba(15,81,56,.20);
}

[data-assisted-service] .assisted-inbox-tabs a span,
.assisted-inbox-tabs a span {
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  font-size: 0.8rem;
  letter-spacing: -.01em;
}

[data-assisted-service] .assisted-inbox-tabs a strong,
.assisted-inbox-tabs a strong {
  min-width: 20px;
  height: 20px;
  padding-inline: 5px;
  font-size: .68rem;
}

.contract-compose-panel,
.contract-tag-quick-panel {
  display: grid;
  gap: 12px;
}

.contract-compose-head,
.contract-tag-panel-head,
.contract-compose-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.contract-compose-head > div,
.contract-tag-panel-head,
.contract-compose-field {
  display: grid;
  gap: 4px;
}

.contract-compose-head small,
.contract-tag-panel-head small,
.contract-compose-field {
  color: #617066;
}

.contract-compose-field textarea {
  margin-top: 6px;
  min-height: 132px;
}

.quick-contract-tag-grid {
  max-height: min(32vh, 260px);
  overflow: auto;
}

.crm-leads-filter-grid {
  grid-template-columns: minmax(180px, 1.1fr) repeat(5, minmax(128px, .72fr)) auto;
  align-items: end;
}

.crm-leads-filter-grid > label:first-child {
  min-width: 0;
}

.crm-leads-filter-actions {
  grid-column: auto;
  justify-self: end;
  align-self: end;
  flex-wrap: nowrap;
}

.process-kpi-grid-monitoring,
.labor-status-overview,
.labor-metric-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nfse-status-grid.nfse-production-grid,
.nfse-production-grid {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

@media (max-width: 1480px) {
  .nfse-status-grid.nfse-production-grid,
  .nfse-production-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1240px) {
  .crm-leads-filter-grid {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }

  .crm-leads-filter-actions {
    grid-column: 1 / -1;
    justify-self: start;
    flex-wrap: wrap;
  }

  .process-kpi-grid-monitoring,
  .labor-status-overview,
  .labor-metric-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  [data-assisted-service] .assisted-inbox-tabs,
  .assisted-inbox-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: row;
  }

  .process-kpi-grid-monitoring,
  .labor-status-overview,
  .labor-metric-grid,
  .nfse-status-grid.nfse-production-grid,
  .nfse-production-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  [data-assisted-service] .assisted-inbox-tabs,
  .assisted-inbox-tabs,
  .crm-leads-filter-grid,
  .process-kpi-grid-monitoring,
  .labor-status-overview,
  .labor-metric-grid,
  .nfse-status-grid.nfse-production-grid,
  .nfse-production-grid {
    grid-template-columns: 1fr;
  }

  .crm-leads-filter-actions {
    justify-self: stretch;
  }
}

/* V34 Chat tab border repair - força grid real e contorno visível em todas as abas, incluindo SIA. */
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  display: grid;
  grid-template-columns: minmax(0, 1.24fr) minmax(0, 1.08fr) minmax(0, .96fr) minmax(0, .72fr);
  grid-auto-flow: row;
  gap: 6px;
  overflow: visible;
  align-items: stretch;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 7px 7px;
  border: 1px solid rgba(17,31,25,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  color: #16352a;
  font-size: clamp(.68rem, .62vw, .78rem);
  font-weight: 850;
  line-height: 1;
  letter-spacing: -.018em;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.82), 0 5px 14px rgba(17,31,25,.04);
  background-clip: padding-box;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a::after,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a::after,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid rgba(17,31,25,.14);
  border-radius: inherit;
  pointer-events: none;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active {
  color: #fff;
  background: linear-gradient(135deg, #073d2f, #0f5138);
  border-color: rgba(7,61,47,.98);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 10px 24px rgba(15,81,56,.20);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active::after,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active::after,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.active::after {
  border-color: rgba(255,255,255,.24);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child {
  border-color: rgba(17,31,25,.20);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child::after,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child::after,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child::after {
  border-color: rgba(17,31,25,.22);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child.active::after,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child.active::after,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a:last-child.active::after {
  border-color: rgba(255,255,255,.32);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a span,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a span,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a span {
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a strong,
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a strong,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a strong {
  flex: 0 0 auto;
  min-width: 18px;
  height: 18px;
  padding-inline: 4px;
  font-size: .62rem;
  border: 1px solid rgba(17,31,25,.10);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.38);
}

@media (max-width: 420px) {
  [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  [data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  .assisted-inbox-tabs.assisted-inbox-tabs-single-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* V35 Chat tab SIA hard-fix - contorno independente do border legado e classe explícita por aba. */
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  display: grid;
  grid-template-columns: minmax(92px, 1.18fr) minmax(82px, 1.04fr) minmax(78px, .96fr) minmax(58px, .72fr);
  column-gap: 7px;
  row-gap: 7px;
  padding: 1px 3px 1px 1px;
  overflow: visible;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  min-width: 0;
  min-height: 34px;
  border: 0;
  outline: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow:
    0 0 0 1.25px rgba(17,31,25,.20),
    inset 0 0 0 1px rgba(255,255,255,.86),
    0 6px 14px rgba(17,31,25,.045);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: #fff;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab::after {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: calc(14px + 1px);
  box-shadow: 0 0 0 1px rgba(17,31,25,.16);
  pointer-events: none;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  background: linear-gradient(135deg, #06382b, #0f5138);
  color: #fff;
  box-shadow:
    0 0 0 1.5px rgba(7,61,47,.88),
    0 0 0 3px rgba(7,61,47,.10),
    inset 0 0 0 1px rgba(255,255,255,.18),
    0 10px 24px rgba(15,81,56,.20);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active::before {
  background: linear-gradient(135deg, #06382b, #0f5138);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active::after {
  inset: -2px;
  box-shadow: 0 0 0 1.5px rgba(7,61,47,.55);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia {
  min-width: 58px;
  margin-right: 2px;
  box-shadow:
    0 0 0 1.5px rgba(17,31,25,.30),
    inset 0 0 0 1px rgba(255,255,255,.90),
    0 6px 14px rgba(17,31,25,.055);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia::after {
  inset: -2px;
  box-shadow: 0 0 0 1.5px rgba(17,31,25,.25);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia.active {
  box-shadow:
    0 0 0 1.75px rgba(7,61,47,.96),
    0 0 0 4px rgba(7,61,47,.13),
    inset 0 0 0 1px rgba(255,255,255,.22),
    0 10px 24px rgba(15,81,56,.22);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia.active::after {
  inset: -3px;
  box-shadow: 0 0 0 1.75px rgba(7,61,47,.62);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab span {
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  flex: 0 0 auto;
  border: 1px solid rgba(17,31,25,.14);
}

@media (max-width: 440px) {
  [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-right: 2px;
  }

  [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia {
    margin-right: 0;
  }
}


/* V36 Inbox shell border recovery - reforça a borda do card lateral e evita clipping no lado esquerdo. */
[data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="queue"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="contacts"] > .assisted-workbench.assisted-digisac-shell,
[data-assisted-service].assisted-page[data-section="ia"] > .assisted-workbench.assisted-digisac-shell {
  padding-inline: 6px 2px;
  overflow: visible;
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar,
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel {
  position: relative;
  border: 1.35px solid rgba(17,31,25,.16);
  outline: 1px solid rgba(17,31,25,.05);
  outline-offset: 0;
  background-clip: padding-box;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.74),
    0 18px 42px rgba(17,31,25,.06);
}

[data-assisted-service].assisted-page[data-section="inbox"] .assisted-conversation-sidebar::before,
[data-assisted-service].assisted-page[data-section="queue"] .assisted-conversation-sidebar::before,
[data-assisted-service].assisted-page[data-section="contacts"] .assisted-conversation-sidebar::before,
[data-assisted-service].assisted-page[data-section="ia"] .assisted-conversation-sidebar::before,
[data-assisted-service].assisted-page[data-section="inbox"] .digisac-chat-panel::before,
[data-assisted-service].assisted-page[data-section="queue"] .digisac-chat-panel::before,
[data-assisted-service].assisted-page[data-section="contacts"] .digisac-chat-panel::before,
[data-assisted-service].assisted-page[data-section="ia"] .digisac-chat-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(17,31,25,.04);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  column-gap: 5px;
  row-gap: 5px;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  min-height: 32px;
  padding: 6px 7px;
  border-radius: 13px;
  box-shadow:
    0 0 0 1px rgba(17,31,25,.14),
    inset 0 0 0 1px rgba(255,255,255,.84),
    0 4px 12px rgba(17,31,25,.035);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab::after {
  inset: -1px;
  border-radius: calc(13px + 1px);
  box-shadow: 0 0 0 1px rgba(17,31,25,.12);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  box-shadow:
    0 0 0 1.35px rgba(7,61,47,.84),
    0 0 0 2px rgba(7,61,47,.08),
    inset 0 0 0 1px rgba(255,255,255,.16),
    0 9px 20px rgba(15,81,56,.18);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active::after {
  inset: -1px;
  box-shadow: 0 0 0 1.25px rgba(7,61,47,.46);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia {
  min-width: 56px;
  box-shadow:
    0 0 0 1.2px rgba(17,31,25,.18),
    inset 0 0 0 1px rgba(255,255,255,.88),
    0 4px 12px rgba(17,31,25,.04);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab-ia.active {
  box-shadow:
    0 0 0 1.45px rgba(7,61,47,.90),
    0 0 0 2.5px rgba(7,61,47,.10),
    inset 0 0 0 1px rgba(255,255,255,.18),
    0 9px 20px rgba(15,81,56,.19);
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  min-width: 17px;
  height: 17px;
  padding-inline: 4px;
  font-size: .60rem;
}

@media (max-width: 980px) {
  [data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="queue"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="contacts"] > .assisted-workbench.assisted-digisac-shell,
  [data-assisted-service].assisted-page[data-section="ia"] > .assisted-workbench.assisted-digisac-shell {
    padding-inline: 0;
  }
}

/* Round 33 - assisted call action and received media previews */
[data-assisted-service] .call-tool-wrap { position: relative; display: inline-flex; align-items: center; flex: 0 0 auto; }
[data-assisted-service] .tool-button.call-tool { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; min-width: 42px; min-height: 42px; padding: 0; flex: 0 0 42px; font-size: 1rem; }
[data-assisted-service] .call-popover-menu { position: absolute; left: 0; bottom: calc(100% + 8px); z-index: 70; width: 220px; margin: 0; display: grid; gap: 6px; padding: 8px; border: 1px solid rgba(17,31,25,.10); border-radius: 16px; background: rgba(255,255,255,.98); box-shadow: 0 16px 34px rgba(17,31,25,.12); }
[data-assisted-service] .call-popover-menu[hidden] { display: none; }
[data-assisted-service] .call-menu-option { width: 100%; border: 0; border-radius: 12px; background: #f3f0e7; color: #10251d; padding: 10px 12px; font-weight: 850; text-align: left; cursor: pointer; }
[data-assisted-service] .call-menu-option:hover, [data-assisted-service] .call-menu-option:focus-visible { background: #e4eee8; outline: 2px solid rgba(15,81,56,.22); outline-offset: 1px; }
[data-assisted-service] .call-external-modal { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 24px; background: rgba(17,31,25,.38); backdrop-filter: blur(3px); }
[data-assisted-service] .call-external-modal[hidden] { display: none; }
[data-assisted-service] .call-external-dialog { width: min(390px, calc(100vw - 32px)); display: grid; gap: 14px; padding: 18px; border-radius: 20px; border: 1px solid rgba(17,31,25,.12); background: #fffefa; box-shadow: 0 24px 70px rgba(17,31,25,.24); position: relative; }
[data-assisted-service] .call-external-dialog header { display: grid; gap: 3px; padding-right: 34px; }
[data-assisted-service] .call-external-dialog header strong { font-size: 1.02rem; color: #10251d; }
[data-assisted-service] .call-external-dialog header small, [data-assisted-service] .call-external-dialog label { color: #5f6964; font-size: .88rem; font-weight: 800; }
[data-assisted-service] .call-external-dialog input[type="tel"] { width: 100%; min-height: 42px; margin-top: 6px; border-radius: 13px; border: 1px solid rgba(17,31,25,.16); padding: 9px 11px; background: #fff; color: #10251d; }
[data-assisted-service] .call-external-actions { display: flex; justify-content: flex-end; gap: 8px; }
[data-assisted-service] .chat-bubble.call-bubble { max-width: min(520px, 86%); }
[data-assisted-service] .call-history-card { border: 1px solid rgba(17,31,25,.12); border-radius: 14px; background: rgba(255,255,255,.96); padding: 9px; display: grid; gap: 7px; }
[data-assisted-service] .call-history-card strong { color: #10251d; }
[data-assisted-service] .call-history-card p { margin: 0; color: #5f6964; font-size: .86rem; }
[data-assisted-service] .chat-media-preview { display: inline-flex; max-width: min(340px, 100%); border-radius: 16px; overflow: hidden; background: rgba(17,31,25,.05); border: 1px solid rgba(17,31,25,.08); }
[data-assisted-service] .chat-media-preview-image.whatsapp-image-bubble { display: block; width: min(320px, 62vw); max-width: 100%; border: 0; border-radius: 14px; background: #dfe5e1; box-shadow: inset 0 0 0 1px rgba(17,31,25,.06); }
[data-assisted-service] .chat-media-preview img { display: block; max-width: 100%; max-height: 340px; object-fit: cover; }
[data-assisted-service] .chat-media-preview-image.whatsapp-image-bubble img { width: 100%; height: auto; max-height: 360px; object-fit: cover; }
[data-assisted-service] .chat-media-preview-sticker { max-width: 170px; border: 0; background: transparent; }
[data-assisted-service] .chat-media-preview-sticker img { max-width: 170px; max-height: 170px; object-fit: contain; }
[data-assisted-service] .chat-media-video { width: min(360px, 100%); max-height: 320px; border-radius: 16px; background: #111f19; }
[data-assisted-service] .chat-document-link, [data-assisted-service] .drawer-media-item { display: flex; align-items: center; gap: 8px; border: 1px solid rgba(17,31,25,.11); border-radius: 14px; padding: 9px 10px; background: rgba(255,255,255,.92); color: #112019; text-decoration: none; }
[data-assisted-service] .drawer-media-item { justify-content: space-between; }
[data-assisted-service] .drawer-media-item.is-disabled { opacity: .68; pointer-events: none; }
[data-assisted-service] .drawer-media-item small { color: #64716a; }
[data-assisted-service] .media-label { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 8px; background: rgba(17,31,25,.06); color: #44514b; font-size: .82rem; }
@media (max-width: 760px) { [data-assisted-service] .call-popover-menu { width: min(220px, calc(100vw - 40px)); } }
html[data-theme='dark'] [data-assisted-service] .call-popover-menu, html[data-theme='dark'] [data-assisted-service] .call-external-dialog, html[data-theme='dark'] [data-assisted-service] .call-history-card, html[data-theme='dark'] [data-assisted-service] .chat-document-link, html[data-theme='dark'] [data-assisted-service] .drawer-media-item { background: rgba(20,28,24,.96); border-color: rgba(241,238,226,.12); color: #f7f3e8; }
html[data-theme='dark'] [data-assisted-service] .call-menu-option { background: rgba(241,238,226,.08); color: #f7f3e8; }
html[data-theme='dark'] [data-assisted-service] .call-menu-option:hover, html[data-theme='dark'] [data-assisted-service] .call-menu-option:focus-visible { background: rgba(90,160,124,.24); }
html[data-theme='dark'] [data-assisted-service] .call-external-dialog header strong, html[data-theme='dark'] [data-assisted-service] .call-history-card strong { color: #f7f3e8; }
html[data-theme='dark'] [data-assisted-service] .call-external-dialog header small, html[data-theme='dark'] [data-assisted-service] .call-external-dialog label, html[data-theme='dark'] [data-assisted-service] .call-history-card p, html[data-theme='dark'] [data-assisted-service] .drawer-media-item small { color: #c6d0c9; }
html[data-theme='dark'] [data-assisted-service] .call-external-dialog input[type="tel"] { background: rgba(255,255,255,.06); border-color: rgba(241,238,226,.18); color: #f7f3e8; }

/* V34.1 - chat media lightbox, drag/drop upload and KPI alignment hardening */
.chat-image-lightbox[hidden] { display: none; }
.chat-image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: clamp(16px, 3vw, 32px);
}
.chat-image-lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 10, 7, .78);
  backdrop-filter: blur(2px);
}
.chat-image-lightbox-dialog {
  position: relative;
  z-index: 1;
  width: min(96vw, 980px);
  max-height: min(92vh, 820px);
  display: grid;
  gap: 12px;
  padding: clamp(12px, 2vw, 18px);
  border-radius: 22px;
  background: var(--surface-card, #fff);
  box-shadow: 0 28px 80px rgba(0, 0, 0, .35);
  overflow: hidden;
}
.chat-image-lightbox-close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 999px;
  background: rgba(15, 23, 42, .86);
  color: #fff;
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
}
.chat-image-lightbox-figure {
  display: grid;
  gap: 10px;
  margin: 0;
  min-width: 0;
}
.chat-image-lightbox-figure img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: min(74vh, 680px);
  margin: 0 auto;
  border-radius: 16px;
  object-fit: contain;
}
.chat-image-lightbox-figure figcaption {
  color: var(--text-muted, #647067);
  font-size: .9rem;
  overflow-wrap: anywhere;
  text-align: center;
}
.chat-image-lightbox-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
.chat-image-lightbox-open { overflow: hidden; }
.chat-messages.is-drag-over,
.chat-compose.is-drag-over {
  outline: 2px dashed var(--color-primary, #0f6f4f);
  outline-offset: -6px;
  background: color-mix(in srgb, var(--color-primary, #0f6f4f) 8%, transparent);
}
.chat-messages.is-drag-over::after {
  content: 'Solte a imagem ou vídeo para enviar';
  position: sticky;
  bottom: 12px;
  z-index: 5;
  display: block;
  width: fit-content;
  max-width: calc(100% - 24px);
  margin: 12px auto 0;
  padding: 10px 14px;
  border-radius: 999px;
  background: var(--surface-card, #fff);
  box-shadow: var(--shadow-md, 0 14px 36px rgba(15,23,42,.16));
  color: var(--text-strong, #16231d);
  font-weight: 800;
}
.process-kpi-grid-monitoring,
.labor-status-overview {
  align-items: stretch;
}
.process-kpi-card,
.labor-status-overview .metric-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: flex-start;
  align-content: flex-start;
  gap: 14px;
  min-width: 0;
  min-height: 148px;
  padding: 16px;
}
.process-kpi-card .process-kpi-icon,
.labor-status-overview .metric-card .metric-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  flex: 0 0 42px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  align-self: flex-start;
  justify-self: start;
  margin: 0;
  border-radius: 14px;
}
.process-kpi-card > div,
.labor-status-overview .metric-card > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.process-kpi-card strong,
.labor-status-overview .metric-card strong {
  display: block;
  line-height: 1;
  margin: 0;
  overflow-wrap: anywhere;
  letter-spacing: -0.045em;
}
.process-kpi-card small,
.process-kpi-card em,
.labor-status-overview .metric-card small,
.labor-status-overview .metric-card p {
  margin: 0;
  line-height: 1.28;
  min-width: 0;
}
.process-kpi-card em {
  grid-column: 2;
  font-style: normal;
  overflow-wrap: anywhere;
}
.labor-status-overview .metric-card p {
  color: var(--text-muted, #647067);
  font-size: .88rem;
}
@media (max-width: 640px) {
  .chat-image-lightbox { padding: 10px; }
  .chat-image-lightbox-dialog { width: 100%; max-height: 94vh; border-radius: 18px; }
  .chat-image-lightbox-figure img { max-height: 78vh; }
  .process-kpi-card,
  .labor-status-overview .metric-card { min-height: auto; }
}


/* source: 04-pages/dashboard-v41.css */
/* ============================================================
   Dashboard v41 — Painel CIRS reestruturado
   Preserva identidade visual; sem Central de Atalhos.
   ============================================================ */

/* ── Cabeçalho compacto ──────────────────────────────────── */
.dashboard-hero-compact {
  padding-block: 20px 16px;
}
.dashboard-hero-compact h1 {
  font-size: clamp(2.4rem, 5vw, 4.2rem);
  margin: 4px 0 2px;
}
.dashboard-hero-compact p {
  max-width: 52ch;
  color: var(--muted);
  font-size: 1rem;
  margin: 0;
}

/* ── Cabeçalho de seção ──────────────────────────────────── */
.dashboard-section {
  display: grid;
  gap: 14px;
}
.dashboard-section-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.dashboard-section-title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  color: var(--color-text, #112019);
  letter-spacing: -0.01em;
}

/* ── KPI cards ───────────────────────────────────────────── */
.dashboard-top-grid {
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 10px;
}
.dashboard-kpi-card {
  display: grid;
  gap: 4px;
  min-height: 116px;
  padding: 14px 12px 12px;
  border-radius: var(--radius-lg, 18px);
  border: 1px solid rgba(17,31,25,.09);
  background: #fff;
  box-shadow: 0 2px 10px rgba(17,31,25,.05);
  text-decoration: none;
  transition: box-shadow .18s, border-color .18s, transform .18s;
}
.dashboard-kpi-card:hover {
  box-shadow: 0 6px 22px rgba(17,31,25,.1);
  border-color: rgba(17,31,25,.16);
  transform: translateY(-1px);
}
.kpi-group {
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--muted, #627069);
}
.kpi-value {
  display: block;
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  font-weight: 900;
  line-height: 1.1;
  color: var(--color-accent, #0f5138);
  letter-spacing: -0.02em;
  margin: 4px 0 2px;
}
.kpi-title {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--color-text, #112019);
}
.kpi-desc {
  margin: 0;
  font-size: 0.74rem;
  color: var(--muted, #627069);
  line-height: 1.35;
}

/* ── Alertas Operacionais ────────────────────────────────── */
.dashboard-alerts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
}
.dashboard-alert-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(17,31,25,.09);
  background: #fff;
  text-decoration: none;
  transition: box-shadow .18s, border-color .18s;
}
.dashboard-alert-card:hover {
  box-shadow: 0 4px 16px rgba(17,31,25,.09);
  border-color: rgba(17,31,25,.15);
}
.alert-card-body {
  min-width: 0;
  flex: 1;
}
.alert-title {
  display: block;
  font-size: 0.83rem;
  font-weight: 700;
  color: var(--color-text, #112019);
  margin-bottom: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.alert-desc {
  margin: 0;
  font-size: 0.73rem;
  color: var(--muted, #627069);
  line-height: 1.35;
}
.alert-badge {
  flex-shrink: 0;
  min-width: 36px;
  height: 36px;
  border-radius: 999px;
  background: rgba(17,31,25,.07);
  color: var(--color-text, #112019);
  display: grid;
  place-items: center;
  font-size: 0.9rem;
  font-weight: 800;
}
.dashboard-alert-card.tone-danger .alert-badge {
  background: rgba(185,28,28,.12);
  color: #991b1b;
}
.dashboard-alert-card.tone-warning .alert-badge {
  background: rgba(161,98,7,.12);
  color: #92400e;
}
.dashboard-alert-card.tone-success .alert-badge {
  background: rgba(20,83,45,.1);
  color: #14532d;
}

/* ── Fluxo Operacional ───────────────────────────────────── */
.dashboard-flow-strip {
  display: flex;
  align-items: stretch;
  gap: 0;
  width: 100%;
  overflow-x: visible;
  padding-bottom: 0;
  scrollbar-width: thin;
  scrollbar-color: rgba(17,31,25,.18) transparent;
}
.dashboard-flow-step {
  display: grid;
  grid-template-rows: auto 1fr auto auto;
  align-items: start;
  gap: 2px;
  flex: 1 1 0;
  min-width: 0;
  padding: 14px 12px;
  background: #fff;
  border: 1px solid rgba(17,31,25,.09);
  border-radius: 0;
  text-decoration: none;
  transition: background .15s, border-color .15s;
}
.dashboard-flow-step:first-of-type {
  border-radius: 16px 0 0 16px;
}
.dashboard-flow-step:last-of-type {
  border-radius: 0 16px 16px 0;
}
.dashboard-flow-step:not(:last-of-type) {
  border-right-width: 0;
}
.dashboard-flow-step:hover {
  background: rgba(15,81,56,.05);
  border-color: rgba(15,81,56,.18);
  z-index: 1;
  border-right-width: 1px;
}
.dashboard-flow-step:hover + .flow-arrow + .dashboard-flow-step,
.dashboard-flow-step:hover + .dashboard-flow-step {
  border-left-color: rgba(15,81,56,.18);
}
.flow-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 0;
  overflow: visible;
  font-size: 0;
  color: transparent;
  position: relative;
  z-index: 2;
}
.flow-index {
  font-size: 0.65rem;
  font-weight: 900;
  letter-spacing: .08em;
  color: var(--muted, #8a948e);
  text-transform: uppercase;
}
.flow-value {
  font-size: 1.65rem;
  font-weight: 900;
  color: var(--color-accent, #0f5138);
  line-height: 1.15;
  margin: 4px 0 2px;
}
.flow-label {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--color-text, #112019);
}
.flow-sub {
  font-size: 0.68rem;
  color: var(--muted, #627069);
  margin-top: 1px;
}

/* ── Filtros de Movimentação ─────────────────────────────── */
.dashboard-tab-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.tab-pill {
  border: 1px solid rgba(17,31,25,.13);
  background: transparent;
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 0.76rem;
  font-weight: 700;
  color: var(--muted, #627069);
  cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
}
.tab-pill:hover,
.tab-pill.is-active {
  background: var(--color-accent, #0f5138);
  color: #fff;
  border-color: var(--color-accent, #0f5138);
}

/* ── Activity items ──────────────────────────────────────── */
.dashboard-activity-item {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: start;
  padding: 12px 14px;
  border-radius: 14px;
  text-decoration: none;
  background: transparent;
  border: 1px solid transparent;
  transition: background .15s, border-color .15s;
}
.dashboard-activity-item:hover {
  background: rgba(17,31,25,.03);
  border-color: rgba(17,31,25,.08);
}
.activity-type-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(17,31,25,.07);
  font-size: 0.67rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--color-text, #112019);
  white-space: nowrap;
  align-self: start;
  margin-top: 2px;
}
.activity-body strong {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--color-text, #112019);
  margin-bottom: 2px;
}
.activity-body p {
  margin: 0;
  font-size: 0.77rem;
  color: var(--muted, #627069);
  line-height: 1.35;
}
.activity-meta {
  font-size: 0.71rem;
  color: var(--muted, #8a948e);
  text-align: right;
  white-space: nowrap;
  line-height: 1.4;
}

/* ── Responsividade ──────────────────────────────────────── */

@media (max-width: 1500px) {
  .dashboard-top-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media (max-width: 1180px) {
  .dashboard-top-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .dashboard-flow-strip {
    overflow-x: auto;
  }
  .dashboard-flow-step {
    min-width: 130px;
  }
}
@media (max-width: 900px) {
  .dashboard-top-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dashboard-alerts-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-flow-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(100px, 1fr));
    overflow-x: unset;
  }
  .dashboard-flow-step:first-of-type,
  .dashboard-flow-step:last-of-type,
  .dashboard-flow-step {
    border-radius: 14px;
    border-right-width: 1px;
  }
  .flow-arrow { display: none; }
}
@media (max-width: 600px) {
  .dashboard-top-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-flow-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dashboard-alert-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .alert-badge {
    align-self: flex-end;
  }
  .dashboard-tab-pills {
    display: none;
  }
}

/* ── Dark mode ───────────────────────────────────────────── */
html[data-theme="dark"] .dashboard-kpi-card,
html[data-theme="dark"] .dashboard-alert-card,
html[data-theme="dark"] .dashboard-flow-step {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}
html[data-theme="dark"] .kpi-value,
html[data-theme="dark"] .flow-value {
  color: #5dbd96;
}
html[data-theme="dark"] .alert-badge {
  background: rgba(255,255,255,.08);
  color: #e2e8e4;
}
html[data-theme="dark"] .tab-pill {
  border-color: rgba(255,255,255,.12);
  color: #a8b4ae;
}
html[data-theme="dark"] .tab-pill:hover,
html[data-theme="dark"] .tab-pill.is-active {
  background: #0f5138;
  color: #fff;
  border-color: #0f5138;
}


/* source: 04-pages/chat-stability-v41.css */
/* ============================================================
   Chat Stability v41 — Elimina flicker, piscadas e re-renders
   visuais excessivos na Aba De Chat / Assisted Service.
   ============================================================ */

/* ── Lista de conversas: sem reset visual entre polls ──────
   O JS já preserva scrollTop e usa signature diff para evitar
   innerHTML desnecessário. No CSS garantimos que a lista não
   pisca ao re-renderizar com contain: layout style.
   ──────────────────────────────────────────────────────────── */
[data-live-conversation-list] {
  contain: layout style;
  will-change: auto;
}

/* ── Itens de conversa: transição suave, sem flash de cor ── */
.conversation-item {
  transition: background-color .15s ease, opacity .15s ease;
  /* Sem animation que cause pisca ao inserir novos itens */
}
/* Remove qualquer animation herdada que possa causar flicker */
.conversation-item *,
[data-live-conversation-list] * {
  animation: none;
}

/* ── Área de mensagens: sem animation nos bubbles ─────────── */
.digisac-chat-messages .message-bubble,
.chat-messages .chat-bubble {
  animation: none;
  transition: none;
}

/* ── Evita skeleton visível durante refresh silencioso ──────
   Skeleton só deve aparecer no primeiro load; durante atualizações
   o JS substitui o conteúdo sem limpar a lista antes.
   ──────────────────────────────────────────────────────────── */
.chat-messages-loading-skeleton {
  display: none;
}
/* Exibe skeleton apenas quando a lista está genuinamente vazia
   e a classe is-initial-load está presente no pai */
.digisac-chat-panel.is-initial-load .chat-messages-loading-skeleton {
  display: block;
}

/* ── Painel de chat: sem transition que cause re-paint ────── */
.digisac-chat-panel {
  contain: layout;
}

/* ── Scroll suave sem salto visual ──────────────────────────
   O scrollMessagesToBottom usa scrollTop = scrollHeight diretamente.
   Garantimos que não haja scroll-behavior: smooth que cause
   salto visual em re-renders.
   ──────────────────────────────────────────────────────────── */
.digisac-chat-messages,
.chat-messages {
  scroll-behavior: auto;
  overflow-anchor: none; /* evita saltos causados por overflow-anchor */
}

/* ── is-loading no item: não pisca, apenas opacidade discreta */
.conversation-item.is-loading {
  opacity: 0.6;
  pointer-events: none;
  transition: opacity .1s;
}

/* ── Toast stack: sem animation agressiva ────────────────── */
.assisted-toast {
  animation: none;
  opacity: 1;
  transition: opacity .25s ease;
}

/* ── Status de entrega: sem animation pulsante ───────────── */
.message-read-state {
  animation: none;
}

/* ── Typing indicator: mantém animação, mas só quando ativo */
.vs-typing-indicator {
  animation: vsTypingPulse 1.2s infinite ease-in-out;
}
.vs-typing-indicator:not([data-typing-active]) {
  animation: none;
}

/* ── Barra de carregamento da conversa: discreta ─────────── */
.digisac-chat-panel.is-loading::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--color-accent, #0f5138), transparent);
  background-size: 200% 100%;
  animation: chatLoadingBar .9s ease-in-out infinite;
  z-index: 10;
  pointer-events: none;
}
@keyframes chatLoadingBar {
  0% { background-position: -100% 0; }
  100% { background-position: 200% 0; }
}

/* ── Live list: preservar posição de scroll ──────────────── */
[data-live-conversation-list] {
  overflow-y: auto;
  overscroll-behavior: contain;
}

/* ── Sem flash branco ao abrir conversa ─────────────────── */
.digisac-chat-panel,
.digisac-chat-shell {
  background-color: var(--color-bg-page, #f5f2e8);
}

/* ── Responsivo: chat em mobile sem quebra ─────────────────
   Mantém leitura confortável e sem piscada no scroll.
   ──────────────────────────────────────────────────────────── */
@media (max-width: 680px) {
  .digisac-chat-messages,
  .chat-messages {
    padding: 12px;
    gap: 8px;
  }
  .message-bubble,
  .chat-bubble {
    max-width: min(88%, 420px);
  }
}


/* source: 04-pages/v43-adjustments.css */
/* v43: ajustes de painel, atendimento, funil e formulários solicitados */
.dashboard-hero-compact h1 {
  font-size: clamp(2rem, 3.6vw, 3.15rem);
  line-height: 1.04;
  letter-spacing: -0.04em;
}
.dashboard-hero-compact p {
  max-width: none;
  white-space: nowrap;
  font-size: 0.95rem;
}
.dashboard-section-title,
.dashboard-panel-header h2 {
  font-size: clamp(1.05rem, 1.35vw, 1.35rem);
  line-height: 1.15;
}
.dashboard-top-grid {
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 10px;
}
.dashboard-kpi-card {
  min-height: 118px;
  padding: 14px 12px;
}
.dashboard-kpi-card .kpi-value,
.kpi-value {
  font-size: clamp(1.05rem, 1.45vw, 1.45rem);
  line-height: 1.05;
}
.dashboard-kpi-card .kpi-title,
.kpi-title {
  font-size: 0.78rem;
  line-height: 1.18;
}
.dashboard-kpi-card .kpi-group,
.kpi-group {
  font-size: 0.66rem;
}
.dashboard-alerts-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  align-items: stretch;
}
.dashboard-alert-card {
  min-height: 82px;
  padding: 12px;
  gap: 10px;
  align-items: center;
}
.dashboard-alert-card .alert-desc {
  display: none;
}
.dashboard-alert-card .alert-title {
  font-size: 0.82rem;
  line-height: 1.2;
}
.dashboard-alert-card .alert-badge {
  min-width: 36px;
  height: 32px;
}
.dashboard-flow-strip {
  width: 100%;
  margin-left: 0;
  align-self: stretch;
}
.dashboard-main-grid-v2 {
  grid-template-columns: minmax(0, 1fr);
}
.dashboard-activity-panel {
  grid-column: 1 / -1;
  width: 100%;
}
.chat-bubble .chat-sender-name {
  display: block;
  font-weight: 800;
  margin-bottom: 4px;
  color: inherit;
}
.chat-finish-form-with-subject {
  display: flex;
  gap: 8px;
  align-items: center;
}
.chat-finish-form-with-subject input[name="subject"] {
  min-width: 190px;
  max-width: 260px;
}
.rs-topbar .rs-user-summary .avatar {
  width: 42px;
  height: 42px;
  min-width: 42px;
  font-size: 1rem;
}
.rs-topbar .rs-user-summary .avatar-image {
  width: 42px;
  height: 42px;
}
.rs-topbar .rs-user-summary-copy strong {
  font-size: 0.96rem;
}
.rs-topbar .rs-user-role-caption {
  font-size: 0.77rem;
}
.ui-modal {
  border: 0;
  border-radius: 26px;
  padding: 0;
  width: min(720px, calc(100vw - 28px));
  max-height: min(86vh, 820px);
  overflow: hidden;
  color: var(--text, #111f19);
  background: #fdfdf9;
  box-shadow: 0 32px 90px rgba(10, 32, 24, 0.28);
}
.ui-modal::backdrop {
  background: rgba(5, 20, 15, 0.45);
  backdrop-filter: blur(5px);
}
.ui-modal .modal-card {
  display: grid;
  gap: 18px;
  padding: 24px;
  max-height: inherit;
  overflow: auto;
}
.ui-modal .modal-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}
.ui-modal .modal-header h2 {
  margin: 0;
  font-size: 1.35rem;
}
.ui-modal .modal-header p {
  margin: 6px 0 0;
  color: var(--muted, #66756d);
}
.ui-modal .modal-close-button {
  border: 0;
  background: rgba(13, 43, 32, 0.08);
  border-radius: 999px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  font-weight: 800;
}
.quick-actions-card .quick-actions-row,
.nucleus-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.assisted-card.wide.quick-category-manager-card,
.assisted-card.wide.quick-library-card {
  grid-column: 1 / -1;
}
.quick-category-admin-list {
  display: grid;
  gap: 10px;
}
.quick-category-admin-row {
  align-items: center;
}
.settings-nucleus-overview-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
  align-items: start;
}
.field-help-tooltip {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 6px;
  border-radius: 999px;
  background: rgba(13, 43, 32, 0.08);
  color: #0b3528;
  font-size: 0.72rem;
  font-weight: 800;
  cursor: help;
}
.field-help-tooltip::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 10px);
  z-index: 30;
  width: min(320px, 72vw);
  transform: translateX(-50%) translateY(4px);
  padding: 10px 12px;
  border-radius: 14px;
  background: #0b241b;
  color: #fff;
  font-size: 0.78rem;
  line-height: 1.35;
  opacity: 0;
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease;
  box-shadow: 0 16px 40px rgba(0,0,0,.2);
}
.field-help-tooltip:hover::after,
.field-help-tooltip:focus::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.rs-route-automations-responde .vs-layout {
  min-height: calc(100vh - 210px);
  align-items: stretch;
}
.rs-route-automations-responde .vs-chat-card {
  min-height: calc(100vh - 220px);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
}
.rs-route-automations-responde .vs-chat-scroll,
.rs-route-automations-responde .vs-chat-messages {
  min-height: 0;
  max-height: none;
}
.labor-filter-grid {
  grid-template-columns: minmax(220px, 1.35fr) minmax(140px, .8fr) minmax(150px, .85fr) 145px 145px auto;
  align-items: end;
}
.labor-search-field {
  min-width: 0;
}
.labor-filter-actions {
  justify-content: flex-end;
  align-self: end;
  white-space: nowrap;
}
.contacts-page .metric-card:nth-child(1),
.contacts-page .stat-card:nth-child(1),
.contacts-page .contact-metric-card.metric-leads {
  background: linear-gradient(135deg, rgba(12, 83, 62, .12), rgba(12, 83, 62, .04));
  border-color: rgba(12, 83, 62, .22);
}
.contacts-page .metric-card:nth-child(2),
.contacts-page .stat-card:nth-child(2),
.contacts-page .contact-metric-card.metric-contacts {
  background: linear-gradient(135deg, rgba(37, 99, 235, .10), rgba(37, 99, 235, .035));
  border-color: rgba(37, 99, 235, .2);
}
.crm-leads-filter-grid,
.leads-filter-grid {
  grid-template-columns: minmax(180px, 1fr) minmax(105px, .58fr) minmax(105px, .58fr) minmax(120px, .65fr) 118px 118px auto;
  align-items: end;
}
.crm-leads-filter-grid .filter-actions,
.leads-filter-grid .filter-actions {
  justify-content: flex-end;
  white-space: nowrap;
}
@media (max-width: 1280px) {
  .dashboard-top-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-alerts-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-hero-compact p { white-space: normal; }
  .labor-filter-grid,
  .crm-leads-filter-grid,
  .leads-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .dashboard-top-grid,
  .dashboard-alerts-grid,
  .settings-nucleus-overview-grid { grid-template-columns: 1fr; }
  .chat-finish-form-with-subject { flex-direction: column; align-items: stretch; }
  .chat-finish-form-with-subject input[name="subject"] { max-width: none; }
}

/* v43.1: alinhamento visual solicitado em Painel, Busca Global e Atendimento. */
.rs-main.rs-route-search .search-hero h1,
.dashboard-page-v2 .dashboard-hero-compact h1 {
  font-size: clamp(1.85rem, 2.35vw, 2.45rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
  margin-block: 0.2rem 0.45rem;
}

.rs-main.rs-route-search .search-hero {
  min-height: clamp(104px, 8vw, 136px);
}

.dashboard-filter-panel {
  align-items: center;
  grid-template-columns: minmax(210px, 1fr) minmax(210px, 240px) minmax(180px, 210px) minmax(180px, 210px) auto auto;
}

.dashboard-filter-panel label {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  min-height: 42px;
}

.dashboard-filter-panel label span {
  flex: 0 0 auto;
  margin: 0;
}

.dashboard-filter-panel select,
.dashboard-filter-panel input[type="date"] {
  flex: 1 1 auto;
  min-width: 0;
}

.dashboard-activity-item {
  grid-template-columns: auto minmax(0, 1fr) minmax(96px, auto);
  gap: 14px;
  padding: 14px 16px;
}

.activity-type-badge {
  padding: 4px 10px;
  font-size: 0.72rem;
  line-height: 1.2;
}

.activity-body strong {
  font-size: 0.94rem;
  font-weight: 800;
  line-height: 1.25;
}

.activity-body p {
  font-size: 0.87rem;
  line-height: 1.45;
}

.activity-meta {
  font-size: 0.78rem;
  line-height: 1.35;
}

.rs-topbar .rs-user-summary-copy .rs-user-role-caption {
  color: #244236;
  font-weight: 800;
  opacity: 1;
}

html[data-theme='dark'] .rs-topbar .rs-user-summary-copy .rs-user-role-caption {
  color: rgba(245, 241, 223, 0.84);
}

.assisted-tabs.assisted-management-tabs {
  padding: 10px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(17, 31, 25, 0.1);
  box-shadow: 0 14px 32px rgba(17, 31, 25, 0.06);
}

.assisted-tabs.assisted-management-tabs a,
.assisted-tabs.assisted-management-tabs .assisted-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.62rem 0.95rem;
  border-radius: 14px;
  border: 1px solid transparent;
  color: #365349;
  background: transparent;
  font-size: 0.86rem;
  font-weight: 800;
  letter-spacing: 0.005em;
}

.assisted-tabs.assisted-management-tabs a:hover,
.assisted-tabs.assisted-management-tabs .assisted-tab:hover {
  background: rgba(15, 81, 56, 0.08);
  border-color: rgba(15, 81, 56, 0.12);
  color: #0f3d2e;
}

.assisted-tabs.assisted-management-tabs a.active,
.assisted-tabs.assisted-management-tabs a[aria-current='page'],
.assisted-tabs.assisted-management-tabs .assisted-tab.active,
.assisted-tabs.assisted-management-tabs .assisted-tab[aria-current='page'] {
  background: #0f5138;
  border-color: rgba(15, 81, 56, 0.32);
  color: #fff;
  box-shadow: 0 12px 24px rgba(15, 81, 56, 0.18);
}

.quick-category-manager-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 246, 0.94));
}

.quick-category-manager-card .assisted-card-header {
  align-items: flex-start;
  gap: 1rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid rgba(17, 31, 25, 0.08);
}

.quick-category-admin-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
  gap: 12px;
}

.quick-category-admin-item {
  display: grid;
  gap: 0.65rem;
  padding: 12px;
  border: 1px solid rgba(15, 81, 56, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 24px rgba(17, 31, 25, 0.05);
}

.quick-category-admin-row {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) 48px auto auto auto;
  gap: 0.55rem;
  align-items: center;
}

.quick-category-admin-row input[name="name"] {
  min-width: 0;
  font-weight: 800;
}

.quick-category-admin-row input[type="color"] {
  width: 48px;
  min-width: 48px;
  height: 42px;
  padding: 4px;
}

.quick-category-count {
  justify-self: start;
}

.quick-category-deactivate-row {
  display: flex;
  justify-content: flex-end;
  margin: 0;
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs,
html[data-theme='dark'] .quick-category-manager-card,
html[data-theme='dark'] .quick-category-admin-item {
  background: rgba(9, 29, 22, 0.9);
  border-color: rgba(214, 215, 189, 0.14);
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs a,
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab {
  color: rgba(245, 241, 223, 0.78);
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs a:hover,
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab:hover {
  background: rgba(214, 215, 189, 0.1);
  border-color: rgba(214, 215, 189, 0.18);
  color: #f5f1df;
}

html[data-theme='dark'] .assisted-tabs.assisted-management-tabs a.active,
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs a[aria-current='page'],
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab.active,
html[data-theme='dark'] .assisted-tabs.assisted-management-tabs .assisted-tab[aria-current='page'] {
  background: rgba(214, 215, 189, 0.18);
  border-color: rgba(214, 215, 189, 0.28);
  color: #fffbe8;
}

@media (max-width: 900px) {
  .dashboard-filter-panel {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .dashboard-filter-panel label {
    align-items: flex-start;
  }

  .dashboard-activity-item {
    grid-template-columns: 1fr;
  }

  .activity-meta {
    text-align: left;
  }

  .quick-category-admin-row {
    grid-template-columns: 1fr auto;
  }

  .quick-category-admin-row .quick-category-count,
  .quick-category-admin-row .pill-toggle,
  .quick-category-admin-row button {
    justify-self: stretch;
  }
}

/* Produção: refinamentos de Processos, Atendimento e navegação global */
.rs-brand-logo-stage,
.rs-brand-logo-stage-production,
.rs-brand-logo-placeholder,
.rs-brand-logo-placeholder-production {
  overflow: visible;
}

.rs-brand-logo-img,
.rs-brand-logo-img-production,
.rs-brand-logo-placeholder img,
.rs-brand-logo-placeholder-production img {
  width: 100%;
  height: 100%;
  max-width: calc(100% - 8px);
  max-height: calc(100% - 8px);
  object-fit: contain;
  object-position: center;
  padding: 4px;
}

.dashboard-command-hero h1,
.crm-page-header h1,
.assisted-hero h1,
.process-hero h1,
.records-page-header h1,
.settings-page-header h1,
.reports-hero h1,
.audit-hero h1,
.nfse-hero h1,
.labor-hero h1,
.search-hero h1,
.page-header h1 {
  font-size: clamp(2rem, 1.45rem + 1.8vw, 3.1rem);
  line-height: .98;
  letter-spacing: -.055em;
  margin: 0;
}

.dashboard-command-hero p,
.crm-page-header p,
.assisted-hero p,
.process-hero p,
.records-page-header p,
.settings-page-header p,
.reports-hero p,
.audit-hero p,
.nfse-hero p,
.labor-hero p,
.search-hero p,
.page-header p {
  max-width: 760px;
  font-size: clamp(.98rem, .92rem + .18vw, 1.08rem);
  line-height: 1.35;
  color: var(--muted, rgba(15, 35, 28, .68));
}

.dashboard-command-hero .eyebrow,
.crm-page-header .eyebrow,
.assisted-hero .eyebrow,
.process-hero .eyebrow,
.records-page-header .eyebrow,
.settings-page-header .eyebrow,
.reports-hero .eyebrow,
.audit-hero .eyebrow,
.nfse-hero .eyebrow,
.labor-hero .eyebrow,
.search-hero .eyebrow,
.page-header .eyebrow {
  font-size: .74rem;
  letter-spacing: .08em;
}

.process-clients-details > summary {
  cursor: pointer;
}

.process-client-toolbar-paged {
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.process-client-page-info {
  color: var(--muted, #64736c);
  font-size: .82rem;
  font-weight: 800;
}

.process-client-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(15, 81, 56, .12);
}

.process-client-page-buttons {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: center;
}

.process-page-button {
  min-width: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(15, 81, 56, .18);
  background: rgba(255, 255, 255, .74);
  color: var(--text, #0d231b);
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(2, 21, 14, .06);
}

.process-page-button:hover,
.process-page-button.active {
  background: var(--primary, #063f2d);
  color: #fff;
  border-color: transparent;
}

.process-client-pagination .is-disabled {
  pointer-events: none;
  opacity: .45;
}

.process-monitoring-card-v2 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(15, 81, 56, .14);
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(239,248,244,.84));
  box-shadow: 0 18px 45px rgba(3, 26, 18, .08);
}

.process-card-topline {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.process-title-block {
  min-width: 0;
}

.process-title-block strong {
  display: block;
  font-size: 1.02rem;
  line-height: 1.2;
  color: var(--text, #0b2119);
}

.process-title-block small {
  display: block;
  margin-top: 4px;
  color: var(--muted, #65746c);
  font-weight: 700;
}

.process-card-information-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 280px);
  gap: 14px;
  align-items: stretch;
}

.process-monitoring-meta-grid-v2 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.process-monitoring-meta-grid-v2 span,
.process-card-review-panel {
  border: 1px solid rgba(15, 81, 56, .12);
  background: rgba(255, 255, 255, .76);
  border-radius: 18px;
  padding: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}

.process-monitoring-meta-grid-v2 strong,
.process-card-review-panel span {
  display: block;
  text-transform: uppercase;
  letter-spacing: .045em;
  font-size: .68rem;
  color: rgba(13, 58, 43, .72);
  margin-bottom: 5px;
}

.process-monitoring-meta-grid-v2 em,
.process-card-review-panel strong {
  display: block;
  font-style: normal;
  color: var(--text, #0b2119);
  font-size: .95rem;
  font-weight: 900;
  word-break: break-word;
}

.process-card-review-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: linear-gradient(135deg, rgba(6,63,45,.96), rgba(10,88,63,.82));
  color: #fff;
}

.process-card-review-panel span,
.process-card-review-panel strong,
.process-card-review-panel small {
  color: #fff;
}

.process-card-review-panel small {
  margin-top: 8px;
  font-weight: 800;
  opacity: .8;
}

.process-consult-note-v2 {
  border-radius: 18px;
  padding: 10px 12px;
  background: rgba(216, 237, 227, .55);
  color: var(--text, #0b2119);
  font-weight: 700;
}

.process-card-footer-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 2px;
}

.process-card-actions-bottom {
  gap: 8px;
  flex-wrap: wrap;
}

.process-diary-open-button {
  margin-left: auto;
  min-width: 128px;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 14px 30px rgba(6, 63, 45, .2);
}

.process-diary-open-button span {
  display: inline-flex;
  min-width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
}

.process-diary-modal {
  width: min(980px, calc(100vw - 32px));
  max-height: min(88vh, 820px);
  border: 0;
  border-radius: 28px;
  padding: 0;
  background: transparent;
  box-shadow: 0 30px 100px rgba(0, 20, 13, .32);
}

.process-diary-modal::backdrop {
  background: rgba(0, 18, 12, .52);
  backdrop-filter: blur(5px);
}

.process-diary-modal-shell {
  display: flex;
  flex-direction: column;
  max-height: min(88vh, 820px);
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.45);
  background: linear-gradient(180deg, #fbfffd, #f1f8f4);
}

.process-diary-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 24px 16px;
  border-bottom: 1px solid rgba(15, 81, 56, .1);
}

.process-diary-modal-header h3 {
  margin: 4px 0 6px;
  font-size: clamp(1.35rem, 1.1rem + .8vw, 1.9rem);
  letter-spacing: -.035em;
}

.process-diary-modal-header p {
  margin: 0;
  color: var(--muted, #63746d);
  font-weight: 800;
}

.process-diary-modal-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 12px 24px;
  background: rgba(235, 247, 241, .8);
}

.process-diary-tab {
  border: 1px solid rgba(15, 81, 56, .14);
  border-radius: 16px;
  background: rgba(255,255,255,.75);
  color: var(--text, #0b2119);
  font-weight: 900;
  padding: 12px 14px;
  cursor: pointer;
}

.process-diary-tab.active {
  background: var(--primary, #063f2d);
  color: #fff;
  border-color: transparent;
}

.process-diary-modal-panel {
  padding: 18px 24px 24px;
  overflow: auto;
}

.process-diary-modal-panel[hidden] {
  display: none;
}

.process-log-timeline-modal {
  max-height: 52vh;
  overflow: auto;
  padding-right: 4px;
}

.process-diary-register-panel .process-diary-card {
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(15,81,56,.12);
  border-radius: 20px;
  padding: 14px;
  margin-bottom: 12px;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  overflow: visible;
  padding: 5px;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  width: 100%;
  min-width: 0;
  justify-content: center;
  gap: 6px;
  padding: 7px 8px;
  font-size: .75rem;
  line-height: 1;
  white-space: nowrap;
  overflow: visible;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab span:first-child {
  overflow: visible;
  text-overflow: clip;
}

[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line .count {
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  flex: 0 0 auto;
  font-size: .68rem;
}

.assisted-preferences-card,
.quick-command-card {
  border-radius: 28px;
  border: 1px solid rgba(15,81,56,.12);
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(238,249,243,.86));
  box-shadow: 0 18px 50px rgba(5, 35, 24, .08);
}

.assisted-preferences-hero,
.quick-command-hero {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 20px;
  padding: 6px 2px 18px;
  border-bottom: 1px solid rgba(15,81,56,.1);
  margin-bottom: 18px;
}

.assisted-preferences-hero h2,
.quick-command-hero h2 {
  margin: 4px 0 6px;
  font-size: clamp(1.55rem, 1.2rem + .8vw, 2.15rem);
  letter-spacing: -.04em;
}

.assisted-preferences-hero p,
.quick-command-hero p {
  margin: 0;
  color: var(--muted, #65746c);
  max-width: 720px;
  font-weight: 650;
}

.assisted-preferences-badge {
  align-self: flex-start;
  border-radius: 999px;
  background: rgba(15,81,56,.1);
  color: var(--primary, #063f2d);
  padding: 9px 12px;
  font-weight: 900;
  white-space: nowrap;
}

.assisted-preferences-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.assisted-preference-option {
  min-height: 150px;
  align-items: flex-start;
}

.assisted-preference-option .switch-copy strong {
  font-size: 1rem;
  line-height: 1.15;
}

.assisted-preferences-save {
  display: flex;
  justify-content: flex-end;
  margin-top: 18px;
}

.quick-command-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(88px, 1fr));
  gap: 10px;
  min-width: min(380px, 100%);
}

.quick-command-metrics span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 18px;
  border: 1px solid rgba(15,81,56,.12);
  background: rgba(255,255,255,.78);
  padding: 12px;
  text-align: center;
}

.quick-command-metrics strong {
  font-size: 1.45rem;
  line-height: 1;
}

.quick-command-metrics small {
  color: var(--muted, #65746c);
  font-weight: 850;
  margin-top: 4px;
}

.quick-command-actions {
  justify-content: flex-start;
  gap: 10px;
}

.quick-category-manager-card,
.quick-library-card {
  border-radius: 26px;
}

.quick-category-admin-list {
  display: grid;
  gap: 10px;
}

.quick-category-admin-item {
  border-radius: 18px;
  border: 1px solid rgba(15,81,56,.11);
  background: rgba(255,255,255,.74);
  padding: 10px;
}

@media (max-width: 1180px) {
  .process-card-information-grid,
  .process-monitoring-meta-grid-v2,
  .assisted-preferences-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .process-card-information-grid,
  .process-monitoring-meta-grid-v2,
  .assisted-preferences-grid,
  .quick-command-metrics {
    grid-template-columns: 1fr;
  }

  .process-card-topline,
  .process-card-footer-actions,
  .assisted-preferences-hero,
  .quick-command-hero {
    flex-direction: column;
  }

  .process-diary-open-button {
    width: 100%;
    margin-left: 0;
  }

  [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* v43.2: padrão único e posterior para todos os cabeçalhos principais do sistema.
   Mantém Painel, Busca Global, Novo Expediente, Atendimento, Processos, CRM,
   Configurações e páginas operacionais com a mesma escala final no cascade. */
.rs-main :where(
  .dashboard-command-hero,
  .dashboard-hero-compact,
  .page-header,
  .rs-page-hero,
  .record-create-hero,
  .crm-page-header,
  .crm-hero,
  .assisted-hero,
  .process-hero,
  .records-page-header,
  .settings-page-header,
  .settings-page-intro,
  .settings-ai-header,
  .reports-hero,
  .audit-hero,
  .nfse-hero,
  .labor-hero,
  .contracts-page-header
) :where(h1) {
  font-family: var(--font-sans, 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif);
  font-size: clamp(1.85rem, 2.35vw, 2.45rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
  margin-block: 0.2rem 0.45rem;
}

.rs-main :where(
  .dashboard-command-hero,
  .dashboard-hero-compact,
  .page-header,
  .rs-page-hero,
  .record-create-hero,
  .crm-page-header,
  .crm-hero,
  .assisted-hero,
  .process-hero,
  .records-page-header,
  .settings-page-header,
  .settings-page-intro,
  .settings-ai-header,
  .reports-hero,
  .audit-hero,
  .nfse-hero,
  .labor-hero,
  .contracts-page-header
) :where(p) {
  max-width: 760px;
  font-size: clamp(0.94rem, 0.9rem + 0.16vw, 1.03rem);
  line-height: 1.48;
}


/* source: 04-pages/dark-theme.css */
/* Dark theme consolidado: navegação, formulários, tabelas, atendimento e polimento visual. */

/* source: dark-theme-contrast-fixes.css */
/* ============================================================
   Round 37 · Dark theme contrast repairs
   Objetivo: corrigir superfícies claras e textos ilegíveis em
   listas, kanban, atendimento e configurações no tema escuro.
   ============================================================ */

html[data-theme="dark"] {
  --rs-dark-surface-base: rgba(10, 23, 19, 0.92);
  --rs-dark-surface-card: rgba(12, 28, 23, 0.94);
  --rs-dark-surface-elevated: rgba(16, 38, 31, 0.96);
  --rs-dark-surface-soft: rgba(22, 47, 38, 0.88);
  --rs-dark-border-soft: rgba(243, 241, 232, 0.14);
  --rs-dark-border-strong: rgba(243, 241, 232, 0.22);
  --rs-dark-text: var(--color-text-strong);
  --rs-dark-text-muted: var(--color-text-muted);
  --rs-dark-text-soft: var(--color-text-soft);
  --rs-dark-accent-soft: rgba(226, 198, 113, 0.14);
  --rs-dark-accent-border: rgba(226, 198, 113, 0.24);
}

html[data-theme="dark"] .panel-card,
html[data-theme="dark"] .table-card,
html[data-theme="dark"] .crm-panel,
html[data-theme="dark"] .crm-list-card,
html[data-theme="dark"] .settings-premium-card,
html[data-theme="dark"] .settings-catalog-card,
html[data-theme="dark"] .settings-status-card,
html[data-theme="dark"] .settings-highlight-card,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .assisted-card,
html[data-theme="dark"] .summary-panel-card {
  background: var(--rs-dark-surface-card);
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] :where(.panel-card, .table-card, .crm-panel, .settings-premium-card, .assisted-card, .summary-panel-card)
:is(h1, h2, h3, h4, h5, h6, strong, label, th) {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] :where(.panel-card, .table-card, .crm-panel, .settings-premium-card, .assisted-card, .summary-panel-card)
:is(p, small, .muted, .help-text, .eyebrow, .settings-breadcrumb, .field small, .table-help, .empty-state) {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .stat-card {
  background: linear-gradient(180deg, rgba(13, 29, 24, 0.96), rgba(9, 22, 18, 0.96));
  border-color: var(--rs-dark-border-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] .stat-card span,
html[data-theme="dark"] .stat-card small,
html[data-theme="dark"] .settings-highlight-card span,
html[data-theme="dark"] .settings-highlight-card small {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .stat-card strong,
html[data-theme="dark"] .settings-highlight-card strong {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background: rgba(9, 21, 18, 0.96);
  color: var(--rs-dark-text);
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: rgba(243, 241, 232, 0.52);
}

html[data-theme="dark"] .ghost-button,
html[data-theme="dark"] .secondary-button,
html[data-theme="dark"] .table-link,
html[data-theme="dark"] .compact-chip,
html[data-theme="dark"] .mini-button {
  background: rgba(243, 241, 232, 0.08);
  border-color: rgba(243, 241, 232, 0.16);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .ghost-button:hover,
html[data-theme="dark"] .secondary-button:hover,
html[data-theme="dark"] .table-link:hover,
html[data-theme="dark"] .compact-chip:hover,
html[data-theme="dark"] .mini-button:hover {
  background: rgba(243, 241, 232, 0.12);
  border-color: rgba(243, 241, 232, 0.22);
}

html[data-theme="dark"] .danger-button,
html[data-theme="dark"] .danger-link,
html[data-theme="dark"] button[data-danger="true"] {
  color: #ffd1d1;
}

/* Tabelas e listas de dados */
html[data-theme="dark"] .table-card thead th,
html[data-theme="dark"] .contacts-page .table-card thead th,
html[data-theme="dark"] .crm-lead-list-head {
  color: var(--rs-dark-text-soft);
  border-bottom-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] .table-card tbody tr,
html[data-theme="dark"] .contacts-page .table-card tbody tr,
html[data-theme="dark"] .crm-lead-list-row,
html[data-theme="dark"] .records-row-card,
html[data-theme="dark"] .user-row-card,
html[data-theme="dark"] .settings-user-row-card {
  background: var(--rs-dark-surface-base);
  border-color: var(--rs-dark-border-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

html[data-theme="dark"] .table-card tbody tr:nth-child(even),
html[data-theme="dark"] .contacts-page .table-card tbody tr:nth-child(even) {
  background: rgba(13, 27, 23, 0.96);
}

html[data-theme="dark"] .table-card tbody td,
html[data-theme="dark"] .contacts-page .table-card tbody td,
html[data-theme="dark"] .crm-lead-list-row > span,
html[data-theme="dark"] .user-row-card,
html[data-theme="dark"] .settings-user-row-card {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .table-card tbody td small,
html[data-theme="dark"] .crm-lead-list-row small,
html[data-theme="dark"] .user-row-card p,
html[data-theme="dark"] .settings-user-row-card p,
html[data-theme="dark"] .settings-user-row-card .user-row-meta {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .contacts-primary-contact strong,
html[data-theme="dark"] .contacts-primary-contact small,
html[data-theme="dark"] .contacts-page .table-card tbody td strong,
html[data-theme="dark"] .crm-lead-list-row strong,
html[data-theme="dark"] .crm-lead-list-row a {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .contacts-primary-contact small,
html[data-theme="dark"] .contacts-page .table-card tbody td small,
html[data-theme="dark"] .crm-lead-list-row small {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .contacts-primary-contact .contact-chip,
html[data-theme="dark"] .contact-chip,
html[data-theme="dark"] .contact-linked-process-chip,
html[data-theme="dark"] .role-chips .chip,
html[data-theme="dark"] .chip-soft,
html[data-theme="dark"] .pill,
html[data-theme="dark"] .crm-status-badge,
html[data-theme="dark"] .filter-chip {
  background: rgba(243, 241, 232, 0.10);
  border-color: rgba(243, 241, 232, 0.18);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .progress-track {
  background: rgba(243, 241, 232, 0.12);
}

/* Leads / listas CRM */
html[data-theme="dark"] .crm-lead-list-table {
  background: transparent;
}

html[data-theme="dark"] .crm-lead-list-row {
  background: linear-gradient(180deg, rgba(13, 28, 23, 0.96), rgba(10, 22, 18, 0.96));
}

/* Kanban / Atendimento */
html[data-theme="dark"] .assisted-kanban-column,
html[data-theme="dark"] .kanban-column,
html[data-theme="dark"] .digisac-inbox-panel,
html[data-theme="dark"] .digisac-chat-panel,
html[data-theme="dark"] .summary-panel-card,
html[data-theme="dark"] .assisted-chat-empty > div,
html[data-theme="dark"] .assisted-chat-empty-inline,
html[data-theme="dark"] .assisted-metrics-grid .stat-card {
  background: var(--rs-dark-surface-card);
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] .assisted-kanban-card,
html[data-theme="dark"] .digisac-inbox-item,
html[data-theme="dark"] .assisted-row,
html[data-theme="dark"] .assisted-card-row {
  background: var(--rs-dark-surface-elevated);
  border-color: var(--rs-dark-border-soft);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .assisted-kanban-card :is(strong, a, h3),
html[data-theme="dark"] .digisac-inbox-item :is(strong, a, h3),
html[data-theme="dark"] .assisted-chat-empty > div h2,
html[data-theme="dark"] .assisted-chat-empty-inline strong {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .assisted-kanban-card :is(p, small, footer, span),
html[data-theme="dark"] .digisac-inbox-item :is(p, small, footer, span),
html[data-theme="dark"] .assisted-chat-empty > div p,
html[data-theme="dark"] .assisted-chat-empty-inline p,
html[data-theme="dark"] .summary-panel-card pre {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .assisted-inbox-tabs,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  background: transparent;
}

html[data-theme="dark"] .assisted-inbox-tabs a,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  background: rgba(243, 241, 232, 0.08);
  border-color: rgba(243, 241, 232, 0.16);
  color: var(--rs-dark-text);
  box-shadow: none;
}

html[data-theme="dark"] .assisted-inbox-tabs a span,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab span {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .assisted-inbox-tabs a strong,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  background: rgba(243, 241, 232, 0.16);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .assisted-inbox-tabs a.active,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  background: linear-gradient(180deg, rgba(25, 63, 50, 0.98), rgba(19, 47, 38, 0.98));
  border-color: rgba(226, 198, 113, 0.24);
  color: #fffaf0;
}

html[data-theme="dark"] .assisted-inbox-tabs a.active strong,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active strong {
  background: rgba(255, 255, 255, 0.18);
  color: #fffaf0;
}

/* Configurações */
html[data-theme="dark"] .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
html[data-theme="dark"] .settings-refactor-shell .settings-menu-list.settings-menu-list-pro,
html[data-theme="dark"] .settings-refactor-shell .settings-console-summary-row {
  background: rgba(12, 27, 23, 0.88);
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a,
html[data-theme="dark"] .settings-refactor-shell .settings-refactor-menu.settings-menu-list a,
html[data-theme="dark"] .settings-refactor-shell .settings-menu-list.settings-menu-list-pro a {
  background: rgba(243, 241, 232, 0.04);
  border-color: transparent;
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a:hover,
html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a.active {
  background: linear-gradient(135deg, rgba(226, 198, 113, 0.14), rgba(25, 63, 50, 0.30));
  border-color: var(--rs-dark-accent-border);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a.active {
  box-shadow: inset 4px 0 0 rgba(226, 198, 113, 0.64);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-icon {
  background: rgba(243, 241, 232, 0.10);
  color: #f7e8b2;
}

html[data-theme="dark"] .settings-menu-text small,
html[data-theme="dark"] .settings-menu-group,
html[data-theme="dark"] .settings-breadcrumb,
html[data-theme="dark"] .settings-search-box-hero span {
  color: var(--rs-dark-text-muted);
}

html[data-theme="dark"] .settings-search-box-hero,
html[data-theme="dark"] .settings-local-tabs,
html[data-theme="dark"] .settings-local-tabs a {
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] .settings-local-tabs a {
  background: rgba(243, 241, 232, 0.06);
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .settings-local-tabs a.active,
html[data-theme="dark"] .settings-local-tabs a:hover {
  background: rgba(226, 198, 113, 0.14);
  border-color: var(--rs-dark-accent-border);
}

html[data-theme="dark"] .settings-process-item,
html[data-theme="dark"] .settings-tribunal-list details,
html[data-theme="dark"] .template-config-item,
html[data-theme="dark"] .ai-agent-card,
html[data-theme="dark"] .ai-agent-accordion,
html[data-theme="dark"] .ai-pro-editor-card,
html[data-theme="dark"] .settings-ai-layout .panel-card {
  background: var(--rs-dark-surface-base);
  border-color: var(--rs-dark-border-soft);
}

html[data-theme="dark"] .settings-process-item > summary,
html[data-theme="dark"] .settings-process-item form,
html[data-theme="dark"] .settings-tribunal-list details > summary,
html[data-theme="dark"] .template-config-item,
html[data-theme="dark"] .ai-agent-card,
html[data-theme="dark"] .ai-agent-accordion {
  color: var(--rs-dark-text);
}

html[data-theme="dark"] .settings-process-item > summary small,
html[data-theme="dark"] .settings-tribunal-list details small,
html[data-theme="dark"] .template-config-item small,
html[data-theme="dark"] .ai-agent-card small,
html[data-theme="dark"] .ai-agent-objective,
html[data-theme="dark"] .ai-agent-meta span {
  color: var(--rs-dark-text-muted);
}


/* source: dark-theme-targeted-hotfix-v39.css */
/* Round 39 - Dark theme targeted operational fixes
   Ajustes focados nos pontos marcados em homologação:
   - Atendimento (bubbles, inbox e timeline)
   - Kanban de atendimento (títulos, contadores e cards)
   - Processos (cards e ações)
   - Funis e carteiras (chips de etapas e blocos numéricos)
*/

html[data-theme="dark"] body {
  color-scheme: dark;
}

/* ===== Atendimento / Chat ===== */
html[data-theme="dark"] .digisac-chat-panel,
html[data-theme="dark"] .digisac-chat-panel .chat-header,
html[data-theme="dark"] .digisac-chat-panel .chat-compose,
html[data-theme="dark"] .digisac-composer {
  background: linear-gradient(180deg, rgba(6, 22, 18, .98), rgba(4, 18, 15, .98));
}

html[data-theme="dark"] .digisac-chat-panel .chat-messages,
html[data-theme="dark"] .digisac-chat-messages {
  background:
    radial-gradient(circle at 18% 18%, rgba(23, 92, 72, .20), transparent 28%),
    radial-gradient(circle at 82% 0%, rgba(209, 178, 93, .07), transparent 20%),
    linear-gradient(180deg, #071a27 0%, #061724 100%);
  border-top-color: rgba(138, 170, 158, .16);
  border-bottom-color: rgba(138, 170, 158, .16);
}

html[data-theme="dark"] .chat-bubble,
html[data-theme="dark"] .chat-bubble.incoming,
html[data-theme="dark"] .chat-bubble.outgoing,
html[data-theme="dark"] .chat-bubble.internal {
  box-shadow: 0 18px 36px rgba(0, 0, 0, .22);
}

html[data-theme="dark"] .chat-bubble.incoming {
  background: linear-gradient(180deg, rgba(9, 31, 41, .98), rgba(7, 27, 36, .98));
  border-color: rgba(86, 138, 157, .26);
  color: #eef7f4;
}

html[data-theme="dark"] .chat-bubble.outgoing {
  background: linear-gradient(180deg, rgba(222, 237, 224, .99), rgba(205, 226, 211, .99));
  border-color: rgba(166, 199, 179, .62);
  color: #173126;
}

html[data-theme="dark"] .chat-bubble.internal {
  background: linear-gradient(180deg, rgba(255, 243, 205, .98), rgba(251, 232, 171, .98));
  border-color: rgba(214, 167, 54, .72);
  color: #5d4206;
}

html[data-theme="dark"] .chat-bubble :is(p, span, small),
html[data-theme="dark"] .conversation-lifecycle-card :is(p, strong, small, li, h4),
html[data-theme="dark"] .summary-rich-card :is(p, li, h4) {
  opacity: 1;
}

html[data-theme="dark"] .chat-bubble.incoming span,
html[data-theme="dark"] .chat-bubble.incoming small,
html[data-theme="dark"] .chat-bubble.incoming .chat-bubble-meta,
html[data-theme="dark"] .chat-bubble.incoming .media-label {
  color: #b8d7ce;
}

html[data-theme="dark"] .chat-bubble.outgoing span,
html[data-theme="dark"] .chat-bubble.outgoing small,
html[data-theme="dark"] .chat-bubble.outgoing .chat-bubble-meta,
html[data-theme="dark"] .chat-bubble.outgoing .media-label {
  color: #4c6458;
}

html[data-theme="dark"] .chat-bubble.internal span,
html[data-theme="dark"] .chat-bubble.internal small,
html[data-theme="dark"] .chat-bubble.internal .chat-bubble-meta,
html[data-theme="dark"] .chat-bubble.internal .media-label {
  color: #85621d;
}

html[data-theme="dark"] .message-read-state.delivered,
html[data-theme="dark"] .message-read-state.sent,
html[data-theme="dark"] .message-read-state.read {
  color: inherit;
}

html[data-theme="dark"] .conversation-item,
html[data-theme="dark"] .assisted-kanban-card {
  background: linear-gradient(180deg, rgba(9, 46, 36, .96), rgba(6, 33, 27, .96));
  border-color: rgba(93, 143, 123, .30);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .conversation-item:hover,
html[data-theme="dark"] .conversation-item.active,
html[data-theme="dark"] .assisted-kanban-card:hover {
  background: linear-gradient(180deg, rgba(12, 61, 47, .98), rgba(8, 42, 33, .98));
  border-color: rgba(202, 178, 101, .30);
  box-shadow: 0 18px 38px rgba(0, 0, 0, .22);
}

html[data-theme="dark"] .conversation-item :is(strong, em, small),
html[data-theme="dark"] .kanban-card-copy :is(strong, p, small),
html[data-theme="dark"] .chat-header :is(h2, p) {
  color: #eaf6f1;
}

html[data-theme="dark"] .conversation-item em,
html[data-theme="dark"] .conversation-item small,
html[data-theme="dark"] .kanban-card-copy p,
html[data-theme="dark"] .kanban-card-copy small,
html[data-theme="dark"] .chat-header p {
  color: #b4cec4;
}

html[data-theme="dark"] .assisted-core-switcher select,
html[data-theme="dark"] .conversation-search input,
html[data-theme="dark"] .compose-textarea-wrap,
html[data-theme="dark"] .compose-textarea-wrap textarea,
html[data-theme="dark"] .tool-button,
html[data-theme="dark"] .compose-plus-menu > summary,
html[data-theme="dark"] .compose-menu {
  background: rgba(7, 37, 31, .94);
  border-color: rgba(114, 150, 134, .24);
  color: #edf7f2;
}

html[data-theme="dark"] .compose-textarea-wrap textarea::placeholder,
html[data-theme="dark"] .conversation-search input::placeholder {
  color: #88aa9d;
}

html[data-theme="dark"] .conversation-lifecycle-card,
html[data-theme="dark"] .summary-panel-card,
html[data-theme="dark"] .summary-rich-card {
  background: linear-gradient(180deg, rgba(8, 28, 35, .96), rgba(6, 22, 30, .96));
  border-color: rgba(88, 136, 154, .22);
  color: #edf5f2;
}

html[data-theme="dark"] .conversation-lifecycle-card.summary {
  background: linear-gradient(180deg, rgba(7, 30, 42, .96), rgba(5, 23, 34, .96));
}

html[data-theme="dark"] .summary-rich-section h4,
html[data-theme="dark"] .summary-panel-header :is(strong, small),
html[data-theme="dark"] .summary-kicker {
  color: #f0f7f4;
}

html[data-theme="dark"] .assisted-inbox-tabs,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  background: transparent;
}

html[data-theme="dark"] .assisted-inbox-tabs a,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  background: rgba(10, 40, 33, .92);
  border-color: rgba(102, 145, 127, .24);
  color: #d8ebe3;
}

html[data-theme="dark"] .assisted-inbox-tabs a strong,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  background: rgba(193, 167, 92, .14);
  color: #f3ddb0;
}

html[data-theme="dark"] .assisted-inbox-tabs a.active,
html[data-theme="dark"] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  background: linear-gradient(180deg, rgba(18, 84, 67, .98), rgba(11, 58, 46, .98));
  border-color: rgba(214, 190, 125, .34);
  color: #fff8ea;
}

/* ===== Kanban ===== */
html[data-theme="dark"] .assisted-kanban-column,
html[data-theme="dark"] .kanban-admin-tools {
  background: linear-gradient(180deg, rgba(7, 31, 25, .96), rgba(5, 24, 20, .96));
  border-color: rgba(91, 129, 115, .24);
  box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .kanban-column-header,
html[data-theme="dark"] .kanban-column-footer,
html[data-theme="dark"] .kanban-admin-tools :is(strong, p, .eyebrow) {
  color: #ebf7f2;
}

html[data-theme="dark"] .kanban-column-count {
  background: rgba(202, 177, 101, .14);
  border: 1px solid rgba(202, 177, 101, .22);
  color: #f3ddb0;
}

html[data-theme="dark"] .kanban-column-title-input,
html[data-theme="dark"] .kanban-column-title-static h2,
html[data-theme="dark"] .kanban-column-title-static small,
html[data-theme="dark"] .kanban-column-title-form {
  color: #eef8f3;
}

html[data-theme="dark"] .kanban-column-title-input {
  background: rgba(8, 38, 31, .88);
  border-color: rgba(99, 143, 126, .24);
}

html[data-theme="dark"] .kanban-column-title-edit,
html[data-theme="dark"] .kanban-column-title-save,
html[data-theme="dark"] .kanban-column-remove,
html[data-theme="dark"] .kanban-admin-tools .button,
html[data-theme="dark"] .kanban-card-actions .button {
  box-shadow: none;
}

html[data-theme="dark"] .kanban-column-title-edit,
html[data-theme="dark"] .kanban-admin-tools .button.secondary,
html[data-theme="dark"] .kanban-card-actions .button.secondary {
  background: rgba(11, 47, 39, .94);
  border-color: rgba(112, 152, 136, .24);
  color: #e9f5f0;
}

html[data-theme="dark"] .kanban-column-scroll .empty,
html[data-theme="dark"] .kanban-column-footer {
  color: #a8c4b9;
}

/* ===== Processos ===== */
html[data-theme="dark"] .processes-monitoring-card,
html[data-theme="dark"] .refined-process-list-card,
html[data-theme="dark"] .process-monitoring-card,
html[data-theme="dark"] .contact-process-card {
  background: linear-gradient(180deg, rgba(6, 27, 40, .96), rgba(5, 22, 33, .98));
  border-color: rgba(88, 130, 150, .20);
  box-shadow: 0 18px 38px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .process-section-summary :is(h2, .eyebrow, .pill),
html[data-theme="dark"] .process-row-card :is(strong, small, span, em),
html[data-theme="dark"] .process-consult-note,
html[data-theme="dark"] .process-monitoring-meta-grid strong,
html[data-theme="dark"] .process-monitoring-meta-grid em,
html[data-theme="dark"] .process-last-review-strip,
html[data-theme="dark"] .process-client-empty-state {
  color: #edf6f4;
}

html[data-theme="dark"] .process-row-card small,
html[data-theme="dark"] .process-monitoring-meta-grid em,
html[data-theme="dark"] .process-last-review-strip .tiny,
html[data-theme="dark"] .process-consult-note {
  color: #b8d0ca;
}

html[data-theme="dark"] .process-monitoring-meta-grid span,
html[data-theme="dark"] .process-consult-strip {
  background: rgba(8, 40, 54, .72);
  border-color: rgba(96, 134, 152, .22);
}

html[data-theme="dark"] .process-card-actions .ghost-button,
html[data-theme="dark"] .process-card-actions .compact-chip,
html[data-theme="dark"] .process-card-actions button,
html[data-theme="dark"] .process-card-actions a {
  background: rgba(9, 35, 47, .92);
  border-color: rgba(101, 141, 160, .22);
  color: #eff7f4;
}

html[data-theme="dark"] .process-card-actions .ghost-button:hover,
html[data-theme="dark"] .process-card-actions .compact-chip:hover,
html[data-theme="dark"] .process-card-actions button:hover,
html[data-theme="dark"] .process-card-actions a:hover {
  background: rgba(14, 50, 66, .98);
}

html[data-theme="dark"] .status-badge.pending,
html[data-theme="dark"] .status-badge.warning {
  color: #ffd79a;
}

/* ===== Funis e carteiras ===== */
html[data-theme="dark"] .crm-page-header.crm-funnel-overview-hero,
html[data-theme="dark"] .crm-pipeline-overview,
html[data-theme="dark"] .crm-pipeline-overview-card {
  background: linear-gradient(180deg, rgba(8, 38, 31, .98), rgba(5, 26, 22, .98));
  border-color: rgba(90, 129, 114, .24);
  box-shadow: 0 20px 44px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .crm-page-header.crm-funnel-overview-hero :is(h1, p, span, strong),
html[data-theme="dark"] .crm-pipeline-overview :is(h2, .eyebrow, strong, small, p),
html[data-theme="dark"] .crm-pipeline-overview-card :is(strong, small, p) {
  color: #eef8f3;
}

html[data-theme="dark"] .crm-hero-chips span,
html[data-theme="dark"] .crm-pipeline-stat-grid span,
html[data-theme="dark"] .crm-pipeline-preview,
html[data-theme="dark"] .crm-pipeline-stage-chip {
  background: rgba(10, 40, 33, .92);
  border-color: rgba(104, 143, 127, .22);
}

html[data-theme="dark"] .crm-pipeline-stat-grid strong,
html[data-theme="dark"] .crm-pipeline-stage-chip strong {
  color: #f4f8f6;
}

html[data-theme="dark"] .crm-pipeline-stat-grid small,
html[data-theme="dark"] .crm-pipeline-stage-chip span,
html[data-theme="dark"] .crm-pipeline-empty-note,
html[data-theme="dark"] .crm-pipeline-nuclei {
  color: #bdd1ca;
}

html[data-theme="dark"] .crm-pipeline-stage-chip.has-cards {
  background: linear-gradient(180deg, rgba(21, 73, 59, .95), rgba(12, 54, 44, .95));
  border-color: rgba(201, 176, 98, .18);
}

html[data-theme="dark"] .crm-pipeline-stage-chip.muted {
  background: rgba(230, 236, 232, .96);
  border-color: rgba(174, 186, 180, .52);
}

html[data-theme="dark"] .crm-pipeline-stage-chip.muted strong,
html[data-theme="dark"] .crm-pipeline-stage-chip.muted span {
  color: #6b756f;
}

/* ===== Estados vazios / botões genéricos nos pontos marcados ===== */
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .empty,
html[data-theme="dark"] .assisted-chat-empty-inline,
html[data-theme="dark"] .assisted-chat-empty > div {
  color: #dcece6;
}

html[data-theme="dark"] .ghost-button,
html[data-theme="dark"] .button.secondary {
  background: rgba(9, 38, 32, .92);
  border-color: rgba(109, 148, 132, .22);
  color: #edf7f2;
}

html[data-theme="dark"] .primary-button,
html[data-theme="dark"] .button.primary {
  color: #193126;
}


/* source: dark-theme-targeted-hotfix-v40.css */
/* Round 40 - exact contrast regression fixes
   Corrige os seletores exatos apontados na homologacao:
   1) titulos editaveis/readonly do Kanban;
   2) fila de Processos que ficou azulada;
   3) selects nativos de Configuracoes em Assuntos, Vinculos, Demandas e Nucleos.
*/

/* ===== Kanban: titulos das colunas, inputs readonly e contadores ===== */
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-form,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-form *,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-static,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-static * {
  color: #f4fbf7;
  -webkit-text-fill-color: #f4fbf7;
  opacity: 1;
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-input,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-input[readonly],
html[data-theme="dark"] .assisted-page[data-section="kanban"] input.kanban-column-title-input[readonly] {
  background: linear-gradient(180deg, rgba(14, 61, 49, .98), rgba(9, 46, 38, .98));
  border: 1px solid rgba(224, 199, 121, .26);
  color: #f4fbf7;
  -webkit-text-fill-color: #f4fbf7;
  opacity: 1;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .45);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 8px 18px rgba(0,0,0,.16);
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-input::placeholder,
html[data-theme="dark"] .assisted-page[data-section="kanban"] input.kanban-column-title-input::placeholder {
  color: #bfd5cc;
  -webkit-text-fill-color: #bfd5cc;
  opacity: 1;
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-header,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-header :is(h2, strong, small, span, em),
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-form label,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-form .sr-only {
  color: #f4fbf7;
  -webkit-text-fill-color: #f4fbf7;
  opacity: 1;
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-edit,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-title-save {
  background: rgba(12, 53, 43, .98);
  border-color: rgba(224, 199, 121, .28);
  color: #f4fbf7;
  -webkit-text-fill-color: #f4fbf7;
  opacity: 1;
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-count {
  background: rgba(224, 199, 121, .18);
  border: 1px solid rgba(224, 199, 121, .30);
  color: #ffe9aa;
  -webkit-text-fill-color: #ffe9aa;
  opacity: 1;
}

html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-scroll .empty,
html[data-theme="dark"] .assisted-page[data-section="kanban"] .kanban-column-footer {
  color: #d9eee6;
  -webkit-text-fill-color: #d9eee6;
  opacity: 1;
}

/* ===== Processos: remove o azul e volta para a identidade verde escura ===== */
html[data-theme="dark"] .processes-monitoring-card,
html[data-theme="dark"] .refined-process-list-card.processes-monitoring-card,
html[data-theme="dark"] .process-monitoring-details,
html[data-theme="dark"] .monitoring-card-list,
html[data-theme="dark"] .process-row-card.process-monitoring-card,
html[data-theme="dark"] .process-monitoring-card,
html[data-theme="dark"] .contact-process-card {
  background: linear-gradient(180deg, rgba(9, 38, 31, .98), rgba(5, 26, 22, .99));
  border-color: rgba(111, 152, 133, .24);
  box-shadow: 0 18px 38px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .processes-monitoring-card .process-section-summary,
html[data-theme="dark"] .process-row-card.process-monitoring-card .process-row-main,
html[data-theme="dark"] .process-row-card.process-monitoring-card .process-row-main-premium {
  background: linear-gradient(180deg, rgba(13, 49, 39, .86), rgba(8, 36, 30, .88));
  border-color: rgba(111, 152, 133, .20);
}

html[data-theme="dark"] .process-monitoring-meta-grid,
html[data-theme="dark"] .process-monitoring-meta-grid span,
html[data-theme="dark"] .process-consult-strip,
html[data-theme="dark"] .process-last-review-strip,
html[data-theme="dark"] .process-consult-note {
  background: rgba(8, 45, 36, .82);
  border-color: rgba(107, 154, 133, .24);
}

html[data-theme="dark"] .process-section-summary :is(h2, .eyebrow, .pill),
html[data-theme="dark"] .process-row-card.process-monitoring-card :is(strong, small, span, em),
html[data-theme="dark"] .process-monitoring-meta-grid strong,
html[data-theme="dark"] .process-monitoring-meta-grid em,
html[data-theme="dark"] .process-title-block strong,
html[data-theme="dark"] .process-title-block small,
html[data-theme="dark"] .process-last-review-strip,
html[data-theme="dark"] .process-consult-note {
  color: #f2faf6;
  -webkit-text-fill-color: #f2faf6;
  opacity: 1;
}

html[data-theme="dark"] .process-row-card.process-monitoring-card small,
html[data-theme="dark"] .process-monitoring-meta-grid em,
html[data-theme="dark"] .process-last-review-strip .tiny,
html[data-theme="dark"] .process-consult-note {
  color: #c0d8cf;
  -webkit-text-fill-color: #c0d8cf;
}

html[data-theme="dark"] .process-card-actions .ghost-button,
html[data-theme="dark"] .process-card-actions .compact-chip,
html[data-theme="dark"] .process-card-actions button,
html[data-theme="dark"] .process-card-actions a {
  background: rgba(10, 56, 44, .92);
  border-color: rgba(116, 163, 141, .26);
  color: #f2faf6;
  -webkit-text-fill-color: #f2faf6;
  opacity: 1;
}

html[data-theme="dark"] .process-card-actions .ghost-button:hover,
html[data-theme="dark"] .process-card-actions .compact-chip:hover,
html[data-theme="dark"] .process-card-actions button:hover,
html[data-theme="dark"] .process-card-actions a:hover {
  background: rgba(15, 72, 56, .98);
}

/* ===== Selects nativos: corrige popup azul/ilegivel em Assuntos, Vinculos, Demandas e Nucleos ===== */
html:not([data-theme="dark"]) select,
html[data-theme="light"] select,
body:not(.dark) select {
  color-scheme: light;
  background-color: #fffefa;
  color: #10251d;
  -webkit-text-fill-color: #10251d;
  opacity: 1;
}

html:not([data-theme="dark"]) select option,
html:not([data-theme="dark"]) select optgroup,
html[data-theme="light"] select option,
html[data-theme="light"] select optgroup,
body:not(.dark) select option,
body:not(.dark) select optgroup {
  color-scheme: light;
  background-color: #fffefa;
  color: #10251d;
  -webkit-text-fill-color: #10251d;
}

html:not([data-theme="dark"]) .settings-refactor-shell select,
html:not([data-theme="dark"]) .settings-single-workspace select,
html:not([data-theme="dark"]) .settings-process-card select,
html:not([data-theme="dark"]) .settings-picker-card select,
html:not([data-theme="dark"]) .settings-process-item select,
html:not([data-theme="dark"]) .panel-card select {
  color-scheme: light;
  background: #fffefa;
  border-color: rgba(17, 31, 25, .14);
  color: #10251d;
  -webkit-text-fill-color: #10251d;
  opacity: 1;
}

html:not([data-theme="dark"]) .settings-refactor-shell select option,
html:not([data-theme="dark"]) .settings-single-workspace select option,
html:not([data-theme="dark"]) .settings-process-card select option,
html:not([data-theme="dark"]) .settings-picker-card select option,
html:not([data-theme="dark"]) .settings-process-item select option,
html:not([data-theme="dark"]) .panel-card select option {
  color-scheme: light;
  background-color: #fffefa;
  color: #10251d;
  -webkit-text-fill-color: #10251d;
}

html[data-theme="dark"] select,
html[data-theme="dark"] select option,
html[data-theme="dark"] select optgroup {
  color-scheme: dark;
  background-color: #0a2c23;
  color: #f3fbf7;
  -webkit-text-fill-color: #f3fbf7;
}

html[data-theme="dark"] .settings-refactor-shell select,
html[data-theme="dark"] .settings-single-workspace select,
html[data-theme="dark"] .settings-process-card select,
html[data-theme="dark"] .settings-picker-card select,
html[data-theme="dark"] .settings-process-item select {
  background: #0a2c23;
  border-color: rgba(126, 167, 148, .24);
  color: #f3fbf7;
  -webkit-text-fill-color: #f3fbf7;
  opacity: 1;
}


/* source: dark-theme-visual-polish.css */
/* ============================================================
   Round 38 - Dark theme visual polish
   Objetivo: lapidar profundidade, hierarquia e contraste fino
   do tema escuro apos a camada de correcao V37.
   ============================================================ */

html[data-theme="dark"] {
  --rs-dark-polish-bg: #07110e;
  --rs-dark-polish-bg-2: #0b1915;
  --rs-dark-polish-card: rgba(13, 30, 25, 0.94);
  --rs-dark-polish-card-2: rgba(9, 22, 18, 0.96);
  --rs-dark-polish-elevated: rgba(17, 40, 32, 0.96);
  --rs-dark-polish-border: rgba(243, 241, 232, 0.14);
  --rs-dark-polish-border-strong: rgba(226, 198, 113, 0.24);
  --rs-dark-polish-text: #fffaf0;
  --rs-dark-polish-muted: #c8d2cc;
  --rs-dark-polish-soft: #9faca5;
  --rs-dark-polish-accent: #e7d08c;
}

html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 20% 0%, rgba(29, 82, 64, 0.22), transparent 34rem),
    radial-gradient(circle at 88% 12%, rgba(226, 198, 113, 0.08), transparent 24rem),
    linear-gradient(180deg, var(--rs-dark-polish-bg-2), var(--rs-dark-polish-bg));
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .rs-main,
html[data-theme="dark"] .rs-layout-operational,
html[data-theme="dark"] .main-content:not(.auth-layout) {
  background: transparent;
}

html[data-theme="dark"] :where(.page-header, .rs-page-hero, .crm-hero, .assisted-hero, .settings-page-intro) {
  background: linear-gradient(135deg, rgba(14, 34, 27, 0.93), rgba(8, 21, 17, 0.97));
  border-color: rgba(226, 198, 113, 0.16);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html[data-theme="dark"] :where(.page-header, .rs-page-hero, .crm-hero, .assisted-hero, .settings-page-intro) :is(h1, h2) {
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] :where(.page-header, .rs-page-hero, .crm-hero, .assisted-hero, .settings-page-intro) :is(p, .eyebrow, .settings-breadcrumb) {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] :where(.panel-card, .table-card, .stat-card, .metric-card, .dashboard-card, .crm-panel, .settings-premium-card, .settings-catalog-card, .settings-status-card, .assisted-card, .contact-card, .content-card, .form-card) {
  background: linear-gradient(180deg, var(--rs-dark-polish-card), var(--rs-dark-polish-card-2));
  border-color: var(--rs-dark-polish-border);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] :where(.panel-card, .table-card, .stat-card, .metric-card, .dashboard-card, .crm-panel, .settings-premium-card, .assisted-card) :is(h1, h2, h3, h4, strong, label, th) {
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] :where(.panel-card, .table-card, .stat-card, .metric-card, .dashboard-card, .crm-panel, .settings-premium-card, .assisted-card) :is(p, small, .muted, .help-text, .field small, td) {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] .stat-card.accent,
html[data-theme="dark"] .metric-card.accent,
html[data-theme="dark"] .dashboard-card.accent {
  background: linear-gradient(180deg, rgba(24, 60, 47, 0.95), rgba(13, 32, 26, 0.96));
  border-color: var(--rs-dark-polish-border-strong);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background: rgba(7, 18, 15, 0.96);
  color: var(--rs-dark-polish-text);
  border-color: rgba(243, 241, 232, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus {
  border-color: rgba(226, 198, 113, 0.46);
  box-shadow: 0 0 0 4px rgba(226, 198, 113, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: rgba(243, 241, 232, 0.50);
}

html[data-theme="dark"] .primary-button,
html[data-theme="dark"] .button.primary,
html[data-theme="dark"] button.primary-button,
html[data-theme="dark"] a.primary-button {
  background: linear-gradient(135deg, #f1e0a6, #c7b272);
  border-color: rgba(246, 228, 168, 0.36);
  color: #07110e;
  text-shadow: none;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.26);
}

html[data-theme="dark"] .primary-button:hover,
html[data-theme="dark"] .button.primary:hover {
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.32);
  filter: brightness(1.03);
}

html[data-theme="dark"] .ghost-button,
html[data-theme="dark"] .secondary-button,
html[data-theme="dark"] .button.secondary,
html[data-theme="dark"] .button.ghost,
html[data-theme="dark"] .table-link,
html[data-theme="dark"] .compact-chip,
html[data-theme="dark"] .mini-button {
  background: rgba(243, 241, 232, 0.075);
  border-color: rgba(243, 241, 232, 0.16);
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .ghost-button:hover,
html[data-theme="dark"] .secondary-button:hover,
html[data-theme="dark"] .button.secondary:hover,
html[data-theme="dark"] .button.ghost:hover,
html[data-theme="dark"] .table-link:hover,
html[data-theme="dark"] .compact-chip:hover {
  background: rgba(243, 241, 232, 0.13);
  border-color: rgba(226, 198, 113, 0.24);
}

html[data-theme="dark"] .table-link {
  min-height: 34px;
  padding: 0.35rem 0.55rem;
}

html[data-theme="dark"] .table-card thead th,
html[data-theme="dark"] .crm-lead-list-head {
  background: rgba(8, 19, 16, 0.96);
  color: var(--rs-dark-polish-soft);
  border-bottom-color: var(--rs-dark-polish-border);
}

html[data-theme="dark"] .table-card tbody tr,
html[data-theme="dark"] .crm-lead-list-row,
html[data-theme="dark"] .settings-user-row-card,
html[data-theme="dark"] .user-row-card {
  background: linear-gradient(180deg, rgba(12, 28, 23, 0.96), rgba(9, 22, 18, 0.98));
  border-color: rgba(243, 241, 232, 0.12);
}

html[data-theme="dark"] .table-card tbody tr:hover,
html[data-theme="dark"] .crm-lead-list-row:hover,
html[data-theme="dark"] .settings-user-row-card:hover,
html[data-theme="dark"] .user-row-card:hover {
  background: rgba(19, 45, 36, 0.98);
  border-color: rgba(226, 198, 113, 0.18);
}

html[data-theme="dark"] .table-card tbody td,
html[data-theme="dark"] .crm-lead-list-row > span {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] .table-card tbody td strong,
html[data-theme="dark"] .crm-lead-list-row strong,
html[data-theme="dark"] .crm-lead-list-row a,
html[data-theme="dark"] .contacts-primary-contact strong {
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .contacts-primary-contact small,
html[data-theme="dark"] .crm-lead-list-row small,
html[data-theme="dark"] .table-card tbody td small {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] :where(.badge, .pill, .chip, .chip-soft, .crm-status-badge, .filter-chip, .contact-chip, .tag-chip) {
  background: rgba(243, 241, 232, 0.10);
  border-color: rgba(243, 241, 232, 0.18);
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] :where(.pill-success, .badge.ia-active, .crm-status-badge.success) {
  background: rgba(63, 156, 104, 0.20);
  border-color: rgba(126, 231, 166, 0.30);
  color: #d8f8de;
}

html[data-theme="dark"] :where(.pill-warning, .badge.ia-inactive, .crm-status-badge.warning) {
  background: rgba(226, 198, 113, 0.16);
  border-color: rgba(226, 198, 113, 0.30);
  color: #fff0b8;
}

html[data-theme="dark"] :where(.pill-error, .danger-link, .crm-status-badge.error) {
  background: rgba(195, 74, 74, 0.16);
  border-color: rgba(255, 145, 145, 0.28);
  color: #ffd1d1;
}

html[data-theme="dark"] .progress-track {
  background: rgba(243, 241, 232, 0.13);
}

html[data-theme="dark"] .progress-bar {
  background: linear-gradient(90deg, #e7d08c, #8fd7a9);
}

html[data-theme="dark"] .assisted-kanban-column,
html[data-theme="dark"] .kanban-column,
html[data-theme="dark"] .kanban-admin-tools,
html[data-theme="dark"] .digisac-chat-panel,
html[data-theme="dark"] .assisted-conversation-sidebar,
html[data-theme="dark"] .assisted-chat-empty > div,
html[data-theme="dark"] .assisted-chat-empty-inline,
html[data-theme="dark"] .summary-panel-card {
  background: linear-gradient(180deg, rgba(12, 28, 24, 0.96), rgba(7, 18, 16, 0.98));
  border-color: rgba(243, 241, 232, 0.15);
}

html[data-theme="dark"] .assisted-kanban-card,
html[data-theme="dark"] .conversation-item,
html[data-theme="dark"] .digisac-inbox-item,
html[data-theme="dark"] .assisted-row,
html[data-theme="dark"] .assisted-card-row {
  background: linear-gradient(180deg, rgba(17, 40, 32, 0.96), rgba(11, 28, 23, 0.98));
  border-color: rgba(226, 198, 113, 0.14);
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .assisted-kanban-card:hover,
html[data-theme="dark"] .conversation-item:hover,
html[data-theme="dark"] .digisac-inbox-item:hover {
  border-color: rgba(226, 198, 113, 0.24);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.26);
}

html[data-theme="dark"] .assisted-kanban-card :is(strong, h2, h3, a),
html[data-theme="dark"] .conversation-item :is(strong, h2, h3, a),
html[data-theme="dark"] .assisted-chat-empty > div h2,
html[data-theme="dark"] .assisted-chat-empty-inline strong {
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .assisted-kanban-card :is(p, small, footer),
html[data-theme="dark"] .conversation-item :is(small, em),
html[data-theme="dark"] .assisted-chat-empty > div p,
html[data-theme="dark"] .assisted-chat-empty-inline p,
html[data-theme="dark"] .summary-panel-card pre {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] .settings-refactor-shell .settings-refactor-menu.settings-menu-list,
html[data-theme="dark"] .settings-refactor-shell .settings-menu-list.settings-menu-list-pro,
html[data-theme="dark"] .settings-refactor-shell .settings-console-summary-row,
html[data-theme="dark"] .settings-local-tabs {
  background: rgba(9, 22, 18, 0.88);
  border-color: var(--rs-dark-polish-border);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a,
html[data-theme="dark"] .settings-local-tabs a {
  background: rgba(243, 241, 232, 0.045);
  border-color: transparent;
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a:hover,
html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a.active,
html[data-theme="dark"] .settings-local-tabs a:hover,
html[data-theme="dark"] .settings-local-tabs a.active {
  background: linear-gradient(135deg, rgba(226, 198, 113, 0.14), rgba(25, 63, 50, 0.28));
  border-color: var(--rs-dark-polish-border-strong);
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-list a.active {
  box-shadow: inset 4px 0 0 rgba(226, 198, 113, 0.64), 0 10px 22px rgba(0, 0, 0, 0.18);
}

html[data-theme="dark"] .settings-menu-text small,
html[data-theme="dark"] .settings-menu-group,
html[data-theme="dark"] .settings-breadcrumb,
html[data-theme="dark"] .settings-search-box-hero span {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] .settings-refactor-shell .settings-menu-icon {
  background: rgba(226, 198, 113, 0.13);
  color: #f7e8b2;
}

html[data-theme="dark"] .settings-process-item,
html[data-theme="dark"] .settings-tribunal-list details,
html[data-theme="dark"] .template-config-item,
html[data-theme="dark"] .ai-agent-card,
html[data-theme="dark"] .ai-agent-accordion,
html[data-theme="dark"] .ai-pro-editor-card {
  background: linear-gradient(180deg, rgba(13, 31, 25, 0.96), rgba(9, 22, 18, 0.98));
  border-color: var(--rs-dark-polish-border);
}

html[data-theme="dark"] .settings-process-item > summary,
html[data-theme="dark"] .settings-tribunal-list details > summary {
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] .settings-process-item > summary small,
html[data-theme="dark"] .settings-tribunal-list details small,
html[data-theme="dark"] .template-config-item small,
html[data-theme="dark"] .ai-agent-card small,
html[data-theme="dark"] .ai-agent-objective,
html[data-theme="dark"] .ai-agent-meta span {
  color: var(--rs-dark-polish-muted);
}

html[data-theme="dark"] .settings-process-item .chip,
html[data-theme="dark"] .settings-process-item .pill {
  background: rgba(226, 198, 113, 0.13);
  border-color: rgba(226, 198, 113, 0.24);
  color: var(--rs-dark-polish-text);
}

html[data-theme="dark"] ::selection {
  background: rgba(226, 198, 113, 0.32);
  color: #fffaf0;
}


/* source: 04-pages/v45-production-refinements.css */
/* ProjetoCIRS production refinements - schedule, process board, typography and visual QA */
.rs-main.rs-route-schedule {
  max-width: none;
  width: 100%;
}

.schedule-page {
  display: grid;
  gap: 1rem;
  width: 100%;
}

.schedule-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
}

.schedule-hero-actions,
.schedule-filter-actions,
.schedule-view-toggle {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  flex-wrap: wrap;
}

.schedule-month-pill,
.schedule-view-toggle a,
.schedule-entry-type {
  border: 1px solid rgba(17, 31, 25, .12);
  border-radius: 999px;
  background: rgba(255, 255, 255, .7);
  padding: .55rem .8rem;
  font-weight: 800;
  font-size: .78rem;
  color: #0c2d22;
}

.schedule-view-toggle a.active {
  background: #063d2f;
  border-color: #063d2f;
  color: #fffaf0;
  box-shadow: 0 12px 24px rgba(6, 61, 47, .18);
}

.schedule-kpi-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .85rem;
}

.schedule-kpi-card {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas: "icon number" "icon label";
  align-items: center;
  gap: .25rem .75rem;
  min-height: 104px;
  padding: 1rem;
  border: 1px solid rgba(17, 31, 25, .11);
  border-radius: 1.4rem;
  background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(245,244,238,.78));
  box-shadow: 0 18px 42px rgba(17, 31, 25, .07);
}

.schedule-kpi-icon {
  grid-area: icon;
  inline-size: 2.35rem;
  block-size: 2.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: .9rem;
  background: rgba(6, 61, 47, .08);
  line-height: 1;
  font-size: 1rem;
}

.schedule-kpi-card strong {
  grid-area: number;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  line-height: .95;
  letter-spacing: -.05em;
}

.schedule-kpi-card small {
  grid-area: label;
  color: rgba(17, 31, 25, .64);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: .68rem;
}

.schedule-filter-card,
.schedule-config-card,
.schedule-board-card {
  border-radius: 1.5rem;
}

.schedule-filter-form {
  display: grid;
  grid-template-columns: minmax(180px, .75fr) minmax(240px, 1fr) minmax(220px, 1fr) auto;
  gap: .85rem;
  align-items: end;
}

.schedule-workspace {
  display: grid;
  grid-template-columns: minmax(290px, 360px) minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.schedule-config-card {
  position: sticky;
  top: 1rem;
  display: grid;
  gap: 1rem;
}

.schedule-entry-form {
  display: grid;
  gap: .85rem;
}

.schedule-full-day-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  border: 1px solid rgba(17, 31, 25, .1);
  border-radius: 1rem;
  padding: .72rem .85rem;
  background: rgba(6, 61, 47, .05);
  font-weight: 800;
}

.schedule-save-button {
  width: 100%;
  justify-content: center;
}

.schedule-board-card {
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.schedule-board-header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: start;
}

.schedule-board-header h2,
.schedule-config-card h2 {
  margin: 0;
  font-size: clamp(1.3rem, 2vw, 1.75rem);
  letter-spacing: -.04em;
}

.schedule-board-header p {
  margin: .25rem 0 0;
  color: rgba(17, 31, 25, .58);
  font-weight: 700;
}

.schedule-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: .55rem;
}

.schedule-weekday {
  padding: .4rem .55rem;
  color: rgba(17, 31, 25, .56);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.schedule-day-card {
  min-height: 148px;
  display: grid;
  align-content: start;
  gap: .45rem;
  border: 1px solid rgba(17, 31, 25, .1);
  border-radius: 1rem;
  padding: .7rem;
  background: rgba(255, 255, 255, .82);
  overflow: hidden;
}

.schedule-day-card.muted {
  opacity: .52;
}

.schedule-day-card.today {
  border-color: rgba(226, 198, 113, .75);
  box-shadow: inset 0 0 0 1px rgba(226, 198, 113, .28), 0 14px 30px rgba(226, 198, 113, .14);
}

.schedule-day-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.schedule-day-header strong {
  font-size: .95rem;
}

.schedule-day-header span,
.schedule-more {
  font-size: .65rem;
  font-weight: 900;
  color: #065f46;
}

.schedule-day-entries,
.schedule-list-view {
  display: grid;
  gap: .45rem;
}

.schedule-calendar-entry,
.schedule-entry-row {
  border: 1px solid rgba(17, 31, 25, .1);
  border-left-width: 4px;
  border-radius: .85rem;
  padding: .55rem .65rem;
  background: rgba(246, 246, 240, .92);
}

.schedule-calendar-entry strong,
.schedule-calendar-entry span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.schedule-calendar-entry strong {
  font-size: .72rem;
}

.schedule-calendar-entry span {
  font-size: .66rem;
  color: rgba(17, 31, 25, .62);
}

.schedule-entry-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .9rem;
}

.schedule-entry-main {
  display: grid;
  gap: .3rem;
}

.schedule-entry-main strong {
  font-size: 1rem;
}

.schedule-entry-main p,
.schedule-entry-main small {
  margin: 0;
  color: rgba(17, 31, 25, .62);
  font-weight: 700;
}

.schedule-tone-success { border-left-color: #047857; }
.schedule-tone-school { border-left-color: #2563eb; }
.schedule-tone-vacation { border-left-color: #7c3aed; }
.schedule-tone-warning { border-left-color: #d97706; }
.schedule-tone-danger { border-left-color: #be123c; }

/* Processos: remove refresh de pagina perceptivel, usa largura total e neutraliza azul no tema escuro */
.process-board-loading .process-board-grid,
.process-board-loading .process-card-list,
.process-board-loading .process-client-list {
  opacity: .62;
  transition: opacity .18s ease;
}

.processes-monitoring-card .process-card-list,
.monitoring-card-list {
  width: 100%;
}

.process-monitoring-card-v2 {
  width: 100%;
  max-width: none;
}

.process-card-information-grid {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
}

html[data-theme="dark"] .process-clients-card,
html[data-theme="dark"] .process-clients-card .process-section-summary,
html[data-theme="dark"] .process-client-row,
html[data-theme="dark"] .process-client-mini-card,
html[data-theme="dark"] .process-client-toolbar,
html[data-theme="dark"] .process-clients-card .process-monitoring-details > summary {
  background: linear-gradient(180deg, rgba(12, 31, 24, .98), rgba(7, 20, 17, .99));
  border-color: rgba(243, 241, 232, .14);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .process-clients-card::before,
html[data-theme="dark"] .process-clients-card::after,
html[data-theme="dark"] .process-client-row::before,
html[data-theme="dark"] .process-client-row::after {
  background: none;
  border-color: transparent;
  box-shadow: none;
}

/* Padronizacao de cabecalhos e descricoes */
.rs-main :is(.page-header, .access-hero, .search-hero, .schedule-hero, .assisted-service-hero, .labor-hero, .process-hero, .crm-hero, .settings-hero, .settings-page-hero, .automations-hero) h1 {
  font-size: clamp(2.35rem, 5vw, 4.35rem);
  line-height: .9;
  letter-spacing: -.075em;
  font-weight: 900;
}

.rs-main :is(.page-header, .access-hero, .search-hero, .schedule-hero, .assisted-service-hero, .labor-hero, .process-hero, .crm-hero, .settings-hero, .settings-page-hero, .automations-hero) p {
  max-width: 78ch;
  font-size: clamp(.98rem, 1.4vw, 1.12rem);
  line-height: 1.45;
  font-weight: 650;
}

.rs-nav .nav-section-label {
  font-size: .74rem;
  letter-spacing: .12em;
  line-height: 1.2;
}

.rs-nav a .nav-label {
  font-size: .94rem;
  line-height: 1.15;
}

/* Centralizacao de emojis/icones nos cards operacionais */
.process-kpi-icon,
.process-kpi-card .process-kpi-icon,
.labor-page .metric-icon,
.metric-icon,
.stat-card-emoji,
.stats-icon-box,
.dashboard-stat-icon,
.schedule-kpi-icon,
[data-theme-icon],
.rs-profile-emoji-button span[aria-hidden="true"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1;
}

.process-kpi-icon svg,
.metric-icon svg,
.stats-icon-box svg,
.dashboard-stat-icon svg,
.nav-glyph svg {
  display: block;
  margin: auto;
}

/* Atendimento: configuracoes e respostas rapidas alinhadas para producao */
.assisted-preferences-card,
.quick-command-card,
.quick-category-admin-card {
  border-radius: 1.45rem;
}

.assisted-preferences-grid {
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  align-items: stretch;
  gap: .85rem;
}

.assisted-preference-option,
.quick-category-admin-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .85rem;
  min-height: 96px;
  padding: .95rem;
  border-radius: 1.15rem;
}

.assisted-preference-option .pill-toggle,
.quick-category-admin-item .pill-toggle,
.quick-category-admin-row .pill-toggle {
  justify-self: end;
  align-self: center;
  min-width: 86px;
}

.quick-category-admin-list {
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
  gap: .9rem;
  align-items: stretch;
}

.quick-category-admin-row {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) 42px auto auto auto;
  gap: .55rem;
  align-items: center;
}

.quick-category-admin-row input[type="color"] {
  inline-size: 2.6rem;
  block-size: 2.6rem;
  padding: .2rem;
  border-radius: .8rem;
}

.quick-command-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(96px, 1fr));
  gap: .65rem;
  align-items: stretch;
}

.quick-command-metrics .metric-card,
.quick-command-metrics > * {
  min-height: 86px;
  display: grid;
  place-items: center;
  text-align: center;
  border-radius: 1rem;
}

.quick-command-filters,
.quick-command-tabs,
.quick-reply-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  align-items: center;
}

.quick-command-tabs a,
.quick-command-tabs button,
.quick-reply-chip {
  min-height: 2.35rem;
  padding-inline: .85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Inteligencia R&S usa toda a area disponivel */
.rs-main.rs-route-automations-responde,
.rs-main.rs-route-automations-vs-responde {
  width: 100%;
  max-width: none;
}

.rs-main.rs-route-automations-responde > .page-header,
.rs-main.rs-route-automations-vs-responde > .page-header,
.rs-main.rs-route-automations-responde > .vs-layout,
.rs-main.rs-route-automations-vs-responde > .vs-layout,
.rs-main.rs-route-automations-responde .vs-layout,
.rs-main.rs-route-automations-vs-responde .vs-layout {
  width: 100%;
  max-width: none;
}

.rs-main.rs-route-automations-responde .vs-layout,
.rs-main.rs-route-automations-vs-responde .vs-layout {
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
}

/* Logo institucional: mesma leitura entre preview e sidebar, sem corte */
.rs-brand-logo-stage,
.rs-brand-logo-stage-production,
.rs-brand-logo-placeholder,
.rs-brand-logo-placeholder-production,
.brand-preview-logo,
.settings-brand-preview-logo,
.office-brand-preview-logo {
  overflow: visible;
}

.rs-brand-logo-img,
.rs-brand-logo-img-production,
.rs-brand-logo-placeholder img,
.rs-brand-logo-placeholder-production img,
.brand-preview-logo img,
.settings-brand-preview-logo img,
.office-brand-preview-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 2px;
  box-sizing: border-box;
}

html[data-theme="dark"] .schedule-kpi-card,
html[data-theme="dark"] .schedule-filter-card,
html[data-theme="dark"] .schedule-config-card,
html[data-theme="dark"] .schedule-board-card,
html[data-theme="dark"] .schedule-day-card,
html[data-theme="dark"] .schedule-entry-row {
  background: linear-gradient(180deg, rgba(12, 31, 24, .96), rgba(7, 20, 17, .98));
  border-color: rgba(243, 241, 232, .14);
  color: var(--rs-dark-polish-text, #f5f0df);
}

html[data-theme="dark"] .schedule-month-pill,
html[data-theme="dark"] .schedule-view-toggle a,
html[data-theme="dark"] .schedule-entry-type,
html[data-theme="dark"] .schedule-calendar-entry,
html[data-theme="dark"] .schedule-full-day-toggle {
  background: rgba(243, 241, 232, .08);
  border-color: rgba(243, 241, 232, .14);
  color: var(--rs-dark-polish-text, #f5f0df);
}

html[data-theme="dark"] .schedule-view-toggle a.active {
  background: #e2c671;
  color: #06251b;
}

html[data-theme="dark"] .schedule-kpi-card small,
html[data-theme="dark"] .schedule-board-header p,
html[data-theme="dark"] .schedule-calendar-entry span,
html[data-theme="dark"] .schedule-entry-main p,
html[data-theme="dark"] .schedule-entry-main small,
html[data-theme="dark"] .schedule-weekday {
  color: var(--rs-dark-polish-muted, rgba(245, 240, 223, .68));
}

@media (max-width: 1100px) {
  .schedule-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .schedule-filter-form, .schedule-workspace { grid-template-columns: 1fr; }
  .schedule-config-card { position: static; }
}

@media (max-width: 720px) {
  .schedule-hero, .schedule-board-header, .schedule-entry-row { align-items: stretch; flex-direction: column; }
  .schedule-kpi-grid { grid-template-columns: 1fr; }
  .schedule-calendar-grid { grid-template-columns: 1fr; }
  .schedule-weekday { display: none; }
  .process-card-information-grid { grid-template-columns: 1fr; }
  .quick-category-admin-row { grid-template-columns: 1fr auto; }
}

/* source: v46-document-organizer-and-header-polish */
.doc-organizer-hero .doc-organizer-hero-copy {
  white-space: nowrap;
  max-width: none;
}

.doc-file-workbench {
  display: grid;
  gap: 1rem;
  margin-bottom: 1rem;
}

.doc-workbench-header {
  align-items: flex-start;
  gap: 1rem;
}

.doc-workbench-header p {
  margin: .35rem 0 0;
  color: rgba(17, 31, 25, .68);
  font-weight: 650;
}

.doc-workbench-form {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(320px, 1.2fr);
  gap: 1rem;
  align-items: start;
}

.doc-file-picker-card,
.doc-workbench-options {
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: 1.25rem;
  background: rgba(255, 255, 255, .62);
  padding: 1rem;
}

.doc-file-picker-card {
  display: grid;
  gap: .75rem;
}

.file-picker-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6rem;
  width: fit-content;
  padding: .72rem 1rem;
  border-radius: .95rem;
  border: 1px solid rgba(6, 61, 47, .18);
  background: #063d2f;
  color: #fffaf0;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(6, 61, 47, .16);
}

.doc-native-file-input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
  overflow: hidden;
}

.doc-selected-preview {
  display: grid;
  gap: .5rem;
  min-height: 3rem;
  border: 1px dashed rgba(17, 31, 25, .16);
  border-radius: 1rem;
  padding: .85rem;
  color: rgba(17, 31, 25, .56);
  font-weight: 750;
  background: rgba(246, 246, 240, .72);
}

.doc-selected-preview.has-files {
  border-style: solid;
  color: #0c2d22;
  background: rgba(6, 61, 47, .055);
}

.doc-selected-preview span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .55rem .65rem;
  border-radius: .75rem;
  background: rgba(255,255,255,.68);
}

.doc-selected-preview strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-selected-preview small,
.doc-file-picker-card small,
.doc-workbench-actions .pill {
  color: rgba(17, 31, 25, .6);
  font-weight: 750;
}

.doc-workbench-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.doc-workbench-actions {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
}

.drive-folder-preview {
  display: grid;
  gap: .55rem;
  margin-top: .55rem;
}

.drive-folder-preview p,
.drive-folder-preview > strong {
  margin: 0;
  font-size: .78rem;
  color: rgba(17, 31, 25, .64);
  font-weight: 850;
}

.drive-folder-preview.is-loading p,
.drive-folder-preview.is-error p,
.drive-folder-preview.is-empty p {
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: .8rem;
  padding: .65rem .75rem;
  background: rgba(246, 246, 240, .72);
}

.drive-folder-preview.is-error p {
  border-color: rgba(195, 74, 74, .24);
  background: rgba(195, 74, 74, .08);
  color: #8f1d1d;
}

.drive-folder-option {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .65rem;
  align-items: center;
  border: 1px solid rgba(17, 31, 25, .10);
  border-radius: .9rem;
  padding: .65rem .75rem;
  background: rgba(255, 255, 255, .72);
  cursor: pointer;
}

.drive-folder-option input {
  inline-size: 1rem;
  block-size: 1rem;
  accent-color: #063d2f;
}

.drive-folder-option b,
.drive-folder-option small {
  display: block;
}

.drive-folder-option small,
.drive-folder-selected-note {
  color: rgba(17, 31, 25, .62);
  font-size: .78rem;
  font-weight: 750;
}

.drive-folder-selected-note {
  margin: .5rem 0 0;
}

/* Cabecalhos principais: Painel, Busca Global, Atendimento, Kanban e Chat no mesmo padrao */
.rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) {
  border-radius: clamp(1.35rem, 2.2vw, 2rem);
  padding: clamp(1.35rem, 3vw, 2.4rem);
  min-height: auto;
  align-items: flex-end;
}

.rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) :where(h1) {
  font-size: clamp(2.75rem, 5.6vw, 4.8rem);
  line-height: .88;
  letter-spacing: -.082em;
  font-weight: 900;
  margin: .15rem 0 .35rem;
}

.rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) :where(p) {
  max-width: 78ch;
  font-size: clamp(1rem, 1.35vw, 1.16rem);
  line-height: 1.42;
  font-weight: 650;
  margin: 0;
}

.rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) .eyebrow {
  font-size: .74rem;
  letter-spacing: .16em;
  line-height: 1.1;
}

.assisted-hero-actions {
  align-items: center;
  justify-content: flex-end;
  gap: .55rem;
}

.assisted-hero-actions .button,
.dashboard-command-actions .primary-button,
.dashboard-command-actions .ghost-button {
  min-height: 2.55rem;
  border-radius: .85rem;
  font-weight: 900;
}

html[data-theme="dark"] .doc-file-picker-card,
html[data-theme="dark"] .doc-workbench-options,
html[data-theme="dark"] .doc-selected-preview,
html[data-theme="dark"] .drive-folder-option {
  background: rgba(243, 241, 232, .065);
  border-color: rgba(243, 241, 232, .14);
  color: var(--rs-dark-polish-text, #f5f0df);
}

html[data-theme="dark"] .doc-selected-preview span {
  background: rgba(9, 22, 18, .72);
}

html[data-theme="dark"] .doc-workbench-header p,
html[data-theme="dark"] .doc-selected-preview small,
html[data-theme="dark"] .doc-file-picker-card small,
html[data-theme="dark"] .drive-folder-preview p,
html[data-theme="dark"] .drive-folder-preview > strong,
html[data-theme="dark"] .drive-folder-option small,
html[data-theme="dark"] .drive-folder-selected-note {
  color: var(--rs-dark-polish-muted, rgba(245, 240, 223, .68));
}

html[data-theme="dark"] .file-picker-button {
  background: #e2c671;
  color: #06251b;
  border-color: rgba(226, 198, 113, .62);
}

@media (max-width: 980px) {
  .doc-workbench-form { grid-template-columns: 1fr; }
  .doc-workbench-actions { grid-column: auto; }
  .doc-organizer-hero .doc-organizer-hero-copy { white-space: normal; }
}

@media (max-width: 700px) {
  .doc-workbench-options { grid-template-columns: 1fr; }
  .rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) { align-items: stretch; }
  .rs-main :where(.dashboard-command-hero, .search-hero, .assisted-hero) :where(h1) { font-size: clamp(2.25rem, 14vw, 3.4rem); }
}


/* source: 04-pages/v47-final-audit-corrections.css */
/* ===== V47 final audit corrections ===== */

:root {
  --rs-hero-title-size: clamp(2rem, 3.15vw, 2.95rem);
  --rs-hero-kicker-size: .72rem;
  --rs-hero-copy-size: clamp(.92rem, 1vw, 1rem);
  --rs-card-title-size: clamp(1.1rem, 1.3vw, 1.28rem);
}

/* Global header normalization */
.rs-main .page-header,
.rs-main .rs-page-hero,
.rs-main .dashboard-command-hero,
.rs-main .assisted-hero,
.rs-main .search-hero,
.rs-main .process-page-header,
.rs-main .labor-hero,
.rs-main .schedule-hero,
.rs-main .settings-page-intro,
.rs-main .doc-organizer-hero,
.rs-main .contracts-page-header,
.rs-main .review-hero,
.rs-main .nfse-hero,
.rs-main .reports-hero,
.rs-main .crm-page-header,
.rs-main .access-hero,
.rs-main .record-create-hero {
  min-height: auto;
  padding: clamp(1.2rem, 2.2vw, 1.9rem) clamp(1.35rem, 2.8vw, 2.4rem);
  border-radius: clamp(1.15rem, 2vw, 1.75rem);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1rem, 2.5vw, 2rem);
}

.rs-main .page-header > div:first-child,
.rs-main .rs-page-hero > div:first-child,
.rs-main .dashboard-command-hero > div:first-child,
.rs-main .assisted-hero > div:first-child,
.rs-main .search-hero > div:first-child,
.rs-main .process-page-header > div:first-child,
.rs-main .labor-hero > div:first-child,
.rs-main .schedule-hero > div:first-child,
.rs-main .doc-organizer-hero > div:first-child,
.rs-main .crm-page-header > div:first-child {
  min-width: 0;
  flex: 1 1 auto;
}

.rs-main .page-header h1,
.rs-main .rs-page-hero h1,
.rs-main .dashboard-command-hero h1,
.rs-main .assisted-hero h1,
.rs-main .search-hero h1,
.rs-main .process-page-header h1,
.rs-main .labor-hero h1,
.rs-main .schedule-hero h1,
.rs-main .doc-organizer-hero h1,
.rs-main .contracts-page-header h1,
.rs-main .review-hero h1,
.rs-main .nfse-hero h1,
.rs-main .reports-hero h1,
.rs-main .crm-page-header h1,
.rs-main .access-hero h1,
.rs-main .record-create-hero h1,
.rs-main .page-header .page-title,
.rs-main .rs-page-hero .page-title,
.rs-main .dashboard-command-hero .page-title {
  margin: .15rem 0 .35rem;
  font-size: var(--rs-hero-title-size);
  line-height: .98;
  letter-spacing: -.052em;
  max-width: 18ch;
}

.rs-main .page-header .kicker,
.rs-main .rs-page-hero .kicker,
.rs-main .dashboard-command-hero .kicker,
.rs-main .assisted-hero .kicker,
.rs-main .search-hero .kicker,
.rs-main .process-page-header .kicker,
.rs-main .labor-hero .kicker,
.rs-main .schedule-hero .kicker,
.rs-main .doc-organizer-hero .kicker,
.rs-main .crm-page-header .kicker,
.rs-main .page-kicker,
.rs-main .process-page-header .process-eyebrow,
.rs-main .labor-hero .eyebrow {
  font-size: var(--rs-hero-kicker-size);
  letter-spacing: .16em;
  line-height: 1.2;
  margin: 0 0 .35rem;
  text-transform: uppercase;
}

.rs-main .page-header p,
.rs-main .rs-page-hero p,
.rs-main .dashboard-command-hero p,
.rs-main .assisted-hero p,
.rs-main .search-hero p,
.rs-main .process-page-header p,
.rs-main .labor-hero p,
.rs-main .schedule-hero p,
.rs-main .doc-organizer-hero p,
.rs-main .contracts-page-header p,
.rs-main .review-hero p,
.rs-main .nfse-hero p,
.rs-main .reports-hero p,
.rs-main .crm-page-header p,
.rs-main .access-hero p,
.rs-main .record-create-hero p {
  margin: 0;
  max-width: 78ch;
  font-size: var(--rs-hero-copy-size);
  line-height: 1.45;
  font-weight: 650;
}

.rs-main .hero-actions,
.rs-main .dashboard-hero-actions,
.rs-main .assisted-hero-actions,
.rs-main .labor-hero-actions,
.rs-main .schedule-hero-actions,
.rs-main .process-header-actions,
.rs-main .crm-hero-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .55rem;
}

/* Document organizer */
.doc-organizer-hero .doc-organizer-hero-copy {
  white-space: nowrap;
  max-width: none;
}

.doc-file-tool-card,
.doc-client-package-card {
  overflow: hidden;
}

.doc-selected-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: .75rem;
  margin-top: .85rem;
}

.doc-selected-file-card {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: center;
  gap: .7rem;
  padding: .7rem;
  border: 1px solid rgba(7, 39, 29, .14);
  border-radius: 1rem;
  background: rgba(255, 255, 255, .7);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .06);
}

.doc-file-thumb-image,
.doc-file-thumb-placeholder {
  width: 60px;
  height: 60px;
  border-radius: .85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  object-fit: cover;
  overflow: hidden;
  background: rgba(7, 39, 29, .08);
  color: var(--brand-primary, #06251b);
  font-weight: 900;
  letter-spacing: .08em;
  font-size: .7rem;
}

.doc-file-preview-meta {
  min-width: 0;
}

.doc-file-preview-meta strong,
.doc-file-preview-meta span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.doc-file-preview-meta span {
  color: var(--muted, #64736d);
  font-size: .78rem;
  font-weight: 700;
  margin-top: .2rem;
}

.drive-folder-preview.has-results {
  display: grid;
  gap: .7rem;
  padding: .85rem;
  border: 1px solid rgba(7, 39, 29, .14);
  border-radius: 1.1rem;
  background: rgba(7, 39, 29, .04);
}

.drive-folder-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .75rem;
  border: 1px solid rgba(7, 39, 29, .14);
  border-radius: .95rem;
  background: rgba(255, 255, 255, .72);
  cursor: pointer;
}

.drive-folder-option span {
  min-width: 0;
}

.drive-folder-option b,
.drive-folder-option small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.drive-folder-open-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.15rem;
  padding: .45rem .8rem;
  border-radius: 999px;
  border: 1px solid rgba(7, 39, 29, .16);
  background: rgba(7, 39, 29, .08);
  color: var(--brand-primary, #06251b);
  font-size: .78rem;
  font-weight: 850;
  text-decoration: none;
}

/* Process queues */
.process-monitoring-board-grid.process-board-single,
.process-monitoring-left-column,
.process-monitoring-left-column > .panel-card,
.processes-monitoring-card,
.process-clients-card,
.monitoring-card-list,
.process-card-list.monitoring-card-list,
.process-monitoring-card-v2 {
  width: 100%;
  max-width: none;
}

.process-monitoring-board-grid.process-board-single {
  display: block;
}

.process-monitoring-left-column {
  display: grid;
  gap: clamp(1rem, 2vw, 1.35rem);
}

.monitoring-card-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(.9rem, 1.5vw, 1.2rem);
}

.process-monitoring-card-v2 {
  display: grid;
  gap: .95rem;
  align-items: stretch;
}

.process-card-information-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  gap: 1rem;
  align-items: stretch;
}

.process-monitoring-meta-grid-v2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: .65rem;
}

.process-card-footer-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  flex-wrap: wrap;
  margin-top: .25rem;
}

.process-diary-open-button {
  margin-left: auto;
  min-width: 8.5rem;
  justify-content: center;
}

.process-diary-modal::backdrop {
  background: rgba(0, 0, 0, .52);
  backdrop-filter: blur(4px);
}

.process-diary-modal-shell {
  width: min(860px, 92vw);
  max-height: min(780px, 88vh);
  overflow: auto;
}

.process-client-pagination,
.process-client-page-buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .4rem;
}

.process-page-button {
  min-width: 2.15rem;
  min-height: 2.15rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: .65rem;
  font-weight: 850;
}

html[data-theme='dark'] .process-clients-card,
html[data-theme='dark'] .process-clients-card .process-monitoring-details,
html[data-theme='dark'] .process-clients-card summary,
html[data-theme='dark'] .process-clients-card .process-client-toolbar,
html[data-theme='dark'] .process-client-row,
html[data-theme='dark'] .contact-process-card {
  background: linear-gradient(135deg, rgba(9, 44, 33, .94), rgba(4, 22, 17, .96));
  border-color: rgba(156, 196, 181, .18);
  box-shadow: none;
}

html[data-theme='dark'] .process-clients-card .pill,
html[data-theme='dark'] .process-clients-card .process-count-badge,
html[data-theme='dark'] .process-clients-card .process-page-button.active {
  background: rgba(235, 211, 127, .2);
  color: #f8e8aa;
  border-color: rgba(235, 211, 127, .28);
}

/* Assisted service chat tabs and settings */
.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
.assisted-inbox-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .35rem;
  align-items: stretch;
  overflow: visible;
}

.assisted-inbox-tabs .assisted-inbox-tab,
.assisted-inbox-tab {
  min-width: 0;
  width: 100%;
  padding: .5rem .45rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .25rem;
  white-space: nowrap;
}

.assisted-inbox-tab span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: clamp(.64rem, .75vw, .76rem);
  line-height: 1.05;
}

.assisted-inbox-tab strong,
.assisted-inbox-tab .badge,
.assisted-inbox-tab .count {
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 .25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  line-height: 1;
  font-size: .67rem;
}

.assisted-preferences-grid,
.quick-category-admin-list {
  display: grid;
  gap: .85rem;
}

.assisted-preferences-grid {
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  align-items: stretch;
}

.assisted-preference-option {
  min-height: 8.2rem;
  padding: 1rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
}

.assisted-preference-option .switch-control,
.assisted-preference-option .pill-toggle,
.quick-category-admin-row .pill-toggle,
.quick-category-admin-row .switch-control,
.tag-row .pill-toggle,
.tag-row .switch-control {
  align-self: center;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.quick-command-hero,
.assisted-preferences-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.quick-category-admin-list {
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
}

.quick-category-admin-row {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) 42px auto auto auto;
  align-items: center;
  gap: .5rem;
}

.quick-category-admin-row input[type='text'],
.quick-category-admin-row input[type='color'] {
  min-width: 0;
}

.quick-stats-grid,
.quick-command-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: .75rem;
  align-items: stretch;
}

/* Icon and emoji centering */
.process-kpi-icon,
.labor-metric-card .metric-icon,
.metric-icon,
.schedule-kpi-icon,
.rs-icon-button,
.theme-toggle,
.user-menu-trigger .avatar,
.assisted-empty-icon,
.quick-stat-card,
.process-summary-chevron,
[data-theme-icon] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.process-kpi-icon svg,
.metric-icon svg,
.schedule-kpi-icon svg {
  display: block;
  width: 1em;
  height: 1em;
}

/* Brand logo must match preview and sidebar */
.rs-brand-logo-stage-production,
.settings-brand-preview-card .rs-brand-logo-stage-production,
.rs-sidebar .rs-brand-logo-stage-production,
.rs-brand-logo-stage,
.rs-brand-icon {
  overflow: visible;
  flex: 0 0 auto;
}

.rs-brand-logo-img-production,
.rs-brand-logo-img,
.rs-brand-icon img,
.settings-brand-preview-card .rs-brand-logo-img-production {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 4px;
  border-radius: inherit;
  box-sizing: border-box;
}

.rs-sidebar .rs-brand-logo-stage-production,
.rs-sidebar .rs-brand-icon {
  width: 58px;
  height: 58px;
}

body.sidebar-collapsed .rs-sidebar .rs-brand-logo-stage-production,
body.sidebar-collapsed .rs-sidebar .rs-brand-icon {
  width: 46px;
  height: 46px;
}

/* Sidebar hardening: keep SVG navigation icons deterministic in every
   cascade state. The production stack contains several historical visual
   layers; this final contract prevents collapsed/zoomed sidebars from
   inheriting the browser default 300x150 inline-SVG box, which caused the
   black oversized icons seen in homologation. */
.rs-sidebar .rs-nav a,
.sidebar-v2 .nav-links-v2 a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  overflow: hidden;
}

.rs-sidebar .rs-nav .nav-glyph,
.sidebar-v2 .nav-links-v2 .nav-glyph {
  width: 22px;
  height: 22px;
  min-width: 22px;
  max-width: 22px;
  flex: 0 0 22px;
  display: inline-grid;
  place-items: center;
  color: currentColor;
  line-height: 1;
  opacity: .96;
}

.rs-sidebar .rs-nav .nav-glyph svg,
.sidebar-v2 .nav-links-v2 .nav-glyph svg {
  display: block;
  width: 18px;
  height: 18px;
  min-width: 18px;
  max-width: 18px;
  min-height: 18px;
  max-height: 18px;
  flex: 0 0 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
}

.rs-sidebar .rs-nav .nav-glyph svg *,
.sidebar-v2 .nav-links-v2 .nav-glyph svg * {
  vector-effect: non-scaling-stroke;
}

.rs-sidebar .rs-nav .nav-label,
.sidebar-v2 .nav-links-v2 .nav-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (min-width: 1181px) {
  body.sidebar-collapsed .rs-shell,
  body.sidebar-collapsed .shell.app-shell-v2 {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  body.sidebar-collapsed .rs-sidebar .rs-nav,
  body.sidebar-collapsed .sidebar-v2 .nav-links-v2 {
    padding-inline: 0;
    gap: 8px;
    align-items: center;
  }

  body.sidebar-collapsed .rs-sidebar .rs-nav a,
  body.sidebar-collapsed .sidebar-v2 .nav-links-v2 a {
    width: 52px;
    height: 48px;
    min-height: 48px;
    padding: 0;
    justify-content: center;
    gap: 0;
    overflow: hidden;
  }

  body.sidebar-collapsed .rs-sidebar .rs-nav .nav-glyph,
  body.sidebar-collapsed .sidebar-v2 .nav-links-v2 .nav-glyph {
    width: 22px;
    height: 22px;
    min-width: 22px;
    max-width: 22px;
    flex-basis: 22px;
    margin: 0;
  }

  body.sidebar-collapsed .rs-sidebar .rs-nav .nav-glyph svg,
  body.sidebar-collapsed .sidebar-v2 .nav-links-v2 .nav-glyph svg {
    width: 18px;
    height: 18px;
    min-width: 18px;
    max-width: 18px;
    min-height: 18px;
    max-height: 18px;
  }

  body.sidebar-collapsed .rs-sidebar .rs-nav .nav-label,
  body.sidebar-collapsed .sidebar-v2 .nav-links-v2 .nav-label,
  body.sidebar-collapsed .rs-sidebar .nav-section-label,
  body.sidebar-collapsed .sidebar-v2 .nav-section-label {
    display: none;
  }
}

/* Full-width internal intelligence */
.rs-main:has(.vs-assistant-page),
.rs-main:has(.legal-intelligence-page),
.rs-main:has([data-ai-conversation-root]) {
  max-width: none;
  width: 100%;
}

.vs-assistant-page,
.legal-intelligence-page,
.ai-console-page,
[data-ai-conversation-root] {
  width: 100%;
  max-width: none;
}

.vs-assistant-layout,
.legal-intelligence-layout,
.ai-conversation-layout {
  width: 100%;
  max-width: none;
  display: grid;
  grid-template-columns: minmax(260px, 330px) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
}

/* Schedule polish */
.schedule-shell,
.schedule-board,
.schedule-calendar-grid,
.schedule-list {
  width: 100%;
  max-width: none;
}

.schedule-entry-card {
  display: grid;
  gap: .6rem;
  align-items: start;
}

@media (max-width: 1180px) {
  .doc-organizer-hero .doc-organizer-hero-copy {
    white-space: normal;
  }

  .process-card-information-grid,
  .vs-assistant-layout,
  .legal-intelligence-layout,
  .ai-conversation-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .rs-main .page-header,
  .rs-main .rs-page-hero,
  .rs-main .dashboard-command-hero,
  .rs-main .assisted-hero,
  .rs-main .search-hero,
  .rs-main .process-page-header,
  .rs-main .labor-hero,
  .rs-main .schedule-hero,
  .rs-main .doc-organizer-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .rs-main .page-header h1,
  .rs-main .rs-page-hero h1,
  .rs-main .dashboard-command-hero h1,
  .rs-main .assisted-hero h1,
  .rs-main .search-hero h1,
  .rs-main .process-page-header h1,
  .rs-main .labor-hero h1,
  .rs-main .schedule-hero h1,
  .rs-main .doc-organizer-hero h1 {
    max-width: none;
  }

  .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  .assisted-inbox-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .quick-category-admin-row {
    grid-template-columns: 1fr;
  }

  .process-card-footer-actions,
  .process-card-actions-bottom {
    align-items: stretch;
    flex-direction: column;
  }

  .process-diary-open-button {
    width: 100%;
    margin-left: 0;
  }

  .drive-folder-option {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .drive-folder-open-link {
    grid-column: 1 / -1;
  }
}

/* V48 - Diagnóstico AdvBox nos cards de processos */
.advbox-sync-diagnostic {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .85rem;
  padding: .8rem .9rem;
  border: 1px solid rgba(11, 58, 45, .12);
  border-radius: 1rem;
  background: color-mix(in srgb, var(--surface-muted, #f4f7f5) 76%, transparent);
  margin: .75rem 0 .35rem;
}

.advbox-sync-diagnostic > div {
  display: grid;
  gap: .2rem;
  min-width: 0;
}

.advbox-sync-diagnostic strong {
  font-size: .95rem;
  line-height: 1.2;
}

.advbox-sync-diagnostic small {
  color: var(--muted-text, #65746f);
  font-size: .78rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.advbox-sync-diagnostic.success {
  border-color: rgba(11, 116, 82, .22);
  background: rgba(11, 116, 82, .07);
}

.advbox-sync-diagnostic.warning {
  border-color: rgba(196, 141, 20, .28);
  background: rgba(196, 141, 20, .08);
}

.advbox-sync-diagnostic.danger {
  border-color: rgba(190, 18, 60, .28);
  background: rgba(190, 18, 60, .08);
}

.advbox-sync-error {
  color: #be123c;
  font-weight: 700;
}

[data-theme="dark"] .advbox-sync-diagnostic,
.dark .advbox-sync-diagnostic {
  background: rgba(255, 255, 255, .035);
  border-color: rgba(255, 255, 255, .12);
}

[data-theme="dark"] .advbox-sync-diagnostic.success,
.dark .advbox-sync-diagnostic.success {
  background: rgba(16, 185, 129, .09);
  border-color: rgba(16, 185, 129, .24);
}

[data-theme="dark"] .advbox-sync-diagnostic.warning,
.dark .advbox-sync-diagnostic.warning {
  background: rgba(245, 158, 11, .09);
  border-color: rgba(245, 158, 11, .24);
}

[data-theme="dark"] .advbox-sync-diagnostic.danger,
.dark .advbox-sync-diagnostic.danger {
  background: rgba(244, 63, 94, .09);
  border-color: rgba(244, 63, 94, .24);
}

/* V48.2 hotfix - restaura layout vertical dos cards da aba Processos.
   O card herdava grid-template-columns de .process-row-card e cada bloco interno
   virava uma coluna estreita, comprimindo os dados processuais. */
.process-row-card.process-monitoring-card.process-monitoring-card-v2,
.processes-monitoring-card .process-row-card.process-monitoring-card.process-monitoring-card-v2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: clamp(.85rem, 1.4vw, 1.1rem);
  width: 100%;
  min-width: 0;
  overflow: visible;
}

.process-monitoring-card-v2 > .process-card-topline,
.process-monitoring-card-v2 > .process-card-information-grid,
.process-monitoring-card-v2 > .advbox-sync-diagnostic,
.process-monitoring-card-v2 > .process-consult-note-v2,
.process-monitoring-card-v2 > .process-card-footer-actions,
.process-monitoring-card-v2 > .process-edit-panel,
.process-monitoring-card-v2 > .process-diary-modal {
  grid-column: 1 / -1;
  min-width: 0;
}

.process-monitoring-card-v2 .process-card-information-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  gap: clamp(.75rem, 1.3vw, 1rem);
  align-items: stretch;
  width: 100%;
  min-width: 0;
}

.process-monitoring-card-v2 .process-monitoring-meta-grid-v2 {
  min-width: 0;
  width: 100%;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.process-monitoring-card-v2 .process-monitoring-meta-grid-v2 span {
  min-width: 0;
  min-height: 74px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.process-monitoring-card-v2 .process-monitoring-meta-grid-v2 em,
.process-monitoring-card-v2 .process-monitoring-meta-grid-v2 strong {
  overflow-wrap: anywhere;
}

.process-monitoring-card-v2 .advbox-sync-diagnostic {
  margin: 0;
}

.process-monitoring-card-v2 .process-card-footer-actions {
  align-items: flex-end;
  border-top: 1px solid rgba(17, 31, 25, .08);
  padding-top: .9rem;
}

@media (max-width: 1180px) {
  .process-monitoring-card-v2 .process-card-information-grid {
    grid-template-columns: 1fr;
  }

  .process-monitoring-card-v2 .process-monitoring-meta-grid-v2 {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }
}

@media (max-width: 720px) {
  .process-monitoring-card-v2 .process-card-topline,
  .process-monitoring-card-v2 .process-card-footer-actions,
  .process-monitoring-card-v2 .process-card-actions-bottom {
    align-items: stretch;
    flex-direction: column;
  }

  .process-monitoring-card-v2 .process-monitoring-meta-grid-v2 {
    grid-template-columns: 1fr;
  }
}


/* source: 04-pages/v48-fine-adjustments.css */
/* V48 — ajustes finos de navegação e operação */

/* 01. Sidebar / logo */
body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-brand-top {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-link-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-block.rs-brand-link-production {
  display: grid;
  grid-template-columns: 66px minmax(0, 1fr);
  align-items: center;
  justify-items: stretch;
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 14px 14px 14px 12px;
  text-align: left;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-stage-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder-production {
  width: 66px;
  height: 66px;
  min-width: 66px;
  border-radius: 18px;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-stage-production {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder-production {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  overflow: hidden;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-img-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-copy-production {
  min-width: 0;
  justify-items: start;
  text-align: left;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-title,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-subtitle {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-toggle-button {
  position: static;
  right: auto;
  bottom: auto;
  margin: 0;
  width: 32px;
  height: 32px;
  min-width: 32px;
  flex: 0 0 32px;
  justify-self: end;
  align-self: center;
}

/* 02. Hubs operacionais */
.operation-hub-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.operation-hub-hero p {
  max-width: 68ch;
}

.operation-hub-hero-meta {
  display: flex;
  align-items: center;
  gap: .75rem;
}

.operation-hub-meta-chip {
  min-width: 112px;
  padding: 1rem 1.1rem;
  border-radius: 20px;
  border: 1px solid rgba(7, 61, 47, .12);
  background: rgba(255, 255, 255, .74);
  display: grid;
  justify-items: center;
  gap: .2rem;
  box-shadow: 0 14px 34px rgba(17, 31, 25, .06);
}

.operation-hub-meta-chip strong {
  font-size: 1.8rem;
  line-height: 1;
}

.operation-hub-meta-chip small {
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #587062;
}

.operation-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}

.operation-hub-card {
  display: grid;
  gap: 1rem;
  padding: 1.25rem;
  border-radius: 24px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(245, 247, 243, .96));
  box-shadow: 0 18px 36px rgba(17, 31, 25, .05);
}

.operation-hub-card-copy {
  display: grid;
  gap: .5rem;
}

.operation-hub-card-kicker {
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #5e7568;
}

.operation-hub-card h2 {
  margin: 0;
  font-size: 1.3rem;
}

.operation-hub-card p {
  margin: 0;
  color: #53655c;
  line-height: 1.55;
}

.operation-hub-card-footer {
  display: flex;
  justify-content: flex-start;
}

.operation-hub-card-locked {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 .9rem;
  border-radius: 999px;
  background: rgba(17, 31, 25, .05);
  color: #677a72;
  font-weight: 700;
}

.operation-hub-card.is-disabled {
  opacity: .78;
}

.operation-hub-card-emerald {
  border-color: rgba(7, 61, 47, .14);
}

.operation-hub-card-sand {
  border-color: rgba(177, 144, 73, .16);
  background: linear-gradient(180deg, rgba(255, 253, 244, .98), rgba(248, 245, 236, .96));
}

.operation-hub-card-violet {
  border-color: rgba(95, 61, 167, .14);
  background: linear-gradient(180deg, rgba(249, 247, 255, .98), rgba(243, 241, 251, .96));
}

.operation-hub-card-slate {
  border-color: rgba(61, 90, 128, .12);
  background: linear-gradient(180deg, rgba(249, 251, 252, .98), rgba(242, 246, 248, .96));
}

/* 03. Chat / filtros Conversando, Esperando, Contatos, SIA */
.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
.assisted-inbox-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .5rem;
  padding: .35rem;
  border-radius: 18px;
  background: rgba(7, 61, 47, .06);
  border: 1px solid rgba(7, 61, 47, .08);
}

.assisted-inbox-tabs .assisted-inbox-tab,
.assisted-inbox-tab {
  min-width: 0;
  min-height: 38px;
  width: 100%;
  padding: .6rem .65rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  border-radius: 14px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 6px 16px rgba(17, 31, 25, .05);
  color: #173228;
  white-space: nowrap;
}

.assisted-inbox-tab span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: .76rem;
  line-height: 1.1;
  font-weight: 800;
}

.assisted-inbox-tab strong,
.assisted-inbox-tab .badge,
.assisted-inbox-tab .count {
  min-width: 1.45rem;
  height: 1.45rem;
  padding: 0 .3rem;
  border-radius: 999px;
  background: rgba(7, 61, 47, .10);
  color: #0d4333;
  font-size: .66rem;
  font-weight: 800;
}

.assisted-inbox-tab.active {
  background: linear-gradient(180deg, #0d523f, #083629);
  border-color: rgba(7, 61, 47, .66);
  box-shadow: 0 12px 24px rgba(7, 61, 47, .18);
  color: #f5f4ea;
}

.assisted-inbox-tab.active strong,
.assisted-inbox-tab.active .badge,
.assisted-inbox-tab.active .count {
  background: rgba(255, 255, 255, .18);
  color: #ffffff;
}

.assisted-inbox-tabs .assisted-inbox-tab:nth-child(2):not(.active) strong,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(2):not(.active) .badge,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(2):not(.active) .count {
  background: rgba(214, 149, 34, .14);
  color: #8b5c09;
}

.assisted-inbox-tabs .assisted-inbox-tab:nth-child(3):not(.active) strong,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(3):not(.active) .badge,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(3):not(.active) .count {
  background: rgba(34, 101, 163, .12);
  color: #1a4f84;
}

.assisted-inbox-tabs .assisted-inbox-tab:nth-child(4):not(.active) strong,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(4):not(.active) .badge,
.assisted-inbox-tabs .assisted-inbox-tab:nth-child(4):not(.active) .count {
  background: rgba(108, 76, 163, .14);
  color: #5b3f90;
}

/* 04. Configurações do Atendimento */
.assisted-preferences-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.assisted-preference-option {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 56px;
  align-items: center;
  gap: .85rem;
  min-height: 104px;
  padding: 1rem;
  border-radius: 18px;
}

.assisted-preference-option input[type='checkbox'] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.assisted-preference-option .switch-copy {
  display: grid;
  gap: .35rem;
  align-content: center;
  min-width: 0;
  padding-right: .25rem;
}

.assisted-preference-option .switch-copy strong {
  font-size: 1rem;
  line-height: 1.12;
}

.assisted-preference-option .switch-copy small {
  display: block;
  max-width: 28ch;
  line-height: 1.35;
  color: #54655d;
}

.assisted-preference-option .switch-control,
.assisted-preference-option .pill-toggle {
  position: static;
  grid-column: 2;
  justify-self: end;
  align-self: center;
  margin: 0;
}

.crm-leads-filter-grid {
  grid-template-columns: minmax(260px, 1.4fr) repeat(4, minmax(160px, 1fr)) auto;
  align-items: end;
}

.crm-leads-filter-actions {
  align-self: end;
  display: flex;
  gap: .55rem;
  flex-wrap: nowrap;
  white-space: nowrap;
}

.crm-lead-list-head-no-owner,
.crm-lead-list-row-no-owner {
  grid-template-columns: minmax(220px, 1.25fr) minmax(160px, .9fr) minmax(120px, .7fr) minmax(150px, .8fr) auto;
}

.schedule-monthly-box {
  display: grid;
  gap: .65rem;
  padding: .85rem;
  border: 1px solid rgba(7, 61, 47, .12);
  border-radius: 16px;
  background: rgba(247, 250, 248, .78);
}

.schedule-monthly-box small {
  color: #5f6f68;
  line-height: 1.4;
}

.schedule-weekday-picker {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.schedule-weekday-picker label {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  min-height: 34px;
  padding: .35rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(7, 61, 47, .14);
  background: #fff;
  font-weight: 800;
  font-size: .82rem;
}

.schedule-row-actions,
.schedule-entry-actions {
  justify-content: flex-end;
}

.schedule-calendar-entry a {
  color: inherit;
  font-size: .68rem;
  font-weight: 800;
  text-decoration: underline;
}

@media (max-width: 1180px) {
  .crm-leads-filter-grid {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }

  .crm-leads-filter-actions {
    justify-content: flex-start;
  }
}

/* 05. Respostas Rápidas */
.quick-category-admin-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1rem;
}

.quick-category-admin-item {
  display: grid;
  gap: .75rem;
  padding: .95rem;
  border-radius: 22px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 12px 28px rgba(17, 31, 25, .04);
}

.quick-category-admin-row {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) 52px auto auto auto;
  gap: .55rem;
  align-items: center;
}

.quick-category-admin-row .quick-category-count {
  justify-self: start;
  white-space: nowrap;
}

.quick-category-admin-row .pill-toggle.compact {
  min-height: 40px;
  padding: .35rem .55rem;
  gap: .45rem;
  border-radius: 14px;
}

.quick-category-admin-row .pill-toggle.compact span {
  font-size: .82rem;
  font-weight: 800;
}

.quick-category-admin-row .pill-toggle.compact input[type='checkbox'] {
  width: 38px;
  height: 20px;
}

.quick-category-admin-row .pill-toggle.compact input[type='checkbox']::after {
  width: 14px;
  height: 14px;
}

.quick-category-admin-row .pill-toggle.compact input[type='checkbox']:checked::after {
  transform: translateX(18px);
}

.quick-category-admin-row .button.compact,
.quick-category-deactivate-row .button.compact {
  min-width: 92px;
}

.quick-category-deactivate-row {
  justify-content: flex-end;
  margin-top: 0;
}

.quick-reply-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
  align-items: start;
}

.quick-reply-admin-card {
  padding: 1rem;
  border-radius: 24px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 16px 30px rgba(17, 31, 25, .05);
}

.quick-reply-admin-card > form {
  display: grid;
  gap: .8rem;
  margin-top: .9rem;
}

.quick-reply-admin-card summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: start;
}

.quick-reply-admin-card summary strong {
  display: block;
  font-size: .96rem;
  line-height: 1.35;
}

.quick-reply-admin-card summary p {
  margin: .35rem 0 0;
  color: #596a61;
  line-height: 1.45;
}

.quick-reply-admin-card .form-grid.compact-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}

.quick-reply-admin-card textarea {
  min-height: 120px;
  resize: vertical;
}

.quick-reply-admin-card .setting-switch-card.single.compact {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  padding: .85rem .95rem;
  border-radius: 18px;
}

.quick-reply-admin-card .setting-switch-card.single.compact .switch-copy {
  min-width: 0;
}

.quick-reply-admin-card .setting-switch-card.single.compact .switch-copy small {
  line-height: 1.45;
}

.quick-card-deactivate {
  margin-top: .8rem;
  display: flex;
  justify-content: flex-end;
}

@media (max-width: 1240px) {
  .quick-category-admin-row {
    grid-template-columns: minmax(0, 1fr) 52px auto auto;
  }

  .quick-category-admin-row .quick-category-count {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  .assisted-inbox-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .quick-category-admin-list,
  .operation-hub-grid {
    grid-template-columns: 1fr;
  }

  .quick-category-admin-row,
  .quick-reply-admin-card .form-grid.compact-grid {
    grid-template-columns: 1fr;
  }

  .quick-category-admin-row .button.compact,
  .quick-category-deactivate-row .button.compact,
  .quick-reply-admin-card .button {
    width: 100%;
  }
}


/* source: 04-pages/v49-ui-corrections.css */
/* V49 — correções de UI após validação visual */

/* ==========================================================
   01. Sidebar brand — leitura total do logo e subtítulo
   ========================================================== */
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-card-production,
body:not(.sidebar-collapsed) .rs-sidebar .brand-card-v2.rs-brand-card-production {
  position: relative;
  overflow: visible;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-brand-top {
  position: relative;
  display: block;
  width: 100%;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-link-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-block.rs-brand-link-production {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 92px;
  padding: 14px 52px 14px 14px;
  text-align: left;
  overflow: hidden;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-stage-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-stage,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder {
  width: 60px;
  height: 60px;
  min-width: 60px;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-placeholder {
  border-radius: 16px;
  overflow: visible;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-img-production,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.08);
  transform-origin: center center;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-copy,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-copy-production {
  display: grid;
  justify-items: start;
  align-content: center;
  gap: 4px;
  min-width: 0;
  text-align: left;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-title,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-copy .rs-brand-title {
  display: block;
  width: 100%;
  margin: 0;
  white-space: nowrap;
  overflow: visible;
  text-overflow: clip;
  font-size: 1.02rem;
  line-height: 1.05;
  letter-spacing: .02em;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-subtitle,
body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-copy .rs-brand-subtitle {
  display: block;
  width: 100%;
  margin: 0;
  max-width: 100%;
  white-space: nowrap;
  overflow: visible;
  text-overflow: clip;
  font-size: .62rem;
  line-height: 1.1;
  letter-spacing: .035em;
}

body:not(.sidebar-collapsed) .rs-sidebar .rs-sidebar-toggle-button {
  position: absolute;
  top: 50%;
  right: 12px;
  bottom: auto;
  transform: translateY(-50%);
  z-index: 4;
  width: 30px;
  height: 30px;
  min-width: 30px;
  margin: 0;
  border-radius: 999px;
}

@media (max-width: 1180px) {
  body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-link-production,
  body:not(.sidebar-collapsed) .rs-sidebar .rs-brand-block.rs-brand-link-production {
    padding-right: 48px;
  }
}

/* ==========================================================
   02. Inbox tabs — legibilidade real em claro e escuro
   ========================================================== */
[data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
[data-assisted-service] .assisted-inbox-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  padding: 0;
  border: 0;
  background: transparent;
}

[data-assisted-service] .assisted-inbox-tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  min-width: 0;
  min-height: 42px;
  padding: .72rem .8rem;
  border-radius: 14px;
  border: 1px solid rgba(7, 61, 47, .14);
  background: #ffffff;
  color: #0d2f24;
  box-shadow: 0 6px 14px rgba(17, 31, 25, .05);
}

[data-assisted-service] .assisted-inbox-tab > span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .84rem;
  line-height: 1.1;
  font-weight: 800;
}

[data-assisted-service] .assisted-inbox-tab > strong {
  display: inline-grid;
  place-items: center;
  min-width: 1.55rem;
  height: 1.55rem;
  padding: 0 .35rem;
  border-radius: 999px;
  background: rgba(7, 61, 47, .08);
  color: #0b4533;
  font-size: .68rem;
  line-height: 1;
  font-weight: 900;
}

[data-assisted-service] .assisted-inbox-tab.active {
  background: linear-gradient(180deg, #0d523f, #083629);
  border-color: rgba(7, 61, 47, .84);
  color: #f5f4ea;
  box-shadow: 0 12px 22px rgba(7, 61, 47, .16);
}

[data-assisted-service] .assisted-inbox-tab.active > strong {
  background: rgba(255, 255, 255, .16);
  color: #ffffff;
}

[data-assisted-service] .assisted-inbox-tab-queue:not(.active) > strong {
  background: rgba(214, 149, 34, .14);
  color: #8b5c09;
}

[data-assisted-service] .assisted-inbox-tab-contacts:not(.active) > strong {
  background: rgba(34, 101, 163, .12);
  color: #1a4f84;
}

[data-assisted-service] .assisted-inbox-tab-ia:not(.active) > strong {
  background: rgba(108, 76, 163, .14);
  color: #5b3f90;
}

html[data-theme='dark'] [data-assisted-service] .assisted-inbox-tab {
  background: rgba(255, 255, 255, .05);
  border-color: rgba(255, 255, 255, .12);
  color: rgba(245, 247, 244, .96);
  box-shadow: none;
}

html[data-theme='dark'] [data-assisted-service] .assisted-inbox-tab > strong {
  background: rgba(255, 255, 255, .12);
  color: #ffffff;
}

html[data-theme='dark'] [data-assisted-service] .assisted-inbox-tab.active {
  background: linear-gradient(180deg, rgba(14, 90, 68, .92), rgba(7, 52, 40, .96));
  border-color: rgba(125, 193, 168, .34);
}

/* ==========================================================
   03. Quick replies — padrão visual consistente
   ========================================================== */
.quick-category-manager-card .assisted-card-header,
.quick-library-card .assisted-card-header {
  display: grid;
  gap: .35rem;
}

.quick-category-manager-card .assisted-card-header p,
.quick-library-card .assisted-card-header p {
  margin: 0;
  color: #5b6a62;
}

.quick-category-admin-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: .9rem;
}

.quick-category-admin-item {
  display: grid;
  gap: .65rem;
  padding: 1rem 1.05rem;
  border-radius: 20px;
  border: 1px solid rgba(17, 31, 25, .08);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(17, 31, 25, .04);
}

.quick-category-admin-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.7fr) 58px auto minmax(200px, 240px) auto;
  gap: .75rem;
  align-items: center;
}

.quick-category-admin-row > input[name='name'] {
  min-width: 0;
}

.quick-category-admin-row > input[type='color'] {
  width: 58px;
  min-width: 58px;
  height: 42px;
  padding: 4px;
  border-radius: 12px;
}

.quick-category-count {
  justify-self: start;
  white-space: nowrap;
}

.quick-category-switch {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  min-height: 42px;
  padding: .55rem .75rem;
  border-radius: 16px;
}

.quick-category-switch > input[type='checkbox'] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.quick-category-switch .switch-copy {
  min-width: 0;
}

.quick-category-switch .switch-copy strong {
  display: block;
  font-size: .84rem;
  line-height: 1.15;
}

.quick-category-switch .switch-copy small {
  display: block;
  margin-top: 2px;
  font-size: .7rem;
  line-height: 1.2;
  color: #64736c;
}

.quick-category-switch .switch-control {
  justify-self: end;
}

.quick-category-admin-row .button.compact,
.quick-category-deactivate-row .button.compact {
  min-width: 96px;
}

.quick-category-deactivate-row {
  display: flex;
  justify-content: flex-end;
  margin-top: 0;
}

.quick-reply-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: start;
}

.quick-reply-admin-card {
  padding: 1rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(17, 31, 25, .08);
  box-shadow: 0 12px 24px rgba(17, 31, 25, .04);
}

.quick-reply-admin-card > form {
  display: grid;
  gap: .75rem;
}

.quick-reply-admin-card .form-grid.compact-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}

.quick-reply-admin-card .setting-switch-card.single.compact {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
}

.quick-card-deactivate {
  display: flex;
  justify-content: flex-end;
}

html[data-theme='dark'] .quick-category-admin-item,
html[data-theme='dark'] .quick-reply-admin-card {
  background: rgba(17, 23, 21, .92);
  border-color: rgba(255, 255, 255, .08);
  box-shadow: none;
}

html[data-theme='dark'] .quick-category-manager-card .assisted-card-header p,
html[data-theme='dark'] .quick-library-card .assisted-card-header p,
html[data-theme='dark'] .quick-category-switch .switch-copy small {
  color: rgba(226, 232, 228, .72);
}

/* ==========================================================
   04. Responsive
   ========================================================== */
@media (max-width: 1180px) {
  .quick-category-admin-row {
    grid-template-columns: minmax(180px, 1.4fr) 58px auto auto;
  }

  .quick-category-switch {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  [data-assisted-service] .assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  [data-assisted-service] .assisted-inbox-tabs {
    grid-template-columns: 1fr;
  }

  .quick-category-admin-row,
  .quick-reply-admin-card .form-grid.compact-grid,
  .quick-reply-card-grid {
    grid-template-columns: 1fr;
  }

  .quick-category-admin-row .button.compact,
  .quick-category-deactivate-row .button.compact,
  .quick-reply-admin-card .button {
    width: 100%;
  }
}


/* ==========================================================
   08. Atendimento / preferências — cards compactos e sem sobreposição
   ========================================================== */
.assisted-preferences-grid,
.integration-switch-grid.round-check-grid.assisted-preferences-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: .9rem;
  align-items: stretch;
}

.assisted-preference-option.setting-switch-card,
.assisted-preference-option {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 52px;
  grid-template-rows: auto;
  align-items: center;
  gap: .85rem;
  min-height: 104px;
  max-height: none;
  padding: 1rem 1.05rem;
  overflow: hidden;
  border-radius: 18px;
}

.assisted-preference-option input[type='checkbox'] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.assisted-preference-option .switch-copy {
  display: grid;
  align-content: start;
  gap: .32rem;
  min-width: 0;
  padding: 0;
}

.assisted-preference-option .switch-copy strong {
  font-size: .98rem;
  line-height: 1.08;
  margin: 0;
}

.assisted-preference-option .switch-copy small {
  display: block;
  max-width: 28ch;
  font-size: .86rem;
  line-height: 1.35;
  color: #53655c;
}

.assisted-preference-option .switch-control,
.assisted-preference-option .pill-toggle {
  position: relative;
  inset: auto;
  justify-self: end;
  align-self: center;
  margin: 0;
  transform: none;
  z-index: 1;
}

@media (max-width: 720px) {
  .assisted-preference-option.setting-switch-card,
  .assisted-preference-option {
    grid-template-columns: minmax(0, 1fr);
  }

  .assisted-preference-option .switch-control,
  .assisted-preference-option .pill-toggle {
    justify-self: start;
  }
}

/* V50 ajustes finos solicitados - painel, contratos, chat, CRM, clientes, documentos e tema escuro. */
.date-range-field {
  min-width: 0;
  border: 0;
  padding: 0;
  margin: 0;
}
.date-range-field > legend,
.date-range-field > label,
.date-range-field > span {
  display: block;
  margin-bottom: 6px;
  color: #263b32;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .02em;
}
.date-range-inputs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}
.date-range-inputs input[type="date"] {
  min-width: 0;
  width: 100%;
}
.crm-leads-status-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.crm-lead-list-head-no-temperature,
.crm-lead-list-row-no-temperature {
  grid-template-columns: minmax(240px, 1.35fr) minmax(180px, .9fr) minmax(180px, .8fr) auto;
}
.doc-file-picker-card .file-picker-button,
.doc-organizer-sidebar .file-picker-button {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.doc-selected-preview.has-files {
  max-height: 340px;
  overflow: auto;
}
.settings-console-shell-pro .settings-search-box-hero,
.settings-search-box.settings-search-box-hero {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 14px;
  overflow: hidden;
}
.settings-search-box-hero .settings-search-icon {
  display: inline-grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 999px;
  background: rgba(15,81,56,.10);
  color: #0b3f31;
}
.settings-search-box-hero .settings-search-icon svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.25;
}
.settings-search-box-hero input[type="search"] {
  min-width: 0;
  color: #10251d;
}
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  color: #073d2f;
  background: #ffffff;
  opacity: 1;
}
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab span,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab span {
  color: inherit;
  opacity: 1;
}
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  color: #073d2f;
  background: #eef7f1;
  border-color: rgba(7,61,47,.25);
  opacity: 1;
}
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #06382b, #0f5138);
}
[data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active strong,
.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active strong {
  color: #fff;
  background: rgba(255,255,255,.22);
  border-color: rgba(255,255,255,.32);
}
[data-assisted-service] .badge.ia-active,
[data-assisted-service] .badge.ia-inactive {
  opacity: 1;
  font-weight: 900;
}
[data-assisted-service] .badge.ia-active {
  color: #073d2f;
  background: #dff7e8;
  border: 1px solid rgba(15,81,56,.22);
}
[data-assisted-service] .badge.ia-inactive {
  color: #203228;
  background: #eef1ec;
  border: 1px solid rgba(17,31,25,.14);
}
[data-assisted-service] .chat-timeline-event.is-ai-event,
[data-assisted-service] .conversation-lifecycle-card.is-ai-event {
  color: #073d2f;
  background: #e0f7ec;
  border-color: rgba(15,81,56,.24);
  opacity: 1;
}
[data-assisted-service] .chat-timeline-event.is-ai-event strong,
[data-assisted-service] .conversation-lifecycle-card.is-ai-event strong,
[data-assisted-service] .chat-timeline-event.is-ai-event p,
[data-assisted-service] .conversation-lifecycle-card.is-ai-event p {
  color: #073d2f;
  opacity: 1;
}

html[data-theme="dark"] .date-range-field > legend,
html[data-theme="dark"] .date-range-field > label,
html[data-theme="dark"] .date-range-field > span {
  color: #eaf7ef;
}
html[data-theme="dark"] [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab,
html[data-theme="dark"] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  color: #f4fff8;
  background: #0e2a20;
  box-shadow: 0 0 0 1.25px rgba(168,216,188,.42), inset 0 0 0 1px rgba(255,255,255,.06);
}
html[data-theme="dark"] [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong,
html[data-theme="dark"] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab strong {
  color: #052117;
  background: #f5f1db;
  border-color: rgba(245,241,219,.35);
}
html[data-theme="dark"] [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active,
html[data-theme="dark"] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  color: #052117;
  background: #f1d985;
  box-shadow: 0 0 0 1.75px rgba(241,217,133,.78), 0 0 0 4px rgba(241,217,133,.12);
}
html[data-theme="dark"] [data-assisted-service] nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active strong,
html[data-theme="dark"] .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active strong {
  color: #052117;
  background: rgba(255,255,255,.78);
}
html[data-theme="dark"] [data-assisted-service] .badge.ia-active {
  color: #052117;
  background: #f1d985;
  border-color: rgba(241,217,133,.58);
}
html[data-theme="dark"] [data-assisted-service] .badge.ia-inactive {
  color: #f4fff8;
  background: #1a3027;
  border-color: rgba(234,247,239,.22);
}
html[data-theme="dark"] [data-assisted-service] .chat-timeline-event.is-ai-event,
html[data-theme="dark"] [data-assisted-service] .conversation-lifecycle-card.is-ai-event {
  color: #052117;
  background: #f1d985;
  border-color: rgba(241,217,133,.70);
}
html[data-theme="dark"] [data-assisted-service] .chat-timeline-event.is-ai-event strong,
html[data-theme="dark"] [data-assisted-service] .conversation-lifecycle-card.is-ai-event strong,
html[data-theme="dark"] [data-assisted-service] .chat-timeline-event.is-ai-event p,
html[data-theme="dark"] [data-assisted-service] .conversation-lifecycle-card.is-ai-event p {
  color: #052117;
}
html[data-theme="dark"] .contact-summary-card,
html[data-theme="dark"] .contact-info-card,
html[data-theme="dark"] .contact-detail-grid .panel-card {
  background: #0f241c;
  border-color: rgba(190,220,202,.22);
  color: #f7fff8;
}
html[data-theme="dark"] .contact-summary-card span,
html[data-theme="dark"] .contact-summary-card strong,
html[data-theme="dark"] .contact-definition-row span,
html[data-theme="dark"] .contact-definition-row strong,
html[data-theme="dark"] .contact-info-card h3,
html[data-theme="dark"] .contact-detail-grid h2 {
  color: #f7fff8;
  opacity: 1;
}
html[data-theme="dark"] .contact-definition-row {
  background: rgba(255,255,255,.045);
  border-color: rgba(190,220,202,.18);
}
html[data-theme="dark"] .operation-hub-hero,
html[data-theme="dark"] .operation-hub-card {
  background: #0f241c;
  border-color: rgba(190,220,202,.22);
  color: #f7fff8;
}
html[data-theme="dark"] .operation-hub-hero h1,
html[data-theme="dark"] .operation-hub-hero p,
html[data-theme="dark"] .operation-hub-card h2,
html[data-theme="dark"] .operation-hub-card p,
html[data-theme="dark"] .operation-hub-card-kicker,
html[data-theme="dark"] .operation-hub-meta-chip strong,
html[data-theme="dark"] .operation-hub-meta-chip small {
  color: #f7fff8;
  opacity: 1;
}
html[data-theme="dark"] .operation-hub-card .primary-button {
  color: #052117;
  background: #f1d985;
  border-color: rgba(241,217,133,.42);
}
html[data-theme="dark"] .settings-search-box-hero .settings-search-icon {
  color: #052117;
  background: #f1d985;
}
html[data-theme="dark"] .settings-search-box-hero input[type="search"] {
  color: #f7fff8;
}
html[data-theme="dark"] .settings-search-box-hero input[type="search"]::placeholder {
  color: rgba(247,255,248,.70);
}
html[data-theme="dark"] .settings-workspace-ia .panel-card,
html[data-theme="dark"] .ai-pro-panel,
html[data-theme="dark"] .ai-store-agent-card,
html[data-theme="dark"] .ai-pro-folder-card {
  background: #0f241c;
  border-color: rgba(190,220,202,.22);
  color: #f7fff8;
}
html[data-theme="dark"] .settings-workspace-ia h2,
html[data-theme="dark"] .settings-workspace-ia h3,
html[data-theme="dark"] .settings-workspace-ia p,
html[data-theme="dark"] .ai-pro-panel h3,
html[data-theme="dark"] .ai-pro-panel p,
html[data-theme="dark"] .ai-store-agent-card strong,
html[data-theme="dark"] .ai-store-agent-card small,
html[data-theme="dark"] .ai-pro-folder-card strong,
html[data-theme="dark"] .ai-pro-folder-card p {
  color: #f7fff8;
  opacity: 1;
}
@media (max-width: 1180px) {
  .crm-leads-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .crm-lead-list-head-no-temperature,
  .crm-lead-list-row-no-temperature { grid-template-columns: minmax(220px, 1fr) minmax(160px, .8fr) minmax(150px, .7fr) auto; }
}
@media (max-width: 760px) {
  .date-range-inputs,
  .crm-leads-status-grid,
  .crm-lead-list-head-no-temperature,
  .crm-lead-list-row-no-temperature { grid-template-columns: 1fr; }
}

/* 05. Chat inbox tabs visual repair - 2x2 legible chips in the sidebar */
[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
  padding: .45rem;
  margin-top: .15rem;
  border-radius: 18px;
  border: 1px solid rgba(7, 61, 47, .10);
  background: rgba(7, 61, 47, .045);
  overflow: visible;
}

[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  min-width: 0;
  width: 100%;
  min-height: 40px;
  padding: .62rem .68rem;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: .42rem;
  border-radius: 14px;
  border: 1px solid rgba(7, 61, 47, .16);
  background: rgba(255, 255, 255, .96);
  color: #0d3528;
  box-shadow: 0 8px 18px rgba(17, 31, 25, .055);
  white-space: nowrap;
  overflow: hidden;
}

[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > span:first-child,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .78rem;
  line-height: 1.08;
  font-weight: 850;
  letter-spacing: -.01em;
}

[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > strong,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > strong {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  min-width: 1.45rem;
  height: 1.45rem;
  padding: 0 .34rem;
  border-radius: 999px;
  border: 1px solid rgba(7, 61, 47, .14);
  background: #eef7f1;
  color: #073d2f;
  font-size: .66rem;
  line-height: 1;
  font-weight: 900;
}

[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  color: #ffffff;
  background: linear-gradient(135deg, #073d2f, #0f5138);
  border-color: rgba(7, 61, 47, .72);
  box-shadow: 0 12px 24px rgba(7, 61, 47, .18);
}

[data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active > strong,
[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active > strong {
  color: #073d2f;
  background: rgba(255, 255, 255, .90);
  border-color: rgba(255, 255, 255, .34);
}

[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tab-queue:not(.active) > strong {
  color: #7b5006;
  background: rgba(214, 149, 34, .14);
}

[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tab-contacts:not(.active) > strong {
  color: #164a7c;
  background: rgba(34, 101, 163, .12);
}

[data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tab-ia:not(.active) > strong {
  color: #553b85;
  background: rgba(108, 76, 163, .14);
}

html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line {
  border-color: rgba(190, 220, 202, .14);
  background: rgba(255, 255, 255, .035);
}

html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab,
html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab {
  color: #f4fff8;
  background: #0f241c;
  border-color: rgba(190, 220, 202, .18);
  box-shadow: none;
}

html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > strong,
html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab > strong {
  color: #052117;
  background: #f5f1db;
  border-color: rgba(245, 241, 219, .32);
}

html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active,
html[data-theme="dark"] [data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line > a.assisted-inbox-tab.active {
  color: #ffffff;
  background: linear-gradient(135deg, #0a3a2d, #116247);
  border-color: rgba(125, 193, 168, .38);
  box-shadow: 0 0 0 1px rgba(125, 193, 168, .16);
}

@media (max-width: 560px) {
  [data-assisted-service] .assisted-conversation-sidebar nav.assisted-inbox-tabs.assisted-inbox-tabs-single-line,
  [data-assisted-service] .assisted-conversation-sidebar .assisted-inbox-tabs.assisted-inbox-tabs-single-line {
    grid-template-columns: 1fr;
  }
}

/* 06. Chat Inbox unificado - Conversas agrupadas em uma única aba */
[data-assisted-service] .assisted-timezone-chip {
  display: none;
}

[data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell {
  grid-template-columns: minmax(320px, 380px) minmax(0, 1fr);
  gap: 14px;
  margin-top: .65rem;
}

[data-assisted-service] .conversation-sidebar-head {
  align-items: center;
  gap: .75rem;
}

[data-assisted-service] .conversation-sidebar-tools-inline {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
  flex: 0 0 auto;
}

[data-assisted-service] .assisted-core-switcher-inbox {
  margin: 0;
  min-width: 0;
}

[data-assisted-service] .assisted-core-switcher-inbox select {
  width: 104px;
  min-width: 92px;
  height: 36px;
  padding: 0 28px 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(7, 61, 47, .18);
  background-color: rgba(255, 255, 255, .92);
  color: #073d2f;
  font-size: .78rem;
  font-weight: 850;
  box-shadow: 0 8px 18px rgba(17, 31, 25, .06);
}

[data-assisted-service] .assisted-inbox-tabs-unified {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 0;
  margin: .15rem 0 .15rem;
  background: transparent;
  border: 0;
  box-shadow: none;
}

[data-assisted-service] .assisted-inbox-tabs-unified > .assisted-inbox-tab-conversations {
  width: 100%;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: .65rem;
  padding: .68rem .82rem;
  border-radius: 16px;
  border: 1px solid rgba(7, 61, 47, .68);
  color: #fff;
  background: linear-gradient(135deg, #073d2f, #0f5138);
  box-shadow: 0 10px 22px rgba(7, 61, 47, .16);
  text-decoration: none;
}

[data-assisted-service] .assisted-inbox-tabs-unified > .assisted-inbox-tab-conversations span {
  font-size: .86rem;
  font-weight: 900;
  letter-spacing: -.01em;
}

[data-assisted-service] .assisted-inbox-tabs-unified > .assisted-inbox-tab-conversations strong {
  min-width: 1.55rem;
  height: 1.55rem;
  display: inline-grid;
  place-items: center;
  padding: 0 .38rem;
  border-radius: 999px;
  color: #073d2f;
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(255, 255, 255, .35);
  font-size: .68rem;
  font-weight: 900;
}

[data-assisted-service] .conversation-list-unified {
  display: grid;
  align-content: start;
  gap: .82rem;
  padding-right: 2px;
}

[data-assisted-service] .conversation-group {
  display: grid;
  gap: .42rem;
}

[data-assisted-service] .conversation-group-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .6rem;
  padding: .15rem .15rem .18rem;
  color: #26483b;
  border-bottom: 1px solid rgba(7, 61, 47, .10);
}

[data-assisted-service] .conversation-group-header span {
  font-size: .72rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .075em;
}

[data-assisted-service] .conversation-group-header strong {
  min-width: 1.35rem;
  height: 1.35rem;
  display: inline-grid;
  place-items: center;
  padding: 0 .32rem;
  border-radius: 999px;
  color: #073d2f;
  background: #e7f4ed;
  border: 1px solid rgba(7, 61, 47, .10);
  font-size: .66rem;
  font-weight: 900;
}

[data-assisted-service] .conversation-group-items {
  display: grid;
  gap: .45rem;
}

[data-assisted-service] .conversation-list-unified .conversation-item {
  padding: 10px 10px;
  border-radius: 16px;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  gap: 9px;
}

[data-assisted-service] .conversation-list-unified .conversation-avatar {
  width: 46px;
  height: 46px;
  border-radius: 15px;
}

[data-assisted-service] .conversation-group-empty {
  margin: 0;
  padding: .75rem;
  border: 1px dashed rgba(7, 61, 47, .14);
  border-radius: 14px;
  text-align: center;
  font-size: .78rem;
}

html[data-theme="dark"] [data-assisted-service] .assisted-core-switcher-inbox select {
  color: #f4fff8;
  background-color: #0f241c;
  border-color: rgba(190, 220, 202, .22);
  box-shadow: none;
}

html[data-theme="dark"] [data-assisted-service] .assisted-inbox-tabs-unified > .assisted-inbox-tab-conversations {
  color: #ffffff;
  background: linear-gradient(135deg, #0a3a2d, #116247);
  border-color: rgba(125, 193, 168, .38);
  box-shadow: 0 0 0 1px rgba(125, 193, 168, .16);
}

html[data-theme="dark"] [data-assisted-service] .conversation-group-header {
  color: #eafff3;
  border-bottom-color: rgba(190, 220, 202, .16);
}

html[data-theme="dark"] [data-assisted-service] .conversation-group-header strong {
  color: #052117;
  background: #f5f1db;
  border-color: rgba(245, 241, 219, .32);
}

html[data-theme="dark"] [data-assisted-service] .conversation-group-empty {
  color: rgba(244, 255, 248, .72);
  border-color: rgba(190, 220, 202, .18);
  background: rgba(255,255,255,.025);
}

@media (max-width: 1180px) {
  [data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: minmax(300px, 350px) minmax(0, 1fr);
  }
}

@media (max-width: 860px) {
  [data-assisted-service].assisted-page[data-section="inbox"] > .assisted-workbench.assisted-digisac-shell {
    grid-template-columns: 1fr;
  }
  [data-assisted-service] .conversation-sidebar-tools-inline {
    width: 100%;
    justify-content: space-between;
  }
}
