/* kanban.css — Estilos do Board Kanban
 * Extraído automaticamente de index.html
 */

    /* ── KANBAN ── */
    .kanban-board {
      display: flex;
      gap: 14px;
      overflow-x: auto;
      padding-bottom: 12px;
      flex: 1;
      align-items: flex-start;
    }

    .kanban-col {
      min-width: 230px;
      max-width: 230px;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      display: flex;
      flex-direction: column;
      max-height: calc(100vh - 180px);
    }

    .kanban-col-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px 14px;
      border-bottom: 1px solid var(--border);
      position: sticky;
      top: 0;
      background: var(--bg2);
      border-radius: var(--radius) var(--radius) 0 0;
      z-index: 1;
    }

    .kanban-col-title {
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.6px;
    }

    .kanban-col-count {
      background: var(--surface2);
      border: 1px solid var(--border2);
      border-radius: 99px;
      font-size: 11px;
      font-weight: 700;
      padding: 1px 8px;
      color: var(--text2);
    }

    .kanban-cards {
      overflow-y: auto;
      padding: 10px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      min-height: 60px;
    }

    .kanban-cards.drag-over {
      background: rgba(124, 92, 252, 0.06);
      border-radius: 0 0 var(--radius) var(--radius);
    }

    .kcard {
      background: var(--bg2);
      border: 1px solid var(--border2);
      border-radius: 10px;
      padding: 12px;
      cursor: grab;
      transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
      user-select: none;
    }

    .kcard:hover {
      border-color: var(--accent);
      box-shadow: 0 4px 16px rgba(124, 92, 252, 0.2);
    }

    .kcard.dragging {
      opacity: 0.4;
      transform: rotate(2deg);
      cursor: grabbing;
    }

    .kcard-title {
      font-weight: 600;
      font-size: 13px;
      margin-bottom: 5px;
    }

    .kcard-company {
      font-size: 11.5px;
      color: var(--text2);
      margin-bottom: 8px;
    }

    .kcard-meta {
      display: flex;
      gap: 6px;
      flex-wrap: wrap;
      align-items: center;
    }

    .kcard-valor {
      font-size: 12px;
      font-weight: 700;
      color: var(--green);
    }

    .kcard-actions {
      display: flex;
      gap: 4px;
      margin-top: 8px;
      justify-content: flex-end;
    }

    .kcard-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 4px;
      background: none;
      border: 1px solid var(--border);
      border-radius: 6px;
      color: var(--text2);
      font-size: 12.5px;
      font-weight: 500;
      padding: 4px 10px;
      cursor: pointer;
      transition: all var(--transition);
      height: 28px;
    }
    .kcard-btn i {
      font-size: 16px;
    }

    .kcard-btn:hover {
      background: var(--surface2);
      color: var(--text);
      border-color: var(--border2);
    }

    .kanban-add-btn {
      margin: 8px;
      width: calc(100% - 16px);
      background: none;
      border: 1px dashed var(--border2);
      border-radius: var(--radius-sm);
      color: var(--text3);
      padding: 8px;
      cursor: pointer;
      font-size: 12px;
      transition: all var(--transition);
    }

    .kanban-add-btn:hover {
      border-color: var(--accent);
      color: var(--accent2);
      background: rgba(124, 92, 252, 0.06);
    }

    /* Col accent colors */
    .kanban-col[data-col="Prospecção"] .kanban-col-title {
      color: var(--text2);
    }

    .kanban-col[data-col="Contato"] .kanban-col-title {
      color: var(--blue);
    }

    .kanban-col[data-col="Proposta"] .kanban-col-title {
      color: var(--yellow);
    }

    .kanban-col[data-col="Negociação"] .kanban-col-title {
      color: var(--orange);
    }

    .kanban-col[data-col="Fechado"] .kanban-col-title {
      color: var(--green);
    }

    .kanban-col[data-col="Perdido"] .kanban-col-title {
      color: var(--red);
    }

      /* Kanban: scroll horizontal nativo (não empilha) */
      .kanban-board {
        flex-direction: row;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        padding-bottom: 12px;
        gap: 12px;
      }
      .kanban-col {
        min-width: 280px;
        max-width: 280px;
        scroll-snap-align: start;
        flex-shrink: 0;
      }

      /* Formulários: 1 coluna */
      .form-row.cols-2,
      .form-row.cols-3 {
        grid-template-columns: 1fr;
      }

      /* Touch targets — nav-item  (btn já tem min-height global) */
      .nav-item {
        min-height: 44px;
      }

      /* Hamburguer aparece em mobile em todas as pages */
      .page-hamburger { display: flex; }

      /* Próximos projetos: stack */
      .upcoming-event {
        flex-wrap: wrap;
      }

      /* Modal overlay em mobile */
      .modal-overlay {
        flex-direction: column;
        padding: 10px;
        gap: 16px;
        align-items: stretch;
        justify-content: flex-start;
        overflow-y: auto;
      }
      .modal {
        max-height: none;
        margin-top: 50px;
        width: 100%;
      }
      .modal-footer {
        flex-direction: row;
        width: 100%;
        padding-bottom: 24px;
      }
      .modal-footer .btn { flex: 1; justify-content: center; }

      /* Sidebar footer oculta em mobile */
      .sidebar-footer .btn-hide-values { display: none !important; }

      /* Colunas ocultas na tabela de eventos em mobile */
      .table-eventos td:nth-child(3),
      .table-eventos th:nth-child(3) { display: none; }

      /* Admin tabs: scroll horizontal para não transbordar */
      .admin-tabs {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
      }

      /* Toolbar do Financeiro: empilha filtros */
      .table-toolbar {
        flex-wrap: wrap;
        gap: 8px;
      }

      /* Agenda: células compactas */
      .cal-cell {
        min-height: 56px;
        padding: 4px;
      }
      .cal-cell-num {
        font-size: 11px;
        width: 22px;
        height: 22px;
      }
      .cal-cell-status-badge { display: none; }
      .cal-event { font-size: 9px; }
      .cal-day-name { font-size: 9px; padding: 8px 2px; }

      /* BIA: padding compacto */
      .bia-chat-container {
        padding: 16px;
      }
      .bia-input-area {
        padding: 12px 16px;
      }
      .bia-suggestions {
        padding: 0 16px 12px;
      }

      /* Toast: full-width + safe area iOS */
      #toast-container {
        bottom: calc(16px + env(safe-area-inset-bottom, 0px));
        right: 12px;
        left: 12px;
        max-width: 100%;
      }
      .toast { width: 100%; }
    }

    /* Tablet */
    @media (max-width: 1024px) and (min-width: 769px) {
      :root { --sidebar-w: 200px; }
      .stat-grid { grid-template-columns: repeat(2, 1fr); }
    }
