*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #F1F5F9;--card: #FFFFFF;--sidebar: #0B1120;--border: #E2E8F0;--text: #1E293B;--muted: #64748B;--subtle: #94A3B8;--primary: #2563EB;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--purple: #8B5CF6;--radius: 14px;--shadow: 0 4px 24px rgba(0,0,0,.07);--font: "DM Sans", sans-serif;--mono: "Space Mono", monospace}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.splash{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--sidebar)}.splash-inner{text-align:center;color:#94a3b8}.splash-inner .logo-mark{font-size:32px;color:var(--primary);margin-bottom:8px}.splash-inner .logo-name{font-family:var(--mono);font-size:18px;color:#f8fafc;letter-spacing:4px;margin-bottom:32px}.splash-inner p{font-size:13px;margin-top:16px}.splash-dots{display:flex;gap:8px;justify-content:center}.splash-dots span{width:8px;height:8px;border-radius:50%;background:var(--primary);animation:pulse 1.2s infinite ease-in-out}.splash-dots span:nth-child(2){animation-delay:.2s}.splash-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.1)}}.auth-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 20% 50%,#0b1827,#0b1120 60%,#0f172a);position:relative;overflow:hidden}.auth-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(37,99,235,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.06) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.deco-ring{position:absolute;border-radius:50%;border:1px solid rgba(37,99,235,.12);pointer-events:none;animation:rotateRing 20s linear infinite}.deco-ring-1{width:600px;height:600px;top:-200px;right:-200px;animation-duration:25s}.deco-ring-2{width:400px;height:400px;bottom:-150px;left:-100px;animation-direction:reverse}@keyframes rotateRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-card{background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:48px;width:100%;max-width:440px;position:relative;z-index:10;box-shadow:0 32px 64px #0006;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:8px}.auth-logo-dot{font-size:22px;color:var(--primary)}.auth-logo-text{font-family:var(--mono);font-size:18px;color:#f8fafc;letter-spacing:3px;font-weight:700}.auth-subtitle{color:#475569;font-size:14px;margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px}.field input,.field textarea,.field select{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 16px;color:#f1f5f9;font-family:var(--font);font-size:14px;outline:none;transition:border-color .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);background:#2563eb0f}.field input::placeholder{color:#334155}.auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:10px 14px;color:#fca5a5;font-size:13px}.btn-auth{background:linear-gradient(135deg,var(--primary),#1D4ED8);color:#fff;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--font);margin-top:8px;transition:all .2s;box-shadow:0 4px 16px #2563eb59;text-decoration:none;display:block}.btn-auth:hover{transform:translateY(-1px);box-shadow:0 6px 20px #2563eb73}.btn-auth:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-convite{display:block;text-align:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;color:#94a3b8;text-decoration:none;font-size:14px;transition:all .2s;margin-top:12px}.btn-convite:hover{border-color:var(--primary);color:#f1f5f9}.auth-divider{text-align:center;margin:20px 0 4px;color:#334155;font-size:12px}.auth-footer{text-align:center;color:#1e293b;font-size:11px;margin-top:24px}.back-link{display:block;text-align:center;color:#475569;font-size:13px;margin-top:16px;text-decoration:none}.back-link:hover{color:#94a3b8}.convite-box{display:flex;flex-direction:column;gap:16px}.convite-box p{color:#64748b;font-size:13px}.convite-box code{background:#2563eb1f;color:#60a5fa;padding:2px 6px;border-radius:4px;font-family:var(--mono)}.convite-input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px 20px;color:#f1f5f9;font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:4px;outline:none;text-align:center;width:100%;transition:border-color .2s}.convite-input:focus{border-color:var(--primary)}.convite-badge{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:20px;padding:12px 16px;background:#10b9810f;border:1px solid rgba(16,185,129,.15);border-radius:12px}.convite-empresa{color:#f1f5f9;font-weight:700;font-size:15px}.convite-time{color:#94a3b8;font-size:13px}.convite-cargo{font-size:12px;font-weight:700;padding:3px 10px;border-radius:20px}.success-card{text-align:center}.success-icon{width:64px;height:64px;background:#10b9811f;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--success);margin:0 auto 20px}.success-card h2{color:#f1f5f9;font-size:24px;margin-bottom:12px}.success-card p{color:#64748b;font-size:14px;line-height:1.6}.success-card strong{color:#f1f5f9}.app-layout{display:flex;min-height:100vh}.sidebar{width:256px;min-width:256px;background:var(--sidebar);display:flex;flex-direction:column;padding:32px 0 24px;position:sticky;top:0;height:100vh}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 24px;margin-bottom:4px}.logo-dot{font-size:18px;color:var(--primary)}.logo-text{font-family:var(--mono);font-size:15px;color:#f8fafc;letter-spacing:3px;font-weight:700}.sidebar-version{padding:0 24px;font-size:10px;color:#334155;margin-bottom:28px}.sidebar-badge-gestor{margin:0 24px 20px;padding:6px 12px;background:#fbbf241a;border:1px solid rgba(251,191,36,.2);border-radius:8px;color:#fcd34d;font-size:12px;font-weight:700;display:inline-block}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px;flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 16px;border-radius:10px;background:transparent;border:none;color:#475569;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;font-family:var(--font);text-align:left}.nav-item:hover{background:#ffffff0a;color:#94a3b8}.nav-item.active{background:#2563eb1f;color:#60a5fa;font-weight:700}.nav-item.active span:first-child{filter:none}.badge-count{margin-left:auto;background:var(--danger);color:#fff;font-size:10px;font-weight:800;padding:2px 7px;border-radius:20px;min-width:20px;text-align:center}.sidebar-footer{padding:0 16px}.perfil-mini{display:flex;align-items:center;gap:12px;padding:12px 8px;margin-bottom:8px}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7C3AED);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:15px;flex-shrink:0}.gestor-avatar{background:linear-gradient(135deg,#f59e0b,#ef4444)}.perfil-nome{color:#f1f5f9;font-size:13px;font-weight:700}.perfil-cargo{color:#475569;font-size:11px}.btn-sair{width:100%;padding:10px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);color:#475569;font-size:13px;cursor:pointer;font-family:var(--font);transition:all .15s}.btn-sair:hover{background:#ef444414;border-color:#ef444433;color:#fca5a5}.main-content{flex:1;min-width:0;overflow-y:auto}.tab-content{padding:40px 48px;max-width:1200px}.tab-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.tab-header h1{font-size:26px;font-weight:800;color:var(--text)}.tab-header p{color:var(--muted);font-size:14px;margin-top:4px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.kpi-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:24px;box-shadow:var(--shadow)}.kpi-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px}.kpi-valor{font-size:28px;font-weight:800;color:var(--text);line-height:1;margin-bottom:6px}.kpi-label{color:var(--subtle);font-size:12px;font-weight:600;letter-spacing:.3px}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.overview-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:24px;box-shadow:var(--shadow)}.overview-card h3{font-size:14px;font-weight:800;color:var(--text);margin-bottom:20px}.membro-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.membro-row:last-child{border-bottom:none}.membro-row-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7C3AED);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:13px;flex-shrink:0}.membro-row-info{flex:1}.membro-row-nome{font-size:13px;font-weight:700;color:var(--text)}.membro-row-cargo{font-size:11px;color:var(--subtle)}.membro-row-horas{font-size:14px;font-weight:800;color:var(--primary);font-family:var(--mono)}.dot-ativo{color:var(--success);margin-right:6px;font-size:10px}.tarefa-mini{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.tarefa-mini:last-child{border-bottom:none}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.status-pendente{background:var(--warning)}.status-dot.status-em_progresso{background:var(--primary)}.status-dot.status-concluida{background:var(--success)}.tarefa-mini-titulo{flex:1;font-size:13px;color:var(--text);font-weight:500}.tarefa-mini-resp{font-size:11px;color:var(--subtle)}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}.kanban-col{display:flex;flex-direction:column;gap:12px}.kanban-col-header{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;color:var(--text);padding-bottom:12px;border-bottom:2px solid;letter-spacing:.5px}.kanban-count{background:var(--bg);border-radius:20px;padding:2px 10px;font-size:12px;color:var(--muted)}.kanban-empty{color:var(--subtle);font-size:13px;text-align:center;padding:20px 0}.tarefa-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:16px;box-shadow:0 2px 8px #0000000d;transition:box-shadow .2s}.tarefa-card:hover{box-shadow:var(--shadow)}.tarefa-prio{display:inline-block;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;margin-bottom:10px;text-transform:capitalize;letter-spacing:.3px}.tarefa-titulo{font-size:14px;font-weight:700;color:var(--text);margin-bottom:6px}.tarefa-desc{font-size:12px;color:var(--muted);margin-bottom:10px;line-height:1.5}.tarefa-resp{font-size:12px;color:var(--muted);margin-bottom:8px}.tarefa-meta{display:flex;gap:12px;font-size:11px;color:var(--subtle)}.tarefa-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.tarefa-actions button{font-size:11px;padding:5px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer;font-family:var(--font);transition:all .15s}.tarefa-actions button:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.equipe-table{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.table-header,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;padding:14px 20px;gap:16px;align-items:center}.table-header{background:var(--bg);font-size:11px;font-weight:700;color:var(--subtle);letter-spacing:.5px;border-bottom:1px solid var(--border)}.table-row{border-bottom:1px solid var(--border);transition:background .1s}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--bg)}.table-membro{display:flex;align-items:center;gap:12px}.avatar-sm{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7C3AED);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:12px;flex-shrink:0}.membro-nome-table{font-size:13px;font-weight:700;color:var(--text)}.membro-email-table{font-size:11px;color:var(--subtle)}.cargo-badge,.time-badge{font-size:12px;color:var(--muted);font-weight:500}.status-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:4px 12px;border-radius:20px}.status-badge.ativo{background:#10b9811a;color:var(--success)}.status-badge.inativo{background:#64748b1a;color:var(--subtle)}.horas-badge{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--primary)}.membros-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.membro-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:24px 20px;text-align:center;box-shadow:var(--shadow)}.membro-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7C3AED);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:20px;margin:0 auto 12px}.membro-nome{font-size:14px;font-weight:700;color:var(--text);margin-bottom:4px}.membro-cargo{font-size:12px;color:var(--subtle);margin-bottom:6px}.membro-time{font-size:11px;font-weight:600}.notifs-list{display:flex;flex-direction:column;gap:10px}.notif-item{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:16px 20px;cursor:pointer;transition:all .15s}.notif-item:hover{box-shadow:var(--shadow)}.notif-item.nao-lida{border-left:3px solid var(--primary);background:#2563eb05}.notif-titulo{font-size:14px;font-weight:700;color:var(--text);margin-bottom:4px}.notif-msg{font-size:13px;color:var(--muted);margin-bottom:8px}.notif-time{font-size:11px;color:var(--subtle)}.convite-generator{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:28px;box-shadow:var(--shadow);margin-bottom:16px}.convite-generator h3{font-size:16px;font-weight:800;margin-bottom:20px}.field-row{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px}.field-row .field{flex:1;min-width:180px}.field-row .field label{color:var(--muted);font-size:12px;font-weight:600}.field-row .field input,.field-row .field select{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 14px;color:var(--text);font-family:var(--font);font-size:14px;outline:none;width:100%}.convite-gerado{margin-top:24px;padding:24px;background:#10b9810a;border:1px solid rgba(16,185,129,.15);border-radius:14px}.convite-codigo{font-family:var(--mono);font-size:32px;font-weight:700;color:var(--success);letter-spacing:4px;text-align:center;margin-bottom:12px}.convite-gerado p{color:var(--muted);font-size:13px;margin-bottom:14px}.convite-link-box{display:flex;gap:10px;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin-bottom:10px}.convite-link-box span{flex:1;font-size:13px;color:var(--muted);word-break:break-all}.convite-link-box button,.convite-share button{background:var(--primary);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:700;cursor:pointer;font-family:var(--font);white-space:nowrap;transition:background .15s}.convite-link-box button:hover,.convite-share button:hover{background:#1d4ed8}.convites-list{display:flex;flex-direction:column;gap:8px}.convite-item{background:var(--card);border-radius:12px;border:1px solid var(--border);padding:14px 20px;display:flex;align-items:center;gap:16px}.convite-item-codigo{font-family:var(--mono);font-size:16px;font-weight:700;color:var(--text);min-width:120px}.convite-item-info{flex:1;font-size:13px;color:var(--muted)}.convite-item-status{font-size:12px;font-weight:700;padding:4px 12px;border-radius:20px}.convite-item-status.ativo{background:#10b9811a;color:var(--success)}.convite-item-status.usado{background:#64748b1a;color:var(--subtle)}.convite-item-exp{font-size:11px;color:var(--subtle)}.times-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.times-section{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);padding:24px;box-shadow:var(--shadow)}.times-section h3{font-size:15px;font-weight:800;margin-bottom:20px}.add-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.add-row input,.add-row select{flex:1;min-width:120px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:9px 14px;font-family:var(--font);font-size:14px;outline:none;color:var(--text)}.item-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;border:1px solid;font-size:13px;font-weight:600;margin:4px 4px 4px 0;color:var(--text)}.btn-primary{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:700;cursor:pointer;font-family:var(--font);transition:background .15s}.btn-primary:hover{background:#1d4ed8}.btn-sm{background:var(--bg);color:var(--muted);border:1px solid var(--border);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer;font-family:var(--font)}.btn-sm:hover{background:var(--card)}.loading-state{color:var(--subtle);text-align:center;padding:60px 0;font-size:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--card);border-radius:20px;border:1px solid var(--border);padding:32px;width:100%;max-width:600px;box-shadow:0 24px 48px #00000026;animation:slideUp .2s ease}.modal h2{font-size:20px;font-weight:800;margin-bottom:24px}.modal .field{margin-bottom:16px}.modal .field label{color:var(--muted);font-size:12px;font-weight:600;margin-bottom:6px;display:block}.modal .field input,.modal .field textarea,.modal .field select{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-family:var(--font);font-size:14px;color:var(--text);outline:none}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.toast{position:fixed;bottom:24px;right:24px;background:var(--sidebar);color:#f1f5f9;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 20px;font-size:14px;font-weight:600;box-shadow:0 8px 24px #0000004d;z-index:1000;animation:slideUp .3s ease}
