/* TABLE WRAPPER */
.tasks-header {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 16px;
}
.tasks-header-center {
  display: flex;
  align-items: center;
  gap: 14px;
}
.tasks-header-center h2 { margin: 0; color: #2a2962; }
.key .chip { padding: 4px 8px; border-radius: 12px; font-size: 0.8rem; }
.key .green { background: #d1fae5; color: #065f46; }
.key .yellow { background: #fef3c7; color: #92400e; }
.key .red { background: #fee2e2; color: #991b1b; }

.tasks-table-wrap { background:#fff; border-radius:12px; box-shadow:0 3px 10px rgba(0,0,0,.08); }
.tasks-table { width:100%; border-collapse:separate; border-spacing:0; }
.tasks-table th, .tasks-table td { padding:12px 10px; border-bottom:1px solid #eef0f4; }
.tasks-table thead th { background:#fafafa; color:#444; position:sticky; top:0; z-index:1; }
.tasks-table tbody tr:hover { background:#f9fafc; }
.cell-center { text-align:center; }

.col-drag { width:34px; }
.drag-handle { cursor:grab; text-align:center; color:#777; }
.dragging { opacity:0.6; }

.col-done { width:90px; }
.col-ppe { width:140px; }
.col-color { width:120px; }
.col-actions { width:90px; }

.desc-input { width:100%; padding:8px 10px; border:1px solid #ddd; border-radius:8px; }

.toggle { display:flex; align-items:center; gap:8px; justify-content:center; }
.ppe-tag { display:inline-block; padding:4px 8px; border-radius:10px; font-size:.85rem; }
.ppe-tag.on { background:#e0f2fe; color:#075985; }
.ppe-tag.off { background:#f1f5f9; color:#334155; }

.color-btn { padding:6px 10px; border:none; border-radius:8px; cursor:pointer; font-weight:600; }
.color-btn.green { background:#d1fae5; color:#065f46; }
.color-btn.yellow { background:#fef3c7; color:#92400e; }
.color-btn.red { background:#fee2e2; color:#991b1b; }

.row-green { background: #f7fffb; }
.row-yellow { background: #fffdf5; }
.row-red { background: #fff8f8; }

.btn-undo { margin-left:8px; padding:6px 10px; border:none; border-radius:10px; background:#fde68a; color:#1f2937; cursor:pointer; }
.btn-trash { background:none; border:none; font-size:1rem; cursor:pointer; }

.tasks-footer { display:none; margin:14px 0; }
.tasks-footer.show { display:flex; justify-content:flex-start; }
.btn-add { background:#e0e7ff; border:none; border-radius:18px; padding:8px 14px; cursor:pointer; }

.btn-pill { background:#6a5acd; color:#fff; border:none; border-radius:22px; padding:8px 16px; cursor:pointer; }
.btn-ghost { background:#fff; border:1px solid #d1d5db; border-radius:10px; padding:8px 12px; cursor:pointer; }
.btn-danger { background:#dc2626; color:#fff; border:none; border-radius:10px; padding:8px 12px; cursor:pointer; }
.btn-secondary { background:#f3f4f6; border:1px solid #e5e7eb; border-radius:10px; padding:8px 12px; cursor:pointer; }

.signoff-wrap { margin-top:16px; }
.signoff-card { background:#fff; border-radius:12px; padding:14px; box-shadow:0 3px 10px rgba(0,0,0,.08); display:flex; align-items:center; gap:12px; justify-content:space-between; }
.signoff-card.ready { border-left:4px solid #10b981; }
.signoff-card.signed { border-left:4px solid #6b7280; }

.modal { position:fixed; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.3); }
.modal[hidden] { display:none; }
.modal-card { background:#fff; border-radius:12px; padding:18px; width:320px; box-shadow:0 10px 25px rgba(0,0,0,.2); }
.modal-actions { display:flex; gap:8px; justify-content:flex-end; margin-top:12px; }
