*{box-sizing:border-box}:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}.app{min-height:100vh;padding:48px}.page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;display:flex}.eyebrow{letter-spacing:.14em;color:#6b7280;margin:0 0 8px;font-size:12px;font-weight:700}.page-header h1{color:#111827;margin:0;font-size:36px}.subtitle{color:#6b7280;margin:10px 0 0}.new-task-button{font:inherit;color:#fff;cursor:pointer;background:#111827;border:none;border-radius:10px;padding:12px 18px;font-weight:700}.new-task-button:hover{opacity:.88}.board{grid-template-columns:repeat(4,minmax(240px,1fr));gap:18px;padding-bottom:16px;display:grid;overflow-x:auto}.column{background:#f9fafb;border:1px solid #e5e7eb;border-radius:16px;min-height:480px;padding:16px}.column-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.column-header h2{color:#1f2937;margin:0;font-size:16px}.task-count{color:#4b5563;background:#e5e7eb;border-radius:50%;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.empty-state{text-align:center;border:2px dashed #d1d5db;border-radius:12px;align-content:center;place-items:center;min-height:130px;padding:20px;display:grid}.empty-state p{color:#4b5563;margin:0 0 5px;font-weight:700}.empty-state span{color:#9ca3af;font-size:13px}.task-list{gap:12px;display:grid}.task-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000d}.task-card h3{color:#1f2937;margin:0 0 12px;font-size:15px}.task-card span{color:#4b5563;background:#f3f4f6;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-block}.task-card{cursor:grab;touch-action:none}.task-card:active{cursor:grabbing}.task-card-dragging{box-shadow:0 12px 30px #0000002e}.column{transition:border-color .2s,background-color .2s}.column-over{background:#eef2ff;border-color:#6366f1}.error-message{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:24px;padding:14px 16px}.task-description{color:#6b7280;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 14px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.task-card-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.priority-badge{text-transform:capitalize;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-block}.priority-low{color:#166534;background:#dcfce7}.priority-normal{color:#1d4ed8;background:#dbeafe}.priority-high{color:#b91c1c;background:#fee2e2}.due-date{color:#6b7280;font-size:11px}.modal-backdrop{z-index:2000;background:#1118278c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(100%,560px);padding:26px;box-shadow:0 24px 70px #00000040}.modal-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.modal-header h2{color:#111827;margin:0}.close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0;font-size:30px;line-height:1}.form-field{gap:8px;margin-bottom:18px;display:grid}.form-field>span{color:#374151;font-size:13px;font-weight:700}.form-field input,.form-field textarea,.form-field select{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:10px;outline:none;width:100%;padding:11px 12px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.form-field textarea{resize:vertical}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.modal-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.secondary-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:11px 16px;font-weight:700}.new-task-button:disabled{cursor:not-allowed;opacity:.5}@media (width<=800px){.app{padding:24px}.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.board{grid-template-columns:repeat(4,280px)}}
