
  .dp-overlay {
    --dp-bg: #ffffff; --dp-bg-soft: #f8fafc; --dp-bg-hover: #f2f4f7; --dp-chip-on: #eaedf2;
    --dp-line: #eef0f4; --dp-line-strong: #e3e7ed;
    --dp-text: #0f172a; --dp-text-2: #334155; --dp-muted: #64748b; --dp-faint: #94a3b8;
    --dp-accent: var(--primary-color, #4f46e5); --dp-accent-soft: rgba(79, 70, 229, .12); --dp-accent-text: var(--primary-color, #4f46e5);
    --dp-accent-tint: #f5f7ff; --dp-accent-line: #dfe3f5;
    --dp-field-bg: #ffffff; --dp-field-border: #dde2e9; --dp-field-border-hover: #c5ccd6;
    position: fixed; inset: 0; z-index: 9998; background: rgba(15, 23, 42, .42); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; padding: 16px;
  }
  .dark .dp-overlay { --dp-accent-tint: #161d33; --dp-accent-line: #2b3456; }
  @supports (background: color-mix(in srgb, red 10%, transparent)) {
    .dp-overlay { --dp-accent-soft: color-mix(in srgb, var(--primary-color, #4f46e5) 16%, transparent); --dp-accent-text: color-mix(in srgb, var(--primary-color, #4f46e5) 68%, #0f172a); }
    .dp-overlay { --dp-accent-tint: color-mix(in srgb, var(--primary-color, #4f46e5) 7%, #ffffff); --dp-accent-line: color-mix(in srgb, var(--primary-color, #4f46e5) 30%, #ffffff); }
    .dark .dp-overlay { --dp-accent-text: color-mix(in srgb, var(--primary-color, #4f46e5) 75%, #ffffff); --dp-accent-tint: color-mix(in srgb, var(--primary-color, #4f46e5) 9%, #111827); --dp-accent-line: color-mix(in srgb, var(--primary-color, #4f46e5) 30%, #111827); }
  }
  .dark .dp-overlay {
    --dp-bg: #111827; --dp-bg-soft: #0f172a; --dp-bg-hover: #1b2433; --dp-chip-on: #243044;
    --dp-line: #1e2635; --dp-line-strong: #2b3547;
    --dp-text: #e5e7eb; --dp-text-2: #cbd5e1; --dp-muted: #9aa4b2; --dp-faint: #6b7280;
    --dp-field-bg: #0f172a; --dp-field-border: #2e3a4d; --dp-field-border-hover: #3d4a60;
    background: rgba(2, 6, 23, .6);
  }
  .dp-window { background: var(--dp-bg); color: var(--dp-text); width: 96vw; max-width: 1480px; height: 94vh; border-radius: 18px; box-shadow: 0 24px 70px rgba(2, 6, 23, .28), 0 0 0 1px rgba(15, 23, 42, .05); display: flex; flex-direction: column; overflow: hidden; font-size: 13px; line-height: 1.45; }
  .dark .dp-window { box-shadow: 0 24px 70px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .06); }

  /* Cabeçalho */
  .dp-head { background: var(--dp-bg); border-bottom: 1px solid var(--dp-line); padding: 16px 22px 14px; display: flex; flex-direction: column; gap: 14px; flex-shrink: 0; }
  .dp-head-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
  .dp-identity { display: flex; align-items: center; gap: 14px; min-width: 0; flex: 1; }
  .dp-avatar { width: 44px; height: 44px; border-radius: 999px; object-fit: cover; flex-shrink: 0; background: var(--dp-accent); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 650; font-size: 15px; letter-spacing: .02em; }
  .dp-title-input { font-size: 19px; font-weight: 650; letter-spacing: -.01em; border: 1px solid transparent; background: transparent; border-radius: 8px; padding: 1px 8px; margin-left: -8px; width: 100%; min-width: 0; color: inherit; font-family: inherit; transition: background .15s, border-color .15s, box-shadow .15s; }
  .dp-title-input:hover { background: var(--dp-bg-hover); }
  .dp-title-input:focus { outline: none; border-color: var(--dp-accent); background: var(--dp-bg); box-shadow: 0 0 0 3px var(--dp-accent-soft); }
  .dp-subline { font-size: 12.5px; color: var(--dp-muted); display: flex; gap: 6px 14px; flex-wrap: wrap; align-items: center; margin-top: 4px; }
  .dp-subline > span { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
  .dp-subline b { color: var(--dp-text-2); font-weight: 600; }
  .dp-subline svg.lucide, .dp-subline i[data-lucide] { width: 13px; height: 13px; opacity: .75; }
  .dp-actions { display: flex; gap: 6px; align-items: center; flex-wrap: nowrap; justify-content: flex-end; }
  .dp-actions-sep { width: 1px; height: 22px; background: var(--dp-line-strong); margin: 0 4px; }

  /* Botões */
  .dp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border-radius: 10px; padding: 7px 12px; line-height: 18px; font-size: 13px; font-weight: 600; font-family: inherit; cursor: pointer; border: 1px solid var(--dp-line-strong); background: var(--dp-bg); color: var(--dp-text-2); white-space: nowrap; text-decoration: none; transition: background .15s, border-color .15s, color .15s, filter .15s; }
  .dp-btn:hover { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-btn:disabled { opacity: .5; cursor: default; }
  .dp-btn-primary { background: var(--dp-accent); border-color: transparent; color: #fff; box-shadow: 0 1px 2px rgba(15, 23, 42, .12); }
  .dp-btn-primary:hover { background: var(--dp-accent); color: #fff; filter: brightness(.95); }
  .dp-btn-icon { padding: 0; width: 34px; height: 34px; }
  .dp-btn-ghost { border-color: transparent; background: transparent; color: var(--dp-muted); }
  .dp-btn-ghost:hover { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-btn.is-open { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-btn-sm { padding: 4px 10px; font-size: 12px; border-radius: 8px; }
  .dp-btn-won { color: #059669; }
  .dp-btn-won:hover { background: #ecfdf5; border-color: #a7f3d0; color: #047857; }
  .dp-btn-lost { color: #dc2626; }
  .dp-btn-lost:hover { background: #fef2f2; border-color: #fecaca; color: #b91c1c; }
  .dp-btn-danger { color: #dc2626; }
  .dark .dp-btn-won { color: #34d399; }
  .dark .dp-btn-won:hover { background: rgba(16, 185, 129, .12); border-color: rgba(16, 185, 129, .35); color: #6ee7b7; }
  .dark .dp-btn-lost, .dark .dp-btn-danger { color: #f87171; }
  .dark .dp-btn-lost:hover { background: rgba(239, 68, 68, .12); border-color: rgba(239, 68, 68, .35); color: #fca5a5; }

  /* Menu "mais ações" */
  .dp-menu-wrap { position: relative; }
  .dp-menu { position: absolute; right: 0; top: calc(100% + 6px); z-index: 30; min-width: 250px; background: var(--dp-bg); border: 1px solid var(--dp-line-strong); border-radius: 12px; box-shadow: 0 16px 40px rgba(2, 6, 23, .16); padding: 6px; }
  .dark .dp-menu { box-shadow: 0 16px 40px rgba(0, 0, 0, .5); }
  .dp-menu-label { font-size: 11px; font-weight: 600; color: var(--dp-faint); padding: 6px 10px 4px; }
  .dp-menu-item { display: flex; align-items: center; gap: 9px; width: 100%; text-align: left; padding: 8px 10px; border-radius: 8px; border: 0; background: none; font-size: 13px; font-family: inherit; color: var(--dp-text-2); cursor: pointer; }
  .dp-menu-item:hover { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-menu-item .dp-menu-check { margin-left: auto; opacity: 0; color: var(--dp-accent); }
  .dp-menu-item.is-active { color: var(--dp-text); font-weight: 600; }
  .dp-menu-item.is-active .dp-menu-check { opacity: 1; }
  .dp-menu-item.is-danger { color: #dc2626; }
  .dp-menu-item.is-danger:hover { background: #fef2f2; color: #b91c1c; }
  .dark .dp-menu-item.is-danger { color: #f87171; }
  .dark .dp-menu-item.is-danger:hover { background: rgba(239, 68, 68, .12); }
  .dp-menu-sep { height: 1px; background: var(--dp-line); margin: 6px 4px; }

  /* Selos */
  .dp-badge { display: inline-flex; align-items: center; gap: 4px; border-radius: 999px; padding: 2px 9px; font-size: 11px; font-weight: 600; line-height: 16px; }
  .dp-badge svg.lucide, .dp-badge i[data-lucide] { width: 12px !important; height: 12px !important; opacity: 1 !important; }
  .dp-badge-won { background: #ecfdf5; color: #047857; }
  .dp-badge-lost { background: #fef2f2; color: #b91c1c; }
  .dp-badge-open { background: var(--dp-bg-hover); color: var(--dp-muted); }
  .dp-badge-rot { background: #fffbeb; color: #b45309; }
  .dark .dp-badge-won { background: rgba(16, 185, 129, .14); color: #34d399; }
  .dark .dp-badge-lost { background: rgba(239, 68, 68, .14); color: #f87171; }
  .dark .dp-badge-rot { background: rgba(245, 158, 11, .14); color: #fbbf24; }

  /* Etapas: barra fina segmentada */
  .dp-stages { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; }
  .dp-stages::-webkit-scrollbar { display: none; }
  .dp-stage { flex: 1 1 0; min-width: 88px; position: relative; padding: 12px 2px 0; font-size: 12px; font-weight: 500; color: var(--dp-faint); cursor: pointer; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; user-select: none; transition: color .15s; }
  .dp-stage::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; border-radius: 999px; background: var(--dp-line-strong); transition: background .15s, opacity .15s; }
  .dp-stage:hover { color: var(--dp-text-2); }
  .dp-stage:hover::before { background: var(--dp-faint); opacity: .45; }
  .dp-stage.is-done { color: var(--dp-muted); }
  .dp-stage.is-done::before { background: var(--dp-stage-color, #94a3b8); opacity: .5; }
  .dp-stage.is-done:hover::before { opacity: .75; }
  .dp-stage.is-current { color: var(--dp-text); font-weight: 650; cursor: default; }
  .dp-stage.is-current::before { background: var(--dp-stage-color, var(--dp-accent)); opacity: 1; }
  .dp-stage small { display: inline; margin-left: 6px; font-weight: 500; font-size: 11px; color: var(--dp-faint); }

  /* Corpo em 3 colunas */
  .dp-body { flex: 1; min-height: 0; display: grid; grid-template-columns: 300px minmax(0, 1fr) 296px; gap: 0; }
  .dp-col { min-height: 0; overflow-y: auto; padding: 4px 20px 20px; scrollbar-width: thin; }
  .dp-col-left { border-right: 1px solid var(--dp-line); background: var(--dp-bg); }
  .dp-col-right { border-left: 1px solid var(--dp-line); background: var(--dp-bg); }
  .dp-col-center { display: flex; flex-direction: column; min-height: 0; padding: 0; background: var(--dp-bg); }

  /* Seções (recolhíveis) */
  .dp-section { padding: 14px 0; border-bottom: 1px solid var(--dp-line); }
  .dp-section:last-child { border-bottom: 0; }
  .dp-section-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 26px; margin-bottom: 8px; font-size: 13px; font-weight: 650; color: var(--dp-text); }
  .dp-section.is-collapsed .dp-section-title { margin-bottom: 0; }
  .dp-section-toggle { display: inline-flex; align-items: center; gap: 6px; background: none; border: 0; padding: 0; margin: 0; font: inherit; color: inherit; cursor: pointer; text-align: left; }
  .dp-section-toggle svg.lucide, .dp-section-toggle i[data-lucide] { width: 15px; height: 15px; color: var(--dp-faint); transition: transform .15s; }
  .dp-section.is-collapsed .dp-section-toggle svg.lucide, .dp-section.is-collapsed .dp-section-toggle i[data-lucide] { transform: rotate(-90deg); }
  .dp-icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 8px; border: 0; background: transparent; color: var(--dp-faint); cursor: pointer; transition: background .15s, color .15s; }
  .dp-icon-btn:hover { background: var(--dp-bg-hover); color: var(--dp-text); }

  /* Campos */
  .dp-field { display: flex; flex-direction: column; gap: 4px; margin-bottom: 11px; }
  .dp-label { font-size: 11.5px; color: var(--dp-muted); font-weight: 500; }
  .dp-input, .dp-select, .dp-textarea { width: 100%; border: 1px solid var(--dp-line-strong); border-radius: 9px; padding: 7px 10px; font-size: 13px; font-family: inherit; background-color: var(--dp-bg); color: inherit; transition: border-color .15s, background-color .15s, box-shadow .15s; }
  .dp-input:focus, .dp-select:focus, .dp-textarea:focus { outline: none; border-color: var(--dp-accent); box-shadow: 0 0 0 3px var(--dp-accent-soft); }
  .dp-input::placeholder, .dp-textarea::placeholder { color: var(--dp-faint); }
  .dp-input-wrap { display: flex; align-items: center; gap: 6px; }
  .dp-input-money { font-weight: 650; color: #059669; }
  .dark .dp-input-money { color: #34d399; }
  .dp-hint { font-size: 11.5px; color: var(--dp-faint); line-height: 1.4; }
  .dp-static { padding: 6px 10px; font-size: 13px; font-weight: 500; color: var(--dp-muted); background: var(--dp-bg-soft); border: 1px solid var(--dp-line); border-radius: 9px; }
  /* Colunas laterais: campo com borda leve (vazio também aparece como caixa) */
  .dp-col-left .dp-field .dp-input, .dp-col-left .dp-field .dp-select, .dp-col-left .dp-field .dp-textarea { border-color: var(--dp-field-border); background-color: var(--dp-field-bg); padding: 6px 10px; font-weight: 500; color: var(--dp-text); }
  .dp-col-left .dp-field .dp-input:hover, .dp-col-left .dp-field .dp-select:hover, .dp-col-left .dp-field .dp-textarea:hover { border-color: var(--dp-field-border-hover); }
  .dp-col-left .dp-field .dp-input:focus, .dp-col-left .dp-field .dp-select:focus, .dp-col-left .dp-field .dp-textarea:focus { border-color: var(--dp-accent); }
  .dp-col-left .dp-field .dp-textarea { resize: none; min-height: 36px; line-height: 1.45; }
  .dp-col-left .dp-field .dp-input-money { font-weight: 650; color: #059669; }
  .dark .dp-col-left .dp-field .dp-input-money { color: #34d399; }
  .dp-col-left .dp-field .dp-select { -webkit-appearance: none; appearance: none; padding-right: 28px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 9px center; background-size: 14px; }
  .dp-col-left .dp-field > span.dp-hint { display: none; }
  .dp-col-left .dp-field:focus-within > span.dp-hint { display: block; }
  .dp-col-left .dp-field > label { color: var(--dp-text-2); }
  .dp-subgroup { margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--dp-line-strong); }
  .dp-subgroup-title { font-size: 12px; font-weight: 650; color: var(--dp-text-2); margin-bottom: 10px; }
  /* Próximo passo em destaque no topo da coluna */
  .dp-nextstep { margin: 14px 0 4px; padding: 12px 12px 4px; border-radius: 12px; background: var(--dp-accent-tint); border: 1px solid var(--dp-accent-line); }
  .dp-nextstep .dp-field { margin-bottom: 8px; }
  .dp-nextstep .dp-label { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 650; color: var(--dp-accent-text); }
  .dp-nextstep .dp-label::before { content: ''; width: 14px; height: 14px; flex-shrink: 0; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/%3E%3Cline x1='4' x2='4' y1='22' y2='15'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z'/%3E%3Cline x1='4' x2='4' y1='22' y2='15'/%3E%3C/svg%3E") center / contain no-repeat; }
  .dp-col-left .dp-nextstep .dp-field .dp-textarea { background-color: var(--dp-bg); border-color: var(--dp-accent-line); min-height: 58px; font-size: 13.5px; }
  .dp-col-left .dp-nextstep .dp-field .dp-textarea:focus { border-color: var(--dp-accent); }
  .dp-tags { display: flex; flex-wrap: wrap; gap: 4px; padding-top: 2px; }
  .dp-tag { display: inline-flex; align-items: center; border-radius: 999px; padding: 2px 8px; font-size: 11px; font-weight: 600; }

  /* Abas do centro */
  .dp-tabs { display: flex; gap: 4px; padding: 0 18px; border-bottom: 1px solid var(--dp-line); background: var(--dp-bg); position: sticky; top: 0; z-index: 3; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; flex-shrink: 0; }
  .dp-tabs::-webkit-scrollbar { display: none; }
  .dp-tab { border: 0; background: transparent; padding: 13px 10px 11px; font-size: 13px; font-weight: 550; font-family: inherit; color: var(--dp-muted); border-bottom: 2px solid transparent; cursor: pointer; display: inline-flex; gap: 7px; align-items: center; margin-bottom: -1px; white-space: nowrap; flex-shrink: 0; transition: color .15s, border-color .15s; }
  .dp-tab:hover { color: var(--dp-text); }
  .dp-tab.is-active { color: var(--dp-text); border-bottom-color: var(--dp-accent); }
  .dp-tab svg.lucide, .dp-tab i[data-lucide] { width: 15px; height: 15px; opacity: .8; }
  .dp-tab .dp-count { background: var(--dp-bg-hover); color: var(--dp-muted); border-radius: 999px; padding: 0 7px; font-size: 11px; font-weight: 600; line-height: 18px; }
  .dp-tab.is-active .dp-count { background: var(--dp-chip-on); color: var(--dp-text); }
  .dp-save-state { margin-left: auto; font-size: 11.5px; color: #059669; font-weight: 600; }
  .dark .dp-save-state { color: #34d399; }
  .dp-tab-body { flex: 1; min-height: 0; overflow-y: auto; padding: 20px 24px; }
  .dp-tab-body.is-iframe { padding: 0; overflow: hidden; display: flex; }
  .dp-iframe { flex: 1; width: 100%; border: 0; background: var(--dp-bg); }
  .dp-tab-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 13.5px; }
  .dp-tab-head b { font-weight: 650; }

  /* Cartões */
  .dp-card { background: var(--dp-bg); border: 1px solid var(--dp-line-strong); border-radius: 14px; padding: 14px 16px; }
  .dp-col-left .dp-card, .dp-col-right .dp-card { background: var(--dp-bg-soft); border-color: var(--dp-line); border-radius: 12px; padding: 12px 14px; }

  /* Caixa de nota/tarefa */
  .dp-compose { margin-bottom: 22px; padding: 10px 12px; border: 1px solid var(--dp-line-strong); border-radius: 14px; background: var(--dp-bg); box-shadow: 0 1px 2px rgba(15, 23, 42, .04); transition: border-color .15s, box-shadow .15s; }
  .dp-compose:focus-within { border-color: var(--dp-accent); box-shadow: 0 0 0 3px var(--dp-accent-soft); }
  .dp-compose > .dp-textarea, .dp-compose > .dp-input { border-color: transparent; background-color: transparent; padding: 6px 2px; box-shadow: none !important; }
  .dp-compose > .dp-input { font-weight: 600; }
  .dp-compose > .dp-textarea { resize: vertical; }
  .dp-compose .dp-compose-row .dp-input, .dp-compose .dp-compose-row .dp-select { background-color: var(--dp-bg-soft); border-color: transparent; }
  .dp-compose .dp-compose-row .dp-input:focus, .dp-compose .dp-compose-row .dp-select:focus { border-color: var(--dp-accent); }
  .dp-compose-tabs { display: inline-flex; gap: 2px; padding: 3px; background: var(--dp-bg-hover); border-radius: 10px; margin-bottom: 6px; }
  .dp-chip { border: 1px solid var(--dp-line-strong); background: var(--dp-bg); border-radius: 999px; padding: 4px 10px; font-size: 12px; font-weight: 600; font-family: inherit; color: var(--dp-muted); cursor: pointer; display: inline-flex; align-items: center; gap: 5px; transition: background .15s, color .15s; }
  .dp-chip:hover { color: var(--dp-text); }
  .dp-chip.is-active { background: var(--dp-accent); border-color: transparent; color: #fff; }
  .dp-compose-tabs .dp-chip { border: 0; background: transparent; color: var(--dp-muted); padding: 4px 11px; border-radius: 8px; font-size: 12.5px; }
  .dp-compose-tabs .dp-chip.is-active { background: var(--dp-bg); color: var(--dp-text); box-shadow: 0 1px 2px rgba(15, 23, 42, .1), 0 0 0 1px rgba(15, 23, 42, .04); }
  .dark .dp-compose-tabs .dp-chip.is-active { background: var(--dp-chip-on); }
  .dp-compose-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin-top: 8px; }
  .dp-compose-foot { display: flex; justify-content: flex-end; gap: 8px; margin-top: 6px; align-items: center; }
  .dp-compose-foot .dp-btn:not(.dp-btn-primary) { border-color: transparent; background: transparent; color: var(--dp-muted); }
  .dp-compose-foot .dp-btn:not(.dp-btn-primary):hover { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-voice-status { font-size: 11.5px; color: var(--dp-muted); margin-right: auto; }
  .dp-voice-status.is-err { color: #dc2626; }
  .dp-voice-status.is-ok { color: #16a34a; }
  .dp-btn.is-recording, .dp-compose-foot .dp-btn.is-recording { background: #dc2626; border-color: #dc2626; color: #fff; }
  .dp-btn.is-recording:hover, .dp-compose-foot .dp-btn.is-recording:hover { background: #b91c1c; color: #fff; }
  .dp-voice-dot { display: inline-block; width: 7px; height: 7px; border-radius: 999px; background: #fff; animation: dp-voice-pulse 1s ease-in-out infinite; }
  @keyframes dp-voice-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }

  /* Filtros da linha do tempo */
  .dp-filters { display: flex; gap: 2px; flex-wrap: wrap; margin-bottom: 16px; }
  .dp-filters .dp-chip { border: 0; background: transparent; color: var(--dp-muted); padding: 5px 10px; border-radius: 8px; font-size: 12.5px; font-weight: 550; }
  .dp-filters .dp-chip:hover { background: var(--dp-bg-hover); color: var(--dp-text); }
  .dp-filters .dp-chip.is-active { background: var(--dp-chip-on); color: var(--dp-text); font-weight: 600; }

  /* Linha do tempo */
  .dp-tl { position: relative; padding-left: 38px; }
  .dp-tl::before { content: ''; position: absolute; left: 13px; top: 10px; bottom: 10px; width: 1px; background: var(--dp-line-strong); }
  .dp-tl-item { position: relative; padding-bottom: 18px; }
  .dp-tl-dot { position: absolute; left: -38px; top: 0; width: 27px; height: 27px; border-radius: 999px; background: var(--dp-bg-hover); box-shadow: 0 0 0 4px var(--dp-bg); display: flex; align-items: center; justify-content: center; color: var(--dp-muted); }
  .dp-tl-dot i, .dp-tl-dot svg { width: 13px !important; height: 13px !important; }
  .dp-tl-dot.c-note { background: #fef3c7; color: #b45309; }
  .dp-tl-dot.c-task { background: #dbeafe; color: #1d4ed8; }
  .dp-tl-dot.c-done { background: #d1fae5; color: #047857; }
  .dp-tl-dot.c-stage { background: #ede9fe; color: #6d28d9; }
  .dp-tl-dot.c-conv { background: #f1f5f9; color: #475569; }
  .dp-tl-dot.c-won { background: #10b981; color: #fff; }
  .dp-tl-dot.c-lost { background: #ef4444; color: #fff; }
  .dp-tl-dot.c-call { background: #cffafe; color: #0e7490; }
  .dp-tl-dot.c-doc { background: #fce7f3; color: #be185d; }
  .dp-tl-dot.c-change { background: #f1f5f9; color: #64748b; }
  .dp-tl-dot.c-camp { background: #ffedd5; color: #c2410c; }
  .dark .dp-tl-dot.c-note { background: rgba(245, 158, 11, .16); color: #fbbf24; }
  .dark .dp-tl-dot.c-task { background: rgba(59, 130, 246, .18); color: #93c5fd; }
  .dark .dp-tl-dot.c-done { background: rgba(16, 185, 129, .16); color: #34d399; }
  .dark .dp-tl-dot.c-stage { background: rgba(139, 92, 246, .2); color: #c4b5fd; }
  .dark .dp-tl-dot.c-conv, .dark .dp-tl-dot.c-change { background: #1f2937; color: #9ca3af; }
  .dark .dp-tl-dot.c-call { background: rgba(6, 182, 212, .16); color: #67e8f9; }
  .dark .dp-tl-dot.c-doc { background: rgba(236, 72, 153, .16); color: #f9a8d4; }
  .dark .dp-tl-dot.c-camp { background: rgba(249, 115, 22, .16); color: #fdba74; }
  .dp-tl-card { background: transparent; border: 0; padding: 4px 0 0; }
  .dp-tl-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; font-size: 13px; }
  .dp-tl-head b { font-weight: 600; color: var(--dp-text); }
  .dp-tl-time { color: var(--dp-faint); font-size: 11.5px; white-space: nowrap; }
  .dp-tl-body { font-size: 13px; color: var(--dp-text-2); margin-top: 3px; white-space: pre-wrap; word-break: break-word; line-height: 1.5; }
  .dp-tl-item.t-notes .dp-tl-body { background: var(--dp-bg-soft); border: 1px solid var(--dp-line); border-radius: 10px; padding: 9px 12px; margin-top: 6px; }
  .dp-tl-meta { font-size: 11.5px; color: var(--dp-muted); margin-top: 6px; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
  .dp-tl-meta:empty { display: none; }
  .dp-tl-day { position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; font-size: 10.5px; font-weight: 600; color: var(--dp-faint); margin: 2px 0 14px -38px; padding: 2px 0; background: var(--dp-bg); text-transform: uppercase; letter-spacing: .06em; }
  .dp-tl-day::after { content: ''; flex: 1; height: 1px; background: var(--dp-line); }
  .dp-tl-del { opacity: 0; transition: opacity .15s; }
  .dp-tl-item:hover .dp-tl-del, .dp-tl-del:focus { opacity: 1; }
  @media (hover: none) { .dp-tl-del { opacity: 1; } }
  .dp-empty { text-align: center; color: var(--dp-faint); font-size: 13px; padding: 28px 8px; }

  /* Listas e resumo */
  .dp-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--dp-line); font-size: 13px; }
  .dp-row:last-child { border-bottom: 0; }
  .dp-row.dp-task { align-items: flex-start; padding: 12px 14px; margin-bottom: 8px; border: 1px solid var(--dp-line-strong); border-radius: 12px; background: var(--dp-bg); }
  .dp-row.dp-task:last-child { border-bottom: 1px solid var(--dp-line-strong); }
  .dp-row.dp-task.is-done { background: var(--dp-bg-soft); border-color: var(--dp-line); color: var(--dp-muted); }
  .dp-row.dp-task.is-done:last-child { border-bottom-color: var(--dp-line); }
  .dp-row.is-link { cursor: pointer; margin: 0 -10px; padding: 9px 10px; border-radius: 10px; border-bottom: 0; transition: background .15s; }
  .dp-row.is-link:hover { background: var(--dp-bg-hover); }
  .dp-muted { color: var(--dp-muted); font-size: 12px; }
  .dp-kv { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; font-size: 12.5px; padding: 5px 0; color: var(--dp-muted); }
  .dp-kv b { font-weight: 600; text-align: right; color: var(--dp-text); }
  /* Rastreamento do anúncio (17/09/2026) */
  .dp-ads { display: flex; flex-direction: column; gap: 6px; }
  .dp-ads-img { width: 100%; max-width: 160px; height: auto; max-height: 120px; border-radius: 8px; object-fit: cover; border: 1px solid var(--dp-border, #e2e8f0); }
  .dp-ads-rows { min-width: 0; }
  .dp-ads-row { display: block; padding: 4px 0; border-bottom: 1px dashed var(--dp-border, #e2e8f0); }
  .dp-ads-row:last-child { border-bottom: 0; }
  .dp-ads-k { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--dp-muted); }
  .dp-ads-v { display: block; font-size: 12.5px; color: var(--dp-text); overflow-wrap: anywhere; white-space: pre-wrap; }
  .dp-ads-v.is-mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; }
  /* Avisos das regras do processo (requisitos da etapa / sem próxima atividade) */
  .dp-dup-note { display: flex; gap: 8px; align-items: flex-start; margin: 0 0 10px; padding: 8px 10px; border-radius: 10px; font-size: 12.5px; line-height: 1.4; background: #fffbeb; color: #b45309; }
  .dark .dp-dup-note { background: rgba(245, 158, 11, .14); color: #fbbf24; }
  .dp-dup-note a { font-weight: 600; text-decoration: underline; color: inherit; }
  .dp-dup-note svg.lucide, .dp-dup-note i[data-lucide] { width: 14px !important; height: 14px !important; flex: none; margin-top: 2px; }
  .dp-process-note { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 10px 22px; border-bottom: 1px solid var(--dp-line); font-size: 13px; flex-shrink: 0; }
  .dp-process-note.is-move { background: var(--dp-accent-tint); color: var(--dp-accent-text); }
  .dp-process-note.is-activity { background: #fffbeb; color: #b45309; }
  .dark .dp-process-note.is-activity { background: rgba(245, 158, 11, .14); color: #fbbf24; }
  .dp-process-note-text { flex: 1 1 260px; min-width: 0; }
  .dp-process-note-text b { font-weight: 700; }
  .dp-process-note svg.lucide, .dp-process-note i[data-lucide] { width: 15px !important; height: 15px !important; flex: none; }
  /* LeadScore + jornada no site */
  .dp-lead-head { display: flex; align-items: center; gap: 10px; }
  .dp-lead-score { font-size: 26px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; color: var(--dp-text); }
  .dp-lead-score small { font-size: 12px; font-weight: 500; color: var(--dp-muted); }
  .dp-lead-bar { height: 6px; border-radius: 999px; background: var(--dp-bg-hover); overflow: hidden; margin: 10px 0 4px; }
  .dp-lead-bar > span { display: block; height: 100%; border-radius: 999px; }
  .dp-badge-hot { background: #ffedd5; color: #c2410c; } .dp-lead-bar > span.is-hot { background: #f97316; }
  .dp-badge-warm { background: #fef9c3; color: #a16207; } .dp-lead-bar > span.is-warm { background: #eab308; }
  .dp-badge-cold { background: #e0f2fe; color: #0369a1; } .dp-lead-bar > span.is-cold { background: #0ea5e9; }
  .dark .dp-badge-hot { background: rgba(249, 115, 22, .18); color: #fdba74; }
  .dark .dp-badge-warm { background: rgba(234, 179, 8, .16); color: #fde047; }
  .dark .dp-badge-cold { background: rgba(14, 165, 233, .16); color: #7dd3fc; }
  .dp-site-pages { margin-top: 8px; border-top: 1px solid var(--dp-line); padding-top: 8px; }
  .dp-site-page { display: flex; justify-content: space-between; gap: 10px; font-size: 12px; padding: 3px 0; color: var(--dp-text); }
  .dp-site-page span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
  .dp-site-page span:last-child { color: var(--dp-muted); flex: none; }
  .dp-due { display: inline-flex; align-items: center; gap: 4px; border-radius: 6px; padding: 2px 7px; font-size: 11.5px; font-weight: 600; }
  .dp-due svg.lucide, .dp-due i[data-lucide] { width: 12px !important; height: 12px !important; }
  .dp-due.overdue { background: #fef2f2; color: #dc2626; }
  .dp-due.today { background: #fffbeb; color: #b45309; }
  .dp-due.future { background: #ecfdf5; color: #047857; }
  .dp-due.none { background: var(--dp-bg-hover); color: var(--dp-muted); }
  .dark .dp-due.overdue { background: rgba(239, 68, 68, .14); color: #f87171; }
  .dark .dp-due.today { background: rgba(245, 158, 11, .14); color: #fbbf24; }
  .dark .dp-due.future { background: rgba(16, 185, 129, .14); color: #34d399; }
  .dp-next-title { font-weight: 600; font-size: 13.5px; color: var(--dp-text); }
  .dp-money { color: #059669 !important; }
  .dark .dp-money { color: #34d399 !important; }

  /* Ligações */
  .dp-call-analysis { margin-top: 6px; }
  .dp-call-analysis .dp-badge { cursor: pointer; border: 0; font-family: inherit; }
  .dp-link { background: none; border: 0; padding: 0; font: inherit; font-size: 11.5px; font-weight: 600; color: var(--dp-accent-text); cursor: pointer; text-decoration: none; }
  .dp-link:hover { text-decoration: underline; }
  .dp-link-muted { color: var(--dp-muted); }
  .dp-link-muted:hover { color: #dc2626; }
  .dp-call-breakdown { margin-top: 6px; padding: 8px 10px; border-radius: 10px; background: var(--dp-bg-soft); border: 1px solid var(--dp-line); }
  .dp-call-crit { display: grid; grid-template-columns: 90px 1fr 32px; align-items: center; gap: 8px; font-size: 11.5px; padding: 2px 0; }
  .dp-call-crit b { text-align: right; }
  .dp-call-bar { height: 6px; border-radius: 999px; background: var(--dp-line-strong); overflow: hidden; }
  .dp-call-bar i { display: block; height: 100%; background: var(--dp-accent); border-radius: 999px; }
  .dp-call-transcript { margin-top: 6px; padding: 8px 10px; border-radius: 10px; background: var(--dp-bg-soft); border: 1px dashed var(--dp-line-strong); font-size: 12px; line-height: 1.5; white-space: pre-wrap; word-break: break-word; max-height: 260px; overflow: auto; }
  .dp-stage-hist { display: flex; gap: 2px; height: 6px; border-radius: 999px; overflow: hidden; background: var(--dp-line-strong); margin: 2px 0 10px; }
  .dp-stage-hist span { display: block; height: 100%; min-width: 3px; }

  /* Tabelas, busca e modais */
  .dp-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
  .dp-table th { text-align: left; font-size: 11.5px; color: var(--dp-muted); font-weight: 600; padding: 8px 6px; border-bottom: 1px solid var(--dp-line-strong); }
  .dp-table td { padding: 8px 6px; border-bottom: 1px solid var(--dp-line); vertical-align: middle; }
  .dp-table td.num, .dp-table th.num { text-align: right; }
  .dp-items-form { display: grid; grid-template-columns: 2fr 70px 110px 90px auto; gap: 6px; align-items: end; margin-top: 12px; }
  .dp-company-search { position: relative; }
  .dp-dropdown { position: absolute; left: 0; right: 0; top: 100%; z-index: 20; background: var(--dp-bg); border: 1px solid var(--dp-line-strong); border-radius: 10px; box-shadow: 0 10px 30px rgba(2, 6, 23, .15); max-height: 220px; overflow-y: auto; margin-top: 4px; padding: 4px; }
  .dp-dropdown button { display: block; width: 100%; text-align: left; padding: 8px 10px; font-size: 13px; background: none; border: 0; border-radius: 7px; cursor: pointer; color: inherit; font-family: inherit; }
  .dp-dropdown button:hover { background: var(--dp-bg-hover); }
  .dp-modal { position: fixed; inset: 0; z-index: 10000; background: rgba(15, 23, 42, .45); display: flex; align-items: center; justify-content: center; padding: 16px; }
  .dp-modal-box { background: var(--dp-bg); color: var(--dp-text); border-radius: 16px; width: 100%; max-width: 640px; max-height: 90vh; overflow-y: auto; padding: 20px; box-shadow: 0 24px 70px rgba(2, 6, 23, .3); font-size: 13px; }
  .dp-window i[data-lucide], .dp-window svg.lucide, .dp-modal i[data-lucide], .dp-modal svg.lucide { width: 15px; height: 15px; flex-shrink: 0; }
  .dp-btn i[data-lucide], .dp-btn svg.lucide { width: 16px; height: 16px; }
  .dp-btn-sm i[data-lucide], .dp-btn-sm svg.lucide { width: 14px; height: 14px; }
  .dp-chip i[data-lucide], .dp-chip svg.lucide { width: 14px; height: 14px; }
  .dp-loading { display: flex; align-items: center; justify-content: center; height: 100%; color: var(--dp-faint); font-size: 14px; gap: 10px; }
  .dp-spin { width: 18px; height: 18px; border: 2px solid var(--dp-line-strong); border-top-color: var(--dp-accent); border-radius: 999px; animation: dp-spin .8s linear infinite; }
  @keyframes dp-spin { to { transform: rotate(360deg); } }
  .dp-ai { background: linear-gradient(180deg, rgba(139, 92, 246, .07), rgba(139, 92, 246, .02)); border: 1px solid rgba(139, 92, 246, .18); border-radius: 12px; padding: 12px; font-size: 12.5px; line-height: 1.5; color: var(--dp-text-2); }
  .dp-ai b { color: var(--dp-text); font-weight: 600; }
  .dp-ai ul { margin: 4px 0 0 16px; padding: 0; }
  .dark .dp-ai { background: rgba(139, 92, 246, .08); border-color: rgba(139, 92, 246, .25); }
  .dp-mobile-nav { display: none; }
  @media (max-width: 1100px) {
    .dp-body { grid-template-columns: 270px minmax(0, 1fr); }
    .dp-col-right { display: none; }
    .dp-col-right.is-mobile-visible { display: block; grid-column: 1 / -1; border: 0; }
  }
  @media (max-width: 760px) {
    /* #E4A5B2B9 — sem isto a janela (mais baixa que a viewport) fica centrada e
       escorrega por baixo da tab bar fixa. */
    .dp-overlay { padding: 0; align-items: stretch; }
    /* #E4A5B2B9 — 100vh e a viewport GRANDE do celular e ainda ignora a tab bar
       fixa: o rodape do painel (campo de digitar da aba Conversa) ficava fora
       da tela. Mesmo padrao do #1B1B8787. */
    .dp-window { width: 100vw; height: 100vh; height: calc(100dvh - var(--crm-bottom-nav-h, 0px)); border-radius: 0; }
    .dp-head { padding: 12px 14px 12px; gap: 12px; }
    .dp-head-row { flex-wrap: wrap; align-items: flex-start; }
    .dp-identity { flex-basis: 100%; }
    .dp-actions { flex-wrap: wrap; justify-content: flex-start; }
    .dp-actions-sep { display: none; }
    .dp-body { grid-template-columns: 1fr; }
    .dp-col { padding: 4px 14px 16px; }
    .dp-col-left, .dp-col-right { display: none; }
    .dp-col-left.is-mobile-visible, .dp-col-right.is-mobile-visible { display: block; border: 0; }
    .dp-col-center.is-mobile-hidden { display: none; }
    .dp-mobile-nav { display: flex; gap: 2px; margin: 8px 14px; padding: 3px; border-radius: 10px; background: var(--dp-bg-hover); }
    .dp-mobile-nav .dp-chip { flex: 1; justify-content: center; border: 0; background: transparent; border-radius: 8px; }
    .dp-mobile-nav .dp-chip.is-active { background: var(--dp-bg); color: var(--dp-text); box-shadow: 0 1px 2px rgba(15, 23, 42, .1); }
    .dp-tab-body { padding: 16px 14px; }
    .dp-items-form { grid-template-columns: 1fr 1fr; }
    .dp-title-input { font-size: 17px; }
    .dp-stage { min-width: 76px; }
    .dp-stage small { display: none; }
  }
