/* ═══════════════════════════════════════════════════════
   NARA CRM 2.0 — v2 (layout ajustado)
═══════════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* ── Login ── */
#login-screen {
  display:flex; align-items:center; justify-content:center;
  height:100vh; background:var(--bg);
}
.login-box {
  background:var(--surface); border:0.5px solid var(--border2);
  border-radius:14px; padding:2rem; width:340px;
  box-shadow:var(--shadow-md);
}
.login-logo { display:flex; align-items:center; gap:10px; margin-bottom:1.5rem; }
.login-mark {
  width:36px; height:36px; border-radius:9px; background:var(--green);
  display:flex; align-items:center; justify-content:center;
}
.login-mark i { color:#fff; font-size:18px; }
.login-title { font-size:16px; font-weight:500; }
.login-title em { color:var(--green); font-style:normal; }
.login-field { margin-bottom:12px; }
.login-field label { display:block; font-size:12px; color:var(--text2); margin-bottom:4px; }
.login-field input {
  width:100%; padding:9px 11px; border:0.5px solid var(--border2);
  border-radius:8px; font-size:13px; background:var(--surface);
  color:var(--text); outline:none; transition:border-color .15s;
  font-family:inherit;
}
.login-field input:focus { border-color:var(--green); }
.btn-login {
  width:100%; padding:9px; background:var(--green); color:#fff;
  border:none; border-radius:8px; font-size:14px; font-weight:500;
  cursor:pointer; font-family:inherit;
}
.btn-login:hover { background:var(--green-dk); }
#login-err { color:var(--red-md); font-size:12px; margin-top:8px; text-align:center; min-height:16px; }

:root, [data-theme="claro"] {
  --green:#1D9E75; --green-dk:#0F6E56; --green-lt:#E1F5EE; --green-bd:#5DCAA5;
  --blue-lt:#E6F1FB; --blue-md:#185FA5;
  --amber-lt:#FAEEDA; --amber-md:#854F0B; --amber-bd:#EF9F27;
  --purple-lt:#EEEDFE; --purple-md:#534AB7;
  --sky-lt:#E0F2FE; --sky-md:#0369A1;
  --gray-lt:#F1EFE8; --gray-md:#5F5E5A;
  --red-lt:#FCEBEB; --red-md:#A32D2D; --red-bd:#F09595;
  --bg:#f0efeb; --surface:#ffffff; --surface2:#e8e7e2;
  --border:rgba(0,0,0,.10); --border2:rgba(0,0,0,.18);
  --text:#1a1a18; --text2:#55554f; --text3:#99978f;
  --shadow:0 1px 4px rgba(0,0,0,.08); --shadow-md:0 4px 20px rgba(0,0,0,.14);
}
[data-theme="escuro"] {
  --green:#2DC98C; --green-dk:#1D9E75; --green-lt:#0d2e22; --green-bd:#1D9E75;
  --blue-lt:#0d1e2e; --blue-md:#5BA8E0;
  --amber-lt:#2e1e07; --amber-md:#F0A830; --amber-bd:#BA7517;
  --purple-lt:#1a1635; --purple-md:#9D96E8;
  --sky-lt:#0c1e2e; --sky-md:#38BDF8;
  --gray-lt:#252420; --gray-md:#B4B2A9;
  --red-lt:#2e0d0d; --red-md:#E87070; --red-bd:#7A2020;
  --bg:#131210; --surface:#1e1c19; --surface2:#252320;
  --border:rgba(255,255,255,.08); --border2:rgba(255,255,255,.15);
  --text:#f0ede8; --text2:#a8a59e; --text3:#6e6b63;
  --shadow:0 1px 4px rgba(0,0,0,.4); --shadow-md:0 4px 20px rgba(0,0,0,.5);
}
[data-theme="verde"] {
  --green:#225378; --green-dk:#173A54; --green-lt:#E8EEF2; --green-bd:#406A88;
  --blue-lt:#E8EEF2; --blue-md:#225378;
  --amber-lt:#EEE7DA; --amber-md:#735017; --amber-bd:#B58A38;
  --purple-lt:#ECEAF0; --purple-md:#514A5F;
  --sky-lt:#DFF0F8; --sky-md:#1A6B8A;
  --gray-lt:#E6E5E3; --gray-md:#3A3839;
  --red-lt:#F2E4E4; --red-md:#8E2F2F; --red-bd:#C18484;
  --bg:#225378; --surface:#F7F8F8; --surface2:#E5E8E9;
  --border:rgba(34,40,44,.13); --border2:rgba(34,40,44,.24);
  --text:#242425; --text2:#4A4A4C; --text3:#7E8183;
  --shadow:0 1px 5px rgba(20,28,34,.14); --shadow-md:0 4px 20px rgba(20,28,34,.22);
}

html, body { height: 100%; overflow: hidden; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--bg); color: var(--text);
  font-size: 13px; line-height: 1.45;
}

/* ── App Shell ── */
#app { display: flex; flex-direction: column; height: 100vh; overflow: hidden; }

/* ── Topbar ── */
#topbar {
  display: flex; align-items: center; gap: 10px;
  padding: 6px 12px; background: var(--surface);
  border-bottom: 0.5px solid var(--border); flex-shrink: 0; z-index: 50;
}
.brand { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.brand-mark {
  width: 26px; height: 26px; border-radius: 6px; background: var(--green);
  display: flex; align-items: center; justify-content: center;
}
.brand-mark i { color:#fff; font-size:13px; }
.brand-name { font-size:13px; font-weight:700; letter-spacing:-.01em; }
.brand-name em { color:var(--green); font-style:normal; }
.brand-tag { font-size:8px; font-weight:500; color:var(--text3); letter-spacing:.06em; text-transform:uppercase; }
.topbar-search { flex:1; min-width:0; }
.top-search {
  position:relative; display:flex; align-items:center; gap:6px; max-width:480px; margin:0 auto;
  background:var(--surface2); border:0.5px solid var(--border); border-radius:8px; padding:5px 9px;
}
.top-search i { font-size:12px; color:var(--text3); flex-shrink:0; }
.top-search input { width:100%; border:none; outline:none; background:transparent; color:var(--text); font-size:12px; }
.top-search input::placeholder { color:var(--text3); }
.search-results {
  display:none; position:absolute; top:35px; left:0; right:0;
  background:var(--surface); border:0.5px solid var(--border2);
  border-radius:9px; box-shadow:var(--shadow-md); z-index:220; max-height:240px; overflow:auto;
}
.search-results.open { display:block; }
.search-item { padding:7px 10px; cursor:pointer; border-bottom:0.5px solid var(--border); font-size:12px; }
.search-item:last-child { border-bottom:none; }
.search-item:hover { background:var(--surface2); }
.search-name { font-weight:500; color:var(--text); }
.search-sub { font-size:10px; color:var(--text3); margin-top:1px; }
.topbar-right { display:flex; align-items:center; gap:5px; flex-shrink:0; }
.theme-switcher { display:flex; align-items:center; gap:2px; padding:2px; border-radius:7px; background:var(--surface2); }
.theme-btn {
  width:22px; height:22px; border-radius:4px; border:none; cursor:pointer;
  display:flex; align-items:center; justify-content:center; font-size:11px;
  background:transparent; color:var(--text3);
}
.theme-btn.active { background:var(--surface); color:var(--text); }
.btn-icon {
  display:flex; align-items:center; gap:4px; padding:4px 9px;
  border-radius:7px; border:0.5px solid var(--border2);
  background:none; font-size:11px; color:var(--text2); cursor:pointer; white-space:nowrap;
}
.btn-icon:hover { background:var(--surface2); }
.btn-icon.accent { background:var(--green); color:#fff; border-color:var(--green); }
.btn-icon.accent:hover { background:var(--green-dk); }
.user-pill {
  display:flex; align-items:center; gap:5px; padding:4px 8px;
  border-left:0.5px solid var(--border);
}
.user-pill span { font-size:11px; font-weight:500; }
.user-pill small { font-size:9px; color:var(--text3); text-transform:uppercase; }

/* ── Métricas ── */
#metrics-bar {
  display:flex; background:var(--surface); border-bottom:0.5px solid var(--border);
  flex-shrink:0; overflow-x:auto; transition:all .25s;
}
.metric {
  flex:1; min-width:80px; padding:6px 12px;
  border-right:0.5px solid var(--border); cursor:default;
}
.metric:last-child { border-right:none; }
.metric-label { font-size:9px; color:var(--text3); text-transform:uppercase; letter-spacing:.04em; }
.metric-value { font-size:18px; font-weight:700; line-height:1.1; margin:1px 0; }
.metric-sub { font-size:9px; color:var(--text3); }

/* Métricas compactas (tela pequena) */
#metrics-compact {
  display:none; background:var(--surface); border-bottom:0.5px solid var(--border);
  flex-shrink:0; padding:6px 10px; align-items:center; gap:8px; overflow-x:auto;
}
.mc-item { display:flex; flex-direction:column; align-items:center; min-width:44px; }
.mc-val { font-size:15px; font-weight:700; }
.mc-lbl { font-size:8px; color:var(--text3); text-transform:uppercase; letter-spacing:.03em; white-space:nowrap; }
.mc-div { width:1px; height:28px; background:var(--border); flex-shrink:0; }

/* ── Board ── */
#board-wrap {
  flex:1; overflow-x:auto; overflow-y:hidden; padding:10px;
  display:flex; flex-direction:column;
}
/* Desktop: distribui todas as colunas no espaço disponível */
#board {
  display:flex; gap:8px; height:100%;
  width:100%; /* ocupa 100% */
}

/* ── Coluna ── */
.col {
  flex:1; min-width:0; /* cada coluna cresce igualmente */
  display:flex; flex-direction:column;
  background:var(--surface2); border-radius:10px; border:0.5px solid var(--border);
  max-height:100%; overflow:hidden;
}
.col-head {
  display:flex; align-items:center; gap:5px; padding:8px 9px 7px;
  border-bottom:0.5px solid var(--border); flex-shrink:0; cursor:pointer;
}
.col-dot { width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.col-label { font-size:11px; font-weight:700; flex:1; letter-spacing:-.01em; }
.col-count {
  font-size:10px; font-weight:600; padding:1px 6px;
  border-radius:99px; background:var(--border); color:var(--text3);
}
.col-cards {
  overflow-y:auto; flex:1; padding:7px; display:flex; flex-direction:column; gap:5px; min-height:50px;
}
.col-cards.drag-over { background:var(--green-lt); border-radius:7px; }

/* ── Card ── */
.card {
  background:var(--surface); border-radius:9px; border:0.5px solid var(--border);
  padding:9px; cursor:pointer; transition:box-shadow .15s, transform .1s; position:relative;
}
.card:hover { box-shadow:var(--shadow-md); transform:translateY(-1px); }
.card.dragging { opacity:.45; }
.card-top { display:flex; align-items:flex-start; gap:6px; margin-bottom:5px; }
.card-av {
  width:26px; height:26px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:9px; font-weight:700; flex-shrink:0; color:#fff;
}
.card-info { flex:1; min-width:0; }
.card-nome { font-size:12px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.card-fone { font-size:10px; color:var(--text3); }
.card-actions { display:flex; align-items:center; gap:2px; flex-shrink:0; }
.card-btn {
  background:none; border:none; cursor:pointer; padding:3px; border-radius:4px;
  font-size:13px; color:var(--text3); display:flex; align-items:center;
}
.card-btn:hover { background:var(--surface2); color:var(--text); }
.card-btn.wpp { color:#25D366; }
.card-preview {
  font-size:11px; color:var(--text2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  padding:4px 6px; background:var(--surface2); border-radius:5px; margin-bottom:5px;
  border:0.5px solid var(--border);
}
.card-foot { display:flex; align-items:center; justify-content:space-between; gap:4px; }
.card-resp { font-size:10px; color:var(--text3); display:flex; align-items:center; gap:2px; }
.card-origem { font-size:9px; padding:1px 5px; border-radius:99px; background:var(--surface2); color:var(--text3); border:0.5px solid var(--border); }
.card-alert {
  display:flex; align-items:center; gap:3px;
  font-size:10px; color:var(--amber-md); margin-top:4px;
  padding:3px 6px; background:var(--amber-lt); border-radius:5px; border:0.5px solid var(--amber-bd);
}
.ia-badge {
  display:inline-flex; align-items:center; gap:2px;
  font-size:9px; font-weight:700; padding:1px 5px;
  border-radius:99px; text-transform:uppercase; letter-spacing:.03em;
}
.ia-badge.on  { background:var(--green-lt); color:var(--green-dk); border:0.5px solid var(--green-bd); }
.ia-badge.off { background:var(--amber-lt); color:var(--amber-md); border:0.5px solid var(--amber-bd); }
.ia-badge.human { background:var(--blue-lt); color:var(--blue-md); border:0.5px solid rgba(24,95,165,.3); }

/* Score do lead */
.score-badge {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:18px; font-size:10px; font-weight:700; padding:1px 6px;
  border-radius:99px;
}
.score-badge.score-na        { background:var(--gray-lt); color:var(--gray-md); border:0.5px solid var(--border); }
.score-badge.score-mb        { background:var(--red-lt);   color:var(--red-md);   border:0.5px solid var(--red-bd); }
.score-badge.score-baixo     { background:var(--amber-lt); color:var(--amber-md); border:0.5px solid var(--amber-bd); }
.score-badge.score-medio     { background:var(--gray-lt);  color:var(--gray-md);  border:0.5px solid var(--border); }
.score-badge.score-alto      { background:var(--sky-lt);   color:var(--sky-md);   border:0.5px solid rgba(3,105,161,.3); }
.score-badge.score-excelente { background:var(--green-lt); color:var(--green-dk); border:0.5px solid var(--green-bd); }

/* Cores avatar */
.av-0{background:#1D9E75} .av-1{background:#185FA5} .av-2{background:#534AB7}
.av-3{background:#854F0B} .av-4{background:#A32D2D} .av-5{background:#0369A1}
/* Cores dot coluna */
.dot-blue{background:#185FA5} .dot-green{background:#1D9E75} .dot-amber{background:#854F0B}
.dot-purple{background:#534AB7} .dot-teal{background:#0F6E56} .dot-sky{background:#0369A1}
.dot-gray{background:#5F5E5A} .dot-red{background:#A32D2D}

/* ══════════════════════════════════════════════════════
   MODAL — quase tela cheia, cabeçalho fixo, scroll interno
══════════════════════════════════════════════════════ */
.modal-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.5); z-index:100;
  align-items:flex-start; justify-content:center; padding:10px;
}
.modal-overlay.open { display:flex; }
.modal {
  background:var(--surface); border-radius:12px; border:0.5px solid var(--border2);
  box-shadow:0 24px 64px rgba(0,0,0,.24);
  display:flex; flex-direction:column;
  width:100%; max-width:860px;
  height:calc(100vh - 20px); max-height:calc(100vh - 20px);
  overflow:hidden;
}
.modal-sm { max-width:420px; height:auto; max-height:90vh; }

/* Cabeçalho fixo do modal */
.modal-fixed-head { flex-shrink:0; }

/* Topo do modal: nome + fechar */
.modal-topbar {
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 16px 8px; border-bottom:0.5px solid var(--border);
}
.modal-lead-hero { display:flex; align-items:center; gap:10px; }
.modal-av {
  width:38px; height:38px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:700; color:#fff; flex-shrink:0;
}
.modal-hero-nome { font-size:16px; font-weight:700; line-height:1.2; }
.modal-hero-sub {
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  font-size:11px; color:var(--text3); margin-top:2px;
}
.modal-hero-sub b { color:var(--text2); font-weight:500; }
.modal-hero-actions { display:flex; gap:5px; align-items:center; }
.btn-x {
  background:none; border:none; cursor:pointer; font-size:17px;
  color:var(--text3); line-height:1; padding:2px 6px; border-radius:5px;
}
.btn-x:hover { background:var(--surface2); color:var(--text); }

/* Metadados discretos (origem, responsável) */
.modal-meta {
  display:flex; align-items:center; gap:0; padding:0 16px;
  border-bottom:0.5px solid var(--border); flex-wrap:wrap;
}
.meta-field {
  display:flex; flex-direction:column; gap:1px;
  padding:5px 14px 5px 0; border-right:0.5px solid var(--border); margin-right:14px;
}
.meta-field:last-child { border-right:none; margin-right:0; }
.meta-field-label {
  font-size:8px; font-weight:700; color:var(--text3);
  text-transform:uppercase; letter-spacing:.06em;
}
.meta-field-inner {
  display:flex; align-items:center; gap:4px; font-size:12px; color:var(--text2);
}
.meta-field-inner i { font-size:12px; color:var(--text3); }
.meta-field select {
  border:none; outline:none; background:transparent; color:var(--text2);
  font-size:12px; cursor:pointer; font-family:inherit; padding:0; font-weight:500;
}

/* Etapa: chips rápidos no topo do modal */
.modal-etapa-row {
  display:flex; align-items:center; gap:5px; padding:7px 16px;
  border-bottom:0.5px solid var(--border); overflow-x:auto; flex-shrink:0;
}
.etapa-label { font-size:9px; font-weight:700; color:var(--text3); text-transform:uppercase; letter-spacing:.04em; white-space:nowrap; margin-right:3px; }
.etapa-chip {
  display:inline-flex; align-items:center; gap:3px;
  padding:3px 8px; border-radius:99px; border:0.5px solid var(--border2);
  background:var(--surface2); font-size:10px; color:var(--text2);
  cursor:pointer; font-family:inherit; white-space:nowrap; transition:background .12s;
}
.etapa-chip:hover { background:var(--border); }
.etapa-chip.current { background:var(--green-lt); color:var(--green-dk); border-color:var(--green-bd); font-weight:700; }
.etapa-chip .dot { width:5px; height:5px; border-radius:50%; }

/* ── Tabbar: tudo em uma linha ── */
.modal-tabbar {
  display:flex; align-items:center; flex-shrink:0;
  padding:5px 12px; gap:4px;
  background:var(--surface2); border-bottom:1px solid var(--border2);
}
.modal-tabs { display:flex; align-items:center; justify-content:center; gap:2px; flex:1; }
.modal-tab {
  display:flex; align-items:center; gap:5px;
  padding:6px 18px; border-radius:7px; border:none;
  font-size:12px; font-weight:500; cursor:pointer; font-family:inherit;
  color:var(--text3); background:transparent;
  white-space:nowrap; transition:all .15s;
}
.modal-tab i { font-size:13px; }
.modal-tab:hover { background:var(--surface); color:var(--text2); }
.modal-tab.active {
  background:var(--surface); color:var(--text);
  font-weight:700; box-shadow:0 1px 4px rgba(0,0,0,.12);
  border:0.5px solid var(--border2);
}

/* Separador */
.tabbar-divider { width:1px; height:20px; background:var(--border2); margin:0 6px; flex-shrink:0; }

/* Nara — canto direito, compacto */
.modal-ia-inline { display:flex; align-items:center; gap:5px; flex-shrink:0; }
.ia-inline-label {
  font-size:9px; font-weight:800; color:var(--text3);
  text-transform:uppercase; letter-spacing:.1em; white-space:nowrap;
}
.ia-bar-btns { display:flex; gap:3px; }
.ia-bar-btn {
  display:flex; align-items:center; gap:4px;
  padding:5px 10px; border-radius:6px;
  border:1px solid var(--border2);
  font-size:10px; font-weight:500; cursor:pointer; font-family:inherit;
  background:var(--surface); color:var(--text3);
  white-space:nowrap; transition:all .15s;
}
.ia-bar-btn i { font-size:11px; }
.ia-bar-btn:hover { color:var(--text); border-color:var(--text3); }
.ia-bar-btn.active-on  { background:#65D000; color:#fff; border-color:#4AA300; box-shadow:0 1px 6px rgba(101,208,0,.35); font-weight:700; }
.ia-bar-btn.active-off { background:#F59E0B; color:#fff; border-color:#D97706; box-shadow:0 1px 6px rgba(245,158,11,.3); font-weight:700; }
.ia-bar-btn.active-hum { background:#1D4ED8; color:#fff; border-color:#1E3A8A; box-shadow:0 1px 6px rgba(29,78,216,.3);  font-weight:700; }

/* Corpo das abas — rolável, ocupa todo o espaço restante */
.modal-body { flex:1; overflow:hidden; position:relative; display:flex; flex-direction:column; min-height:0; }
.tab-pane { display:none; flex:1; overflow-y:auto; padding:14px 16px; min-height:0; }
.tab-pane.active { display:flex; flex-direction:column; gap:12px; }

/* ── ABA RESUMO ── */
.resumo-projeto {
  background:var(--surface2); border-radius:9px; border:0.5px solid var(--border);
  padding:10px 12px;
}
.resumo-projeto-label {
  font-size:9px; font-weight:700; color:var(--text3); text-transform:uppercase; letter-spacing:.05em; margin-bottom:6px;
  display:flex; align-items:center; gap:5px;
}
.resumo-projeto input {
  width:100%; border:none; outline:none; background:transparent; color:var(--text);
  font-size:14px; font-weight:500; font-family:inherit;
}
.resumo-projeto input::placeholder { color:var(--text3); font-weight:400; font-size:13px; }

.resumo-box {
  background:var(--green-lt); border-radius:9px; border:0.5px solid var(--green-bd);
  padding:10px 12px; font-size:12px; color:var(--green-dk); line-height:1.65;
}
.resumo-box-label {
  font-size:9px; font-weight:700; color:var(--green-dk); text-transform:uppercase;
  letter-spacing:.05em; margin-bottom:5px; display:flex; align-items:center; gap:4px; opacity:.7;
}

.proxima-acao {
  display:flex; align-items:flex-start; gap:8px;
  padding:9px 12px; background:var(--amber-lt); border-radius:9px;
  border:0.5px solid var(--amber-bd); font-size:12px; color:var(--amber-md); line-height:1.5;
}
.proxima-acao i { font-size:14px; flex-shrink:0; margin-top:1px; }

/* Ações rápidas no Resumo */
.acao-rapida-grid { display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.btn-aq {
  display:flex; align-items:center; gap:6px; padding:8px 10px;
  border-radius:8px; border:0.5px solid var(--border2); background:var(--surface2);
  cursor:pointer; font-size:11px; color:var(--text); font-family:inherit; transition:background .12s;
}
.btn-aq:hover { background:var(--border); }
.btn-aq i { font-size:14px; }
.btn-aq.wpp i { color:#25D366; }
.btn-aq.warn i { color:var(--amber-md); }
.btn-aq.danger { color:var(--red-md); }
.btn-aq.danger i { color:var(--red-md); }
.btn-aq.full { grid-column:1/-1; }

.obs-field { display:flex; flex-direction:column; gap:4px; }
.obs-label { font-size:9px; font-weight:700; color:var(--text3); text-transform:uppercase; letter-spacing:.05em; }
.obs-field textarea {
  width:100%; padding:8px 10px; border-radius:8px; border:0.5px solid var(--border2);
  background:var(--surface2); color:var(--text); font-size:12px; font-family:inherit;
  resize:vertical; min-height:70px; outline:none; line-height:1.5;
}
.obs-field textarea:focus { border-color:var(--green); background:var(--surface); }

.resumo-campos-disc { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.disc-field { display:flex; flex-direction:column; gap:3px; }
.disc-label { font-size:9px; font-weight:600; color:var(--text3); text-transform:uppercase; letter-spacing:.04em; }
.disc-field input, .disc-field select {
  font-size:11px; padding:5px 8px; border-radius:6px;
  border:0.5px solid var(--border2); background:var(--surface2);
  color:var(--text); outline:none; font-family:inherit;
}
.disc-field input:focus, .disc-field select:focus { border-color:var(--green); }

.modal-save-row { display:flex; justify-content:flex-end; gap:6px; }
.btn-primary {
  padding:6px 14px; border-radius:7px; border:none;
  background:var(--green); color:#fff; font-size:12px; font-weight:600;
  cursor:pointer; display:flex; align-items:center; gap:4px; font-family:inherit;
}
.btn-primary:hover { background:var(--green-dk); }
.btn-cancel {
  padding:6px 12px; border-radius:7px; border:0.5px solid var(--border2);
  background:var(--surface2); font-size:12px; cursor:pointer; color:var(--text); font-family:inherit;
}
.btn-cancel:hover { background:var(--border); }

/* ── ABA AÇÕES ── */
.acoes-sec-label {
  font-size:9px; font-weight:700; color:var(--text3);
  text-transform:uppercase; letter-spacing:.05em; margin-bottom:5px;
}
.acoes-grid { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin-bottom:8px; }
.btn-acao {
  display:flex; align-items:center; gap:7px; padding:9px 11px;
  border-radius:8px; border:0.5px solid var(--border2); background:var(--surface2);
  cursor:pointer; font-size:12px; color:var(--text); font-family:inherit; transition:background .12s;
}
.btn-acao:hover { background:var(--border); }
.btn-acao i { font-size:15px; flex-shrink:0; }
.btn-acao.wpp i { color:#25D366; }
.btn-acao.danger { color:var(--red-md); }
.btn-acao.danger i { color:var(--red-md); }
.btn-acao.warn i { color:var(--amber-md); }
.btn-acao.accent i { color:var(--green); }
.btn-acao.full { grid-column:1/-1; }

.inativo-motivos { display:flex; flex-direction:column; gap:4px; }
.inativo-item {
  display:flex; align-items:center; gap:7px; padding:7px 10px;
  border-radius:7px; border:0.5px solid var(--border2); background:var(--surface2);
  cursor:pointer; font-size:12px; color:var(--text2); font-family:inherit;
}
.inativo-item:hover { background:var(--red-lt); color:var(--red-md); border-color:var(--red-bd); }
.inativo-item i { font-size:13px; }

/* ── ABA CONVERSA ── */
.chat-wrap { display:flex; flex-direction:column; height:100%; }
.chat-ia-mini {
  display:flex; align-items:center; gap:7px; padding:6px 9px;
  background:var(--surface2); border-radius:7px; border:0.5px solid var(--border);
  margin-bottom:9px; flex-shrink:0; font-size:11px; color:var(--text2);
}
.chat-ia-mini i { font-size:13px; }
.btn-ia-mini {
  margin-left:auto; font-size:10px; padding:3px 9px; border-radius:5px;
  cursor:pointer; border:0.5px solid currentColor; background:transparent; font-family:inherit;
}
.btn-ia-mini.on { color:var(--green-dk); }
.btn-ia-mini.off { color:var(--amber-md); }

.messages { display:flex; flex-direction:column; gap:7px; flex:1; overflow-y:auto; }
.btn-load-prev {
  align-self:center; font-size:10px; padding:4px 12px; border-radius:99px;
  border:0.5px solid var(--border2); background:var(--surface2);
  cursor:pointer; color:var(--text3); font-family:inherit; margin-bottom:4px;
}
.btn-load-prev:hover { background:var(--border); }
.msg { display:flex; flex-direction:column; max-width:82%; }
.msg.cliente { align-self:flex-start; }
.msg.nara, .msg.humano { align-self:flex-end; }
.msg.sistema { align-self:center; max-width:95%; }
.msg-who { font-size:9px; font-weight:700; margin-bottom:2px; color:var(--text3); }
.msg.nara .msg-who { color:var(--green); text-align:right; }
.msg.humano .msg-who { color:var(--blue-md); text-align:right; }
.msg.sistema .msg-who { text-align:center; }
.bubble {
  padding:7px 10px; border-radius:11px;
  font-size:12px; line-height:1.55; word-break:break-word;
}
.msg.cliente .bubble { background:var(--surface2); color:var(--text); border:0.5px solid var(--border); border-bottom-left-radius:3px; }
.msg.nara .bubble { background:var(--green-lt); color:var(--green-dk); border:0.5px solid var(--green-bd); border-bottom-right-radius:3px; }
.msg.humano .bubble { background:var(--blue-lt); color:var(--blue-md); border:0.5px solid rgba(24,95,165,.3); border-bottom-right-radius:3px; }
.msg.sistema .bubble { background:var(--surface2); color:var(--text3); border:0.5px solid var(--border); border-radius:7px; font-size:10px; text-align:center; }
.msg-time { font-size:9px; color:var(--text3); margin-top:2px; }
.msg.nara .msg-time, .msg.humano .msg-time { text-align:right; }
.msg.sistema .msg-time { text-align:center; }


.msg-meta-row { display:flex; align-items:center; gap:6px; justify-content:flex-end; }
.msg.cliente .msg-meta-row { justify-content:flex-start; }
.msg-reply-btn {
  opacity:.35; border:0; background:transparent; color:var(--text3); cursor:pointer;
  font-size:9px; padding:1px 3px; display:flex; align-items:center; gap:2px; font-family:inherit;
}
.msg:hover .msg-reply-btn { opacity:1; }
.msg-quoted {
  border-left:3px solid currentColor; background:rgba(255,255,255,.42);
  border-radius:5px; padding:5px 7px; margin-bottom:6px; display:flex; flex-direction:column;
  max-width:100%; opacity:.86;
}
.msg-quoted b { font-size:9px; margin-bottom:1px; }
.msg-quoted span { font-size:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:420px; }
.chat-reply-preview {
  flex-shrink:0; align-items:center; gap:8px; justify-content:space-between;
  border:0.5px solid var(--border2); border-left:3px solid var(--green);
  background:var(--surface2); border-radius:7px; padding:6px 8px; margin-top:7px;
}
.chat-reply-preview > div { min-width:0; display:flex; flex-direction:column; }
.chat-reply-preview b { font-size:10px; color:var(--green-dk); }
.chat-reply-preview span { font-size:10px; color:var(--text3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:620px; }
.chat-reply-preview button { border:0; background:transparent; color:var(--text3); font-size:18px; cursor:pointer; }

.chat-input-area {
  flex-shrink:0; border-top:0.5px solid var(--border); margin-top:8px; padding-top:8px;
  display:flex; gap:6px; align-items:flex-end;
}
.chat-input-area textarea {
  flex:1; font-size:12px; padding:7px 9px; border-radius:7px;
  border:0.5px solid var(--border2); background:var(--surface2);
  color:var(--text); resize:none; max-height:90px; font-family:inherit; line-height:1.4;
}
.chat-input-area textarea:focus { outline:none; border-color:var(--green); background:var(--surface); }
.btn-send {
  background:var(--green); color:#fff; border:none; border-radius:7px;
  padding:7px 12px; font-size:12px; cursor:pointer;
  display:flex; align-items:center; gap:4px; font-family:inherit; flex-shrink:0;
}
.btn-send:hover { background:var(--green-dk); }

/* ── ABA HISTÓRICO ── */
.hist-list { display:flex; flex-direction:column; }
.hist-item { display:flex; gap:9px; padding:8px 0; border-bottom:0.5px solid var(--border); font-size:11px; }
.hist-item:last-child { border-bottom:none; }
.hist-dot-col { display:flex; flex-direction:column; align-items:center; padding-top:3px; }
.hist-dot {
  width:7px; height:7px; border-radius:50%; flex-shrink:0;
  background:var(--text3); box-shadow:0 0 0 1.5px var(--text3);
}
.hist-dot.nara { background:var(--green); box-shadow:0 0 0 1.5px var(--green); }
.hist-dot.humano { background:var(--blue-md); box-shadow:0 0 0 1.5px var(--blue-md); }
.hist-dot.sistema { background:var(--amber-md); box-shadow:0 0 0 1.5px var(--amber-md); }
.hist-line { width:1px; flex:1; background:var(--border); margin-top:3px; }
.hist-body { flex:1; min-width:0; }
.hist-badge {
  display:inline-flex; align-items:center; gap:2px; font-size:9px; font-weight:700;
  padding:1px 5px; border-radius:99px; text-transform:uppercase; letter-spacing:.03em; margin-bottom:2px;
}
.hist-badge.nara { background:var(--green-lt); color:var(--green-dk); }
.hist-badge.humano { background:var(--blue-lt); color:var(--blue-md); }
.hist-badge.sistema { background:var(--amber-lt); color:var(--amber-md); }
.hist-what { color:var(--text2); }
.hist-detail { font-size:10px; color:var(--text3); margin-top:2px; font-style:italic; }
.hist-when { font-size:9px; color:var(--text3); margin-top:2px; }

/* ── Ações rápidas colapsáveis (Resumo) ── */
.aq-wrap { border:0.5px solid var(--border2); border-radius:8px; overflow:hidden; }
.aq-toggle {
  width:100%; display:flex; align-items:center; gap:6px; padding:8px 11px;
  background:var(--surface2); border:none; cursor:pointer; font-size:11px;
  color:var(--text2); font-family:inherit; text-align:left; transition:background .12s;
}
.aq-toggle:hover { background:var(--border); }
.aq-toggle i:first-child { font-size:13px; color:var(--purple-md); }
.aq-chevron { margin-left:auto; font-size:11px; transition:transform .2s; }
.aq-toggle.open .aq-chevron { transform:rotate(180deg); }
.aq-list { display:flex; flex-direction:column; border-top:0.5px solid var(--border); }
.aq-item {
  display:flex; align-items:center; gap:8px; padding:8px 11px;
  background:var(--surface); border:none; border-bottom:0.5px solid var(--border);
  cursor:pointer; font-size:12px; color:var(--text2); font-family:inherit;
  text-align:left; transition:background .12s;
}
.aq-item:last-child { border-bottom:none; }
.aq-item:hover { background:var(--surface2); color:var(--text); }
.aq-item i { font-size:14px; flex-shrink:0; }
.aq-item.aq-danger { color:var(--red-md); }
.aq-item.aq-danger i { color:var(--red-md); }
.aq-item.aq-danger:hover { background:var(--red-lt); }

/* ── Toast ── */
#toast {
  position:fixed; bottom:16px; left:50%; transform:translateX(-50%) translateY(70px);
  background:var(--text); color:var(--bg); padding:8px 16px; border-radius:99px;
  font-size:12px; z-index:999; transition:transform .25s; pointer-events:none;
  box-shadow:0 4px 16px rgba(0,0,0,.25); white-space:nowrap;
}
#toast.show { transform:translateX(-50%) translateY(0); }
#toast.ok { background:var(--green); color:#fff; }
#toast.err { background:var(--red-md); color:#fff; }
#toast.warn { background:var(--amber-md); color:#fff; }

/* ── helpers ── */
.sep { border:none; border-top:0.5px solid var(--border); }
::-webkit-scrollbar { width:3px; height:3px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:var(--border2); border-radius:99px; }

/* ═══════════════════════════════════════════════════════
   RESPONSIVIDADE
═══════════════════════════════════════════════════════ */

/* >= 1024px: todas as colunas distribuídas, sem scroll — padrão já definido acima */

/* Notebook (< 1200px): métricas compactas, board continua distribuído */
@media (max-width: 1200px) {
  #metrics-bar { display:none; }
  #metrics-compact { display:flex; }
  .col-label { font-size:10px; }
  #board-wrap { padding: 8px; }
  #board { gap: 6px; }
}

/* Abaixo de 1024px: board permite scroll se não couber */
@media (max-width: 1023px) {
  #board { min-width: max-content; width: auto; }
  .col { min-width: 150px; flex: 0 0 150px; }
}

/* Tablet (< 768px) */
@media (max-width: 768px) {
  .col { min-width: 140px; flex: 0 0 140px; }
  .brand-tag { display:none; }
  #board-wrap { padding: 6px; }
  #board { gap: 5px; }
}

/* Celular (< 600px) */
@media (max-width: 600px) {
  /* Topbar compacta */
  #topbar { padding: 5px 8px; gap:7px; }
  .brand-name { font-size:12px; }
  .theme-switcher { display:none; }
  .user-pill small { display:none; }

  /* Métricas ultra compactas */
  #metrics-compact { padding:4px 8px; }
  .mc-val { font-size:13px; }

  /* Board mobile: scroll horizontal, colunas colapsáveis */
  #board-wrap { padding:6px; }
  #board { gap:6px; }

  .col { width:160px; }
  .col-cards { padding:5px; gap:4px; }

  /* Só 1 card visível por coluna inicialmente — JS controla */
  .col-cards.collapsed .card:nth-child(n+2) { display:none; }
  .col-head { cursor:pointer; }

  /* Cards compactos */
  .card { padding:7px; }
  .card-top { margin-bottom:3px; }
  .card-av { width:22px; height:22px; font-size:8px; }
  .card-nome { font-size:11px; }
  .card-fone { display:none; }
  .card-preview { font-size:10px; padding:3px 5px; }
  .card-origem { display:none; }

  /* Modal full screen no celular */
  .modal-overlay { padding: 0; }
  .modal {
    border-radius: 0;
    height: 100vh;
    max-height: 100vh;
    width: 100vw;
    max-width: 100vw;
  }

  /* Abas mais compactas */
  .modal-tab { padding:6px 9px; font-size:10px; }
  .modal-tab i { display:none; }

  /* Chips de etapa: scroll horizontal */
  .modal-etapa-row { flex-wrap:nowrap; overflow-x:auto; }

  /* IA segmentado compacto */
  .ia-seg-btn { padding:3px 7px; font-size:10px; }

  /* Grid de ações: 1 coluna */
  .acao-rapida-grid, .acoes-grid { grid-template-columns:1fr; }
  .btn-aq.full, .btn-acao.full { grid-column:auto; }

  /* Meta discreta: empilhar */
  .modal-meta { padding:0 10px; }
  .meta-field { padding:4px 8px 4px 0; margin-right:6px; }
}

/* ── Menu do usuário ── */
.user-menu-wrap { position:relative; }
.user-pill {
  display:flex; align-items:center; gap:7px; padding:4px 8px;
  border-left:0.5px solid var(--border); background:none; border-top:none;
  border-right:none; border-bottom:none; cursor:pointer; font-family:inherit;
}
.user-av {
  width:26px; height:26px; border-radius:50%; background:var(--green);
  display:flex; align-items:center; justify-content:center;
  font-size:10px; font-weight:700; color:#fff; flex-shrink:0;
}
.user-pill span { font-size:11px; font-weight:500; color:var(--text); }
.user-pill small { font-size:9px; color:var(--text3); text-transform:uppercase; display:block; }
.user-pill:hover { background:var(--surface2); }

.user-dropdown {
  display:none; position:absolute; top:calc(100% + 6px); right:0;
  background:var(--surface); border:0.5px solid var(--border2);
  border-radius:10px; box-shadow:var(--shadow-md); z-index:200; min-width:200px; overflow:hidden;
}
.user-dropdown.open { display:block; }
.user-dropdown-head {
  padding:12px 14px 10px; border-bottom:0.5px solid var(--border);
  background:var(--surface2);
}
.ud-nome { font-size:13px; font-weight:600; color:var(--text); }
.ud-email { font-size:11px; color:var(--text3); margin-top:2px; }
.user-dropdown-body { padding:5px; display:flex; flex-direction:column; gap:2px; }
.ud-item {
  display:flex; align-items:center; gap:8px; padding:7px 10px;
  border-radius:7px; border:none; background:none; cursor:pointer;
  font-size:12px; color:var(--text2); font-family:inherit; text-align:left; width:100%;
  transition:background .12s;
}
.ud-item:hover { background:var(--surface2); color:var(--text); }
.ud-item i { font-size:14px; color:var(--text3); }
.ud-item:hover i { color:var(--text); }
.ud-sep { border:none; border-top:0.5px solid var(--border); margin:3px 0; }
.ud-logout { color:var(--red-md); }
.ud-logout i { color:var(--red-md); }
.ud-logout:hover { background:var(--red-lt); color:var(--red-md); }

/* ── Configurações ── */
.cfg-grupo { display:flex; flex-direction:column; gap:8px; }
.cfg-grupo-label {
  font-size:10px; font-weight:700; color:var(--text3);
  text-transform:uppercase; letter-spacing:.06em;
  display:flex; align-items:center; gap:5px; padding-bottom:4px;
  border-bottom:0.5px solid var(--border);
}
.cfg-grupo-label i { font-size:13px; }

/* ── Menu do usuário ── */
.user-menu-wrap { position:relative; }
.user-pill-btn {
  display:flex; align-items:center; gap:7px; padding:4px 10px;
  border-left:0.5px solid var(--border); background:none; border-top:none;
  border-right:none; border-bottom:none; cursor:pointer; font-family:inherit;
  transition:background .12s;
}
.user-pill-btn:hover { background:var(--surface2); }
.user-av {
  width:28px; height:28px; border-radius:50%; background:var(--green);
  display:flex; align-items:center; justify-content:center;
  font-size:10px; font-weight:700; color:#fff; flex-shrink:0;
}
.user-pill-info { display:flex; flex-direction:column; align-items:flex-start; }
.user-pill-info span { font-size:11px; font-weight:600; color:var(--text); white-space:nowrap; }
.user-pill-info small { font-size:9px; color:var(--text3); text-transform:uppercase; letter-spacing:.04em; }
.user-chevron { font-size:11px; color:var(--text3); transition:transform .2s; }
.user-chevron.open { transform:rotate(180deg); }

.user-dropdown {
  display:none; position:absolute; top:calc(100% + 5px); right:0;
  background:var(--surface); border:0.5px solid var(--border2);
  border-radius:10px; box-shadow:var(--shadow-md); z-index:300; min-width:210px; overflow:hidden;
}
.user-dropdown.open { display:block; }
.ud-head {
  padding:12px 14px 10px; border-bottom:0.5px solid var(--border); background:var(--surface2);
}
.ud-nome  { font-size:13px; font-weight:700; color:var(--text); }
.ud-email { font-size:11px; color:var(--text3); margin-top:2px; }
.ud-body  { padding:5px; }
.ud-item {
  display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:7px;
  border:none; background:none; cursor:pointer; font-size:12px; color:var(--text2);
  font-family:inherit; text-align:left; width:100%; transition:background .12s;
}
.ud-item:hover { background:var(--surface2); color:var(--text); }
.ud-item i { font-size:14px; color:var(--text3); }
.ud-item:hover i { color:var(--text); }
.ud-sep { border:none; border-top:0.5px solid var(--border); margin:4px 5px; }
.ud-logout { color:var(--red-md) !important; }
.ud-logout i { color:var(--red-md) !important; }
.ud-logout:hover { background:var(--red-lt) !important; }

/* ── Configurações: abas ── */
.cfg-tabs {
  display:flex; align-items:stretch; border-bottom:0.5px solid var(--border2);
  background:var(--surface2); overflow-x:auto; flex-shrink:0;
}
.cfg-tab {
  display:flex; align-items:center; gap:5px; padding:0 14px; height:38px;
  font-size:11px; font-weight:500; cursor:pointer; font-family:inherit;
  color:var(--text3); background:transparent; border:none;
  border-bottom:2px solid transparent; margin-bottom:-0.5px;
  white-space:nowrap; transition:all .15s;
}
.cfg-tab:hover { color:var(--text2); background:rgba(0,0,0,.04); }
.cfg-tab.active { color:var(--text); background:var(--surface); border-bottom-color:var(--green); font-weight:700; }
.cfg-tab i { font-size:13px; }

.cfg-body { flex:1; overflow-y:auto; }
.cfg-pane { display:none; padding:14px 16px; flex-direction:column; gap:10px; }
.cfg-pane.active { display:flex; }
.cfg-grupo-label {
  font-size:10px; font-weight:700; color:var(--text3);
  text-transform:uppercase; letter-spacing:.06em;
  display:flex; align-items:center; gap:5px;
  padding-bottom:5px; border-bottom:0.5px solid var(--border);
}
.cfg-sensivel { font-size:9px; font-weight:500; color:var(--green); text-transform:none; letter-spacing:0; margin-left:4px; }
.cfg-note {
  display:flex; align-items:flex-start; gap:6px; padding:8px 10px;
  background:var(--blue-lt); border-radius:7px; border:0.5px solid rgba(24,95,165,.2);
  font-size:11px; color:var(--blue-md); line-height:1.5;
}
.cfg-note i { font-size:13px; flex-shrink:0; margin-top:1px; }

/* ── Lista de usuários ── */
.usuario-item {
  display:flex; align-items:center; gap:10px; padding:9px 10px;
  background:var(--surface2); border-radius:8px; border:0.5px solid var(--border);
}
.usuario-av {
  width:32px; height:32px; border-radius:50%; background:var(--blue-md);
  display:flex; align-items:center; justify-content:center;
  font-size:11px; font-weight:700; color:#fff; flex-shrink:0;
}
.usuario-info { flex:1; min-width:0; }
.usuario-nome { font-size:12px; font-weight:600; color:var(--text); }
.usuario-email { font-size:10px; color:var(--text3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.usuario-badges { display:flex; gap:4px; align-items:center; flex-shrink:0; }
.badge-nivel {
  font-size:9px; font-weight:700; padding:2px 6px; border-radius:99px; text-transform:uppercase;
}
.badge-admin { background:var(--purple-lt); color:var(--purple-md); }
.badge-op    { background:var(--gray-lt);   color:var(--gray-md); }
.badge-inativo { background:var(--red-lt); color:var(--red-md); }
.usuario-actions { display:flex; gap:4px; flex-shrink:0; }
.btn-usuario-acao {
  display:flex; align-items:center; gap:3px; padding:4px 8px; border-radius:6px;
  border:0.5px solid var(--border2); background:var(--surface); cursor:pointer;
  font-size:10px; color:var(--text2); font-family:inherit; transition:background .12s;
}
.btn-usuario-acao:hover { background:var(--surface2); }
.btn-usuario-acao.danger { color:var(--red-md); border-color:var(--red-bd); }
.btn-usuario-acao.danger:hover { background:var(--red-lt); }

/* Perfil e configurações da Nara 3 */
.cfg-textarea {
  width:100%; padding:8px 10px; border-radius:7px;
  border:0.5px solid var(--border2); background:var(--surface2);
  color:var(--text); font-size:11px; font-family:inherit;
  resize:vertical; min-height:120px; outline:none; line-height:1.55;
}
.cfg-textarea:focus { border-color:var(--green); background:var(--surface); }
.cfg-textarea-lg { min-height:180px; }
.modal-config-wide { max-width:980px; height:calc(100vh - 28px); max-height:calc(100vh - 28px); }
@media (max-width:720px) {
  .modal-config-wide { max-width:100%; max-height:100vh; height:100vh; border-radius:0; }
}

/* ══ Nara 3 RC2 — ciclo comercial, resgate e bloqueio ══════ */
.card-bloqueado { border-color:var(--red-bd); box-shadow:inset 3px 0 0 var(--red-md); }
.card-block-badge {
  display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:5px 7px;
  margin:-1px -1px 7px;border-radius:7px 7px 4px 4px;
  background:var(--red-lt);color:var(--red-md);border-bottom:1px solid var(--red-bd);
}
.card-cycle-badge {
  display:flex;align-items:center;gap:4px;min-width:0;max-width:100%;
  font-size:10px;font-weight:700;line-height:1.2;padding:3px 6px;margin:-1px 0 6px;
  border-radius:5px;background:var(--surface2);color:var(--text2);border:.5px solid var(--border);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.card-cycle-badge.active { background:var(--blue-lt);color:var(--blue-md);border-color:rgba(24,95,165,.25); }
.card-cycle-badge i { flex-shrink:0; }
.score-cycle {
  display:block;max-width:100%;font-size:10px;font-weight:750;line-height:1.2;
  background:var(--purple-lt);color:var(--purple-md);border:.5px solid rgba(83,74,183,.25);
  padding:3px 7px;border-radius:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.score-cycle.score-current { background:var(--surface2);color:var(--text2);border-color:var(--border); }
.ciclo-status-box { margin:12px 14px 0;padding:10px 12px;border:1px solid rgba(24,95,165,.25);border-radius:8px;background:var(--blue-lt);color:var(--blue-md);font-size:11px;line-height:1.45; }
.ciclo-status-box.bloqueado { background:var(--red-lt);border-color:var(--red-bd);color:var(--red-md); }
.ciclo-status-title { display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;margin-bottom:3px; }
.ciclo-status-resumo { margin-top:5px;color:var(--text2);white-space:pre-wrap; }
.ciclo-unlock { margin-top:8px; }
.inativo-item.selected { background:var(--red-lt);color:var(--red-md);border-color:var(--red-bd);font-weight:700; }
.bloqueio-check { display:flex;gap:8px;align-items:flex-start;padding:9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);font-size:11px;cursor:pointer; }
.bloqueio-check input { margin-top:2px; }
.bloqueio-check span { display:flex;flex-direction:column;gap:2px; }
.bloqueio-check small { color:var(--text3);line-height:1.35; }
.danger-action { background:var(--red-md)!important;border-color:var(--red-md)!important; }
.futuro-modal-body { padding:14px 16px;display:flex;flex-direction:column;gap:11px; }
.futuro-atalhos { display:grid;grid-template-columns:repeat(4,1fr);gap:6px; }
.futuro-atalhos button { border:.5px solid var(--border2);background:var(--surface2);color:var(--text2);border-radius:6px;padding:7px 5px;font:inherit;font-size:11px;font-weight:600;cursor:pointer; }
.futuro-atalhos button:hover { border-color:var(--blue-md);color:var(--blue-md);background:var(--blue-lt); }
.futuro-data-grid { display:grid;grid-template-columns:1fr 120px;gap:8px; }
.char-counter { text-align:right;font-size:9px;color:var(--text3);margin-top:2px; }
#btn-enviar-msg:disabled,#chat-input:disabled { opacity:.5;cursor:not-allowed; }
@media(max-width:520px){.futuro-atalhos{grid-template-columns:repeat(3,1fr)}.futuro-data-grid{grid-template-columns:1fr 105px}}
.ciclo-status-meta{font-size:11px;opacity:.75;margin-top:3px}
.cfg-help { margin-top:4px;color:var(--text3);font-size:10px;line-height:1.4; }
