@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #10b981;--primary-dark: #059669;--primary-light: #34d399;--primary-glow: rgba(16, 185, 129, .15);--bg-base: #0f172a;--bg-surface: #1e293b;--bg-elevated: #263148;--bg-hover: #2d3b52;--border: #2d3748;--border-light: #374151;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--danger: #f87171;--danger-bg: rgba(248, 113, 113, .1);--warning: #fbbf24;--warning-bg: rgba(251, 191, 36, .1);--success: #34d399;--success-bg: rgba(52, 211, 153, .1);--blue: #60a5fa;--blue-bg: rgba(96, 165, 250, .1);--priority-low: #34d399;--priority-medium: #fbbf24;--priority-high: #f87171;--border-radius: 16px;--border-radius-sm: 10px;--border-radius-btn: 50px;--shadow: 0 4px 20px rgba(0, 0, 0, .3);--shadow-glow: 0 0 20px rgba(16, 185, 129, .2)}body{font-family:Sora,sans-serif;background:var(--bg-base);color:var(--text-primary);min-height:100vh}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-base);padding:20px;position:relative;overflow:hidden}.auth-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.auth-orb-1{width:400px;height:400px;background:radial-gradient(circle,rgba(16,185,129,.18) 0%,transparent 70%);top:-100px;left:-100px}.auth-orb-2{width:350px;height:350px;background:radial-gradient(circle,rgba(96,165,250,.12) 0%,transparent 70%);bottom:-80px;right:-80px}.auth-box{background:var(--bg-surface);border:1px solid var(--border);padding:44px;border-radius:var(--border-radius);width:100%;max-width:440px;box-shadow:var(--shadow);position:relative;z-index:1}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:4px}.auth-logo{font-size:1.8rem;color:var(--primary);line-height:1}.auth-title{font-family:JetBrains Mono,monospace;font-size:1.8rem;font-weight:700;color:var(--primary);letter-spacing:-.5px}.auth-subtitle{color:var(--text-muted);margin-bottom:32px;font-size:.85rem;letter-spacing:.02em}.auth-heading{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:24px}.auth-link{margin-top:22px;text-align:center;font-size:.875rem;color:var(--text-muted)}.auth-link a{color:var(--primary);text-decoration:none;font-weight:600}.auth-link a:hover{color:var(--primary-light)}.navbar{background:var(--bg-surface);border-bottom:1px solid var(--border);padding:0 28px;height:64px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px #00000040}.nav-brand{font-family:JetBrains Mono,monospace;font-size:1.25rem;font-weight:700;color:var(--primary);text-decoration:none;letter-spacing:-.5px;display:flex;align-items:center;gap:8px}.nav-brand:before{content:"⬡";font-size:1.1rem}.nav-right{display:flex;align-items:center;gap:18px}.nav-user{font-size:.875rem;color:var(--text-secondary)}.nav-role{color:var(--primary);font-size:.78rem;font-weight:600}.btn-logout{padding:7px 18px;background:transparent;border:1px solid var(--border-light);border-radius:var(--border-radius-btn);cursor:pointer;font-size:.82rem;color:var(--text-secondary);font-family:inherit;transition:all .2s}.btn-logout:hover{border-color:var(--primary);color:var(--primary)}.page-container{max-width:980px;margin:0 auto;padding:32px 20px;display:flex;flex-direction:column;gap:24px}.loading{text-align:center;padding:80px;color:var(--text-muted);font-size:1rem}.card{background:var(--bg-surface);border-radius:var(--border-radius);padding:28px;border:1px solid var(--border);box-shadow:var(--shadow)}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dashboard-header h2{font-size:1.65rem;font-weight:700;color:var(--text-primary);line-height:1.3}.role-badge{display:inline-block;background:var(--primary-glow);color:var(--primary);padding:3px 12px;border-radius:20px;font-size:.72rem;font-weight:600;margin-top:6px;text-transform:uppercase;letter-spacing:.06em;border:1px solid rgba(16,185,129,.3)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 640px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--bg-surface);border-radius:var(--border-radius);padding:22px 20px;text-align:center;border:1px solid var(--border);position:relative;overflow:hidden;transition:transform .2s}.stat-card:hover{transform:translateY(-2px)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.stat-card h3{font-size:2.4rem;font-weight:700;margin-bottom:4px;font-family:JetBrains Mono,monospace}.stat-card p{font-size:.8rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.stat-pending:before{background:var(--text-muted)}.stat-pending h3{color:var(--text-secondary)}.stat-ongoing:before{background:var(--warning)}.stat-ongoing h3{color:var(--warning)}.stat-completed:before{background:var(--primary)}.stat-completed h3{color:var(--primary)}.stat-delayed:before{background:var(--danger)}.stat-delayed h3{color:var(--danger)}.section-title{font-size:.95rem;font-weight:600;color:var(--text-secondary);margin-bottom:18px;text-transform:uppercase;letter-spacing:.06em}.delayed-title{color:var(--danger)}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.section-header .section-title{margin-bottom:0}.form-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:20px}.search-input{padding:8px 16px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--border-radius-btn);font-size:.85rem;font-family:inherit;color:var(--text-primary);width:240px;transition:border-color .2s}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.task-list{display:flex;flex-direction:column;gap:10px}.task-item{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--bg-elevated);border-radius:var(--border-radius-sm);border:1px solid var(--border);gap:12px;transition:border-color .2s}.task-item:hover{border-color:var(--border-light)}.task-item.task-delayed{background:var(--danger-bg);border-color:#f8717140}.task-item.task-item-full{align-items:flex-start;flex-wrap:wrap}.task-left{display:flex;flex-direction:column;gap:4px;flex:1}.task-left strong{font-size:.9rem;font-weight:600;color:var(--text-primary)}.task-info{flex:1;display:flex;flex-direction:column;gap:4px}.task-desc{font-size:.82rem;color:var(--text-muted)}.task-project{font-size:.78rem;color:var(--text-muted);margin-left:8px}.assigned-to{font-size:.78rem;color:var(--primary);font-weight:500}.task-meta{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.task-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.due-date{font-size:.75rem;color:var(--text-muted);font-family:JetBrains Mono,monospace}.priority-badge{font-size:.68rem;font-weight:700;padding:3px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.06em}.priority-low{background:rgba(52,211,153,.12);color:var(--priority-low);border:1px solid rgba(52,211,153,.25)}.priority-medium{background:rgba(251,191,36,.12);color:var(--priority-medium);border:1px solid rgba(251,191,36,.25)}.priority-high{background:rgba(248,113,113,.12);color:var(--priority-high);border:1px solid rgba(248,113,113,.25)}.status-badge{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;text-transform:capitalize}.status-badge.todo{background:rgba(100,116,139,.15);color:var(--text-secondary);border:1px solid rgba(100,116,139,.25)}.status-badge.in-progress{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(251,191,36,.25)}.status-badge.done{background:var(--success-bg);color:var(--success);border:1px solid rgba(52,211,153,.25)}.status-select{padding:6px 12px;border:1px solid var(--border);border-radius:var(--border-radius-btn);font-size:.82rem;cursor:pointer;background:var(--bg-elevated);color:var(--text-primary);font-family:inherit;transition:border-color .2s}.status-select:focus{outline:none;border-color:var(--primary)}.status-select.todo{border-color:var(--border-light)}.status-select.in-progress{border-color:var(--warning)}.status-select.done{border-color:var(--primary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.project-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--border-radius-sm);padding:20px;text-decoration:none;color:inherit;display:block;transition:all .2s}.project-card:hover{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),var(--shadow-glow);transform:translateY(-2px)}.project-card-icon{font-size:1.4rem;margin-bottom:10px}.project-card h4{font-size:.95rem;font-weight:600;margin-bottom:6px;color:var(--text-primary)}.project-card p{font-size:.8rem;color:var(--text-muted);margin-bottom:12px;line-height:1.5}.member-count{font-size:.76rem;color:var(--primary);font-weight:500}.members-list{display:flex;flex-wrap:wrap;gap:8px}.member-chip{background:var(--primary-glow);color:var(--primary-light);padding:5px 14px;border-radius:var(--border-radius-btn);font-size:.8rem;font-weight:500;border:1px solid rgba(16,185,129,.2)}.project-desc{color:var(--text-muted);font-size:.875rem;margin-top:4px}.created-by{font-size:.78rem;color:var(--text-muted);margin-top:4px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:flex-start;gap:14px}.activity-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:4px}.dot-green{background:var(--primary);box-shadow:0 0 6px var(--primary)}.dot-blue{background:var(--blue);box-shadow:0 0 6px var(--blue)}.dot-orange{background:var(--warning);box-shadow:0 0 6px var(--warning)}.activity-text{font-size:.875rem;color:var(--text-secondary);margin-bottom:2px}.activity-text strong{color:var(--text-primary)}.activity-time{font-size:.75rem;color:var(--text-muted)}.activity-placeholder{font-size:.78rem;color:var(--text-muted);font-style:italic;margin-top:4px;padding-top:12px;border-top:1px solid var(--border)}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.form-group input,.form-group textarea,.form-group select{width:100%;padding:11px 16px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--border-radius-sm);font-size:.9rem;font-family:inherit;color:var(--text-primary);transition:border-color .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-group select option{background:var(--bg-elevated);color:var(--text-primary)}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;gap:12px}.btn-primary{padding:10px 24px;background:var(--primary);color:#0f172a;border:none;border-radius:var(--border-radius-btn);font-size:.875rem;font-weight:700;cursor:pointer;font-family:inherit;transition:all .2s;letter-spacing:.02em}.btn-primary:hover{background:var(--primary-light);box-shadow:var(--shadow-glow)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-full{width:100%;padding:12px;font-size:.95rem;margin-top:4px}.btn-secondary{padding:10px 24px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--border-radius-btn);font-size:.875rem;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s}.btn-secondary:hover{background:var(--bg-elevated);color:var(--text-primary)}.btn-danger{padding:6px 14px;background:transparent;color:var(--danger);border:1px solid rgba(248,113,113,.4);border-radius:var(--border-radius-btn);font-size:.8rem;cursor:pointer;font-family:inherit;transition:all .2s}.btn-danger:hover{background:var(--danger-bg)}.error-msg{background:var(--danger-bg);border:1px solid rgba(248,113,113,.3);color:var(--danger);padding:11px 16px;border-radius:var(--border-radius-sm);font-size:.875rem;margin-bottom:18px}.empty-msg{color:var(--text-muted);font-size:.875rem;padding:24px 0;text-align:center}@media (max-width: 640px){.dashboard-header{flex-direction:column;gap:12px}.section-header{flex-direction:column;align-items:flex-start}.search-input{width:100%}.auth-box{padding:28px 24px}.task-item{flex-direction:column;align-items:flex-start}.form-actions{flex-direction:column}}
