/* ==============================
   CONTAINER PRINCIPAL
================================= */
.interactive-table-container[data-v-8d570d25] {
  width: 100%;
  background: #fff;
  border-radius: 8px;
}

/* Palette variables (system) - usado para ícones e elementos da tabela */
[data-v-8d570d25]:root {
  --color-navy-dark: #03045E;
  --color-navy: #023E8A;
  --color-blue: #0077B6;
  --color-sky: #0096C7;
  --color-cyan: #00B4D8;
  --color-aqua: #48CAE4;
  --color-aqua-light: #90E0EF;
  --color-ice: #ADE8F4;
  --color-ice-light: #CAF0F8;
  --color-ice-super-light: #f0f7fb;
}

/* ==============================
   WRAPPER DA TABELA
================================= */
.interactive-table-wrapper[data-v-8d570d25] {
  border-radius: 8px;
  /* overflow: hidden; */
  border: 1px solid #E5E7EB;
}

/* ==============================
   TABELA
================================= */
.interactive-table[data-v-8d570d25] {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-size: 14px;
  line-height: 1.5;
  table-layout: fixed; /* Força a tabela a respeitar as larguras das colunas */
}

/* ==============================
   CABEÇALHO DA TABELA
================================= */
.interactive-table-header[data-v-8d570d25] {
  background: #F9FAFB;
}
.interactive-table-header-row[data-v-8d570d25] {
  border-bottom: 1px solid #E5E7EB;
}
.interactive-table-header-cell[data-v-8d570d25] {
  padding: 12px 16px;
  text-align: left;
  font-size: 12px;
  font-weight: 600;
  color: #374151;
  /* manter capitalização original dos rótulos (não forçar maiúsculas) */
  text-transform: none;
  letter-spacing: 0.05em;
  white-space: nowrap;
  position: relative;
  vertical-align: middle;
}

/* Estilos específicos para colunas de actions (para produtos) */
.interactive-table-header-actions[data-v-8d570d25] {
  width: 120px;
  text-align: center;
}

/* ==============================
   FUNCIONALIDADE DE ORDENAÇÃO
================================= */
.interactive-table-sortable[data-v-8d570d25] {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: background-color 0.2s ease;
}
.interactive-table-sortable[data-v-8d570d25]:hover {
  background-color: #F3F4F6;
}
.interactive-table-header-content[data-v-8d570d25] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.interactive-table-header-text[data-v-8d570d25] {
  flex: 1;
  font-size: 12px;
}
.interactive-table-sort-indicator[data-v-8d570d25] {
  font-size: 12px;
  color: #6B7280;
  opacity: 0.5;
  transition: opacity 0.2s ease;
}
.interactive-table-sortable:hover .interactive-table-sort-indicator[data-v-8d570d25] {
  opacity: 1;
}
.interactive-table-sort-asc[data-v-8d570d25] {
  opacity: 1;
  color: #3B82F6;
}
.interactive-table-sort-desc[data-v-8d570d25] {
  opacity: 1;
  color: #3B82F6;
  transform: rotate(180deg);
}

/* ==============================
   CORPO DA TABELA
================================= */
.interactive-table-body[data-v-8d570d25] {
  background: #fff;
}
.interactive-table-row[data-v-8d570d25] {
  border-bottom: 1px solid #F3F4F6;
  transition: background-color 0.2s ease;
  animation: interactive-table-fade-in-8d570d25 0.3s ease-in-out;
}
.interactive-table-row[data-v-8d570d25]:last-child {
  border-bottom: none;
}
.interactive-table-row[data-v-8d570d25]:hover {
  background: #F8F9FA;
}

/* Estilos específicos para produtos - sem cores vibrantes */
.interactive-table-row-pending[data-v-8d570d25] {
  background: #F8F9FA;
  /* border-left: 2px solid #D1D5DB; */
}
.interactive-table-row-pending[data-v-8d570d25]:hover {
  background: #F1F3F4;
}
.interactive-table-empty-row[data-v-8d570d25] {
  background: #FAFAFA;
}
.interactive-table-empty-row[data-v-8d570d25]:hover {
  background: #FAFAFA;
}
.interactive-table-add-row[data-v-8d570d25] {
  background: #FAFBFC;
}
.interactive-table-add-row[data-v-8d570d25]:hover {
  background: #F5F6F7;
}
.interactive-table-cell[data-v-8d570d25] {
  padding: 14px 16px;
  color: #212529;
  vertical-align: middle;
  font-size: 14px;
}

/* Estilos específicos para células de produtos */
.interactive-table-cell-actions[data-v-8d570d25] {
  width: 120px;
  text-align: center;
}
.interactive-table-empty-cell[data-v-8d570d25] {
  text-align: center;
  padding: 40px 20px;
}
.interactive-table-add-cell[data-v-8d570d25] {
  padding: 12px 16px;
}

/* ==============================
   CÉLULAS COM INPUTS (mantém funcionalidade original)
================================= */
.interactive-table-cell input[data-v-8d570d25],
.interactive-table-cell select[data-v-8d570d25],
.interactive-table-cell textarea[data-v-8d570d25] {
  display: inline-block;
  height: 30px;
  padding: 4px 8px;
  font-size: 13px;
  line-height: 1;
  border: 1px solid #D1D5DB;
  border-radius: 6px;
  background: #fff;
  color: #111827;
  box-sizing: border-box;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
  width: 100%;
}
.interactive-table-cell input[data-v-8d570d25]:focus,
.interactive-table-cell select[data-v-8d570d25]:focus,
.interactive-table-cell textarea[data-v-8d570d25]:focus {
  outline: none;
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.interactive-table-cell input[data-v-8d570d25]::-moz-placeholder, .interactive-table-cell textarea[data-v-8d570d25]::-moz-placeholder {
  color: #9CA3AF;
}
.interactive-table-cell input[data-v-8d570d25]::placeholder,
.interactive-table-cell textarea[data-v-8d570d25]::placeholder {
  color: #9CA3AF;
}
.interactive-table-cell textarea[data-v-8d570d25] {
  height: auto;
  min-height: 60px;
  resize: vertical;
}

/* ==============================
   BORDAS CONDICIONAIS (mantém lógica original)
================================= */
.interactive-table:has(input) .interactive-table-header[data-v-8d570d25],
.interactive-table:has(select) .interactive-table-header[data-v-8d570d25],
.interactive-table:has(textarea) .interactive-table-header[data-v-8d570d25] {
  border-bottom: 1px solid #E5E7EB;
}
.interactive-table:has(input) .interactive-table-header-cell[data-v-8d570d25],
.interactive-table:has(select) .interactive-table-header-cell[data-v-8d570d25],
.interactive-table:has(textarea) .interactive-table-header-cell[data-v-8d570d25] {
  border-right: 1px solid #E5E7EB;
}
.interactive-table:has(input) .interactive-table-header-cell[data-v-8d570d25]:last-child,
.interactive-table:has(select) .interactive-table-header-cell[data-v-8d570d25]:last-child,
.interactive-table:has(textarea) .interactive-table-header-cell[data-v-8d570d25]:last-child {
  border-right: none;
}
.interactive-table:has(input) .interactive-table-cell[data-v-8d570d25],
.interactive-table:has(select) .interactive-table-cell[data-v-8d570d25],
.interactive-table:has(textarea) .interactive-table-cell[data-v-8d570d25] {
  border-right: 1px solid #F1F3F4;
}
.interactive-table:has(input) .interactive-table-cell[data-v-8d570d25]:last-child,
.interactive-table:has(select) .interactive-table-cell[data-v-8d570d25]:last-child,
.interactive-table:has(textarea) .interactive-table-cell[data-v-8d570d25]:last-child {
  border-right: none;
}

/* ==============================
   CÉLULAS ESPECIAIS (mantém funcionalidade original)
================================= */
.interactive-table-cell-status[data-v-8d570d25] {
  color: #3B82F6;
  font-weight: 500;
}

/* ==============================
   ANIMAÇÕES E TRANSIÇÕES
================================= */
@keyframes interactive-table-fade-in-8d570d25 {
from {
    opacity: 0;
    transform: translateY(-4px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

/* ==============================
   RESPONSIVIDADE
================================= */
@media (max-width: 768px) {
.interactive-table-container[data-v-8d570d25] {
    border-radius: 6px;
}
.interactive-table-wrapper[data-v-8d570d25] {
    border-radius: 6px;
}
.interactive-table[data-v-8d570d25] {
    font-size: 12px;
}
.interactive-table-header-cell[data-v-8d570d25],
  .interactive-table-cell[data-v-8d570d25] {
    padding: 12px 8px;
}
.interactive-table-header-cell[data-v-8d570d25] {
    font-size: 11px;
}
}
@media (max-width: 480px) {
.interactive-table-header-cell[data-v-8d570d25],
  .interactive-table-cell[data-v-8d570d25] {
    padding: 8px 6px;
}
.interactive-table[data-v-8d570d25] {
    font-size: 11px;
}
.interactive-table-cell input[data-v-8d570d25],
  .interactive-table-cell select[data-v-8d570d25],
  .interactive-table-cell textarea[data-v-8d570d25] {
    font-size: 12px;
    padding: 3px 6px;
}
}

/* ==============================
   ESTADOS DE HOVER MELHORADOS
================================= */
.interactive-table-row:hover .interactive-table-cell[data-v-8d570d25] {
  color: #111827;
}
.interactive-table-sortable[data-v-8d570d25]:hover {
  background-color: #F3F4F6;
}

/* ==============================
   MELHORIAS VISUAIS ADICIONAIS
================================= */
.interactive-table-wrapper[data-v-8d570d25] {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.interactive-table-header-cell[data-v-8d570d25] {
  background: #F9FAFB;
}
.interactive-table-cell[data-v-8d570d25] {
  background: inherit;
}

/* ==============================
   ESTILOS ESPECÍFICOS PARA PRODUTOS
================================= */
.interactive-table-empty-state[data-v-8d570d25] {
  color: #6B7280;
}
.interactive-table-empty-message[data-v-8d570d25] {
  font-size: 14px;
  margin: 0;
  color: #9CA3AF;
}
.interactive-table-product-info[data-v-8d570d25] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.interactive-table-product-badge[data-v-8d570d25] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #0096C7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 600;
    color: white;
    flex-shrink: 0;
}
.interactive-table-product-name[data-v-8d570d25] {
  font-size: 12px;
  font-weight: 500;
  color: #374151;
}

/* Ações: adequar ícones à paleta do sistema */
.interactive-table-actions button[data-v-8d570d25],
.interactive-table-actions .products-table-remove-combobox-btn[data-v-8d570d25],
.interactive-table-actions .products-table-edit-btn-small[data-v-8d570d25],
.interactive-table-actions .products-table-remove-btn-simple[data-v-8d570d25],
.interactive-table-actions .products-table-confirm-btn[data-v-8d570d25],
.interactive-table-actions .products-table-cancel-btn[data-v-8d570d25] {
  background: transparent;
  border: none;
  padding: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--color-blue); /* cor padrão dos ícones */
  transition: color .15s ease, background .15s ease, transform .08s ease;
}

/* Alvo do SVG (lucide usa stroke="currentColor") */
.interactive-table-actions button svg[data-v-8d570d25],
.interactive-table-actions button .lucide[data-v-8d570d25],
.interactive-table-actions .products-table-remove-combobox-btn svg[data-v-8d570d25] {
  color: var(--color-blue);
  stroke: currentColor;
  fill: none;
}

/* Hover/focus states */
.interactive-table-actions button[data-v-8d570d25]:hover,
.interactive-table-actions button[data-v-8d570d25]:focus {
  color: var(--color-navy);
  background: rgba(2, 62, 138, 0.04);
  border-radius: 6px;
}

/* Confirm (salvar) e cancel (x) visuais — seguem a mesma paleta, mas podem ser diferenciados facilmente */
.products-table-confirm-btn[data-v-8d570d25] {
  color: var(--color-sky);
}
.products-table-cancel-btn[data-v-8d570d25] {
  color: var(--color-navy-dark);
}

/* Pequenas variantes para botões "remover" para sinalizar ação sem sair da paleta */
.products-table-remove-btn-simple[data-v-8d570d25] {
  color: var(--color-blue);
}
.interactive-table-actions[data-v-8d570d25] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.interactive-table-confirm-actions[data-v-8d570d25] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.interactive-table-footer[data-v-8d570d25] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  background: #F9FAFB;
  border-top: 1px solid #E5E7EB;
}
.interactive-table-add-link[data-v-8d570d25] {
  color: #3B82F6;
  background: none;
  border: none;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  transition: all 0.2s ease;
}
.interactive-table-add-link[data-v-8d570d25]:hover:not(:disabled) {
  background: transparent;
  color: #2563EB;
  text-decoration: underline;
}
.interactive-table-add-link-disabled[data-v-8d570d25] {
  opacity: 0.5;
  cursor: not-allowed;
}
.interactive-table-total-summary[data-v-8d570d25] {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}
.interactive-table-total-label[data-v-8d570d25] {
  color: #6B7280;
}
.interactive-table-total-amount[data-v-8d570d25] {
  font-weight: 600;
  color: #059669;
}
.products-table-container[data-v-66f06301] { 
  width: 100%; 
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* ComboBox Wrapper */
.products-table-combobox-wrapper[data-v-66f06301] {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
}
.products-table-combobox-label[data-v-66f06301] {
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin: 0;
}
.products-combobox-footer[data-v-66f06301] {
  padding: 8px 12px;
  border-top: 1px solid #e5e7eb;
  background: #f9fafb;
}
.products-combobox-footer-text[data-v-66f06301] {
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
}

/* Loading State */
.products-table-loading[data-v-66f06301] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  gap: 12px;
}
.products-table-spinner[data-v-66f06301] {
  width: 32px;
  height: 32px;
  border: 3px solid #f3f4f6;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin-66f06301 0.8s linear infinite;
}
@keyframes spin-66f06301 {
to { transform: rotate(360deg);
}
}
.products-table-loading-text[data-v-66f06301] {
  margin: 0;
  font-size: 13px;
  color: #6b7280;
  font-weight: 500;
}

/* Empty State */
.products-table-empty[data-v-66f06301] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  gap: 12px;
  background: #fafafa;
  border: 2px dashed #e5e7eb;
  border-radius: 8px;
}
.products-table-empty svg[data-v-66f06301] {
  width: 48px;
  height: 48px;
  color: #d1d5db;
}
.products-table-empty-text[data-v-66f06301] {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #6b7280;
}
.products-table-empty-hint[data-v-66f06301] {
  margin: 0;
  font-size: 12px;
  color: #9ca3af;
}

/* Product Info */
.interactive-table-product-info[data-v-66f06301] { 
  display: flex; 
  align-items: center; 
  gap: 8px;
}
.interactive-table-product-badge[data-v-66f06301] {
  width: 28px; 
  height: 28px; 
  border-radius: 50%; 
  background: #2563eb; 
  color: #fff;
  display: flex; 
  align-items: center; 
  justify-content: center; 
  font-weight: 600; 
  font-size: 13px;
}
.interactive-table-product-name[data-v-66f06301] { 
  font-weight: 500; 
  color: #111827; 
  font-size: 13px;
}

/* Status */
.status-active[data-v-66f06301] { 
  color: #065f46; 
  font-weight: 600;
}
.status-inactive[data-v-66f06301] { 
  color: #991b1b; 
  font-weight: 600;
}

/* Footer */
.interactive-table-footer-single[data-v-66f06301] {
  display: flex; 
  justify-content: flex-end; 
  align-items: center;
  padding: 12px; 
  border-top: 1px solid #e5e7eb;
  background: #fafafa;
}
.clear-btn[data-v-66f06301] {
  display: flex;
  align-items: center;
  gap: 6px;
  background: white;
  border: 1px solid #fca5a5;
  color: #dc2626;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.clear-btn[data-v-66f06301]:hover {
  background: #fef2f2;
  border-color: #f87171;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(220, 38, 38, 0.1);
}
.clear-btn svg[data-v-66f06301] {
  flex-shrink: 0;
}

/* Responsive */
@media (max-width: 768px) {
.products-table-combobox-wrapper[data-v-66f06301] {
    padding: 10px;
}
.interactive-table-footer-single[data-v-66f06301] {
    padding: 10px;
}
.clear-btn[data-v-66f06301] {
    font-size: 12px;
    padding: 7px 12px;
}
.products-table-empty[data-v-66f06301] {
    padding: 30px 15px;
}
.products-table-empty svg[data-v-66f06301] {
    width: 40px;
    height: 40px;
}
}
.timeline-container[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
  padding: 0;
}

/* Header com título e filtro */
.timeline-header[data-v-babacdf4] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 20px 0;
  margin-bottom: 16px;
}
.timeline-title[data-v-babacdf4] {
  font-size: 16px;
  font-weight: 550;
  color: #1f2937;
  margin: 0;
}
.timeline-filter[data-v-babacdf4] {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
}
.filter-label[data-v-babacdf4] {
  font-size: 13px;
  font-weight: 500;
  color: #6b7280;
  white-space: nowrap;
  flex-shrink: 0;
}
.timeline-filter .combo-box[data-v-babacdf4] {
  min-width: 140px;
}
.timeline-loading[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px;
}
.timeline-empty[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px;
  gap: 12px;
  color: #9ca3af;
}
.empty-icon[data-v-babacdf4] {
  opacity: 0.5;
}
.timeline-list[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
}
.timeline-group[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
}

/* Separador de data */
.timeline-date-separator[data-v-babacdf4] {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 24px 0 20px;
}
.timeline-date-separator[data-v-babacdf4]:first-child {
  margin-top: 0;
}
.date-line[data-v-babacdf4] {
  flex: 1;
  height: 1px;
  background: linear-gradient(to right, transparent, #e5e7eb, transparent);
}
.date-badge[data-v-babacdf4] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  /* background: #f9fafb; */
  border-radius: 12px;
  /* border: 1px solid #e5e7eb; */
}
.date-badge .date-dot[data-v-babacdf4] {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}
.date-text[data-v-babacdf4] {
  font-size: 11px;
  font-weight: 600;
  color: #6b7280;
  letter-spacing: 0.5px;
}

/* Item da timeline */
.timeline-item[data-v-babacdf4] {
  display: flex;
  gap: 20px;
  padding: 8px 0;
}

/* Coluna da esquerda */
.timeline-left[data-v-babacdf4] {
  display: flex;
  gap: 12px;
  width: 100px;
  flex-shrink: 0;
}
.event-time[data-v-babacdf4] {
  font-size: 12px;
  color: #464a4f;
  font-weight: 500;
  text-align: right;
  width: 70px;
  padding-top: 2px;
  white-space: nowrap;
}
.timeline-connector[data-v-babacdf4] {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 18px;
}
.timeline-dot[data-v-babacdf4] {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 4px;
  box-shadow: 0 0 0 3px #ffffff;
}
.dot-green[data-v-babacdf4] { background: #10b981;
}
.dot-blue[data-v-babacdf4] { background: #3b82f6;
}
.dot-purple[data-v-babacdf4] { background: #8b5cf6;
}
.dot-indigo[data-v-babacdf4] { background: #6366f1;
}
.dot-yellow[data-v-babacdf4] { background: #f59e0b;
}
.dot-orange[data-v-babacdf4] { background: #f97316;
}
.dot-red[data-v-babacdf4] { background: #ef4444;
}
.dot-amber[data-v-babacdf4] { background: #f59e0b;
}
.dot-gray[data-v-babacdf4] { background: #6b7280;
}
.timeline-line[data-v-babacdf4] {
  width: 2px;
  flex: 1;
  min-height: 40px;
  background: #e5e7eb;
  margin-top: 4px;
}

/* Coluna da direita */
.timeline-right[data-v-babacdf4] {
  display: flex;
  gap: 12px;
  flex: 1;
  padding-bottom: 12px;
}
.event-icon[data-v-babacdf4] {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #6b7280;
  margin-top: 2px;
}
.event-icon .icon-svg[data-v-babacdf4] {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.event-icon .icon-svg svg[data-v-babacdf4],
.event-icon svg[data-v-babacdf4] {
  width: 18px;
  height: 18px;
  display: block;
}
.event-icon svg[data-v-babacdf4] {
  width: 18px;
  height: 18px;
  display: inline-block;
}

/* Make the kanban icon slightly bolder/stronger (SVG-only) */
.event-icon.event-icon--kanban-bold svg[data-v-babacdf4] {
  transform: scale(1.12);
}
.event-content[data-v-babacdf4] {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.event-title[data-v-babacdf4] {
  font-size: 14px;
  font-weight: 600;
  color: #1f2937;
  line-height: 1.4;
}
.event-description[data-v-babacdf4] {
  font-size: 13px;
  color: #6b7280;
  line-height: 1.5;
  word-break: break-word;
  overflow-wrap: break-word;
  white-space: normal;
}
.event-description-wrap[data-v-babacdf4] {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.event-description a[data-v-babacdf4] {
  color: #3b82f6;
  text-decoration: underline;
}
.kanban-attachment-link[data-v-babacdf4] {
  display: inline-flex;
  align-items: center;
  max-width: 280px;
  color: #2563eb;
  text-decoration: underline;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.event-media-thumb-link[data-v-babacdf4] {
  display: inline-flex;
  width: 38px;
  height: 38px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f9fafb;
}
.event-media-thumb[data-v-babacdf4] {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.event-user[data-v-babacdf4] {
  font-size: 12px;
  color: #9ca3af;
  margin-top: 2px;
}

/* Botão carregar mais */
.timeline-load-more[data-v-babacdf4] {
  display: flex;
  justify-content: center;
  padding: 24px 0 8px;
}
.load-more-btn[data-v-babacdf4] {
  padding: 8px 24px;
  border: 1px solid #e5e7eb;
  background: white;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s;
}
.load-more-btn[data-v-babacdf4]:hover:not(:disabled) {
  background: #f9fafb;
  border-color: #d1d5db;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.load-more-btn[data-v-babacdf4]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* ========================================
   RESPONSIVE
======================================== */

/* Notebooks compactos */
@media (max-width: 1024px) {
.timeline-header[data-v-babacdf4] {
    flex-wrap: wrap;
    gap: 8px;
}
.timeline-filter[data-v-babacdf4] {
    flex-wrap: wrap;
}
}

/* Tablet portrait */
@media (max-width: 768px) {
.timeline-header[data-v-babacdf4] {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}
.timeline-filter[data-v-babacdf4] {
    width: 100%;
}
.timeline-filter .combo-box[data-v-babacdf4] {
    flex: 1;
}
.timeline-item[data-v-babacdf4] {
    gap: 12px;
}
.timeline-left[data-v-babacdf4] {
    width: 80px;
    gap: 8px;
}
.event-time[data-v-babacdf4] {
    width: 55px;
    font-size: 11px;
}
.event-title[data-v-babacdf4] {
    font-size: 13px;
}
.event-description[data-v-babacdf4] {
    font-size: 12px;
}
}

/* Mobile */
@media (max-width: 640px) {
.timeline-left[data-v-babacdf4] {
    width: 60px;
    gap: 6px;
}
.event-time[data-v-babacdf4] {
    width: 40px;
    font-size: 10px;
}
.timeline-item[data-v-babacdf4] {
    gap: 8px;
}
.kanban-attachment-link[data-v-babacdf4] {
    max-width: 180px;
}
}
/* Estilos da extensao BlockHandle.
 *
 * design tokens (mantenha alinhado a paleta do app):
 *   --bh-color-icon:        slate-600 (#475569)  -> stroke padrao
 *   --bh-color-icon-hover:  slate-700 (#334155)  -> stroke hover
 *   --bh-bg-hover:          slate-100 (#eef2f7)
 *   --bh-bg-active:         slate-200 (#e2e8f0)
 *
 * posicionamento: ambos elementos sao filhos absolutos do parent do .ProseMirror
 * (set como position:relative pelo plugin). usamos `transform: translate3d`
 * pra mover entre blocos — GPU-accelerated, sem reflow.
 */

.bh-handle,
.bh-plus {
    /* JS escreve as coordenadas em --bh-x e --bh-y; o estado visual (scale)
     * vive aqui no CSS via classes — assim nao ha conflito entre quem
     * controla o transform. */
    --bh-x: 0;
    --bh-y: 0;
    --bh-scale: 0.82;

    position: absolute;
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    padding: 0;
    margin: 0;
    background: transparent;
    border-radius: 5px;
    z-index: 10;

    opacity: 0;
    pointer-events: none;
    transform: translate3d(var(--bh-x), var(--bh-y), 0) scale(var(--bh-scale));
    transform-origin: center;

    /* HIDDEN: transform sem transition (snap). enquanto invisivel, nao
     * queremos o elemento "voando" entre posicoes — quando reaparecer,
     * ja deve estar no destino. */
    transition:
        transform 0s,
        opacity 110ms cubic-bezier(0.4, 0, 1, 1),
        background-color 120ms ease;
    will-change: transform, opacity;
}

.bh-handle.bh-visible,
.bh-plus.bh-visible {
    --bh-scale: 1;
    opacity: 0.9;
    pointer-events: auto;
    /* VISIBLE: transform com transition (slide entre blocos), opacity com
     * easing expo-out (chegada suave). */
    transition:
        transform 140ms cubic-bezier(0.4, 0, 0.2, 1),
        opacity 160ms cubic-bezier(0.16, 1, 0.3, 1),
        background-color 120ms ease;
}

/* hover/active visual (slate background pra contraste sutil) */
.bh-handle.bh-visible:hover,
.bh-plus.bh-visible:hover {
    opacity: 1;
    background-color: #eef2f7;
}

.bh-handle.bh-visible:active,
.bh-plus.bh-visible:active {
    --bh-scale: 0.94;
    background-color: #e2e8f0;
    transition-duration: 90ms;
}

.bh-handle {
    cursor: grab;
}
.bh-handle.bh-visible:active {
    cursor: grabbing;
}
.bh-handle.bh-dragging {
    opacity: 0.4;
    cursor: grabbing;
}

.bh-plus {
    cursor: pointer;
}

/* ================ icones (SVG inline via background-image) ================
 *
 * usamos background-image em vez de <svg> filho pra simplificar o markup
 * e permitir trocar a cor por tema apenas mudando o data URI (custo trivial).
 *
 * stroke colors:
 *   default: %23475569 (slate-600)
 *   hover:   %23334155 (slate-700)  -> peso 2.5 no hover (ligeiramente mais grosso)
 */

.bh-handle::before,
.bh-plus::before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 14px;
    pointer-events: none;
    transition: background-image 100ms ease;
}

/* drag handle: 6 pontinhos (grip-vertical do lucide) */
.bh-handle::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='12' r='1'/><circle cx='9' cy='5' r='1'/><circle cx='9' cy='19' r='1'/><circle cx='15' cy='12' r='1'/><circle cx='15' cy='5' r='1'/><circle cx='15' cy='19' r='1'/></svg>");
}

.bh-handle:hover::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><circle cx='9' cy='12' r='1'/><circle cx='9' cy='5' r='1'/><circle cx='9' cy='19' r='1'/><circle cx='15' cy='12' r='1'/><circle cx='15' cy='5' r='1'/><circle cx='15' cy='19' r='1'/></svg>");
}

/* plus: cruz simples (lucide plus) */
.bh-plus::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14'/><path d='M5 12h14'/></svg>");
}

.bh-plus:hover::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14'/><path d='M5 12h14'/></svg>");
}

/* ================ drag/select visual feedback (estilo ClickUp/Notion) =========
 *
 * 3 estados visuais, todos com o mesmo "look" azul:
 *   1. .ProseMirror-selectednode  → automatico, aplicado pelo ProseMirror
 *      em NodeSelection (drag em curso, clique em image/hr, etc). Garante
 *      destaque mesmo que o JS nao consiga adicionar `bh-block-dragging`.
 *      Tambem sobrescreve o outline cyan default `.ProseMirror-selectednode
 *      { outline: 2px solid #8cf }` por algo mais polido.
 *   2. .bh-block-dragging          → adicionado em _onHandleDragStart, da o
 *      "lift" extra (translateY + sombra) por cima do destaque base.
 *   3. .bh-block-selected          → menu de acoes aberto (click no handle).
 *      Mesmo destaque, sem o lift (pra nao parecer vibrando).
 *
 * Cor base: blue-500 (#3b82f6) a 18% pro bg, 40% pra borda, 20% pra glow.
 * Subi de 10% pra 18% pq a opacidade anterior estava sutil demais sobre
 * fundo branco — quase invisivel.
 */

/* override do outline default + aplica destaque azul a qualquer NodeSelection */
.ProseMirror .ProseMirror-selectednode,
.bh-block-dragging,
.bh-block-selected {
    background-color: rgba(59, 130, 246, 0.18) !important;
    box-shadow:
        0 0 0 1.5px rgba(59, 130, 246, 0.45),
        0 4px 12px rgba(59, 130, 246, 0.20) !important;
    border-radius: 6px !important;
    outline: none !important;
    transition:
        background-color 120ms ease,
        box-shadow 140ms cubic-bezier(0.4, 0, 0.2, 1),
        transform 140ms cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative;
    z-index: 5;
}

/* leve "pickup" so durante drag (nao em selected/clique) — UX feel
 * responsivo, microscopico pra nao desencaixar o layout. */
.bh-block-dragging {
    transform: translateY(-1px) !important;
}

/* Dropcursor (linha azul horizontal mostrando onde solta o bloco). */
.ProseMirror .bh-dropcursor,
.ProseMirror-dropcursor.bh-dropcursor {
    background-color: #3b82f6 !important;
    border-radius: 2px;
    /* glow sutil pra destacar mais — o dropcursor default do prosemirror
     * e' so' uma barra solida, fica meio invisivel em fundo branco. */
    box-shadow: 0 0 8px rgba(59, 130, 246, 0.5);
    pointer-events: none;
}

.mention-dropdown[data-v-c64e91af] {
    position: fixed;
    z-index: 999999;
    background: white;
    border: 1px solid #dfe1e6;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    max-height: 280px;
    min-width: 280px;
    overflow: hidden;
}
.mention-dropdown-list[data-v-c64e91af] {
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
}

/* Scrollbar customization */
.mention-dropdown-list[data-v-c64e91af]::-webkit-scrollbar {
    width: 6px;
}
.mention-dropdown-list[data-v-c64e91af]::-webkit-scrollbar-track {
    background: #f9fafb;
}
.mention-dropdown-list[data-v-c64e91af]::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 3px;
}
.mention-dropdown-list[data-v-c64e91af]::-webkit-scrollbar-thumb:hover {
    background: #9ca3af;
}
.mention-dropdown-item[data-v-c64e91af] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    cursor: pointer;
    transition: background-color 0.15s ease;
    border-bottom: 1px solid #f3f4f6;
}
.mention-dropdown-item[data-v-c64e91af]:last-child {
    border-bottom: none;
}
.mention-dropdown-item[data-v-c64e91af]:hover,
.mention-dropdown-item--active[data-v-c64e91af] {
    background-color: #f3f4f6;
}
.mention-dropdown-avatar[data-v-c64e91af] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    color: white;
    font-size: 12px;
    font-weight: 600;
    flex-shrink: 0;
}
.mention-dropdown-info[data-v-c64e91af] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.mention-dropdown-name[data-v-c64e91af] {
    font-size: 14px;
    font-weight: 500;
    color: #111827;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mention-dropdown-username[data-v-c64e91af] {
    font-size: 12px;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mention-dropdown-loading[data-v-c64e91af] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px;
    color: #6b7280;
    font-size: 13px;
}
.mention-dropdown-spinner[data-v-c64e91af] {
    animation: spin-c64e91af 1s linear infinite;
}
@keyframes spin-c64e91af {
from {
        transform: rotate(0deg);
}
to {
        transform: rotate(360deg);
}
}

.slash-dropdown[data-v-27497b1f] {
  position: fixed;
  z-index: 100000;
  width: 320px;
  max-height: 380px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow:
    0 4px 6px -1px rgba(15, 23, 42, 0.08),
    0 12px 28px -4px rgba(15, 23, 42, 0.16);
  overflow: hidden;
  animation: slash-dropdown-in-27497b1f 0.12s ease;
  display: flex;
  flex-direction: column;
}
@keyframes slash-dropdown-in-27497b1f {
from { opacity: 0; transform: translateY(4px);
}
to   { opacity: 1; transform: translateY(0);
}
}
.slash-dropdown-list[data-v-27497b1f] {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 6px;
}
.slash-dropdown-section-label[data-v-27497b1f] {
  padding: 8px 10px 4px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #94a3b8;
  text-transform: uppercase;
}
.slash-dropdown-item[data-v-27497b1f] {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 10px;
  border: none;
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
  text-align: left;
  transition: background 0.12s ease;
}
.slash-dropdown-item[data-v-27497b1f]:hover,
.slash-dropdown-item--active[data-v-27497b1f] {
  background: #f5f3ff;
}
.slash-dropdown-icon[data-v-27497b1f] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 6px;
  background: #f8fafc;
  color: #475569;
  flex-shrink: 0;
  border: 1px solid #e2e8f0;
}
.slash-dropdown-item:hover .slash-dropdown-icon[data-v-27497b1f],
.slash-dropdown-item--active .slash-dropdown-icon[data-v-27497b1f] {
  background: #ffffff;
  color: #6d28d9;
  border-color: #ddd6fe;
}
.slash-dropdown-text[data-v-27497b1f] {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.slash-dropdown-title[data-v-27497b1f] {
  font-size: 13px;
  font-weight: 600;
  color: #1f2937;
  line-height: 1.2;
}
.slash-dropdown-desc[data-v-27497b1f] {
  font-size: 11.5px;
  color: #94a3b8;
  line-height: 1.3;
}
.slash-dropdown-item--active .slash-dropdown-title[data-v-27497b1f],
.slash-dropdown-item:hover .slash-dropdown-title[data-v-27497b1f] {
  color: #6d28d9;
}
.slash-dropdown-empty[data-v-27497b1f] {
  padding: 14px 16px;
  font-size: 12.5px;
  color: #64748b;
  text-align: center;
  border-top: 1px solid #f1f5f9;
}

/* Scrollbar */
.slash-dropdown-list[data-v-27497b1f]::-webkit-scrollbar { width: 6px;
}
.slash-dropdown-list[data-v-27497b1f]::-webkit-scrollbar-track { background: transparent;
}
.slash-dropdown-list[data-v-27497b1f]::-webkit-scrollbar-thumb { background: #e2e8f0; border-radius: 3px;
}
.slash-dropdown-list[data-v-27497b1f]::-webkit-scrollbar-thumb:hover { background: #cbd5e1;
}

/* ============================= */
/* WRAPPER                       */
/* ============================= */
.text-area-default-ui-wrapper[data-v-6ee32111] {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
}
.text-area-default-ui-wrapper--disabled[data-v-6ee32111] {
  opacity: 0.6;
  pointer-events: none;
}

/* ============================= */
/* LABEL                         */
/* ============================= */
.text-area-default-ui-label[data-v-6ee32111] {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  line-height: 1.4;
  margin-bottom: 2px;
}
.text-area-default-ui-label--required[data-v-6ee32111]::after {
  content: ' *';
  color: #ef4444;
}

/* ============================= */
/* CONTAINER                     */
/* ============================= */
.text-area-default-ui-container[data-v-6ee32111] {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, min-height 0.2s ease;
  /* overflow: visible so toolbar dropdowns are not clipped */
  overflow: visible;
}

/* Variants */
.text-area-default-ui-container--default[data-v-6ee32111]  { border-color: #d1d5db;
}
.text-area-default-ui-container--filled[data-v-6ee32111]   { background: #f9fafb; border-color: transparent;
}
.text-area-default-ui-container--outlined[data-v-6ee32111] { border-color: #9ca3af;
}

/* States */
.text-area-default-ui-container--focused[data-v-6ee32111] {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}
.text-area-default-ui-container--error[data-v-6ee32111] {
  border-color: #ef4444;
}
.text-area-default-ui-container--error.text-area-default-ui-container--focused[data-v-6ee32111] {
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}
.text-area-default-ui-container--dragging-file[data-v-6ee32111] {
  border-style: dashed;
  border-color: #3b82f6;
  background: #eff6ff;
}
.text-area-default-ui-container--disabled[data-v-6ee32111] {
  background: #f3f4f6;
  cursor: not-allowed;
}
.text-area-default-ui-container--readonly[data-v-6ee32111] {
  background: #fafafa;
}

/* Hover */
.text-area-default-ui-container[data-v-6ee32111]:not(.text-area-default-ui-container--disabled):not(.text-area-default-ui-container--readonly):hover {
  border-color: #9ca3af;
}
.text-area-default-ui-container--focused[data-v-6ee32111]:hover { border-color: #3b82f6;
}
.text-area-default-ui-container--error[data-v-6ee32111]:hover   { border-color: #ef4444;
}

/* Sizes */
.text-area-default-ui-container--sm[data-v-6ee32111] { min-height: 34px;
}
.text-area-default-ui-container--md[data-v-6ee32111] { min-height: 38px;
}
.text-area-default-ui-container--lg[data-v-6ee32111] { min-height: 46px;
}

/* Rich Container sizing */
.text-area-default-ui-container--rich[data-v-6ee32111]                          { min-height: 38px;
}
.text-area-default-ui-container--rich.text-area-default-ui-container--expanded[data-v-6ee32111] { min-height: 90px;
}
.text-area-default-ui-container--rich.text-area-default-ui-container--expanded.text-area-default-ui-container--with-content[data-v-6ee32111] { min-height: 130px;
}

/* ============================= */
/* TIPTAP TOOLBAR                */
/* ============================= */
.tiptap-toolbar[data-v-6ee32111] {
  display: flex;
  align-items: center;
  gap: 1px;
  flex-shrink: 0;
  flex-wrap: wrap;
  background: #fafbfc;

  /* Hidden state */
  max-height: 0;
  overflow: hidden;
  padding: 0 8px;
  border-bottom: none;
  transition: max-height 0.15s ease, padding 0.15s ease, border-color 0.15s ease;
}
.tiptap-toolbar--visible[data-v-6ee32111] {
  max-height: 52px;
  overflow: visible;
  padding: 5px 8px;
  border-bottom: 1px solid #f0f2f5;
  position: sticky;
  top: 0;
  z-index: 10;
  background: #fafbfc;
}

/* Toolbar groups */
.tiptap-toolbar-group[data-v-6ee32111] {
  display: inline-flex;
  align-items: center;
  gap: 1px;
}
.tiptap-toolbar-btn[data-v-6ee32111] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #6b7280;
  cursor: pointer;
  transition: background-color 0.12s ease, color 0.12s ease;
  flex-shrink: 0;
  padding: 0;
}
.tiptap-toolbar-btn[data-v-6ee32111]:hover {
  background: #e9ecef;
  color: #111827;
}
.tiptap-toolbar-btn--active[data-v-6ee32111] {
  background: #e8f0fe;
  color: #1d4ed8;
}
.tiptap-toolbar-btn--active[data-v-6ee32111]:hover {
  background: #dce8fd;
}

/* Dropdown trigger buttons */
.tiptap-toolbar-btn--dropdown[data-v-6ee32111] {
  width: auto;
  padding: 0 5px;
  gap: 2px;
}
.tiptap-toolbar-btn--text[data-v-6ee32111] {
  width: auto;
  min-width: 52px;
  padding: 0 5px;
  gap: 2px;
  font-size: 11px;
  font-weight: 500;
}
.tiptap-toolbar-btn__text[data-v-6ee32111] {
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  color: inherit;
  white-space: nowrap;
}

/* Add button */
/* ── Link Popover ─────────────────────────────────────────────────────── */
.tiptap-link-popover[data-v-6ee32111] {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 9999;
  width: 280px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.06);
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.tiptap-link-popover--floating[data-v-6ee32111] {
  position: fixed;
  top: 0;
  left: 0;
  width: min(320px, calc(100vw - 16px));
  z-index: 12000;
}
.tiptap-link-popover__header[data-v-6ee32111] {
  font-size: 12px;
  font-weight: 600;
  color: #374151;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.tiptap-link-popover__input[data-v-6ee32111] {
  width: 100%;
  padding: 7px 10px;
  font-size: 13px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  outline: none;
  color: #1f2937;
  background: #f9fafb;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.tiptap-link-popover__input[data-v-6ee32111]:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
  background: #ffffff;
}
.tiptap-link-popover__newtab[data-v-6ee32111] {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  color: #6b7280;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.tiptap-link-popover__newtab input[type="checkbox"][data-v-6ee32111] {
  width: 14px;
  height: 14px;
  accent-color: #3b82f6;
  cursor: pointer;
  flex-shrink: 0;
}
.tiptap-link-popover__actions[data-v-6ee32111] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.tiptap-link-popover__actions-right[data-v-6ee32111] {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}
.tiptap-link-popover__remove[data-v-6ee32111] {
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 500;
  color: #ef4444;
  background: transparent;
  border: 1px solid #fca5a5;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.tiptap-link-popover__remove[data-v-6ee32111]:hover {
  background: #fef2f2;
  border-color: #ef4444;
}
.tiptap-link-popover__cancel[data-v-6ee32111] {
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 500;
  color: #6b7280;
  background: transparent;
  border: 1px solid #e5e7eb;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.tiptap-link-popover__cancel[data-v-6ee32111]:hover {
  background: #f3f4f6;
  border-color: #d1d5db;
  color: #374151;
}
.tiptap-link-popover__apply[data-v-6ee32111] {
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  background: #3b82f6;
  border: 1px solid #3b82f6;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.tiptap-link-popover__apply[data-v-6ee32111]:hover {
  background: #2563eb;
  border-color: #2563eb;
}

/* ── Compact toolbar plus button ─────────────────────────────────────── */
.tiptap-toolbar-btn--plus[data-v-6ee32111] {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
}
.tiptap-toolbar--compact.tiptap-toolbar--visible[data-v-6ee32111] {
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
}
.tiptap-toolbar--compact.tiptap-toolbar--visible[data-v-6ee32111]::-webkit-scrollbar {
  display: none;
}
.tiptap-toolbar--compact .tiptap-toolbar-group--end[data-v-6ee32111] {
  margin-left: auto;
}
.tiptap-toolbar--narrow .tiptap-toolbar-group--end[data-v-6ee32111] {
  margin-left: auto;
}

/* Add button */
.tiptap-toolbar-btn--add[data-v-6ee32111] {
  width: auto;
  padding: 0 7px;
  gap: 3px;
  background: #f0f7ff;
  color: #2563eb;
  font-weight: 500;
  border: 1px solid #bfdbfe;
}
.tiptap-toolbar-btn--add[data-v-6ee32111]:hover {
  background: #dbeafe;
  color: #1d4ed8;
}
.tiptap-toolbar-btn__add-label[data-v-6ee32111] {
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
}
.tiptap-toolbar-divider[data-v-6ee32111] {
  display: inline-block;
  width: 1px;
  height: 16px;
  background: #e5e7eb;
  margin: 0 3px;
  flex-shrink: 0;
  align-self: center;
  border-radius: 1px;
}

/* ============================= */
/* TOOLBAR DROPDOWNS             */
/* ============================= */
.tiptap-dropdown[data-v-6ee32111] {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 9999;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12), 0 1px 4px rgba(15, 23, 42, 0.06);
  min-width: 182px;
  padding: 4px;
  animation: tiptap-dropdown-in-6ee32111 0.1s ease;
}
.tiptap-dropdown--floating[data-v-6ee32111] {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 12000;
}
.tiptap-dropdown--right[data-v-6ee32111] {
  left: auto;
  right: 0;
}
@keyframes tiptap-dropdown-in-6ee32111 {
from { opacity: 0; transform: translateY(-4px);
}
to   { opacity: 1; transform: translateY(0);
}
}
.tiptap-dropdown-item[data-v-6ee32111] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 6px 8px;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #374151;
  cursor: pointer;
  text-align: left;
  font-size: 13px;
  transition: background-color 0.1s ease, color 0.1s ease;
}
.tiptap-dropdown-item[data-v-6ee32111]:hover {
  background: #f3f4f6;
  color: #111827;
}
.tiptap-dropdown-item--active[data-v-6ee32111] {
  background: #e8f0fe;
  color: #1d4ed8;
}
.tiptap-dropdown-item--active[data-v-6ee32111]:hover {
  background: #dce8fd;
}
.tiptap-dropdown-item__label[data-v-6ee32111] {
  flex: 1;
  line-height: 1.3;
}
.tiptap-dropdown-item__meta[data-v-6ee32111] {
  font-size: 11px;
  color: #9ca3af;
  flex-shrink: 0;
}
.tiptap-dropdown-item__preview--p[data-v-6ee32111] {
  font-size: 11px;
  color: #9ca3af;
  flex: 1;
}

/* ============================= */
/* TIPTAP EDITOR WRAP + CONTENT  */
/* ============================= */
.tiptap-editor-wrap[data-v-6ee32111] {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  max-height: 300px;
  overflow-y: auto;
  cursor: text;
  scroll-behavior: smooth;

  /* Custom scrollbar */
  scrollbar-width: thin;
  scrollbar-color: #d1d5db transparent;
}
.tiptap-editor-wrap[data-v-6ee32111]::-webkit-scrollbar {
  width: 4px;
}
.tiptap-editor-wrap[data-v-6ee32111]::-webkit-scrollbar-track {
  background: transparent;
}
.tiptap-editor-wrap[data-v-6ee32111]::-webkit-scrollbar-thumb {
  background-color: #d1d5db;
  border-radius: 4px;
}
.text-area-default-ui-editor[data-v-6ee32111] {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* ── ProseMirror core styles ──────────────────────────────────────────── */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror {
  flex: 1;
  outline: none;
  padding: 8px 12px;
  font-size: 13px;
  line-height: 1.65;
  color: #1f2937;
  min-height: 28px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Collapsed: minimal – allow one line for placeholder */
.text-area-default-ui-container--rich:not(.text-area-default-ui-container--expanded)
  .text-area-default-ui-editor[data-v-6ee32111] .ProseMirror {
  max-height: 44px;
  overflow: hidden;
}

/* Expanded */
.text-area-default-ui-container--rich.text-area-default-ui-container--expanded
  .text-area-default-ui-editor[data-v-6ee32111] .ProseMirror {
  min-height: 60px;
}
.text-area-default-ui-container--rich.text-area-default-ui-container--expanded.text-area-default-ui-container--with-content
  .text-area-default-ui-editor[data-v-6ee32111] .ProseMirror {
  min-height: 100px;
}

/* ProseMirror placeholder (TipTap v3)
 *
 * No v3 a Placeholder extension aplica AS DUAS classes (`is-empty` e
 * `is-editor-empty`) DIRETO no <p> vazio via `Decoration.node()`, NAO mais
 * no `.ProseMirror` raiz como era no v2. Por isso o seletor antigo
 * (`.ProseMirror.is-editor-empty p.is-empty`) deixou de casar e o
 * placeholder sumiu.
 *
 * Como o config usa `showOnlyCurrent: true` (default), so' o paragrafo
 * com o cursor recebe `is-empty` — entao podemos casar diretamente nele
 * sem medo de mostrar placeholder em multiplos paragrafos vazios
 * simultaneos.
 *
 * Ref: node_modules/@tiptap/extensions/dist/placeholder/index.js
 */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror p.is-empty::before {
  content: attr(data-placeholder);
  float: left;
  color: #9ca3af;
  pointer-events: none;
  height: 0;
}

/* ── Content typography ──────────────────────────────────────────────── */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror p             { margin: 0.35em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror p:first-child { margin-top: 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror p:last-child  { margin-bottom: 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror strong        { font-weight: 600;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror em            { font-style: italic;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror s             { text-decoration: line-through;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror a {
  color: #3b82f6;
  text-decoration: underline;
  cursor: pointer;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror ul,
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror ol {
  padding-left: 1.5em;
  margin: 0.5em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror ul:not(.task-list) { list-style-type: disc;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror ol { list-style-type: decimal;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li { margin: 0.2em 0;
}

/* ── Task list (Notion/ClickUp-style checklist) ──────────────────────── */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror ul.task-list,
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror .task-list {
  list-style: none;
  padding-left: 0.25em;
  margin: 0.4em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror .task-list .task-list {
  /* Checklists aninhadas — recuo */
  padding-left: 1.5em;
  margin: 0.2em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0.15em 0;
  padding: 1px 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  /* Alinha o checkbox com a primeira linha do texto */
  margin-top: 4px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label > input[type="checkbox"] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  margin: 0;
  border: 1.5px solid #cbd5e1;
  border-radius: 4px;
  background: #ffffff;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease;
  position: relative;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label > input[type="checkbox"]:hover {
  border-color: #94a3b8;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label > input[type="checkbox"]:checked {
  background: #2563eb;
  border-color: #2563eb;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label > input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 1px;
  left: 4px;
  width: 5px;
  height: 9px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* O <span> que vem depois do input no markup do TipTap — escondemos */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > label > span {
  display: none;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > div {
  flex: 1;
  min-width: 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item > div > p {
  margin: 0;
  line-height: 1.5;
}

/* Estado completado: texto cinza com strikethrough */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror li.task-item[data-checked="true"] > div {
  color: #94a3b8;
  text-decoration: line-through;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h1,
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h2,
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h3 {
  font-weight: 700;
  line-height: 1.3;
  margin: 0.6em 0 0.3em;
  color: #0f172a;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h1 { font-size: 1.4em;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h2 { font-size: 1.2em;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror h3 { font-size: 1.05em;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror blockquote {
  border-left: 3px solid #3b82f6;
  margin: 0.6em 0;
  padding: 4px 12px;
  color: #4b5563;
  background: #f8faff;
  border-radius: 0 4px 4px 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror code {
  background: #f1f5f9;
  color: #d63384;
  border-radius: 4px;
  padding: 1px 5px;
  font-size: 0.88em;
  font-family: 'SFMono-Regular', Consolas, monospace;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror pre {
  background: #1e293b;
  color: #e2e8f0;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: 0.85em;
  font-family: 'SFMono-Regular', Consolas, monospace;
  overflow-x: auto;
  margin: 0.6em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror u { text-decoration: underline;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror hr {
  border: none;
  border-top: 2px solid #e5e7eb;
  margin: 1em 0;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror img,
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror video {
  display: block;
  max-width: min(100%, 320px);
  max-height: 180px;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 6px;
  margin-top: 4px;
  margin-left: auto;
  margin-right: auto;
}

/* Mention highlight */
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror [data-mention="true"] {
  background-color: #e3f2fd;
  color: #1565c0;
  font-weight: 600;
  border-radius: 6px;
  padding: 2px 6px;
  white-space: nowrap;
  display: inline-block;
}

/* Pre-mount placeholder */
.tiptap-pre-mount-placeholder[data-v-6ee32111] {
  padding: 8px 12px;
  font-size: 13px;
  color: #9ca3af;
  line-height: 1.65;
  min-height: 28px;
}

/* Disabled overlay */
.text-area-default-ui-container--disabled .tiptap-editor-wrap[data-v-6ee32111],
.text-area-default-ui-container--disabled .tiptap-toolbar[data-v-6ee32111] {
  opacity: 0.7;
  pointer-events: none;
}

/* ============================= */
/* PLAIN TEXTAREA                */
/* ============================= */
.text-area-default-ui-textarea[data-v-6ee32111] {
  width: 100%;
  min-height: 80px;
  padding: 8px 12px;
  border: none;
  outline: none;
  background: transparent;
  resize: vertical;
  font-size: 13px;
  line-height: 1.65;
  color: #1f2937;
  font-family: inherit;
}
.text-area-default-ui-textarea[data-v-6ee32111]::-moz-placeholder { color: #9ca3af;
}
.text-area-default-ui-textarea[data-v-6ee32111]::placeholder { color: #9ca3af;
}
.text-area-default-ui-textarea[data-v-6ee32111]:-moz-read-only    { cursor: not-allowed; color: #6b7280;
}
.text-area-default-ui-textarea[data-v-6ee32111]:disabled,
.text-area-default-ui-textarea[data-v-6ee32111]:read-only    { cursor: not-allowed; color: #6b7280;
}

/* ============================= */
/* SPINNER                       */
/* ============================= */
.text-area-default-ui-spinner[data-v-6ee32111] {
  position: absolute;
  bottom: 8px;
  right: 10px;
  display: flex;
  align-items: center;
  pointer-events: none;
}
.text-area-default-ui-spinner-icon[data-v-6ee32111] {
  animation: text-area-default-ui-spin-6ee32111 1s linear infinite;
  color: #6b7280;
}
@keyframes text-area-default-ui-spin-6ee32111 {
from { transform: rotate(0deg);
}
to   { transform: rotate(360deg);
}
}

/* ============================= */
/* MESSAGES & COUNTER            */
/* ============================= */
.text-area-default-ui-message[data-v-6ee32111]       { font-size: 12px; color: #6b7280;
}
.text-area-default-ui-message--error[data-v-6ee32111] { color: #ef4444;
}
.text-area-default-ui-error[data-v-6ee32111],
.text-area-default-ui-helper[data-v-6ee32111] { display: flex; align-items: center; gap: 4px;
}
.text-area-default-ui-error-icon[data-v-6ee32111] { flex-shrink: 0;
}
.text-area-default-ui-counter[data-v-6ee32111]         { font-size: 11px; color: #9ca3af; text-align: right; margin-top: 2px;
}
.text-area-default-ui-counter--warning[data-v-6ee32111] { color: #d97706;
}

/* ============================= */
/* RESPONSIVE                    */
/* ============================= */
@media (max-width: 640px) {
.tiptap-toolbar-btn[data-v-6ee32111] {
    width: 28px;
    height: 28px;
}
.text-area-default-ui-editor[data-v-6ee32111] .ProseMirror {
    font-size: 14px;
}
}

.container-description[data-v-382fbc7d] {
  --ci-margin-left: 0px;
  --ci-margin-right: 0px;
  --ci-padding: 8px 14px;
  --ci-avatar-size: 28px;
  --ci-avatar-font: 10px;
  --ci-avatar-color: #2763e5;
  --ci-font-size: 13px;
  --ci-meta-font: 12px;
  --ci-name-font: 12px;
  --ci-reaction-font: 12px;
  --ci-reaction-pad: 3px 7px;
  --ci-content-pad-left: 38px;
  --ci-footer-pad-left: 38px;

  width: 100%;
  margin-left: var(--ci-margin-left);
  margin-right: var(--ci-margin-right);
}
.container-comment[data-v-382fbc7d] {
  --ci-margin-left: 0px;
  --ci-margin-right: 0px;
  --ci-padding: 8px 14px;
  --ci-avatar-size: 28px;
  --ci-avatar-font: 10px;
  --ci-avatar-color: #10B981;
  --ci-font-size: 13px;
  --ci-meta-font: 12px;
  --ci-name-font: 12px;
  --ci-reaction-font: 12px;
  --ci-reaction-pad: 3px 7px;
  --ci-content-pad-left: 38px;
  --ci-footer-pad-left: 38px;

  width: 100%;
  box-sizing: border-box;
  margin-left: var(--ci-margin-left);
  margin-right: var(--ci-margin-right);
}
.container-subcomment[data-v-382fbc7d] {
  --ci-margin-left: 0px;
  --ci-margin-right: 0px;
  --ci-padding: 8px 14px;
  --ci-avatar-size: 28px;
  --ci-avatar-font: 10px;
  --ci-avatar-color: #14B8A6;
  --ci-font-size: 13px;
  --ci-meta-font: 12px;
  --ci-name-font: 12px;
  --ci-reaction-font: 12px;
  --ci-reaction-pad: 3px 7px;
  --ci-content-pad-left: 38px;
  --ci-footer-pad-left: 38px;

  width: 100%;
  box-sizing: border-box;
  margin-left: var(--ci-margin-left);
  margin-right: var(--ci-margin-right);
}
.comment-wrapper[data-v-382fbc7d] {
  display: flex;
  gap: 6px;
  padding: 8px;
  align-items: flex-start;
  width: 100%;
}
.comment-avatar-col[data-v-382fbc7d] {
  flex-shrink: 0;
  padding-top: 0;
}
.comment-content-col[data-v-382fbc7d] {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.comment-item[data-v-382fbc7d] {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: var(--ci-padding);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}
.comment-item[data-v-382fbc7d]:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07), 0 1px 3px rgba(0, 0, 0, 0.03);
  border-color: #d1d5db;
}
.comment-item--editing[data-v-382fbc7d] {
  border-color: #93bbfd;
  background: #f0f7ff;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.08);
}
.container-comment .comment-item[data-v-382fbc7d] {
  border-color: #e9eef4;
  box-shadow: none;
}
.container-subcomment .comment-item[data-v-382fbc7d] {
  border-color: #e9eef4;
  border-radius: 10px;
  box-shadow: none;
}
.comment-item__view[data-v-382fbc7d] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.comment-item__deep-reply-hint[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  background: #e8eef6;
  border-radius: 4px;
  padding: 2px 7px;
  margin-bottom: 4px;
  width: -moz-fit-content;
  width: fit-content;
}
.comment-item__avatar[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--ci-avatar-size);
  height: var(--ci-avatar-size);
  border-radius: 50%;
  background: var(--ci-avatar-color);
  color: #ffffff;
  font-size: var(--ci-avatar-font);
  font-weight: 700;
  flex-shrink: 0;
  letter-spacing: 0.5px;
}
.comment-item__user-info[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  min-height: var(--ci-avatar-size);
  margin-bottom: 0;
}
.comment-item__name[data-v-382fbc7d] {
  font-weight: 600;
  color: #1f2937;
  font-size: var(--ci-name-font);
  line-height: 1.4;
}
.comment-item__meta[data-v-382fbc7d] {
  font-size: var(--ci-meta-font);
  color: #6b7280;
  line-height: 1.4;
  white-space: nowrap;
}
.comment-item__separator[data-v-382fbc7d] {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #cbd5e1;
  flex-shrink: 0;
}
.comment-item__reply-badge[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  font-weight: 600;
  color: #4f6fbd;
  background: #eff3fc;
  border: 1px solid #c7d8f8;
  border-radius: 100px;
  padding: 1px 7px;
  line-height: 1.5;
  white-space: nowrap;
}
.comment-item__edited-flag[data-v-382fbc7d] {
  font-size: 11px;
  color: #9ca3af;
  font-style: italic;
  white-space: nowrap;
}
.comment-item__actions[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  padding: 0 2px;
}
.comment-item__action-text[data-v-382fbc7d] {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: #6b7280;
  transition: color 150ms ease;
  line-height: 1.4;
}
.comment-item__action-text--edit[data-v-382fbc7d]:hover {
  color: #3b82f6;
}
.comment-item__action-text--delete[data-v-382fbc7d]:hover {
  color: #ef4444;
}
.comment-item__action-sep[data-v-382fbc7d] {
  color: #d1d5db;
  font-size: 12px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.comment-item__content[data-v-382fbc7d] {
  flex: 1;
}
.comment-item__text[data-v-382fbc7d] {
  font-size: var(--ci-font-size);
  line-height: 1.65;
  color: #374151;
  word-wrap: break-word;
  overflow-wrap: break-word;
  margin: 0;
}

/* Wrapper que aplica o clip via max-height — fica relativo pra ancorar o fade */
.comment-item__text-wrap[data-v-382fbc7d] {
  position: relative;
}
.comment-item__text-wrap--collapsed[data-v-382fbc7d] {
  /* SYNC: COLLAPSED_MAX_HEIGHT no script (130px) */
  max-height: 130px;
  overflow: hidden;
}
.comment-item__text-fade[data-v-382fbc7d] {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 44px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 90%);
  pointer-events: none;
}
.comment-item__text[data-v-382fbc7d] a {
  color: #3b82f6;
  text-decoration: underline;
}
.comment-item__text[data-v-382fbc7d] a[data-attachment="true"] {
  font-weight: 500;
}
.comment-item__text[data-v-382fbc7d] a:hover {
  color: #2563eb;
}
.comment-item__text[data-v-382fbc7d] img {
  display: block;
  width: 72px;
  height: 72px;
  max-width: 72px;
  max-height: 72px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 6px;
  margin-top: 6px;
  margin-left: auto;
  margin-right: auto;
  cursor: zoom-in;
  border: 1px solid #e5e7eb;
  background: #f3f4f6;
}
.comment-item__text[data-v-382fbc7d] .kanban-media-tombstone {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: #f1f5f9;
  color: #64748b;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}
.comment-item__text[data-v-382fbc7d] video {
  max-width: min(100%, 200px);
  max-height: 120px;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 6px;
  margin-top: 8px;
  cursor: zoom-in;
}
.comment-item__text[data-v-382fbc7d] ul,
.comment-item__text[data-v-382fbc7d] ol {
  padding-left: 1.5em;
  margin: 0.5em 0;
}
.comment-item__text[data-v-382fbc7d] ul {
  list-style-type: disc;
}
.comment-item__text[data-v-382fbc7d] ol {
  list-style-type: decimal;
}
.comment-item__text[data-v-382fbc7d] li {
  margin: 0.25em 0;
  padding-left: 0.3em;
}
.comment-item__text[data-v-382fbc7d] p {
  margin: 0.5em 0;
}
.comment-item__text[data-v-382fbc7d] p:first-child {
  margin-top: 0;
}
.comment-item__text[data-v-382fbc7d] p:last-child {
  margin-bottom: 0;
}
.comment-item__text[data-v-382fbc7d] strong {
  font-weight: 600;
}
.comment-item__text[data-v-382fbc7d] em {
  font-style: italic;
}
.comment-item__text[data-v-382fbc7d] u {
  text-decoration: underline;
}
.comment-item__text[data-v-382fbc7d] s {
  text-decoration: line-through;
}
.comment-item__text[data-v-382fbc7d] [style*="background"] {
  padding: 2px 6px;
  border-radius: 6px;
  font-weight: 600;
  white-space: nowrap;
  display: inline-block;
}
.comment-item__text[data-v-382fbc7d] [data-mention="true"] {
  background-color: #e3f2fd !important;
  color: #1565c0 !important;
  padding: 2px 6px;
  border-radius: 6px;
  font-weight: 600;
  white-space: nowrap;
  display: inline-block;
}
.comment-item__text[data-v-382fbc7d] ul[data-checked] {
  list-style: none !important;
  padding-left: 0 !important;
}
.comment-item__text[data-v-382fbc7d] li[data-list="checked"],
.comment-item__text[data-v-382fbc7d] li[data-list="unchecked"] {
  list-style: none !important;
  padding-left: 1.8em !important;
  position: relative;
}
.comment-item__text[data-v-382fbc7d] li[data-list="checked"]::before,
.comment-item__text[data-v-382fbc7d] li[data-list="unchecked"]::before {
  content: '' !important;
  position: absolute;
  left: 0;
  top: 0.25em;
  width: 16px;
  height: 16px;
  border: 2px solid #d1d5db;
  border-radius: 3px;
  background: white;
  display: block !important;
}
.comment-item__text[data-v-382fbc7d] li[data-list="checked"]::before {
  background-color: #3b82f6 !important;
  border-color: #3b82f6 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13.5 3.5L6 11l-3.5-3.5' stroke='white' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-size: 12px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.comment-item__text[data-v-382fbc7d] li[data-list="checked"] {
  color: #6b7280 !important;
  text-decoration: line-through !important;
}
.comment-item__toggle-btn[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  color: #64748b;
  font-size: 12.5px;
  font-weight: 500;
  cursor: pointer;
  padding: 4px 0;
  margin-top: 6px;
  transition: color 0.15s ease;
}
.comment-item__toggle-btn[data-v-382fbc7d]:hover {
  color: #2563eb;
}
.comment-item__toggle-chevron[data-v-382fbc7d] {
  transition: transform 0.2s ease;
}
.comment-item__toggle-btn--expanded .comment-item__toggle-chevron[data-v-382fbc7d] {
  transform: rotate(180deg);
}
.comment-item__link-preview[data-v-382fbc7d] {
  margin-top: 10px;
  display: flex;
  align-items: stretch;
  gap: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  background: #ffffff;
  text-decoration: none;
}
.comment-item__link-preview[data-v-382fbc7d]:hover {
  border-color: #cfd8e3;
  background: #f9fafb;
}
.comment-item__link-preview-img-wrap[data-v-382fbc7d] {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
  background: #f3f4f6;
}
.comment-item__link-preview-img[data-v-382fbc7d] {
  width: 100%;
  height: 100%;
  min-height: 84px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.comment-item__link-preview-body[data-v-382fbc7d] {
  min-width: 0;
  flex: 1;
  padding: 10px 10px 10px 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.comment-item__link-preview-title[data-v-382fbc7d] {
  margin: 0;
  color: #111827;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
}
.comment-item__link-preview-desc[data-v-382fbc7d] {
  margin: 0;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.35;
}
.comment-item__link-preview-domain[data-v-382fbc7d] {
  margin-top: 2px;
  color: #9ca3af;
  font-size: 11px;
  line-height: 1.2;
}
.comment-item__below-card[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 2px 2px 0;
  width: 100%;
  box-sizing: border-box;
  row-gap: 6px;
}
.comment-item__group-sep[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  align-self: center;
  flex-shrink: 0;
  margin: 0 7px;
  color: #cbd5e1;
  font-size: 14px;
  line-height: 1;
}
.comment-item__group-sep[data-v-382fbc7d]::before {
  content: '•';
}
.comment-item__reactions[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex-wrap: wrap;
  padding: 0 2px;
}
.comment-item__reaction-btn[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: var(--ci-reaction-pad);
  border: 1px solid #e5e7eb;
  border-radius: 100px;
  background: #f3f4f6;
  cursor: pointer;
  font-size: var(--ci-reaction-font);
  line-height: 1;
  color: #6b7280;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.comment-item__reaction-btn[data-v-382fbc7d]:hover {
  background: #e5e7eb;
  border-color: #d1d5db;
  color: #374151;
}
.comment-item__reaction-btn--active[data-v-382fbc7d] {
  color: #2563eb;
  background: #eff6ff;
  border-color: #bfdbfe;
}
.comment-item__reaction-btn--active[data-v-382fbc7d]:hover {
  background: #dbeafe;
  border-color: #93c5fd;
  color: #1d4ed8;
}
.comment-item__reaction-count[data-v-382fbc7d] {
  font-weight: 600;
  font-size: inherit;
  color: inherit;
}
.comment-item__reply-btn[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 2px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: #6b7280;
  transition: color 150ms ease;
  white-space: nowrap;
}
.comment-item__reply-btn[data-v-382fbc7d]:hover {
  color: #3b82f6;
}
.comment-item__reply-btn[data-v-382fbc7d]:disabled {
  color: #9ca3af;
  cursor: not-allowed;
  opacity: 0.7;
}
.comment-item__collapse-btn[data-v-382fbc7d] {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: auto;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  color: #6b7280;
  transition: color 0.15s ease;
  white-space: nowrap;
  max-width: 100%;
}
.comment-item__collapse-btn[data-v-382fbc7d]:hover {
  color: #374151;
}
.comment-item__inline-reply[data-v-382fbc7d] {
  padding: 12px 0 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.comment-item__inline-edit[data-v-382fbc7d] {
  padding: 8px 0 0;
}
.comment-item__inline-actions[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 8px 0 0;
  width: 100%;
  box-sizing: border-box;
}
.comment-item__inline-reply-form[data-v-382fbc7d] {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.comment-item__inline-reply-form[data-v-382fbc7d]:focus-within {
  border-color: #93bbfd;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.08);
}
.comment-item__inline-reply-form[data-v-382fbc7d] .text-area-default-ui-wrapper {
  margin: 0;
}
.comment-item__inline-reply-form[data-v-382fbc7d] .text-area-default-ui-container {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.comment-item__inline-reply-form[data-v-382fbc7d] .ProseMirror img,
.comment-item__inline-reply-form[data-v-382fbc7d] .ProseMirror video {
  max-width: min(100%, 200px);
  max-height: 120px;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 6px;
  margin-top: 8px;
}
.comment-item__inline-reply-toolbar[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px 12px;
  border-top: 1px solid #f0f0f0;
  background: #fafbfc;
  width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
}
.comment-item__inline-reply-toolbar-left[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  gap: 4px;
}
.comment-item__inline-reply-toolbar-right[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}
.comment-item__inline-toolbar-btn[data-v-382fbc7d] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: none;
  background: transparent;
  border-radius: 6px;
  cursor: pointer;
  color: #6b7280;
  transition: all 0.15s ease;
}
.comment-item__inline-toolbar-btn[data-v-382fbc7d]:hover {
  background: #e5e7eb;
  color: #374151;
}
.comment-item__children[data-v-382fbc7d] {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 12px;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), 
              opacity 0.3s ease, 
              margin-top 0.3s ease;
  max-height: 5000px;
  opacity: 1;
}
.comment-item__children[style*="display: none"][data-v-382fbc7d] {
  max-height: 0;
  opacity: 0;
  margin-top: 0;
}
@media (max-width: 640px) {
.container-description[data-v-382fbc7d] {
    --ci-padding: 10px 14px;
    --ci-avatar-size: 28px;
    --ci-avatar-font: 10px;
    --ci-content-pad-left: 0;
    --ci-footer-pad-left: 0;
}
.container-comment[data-v-382fbc7d] {
    --ci-margin-left: 0px;
    --ci-margin-right: 0px;
    --ci-padding: 8px 14px;
    --ci-content-pad-left: 0;
    --ci-footer-pad-left: 0;
    margin-left: var(--ci-margin-left);
    margin-right: var(--ci-margin-right);
}
.container-subcomment[data-v-382fbc7d] {
    --ci-margin-left: 0px;
    --ci-margin-right: 0px;
    --ci-padding: 8px 14px;
    --ci-content-pad-left: 0;
    --ci-footer-pad-left: 0;
    margin-left: var(--ci-margin-left);
    margin-right: var(--ci-margin-right);
}
.comment-item[data-v-382fbc7d] {
    border-radius: 10px;
}
.comment-item__footer[data-v-382fbc7d] {
    flex-wrap: wrap;
    gap: 8px;
}
}

.kanban-comment-list[data-v-d82dcad7] {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 6px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.bbai-pop[data-v-6196cabb] {
  position: fixed;
  z-index: 100001; /* acima do bubble menu (100000) */
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow:
    0 18px 48px -22px rgba(15, 23, 42, 0.18),
    0 4px 12px -4px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  font-family: 'SF Pro Display', 'Geist Sans', 'Helvetica Neue', system-ui, sans-serif;
  pointer-events: auto;
}
.bbai-pop-enter-active[data-v-6196cabb], .bbai-pop-leave-active[data-v-6196cabb] {
  transition: opacity .14s ease, transform .14s ease;
}
.bbai-pop-enter-from[data-v-6196cabb], .bbai-pop-leave-to[data-v-6196cabb] {
  opacity: 0;
  transform: translateY(-4px) scale(0.98);
}

/* header */
.bbai-pop__header[data-v-6196cabb] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px 6px;
}
.bbai-pop__brand[data-v-6196cabb] {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 600; color: #2f3437;
}
.bbai-pop__brand-icon[data-v-6196cabb] {
  width: 18px; height: 18px;
  display: grid; place-items: center;
  border-radius: 5px;
  background: linear-gradient(135deg, #c4b5fd, #f0abfc);
  color: #ffffff;
}
.bbai-pop__close[data-v-6196cabb] {
  width: 24px; height: 24px;
  display: grid; place-items: center;
  border: 0; border-radius: 6px;
  background: transparent; color: #6b7280;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.bbai-pop__close[data-v-6196cabb]:hover { background: #f5f5f4; color: #2f3437;
}

/* body */
.bbai-pop__body[data-v-6196cabb] {
  padding: 0 12px;
  overflow-y: auto;
}

/* hero (gradient) */
.bbai-pop__hero[data-v-6196cabb] {
  display: flex; flex-direction: column; align-items: flex-start; gap: 6px;
  padding: 14px;
  margin-bottom: 8px;
  border-radius: 10px;
  background: linear-gradient(135deg, #fbfbfa 0%, #faf5ff 55%, #fdf2f8 100%);
  border: 1px solid #f3eafd;
}
.bbai-pop__hero--compact[data-v-6196cabb] { padding: 10px 12px;
}
.bbai-pop__hero-icon[data-v-6196cabb] {
  width: 28px; height: 28px;
  display: grid; place-items: center;
  border-radius: 8px;
  background: linear-gradient(135deg, #a78bfa, #f0abfc);
  color: #ffffff;
  box-shadow: 0 6px 14px -6px rgba(167, 139, 250, 0.55);
}
.bbai-pop__hero-text[data-v-6196cabb] { display: flex; flex-direction: column; gap: 2px;
}
.bbai-pop__hero-title[data-v-6196cabb] {
  font-size: 14px; font-weight: 600; color: #1f2937; line-height: 1.25;
}
.bbai-pop__hero-sub[data-v-6196cabb] {
  font-size: 12px; color: #6b7280; line-height: 1.4;
}
.bbai-pop__back-inline[data-v-6196cabb] {
  display: inline-flex; align-items: center; gap: 4px;
  border: 0; background: transparent;
  font-size: 11.5px; color: #6b7280;
  cursor: pointer;
  padding: 0; margin-bottom: 4px;
}
.bbai-pop__back-inline[data-v-6196cabb]:hover { color: #2f3437;
}

/* streaming */
.bbai-pop__streaming[data-v-6196cabb] { padding: 12px 0;
}
.bbai-pop__streaming-head[data-v-6196cabb] {
  display: inline-flex; align-items: center; gap: 6px;
  margin-bottom: 8px;
  font-size: 12px; color: #6b7280;
}
.bbai-pop__streaming-label[data-v-6196cabb] { font-weight: 500;
}
.bbai-pop__spin[data-v-6196cabb] { animation: bbai-spin-6196cabb 1s linear infinite;
}
@keyframes bbai-spin-6196cabb {
to { transform: rotate(360deg);
}
}

/* result */
.bbai-pop__result[data-v-6196cabb] { padding: 4px 0 12px;
}
.bbai-pop__result-head[data-v-6196cabb] {
  display: inline-flex; align-items: center; gap: 6px;
  margin-bottom: 8px;
  font-size: 12px; font-weight: 600; color: #2f3437;
}
.bbai-pop__result-label[data-v-6196cabb] { color: #2f3437;
}
.bbai-pop__result-text[data-v-6196cabb] {
  font-size: 13px; line-height: 1.55; color: #1f2937;
  white-space: pre-wrap; word-wrap: break-word;
}
.bbai-pop__result-text[data-v-6196cabb] p { margin: 0 0 6px;
}
.bbai-pop__result-text[data-v-6196cabb] p:last-child { margin-bottom: 0;
}
.bbai-pop__result-text[data-v-6196cabb] ul, .bbai-pop__result-text[data-v-6196cabb] ol { padding-left: 18px; margin: 4px 0;
}
.bbai-pop__result-text[data-v-6196cabb] strong { color: #111827;
}
.bbai-pop__result-text[data-v-6196cabb] code {
  background: #f5f3ff; color: #6d28d9;
  padding: 1px 5px; border-radius: 4px;
  font-size: 12px;
}
.bbai-pop__result-feedback[data-v-6196cabb] {
  display: flex; gap: 4px;
  margin-top: 10px;
}
.bbai-pop__feedback-btn[data-v-6196cabb] {
  width: 22px; height: 22px;
  display: grid; place-items: center;
  border: 0; border-radius: 5px;
  background: transparent; color: #9ca3af;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.bbai-pop__feedback-btn[data-v-6196cabb]:hover { background: #f5f5f4; color: #4b5563;
}
.bbai-pop__feedback-btn.is-on[data-v-6196cabb] { color: #7c3aed; background: #f5f3ff;
}

/* error */
.bbai-pop__error[data-v-6196cabb] {
  display: flex; align-items: center; gap: 6px;
  margin: 12px 0;
  padding: 8px 10px;
  font-size: 12px; color: #9f2f2d;
  background: #fdebec; border: 1px solid #f6cccd;
  border-radius: 8px;
}
.bbai-pop__retry[data-v-6196cabb] {
  margin-left: auto;
  border: 0; border-radius: 5px;
  padding: 3px 8px;
  background: #ffffff; color: #9f2f2d;
  font-size: 11px; font-weight: 500;
  cursor: pointer;
}

/* composer */
.bbai-pop__composer[data-v-6196cabb] {
  display: flex; align-items: center; gap: 6px;
  margin: 6px 12px 8px;
  padding: 6px 8px 6px 10px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fafafa;
}
.bbai-pop__composer[data-v-6196cabb]:focus-within {
  background: #ffffff;
  border-color: #c4b5fd;
  box-shadow: 0 0 0 3px rgba(196, 181, 253, 0.18);
}
.bbai-pop__input[data-v-6196cabb] {
  flex: 1;
  border: 0; outline: 0;
  background: transparent;
  font-size: 13px; color: #1f2937;
  padding: 4px 0;
  font-family: inherit;
}
.bbai-pop__input[data-v-6196cabb]::-moz-placeholder { color: #9ca3af;
}
.bbai-pop__input[data-v-6196cabb]::placeholder { color: #9ca3af;
}
.bbai-pop__send[data-v-6196cabb] {
  width: 24px; height: 24px;
  display: grid; place-items: center;
  border: 0; border-radius: 6px;
  background: linear-gradient(135deg, #a78bfa, #f0abfc);
  color: #ffffff; cursor: pointer;
  transition: opacity .15s, transform .15s;
}
.bbai-pop__send[data-v-6196cabb]:disabled {
  background: #e5e7eb; color: #9ca3af;
  cursor: not-allowed;
}
.bbai-pop__send[data-v-6196cabb]:not(:disabled):hover { transform: scale(1.05);
}

/* options list */
.bbai-pop__options[data-v-6196cabb] {
  display: flex; flex-direction: column;
  padding: 4px 6px 8px;
  gap: 1px;
  max-height: 320px;
  overflow-y: auto;
}
.bbai-pop__option[data-v-6196cabb] {
  display: flex; align-items: center; gap: 10px;
  padding: 7px 8px;
  border: 0; border-radius: 6px;
  background: transparent; color: #2f3437;
  font-size: 13px; text-align: left;
  cursor: pointer;
  transition: background .12s;
}
.bbai-pop__option[data-v-6196cabb]:hover { background: #f5f5f4;
}
.bbai-pop__option.is-default[data-v-6196cabb] { background: #fafafa;
}
.bbai-pop__option.is-default[data-v-6196cabb]:hover { background: #f0f0ee;
}
.bbai-pop__option-icon[data-v-6196cabb] {
  width: 22px; height: 22px;
  display: grid; place-items: center;
  border-radius: 5px;
  background: #f5f3ff;
  color: #7c3aed;
  flex-shrink: 0;
}
.bbai-pop__option-label[data-v-6196cabb] { flex: 1; min-width: 0;
}
.bbai-pop__option-arrow[data-v-6196cabb],
.bbai-pop__option-shortcut[data-v-6196cabb] {
  display: inline-flex; align-items: center;
  color: #9ca3af;
  flex-shrink: 0;
}
.bbai-pop__option-shortcut[data-v-6196cabb] {
  width: 18px; height: 18px;
  border-radius: 4px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  justify-content: center;
}

.comment-bubble-menu[data-v-002d549a] {
  position: fixed;
  z-index: 100000;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 5px;
  background: #1f2937;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 8px;
  box-shadow:
    0 4px 6px -1px rgba(0, 0, 0, 0.3),
    0 10px 20px -2px rgba(0, 0, 0, 0.25);
  animation: comment-bubble-in-002d549a 0.12s ease;
}
@keyframes comment-bubble-in-002d549a {
from { opacity: 0; transform: translateY(4px) scale(0.96);
}
to   { opacity: 1; transform: translateY(0)    scale(1);
}
}
.comment-bubble-btn[data-v-002d549a] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 26px;
  min-width: 26px;
  padding: 0 6px;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #e5e7eb;
  cursor: pointer;
  font-size: 12px;
  transition: background 0.12s ease, color 0.12s ease;
}
.comment-bubble-btn[data-v-002d549a]:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}
.comment-bubble-btn--active[data-v-002d549a] {
  background: rgba(124, 58, 237, 0.25);
  color: #c4b5fd;
}

/* botoes de IA — gradiente sutil + label visivel pra ganhar destaque
   no inicio da barra (mesma estetica do brand-icon do KanbanCardAIPopover). */
.comment-bubble-btn--ai[data-v-002d549a] {
  padding: 0 8px;
  color: #ddd6fe;
  font-weight: 500;
}
.comment-bubble-btn--ai[data-v-002d549a]:hover {
  background: rgba(167, 139, 250, 0.18);
  color: #ffffff;
}
.comment-bubble-btn--ai .comment-bubble-btn-label[data-v-002d549a] {
  font-size: 11.5px;
  letter-spacing: 0.01em;
}
.comment-bubble-btn--dropdown[data-v-002d549a] {
  padding: 0 8px;
}
.comment-bubble-btn-label[data-v-002d549a] {
  font-weight: 500;
  white-space: nowrap;
}
.comment-bubble-divider[data-v-002d549a] {
  display: inline-block;
  width: 1px;
  height: 16px;
  background: rgba(255, 255, 255, 0.12);
  margin: 0 4px;
}
.comment-bubble-dropdown[data-v-002d549a] {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 100001;
  min-width: 160px;
  padding: 5px;
  background: #1f2937;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}
.comment-bubble-dropdown-item[data-v-002d549a] {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 6px 10px;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #e5e7eb;
  cursor: pointer;
  font-size: 12.5px;
  text-align: left;
  transition: background 0.12s ease;
}
.comment-bubble-dropdown-item[data-v-002d549a]:hover {
  background: rgba(255, 255, 255, 0.08);
}

/* Item ativo (= valor aplicado no texto). Usa o mesmo background do hover
   pra dar a sensacao de "pre-selecionado", mais o tint roxo no texto pra
   indicar a marca de IA/acao especial. background um chouco mais forte que
   hover normal pra continuar visivel quando o user sai do mouse do item. */
.comment-bubble-dropdown-item--active[data-v-002d549a] {
  color: #c4b5fd;
  background: rgba(255, 255, 255, 0.10);
}
.comment-bubble-dropdown-item--active[data-v-002d549a]:hover {
  background: rgba(255, 255, 255, 0.14);
  color: #ddd6fe;
}
.comment-bubble-dropdown-item--h1[data-v-002d549a] { font-size: 15px; font-weight: 700;
}
.comment-bubble-dropdown-item--h2[data-v-002d549a] { font-size: 13.5px; font-weight: 700;
}
.comment-bubble-dropdown-item--h3[data-v-002d549a] { font-size: 12.5px; font-weight: 600;
}

/* Dropdown de alinhamento — mais largo pra acomodar icone + label + shortcut. */
.comment-bubble-dropdown--align[data-v-002d549a] {
  min-width: 220px;
}
.comment-bubble-dropdown--align .comment-bubble-dropdown-item[data-v-002d549a] {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
}
.comment-bubble-dropdown-shortcut[data-v-002d549a] {
  font-size: 10.5px;
  color: #9ca3af;
  font-weight: 400;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
.comment-bubble-dropdown-item:hover .comment-bubble-dropdown-shortcut[data-v-002d549a] {
  color: #d1d5db;
}
.comment-bubble-dropdown-item--active .comment-bubble-dropdown-shortcut[data-v-002d549a] {
  color: #c4b5fd;
}

/* ──────────────────────────────────────────────────────────────────── */
/*                         Link mode (inline)                            */
/* ──────────────────────────────────────────────────────────────────── */
.comment-bubble-menu--link[data-v-002d549a] {
  padding: 4px 4px 4px 8px;
  gap: 4px;
  min-width: 320px;
}
.comment-bubble-link-icon[data-v-002d549a] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #c4b5fd;
  flex: 0 0 auto;
}
.comment-bubble-link-input[data-v-002d549a] {
  flex: 1 1 auto;
  height: 26px;
  padding: 0 4px;
  background: transparent;
  border: none;
  outline: none;
  color: #f3f4f6;
  font-size: 12.5px;
  font-family: inherit;
  min-width: 0;
}
.comment-bubble-link-input[data-v-002d549a]::-moz-placeholder {
  color: #9ca3af;
}
.comment-bubble-link-input[data-v-002d549a]::placeholder {
  color: #9ca3af;
}
.comment-bubble-link-input[data-v-002d549a]:focus {
  outline: none;
}
.comment-bubble-link-btn[data-v-002d549a] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  width: 26px;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #d1d5db;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  flex: 0 0 auto;
}
.comment-bubble-link-btn[data-v-002d549a]:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

/* ──────────────────────────────────────────────────────────────────── */
/*                    Pilula de undo pos-apply de IA                     */
/* ──────────────────────────────────────────────────────────────────── */
.cbm-inline-undo-pill[data-v-002d549a] {
  position: fixed;
  z-index: 100002;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 28px;
  padding: 0 10px;
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 100%);
  color: #f5f3ff;
  border-radius: 999px;
  box-shadow:
    0 4px 12px rgba(124, 58, 237, 0.35),
    0 1px 3px rgba(0, 0, 0, 0.25);
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.cbm-inline-undo-pill-icon[data-v-002d549a] {
  color: #ddd6fe;
}
.cbm-inline-undo-pill-text[data-v-002d549a] {
  letter-spacing: 0.01em;
}
.cbm-inline-undo-pill-sep[data-v-002d549a] {
  opacity: 0.5;
}
.cbm-inline-undo-pill-btn[data-v-002d549a] {
  background: transparent;
  border: none;
  color: #ffffff;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
  padding: 2px 4px;
  border-radius: 4px;
  transition: background 0.12s ease;
}
.cbm-inline-undo-pill-btn[data-v-002d549a]:hover {
  background: rgba(255, 255, 255, 0.18);
}
.cbm-undo-pill-enter-active[data-v-002d549a],
.cbm-undo-pill-leave-active[data-v-002d549a] {
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.cbm-undo-pill-enter-from[data-v-002d549a],
.cbm-undo-pill-leave-to[data-v-002d549a] {
  opacity: 0;
  transform: translateY(-4px) scale(0.96);
}

.kanban-ai-mention-picker[data-v-48e36ab2] {
  /* fixed: escapa do overflow:hidden do menu pai (.kanban-ai-menu) que
     cortava o picker quando crescia. coordenadas vem em viewport. */
  position: fixed;
  z-index: 10020;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  box-shadow:
    0 4px 10px -3px rgba(15, 23, 42, 0.08),
    0 10px 20px -6px rgba(15, 23, 42, 0.14);
  overflow: hidden;
  max-height: 280px;
  display: flex;
  flex-direction: column;
  animation: kanban-ai-mention-in-48e36ab2 0.12s ease;
}
@keyframes kanban-ai-mention-in-48e36ab2 {
from { opacity: 0; transform: translateY(-3px);
}
to   { opacity: 1; transform: translateY(0);
}
}
.kanban-ai-mention-tabs[data-v-48e36ab2] {
  display: flex;
  border-bottom: 1px solid #f1f5f9;
  padding: 0 6px;
  flex-shrink: 0;
  gap: 2px;
}
.kanban-ai-mention-tab[data-v-48e36ab2] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  padding: 8px 10px 7px;
  font-size: 11.5px;
  font-weight: 500;
  color: #94a3b8;
  cursor: pointer;
  border-bottom: 1.5px solid transparent;
  transition: color 0.12s ease, border-color 0.12s ease;
  margin-bottom: -1px;
}
.kanban-ai-mention-tab[data-v-48e36ab2]:hover { color: #475569;
}
.kanban-ai-mention-tab--active[data-v-48e36ab2] {
  color: #1d4ed8;
  border-bottom-color: #3b82f6;
}
.kanban-ai-mention-list[data-v-48e36ab2] {
  flex: 1 1 auto;
  overflow-y: auto;
  /* min-height: 0 e' essencial pra overflow funcionar dentro de flex column */
  min-height: 0;
  padding: 4px;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 #f8fafc;
}
.kanban-ai-mention-list[data-v-48e36ab2]::-webkit-scrollbar {
  width: 8px;
}
.kanban-ai-mention-list[data-v-48e36ab2]::-webkit-scrollbar-track {
  background: #f8fafc;
  border-radius: 4px;
}
.kanban-ai-mention-list[data-v-48e36ab2]::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
  border: 2px solid #f8fafc;
}
.kanban-ai-mention-list[data-v-48e36ab2]::-webkit-scrollbar-thumb:hover { background: #94a3b8;
}
.kanban-ai-mention-list.is-empty[data-v-48e36ab2] {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
}
.kanban-ai-mention-section-label[data-v-48e36ab2] {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: #94a3b8;
  text-transform: uppercase;
  padding: 6px 8px 3px;
}
.kanban-ai-mention-item[data-v-48e36ab2] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 4px 8px;
  background: transparent;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.1s ease;
  min-height: 30px;
}
.kanban-ai-mention-item[data-v-48e36ab2]:hover,
.kanban-ai-mention-item--active[data-v-48e36ab2] {
  background: #f1f5f9;
}
.kanban-ai-mention-avatar[data-v-48e36ab2] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: #ffffff;
  font-size: 9.5px;
  font-weight: 600;
  flex-shrink: 0;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.kanban-ai-mention-task-icon[data-v-48e36ab2] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #eff6ff;
  color: #3b82f6;
  flex-shrink: 0;
}
.kanban-ai-mention-info[data-v-48e36ab2] {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex: 1;
  min-width: 0;
}
.kanban-ai-mention-name[data-v-48e36ab2] {
  font-size: 12px;
  font-weight: 500;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.25;
  flex-shrink: 1;
  min-width: 0;
}
.kanban-ai-mention-sub[data-v-48e36ab2] {
  font-size: 10.5px;
  color: #94a3b8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 0;
}
.kanban-ai-mention-state[data-v-48e36ab2] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 12px;
  font-size: 11.5px;
  color: #94a3b8;
}
.kanban-ai-mention-spinner[data-v-48e36ab2] {
  animation: kanban-ai-mention-spin-48e36ab2 0.9s linear infinite;
}
@keyframes kanban-ai-mention-spin-48e36ab2 {
from { transform: rotate(0deg);
}
to   { transform: rotate(360deg);
}
}
.kanban-ai-mention-empty[data-v-48e36ab2] { font-style: normal;
}

.kanban-ai-wrap[data-v-8d8894ee] {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.kanban-ai-btn[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  background: linear-gradient(135deg, #dbeafe 0%, #f8fafc 100%);
  color: #3b82f6;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  position: relative;
  overflow: hidden;
}
.kanban-ai-btn[data-v-8d8894ee]:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.22);
  background: linear-gradient(135deg, #ddd6fe 0%, #fbcfe8 100%);
}
.kanban-ai-btn--active[data-v-8d8894ee] {
  background: linear-gradient(135deg, #93c5fd 0%, #eff6ff 100%);
  color: #1d4ed8;
}
.kanban-ai-btn[data-v-8d8894ee]:disabled {
  cursor: not-allowed;
  opacity: 0.85;
}
.kanban-ai-btn--processing[data-v-8d8894ee] {
  background: linear-gradient(135deg, #ddd6fe 0%, #fbcfe8 100%);
}

/* canal sem provider de IA configurado: visual disabled coerente com
   o botao Card AI do header da descricao (.kanban-main-desc-ai-btn--disabled) */
.kanban-ai-btn--disabled[data-v-8d8894ee],
.kanban-ai-btn[data-v-8d8894ee]:disabled:not(.kanban-ai-btn--processing) {
  opacity: 0.55;
  cursor: not-allowed;
  background: #f9fafb;
  color: #9ca3af;
  border-color: #e5e7eb;
  transform: none;
  box-shadow: none;
}
.kanban-ai-btn--disabled[data-v-8d8894ee]:hover {
  background: #f9fafb;
  border-color: #e5e7eb;
  box-shadow: none;
  transform: none;
}
.kanban-ai-icon-spin[data-v-8d8894ee] {
  animation: kanban-ai-icon-pulse-8d8894ee 1.4s ease-in-out infinite;
}
@keyframes kanban-ai-icon-pulse-8d8894ee {
0%, 100% { transform: scale(1) rotate(0deg); opacity: 0.85;
}
50%      { transform: scale(1.18) rotate(12deg); opacity: 1;
}
}

/* Painel flutuante */
.kanban-ai-menu[data-v-8d8894ee] {
  position: fixed;
  z-index: 10010;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  box-shadow:
    0 4px 6px -1px rgba(15, 23, 42, 0.08),
    0 16px 32px -4px rgba(15, 23, 42, 0.18);
  overflow: hidden;
  padding: 14px;
  animation: kanban-ai-menu-in-8d8894ee 0.16s ease;
  transform-origin: top right;
  /* Flex column: header/inputs/chips/actions ficam fixos. So a area de resposta
     encolhe e ganha scroll quando o conteudo nao cabe no max-height calculado em JS. */
  display: flex;
  flex-direction: column;
}

/* Por padrao todos os filhos diretos NAO encolhem — preserva o footer visivel.
   Excecao: .kanban-ai-response-wrap, que e' a unica area realmente scrollavel. */
.kanban-ai-menu[data-v-8d8894ee] > * {
  flex-shrink: 0;
}
@keyframes kanban-ai-menu-in-8d8894ee {
from { opacity: 0; transform: scale(0.96) translateY(-4px);
}
to   { opacity: 1; transform: scale(1)    translateY(0);
}
}

/* ── Title bar (estilo ClickUp: card title + info + close) ── */
.kanban-ai-title-bar[data-v-8d8894ee] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 2px 0 10px;
  margin-bottom: 12px;
  border-bottom: 1px solid #f1f5f9;
}
.kanban-ai-title-bar-check[data-v-8d8894ee] {
  color: #10b981;
  flex-shrink: 0;
}
.kanban-ai-title-bar-text[data-v-8d8894ee] {
  flex: 1;
  font-size: 12.5px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.kanban-ai-title-bar-btn[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: none;
  border-radius: 5px;
  background: transparent;
  color: #94a3b8;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, color 0.15s ease;
}
.kanban-ai-title-bar-btn[data-v-8d8894ee]:hover {
  background: #f1f5f9;
  color: #1e293b;
}

/* ── Intro (icon + titulo + subtexto, estilo ClickUp Brain) ── */
.kanban-ai-intro[data-v-8d8894ee] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 4px 2px 14px;
}
.kanban-ai-intro-icon[data-v-8d8894ee] {
  color: #3b82f6;
  margin-bottom: 8px;
}
.kanban-ai-intro-title[data-v-8d8894ee] {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
  margin-bottom: 2px;
}
.kanban-ai-intro-subtitle[data-v-8d8894ee] {
  font-size: 12px;
  font-weight: 400;
  color: #64748b;
  line-height: 1.45;
}
.kanban-ai-menu-input-wrap[data-v-8d8894ee] {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 14px;
}
.kanban-ai-menu-input[data-v-8d8894ee] {
  flex: 1;
  height: 36px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 0 68px 0 12px;
  font-size: 13px;
  color: #0f172a;
  background: #f8fafc;
  outline: none;
  transition: border-color 0.15s ease, background 0.15s ease;
  font-family: inherit;
  letter-spacing: normal;
  position: relative;
  /* input por cima do overlay (overlay so' pinta o fundo dos chips). nao esta
     em --with-overlay porque a classe foi removida — overlay agora e' SEMPRE
     transparente com z-index 0. */
  z-index: 1;
  background: transparent;
}

/* overlay: pinta SO' o background dos chips atras do texto real do input.
   IMPORTANTE: display: block (nao flex) — flex transforma cada <span> filho
   em flex item de bloco, quebrando o highlight inline. line-height 36px +
   white-space: pre garante que o texto fique alinhado com o input. */
.kanban-ai-menu-input-overlay[data-v-8d8894ee] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 36px;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 0 68px 0 12px;
  font-size: 13px;
  font-family: inherit;
  letter-spacing: normal;
  color: transparent;
  background: #f8fafc;
  pointer-events: none;
  z-index: 0;
  white-space: pre;
  overflow: hidden;
  display: block;
  line-height: 36px;
  transition: border-color 0.15s ease, background 0.15s ease,
    box-shadow 0.15s ease;
  box-sizing: border-box;
}

/* texto plano do overlay: invisivel — quem mostra texto e' o input por cima.
   IMPORTANTE: forçar letter-spacing/font-feature-settings/font-kerning normal
   tanto aqui quanto no input pra evitar desalinhamento (estilos globais do
   app aplicam letter-spacing: 0.48px em alguns elementos). */
.kanban-ai-menu-input-overlay > span[data-v-8d8894ee],
.kanban-ai-menu-input-overlay[data-v-8d8894ee] {
  color: transparent;
  letter-spacing: normal !important;
  font-kerning: none;
  font-feature-settings: normal;
  font-variant-numeric: normal;
}
.kanban-ai-menu-input[data-v-8d8894ee] {
  letter-spacing: normal !important;
  font-kerning: none;
  font-feature-settings: normal;
  font-variant-numeric: normal;
}

/* foco: pinta a borda no overlay (atras) e some a borda do input (frente).
   bg branco no focus pra dar feedback de "input ativo". */
.kanban-ai-menu-input-wrap:focus-within .kanban-ai-menu-input-overlay[data-v-8d8894ee] {
  border-color: #93c5fd;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.20);
}
.kanban-ai-menu-input-wrap:focus-within .kanban-ai-menu-input[data-v-8d8894ee] {
  border-color: transparent;
  background: transparent;
}

/* chips de mencao: pintura inline atras do texto. Usa OUTLINE (nao box-shadow)
   pra criar respiro visual entre chips adjacentes — outline nao ocupa espaco
   no layout, entao o caret do input continua perfeitamente alinhado, mas
   visualmente "recorta" o chip da cor do fundo do input. */
.kanban-ai-mention-chip[data-v-8d8894ee] {
  display: inline;
  color: transparent;
  border-radius: 3px;
  padding: 1px 0;
  /* outline na cor do bg do input cria gap visual de 2px entre chips
     adjacentes sem deslocar nada no layout */
  outline: 2px solid #f8fafc;
}

/* foco: bg do input vira branco — outline acompanha pra preservar o gap */
.kanban-ai-menu-input-wrap:focus-within .kanban-ai-mention-chip[data-v-8d8894ee] {
  outline-color: #ffffff;
}

/* user: azul claro saturado o suficiente pra contrastar com bg do input */
.kanban-ai-mention-chip--user[data-v-8d8894ee] {
  background: #dbeafe;
}

/* task: indigo claro — diferencia de user pelo tom (mais frio/violeta) */
.kanban-ai-mention-chip--task[data-v-8d8894ee] {
  background: #e0e7ff;
}

/* botao @ — fica a esquerda do send */
.kanban-ai-menu-input-mention[data-v-8d8894ee] {
  position: absolute;
  right: 36px;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
  z-index: 2; /* fica acima do input + overlay */
}
.kanban-ai-menu-input-mention[data-v-8d8894ee]:hover {
  background: #f1f5f9;
  color: #3b82f6;
}

/* foco do input nao precisa pintar borda — quem pinta e' o overlay
   via .kanban-ai-menu-input-wrap:focus-within */
.kanban-ai-menu-input[data-v-8d8894ee]:focus {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}
.kanban-ai-menu-input[data-v-8d8894ee]::-moz-placeholder {
  color: #94a3b8;
}
.kanban-ai-menu-input[data-v-8d8894ee]::placeholder {
  color: #94a3b8;
}
.kanban-ai-menu-input[data-v-8d8894ee]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  background: transparent;
}
.kanban-ai-menu-input-send[data-v-8d8894ee] {
  position: absolute;
  right: 4px;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #3b82f6;
  cursor: pointer;
  transition: background 0.12s ease;
  z-index: 2;
}
.kanban-ai-menu-input-send[data-v-8d8894ee]:hover:not(:disabled) {
  background: #f1f5f9;
}
.kanban-ai-menu-input-send[data-v-8d8894ee]:disabled {
  color: #cbd5e1;
  cursor: not-allowed;
}
.kanban-ai-menu-section-label[data-v-8d8894ee] {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: #94a3b8;
  padding: 8px 6px 4px;
  text-transform: uppercase;
}
.kanban-ai-menu-actions[data-v-8d8894ee] {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

/* itens do menu — estilo lista compacta clickup (~28px de altura) */
.kanban-ai-menu-item[data-v-8d8894ee] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 5px 8px;
  background: transparent;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  text-align: left;
  transition: background-color 0.12s ease;
  color: #1e293b;
  outline: none;
}
.kanban-ai-menu-item[data-v-8d8894ee]:hover:not(:disabled),
.kanban-ai-menu-item--active[data-v-8d8894ee],
.kanban-ai-menu-item[data-v-8d8894ee]:focus-visible {
  background: #f1f5f9;
}
.kanban-ai-menu-item[data-v-8d8894ee]:disabled,
.kanban-ai-menu-item--disabled[data-v-8d8894ee] {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}
.kanban-ai-menu-item-icon[data-v-8d8894ee] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  color: #3b82f6;
  flex-shrink: 0;
  background: transparent;
  border-radius: 4px;
  transition: color 0.12s ease;
}
.kanban-ai-menu-item--active .kanban-ai-menu-item-icon[data-v-8d8894ee],
.kanban-ai-menu-item:hover .kanban-ai-menu-item-icon[data-v-8d8894ee] {
  color: #2563eb;
}
.kanban-ai-menu-item-label[data-v-8d8894ee] {
  flex: 1;
  font-size: 12.5px;
  font-weight: 500;
  color: #1e293b;
  line-height: 1.2;
}
.kanban-ai-menu-item-enter[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 600;
  color: #3b82f6;
  background: #dbeafe;
  border-radius: 5px;
}
/* chevron > no item "Escrever" indicando submenu */
.kanban-ai-menu-item-chev[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  color: #94a3b8;
  flex-shrink: 0;
}
.kanban-ai-menu-item--active .kanban-ai-menu-item-chev[data-v-8d8894ee],
.kanban-ai-menu-item:hover .kanban-ai-menu-item-chev[data-v-8d8894ee] {
  color: #475569;
}

/* ── Sugestões dinâmicas (chips) ── */
.kanban-ai-suggestion-chips[data-v-8d8894ee] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
}
.kanban-ai-suggestion-chip[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  height: 26px;
  font-size: 12px;
  font-weight: 500;
  color: #1d4ed8;
  background: #eff6ff;
  border: 1px solid #dbeafe;
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
  white-space: nowrap;
  line-height: 1;
}
.kanban-ai-suggestion-chip[data-v-8d8894ee]:hover {
  background: #f3e8ff;
  border-color: #ddd6fe;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.12);
}
.kanban-ai-suggestion-chip-icon[data-v-8d8894ee] {
  color: #3b82f6;
  flex-shrink: 0;
}

/* ── Thinking state ── */
.kanban-ai-thinking[data-v-8d8894ee] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 18px 14px;
  border-radius: 10px;
  background: linear-gradient(135deg, #eff6ff 0%, #f8fafc 100%);
  border: 1px solid #dbeafe;
  margin-bottom: 10px;
}
.kanban-ai-thinking-icon[data-v-8d8894ee] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: #ffffff;
  color: #3b82f6;
  flex-shrink: 0;
  box-shadow: 0 1px 3px rgba(59, 130, 246, 0.18);
}
.kanban-ai-thinking-label[data-v-8d8894ee] {
  font-size: 13px;
  font-weight: 500;
  color: #1e40af;
  flex: 1;
}
.kanban-ai-thinking-dots[data-v-8d8894ee] {
  display: inline-flex;
  align-items: flex-end;
  gap: 3px;
  height: 14px;
}
.kanban-ai-thinking-dots span[data-v-8d8894ee] {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #60a5fa;
  animation: kanban-ai-dot-bounce-8d8894ee 1.1s ease-in-out infinite;
}
.kanban-ai-thinking-dots span[data-v-8d8894ee]:nth-child(2) { animation-delay: 0.18s;
}
.kanban-ai-thinking-dots span[data-v-8d8894ee]:nth-child(3) { animation-delay: 0.36s;
}
@keyframes kanban-ai-dot-bounce-8d8894ee {
0%, 80%, 100% { transform: translateY(0); opacity: 0.45;
}
40%           { transform: translateY(-5px); opacity: 1;
}
}

/* Botão "Parar geração" inline no card de thinking */
.kanban-ai-thinking-stop[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #ffffff;
  color: #3b82f6;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.kanban-ai-thinking-stop[data-v-8d8894ee]:hover {
  background: #f5f3ff;
  border-color: #93c5fd;
  color: #1d4ed8;
}

/* ── Response state ── */
.kanban-ai-response-wrap[data-v-8d8894ee] {
  position: relative;
  padding: 12px 12px 8px;
  border-radius: 10px;
  background: linear-gradient(135deg, #eff6ff 0%, #f8fafc 100%);
  border: 1px solid #dbeafe;
  margin-bottom: 12px;
  /* Vira flex-item flexivel: cresce ate o max-height OU ate o que sobrar
     no painel depois dos elementos fixos (header, chips, input, acoes).
     min-height garante que sempre da pra ler ao menos algumas linhas. */
  flex: 1 1 auto;
  min-height: 120px;
  max-height: 380px;
  overflow-y: auto;
  animation: kanban-ai-response-in-8d8894ee 0.22s ease;
}
@keyframes kanban-ai-response-in-8d8894ee {
from { opacity: 0; transform: translateY(4px);
}
to   { opacity: 1; transform: translateY(0);
}
}
.kanban-ai-response-header[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #3b82f6;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.kanban-ai-response-header-icon[data-v-8d8894ee] {
  color: #60a5fa;
}
.kanban-ai-response-content[data-v-8d8894ee] {
  font-size: 13px;
  line-height: 1.55;
  color: #1e293b;
}
.kanban-ai-response-content[data-v-8d8894ee] p { margin: 0.3em 0;
}
.kanban-ai-response-content[data-v-8d8894ee] p:first-child { margin-top: 0;
}
.kanban-ai-response-content[data-v-8d8894ee] p:last-child { margin-bottom: 0;
}
.kanban-ai-response-content[data-v-8d8894ee] ul,
.kanban-ai-response-content[data-v-8d8894ee] ol {
  padding-left: 1.3em;
  margin: 0.4em 0;
}
.kanban-ai-response-content[data-v-8d8894ee] ul { list-style-type: disc;
}
.kanban-ai-response-content[data-v-8d8894ee] ol { list-style-type: decimal;
}
.kanban-ai-response-content[data-v-8d8894ee] li { margin: 0.15em 0;
}
.kanban-ai-response-content[data-v-8d8894ee] strong { color: #0f172a;
}
.kanban-ai-response-content[data-v-8d8894ee] h2,
.kanban-ai-response-content[data-v-8d8894ee] h3 {
  font-weight: 700;
  color: #0f172a;
  margin: 0.5em 0 0.25em;
}
.kanban-ai-response-content[data-v-8d8894ee] h2 { font-size: 1.05em;
}
.kanban-ai-response-content[data-v-8d8894ee] h3 { font-size: 1em;
}
.kanban-ai-response-toolbar[data-v-8d8894ee] {
  display: flex;
  justify-content: flex-start;
  gap: 4px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed #dbeafe;
}
.kanban-ai-response-tool-btn[data-v-8d8894ee] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #3b82f6;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
}
.kanban-ai-response-tool-btn[data-v-8d8894ee]:hover {
  background: #dbeafe;
  color: #1d4ed8;
}
/* thumbs ativos (feedback dado pelo usuario) — verde p/ up, vermelho p/ down */
.kanban-ai-response-tool-btn.is-on[data-v-8d8894ee] {
  background: #dbeafe;
}
.kanban-ai-response-tool-btn.is-on[title="Útil"][data-v-8d8894ee] {
  background: #dcfce7;
  color: #15803d;
}
.kanban-ai-response-tool-btn.is-on[title="Não útil"][data-v-8d8894ee] {
  background: #fee2e2;
  color: #b91c1c;
}
.kanban-ai-menu-input-wrap--response[data-v-8d8894ee] {
  margin-bottom: 12px;
}

.comment-bottom-toolbar[data-v-61d1bd74] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 8px;
  border-top: 1px solid #e5e7eb;
  background: #ffffff;
}
.comment-bottom-toolbar-left[data-v-61d1bd74],
.comment-bottom-toolbar-right[data-v-61d1bd74] {
  display: flex;
  align-items: center;
  gap: 2px;
}
.comment-bottom-toolbar-right[data-v-61d1bd74] {
  gap: 6px;
}
.comment-bottom-btn[data-v-61d1bd74] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 30px;
  min-width: 30px;
  padding: 0 6px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #6b7280;
  cursor: pointer;
  font-size: 13px;
  transition: background 0.12s ease, color 0.12s ease;
}
.comment-bottom-btn[data-v-61d1bd74]:hover:not(:disabled) {
  background: #f3f4f6;
  color: #1f2937;
}
.comment-bottom-btn--active[data-v-61d1bd74] {
  background: #f3f4f6;
  color: #1f2937;
}
.comment-bottom-btn[data-v-61d1bd74]:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.comment-bottom-btn--ai[data-v-61d1bd74] {
  color: #7c3aed;
}
.comment-bottom-btn--ai[data-v-61d1bd74]:hover:not(:disabled) {
  background: #f5f3ff;
  color: #6d28d9;
}
.comment-bottom-btn-text[data-v-61d1bd74] {
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.02em;
}
.comment-bottom-cancel[data-v-61d1bd74] {
  height: 30px;
  padding: 0 12px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #6b7280;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 500;
  transition: background 0.12s ease, color 0.12s ease;
}
.comment-bottom-cancel[data-v-61d1bd74]:hover:not(:disabled) {
  background: #f3f4f6;
  color: #1f2937;
}
.comment-bottom-cancel[data-v-61d1bd74]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.comment-bottom-send[data-v-61d1bd74] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 6px;
  background: #2563eb;
  color: #ffffff;
  cursor: pointer;
  transition: background 0.12s ease, transform 0.1s ease, opacity 0.12s ease;
}
.comment-bottom-send[data-v-61d1bd74]:hover:not(:disabled) {
  background: #1d4ed8;
  transform: translateY(-1px);
}
.comment-bottom-send[data-v-61d1bd74]:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  background: #93c5fd;
}
.comment-bottom-send-spinner[data-v-61d1bd74] {
  animation: comment-spin-61d1bd74 0.8s linear infinite;
}
@keyframes comment-spin-61d1bd74 {
from { transform: rotate(0deg);
}
to   { transform: rotate(360deg);
}
}

/* ── Dropdown de formatação (Teleport pra body, position: fixed) ── */
.comment-bottom-dropdown[data-v-61d1bd74] {
  position: fixed;
  z-index: 100000;
  min-width: 240px;
  padding: 6px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow:
    0 4px 6px -1px rgba(15, 23, 42, 0.08),
    0 12px 28px -4px rgba(15, 23, 42, 0.16);
  animation: comment-bottom-dropdown-in-61d1bd74 0.12s ease;
}
@keyframes comment-bottom-dropdown-in-61d1bd74 {
from { opacity: 0; transform: translateY(4px);
}
to   { opacity: 1; transform: translateY(0);
}
}
.comment-bottom-dropdown-section-label[data-v-61d1bd74] {
  padding: 6px 10px 4px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #94a3b8;
  text-transform: uppercase;
}
.comment-bottom-dropdown-item[data-v-61d1bd74] {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 7px 10px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #1f2937;
  cursor: pointer;
  font-size: 13px;
  text-align: left;
  transition: background 0.12s ease, color 0.12s ease;
}
.comment-bottom-dropdown-item[data-v-61d1bd74]:hover {
  background: #f8fafc;
}
.comment-bottom-dropdown-item--active[data-v-61d1bd74] {
  background: #f5f3ff;
  color: #6d28d9;
}
.comment-bottom-dropdown-item--active .comment-bottom-dropdown-icon[data-v-61d1bd74] {
  color: #6d28d9;
}
.comment-bottom-dropdown-icon[data-v-61d1bd74] {
  flex: 0 0 auto;
  color: #6b7280;
}
.comment-bottom-dropdown-item-label--h1[data-v-61d1bd74] { font-size: 15px; font-weight: 700;
}
.comment-bottom-dropdown-item-label--h2[data-v-61d1bd74] { font-size: 13.5px; font-weight: 700;
}
.comment-bottom-dropdown-item-label--h3[data-v-61d1bd74] { font-size: 13px; font-weight: 600;
}
.comment-bottom-dropdown-item span[data-v-61d1bd74]:not(.comment-bottom-dropdown-shortcut) {
  flex: 1;
}
.comment-bottom-dropdown-shortcut[data-v-61d1bd74] {
  flex: 0 0 auto;
  font-size: 10.5px;
  color: #94a3b8;
  font-weight: 500;
  letter-spacing: 0.02em;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
.comment-bottom-dropdown-divider[data-v-61d1bd74] {
  height: 1px;
  background: #f1f5f9;
  margin: 6px 4px;
}

.comment-bar[data-v-fd3345e1] {
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #ffffff;
  overflow: hidden;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.comment-bar--focused[data-v-fd3345e1] {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.comment-bar--saving[data-v-fd3345e1] {
  opacity: 0.85;
}
.comment-bar-editor[data-v-fd3345e1] {
  padding: 0;
  min-height: 80px;
  max-height: 320px;
  overflow-y: auto;
}

/* Sobrepõe estilos do TextAreaDefault interno pro comportamento minimal */
.comment-bar-editor[data-v-fd3345e1] .text-area-default-ui-wrapper {
  margin: 0;
}
.comment-bar-editor[data-v-fd3345e1] .text-area-default-ui-container {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.comment-bar-editor[data-v-fd3345e1] .text-area-default-ui-container--rich {
  min-height: 80px !important;
  border: none !important;
}
.comment-bar-editor[data-v-fd3345e1] .tiptap-editor-wrap {
  border: none !important;
}
.comment-bar-editor[data-v-fd3345e1] .ProseMirror {
  min-height: 80px !important;
  padding: 12px 14px !important;
  outline: none;
}
.comment-bar-editor[data-v-fd3345e1] .ProseMirror p {
  margin: 0.25em 0;
}

/* ============================================================
   KanbanCardComments — scoped refresh (slate-only minimalism)
   ============================================================ */
.kanban-card-comment-wrapper[data-v-b2190c08] {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  position: relative;
}

/* AI-applied comment glow — preserved intentional effect */
.kanban-card-comment-wrapper--ai-glow[data-v-b2190c08]::after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 12px;
  pointer-events: none;
  background: radial-gradient(
    circle at top right,
    rgba(124, 58, 237, 0.18),
    rgba(236, 72, 153, 0.10) 55%,
    transparent 80%
  );
  box-shadow: 0 0 0 2px rgba(124, 58, 237, 0.35);
  animation: kanban-comment-ai-glow-b2190c08 1.4s ease-out forwards;
  z-index: 0;
}
@keyframes kanban-comment-ai-glow-b2190c08 {
0%   { opacity: 0; transform: scale(0.985);
}
18%  { opacity: 1; transform: scale(1);
}
100% { opacity: 0; transform: scale(1);
}
}
.kanban-overview-comments-sticky[data-v-b2190c08] {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #ffffff;
  padding: 0;
}
.kanban-overview-comments-title[data-v-b2190c08] {
  display: flex;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-bottom: none;
}
.kanban-card-comment-list-area[data-v-b2190c08] {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  min-width: 0;
}
.kanban-card-comment-title[data-v-b2190c08] {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  margin-bottom: 8px;
}
.kanban-card-comment-loading[data-v-b2190c08] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px 16px;
  color: #94a3b8;
  font-size: 12px;
}
.kanban-card-comment-no-permission[data-v-b2190c08] {
  padding: 24px 16px;
  text-align: center;
  color: #94a3b8;
  background: transparent;
  border-radius: 8px;
  border: 1px dashed #e5e7eb;
  font-size: 12px;
  font-style: italic;
  margin: 12px 16px;
}
.kanban-card-comment-no-permission p[data-v-b2190c08] {
  margin: 0;
}
.kanban-card-comment-add-section[data-v-b2190c08] {
  padding: 12px 16px 8px;
  margin-bottom: 0;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
.kanban-card-comment-add-actions[data-v-b2190c08] {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 8px 0 0;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
.kanban-card-comment-add-form[data-v-b2190c08] {
  background: #ffffff;
  /* border: 1px solid #eef2f7; */
  border-radius: 8px;
  padding: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: none;
  transition: border-color 160ms ease, box-shadow 160ms ease;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.kanban-card-comment-add-form[data-v-b2190c08]:focus-within {
  border-color: #cbd5e1;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08);
}
.kanban-card-comment-add-form[data-v-b2190c08] .text-area-default-ui-wrapper {
  margin: 0;
}
.kanban-card-comment-add-form[data-v-b2190c08] .text-area-default-ui-container {
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.kanban-card-comment-add-form[data-v-b2190c08] .ProseMirror img,
.kanban-card-comment-add-form[data-v-b2190c08] .ProseMirror video {
  max-width: min(100%, 240px);
  max-height: 140px;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 6px;
  margin-top: 8px;
}
.kanban-card-comment-add-toolbar[data-v-b2190c08] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 6px 10px;
  border-top: 1px solid #f1f5f9;
  background: #ffffff;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow-x: hidden;
}
.kanban-card-comment-add-toolbar-left[data-v-b2190c08] {
  display: flex;
  align-items: center;
  gap: 4px;
}
.kanban-card-comment-add-toolbar-right[data-v-b2190c08] {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex-wrap: wrap;
}
.kanban-card-comment-toolbar-btn[data-v-b2190c08] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: none;
  background: transparent;
  border-radius: 6px;
  cursor: pointer;
  color: #6b7280;
  transition: all 0.15s ease;
}
.kanban-card-comment-toolbar-btn[data-v-b2190c08]:hover {
  background: #e5e7eb;
  color: #374151;
}
.kanban-card-comment-delete-actions[data-v-b2190c08] {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  padding: 0;
  border-top: none;
  background-color: transparent;
}
@media (max-width: 640px) {
.kanban-card-comment-add-toolbar[data-v-b2190c08] {
    flex-wrap: wrap;
    gap: 8px;
}
}

  /* ===== PRODUCTS SECTION ===== */
.section-full[data-v-5dfd15df] {
  margin-top: 8px;
  padding-top: 24px;
}
.section-toggle[data-v-5dfd15df] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 600;
  color: #1e293b;
  width: 100%;
  text-align: left;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.section-toggle[data-v-5dfd15df]:hover {
  background: #f3f4f6;
  border-color: #d1d5db;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.toggle-icon[data-v-5dfd15df] {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 700;
  color: #3b82f6;
  background: white;
  border-radius: 6px;
  flex-shrink: 0;
}
.toggle-label[data-v-5dfd15df] {
  font-size: 14px;
  flex: 1;
}
.section-link[data-v-5dfd15df] {
  display: flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  color: #1890ff;
  font-size: 14px;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  transition: all 0.2s;
}
.section-link[data-v-5dfd15df]:hover {
  background: rgba(99, 176, 248, 0.06);
}
.section-link .toggle-icon[data-v-5dfd15df] {
  background: none;
  color: #1890ff;
  width: auto;
  height: auto;
  padding: 0;
  font-size: 16px;
  border-radius: 0;
}
.section-link-disabled[data-v-5dfd15df] {
  opacity: 0.85;
  cursor: not-allowed;
}
.section-content-full[data-v-5dfd15df] {
  margin-top: 20px;
  width: 100%;
  padding: 16px;
  overflow-y: visible;
}
.section-content-full[data-v-5dfd15df] .products-table-combobox-wrapper {
  width: 220px;
  max-width: 100%;
}
.section-content-full[data-v-5dfd15df] .products-table-container {
  width: 100%;
  max-width: 100%;
  position: relative;
}
.section-content-full[data-v-5dfd15df] .interactive-table-wrapper {
  width: 100%;
  min-width: 600px;
  overflow: visible;
}
.section-content-full[data-v-5dfd15df] .combo-box,
.section-content-full[data-v-5dfd15df] .combobox-wrapper {
  position: relative;
  z-index: 100;
}
.section-content-full[data-v-5dfd15df] .combo-dropdown {
  position: absolute;
  z-index: 1000;
  min-width: 280px;
}
.loading-state[data-v-5dfd15df] {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 20px;
  gap: 16px;
}
.spinner[data-v-5dfd15df] {
  width: 40px;
  height: 40px;
  border: 3px solid #f3f4f6;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin-5dfd15df 0.8s linear infinite;
}
@keyframes spin-5dfd15df {
to { transform: rotate(360deg);
}
}
.edit-form[data-v-5dfd15df] {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.form-row--readonly[data-v-5dfd15df] {
  opacity: 0.58;
}
.section-full--readonly[data-v-5dfd15df] {
  opacity: 0.58;
}
.section-full--readonly .section-toggle[data-v-5dfd15df],
.section-full--readonly .section-content-full[data-v-5dfd15df] {
  pointer-events: none;
}
.form-row[data-v-5dfd15df] {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.form-label[data-v-5dfd15df] {
  min-width: 160px;
  font-size: 14px;
  font-weight: 500;
  color: #374151;
  text-align: right;
  padding-top: 10px;
}
.form-input[data-v-5dfd15df] {
  flex: 1;
  padding: 10px 14px;
  border: 1.5px solid #e2e8f0;
  border-radius: 8px;
  font-size: 14px;
}
.form-input[data-v-5dfd15df]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.money-wrapper[data-v-5dfd15df] {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
  gap: 0;
}
.money-wrapper--blocked[data-v-5dfd15df] {
  cursor: not-allowed;
}
.money-wrapper--blocked .money-input[data-v-5dfd15df] {
  cursor: not-allowed;
}
.money-input[data-v-5dfd15df] {
  flex: 1;
  padding-right: 40px !important;
  text-align: left;
}
.money-icon[data-v-5dfd15df] {
  position: absolute;
  right: 12px;
  color: #515159;
  pointer-events: none;
  flex-shrink: 0;
}
.calendar-wrapper[data-v-5dfd15df] {
  flex: 1;
}
.checkbox-wrapper[data-v-5dfd15df] {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
}
.checkbox[data-v-5dfd15df] {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

/* Campos obrigatórios */
.form-input.required-field[data-v-5dfd15df],
.money-input.required-field[data-v-5dfd15df] {
  border-left: 4px solid #ef4444 !important;
  padding-left: 12px;
}
.calendar-wrapper.required-field[data-v-5dfd15df] .modern-calendar-input {
  border-left: 4px solid #ef4444 !important;
  padding-left: 12px;
}
.required-field[data-v-5dfd15df] .combo-trigger,
.required-field[data-v-5dfd15df] .combo-withicons-trigger,
.required-field[data-v-5dfd15df] .cbv2-trigger {
  border-left: 4px solid #ef4444 !important;
  padding-left: 12px !important;
}

/* Disable edit mode in ComboBox for priorities */
.edit-form[data-v-5dfd15df] .combo-edit-input-wrapper,
.edit-form[data-v-5dfd15df] .combo-edit-btn,
.edit-form[data-v-5dfd15df] .combo-edit-actions {
  display: none !important;
}
.edit-form[data-v-5dfd15df] .combo-option.editing {
  background: transparent !important;
  cursor: pointer !important;
}

/* ===== RICH EDITOR WRAPPER ===== */
.edit-form-rich-editor-wrapper[data-v-5dfd15df] {
  flex: 1;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .quillWrapper {
  display: flex;
  flex-direction: column;
  border: 1.5px solid #e2e8f0;
  border-radius: 8px;
  background: white;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .quillWrapper:hover {
  border-color: #cbd5e1;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .quillWrapper:focus-within {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Toolbar - oculta quando não expandido */
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar {
  border: none !important;
  border-bottom: 1px solid #e2e8f0 !important;
  padding: 0 !important;
  margin: 0 !important;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.2s ease;
  background: #fafafa;
}
.edit-form-rich-editor-wrapper.is-expanded[data-v-5dfd15df] .ql-toolbar {
  max-height: 32px;
  opacity: 1;
  padding: 4px 8px !important;
  overflow: visible;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar button {
  width: 22px;
  height: 22px;
  padding: 2px;
  margin: 0 1px;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar .ql-stroke {
  stroke-width: 2;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar button svg {
  width: 14px !important;
  height: 14px !important;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar button:hover {
  background: #e5e7eb;
  border-radius: 3px;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-toolbar button.ql-active {
  background: #dbeafe;
  border-radius: 3px;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-formats {
  margin-right: 6px !important;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-formats:last-child {
  margin-right: 0 !important;
}

/* Container - altura inicial de input */
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-container {
  border: none !important;
  font-size: 14px;
  font-family: inherit;
  min-height: 40px;
  max-height: 40px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.edit-form-rich-editor-wrapper.is-expanded[data-v-5dfd15df] .ql-container {
  min-height: 120px;
  max-height: 300px;
  overflow-y: auto;
}

/* Editor */
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-editor {
  padding: 10px 14px;
  min-height: inherit;
  color: #1e293b;
  line-height: 1.6;
  font-size: 14px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df] .ql-editor.ql-blank::before {
  color: #9ca3af;
  font-style: normal;
  left: 14px;
  font-size: 14px;
}

/* Quando não expandido, centraliza o placeholder verticalmente */
.edit-form-rich-editor-wrapper[data-v-5dfd15df]:not(.is-expanded) .ql-editor {
  display: flex;
  align-items: center;
}
.edit-form-rich-editor-wrapper[data-v-5dfd15df]:not(.is-expanded) .ql-editor.ql-blank::before {
  position: static;
  transform: none;
}

/* ===== PRIVACY SWITCH ===== */
.privacy-switch-wrapper[data-v-5dfd15df] {
  display: flex;
  /*align-items: center;*/
  gap: 10px;
  white-space: nowrap;
}
.privacy-switch-wrapper.is-disabled[data-v-5dfd15df] {
  opacity: 0.5;
}
.privacy-switch-compact[data-v-5dfd15df] {
  gap: 8px;
}
.privacy-switch[data-v-5dfd15df] {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  flex-shrink: 0;
}
.privacy-switch-small[data-v-5dfd15df] {
  width: 36px;
  height: 20px;
}
.privacy-switch input[data-v-5dfd15df] {
  opacity: 0;
  width: 0;
  height: 0;
}
.privacy-slider[data-v-5dfd15df] {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #cbd5e1;
  transition: 0.3s;
  border-radius: 24px;
}
.privacy-slider[data-v-5dfd15df]:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: 0.3s;
  border-radius: 50%;
}
.privacy-switch-small .privacy-slider[data-v-5dfd15df]:before {
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
}
.privacy-switch input:checked + .privacy-slider[data-v-5dfd15df] {
  background-color: #3b82f6;
}
.privacy-switch input:checked + .privacy-slider[data-v-5dfd15df]:before {
  transform: translateX(20px);
}
.privacy-switch-small input:checked + .privacy-slider[data-v-5dfd15df]:before {
  transform: translateX(16px);
}
.privacy-switch input:disabled + .privacy-slider[data-v-5dfd15df] {
  cursor: not-allowed;
}
.privacy-label[data-v-5dfd15df] {
  font-size: 12px;
  font-weight: 500;
  color: #64748b;
}

/* ===== CARD TYPE COMBO BOX WITH ICONS ===== */
.kanban-card-type-combo-wrapper[data-v-5dfd15df] {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
}
.kanban-card-type-combo-wrapper[data-v-5dfd15df] .combo-box {
  flex: 1;
  min-width: 0;
}
.kanban-card-type-combo-display[data-v-5dfd15df] {
  position: absolute;
  left: 12px;
  right: 32px;
  display: flex;
  align-items: center;
  gap: 8px;
  pointer-events: none;
  z-index: 2;
  overflow: hidden;
}
.kanban-card-type-combo-name[data-v-5dfd15df] {
  font-size: 14px;
  color: #374151;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kanban-card-type-combo-display[data-v-5dfd15df] svg,
.kanban-card-type-combo-display[data-v-5dfd15df] .icon-wrapper svg {
  flex-shrink: 0;
  fill: currentColor;
}

/* Esconde o valor padrão apenas quando há uma seleção */
.kanban-card-type-combo-wrapper.has-selection[data-v-5dfd15df] .combo-value-container {
  opacity: 0;
  pointer-events: none;
}
.kanban-card-type-combo-wrapper.has-selection[data-v-5dfd15df] .combo-value {
  display: none;
}
.kanban-card-type-combo-wrapper[data-v-5dfd15df] .combo-option-color-indicator {
  display: none;
}
.kanban-card-type-combo-wrapper[data-v-5dfd15df] .combo-option {
  display: flex;
  align-items: center;
  gap: 8px;
}
