code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:420px;padding:40px;width:100%}.auth-card h1{color:#1a202c;font-size:28px;margin:0 0 8px}.auth-subtitle{color:#718096;font-size:14px;margin:0 0 32px}.form-group input{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.btn-primary{font-size:16px;margin-top:8px;padding:14px;transition:transform .2s,box-shadow .2s;width:100%}.error-message{margin-bottom:20px;padding:12px 16px}.auth-footer{color:#718096;font-size:14px;margin-top:24px;text-align:center}.auth-footer a{color:#667eea;font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-card-large{max-width:500px}.avatar-upload-group{margin-bottom:24px}.avatar-upload-container{align-items:center;background:#f7fafc;border-radius:8px;display:flex;gap:20px;padding:20px}.avatar-preview{background:#fff;border:3px solid #e2e8f0;border-radius:50%;flex-shrink:0;height:100px;overflow:hidden;width:100px}.avatar-preview img{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-size:40px;height:100%;justify-content:center;width:100%}.avatar-upload-button{flex:1 1}.btn-upload{background:#667eea;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;margin-bottom:8px;padding:10px 20px;transition:all .2s}.btn-upload:hover{background:#764ba2;transform:translateY(-2px)}.upload-hint{color:#718096;font-size:12px;margin:0}.header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;color:#fff;padding:16px 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-container{align-items:center;display:flex;gap:40px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 40px}.header-logo h1{font-size:20px;font-weight:600;margin:0}.header-nav{display:flex;flex:1 1;gap:24px}.nav-link{background:none;border:none;border-radius:4px;color:#fffc;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.nav-link:hover{background:#ffffff1a;color:#fff}.header-user{align-items:center;display:flex;gap:16px}.btn-logout,.user-name{font-size:14px;font-weight:500}.btn-logout{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:all .2s}.btn-logout:hover{background:#ffffff4d}@media (max-width:768px){.header-container{gap:20px;padding:0 20px}.header-nav{gap:12px}.nav-link{font-size:13px;padding:6px 12px}}.user-avatar-menu{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:6px 12px;transition:background .2s}.user-avatar-menu:hover{background:#ffffff1a}.user-avatar-img,.user-avatar-placeholder{border:2px solid #ffffff4d;border-radius:50%;height:36px;width:36px}.user-avatar-img{object-fit:cover}.user-avatar-placeholder{align-items:center;background:#fff3;color:#fff;display:flex;font-size:16px;font-weight:700;justify-content:center}.header-logo{cursor:pointer;transition:opacity .2s}.header-logo:hover{opacity:.8}.dashboard-container{background:#f7fafc;min-height:calc(100vh - 60px)}.dashboard-content{margin:0 auto;max-width:1200px;padding:40px}.dashboard-welcome{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.dashboard-welcome h1{color:#1a202c;font-size:32px;margin:0 0 8px}.dashboard-welcome p{color:#718096;font-size:16px;margin:0}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:40px}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:20px;padding:24px;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:12px;display:flex;font-size:28px;height:60px;justify-content:center;width:60px}.stat-card-blue .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card-green .stat-icon{background:linear-gradient(135deg,#10b981,#059669)}.stat-card-purple .stat-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-card-orange .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-content h3{color:#1a202c;font-size:32px;font-weight:700;margin:0 0 4px}.stat-content p{color:#718096;font-size:14px;font-weight:500;margin:0}.dashboard-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:24px;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h2{color:#1a202c;font-size:20px;margin:0}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;transition:color .2s}.btn-link:hover{color:#764ba2}.projects-list{grid-gap:16px;display:grid;gap:16px}.project-item{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;padding:20px;transition:all .2s}.project-item:hover{background:#eef2ff;border-color:#667eea;transform:translateX(4px)}.project-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.project-item-header h3{color:#1a202c;font-size:18px;margin:0}.project-badge{background:#667eea;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.project-item-description{color:#4a5568;font-size:14px;line-height:1.5;margin:8px 0}.profile-card{gap:20px}.profile-avatar,.profile-card{align-items:center;display:flex}.profile-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-size:32px;font-weight:700;height:80px;justify-content:center;width:80px}.profile-info h3{color:#1a202c;font-size:20px;margin:0 0 4px}.profile-email{color:#718096;font-size:14px;margin:0 0 12px}.profile-badges{display:flex;gap:8px}.badge{border-radius:12px;font-size:12px;font-weight:600;padding:6px 12px}.badge-role{background:#eef2ff;color:#667eea}.badge-status{background:#d1fae5;color:#059669}.empty-state-small{padding:40px 20px;text-align:center}.empty-state-small p{color:#718096;margin:0 0 16px}@media (max-width:768px){.dashboard-content{padding:20px}.dashboard-welcome{align-items:flex-start;flex-direction:column;gap:16px}.stats-grid{grid-template-columns:1fr}.profile-card{flex-direction:column;text-align:center}}.members-avatars{gap:-8px}.member-avatar-small{font-size:12px;height:32px;position:relative;width:32px}.member-avatar-small:hover{transform:scale(1.1)}.member-avatar-more{font-size:11px}.project-item-footer{align-items:center;border-top:1px solid #e2e8f0;color:#718096;display:flex;font-size:13px;justify-content:space-between;margin-top:12px;padding-top:12px}.modal-backdrop{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px}.modal-header h2{color:#1a202c;font-size:20px;margin:0}.btn-close{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.btn-close:hover{background:#f0f0f0;color:#1a202c}.modal form{padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#2d3748;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:24px}.btn-secondary{background:#e2e8f0;border:none;border-radius:8px;color:#2d3748;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:background .2s}.btn-secondary:hover{background:#cbd5e0}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.modal{max-width:100%}.modal form,.modal-footer,.modal-header{padding:16px}.modal-footer{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.projects-page{margin:0 auto;max-width:1200px;padding:40px}.projects-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.projects-header h1{color:#1a202c;font-size:32px;margin:0 0 8px}.projects-header p{color:#718096;font-size:14px;margin:0}.projects-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:40px}.project-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;cursor:pointer;padding:24px;transition:all .3s ease}.project-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-4px)}.project-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.project-card-header h3{color:#1a202c;flex:1 1;font-size:18px;margin:0;word-break:break-word}.project-actions{display:flex;gap:8px;margin-left:12px}.btn-icon{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px 8px;transition:background .2s}.btn-icon:hover{background:#f0f0f0}.project-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:14px;line-height:1.5;margin:0 0 16px;overflow:hidden}.project-footer{gap:16px}.member-count,.task-count{align-items:center;display:flex;gap:4px}.error-message{padding:16px}.loading{padding:40px}.empty-state{background:#f7fafc;border-radius:12px;grid-column:1/-1;padding:60px 40px;text-align:center}.empty-state h3{color:#2d3748;font-size:20px;margin:0 0 8px}.empty-state p{color:#718096;font-size:14px;margin:0}@media (max-width:768px){.projects-page{padding:20px}.projects-header{align-items:flex-start;flex-direction:column;gap:16px}.projects-grid{grid-template-columns:1fr}}.btn-close-error{background:none;border:none;color:#c53030;cursor:pointer;font-size:18px;margin-left:12px;padding:0 4px;transition:transform .2s}.btn-close-error:hover{transform:scale(1.2)}.btn-delete:hover{background:#fed7d7}.empty-state-icon{animation:float 3s ease-in-out infinite;font-size:64px;margin-bottom:16px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-state button{margin-top:16px}.member-avatar-small,.members-avatars{align-items:center;display:flex}.member-avatar-small{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff;font-size:11px;font-weight:600;height:28px;justify-content:center;margin-left:-8px;overflow:hidden;transition:transform .2s;width:28px}.member-avatar-small:first-child{margin-left:0}.member-avatar-small:hover{transform:scale(1.15);z-index:10}.member-avatar-small img{height:100%;object-fit:cover;width:100%}.member-avatar-more{background:#e2e8f0;color:#4a5568;font-size:10px}.project-footer{align-items:center;border-top:1px solid #e2e8f0;color:#718096;display:flex;font-size:12px;justify-content:space-between;padding-top:16px}.task-modal{max-width:600px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;cursor:pointer;font-family:inherit;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group select option{padding:10px}@media (max-width:480px){.form-row{grid-template-columns:1fr}}.task-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;cursor:grab;padding:16px;transition:all .2s ease}.task-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.task-card:active{cursor:grabbing;opacity:.9}.task-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.task-priority{border-radius:12px;color:#fff;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.task-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.task-card:hover .task-actions{opacity:1}.btn-icon-small{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:4px 6px;transition:background .2s}.btn-icon-small:hover{background:#f7fafc}.task-title{color:#1a202c;font-size:15px;font-weight:600;line-height:1.4;margin:0 0 8px;word-break:break-word}.task-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;font-size:13px;line-height:1.5;margin:0 0 12px;overflow:hidden}.task-assignee{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:8px;margin-top:8px;padding:8px 0}.assignee-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.assignee-name{color:#4a5568;font-size:12px;font-weight:500}.task-footer{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:8px}.comment-count{align-items:center;color:#718096;display:flex;font-size:12px;gap:4px}.tasks-page{background:#f7fafc;min-height:calc(100vh - 60px);padding:40px}.tasks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.tasks-header h1{color:#1a202c;font-size:32px;margin:0 0 4px}.tasks-header p{color:#718096;font-size:14px;margin:0}.kanban-board{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);overflow-x:auto;padding-bottom:20px}.kanban-column{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;max-height:calc(100vh - 240px);min-width:280px}.column-header{align-items:center;background:#f7fafc;border-radius:12px 12px 0 0;border-top:4px solid;display:flex;justify-content:space-between;padding:16px 20px}.column-header h3{color:#2d3748;font-size:16px;font-weight:600;margin:0}.task-count{background:#e2e8f0;border-radius:12px;color:#4a5568;font-size:13px;font-weight:600;padding:4px 10px}.column-content{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.column-content::-webkit-scrollbar{width:6px}.column-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.column-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:10px}.column-content::-webkit-scrollbar-thumb:hover{background:#a0aec0}.empty-column{align-items:center;border:2px dashed #e2e8f0;border-radius:8px;color:#a0aec0;display:flex;font-size:14px;justify-content:center;min-height:100px;padding:40px 20px;text-align:center}.loading{color:#718096;font-size:16px;padding:60px 20px;text-align:center}.error-message{align-items:center;background:#fed7d7;border-radius:8px;color:#c53030;display:flex;font-size:14px;justify-content:space-between;margin-bottom:24px;padding:16px 20px}@media (max-width:1400px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.tasks-page{padding:20px}.tasks-header{align-items:flex-start;flex-direction:column;gap:16px}.kanban-board{grid-template-columns:1fr}.kanban-column{min-width:100%}}.profile-page{background:#f7fafc;min-height:calc(100vh - 60px);padding:40px}.profile-container{margin:0 auto;max-width:900px}.profile-header{margin-bottom:32px}.profile-header h1{color:#1a202c;font-size:32px;margin:0 0 8px}.profile-header p{color:#718096;font-size:16px;margin:0}.profile-form{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;padding:40px}.profile-form-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 2fr}.profile-avatar-section h3{color:#1a202c;font-size:18px;margin:0 0 24px}.avatar-upload-large{text-align:center}.avatar-preview-large{background:#fff;border:4px solid #e2e8f0;border-radius:50%;height:200px;margin:0 auto 24px;overflow:hidden;width:200px}.avatar-preview-large img{height:100%;object-fit:cover;width:100%}.avatar-placeholder-large{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:80px;font-weight:700;height:100%;justify-content:center;width:100%}.avatar-upload-controls{align-items:center;display:flex;flex-direction:column;gap:8px}.profile-info-section h3{color:#1a202c;font-size:18px;margin:0 0 24px}.input-disabled{background:#f7fafc;cursor:not-allowed}.input-hint{color:#718096;font-size:12px;margin:4px 0 0}.role-badge-display{background:#f7fafc;border-radius:8px;padding:12px}.badge-role-large{background:#eef2ff;border-radius:12px;color:#667eea;font-size:14px;font-weight:600;padding:8px 16px}.form-actions{border-top:1px solid #e2e8f0;margin-top:32px;padding-top:24px}.success-message{align-items:center;background:#d1fae5;border-radius:8px;color:#059669;display:flex;font-size:14px;gap:8px;margin-bottom:24px;padding:16px 20px}.success-message:before{content:"✓";font-size:18px;font-weight:700}@media (max-width:768px){.profile-page{padding:20px}.profile-form{padding:24px}.profile-form-content{gap:32px;grid-template-columns:1fr}.avatar-preview-large{height:150px;width:150px}.avatar-placeholder-large{font-size:60px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}
/*# sourceMappingURL=main.523b7b1d.css.map*/