*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.App{min-height:100vh}.loading{font-size:1.2rem;height:100vh}.auth-container,.loading{align-items:center;display:flex;justify-content:center}.auth-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0000001a;max-width:400px;padding:2rem;width:100%}.auth-card h2{color:#333;font-size:1.8rem;margin-bottom:.5rem;text-align:center}.auth-subtitle{color:#666;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.form-group input{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.auth-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem;transition:opacity .3s;width:100%}.auth-button:hover:not(:disabled){opacity:.9}.auth-button:disabled{cursor:not-allowed;opacity:.6}.auth-link{color:#666;margin-top:1.5rem;text-align:center}.auth-link a{color:#667eea;text-decoration:none}.auth-link a:hover{text-decoration:underline}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:5px;color:#c33;margin-bottom:1rem;padding:.75rem}.success-message{background-color:#efe;border:1px solid #cfc;color:#363}.dashboard{display:flex;min-height:100vh}.sidebar{background:#2c3e50;color:#fff;padding:1.5rem 0;width:250px}.sidebar-header{border-bottom:1px solid #34495e;padding:0 1.5rem 1.5rem}.sidebar-header h2{color:#ecf0f1;font-size:1.5rem}.sidebar-nav{padding:1rem 0}.sidebar-nav a{color:#bdc3c7;display:block;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s}.sidebar-nav a.active,.sidebar-nav a:hover{background-color:#34495e;color:#ecf0f1}.main-content{background-color:#ecf0f1;flex:1 1;padding:2rem}.header{border-bottom:1px solid #bdc3c7;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.header,.user-info{align-items:center;display:flex}.user-info{gap:1rem}.logout-btn{background-color:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem}.logout-btn:hover{background-color:#c0392b}.card{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.card-title{color:#2c3e50;font-size:1.25rem;font-weight:600}.btn{border:none;border-radius:5px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .3s}.btn-primary{background-color:#3498db;color:#fff}.btn-primary:hover{background-color:#2980b9}.btn-success{background-color:#27ae60;color:#fff}.btn-success:hover{background-color:#219a52}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (max-width:768px){.dashboard{flex-direction:column}.sidebar{width:100%}.grid-2,.grid-3{grid-template-columns:1fr}.main-content{padding:1rem}}.status-badge{border-radius:20px;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.completed{background-color:#d1ecf1;color:#0c5460}.project-stats{border-bottom:1px solid #eee;border-top:1px solid #eee;justify-content:space-around;margin:1rem 0;padding:1rem 0}.stat{text-align:center}.stat-number{color:#2c3e50;display:block;font-size:1.5rem;font-weight:700}.stat-label{color:#666;font-size:.8rem}.project-footer{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.created-date{color:#666;font-size:.8rem}.create-project-form textarea{font-family:inherit;resize:vertical}.create-project-form select,.create-project-form textarea{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;width:100%}.create-project-form select{background-color:#fff}.btn-outline{background-color:initial}.btn-outline:hover{background-color:#3498db}.project-card{border-left:4px solid #3498db;cursor:pointer;margin-bottom:1rem;transition:transform .2s,box-shadow .2s}.project-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.project-description{color:#666;line-height:1.5;margin-bottom:1rem}.project-meta{grid-gap:.5rem;display:grid;font-size:.9rem;gap:.5rem;margin-bottom:1rem}.meta-item{color:#666}.project-actions{display:flex;justify-content:flex-end}.create-project-container{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.create-project-form h3{color:#2c3e50;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.btn-secondary{background-color:#6c757d;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem}.btn-secondary:hover{background-color:#545b62}.stat-card{align-items:center;display:flex;gap:1rem;text-align:left}.stat-icon{font-size:2rem}.stat-content h3{color:#2c3e50;font-size:2rem;margin:0}.stat-content p{color:#666;margin:0}.empty-state{color:#666;padding:2rem;text-align:center}.empty-state h3{margin-bottom:.5rem}.empty-activity{font-style:italic;padding:1rem}.empty-activity,.loading{color:#666;text-align:center}.loading{padding:2rem}.activity-list ul{list-style:none;padding:0}.activity-list li{background:#f8f9fa;border-left:3px solid #3498db;border-radius:5px;margin-bottom:.5rem;padding:.5rem}.task-board{margin-top:2rem}.board-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.board-header h2{color:#2c3e50;margin:0}.board-stats{background:#3498db;border-radius:20px;color:#fff;font-weight:500;padding:.5rem 1rem}.columns-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-top:1rem}.task-column{background:#f8f9fa;border:2px dashed #0000;border-radius:8px;min-height:500px;padding:1rem}.task-column:hover{border-color:#3498db}.column-header{align-items:center;border-bottom:2px solid #dee2e6;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.column-header h3{color:#2c3e50;font-size:1.1rem;margin:0}.task-count{background:#6c757d;border-radius:12px;color:#fff;font-size:.8rem;font-weight:700;padding:.25rem .5rem}.tasks-list{display:flex;flex-direction:column;gap:1rem}.empty-column{background:#fff;border:2px dashed #dee2e6;border-radius:6px;color:#6c757d;font-style:italic;padding:2rem;text-align:center}.task-card{background:#fff;border-left:4px solid #3498db;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:grab;padding:1rem;transition:transform .2s,box-shadow .2s}.task-card:active{cursor:grabbing}.task-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.task-header{margin-bottom:.5rem}.task-title{color:#2c3e50;flex:1 1;font-size:1rem;margin:0}.priority-dot{border-radius:50%;flex-shrink:0;height:12px;margin-left:.5rem;width:12px}.task-description{font-size:.9rem;line-height:1.4;margin-bottom:1rem}.task-meta{grid-gap:.25rem;display:grid;font-size:.8rem;gap:.25rem;margin-bottom:1rem}.meta-item{color:#6c757d}.task-actions{display:flex;justify-content:flex-end}.status-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:.8rem;padding:.25rem .5rem}.create-task-form{background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.create-task-form input,.create-task-form select,.create-task-form textarea{border:1px solid #ddd;border-radius:5px;font-size:1rem;margin-bottom:1rem;padding:.75rem;width:100%}.create-task-form textarea{font-family:inherit;resize:vertical}.bg-gray-100{background-color:#f8f9fa}.bg-blue-100{background-color:#e3f2fd}.bg-green-100{background-color:#e8f5e8}.project-header{margin-bottom:2rem}.project-info h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem}.project-info .project-description{color:#666;font-size:1.1rem;line-height:1.5;margin-bottom:1rem}.project-meta{display:flex;flex-wrap:wrap;gap:2rem}.project-meta span{color:#666;font-size:.9rem}.create-task-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.btn-outline{background:#0000;border:1px solid #3498db;border-radius:5px;color:#3498db;cursor:pointer;display:inline-block;padding:.5rem 1rem;text-decoration:none}.btn-outline:hover{background:#3498db;color:#fff}.team-card{border-left:4px solid #9b59b6}.team-description{color:#666;line-height:1.5;margin-bottom:1rem}.team-meta{grid-gap:.5rem;display:grid;font-size:.9rem;gap:.5rem;margin-bottom:1rem}.role-badge{border-radius:20px;font-size:.8rem;padding:.25rem .75rem}.role-badge.admin{background-color:#f39c12}.role-badge.member{background-color:#3498db}.role-text.admin{color:#f39c12;font-weight:600}.role-text.member{color:#3498db;font-weight:600}.create-team-container{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.create-team-form h3{color:#2c3e50;margin-bottom:1rem}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:1.5rem 2rem}.modal-header h2{color:#2c3e50;margin:0}.close-button{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;padding:0;width:40px}.close-button:hover{color:#495057}.modal-body{max-height:calc(90vh - 80px);overflow-y:auto;padding:0}.task-details-section{border-bottom:1px solid #e9ecef;padding:2rem}.task-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.task-header h3{color:#2c3e50;flex:1 1;margin:0}.task-title-input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:1.25rem;font-weight:600;padding:.75rem}.task-actions-top{align-items:center;display:flex;gap:1rem}.task-meta-grid{background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-item strong{color:#495057;font-size:.9rem}.priority-badge{display:inline-block;font-size:.8rem;padding:.25rem .75rem;width:-webkit-fit-content;width:fit-content}.task-description-section{margin-top:1.5rem}.task-description-input{border:1px solid #ddd;border-radius:6px;font-family:inherit;margin-top:.5rem;padding:.75rem;resize:vertical;width:100%}.task-description{background:#f8f9fa;border-radius:6px;color:#666;line-height:1.5;margin:.5rem 0 0;padding:1rem}.edit-actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.comments-section{padding:2rem}.task-comments h4{color:#2c3e50;margin-bottom:1rem}.comments-list{margin-bottom:2rem;max-height:300px;overflow-y:auto}.empty-comments{background:#f8f9fa;border-radius:6px;color:#6c757d;font-style:italic;padding:2rem;text-align:center}.comment-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1rem;padding:1rem}.comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.comment-author{color:#2c3e50;font-weight:600}.comment-time{color:#6c757d;font-size:.8rem}.comment-text{color:#495057;line-height:1.4;white-space:pre-wrap}.add-comment-form{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem}.add-comment-form textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;margin-bottom:1rem;padding:.75rem;resize:vertical;width:100%}.add-comment-form .form-actions{display:flex;justify-content:flex-end;margin:0}.real-time-indicator{align-items:center;background:#e8f5e8;border-radius:12px;color:#27ae60;display:inline-flex;font-size:.8rem;font-weight:500;gap:.5rem;margin-left:1rem;padding:.25rem .75rem}.pulse-dot{animation:pulse 2s infinite;background:#27ae60;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%{box-shadow:0 0 0 0 #27ae60b3;transform:scale(.95)}70%{box-shadow:0 0 0 6px #27ae6000;transform:scale(1)}to{box-shadow:0 0 0 0 #27ae6000;transform:scale(.95)}}.task-update-highlight{animation:highlight 2s ease-in-out}@keyframes highlight{0%{background-color:#3498db4d}to{background-color:initial}}.comment-update-highlight{animation:commentHighlight 2s ease-in-out}@keyframes commentHighlight{0%{border-left:4px solid #3498db}to{border-left:1px solid #e9ecef}}.connection-status{border-radius:20px;font-size:.8rem;font-weight:500;padding:.5rem 1rem;position:fixed;right:10px;top:10px;z-index:1000}.connection-status.connected{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.connection-status.disconnected{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.task-attachments{margin-top:1rem}.attachments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.attachments-header h4{color:#2c3e50;margin:0}.btn-sm{font-size:.8rem;padding:.25rem .75rem}.btn-danger{background-color:#e74c3c;border:none;color:#fff}.btn-danger:hover{background-color:#c0392b}.attachments-list{max-height:300px;overflow-y:auto}.empty-attachments{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:6px;color:#6c757d;font-style:italic;padding:2rem;text-align:center}.attachment-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:1rem}.attachment-info{align-items:center;display:flex;flex:1 1;gap:1rem}.file-icon{font-size:1.5rem}.file-details{flex:1 1}.file-name{color:#2c3e50;font-weight:600;margin-bottom:.25rem}.file-meta{color:#6c757d;font-size:.8rem}.attachment-actions{display:flex;gap:.5rem}.modal-tabs{border-bottom:1px solid #e9ecef;display:flex;margin-bottom:1rem}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;cursor:pointer;font-weight:500;padding:.75rem 1.5rem}.tab-button.active{border-bottom-color:#3498db;color:#3498db}.tab-button:hover:not(.active){color:#495057}.tab-content{min-height:200px}.team-members{padding:1rem}.members-list{display:flex;flex-direction:column;gap:1rem}.member-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.member-info{flex:1 1}.member-name{color:#2c3e50;font-weight:600;margin-bottom:.25rem}.member-email{color:#666;font-size:.9rem}.member-email,.member-role{margin-bottom:.5rem}.member-joined{color:#6c757d;font-size:.8rem}.member-actions{align-items:center;display:flex;gap:.5rem}.role-select{background:#fff;border:1px solid #ddd;border-radius:4px;padding:.25rem .5rem}.invite-member{padding:1rem}.invite-form{align-items:flex-end;display:flex;gap:1rem}.invite-form .form-group{flex:1 1;margin:0}.invite-form input{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;width:100%}.team-header{margin-bottom:2rem}.team-header-content{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between}.team-info{flex:1 1}.team-info h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem}.team-info .team-description{color:#666;font-size:1.1rem;line-height:1.5;margin-bottom:1rem}.team-meta{display:flex;flex-wrap:wrap;gap:2rem}.team-meta span{color:#666;font-size:.9rem}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:5px;color:#155724;margin-bottom:1rem;padding:.75rem}.quick-actions{display:flex;flex-wrap:wrap;gap:1rem}.quick-actions .btn{flex:1 1;min-width:150px;text-align:center}.team-overview{padding:1rem 0}.team-stats{display:flex;gap:2rem;margin-bottom:1rem}.team-stat{text-align:center}.team-stat-number{color:#2c3e50;display:block;font-size:1.5rem;font-weight:700}.team-stat-label{color:#666;font-size:.8rem}.recent-teams ul{list-style:none;margin:.5rem 0 0;padding:0}.recent-teams li{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.25rem;padding:.5rem}.project-card .project-meta{grid-gap:.5rem;display:grid;font-size:.9rem;gap:.5rem;grid-template-columns:1fr 1fr;margin:1rem 0}.project-card .project-actions{display:flex;justify-content:flex-end;margin-top:1rem}.project-status{background:#3498db;border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.role-badge{border-radius:8px;font-size:.7rem;font-weight:500;padding:.15rem .5rem;text-transform:capitalize}.role-badge.admin{background:#f39c12;color:#fff}.role-badge.member{background:#3498db;color:#fff}.task-footer{align-items:center;border-top:1px solid #eee;display:flex;justify-content:space-between;margin-top:1rem;padding-top:.5rem}.priority-badge{border-radius:12px;color:#fff;font-size:.7rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.meta-item.overdue{color:#e74c3c;font-weight:700}.assignee-select{background:#fff;border:1px solid #ddd;border-radius:4px;padding:.25rem .5rem}.task-meta-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:1rem 0}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media (max-width:768px){.form-row,.task-meta-grid{grid-template-columns:1fr}.task-footer{align-items:flex-start;flex-direction:column;gap:.5rem}}.user-menu-container{display:inline-block;position:relative}.user-menu-button{align-items:center;background:none;border:1px solid #ddd;border-radius:20px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .3s}.user-menu-button:hover{background-color:#f8f9fa;border-color:#3498db}.user-arrow{color:#666;font-size:.8rem}.user-menu{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 15px #0000001a;margin-top:.5rem;min-width:180px;position:absolute;right:0;top:100%;z-index:1000}.user-menu-item{background:none;border:none;cursor:pointer;padding:.75rem 1rem;text-align:left;transition:background-color .3s;width:100%}.user-menu-item:hover{background-color:#f8f9fa}.user-menu-divider{background-color:#e9ecef;height:1px;margin:.25rem 0}.logout-item{color:#e74c3c;font-weight:500}.logout-item:hover{background-color:#fee}.sidebar-subtitle{color:#bdc3c7;font-size:.8rem;font-weight:300;margin:0}.sidebar-link{align-items:center;border-left:3px solid #0000;color:#bdc3c7;display:flex;gap:.75rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s}.sidebar-link.active,.sidebar-link:hover{background-color:#34495e;border-left-color:#3498db;color:#ecf0f1}.sidebar-icon{font-size:1.1rem}.sidebar-label{font-weight:500}.sidebar-footer{border-top:1px solid #34495e;margin-top:auto;padding:1rem 1.5rem}.sidebar-stats{display:flex;flex-direction:column;gap:.5rem}.stat-item{align-items:center;color:#bdc3c7;display:flex;font-size:.8rem;justify-content:space-between}.completion-rate,.status-live{color:#27ae60;font-weight:500}.completion-rate{font-size:.9rem;margin-left:1rem}.project-header-content{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between}.project-info{flex:1 1}.project-stats{background:#f8f9fa;border-radius:8px;display:flex;gap:2rem;min-width:300px;padding:1.5rem}.project-stats .stat{text-align:center}.project-stats .stat-number{color:#2c3e50;display:block;font-size:2rem;font-weight:700}.project-stats .stat-label{color:#666;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}@media (max-width:768px){.project-header-content{flex-direction:column}.project-stats{min-width:auto;width:100%}.user-info{flex-direction:column;gap:.5rem}.user-menu{right:-50px}}
/*# sourceMappingURL=main.86ad7244.css.map*/