:root {
    --primary-color: #2563eb;
    --secondary-color: #1e293b;
    --bg-color: #f8fafc;
    --white: #ffffff;
    --danger: #e74c3c;
}

* { margin: 0; padding: 0; box-sizing: border-box; font-family: sans-serif; }

body { background-color: var(--bg-color); padding-bottom: 50px; }

header { background: var(--secondary-color); color: white; padding: 2rem; text-align: center; margin-bottom: 2rem; }

.kanban-container { display: flex; gap: 20px; padding: 0 20px; justify-content: center; flex-wrap: wrap; }

.column { background: #e2e8f0; border-radius: 8px; width: 350px; padding: 15px; min-height: 500px; }

.column h2 { margin-bottom: 15px; color: var(--secondary-color); font-size: 1.1rem; text-transform: uppercase; }

.task-list { min-height: 450px; border-radius: 4px; transition: 0.2s; }

/* Interatividade Drag and Drop */
.drag-over-column { background-color: rgba(37, 99, 235, 0.1) !important; border: 2px dashed var(--primary-color); }

.task-card { 
    background: var(--white); padding: 15px; border-radius: 6px; margin-bottom: 12px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); cursor: grab; transition: opacity 0.2s;
}

.task-card:active { cursor: grabbing; }

.is-dragging { opacity: 0.4; border: 2px dashed var(--primary-color); }

/* Prioridades e Prazos */
.task-card[data-priority="high"] { border-left: 6px solid var(--danger); }

.task-card.overdue { background-color: #fff1f2; border: 1px solid var(--danger); }

/* Melhorando a captura do drop */
.task-list * { pointer-events: none; }
.task-card { pointer-events: auto; }