@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600&display=swap";*{box-sizing:border-box}html,body,#root{height:100%}body{color:#1c1f2a;-webkit-font-smoothing:antialiased;background:#f4f5f8;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{font-family:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--accent:#4f46e5;--accent-dark:#3730a3;--surface:#fff;--surface-muted:#eef0f5;--border:#e1e4ec;--text:#1c1f2a;--text-muted:#676e7e;--danger:#b91c1c;--danger-bg:#fdecec;--radius:10px}.app{max-width:1200px;margin:0 auto;padding:32px 24px 64px}.app-header{align-items:baseline;gap:12px;margin-bottom:20px;display:flex}.app-header h1{letter-spacing:-.02em;margin:0;font-family:Space Grotesk,Inter,sans-serif;font-size:28px;font-weight:700}.app-subtitle{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:14px}.state-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100%;padding:24px;display:flex}.banner{border-radius:var(--radius);margin-bottom:16px;padding:12px 16px;font-size:14px}.banner-error{background:var(--danger-bg);color:var(--danger);border:1px solid #f3c6c6}.filter-bar{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.filter-group{flex-direction:column;gap:4px;display:flex}.filter-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.filter-bar select,.filter-bar input{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:200px;padding:8px 12px;font-size:14px}.board{align-items:flex-start;gap:20px;padding-bottom:12px;display:flex;overflow-x:auto}.column{background:var(--surface-muted);border-radius:14px;flex:300px;min-width:300px;padding:14px;transition:background .15s,box-shadow .15s}.column-drag-over{box-shadow:inset 0 0 0 2px var(--accent);background:#e4e2fb}.column-header{justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px;display:flex}.column-header h2{margin:0;font-size:15px;font-weight:600}.column-count{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}.column-tasks{flex-direction:column;gap:10px;min-height:40px;display:flex}.column-empty{color:var(--text-muted);margin:0;padding:12px 4px;font-size:13px}.add-task-button{border:1px dashed var(--border);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;margin-top:12px;padding:9px;font-size:13px;font-weight:500}.add-task-button:hover{border-color:var(--accent);color:var(--accent);background:#4f46e50d}.task-card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);cursor:grab;padding:12px 14px;box-shadow:0 1px 2px #1414280a}.task-card:active{cursor:grabbing}.task-card-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.task-title{margin:0;font-size:14px;font-weight:600;line-height:1.35}.task-description{color:var(--text-muted);margin:0 0 10px;font-size:13px;line-height:1.4}.task-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.move-select{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:6px;max-width:140px;padding:5px 6px;font-size:12px}.task-card-actions{gap:4px;display:flex}.icon-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:12px}.icon-button:hover{background:var(--surface-muted);color:var(--text)}.icon-button.danger:hover{background:var(--danger-bg);color:var(--danger)}.priority-tag{white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.priority-low{color:#52596b;background:#eef0f5}.priority-medium{color:#92400e;background:#fef3c7}.priority-high{color:#b91c1c;background:#fee2e2}.modal-backdrop{z-index:10;background:#14162273;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:14px;width:100%;max-width:440px;padding:24px;box-shadow:0 20px 50px #14142840}.modal h2{margin:0 0 16px;font-family:Space Grotesk,sans-serif;font-size:18px}.modal form{flex-direction:column;gap:6px;display:flex}.modal label{color:var(--text-muted);margin-top:10px;font-size:12px;font-weight:600}.modal input,.modal textarea,.modal select{border:1px solid var(--border);resize:vertical;border-radius:8px;padding:9px 10px;font-family:inherit;font-size:14px}.field-error{color:var(--danger);margin:4px 0 0;font-size:12px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.primary-button,.secondary-button{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:9px 16px;font-size:14px;font-weight:600}.primary-button{background:var(--accent);color:#fff}.primary-button:hover{background:var(--accent-dark)}.primary-button:disabled{opacity:.6;cursor:default}.secondary-button{border-color:var(--border);color:var(--text);background:0 0}.secondary-button:hover{background:var(--surface-muted)}@media (width<=640px){.board{flex-direction:column}.column{min-width:0}}
