@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary-color:#4f46e5;--primary-hover:#4338ca;--bg-color:#f3f4f6;--card-bg:#ffffffe6;--text-dark:#1f2937;--text-light:#6b7280;--border-color:#e5e7eb;--status-todo-bg:#fef3c7;--status-todo-text:#b45309;--status-inprogress-bg:#dbeafe;--status-inprogress-text:#1d4ed8;--status-done-bg:#d1fae5;--status-done-text:#047857;--danger:#ef4444;--danger-hover:#dc2626}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,sans-serif}body{background-color:var(--bg-color);color:var(--text-dark);background:linear-gradient(135deg,#f3f4f6 0%,#e5e7eb 100%);min-height:100vh;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.btn{cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary-color);color:#fff;box-shadow:0 4px 6px -1px #4f46e533}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:var(--danger-hover)}.btn-outline{border:1px solid var(--border-color);color:var(--text-dark);background-color:#0000}.btn-outline:hover{background-color:#f9fafb}.glass-panel{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #fff3;border-radius:1rem;box-shadow:0 10px 15px -3px #0000000d}.navbar{border-bottom:1px solid var(--border-color);z-index:10;background-color:#fff;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.nav-brand{color:var(--primary-color);align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;display:flex}.nav-controls{align-items:center;gap:1rem;display:flex}.role-selector{border:1px solid var(--border-color);cursor:pointer;background-color:#fff;border-radius:.5rem;outline:none;padding:.5rem;font-size:.875rem}.role-selector:focus{border-color:var(--primary-color)}.container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{font-size:1.5rem;font-weight:700}.dashboard-table-container{border-radius:1rem;overflow-x:auto}.task-table{border-collapse:collapse;background:#fff;width:100%}.task-table th,.task-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:1rem}.task-table th{color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;background-color:#f9fafb;font-size:.875rem;font-weight:600}.task-table tr:hover td{background-color:#f9fafb}.task-title-cell{color:var(--text-dark);font-weight:600}.kanban-board{align-items:flex-start;gap:1.5rem;min-height:calc(100vh - 200px);padding-bottom:1rem;display:flex;overflow-x:auto}.kanban-column{border:1px dashed var(--border-color);background-color:#f9fafbb3;border-radius:1rem;flex-direction:column;flex:1;gap:1rem;min-width:320px;height:100%;min-height:500px;padding:1rem;display:flex}.column-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:.5rem;font-weight:600;display:flex}.task-count{background-color:#e5e7eb;border-radius:1rem;padding:.125rem .5rem;font-size:.75rem}.task-card{border:1px solid var(--border-color);cursor:grab;background:#fff;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px -1px #0000000d}.task-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.task-card:active{cursor:grabbing}.task-header{justify-content:space-between;align-items:flex-start;display:flex}.task-title{font-size:1rem;font-weight:600}.task-desc{color:var(--text-light);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.4;display:-webkit-box;overflow:hidden}.task-meta{color:var(--text-light);justify-content:space-between;align-items:center;margin-top:.5rem;font-size:.75rem;display:flex}.task-meta-item{align-items:center;gap:.25rem;display:flex}.assignee-avatar{background-color:var(--primary-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:600;display:flex}.status-badge{border-radius:1rem;align-items:center;gap:.25rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-todo{background-color:var(--status-todo-bg);color:var(--status-todo-text)}.status-inprogress{background-color:var(--status-inprogress-bg);color:var(--status-inprogress-text)}.status-done{background-color:var(--status-done-bg);color:var(--status-done-text)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:1rem;width:100%;max-width:500px;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title{font-size:1.25rem;font-weight:600}.close-btn{cursor:pointer;color:var(--text-light);background:0 0;border:none}.close-btn:hover{color:var(--text-dark)}.modal-body{padding:1.5rem}.form-group{margin-bottom:1rem}.form-label{margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.form-control{border:1px solid var(--border-color);border-radius:.5rem;outline:none;width:100%;padding:.75rem;font-size:.875rem;transition:border-color .2s}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e51a}textarea.form-control{resize:vertical;min-height:100px}.modal-footer{border-top:1px solid var(--border-color);background-color:#f9fafb;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.action-buttons{gap:.5rem;display:flex}.icon-btn{cursor:pointer;color:var(--text-light);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.35rem;display:inline-flex}.icon-btn:hover{color:var(--text-dark);background-color:#e5e7eb}.empty-state{text-align:center;color:var(--text-light);padding:3rem 1rem}
