.notification-bell[data-v-5d52965d]{position:relative}.bell-button[data-v-5d52965d]{position:relative;background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.bell-button[data-v-5d52965d]:hover{background:#ffffff0d}.bell-button.active[data-v-5d52965d]{background:#fe57301a}.bell-icon[data-v-5d52965d]{width:22px;height:22px;color:var(--text-secondary);transition:color .2s}.bell-button:hover .bell-icon[data-v-5d52965d],.bell-button.active .bell-icon[data-v-5d52965d]{color:var(--text-primary)}.badge[data-v-5d52965d]{position:absolute;top:4px;right:4px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:18px;text-align:center}.dropdown[data-v-5d52965d]{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:600px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;z-index:1000}.dropdown-enter-active[data-v-5d52965d],.dropdown-leave-active[data-v-5d52965d]{transition:all .2s ease}.dropdown-enter-from[data-v-5d52965d],.dropdown-leave-to[data-v-5d52965d]{opacity:0;transform:translateY(-10px)}.dropdown-header[data-v-5d52965d]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.dropdown-header h3[data-v-5d52965d]{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.mark-all-btn[data-v-5d52965d]{background:none;border:none;color:var(--primary-color);font-size:.85rem;font-weight:500;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s}.mark-all-btn[data-v-5d52965d]:hover:not(:disabled){background:#fe57301a}.mark-all-btn[data-v-5d52965d]:disabled{opacity:.5;cursor:not-allowed}.loading-state[data-v-5d52965d],.error-state[data-v-5d52965d],.empty-state[data-v-5d52965d]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;color:var(--text-secondary);gap:.75rem}.spinner[data-v-5d52965d]{width:32px;height:32px;border:3px solid rgba(254,87,48,.2);border-top-color:var(--primary-color);border-radius:50%;animation:spin-5d52965d .8s linear infinite}@keyframes spin-5d52965d{to{transform:rotate(360deg)}}.empty-icon[data-v-5d52965d]{width:48px;height:48px;color:var(--text-secondary);opacity:.3;margin-bottom:.5rem}.empty-state p[data-v-5d52965d]{font-size:.95rem;font-weight:500;color:var(--text-primary);margin:0}.empty-state span[data-v-5d52965d]{font-size:.85rem}.error-state[data-v-5d52965d]{color:#ef4444}.alerts-list[data-v-5d52965d]{overflow-y:auto;max-height:450px}.alert-item[data-v-5d52965d]{display:flex;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s;position:relative}.alert-item[data-v-5d52965d]:hover{background:#ffffff08}.alert-item.unread[data-v-5d52965d]{background:#fe57300d}.alert-icon[data-v-5d52965d]{flex-shrink:0;width:36px;height:36px;background:#fe573026;border-radius:8px;display:flex;align-items:center;justify-content:center}.alert-icon svg[data-v-5d52965d]{width:20px;height:20px;color:var(--primary-color)}.alert-content[data-v-5d52965d]{flex:1;display:flex;flex-direction:column;gap:.25rem}.alert-header[data-v-5d52965d]{display:flex;justify-content:space-between;align-items:center}.alert-type[data-v-5d52965d]{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.alert-time[data-v-5d52965d]{font-size:.75rem;color:var(--text-secondary)}.alert-title[data-v-5d52965d]{font-size:.9rem;font-weight:500;color:var(--text-primary)}.alert-details[data-v-5d52965d]{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.actual-value[data-v-5d52965d]{font-weight:600}.actual-value.below[data-v-5d52965d]{color:#f59e0b}.actual-value.above[data-v-5d52965d]{color:#ef4444}.threshold-info[data-v-5d52965d]{color:var(--text-secondary)}.unread-indicator[data-v-5d52965d]{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:8px;height:8px;background:#3b82f6;border-radius:50%}.dropdown-footer[data-v-5d52965d]{padding:.75rem 1.25rem;border-top:1px solid var(--border);text-align:center}.footer-link[data-v-5d52965d]{color:var(--primary-color);text-decoration:none;font-size:.9rem;font-weight:500;display:inline-block;padding:.5rem 1rem;border-radius:4px;transition:background .2s}.footer-link[data-v-5d52965d]:hover{background:#fe57301a}.date-range-picker[data-v-3cc434ab]{display:flex;flex-direction:column;gap:12px}.picker-controls[data-v-3cc434ab]{display:flex;gap:6px;align-items:center}.preset-btn[data-v-3cc434ab]{padding:6px 14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s ease;white-space:nowrap}.preset-btn[data-v-3cc434ab]:hover{background:var(--bg-secondary);border-color:var(--primary)}.preset-btn.active[data-v-3cc434ab]{background:var(--primary);color:#fff;border-color:var(--primary)}.preset-btn.custom-btn[data-v-3cc434ab]{border-style:dashed;border-color:var(--border)}.preset-btn.custom-btn.active[data-v-3cc434ab]{background:#64748b;border-style:solid;border-color:#64748b}.custom-dates[data-v-3cc434ab]{display:flex;gap:12px;align-items:center;padding:16px;background:var(--bg-card);border-radius:6px;border:1px solid var(--border)}.date-group[data-v-3cc434ab]{display:flex;flex-direction:column;gap:6px}.date-label[data-v-3cc434ab]{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.date-input[data-v-3cc434ab]{padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;background:var(--bg-secondary);color:var(--text);cursor:pointer;min-width:150px}.date-input[data-v-3cc434ab]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb33}.date-input[data-v-3cc434ab]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer}.refresh-btn[data-v-3cc434ab]{padding:8px 20px;background:var(--primary);color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-left:8px}.refresh-btn[data-v-3cc434ab]:hover{opacity:.9}.refresh-btn[data-v-3cc434ab]:active{transform:scale(.98)}.header-actions[data-v-a485c923]{display:flex;gap:.5rem}.clear-button[data-v-a485c923]{background-color:var(--error);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:opacity .2s}.clear-button[data-v-a485c923]:hover{opacity:.8}.clear-button[data-v-a485c923]:disabled{opacity:.5;cursor:not-allowed}.sync-selected-button[data-v-a485c923]{background-color:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:opacity .2s}.sync-selected-button[data-v-a485c923]:hover{opacity:.8}.sync-selected-button[data-v-a485c923]:disabled{opacity:.5;cursor:not-allowed}.sync-button[data-v-a485c923]{background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:opacity .2s}.sync-button[data-v-a485c923]:hover{opacity:.8}.sync-button[data-v-a485c923]:disabled{opacity:.5;cursor:not-allowed}.modal-overlay[data-v-a485c923]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-a485c923]{background-color:var(--bg-secondary);padding:2rem;border-radius:1rem;border:1px solid var(--border);max-width:500px;width:90%}.modal h3[data-v-a485c923]{margin-bottom:1rem;color:var(--text)}.modal p[data-v-a485c923]{margin-bottom:1.5rem;color:var(--text-secondary);line-height:1.6}.modal-actions[data-v-a485c923]{display:flex;gap:1rem;justify-content:flex-end}.cancel-button[data-v-a485c923]{background-color:var(--bg-card);color:var(--text);border:1px solid var(--border);padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .2s}.cancel-button[data-v-a485c923]:hover{background-color:var(--border)}.danger-button[data-v-a485c923]{background-color:var(--error);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:opacity .2s}.danger-button[data-v-a485c923]:hover{opacity:.8}.sync-period-card[data-v-a485c923]{background-color:var(--bg-secondary);border-radius:.75rem;border:1px solid var(--border);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.sync-period-card .card-header[data-v-a485c923]{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.sync-period-card .card-header h3[data-v-a485c923]{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.sync-period-card .card-subtitle[data-v-a485c923]{font-size:.875rem;color:var(--text-secondary)}.sync-period-card .card-content[data-v-a485c923]{display:flex;justify-content:flex-start}.filters[data-v-a485c923]{display:flex;gap:2rem;align-items:flex-end;margin-bottom:2rem;padding:1.5rem;background-color:var(--bg-secondary);border-radius:.75rem;border:1px solid var(--border);flex-wrap:wrap}.filter-group[data-v-a485c923]{display:flex;flex-direction:column;gap:.5rem}.filter-group.flex-grow[data-v-a485c923]{flex:1;min-width:300px}.filter-group label[data-v-a485c923]{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.repo-select[data-v-a485c923]{background-color:var(--bg-card);color:var(--text);border:1px solid var(--border);padding:.75rem 1rem;border-radius:.5rem;font-size:1rem;cursor:pointer;min-width:250px}.repo-select[data-v-a485c923]:focus{outline:none;border-color:var(--primary)}.time-toggle[data-v-a485c923]{display:flex;gap:.5rem}.time-toggle button[data-v-a485c923]{background-color:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);padding:.75rem 1.25rem;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.time-toggle button[data-v-a485c923]:hover{background-color:var(--border)}.time-toggle button.active[data-v-a485c923]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.mode-toggle[data-v-a485c923]{display:flex;gap:.5rem}.mode-toggle button[data-v-a485c923]{background-color:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);padding:.75rem 1.25rem;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s}.mode-toggle button[data-v-a485c923]:hover{background-color:var(--border)}.mode-toggle button.active[data-v-a485c923]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.empty-state[data-v-a485c923]{background-color:var(--bg-secondary);padding:3rem;border-radius:.75rem;border:1px solid var(--border);text-align:center}.empty-state p[data-v-a485c923]{color:var(--text-secondary);font-size:1rem}.table-container[data-v-a485c923]{margin-top:2rem;padding:1.5rem;background-color:var(--bg-secondary);border-radius:.75rem;border:1px solid var(--border)}.table-header[data-v-a485c923]{margin-bottom:1.5rem}.table-container h2[data-v-a485c923]{margin:0 0 .5rem;font-size:1.5rem;color:var(--text)}.table-subtitle[data-v-a485c923]{color:var(--text-secondary);font-size:.875rem;margin:0}.contributors-table-wrapper[data-v-a485c923]{overflow-x:auto;border-radius:.5rem;border:1px solid var(--border)}.contributors-table[data-v-a485c923]{width:100%;border-collapse:collapse;background-color:var(--bg-secondary)}.contributors-table thead[data-v-a485c923]{background-color:var(--bg-card);border-bottom:2px solid var(--border)}.contributors-table th[data-v-a485c923]{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.contributors-table td[data-v-a485c923]{padding:1rem;border-top:1px solid var(--border);color:var(--text)}.contributors-table tbody tr[data-v-a485c923]:hover{background-color:var(--bg-card)}.contributors-table .username[data-v-a485c923]{font-weight:600;color:var(--primary)}.contributors-table .number[data-v-a485c923]{text-align:right;font-family:Monaco,Courier New,monospace}.contributors-table .positive[data-v-a485c923]{color:#10b981}.contributors-table .negative[data-v-a485c923]{color:#ef4444}.commit-link[data-v-a485c923]{color:var(--primary);text-decoration:none;font-weight:500;transition:all .2s;padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.commit-link[data-v-a485c923]:hover{background-color:var(--primary);color:#fff;text-decoration:none}@media (max-width: 768px){.sync-period-card[data-v-a485c923]{padding:1rem}.sync-period-card .card-content[data-v-a485c923]{justify-content:stretch}.filters[data-v-a485c923]{flex-direction:column;align-items:stretch}.mode-toggle[data-v-a485c923]{flex-direction:column}.filter-group.flex-grow[data-v-a485c923]{min-width:auto}.top-nav-bar[data-v-a485c923]{padding:.5rem 1rem}.top-nav-right[data-v-a485c923]{flex-wrap:wrap;gap:.5rem}.github-actions[data-v-a485c923]{flex-direction:column;gap:.5rem;padding-right:.5rem;border-right:none;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.github-actions button[data-v-a485c923]{width:100%}.dashboard-nav[data-v-a485c923]{overflow-x:auto;padding:0 .5rem}.nav-tab[data-v-a485c923]{padding:.75rem 1rem;font-size:.875rem;white-space:nowrap}.user-badge[data-v-a485c923]{margin-left:0}.main-content[data-v-a485c923]{padding:1rem}}.main-content[data-v-a485c923]{padding:1.5rem}.top-nav-bar[data-v-a485c923]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background-color:var(--bg-secondary);border-bottom:1px solid var(--border)}.top-nav-left[data-v-a485c923]{flex:1;display:flex;align-items:center}.app-title[data-v-a485c923]{font-size:1.25rem;font-weight:700;color:#fff;margin:0;letter-spacing:.5px}.apex-orange[data-v-a485c923]{color:#fe5730}.top-nav-right[data-v-a485c923]{display:flex;align-items:center;gap:1rem}.github-actions[data-v-a485c923]{display:flex;gap:.5rem;align-items:center;padding-right:1rem;border-right:1px solid var(--border)}.dashboard-nav[data-v-a485c923]{display:flex;gap:0;margin:0;border-bottom:2px solid var(--border);padding:0 1rem}.nav-tab[data-v-a485c923]{display:flex;align-items:center;gap:8px;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:-2px}.nav-tab[data-v-a485c923]:hover{color:var(--text);background:var(--bg-secondary)}.nav-tab.active[data-v-a485c923]{color:var(--primary);border-bottom-color:var(--primary)}.nav-tab svg[data-v-a485c923]{opacity:.7}.nav-tab.active svg[data-v-a485c923]{opacity:1}.user-badge[data-v-a485c923]{display:inline-flex;align-items:center;padding:.5rem 1rem;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:.5rem;font-size:.875rem;color:var(--text-secondary);font-weight:600;margin-left:1rem}.logout-button[data-v-a485c923]{display:flex;align-items:center;gap:.5rem;background-color:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.logout-button[data-v-a485c923]:hover{background-color:var(--border);color:var(--text)}.loading-overlay[data-v-a485c923]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem}.loading-overlay p[data-v-a485c923]{margin-top:1rem;color:var(--text-secondary);font-size:1rem;font-weight:500}.spinner[data-v-a485c923]{width:50px;height:50px;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-a485c923 .8s linear infinite}@keyframes spin-a485c923{to{transform:rotate(360deg)}}.content-blur[data-v-a485c923]{filter:blur(3px);pointer-events:none;transition:filter .3s ease}.login-container[data-v-ab2c20b0]{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--bg)}@media (max-width: 968px){.login-container[data-v-ab2c20b0]{grid-template-columns:1fr}.login-branding[data-v-ab2c20b0]{display:none}}.login-branding[data-v-ab2c20b0]{background:linear-gradient(135deg,#1a1f36,#0f172a);display:flex;align-items:center;justify-content:center;padding:3rem;position:relative;overflow:hidden}.login-branding[data-v-ab2c20b0]:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(254,87,48,.15) 0%,transparent 70%);top:-250px;right:-250px;animation:pulse-ab2c20b0 4s ease-in-out infinite}@keyframes pulse-ab2c20b0{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.branding-content[data-v-ab2c20b0]{max-width:500px;z-index:1}.logo-section[data-v-ab2c20b0]{margin-bottom:4rem}.brand-title[data-v-ab2c20b0]{font-size:3.5rem;font-weight:800;margin:0 0 1rem;color:#fff;letter-spacing:-.02em}.apex-text[data-v-ab2c20b0]{color:#fe5730;display:inline-block}.brand-tagline[data-v-ab2c20b0]{font-size:1.25rem;color:#ffffffb3;font-weight:400;margin:0}.feature-list[data-v-ab2c20b0]{display:flex;flex-direction:column;gap:2rem}.feature-item[data-v-ab2c20b0]{display:flex;gap:1.5rem;align-items:flex-start;padding:1.5rem;background:#ffffff0d;border-radius:1rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s}.feature-item[data-v-ab2c20b0]:hover{background:#ffffff14;border-color:#fe57304d;transform:translate(10px)}.feature-icon[data-v-ab2c20b0]{width:40px;height:40px;color:#fe5730;flex-shrink:0}.feature-item h3[data-v-ab2c20b0]{font-size:1.125rem;font-weight:600;color:#fff;margin:0 0 .5rem}.feature-item p[data-v-ab2c20b0]{font-size:.875rem;color:#fff9;margin:0;line-height:1.5}.login-form-section[data-v-ab2c20b0]{display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}.login-card[data-v-ab2c20b0]{background:var(--bg-card);border-radius:1rem;box-shadow:0 10px 40px #0000001a;padding:3rem;width:100%;max-width:440px;border:1px solid var(--border)}.login-header[data-v-ab2c20b0]{text-align:center;margin-bottom:2rem}.login-header h2[data-v-ab2c20b0]{color:var(--text);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.login-header .subtitle[data-v-ab2c20b0]{color:var(--text-secondary);font-size:.875rem;margin:0}.google-button[data-v-ab2c20b0]{width:100%;padding:.75rem 1rem;background:#fff;color:#3c4043;border:1px solid #dadce0;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;gap:.75rem}.google-button[data-v-ab2c20b0]:hover{background:#f8f9fa;box-shadow:0 1px 3px #0000001f}.google-icon[data-v-ab2c20b0]{width:20px;height:20px}.divider[data-v-ab2c20b0]{display:flex;align-items:center;margin:1.5rem 0;text-align:center}.divider[data-v-ab2c20b0]:before,.divider[data-v-ab2c20b0]:after{content:"";flex:1;border-bottom:1px solid var(--border)}.divider span[data-v-ab2c20b0]{padding:0 1rem;color:var(--text-secondary);font-size:.875rem;font-weight:500}.login-form[data-v-ab2c20b0]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-ab2c20b0]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-ab2c20b0]{font-size:.875rem;font-weight:600;color:var(--text)}.form-group input[data-v-ab2c20b0]{padding:.75rem 1rem;border:1px solid var(--border);border-radius:.5rem;font-size:1rem;transition:border-color .2s;background:var(--bg-card);color:var(--text)}.form-group input[data-v-ab2c20b0]:focus{outline:none;border-color:#fe5730;box-shadow:0 0 0 3px #fe57301a}.form-group input[data-v-ab2c20b0]:disabled{background-color:var(--bg);cursor:not-allowed;opacity:.6}.error-message[data-v-ab2c20b0]{padding:.75rem;background-color:#fff5f5;border:1px solid #fc8181;border-radius:.5rem;color:#c53030;font-size:.875rem}.login-button[data-v-ab2c20b0]{padding:.875rem 1.5rem;background:#fe5730;color:#fff;border:none;border-radius:.75rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem}.login-button[data-v-ab2c20b0]:hover:not(:disabled){background:#d94620;transform:translateY(-1px);box-shadow:0 8px 20px #fe57304d}.login-button[data-v-ab2c20b0]:disabled{opacity:.6;cursor:not-allowed;transform:none}.kpi-overview[data-v-dc644c30]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border)}.header-section[data-v-dc644c30]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.kpi-overview h2[data-v-dc644c30]{margin:0 0 5px;font-size:24px;color:var(--text)}.period-info[data-v-dc644c30]{margin:0;color:var(--text-secondary);font-size:14px}.btn-export[data-v-dc644c30]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}.btn-export[data-v-dc644c30]:hover{opacity:.9}.section-header[data-v-dc644c30]{margin:30px 0 15px}.section-header[data-v-dc644c30]:first-of-type{margin-top:0}.section-header.section-divider[data-v-dc644c30]{margin-top:50px;padding-top:30px;border-top:2px solid var(--border)}.section-header h3[data-v-dc644c30]{margin:0 0 5px;font-size:20px;color:var(--text);font-weight:700}.section-subtitle[data-v-dc644c30]{margin:0;font-size:13px;color:var(--text-secondary);font-style:italic}.kpi-cards[data-v-dc644c30]{display:grid;gap:20px;margin-bottom:20px}.kpi-cards-main[data-v-dc644c30]{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.kpi-cards-revenue[data-v-dc644c30]{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.kpi-card[data-v-dc644c30]{padding:20px;border-radius:8px;border:2px solid var(--border);background:var(--bg-card);transition:transform .2s,box-shadow .2s;position:relative;overflow:visible;z-index:1}.kpi-card[data-v-dc644c30]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;z-index:100}.info-icon[data-v-dc644c30]{display:inline-block;margin-left:6px;width:16px;height:16px;line-height:16px;text-align:center;font-size:12px;font-weight:700;color:var(--text-secondary);cursor:help;opacity:.6;transition:opacity .2s}.info-icon[data-v-dc644c30]:hover{opacity:1}.tooltip[data-v-dc644c30]{position:absolute;top:100%;left:0;right:0;margin-top:8px;padding:16px;background:var(--bg-secondary);border:2px solid var(--primary);border-radius:8px;box-shadow:0 8px 24px #0006;z-index:9999;animation:tooltipFadeIn-dc644c30 .2s ease-in-out;text-align:left}@keyframes tooltipFadeIn-dc644c30{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tooltip-title[data-v-dc644c30]{font-size:14px;font-weight:700;color:var(--primary);margin-bottom:8px}.tooltip-description[data-v-dc644c30]{font-size:13px;color:var(--text);margin-bottom:12px;line-height:1.5}.tooltip-formula[data-v-dc644c30]{font-size:12px;color:var(--text);background:#2563eb1a;padding:8px 10px;border-radius:4px;margin-bottom:8px;font-family:Courier New,monospace;line-height:1.6}.tooltip-example[data-v-dc644c30]{font-size:12px;color:var(--text);background:#10b9811a;padding:8px 10px;border-radius:4px;margin-bottom:8px;line-height:1.6}.tooltip-benchmark[data-v-dc644c30]{font-size:12px;color:var(--text);margin-bottom:8px;padding:6px 10px;background:#f59e0b1a;border-radius:4px}.tooltip-alternative[data-v-dc644c30]{font-size:11px;color:var(--text-secondary);font-style:italic;margin-bottom:8px}.tooltip-details[data-v-dc644c30]{font-size:11px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.tooltip-why[data-v-dc644c30]{font-size:12px;color:var(--text);padding:8px 10px;background:#8b5cf61a;border-radius:4px;border-left:3px solid rgba(139,92,246,.5);line-height:1.5}.kpi-card.good[data-v-dc644c30]{border-color:var(--success);background:#10b9811a}.kpi-card.low[data-v-dc644c30]{border-color:var(--warning);background:#f59e0b1a}.kpi-card.high[data-v-dc644c30]{border-color:var(--primary);background:#2563eb1a}.kpi-card.revenue-card[data-v-dc644c30]{border-color:var(--primary);background:#2563eb0d}.kpi-card.revenue-card.invoiced[data-v-dc644c30]{border-color:var(--success);background:#10b9810d}.kpi-card.revenue-card.estimated[data-v-dc644c30]{border-color:var(--warning);background:#f59e0b0d}.kpi-label[data-v-dc644c30]{font-size:14px;color:var(--text-secondary);margin-bottom:8px;font-weight:500}.kpi-value-container[data-v-dc644c30]{display:flex;align-items:center;gap:12px;margin-bottom:4px}.kpi-value[data-v-dc644c30]{font-size:32px;font-weight:700;color:var(--text)}.kpi-delta[data-v-dc644c30]{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:14px;font-weight:600}.delta-positive[data-v-dc644c30]{background:#10b98126;color:var(--success)}.delta-negative[data-v-dc644c30]{background:#ef444426;color:var(--error)}.delta-neutral[data-v-dc644c30]{background:#9ca3af26;color:var(--text-secondary)}.delta-arrow[data-v-dc644c30]{font-size:16px;font-weight:700}.delta-value[data-v-dc644c30]{font-size:13px}.kpi-benchmark[data-v-dc644c30]{font-size:12px;color:var(--text-secondary);opacity:.7}.metrics-section[data-v-dc644c30]{margin-top:30px}.metrics-section.hours-section[data-v-dc644c30]{margin-top:20px}.metrics-section h3[data-v-dc644c30]{margin:0 0 15px;font-size:18px;color:var(--text)}.metrics-grid[data-v-dc644c30]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.metric-item[data-v-dc644c30]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.metric-label[data-v-dc644c30]{font-size:14px;color:var(--text-secondary)}.metric-value-group[data-v-dc644c30]{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.metric-value[data-v-dc644c30]{font-size:16px;font-weight:600;color:var(--text)}.metric-days[data-v-dc644c30]{font-size:12px;font-weight:500;color:var(--text-secondary)}.metric-value.profit[data-v-dc644c30]{color:var(--success)}.metric-value.loss[data-v-dc644c30]{color:var(--error)}.metric-value.cost[data-v-dc644c30]{color:var(--warning)}.metric-value.billable[data-v-dc644c30],.metric-value.revenue[data-v-dc644c30]{color:var(--primary)}.metric-item-revenue[data-v-dc644c30]{position:relative}.metric-item-revenue[data-v-dc644c30]:hover{z-index:100}.profit-margin-card[data-v-dc644c30]{padding:20px;border-radius:8px;border:2px solid var(--border);background:var(--bg-card);transition:transform .2s,box-shadow .2s;position:relative;margin-top:15px}.profit-margin-card[data-v-dc644c30]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.profit-margin-card.positive[data-v-dc644c30]{border-color:var(--success);background:#10b9811a}.profit-margin-card.negative[data-v-dc644c30]{border-color:var(--error);background:#ef44441a}.kpi-trend-chart[data-v-88530500]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border)}.chart-header[data-v-88530500]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.kpi-trend-chart h3[data-v-88530500]{margin:0 0 5px;font-size:20px;color:var(--text)}.chart-subtitle[data-v-88530500]{margin:0;font-size:13px;color:var(--text-secondary)}.chart-controls[data-v-88530500]{display:flex;gap:10px}.interval-selector[data-v-88530500]{padding:6px 12px;font-size:13px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text);cursor:pointer;transition:border-color .2s}.interval-selector[data-v-88530500]:hover{border-color:var(--primary)}.chart-container[data-v-88530500]{height:300px;position:relative}.loading[data-v-88530500],.error[data-v-88530500]{text-align:center;padding:60px 20px;font-size:14px}.loading[data-v-88530500]{color:var(--text-secondary)}.error[data-v-88530500]{color:var(--error);background:#ef44441a;border:1px solid var(--error);border-radius:4px}.financial-overview-card[data-v-f9c26947]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border);height:100%}.card-header[data-v-f9c26947]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.card-header h3[data-v-f9c26947]{margin:0 0 5px;font-size:20px;color:var(--text);font-weight:700}.card-subtitle[data-v-f9c26947]{margin:0;font-size:13px;color:var(--text-secondary);font-style:italic}.metrics-grid[data-v-f9c26947]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.metric-item[data-v-f9c26947]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;position:relative}.metric-item-revenue[data-v-f9c26947]:hover{z-index:100}.metric-label[data-v-f9c26947]{font-size:14px;color:var(--text-secondary)}.metric-value[data-v-f9c26947]{font-size:16px;font-weight:600;color:var(--text)}.metric-value.profit[data-v-f9c26947]{color:var(--success)}.metric-value.loss[data-v-f9c26947]{color:var(--error)}.metric-value.cost[data-v-f9c26947]{color:var(--warning)}.metric-value.cost-payroll[data-v-f9c26947]{color:#f59e0b}.metric-value.cost-overhead[data-v-f9c26947]{color:#ef4444}.metric-value.revenue[data-v-f9c26947]{color:var(--primary)}.metric-item-total[data-v-f9c26947]{border:2px solid var(--warning);background:#f59e0b0d}.info-icon[data-v-f9c26947]{display:inline-block;margin-left:6px;width:16px;height:16px;line-height:16px;text-align:center;font-size:12px;font-weight:700;color:var(--text-secondary);cursor:help;opacity:.6;transition:opacity .2s}.info-icon[data-v-f9c26947]:hover{opacity:1}.tooltip[data-v-f9c26947]{position:absolute;top:100%;left:0;right:0;margin-top:8px;padding:16px;background:var(--bg-secondary);border:2px solid var(--primary);border-radius:8px;box-shadow:0 8px 24px #0006;z-index:9999;animation:tooltipFadeIn-f9c26947 .2s ease-in-out;text-align:left}@keyframes tooltipFadeIn-f9c26947{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tooltip-title[data-v-f9c26947]{font-size:14px;font-weight:700;color:var(--primary);margin-bottom:8px}.tooltip-description[data-v-f9c26947]{font-size:13px;color:var(--text);margin-bottom:12px;line-height:1.5}.tooltip-formula[data-v-f9c26947]{font-size:12px;color:var(--text);background:#2563eb1a;padding:8px 10px;border-radius:4px;margin-bottom:8px;font-family:Courier New,monospace;line-height:1.6}.tooltip-example[data-v-f9c26947]{font-size:12px;color:var(--text);background:#10b9811a;padding:8px 10px;border-radius:4px;margin-bottom:8px;line-height:1.6}.tooltip-details[data-v-f9c26947]{font-size:11px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.tooltip-why[data-v-f9c26947]{font-size:12px;color:var(--text);padding:8px 10px;background:#8b5cf61a;border-radius:4px;border-left:3px solid rgba(139,92,246,.5);line-height:1.5}.profit-margin-card[data-v-f9c26947]{padding:20px;border-radius:8px;border:2px solid var(--border);background:var(--bg-card);transition:transform .2s,box-shadow .2s;position:relative;margin-top:15px}.profit-margin-card[data-v-f9c26947]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.profit-margin-card.positive[data-v-f9c26947]{border-color:var(--success);background:#10b9811a}.profit-margin-card.negative[data-v-f9c26947]{border-color:var(--error);background:#ef44441a}.kpi-label[data-v-f9c26947]{font-size:14px;color:var(--text-secondary);margin-bottom:8px;font-weight:500}.kpi-value-container[data-v-f9c26947]{display:flex;align-items:center;gap:12px;margin-bottom:4px}.kpi-value[data-v-f9c26947]{font-size:32px;font-weight:700;color:var(--text)}.kpi-delta[data-v-f9c26947]{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:14px;font-weight:600}.delta-positive[data-v-f9c26947]{background:#10b98126;color:var(--success)}.delta-negative[data-v-f9c26947]{background:#ef444426;color:var(--error)}.delta-neutral[data-v-f9c26947]{background:#9ca3af26;color:var(--text-secondary)}.delta-arrow[data-v-f9c26947]{font-size:16px;font-weight:700}.delta-value[data-v-f9c26947]{font-size:13px}.kpi-benchmark[data-v-f9c26947]{font-size:12px;color:var(--text-secondary);opacity:.7}.kpi-dashboard[data-v-0575bdd2]{padding:12px 20px;max-width:1400px;margin:0 auto}.dashboard-header[data-v-0575bdd2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.dashboard-header h1[data-v-0575bdd2]{margin:0;font-size:20px;font-weight:600;color:var(--text)}.header-controls[data-v-0575bdd2]{display:flex;gap:10px;align-items:center;margin-bottom:20px}.dashboard-header-spacer[data-v-0575bdd2]{margin-bottom:10px}.filters-section[data-v-0575bdd2]{margin-bottom:20px;padding:12px 16px;background:var(--bg-card);border-radius:8px;border:1px solid var(--border)}.filter-row[data-v-0575bdd2]{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.filter-group-inline[data-v-0575bdd2]{display:flex;align-items:center;gap:8px}.filter-label[data-v-0575bdd2]{font-size:13px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.button-group[data-v-0575bdd2]{display:flex;gap:4px}.filter-btn[data-v-0575bdd2]{padding:6px 14px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#555;cursor:pointer;font-size:13px;font-weight:500;transition:all .15s}.filter-btn[data-v-0575bdd2]:hover{background:#f8f9fa;border-color:#aaa}.filter-btn.active[data-v-0575bdd2]{background:#2563eb;color:#fff;border-color:#2563eb}.filter-btn.custom-btn[data-v-0575bdd2]{border-style:dashed}.filter-btn.custom-btn.active[data-v-0575bdd2]{background:#64748b;border-style:solid;border-color:#64748b}.filter-select[data-v-0575bdd2]{padding:6px 12px;font-size:13px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#333;cursor:pointer;transition:border-color .2s;min-width:120px}.filter-select[data-v-0575bdd2]:hover{border-color:#aaa}.btn-departments[data-v-0575bdd2]{padding:8px 20px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600;text-decoration:none;display:inline-block}.btn-departments[data-v-0575bdd2]:hover{opacity:.8}.btn-sync[data-v-0575bdd2]{padding:8px 20px;font-size:14px;background:var(--success);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-sync[data-v-0575bdd2]:hover:not(:disabled){opacity:.8}.btn-sync[data-v-0575bdd2]:disabled{opacity:.5;cursor:not-allowed}.loading[data-v-0575bdd2],.error[data-v-0575bdd2]{text-align:center;padding:40px 20px;font-size:18px}.loading[data-v-0575bdd2]{color:var(--text-secondary)}.error[data-v-0575bdd2]{color:var(--error);background:#ef44441a;border:1px solid var(--error);border-radius:4px}.dashboard-content[data-v-0575bdd2]{display:flex;flex-direction:column;gap:30px}.trends-section[data-v-0575bdd2]{margin-bottom:30px}.section-title[data-v-0575bdd2]{margin:0 0 20px;font-size:24px;color:var(--text)}.trends-grid[data-v-0575bdd2]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}@media (max-width: 768px){.trends-grid[data-v-0575bdd2]{grid-template-columns:1fr}}.sync-status[data-v-0575bdd2]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;font-size:13px;margin-right:10px}.sync-label[data-v-0575bdd2]{color:var(--text-secondary);font-weight:500}.sync-time[data-v-0575bdd2]{font-weight:600;color:var(--text)}.sync-time.status-success[data-v-0575bdd2]{color:var(--success)}.sync-time.status-partial[data-v-0575bdd2]{color:#f59e0b}.sync-time.status-failed[data-v-0575bdd2]{color:var(--error)}.sync-details[data-v-0575bdd2]{color:var(--text-secondary);display:flex;align-items:center;gap:4px}.sync-warnings[data-v-0575bdd2]{color:#f59e0b;font-weight:600}.sync-errors[data-v-0575bdd2]{color:var(--error);font-weight:600}.employee-detail-view[data-v-ea946e49]{padding:20px;max-width:1400px;margin:0 auto}.loading[data-v-ea946e49],.error[data-v-ea946e49]{text-align:center;padding:40px;font-size:18px}.error[data-v-ea946e49]{color:var(--error)}.employee-header[data-v-ea946e49]{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--border)}.back-button[data-v-ea946e49]{color:var(--primary);cursor:pointer;margin-bottom:10px;display:inline-block;font-weight:500}.back-button[data-v-ea946e49]:hover{text-decoration:underline}.employee-header h1[data-v-ea946e49]{margin:10px 0;font-size:32px;color:var(--text-primary)}.employee-meta[data-v-ea946e49]{display:flex;gap:20px;margin-top:10px;color:var(--text-secondary)}.meta-item[data-v-ea946e49]{padding:4px 12px;background:var(--bg-secondary);border-radius:4px;font-size:14px}.cost-info-card[data-v-ea946e49]{margin-top:20px;padding:20px;background:linear-gradient(135deg,#fe57300d,#fe573005);border:2px solid rgba(254,87,48,.2);border-radius:8px}.cost-info-card h3[data-v-ea946e49]{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 15px}.cost-details[data-v-ea946e49]{display:flex;flex-direction:column;gap:12px}.cost-item[data-v-ea946e49]{display:flex;flex-direction:column;gap:4px;padding:12px;background:#ffffff08;border-radius:6px;border:1px solid var(--border-color)}.cost-item.primary[data-v-ea946e49]{background:#fe57301a;border:1px solid rgba(254,87,48,.3)}.cost-label[data-v-ea946e49]{font-size:13px;color:var(--text-secondary);font-weight:500}.cost-value[data-v-ea946e49]{font-size:16px;color:var(--text-primary);font-weight:600}.cost-note[data-v-ea946e49]{font-size:12px;color:var(--text-secondary);font-style:italic}.cost-item.calculation-method .cost-value[data-v-ea946e49]{font-size:14px}.cost-value.method-salary[data-v-ea946e49]{color:#22c55e}.cost-value.method-cost-rate[data-v-ea946e49]{color:#fbbf24}.cost-value.method-none[data-v-ea946e49]{color:#ef4444}.period-selector-container[data-v-ea946e49]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:15px;padding:12px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.period-selector-container label[data-v-ea946e49]{font-size:14px;font-weight:600;color:var(--text-secondary)}.kpi-comparison-section[data-v-ea946e49],.hours-section[data-v-ea946e49],.project-breakdown-section[data-v-ea946e49],.trend-section[data-v-ea946e49]{margin-bottom:40px}h2[data-v-ea946e49]{font-size:20px;margin-bottom:15px;color:var(--text-primary)}.kpi-cards[data-v-ea946e49]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.kpi-card[data-v-ea946e49]{padding:20px;background:var(--bg-card);border:2px solid var(--border);border-radius:8px}.kpi-label[data-v-ea946e49]{font-size:14px;color:var(--text-secondary);margin-bottom:10px}.kpi-values[data-v-ea946e49]{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.kpi-value.personal[data-v-ea946e49]{font-size:28px;font-weight:700;color:var(--text-primary)}.kpi-comparison[data-v-ea946e49]{font-size:16px;font-weight:600;padding:2px 8px;border-radius:4px}.kpi-comparison.positive[data-v-ea946e49]{color:var(--success);background:#4ade801a}.kpi-comparison.negative[data-v-ea946e49]{color:var(--error);background:#f871711a}.kpi-comparison.neutral[data-v-ea946e49]{color:var(--text-secondary);background:var(--bg-secondary)}.kpi-benchmark[data-v-ea946e49]{font-size:13px;color:var(--text-secondary)}.hours-grid[data-v-ea946e49]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.hour-item[data-v-ea946e49]{display:flex;justify-content:space-between;padding:15px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.hour-label[data-v-ea946e49]{color:var(--text-secondary);font-size:14px}.hour-value[data-v-ea946e49]{font-weight:600;color:var(--text-primary);font-size:16px}.project-table[data-v-ea946e49]{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.project-table th[data-v-ea946e49],.project-table td[data-v-ea946e49]{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.project-table th[data-v-ea946e49]{background:var(--bg-secondary);font-weight:600;font-size:13px;color:var(--text-secondary);text-transform:uppercase}.project-table tbody tr[data-v-ea946e49]:hover{background:var(--bg-hover)}.project-table .bold[data-v-ea946e49]{font-weight:600}.percentage-bar[data-v-ea946e49]{position:relative;width:100%;height:24px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.percentage-fill[data-v-ea946e49]{position:absolute;left:0;top:0;bottom:0;background:var(--primary);transition:width .3s ease}.percentage-text[data-v-ea946e49]{position:relative;display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;font-weight:600;color:var(--text-primary);z-index:1}.trend-section[data-v-ea946e49]{background:var(--bg-card);padding:20px;border-radius:8px;border:1px solid var(--border)}.employee-leaderboard[data-v-cb9e39df]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border)}.header-section[data-v-cb9e39df]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.employee-leaderboard h2[data-v-cb9e39df]{margin:0 0 5px;font-size:24px;color:var(--text)}.subtitle[data-v-cb9e39df]{margin:0;color:var(--text-secondary);font-size:14px}.btn-export[data-v-cb9e39df]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}.btn-export[data-v-cb9e39df]:hover{opacity:.9}.leaderboard-table[data-v-cb9e39df]{overflow-x:auto}table[data-v-cb9e39df]{width:100%;border-collapse:collapse}thead[data-v-cb9e39df]{background:var(--bg-card)}th[data-v-cb9e39df]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}.rank-col[data-v-cb9e39df]{width:60px;text-align:center}.name-col[data-v-cb9e39df]{min-width:200px}.metric-col[data-v-cb9e39df]{text-align:right;min-width:100px}tbody tr[data-v-cb9e39df]{border-bottom:1px solid var(--border);transition:background .2s}tbody tr[data-v-cb9e39df]:hover{background:var(--bg-card)}td[data-v-cb9e39df]{padding:16px 12px;color:var(--text-secondary)}.rank-badge[data-v-cb9e39df]{display:inline-block;width:32px;height:32px;line-height:32px;text-align:center;border-radius:50%;background:var(--border);font-weight:600;font-size:14px;color:var(--text-secondary)}.employee-row.rank-1 .rank-badge[data-v-cb9e39df]{background:linear-gradient(135deg,gold,orange);color:#fff;box-shadow:0 2px 8px #ffd70066}.employee-row.rank-2 .rank-badge[data-v-cb9e39df]{background:linear-gradient(135deg,silver,#a8a8a8);color:#fff;box-shadow:0 2px 8px #c0c0c066}.employee-row.rank-3 .rank-badge[data-v-cb9e39df]{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff;box-shadow:0 2px 8px #cd7f3266}.employee-info[data-v-cb9e39df]{display:flex;flex-direction:column;gap:4px}.employee-link[data-v-cb9e39df]{text-decoration:none;transition:opacity .2s}.employee-link[data-v-cb9e39df]:hover{opacity:.8}.employee-name[data-v-cb9e39df]{font-weight:600;color:var(--text);font-size:15px}.employee-email[data-v-cb9e39df]{font-size:13px;color:var(--text-secondary);opacity:.7}.metric-value[data-v-cb9e39df]{font-weight:500;color:var(--text)}.metric-value.excellent[data-v-cb9e39df]{color:var(--success);font-weight:600}.metric-value.good[data-v-cb9e39df]{color:#34d399}.metric-value.average[data-v-cb9e39df]{color:var(--warning)}.metric-value.low[data-v-cb9e39df]{color:var(--error)}.metric-value.revenue[data-v-cb9e39df]{color:var(--primary)}.metric-value.profit[data-v-cb9e39df]{color:var(--success)}.metric-value.loss[data-v-cb9e39df]{color:var(--error)}.no-data[data-v-cb9e39df]{text-align:center;padding:40px;color:var(--text-secondary);font-style:italic}.leaderboard-controls[data-v-cb9e39df]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.control-group[data-v-cb9e39df]{display:flex;align-items:center;gap:10px}.control-group label[data-v-cb9e39df]{font-size:14px;font-weight:600;color:var(--text-secondary)}.limit-selector[data-v-cb9e39df],.search-input[data-v-cb9e39df]{padding:8px 12px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-secondary);color:var(--text);transition:border-color .2s}.limit-selector[data-v-cb9e39df]{min-width:150px;cursor:pointer}.search-input[data-v-cb9e39df]{min-width:250px}.limit-selector[data-v-cb9e39df]:hover,.search-input[data-v-cb9e39df]:focus{border-color:var(--primary);outline:none}.modal-overlay[data-v-c125cb39]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content[data-v-c125cb39]{background:var(--bg-secondary);border-radius:8px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.modal-header[data-v-c125cb39]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-c125cb39]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.close-btn[data-v-c125cb39]{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-btn[data-v-c125cb39]:hover{color:var(--text-primary)}.modal-body[data-v-c125cb39]{padding:2rem;overflow-y:auto;flex:1}.description[data-v-c125cb39]{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem;line-height:1.6}.loading[data-v-c125cb39],.error-message[data-v-c125cb39]{padding:2rem;text-align:center}.error-message[data-v-c125cb39]{color:#ef4444;background:#ef44441a;border-radius:6px;margin:1rem}.threshold-card[data-v-c125cb39]{background:#ffffff08;border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.threshold-header[data-v-c125cb39]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.metric-info[data-v-c125cb39]{display:flex;align-items:center;gap:1rem}.metric-info h3[data-v-c125cb39]{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.metric-badge[data-v-c125cb39]{background:#fe573026;color:var(--primary-color);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.use-default[data-v-c125cb39]{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:var(--text-secondary)}.use-default input[type=checkbox][data-v-c125cb39]{cursor:pointer}.company-default[data-v-c125cb39]{background:#ffffff05;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;display:flex;align-items:center;gap:1rem}.default-label[data-v-c125cb39]{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.default-values[data-v-c125cb39]{display:flex;gap:1.5rem;font-size:.9rem;color:var(--text-primary)}.threshold-inputs[data-v-c125cb39]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.threshold-inputs.disabled[data-v-c125cb39]{opacity:.5;pointer-events:none}.input-group[data-v-c125cb39]{display:flex;flex-direction:column;gap:.5rem}.input-group label[data-v-c125cb39]{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.input-group input[data-v-c125cb39]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:.95rem}.input-group input[data-v-c125cb39]:focus{outline:none;border-color:var(--primary-color)}.input-group input[data-v-c125cb39]:disabled{opacity:.5;cursor:not-allowed}.validation-error[data-v-c125cb39]{margin-top:.75rem;padding:.75rem;background:#ef44441a;border:1px solid #ef4444;border-radius:6px;color:#ef4444;font-size:.85rem}.modal-footer[data-v-c125cb39]{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid var(--border)}.btn-cancel[data-v-c125cb39],.btn-save[data-v-c125cb39]{padding:.75rem 1.5rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-cancel[data-v-c125cb39]{background:transparent;border:1px solid var(--border);color:var(--text-primary)}.btn-cancel[data-v-c125cb39]:hover{background:#ffffff0d}.btn-save[data-v-c125cb39]{background:var(--primary-color);border:none;color:#fff}.btn-save[data-v-c125cb39]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px)}.btn-save[data-v-c125cb39]:disabled{opacity:.5;cursor:not-allowed}.success-message[data-v-c125cb39]{margin:1rem 2rem;padding:1rem;background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;animation:slideIn-c125cb39 .3s}@keyframes slideIn-c125cb39{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.employee-leaderboard-view[data-v-2938289f]{padding:12px 20px;max-width:1600px;margin:0 auto}.page-header[data-v-2938289f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.page-header h1[data-v-2938289f]{margin:0 0 5px;font-size:20px;font-weight:600;color:var(--text)}.subtitle[data-v-2938289f]{margin:0;color:var(--text-secondary);font-size:14px}.period-selector[data-v-2938289f]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:20px;padding:15px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.period-selector label[data-v-2938289f]{font-size:14px;font-weight:600;color:var(--text-secondary)}.loading[data-v-2938289f],.error[data-v-2938289f]{text-align:center;padding:40px;font-size:18px}.error[data-v-2938289f]{color:var(--error)}.view-toggle[data-v-2938289f]{display:flex;gap:8px;background:var(--bg-card);padding:4px;border-radius:4px;border:1px solid var(--border)}.toggle-btn[data-v-2938289f]{padding:8px 16px;font-size:14px;font-weight:600;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s}.toggle-btn[data-v-2938289f]:hover{background:var(--bg-secondary)}.toggle-btn.active[data-v-2938289f]{background:var(--primary);color:#fff}.rates-view[data-v-2938289f]{margin-top:20px}.rates-header[data-v-2938289f]{display:flex;justify-content:flex-end;align-items:center;margin-bottom:16px}.stats-summary[data-v-2938289f]{display:flex;gap:24px;align-items:center}.stat-card[data-v-2938289f]{display:flex;align-items:baseline;gap:8px}.stat-label[data-v-2938289f]{font-size:12px;font-weight:500;color:var(--text-secondary)}.stat-value[data-v-2938289f]{font-size:20px;font-weight:700}.stat-value.error[data-v-2938289f]{color:var(--error)}.stat-value.warning[data-v-2938289f]{color:#f59e0b}.stat-value.success[data-v-2938289f]{color:var(--success)}.search-input[data-v-2938289f]{padding:10px 16px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text);min-width:300px}.search-input[data-v-2938289f]:focus{outline:none;border-color:var(--primary)}.rates-table-container[data-v-2938289f]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:.75rem;overflow:hidden;padding:1.5rem}.rates-table[data-v-2938289f]{width:100%;border-collapse:collapse}.rates-table thead[data-v-2938289f]{background:var(--bg-card)}.rates-table th[data-v-2938289f]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}.rates-table td[data-v-2938289f]{padding:16px 12px;font-size:14px;color:var(--text-secondary);border-bottom:1px solid var(--border)}.rates-table tbody tr[data-v-2938289f]{transition:background .2s}.rates-table tbody tr[data-v-2938289f]:hover{background:var(--bg-card)}.rates-table .employee-info[data-v-2938289f]{display:flex;flex-direction:column;gap:4px}.rates-table .employee-name[data-v-2938289f]{font-weight:600;color:var(--text);font-size:15px}.rates-table .employee-email[data-v-2938289f]{font-size:13px;color:var(--text-secondary);opacity:.7}.rate-input[data-v-2938289f]{width:100px;padding:6px 10px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-secondary);color:var(--text)}.rate-input[data-v-2938289f]:focus{outline:none;border-color:var(--primary)}.btn-thresholds[data-v-2938289f]{padding:6px 14px;font-size:13px;font-weight:600;background:#fe573026;color:var(--primary);border:1px solid rgba(254,87,48,.3);border-radius:4px;cursor:pointer;transition:all .2s}.btn-thresholds[data-v-2938289f]:hover{background:#fe573040;border-color:var(--primary)}.calculated-cost[data-v-2938289f]{display:flex;flex-direction:column;gap:4px}.cost-badge[data-v-2938289f]{display:inline-block;padding:4px 10px;font-size:11px;font-weight:600;border-radius:12px;width:fit-content}.cost-badge.salary-based[data-v-2938289f]{background:#22c55e1a;color:var(--success)}.cost-badge.cost-rate-based[data-v-2938289f]{background:#3b82f61a;color:#3b82f6}.cost-badge.no-data[data-v-2938289f]{background:#ef44441a;color:var(--error)}.cost-detail[data-v-2938289f]{font-size:12px;color:var(--text-secondary);font-family:Courier New,monospace}.btn-edit[data-v-2938289f]{padding:6px 14px;font-size:13px;font-weight:600;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s}.btn-edit[data-v-2938289f]:hover{opacity:.8}.edit-actions[data-v-2938289f]{display:flex;gap:8px}.btn-save[data-v-2938289f]{padding:6px 14px;font-size:13px;font-weight:600;background:var(--success);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s}.btn-save[data-v-2938289f]:hover:not(:disabled){opacity:.8}.btn-save[data-v-2938289f]:disabled{opacity:.5;cursor:not-allowed}.btn-cancel[data-v-2938289f]{padding:6px 14px;font-size:13px;font-weight:600;background:var(--bg-secondary);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .2s}.btn-cancel[data-v-2938289f]:hover{background:var(--border)}.department-kpi-view[data-v-4c222c18]{padding:20px;max-width:1600px;margin:0 auto}.page-header[data-v-4c222c18]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h1[data-v-4c222c18]{margin:0 0 5px;font-size:32px;color:var(--text)}.subtitle[data-v-4c222c18]{margin:0;color:var(--text-secondary);font-size:14px}.btn-export[data-v-4c222c18]{padding:10px 20px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}.btn-export[data-v-4c222c18]:hover{opacity:.9}.period-selector[data-v-4c222c18]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:20px;padding:15px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.period-selector label[data-v-4c222c18]{font-size:14px;font-weight:600;color:var(--text-secondary)}.loading[data-v-4c222c18],.error[data-v-4c222c18],.no-data[data-v-4c222c18]{text-align:center;padding:40px;font-size:18px}.error[data-v-4c222c18]{color:var(--error)}.department-table-container[data-v-4c222c18]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border)}.department-table[data-v-4c222c18]{width:100%;border-collapse:collapse}thead[data-v-4c222c18]{background:var(--bg-card)}th[data-v-4c222c18]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}.rank-col[data-v-4c222c18]{width:60px;text-align:center}.name-col[data-v-4c222c18]{min-width:200px}.count-col[data-v-4c222c18]{width:100px;text-align:center}.metric-col[data-v-4c222c18]{text-align:right;min-width:110px}tbody tr[data-v-4c222c18]{border-bottom:1px solid var(--border);transition:background .2s}tbody tr[data-v-4c222c18]:hover{background:var(--bg-card)}td[data-v-4c222c18]{padding:16px 12px;color:var(--text-secondary)}.rank-badge[data-v-4c222c18]{display:inline-block;width:32px;height:32px;line-height:32px;text-align:center;border-radius:50%;background:var(--border);font-weight:600;font-size:14px;color:var(--text-secondary)}.department-row.rank-1 .rank-badge[data-v-4c222c18]{background:linear-gradient(135deg,gold,orange);color:#fff;box-shadow:0 2px 8px #ffd70066}.department-row.rank-2 .rank-badge[data-v-4c222c18]{background:linear-gradient(135deg,silver,#a8a8a8);color:#fff;box-shadow:0 2px 8px #c0c0c066}.department-row.rank-3 .rank-badge[data-v-4c222c18]{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff;box-shadow:0 2px 8px #cd7f3266}.department-info[data-v-4c222c18]{display:flex;flex-direction:column;gap:4px}.department-name[data-v-4c222c18]{font-weight:600;color:var(--text);font-size:15px}.employee-count[data-v-4c222c18],.metric-value[data-v-4c222c18]{font-weight:500;color:var(--text)}.metric-value.excellent[data-v-4c222c18]{color:var(--success);font-weight:600}.metric-value.good[data-v-4c222c18]{color:#34d399}.metric-value.average[data-v-4c222c18]{color:var(--warning)}.metric-value.low[data-v-4c222c18]{color:var(--error)}.metric-value.revenue[data-v-4c222c18]{color:var(--primary)}.metric-value.profit[data-v-4c222c18]{color:var(--success)}.metric-value.loss[data-v-4c222c18]{color:var(--error)}.metric-value.warning[data-v-4c222c18]{color:var(--warning)}.project-profitability[data-v-b17dad89]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border)}.header-section[data-v-b17dad89]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.project-profitability h2[data-v-b17dad89]{margin:0 0 5px;font-size:24px;color:var(--text)}.subtitle[data-v-b17dad89]{margin:0;color:var(--text-secondary);font-size:14px}.btn-export[data-v-b17dad89]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}.btn-export[data-v-b17dad89]:hover{opacity:.9}.filters[data-v-b17dad89]{margin-bottom:20px;padding:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;display:flex;gap:24px;flex-wrap:wrap}.filters label[data-v-b17dad89]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text)}.projects-table[data-v-b17dad89]{overflow-x:auto;margin-bottom:20px}table[data-v-b17dad89]{width:100%;border-collapse:collapse}thead[data-v-b17dad89]{background:var(--bg-card)}th[data-v-b17dad89]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}th.sortable[data-v-b17dad89]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}th.sortable[data-v-b17dad89]:hover{background:#ffffff0d}.th-content[data-v-b17dad89]{display:flex;align-items:center;justify-content:space-between;gap:6px}.metric-col .th-content[data-v-b17dad89]{justify-content:flex-end}.sort-indicator[data-v-b17dad89]{font-size:12px;opacity:.6;min-width:14px;text-align:center}.project-col[data-v-b17dad89]{min-width:200px}.client-col[data-v-b17dad89]{min-width:150px}.metric-col[data-v-b17dad89]{text-align:right;min-width:90px}tbody tr[data-v-b17dad89]{border-bottom:1px solid var(--border);transition:background .2s}tbody tr[data-v-b17dad89]:hover{background:var(--bg-card)}.project-row.high-profit[data-v-b17dad89]{background:#10b9811a}.project-row.unprofitable[data-v-b17dad89]{background:#ef44441a}td[data-v-b17dad89]{padding:16px 12px;color:var(--text-secondary)}.project-name[data-v-b17dad89]{font-weight:600;color:var(--text);font-size:14px}.client-name[data-v-b17dad89]{color:var(--text-secondary);font-size:13px}.hours-breakdown[data-v-b17dad89]{font-size:14px;color:var(--text);font-weight:500}.metric-value[data-v-b17dad89]{font-weight:500;color:var(--text);font-size:14px}.metric-value.excellent[data-v-b17dad89]{color:var(--success);font-weight:600}.metric-value.good[data-v-b17dad89]{color:#34d399}.metric-value.average[data-v-b17dad89]{color:var(--warning)}.metric-value.low[data-v-b17dad89]{color:var(--error)}.metric-value.revenue[data-v-b17dad89]{color:var(--primary)}.metric-value.cost[data-v-b17dad89]{color:var(--warning)}.profit-value.profit[data-v-b17dad89]{color:var(--success)}.profit-value.loss[data-v-b17dad89]{color:var(--error)}.margin-value.excellent[data-v-b17dad89]{color:var(--success);font-weight:600}.margin-value.good[data-v-b17dad89]{color:#34d399}.margin-value.average[data-v-b17dad89]{color:var(--warning)}.margin-value.low[data-v-b17dad89]{color:var(--error);font-weight:600}.summary[data-v-b17dad89]{display:flex;flex-wrap:wrap;gap:20px;padding:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px}.summary-item[data-v-b17dad89]{display:flex;flex-direction:column;gap:4px}.summary-label[data-v-b17dad89]{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-value[data-v-b17dad89]{font-size:18px;font-weight:600;color:var(--text)}.summary-value.revenue[data-v-b17dad89]{color:var(--primary)}.summary-value.cost[data-v-b17dad89]{color:var(--warning)}.summary-value.profit[data-v-b17dad89]{color:var(--success)}.summary-value.loss[data-v-b17dad89]{color:var(--error)}.no-data[data-v-b17dad89]{text-align:center;padding:40px;color:var(--text-secondary);font-style:italic}.project-trend-chart[data-v-cd517b5b]{background:var(--bg-secondary);border-radius:.75rem;padding:1.5rem;border:1px solid var(--border);margin-bottom:20px}.chart-header[data-v-cd517b5b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.project-trend-chart h3[data-v-cd517b5b]{margin:0 0 5px;font-size:20px;color:var(--text)}.chart-subtitle[data-v-cd517b5b]{margin:0;font-size:13px;color:var(--text-secondary)}.chart-controls[data-v-cd517b5b]{display:flex;gap:10px}.metric-selector[data-v-cd517b5b],.interval-selector[data-v-cd517b5b]{padding:6px 12px;font-size:13px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text);cursor:pointer;transition:border-color .2s}.metric-selector[data-v-cd517b5b]:hover,.interval-selector[data-v-cd517b5b]:hover{border-color:var(--primary)}.chart-container[data-v-cd517b5b]{height:350px;position:relative}.loading[data-v-cd517b5b],.error[data-v-cd517b5b]{text-align:center;padding:60px 20px;font-size:14px}.loading[data-v-cd517b5b]{color:var(--text-secondary)}.error[data-v-cd517b5b]{color:var(--error);background:#ef44441a;border:1px solid var(--error);border-radius:4px}.project-profitability-view[data-v-b135e7b5]{padding:12px 20px;max-width:1600px;margin:0 auto}.page-header[data-v-b135e7b5]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.page-header h1[data-v-b135e7b5]{margin:0 0 5px;font-size:20px;font-weight:600;color:var(--text)}.subtitle[data-v-b135e7b5]{margin:0;color:var(--text-secondary);font-size:14px}.period-selector[data-v-b135e7b5]{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:20px;padding:15px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.period-selector label[data-v-b135e7b5]{font-size:14px;font-weight:600;color:var(--text-secondary)}.loading[data-v-b135e7b5],.error[data-v-b135e7b5]{text-align:center;padding:40px;font-size:18px}.error[data-v-b135e7b5]{color:var(--error)}.invoice-reconciliation[data-v-978f593f]{padding:20px;max-width:1400px;margin:0 auto;background:var(--bg)}.dashboard-header[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dashboard-header h1[data-v-978f593f]{margin:0;font-size:28px;color:var(--text)}.btn-back[data-v-978f593f]{padding:10px 20px;background:var(--bg-card);color:var(--text);text-decoration:none;border-radius:4px;font-size:14px;font-weight:600;transition:opacity .2s}.btn-back[data-v-978f593f]:hover{opacity:.8}.main-tabs[data-v-978f593f]{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--border)}.main-tab[data-v-978f593f]{padding:12px 24px;background:none;border:none;color:var(--text-secondary);font-size:16px;font-weight:600;cursor:pointer;text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.main-tab[data-v-978f593f]:hover{color:var(--text);background:var(--bg-card)}.main-tab.active[data-v-978f593f]{color:var(--primary);border-bottom-color:var(--primary)}.stats-summary[data-v-978f593f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:30px}.stat-card[data-v-978f593f]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px}.stat-card.success[data-v-978f593f]{border-left:4px solid var(--success)}.stat-card.warning[data-v-978f593f]{border-left:4px solid #f59e0b}.stat-label[data-v-978f593f]{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.stat-value[data-v-978f593f]{font-size:32px;font-weight:700;color:var(--text)}.stat-percent[data-v-978f593f]{font-size:14px;color:var(--text-secondary);margin-top:4px}.loading[data-v-978f593f],.error[data-v-978f593f]{text-align:center;padding:40px 20px;font-size:18px}.loading[data-v-978f593f]{color:var(--text-secondary)}.error[data-v-978f593f]{color:var(--error);background:#ef44441a;border:1px solid var(--error);border-radius:4px}.controls[data-v-978f593f]{display:flex;justify-content:flex-start;align-items:center;margin-bottom:20px;gap:15px;flex-wrap:wrap}.search-input[data-v-978f593f]{flex:1;max-width:400px;padding:10px 15px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text)}.control-group[data-v-978f593f]{display:flex;align-items:center;gap:10px}.control-group label[data-v-978f593f]{font-size:14px;color:var(--text-secondary)}.limit-selector[data-v-978f593f]{padding:8px 12px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg-card);color:var(--text);cursor:pointer}.invoices-table-container[data-v-978f593f]{overflow-x:auto}.invoices-table[data-v-978f593f]{width:100%;border-collapse:collapse}.invoices-table thead[data-v-978f593f]{background:var(--bg-card)}.invoices-table th[data-v-978f593f]{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}.invoices-table th.sortable[data-v-978f593f]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.invoices-table th.sortable[data-v-978f593f]:hover{background:var(--border)}.invoices-table td[data-v-978f593f]{padding:16px 12px;color:var(--text-secondary);border-bottom:1px solid var(--border)}.invoice-row[data-v-978f593f]{transition:background .2s}.invoice-row[data-v-978f593f]:hover{background:var(--bg-card)}.invoice-number[data-v-978f593f]{font-weight:600;color:var(--primary);font-size:15px}.customer-name[data-v-978f593f]{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:500}.amount[data-v-978f593f]{font-weight:600;text-align:right;color:var(--text)}.status-badge[data-v-978f593f]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-paid[data-v-978f593f]{background:#22c55e1a;color:var(--success)}.status-sent[data-v-978f593f],.status-viewed[data-v-978f593f]{background:#3b82f61a;color:var(--primary)}.status-overdue[data-v-978f593f]{background:#ef44441a;color:var(--error)}.btn-map[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-map[data-v-978f593f]:hover{opacity:.8}.no-results[data-v-978f593f]{padding:40px;text-align:center;color:var(--text-secondary)}.modal-overlay[data-v-978f593f]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-978f593f]{background:var(--bg-card);border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.modal-header[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border)}.modal-header h2[data-v-978f593f]{margin:0;font-size:24px;color:var(--text)}.btn-close[data-v-978f593f]{background:none;border:none;font-size:32px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.btn-close[data-v-978f593f]:hover{color:var(--text)}.modal-body[data-v-978f593f]{padding:20px}.invoice-details[data-v-978f593f]{margin-bottom:20px;padding:15px;background:var(--bg);border-radius:4px}.invoice-details h3[data-v-978f593f]{margin:0 0 15px;font-size:16px;color:var(--text)}.detail-row[data-v-978f593f]{display:flex;justify-content:space-between;margin-bottom:8px}.detail-row .label[data-v-978f593f]{color:var(--text-secondary);font-weight:500}.detail-row .value[data-v-978f593f]{color:var(--text);font-weight:600}.loading-suggestions[data-v-978f593f]{padding:20px;text-align:center;color:var(--text-secondary)}.suggestions[data-v-978f593f]{margin-bottom:20px}.suggestions h3[data-v-978f593f]{margin:0 0 15px;font-size:16px;color:var(--text)}.suggestion-item[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;padding:15px;background:var(--bg);border-radius:4px;margin-bottom:10px}.suggestion-info[data-v-978f593f]{flex:1}.project-name[data-v-978f593f]{font-weight:600;color:var(--text);margin-bottom:4px}.project-client[data-v-978f593f]{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.confidence-badge[data-v-978f593f]{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.confidence-high[data-v-978f593f]{background:#22c55e1a;color:var(--success)}.confidence-medium[data-v-978f593f]{background:#fbbf241a;color:#f59e0b}.confidence-low[data-v-978f593f]{background:#9ca3af1a;color:var(--text-secondary)}.btn-select[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-select.selected[data-v-978f593f]{background:var(--success)}.btn-select[data-v-978f593f]:hover{opacity:.8}.manual-selection[data-v-978f593f]{margin-bottom:20px}.manual-selection h3[data-v-978f593f]{margin:0 0 10px;font-size:16px;color:var(--text)}.project-selector[data-v-978f593f]{width:100%;padding:10px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);cursor:pointer}.allocation-amount[data-v-978f593f]{margin-bottom:20px}.allocation-amount label[data-v-978f593f]{display:block;margin-bottom:8px;font-weight:500;color:var(--text)}.amount-input-group[data-v-978f593f]{display:flex;align-items:center;gap:10px}.currency[data-v-978f593f]{font-weight:600;color:var(--text-secondary)}.amount-input[data-v-978f593f]{flex:1;padding:10px;font-size:14px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text)}.btn-full-amount[data-v-978f593f]{padding:10px 16px;font-size:14px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .2s}.btn-full-amount[data-v-978f593f]:hover{background:var(--border)}.modal-footer[data-v-978f593f]{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid var(--border)}.btn-cancel[data-v-978f593f],.btn-save[data-v-978f593f]{padding:10px 20px;font-size:14px;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-cancel[data-v-978f593f]{background:var(--bg);color:var(--text);border:1px solid var(--border)}.btn-cancel[data-v-978f593f]:hover{background:var(--border)}.btn-save[data-v-978f593f]{background:var(--success);color:#fff}.btn-save[data-v-978f593f]:hover:not(:disabled){opacity:.8}.btn-save[data-v-978f593f]:disabled{opacity:.5;cursor:not-allowed}.modal-error[data-v-978f593f]{padding:15px;background:#ef44441a;border:1px solid var(--error);border-radius:4px;color:var(--error);margin:0 20px 20px}.tabs[data-v-978f593f]{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid var(--border)}.tab[data-v-978f593f]{padding:12px 24px;font-size:14px;font-weight:600;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;color:var(--text-secondary);transition:all .2s}.tab[data-v-978f593f]:hover{color:var(--text)}.tab.active[data-v-978f593f]{color:var(--primary);border-bottom-color:var(--primary)}.mapping-badge[data-v-978f593f]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.mapping-badge.mapped[data-v-978f593f]{background:#22c55e1a;color:var(--success)}.mapping-badge.unmapped[data-v-978f593f]{background:#9ca3af1a;color:var(--text-secondary)}.action-buttons[data-v-978f593f]{display:flex;gap:8px}.btn-view[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-view[data-v-978f593f]:hover{opacity:.8}.btn-delete[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--error);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-delete[data-v-978f593f]:hover{opacity:.8}.loading-allocations[data-v-978f593f]{padding:40px;text-align:center;color:var(--text-secondary)}.allocations-list[data-v-978f593f]{margin-top:20px}.allocations-list h3[data-v-978f593f]{margin:0 0 15px;font-size:16px;color:var(--text)}.no-allocations[data-v-978f593f]{padding:40px;text-align:center;color:var(--text-secondary);background:var(--bg);border-radius:4px}.allocation-item[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;padding:15px;background:var(--bg);border-radius:4px;margin-bottom:10px;border:1px solid var(--border)}.allocation-info[data-v-978f593f]{flex:1}.allocation-details[data-v-978f593f]{display:flex;gap:12px;margin-top:8px;align-items:center}.allocation-amount[data-v-978f593f]{font-weight:600;color:var(--success);font-size:16px}.method-badge[data-v-978f593f]{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;background:#2563eb1a;color:var(--primary)}.bulk-actions-toolbar[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;background:var(--primary);color:#fff;padding:15px 20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 8px #2563eb4d}.bulk-info[data-v-978f593f]{display:flex;gap:20px;align-items:center}.bulk-count[data-v-978f593f]{font-weight:600;font-size:16px}.bulk-total[data-v-978f593f]{font-size:14px;opacity:.9}.bulk-buttons[data-v-978f593f]{display:flex;gap:10px}.btn-clear[data-v-978f593f]{padding:8px 16px;font-size:14px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer;transition:background .2s;font-weight:600}.btn-clear[data-v-978f593f]:hover{background:#ffffff4d}.btn-bulk-map[data-v-978f593f]{padding:8px 16px;font-size:14px;background:#fff;color:var(--primary);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s;font-weight:600}.btn-bulk-map[data-v-978f593f]:hover{opacity:.9}.checkbox-column[data-v-978f593f]{width:40px;text-align:center}.checkbox[data-v-978f593f]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.invoice-row.selected[data-v-978f593f]{background:#2563eb0d}.invoice-row.selected[data-v-978f593f]:hover{background:#2563eb1a}.bulk-summary[data-v-978f593f]{margin-bottom:20px;padding:15px;background:var(--bg);border-radius:4px}.bulk-summary h3[data-v-978f593f]{margin:0 0 15px;font-size:16px;color:var(--text)}.bulk-stats[data-v-978f593f]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:15px}.bulk-stats .stat[data-v-978f593f]{display:flex;justify-content:space-between;padding:10px;background:var(--bg-card);border-radius:4px;border:1px solid var(--border)}.bulk-stats .label[data-v-978f593f]{color:var(--text-secondary);font-weight:500}.bulk-stats .value[data-v-978f593f]{color:var(--text);font-weight:600}.selected-invoices-list[data-v-978f593f]{max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:4px}.selected-invoice-item[data-v-978f593f]{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;border-bottom:1px solid var(--border);font-size:13px}.selected-invoice-item[data-v-978f593f]:last-child{border-bottom:none}.selected-invoice-item .invoice-number[data-v-978f593f]{font-weight:600;color:var(--primary);min-width:100px}.selected-invoice-item .customer-name[data-v-978f593f]{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 15px}.selected-invoice-item .amount[data-v-978f593f]{font-weight:600;color:var(--text);text-align:right;min-width:100px}.project-selection[data-v-978f593f]{margin-bottom:20px}.project-selection h3[data-v-978f593f]{margin:0 0 10px;font-size:16px;color:var(--text)}.allocation-mode[data-v-978f593f]{margin-bottom:20px}.allocation-mode h3[data-v-978f593f]{margin:0 0 10px;font-size:16px;color:var(--text)}.radio-group[data-v-978f593f]{display:flex;flex-direction:column;gap:10px}.radio-option[data-v-978f593f]{display:flex;align-items:center;gap:10px;padding:10px;background:var(--bg);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .2s}.radio-option[data-v-978f593f]:hover{background:var(--border)}.radio-option input[type=radio][data-v-978f593f]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.radio-option span[data-v-978f593f]{color:var(--text);font-weight:500}.filters[data-v-978f593f]{display:flex;gap:10px;margin-bottom:15px}.btn-toggle-filters[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .2s;font-weight:600;display:flex;align-items:center;gap:5px}.btn-toggle-filters[data-v-978f593f]:hover{background:var(--border)}.filter-count[data-v-978f593f]{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary);color:#fff;border-radius:10px;font-size:11px;font-weight:700}.btn-clear-filters[data-v-978f593f]{padding:8px 16px;font-size:14px;background:var(--bg-card);color:var(--error);border:1px solid var(--error);border-radius:4px;cursor:pointer;transition:all .2s;font-weight:600}.btn-clear-filters[data-v-978f593f]:hover{background:#ef44441a}.btn-sync[data-v-978f593f]{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.btn-sync[data-v-978f593f]:hover:not(:disabled){opacity:.9}.btn-sync[data-v-978f593f]:disabled{opacity:.6;cursor:not-allowed}.filters-panel[data-v-978f593f]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px;margin-bottom:20px}.filter-group[data-v-978f593f]{margin-bottom:20px}.filter-group[data-v-978f593f]:last-child{margin-bottom:0}.filter-group>label[data-v-978f593f]{display:block;font-weight:600;color:var(--text);margin-bottom:10px;font-size:14px}.status-filters[data-v-978f593f],.mapping-filters[data-v-978f593f]{display:flex;gap:15px;flex-wrap:wrap}.filter-checkbox[data-v-978f593f]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:4px;transition:all .2s}.filter-checkbox[data-v-978f593f]:hover{background:var(--border)}.filter-checkbox input[type=checkbox][data-v-978f593f]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.filter-checkbox span[data-v-978f593f]{font-size:13px;color:var(--text);font-weight:500}.amount-filters[data-v-978f593f]{display:flex;align-items:center;gap:10px}.amount-input-wrapper[data-v-978f593f]{display:flex;align-items:center;gap:5px;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:0 10px}.currency-symbol[data-v-978f593f]{font-weight:600;color:var(--text-secondary);font-size:14px}.amount-filter-input[data-v-978f593f]{width:120px;padding:8px 5px;font-size:14px;border:none;background:transparent;color:var(--text);outline:none}.amount-filter-input[data-v-978f593f]::placeholder{color:var(--text-secondary);opacity:.6}.range-separator[data-v-978f593f]{color:var(--text-secondary);font-weight:500;font-size:14px}.invoice-generation[data-v-6263bdbe]{padding:20px;max-width:1400px;margin:0 auto;background:var(--bg)}.dashboard-header[data-v-6263bdbe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dashboard-header h1[data-v-6263bdbe]{margin:0;font-size:28px;color:var(--text)}.header-actions[data-v-6263bdbe]{display:flex;align-items:center;gap:15px}.zoho-auth-status[data-v-6263bdbe]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;font-size:14px}.auth-label[data-v-6263bdbe]{color:var(--text-secondary);font-weight:500}.status-badge[data-v-6263bdbe]{padding:4px 12px;border-radius:3px;font-size:13px;font-weight:600}.status-connected[data-v-6263bdbe]{background:#10b981;color:#fff}.status-warning[data-v-6263bdbe]{background:#f59e0b;color:#fff}.status-disconnected[data-v-6263bdbe]{background:#ef4444;color:#fff}.status-loading[data-v-6263bdbe]{background:var(--border);color:var(--text-secondary)}.btn-oauth[data-v-6263bdbe]{padding:6px 14px;background:var(--primary);color:#fff;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-oauth[data-v-6263bdbe]:hover{opacity:.9}.btn-back[data-v-6263bdbe]{padding:10px 20px;background:var(--bg-card);color:var(--text);text-decoration:none;border-radius:4px;font-size:14px;font-weight:600;transition:opacity .2s}.btn-back[data-v-6263bdbe]:hover{opacity:.8}.main-tabs[data-v-6263bdbe]{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid var(--border)}.main-tab[data-v-6263bdbe]{padding:12px 24px;background:none;border:none;color:var(--text-secondary);font-size:16px;font-weight:600;cursor:pointer;text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.main-tab[data-v-6263bdbe]:hover{color:var(--text);background:var(--bg-card)}.main-tab.active[data-v-6263bdbe]{color:var(--primary);border-bottom-color:var(--primary)}.filters-section[data-v-6263bdbe]{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border);margin-bottom:20px}.date-range-header[data-v-6263bdbe]{display:flex;align-items:center;gap:12px}.filter-label[data-v-6263bdbe]{font-size:14px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.error-message[data-v-6263bdbe]{background:#ef44441a;color:var(--error);padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid var(--error)}.success-message[data-v-6263bdbe]{background:#10b9811a;color:var(--success);padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid var(--success)}.loading[data-v-6263bdbe]{text-align:center;padding:40px;color:var(--text-secondary);font-size:16px}.projects-table-container[data-v-6263bdbe]{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border)}.projects-table-container h2[data-v-6263bdbe]{margin-top:0;margin-bottom:20px;font-size:20px;color:var(--text)}.projects-table[data-v-6263bdbe]{width:100%;border-collapse:collapse}.projects-table th[data-v-6263bdbe],.projects-table td[data-v-6263bdbe]{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.projects-table th[data-v-6263bdbe]{background:var(--bg-card);font-weight:600;color:var(--text)}.projects-table td[data-v-6263bdbe]{color:var(--text-secondary)}.projects-table tbody tr[data-v-6263bdbe]:hover{background:var(--bg-card)}.actions-cell[data-v-6263bdbe]{display:flex;gap:10px}.btn-preview[data-v-6263bdbe],.btn-create[data-v-6263bdbe]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .2s}.btn-preview[data-v-6263bdbe]{background:var(--primary);color:#fff}.btn-preview[data-v-6263bdbe]:hover:not(:disabled){opacity:.9}.btn-create[data-v-6263bdbe]{background:var(--success);color:#fff}.btn-create[data-v-6263bdbe]:hover:not(:disabled){opacity:.9}.btn-preview[data-v-6263bdbe]:disabled,.btn-create[data-v-6263bdbe]:disabled{opacity:.5;cursor:not-allowed}.no-data[data-v-6263bdbe]{text-align:center;padding:60px 20px;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.no-data p[data-v-6263bdbe]{margin:10px 0;font-size:16px}.modal-overlay[data-v-6263bdbe]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-6263bdbe]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header[data-v-6263bdbe]{padding:20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.modal-header h2[data-v-6263bdbe]{margin:0;font-size:24px;color:var(--text)}.btn-close[data-v-6263bdbe]{background:none;border:none;font-size:32px;cursor:pointer;color:var(--text-secondary);line-height:1;padding:0;width:32px;height:32px;transition:color .2s}.btn-close[data-v-6263bdbe]:hover{color:var(--text)}.modal-body[data-v-6263bdbe]{padding:20px;overflow-y:auto;flex:1}.preview-section[data-v-6263bdbe]{margin-bottom:30px}.preview-section h3[data-v-6263bdbe]{margin-top:0;margin-bottom:15px;font-size:18px;color:var(--text-secondary)}.info-grid[data-v-6263bdbe]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.info-item[data-v-6263bdbe]{display:flex;flex-direction:column;gap:5px}.info-item .label[data-v-6263bdbe]{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-item .value[data-v-6263bdbe]{font-size:16px;color:var(--text);font-weight:500}.summary-cards[data-v-6263bdbe]{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.summary-card[data-v-6263bdbe]{background:var(--bg-card);padding:15px;border-radius:4px;text-align:center;border:1px solid var(--border)}.summary-label[data-v-6263bdbe]{font-size:12px;color:var(--text-secondary);text-transform:uppercase;margin-bottom:5px}.summary-value[data-v-6263bdbe]{font-size:24px;color:var(--text);font-weight:600}.form-grid[data-v-6263bdbe]{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-field[data-v-6263bdbe]{display:flex;flex-direction:column;gap:5px}.form-field.full-width[data-v-6263bdbe]{grid-column:1 / -1}.form-field label[data-v-6263bdbe]{font-weight:500;color:var(--text-secondary);font-size:14px}.form-field input[data-v-6263bdbe],.form-field textarea[data-v-6263bdbe]{padding:8px 12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);border-radius:4px;font-size:14px}.form-field textarea[data-v-6263bdbe]{resize:vertical;font-family:inherit}.warnings-list[data-v-6263bdbe]{margin:0;padding-left:20px;color:var(--warning)}.warnings-list li[data-v-6263bdbe]{margin-bottom:8px}.modal-footer[data-v-6263bdbe]{padding:20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}.btn-cancel[data-v-6263bdbe],.btn-create-confirm[data-v-6263bdbe]{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .2s}.btn-cancel[data-v-6263bdbe]{background:var(--bg-card);color:var(--text)}.btn-cancel[data-v-6263bdbe]:hover{opacity:.8}.btn-create-confirm[data-v-6263bdbe]{background:var(--success);color:#fff}.btn-create-confirm[data-v-6263bdbe]:hover:not(:disabled){opacity:.9}.btn-create-confirm[data-v-6263bdbe]:disabled{opacity:.5;cursor:not-allowed}.timesheet-option[data-v-6263bdbe]{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.timesheet-option input[type=checkbox][data-v-6263bdbe]{width:18px;height:18px;cursor:pointer}.section-header[data-v-6263bdbe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.btn-toggle[data-v-6263bdbe]{padding:6px 12px;font-size:13px;background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:4px;cursor:pointer;transition:background-color .2s}.btn-toggle[data-v-6263bdbe]:hover{background:var(--bg)}.timesheet-summary[data-v-6263bdbe]{padding:15px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;margin-bottom:15px}.summary-info[data-v-6263bdbe]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.summary-info[data-v-6263bdbe]:last-child{border-bottom:none}.summary-info .label[data-v-6263bdbe]{font-weight:500;color:var(--text-secondary)}.summary-info .value[data-v-6263bdbe]{color:var(--text);font-weight:500}.timesheet-table-preview[data-v-6263bdbe]{max-height:400px;overflow-y:auto;border:1px solid var(--border);border-radius:4px}.timesheet-table-preview table[data-v-6263bdbe]{width:100%;border-collapse:collapse}.timesheet-table-preview th[data-v-6263bdbe]{background:var(--bg-card);padding:10px;text-align:left;font-weight:600;border-bottom:2px solid var(--border);position:sticky;top:0;color:var(--text)}.timesheet-table-preview td[data-v-6263bdbe]{padding:10px;border-bottom:1px solid var(--border);color:var(--text)}.timesheet-table-preview tbody tr[data-v-6263bdbe]:hover{background:var(--bg-card)}.table-notice[data-v-6263bdbe]{text-align:center;padding:10px;color:var(--text-secondary);font-size:13px;font-style:italic;margin:0;background:var(--bg-card)}.loading-text[data-v-6263bdbe]{color:var(--text-secondary);font-style:italic;text-align:center;padding:20px 0}.customer-select-cell[data-v-6263bdbe]{padding:8px 12px!important;position:relative}.customer-autocomplete[data-v-6263bdbe]{position:relative;width:100%}.customer-input[data-v-6263bdbe]{width:100%;padding:6px 10px;border:2px solid var(--border);background:var(--bg-card);color:var(--text);border-radius:4px;font-size:14px;transition:all .2s}.customer-input[data-v-6263bdbe]:hover{border-color:var(--primary)}.customer-input[data-v-6263bdbe]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.customer-input.no-mapping[data-v-6263bdbe]{border-color:var(--warning);background:#f59e0b0d}.customer-dropdown[data-v-6263bdbe]{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-card);border:2px solid var(--primary);border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto;z-index:1000}.customer-option[data-v-6263bdbe]{padding:10px 12px;cursor:pointer;transition:background .15s;color:var(--text);border-bottom:1px solid var(--border)}.customer-option[data-v-6263bdbe]:last-child{border-bottom:none}.customer-option[data-v-6263bdbe]:hover{background:var(--primary);color:#fff}.customer-more[data-v-6263bdbe]{padding:8px 12px;text-align:center;color:var(--text-secondary);font-size:13px;font-style:italic;background:var(--bg-secondary)}.table-header-actions[data-v-6263bdbe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.table-header-actions h2[data-v-6263bdbe]{margin:0}.bulk-actions[data-v-6263bdbe]{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#2563eb1a;border:1px solid var(--primary);border-radius:4px}.selection-count[data-v-6263bdbe]{font-size:14px;font-weight:600;color:var(--primary)}.btn-bulk-create[data-v-6263bdbe]{padding:8px 16px;background:var(--success);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .2s}.btn-bulk-create[data-v-6263bdbe]:hover:not(:disabled){opacity:.9}.btn-bulk-create[data-v-6263bdbe]:disabled{opacity:.5;cursor:not-allowed}.btn-clear-selection[data-v-6263bdbe]{padding:8px 16px;background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .2s}.btn-clear-selection[data-v-6263bdbe]:hover{opacity:.8}.checkbox-cell[data-v-6263bdbe]{text-align:center;padding:12px 8px!important}.checkbox-cell input[type=checkbox][data-v-6263bdbe],.projects-table th input[type=checkbox][data-v-6263bdbe]{width:18px;height:18px;cursor:pointer}.checkbox-cell input[type=checkbox][data-v-6263bdbe]:disabled{opacity:.4;cursor:not-allowed}.selected-row[data-v-6263bdbe]{background:#2563eb14!important}.selected-row[data-v-6263bdbe]:hover{background:#2563eb1f!important}.thresholds-panel[data-v-033d7280]{background:var(--card-bg);border-radius:8px;padding:2rem}.panel-header[data-v-033d7280]{margin-bottom:2rem}.panel-header h2[data-v-033d7280]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.description[data-v-033d7280]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.loading[data-v-033d7280],.error-message[data-v-033d7280]{padding:2rem;text-align:center;color:var(--text-secondary)}.error-message[data-v-033d7280]{color:#ef4444;background:#ef44441a;border-radius:6px}.thresholds-form[data-v-033d7280]{display:flex;flex-direction:column;gap:1.5rem}.threshold-card[data-v-033d7280]{background:#ffffff08;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:border-color .2s}.threshold-card[data-v-033d7280]:hover{border-color:#fe57304d}.threshold-header[data-v-033d7280]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.metric-info[data-v-033d7280]{display:flex;align-items:center;gap:1rem}.metric-info h3[data-v-033d7280]{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.metric-badge[data-v-033d7280]{background:#fe573026;color:var(--primary-color);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.toggle[data-v-033d7280]{display:flex;align-items:center;gap:.75rem;cursor:pointer}.toggle input[type=checkbox][data-v-033d7280]{display:none}.toggle-slider[data-v-033d7280]{position:relative;width:44px;height:24px;background:#475569;border-radius:12px;transition:background .3s}.toggle-slider[data-v-033d7280]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .3s}.toggle input:checked+.toggle-slider[data-v-033d7280]{background:var(--primary-color)}.toggle input:checked+.toggle-slider[data-v-033d7280]:after{transform:translate(20px)}.toggle-label[data-v-033d7280]{font-size:.9rem;color:var(--text-secondary)}.threshold-inputs[data-v-033d7280]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.input-group[data-v-033d7280]{display:flex;flex-direction:column;gap:.5rem}.input-group label[data-v-033d7280]{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.input-group input[data-v-033d7280]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem}.input-group input[data-v-033d7280]:focus{outline:none;border-color:var(--primary-color)}.validation-error[data-v-033d7280]{margin-top:.75rem;padding:.75rem;background:#ef44441a;border:1px solid #ef4444;border-radius:6px;color:#ef4444;font-size:.85rem}.actions[data-v-033d7280]{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.test-section[data-v-033d7280]{display:flex;align-items:center;gap:.75rem}.test-section label[data-v-033d7280]{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.test-days-select[data-v-033d7280]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem;cursor:pointer}.test-days-select[data-v-033d7280]:focus{outline:none;border-color:var(--primary-color)}.btn-test[data-v-033d7280]{padding:.75rem 1.5rem;background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3);border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-test[data-v-033d7280]:hover:not(:disabled){background:#3b82f640;border-color:#3b82f6;transform:translateY(-1px)}.btn-test[data-v-033d7280]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-033d7280]{padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-033d7280]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px)}.btn-primary[data-v-033d7280]:disabled{opacity:.5;cursor:not-allowed}.success-message[data-v-033d7280]{margin-top:1rem;padding:1rem;background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;animation:slideIn-033d7280 .3s}@keyframes slideIn-033d7280{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.departments-panel[data-v-0d520d25]{background:var(--card-bg);border-radius:8px;padding:2rem}.panel-header[data-v-0d520d25]{margin-bottom:2rem}.panel-header h2[data-v-0d520d25]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.description[data-v-0d520d25]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.loading[data-v-0d520d25],.error-message[data-v-0d520d25]{padding:2rem;text-align:center;color:var(--text-secondary)}.error-message[data-v-0d520d25]{color:#ef4444;background:#ef44441a;border-radius:6px}.departments-content[data-v-0d520d25]{display:flex;flex-direction:column;gap:1.5rem}.departments-table[data-v-0d520d25]{overflow-x:auto}table[data-v-0d520d25]{width:100%;border-collapse:collapse}thead[data-v-0d520d25]{background:#ffffff08}th[data-v-0d520d25]{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;border-bottom:1px solid var(--border-color)}td[data-v-0d520d25]{padding:1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary)}tr.inactive td[data-v-0d520d25]{opacity:.5}.status-badge[data-v-0d520d25]{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge.active[data-v-0d520d25]{background:#22c55e26;color:#22c55e}.status-badge.inactive[data-v-0d520d25]{background:#ef444426;color:#ef4444}.actions-cell[data-v-0d520d25]{display:flex;gap:.5rem}.btn-icon[data-v-0d520d25]{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;opacity:.7;transition:opacity .2s}.btn-icon[data-v-0d520d25]:hover{opacity:1}.btn-primary[data-v-0d520d25]{padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.btn-primary[data-v-0d520d25]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px)}.btn-primary[data-v-0d520d25]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-0d520d25]{padding:.75rem 2rem;background:#ffffff0d;color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary[data-v-0d520d25]:hover{background:#ffffff1a}.modal-overlay[data-v-0d520d25]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-0d520d25 .2s ease-out}@keyframes fadeIn-0d520d25{0%{opacity:0}to{opacity:1}}.modal-content[data-v-0d520d25]{background:var(--card-bg);border:1px solid rgba(254,87,48,.3);border-radius:12px;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff1a;width:90%;max-width:500px;max-height:90vh;overflow:auto;animation:slideIn-0d520d25 .3s ease-out}@keyframes slideIn-0d520d25{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-0d520d25]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3[data-v-0d520d25]{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.btn-close[data-v-0d520d25]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close[data-v-0d520d25]:hover{background:#ffffff1a;color:var(--text-primary)}.modal-body[data-v-0d520d25]{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.input-group[data-v-0d520d25]{display:flex;flex-direction:column;gap:.5rem}.input-group label[data-v-0d520d25]{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.input-group input[data-v-0d520d25],.input-group textarea[data-v-0d520d25]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem;font-family:inherit}.input-group input[data-v-0d520d25]:focus,.input-group textarea[data-v-0d520d25]:focus{outline:none;border-color:var(--primary-color)}.input-group textarea[data-v-0d520d25]{resize:vertical}.modal-footer[data-v-0d520d25]{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color)}.success-message[data-v-0d520d25]{margin-top:1rem;padding:1rem;background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;animation:slideIn-0d520d25 .3s}@keyframes slideIn-0d520d25{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.overhead-panel[data-v-af554bc8]{background:var(--card-bg);border-radius:8px;padding:2rem}.panel-header[data-v-af554bc8]{margin-bottom:2rem}.panel-header h2[data-v-af554bc8]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.description[data-v-af554bc8]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.loading[data-v-af554bc8],.error-message[data-v-af554bc8]{padding:2rem;text-align:center;color:var(--text-secondary)}.error-message[data-v-af554bc8]{color:#ef4444;background:#ef44441a;border-radius:6px}.overhead-content[data-v-af554bc8]{display:flex;flex-direction:column;gap:1.5rem}.total-card[data-v-af554bc8]{background:linear-gradient(135deg,#fe57301a,#fe57300d);border:1px solid rgba(254,87,48,.2);border-radius:8px;padding:1.5rem;text-align:center}.total-card h3[data-v-af554bc8]{font-size:.9rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.total-amount[data-v-af554bc8]{font-size:2rem;font-weight:700;color:var(--primary-color);margin-bottom:1rem}.total-breakdown[data-v-af554bc8]{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px solid rgba(254,87,48,.2)}.breakdown-item[data-v-af554bc8]{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-secondary)}.breakdown-item span[data-v-af554bc8]:last-child{font-weight:600;color:var(--text-primary)}.costs-table[data-v-af554bc8]{overflow-x:auto}table[data-v-af554bc8]{width:100%;border-collapse:collapse}thead[data-v-af554bc8]{background:#ffffff08}th[data-v-af554bc8]{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;border-bottom:1px solid var(--border-color)}td[data-v-af554bc8]{padding:1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.empty-state[data-v-af554bc8]{text-align:center;color:var(--text-secondary);font-style:italic;padding:2rem}.category-cell[data-v-af554bc8]{font-weight:500}.amount-cell[data-v-af554bc8]{font-weight:600;color:var(--primary-color)}.period-cell[data-v-af554bc8]{font-size:.9rem;color:var(--text-secondary)}.description-cell[data-v-af554bc8]{font-size:.9rem;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actions-cell[data-v-af554bc8]{display:flex;gap:.5rem}.calculated-row[data-v-af554bc8]{background:#3b82f60d;border-left:3px solid rgba(59,130,246,.5)}.calculated-row .category-cell[data-v-af554bc8]{font-style:italic}.calculated-label[data-v-af554bc8]{display:flex;align-items:center;gap:.5rem}.info-icon[data-v-af554bc8]{font-size:.9rem;opacity:.6;cursor:help}.calculated-row .amount-cell.calculated[data-v-af554bc8]{color:#3b82f6}.calculated-badge[data-v-af554bc8]{display:inline-block;padding:.25rem .75rem;background:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.btn-icon[data-v-af554bc8]{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;opacity:.7;transition:opacity .2s}.btn-icon[data-v-af554bc8]:hover{opacity:1}.btn-primary[data-v-af554bc8]{padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.btn-primary[data-v-af554bc8]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px)}.btn-primary[data-v-af554bc8]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-af554bc8]{padding:.75rem 2rem;background:#ffffff0d;color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary[data-v-af554bc8]:hover{background:#ffffff1a}.modal-overlay[data-v-af554bc8]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-af554bc8 .2s ease-out}@keyframes fadeIn-af554bc8{0%{opacity:0}to{opacity:1}}.modal-content[data-v-af554bc8]{background:var(--card-bg);border:1px solid rgba(254,87,48,.3);border-radius:12px;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff1a;width:90%;max-width:600px;max-height:90vh;overflow:auto;animation:slideIn-af554bc8 .3s ease-out}@keyframes slideIn-af554bc8{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-af554bc8]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3[data-v-af554bc8]{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.btn-close[data-v-af554bc8]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close[data-v-af554bc8]:hover{background:#ffffff1a;color:var(--text-primary)}.modal-body[data-v-af554bc8]{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.input-group[data-v-af554bc8]{display:flex;flex-direction:column;gap:.5rem}.input-row[data-v-af554bc8]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.input-group label[data-v-af554bc8]{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.input-group input[data-v-af554bc8],.input-group textarea[data-v-af554bc8]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem;font-family:inherit}.input-group input[data-v-af554bc8]:focus,.input-group textarea[data-v-af554bc8]:focus{outline:none;border-color:var(--primary-color)}.input-group textarea[data-v-af554bc8]{resize:vertical}.input-group input[type=number][data-v-af554bc8]{-moz-appearance:textfield}.input-group input[type=number][data-v-af554bc8]::-webkit-outer-spin-button,.input-group input[type=number][data-v-af554bc8]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.modal-footer[data-v-af554bc8]{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color)}.success-message[data-v-af554bc8]{margin-top:1rem;padding:1rem;background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;animation:slideIn-af554bc8 .3s}@keyframes slideIn-af554bc8{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.formulas-panel[data-v-75c07084]{background:var(--card-bg);border-radius:8px;padding:2rem}.panel-header[data-v-75c07084]{margin-bottom:2rem}.panel-header h2[data-v-75c07084]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.description[data-v-75c07084]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.loading[data-v-75c07084]{padding:2rem;text-align:center;color:var(--text-secondary)}.formulas-content[data-v-75c07084]{display:flex;flex-direction:column;gap:1.5rem}.info-card[data-v-75c07084]{background:#ffffff08;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;display:flex;gap:1rem}.info-card.highlight[data-v-75c07084]{background:linear-gradient(135deg,#fe57301a,#fe57300d);border-color:#fe57304d}.card-icon[data-v-75c07084]{font-size:2rem;flex-shrink:0}.card-content[data-v-75c07084]{flex:1}.card-content h3[data-v-75c07084]{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.card-content p[data-v-75c07084]{color:var(--text-secondary);line-height:1.6;margin-bottom:.75rem}.departments-list[data-v-75c07084]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.department-badge[data-v-75c07084]{background:#fe573026;color:var(--primary-color);padding:.35rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.formula-card[data-v-75c07084]{background:#ffffff08;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.formula-header[data-v-75c07084]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.formula-header h3[data-v-75c07084]{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.formula-type[data-v-75c07084]{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;background:#ffffff0d;padding:.25rem .75rem;border-radius:12px}.formula-box[data-v-75c07084]{background:#0003;border-left:3px solid var(--primary-color);padding:1rem;border-radius:4px;margin-bottom:1rem}.formula[data-v-75c07084]{font-family:Courier New,monospace;font-size:1rem;color:var(--text-primary);line-height:1.8;margin-bottom:.5rem}.formula-note[data-v-75c07084]{font-family:Courier New,monospace;font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-top:.5rem}.formula-small[data-v-75c07084]{font-family:Courier New,monospace;font-size:.95rem;color:var(--text-primary);margin:.5rem 0;padding:.5rem;background:#0003;border-radius:4px}.variable[data-v-75c07084]{color:#60a5fa;font-weight:500}.formula-explanation[data-v-75c07084]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.formula-explanation strong[data-v-75c07084]{color:var(--text-primary)}.sub-formula[data-v-75c07084]{margin-bottom:1rem}.sub-formula[data-v-75c07084]:last-child{margin-bottom:0}.sub-formula strong[data-v-75c07084]{color:var(--text-primary);display:block;margin-bottom:.5rem}.sub-formula p[data-v-75c07084]{margin-top:.5rem;margin-bottom:0}.sources-list[data-v-75c07084]{list-style:none;padding:0;margin:.75rem 0 0}.sources-list li[data-v-75c07084]{color:var(--text-secondary);line-height:1.8;padding-left:1.5rem;position:relative}.sources-list li[data-v-75c07084]:before{content:"→";position:absolute;left:0;color:var(--primary-color)}.sources-list strong[data-v-75c07084]{color:var(--text-primary)}.hierarchy[data-v-75c07084]{margin:.75rem 0;padding-left:1rem}.hierarchy-item[data-v-75c07084]{color:var(--text-secondary);line-height:1.8;position:relative;padding-left:1.5rem}.hierarchy-item[data-v-75c07084]:before{content:"▶";position:absolute;left:0;font-size:.6rem;color:var(--primary-color);top:.4rem}.mt-small[data-v-75c07084]{margin-top:1rem}.sync-config-panel[data-v-35a1cb84]{background:var(--card-bg);border-radius:8px;padding:2rem}.panel-header[data-v-35a1cb84]{margin-bottom:2rem}.panel-header h2[data-v-35a1cb84]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.description[data-v-35a1cb84]{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.loading[data-v-35a1cb84],.error-message[data-v-35a1cb84]{padding:2rem;text-align:center;color:var(--text-secondary)}.error-message[data-v-35a1cb84]{color:#ef4444;background:#ef44441a;border-radius:6px}.config-form[data-v-35a1cb84]{display:flex;flex-direction:column;gap:1.5rem}.config-card[data-v-35a1cb84]{background:#ffffff08;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:border-color .2s}.config-card[data-v-35a1cb84]:hover{border-color:#fe57304d}.config-header[data-v-35a1cb84]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.config-info h3[data-v-35a1cb84]{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0 0 .25rem}.config-description[data-v-35a1cb84]{font-size:.85rem;color:var(--text-secondary);margin:0}.toggle[data-v-35a1cb84]{display:flex;align-items:center;gap:.75rem;cursor:pointer}.toggle input[type=checkbox][data-v-35a1cb84]{display:none}.toggle input[type=checkbox]:disabled+.toggle-slider[data-v-35a1cb84]{opacity:.5;cursor:not-allowed}.toggle-slider[data-v-35a1cb84]{position:relative;width:44px;height:24px;background:#475569;border-radius:12px;transition:background .3s}.toggle-slider[data-v-35a1cb84]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .3s}.toggle input:checked+.toggle-slider[data-v-35a1cb84]{background:var(--primary-color)}.toggle input:checked+.toggle-slider[data-v-35a1cb84]:after{transform:translate(20px)}.toggle-label[data-v-35a1cb84]{font-size:.9rem;color:var(--text-secondary)}.input-group[data-v-35a1cb84]{display:flex;flex-direction:column;gap:.5rem}.input-group input[data-v-35a1cb84]{padding:.75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem}.input-group input[data-v-35a1cb84]:focus{outline:none;border-color:var(--primary-color)}.input-group input[data-v-35a1cb84]:disabled{opacity:.5;cursor:not-allowed}.validation-error[data-v-35a1cb84]{padding:.5rem;background:#ef44441a;border:1px solid #ef4444;border-radius:4px;color:#ef4444;font-size:.85rem}.help-text[data-v-35a1cb84]{font-size:.85rem;color:var(--text-secondary);font-style:italic}.env-override-warning[data-v-35a1cb84]{margin-top:.75rem;padding:.75rem;background:#fbbf241a;border:1px solid #fbbf24;border-radius:6px;color:#fbbf24;font-size:.85rem;display:flex;align-items:center;gap:.5rem}.env-override-warning[data-v-35a1cb84]:before{content:"⚠️"}.actions[data-v-35a1cb84]{margin-top:1rem;display:flex;justify-content:flex-end}.btn-primary[data-v-35a1cb84]{padding:.75rem 2rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-35a1cb84]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px)}.btn-primary[data-v-35a1cb84]:disabled{opacity:.5;cursor:not-allowed}.success-message[data-v-35a1cb84]{margin-top:1rem;padding:1rem;background:#22c55e1a;border:1px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;animation:slideIn-35a1cb84 .3s}@keyframes slideIn-35a1cb84{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.manual-sync-card[data-v-35a1cb84]{border:2px solid var(--primary-color);background:linear-gradient(135deg,#fe57300d,#fe573005)}.btn-sync[data-v-35a1cb84]{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-sync[data-v-35a1cb84]:hover:not(:disabled){background:#e54a2a;transform:translateY(-1px);box-shadow:0 4px 12px #fe57304d}.btn-sync[data-v-35a1cb84]:disabled{opacity:.6;cursor:not-allowed}.sync-spinner[data-v-35a1cb84]{display:inline-block;animation:spin-35a1cb84 1s linear infinite;font-size:1.2rem}@keyframes spin-35a1cb84{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sync-result[data-v-35a1cb84]{margin-top:1rem;padding:1rem;border-radius:6px;border:1px solid;animation:slideIn-35a1cb84 .3s}.sync-result.success[data-v-35a1cb84]{background:#22c55e1a;border-color:#22c55e}.sync-result.warning[data-v-35a1cb84]{background:#fbbf241a;border-color:#fbbf24}.sync-result-header[data-v-35a1cb84]{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:var(--text-primary)}.sync-icon[data-v-35a1cb84]{font-size:1.2rem}.sync-details[data-v-35a1cb84]{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem}.sync-stat[data-v-35a1cb84]{display:flex;justify-content:space-between;padding:.5rem;background:#ffffff0d;border-radius:4px}.stat-label[data-v-35a1cb84]{color:var(--text-secondary)}.stat-value[data-v-35a1cb84]{color:var(--text-primary);font-weight:500}.stat-value.success[data-v-35a1cb84]{color:#22c55e}.stat-value.warning[data-v-35a1cb84]{color:#fbbf24}.stat-value.error[data-v-35a1cb84]{color:#ef4444}.sync-errors[data-v-35a1cb84]{margin-top:.5rem;padding:.75rem;background:#ef44441a;border:1px solid #ef4444;border-radius:4px;color:#ef4444;font-size:.85rem}.sync-errors ul[data-v-35a1cb84]{margin:.5rem 0 0;padding-left:1.25rem}.sync-errors li[data-v-35a1cb84]{margin-top:.25rem}.settings-view[data-v-a22fe697]{padding:2rem;max-width:1200px;margin:0 auto}.settings-header[data-v-a22fe697]{margin-bottom:2rem}.settings-header h1[data-v-a22fe697]{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.subtitle[data-v-a22fe697]{color:var(--text-secondary);font-size:.95rem}.tabs[data-v-a22fe697]{display:flex;gap:.5rem;border-bottom:2px solid var(--border-color);margin-bottom:2rem}.tab[data-v-a22fe697]{padding:.75rem 1.5rem;background:none;border:none;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.tab[data-v-a22fe697]:hover{color:var(--text-primary);background:#fe57300d}.tab.active[data-v-a22fe697]{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-content[data-v-a22fe697]{animation:fadeIn-a22fe697 .3s}@keyframes fadeIn-a22fe697{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}:root{--primary: #FE5730;--primary-dark: #d94620;--bg: #0f172a;--bg-secondary: #1e293b;--bg-card: #334155;--text: #f8fafc;--text-secondary: #cbd5e1;--border: #475569;--success: #10b981;--warning: #f59e0b;--error: #ef4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6}#app{max-width:1400px;margin:0 auto;padding:2rem}h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--text)}h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text)}h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--text-secondary)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}.header-info{flex:1}.subtitle{color:var(--text-secondary);font-size:1rem}.sync-button{background-color:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;transition:background-color .2s}.sync-button:hover{background-color:var(--primary-dark)}.sync-button:disabled{opacity:.5;cursor:not-allowed}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background-color:var(--bg-secondary);padding:1.5rem;border-radius:.75rem;border:1px solid var(--border)}.stat-value{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-card{background-color:var(--bg-secondary);padding:1.5rem;border-radius:.75rem;border:1px solid var(--border)}.chart-card.full-width{grid-column:1 / -1}.table-container{background-color:var(--bg-secondary);padding:1.5rem;border-radius:.75rem;border:1px solid var(--border);overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background-color:var(--bg-card)}th{text-align:left;padding:.75rem;font-weight:600;color:var(--text);border-bottom:2px solid var(--border)}td{padding:.75rem;border-bottom:1px solid var(--border);color:var(--text-secondary)}tr:hover{background-color:var(--bg-card)}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.5rem;color:var(--text-secondary)}.error{background-color:#ef44441a;border:1px solid var(--error);color:var(--error);padding:1rem;border-radius:.5rem;margin-bottom:1rem}@media (max-width: 768px){.chart-grid,.overview-grid{grid-template-columns:1fr}}
