/* Atendimento em foco. Carregar após frontend.css, media.css e replies.css. */
.desktop-sidebar-toggle {
  display: inline-flex;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  color: #45637d;
  background: #f7fafc;
}
.desktop-sidebar-toggle .icon { width: 18px; height: 18px; }
.chat-layout-actions {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 7px;
  margin-left: auto;
}
.chat-layout-actions .icon-button { flex-shrink: 0; }
.chat-header > .chat-layout-actions { flex: 0 0 auto; }
.chat-expand-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 38px;
  border-radius: 8px;
  color: #45637d;
}
.chat-conversations-toggle { display: none; }
.chat-layout-button-label { font-size: 11px; line-height: 1.5; white-space: nowrap; }
.chat-contact-info { flex: 1; min-width: 0; }

/* A navegação recolhida conserva marcas, conta e alvos de 44 px. */
@media (min-width: 761px) {
  .app-shell.sidebar-collapsed { --sidebar: 72px; }
  .app-shell.sidebar-collapsed .sidebar {
    width: 72px;
    padding: 18px 13px 0;
    overflow: visible;
  }
  .app-shell.sidebar-collapsed .sidebar .wordmark {
    width: 44px;
    min-height: 44px;
    padding: 0;
    gap: 0;
    justify-content: center;
  }
  .app-shell.sidebar-collapsed .wordmark > span:not(.brand-logo),
  .app-shell.sidebar-collapsed .workspace-card > div,
  .app-shell.sidebar-collapsed .sidebar .nav-label,
  .app-shell.sidebar-collapsed .nav-item > span,
  .app-shell.sidebar-collapsed .profile-open > span:not(.avatar),
  .app-shell.sidebar-collapsed .sidebar-status > span:not(.status-dot),
  .app-shell.sidebar-collapsed .sidebar-status .text-button {
    display: none;
  }
  .app-shell.sidebar-collapsed .workspace-card {
    width: 44px;
    min-height: 44px;
    margin: 16px 0 17px;
    padding: 4px;
    gap: 0;
    justify-content: center;
    background: #e6f0f80b;
  }
  .app-shell.sidebar-collapsed .workspace-card .avatar {
    width: 34px;
    height: 34px;
  }
  .app-shell.sidebar-collapsed .sidebar nav {
    width: 44px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-gutter: auto;
    scrollbar-width: none;
    padding: 0 0 10px;
  }
  .app-shell.sidebar-collapsed .sidebar nav::-webkit-scrollbar { display: none; }
  .app-shell.sidebar-collapsed .nav-group { margin-bottom: 12px; }
  .app-shell.sidebar-collapsed .nav-group + .nav-group {
    padding-top: 12px;
    border-top: 1px solid #b6cadb20;
  }
  .app-shell.sidebar-collapsed .nav-item {
    width: 44px;
    min-height: 44px;
    height: 44px;
    margin: 3px 0;
    padding: 0;
    gap: 0;
    justify-content: center;
    border-radius: 9px;
  }
  .app-shell.sidebar-collapsed .nav-item .icon { width: 20px; height: 20px; }
  .app-shell.sidebar-collapsed .sidebar-bottom { width: 44px; }
  .app-shell.sidebar-collapsed .sidebar-status {
    justify-content: center;
    min-height: 18px;
    padding: 4px 0 8px;
    gap: 0;
  }
  .app-shell.sidebar-collapsed .profile {
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 44px;
    padding: 10px 0 12px;
  }
  .app-shell.sidebar-collapsed .profile-open {
    flex: none;
    width: 44px;
    min-height: 44px;
    justify-content: center;
    gap: 0;
  }
  .app-shell.sidebar-collapsed .profile .avatar { width: 36px; height: 36px; }
  .app-shell.sidebar-collapsed .profile > .icon-button {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    border-color: transparent;
    background: transparent;
  }
  .app-shell.sidebar-collapsed .profile > .icon-button:hover { background: #ffffff0d; }
  .app-shell.sidebar-collapsed .sidebar button:focus-visible,
  .app-shell.sidebar-collapsed .sidebar a:focus-visible { outline-offset: -3px; }
}

/* O modo de conversa usa a janela inteira e mantém uma única timeline rolável. */
.app-shell.chat-expanded[data-view="inbox"] {
  --chat-reading-width: 1100px;
  width: 100%;
  height: 100dvh;
  min-height: 0;
  overflow: hidden;
  background: #f6f9fc;
}
.app-shell.chat-expanded[data-view="inbox"] > .sidebar,
.app-shell.chat-expanded[data-view="inbox"] > .sidebar-overlay,
.app-shell.chat-expanded[data-view="inbox"] .topbar,
.app-shell.chat-expanded[data-view="inbox"] .sandbox-banner,
.app-shell.chat-expanded[data-view="inbox"] .inbox-content > .page-heading,
.app-shell.chat-expanded[data-view="inbox"] .conversation-list {
  display: none;
}
.app-shell.chat-expanded[data-view="inbox"] .main-shell {
  display: flex;
  flex-direction: column;
  margin: 0;
  width: 100%;
  height: 100dvh;
  min-height: 0;
}
.app-shell.chat-expanded[data-view="inbox"] .inbox-content {
  display: flex;
  flex: 1;
  width: 100%;
  height: 100dvh;
  min-height: 0;
  max-width: none;
  margin: 0;
  padding: 0;
}
.app-shell.chat-expanded[data-view="inbox"] .inbox-workspace {
  display: flex;
  flex: 1;
  flex-direction: row;
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;
}
.app-shell.chat-expanded[data-view="inbox"] .inbox-workspace .chat-pane {
  display: flex;
  flex: 1;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-header {
  min-height: 62px;
  padding: 10px 20px;
  gap: 12px;
  flex-wrap: nowrap;
  border-bottom-color: #dce6ee;
  box-shadow: 0 2px 9px #19314904;
  z-index: 1;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-header h2 {
  font-size: 16px;
  letter-spacing: -.35px;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-header .avatar {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-header > .badge {
  max-width: 220px;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-header .mobile-inbox-back { display: none; }
.app-shell.chat-expanded[data-view="inbox"] .chat-layout-actions { gap: 8px; }
.app-shell.chat-expanded[data-view="inbox"] .chat-expand-toggle {
  width: auto;
  min-width: 44px;
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid #d8e4ee;
  background: #f4f8fb;
  color: #355670;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-expand-toggle .icon { transform: none; }
.app-shell.chat-expanded[data-view="inbox"] .chat-conversations-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid #d8e4ee;
  border-radius: 8px;
  background: #fff;
  color: #355670;
  font-size: 11px;
  font-weight: 650;
}
.app-shell.chat-expanded[data-view="inbox"] .chat-conversations-toggle .icon { width: 16px; height: 16px; }
.app-shell.chat-expanded[data-view="inbox"] .chat-scope {
  padding: 9px 28px;
  border-bottom: 1px solid #e7eef4;
}
.app-shell.chat-expanded[data-view="inbox"] .messages {
  flex: 1;
  min-height: 0;
  max-height: none;
  padding: 16px 20px;
  gap: 10px;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #bdcfdd transparent;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}
.app-shell.chat-expanded[data-view="inbox"] .message-entry {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  width: 100%;
  max-width: var(--chat-reading-width);
  min-width: 0;
  margin-inline: auto;
}
.app-shell.chat-expanded[data-view="inbox"] .day-divider {
  align-self: center;
  margin: 2px 0 10px;
  color: #647f93;
  font-size: 10px;
  line-height: 1.7;
}
.app-shell.chat-expanded[data-view="inbox"] .message {
  max-width: min(82%, 720px);
  padding: 9px 12px;
  font-size: 13px;
  line-height: 1.65;
}
.app-shell.chat-expanded[data-view="inbox"] .message.incoming { align-self: flex-start; }
.app-shell.chat-expanded[data-view="inbox"] .message.outgoing { align-self: flex-end; }
.app-shell.chat-expanded[data-view="inbox"] .system-message { align-self: center; max-width: 100%; }
.app-shell.chat-expanded[data-view="inbox"] .inbox-copilot {
  max-height: min(27dvh, 230px);
  border-top-color: #dfe8ee;
  overflow-y: auto;
}
.app-shell.chat-expanded[data-view="inbox"] .inbox-copilot > summary {
  width: 100%;
  max-width: calc(var(--chat-reading-width) + 40px);
  margin-inline: auto;
  padding: 11px 20px;
}
.app-shell.chat-expanded[data-view="inbox"] #copilot-runs {
  width: 100%;
  max-width: calc(var(--chat-reading-width) + 40px);
  margin-inline: auto;
}
.app-shell.chat-expanded[data-view="inbox"] .composer-area {
  width: 100%;
  max-height: 60dvh;
  padding: 9px 20px max(9px, env(safe-area-inset-bottom));
  overflow-y: auto;
  border-top: 1px solid #dfe8ee;
}
.app-shell.chat-expanded[data-view="inbox"] .composer-area > form,
.app-shell.chat-expanded[data-view="inbox"] .composer-area > .handoff-banner,
.app-shell.chat-expanded[data-view="inbox"] .composer-area > .composer-note {
  width: 100%;
  max-width: var(--chat-reading-width);
  margin-inline: auto;
}
.app-shell.chat-expanded[data-view="inbox"] .composer-area > form { padding: 12px 14px; }
.app-shell.chat-expanded[data-view="inbox"] .composer-note { display: block; margin-top: 7px; }
.app-shell.chat-expanded[data-view="inbox"] .composer-footer { gap: 14px; }
.app-shell.chat-expanded[data-view="inbox"] .composer-tools { gap: 13px; }
.app-shell.chat-expanded[data-view="inbox"] .composer-area textarea { min-height: 42px; }
.app-shell.chat-expanded[data-view="inbox"] .conversation-context { display: none; }
.app-shell.chat-expanded[data-view="inbox"] .inbox-workspace:not(.context-collapsed) .conversation-context {
  display: block;
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 8;
  width: min(340px, 100%);
  height: 100%;
  max-height: 100%;
  padding: 24px;
  border: 0;
  border-left: 1px solid #d8e4ee;
  background: #fff;
  box-shadow: -12px 0 32px #19314918;
  overflow-y: auto;
}
.app-shell.chat-expanded[data-view="inbox"] .context-close {
  display: inline-flex;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
}
.app-shell.chat-expanded[data-view="inbox"] .conversation-context > .eyebrow { display: block; padding-right: 44px; }
.app-shell.chat-expanded[data-view="inbox"] .context-person { display: grid; }
.app-shell.chat-expanded[data-view="inbox"] .conversation-context .context-section { padding-block: 12px; }
.app-shell.chat-expanded[data-view="inbox"] .context-section form { display: block; }

@media (max-width: 1000px) and (min-width: 761px) {
  .chat-layout-actions { gap: 5px; }
  .chat-layout-actions .icon-button { min-width: 36px; width: 36px; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header .badge { max-width: 150px; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header { padding-inline: 20px; gap: 10px; }
}

@media (max-width: 760px) {
  .desktop-sidebar-toggle { display: none; }
  /* Keep the close target outside the menu rather than under its links. */
  .sidebar-overlay.open { left: 246px; }
  .chat-layout-actions { gap: 6px; }
  .chat-layout-actions .icon-button { width: 40px; min-width: 40px; min-height: 44px; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 44px;
    min-height: 0;
    padding: max(10px, env(safe-area-inset-top)) 14px 12px;
    gap: 10px;
  }
  .app-shell.chat-expanded[data-view="inbox"] .chat-layout-actions {
    display: flex;
    grid-column: 1 / -1;
    grid-row: 1;
    width: 100%;
    margin: 0 0 1px;
    gap: 8px;
  }
  .app-shell.chat-expanded[data-view="inbox"] .chat-expand-toggle,
  .app-shell.chat-expanded[data-view="inbox"] .chat-conversations-toggle {
    min-height: 44px;
    height: 44px;
    width: auto;
    padding: 8px 11px;
  }
  .app-shell.chat-expanded[data-view="inbox"] .chat-layout-actions .context-toggle { margin-left: auto; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header > .avatar {
    grid-column: 1;
    grid-row: 2;
    width: 36px;
    height: 36px;
  }
  .app-shell.chat-expanded[data-view="inbox"] .chat-contact-info { grid-column: 2; grid-row: 2; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header > .context-toggle { grid-column: 3; grid-row: 2; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header h2 { font-size: 14px; line-height: 1.5; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header small { display: block; margin-top: 2px; font-size: 10px; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-header .badge { display: none; }
  .app-shell.chat-expanded[data-view="inbox"] .chat-scope { padding: 8px 14px; font-size: 10px; }
  .app-shell.chat-expanded[data-view="inbox"] .messages {
    min-height: 0;
    padding: 14px 12px;
    gap: 10px;
    scrollbar-gutter: auto;
  }
  .app-shell.chat-expanded[data-view="inbox"] .message {
    max-width: 94%;
    padding: 9px 11px;
    font-size: 13px;
    line-height: 1.65;
  }
  .app-shell.chat-expanded[data-view="inbox"] .inbox-copilot { max-height: min(25dvh, 200px); }
  .app-shell.chat-expanded[data-view="inbox"] .inbox-copilot > summary { padding: 11px 14px; }
  .app-shell.chat-expanded[data-view="inbox"] .composer-area {
    max-height: 60dvh;
    padding: 10px 10px max(10px, env(safe-area-inset-bottom));
  }
  .app-shell.chat-expanded[data-view="inbox"] .composer-area > form { padding: 10px; }
  .app-shell.chat-expanded[data-view="inbox"] .composer-area textarea { min-height: 42px; font-size: 16px; }
  .app-shell.chat-expanded[data-view="inbox"] .composer-footer { gap: 8px; align-items: flex-end; flex-wrap: wrap; }
  .app-shell.chat-expanded[data-view="inbox"] .composer-tools { gap: 4px 12px; flex-wrap: wrap; }
  .app-shell.chat-expanded[data-view="inbox"] .composer-note { font-size: 9px; line-height: 1.6; margin-top: 6px; }
  .app-shell.chat-expanded[data-view="inbox"] .inbox-workspace:not(.context-collapsed) .conversation-context {
    width: 100%;
    padding: 22px;
    border-left: 0;
    box-shadow: none;
  }
  .app-shell.chat-expanded[data-view="inbox"] .context-section form label { margin-bottom: 14px; }
}

/* Densidade de atendimento: histórico e ficha dividem o espaço útil. */
.app-shell[data-view="inbox"] .chat-summary { display: flex; align-items: center; gap: 8px; min-height: 31px; padding: 5px 16px; flex-wrap: wrap; }
.chat-summary .badge { font-size: 9px; padding: 2px 6px; }
.chat-summary-item { display: inline-flex; align-items: center; gap: 5px; max-width: 220px; overflow-wrap: anywhere; }
.chat-summary-item .icon { width: 13px; height: 13px; flex-shrink: 0; }
.chat-summary-tags { display: inline-flex; align-items: center; gap: 4px; flex-wrap: wrap; margin-left: auto; }
.summary-more { min-height: 26px; padding: 0 4px; font-size: 10px; }
.app-shell[data-view="inbox"] .chat-header { min-height: 62px; padding: 10px 16px; }
.app-shell[data-view="inbox"] .messages { padding: 16px 18px; gap: 10px; }
.app-shell[data-view="inbox"] .message { padding: 9px 12px; line-height: 1.65; }
.app-shell[data-view="inbox"] .message .message-meta { margin-top: 4px; }
.app-shell[data-view="inbox"] .message-reply-button { min-height: 26px; }
.app-shell[data-view="inbox"] .composer-area { padding: 9px 14px; }
.app-shell[data-view="inbox"] .composer-area textarea { min-height: 36px; }
.app-shell[data-view="inbox"] .conversation-context { padding: 16px; }
.app-shell[data-view="inbox"] .context-person { display: grid; grid-template-columns: 40px minmax(0,1fr); gap: 2px 10px; align-items: center; padding: 12px 0; }
.app-shell[data-view="inbox"] .context-person .avatar { grid-row: 1 / 3; width: 40px; height: 40px; font-size: 14px; }
.app-shell[data-view="inbox"] .context-person h3 { margin: 0; font-size: 13px; }
.app-shell[data-view="inbox"] .context-person p { grid-column: 2; margin: 0; font-size: 10px; }
.app-shell[data-view="inbox"] .conversation-context .context-section { padding-block: 12px; }
.context-client-record { border-block: 1px solid #e5ecf2; padding: 12px 0; }
.context-client-record .context-title { display: flex; align-items: center; gap: 6px; }
.client-archived { margin-left: auto; font-size: 9px; color: #806030; }
.client-fields { margin: 10px 0; }
.client-fields > div { display: grid; grid-template-columns: 58px minmax(0,1fr); gap: 6px; margin-top: 6px; font-size: 11px; line-height: 1.5; }
.client-fields dt { color: #6b8295; }
.client-fields dd { margin: 0; color: #294c67; overflow-wrap: anywhere; }
.client-record-tags > span { color: #6b8295; font-size: 10px; }
.client-record-tags > div { display: flex; flex-wrap: wrap; gap: 4px; margin: 5px 0 8px; }
.client-tag { border: 1px solid #dce6ee; border-radius: 5px; padding: 2px 5px; color: #47687f; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.client-notes { margin-top: 8px; }
.client-notes summary { font-size: 11px; color: #315b73; min-height: 32px; display: list-item; cursor: pointer; padding: 7px 0; }
.client-notes p { font-size: 11px; line-height: 1.6; max-height: 120px; overflow-y: auto; white-space: pre-wrap; overflow-wrap: anywhere; margin: 5px 0 10px; }
.client-record-actions { display: flex; align-items: center; gap: 12px; }
.client-record-actions .text-button { min-height: 32px; font-size: 11px; }
.client-record-actions .icon { width: 14px; height: 14px; }
.client-empty { margin: 8px 0 0; color: #6b8295; font-size: 11px; line-height: 1.6; }
.app-shell[data-view="inbox"] .context-section label { margin-bottom: 9px; }
.app-shell[data-view="inbox"] .context-section form input,
.app-shell[data-view="inbox"] .context-section form select,
.app-shell[data-view="inbox"] .context-section > select { min-height: 32px; }

@media (min-width: 1180px) {
  .app-shell.chat-expanded[data-view="inbox"] .inbox-workspace:not(.context-collapsed) .conversation-context { position: relative; inset: auto; flex: 0 0 280px; width: 280px; padding: 16px; box-shadow: none; }
  .app-shell.chat-expanded[data-view="inbox"] .context-person { display: grid; }
}
@media (max-width: 760px) {
  .app-shell[data-view="inbox"] .chat-summary { padding: 5px 12px; gap: 5px 8px; }
  .chat-summary .summary-company { display: none; }
  .chat-summary-tags { margin-left: 0; }
  .summary-more, .client-record-actions .text-button, .client-notes summary { min-height: 44px; }
  .app-shell[data-view="inbox"] .message-reply-button { min-height: 44px; }
  .app-shell[data-view="inbox"] .composer-area textarea { min-height: 42px; }
}

/* Divisórias sobre as bordas existentes, sem deslocar os painéis ou players. */
.app-shell[data-view="inbox"] .chat-panel-resizer {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 4;
  width: 12px;
  transform: translateX(-50%);
  cursor: col-resize;
  touch-action: none;
  user-select: none;
  outline: none;
}
.app-shell[data-view="inbox"] .chat-panel-resizer[hidden] { display: none; }
.chat-panel-resizer::after {
  content: '';
  position: absolute;
  top: calc(50% - 22px);
  left: 4px;
  width: 4px;
  height: 44px;
  border-radius: 3px;
  background: #b8cbd5;
}
.chat-panel-resizer:hover::after,
.chat-panel-resizer:focus-visible::after,
.panels-resizing .chat-panel-resizer::after { background: #378264; }
.chat-panel-resizer:focus-visible { box-shadow: inset 0 0 0 2px #378264; }
.panels-resizing { cursor: col-resize; user-select: none; }
@media (min-width: 960px) {
  .app-shell.chat-expanded[data-view="inbox"] .inbox-workspace[data-panel-layout]:not(.context-collapsed) .conversation-context {
    flex-basis: var(--elozi-context-width, 280px);
    width: var(--elozi-context-width, 280px);
  }
}
@media (max-width: 760px) {
  .app-shell[data-view="inbox"] .chat-panel-resizer { display: none; }
}
