:root {
  --green: #075e54;
  --green-2: #128c7e;
  --background: #f4f7f6;
  --surface: #ffffff;
  --line: #dce5e1;
  --text: #1f2925;
  --muted: #69756f;
  --danger: #a93333;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--background);
  color: var(--text);
  font-family: Arial, Helvetica, sans-serif;
}

a {
  color: inherit;
}

.topbar {
  min-height: 64px;
  padding: 0 28px;
  background: var(--green);
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.topbar nav {
  display: flex;
  align-items: center;
  gap: 17px;
  flex-wrap: wrap;
}

.topbar nav > a {
  text-decoration: none;
}

.brand {
  margin: 0;
  font-size: 21px;
  font-weight: 800;
  text-decoration: none;
}

.container {
  max-width: 1500px;
  margin: 0 auto;
  padding: 28px 20px 60px;
}

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

h1,
h2,
h3 {
  margin-top: 0;
}

.page-heading h1 {
  margin-bottom: 5px;
}

.page-heading p {
  margin: 0;
  color: var(--muted);
}

.button {
  display: inline-block;
  border: 0;
  border-radius: 8px;
  padding: 11px 15px;
  background: var(--green-2);
  color: white;
  cursor: pointer;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.button.small {
  padding: 8px 11px;
  background: white;
  color: var(--green);
}

.button.secondary {
  background: #e3ebe7;
  color: #33423b;
}

.button.whatsapp {
  background: #25d366;
  color: #063a19;
}

.button.email {
  background: #1a73e8;
}

.full-button {
  width: 100%;
  margin-top: 10px;
}

.magic-button {
  background: var(--green);
}

.panel {
  padding: 20px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 20px;
}

.kpis article {
  padding: 18px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.kpis span {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
}

.kpis strong {
  color: var(--green);
  font-size: 28px;
}

.grid-two,
.project-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.lead-row {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 0;
  border-bottom: 1px solid #edf1ef;
  text-decoration: none;
}

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

.lead-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.badge {
  display: inline-block;
  border-radius: 999px;
  padding: 5px 8px;
  background: #e5eeea;
  font-size: 11px;
  font-weight: 800;
}

.badge.danger {
  background: #ffdede;
  color: #8a2828;
}

.filters {
  display: grid;
  grid-template-columns: 1fr 220px 220px auto;
  gap: 10px;
  margin-bottom: 16px;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid #cbd6d1;
  border-radius: 8px;
  padding: 10px;
  background: white;
  font: inherit;
}

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

label {
  display: grid;
  gap: 7px;
  color: #53605a;
  font-size: 13px;
  font-weight: 700;
}

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

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

.actions,
.action-grid {
  display: flex;
  gap: 10px;
}

.actions {
  justify-content: flex-end;
}

.action-grid {
  margin-top: 10px;
}

.table-wrap {
  overflow: auto;
  max-height: calc(100vh - 250px);
}

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

th,
td {
  padding: 12px 10px;
  border-bottom: 1px solid #e7ece9;
  text-align: left;
  white-space: nowrap;
}

th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: white;
  color: var(--muted);
  font-size: 12px;
}

.lead-table-row {
  cursor: pointer;
}

.lead-table-row:hover,
.lead-table-row.active {
  background: #eaf3ef;
}

.crm-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 410px;
  gap: 18px;
  align-items: start;
}

.lead-table-panel {
  min-width: 0;
}

.atendimento-sidebar {
  position: sticky;
  top: 18px;
  max-height: calc(100vh - 36px);
  overflow-y: auto;
}

.sidebar-empty {
  padding: 30px 10px;
  color: var(--muted);
  text-align: center;
}

.hidden {
  display: none !important;
}

.sidebar-top {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}

.sidebar-top h2 {
  margin-bottom: 4px;
}

.sidebar-top p {
  margin: 0;
  color: var(--muted);
}

.icon-button {
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 8px;
  background: #e3ebe7;
  cursor: pointer;
  font-size: 20px;
}

.sidebar-contact {
  margin: 14px 0;
  padding: 12px;
  border-radius: 9px;
  background: var(--green);
  color: white;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

.detail-grid,
.quick-edit-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.detail-grid > div {
  min-height: 70px;
  padding: 11px;
  border: 1px solid #e4ebe7;
  border-radius: 9px;
  background: #f6f9f7;
}

.detail-grid span {
  display: block;
  margin-bottom: 7px;
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}

.sidebar-section {
  margin-top: 16px;
  padding-top: 15px;
  border-top: 1px solid #e2e8e5;
}

.sidebar-section h3 {
  margin-bottom: 12px;
}

.qr-box {
  margin-top: 15px;
  text-align: center;
}

.qr-box img {
  width: 190px;
  max-width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
}

.qr-box small {
  display: block;
  margin-top: 7px;
  color: var(--muted);
}

.history-list {
  display: grid;
  gap: 10px;
}

.history-item {
  padding-left: 10px;
  border-left: 3px solid var(--green-2);
}

.history-item strong,
.history-item small {
  display: block;
}

.history-item small {
  margin-top: 3px;
  color: var(--muted);
}

.sidebar-message,
.kanban-message {
  position: sticky;
  bottom: 0;
  margin-top: 12px;
  border-radius: 8px;
  padding: 10px;
  background: #e8f4ed;
  color: #275d3c;
  font-size: 12px;
  text-align: center;
}

.sidebar-message:empty,
.kanban-message:empty {
  display: none;
}

.project-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.project-tab {
  padding: 8px 11px;
  border-radius: 999px;
  background: #e6eeea;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.project-tab.active {
  background: var(--green);
  color: white;
}

.kanban {
  display: grid;
  grid-template-columns: repeat(8, minmax(250px, 1fr));
  gap: 14px;
  overflow-x: auto;
  padding-bottom: 12px;
}

.kanban-column {
  min-height: 430px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #edf3f0;
}

.kanban-column.drag-over {
  outline: 2px solid var(--green-2);
}

.kanban-header {
  display: flex;
  justify-content: space-between;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  font-weight: 800;
}

.kanban-cards {
  display: grid;
  gap: 10px;
  min-height: 370px;
  padding: 10px;
}

.kanban-card {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: white;
  cursor: grab;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
}

.kanban-card.dragging {
  opacity: 0.5;
}

.kanban-card small {
  display: block;
  margin: 5px 0;
  color: var(--muted);
}

.flash {
  margin-bottom: 15px;
  padding: 12px;
  border-radius: 8px;
}

.flash.success {
  background: #dff4e7;
  color: #225e38;
}

.flash.error {
  background: #ffe1e1;
  color: #872b2b;
}

.empty {
  color: var(--muted);
}

.import-summary {
  margin-top: 18px;
}

@media (max-width: 1050px) {
  .crm-workspace {
    grid-template-columns: 1fr;
  }

  .atendimento-sidebar {
    position: static;
    max-height: none;
  }
}

@media (max-width: 780px) {
  .topbar {
    padding: 14px 18px;
    align-items: flex-start;
  }

  .kpis,
  .grid-two,
  .project-grid,
  .form-grid,
  .detail-grid,
  .quick-edit-grid {
    grid-template-columns: 1fr;
  }

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

  .form-grid .full {
    grid-column: auto;
  }

  .page-heading {
    align-items: flex-start;
  }
}


.theme-toggle {
  width: 38px;
  height: 34px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 8px;
  background: rgba(255,255,255,.12);
  color: white;
  cursor: pointer;
  font-size: 16px;
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(0, 0, 0, .48);
}

.kanban-modal {
  width: min(560px, 100%);
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  box-shadow: 0 24px 70px rgba(0,0,0,.25);
}

.modal-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.modal-header h2 {
  margin-bottom: 4px;
}

.modal-header p {
  margin: 0;
  color: var(--muted);
}

.modal-contact {
  margin: 14px 0;
  padding: 12px;
  border-radius: 9px;
  background: var(--green);
  color: white;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

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

.modal-actions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  margin-top: 12px;
}

.modal-section {
  margin-top: 16px;
  padding-top: 15px;
  border-top: 1px solid var(--line);
}

.modal-section h3 {
  margin-bottom: 12px;
}

html.dark {
  --green: #0f766e;
  --green-2: #14b8a6;
  --background: #111827;
  --surface: #1f2937;
  --line: #334155;
  --text: #e5e7eb;
  --muted: #94a3b8;
  color-scheme: dark;
}

html.dark .panel,
html.dark .kpis article,
html.dark .kanban-modal,
html.dark .kanban-card,
html.dark input,
html.dark select,
html.dark textarea,
html.dark th {
  background: #1f2937;
  color: var(--text);
}

html.dark .detail-grid > div,
html.dark .card,
html.dark .kanban-column,
html.dark .project-tab,
html.dark .button.secondary,
html.dark .icon-button {
  background: #263244;
  color: var(--text);
}

html.dark .lead-table-row:hover,
html.dark .lead-table-row.active {
  background: #243b3a;
}

html.dark .badge {
  background: #334155;
  color: #e5e7eb;
}

html.dark .topbar {
  background: #0b4f49;
}

html.dark .modal-backdrop {
  background: rgba(0,0,0,.68);
}

@media (max-width: 650px) {
  .compact-grid,
  .modal-actions {
    grid-template-columns: 1fr;
  }
}

.error-page{max-width:620px;margin:70px auto;text-align:center}.error-code{color:var(--green);font-size:72px;font-weight:900;line-height:1;margin-bottom:14px}.error-page p{color:var(--muted);margin-bottom:22px}


.inline-form {
  display: inline;
  margin: 0;
}

.nav-link-button {
  border: 0;
  padding: 0;
  background: transparent;
  color: white;
  cursor: pointer;
  font: inherit;
}

.current-user {
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  font-size: 12px;
  font-weight: 700;
}

.login-shell {
  min-height: calc(100vh - 170px);
  display: grid;
  place-items: center;
}

.login-card {
  width: min(420px, 100%);
}

.login-brand {
  margin-bottom: 22px;
  color: var(--green);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.login-card p {
  margin-top: -8px;
  margin-bottom: 20px;
  color: var(--muted);
}

.login-form {
  display: grid;
  gap: 14px;
}

.remember-row {
  display: flex;
  grid-template-columns: none;
  align-items: center;
  gap: 8px;
}

.remember-row input {
  width: auto;
}

.technical-value {
  font-size: 18px !important;
  text-transform: capitalize;
}

.technical-list {
  margin: 0;
}

.technical-list > div {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}

.technical-list dt {
  color: var(--muted);
}

.technical-list dd {
  margin: 0;
  overflow-wrap: anywhere;
  font-weight: 700;
}

.technical-actions {
  display: flex;
  gap: 10px;
  margin-top: 16px;
}

.backup-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid var(--line);
}

.backup-row small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.technical-log-panel {
  margin-top: 18px;
}

.technical-logs {
  max-height: 420px;
  overflow: auto;
  padding: 14px;
  border-radius: 9px;
  background: #111827;
  color: #d1fae5;
  white-space: pre-wrap;
  word-break: break-word;
}


.current-user {
  text-decoration: none;
}

.checkbox-label {
  display: flex;
  align-items: center;
  gap: 9px;
}

.checkbox-label input {
  width: auto;
}

.panel-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.technical-users-panel {
  margin-top: 18px;
}

.technical-user-table {
  max-height: none;
  margin-top: 12px;
}


.admin-menu {
  position: relative;
}

.admin-menu-panel {
  position: absolute;
  top: calc(100% + 9px);
  right: 0;
  z-index: 100;
  min-width: 220px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: white;
  color: var(--text);
  box-shadow: 0 16px 38px rgba(0, 0, 0, .18);
}

.admin-menu-panel a {
  display: block;
  padding: 10px 11px;
  border-radius: 7px;
  text-decoration: none;
}

.admin-menu-panel a:hover {
  background: #edf3f0;
}

html.dark .admin-menu-panel {
  background: #1f2937;
}

html.dark .admin-menu-panel a:hover {
  background: #263244;
}

.export-filter-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

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

.export-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.export-summary-card {
  margin-top: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.export-summary-card span {
  display: block;
  color: var(--muted);
  margin-bottom: 5px;
}

.export-summary-card strong {
  color: var(--green);
  font-size: 30px;
}

.export-download-actions {
  display: flex;
  gap: 10px;
}

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

@media (max-width: 650px) {
  .export-filter-grid {
    grid-template-columns: 1fr;
  }

  .export-summary-card {
    align-items: stretch;
    flex-direction: column;
  }

  .export-download-actions {
    flex-direction: column;
  }
}


/* V6.0.2 — refinamentos de fluidez */
html {
  background: var(--background);
  scroll-behavior: smooth;
}

body,
.panel,
.kpis article,
.kanban-card,
.kanban-column,
.atendimento-sidebar,
.admin-menu-panel,
input,
select,
textarea,
.button,
.project-tab,
.badge {
  transition:
    background-color .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    opacity .18s ease,
    transform .18s ease;
}

body {
  min-height: 100vh;
}

main.container {
  animation: pageFadeIn .18s ease both;
}

@keyframes pageFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.button:hover,
.project-tab:hover,
.icon-button:hover,
.theme-toggle:hover {
  transform: translateY(-1px);
}

.button:active,
.project-tab:active,
.icon-button:active,
.theme-toggle:active {
  transform: translateY(0);
}

.lead-table-row {
  transition:
    background-color .14s ease,
    box-shadow .14s ease;
}

.lead-table-row.active {
  box-shadow: inset 3px 0 0 var(--green-2);
}

.atendimento-sidebar {
  animation: sidebarFadeIn .16s ease both;
}

@keyframes sidebarFadeIn {
  from {
    opacity: .75;
    transform: translateX(5px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.sidebar-content.loading {
  opacity: .55;
  pointer-events: none;
}

.sidebar-loading {
  display: grid;
  gap: 10px;
}

.sidebar-loading::before,
.sidebar-loading::after {
  content: "";
  display: block;
  height: 14px;
  border-radius: 999px;
  background:
    linear-gradient(
      90deg,
      rgba(128, 128, 128, .12) 25%,
      rgba(128, 128, 128, .22) 50%,
      rgba(128, 128, 128, .12) 75%
    );
  background-size: 200% 100%;
  animation: loadingShimmer 1.1s infinite linear;
}

.sidebar-loading::after {
  width: 65%;
}

@keyframes loadingShimmer {
  from { background-position: 200% 0; }
  to { background-position: -200% 0; }
}

.kanban-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, .08);
}

.modal-backdrop {
  animation: modalBackdropIn .15s ease both;
}

.kanban-modal {
  animation: modalPanelIn .18s ease both;
}

@keyframes modalBackdropIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes modalPanelIn {
  from {
    opacity: 0;
    transform: translateY(8px) scale(.99);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

html.dark,
html.dark body {
  background: var(--background);
  color: var(--text);
}

html.dark .topbar,
html.dark .sidebar-contact,
html.dark .modal-contact {
  color: white;
}

html.dark input::placeholder,
html.dark textarea::placeholder {
  color: #7f8da3;
}

@media (max-width: 1050px) {
  .table-wrap {
    max-height: none;
  }

  .atendimento-sidebar {
    position: static;
  }
}

@media (max-width: 780px) {
  .topbar {
    gap: 14px;
    flex-direction: column;
  }

  .topbar nav {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
    flex-wrap: nowrap;
  }

  .topbar nav > * {
    flex: 0 0 auto;
  }

  .container {
    padding: 20px 12px 44px;
  }

  .panel {
    padding: 15px;
  }

  th,
  td {
    padding: 10px 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


html.navigating main.container {
  opacity: .78;
}


/* V6.0.3 — proteção total contra flash claro */
:root {
  background-color: #f4f7f6;
}

html.dark {
  background-color: #111827;
}

html,
body,
main,
.container {
  background-color: var(--background);
}

html.navigating,
html.navigating body {
  background-color: var(--background);
}

html.navigating main.container {
  opacity: 1;
}

@media (prefers-color-scheme: dark) {
  html:not(.light) {
    background-color: #111827;
  }
}


.brand small {
  margin-left: 5px;
  font-size: 10px;
  opacity: .7;
  vertical-align: middle;
}

.app-footer {
  padding: 18px;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
}

/* KRM Kanban 2.0 — QR Code, autosave e atualização discreta */
.kanban-refresh-button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 112px;
  justify-content: center;
  padding: 9px 12px;
  white-space: nowrap;
}

.kanban-refresh-button.loading span {
  display: inline-block;
  animation: kanbanRefreshSpin .8s linear infinite;
}

@keyframes kanbanRefreshSpin {
  to {
    transform: rotate(360deg);
  }
}

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

.kanban-modal-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  gap: 18px;
  align-items: stretch;
}

.kanban-modal-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 11px;
  min-width: 0;
}

.kanban-notes-field textarea {
  min-height: 82px;
  max-height: 150px;
}

.kanban-modal-qr {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  gap: 7px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f7faf8;
  text-align: center;
}

.kanban-modal-qr img {
  display: block;
  width: 126px;
  height: 126px;
  max-width: 100%;
  border-radius: 8px;
  background: white;
  image-rendering: pixelated;
}

.kanban-modal-qr small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.kanban-autosave-status {
  min-height: 18px;
  color: var(--muted);
  font-size: 11px;
  text-align: left;
}

.kanban-autosave-status[data-state="saving"],
.kanban-autosave-status[data-state="pending"] {
  color: #8a6d1d;
}

.kanban-autosave-status[data-state="saved"] {
  color: #237a45;
}

.kanban-autosave-status[data-state="error"] {
  color: var(--danger);
}

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

html.dark .kanban-modal-qr {
  background: #182233;
}

html.dark .kanban-autosave-status[data-state="saving"],
html.dark .kanban-autosave-status[data-state="pending"] {
  color: #f5c66a;
}

html.dark .kanban-autosave-status[data-state="saved"] {
  color: #72d69a;
}

@media (max-width: 650px) {
  .kanban-modal-workspace {
    grid-template-columns: 1fr;
  }

  .kanban-modal-qr {
    min-height: auto;
  }

  .kanban-modal-qr img {
    width: 138px;
    height: 138px;
  }

  .kanban-contact-actions {
    grid-template-columns: 1fr;
  }

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

  .kanban-refresh-button {
    width: auto;
  }
}



/* KRM 1.3 — Projetos e exportação */
.project-card-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}
.project-card-heading h2 { margin-bottom: 4px; }
.project-card-heading p, .project-address { margin: 0; opacity: .78; }
.project-address { margin: 14px 0; }
.project-inactive { opacity: .72; }
.project-detail-panel { display: grid; gap: 22px; }
.project-info-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.project-location h3, .project-notes h3 { margin-bottom: 6px; }
.project-location p, .project-notes p { margin: 0; white-space: pre-wrap; }
.project-form textarea { min-height: 130px; }
.export-count { display: flex; align-items: baseline; gap: 6px; }
.export-count strong { font-size: 28px; }
.export-actions { flex-wrap: wrap; }
@media (max-width: 900px) {
  .project-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .project-info-grid { grid-template-columns: 1fr; }
}

/* KRM 1.4-A — Controller e onboarding */
.controller-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}
.controller-tabs a {
  padding: 8px 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
  background: var(--panel);
}
.controller-kpis { margin-bottom: 18px; }
.auth-secondary-link {
  display: block;
  text-align: center;
  margin-top: 12px;
}
.token-reveal {
  margin-bottom: 18px;
}
.token-reveal code {
  display: block;
  padding: 14px;
  border-radius: 10px;
  overflow-wrap: anywhere;
  background: rgba(127,127,127,.12);
  user-select: all;
}
.integration-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}
.integration-row:last-child { border-bottom: 0; }
.integration-row small { display: block; margin-top: 3px; color: var(--muted); }
@media (max-width: 700px) {
  .integration-row { align-items: flex-start; flex-direction: column; }
}

/* 1.4-B — operação e Controller */
.token-copy-row,
.integration-actions,
.kanban-claim-actions {
  display: flex;
  gap: 0.65rem;
  align-items: center;
  flex-wrap: wrap;
}

.token-copy-row code {
  flex: 1 1 22rem;
  overflow-wrap: anywhere;
}

.integration-actions form {
  margin: 0;
}

.kanban-claim-actions {
  margin: 0.25rem 0 0.5rem;
}

button:disabled,
.button:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}


/* 1.4-C — UX operacional e autosave global */
.lead-table-panel .table-wrap {
  max-height: calc(100vh - 290px);
  overflow: auto;
}

#leadTable {
  width: 100%;
  table-layout: fixed;
}

#leadTable thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--panel);
}

#leadTable th:nth-child(1),
#leadTable td:nth-child(1) {
  width: 29%;
}

#leadTable th:nth-child(2),
#leadTable td:nth-child(2) {
  width: 18%;
}

#leadTable th:nth-child(3),
#leadTable td:nth-child(3) {
  width: 21%;
}

#leadTable th:nth-child(4),
#leadTable td:nth-child(4) {
  width: 18%;
}

#leadTable th:nth-child(5),
#leadTable td:nth-child(5) {
  width: 14%;
}

.lead-table-row td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: middle;
}

.lead-name-cell strong,
.lead-name-cell small,
.lead-preference-cell strong,
.lead-preference-cell small,
.lead-entry-cell strong,
.lead-entry-cell small {
  display: block;
}

.lead-name-cell small,
.lead-preference-cell small,
.lead-entry-cell small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.lead-preference-cell strong,
.lead-entry-cell strong {
  font-size: 13px;
}

.lead-status-badge {
  white-space: nowrap;
}

.muted-badge {
  opacity: 0.72;
  font-weight: 600;
}

.lead-autosave-status {
  min-height: 20px;
  margin-top: 8px;
  color: var(--muted);
  font-size: 12px;
  text-align: right;
}

.lead-autosave-status[data-state="pending"],
.lead-autosave-status[data-state="saving"] {
  color: #8a6d1d;
}

.lead-autosave-status[data-state="saved"] {
  color: #237a45;
}

.lead-autosave-status[data-state="error"] {
  color: var(--danger);
}

.kanban-contact-preference {
  width: 100%;
  display: grid;
  gap: 8px;
  margin-top: 4px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
  text-align: left;
}

.kanban-contact-preference div {
  display: grid;
  gap: 2px;
}

.kanban-contact-preference span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.kanban-contact-preference strong {
  font-size: 12px;
  line-height: 1.25;
}

html.dark #leadTable thead th {
  background: var(--panel);
}

html.dark .lead-autosave-status[data-state="pending"],
html.dark .lead-autosave-status[data-state="saving"] {
  color: #f5c66a;
}

html.dark .lead-autosave-status[data-state="saved"] {
  color: #72d69a;
}

@media (max-width: 900px) {
  .lead-table-panel .table-wrap {
    max-height: none;
  }

  #leadTable {
    min-width: 720px;
  }
}


/* Hotfix: exclusão segura e discreta de leads */
.lead-danger-zone {
  margin-top: 24px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
  text-align: right;
}
.lead-delete-link {
  border: 0; background: transparent; color: var(--muted); cursor: pointer;
  font: inherit; font-size: 12px; padding: 4px 0; text-decoration: underline;
  text-underline-offset: 3px; opacity: .72;
}
.lead-delete-link:hover { color: var(--danger); opacity: 1; }
.lead-delete-confirm { margin-top: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; text-align: left; }
.lead-delete-confirm small { display: block; color: var(--muted); margin-bottom: 10px; line-height: 1.4; }
.lead-delete-confirm > div { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.button.danger { background: var(--danger); color: #fff; border-color: var(--danger); }

/* ==========================================================
   SuperPatch 1.5 — workspace, filtros e notas da atualização
   ========================================================== */
.brand-area {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.brand small {
  display: inline-block;
  margin-left: 6px;
  font-size: 11px;
  font-weight: 700;
  opacity: .82;
}

.workspace-single-label,
.workspace-switcher-toggle {
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 9px;
  background: rgba(0,0,0,.12);
  color: #fff;
  padding: 7px 10px;
  font: inherit;
}

.workspace-single-label { font-size: 12px; }
.workspace-switcher { position: relative; }
.workspace-switcher-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  max-width: 260px;
}
.workspace-switcher-toggle span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 800;
}
.workspace-switcher-toggle small { opacity: .72; font-size: 10px; }
.workspace-switcher-panel {
  position: absolute;
  z-index: 80;
  top: calc(100% + 8px);
  left: 0;
  width: 280px;
  max-height: 420px;
  overflow: auto;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--background);
  color: var(--text);
  box-shadow: 0 18px 45px rgba(0,0,0,.22);
}
.workspace-switcher-panel > strong {
  display: block;
  padding: 7px 9px;
  font-size: 11px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .08em;
}
.workspace-option {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
  border-radius: 9px;
  text-decoration: none;
}
.workspace-option:hover,
.workspace-option.active { background: rgba(18,140,126,.12); }
.workspace-option small { color: var(--muted); }

.filters.dynamic-filters {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  align-items: end;
}
.filters.dynamic-filters .filter-search { grid-column: span 2; }
.filters.dynamic-filters .filter-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}
.filters.dynamic-filters label {
  min-width: 0;
}
.filters.dynamic-filters .custom-date-fields {
  display: contents;
}
.filter-checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  grid-column: 1 / -1;
}
.filter-chip-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--background);
  font-size: 12px;
  cursor: pointer;
}
.filter-chip-checkbox input { width: auto; margin: 0; }

.release-notes-backdrop {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  z-index: 200;
}
.release-notes-modal {
  width: min(680px, 100%);
  max-height: min(760px, 90vh);
  overflow: auto;
  padding: 30px;
  border-radius: 16px;
  background: var(--background);
  color: var(--text);
  border: 1px solid var(--line);
  box-shadow: 0 24px 80px rgba(0,0,0,.38);
}
.release-notes-kicker {
  margin-bottom: 8px;
  color: var(--green-2);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .13em;
}
.release-notes-list {
  display: grid;
  gap: 10px;
  margin: 22px 0;
  padding-left: 20px;
}
.release-notes-footer {
  padding: 12px 14px;
  border-left: 3px solid var(--green-2);
  background: rgba(18,140,126,.08);
  font-style: italic;
}
.error-actions { display: flex; gap: 10px; flex-wrap: wrap; margin: 20px 0; }
.error-page small { color: var(--muted); line-height: 1.5; }
.auth-secondary-link.subtle { opacity: .72; font-size: 12px; }

@media (max-width: 980px) {
  .topbar { align-items: flex-start; gap: 12px; padding-top: 12px; padding-bottom: 12px; }
  .brand-area { flex-wrap: wrap; }
  .filters.dynamic-filters { grid-template-columns: 1fr 1fr; }
  .filters.dynamic-filters .filter-search { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  .filters.dynamic-filters { grid-template-columns: 1fr; }
  .filters.dynamic-filters .filter-search,
  .filter-checkboxes { grid-column: 1; }
  .workspace-switcher-panel { width: min(280px, 86vw); }
}

.controller-user-grid { margin-bottom: 18px; }
.membership-panel { margin-top: 18px; }
.compact-heading { margin-bottom: 12px; }
.membership-editor { margin-bottom: 18px; }
.membership-list { display: grid; gap: 8px; }
.membership-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--line);
}
.membership-card small { display: block; margin-top: 4px; color: var(--muted); }
.muted-card { opacity: .55; }


/* SuperPatch 1.5 — filtros compactos e seletor de período */
.filter-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 0 10px;
}
.filter-inline-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 14px;
  background: var(--green-2);
  border-color: var(--green-2);
  color: #fff;
  font-weight: 800;
  box-shadow: 0 5px 16px rgba(18,140,126,.18);
}
.filter-inline-toggle:hover,
.filter-inline-toggle[aria-expanded="true"],
.filter-inline-toggle.has-active-filters {
  background: color-mix(in srgb, var(--green-2) 86%, white 14%);
  border-color: color-mix(in srgb, var(--green-2) 86%, white 14%);
}
.filter-count {
  min-width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(0,0,0,.22);
  color: white;
  font-size: 11px;
  font-weight: 900;
}
.active-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
.active-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface);
  color: var(--text);
  font-size: 12px;
  text-decoration: none;
}
.active-filter-chip:hover { border-color: var(--green-2); }
.active-filter-chip b { font-size: 14px; line-height: 1; color: var(--muted); }

.filter-inline-panel {
  position: relative;
  margin: 0 0 14px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.filter-inline-panel.hidden { display: none; }
.filter-inline-panel .filters.dynamic-filters {
  display: grid;
  grid-template-columns: minmax(210px, 1.45fr) repeat(4, minmax(145px, 1fr));
  gap: 9px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.filter-inline-panel .filters.dynamic-filters label,
.filter-inline-panel .filter-field > span {
  font-size: 12px;
}
.filter-inline-panel .filters.dynamic-filters input,
.filter-inline-panel .filters.dynamic-filters select,
.filter-inline-panel .period-trigger {
  min-height: 38px;
}
.filter-inline-panel .filter-checkboxes {
  grid-column: 1 / 5;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.filter-inline-panel .filter-actions { grid-column: 1 / -1; }
.filter-inline-panel .filter-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 1px;
}
.filter-field > span { display: block; margin-bottom: 6px; font-weight: 650; }
.period-filter-field { position: relative; }
.period-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--surface);
  color: var(--text);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.period-trigger:hover,
.period-trigger[aria-expanded="true"] { border-color: var(--green-2); }
.period-popover {
  position: absolute;
  z-index: 80;
  top: calc(100% + 7px);
  left: 0;
  width: min(500px, calc(100vw - 52px));
  display: grid;
  grid-template-columns: 132px minmax(250px, 1fr);
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: var(--surface);
  box-shadow: 0 16px 42px rgba(0,0,0,.22);
}
.period-popover.hidden { display: none; }
.period-shortcuts {
  padding: 6px;
  border-right: 1px solid var(--line);
  background: color-mix(in srgb, var(--surface) 94%, var(--green-2) 6%);
  max-height: 274px;
  overflow: auto;
}
.period-shortcuts button {
  width: 100%;
  display: flex;
  align-items: center;
  min-height: 25px;
  padding: 4px 7px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--text);
  font-size: 12px;
  text-align: left;
  cursor: pointer;
}
.period-shortcuts button:hover { background: rgba(18,140,126,.1); }
.period-shortcuts button.active { background: rgba(18,140,126,.16); color: var(--green-2); font-weight: 800; }
.period-calendar-area { padding: 8px; min-width: 0; }
.period-calendars { display: grid; grid-template-columns: 1fr; }
.calendar-month { min-width: 0; }
.calendar-month-header {
  display: grid;
  grid-template-columns: 26px 1fr 26px;
  align-items: center;
  gap: 4px;
  margin-bottom: 3px;
}
.calendar-month-header strong { text-align: center; text-transform: capitalize; font-size: 12px; }
.calendar-nav {
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  cursor: pointer;
}
.calendar-nav:hover { background: rgba(18,140,126,.1); }
.calendar-weekdays,
.calendar-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; }
.calendar-weekdays span { padding: 2px 0; text-align: center; font-size: 8px; color: var(--muted); }
.calendar-day {
  aspect-ratio: 1.55;
  min-width: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--text);
  font-size: 10px;
  cursor: pointer;
}
.calendar-day:hover { background: rgba(18,140,126,.12); }
.calendar-day.outside { color: var(--muted); opacity: .38; cursor: default; }
.calendar-day.in-range { background: rgba(18,140,126,.12); border-radius: 0; }
.calendar-day.range-start,
.calendar-day.range-end { background: var(--green-2); color: white; border-radius: 6px; font-weight: 800; }
.calendar-day.today { outline: 1px solid color-mix(in srgb, var(--green-2) 72%, transparent); outline-offset: -2px; }
.period-manual-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: end;
  gap: 6px;
  margin-top: 7px;
  padding-top: 7px;
  border-top: 1px solid var(--line);
}
.period-manual-row label { font-size: 10px; }
.period-manual-row input { min-height: 30px !important; padding: 4px 6px !important; font-size: 11px; }
.period-popover-actions { display: flex; justify-content: flex-end; gap: 6px; margin-top: 7px; }
.period-popover-actions .button { min-height: 30px; padding: 5px 9px; font-size: 11px; }

.filter-inline-panel .filter-archived-toggle {
  grid-column: 5;
  justify-self: end;
  align-self: start;
  width: max-content;
  min-height: 28px;
  padding: 3px 8px;
  margin-top: 0;
  font-size: 11px;
  opacity: .78;
}
.filter-inline-panel .filter-archived-toggle:hover,
.filter-inline-panel .filter-archived-toggle:has(input:checked) {
  opacity: 1;
}

@media (max-width: 1100px) {
  .filter-inline-panel .filters.dynamic-filters { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .filter-inline-panel .filter-search { grid-column: span 2; }
  .filter-inline-panel .filter-checkboxes { grid-column: 1 / 3; }
  .filter-inline-panel .filter-archived-toggle { grid-column: 3; }
}
@media (max-width: 720px) {
  .filter-inline-panel { padding: 10px; }
  .filter-inline-panel .filters.dynamic-filters { grid-template-columns: 1fr; }
  .filter-inline-panel .filter-search,
  .filter-inline-panel .filter-checkboxes,
  .filter-inline-panel .filter-actions { grid-column: 1; }
  .filter-inline-panel .filter-actions { justify-content: stretch; }
  .filter-inline-panel .filter-actions > * { flex: 1; }
  .filter-inline-panel .filter-archived-toggle { grid-column: 1; justify-self: end; width: max-content; }
  .period-popover {
    position: fixed;
    left: 12px;
    right: 12px;
    top: 76px;
    width: auto;
    max-height: calc(100vh - 96px);
    overflow: auto;
    grid-template-columns: 1fr;
  }
  .period-shortcuts {
    border-right: 0;
    border-bottom: 1px solid var(--line);
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    max-height: none;
  }
}



/* ==========================================================
   KRM scrollbar — discreta, consistente e integrada ao tema
   ========================================================== */
html {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--green-2) 72%, transparent) transparent;
}

* {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, var(--green-2) 64%, transparent) transparent;
}

*::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}

*::-webkit-scrollbar-track {
  background: transparent;
}

*::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--green-2) 58%, transparent);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: padding-box;
}

*::-webkit-scrollbar-thumb:hover {
  background: color-mix(in srgb, var(--green-2) 82%, transparent);
  background-clip: padding-box;
}

*::-webkit-scrollbar-corner {
  background: transparent;
}

/* ==========================================================
   SuperPatch 1.5 — filtros ultracompactos v5
   O gatilho vira um ícone e o painel ocupa a mesma faixa.
   ========================================================== */
.filter-compact-shell {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 0 0 12px;
}

.filter-icon-toggle {
  position: relative;
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--green-2) 72%, white 10%);
  border-radius: 10px;
  background: var(--green-2);
  color: white;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(18, 140, 126, .16);
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}
.filter-icon-toggle:hover {
  filter: brightness(1.06);
  box-shadow: 0 8px 18px rgba(18, 140, 126, .23);
}
.filter-icon-toggle:active { transform: translateY(1px); }
.filter-icon-toggle[aria-expanded="true"] {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--green-2) 28%, transparent), 0 7px 18px rgba(18, 140, 126, .2);
}
.filter-sliders-icon {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.filter-icon-toggle .filter-count {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  padding: 0 4px;
  border: 2px solid var(--bg);
  border-radius: 999px;
  background: var(--text);
  color: var(--surface);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}
.filter-compact-content { min-width: 0; }
.filter-compact-content .active-filter-chips:not(:empty) { margin: 0 0 6px; }

/* O painel deixa de parecer um segundo card grande. */
.filter-compact-shell .filter-inline-panel {
  margin: 0;
  padding: 9px 10px;
  border-radius: 10px;
  box-shadow: none;
}
.filter-compact-shell .filter-inline-panel .filters.dynamic-filters {
  grid-template-columns: minmax(190px, 1.5fr) minmax(150px, .95fr) minmax(145px, .85fr) minmax(160px, 1fr);
  gap: 7px 9px;
}
.filter-compact-shell .filter-inline-panel .filters.dynamic-filters label,
.filter-compact-shell .filter-inline-panel .filter-field > span {
  font-size: 11px;
  margin-bottom: 4px;
}
.filter-compact-shell .filter-inline-panel .filters.dynamic-filters input,
.filter-compact-shell .filter-inline-panel .filters.dynamic-filters select,
.filter-compact-shell .filter-inline-panel .period-trigger {
  min-height: 36px;
}

/* Linha inferior única: status à esquerda, utilidades à direita. */
.filter-bottom-row {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  min-width: 0;
}
.filter-compact-shell .filter-bottom-row .filter-checkboxes {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-width: 0;
}
.filter-bottom-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-left: auto;
}
.filter-compact-shell .filter-archived-toggle {
  grid-column: auto;
  justify-self: auto;
  align-self: center;
  width: max-content;
  min-height: 30px;
  padding: 4px 8px;
  margin: 0;
  font-size: 10.5px;
  opacity: .72;
  white-space: nowrap;
}
.filter-compact-shell .filter-actions {
  grid-column: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin: 0;
}
.filter-compact-shell .filter-actions .button {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 11px;
}

@media (max-width: 1100px) {
  .filter-compact-shell .filter-inline-panel .filters.dynamic-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .filter-bottom-row { align-items: flex-end; }
  .filter-bottom-actions { align-self: flex-end; }
}

@media (max-width: 720px) {
  .filter-compact-shell {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 6px;
  }
  .filter-icon-toggle { width: 38px; height: 38px; border-radius: 9px; }
  .filter-sliders-icon { width: 20px; height: 20px; }
  .filter-compact-shell .filter-inline-panel { padding: 8px; }
  .filter-compact-shell .filter-inline-panel .filters.dynamic-filters { grid-template-columns: 1fr; }
  .filter-bottom-row { flex-direction: column; align-items: stretch; }
  .filter-bottom-actions { width: 100%; justify-content: flex-end; }
  .filter-compact-shell .filter-actions { flex: 0 1 auto; }
}


/* ==========================================================
   SuperPatch 1.5 — filtros instantâneos + moldura contextual
   ========================================================== */
.filter-compact-shell {
  display: inline-block;
  width: auto;
  margin: 0 0 12px;
}

.filter-compact-shell:not(.open) .filter-compact-content {
  display: none;
}

.filter-icon-toggle {
  width: auto;
  min-width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 12px;
}

.filter-toggle-label {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
}

.filter-compact-shell.open {
  width: 100%;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: var(--panel);
}

.filter-compact-shell.open .filter-icon-toggle {
  width: 42px;
  min-width: 42px;
  padding: 0;
}

.filter-compact-shell.open .filter-toggle-label {
  display: none;
}

.filter-compact-shell.open .filter-inline-panel {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.filter-compact-shell.open .filter-compact-content .active-filter-chips:not(:empty) {
  margin: 0 0 6px;
}

.filter-compact-shell .filter-actions .button {
  min-height: 30px;
  padding: 5px 9px;
}

.period-popover {
  width: min(470px, calc(100vw - 52px));
  grid-template-columns: 124px minmax(235px, 1fr);
}

.period-shortcuts {
  max-height: 250px;
}

.period-calendar-area {
  padding: 7px;
}

.calendar-day {
  aspect-ratio: 1.7;
  font-size: 9.5px;
}

.period-manual-row {
  margin-top: 5px;
  padding-top: 5px;
}

.lead-access-hint {
  margin: 10px 0 2px;
  padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--green-2) 38%, var(--line));
  border-radius: 8px;
  background: color-mix(in srgb, var(--green-2) 8%, transparent);
  color: var(--muted);
  font-size: 11px;
}

/* ==========================================================
   SuperPatch 1.5 — gestão de equipe e escopos delegados
   ========================================================== */
.team-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.team-member-card {
  padding: 14px;
}

.team-member-head,
.team-grant-row,
.team-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.team-member-head strong,
.team-member-head small {
  display: block;
}

.team-member-head small,
.team-member-meta,
.team-grant-row small,
.team-section-heading p {
  color: var(--muted);
}

.team-member-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 9px;
  font-size: 11px;
}

.team-delegation-panel h2 {
  margin-bottom: 3px;
}

.team-section-heading p {
  margin: 0;
  font-size: 12px;
}

.team-delegation-form {
  display: grid;
  grid-template-columns: 1.2fr 1.2fr .9fr .9fr auto;
  gap: 8px;
  align-items: end;
  margin-top: 16px;
}

.team-delegation-form label {
  min-width: 0;
}

.team-delegation-form select {
  min-height: 38px;
}

.team-grant-list {
  display: grid;
  gap: 7px;
  margin-top: 16px;
}

.team-grant-row {
  padding: 10px 0;
  border-top: 1px solid var(--line);
}

.team-grant-row > div {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
}

.team-grant-row small {
  width: 100%;
  font-size: 10px;
}

@media (max-width: 980px) {
  .team-delegation-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .team-delegation-form > .button {
    width: max-content;
  }
}

@media (max-width: 720px) {
  .filter-compact-shell.open {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 6px;
  }

  .filter-compact-shell.open .filter-icon-toggle {
    width: 38px;
    min-width: 38px;
  }

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

  .team-delegation-form > .button {
    width: 100%;
  }

  .team-grant-row {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* SuperPatch 1.5 — atualização parcial e memorando de acessos */
[data-partial-refresh] {
  transition: opacity .14s ease;
}
[data-partial-refresh].partial-refreshing {
  opacity: .62;
  pointer-events: none;
}
.team-access-memo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin: .75rem 0 1rem;
  padding: .7rem .85rem;
  border: 1px solid var(--border, rgba(127,127,127,.22));
  border-radius: 10px;
  font-size: .82rem;
  color: var(--muted, #77817b);
}
.team-access-memo > div { padding: 0 .9rem; }
.team-access-memo > div:first-child { padding-left: 0; border-right: 1px solid var(--border, rgba(127,127,127,.22)); }
.team-access-memo > div:last-child { padding-right: 0; }
.team-access-memo strong { color: var(--text, inherit); font-size: .86rem; }
.team-access-memo p { margin: .28rem 0 0; line-height: 1.35; }
.team-access-memo b { font-weight: 650; color: var(--text, inherit); }
@media (max-width: 720px) {
  .team-access-memo { grid-template-columns: 1fr; }
  .team-access-memo > div { padding: .2rem 0; }
  .team-access-memo > div:first-child { border-right: 0; border-bottom: 1px solid var(--border, rgba(127,127,127,.22)); padding-bottom: .65rem; margin-bottom: .45rem; }
}

/* SuperPatch 1.5 — convites e conexões */
.team-invite-panel,.team-connections-panel{margin-top:1rem}.team-invite-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:end}.team-mini-form{display:flex;gap:.65rem;align-items:end}.team-mini-form label{flex:1}.team-link-box{display:flex;flex-direction:column;gap:.35rem}.team-link-box>div{display:flex;gap:.45rem;flex-wrap:wrap}.generated-link{margin-top:.8rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:.7rem;display:grid;gap:.35rem}.generated-link input{width:100%;font-size:.82rem}.generated-link small,.team-link-box small{opacity:.7}.connection-list{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.8rem}.team-access-memo{margin-top:1rem;padding-top:.65rem;border-top:1px solid var(--border);font-size:.76rem;opacity:.72}.team-access-memo p{margin:.18rem 0!important}.team-access-memo strong{font-size:.78rem!important}@media(max-width:760px){.team-invite-grid{grid-template-columns:1fr}.team-mini-form{align-items:stretch;flex-direction:column}.team-mini-form .button{width:100%}}


/* ==========================================================
   SuperPatch 1.5 — Equipe comercial compacta e fluida
   ========================================================== */
.team-space-overview{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem}.team-space-primary{display:flex;align-items:baseline;gap:.65rem}.team-space-primary>strong{font-size:1.02rem}.team-role-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.055em;color:var(--muted)}.team-space-meta{display:flex;gap:1rem;color:var(--muted);font-size:.8rem;flex-wrap:wrap;justify-content:flex-end}.team-members-panel,.team-invite-panel,.team-delegation-panel,.team-connections-panel{margin-top:.75rem}.team-members-compact{display:grid;grid-template-columns:1fr 1fr;column-gap:2rem;row-gap:.22rem}.team-member-line{display:flex;align-items:baseline;gap:.35rem;padding:.3rem 0;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);min-width:0}.team-member-line strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-member-line span{font-size:.8rem;color:var(--muted)}.team-two-column{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.team-column-block{min-width:0}.team-column-block+ .team-column-block{border-left:1px solid var(--line);padding-left:1.2rem}.team-column-block h3{font-size:.82rem;margin:0 0 .7rem;color:var(--muted);font-weight:650}.team-invite-create-form{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.team-invite-create-form label{font-size:.77rem}.team-invite-create-form input{width:100%}.optional-label{font-size:.67rem;color:var(--muted);font-weight:400}.team-invite-actions{grid-column:1/-1;display:flex;gap:.45rem;flex-wrap:wrap}.team-permanent-link-actions{margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:.75rem;align-items:center}.team-permanent-link-actions>div:first-child{display:grid;gap:.16rem}.team-permanent-link-actions small{color:var(--muted);font-size:.7rem}.team-inline-actions{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.compact-generated-link{padding:.5rem .6rem;margin-top:.55rem}.compact-generated-link input{min-height:31px}.team-active-invites{display:grid;align-content:start;gap:.2rem}.team-invite-status-row{display:flex;justify-content:space-between;align-items:center;gap:.65rem;padding:.48rem 0;border-bottom:1px solid var(--line)}.team-invite-status-row>div{display:grid;gap:.12rem;min-width:0}.team-invite-status-row strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-invite-status-row small{font-size:.68rem;color:var(--muted)}.compact-empty{margin:.35rem 0;font-size:.76rem}.team-delegation-form{margin-top:.15rem}.team-grant-sentences{margin-top:.8rem}.team-grant-sentence{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.48rem 0}.team-grant-natural-language{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;font-size:.82rem}.team-inline-grant-form{display:inline-flex;align-items:center;gap:.3rem;margin:0}.team-inline-select{appearance:none;-webkit-appearance:none;border:0;border-bottom:1px dashed color-mix(in srgb,var(--green-2) 58%,transparent);background:transparent;color:var(--green-2);font:inherit;font-weight:750;letter-spacing:.02em;padding:0 .8rem 0 .08rem;min-height:unset;height:auto;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 7px) 52%,calc(100% - 3px) 52%;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.team-inline-select:focus{outline:0;border-bottom-style:solid}.team-inline-grant-form.saving{opacity:.55}.team-inline-grant-form.saved .team-inline-select{filter:brightness(1.18)}.team-grant-remove{border:0;background:transparent;color:var(--muted);font-size:1.05rem;line-height:1;cursor:pointer;padding:.2rem .35rem;border-radius:6px}.team-grant-remove:hover{background:color-mix(in srgb,#d75d5d 10%,transparent);color:#d75d5d}.team-access-memo-subtle{border:0;border-top:1px solid var(--line);border-radius:0;padding:.55rem 0 0;margin:.75rem 0 0;font-size:.69rem;opacity:.58}.team-access-memo-subtle strong{font-size:.71rem!important}.team-connections-compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:end}
@media(max-width:820px){.team-space-overview{align-items:flex-start;flex-direction:column}.team-space-meta{justify-content:flex-start}.team-members-compact,.team-two-column,.team-connections-compact{grid-template-columns:1fr}.team-column-block+ .team-column-block{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:.8rem}.team-invite-create-form{grid-template-columns:1fr}.team-permanent-link-actions{align-items:flex-start;flex-direction:column}.team-grant-sentence{align-items:flex-start}.team-grant-natural-language{line-height:1.55}}

/* SuperPatch 1.5 — hotfix de convites e equipe */
.team-invite-create-form-refined{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start}.team-invite-field-column{display:grid;gap:.38rem;min-width:0}.team-invite-field-column label{font-size:.79rem;font-weight:650;color:var(--text)}.team-invite-field-column input{width:100%}.team-invite-action{justify-self:end;margin-top:.12rem}.generated-link-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.generated-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:center}.token-like-link input{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-feedback{font-size:.67rem;color:var(--green-2);opacity:.9}.copy-feedback.failed{color:var(--muted)}.team-members-compact>.empty{grid-column:1/-1}@media(max-width:760px){.team-invite-create-form-refined{grid-template-columns:1fr}.team-invite-action{justify-self:stretch;width:100%}.generated-link-head{align-items:flex-start;flex-direction:column;gap:.15rem}}


/* ==========================================================
   SuperPatch 1.5 — KRM Design System v1
   Referência visual: seletor de workspaces.
   Mantém a interface coerente sem adicionar dependências JS.
   ========================================================== */
:root {
  --krm-radius-xs: 7px;
  --krm-radius-sm: 9px;
  --krm-radius-md: 12px;
  --krm-radius-lg: 14px;
  --krm-border: var(--line);
  --krm-surface: var(--surface);
  --krm-surface-raised: color-mix(in srgb, var(--surface) 96%, var(--green-2) 4%);
  --krm-surface-hover: color-mix(in srgb, var(--surface) 88%, var(--green-2) 12%);
  --krm-primary: var(--green-2);
  --krm-primary-soft: color-mix(in srgb, var(--green-2) 14%, transparent);
  --krm-text: var(--text);
  --krm-text-muted: var(--muted);
  --krm-danger: var(--danger);
  --krm-shadow-popover: 0 18px 45px rgba(0,0,0,.22);
  --krm-control-height: 40px;
  --krm-focus-ring: 0 0 0 3px color-mix(in srgb, var(--green-2) 18%, transparent);
}

/* Superfícies e geometria coerentes */
.panel,
.card,
.kpis article,
.kanban-column,
.kanban-card,
.project-tab,
.release-notes-modal,
.generated-link,
.workspace-switcher-panel,
.admin-menu-panel,
.date-filter-popover,
.filter-panel,
.lead-detail-panel {
  border-radius: var(--krm-radius-md);
  border-color: var(--krm-border);
}

/* Controles compartilham altura, raio, borda e foco */
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.button,
.icon-button,
.theme-toggle,
.workspace-switcher-toggle,
.workspace-single-label,
.nav-link-button {
  border-radius: var(--krm-radius-sm);
}

input:not([type="checkbox"]):not([type="radio"]),
select,
.button,
.icon-button,
.theme-toggle {
  min-height: var(--krm-control-height);
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible,
a:focus-visible {
  outline: 0;
  box-shadow: var(--krm-focus-ring);
}

.button,
.icon-button,
.theme-toggle,
.workspace-switcher-toggle,
.workspace-option,
.admin-menu-panel a,
.team-inline-select {
  transition: background-color .14s ease, border-color .14s ease, color .14s ease, box-shadow .14s ease, transform .14s ease;
}

.button:hover:not(:disabled),
.icon-button:hover:not(:disabled),
.theme-toggle:hover:not(:disabled) {
  filter: brightness(1.04);
}

.button:active:not(:disabled),
.icon-button:active:not(:disabled),
.theme-toggle:active:not(:disabled) {
  transform: translateY(1px);
}

.button.secondary,
.icon-button,
.theme-toggle {
  border: 1px solid var(--krm-border);
}

/* Menus/popovers: uma linguagem visual única */
.workspace-switcher-panel,
.admin-menu-panel,
.date-filter-popover {
  padding: 9px;
  background: var(--krm-surface-raised);
  border: 1px solid var(--krm-border);
  box-shadow: var(--krm-shadow-popover);
}

.workspace-option,
.admin-menu-panel a {
  border-radius: var(--krm-radius-sm);
}

.workspace-option:hover,
.workspace-option.active,
.admin-menu-panel a:hover {
  background: var(--krm-primary-soft);
}

/* Equipe: frases naturais ocupam a linha completa */
.team-grant-sentence {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: 100%;
  align-items: center;
  gap: .75rem;
}

.team-grant-natural-language {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  min-width: 0;
  width: 100%;
  gap: .32rem;
  line-height: 1.45;
  white-space: nowrap;
}

.team-inline-grant-form {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: .32rem;
  min-width: 0;
}

.team-grant-relationship {
  white-space: nowrap;
}

.team-inline-select {
  width: auto;
  min-width: 0;
  max-width: none;
  border-radius: var(--krm-radius-xs);
  border: 1px solid transparent;
  border-bottom-color: color-mix(in srgb, var(--green-2) 58%, transparent);
  background-color: transparent;
  padding: .18rem 1.15rem .18rem .34rem;
}

.team-inline-select:hover,
.team-inline-select:focus {
  background-color: var(--krm-primary-soft);
  border-color: color-mix(in srgb, var(--green-2) 36%, var(--krm-border));
}

/* Convites: contexto já é explícito; evitar cabeçalhos redundantes */
.team-invitations-layout .team-column-block:first-child {
  padding-top: 0;
}

/* Tipografia de apoio discreta */
.team-access-memo-subtle {
  color: var(--krm-text-muted);
  opacity: .66;
}

/* Responsividade: só quebrar a frase quando realmente necessário */
@media (max-width: 900px) {
  .team-grant-natural-language,
  .team-inline-grant-form {
    flex-wrap: wrap;
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .button,
  .icon-button,
  .theme-toggle,
  .workspace-switcher-toggle,
  .workspace-option,
  .admin-menu-panel a,
  .team-inline-select {
    transition: none !important;
  }
}

/* ==========================================================
   SuperPatch 1.5 — KRM Design System v2
   Controles universais, menus próprios e temas coerentes.
   Sem dependências externas; mantém os elementos <select>
   reais como fonte de dados e acessibilidade de formulário.
   ========================================================== */
:root {
  --krm-page: var(--background);
  --krm-surface-1: var(--surface);
  --krm-surface-2: color-mix(in srgb, var(--surface) 95%, var(--green-2) 5%);
  --krm-surface-3: color-mix(in srgb, var(--surface) 88%, var(--green-2) 12%);
  --krm-control-bg: var(--surface);
  --krm-control-hover: color-mix(in srgb, var(--surface) 91%, var(--green-2) 9%);
  --krm-menu-bg: color-mix(in srgb, var(--surface) 97%, var(--green-2) 3%);
  --krm-menu-hover: color-mix(in srgb, var(--surface) 84%, var(--green-2) 16%);
  --krm-menu-active: color-mix(in srgb, var(--surface) 72%, var(--green-2) 28%);
  --krm-border-soft: color-mix(in srgb, var(--line) 82%, transparent);
  --krm-border-strong: color-mix(in srgb, var(--line) 70%, var(--text) 30%);
  --krm-text-main: var(--text);
  --krm-text-soft: var(--muted);
  --krm-placeholder: color-mix(in srgb, var(--muted) 82%, transparent);
  --krm-primary-text: #ffffff;
  --krm-shadow-control: 0 1px 2px rgba(0,0,0,.035);
  --krm-shadow-menu: 0 18px 48px rgba(0,0,0,.16), 0 3px 10px rgba(0,0,0,.08);
  --krm-duration-fast: 120ms;
  --krm-duration: 170ms;
}

html.dark {
  --krm-surface-2: #243142;
  --krm-surface-3: #29384b;
  --krm-control-bg: #202c3c;
  --krm-control-hover: #273649;
  --krm-menu-bg: #172235;
  --krm-menu-hover: #20364a;
  --krm-menu-active: #164c4b;
  --krm-border-soft: #34445a;
  --krm-border-strong: #526279;
  --krm-text-main: #e8edf4;
  --krm-text-soft: #9aa8ba;
  --krm-placeholder: #7f8da3;
  --krm-shadow-control: 0 1px 2px rgba(0,0,0,.16);
  --krm-shadow-menu: 0 20px 54px rgba(0,0,0,.42), 0 4px 14px rgba(0,0,0,.26);
}

/* Tipografia e superfícies: uma única linguagem */
body {
  background: var(--krm-page);
  color: var(--krm-text-main);
  text-rendering: optimizeLegibility;
}

.panel,
.card,
.kpis article,
.kanban-column,
.kanban-card,
.project-tab,
.lead-detail-panel,
.release-notes-modal {
  background: var(--krm-surface-1);
  border: 1px solid var(--krm-border-soft);
  border-radius: var(--krm-radius-md);
}

/* Campos comuns — cor explícita para nunca depender do tema nativo do SO */
input:not([type="checkbox"]):not([type="radio"]),
textarea,
select:not([data-krm-enhanced]) {
  background: var(--krm-control-bg);
  color: var(--krm-text-main);
  border: 1px solid var(--krm-border-strong);
  border-radius: var(--krm-radius-sm);
  box-shadow: var(--krm-shadow-control);
  transition: border-color var(--krm-duration-fast) ease,
              background-color var(--krm-duration-fast) ease,
              box-shadow var(--krm-duration-fast) ease;
}

input:not([type="checkbox"]):not([type="radio"]):hover,
textarea:hover,
select:not([data-krm-enhanced]):hover {
  border-color: color-mix(in srgb, var(--krm-primary) 48%, var(--krm-border-strong));
}

input:not([type="checkbox"]):not([type="radio"]):focus,
textarea:focus,
select:not([data-krm-enhanced]):focus {
  background: var(--krm-control-bg);
  color: var(--krm-text-main);
  border-color: var(--krm-primary);
  box-shadow: var(--krm-focus-ring);
}

input::placeholder,
textarea::placeholder,
html.dark input::placeholder,
html.dark textarea::placeholder {
  color: var(--krm-placeholder);
  opacity: 1;
}

/* Botões usam a mesma geometria, peso e resposta */
.button,
.icon-button,
.theme-toggle,
.workspace-switcher-toggle,
.nav-link-button {
  border-radius: var(--krm-radius-sm);
  transition: background-color var(--krm-duration-fast) ease,
              color var(--krm-duration-fast) ease,
              border-color var(--krm-duration-fast) ease,
              box-shadow var(--krm-duration-fast) ease,
              transform var(--krm-duration-fast) ease;
}

.button {
  background: var(--krm-primary);
  color: var(--krm-primary-text);
}

.button.secondary,
.icon-button,
.theme-toggle {
  background: var(--krm-surface-2);
  color: var(--krm-text-main);
  border: 1px solid var(--krm-border-soft);
}

.button.secondary:hover,
.icon-button:hover,
.theme-toggle:hover {
  background: var(--krm-surface-3);
}

/* ----------------------------------------------------------
   Select KRM: substitui apenas a apresentação do <select>.
   O select real continua no formulário e recebe os changes.
   ---------------------------------------------------------- */
.krm-select-shell {
  position: relative;
  width: 100%;
  min-width: 0;
  color: var(--krm-text-main);
  z-index: 1;
}

.krm-select-shell.open {
  z-index: 1100;
}

.krm-select-shell > select[data-krm-enhanced] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.krm-select-trigger {
  width: 100%;
  min-height: var(--krm-control-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
  padding: .58rem .78rem;
  border: 1px solid var(--krm-border-strong);
  border-radius: var(--krm-radius-sm);
  background: var(--krm-control-bg);
  color: var(--krm-text-main);
  box-shadow: var(--krm-shadow-control);
  font: inherit;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition: background-color var(--krm-duration-fast) ease,
              border-color var(--krm-duration-fast) ease,
              box-shadow var(--krm-duration-fast) ease;
}

.krm-select-trigger:hover {
  background: var(--krm-control-hover);
  border-color: color-mix(in srgb, var(--krm-primary) 48%, var(--krm-border-strong));
}

.krm-select-shell.open > .krm-select-trigger,
.krm-select-trigger:focus-visible {
  outline: 0;
  border-color: var(--krm-primary);
  box-shadow: var(--krm-focus-ring);
}

.krm-select-value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.krm-select-chevron {
  flex: 0 0 auto;
  color: var(--krm-text-soft);
  font-size: .88rem;
  transform: translateY(-1px);
  transition: transform var(--krm-duration-fast) ease;
}

.krm-select-shell.open .krm-select-chevron {
  transform: rotate(180deg) translateY(1px);
}

.krm-select-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  width: max(100%, max-content);
  min-width: 100%;
  max-width: min(360px, calc(100vw - 28px));
  max-height: 310px;
  overflow: auto;
  padding: 7px;
  background: var(--krm-menu-bg);
  color: var(--krm-text-main);
  border: 1px solid var(--krm-border-soft);
  border-radius: var(--krm-radius-md);
  box-shadow: var(--krm-shadow-menu);
}

.krm-select-option {
  width: 100%;
  min-height: 35px;
  display: flex;
  align-items: center;
  border: 0;
  border-radius: var(--krm-radius-sm);
  padding: .48rem .65rem;
  background: transparent;
  color: var(--krm-text-main);
  font: inherit;
  font-size: .86rem;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

.krm-select-option:hover,
.krm-select-option:focus-visible {
  outline: 0;
  background: var(--krm-menu-hover);
  color: var(--krm-text-main);
}

.krm-select-option.active {
  background: var(--krm-menu-active);
  color: var(--krm-text-main);
}

.krm-select-option.active::after {
  content: "✓";
  margin-left: auto;
  padding-left: .9rem;
  color: var(--krm-primary);
  font-weight: 800;
}

.krm-select-option:disabled,
.krm-select-shell.is-disabled .krm-select-trigger {
  opacity: .48;
  cursor: not-allowed;
}

/* Menus inline de acompanhamento usam o mesmo sistema, sem parecer formulário */
.krm-select-inline {
  display: inline-flex;
  width: auto;
  vertical-align: baseline;
}

.krm-select-inline .krm-select-trigger {
  width: auto;
  min-height: 28px;
  padding: .14rem 1.45rem .14rem .4rem;
  border-color: transparent;
  border-bottom: 1px dashed color-mix(in srgb, var(--krm-primary) 58%, transparent);
  border-radius: var(--krm-radius-xs);
  background: transparent;
  box-shadow: none;
  color: var(--krm-primary);
  font-size: inherit;
  font-weight: 750;
  letter-spacing: .015em;
}

.krm-select-inline .krm-select-trigger:hover,
.krm-select-inline.open .krm-select-trigger {
  background: var(--krm-primary-soft);
  border-color: color-mix(in srgb, var(--krm-primary) 36%, var(--krm-border-soft));
}

.krm-select-inline .krm-select-chevron {
  position: absolute;
  right: .4rem;
  color: currentColor;
}

.krm-select-inline .krm-select-menu {
  min-width: max(190px, 100%);
  width: max-content;
}

/* O select antigo não deve competir visualmente com o wrapper customizado */
.team-inline-select[data-krm-enhanced] {
  border: 0 !important;
}

/* Popovers nativos do KRM seguem a mesma superfície e nunca herdam cores do SO */
.workspace-switcher-panel,
.admin-menu-panel,
.date-filter-popover,
.generated-link {
  background: var(--krm-menu-bg);
  color: var(--krm-text-main);
  border-color: var(--krm-border-soft);
  box-shadow: var(--krm-shadow-menu);
}

.workspace-option,
.admin-menu-panel a {
  color: var(--krm-text-main);
}

.workspace-option small,
.workspace-switcher-panel > strong,
.generated-link small {
  color: var(--krm-text-soft);
}

.workspace-option:hover,
.workspace-option.active,
.admin-menu-panel a:hover {
  background: var(--krm-menu-hover);
  color: var(--krm-text-main);
}

/* Calendário já aprovado: somente blindagem de tema; geometria permanece intacta */
.date-filter-popover,
.calendar-month,
.calendar-days,
.calendar-weekdays,
.date-filter-presets {
  color: var(--krm-text-main);
}

.calendar-day,
.calendar-nav,
.date-filter-presets button {
  color: var(--krm-text-main);
}

.calendar-day.outside {
  color: var(--krm-text-soft);
}

/* Acompanhamento: cada frase tem o corredor horizontal inteiro */
.team-grant-natural-language,
.team-inline-grant-form {
  overflow: visible;
}

.team-grant-sentence {
  min-height: 48px;
}

/* Badges e estados respeitam os temas sem depender de cinzas hardcoded */
.badge,
.current-user {
  background: var(--krm-surface-3);
  color: var(--krm-text-main);
}

/* Acessibilidade: foco sempre visível, mas sem halos excessivos ao clique comum */
.krm-select-trigger:focus:not(:focus-visible),
.krm-select-option:focus:not(:focus-visible) {
  box-shadow: var(--krm-shadow-control);
}

@media (max-width: 900px) {
  .krm-select-menu {
    width: 100%;
    max-width: calc(100vw - 28px);
  }

  .team-grant-natural-language,
  .team-inline-grant-form {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .krm-select-trigger,
  .krm-select-chevron,
  .krm-select-option {
    transition: none !important;
  }
}

/* ==========================================================
   SuperPatch 1.5 — Ver como + Importador inteligente
   ========================================================== */
.view-as-bar {
  position: sticky;
  top: var(--topbar-height, 0px);
  z-index: 45;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 30px;
  padding: .25rem 1rem;
  background: color-mix(in srgb, var(--krm-primary) 11%, var(--krm-surface-raised));
  border-bottom: 1px solid color-mix(in srgb, var(--krm-primary) 25%, var(--krm-border-soft));
  color: var(--krm-text-soft);
  font-size: .76rem;
  backdrop-filter: blur(10px);
}
.view-as-bar strong { color: var(--krm-text-main); }
.view-as-bar a {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: var(--krm-radius-pill);
  color: var(--krm-text-soft);
  text-decoration: none;
}
.view-as-bar a:hover { background: var(--krm-primary-soft); color: var(--krm-primary); }

.team-member-line { padding: 0; }
.team-member-view-link {
  display: flex;
  align-items: baseline;
  gap: .35rem;
  width: 100%;
  min-width: 0;
  padding: .34rem .42rem;
  border-radius: var(--krm-radius-sm);
  color: inherit;
  text-decoration: none;
  transition: background-color .14s ease, box-shadow .14s ease;
}
.team-member-view-link:hover,
.team-member-view-link:focus-visible {
  background: color-mix(in srgb, var(--krm-primary) 8%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--krm-primary) 12%, transparent);
}
.team-member-view-link strong { color: var(--krm-text-main); }
.team-member-view-link span { color: var(--krm-text-soft); }

/* Controles inline: cor + hover bastam; sem aparência de hyperlink. */
.team-inline-select,
.krm-select-inline .krm-select-trigger {
  text-decoration: none !important;
}
.team-inline-select { border-bottom-color: transparent !important; }
.krm-select-inline .krm-select-trigger { border-color: transparent; }
.krm-select-inline .krm-select-trigger:hover,
.krm-select-inline.open .krm-select-trigger {
  background: var(--krm-primary-soft);
  border-color: color-mix(in srgb, var(--krm-primary) 18%, transparent);
}

.import-intro-panel { max-width: 920px; }
.import-upload-form { margin: 0; }
.import-primary-action { justify-content: flex-end; }
.import-preview-heading,
.import-preview-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.import-preview-heading h2 { margin: 0 0 .18rem; font-size: 1.05rem; }
.import-preview-heading small,
.import-preview-footer small { color: var(--krm-text-soft); }
.import-preview-controls {
  display: grid;
  grid-template-columns: minmax(180px, .55fr) minmax(220px, 1fr);
  gap: .7rem;
  margin: .9rem 0;
  max-width: 720px;
}
.import-mapping-scroll {
  overflow-x: auto;
  padding-bottom: .35rem;
  scrollbar-gutter: stable;
}
.import-mapping-grid {
  display: grid;
  grid-template-columns: repeat(var(--import-columns), minmax(165px, 1fr));
  min-width: max-content;
  border: 1px solid var(--krm-border-soft);
  border-radius: var(--krm-radius-lg);
  overflow: hidden;
  background: var(--krm-surface-raised);
}
.import-column-map {
  display: grid;
  gap: .35rem;
  padding: .62rem;
  background: color-mix(in srgb, var(--krm-primary) 5%, var(--krm-surface-raised));
  border-right: 1px solid var(--krm-border-soft);
  border-bottom: 1px solid var(--krm-border-soft);
}
.import-column-map > span {
  min-height: 1.1rem;
  font-size: .72rem;
  font-weight: 700;
  color: var(--krm-text-soft);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.import-preview-cell {
  min-width: 0;
  padding: .52rem .62rem;
  border-right: 1px solid var(--krm-border-soft);
  border-bottom: 1px solid var(--krm-border-soft);
  color: var(--krm-text-main);
  font-size: .77rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.import-preview-footer { margin-top: .8rem; }

@media (max-width: 760px) {
  .import-preview-controls { grid-template-columns: 1fr; }
  .import-preview-heading,
  .import-preview-footer { align-items: stretch; flex-direction: column; }
}

/* SuperPatch 1.5 — importador em lote */
.import-intro-panel{max-width:none;min-height:320px;display:grid;place-items:center;padding:2rem}.import-upload-form{width:min(760px,100%);display:grid;gap:.8rem}.import-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}.import-drop-card{min-height:210px;border:1px dashed color-mix(in srgb,var(--krm-primary) 35%,var(--krm-border-soft));border-radius:var(--krm-radius-lg);background:color-mix(in srgb,var(--krm-primary) 3%,var(--krm-surface-raised));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;cursor:pointer;text-align:center;transition:.15s ease}.import-drop-card:hover{background:var(--krm-primary-soft);border-color:color-mix(in srgb,var(--krm-primary) 55%,var(--krm-border-soft))}.import-drop-card>strong{font-size:1rem;color:var(--krm-text-main)}.import-drop-card>span:not(.button),.import-drop-card>small{color:var(--krm-text-soft);font-size:.76rem}.import-analyze-button{justify-self:end}.import-krampus-whisper{margin:.25rem 0 0;color:var(--krm-text-soft);opacity:.38;font-size:.68rem;text-align:center}.import-page-drop-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:color-mix(in srgb,var(--krm-surface) 80%,transparent);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .12s ease}.import-page-drop-overlay.active{opacity:1}.import-page-drop-overlay>div{padding:1.2rem 2rem;border:1px solid var(--krm-border-soft);border-radius:var(--krm-radius-lg);background:var(--krm-surface-raised);box-shadow:var(--krm-shadow-popover);display:grid;gap:.2rem;text-align:center}.import-page-drop-overlay span{font-size:.75rem;color:var(--krm-text-soft)}.import-batch-list{display:grid;gap:.55rem;margin-top:1rem}.import-file-review{border:1px solid var(--krm-border-soft);border-radius:var(--krm-radius-lg);background:var(--krm-surface-raised);overflow:hidden}.import-file-review.needs-review{border-color:color-mix(in srgb,#d8a63a 45%,var(--krm-border-soft))}.import-file-summary{display:flex;align-items:center;padding:.25rem .55rem}.import-file-check{padding:.5rem;display:grid;place-items:center}.import-file-toggle{flex:1;border:0;background:transparent;color:inherit;padding:.55rem .4rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;cursor:pointer}.import-file-toggle>span{display:grid;gap:.1rem}.import-file-toggle small{font-size:.7rem;color:var(--krm-text-soft);font-weight:400}.import-file-toggle em{font-style:normal;font-size:.7rem;color:var(--krm-primary)}.needs-review .import-file-toggle em{color:#b98519}.import-file-details{border-top:1px solid var(--krm-border-soft);padding:.8rem}.import-file-details.hidden{display:none}.import-header-choice{max-width:220px;margin-bottom:.7rem}.import-header-choice label{font-size:.72rem}.import-file-review .import-mapping-grid{border-radius:var(--krm-radius-md)}


/* SuperPatch 1.5 — Dashboard gráfico compacto */
.dashboard-chart-panel{position:relative;margin-bottom:18px;overflow:visible}.dashboard-chart-head{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.dashboard-chart-head h2{font-size:.98rem;margin:0}.dashboard-chart-head small{display:block;color:var(--muted);font-size:.72rem;margin-top:.1rem}.dashboard-chart-toggle{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border:1px solid var(--krm-border, var(--line));border-radius:var(--krm-radius-md,10px);background:var(--krm-surface-raised,var(--surface));color:var(--green-2);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.dashboard-chart-toggle:hover{background:color-mix(in srgb,var(--green-2) 8%,var(--surface));border-color:color-mix(in srgb,var(--green-2) 32%,var(--line));transform:translateY(-1px)}.chart-mode-icon{width:18px;height:18px;fill:currentColor}.dashboard-chart-panel[data-chart-mode="funnel"] .chart-mode-icon-funnel,.dashboard-chart-panel[data-chart-mode="pie"] .chart-mode-icon-pie{display:block}.dashboard-chart-panel[data-chart-mode="funnel"] .chart-mode-icon-pie,.dashboard-chart-panel[data-chart-mode="pie"] .chart-mode-icon-funnel{display:none}.dashboard-chart-stage{min-height:260px;position:relative}.dashboard-funnel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:.2rem 4% 1rem}.dashboard-funnel-row{height:36px;min-width:28%;max-width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1rem;color:#fff;clip-path:polygon(4% 0,96% 0,100% 100%,0 100%);border-radius:4px;transition:filter .14s ease,transform .14s ease;cursor:default;text-shadow:0 1px 1px rgba(0,0,0,.18)}.dashboard-funnel-row:hover{filter:brightness(1.06);transform:scale(1.008)}.dashboard-funnel-row span{font-size:.75rem;font-weight:700}.dashboard-funnel-row strong{font-size:.88rem}.dashboard-pie{display:grid;grid-template-columns:minmax(220px,300px) minmax(220px,1fr);gap:1.4rem;align-items:center;justify-content:center;padding:.2rem 2% .7rem}.dashboard-pie-svg{width:min(100%,270px);height:auto;justify-self:center;overflow:visible}.dashboard-pie-svg path{transition:opacity .15s ease,transform .15s ease;transform-origin:120px 120px;outline:none}.dashboard-pie-svg path:hover,.dashboard-pie-svg path:focus{opacity:.86;transform:scale(1.018)}.dashboard-pie-hole{fill:var(--krm-surface,var(--surface))}.dashboard-pie-total{fill:var(--text);font-size:25px;font-weight:800}.dashboard-pie-caption{fill:var(--muted);font-size:11px}.dashboard-pie-legend{display:grid;gap:.38rem;align-content:center}.dashboard-pie-legend>div{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:.55rem;font-size:.76rem;padding:.24rem 0}.dashboard-pie-legend i{width:8px;height:8px;border-radius:999px;background:var(--legend)}.dashboard-pie-legend span{color:var(--muted)}.dashboard-pie-legend strong{font-size:.78rem}.dashboard-chart-tooltip{position:absolute;z-index:20;pointer-events:none;max-width:210px;padding:.48rem .62rem;border:1px solid var(--krm-border,var(--line));border-radius:var(--krm-radius-md,10px);background:var(--krm-surface-popover,var(--surface));color:var(--text);box-shadow:var(--krm-shadow-popover,0 8px 24px rgba(0,0,0,.12));font-size:.72rem;font-weight:650}.dashboard-recent-panel{margin-top:0}
@media(max-width:760px){.dashboard-pie{grid-template-columns:1fr}.dashboard-pie-legend{grid-template-columns:1fr 1fr}.dashboard-chart-stage{min-height:220px}.dashboard-funnel{padding-left:0;padding-right:0}.dashboard-funnel-row{height:34px}.dashboard-chart-head small{display:none}}

/* SuperPatch 1.5 — fila incremental do importador */
.import-queue-form{display:block}.import-batch-panel .import-krampus-whisper{margin-top:.8rem}.import-page-drop-overlay strong{font-size:1rem}.import-page-drop-overlay span{font-size:.76rem}.import-page-drop-overlay.active{display:grid}.import-batch-panel .button[for="importFiles"]{cursor:pointer}

/* SuperPatch 1.5 — Dashboard compacto */
.dashboard-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:16px;align-items:stretch}.dashboard-overview-grid>.panel{margin:0;min-width:0}.dashboard-overview-grid .dashboard-chart-stage{min-height:190px}.dashboard-overview-grid .dashboard-funnel{gap:3px;padding:0 2% .45rem}.dashboard-overview-grid .dashboard-funnel-row{height:28px;padding:0 .75rem}.dashboard-overview-grid .dashboard-pie{grid-template-columns:minmax(150px,210px) minmax(170px,1fr);gap:.75rem;padding:0}.dashboard-overview-grid .dashboard-pie-svg{width:min(100%,190px)}.dashboard-recent-panel .lead-row{padding:.58rem .15rem}.dashboard-recent-panel h2{margin-bottom:.55rem}@media(max-width:900px){.dashboard-overview-grid{grid-template-columns:1fr}.dashboard-overview-grid .dashboard-chart-stage{min-height:210px}}
/* SuperPatch 1.5 — Agenda e Retornos */
.return-center-toggle{position:relative;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--green-2);cursor:pointer}.return-center-toggle span{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:10px;background:var(--green-2);color:#fff;font-size:10px;line-height:17px}.return-drawer{position:fixed;z-index:150;right:0;top:0;height:100vh;width:min(390px,92vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:-14px 0 38px rgba(0,0,0,.14);transform:translateX(105%);transition:transform .18s ease;padding:18px;overflow:auto}.return-drawer.open{transform:translateX(0)}.return-drawer-backdrop{position:fixed;inset:0;z-index:149;background:rgba(0,0,0,.18)}.return-drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.return-drawer-head button{border:0;background:none;color:var(--text);font-size:24px;cursor:pointer}.return-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.return-item small,.return-item time{display:block;color:var(--muted);font-size:.72rem}.return-item-actions{display:flex;gap:5px;align-items:center}.return-item-actions button,.return-item-actions a{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface-raised,var(--surface));color:var(--text);text-decoration:none;cursor:pointer}.agenda-heading{display:flex;justify-content:space-between;align-items:center}.agenda-view-switch{display:flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:11px}.agenda-view-switch a{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:.78rem}.agenda-view-switch a.active{background:var(--green-2);color:#fff}.agenda-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px}.agenda-day{font-size:.78rem;color:var(--muted);margin:15px 0 6px}.agenda-event{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:10px 4px;border-bottom:1px solid var(--line)}.agenda-event time{font-weight:800;color:var(--green-2)}.agenda-event small,.agenda-event span{display:block;color:var(--muted);font-size:.73rem;margin-top:2px}.agenda-create h2{font-size:1rem}@media(max-width:850px){.agenda-layout{grid-template-columns:1fr}.agenda-heading{align-items:flex-start;gap:10px;flex-direction:column}}
/* SuperPatch 1.5 — polimento visual + Agenda + Distribuição */
.user-menu{position:relative}.user-menu-toggle{border:0;background:transparent;cursor:pointer}.user-menu-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:180;min-width:150px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 12px 30px rgba(0,0,0,.16)}.user-menu-panel a,.user-menu-panel button{display:block;width:100%;padding:8px 10px;border:0;background:none;color:var(--text);text-align:left;text-decoration:none;border-radius:8px;cursor:pointer}.user-menu-panel a:hover,.user-menu-panel button:hover{background:color-mix(in srgb,var(--green-2) 9%,transparent)}
.dashboard-overview-grid .dashboard-pie{display:flex;flex-direction:column;gap:.5rem}.dashboard-overview-grid .dashboard-pie-svg{width:min(100%,290px)}.dashboard-pie-legend{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:.15rem .8rem}.dashboard-funnel{align-items:center;gap:0!important}.dashboard-funnel-row{clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)!important;border-radius:0!important;justify-content:center!important;gap:1rem!important}.dashboard-funnel-row+ .dashboard-funnel-row{margin-top:-1px}
.return-drawer{top:70px;right:14px;height:auto;max-height:min(440px,70vh);width:min(350px,90vw);border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(14px);box-shadow:0 16px 42px rgba(0,0,0,.18);padding:14px;overflow:hidden}.return-drawer #returnDrawerList{max-height:330px;overflow:auto}.return-drawer-backdrop{background:transparent;pointer-events:none}
.krm-calendar{max-width:1100px;margin:auto}.krm-calendar-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px}.krm-calendar-head strong{text-align:center;text-transform:capitalize}.krm-calendar-head button{border:0;background:transparent;color:var(--text);font-size:26px;cursor:pointer}.krm-calendar-week,.krm-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.krm-calendar-week span{padding:7px;text-align:center;color:var(--muted);font-size:.72rem}.krm-calendar-day{min-height:105px;border-top:1px solid var(--line);border-right:1px solid var(--line);padding:7px;cursor:pointer;transition:background .14s}.krm-calendar-day:hover{background:color-mix(in srgb,var(--green-2) 5%,transparent)}.krm-calendar-day.outside{opacity:.38}.krm-calendar-number{font-size:.75rem;color:var(--muted)}.agenda-event-chip{display:block;margin-top:5px;padding:5px 6px;border:1px solid color-mix(in srgb,var(--green-2) 22%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--green-2) 8%,var(--surface));font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:.14s}.agenda-event-chip:hover{background:color-mix(in srgb,var(--green-2) 16%,var(--surface));transform:translateY(-1px)}.agenda-quick-dialog{width:min(440px,92vw);border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 20px 60px rgba(0,0,0,.25)}.agenda-quick-dialog::backdrop{background:rgba(0,0,0,.24)}.agenda-quick-dialog form{display:grid;gap:10px}.agenda-quick-dialog label{display:grid;gap:4px;font-size:.76rem}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:none;color:var(--text);font-size:22px}.agenda-lead-results{display:grid;gap:3px}.agenda-lead-result{padding:6px;border-radius:8px;cursor:pointer}.agenda-lead-result:hover{background:color-mix(in srgb,var(--green-2) 10%,transparent)}
.distribution-queue-list{display:grid;gap:6px}.distribution-queue-card{display:flex;justify-content:space-between;align-items:center;padding:9px 4px;border-bottom:1px solid var(--line)}.distribution-queue-card small{display:block;color:var(--muted);margin-top:2px}.queue-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green-2);margin-right:7px}.queue-dot.paused{background:var(--muted)}.distribution-create-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.distribution-create-form label{display:grid;gap:4px;font-size:.72rem}.distribution-create-form fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:8px}.queue-member-check{display:inline-flex!important;margin-right:12px}.distribution-create-form>.button{justify-self:start}@media(max-width:760px){.krm-calendar-day{min-height:72px;padding:4px}.distribution-create-form{grid-template-columns:1fr 1fr}.dashboard-pie-legend{grid-template-columns:1fr}}

/* SuperPatch 1.5 — fontes das filas de distribuição */
.distribution-queue-main{min-width:0;flex:1}.distribution-source-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:7px}.distribution-source-label{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.distribution-source-chip{margin:0}.distribution-source-chip button{border:1px solid var(--line);background:var(--surface-raised,var(--surface));color:var(--text);border-radius:999px;padding:3px 8px;font:inherit;font-size:.7rem;cursor:pointer;transition:background .15s ease,border-color .15s ease}.distribution-source-chip button:hover{background:var(--surface-hover);border-color:var(--green-2)}.distribution-source-connect{display:flex;align-items:center;gap:6px;margin-top:7px;max-width:440px}.distribution-source-connect select{min-width:0;flex:1}.distribution-source-connect .button{flex:0 0 auto}@media(max-width:760px){.distribution-queue-card{align-items:flex-start}.distribution-source-connect{max-width:none;width:100%}}

/* SuperPatch 1.5 — Bloco C: equipe, arquivamento e duplicidades */
.team-member-line{position:relative;padding-right:1.6rem}.team-member-remove-form{margin-left:auto;opacity:0;transition:opacity .15s ease}.team-member-line:hover .team-member-remove-form,.team-member-line:focus-within .team-member-remove-form{opacity:1}.team-member-more{border:0;background:transparent;color:var(--muted);width:1.45rem;height:1.45rem;border-radius:var(--krm-radius-sm,8px);cursor:pointer}.team-member-more:hover{background:color-mix(in srgb,var(--danger,#d75d5d) 10%,transparent);color:var(--danger,#d75d5d)}
.custody-review-list{margin-top:.7rem;border-top:1px solid var(--line);padding-top:.55rem;display:grid;gap:.35rem}.custody-review-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.42rem .15rem}.custody-review-row>div{display:grid;gap:.12rem}.custody-review-row small{font-size:.7rem;color:var(--muted)}.custody-review-form{display:flex;gap:.4rem;align-items:center}.custody-review-form select{min-width:12.5rem}
.connection-create-stack{display:grid;gap:.5rem}.connection-link-form{display:flex;justify-content:flex-end}.connection-accept-panel{max-width:560px;margin:8vh auto 0}.connection-accept-panel h1{font-size:1.35rem;margin:.45rem 0}.connection-accept-actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}.compact-state-panel{max-width:520px;margin:10vh auto 0}
.duplicate-hint{display:inline-flex;align-items:center;justify-content:center;margin-left:.35rem;padding:.08rem .32rem;border-radius:999px;background:color-mix(in srgb,var(--green-2) 12%,transparent);color:var(--green-2);font-size:.62rem;font-weight:750;vertical-align:middle;cursor:help}
.page-heading-actions{display:flex;gap:.45rem;align-items:center}.archived-heading{align-items:flex-start}.archived-list-panel{display:grid;gap:.2rem}.archived-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.62rem .2rem;border-bottom:1px solid var(--line)}.archived-row>div{display:grid;gap:.12rem}.archived-row small,.archived-row>span{font-size:.72rem;color:var(--muted)}.archived-snapshot{opacity:.82}
.kanban-archived-toggle{width:100%;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);font-size:.7rem;padding:.48rem .35rem;cursor:pointer;text-align:left}.kanban-archived-toggle:hover{color:var(--text);background:color-mix(in srgb,var(--green-2) 5%,transparent)}.kanban-archived-cards{display:grid;gap:.4rem;padding:.2rem .25rem .55rem}.archived-card{opacity:.58;filter:saturate(.65);cursor:default}.archived-card:hover{opacity:.78}
@media(max-width:760px){.custody-review-row{align-items:flex-start;flex-direction:column}.custody-review-form{width:100%}.custody-review-form select{min-width:0;flex:1}.team-member-remove-form{opacity:1}.page-heading-actions{flex-wrap:wrap}}

/* SuperPatch 1.5 — acabamento final da Agenda */
.agenda-event-dialog{width:min(430px,92vw);padding:0;border:1px solid var(--line);border-radius:var(--krm-radius-lg,16px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 22px 70px rgba(0,0,0,.28));overflow:hidden}.agenda-event-dialog::backdrop{background:rgba(4,10,18,.38);backdrop-filter:blur(2px)}.agenda-event-card{position:relative;padding:22px}.agenda-event-card-head{padding-right:34px;margin-bottom:18px}.agenda-event-type{display:inline-flex;padding:4px 8px;margin-bottom:8px;border-radius:999px;background:color-mix(in srgb,var(--green-2) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--green-2) 25%,var(--line));color:var(--green-2);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.agenda-event-card h2{margin:0;font-size:1.22rem}.agenda-event-card-body{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agenda-event-detail{min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:color-mix(in srgb,var(--surface-raised,var(--surface)) 72%,transparent)}.agenda-event-detail small{display:block;margin-bottom:3px;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.agenda-event-detail strong{display:block;overflow-wrap:anywhere;font-size:.84rem}.agenda-event-dialog .dialog-close{cursor:pointer;border-radius:9px;width:30px;height:30px;display:grid;place-items:center;transition:background .14s,color .14s}.agenda-event-dialog .dialog-close:hover{background:color-mix(in srgb,var(--green-2) 10%,transparent);color:var(--green-2)}@media(max-width:560px){.agenda-event-card-body{grid-template-columns:1fr}}

/* SuperPatch 1.5 — Agenda editável + Patch Notes finais */
.agenda-event-tools{position:absolute;right:12px;top:10px;display:flex;align-items:center;gap:4px;z-index:2}.agenda-event-tools .dialog-close{position:static}.agenda-event-edit{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:17px;cursor:pointer;transition:background .14s,color .14s,transform .14s}.agenda-event-edit:hover,.agenda-event-edit.active{background:color-mix(in srgb,var(--green-2) 10%,transparent);color:var(--green-2);transform:translateY(-1px)}.agenda-event-edit[hidden]{display:none}.agenda-event-notes{grid-column:1/-1}.agenda-event-edit-form{display:grid;gap:14px}.agenda-event-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agenda-event-edit-grid label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:.72rem;font-weight:700}.agenda-event-edit-grid input,.agenda-event-edit-grid select,.agenda-event-edit-grid textarea,.agenda-edit-date-trigger{width:100%;min-width:0}.agenda-edit-lead-field,.agenda-edit-notes-field{grid-column:1/-1}.agenda-edit-date-field{position:relative}.agenda-edit-date-trigger{height:40px;padding:0 12px;text-align:left;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:var(--surface-raised,var(--surface));color:var(--text);cursor:pointer}.agenda-edit-date-trigger:hover{border-color:color-mix(in srgb,var(--green-2) 55%,var(--line))}.agenda-edit-calendar{position:absolute;z-index:15;left:0;top:calc(100% + 5px);width:300px;padding:10px;border:1px solid var(--line);border-radius:var(--krm-radius-lg,14px);background:var(--surface);box-shadow:var(--krm-shadow-popover,0 18px 55px rgba(0,0,0,.28))}.agenda-edit-calendar .calendar-month-header{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;margin-bottom:7px}.agenda-edit-calendar .calendar-month-header strong{text-align:center;text-transform:capitalize}.agenda-edit-calendar .calendar-nav{border:0;background:transparent;color:var(--text);font-size:20px;cursor:pointer}.agenda-edit-calendar .calendar-weekdays,.agenda-edit-calendar .calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.agenda-edit-calendar .calendar-weekdays span{text-align:center;padding:4px 0;color:var(--muted);font-size:.62rem}.agenda-edit-calendar .calendar-day{height:30px;border:0;border-radius:7px;background:transparent;color:var(--text);font-size:.7rem;cursor:pointer}.agenda-edit-calendar .calendar-day:hover{background:color-mix(in srgb,var(--green-2) 10%,transparent)}.agenda-edit-calendar .calendar-day.selected{background:var(--green-2);color:white}.agenda-edit-calendar .calendar-day.outside{opacity:.35}.agenda-event-edit-actions{display:flex;justify-content:flex-end;gap:8px}.agenda-event-edit-form .form-message{min-height:1em;margin:0;color:var(--danger,#d66);font-size:.72rem}@media(max-width:560px){.agenda-event-edit-grid{grid-template-columns:1fr}.agenda-edit-lead-field,.agenda-edit-notes-field{grid-column:auto}.agenda-edit-calendar{width:min(300px,78vw)}}

.release-notes-modal,.release-notes-page{--release-accent:var(--green-2)}.release-notes-modal{width:min(760px,100%);padding:34px}.release-notes-title{margin:0 0 2px;font-size:clamp(1.75rem,4vw,2.45rem);letter-spacing:-.035em}.release-notes-superpatch{margin:0 0 20px;color:var(--release-accent);font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;font-size:clamp(1.8rem,6vw,3.5rem);line-height:1;letter-spacing:.22em;text-transform:uppercase;text-shadow:0 1px 0 color-mix(in srgb,var(--release-accent) 24%,transparent)}.release-notes-modal>p,.release-notes-page>p{color:var(--muted);line-height:1.55}.release-notes-list{grid-template-columns:1fr 1fr;gap:9px 24px;margin:22px 0;padding-left:18px}.release-notes-list li{padding-right:6px;line-height:1.45}.release-notes-footer{margin-top:20px}.release-notes-page .release-notes-superpatch{font-size:clamp(2rem,7vw,4.2rem)}@media(max-width:680px){.release-notes-modal{padding:24px}.release-notes-list{grid-template-columns:1fr}.release-notes-superpatch{letter-spacing:.14em}}

/* SuperPatch 1.5 — Design System: componentes universais e fluxo personalizável */
.kanban-header{cursor:default}.kanban-header[draggable="true"]{cursor:grab}.kanban-header[draggable="true"]:active{cursor:grabbing}.kanban-column.stage-dragging{opacity:.55;transform:scale(.985)}.kanban-header-actions{display:flex;align-items:center;gap:6px}.kanban-stage-remove{width:22px;height:22px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .14s,background .14s,color .14s}.kanban-column:hover .kanban-stage-remove{opacity:1}.kanban-stage-remove:hover{background:color-mix(in srgb,var(--danger,#c85858) 12%,transparent);color:var(--danger,#c85858)}.kanban-stage-inline-input{width:min(170px,100%);border:1px solid color-mix(in srgb,var(--green-2) 60%,var(--line));border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-weight:700;padding:4px 7px;outline:none}.kanban-add-stage{flex:0 0 auto}.krm-dialog{width:min(440px,92vw);border:1px solid var(--line);border-radius:var(--krm-radius-lg,16px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 22px 70px rgba(0,0,0,.28));padding:22px}.krm-dialog::backdrop{background:rgba(4,10,18,.38);backdrop-filter:blur(2px)}.krm-dialog form{display:grid;gap:12px}.krm-dialog label{display:grid;gap:5px;color:var(--muted);font-size:.76rem;font-weight:700}.krm-dialog h2{margin:0}.krm-dialog .muted{margin:0;color:var(--muted);font-size:.8rem}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.button.danger{background:var(--danger,#b85c5c);border-color:var(--danger,#b85c5c)}
.dashboard-funnel-row[draggable="true"]{cursor:grab}.dashboard-funnel-row[draggable="true"]:active{cursor:grabbing}.dashboard-funnel-row.dragging{opacity:.55}

/* Calendário KRM universal. Os inputs reais permanecem no DOM como hidden para manter formulários e APIs intactos. */
.krm-date-picker{position:relative;display:block;width:100%}.krm-date-trigger{width:100%;min-height:40px;padding:0 12px;text-align:left;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:var(--surface-raised,var(--surface));color:var(--text);font:inherit;cursor:pointer;transition:border-color .14s,box-shadow .14s,background .14s}.krm-date-trigger:hover,.krm-date-trigger:focus-visible{border-color:color-mix(in srgb,var(--green-2) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--green-2) 10%,transparent);outline:none}.krm-date-popover{position:absolute;z-index:90;left:0;top:calc(100% + 6px);width:min(310px,88vw);padding:11px;border:1px solid var(--line);border-radius:var(--krm-radius-lg,14px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 18px 55px rgba(0,0,0,.28))}.krm-date-popover .calendar-month-header{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:7px}.krm-date-popover .calendar-month-header strong{text-align:center;text-transform:capitalize}.krm-date-popover .calendar-nav{height:30px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:20px;cursor:pointer}.krm-date-popover .calendar-nav:hover{background:color-mix(in srgb,var(--green-2) 9%,transparent)}.krm-date-popover .calendar-weekdays,.krm-date-popover .calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.krm-date-popover .calendar-weekdays span{text-align:center;padding:4px 0;color:var(--muted);font-size:.62rem}.krm-date-popover .calendar-day{height:31px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:.71rem;cursor:pointer}.krm-date-popover .calendar-day:hover{background:color-mix(in srgb,var(--green-2) 10%,transparent)}.krm-date-popover .calendar-day.selected{background:var(--green-2);color:#fff}.krm-date-popover .calendar-day.outside{opacity:.34}.krm-date-time-row{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.krm-date-time-row select{width:74px}.krm-date-actions{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.krm-date-actions>button:first-child{border:0;background:transparent;color:var(--green-2);cursor:pointer;padding:7px 8px;border-radius:8px}.krm-date-actions>button:first-child:hover{background:color-mix(in srgb,var(--green-2) 9%,transparent)}

/* Cartinha ao Papai Noel */
.app-footer{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap}.footer-feedback-button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;cursor:pointer;padding:3px 5px;border-radius:7px;transition:background .14s,color .14s}.footer-feedback-button:hover{color:var(--green-2);background:color-mix(in srgb,var(--green-2) 8%,transparent)}.feedback-dialog{width:min(520px,92vw)}.feedback-privacy{margin:0;padding:9px 10px;border-radius:10px;background:color-mix(in srgb,var(--green-2) 6%,transparent);color:var(--muted);font-size:.72rem}.feedback-asterisk{color:var(--green-2);cursor:help;margin-left:2px}.feedback-dialog textarea{resize:vertical;min-height:110px}

@media(max-width:700px){.kanban-stage-remove{opacity:1}.krm-date-popover{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(330px,92vw);z-index:130}}

/* SuperPatch 1.5 — Cadastro rápido de leads */
.quick-lead-panel{max-width:920px;margin:0 auto;padding:clamp(18px,3vw,28px)}
.quick-lead-form{display:grid;gap:14px}.quick-lead-label{font-size:.82rem;color:var(--text)}
.quick-lead-textarea{min-height:260px;width:100%;resize:vertical;line-height:1.55;padding:16px 17px;border-radius:var(--krm-radius-lg,14px);background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text) 3%,transparent);transition:border-color .15s,box-shadow .15s,background .15s}
.quick-lead-textarea:focus{outline:none;border-color:color-mix(in srgb,var(--green-2) 65%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--green-2) 12%,transparent)}
.quick-lead-textarea::placeholder{color:var(--muted);opacity:.72}
.quick-lead-hint{display:grid;gap:3px;font-size:.72rem;line-height:1.45;color:var(--muted)}
.quick-lead-actions{align-items:center}.quick-lead-detailed-link{margin-right:auto;color:var(--muted);font-size:.74rem;text-decoration:none;cursor:pointer;transition:color .14s,background .14s;border-radius:8px;padding:5px 7px}.quick-lead-detailed-link:hover{color:var(--text);background:color-mix(in srgb,var(--green-2) 7%,transparent)}
@media(max-width:640px){.quick-lead-panel{padding:14px}.quick-lead-textarea{min-height:300px}.quick-lead-actions{flex-wrap:wrap}.quick-lead-detailed-link{order:3;width:100%;text-align:center;margin-right:0}}

/* ==========================================================
   SuperPatch 1.5 — Theme Engine v1
   Temas são pacotes de tokens semânticos. Novos temas devem
   acrescentar apenas um bloco html[data-theme="..."] e uma
   entrada no registro de temas; os componentes consomem tokens.
   ========================================================== */

:root,
html[data-theme="classic-light"] {
  --background: #f4f7f6;
  --surface: #ffffff;
  --line: #dce5e1;
  --text: #1f2925;
  --muted: #69756f;
  --green: #075e54;
  --green-2: #128c7e;
  --danger: #a93333;
  --theme-topbar: #075e54;
  --theme-surface-soft: #edf3f0;
  --theme-surface-hover: #e4efeb;
  --theme-badge: #e7eeeb;
  --theme-badge-text: #33423b;
  --chart-1: #128c7e;
  --chart-2: #2e9d86;
  --chart-3: #57ab82;
  --chart-4: #7fb976;
  --chart-5: #a9c66f;
  --chart-6: #d2c765;
  --chart-7: #d89b5b;
  --chart-8: #b76b67;
  color-scheme: light;
}

html[data-theme="classic-dark"] {
  --background: #111827;
  --surface: #1f2937;
  --line: #334155;
  --text: #e5e7eb;
  --muted: #94a3b8;
  --green: #0f766e;
  --green-2: #14b8a6;
  --danger: #ef6a6a;
  --theme-topbar: #0b4f49;
  --theme-surface-soft: #263244;
  --theme-surface-hover: #243b3a;
  --theme-badge: #334155;
  --theme-badge-text: #e5e7eb;
  --chart-1: #14b8a6;
  --chart-2: #36c7b8;
  --chart-3: #61cbb0;
  --chart-4: #87cda0;
  --chart-5: #aecf8e;
  --chart-6: #d3c971;
  --chart-7: #dfa15f;
  --chart-8: #c57975;
  color-scheme: dark;
}

/* Krampus: carvão, vinho e cobre envelhecido. */
html[data-theme="krampus"] {
  --background: #17110f;
  --surface: #241a17;
  --line: #4b3430;
  --text: #f0e7df;
  --muted: #b7a39a;
  --green: #782923;
  --green-2: #a33b32;
  --danger: #e45f55;
  --theme-topbar: #351512;
  --theme-surface-soft: #2e211d;
  --theme-surface-hover: #3a2722;
  --theme-badge: #4a302a;
  --theme-badge-text: #f3dfd5;
  --chart-1: #a33b32;
  --chart-2: #b6533d;
  --chart-3: #c36c45;
  --chart-4: #c9854e;
  --chart-5: #c99f61;
  --chart-6: #bfae79;
  --chart-7: #9f9275;
  --chart-8: #7f6d68;
  color-scheme: dark;
}

/* Cury: interpretação KRM da identidade clara branco + azul. */
html[data-theme="cury"] {
  --background: #f6f9ff;
  --surface: #ffffff;
  --line: #d9e5f4;
  --text: #17324d;
  --muted: #607890;
  --green: #0a4f9e;
  --green-2: #1672c4;
  --danger: #b64242;
  --theme-topbar: #0753a4;
  --theme-surface-soft: #edf5ff;
  --theme-surface-hover: #e2f0ff;
  --theme-badge: #e5f0fb;
  --theme-badge-text: #24547f;
  --chart-1: #0a5fb4;
  --chart-2: #1976c9;
  --chart-3: #318bd4;
  --chart-4: #52a0dc;
  --chart-5: #73b3e3;
  --chart-6: #93c4e6;
  --chart-7: #6f9fc7;
  --chart-8: #476f98;
  color-scheme: light;
}

/* Cury Espacial: mesma família azul em ambiente noturno. */
html[data-theme="cury-space"] {
  --background: #07111f;
  --surface: #0d1d31;
  --line: #203a58;
  --text: #e8f2ff;
  --muted: #92abc6;
  --green: #0f5fae;
  --green-2: #2b89e6;
  --danger: #ff7272;
  --theme-topbar: #081a31;
  --theme-surface-soft: #102640;
  --theme-surface-hover: #143150;
  --theme-badge: #173451;
  --theme-badge-text: #dbeeff;
  --chart-1: #2b89e6;
  --chart-2: #42a0f4;
  --chart-3: #5bb3ff;
  --chart-4: #74c2ff;
  --chart-5: #8bccec;
  --chart-6: #9bbcd5;
  --chart-7: #718fac;
  --chart-8: #4a6786;
  color-scheme: dark;
}

html[data-theme] body {
  background: var(--background);
  color: var(--text);
}

html[data-theme] .topbar,
html[data-theme] .sidebar-contact,
html[data-theme] .modal-contact {
  background: var(--theme-topbar);
}

html[data-theme] .panel,
html[data-theme] .card,
html[data-theme] .kanban-modal,
html[data-theme] .kanban-card,
html[data-theme] .release-notes-modal,
html[data-theme] .workspace-switcher-panel,
html[data-theme] .admin-menu-panel,
html[data-theme] .user-menu-panel,
html[data-theme] .krm-dialog,
html[data-theme] input,
html[data-theme] select,
html[data-theme] textarea,
html[data-theme] th {
  background-color: var(--surface);
  color: var(--text);
  border-color: var(--line);
}

html[data-theme] .kanban-column,
html[data-theme] .detail-grid > div,
html[data-theme] .project-tab,
html[data-theme] .button.secondary,
html[data-theme] .icon-button,
html[data-theme] .theme-toggle,
html[data-theme] .krm-select-trigger,
html[data-theme] .krm-calendar-popover {
  background-color: var(--theme-surface-soft);
  color: var(--text);
  border-color: var(--line);
}

html[data-theme] .lead-table-row:hover,
html[data-theme] .lead-table-row.active,
html[data-theme] .workspace-option:hover,
html[data-theme] .admin-menu-panel a:hover,
html[data-theme] .user-menu-panel a:hover,
html[data-theme] .user-menu-panel button:hover,
html[data-theme] .krm-select-option:hover {
  background-color: var(--theme-surface-hover);
}

html[data-theme] .badge {
  background-color: var(--theme-badge);
  color: var(--theme-badge-text);
}

/* Seletor de temas dentro do menu do perfil. */
.user-menu-panel {
  min-width: 220px;
}

.user-theme-section {
  margin: 5px 0;
  padding: 7px 5px 8px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.user-menu-section-title {
  display: block;
  padding: 2px 5px 6px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.theme-picker {
  display: grid;
  gap: 2px;
}

.user-menu-panel .theme-choice {
  display: grid;
  grid-template-columns: 16px 1fr 14px;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
}

.theme-choice b {
  opacity: 0;
  color: var(--green-2);
}

.theme-choice.active b {
  opacity: 1;
}

.theme-swatch {
  width: 14px;
  height: 14px;
  border: 1px solid color-mix(in srgb, var(--line) 75%, var(--text) 25%);
  border-radius: 50%;
  box-shadow: inset 0 0 0 3px rgba(255,255,255,.12);
}

.theme-swatch-classic-light { background: linear-gradient(135deg,#fff 0 50%,#128c7e 50%); }
.theme-swatch-classic-dark { background: linear-gradient(135deg,#111827 0 50%,#14b8a6 50%); }
.theme-swatch-krampus { background: linear-gradient(135deg,#17110f 0 50%,#a33b32 50%); }
.theme-swatch-cury { background: linear-gradient(135deg,#fff 0 50%,#1672c4 50%); }
.theme-swatch-cury-space { background: linear-gradient(135deg,#07111f 0 50%,#2b89e6 50%); }

.feedback-submessage {
  display: block;
  margin-top: -4px;
  color: var(--muted);
  font-size: 10px;
  font-style: italic;
}

/* Drag do fluxo: mesma linguagem em qualquer tema. */
.kanban-column.stage-dragging,
.dashboard-funnel-row.dragging {
  opacity: .58;
  outline: 2px solid color-mix(in srgb, var(--green-2) 72%, transparent);
  outline-offset: 2px;
}

.kanban-header[data-stage-handle][draggable="true"],
.dashboard-funnel-row[draggable="true"] {
  cursor: grab;
}

.kanban-header[data-stage-handle][draggable="true"]:active,
.dashboard-funnel-row[draggable="true"]:active {
  cursor: grabbing;
}

/* SuperPatch 1.5 — hotfix de edição do fluxo em workspaces de parceria. */
.kanban-header[data-stage-handle][draggable="true"]::before{content:"⋮⋮";font-size:.58rem;letter-spacing:-2px;color:var(--muted);opacity:0;transform:rotate(90deg);transition:opacity .14s ease;margin-right:4px}.kanban-column:hover .kanban-header[data-stage-handle][draggable="true"]::before{opacity:.48}.kanban-workflow-hint{font-size:.68rem;color:var(--muted);margin:0 0 8px;opacity:.78}


/* ==========================================================
   SuperPatch 1.5 Foundation — contrato visual de componentes
   ----------------------------------------------------------
   Dropdowns, calendários e campos usam a mesma geometria,
   tipografia e tokens em qualquer tema. Novos componentes
   devem consumir estes tokens em vez de cores hardcoded.
   ========================================================== */
:root {
  --krm-field-height: var(--krm-control-height, 42px);
  --krm-field-radius: var(--krm-radius-sm, 10px);
  --krm-field-font-size: .82rem;
  --krm-field-font-weight: 500;
  --krm-label-font-size: .72rem;
  --krm-label-font-weight: 700;
  --krm-label-gap: .38rem;
  --krm-popover-radius: var(--krm-radius-md, 14px);
  --krm-popover-padding: 10px;
}

/* Labels de campos são normalizados apenas em contextos de formulário.
   Nunca alteramos labels que funcionam como chips/toggles/filtros. */
html[data-theme] .field-label,
html[data-theme] .sidebar-section > label,
html[data-theme] .krm-dialog label,
html[data-theme] .agenda-quick-dialog label,
html[data-theme] .agenda-event-edit-form label,
html[data-theme] .import-upload-form > label,
html[data-theme] .filter-field > span {
  color: var(--muted);
  font-size: var(--krm-label-font-size);
  font-weight: var(--krm-label-font-weight);
  line-height: 1.25;
}

html[data-theme] .sidebar-section > label,
html[data-theme] .krm-dialog label,
html[data-theme] .agenda-quick-dialog label,
html[data-theme] .agenda-event-edit-form label,
html[data-theme] .import-upload-form > label {
  display: grid;
  gap: var(--krm-label-gap);
}

html[data-theme] input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
html[data-theme] select:not([data-krm-enhanced]),
html[data-theme] .krm-select-trigger,
html[data-theme] .krm-date-trigger {
  min-height: var(--krm-field-height);
  padding: .58rem .78rem;
  border-radius: var(--krm-field-radius);
  font-family: inherit;
  font-size: var(--krm-field-font-size);
  font-weight: var(--krm-field-font-weight);
  line-height: 1.2;
}

html[data-theme] textarea {
  border-radius: var(--krm-field-radius);
  font-family: inherit;
  font-size: var(--krm-field-font-size);
  line-height: 1.42;
  padding: .68rem .78rem;
}

html[data-theme] .krm-select-trigger,
html[data-theme] .krm-date-trigger {
  background: var(--krm-control-bg, var(--surface));
  color: var(--krm-text-main, var(--text));
  border: 1px solid var(--krm-border-strong, var(--line));
  box-shadow: var(--krm-shadow-control, none);
}

html[data-theme] .krm-select-trigger:hover,
html[data-theme] .krm-date-trigger:hover {
  background: var(--krm-control-hover, var(--theme-surface-hover));
  border-color: color-mix(in srgb, var(--krm-primary, var(--green-2)) 48%, var(--krm-border-strong, var(--line)));
}

html[data-theme] .krm-select-shell.open > .krm-select-trigger,
html[data-theme] .krm-date-picker:has(.krm-date-popover:not(.hidden)) > .krm-date-trigger {
  border-color: var(--krm-primary, var(--green-2));
  box-shadow: var(--krm-focus-ring, 0 0 0 3px color-mix(in srgb,var(--green-2) 18%,transparent));
}

html[data-theme] .krm-select-menu,
html[data-theme] .krm-date-popover {
  background: var(--krm-menu-bg, var(--surface));
  color: var(--krm-text-main, var(--text));
  border: 1px solid var(--krm-border-soft, var(--line));
  border-radius: var(--krm-popover-radius);
  box-shadow: var(--krm-shadow-menu, 0 18px 48px rgba(0,0,0,.18));
}

html[data-theme] .krm-select-option {
  min-height: 36px;
  padding: .5rem .7rem;
  border-radius: calc(var(--krm-field-radius) - 2px);
  font-size: var(--krm-field-font-size);
  color: var(--krm-text-main, var(--text));
}

html[data-theme] .krm-select-option:hover,
html[data-theme] .krm-select-option.active {
  background: var(--krm-menu-hover, var(--theme-surface-hover));
}

/* Calendário de campos: mesma linguagem do calendário de filtros. */
.krm-date-picker { position: relative; display: block; width: 100%; }
.krm-date-trigger { width: 100%; text-align: left; cursor: pointer; }
.krm-date-popover {
  position: absolute;
  z-index: 1400;
  top: calc(100% + 6px);
  left: 0;
  width: min(310px, calc(100vw - 32px));
  padding: var(--krm-popover-padding);
}
.krm-date-popover.hidden { display: none !important; }
.krm-date-popover .calendar-month-header {
  display: grid;
  grid-template-columns: 34px 1fr 34px;
  align-items: center;
  gap: 4px;
  margin-bottom: 7px;
}
.krm-date-popover .calendar-month-header strong {
  text-align: center;
  text-transform: capitalize;
  font-size: .78rem;
}
.krm-date-popover .calendar-nav {
  min-width: 34px;
  min-height: 34px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.krm-date-popover .calendar-nav:hover { background: var(--krm-menu-hover, var(--theme-surface-hover)); }
.krm-date-popover .calendar-weekdays,
.krm-date-popover .calendar-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.krm-date-popover .calendar-weekdays span {
  padding: 5px 1px;
  text-align: center;
  color: var(--muted);
  font-size: .62rem;
  font-weight: 700;
}
.krm-date-popover .calendar-day {
  aspect-ratio: 1;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: inherit;
  font-size: .7rem;
  cursor: pointer;
}
.krm-date-popover .calendar-day:hover { background: var(--krm-menu-hover, var(--theme-surface-hover)); }
.krm-date-popover .calendar-day.outside { opacity: .38; }
.krm-date-popover .calendar-day.selected {
  background: color-mix(in srgb, var(--krm-primary, var(--green-2)) 20%, var(--krm-control-bg, var(--surface)));
  border-color: var(--krm-primary, var(--green-2));
  color: var(--krm-text-main, var(--text));
  font-weight: 800;
}
.krm-date-popover .krm-date-time-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 7px;
  padding-top: 9px;
  margin-top: 8px;
  border-top: 1px solid var(--krm-border-soft, var(--line));
}
.krm-date-popover .krm-date-time-row select[data-krm-native] {
  width: 100%;
  min-height: 38px;
  padding: .42rem .58rem;
  background: var(--krm-control-bg, var(--surface));
  color: var(--krm-text-main, var(--text));
  border: 1px solid var(--krm-border-strong, var(--line));
  border-radius: 8px;
  font: inherit;
  font-size: .76rem;
}
.krm-date-popover .krm-date-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 9px;
}
.krm-date-popover .krm-date-actions > button:first-child {
  border: 0;
  background: transparent;
  color: var(--krm-primary, var(--green-2));
  font-size: .72rem;
  cursor: pointer;
}
.krm-date-popover .krm-date-actions .button { min-height: 36px; padding: .45rem .8rem; }

/* Central: evita saltos de largura e mantém todos os controles equivalentes. */
.lead-detail-panel .sidebar-section input,
.lead-detail-panel .sidebar-section textarea,
.lead-detail-panel .sidebar-section .krm-select-shell,
.lead-detail-panel .sidebar-section .krm-date-picker { width: 100%; min-width: 0; }


/* ==========================================================
   Hotfix Foundation UI v2 — filtros compactos e consistentes
   ========================================================== */
html[data-theme] .filter-chip-checkbox,
html[data-theme] .filter-archived-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start;
  grid-template-columns: none !important;
  gap: 6px !important;
  min-height: 34px;
  padding: 6px 9px !important;
  margin: 0;
  border: 1px solid var(--krm-border-soft, var(--line));
  border-radius: 999px;
  background: color-mix(in srgb, var(--krm-control-bg, var(--surface)) 92%, transparent);
  color: var(--muted);
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap;
  cursor: pointer;
}
html[data-theme] .filter-chip-checkbox:hover,
html[data-theme] .filter-archived-toggle:hover {
  background: var(--krm-control-hover, var(--theme-surface-hover));
  border-color: color-mix(in srgb, var(--krm-primary, var(--green-2)) 34%, var(--krm-border-soft, var(--line)));
}
html[data-theme] .filter-chip-checkbox:has(input:checked),
html[data-theme] .filter-archived-toggle:has(input:checked) {
  color: var(--krm-text-main, var(--text));
  background: color-mix(in srgb, var(--krm-primary, var(--green-2)) 10%, var(--krm-control-bg, var(--surface)));
  border-color: color-mix(in srgb, var(--krm-primary, var(--green-2)) 42%, var(--krm-border-soft, var(--line)));
}
html[data-theme] .filter-chip-checkbox input[type="checkbox"],
html[data-theme] .filter-archived-toggle input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  min-height: 12px !important;
  flex: 0 0 12px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid color-mix(in srgb, var(--krm-text-soft, var(--muted)) 58%, var(--krm-border-soft, var(--line)));
  border-radius: 3px;
  background: transparent;
  box-shadow: none;
}
html[data-theme] .filter-chip-checkbox input[type="checkbox"]:checked,
html[data-theme] .filter-archived-toggle input[type="checkbox"]:checked {
  background: var(--krm-primary, var(--green-2));
  border-color: var(--krm-primary, var(--green-2));
  box-shadow: inset 0 0 0 2px var(--krm-control-bg, var(--surface));
}
html[data-theme] .filter-bottom-row { align-items: center; }
html[data-theme] .filter-checkboxes { align-items: center; }


/* =========================================================
   KRM 1.6 DEV — Integration Hub Foundation + Calendar State
   ========================================================= */

.krm-dev-badge{
  display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;
  border:1px solid color-mix(in srgb,currentColor 28%,transparent);
  border-radius:999px;font-size:.55rem;font-weight:900;letter-spacing:.08em;
  opacity:.78;vertical-align:middle
}
.krm-dev-kicker{display:block;margin-bottom:5px;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.16em}
.integration-hub-grid{display:grid;gap:14px}
.integration-scope-card{padding:18px}
.integration-scope-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}
.integration-scope-head small{display:block;margin-bottom:4px;color:var(--muted);font-size:.61rem;font-weight:900;letter-spacing:.12em}
.integration-scope-head h2{margin:0 0 4px}
.integration-scope-head p{margin:0;color:var(--muted);font-size:.78rem}
.integration-lock-note{flex:0 0 auto;padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.62rem;font-weight:800}
.integration-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.integration-provider-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:92px;padding:12px;border:1px solid var(--line);border-radius:var(--krm-radius-lg,14px);background:var(--surface-raised,var(--surface))}
.integration-provider-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--green-2) 10%,var(--surface));color:var(--green-2);font-size:1rem;font-weight:900}
.integration-provider-copy{min-width:0}.integration-provider-copy strong{display:block}.integration-provider-copy p{margin:3px 0 7px;color:var(--muted);font-size:.7rem;line-height:1.35}
.integration-status{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:.59rem;font-weight:850}
.integration-status-foundation,.integration-status-disconnected{background:color-mix(in srgb,var(--muted) 10%,transparent);color:var(--muted)}
.integration-status-active{background:color-mix(in srgb,var(--green-2) 12%,transparent);color:var(--green-2)}
.integration-status-error,.integration-status-expired{background:color-mix(in srgb,var(--danger,#c45) 12%,transparent);color:var(--danger,#c45)}
.integration-provider-action{min-height:34px;padding:.38rem .65rem;font-size:.68rem}
.integration-provider-action:disabled{opacity:.46;cursor:not-allowed}
.integration-foundation-note{margin:12px 2px 0;color:var(--muted);font-size:.67rem}

/* Hoje é sempre visível, mas nunca compete com a seleção. */
.calendar-day.today:not(.selected),
.krm-calendar-day.today:not(.selected){
  background:color-mix(in srgb,var(--green-2) 9%,var(--surface))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green-2) 30%,var(--line));
}
.calendar-day.today:not(.selected){font-weight:900;color:var(--text)}
.krm-calendar-day.today .krm-calendar-number{font-weight:900;color:var(--green-2)}
.calendar-day.today.selected,
.krm-calendar-day.today.selected{
  box-shadow:inset 0 0 0 2px color-mix(in srgb,#fff 58%,transparent)
}

@media(max-width:760px){
  .integration-provider-grid{grid-template-columns:1fr}
  .integration-provider-card{grid-template-columns:38px minmax(0,1fr)}
  .integration-provider-action{grid-column:2;justify-self:start}
}

/* KRM 1.6 DEV — DateTime Picker compacto, sem menus nativos gigantes. */
.krm-date-popover .krm-time-stepper {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.krm-date-popover .krm-time-part { min-width: 0; }
.krm-date-popover .krm-time-part > small {
  display: block;
  margin: 0 0 5px;
  color: var(--krm-text-muted, var(--muted));
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.krm-date-popover .krm-time-controls {
  display: grid;
  grid-template-columns: 34px 1fr 34px;
  align-items: center;
  min-height: 38px;
  border: 1px solid var(--krm-border-strong, var(--line));
  border-radius: 9px;
  overflow: hidden;
  background: var(--krm-control-bg, var(--surface));
}
.krm-date-popover .krm-time-controls button {
  align-self: stretch;
  border: 0;
  background: transparent;
  color: var(--krm-text-main, var(--text));
  cursor: pointer;
  font: inherit;
  font-size: 1rem;
}
.krm-date-popover .krm-time-controls button:hover { background: var(--krm-menu-hover, var(--theme-surface-hover)); }
.krm-date-popover .krm-time-controls strong { text-align: center; font-size: .82rem; font-variant-numeric: tabular-nums; }

.integration-provider-actions { display:flex; align-items:center; justify-content:flex-end; }
.integration-provider-actions form { margin:0; }
.integration-connection-line { display:flex; flex-direction:column; gap:3px; margin-top:5px; }
.integration-connection-line small { color:var(--krm-text-muted, var(--muted)); }


/* KRM 1.6 DEV — Agenda & Calendar Experience */
.agenda-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,320px);
  gap:14px;
  align-items:start;
}
.agenda-calendar-main{min-width:0}
.agenda-bulletin{
  position:sticky;
  top:82px;
  padding:14px;
  min-width:0;
  max-height:calc(100vh - 106px);
  overflow:hidden;
  transition:grid-template-columns .18s ease,width .18s ease,padding .18s ease;
}
.agenda-bulletin-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom:10px;
  border-bottom:1px solid var(--line);
}
.agenda-bulletin-head h2{
  margin:2px 0 0;
  font-size:.92rem;
  line-height:1.15;
}
.agenda-bulletin-head .eyebrow{
  display:block;
  color:var(--muted);
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.agenda-bulletin-collapse{
  width:30px;
  height:30px;
  flex:0 0 30px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--surface);
  color:var(--text);
  cursor:pointer;
}
.agenda-bulletin-collapse:hover{
  background:var(--surface-2);
  border-color:color-mix(in srgb,var(--green-2) 42%,var(--line));
}
.agenda-bulletin-body{
  max-height:calc(100vh - 185px);
  overflow:auto;
  padding-right:2px;
  scrollbar-width:thin;
}
.agenda-bulletin-group{padding:12px 0 2px}
.agenda-bulletin-group+.agenda-bulletin-group{border-top:1px solid var(--line)}
.agenda-bulletin-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:7px;
  color:var(--muted);
  font-size:.65rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.agenda-bulletin-title small{
  min-width:20px;
  text-align:center;
  color:var(--text);
  font-size:.62rem;
}
.agenda-bulletin-list{display:grid;gap:7px}
.agenda-bulletin-card{
  padding:9px 10px;
  border:1px solid color-mix(in srgb,var(--agenda-event-color,var(--green-2)) 45%,var(--line));
  border-left:3px solid var(--agenda-event-color,var(--green-2));
  border-radius:11px;
  background:color-mix(in srgb,var(--surface) 92%,var(--agenda-event-color,var(--green-2)) 8%);
  cursor:pointer;
  transition:transform .14s ease,border-color .14s ease,background .14s ease;
  outline:none;
}
.agenda-bulletin-card:hover,
.agenda-bulletin-card:focus-visible{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--agenda-event-color,var(--green-2)) 58%,var(--line));
  background:color-mix(in srgb,var(--surface) 86%,var(--agenda-event-color,var(--green-2)) 14%);
}
.agenda-bulletin-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:4px;
}
.agenda-bulletin-card-top strong{
  color:var(--agenda-event-color,var(--green-2));
  font-size:.7rem;
  letter-spacing:.02em;
}
.agenda-source-badge{
  padding:2px 5px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--muted);
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.04em;
}
.agenda-bulletin-card-title{
  display:block;
  color:var(--text);
  font-size:.76rem;
  font-weight:800;
  line-height:1.25;
}
.agenda-bulletin-card-meta{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:.62rem;
  line-height:1.3;
}
.agenda-invite-actions{
  display:flex;
  justify-content:flex-end;
  gap:6px;
  margin-top:8px;
}
.agenda-invite-actions .button,
.agenda-invite-actions .secondary-button{
  min-height:28px;
  padding:4px 8px;
  font-size:.6rem;
}
.agenda-bulletin-empty{
  padding:7px 2px 9px;
  color:var(--muted);
  font-size:.65rem;
  font-style:italic;
}
.agenda-shell.bulletin-collapsed{
  grid-template-columns:minmax(0,1fr) 48px;
}
.agenda-shell.bulletin-collapsed .agenda-bulletin{
  padding:9px;
}
.agenda-shell.bulletin-collapsed .agenda-bulletin-head{
  justify-content:center;
  padding:0;
  border-bottom:0;
}
.agenda-shell.bulletin-collapsed .agenda-bulletin-head>div,
.agenda-shell.bulletin-collapsed .agenda-bulletin-body{display:none}

/* Regra global: Hoje tem identidade própria, sem parecer selecionado. */
.calendar-day.today:not(.selected):not(.range-start):not(.range-end),
.krm-calendar-day.today:not(.selected),
.agenda-edit-calendar .calendar-day.today:not(.selected),
.krm-date-popover .calendar-day.today:not(.selected){
  background:color-mix(in srgb,var(--green-2) 8%,var(--surface))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green-2) 38%,var(--line))!important;
  outline:none!important;
}
.calendar-day.today:not(.selected):not(.range-start):not(.range-end){
  color:var(--text);
  font-weight:850;
}
.krm-calendar-day.today .krm-calendar-number{
  display:inline-grid;
  place-items:center;
  min-width:22px;
  height:22px;
  padding:0 4px;
  border-radius:7px;
  background:color-mix(in srgb,var(--green-2) 13%,transparent);
  color:var(--green-2)!important;
  font-weight:900!important;
}

@media(max-width:980px){
  .agenda-shell{grid-template-columns:1fr}
  .agenda-bulletin{
    position:static;
    max-height:none;
  }
  .agenda-bulletin-body{max-height:320px}
  .agenda-shell.bulletin-collapsed{grid-template-columns:1fr}
  .agenda-shell.bulletin-collapsed .agenda-bulletin{
    max-height:48px;
  }
}

@media(max-width:620px){
  .agenda-bulletin{
    border-radius:13px;
  }
  .agenda-bulletin-body{max-height:280px}
}

/* KRM 1.6 DEV — Agenda Experience v4 */
.agenda-shell{
  grid-template-columns:minmax(0,4fr) minmax(260px,1fr);
  gap:18px;
  width:100%;
}
.agenda-calendar-main{
  width:100%;
  max-width:none;
  margin:0;
  padding:18px;
}
.agenda-calendar-main .krm-calendar-head{margin-bottom:16px}
.agenda-calendar-main .krm-calendar-head strong{font-size:1.05rem;letter-spacing:.01em}
.agenda-calendar-main .krm-calendar-week span{padding:9px 6px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.agenda-calendar-main .krm-calendar-grid{border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.agenda-calendar-main .krm-calendar-day{
  min-height:132px;
  padding:9px;
  border-top:1px solid var(--line);
  border-right:1px solid var(--line);
  background:color-mix(in srgb,var(--surface) 97%,transparent);
}
.agenda-calendar-main .krm-calendar-day:hover{background:color-mix(in srgb,var(--green-2) 7%,var(--surface))}
.agenda-calendar-main .agenda-event-chip{
  margin-top:6px;
  padding:6px 7px;
  border-radius:9px;
  font-size:.69rem;
  font-weight:700;
}
.agenda-bulletin{min-width:260px;max-width:330px;width:100%;justify-self:end}
.agenda-event-tools{display:flex;justify-content:flex-end;gap:6px;align-items:center}
.agenda-event-delete,.agenda-event-edit{
  width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--text);cursor:pointer;
}
.agenda-event-delete:hover{border-color:color-mix(in srgb,#d66 50%,var(--line));background:color-mix(in srgb,#d66 10%,var(--surface))}
.agenda-event-edit:hover{border-color:color-mix(in srgb,var(--green-2) 45%,var(--line));background:color-mix(in srgb,var(--green-2) 10%,var(--surface))}
@media(max-width:1180px){
  .agenda-shell{grid-template-columns:minmax(0,3fr) minmax(240px,1fr)}
  .agenda-calendar-main .krm-calendar-day{min-height:112px}
}
@media(max-width:980px){
  .agenda-shell{grid-template-columns:1fr}
  .agenda-bulletin{max-width:none;width:100%}
  .agenda-calendar-main .krm-calendar-day{min-height:96px}
}
@media(max-width:620px){
  .agenda-calendar-main{padding:10px}
  .agenda-calendar-main .krm-calendar-day{min-height:76px;padding:5px}
  .agenda-calendar-main .agenda-event-chip{font-size:.58rem;padding:4px 5px}
}

/* KRM 1.6 DEV — Connections Hub */
.connections-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.connection-domain-card{display:grid;gap:14px;align-content:start}
.connection-domain-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.connection-domain-head small{display:block;color:var(--muted);font-size:.62rem;font-weight:850;letter-spacing:.11em}
.connection-domain-head h2{margin:3px 0 4px;font-size:1.18rem}
.connection-domain-head p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.45;max-width:720px}
.connection-person-list,.workspace-connection-list{display:grid;gap:7px}
.connection-person-row,.workspace-connection-row,.collaboration-pending-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.connection-person-row small,.workspace-connection-row small,.collaboration-pending-row small{display:block;margin-top:2px;color:var(--muted);font-size:.68rem}
.workspace-connection-row{color:var(--text);text-decoration:none}
.workspace-connection-row:hover{border-color:color-mix(in srgb,var(--green-2) 40%,var(--line));background:color-mix(in srgb,var(--green-2) 7%,var(--surface))}
.connection-hub-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.connection-hub-actions .team-mini-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.connection-hub-actions label,.workspace-create-form label,.collaboration-invite-form label{display:grid;gap:5px;font-size:.7rem;color:var(--muted)}
.workspace-create-form{display:grid;grid-template-columns:minmax(0,1fr) 170px auto;gap:9px;align-items:end;padding-top:12px;border-top:1px solid var(--line)}
.workspace-create-form>small{grid-column:1/-1;color:var(--muted);font-size:.65rem}
.connection-collaboration-panel{margin-bottom:16px}
.collaboration-invite-form{display:grid;grid-template-columns:1.2fr .8fr .8fr auto;gap:9px;align-items:end;margin-top:14px}
.collaboration-pending-list,.collaboration-active-list{margin-top:16px;display:grid;gap:7px}
.collaboration-pending-list h3,.collaboration-active-list h3{margin:0 0 3px;font-size:.8rem;color:var(--muted)}
.inline-actions{display:flex;gap:6px;align-items:center}
.connection-automation-panel{margin-bottom:16px}
@media(max-width:900px){
  .connections-overview-grid{grid-template-columns:1fr}
  .workspace-create-form,.collaboration-invite-form{grid-template-columns:1fr 1fr}
  .workspace-create-form .button,.collaboration-invite-form .button{justify-self:start}
  .connection-hub-actions{grid-template-columns:1fr}
}
@media(max-width:620px){
  .workspace-create-form,.collaboration-invite-form,.connection-hub-actions .team-mini-form{grid-template-columns:1fr}
  .connection-person-row,.workspace-connection-row,.collaboration-pending-row{align-items:flex-start;flex-direction:column}
}

/* KRM 1.6 DEV — Foundation 5: conexões e status da agenda */
.agenda-heading-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
  flex-wrap:wrap;
}
.agenda-google-state{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--muted);
  font-size:.67rem;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap;
  opacity:.8;
}
.agenda-google-state:hover{color:var(--text);opacity:1}
.agenda-google-state.is-synced{color:color-mix(in srgb,var(--green-2) 78%,var(--muted));}
.agenda-google-state.is-warning{color:var(--danger,#c55);}
.agenda-google-dot{
  width:6px;height:6px;border-radius:999px;background:var(--green-2);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--green-2) 10%,transparent);
}

/* Connections Hub: informação direta, sem cartões explicativos duplicados. */
.integration-hub-heading{margin-bottom:14px}
.integration-hub-heading h1{margin-bottom:0}
.connection-domain-head h2,.integration-scope-head h2{margin-bottom:0}
.connection-domain-head p,.integration-scope-head p{display:none}
.connection-automation-panel .integration-scope-head{margin-bottom:10px}
.connection-automation-panel .integration-provider-card{min-height:72px}
.connection-automation-panel .integration-provider-copy p{display:none}
.connection-automation-panel .integration-connection-line{margin-top:4px}
.connection-automation-panel .integration-lock-note{display:none}

/* Equipe: estado da automação no contexto onde o gestor trabalha. */
.team-service-panel{padding-bottom:14px}
.team-service-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.team-service-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:58px;
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface-2);
}
.team-service-identity{display:flex;align-items:center;gap:9px;min-width:0}
.team-service-identity strong{font-size:.79rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-service-icon{
  width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;
  border-radius:9px;background:color-mix(in srgb,var(--green-2) 10%,var(--surface));
  color:var(--green-2);font-size:.72rem;font-weight:900;
}
.team-service-action{display:flex;align-items:center;justify-content:flex-end;min-width:80px}
.team-service-action form{margin:0}
.team-service-state{color:var(--muted);font-size:.66rem;font-weight:750}
.team-service-state.is-connected{color:var(--green-2)}

@media(max-width:760px){
  .agenda-heading-actions{justify-content:flex-start;width:100%}
  .agenda-google-state{order:2;width:100%}
  .team-service-grid{grid-template-columns:1fr}
}

/* KRM 1.6 DEV — Stabilization 1 · Agenda Intelligence + visual rhythm */
:root{
  --krm-page-gap:16px;
  --krm-card-gap:12px;
  --krm-panel-padding:18px;
}
main.container{padding-top:24px}
main.container .page-heading{margin-bottom:var(--krm-page-gap)}
main.container .panel{padding:var(--krm-panel-padding)}
.connections-overview-grid,.integration-provider-grid,.team-service-grid{gap:var(--krm-card-gap)}
.connection-domain-head h2,.integration-scope-head h2{margin:0}
.connection-domain-head small,.integration-scope-head small{display:none!important}

/* Agenda mensal: o mês inteiro deve caber na primeira leitura do desktop. */
.agenda-shell{grid-template-columns:minmax(0,1fr) minmax(250px,290px);gap:14px;align-items:start}
.agenda-calendar-main{padding:12px!important}
.agenda-calendar-main .krm-calendar-head{margin-bottom:8px}
.agenda-calendar-main .krm-calendar-week span{padding:6px 4px}
.agenda-calendar-main .krm-calendar-grid{grid-auto-rows:clamp(60px,7.5vh,78px)}
.agenda-calendar-main .krm-calendar-day{
  min-height:0!important;height:auto;padding:5px 6px!important;overflow:hidden;
}
.agenda-calendar-main .krm-calendar-number{font-size:.68rem}
.agenda-calendar-main .agenda-event-chip{
  display:block;margin-top:3px!important;padding:3px 5px!important;border-radius:7px!important;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem!important;line-height:1.25;
  color:color-mix(in srgb,var(--agenda-event-color,#0ea5a5) 82%,white);
  background:color-mix(in srgb,var(--agenda-event-color,#0ea5a5) 16%,var(--surface));
  border:1px solid color-mix(in srgb,var(--agenda-event-color,#0ea5a5) 44%,var(--line));
  cursor:pointer;
}
.agenda-calendar-main .agenda-event-chip:hover{background:color-mix(in srgb,var(--agenda-event-color,#0ea5a5) 24%,var(--surface))}
.agenda-more-events{display:block;margin-top:2px;padding:0;border:0;background:transparent;color:var(--muted);font-size:.58rem;font-weight:800;cursor:pointer}
.agenda-bulletin{min-width:0;max-width:290px}
.agenda-bulletin-body{max-height:calc(100vh - 285px);overflow:auto}

.agenda-view-switch button{
  padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.78rem;cursor:pointer;
}
.agenda-view-switch button.active{background:var(--green-2);color:#fff}
.agenda-colors-button{width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}
.agenda-colors-button:hover{color:var(--green-2);border-color:color-mix(in srgb,var(--green-2) 45%,var(--line))}

.agenda-colors-dialog{width:min(420px,92vw);padding:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text)}
.agenda-colors-dialog::backdrop{background:rgba(4,10,18,.38);backdrop-filter:blur(2px)}
.agenda-colors-card{padding:18px;display:grid;gap:14px}
.agenda-colors-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.agenda-colors-head h2{margin:0;font-size:1rem}
.agenda-colors-list{display:grid;gap:7px;max-height:52vh;overflow:auto}
.agenda-color-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.agenda-color-row span{font-size:.76rem;font-weight:700}
.agenda-colors-actions{display:flex;justify-content:flex-end;gap:8px}

@media(max-width:980px){
  .agenda-shell{grid-template-columns:1fr}
  .agenda-bulletin{max-width:none}
  .agenda-bulletin-body{max-height:300px}
  .agenda-calendar-main .krm-calendar-grid{grid-auto-rows:72px}
}
@media(max-width:620px){
  main.container{padding-top:18px}
  .agenda-calendar-main .krm-calendar-grid{grid-auto-rows:64px}
}


/* KRM 1.6 — seleção e compartilhamento de carteiras em massa */
.lead-bulk-toolbar {
  position: sticky;
  top: 10px;
  z-index: 35;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 12px;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius, 12px);
  background: var(--surface, #fff);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}

.lead-bulk-summary {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  font-size: 13px;
}

.lead-bulk-link {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted);
  font: inherit;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.lead-bulk-link:hover {
  color: var(--text);
}

.lead-select-head,
.lead-select-cell {
  width: 34px;
  min-width: 34px;
  padding-left: 10px;
  padding-right: 4px;
  text-align: center;
}

.lead-select-head input,
.lead-select-cell input,
.kanban-card-select input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--accent, currentColor);
}

.lead-table-row.bulk-selected,
.kanban-card.bulk-selected {
  outline: 2px solid color-mix(in srgb, var(--accent, #128c7e) 58%, transparent);
  outline-offset: -2px;
  background: color-mix(in srgb, var(--accent-soft, #eaf3ef) 72%, transparent);
}

.kanban-card {
  position: relative;
}

.kanban-card-select {
  position: absolute;
  top: 8px;
  right: 8px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: color-mix(in srgb, var(--surface, #fff) 88%, transparent);
  opacity: .45;
  cursor: pointer;
  z-index: 2;
}

.kanban-card:hover .kanban-card-select,
.kanban-card.bulk-selected .kanban-card-select {
  opacity: 1;
}

.kanban-card > strong {
  padding-right: 24px;
}

.kanban-column-select {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  font-size: 12px;
}

.kanban-column-select:hover {
  background: var(--surface-alt, rgba(0,0,0,.05));
  color: var(--text);
}

.lead-bulk-dialog {
  width: min(460px, calc(100vw - 28px));
}

.lead-bulk-dialog form {
  display: grid;
  gap: 14px;
}

.bulk-dialog-count {
  margin: -6px 0 2px;
  color: var(--muted);
  font-size: 13px;
}

.bulk-action-hint {
  min-height: 34px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

@media (max-width: 700px) {
  .lead-bulk-toolbar {
    bottom: 10px;
    top: auto;
  }

  .lead-bulk-summary {
    flex-wrap: wrap;
  }

  .lead-bulk-link {
    display: none;
  }
}


/* Stabilization 4 — dados em primeiro plano, controles discretos. */
.lead-select-head,.lead-select-cell{width:30px!important;min-width:30px!important;max-width:30px!important;padding-left:6px!important;padding-right:4px!important;text-align:center}
.lead-select-head input,.lead-select-cell input{width:14px;height:14px;margin:0;opacity:.72}
.lead-table-tools{position:absolute;right:10px;top:8px;z-index:4}.lead-table-panel{position:relative;padding-top:38px}.lead-columns-button{width:30px;height:30px;opacity:.72}
.column-hidden{display:none!important}.lead-configurable-table th,.lead-configurable-table td{white-space:nowrap}.lead-notes-cell{display:block;max-width:230px;overflow:hidden;text-overflow:ellipsis}
.bulk-action-center{position:absolute;inset:0;z-index:6;background:var(--surface, #fff);padding:22px;border-radius:inherit;overflow:auto}.atendimento-sidebar{position:relative}.atendimento-sidebar.bulk-mode>.sidebar-empty,.atendimento-sidebar.bulk-mode>.sidebar-content{visibility:hidden}
.bulk-action-center-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.bulk-action-center-head small{opacity:.58;font-size:.68rem;letter-spacing:.08em}.bulk-action-center-head h2{margin:.2rem 0 0}.bulk-action-grid{display:grid;gap:10px}.bulk-action-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;padding:14px;text-align:left;color:inherit;cursor:pointer}.bulk-action-card:hover{border-color:var(--accent);transform:translateY(-1px)}.bulk-action-card strong,.bulk-action-card span{display:block}.bulk-action-card span{font-size:.78rem;opacity:.65;margin-top:3px}
.lead-column-options{display:grid;gap:6px;max-height:55vh;overflow:auto}.lead-column-options label{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--border);border-radius:9px}.drag-grip{margin-left:auto;opacity:.35}.bulk-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bulk-edit-grid .full{grid-column:1/-1}.bulk-export-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 18px}.bulk-export-fields label{display:flex;gap:8px;align-items:center}
.kanban-card.bulk-selected.dragging::after{content:attr(data-stack-count);position:absolute;right:8px;top:8px;background:var(--accent);color:#fff;padding:2px 7px;border-radius:999px}

/* KRM 1.6 DEV Stabilization 4.1 — Bulk UX Polish */
.lead-table-row.bulk-selected {
  outline: 1px solid color-mix(in srgb, var(--accent, #14b8a6) 72%, transparent);
  outline-offset: -1px;
  background: color-mix(in srgb, var(--surface-alt, #162438) 88%, var(--accent, #14b8a6) 12%) !important;
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--accent, #14b8a6) 76%, transparent);
}
.lead-table-row.bulk-selected td,
.lead-table-row.bulk-selected strong,
.lead-table-row.bulk-selected span,
.lead-table-row.bulk-selected small {
  color: inherit;
}
html.dark .lead-table-row.bulk-selected {
  background: color-mix(in srgb, var(--surface-alt, #142237) 88%, var(--accent, #14b8a6) 12%) !important;
}

.bulk-action-center {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 14px;
}
.bulk-action-center.hidden { display: none !important; }
.bulk-action-center-head { margin-bottom: 2px; }
.bulk-action-center-head h2 { font-size: 1.18rem; font-weight: 700; }
.bulk-action-grid { grid-template-columns: 1fr; gap: 8px; }
.bulk-action-card {
  min-height: 68px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}
.bulk-action-card:disabled { opacity: .42; cursor: not-allowed; transform: none; }
.bulk-action-card:not(:disabled):hover { background: color-mix(in srgb, var(--surface-soft) 90%, var(--accent) 10%); }

.lead-columns-dialog { width: min(520px, calc(100vw - 28px)); }
.lead-columns-dialog form { display: grid; gap: 14px; }
.lead-columns-head h2 { margin: 0; }
.lead-columns-head span { display: block; margin-top: 3px; color: var(--muted); font-size: .78rem; }
.lead-column-options { gap: 5px; max-height: 50vh; padding-right: 3px; }
.lead-column-options label {
  display: grid;
  grid-template-columns: 22px 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  cursor: grab;
  user-select: none;
}
.lead-column-options label:hover {
  background: var(--surface-soft);
  border-color: color-mix(in srgb, var(--border) 72%, transparent);
}
.lead-column-options label.is-dragging { opacity: .46; cursor: grabbing; }
.lead-column-options .drag-grip {
  margin: 0;
  opacity: .32;
  font-size: .9rem;
  letter-spacing: -2px;
  text-align: center;
}
.column-option-name { font-size: .88rem; font-weight: 600; }
.lead-column-options input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: var(--accent); }
.lead-column-options input[type="checkbox"]:disabled { opacity: .65; }
.lead-columns-footer {
  display: grid;
  grid-template-columns: auto minmax(150px, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--border);
}
.lead-view-select { min-width: 0; height: 36px; }
.button.compact { min-height: 36px; padding: 7px 11px; }
.lead-view-actions { display: flex; justify-content: center; gap: 14px; min-height: 22px; }
.text-button {
  border: 0;
  background: transparent;
  padding: 2px 4px;
  color: var(--muted);
  font: inherit;
  font-size: .76rem;
  cursor: pointer;
}
.text-button:hover { color: var(--accent); }

.kanban-stack-drag-image {
  position: fixed;
  left: -9999px;
  top: -9999px;
  width: 230px;
  height: 132px;
  pointer-events: none;
  z-index: 99999;
}
.kanban-stack-drag-image .kanban-stack-layer {
  position: absolute;
  left: 0;
  top: 0;
  width: 218px;
  min-height: 92px;
  margin: 0;
  box-sizing: border-box;
  box-shadow: 0 12px 28px rgba(0,0,0,.24);
}
.kanban-stack-drag-image .layer-1 { z-index: 3; opacity: 1; }
.kanban-stack-drag-image .layer-2 { z-index: 2; transform: translate(9px, 10px); opacity: .58; filter: saturate(.75); }
.kanban-stack-drag-image .layer-3 {
  z-index: 1;
  transform: translate(18px, 20px);
  opacity: .25;
  max-height: 64px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 54%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 54%, transparent 100%);
}
.kanban-stack-more {
  position: absolute;
  z-index: 4;
  right: -4px;
  bottom: 0;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  box-shadow: 0 5px 16px rgba(0,0,0,.22);
}
.kanban-card.bulk-selected { box-shadow: inset 3px 0 0 color-mix(in srgb, var(--accent) 78%, transparent); }

@media (max-width: 620px) {
  .lead-columns-footer { grid-template-columns: 1fr; }
  .lead-columns-footer .button,
  .lead-view-select { width: 100%; }
}
\n\n/* KRM 1.6 DEV Stabilization 4.1.2 — Selection UX Hotfix */\n.bulk-kanban-action{display:none}\n.lead-bulk-toolbar.kanban-bulk-toolbar .bulk-kanban-action{display:inline}\n.lead-bulk-toolbar.kanban-bulk-toolbar{position:relative;top:auto;box-shadow:none;padding:8px 12px;background:color-mix(in srgb,var(--surface,#172438) 96%,transparent)}\n.lead-bulk-toolbar.kanban-bulk-toolbar .lead-bulk-summary{gap:10px}\n.lead-bulk-toolbar.kanban-bulk-toolbar .lead-bulk-link:disabled{opacity:.38;cursor:not-allowed;text-decoration:none}\n.lead-bulk-toolbar.leads-bulk-toolbar .bulk-kanban-action{display:none}\n\n/* A seleção deve destacar sem lavar o conteúdo da carteira. */\n.lead-table-row.bulk-selected{background:color-mix(in srgb,var(--surface-alt,#17283a) 86%,var(--accent,#14b8a6) 14%)!important;color:var(--text)!important}\n.lead-table-row.bulk-selected td{background:transparent!important;color:var(--text)!important}\n.lead-table-row.bulk-selected small{color:var(--muted)!important}\n\n/* Central de ação compacta: mesma linguagem visual do card de atendimento. */\n.atendimento-sidebar .bulk-action-center{inset:0;padding:20px;gap:12px;justify-content:flex-start;background:var(--surface,#1f2b3b)}\n.atendimento-sidebar .bulk-action-center-head{margin:0 0 4px}\n.atendimento-sidebar .bulk-action-grid{display:grid;gap:8px}\n.atendimento-sidebar .bulk-action-card{min-height:58px;padding:11px 13px;border:1px solid var(--line,var(--border));border-radius:10px;background:color-mix(in srgb,var(--surface-alt,#172438) 94%,transparent)}\n.atendimento-sidebar .bulk-action-card strong{font-size:.88rem}\n.atendimento-sidebar .bulk-action-card span{font-size:.74rem;line-height:1.35}\n

/* ==========================================================
   KRM 1.6 DEV Stabilization 4.2
   Leads Workspace Compact + Theme Engine refinement
   ========================================================== */

/* Leads — tabela configurável: a seleção é infraestrutura, nunca coluna elástica. */
#leadTable.lead-configurable-table {
  table-layout: auto;
  min-width: 760px;
}
#leadTable.lead-configurable-table .lead-select-head,
#leadTable.lead-configurable-table .lead-select-cell {
  box-sizing: border-box;
  width: 38px !important;
  min-width: 38px !important;
  max-width: 38px !important;
  padding: 0 8px !important;
  text-align: center;
}
#leadTable.lead-configurable-table .lead-select-head input,
#leadTable.lead-configurable-table .lead-select-cell input {
  display: block;
  width: 15px;
  height: 15px;
  margin: 0 auto;
  flex: 0 0 15px;
}
#leadTable.lead-configurable-table th[data-column],
#leadTable.lead-configurable-table td[data-column] {
  min-width: 94px;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#leadTable.lead-configurable-table th[data-column="name"],
#leadTable.lead-configurable-table td[data-column="name"] {
  min-width: 180px;
  width: 25%;
  max-width: 280px;
}
#leadTable.lead-configurable-table th[data-column="status"] { min-width: 118px; }
#leadTable.lead-configurable-table th[data-column="project"] { min-width: 132px; }
#leadTable.lead-configurable-table th[data-column="broker"] { min-width: 116px; }
#leadTable.lead-configurable-table th[data-column="preferred"] { min-width: 126px; }
#leadTable.lead-configurable-table th[data-column="entry"] { min-width: 94px; }
#leadTable.lead-configurable-table td[data-column] > span:not(.badge),
#leadTable.lead-configurable-table .lead-notes-cell {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
#leadTable.lead-configurable-table .lead-name-cell strong,
#leadTable.lead-configurable-table .lead-name-cell small {
  overflow: hidden;
  text-overflow: ellipsis;
}
#leadTable.lead-configurable-table .lead-name-cell small {
  white-space: nowrap;
}

/* Sidebar — visualização primeiro, formulário somente sob demanda. */
.atendimento-sidebar .sidebar-content { padding-bottom: 4px; }
.sidebar-top { align-items: flex-start; }
.sidebar-top-actions { display: flex; align-items: center; gap: 5px; flex: 0 0 auto; }
.sidebar-top-actions .icon-button { width: 32px; min-height: 32px; height: 32px; font-size: 17px; }
.sidebar-edit-button { color: var(--muted); }
.sidebar-edit-button:hover,
.sidebar-edit-button.active {
  color: var(--krm-primary, var(--green-2));
  background: var(--krm-primary-soft);
  border-color: color-mix(in srgb, var(--krm-primary, var(--green-2)) 34%, var(--line));
}
.atendimento-sidebar .sidebar-contact {
  margin: 10px 0 12px;
  padding: 9px 11px;
  line-height: 1.45;
  font-size: .78rem;
}
.atendimento-sidebar .detail-grid { gap: 7px; }
.atendimento-sidebar .detail-grid > div {
  min-height: 58px;
  padding: 8px 9px;
}
.atendimento-sidebar .detail-grid span { margin-bottom: 4px; }
.atendimento-sidebar .sidebar-section { margin-top: 12px; padding-top: 11px; }
.atendimento-sidebar .sidebar-section h3 { margin-bottom: 9px; font-size: .88rem; }
.sidebar-edit-section {
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: var(--krm-radius-md, 12px);
  background: color-mix(in srgb, var(--theme-surface-soft, var(--surface)) 72%, transparent);
}
.sidebar-edit-section.sidebar-section { border-top: 1px solid var(--line); }
.sidebar-edit-section .quick-edit-grid { gap: 8px; }
.sidebar-edit-section label { font-size: .72rem; }
.sidebar-edit-section textarea { min-height: 72px; }

/* Contato — botões reconhecíveis + QR auxiliar, sem dominar o card. */
.contact-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px;
  gap: 10px;
  align-items: stretch;
  margin-top: 10px;
}
.contact-action-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}
.contact-action-button {
  min-height: 32px !important;
  height: 32px;
  padding: 5px 9px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  justify-content: start;
  text-align: left;
  border-radius: 8px !important;
  font-size: .74rem;
  line-height: 1;
}
.contact-action-button > span:first-child { text-align: center; opacity: .9; }
.contact-tools .qr-box {
  margin: 0;
  padding: 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 1px solid color-mix(in srgb, var(--line) 72%, transparent);
  border-radius: 9px;
  background: color-mix(in srgb, var(--surface) 96%, var(--krm-primary, var(--green-2)) 4%);
}
.contact-tools .qr-box img {
  width: 72px;
  height: 72px;
  max-width: 72px;
  border: 0;
  border-radius: 4px;
  background: #fff;
}
.contact-tools .qr-box small { margin-top: 3px; font-size: .58rem; line-height: 1.1; }

/* Colaboração — metadados em uma linha; controles continuam disponíveis quando necessários. */
.collaboration-summary {
  display: flex;
  align-items: baseline;
  gap: 7px;
  min-width: 0;
  padding: 5px 0 8px;
  color: var(--muted);
}
.collaboration-summary > span { display: flex; align-items: baseline; gap: 4px; min-width: 0; }
.collaboration-summary small { font-size: .64rem; text-transform: uppercase; letter-spacing: .035em; }
.collaboration-summary strong {
  min-width: 0;
  max-width: 115px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--text);
  font-size: .76rem;
}
.collaboration-summary > i { opacity: .35; font-style: normal; }

/* Histórico é auditoria: fechado por padrão, rápido quando necessário. */
.sidebar-disclosure { display: block; }
.sidebar-disclosure > summary {
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  color: var(--text);
  font-size: .86rem;
  font-weight: 700;
  cursor: pointer;
  user-select: none;
}
.sidebar-disclosure > summary::-webkit-details-marker { display: none; }
.sidebar-disclosure > summary::before {
  content: "›";
  width: 13px;
  color: var(--muted);
  font-size: 1rem;
  transform-origin: 50% 50%;
  transition: transform .14s ease;
}
.sidebar-disclosure[open] > summary::before { transform: rotate(90deg); }
.sidebar-disclosure > summary small { margin-left: auto; color: var(--muted); font-weight: 600; }
.sidebar-disclosure .history-list { margin-top: 10px; gap: 7px; }
.sidebar-disclosure .history-item { padding-left: 8px; border-left-width: 2px; font-size: .76rem; }

@media (max-width: 620px) {
  #leadTable.lead-configurable-table { min-width: 680px; }
  .contact-tools { grid-template-columns: 1fr; }
  .contact-tools .qr-box { display: none !important; }
  .atendimento-sidebar .detail-grid { grid-template-columns: 1fr 1fr; }
}

/* ------------------------------------------------------------------
   Theme Engine 4.2 — identidade em tokens; componentes não conhecem a marca.
   ------------------------------------------------------------------ */

/* Krampus: carvão profundo, fuligem, osso e cobre. Vermelho só como acento. */
html[data-theme="krampus"] {
  --background: #0d0c0b;
  --surface: #161412;
  --line: #332d28;
  --text: #e9e1d6;
  --muted: #9d9184;
  --green: #3a211d;
  --green-2: #8e493d;
  --danger: #c85b50;
  --theme-topbar: #11100e;
  --theme-surface-soft: #1d1a17;
  --theme-surface-hover: #29221d;
  --theme-badge: #302821;
  --theme-badge-text: #ddcdbc;
  --krm-primary: #9b5b43;
  --krm-primary-soft: color-mix(in srgb, #9b5b43 14%, transparent);
  --krm-control-bg: #181613;
  --krm-control-hover: #211d19;
  --krm-menu-bg: #141210;
  --krm-menu-hover: #251f1a;
  --krm-menu-active: #30231d;
  --krm-border-soft: #332d28;
  --krm-border-strong: #574b40;
  --krm-text-main: #e9e1d6;
  --krm-text-soft: #9d9184;
  --chart-1: #9b5b43;
  --chart-2: #ad7552;
  --chart-3: #b99064;
  --chart-4: #b8a078;
  --chart-5: #a99c83;
  --chart-6: #8c8074;
  --chart-7: #725e54;
  --chart-8: #653d36;
}

/* Cury: azul institucional como protagonista, branco suavizado e amarelo pontual. */
html[data-theme="cury"] {
  --background: #f3f6f8;
  --surface: #fbfcfd;
  --line: #d6e0e8;
  --text: #173654;
  --muted: #667d91;
  --green: #07529a;
  --green-2: #0877c9;
  --danger: #bf4b4b;
  --theme-topbar: #075aa8;
  --theme-surface-soft: #edf4f9;
  --theme-surface-hover: #e0edf6;
  --theme-badge: #e4eff7;
  --theme-badge-text: #24577d;
  --krm-primary: #0877c9;
  --krm-primary-soft: color-mix(in srgb, #0877c9 12%, transparent);
  --krm-control-bg: #fbfcfd;
  --krm-control-hover: #eef5fa;
  --krm-menu-bg: #fbfcfd;
  --krm-menu-hover: #e8f2f9;
  --krm-menu-active: #d9eaf6;
  --krm-border-soft: #d7e2ea;
  --krm-border-strong: #a8bccb;
  --chart-1: #0877c9;
  --chart-2: #0e91db;
  --chart-3: #32a7df;
  --chart-4: #63badf;
  --chart-5: #94cbe0;
  --chart-6: #f0c84b;
  --chart-7: #719ab8;
  --chart-8: #456b8d;
}
html[data-theme="cury"] .button:not(.secondary):not(.danger):not(.whatsapp):not(.email) {
  box-shadow: inset 0 -1px 0 color-mix(in srgb, #003f78 28%, transparent);
}

/* Cury Espacial: família Cury em céu noturno. */
html[data-theme="cury-space"] {
  --background: #041426;
  --surface: #0a2037;
  --line: #1d4264;
  --text: #e9f4ff;
  --muted: #8eacc8;
  --green: #0866b4;
  --green-2: #2294eb;
  --danger: #ff7078;
  --theme-topbar: #061a31;
  --theme-surface-soft: #0d2945;
  --theme-surface-hover: #123756;
  --theme-badge: #143856;
  --theme-badge-text: #dcefff;
  --krm-primary: #2294eb;
  --krm-primary-soft: color-mix(in srgb, #2294eb 16%, transparent);
  --krm-control-bg: #0b223a;
  --krm-control-hover: #10304e;
  --krm-menu-bg: #071b31;
  --krm-menu-hover: #0d3151;
  --krm-menu-active: #12446d;
  --krm-border-soft: #1d4264;
  --krm-border-strong: #35658f;
  --chart-1: #2294eb;
  --chart-2: #45a9f5;
  --chart-3: #68baff;
  --chart-4: #83c9ff;
  --chart-5: #a0d6f3;
  --chart-6: #f2c94c;
  --chart-7: #6e9ec4;
  --chart-8: #446e96;
}
html[data-theme="cury-space"] body { position: relative; }
html[data-theme="cury-space"] body::before {
  content: "";
  position: fixed;
  z-index: -1;
  right: -72px;
  bottom: -92px;
  width: min(48vw, 520px);
  aspect-ratio: 1;
  opacity: .055;
  pointer-events: none;
  background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300'%3E%3Cg fill='none' stroke='%2397d4ff' stroke-width='3'%3E%3Cpath d='M161 54c34 18 57 48 64 89-18 20-40 34-66 42-26-8-48-22-66-42 8-41 31-71 68-89Z'/%3E%3Ccircle cx='159' cy='111' r='21'/%3E%3Cpath d='M119 163 91 194l35-5m73-26 28 31-35-5M143 183l-5 46 21-20 20 20-5-46M129 64c9-25 20-39 32-47 13 8 24 22 31 47'/%3E%3C/g%3E%3C/svg%3E");
}

/* Jewelry: marfim, champagne e ouro envelhecido; pedras em acentos funcionais. */
html[data-theme="jewelry"] {
  --background: #f4efe5;
  --surface: #fcfaf5;
  --line: #ddd2bf;
  --text: #3b342d;
  --muted: #7c7064;
  --green: #7a6538;
  --green-2: #a18448;
  --danger: #9e4652;
  --theme-topbar: #ede4d3;
  --theme-surface-soft: #f5efe4;
  --theme-surface-hover: #eee4d4;
  --theme-badge: #eee4cf;
  --theme-badge-text: #6d5732;
  --krm-primary: #9a7b3f;
  --krm-primary-soft: color-mix(in srgb, #9a7b3f 12%, transparent);
  --krm-control-bg: #fdfbf7;
  --krm-control-hover: #f5efe4;
  --krm-menu-bg: #fffdf8;
  --krm-menu-hover: #f1e8d9;
  --krm-menu-active: #e8dbc5;
  --krm-border-soft: #ddd2bf;
  --krm-border-strong: #bbaa8e;
  --krm-text-main: #3b342d;
  --krm-text-soft: #7c7064;
  --chart-1: #9a7b3f;
  --chart-2: #2f7868;
  --chart-3: #335f8c;
  --chart-4: #805b8f;
  --chart-5: #a34859;
  --chart-6: #c3a457;
  --chart-7: #8f7d6a;
  --chart-8: #5f5a55;
  color-scheme: light;
}
html[data-theme="jewelry"] .topbar { color: #433a30; }
html[data-theme="jewelry"] .topbar a,
html[data-theme="jewelry"] .topbar button { color: inherit; }

/* Cyberpunk: roxo moderado, carvão frio e ciano apenas como sinal técnico. */
html[data-theme="cyberpunk"] {
  --background: #100d1c;
  --surface: #191529;
  --line: #393050;
  --text: #eeeafb;
  --muted: #a39ab9;
  --green: #56328c;
  --green-2: #8a5bd1;
  --danger: #f0647f;
  --theme-topbar: #151025;
  --theme-surface-soft: #201a34;
  --theme-surface-hover: #2b2144;
  --theme-badge: #2b2340;
  --theme-badge-text: #ddd1f5;
  --krm-primary: #8a5bd1;
  --krm-primary-soft: color-mix(in srgb, #8a5bd1 16%, transparent);
  --krm-control-bg: #1b172c;
  --krm-control-hover: #241d39;
  --krm-menu-bg: #171226;
  --krm-menu-hover: #271d3d;
  --krm-menu-active: #342554;
  --krm-border-soft: #393050;
  --krm-border-strong: #5b4d78;
  --krm-text-main: #eeeafb;
  --krm-text-soft: #a39ab9;
  --chart-1: #8a5bd1;
  --chart-2: #a36ee2;
  --chart-3: #6c8ee5;
  --chart-4: #4cbacb;
  --chart-5: #79c5b8;
  --chart-6: #c5a45d;
  --chart-7: #c36a9d;
  --chart-8: #716782;
  color-scheme: dark;
}
html[data-theme="cyberpunk"] .lead-table-row.active,
html[data-theme="cyberpunk"] .kanban-card:hover {
  box-shadow: inset 2px 0 0 color-mix(in srgb, #59c6d1 62%, transparent);
}

.theme-swatch-krampus { background: linear-gradient(135deg,#0d0c0b 0 50%,#9b5b43 50%); }
.theme-swatch-cury { background: linear-gradient(135deg,#f3f6f8 0 50%,#0877c9 50%); }
.theme-swatch-cury-space { background: linear-gradient(135deg,#041426 0 50%,#2294eb 50%); }
.theme-swatch-jewelry { background: linear-gradient(135deg,#f4efe5 0 50%,#9a7b3f 50%); }
.theme-swatch-cyberpunk { background: linear-gradient(135deg,#100d1c 0 50%,#8a5bd1 50%); }

/* ==========================================================
   KRM 1.6 DEV Stabilization 4.2.2 — UI Polish
   Densidade operacional, seleção semântica e temas refinados.
   ========================================================== */

/* Leads — coluna de seleção realmente física, sem participar da elasticidade. */
#leadTable.lead-configurable-table {
  table-layout: auto;
}
#leadTable.lead-configurable-table col.lead-select-col {
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
}
#leadTable.lead-configurable-table .lead-select-head,
#leadTable.lead-configurable-table .lead-select-cell {
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  padding: 0 12px !important;
  box-sizing: border-box;
}
#leadTable.lead-configurable-table .lead-select-head input,
#leadTable.lead-configurable-table .lead-select-cell input {
  width: 15px !important;
  height: 15px !important;
  margin: 0 auto !important;
}

/* Quando poucas colunas estão visíveis, o espaço excedente fica com Nome — nunca com seleção. */
#leadTable.lead-configurable-table th[data-column="name"],
#leadTable.lead-configurable-table td[data-column="name"] {
  width: auto;
  max-width: none;
}
#leadTable.lead-configurable-table th[data-column="status"],
#leadTable.lead-configurable-table td[data-column="status"] {
  width: 168px;
  max-width: 168px;
}

/* Card lateral: informação primeiro, chrome depois. */
.atendimento-sidebar .sidebar-contact {
  margin: 7px 0 8px;
  padding: 7px 9px;
  font-size: .73rem;
}
.atendimento-sidebar .detail-grid {
  gap: 5px;
}
.atendimento-sidebar .detail-grid > div {
  min-height: 46px;
  padding: 6px 8px;
  border-radius: 9px;
}
.atendimento-sidebar .detail-grid span {
  margin-bottom: 2px;
  font-size: .61rem;
  letter-spacing: .025em;
}
.atendimento-sidebar .detail-grid strong {
  font-size: .78rem;
  line-height: 1.12;
}
.atendimento-sidebar .sidebar-section {
  margin-top: 9px;
  padding-top: 9px;
}
.atendimento-sidebar .sidebar-section h3 {
  margin-bottom: 7px;
  font-size: .82rem;
}

/* Contato: botões compactos à esquerda; QR auxiliar ocupa o respiro à direita. */
.contact-tools {
  grid-template-columns: minmax(126px, 1.05fr) minmax(84px, .95fr);
  gap: 8px;
  margin-top: 8px;
}
.contact-action-stack {
  gap: 4px;
}
.contact-action-button {
  min-height: 28px !important;
  height: 28px;
  padding: 4px 8px;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 5px;
  border-radius: 7px !important;
  font-size: .68rem;
}
.contact-tools .qr-box {
  min-width: 0;
  padding: 5px 7px;
  border-width: 1px;
}
.contact-tools .qr-box img {
  width: 66px;
  height: 66px;
  max-width: 66px;
}
.contact-tools .qr-box small {
  font-size: .54rem;
}

/* Retorno e visita lado a lado. Visita é o desfecho comercial prioritário. */
.schedule-action-row {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 6px;
  margin-top: 7px;
}
.schedule-action-row .button {
  min-height: 34px;
  padding: 7px 8px;
  font-size: .72rem;
}
.schedule-visit-button {
  font-weight: 750;
}

/* Estados de linha são semânticos; cada tema define a própria linguagem. */
html[data-theme] {
  --krm-row-hover-bg: var(--theme-surface-hover);
  --krm-row-active-bg: color-mix(in srgb, var(--krm-primary) 10%, var(--surface));
  --krm-row-active-border: var(--krm-primary);
  --krm-row-selected-bg: color-mix(in srgb, var(--krm-primary) 13%, var(--surface));
  --krm-row-selected-border: color-mix(in srgb, var(--krm-primary) 78%, transparent);
  --krm-row-selected-text: var(--text);
  --krm-row-selected-muted: var(--muted);
}
html[data-theme] .lead-table-row:hover:not(.bulk-selected) {
  background: var(--krm-row-hover-bg) !important;
}
html[data-theme] .lead-table-row.active:not(.bulk-selected) {
  background: var(--krm-row-active-bg) !important;
  box-shadow: inset 3px 0 0 var(--krm-row-active-border);
}
html[data-theme] .lead-table-row.bulk-selected {
  background: var(--krm-row-selected-bg) !important;
  color: var(--krm-row-selected-text) !important;
  box-shadow: inset 2px 0 0 var(--krm-row-selected-border);
}
html[data-theme] .lead-table-row.bulk-selected td,
html[data-theme] .lead-table-row.bulk-selected strong,
html[data-theme] .lead-table-row.bulk-selected span {
  color: var(--krm-row-selected-text) !important;
}
html[data-theme] .lead-table-row.bulk-selected small {
  color: var(--krm-row-selected-muted) !important;
}

/* Jewelry 4.2.2 — papel quente, noz, champagne e ouro fino; nunca branco sobre claro. */
html[data-theme="jewelry"] {
  --background: #f2eadc;
  --surface: #fbf7ef;
  --line: #d9c9b0;
  --text: #4b382b;
  --muted: #82705f;
  --theme-topbar: #e9ddc9;
  --theme-surface-soft: #f3eadc;
  --theme-surface-hover: #eadcc8;
  --theme-badge: #eadbbf;
  --theme-badge-text: #664d30;
  --krm-primary: #aa8745;
  --krm-primary-soft: color-mix(in srgb, #aa8745 13%, transparent);
  --krm-control-bg: #fdf9f2;
  --krm-control-hover: #f0e5d5;
  --krm-menu-bg: #fffaf3;
  --krm-menu-hover: #eee0cd;
  --krm-menu-active: #e4d1b5;
  --krm-border-soft: #dccdb7;
  --krm-border-strong: #b99e74;
  --krm-text-main: #4b382b;
  --krm-text-soft: #82705f;
  --krm-row-hover-bg: #f0e5d5;
  --krm-row-active-bg: #eadcc5;
  --krm-row-active-border: #b48c43;
  --krm-row-selected-bg: #e3d4bc;
  --krm-row-selected-border: #9f7b3b;
  --krm-row-selected-text: #493629;
  --krm-row-selected-muted: #776452;
}
html[data-theme="jewelry"] body,
html[data-theme="jewelry"] .panel,
html[data-theme="jewelry"] .card,
html[data-theme="jewelry"] .atendimento-sidebar,
html[data-theme="jewelry"] .bulk-action-center {
  color: var(--text);
}
html[data-theme="jewelry"] .button.secondary,
html[data-theme="jewelry"] .icon-button,
html[data-theme="jewelry"] .lead-bulk-link,
html[data-theme="jewelry"] .bulk-action-card {
  color: #574131;
}
html[data-theme="jewelry"] .badge {
  color: var(--theme-badge-text) !important;
}
html[data-theme="jewelry"] .lead-table-row.bulk-selected .badge {
  background: #f6eddf !important;
  color: #634c31 !important;
}
html[data-theme="jewelry"] .atendimento-sidebar .sidebar-contact {
  background: #eee2cf;
  color: #725b45;
}
html[data-theme="jewelry"] .atendimento-sidebar .detail-grid > div {
  background: #f4ecdf;
  border-color: #ddcdb5;
}
html[data-theme="jewelry"] .schedule-visit-button,
html[data-theme="jewelry"] .magic-button {
  background: #a98743;
  border-color: #9c7837;
  color: #fffaf0;
}

/* Cyberpunk 4.2.2 — violeta estrutural + verde neon como sinal, não como tinta. */
html[data-theme="cyberpunk"] {
  --cyber-neon: #4ce8ac;
  --cyber-neon-soft: color-mix(in srgb, #4ce8ac 13%, transparent);
  --krm-row-hover-bg: color-mix(in srgb, #8a5bd1 11%, var(--surface));
  --krm-row-active-bg: color-mix(in srgb, #4ce8ac 8%, var(--surface));
  --krm-row-active-border: #4ce8ac;
  --krm-row-selected-bg: color-mix(in srgb, #8a5bd1 15%, var(--surface));
  --krm-row-selected-border: #4ce8ac;
  --krm-row-selected-text: #f0edfa;
  --krm-row-selected-muted: #b8afc9;
}
html[data-theme="cyberpunk"] .button.secondary,
html[data-theme="cyberpunk"] .icon-button,
html[data-theme="cyberpunk"] .krm-date-trigger,
html[data-theme="cyberpunk"] .krm-select-trigger {
  background: color-mix(in srgb, var(--surface) 76%, transparent);
  border-color: color-mix(in srgb, #8a5bd1 40%, var(--line));
  backdrop-filter: blur(7px);
}
html[data-theme="cyberpunk"] .button.secondary:hover,
html[data-theme="cyberpunk"] .icon-button:hover {
  border-color: color-mix(in srgb, var(--cyber-neon) 60%, var(--line));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--cyber-neon) 16%, transparent),
              0 0 14px color-mix(in srgb, var(--cyber-neon) 10%, transparent);
}
html[data-theme="cyberpunk"] .agenda-event-chip,
html[data-theme="cyberpunk"] .agenda-event-type {
  border-color: color-mix(in srgb, var(--cyber-neon) 48%, var(--line));
  background: color-mix(in srgb, var(--cyber-neon) 9%, var(--surface));
  color: #79f2c4;
}
html[data-theme="cyberpunk"] .agenda-event-chip:hover {
  background: color-mix(in srgb, var(--cyber-neon) 14%, var(--surface));
  box-shadow: inset 2px 0 0 color-mix(in srgb, var(--cyber-neon) 72%, transparent);
}
html[data-theme="cyberpunk"] .filter-icon-toggle,
html[data-theme="cyberpunk"] .lead-columns-button {
  border-color: color-mix(in srgb, var(--cyber-neon) 30%, var(--line));
}
html[data-theme="cyberpunk"] .lead-table-panel,
html[data-theme="cyberpunk"] .atendimento-sidebar,
html[data-theme="cyberpunk"] .krm-calendar {
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--cyber-neon) 7%, transparent);
}
html[data-theme="cyberpunk"] input:focus,
html[data-theme="cyberpunk"] textarea:focus,
html[data-theme="cyberpunk"] select:focus {
  border-color: color-mix(in srgb, var(--cyber-neon) 72%, var(--line));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--cyber-neon) 10%, transparent);
}

/* Krampus: seleção em brasa apagada, nunca vermelho chapado. */
html[data-theme="krampus"] {
  --krm-row-hover-bg: #211d19;
  --krm-row-active-bg: #29211c;
  --krm-row-active-border: #9b5b43;
  --krm-row-selected-bg: #2b211c;
  --krm-row-selected-border: #a36349;
  --krm-row-selected-text: #ece2d6;
  --krm-row-selected-muted: #ab9d8f;
}

/* Cury: seleção azul de baixa saturação, preservando caráter corporativo. */
html[data-theme="cury"] {
  --krm-row-hover-bg: #eaf3f9;
  --krm-row-active-bg: #dcecf7;
  --krm-row-active-border: #0877c9;
  --krm-row-selected-bg: #d5e8f5;
  --krm-row-selected-border: #0877c9;
  --krm-row-selected-text: #173654;
  --krm-row-selected-muted: #60798e;
}
html[data-theme="cury-space"] {
  --krm-row-hover-bg: #102b48;
  --krm-row-active-bg: #123657;
  --krm-row-active-border: #39a6f1;
  --krm-row-selected-bg: #103553;
  --krm-row-selected-border: #4bb2f4;
  --krm-row-selected-text: #edf7ff;
  --krm-row-selected-muted: #9bbbd6;
}

@media (max-width: 620px) {
  .schedule-action-row { grid-template-columns: 1fr 1.1fr; }
  .contact-tools { grid-template-columns: 1fr; }
  .contact-tools .qr-box { display: none !important; }
}

/* ==========================================================
   KRM 1.6 DEV Stabilization 4.2.3 — Inline edit + theme polish
   ========================================================== */

/* Central: o lápis transforma os dados existentes em controles; não abre outro formulário. */
.sidebar-identity { min-width: 0; flex: 1; }
.sidebar-project-line { display:flex; align-items:center; gap:7px; min-width:0; }
.sidebar-project-line p { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sidebar-status-pill {
  display:inline-flex; align-items:center; min-height:20px; padding:2px 7px;
  border:1px solid var(--line); border-radius:999px;
  background:var(--theme-badge, var(--surface)); color:var(--theme-badge-text, var(--muted));
  font-size:.61rem; font-weight:700; white-space:nowrap;
}
.inline-edit-project { grid-template-columns:minmax(0,1.25fr) minmax(108px,.75fr); gap:6px; margin-top:5px; }
.inline-edit-contact { grid-template-columns:1fr; gap:5px; }
.inline-edit-project:not(.hidden), .inline-edit-contact:not(.hidden) { display:grid; }
.atendimento-sidebar [data-inline-edit] { min-width:0; }
.atendimento-sidebar input[data-inline-edit],
.atendimento-sidebar select[data-inline-edit],
.atendimento-sidebar textarea[data-inline-edit],
.atendimento-sidebar .inline-edit input,
.atendimento-sidebar .inline-edit select,
.atendimento-sidebar .inline-edit textarea {
  width:100%; min-width:0; min-height:32px; padding:5px 8px; border-radius:8px;
  font-size:.72rem;
}
.atendimento-sidebar .detail-grid > div > .inline-edit:not(.hidden) { display:block; margin-top:2px; }
.sidebar-notes-compact { margin-top:7px; padding:7px 1px 0; border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent); }
.sidebar-notes-head { display:flex; justify-content:space-between; gap:8px; align-items:center; }
.sidebar-notes-head > span { color:var(--muted); font-size:.61rem; text-transform:uppercase; letter-spacing:.035em; }
.sidebar-notes-compact p { margin:3px 0 0; color:var(--text); font-size:.72rem; line-height:1.35; white-space:pre-wrap; overflow-wrap:anywhere; }
.sidebar-notes-compact textarea { min-height:62px !important; resize:vertical; margin-top:4px; }
.lead-autosave-status { margin:0; font-size:.59rem; }

/* Contato: QR sem moldura ornamental e usando toda a área útil. */
.contact-tools { grid-template-columns:minmax(120px,.9fr) minmax(96px,1.1fr); align-items:stretch; }
.contact-tools .qr-box {
  min-width:0; padding:0; border:0 !important; border-radius:0; background:transparent !important;
  box-shadow:none !important; display:grid; place-items:center; align-content:center;
}
.contact-tools .qr-box img {
  width:min(100%,108px); height:auto; max-width:108px; aspect-ratio:1/1; object-fit:contain;
  border:0; border-radius:3px; box-shadow:none;
}
.contact-tools .qr-box small { display:none; }

/* Jewelry: caixa de joias — ouro é estrutura, pedras são estados. */
html[data-theme="jewelry"] {
  --jewel-gold:#aa8745;
  --jewel-emerald:#176b58;
  --jewel-sapphire:#315f8f;
  --jewel-ruby:#913c50;
  --krm-row-active-bg:#eee3d2;
  --krm-row-active-border:var(--jewel-sapphire);
  --krm-row-selected-bg:#e7ddcc;
  --krm-row-selected-border:var(--jewel-emerald);
}
html[data-theme="jewelry"] .lead-table-row.bulk-selected {
  outline:1px solid color-mix(in srgb,var(--jewel-emerald) 60%,transparent) !important;
  box-shadow:inset 3px 0 0 var(--jewel-emerald), inset 0 1px 0 color-mix(in srgb,var(--jewel-gold) 24%,transparent) !important;
}
html[data-theme="jewelry"] .kanban-card.bulk-selected {
  outline:1px solid color-mix(in srgb,var(--jewel-emerald) 72%,transparent) !important;
  background:color-mix(in srgb,var(--surface) 92%,var(--jewel-emerald) 8%) !important;
  box-shadow:inset 3px 0 0 var(--jewel-emerald), 0 5px 16px color-mix(in srgb,var(--jewel-gold) 10%,transparent) !important;
}
html[data-theme="jewelry"] .lead-table-row.active:not(.bulk-selected),
html[data-theme="jewelry"] .kanban-card:hover:not(.bulk-selected) {
  outline-color:color-mix(in srgb,var(--jewel-sapphire) 42%,transparent);
  box-shadow:inset 3px 0 0 var(--jewel-sapphire), 0 4px 14px color-mix(in srgb,var(--jewel-gold) 8%,transparent);
}
html[data-theme="jewelry"] input[type="checkbox"] { accent-color:var(--jewel-emerald); }
html[data-theme="jewelry"] .danger,
html[data-theme="jewelry"] .danger-outline { --danger:var(--jewel-ruby); }
html[data-theme="jewelry"] .sidebar-status-pill { border-color:color-mix(in srgb,var(--jewel-gold) 42%,var(--line)); }

/* Cyberpunk: hover e seleção ganham luz lateral neon, sempre escopada ao tema. */
html[data-theme="cyberpunk"] .kanban-card:hover:not(.bulk-selected) {
  border-color:color-mix(in srgb,var(--cyber-neon) 62%,var(--line));
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--cyber-neon) 92%,transparent),
             0 0 16px color-mix(in srgb,var(--cyber-neon) 18%,transparent),
             0 7px 24px color-mix(in srgb,#8a5bd1 12%,transparent) !important;
}
html[data-theme="cyberpunk"] .kanban-card.bulk-selected {
  outline:1px solid color-mix(in srgb,var(--cyber-neon) 78%,transparent) !important;
  background:color-mix(in srgb,#8a5bd1 16%,var(--surface)) !important;
  box-shadow:inset 3px 0 0 var(--cyber-neon),
             0 0 18px color-mix(in srgb,var(--cyber-neon) 22%,transparent) !important;
}
html[data-theme="cyberpunk"] .lead-table-row.bulk-selected {
  outline:1px solid color-mix(in srgb,var(--cyber-neon) 68%,transparent) !important;
  box-shadow:inset 3px 0 0 var(--cyber-neon), 0 0 12px color-mix(in srgb,var(--cyber-neon) 12%,transparent) !important;
}
html[data-theme="cyberpunk"] .lead-table-row:hover:not(.bulk-selected) {
  box-shadow:inset 2px 0 0 color-mix(in srgb,var(--cyber-neon) 70%,transparent);
}
html[data-theme="cyberpunk"] input[type="checkbox"] { accent-color:var(--cyber-neon); }

@media (max-width:620px) {
  .inline-edit-project { grid-template-columns:1fr; }
  .contact-tools { grid-template-columns:1fr; }
  .contact-tools .qr-box { display:none !important; }
}

/* ======================================================================
   KRM 1.6 Stabilization 4.2.4 — Unified Attendance Card
   Leads + Kanban share the same compact operational language.
   ====================================================================== */
.attendance-card-head{align-items:flex-start;gap:10px}.attendance-identity{min-width:0;flex:1}.attendance-title-row{display:flex;align-items:center;gap:7px;min-width:0}.attendance-title-row h2{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-name-input{width:100%;font-size:1.05rem;font-weight:800}.attendance-contact-lines{padding:8px 10px}.attendance-contact-display{display:grid;gap:3px}.contact-inline-row{display:flex;align-items:center;gap:6px;min-width:0}.contact-inline-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-copy-button{width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;cursor:pointer;opacity:.55;transition:background .14s,color .14s,opacity .14s,transform .14s}.contact-inline-row:hover .inline-copy-button,.inline-copy-button:hover,.inline-copy-button:focus-visible{opacity:1;color:var(--krm-primary,var(--green-2));background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 9%,transparent);outline:none}.inline-copy-button:active{transform:scale(.92)}
.attendance-facts{gap:6px}.attendance-facts>div{padding:7px 8px;min-height:52px}.attendance-facts>div>span{font-size:.61rem;letter-spacing:.025em}.attendance-facts>div>strong{font-size:.79rem;line-height:1.2}.attendance-notes{padding-block:8px}.attendance-notes p{margin:4px 0 0;font-size:.75rem;line-height:1.35;white-space:pre-wrap}.attendance-broker-display{display:flex;align-items:baseline;gap:7px;padding:2px 0 7px}.attendance-broker-display small{color:var(--muted);font-size:.64rem}.attendance-broker-display strong{font-size:.78rem}.compact-field{gap:4px!important;font-size:.66rem!important}.compact-field select{min-height:36px!important;height:36px!important}.attendance-service-section{padding-top:10px}.attendance-section-title h3{margin-bottom:6px}.compact-contact-actions{gap:6px}.compact-contact-actions .button{min-height:34px;padding:7px 10px;font-size:.74rem}.attendance-actions-qr{grid-template-columns:minmax(118px,.68fr) minmax(112px,1fr);gap:9px;align-items:stretch}.attendance-actions-qr .qr-box{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;display:grid;place-items:center;min-height:78px}.attendance-actions-qr .qr-box img{width:min(100%,112px)!important;height:auto!important;max-height:112px;object-fit:contain;border:0!important;border-radius:5px;background:#fff;padding:5px}.attendance-actions-qr .qr-box small{display:none!important}
.atendimento-sidebar [data-inline-edit]:not(.hidden){animation:krm-inline-edit-in .12s ease}.atendimento-sidebar .inline-edit-contact:not(.hidden){display:grid;gap:5px}.atendimento-sidebar .inline-edit-project:not(.hidden){display:grid}.atendimento-sidebar label.inline-edit:not(.hidden){display:grid}.atendimento-sidebar input[data-inline-edit]:not(.hidden),.atendimento-sidebar select[data-inline-edit]:not(.hidden),.atendimento-sidebar textarea[data-inline-edit]:not(.hidden){display:block}.atendimento-sidebar .attendance-name-input:not(.hidden){display:block}.atendimento-sidebar .sidebar-edit-button.active{color:var(--krm-primary,var(--green-2));background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 10%,transparent)}
@keyframes krm-inline-edit-in{from{opacity:.45;transform:translateY(-2px)}to{opacity:1;transform:none}}

/* Kanban attendance card: no isolated colored QR panel, no form-page feel. */
.kanban-modal.attendance-card-modal{width:min(620px,94vw);max-height:min(760px,92vh);padding:18px;overflow:auto}.attendance-card-modal .modal-header{margin-bottom:8px}.attendance-card-modal .modal-contact{margin-bottom:8px}.kanban-attendance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(118px,148px);gap:12px;align-items:start}.kanban-attendance-main{min-width:0;display:grid;gap:8px}.kanban-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-card-modal [data-kanban-edit]:not(.hidden){animation:krm-inline-edit-in .12s ease}.attendance-card-modal .inline-edit-project:not(.hidden),.attendance-card-modal .inline-edit-contact:not(.hidden){display:grid}.attendance-card-modal .inline-edit-project{grid-template-columns:minmax(0,1.15fr) minmax(126px,.85fr);gap:6px}.attendance-card-modal .inline-edit-contact{grid-template-columns:1fr 1fr;gap:6px}.attendance-card-modal input[data-kanban-edit]:not(.hidden),.attendance-card-modal select[data-kanban-edit]:not(.hidden),.attendance-card-modal textarea[data-kanban-edit]:not(.hidden){display:block}.attendance-card-modal label[data-kanban-edit]:not(.hidden){display:grid}.attendance-card-modal .attendance-name-input:not(.hidden){display:block}.attendance-card-modal .sidebar-edit-button.active{color:var(--krm-primary,var(--green-2));background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 10%,transparent)}
.kanban-modal-qr.attendance-qr{min-height:100%;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:grid;place-items:start center}.kanban-modal-qr.attendance-qr img{width:100%!important;max-width:146px!important;height:auto!important;max-height:none!important;padding:6px!important;border:0!important;border-radius:6px!important;background:#fff!important;box-shadow:none!important}.kanban-modal-qr.attendance-qr small,.kanban-modal-qr.attendance-qr .kanban-contact-preference{display:none!important}.compact-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}.compact-primary-actions .button{min-height:36px;padding:8px 10px}.compact-schedule-section{margin-top:9px;padding-top:10px}.compact-schedule-section h3{margin-bottom:7px}.compact-schedule-section .compact-grid{gap:7px}.compact-schedule-section .schedule-action-row{margin-top:7px}.compact-schedule-section .schedule-action-row>*{min-width:0}.compact-schedule-section .schedule-visit-button{flex:1.25}.attendance-card-modal .lead-danger-zone{margin-top:8px;padding-top:8px}.attendance-card-modal .sidebar-message{min-height:0}

/* Jewelry behaves as a jewelry box: gems are accents, not generic teal. */
html[data-theme="jewelry"] .inline-copy-button:hover,html[data-theme="jewelry"] .inline-copy-button:focus-visible{color:#8a2f43;background:color-mix(in srgb,#8a2f43 8%,transparent)}html[data-theme="jewelry"] .attendance-card-modal .sidebar-edit-button.active,html[data-theme="jewelry"] .atendimento-sidebar .sidebar-edit-button.active{color:#356b67;background:color-mix(in srgb,#356b67 9%,transparent)}
/* Cyberpunk lets utility actions catch a little neon without contaminating other themes. */
html[data-theme="cyberpunk"] .inline-copy-button:hover,html[data-theme="cyberpunk"] .inline-copy-button:focus-visible{color:#4ce8ac;text-shadow:0 0 10px color-mix(in srgb,#4ce8ac 72%,transparent);box-shadow:0 0 12px color-mix(in srgb,#4ce8ac 14%,transparent)}html[data-theme="cyberpunk"] .attendance-card-modal .sidebar-edit-button.active,html[data-theme="cyberpunk"] .atendimento-sidebar .sidebar-edit-button.active{color:#4ce8ac;box-shadow:0 0 14px color-mix(in srgb,#4ce8ac 14%,transparent)}

@media(max-width:760px){.kanban-modal.attendance-card-modal{width:min(96vw,560px);padding:14px}.kanban-attendance-grid{grid-template-columns:1fr}.kanban-modal-qr.attendance-qr{display:none!important}.attendance-card-modal .inline-edit-project,.attendance-card-modal .inline-edit-contact{grid-template-columns:1fr}.attendance-actions-qr{grid-template-columns:1fr}.attendance-actions-qr .qr-box{display:none!important}.kanban-facts{grid-template-columns:1fr 1fr}}

/* ================================================================
   KRM 1.6 Stabilization 4.2.5 — True Minimal Inline Edit
   O cartão não vira formulário: o próprio texto recebe edição.
   ================================================================ */
.kanban-workflow-hint{display:none!important}

.atendimento-sidebar.inline-editing [data-inline-text],
.attendance-card-modal.inline-editing [data-kanban-text]{
  cursor:text;
  outline:none;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font:inherit!important;
  color:inherit!important;
  border-radius:0!important;
  padding:0!important;
  min-height:0!important;
  caret-color:var(--krm-primary,var(--green-2));
  text-decoration:none;
}
.atendimento-sidebar.inline-editing [data-inline-text]:focus,
.attendance-card-modal.inline-editing [data-kanban-text]:focus{
  outline:none!important;
  box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--krm-primary,var(--green-2)) 72%,transparent)!important;
}
.atendimento-sidebar.inline-editing [data-inline-text]:empty::before,
.attendance-card-modal.inline-editing [data-kanban-text]:empty::before{
  content:'Digite…';
  color:var(--muted);
  opacity:.52;
  pointer-events:none;
}

/* Caret forte: principal indicação de que o modo de escrita está ativo. */
.atendimento-sidebar.inline-editing [contenteditable="true"],
.attendance-card-modal.inline-editing [contenteditable="true"]{
  caret-color:var(--krm-primary,var(--green-2));
}

/* Selects continuam restritos aos valores válidos, mas não viram caixas de formulário. */
.inline-minimal-select{
  appearance:auto;
  -webkit-appearance:auto;
  width:auto;
  max-width:100%;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0 16px 0 0!important;
  border:0!important;
  border-bottom:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 42%,transparent)!important;
  border-radius:0!important;
  background-color:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  outline:none!important;
  cursor:pointer;
}
.inline-minimal-select:focus{
  border-bottom-color:var(--krm-primary,var(--green-2))!important;
  box-shadow:none!important;
}
.sidebar-project-line .inline-minimal-select{font-size:.72rem;font-weight:700;color:var(--text)}
.attendance-facts .inline-minimal-select{font-size:.79rem;font-weight:700;color:var(--text)}
.attendance-broker-display .inline-minimal-select{font-size:.78rem;font-weight:700;color:var(--text)}

/* Ícones de cópia são auxiliares, não botões visuais dominantes. */
.inline-copy-button{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:.66rem!important;
  opacity:.44;
}
.inline-copy-button:hover,.inline-copy-button:focus-visible{opacity:1}

.contact-phone-row>span:first-child::before{content:'📱 ';font-size:.82em}
.contact-email-row>span:first-child::before{content:'✉️ ';font-size:.82em}

/* O modo edição não altera geometria, tipografia ou cor dos cartões. */
.atendimento-sidebar.inline-editing .attendance-facts>div,
.attendance-card-modal.inline-editing .attendance-facts>div,
.atendimento-sidebar.inline-editing .attendance-contact-lines,
.attendance-card-modal.inline-editing .attendance-contact-lines,
.atendimento-sidebar.inline-editing .attendance-notes,
.attendance-card-modal.inline-editing .attendance-notes{
  background:inherit;
  color:inherit;
}

/* Backings nunca aparecem: só existem para o payload/API. */
#quickName,#quickProject,#quickPhone,#quickEmail,#quickIncome,#quickSerasa,#quickNotes,
#kanbanEditName,#kanbanEditProject,#kanbanEditPhone,#kanbanEditEmail,#kanbanEditIncome,#kanbanEditSerasa,#kanbanModalNotes{
  display:none!important;
}

/* Evita que regras legadas da 4.2.4 ressuscitem caixas. */
.atendimento-sidebar .inline-edit-contact,
.atendimento-sidebar .inline-edit-project,
.attendance-card-modal .inline-edit-contact,
.attendance-card-modal .inline-edit-project{display:none!important}

html[data-theme="jewelry"] .atendimento-sidebar.inline-editing [data-inline-text]:focus,
html[data-theme="jewelry"] .attendance-card-modal.inline-editing [data-kanban-text]:focus{
  box-shadow:inset 0 -1px 0 #9f7b3b!important;
  caret-color:#8a2f43;
}
html[data-theme="cyberpunk"] .atendimento-sidebar.inline-editing [data-inline-text]:focus,
html[data-theme="cyberpunk"] .attendance-card-modal.inline-editing [data-kanban-text]:focus{
  box-shadow:inset 0 -1px 0 #4ce8ac,0 3px 10px color-mix(in srgb,#4ce8ac 12%,transparent)!important;
  caret-color:#4ce8ac;
}


/* ================================================================
   KRM 1.6 Stabilization 4.2.6 — Attendance Center Refactor
   Praticidade primeiro: edição por campo, controles sob demanda,
   cópia inline nativa e filtros de status "acesos".
   ================================================================ */

/* O lápis arma a edição, mas o layout continua sendo o mesmo cartão. */
.atendimento-sidebar.inline-edit-ready [data-inline-text],
.atendimento-sidebar.inline-edit-ready [data-inline-select-display],
.attendance-card-modal.inline-edit-ready [data-kanban-text],
.attendance-card-modal.inline-edit-ready [data-kanban-select-display]{
  cursor:text;
}
.atendimento-sidebar.inline-edit-ready [data-inline-select-display],
.attendance-card-modal.inline-edit-ready [data-kanban-select-display]{cursor:pointer}

/* Somente o campo efetivamente ativo recebe sinal de edição. */
.atendimento-sidebar .field-editing[data-inline-text],
.attendance-card-modal .field-editing[data-kanban-text]{
  cursor:text!important;
  outline:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--krm-primary,var(--green-2)) 78%,transparent)!important;
  border-radius:0!important;
  padding:0!important;
  font:inherit!important;
  color:inherit!important;
  caret-color:var(--krm-primary,var(--green-2))!important;
}
.atendimento-sidebar [data-inline-select].field-editing,
.attendance-card-modal [data-kanban-select].field-editing{
  display:inline-flex!important;
  width:auto;
  max-width:100%;
  min-height:28px!important;
  height:28px!important;
  padding:0 26px 0 7px!important;
  border-radius:7px!important;
  border:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 35%,var(--line))!important;
  background:color-mix(in srgb,var(--surface) 94%,transparent)!important;
  color:var(--text)!important;
  font:inherit!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--krm-primary,var(--green-2)) 7%,transparent)!important;
}

/* Central: densidade próxima ao cartão do Kanban. */
.atendimento-sidebar .attendance-card-head{margin-bottom:6px}
.atendimento-sidebar .attendance-contact-lines{margin-bottom:6px}
.atendimento-sidebar .attendance-facts{margin-bottom:4px}
.atendimento-sidebar .attendance-service-section{padding-top:8px}
.atendimento-sidebar .sidebar-section{padding-block:9px}
.atendimento-sidebar .attendance-notes{padding-block:6px}
.atendimento-sidebar .attendance-facts>div{min-height:46px;padding:6px 8px}

/* Ícone de copiar desenhado pelo próprio sistema; nunca imagem colada. */
.inline-copy-button{
  width:24px;height:24px;flex:0 0 24px;
  padding:0;border:0;border-radius:7px;background:transparent;
}
.krm-copy-icon{width:15px;height:15px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.inline-copy-button.copied{color:var(--krm-primary,var(--green-2));opacity:1}
.inline-copy-button.copied .krm-copy-icon{transform:scale(.92)}

/* Filtros de status: caixas compactas que "acendem" quando ativas. */
.filter-status-toggle{
  --filter-light:var(--krm-primary,var(--green-2));
  position:relative;display:inline-flex;align-items:center;gap:7px;
  min-height:32px;padding:5px 9px;
  border:1px solid var(--krm-border-soft,var(--line));
  border-radius:8px;
  background:color-mix(in srgb,var(--krm-control-bg,var(--surface)) 96%,transparent);
  color:var(--krm-text-soft,var(--muted));
  font-size:.7rem;font-weight:650;line-height:1;
  cursor:pointer;user-select:none;
  transition:background .14s,border-color .14s,color .14s,box-shadow .14s,transform .14s;
}
.filter-status-toggle input{
  position:absolute!important;width:1px!important;height:1px!important;
  opacity:0!important;pointer-events:none!important;
}
.filter-status-light{
  width:14px;height:14px;flex:0 0 14px;border-radius:4px;
  border:1px solid color-mix(in srgb,var(--filter-light) 42%,var(--krm-border-soft,var(--line)));
  background:transparent;
  box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--krm-control-bg,var(--surface)) 92%,transparent);
  transition:background .14s,border-color .14s,box-shadow .14s,transform .14s;
}
.filter-status-toggle:hover{
  border-color:color-mix(in srgb,var(--filter-light) 34%,var(--krm-border-soft,var(--line)));
  color:var(--krm-text-main,var(--text));
  transform:translateY(-1px);
}
.filter-status-toggle:has(input:checked){
  color:var(--krm-text-main,var(--text));
  border-color:color-mix(in srgb,var(--filter-light) 42%,var(--krm-border-soft,var(--line)));
  background:color-mix(in srgb,var(--filter-light) 7%,var(--krm-control-bg,var(--surface)));
}
.filter-status-toggle:has(input:checked) .filter-status-light{
  background:var(--filter-light);
  border-color:var(--filter-light);
  box-shadow:0 0 10px color-mix(in srgb,var(--filter-light) 22%,transparent),
             inset 0 0 0 2px color-mix(in srgb,var(--krm-control-bg,var(--surface)) 82%,transparent);
}
.filter-status-toggle:focus-within{
  outline:none;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--filter-light) 10%,transparent);
}

/* Jewelry: os filtros podem se comportar como pequenas pedras engastadas. */
html[data-theme="jewelry"] .filter-status-toggle:nth-child(4n+1){--filter-light:#2f7465}
html[data-theme="jewelry"] .filter-status-toggle:nth-child(4n+2){--filter-light:#315f91}
html[data-theme="jewelry"] .filter-status-toggle:nth-child(4n+3){--filter-light:#8a2f43}
html[data-theme="jewelry"] .filter-status-toggle:nth-child(4n+4){--filter-light:#9a7436}
html[data-theme="jewelry"] .filter-status-toggle:has(input:checked){
  box-shadow:0 5px 16px color-mix(in srgb,var(--filter-light) 10%,transparent);
}

/* Cyberpunk: caixa acesa + halo fino, sem espalhar neon pelo layout inteiro. */
html[data-theme="cyberpunk"] .filter-status-toggle{--filter-light:#4ce8ac}
html[data-theme="cyberpunk"] .filter-status-toggle:nth-child(even){--filter-light:#9c6cff}
html[data-theme="cyberpunk"] .filter-status-toggle:has(input:checked){
  box-shadow:0 0 13px color-mix(in srgb,var(--filter-light) 14%,transparent);
}
html[data-theme="cyberpunk"] .filter-status-toggle:has(input:checked) .filter-status-light{
  box-shadow:0 0 12px color-mix(in srgb,var(--filter-light) 48%,transparent),
             inset 0 0 0 2px color-mix(in srgb,var(--surface) 70%,transparent);
}

@media(max-width:760px){
  .filter-status-toggle{padding:5px 7px;gap:6px}
  .filter-status-label{font-size:.66rem}
}


/* ======================================================================
   KRM 1.6 DEV Stabilization 4.2.7 — Data Flow & Interaction Fixes
   ====================================================================== */

/* Histórico operacional: uma sessão curta aparece como um conjunto de deltas. */
.history-change-list{
  display:grid;
  gap:3px;
  margin-top:5px;
  color:var(--text);
  font-size:.72rem;
  line-height:1.35;
}
.history-change-list>span{
  display:block;
  padding-left:10px;
  position:relative;
}
.history-change-list>span::before{
  content:"";
  position:absolute;
  left:0;
  top:.58em;
  width:4px;
  height:4px;
  border-radius:999px;
  background:var(--krm-primary,var(--green-2));
  opacity:.72;
}

/* Selects inline aprimorados: o controle KRM só existe visualmente durante edição. */
.krm-select-shell.hidden{display:none!important}
.inline-minimal-select[data-inline-select],
.inline-minimal-select[data-kanban-select]{display:none!important}
.inline-editing .krm-select-shell:not(.hidden){
  min-width:0;
  width:100%;
}
.inline-editing .krm-select-shell:not(.hidden) .krm-select-trigger{
  min-height:30px;
  height:30px;
  padding:0 8px;
  border-radius:8px;
  font-size:.75rem;
}

/* Checkbox Light v2 — a linguagem aprovada nos filtros passa para seleção operacional. */
.lead-select-head input[type="checkbox"],
.lead-select-cell input[type="checkbox"],
.kanban-card-select input[type="checkbox"],
.filter-chip-checkbox input[type="checkbox"],
.filter-archived-toggle input[type="checkbox"]{
  appearance:none;
  -webkit-appearance:none;
  width:15px;
  height:15px;
  min-width:15px;
  margin:0;
  border:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 28%,var(--line));
  border-radius:4px;
  background:color-mix(in srgb,var(--surface) 92%,transparent);
  box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface) 78%,transparent);
  cursor:pointer;
  transition:background .13s ease,border-color .13s ease,box-shadow .13s ease,transform .13s ease;
}
.lead-select-head input[type="checkbox"]:hover,
.lead-select-cell input[type="checkbox"]:hover,
.kanban-card-select input[type="checkbox"]:hover,
.filter-chip-checkbox input[type="checkbox"]:hover,
.filter-archived-toggle input[type="checkbox"]:hover{
  border-color:color-mix(in srgb,var(--krm-primary,var(--green-2)) 62%,var(--line));
}
.lead-select-head input[type="checkbox"]:checked,
.lead-select-cell input[type="checkbox"]:checked,
.kanban-card-select input[type="checkbox"]:checked,
.filter-chip-checkbox input[type="checkbox"]:checked,
.filter-archived-toggle input[type="checkbox"]:checked{
  border-color:var(--krm-primary,var(--green-2));
  background:var(--krm-primary,var(--green-2));
  box-shadow:
    inset 0 0 0 3px color-mix(in srgb,var(--surface) 88%,transparent),
    0 0 0 1px color-mix(in srgb,var(--krm-primary,var(--green-2)) 18%,transparent);
}
.lead-select-head input[type="checkbox"]:indeterminate{
  border-color:var(--krm-primary,var(--green-2));
  background:linear-gradient(
    to bottom,
    transparent 39%,
    var(--krm-primary,var(--green-2)) 39% 61%,
    transparent 61%
  );
}
.lead-select-head input[type="checkbox"]:focus-visible,
.lead-select-cell input[type="checkbox"]:focus-visible,
.kanban-card-select input[type="checkbox"]:focus-visible,
.filter-chip-checkbox input[type="checkbox"]:focus-visible,
.filter-archived-toggle input[type="checkbox"]:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--krm-primary,var(--green-2)) 16%,transparent);
}

/* Jewelry usa pedras como luz funcional, sem teal genérico. */
html[data-theme="jewelry"] .lead-select-head input[type="checkbox"]:checked,
html[data-theme="jewelry"] .lead-select-cell input[type="checkbox"]:checked,
html[data-theme="jewelry"] .kanban-card-select input[type="checkbox"]:checked{
  --krm-primary:var(--jewel-emerald);
  box-shadow:
    inset 0 0 0 3px color-mix(in srgb,var(--surface) 88%,transparent),
    0 0 8px color-mix(in srgb,var(--jewel-emerald) 15%,transparent);
}
html[data-theme="jewelry"] .lead-select-head input[type="checkbox"]:indeterminate{
  --krm-primary:var(--jewel-sapphire);
}

/* Cyberpunk deixa a seleção emitir luz em vez de virar uma massa de neon. */
html[data-theme="cyberpunk"] .lead-select-head input[type="checkbox"]:checked,
html[data-theme="cyberpunk"] .lead-select-cell input[type="checkbox"]:checked,
html[data-theme="cyberpunk"] .kanban-card-select input[type="checkbox"]:checked{
  box-shadow:
    inset 0 0 0 3px color-mix(in srgb,var(--surface) 88%,transparent),
    0 0 10px color-mix(in srgb,var(--cyber-neon) 38%,transparent);
}

/* KRM 1.6 Stabilization 4.2.8 — dropdown único: corretor. */
#leadSidebar input[type="hidden"],
#kanbanLeadModal input[type="hidden"] { display: none !important; }
#leadSidebar .attendance-facts strong[data-inline-text],
#kanbanLeadModal .attendance-facts strong[data-kanban-text] {
  cursor: text;
}
#leadSidebar .attendance-facts strong[data-inline-text]:hover,
#kanbanLeadModal .attendance-facts strong[data-kanban-text]:hover {
  color: var(--krm-primary, var(--green-2));
}

/* KRM 1.6 Integration 4.3 — console de integrações externas. */
.integration-provider-actions{gap:6px;flex-wrap:wrap}.integration-provider-copy .integration-account-name{display:inline-block;margin-left:5px;font-size:.72rem;font-weight:700;color:var(--text)}.integration-provider-copy .integration-last-error{display:block;margin-top:4px;color:var(--danger,#c85858);max-width:58ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-provider-copy p{display:block!important}.meta-integration-console{display:grid;gap:14px;margin-bottom:16px}.meta-console-head{align-items:center}.meta-stat-strip{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.meta-stat-strip span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-raised,var(--surface));font-size:.68rem;color:var(--muted)}.meta-stat-strip strong{color:var(--text)}.meta-stat-strip .has-error{border-color:color-mix(in srgb,var(--danger,#c85858) 40%,var(--line))}.meta-stat-strip .has-warning{border-color:color-mix(in srgb,#d49a28 45%,var(--line))}.meta-webhook-card{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(280px,1fr);gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:var(--krm-radius-lg,14px);background:var(--surface-raised,var(--surface))}.meta-webhook-card>div:first-child{display:grid;gap:2px}.meta-webhook-card small{color:var(--muted);font-size:.7rem}.meta-webhook-card.is-warning{border-color:color-mix(in srgb,#d49a28 45%,var(--line))}.meta-webhook-url{min-width:0}.meta-webhook-url input{min-width:0;width:100%;font-size:.7rem}.meta-form-list{display:grid;gap:7px}.meta-form-routing-row{display:grid;grid-template-columns:minmax(180px,1.05fr) minmax(170px,.75fr) minmax(220px,1fr) auto auto;gap:10px;align-items:end;padding:10px 11px;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:var(--surface-raised,var(--surface))}.meta-form-identity{min-width:0;display:grid;gap:2px;align-self:center}.meta-form-identity strong,.meta-form-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-form-identity small{font-size:.66rem;color:var(--muted)}.meta-form-workspace,.meta-form-project{display:grid;gap:4px;font-size:.66rem;color:var(--muted)}.meta-form-workspace select,.meta-form-project select{min-width:0}.meta-form-active{align-self:center;margin-bottom:2px;white-space:nowrap}.meta-form-routing-row>.button{align-self:end}
@media(max-width:880px){.meta-webhook-card{grid-template-columns:1fr}.meta-form-routing-row{grid-template-columns:1fr 1fr}.meta-form-identity{grid-column:1/-1}.meta-form-active{justify-self:start}.meta-stat-strip{justify-content:flex-start}}
@media(max-width:560px){.meta-form-routing-row{grid-template-columns:1fr}.meta-form-identity{grid-column:auto}.meta-form-routing-row>.button{justify-self:start}.integration-provider-actions{grid-column:1/-1;justify-content:flex-start}}
.meta-page-status-list{display:flex;gap:7px;flex-wrap:wrap}.meta-page-status{display:flex;align-items:center;gap:7px;min-width:180px;padding:7px 9px;border:1px solid var(--line);border-radius:var(--krm-radius-md,10px);background:var(--surface-raised,var(--surface))}.meta-page-status-dot{width:8px;height:8px;border-radius:50%;background:#d49a28;box-shadow:0 0 0 3px color-mix(in srgb,#d49a28 12%,transparent)}.meta-page-status.is-ok .meta-page-status-dot{background:var(--krm-primary,var(--green-2));box-shadow:0 0 0 3px color-mix(in srgb,var(--krm-primary,var(--green-2)) 12%,transparent)}.meta-page-status>div{min-width:0;display:grid;gap:1px}.meta-page-status strong{font-size:.72rem}.meta-page-status small{max-width:48ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.64rem}


/* KRM 1.6 Release Closure 4.4 — confirmação nativa substituída pelo Design System. */
.krm-confirm-dialog{width:min(430px,calc(100vw - 28px))}.krm-confirm-dialog form{display:grid;gap:12px}.krm-confirm-dialog h2{margin:0}.krm-confirm-dialog p{margin:0;color:var(--muted);line-height:1.5}.krm-confirm-dialog .dialog-actions{justify-content:flex-end}


/* KRM 1.6 Release Closure 4.4 — páginas públicas de conformidade. */
.legal-page{max-width:900px;margin:28px auto;display:grid;gap:12px}.legal-page h2{margin:12px 0 0;font-size:1rem}.legal-page p{margin:0;line-height:1.65;color:var(--muted)}.legal-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.legal-status-card{padding:14px;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:var(--surface-raised,var(--surface))}

/* 4.4: evita o flash em que colunas aparecem e somem enquanto a preferência carrega. */
.lead-configurable-table:not([data-columns-ready="1"]){visibility:hidden}


/* ==========================================================
   KRM 1.6 Full Release — fechamento visual e diálogos nativos
   ========================================================== */

/* A Central de Ações passa a definir a própria altura. O conteúdo de um lead
   previamente aberto não pode mais esticar o estado de multiseleção. */
.atendimento-sidebar.bulk-mode {
  padding: 0;
  overflow: hidden;
}
.atendimento-sidebar.bulk-mode > .sidebar-empty,
.atendimento-sidebar.bulk-mode > .sidebar-content {
  display: none !important;
}
.atendimento-sidebar.bulk-mode > .bulk-action-center {
  position: relative;
  inset: auto;
  width: 100%;
  min-height: 0;
  overflow: visible;
  border-radius: inherit;
}

/* Diálogos de sistema do KRM: confirm/alert/prompt compartilham o Design System. */
.krm-confirm-dialog,
.krm-alert-dialog,
.krm-prompt-dialog {
  width: min(440px, calc(100vw - 28px));
}
.krm-dialog-message {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
  white-space: pre-line;
}
.krm-prompt-dialog input[data-krm-prompt-input] {
  width: 100%;
}

/* ==========================================================
   KRM 1.6 Full Release — Equipe operacional + Conexões pessoais
   ========================================================== */

/* Conexões é um perfil global do usuário. */
.integration-hub-heading > div{display:grid;gap:4px}
.integration-hub-heading p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}
.workspace-create-form-governance{grid-template-columns:minmax(0,1fr) 150px minmax(210px,.9fr) auto}
.connection-domain-note{display:block!important;color:var(--muted);font-size:.66rem;line-height:1.45}
.connection-automation-panel .integration-scope-head p,
.meta-integration-console .integration-scope-head p{display:block;font-size:.7rem;line-height:1.4;max-width:760px}
.connection-automation-panel .integration-lock-note{display:inline-flex}

/* Equipe — leitura operacional primeiro, administração depois. */
.team-page-heading{align-items:flex-end}
.team-page-heading p{margin:3px 0 0;color:var(--muted);font-size:.74rem}
.team-admin-badge,
.team-admin-policy{
  display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;
  border:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 28%,var(--line));
  border-radius:999px;background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 8%,var(--surface));
  color:color-mix(in srgb,var(--krm-primary,var(--green-2)) 78%,var(--text));
  font-size:.64rem;font-weight:800;white-space:nowrap;
}
.team-operational-grid{
  display:grid;grid-template-columns:minmax(280px,.66fr) minmax(0,1.34fr);
  gap:var(--krm-card-gap,12px);margin-bottom:var(--krm-card-gap,12px);align-items:stretch;
}
.team-operational-grid .panel,.team-operational-bottom-grid .panel{margin:0}
.team-overview-members,.team-weekly-agenda,.team-queues-overview,.team-panorama-card,.team-notices-card{min-width:0}
.team-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.team-overview-head h2{margin:0;font-size:1rem}
.team-overview-head small{display:block;margin-top:3px;color:var(--muted);font-size:.64rem}
.team-member-overview-list{display:grid;gap:0}
.team-member-overview-row{
  display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;
  min-height:62px;padding:9px 2px;border-bottom:1px solid var(--line);
}
.team-member-overview-row:last-child{border-bottom:0}
.team-member-avatar{
  width:36px;height:36px;display:grid;place-items:center;border-radius:50%;
  background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 16%,var(--surface-2));
  border:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 25%,var(--line));
  color:var(--text);font-size:.76rem;font-weight:900;
}
.team-member-overview-copy{display:grid;gap:2px;min-width:0}
.team-member-overview-copy strong{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-member-overview-copy small{font-size:.65rem;color:var(--muted)}
.team-member-overview-copy b{color:var(--krm-primary,var(--green-2));font-weight:800}
.team-member-overview-state{justify-self:end}
.team-soft-pill{
  display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;
  background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 8%,var(--surface));
  border:1px solid color-mix(in srgb,var(--krm-primary,var(--green-2)) 16%,var(--line));
  color:var(--muted);font-size:.6rem;font-weight:760;white-space:nowrap;
}
.team-weekly-head{align-items:center}
.team-week-strip{
  display:grid;grid-template-columns:repeat(7,minmax(124px,1fr));gap:7px;
  min-width:900px;
}
.team-weekly-agenda{overflow:hidden}
.team-weekly-agenda .team-week-strip{overflow:visible}
.team-weekly-agenda{position:relative}
.team-weekly-agenda::after{
  content:"";display:block;height:3px;width:34%;margin:9px auto -6px;
  border-radius:999px;background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 56%,transparent);opacity:.55;
}
.team-weekly-agenda{container-type:inline-size}
.team-week-strip{overflow-x:auto;padding:1px 1px 5px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--krm-primary,var(--green-2)) 42%,transparent) transparent}
.team-week-day{
  min-height:210px;padding:10px;border:1px solid var(--line);border-radius:var(--krm-radius-md,11px);
  background:color-mix(in srgb,var(--surface-2) 90%,transparent);
}
.team-week-day.is-today{border-color:color-mix(in srgb,var(--krm-primary,var(--green-2)) 34%,var(--line));background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 5%,var(--surface-2))}
.team-week-day>header{display:grid;justify-items:center;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.team-week-day>header strong{font-size:.73rem}.team-week-day.is-today>header strong{color:var(--krm-primary,var(--green-2))}
.team-week-day>header small{font-size:.59rem;color:var(--muted)}
.team-week-events{display:grid;gap:8px;padding-top:9px;align-content:start}
.team-week-event{display:grid;gap:2px;min-width:0}
.team-week-event>div{display:flex;align-items:center;justify-content:space-between;gap:5px}
.team-week-event time{font-size:.59rem;color:var(--muted);font-variant-numeric:tabular-nums}
.team-week-event span{display:inline-flex;padding:2px 6px;border-radius:999px;font-size:.55rem;font-weight:850;white-space:nowrap}
.team-week-event>small{font-size:.58rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-week-event-visita span{background:color-mix(in srgb,#9b5de5 24%,var(--surface));color:color-mix(in srgb,#caa7ff 86%,var(--text))}
.team-week-event-retorno span{background:color-mix(in srgb,#3b82f6 22%,var(--surface));color:color-mix(in srgb,#7db7ff 86%,var(--text))}
.team-week-event-atendimento span{background:color-mix(in srgb,#f59e0b 22%,var(--surface));color:color-mix(in srgb,#ffbe45 88%,var(--text))}
.team-week-event-reuniao span{background:color-mix(in srgb,#22c55e 18%,var(--surface));color:color-mix(in srgb,#73e89a 84%,var(--text))}
.team-week-event-outro span{background:color-mix(in srgb,var(--muted) 18%,var(--surface));color:var(--muted)}
.team-week-empty{display:grid;place-items:center;min-height:100px;text-align:center;color:var(--muted);font-size:.6rem}
.team-week-more{color:var(--muted);font-size:.57rem}

.team-operational-bottom-grid{
  display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,.82fr) minmax(320px,1.18fr);
  gap:var(--krm-card-gap,12px);margin-bottom:var(--krm-card-gap,12px);
}
.team-queue-overview-list{display:grid;gap:8px}
.team-queue-overview-row{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:10px;border:1px solid var(--line);border-radius:var(--krm-radius-md,11px);background:var(--surface-2);
}
.team-queue-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--krm-primary,var(--green-2)) 12%,var(--surface));color:var(--krm-primary,var(--green-2));font-size:1rem;font-weight:900}
.team-queue-overview-row>div{min-width:0;display:grid;gap:2px}.team-queue-overview-row strong{font-size:.74rem}.team-queue-overview-row small{font-size:.62rem;color:var(--muted)}
.team-queue-state{font-size:.59rem;color:color-mix(in srgb,#22c55e 80%,var(--text));white-space:nowrap}.team-queue-state.is-paused{color:#d49a28}
.team-panorama-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.team-panorama-grid>div{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:var(--krm-radius-md,11px);background:var(--surface-2)}
.team-panorama-grid span{color:var(--muted);font-size:.62rem}.team-panorama-grid strong{font-size:1.28rem;line-height:1}
.team-notice-list{display:grid;gap:0}
.team-notice-row{display:grid;grid-template-columns:8px minmax(0,1fr);gap:10px;padding:9px 2px;border-bottom:1px solid var(--line)}
.team-notice-row:last-child{border-bottom:0}.team-notice-dot{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--krm-primary,var(--green-2));box-shadow:0 0 0 3px color-mix(in srgb,var(--krm-primary,var(--green-2)) 10%,transparent)}
.team-notice-row>div{display:grid;gap:2px;min-width:0}.team-notice-row strong{font-size:.72rem}.team-notice-row small{font-size:.62rem;color:var(--muted);line-height:1.4}.team-notice-meta{opacity:.72}

/* Administração usa a mesma página e só aparece para administradores. */
.team-admin-shell{display:grid;gap:14px;margin-bottom:16px}
.team-admin-shell-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.team-admin-shell-head h2{margin:0 0 3px;font-size:1.05rem}.team-admin-shell-head p{margin:0;color:var(--muted);font-size:.68rem;line-height:1.45}
.team-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.team-admin-grid-wide{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.team-admin-section{min-width:0;padding:13px;border:1px solid var(--line);border-radius:var(--krm-radius-lg,13px);background:color-mix(in srgb,var(--surface-2) 90%,transparent)}
.team-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.team-section-heading h3{margin:0;font-size:.82rem}
.team-admin-member-list{display:grid;gap:6px}.team-admin-member-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.team-admin-member-row:last-child{border-bottom:0}.team-admin-member-row>div:first-child{display:grid;gap:2px}.team-admin-member-row strong{font-size:.72rem}.team-admin-member-row small{font-size:.61rem;color:var(--muted)}.team-admin-self{font-size:.62rem;color:var(--muted)}
.team-inline-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.team-notice-form{display:grid;gap:8px}.team-notice-form label{display:grid;gap:4px;color:var(--muted);font-size:.63rem}.team-notice-form textarea{resize:vertical;min-height:68px}
.team-admin-notice-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.team-text-action{border:0;background:transparent;color:var(--muted);font:inherit;font-size:.6rem;cursor:pointer;padding:3px 0}.team-text-action:hover{color:var(--danger,#c85858)}
.team-active-invites{margin-top:10px}.team-active-invites h4{margin:0 0 6px;font-size:.67rem;color:var(--muted)}

@media(max-width:1180px){
  .team-operational-grid{grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr)}
  .team-operational-bottom-grid{grid-template-columns:1fr 1fr}.team-notices-card{grid-column:1/-1}
  .workspace-create-form-governance{grid-template-columns:1fr 150px 1fr}.workspace-create-form-governance>.button{grid-column:1/-1;justify-self:start}
}
@media(max-width:860px){
  .team-operational-grid,.team-operational-bottom-grid,.team-admin-grid,.team-admin-grid-wide{grid-template-columns:1fr}
  .team-notices-card{grid-column:auto}
  .team-weekly-agenda{overflow-x:auto}
  .team-admin-shell-head{flex-direction:column}
  .workspace-create-form-governance{grid-template-columns:1fr 1fr}.workspace-create-form-governance [data-partnership-governance]{grid-column:1/-1}.workspace-create-form-governance>.button{grid-column:1/-1}
}
@media(max-width:620px){
  .team-member-overview-row{grid-template-columns:34px minmax(0,1fr)}.team-member-overview-state{grid-column:2;justify-self:start}
  .team-panorama-grid{grid-template-columns:1fr 1fr}
  .team-admin-member-row{align-items:flex-start;flex-direction:column}.team-inline-actions{justify-content:flex-start}
  .workspace-create-form-governance{grid-template-columns:1fr}.workspace-create-form-governance [data-partnership-governance],.workspace-create-form-governance>.button{grid-column:auto}
}
/* Agenda semanal: os sete dias ocupam a largura quando possível e rolam dentro
   do próprio card em larguras menores, sem cortar o último dia. */
.team-week-strip{display:flex;min-width:0;overflow-x:auto}
.team-week-day{flex:1 0 124px}

/* KRM 1.6 Full Release — operação fluida: Conexões, Equipe e Event Composer. */
.connections-overview-grid{align-items:stretch}
.connection-collaboration-card{display:grid;align-content:start;gap:14px}
.connection-collaboration-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.connection-collaboration-groups{display:grid;gap:12px}
.connection-collaboration-group{display:grid;gap:7px}
.connection-collaboration-group>strong{font-size:.72rem;color:var(--muted);font-weight:700}
.connection-collaboration-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:color-mix(in srgb,var(--surface-raised,var(--surface)) 82%,transparent)}
.connection-collaboration-row>div{min-width:0;display:grid;gap:2px}.connection-collaboration-row strong{overflow:hidden;text-overflow:ellipsis}.connection-collaboration-row small{color:var(--muted)}
.connection-collaboration-row.is-highlighted{border-color:color-mix(in srgb,var(--green-2) 58%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--green-2) 10%,transparent)}
.collaboration-dialog{width:min(520px,92vw);padding:0;border:1px solid var(--line);border-radius:var(--krm-radius-lg,16px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 22px 70px rgba(0,0,0,.28))}
.collaboration-dialog::backdrop{background:rgba(4,10,18,.42);backdrop-filter:blur(3px)}
.collaboration-dialog-form{position:relative;display:grid;gap:15px;padding:22px}.collaboration-dialog-form h2{margin:0 34px 0 0}
.collaboration-direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.collaboration-direction{cursor:pointer}.collaboration-direction input{position:absolute;opacity:0;pointer-events:none}.collaboration-direction span{display:grid;gap:4px;height:100%;padding:12px;border:1px solid var(--line);border-radius:var(--krm-radius-md,12px);background:var(--surface-raised,var(--surface));transition:border-color .14s,background .14s,transform .14s}.collaboration-direction span strong{font-size:.82rem}.collaboration-direction span small{color:var(--muted);line-height:1.35}.collaboration-direction input:checked+span{border-color:color-mix(in srgb,var(--green-2) 62%,var(--line));background:color-mix(in srgb,var(--green-2) 9%,var(--surface));transform:translateY(-1px)}
.collaboration-dialog-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.collaboration-dialog-fields .full{grid-column:1/-1}.collaboration-dialog-form label{display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:700}

.agenda-composer-dialog{width:min(560px,94vw);padding:0;border:1px solid var(--line);border-radius:var(--krm-radius-lg,18px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 24px 76px rgba(0,0,0,.32));overflow:visible}
.agenda-composer-dialog::backdrop{background:rgba(4,10,18,.42);backdrop-filter:blur(3px)}
.agenda-composer-dialog>form{position:relative;display:grid;gap:14px;padding:22px}
.agenda-composer-head{display:grid;grid-template-columns:minmax(0,1fr) 34px 28px;gap:9px;align-items:center}
.agenda-composer-title{height:46px;padding:0 2px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font-size:1.25rem;font-weight:700;outline:0}.agenda-composer-title:focus{border-bottom-color:var(--green-2);box-shadow:none}.agenda-composer-title::placeholder{color:var(--muted);font-weight:600}
.agenda-composer-color{position:relative;width:32px;height:32px;border-radius:999px;border:1px solid var(--line);overflow:hidden;cursor:pointer}.agenda-composer-color input{position:absolute;inset:-7px;width:46px;height:46px;padding:0;border:0;cursor:pointer}.agenda-composer-color span{pointer-events:none;position:absolute;inset:5px;border:2px solid color-mix(in srgb,white 52%,transparent);border-radius:999px}
.agenda-composer-head .dialog-close{position:static;width:28px;height:28px;padding:0;cursor:pointer}
.agenda-quick-text-shell{display:grid;gap:7px}.agenda-quick-text-toggle{justify-self:start;padding:0;border:0;background:transparent;color:var(--green-2);font-size:.74rem;font-weight:750;cursor:pointer}.agenda-quick-text-box{display:grid;gap:6px}.agenda-quick-text-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.agenda-quick-text-tip{padding:7px 9px;border:1px solid color-mix(in srgb,var(--green-2) 24%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--green-2) 6%,var(--surface));color:var(--muted);font-size:.67rem;line-height:1.4}
.agenda-type-chips{display:flex;gap:6px;flex-wrap:wrap}.agenda-type-chips label{cursor:pointer}.agenda-type-chips input{position:absolute;opacity:0;pointer-events:none}.agenda-type-chips span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface-raised,var(--surface));color:var(--muted);font-size:.7rem;font-weight:700;transition:.14s}.agenda-type-chips input:checked+span{border-color:color-mix(in srgb,var(--green-2) 55%,var(--line));background:color-mix(in srgb,var(--green-2) 10%,var(--surface));color:var(--green-2)}
.agenda-composer-row{display:grid;gap:10px}.agenda-composer-datetime{grid-template-columns:1fr 1fr auto;align-items:end}.agenda-composer-meta{grid-template-columns:minmax(150px,.55fr) minmax(0,1fr)}
.agenda-composer-dialog label:not(.agenda-composer-color):not(.filter-chip-checkbox):not(.agenda-type-chips label){display:grid;gap:5px;color:var(--muted);font-size:.71rem;font-weight:700}.agenda-composer-dialog input,.agenda-composer-dialog select,.agenda-composer-dialog textarea{min-width:0}.agenda-composer-dialog textarea{resize:vertical;min-height:76px}.agenda-composer-lead{position:relative}.agenda-composer-lead .agenda-lead-results{position:absolute;z-index:6;left:0;right:0;top:100%;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--krm-shadow-popover,0 14px 34px rgba(0,0,0,.22))}.agenda-composer-lead .agenda-lead-results:empty{display:none}.agenda-composer-lead .agenda-lead-result{width:100%;border:0;background:transparent;text-align:left;color:var(--text)}
.agenda-all-day{align-self:center;margin-bottom:5px}.agenda-composer-datetime [data-agenda-time-wrap].is-disabled{opacity:.42}.agenda-composer-actions{display:flex;justify-content:flex-end;padding-top:2px}

.team-week-day>header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.team-week-day>header>div{display:grid;gap:1px}.team-week-add{width:24px;height:24px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:17px;line-height:1;cursor:pointer;transition:.14s}.team-week-add:hover{border-color:var(--line);background:color-mix(in srgb,var(--green-2) 9%,var(--surface));color:var(--green-2)}
.team-week-event,.team-week-empty{width:100%;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.team-week-event{display:grid;gap:3px;padding:7px;border:1px solid color-mix(in srgb,var(--team-event-color,var(--green-2)) 28%,var(--line));border-left:3px solid var(--team-event-color,var(--green-2));border-radius:9px;background:color-mix(in srgb,var(--team-event-color,var(--green-2)) 7%,var(--surface));transition:transform .14s,background .14s,border-color .14s}.team-week-event:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--team-event-color,var(--green-2)) 13%,var(--surface));border-color:color-mix(in srgb,var(--team-event-color,var(--green-2)) 48%,var(--line))}.team-week-event>div{display:flex;align-items:center;justify-content:space-between;gap:5px}.team-week-event time{font-weight:750}.team-week-event span{padding:2px 6px;border-radius:999px;color:color-mix(in srgb,var(--team-event-color,var(--green-2)) 82%,white);background:color-mix(in srgb,var(--team-event-color,var(--green-2)) 18%,transparent);font-size:.58rem;font-weight:750}.team-week-event small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.team-week-empty{min-height:42px;padding:8px;border:1px dashed var(--line);border-radius:9px;background:transparent;color:var(--muted);font-size:.66rem}.team-week-empty:hover{border-color:color-mix(in srgb,var(--green-2) 40%,var(--line));color:var(--green-2)}
.team-weekly-actions{display:flex;gap:6px;align-items:center}.team-event-dialog .agenda-event-type{border-color:color-mix(in srgb,var(--team-event-color,var(--green-2)) 25%,var(--line));background:color-mix(in srgb,var(--team-event-color,var(--green-2)) 12%,var(--surface));color:var(--team-event-color,var(--green-2))}
.team-notice-row{position:relative}.team-notice-remove{width:27px;height:27px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}.team-notice-remove:hover{background:color-mix(in srgb,var(--danger,#d66) 10%,transparent);color:var(--danger,#d66)}
.team-notice-dialog{width:min(480px,92vw);padding:0;border:1px solid var(--line);border-radius:var(--krm-radius-lg,16px);background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 22px 70px rgba(0,0,0,.28))}.team-notice-dialog::backdrop{background:rgba(4,10,18,.42);backdrop-filter:blur(3px)}.team-notice-dialog-form{position:relative;display:grid;gap:13px;padding:22px}.team-notice-dialog-form h2{margin:0 34px 0 0}.team-notice-dialog-form label{display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:700}.team-notice-dialog-form textarea{resize:vertical;min-height:110px}
.profile-grid input[name="nickname"]{font-weight:800;letter-spacing:.02em}

@media(max-width:700px){
  .collaboration-direction-grid,.collaboration-dialog-fields,.agenda-composer-meta{grid-template-columns:1fr}
  .agenda-composer-dialog{width:min(96vw,520px);max-height:92vh}.agenda-composer-dialog>form{padding:18px;gap:12px;max-height:92vh;overflow:auto}
  .agenda-composer-datetime{grid-template-columns:1fr 1fr}.agenda-all-day{grid-column:1/-1;justify-self:start}
  .agenda-composer-head{grid-template-columns:minmax(0,1fr) 32px 28px}.agenda-composer-title{font-size:1.12rem}
  .agenda-quick-text-input-row{grid-template-columns:1fr}.agenda-quick-text-input-row .button{justify-self:start}
  .team-weekly-actions{flex-wrap:wrap;justify-content:flex-end}
}
/* Ajustes finais de coerência nos cards operacionais. */
.team-notice-row{grid-template-columns:8px minmax(0,1fr) auto}
.team-week-event-visita span{background:color-mix(in srgb,#9b5de5 24%,var(--surface));color:color-mix(in srgb,#caa7ff 86%,var(--text))}
.team-week-event-retorno span{background:color-mix(in srgb,#3b82f6 22%,var(--surface));color:color-mix(in srgb,#7db7ff 86%,var(--text))}
.team-week-event-atendimento span{background:color-mix(in srgb,#f59e0b 22%,var(--surface));color:color-mix(in srgb,#ffbe45 88%,var(--text))}
.team-week-event-reuniao span{background:color-mix(in srgb,#22c55e 18%,var(--surface));color:color-mix(in srgb,#73e89a 84%,var(--text))}
.team-week-event-outro span{background:color-mix(in srgb,var(--muted) 18%,var(--surface));color:var(--muted)}

/* KRM 1.6 — Agenda acionável: paletas temáticas, composer compacto e contexto integrado. */
html[data-theme]{--krm-event-1:#7c6fe8;--krm-event-2:#3aa6d8;--krm-event-3:#cf6fa5;--krm-event-4:#55a879;--krm-event-5:#d2a84b}
html[data-theme="classic-light"]{--krm-event-1:#6857c9;--krm-event-2:#237ea8;--krm-event-3:#b65383;--krm-event-4:#3f8b66;--krm-event-5:#b88a2e}
html[data-theme="classic-dark"]{--krm-event-1:#8c7cf2;--krm-event-2:#46b4df;--krm-event-3:#df7fb1;--krm-event-4:#63bd8b;--krm-event-5:#ddb34f}
html[data-theme="krampus"]{--krm-event-1:#9e263d;--krm-event-2:#b35f3c;--krm-event-3:#d27d42;--krm-event-4:#526d4b;--krm-event-5:#b88a3d}
html[data-theme="cury"]{--krm-event-1:#174f9c;--krm-event-2:#287bc2;--krm-event-3:#52a5d4;--krm-event-4:#f07b35;--krm-event-5:#d9a12d}
html[data-theme="cury-space"]{--krm-event-1:#4f6ef7;--krm-event-2:#21b7e5;--krm-event-3:#845cff;--krm-event-4:#ff7a3d;--krm-event-5:#f4c34f}
html[data-theme="jewelry"]{--krm-event-1:#315f9d;--krm-event-2:#28735b;--krm-event-3:#9b354d;--krm-event-4:#76509a;--krm-event-5:#b78a34}
html[data-theme="cyberpunk"]{--krm-event-1:#9d63ff;--krm-event-2:#25dcff;--krm-event-3:#ff4fb8;--krm-event-4:#53ef8a;--krm-event-5:#ffd34e}

.agenda-composer-dialog{width:min(460px,94vw)}
.agenda-composer-dialog>form{gap:11px;padding:18px}
.agenda-composer-head{grid-template-columns:minmax(0,1fr) 32px 28px;gap:8px}
.agenda-composer-title{height:42px;font-size:1.16rem}
.agenda-composer-title-wrap{display:grid;gap:3px;min-width:0}.agenda-title-quick-tip{color:var(--muted);font-size:.62rem;line-height:1.3}
.agenda-color-picker{position:relative;display:grid;place-items:center}
.agenda-color-current{position:relative;width:26px;height:26px;padding:0;border:1px solid color-mix(in srgb,var(--agenda-picker-color,var(--krm-event-1)) 54%,var(--line));border-radius:999px;background:var(--agenda-picker-color,var(--krm-event-1));cursor:pointer;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--surface) 60%,transparent),0 0 0 1px color-mix(in srgb,var(--agenda-picker-color,var(--krm-event-1)) 25%,transparent)}
.agenda-color-current span{display:none}.agenda-color-menu{position:absolute;z-index:30;right:-5px;top:34px;display:flex;gap:6px;padding:7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);box-shadow:var(--krm-shadow-popover,0 14px 36px rgba(0,0,0,.25));white-space:nowrap}.agenda-color-menu[hidden]{display:none}
.agenda-color-menu button{width:24px;height:24px;padding:0;border:2px solid transparent;border-radius:999px;background:var(--agenda-picker-choice);cursor:pointer;transition:transform .12s,border-color .12s,box-shadow .12s}.agenda-color-menu button:nth-child(1){--agenda-picker-choice:var(--krm-event-1)}.agenda-color-menu button:nth-child(2){--agenda-picker-choice:var(--krm-event-2)}.agenda-color-menu button:nth-child(3){--agenda-picker-choice:var(--krm-event-3)}.agenda-color-menu button:nth-child(4){--agenda-picker-choice:var(--krm-event-4)}.agenda-color-menu button:nth-child(5){--agenda-picker-choice:var(--krm-event-5)}.agenda-color-menu button:hover{transform:scale(1.12)}.agenda-color-menu button.active{border-color:var(--text);box-shadow:0 0 0 2px var(--surface)}.agenda-color-menu button span{display:none}
.agenda-type-chips{gap:5px}.agenda-type-chips span{min-height:28px;padding:0 9px;font-size:.65rem}.agenda-composer-datetime{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;gap:8px}.agenda-composer-meta{grid-template-columns:130px minmax(0,1fr);gap:8px}.agenda-composer-dialog textarea{min-height:62px}.agenda-composer-actions{gap:6px}.agenda-lead-result{display:grid;gap:1px}.agenda-lead-result small{color:var(--muted);font-size:.65rem}

.agenda-slot-meaning-list{display:grid;gap:8px}.agenda-slot-meaning{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:9px!important}.agenda-slot-meaning i{width:18px;height:18px;border-radius:999px;background:var(--slot-color);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface) 60%,transparent)}.agenda-slot-meaning i[data-color-slot="1"]{--slot-color:var(--krm-event-1)}.agenda-slot-meaning i[data-color-slot="2"]{--slot-color:var(--krm-event-2)}.agenda-slot-meaning i[data-color-slot="3"]{--slot-color:var(--krm-event-3)}.agenda-slot-meaning i[data-color-slot="4"]{--slot-color:var(--krm-event-4)}.agenda-slot-meaning i[data-color-slot="5"]{--slot-color:var(--krm-event-5)}

.agenda-event-overlap-row{display:flex;gap:3px;min-width:0}.agenda-event-overlap-row .agenda-event-chip{min-width:0;flex:1}.agenda-event-overlap-row.is-overlap .agenda-event-chip{font-size:.58rem;padding-inline:4px}
.agenda-calendar-main .agenda-event-chip{position:relative;width:100%;margin-top:4px;padding:5px 6px;text-align:left;color:var(--text);border-color:color-mix(in srgb,var(--agenda-event-color,var(--krm-event-1)) 35%,var(--line));border-left:3px solid var(--agenda-event-color,var(--krm-event-1));background:color-mix(in srgb,var(--agenda-event-color,var(--krm-event-1)) 10%,var(--surface));cursor:pointer}.agenda-calendar-main .agenda-event-chip.is-dragging{opacity:.45;transform:scale(.98)}.krm-calendar-day.is-drop-target{background:color-mix(in srgb,var(--green-2) 13%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green-2) 46%,var(--line))}.agenda-more-events{margin-top:4px;border:0;background:transparent;color:var(--muted);font-size:.62rem;cursor:pointer}

.team-week-events{min-height:72px;border-radius:10px;cursor:pointer;transition:background .14s,box-shadow .14s}.team-week-events:hover{background:color-mix(in srgb,var(--green-2) 4%,transparent)}.team-week-empty{min-height:46px;border:0;background:transparent;padding:0}.team-week-empty:hover{border:0;background:transparent}.team-week-event{position:relative;--team-event-color:var(--krm-event-1)}.team-week-event[data-color-slot="1"]{--team-event-color:var(--krm-event-1)}.team-week-event[data-color-slot="2"]{--team-event-color:var(--krm-event-2)}.team-week-event[data-color-slot="3"]{--team-event-color:var(--krm-event-3)}.team-week-event[data-color-slot="4"]{--team-event-color:var(--krm-event-4)}.team-week-event[data-color-slot="5"]{--team-event-color:var(--krm-event-5)}

.agenda-event-card{padding:19px}.agenda-event-card-head{margin-bottom:12px}.agenda-event-title-line{display:flex;align-items:center;gap:8px}.agenda-event-color-dot{width:10px;height:10px;border-radius:999px;background:var(--agenda-event-color,var(--krm-event-1));flex:none}.agenda-event-card h2{margin:0;font-size:1.14rem}.agenda-event-card-body{gap:7px}.agenda-event-detail{padding:8px}.agenda-event-lead-context{grid-column:1/-1}.agenda-event-lead-context span{display:block;color:var(--muted);font-size:.67rem;margin-top:2px}.agenda-event-lead-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.agenda-event-notes{grid-column:1/-1}.agenda-event-outcome{display:flex;gap:5px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.agenda-event-tools{display:flex;justify-content:flex-end;gap:3px;margin:-5px -4px 4px}.agenda-event-tools button{position:static;width:29px;height:29px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.agenda-event-tools button:hover{background:color-mix(in srgb,var(--green-2) 8%,transparent);color:var(--text)}

.team-notice-options,.global-notice-admin-options{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.team-notice-title-line{display:flex;align-items:center;gap:6px}.team-notice-share{border:0;background:transparent;color:var(--muted);cursor:pointer}.team-notice-share:hover{color:var(--green-2)}.team-notice-meta{display:block;margin-top:4px;color:var(--muted)}.team-notice-ack{display:flex;align-items:center;gap:7px;margin-top:7px}.team-notice-ack-done{color:var(--green-2);font-size:.68rem;font-weight:700}.team-notice-read-summary,.team-notice-read-summary-static{border:0;background:transparent;color:var(--muted);font-size:.63rem;padding:0;cursor:pointer}.team-notice-read-summary:hover{color:var(--text)}.team-notice-row.is-pinned{border-color:color-mix(in srgb,var(--krm-event-5) 36%,var(--line));background:color-mix(in srgb,var(--krm-event-5) 4%,var(--surface))}.team-notice-row.is-highlighted{animation:krm-notice-highlight 1.8s ease both}@keyframes krm-notice-highlight{0%,100%{box-shadow:none}30%{box-shadow:0 0 0 2px color-mix(in srgb,var(--green-2) 32%,transparent)}}
.notice-receipts-dialog{width:min(450px,92vw);padding:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text)}.notice-receipts-card{position:relative;padding:20px}.notice-receipts-card h2{margin:0 34px 12px 0}.notice-receipt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.notice-receipt-row div{display:grid;gap:1px}.notice-receipt-row small{color:var(--muted)}.notice-receipt-row span{color:var(--muted);font-size:.68rem}.notice-receipt-row.is-acknowledged span{color:var(--green-2);font-weight:700}

.global-create{position:relative}.global-create-toggle{width:29px;height:29px;border:1px solid var(--line);border-radius:9px;background:var(--surface-raised,var(--surface));color:var(--text);font-size:19px;line-height:1;cursor:pointer}.global-create-menu{position:absolute;z-index:80;right:0;top:36px;min-width:125px;padding:5px;border:1px solid var(--line);border-radius:11px;background:var(--surface);box-shadow:var(--krm-shadow-popover,0 14px 36px rgba(0,0,0,.25))}.global-create-menu a,.global-create-menu button{display:block;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.73rem;text-align:left;text-decoration:none;cursor:pointer}.global-create-menu a:hover,.global-create-menu button:hover{background:color-mix(in srgb,var(--green-2) 8%,transparent)}
.global-notice-dialog{width:min(470px,92vw);padding:0}.global-notice-dialog form{position:relative;display:grid;gap:11px;padding:20px}.global-notice-dialog h2{margin:0 34px 2px 0}.global-notice-dialog label{display:grid;gap:4px}

.notification-center-toggle{position:relative;border:0;background:transparent;color:var(--text);font-size:19px;cursor:pointer}.notification-center-toggle span{position:absolute;right:-5px;top:-5px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:var(--green-2);color:var(--surface);font-size:.55rem;font-weight:800}.notification-panel{position:fixed;z-index:120;right:18px;top:58px;width:min(360px,calc(100vw - 30px));max-height:min(520px,70vh);overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--krm-shadow-popover,0 22px 60px rgba(0,0,0,.3))}.notification-panel-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface)}.notification-panel-head button{border:0;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}.notification-list{display:grid}.notification-item{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:10px 12px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}.notification-item:first-child{border-top:0}.notification-item:hover{background:color-mix(in srgb,var(--green-2) 6%,transparent)}.notification-item strong,.notification-item small{grid-column:1}.notification-item small{color:var(--muted)}.notification-item time{grid-column:2;grid-row:1/3;color:var(--muted);font-size:.57rem}.notification-item.is-unread{background:color-mix(in srgb,var(--green-2) 5%,var(--surface))}.notification-item.is-unread strong:before{content:'• ';color:var(--green-2)}
.krm-toast-stack{position:fixed;z-index:190;right:18px;bottom:18px;display:grid;gap:7px;pointer-events:none}.krm-toast{max-width:340px;padding:10px 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);box-shadow:var(--krm-shadow-popover,0 14px 36px rgba(0,0,0,.25));font-size:.72rem;opacity:0;transform:translateY(8px);transition:.2s}.krm-toast.is-visible{opacity:1;transform:none}
.krm-share-dialog{width:min(420px,92vw);padding:0}.krm-share-card{position:relative;display:grid;gap:12px;padding:20px}.krm-share-card h2{margin:0 34px 0 0}.krm-share-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.krm-share-channels button{display:grid;place-items:center;gap:4px;min-height:58px;border:1px solid var(--line);border-radius:11px;background:var(--surface-raised,var(--surface));color:var(--text);cursor:pointer}.krm-share-channels button:hover{border-color:color-mix(in srgb,var(--green-2) 38%,var(--line));background:color-mix(in srgb,var(--green-2) 6%,var(--surface))}.krm-share-channels span{font-size:.62rem}.krm-share-recipient{position:relative}.krm-share-recipient>div{display:grid;max-height:240px;overflow:auto}.krm-share-recipient-row{display:grid;gap:1px;padding:8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}.krm-share-recipient-row:hover{background:color-mix(in srgb,var(--green-2) 6%,transparent)}.krm-share-recipient-row small{color:var(--muted)}

/* Evento dourado: brilho curto e raro, sem loop visual permanente. */
.agenda-event-chip[data-color-slot="5"],.team-week-event[data-color-slot="5"],.agenda-bulletin-card[data-color-slot="5"]{overflow:visible}
.agenda-event-chip[data-color-slot="5"]::after,.team-week-event[data-color-slot="5"]::after,.agenda-bulletin-card[data-color-slot="5"]::after{content:'';position:absolute;z-index:3;width:2px;height:2px;left:72%;top:18%;border-radius:50%;background:var(--krm-event-5);box-shadow:11px -7px 0 0 color-mix(in srgb,var(--krm-event-5) 84%,white),-15px 7px 0 0 color-mix(in srgb,var(--krm-event-5) 70%,white),20px 12px 0 -0.2px color-mix(in srgb,var(--krm-event-5) 76%,white);pointer-events:none;opacity:0;animation:krm-gold-spark .95s ease-out .12s 1 both}@keyframes krm-gold-spark{0%{opacity:0;transform:scale(.35) translateY(3px)}25%{opacity:.95}100%{opacity:0;transform:scale(1.6) translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.agenda-event-chip[data-color-slot="5"]::after,.team-week-event[data-color-slot="5"]::after,.agenda-bulletin-card[data-color-slot="5"]::after{animation:none;display:none}}

@media(max-width:700px){.agenda-composer-dialog{width:min(96vw,460px)}.agenda-composer-dialog>form{padding:15px;gap:10px}.agenda-composer-meta{grid-template-columns:1fr}.agenda-color-menu{right:-28px}.agenda-event-card-body{grid-template-columns:1fr}.agenda-event-lead-context,.agenda-event-notes{grid-column:auto}.krm-share-channels{grid-template-columns:1fr 1fr 1fr}}
.team-week-event span{background:color-mix(in srgb,var(--team-event-color,var(--krm-event-1)) 18%,var(--surface))!important;color:color-mix(in srgb,var(--team-event-color,var(--krm-event-1)) 82%,white)!important}


/* KRM 1.6 — acabamento operacional 2026-08-14. */
/* Cabeçalho da lista permanece legível ao rolar: fundo opaco impede que as linhas vazem por baixo. */
.lead-table-panel .table-wrap{position:relative}
#leadTable.lead-configurable-table thead{position:sticky;top:0;z-index:12}
#leadTable.lead-configurable-table thead th{top:0!important;z-index:12!important;background:var(--surface)!important;box-shadow:inset 0 -1px 0 var(--line);background-clip:padding-box}

/* Notificações usam o mesmo chrome compacto dos controles de operação. */
.notification-center-toggle{position:relative;width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .14s,background .14s,color .14s}
.notification-center-toggle:hover{border-color:color-mix(in srgb,var(--green-2) 42%,var(--line));background:color-mix(in srgb,var(--green-2) 7%,var(--surface));color:var(--green-2)}
.notification-center-toggle>svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.notification-center-toggle span{right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;line-height:17px;border-radius:10px;background:var(--green-2);color:#fff;font-size:10px;font-weight:800}

/* Toda a coluna da Agenda semanal é contexto acionável. */
.team-week-day[data-team-day-open]{cursor:pointer;transition:border-color .14s,background .14s,box-shadow .14s}
.team-week-day[data-team-day-open]:hover,.team-week-day[data-team-day-open]:focus-visible{outline:none;border-color:color-mix(in srgb,var(--green-2) 38%,var(--line));background:color-mix(in srgb,var(--green-2) 4%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green-2) 10%,transparent)}
.team-week-day[data-team-day-open] .team-week-events{cursor:inherit}

/* Compartilhamento: iconografia única e discreta nos cards e no seletor de canais. */
.krm-share-channel-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.krm-share-channels button[data-share-channel="krm"] .krm-share-channel-icon{fill:currentColor;stroke:none}
.agenda-event-share svg,.team-notice-share svg{width:16px;height:16px;display:block;fill:currentColor;stroke:none}
.team-notice-share{display:inline-grid;place-items:center;width:24px;height:24px;padding:0;border-radius:7px}
