.login-page[data-v-ef8554b6]{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-main)}.login-card[data-v-ef8554b6]{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:40px;width:100%;max-width:400px}.login-title[data-v-ef8554b6]{font-size:20px;font-weight:600;margin-bottom:28px;text-align:center;color:var(--text-primary)}.form-group[data-v-ef8554b6]{margin-bottom:16px}.form-group label[data-v-ef8554b6]{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px}.form-group input[data-v-ef8554b6]{width:100%;padding:10px 12px;background:var(--bg-main);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s}.form-group input[data-v-ef8554b6]:focus{border-color:var(--accent-blue)}.error-msg[data-v-ef8554b6]{color:var(--accent-red);font-size:13px;margin-bottom:12px}.login-btn[data-v-ef8554b6]{width:100%;padding:10px;background:var(--accent-blue);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:500;transition:opacity .15s}.login-btn[data-v-ef8554b6]:hover:not(:disabled){opacity:.9}.login-btn[data-v-ef8554b6]:disabled{opacity:.5}.date-range-picker[data-v-f50cebaf]{display:inline-flex;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.range-btn[data-v-f50cebaf]{padding:6px 16px;background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:13px;transition:color .15s,background .15s}.range-btn[data-v-f50cebaf]:last-child{border-right:none}.range-btn[data-v-f50cebaf]:hover{color:var(--text-primary);background:#3b82f614}.range-btn.active[data-v-f50cebaf]{color:var(--accent-blue);background:#3b82f626;font-weight:500}.filter-bar[data-v-d2629eb7]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-group[data-v-d2629eb7],.filter-dropdown[data-v-d2629eb7]{position:relative}.filter-trigger[data-v-d2629eb7]{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:color .15s,border-color .15s}.filter-trigger[data-v-d2629eb7]:hover{color:var(--text-primary);border-color:var(--text-secondary)}.filter-count[data-v-d2629eb7]{background:var(--accent-blue);color:#fff;font-size:11px;padding:1px 6px;border-radius:10px;font-weight:500}.filter-arrow[data-v-d2629eb7]{font-size:10px;opacity:.6}.filter-menu[data-v-d2629eb7]{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;max-height:240px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:4px;z-index:100;box-shadow:0 4px 12px #0000004d}.filter-option[data-v-d2629eb7]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:background .15s}.filter-option[data-v-d2629eb7]:hover{background:#3b82f614}.filter-option.selected[data-v-d2629eb7]{color:var(--text-primary)}.filter-option input[type=checkbox][data-v-d2629eb7]{accent-color:var(--accent-blue)}.filter-empty[data-v-d2629eb7]{padding:8px;color:var(--text-secondary);font-size:12px;text-align:center}.clear-btn[data-v-d2629eb7]{padding:6px 12px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:color .15s,border-color .15s}.clear-btn[data-v-d2629eb7]:hover{color:var(--accent-red);border-color:var(--accent-red)}.layout[data-v-e9a4ddf3]{display:flex;height:100vh}.sidebar[data-v-e9a4ddf3]{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column}.sidebar-header[data-v-e9a4ddf3]{padding:20px;border-bottom:1px solid var(--border)}.sidebar-header h1[data-v-e9a4ddf3]{font-size:16px;font-weight:600;color:var(--text-primary)}.sidebar-nav[data-v-e9a4ddf3]{flex:1;padding:12px 0;display:flex;flex-direction:column;gap:2px}.nav-link[data-v-e9a4ddf3]{display:block;padding:10px 20px;color:var(--text-secondary);font-size:14px;transition:color .15s,background .15s}.nav-link[data-v-e9a4ddf3]:hover{color:var(--text-primary);background:#3b82f614}.nav-link.active[data-v-e9a4ddf3]{color:var(--accent-blue);background:#3b82f61f;font-weight:500}.nav-separator[data-v-e9a4ddf3]{height:1px;background:var(--border);margin:8px 16px}.sidebar-footer[data-v-e9a4ddf3]{padding:16px 20px;border-top:1px solid var(--border)}.logout-btn[data-v-e9a4ddf3]{width:100%;padding:8px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:13px;transition:color .15s,border-color .15s}.logout-btn[data-v-e9a4ddf3]:hover{color:var(--accent-red);border-color:var(--accent-red)}.content[data-v-e9a4ddf3]{flex:1;overflow-y:auto;display:flex;flex-direction:column}.content-header[data-v-e9a4ddf3]{padding:16px 32px;border-bottom:1px solid var(--border);flex-shrink:0}.content-body[data-v-e9a4ddf3]{flex:1;overflow-y:auto;padding:32px}.metric-card[data-v-7070887c]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px}.metric-title[data-v-7070887c]{font-size:13px;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.metric-value[data-v-7070887c]{font-size:28px;font-weight:700;line-height:1.2}.metric-subtitle[data-v-7070887c]{font-size:12px;color:var(--text-secondary);margin-top:4px}.chart-container[data-v-105fbc81]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px;height:300px}.page-header[data-v-edcc160d]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2[data-v-edcc160d]{font-size:20px;font-weight:600}.metrics-row[data-v-edcc160d]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.chart-section[data-v-edcc160d]{margin-bottom:24px}.chart-section h3[data-v-edcc160d]{font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:12px}.loading[data-v-edcc160d],.error[data-v-edcc160d]{padding:40px;text-align:center;color:var(--text-secondary)}.error[data-v-edcc160d]{color:var(--accent-red)}.chart-container[data-v-9e2a30d3],.chart-container[data-v-db8538d8]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:20px;height:300px}.page-header[data-v-154298f4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2[data-v-154298f4]{font-size:20px;font-weight:600}.grid-2col[data-v-154298f4]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.chart-section[data-v-154298f4]{margin-bottom:24px}.chart-section h3[data-v-154298f4]{font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:12px}.loading[data-v-154298f4],.error[data-v-154298f4]{padding:40px;text-align:center;color:var(--text-secondary)}.error[data-v-154298f4]{color:var(--accent-red)}.page-header[data-v-f42a24a4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2[data-v-f42a24a4]{font-size:20px;font-weight:600}.grid-2col[data-v-f42a24a4]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;align-items:start}.chart-section[data-v-f42a24a4]{margin-bottom:24px}.chart-section h3[data-v-f42a24a4]{font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:12px}.section-header[data-v-f42a24a4]{font-size:16px;font-weight:600;margin-bottom:16px;margin-top:8px;padding-top:16px;border-top:1px solid var(--border)}.metrics-col[data-v-f42a24a4]{display:flex;flex-direction:column;gap:16px}.loading[data-v-f42a24a4],.error[data-v-f42a24a4]{padding:40px;text-align:center;color:var(--text-secondary)}.error[data-v-f42a24a4]{color:var(--accent-red)}.page-header[data-v-ee4f6c67]{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h2[data-v-ee4f6c67]{font-size:20px;font-weight:600}.version-selector[data-v-ee4f6c67]{margin-bottom:24px}.version-selector h3[data-v-ee4f6c67]{font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:12px}.version-pills[data-v-ee4f6c67]{display:flex;flex-wrap:wrap;gap:8px}.version-pill[data-v-ee4f6c67]{padding:6px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s}.version-pill[data-v-ee4f6c67]:hover:not(.disabled){border-color:var(--accent-blue);color:var(--text-primary)}.version-pill.active[data-v-ee4f6c67]{background:#3b82f626;border-color:var(--accent-blue);color:var(--accent-blue)}.version-pill.disabled[data-v-ee4f6c67]{opacity:.35;cursor:not-allowed}.comparison-wrapper[data-v-ee4f6c67]{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.comparison-table[data-v-ee4f6c67]{width:100%;border-collapse:collapse}.comparison-table th[data-v-ee4f6c67],.comparison-table td[data-v-ee4f6c67]{padding:14px 20px;text-align:center;border-bottom:1px solid var(--border)}.comparison-table tbody tr:last-child td[data-v-ee4f6c67]{border-bottom:none}.comparison-table tbody tr[data-v-ee4f6c67]:hover{background:#ffffff05}.metric-col[data-v-ee4f6c67]{width:160px;min-width:160px}.version-col[data-v-ee4f6c67]{min-width:140px}.version-header[data-v-ee4f6c67]{font-size:16px;font-weight:700;color:var(--accent-blue)}.metric-label[data-v-ee4f6c67]{text-align:left;font-size:13px;font-weight:500;color:var(--text-secondary);white-space:nowrap}.metric-value[data-v-ee4f6c67]{font-size:15px;font-weight:600;color:var(--text-primary);font-family:SF Mono,Fira Code,monospace;position:relative}.metric-value.crashes[data-v-ee4f6c67]{color:var(--accent-red)}.metric-value.rate-good[data-v-ee4f6c67]{color:var(--accent-green)}.metric-value.rate-warn[data-v-ee4f6c67]{color:var(--accent-yellow)}.metric-value.rate-bad[data-v-ee4f6c67]{color:var(--accent-red)}.delta[data-v-ee4f6c67]{display:block;font-size:11px;font-weight:500;margin-top:2px}.delta-good[data-v-ee4f6c67]{color:var(--accent-green)}.delta-bad[data-v-ee4f6c67]{color:var(--accent-red)}.loading[data-v-ee4f6c67],.error[data-v-ee4f6c67],.empty[data-v-ee4f6c67]{padding:40px;text-align:center;color:var(--text-secondary)}.error[data-v-ee4f6c67]{color:var(--accent-red)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-main: #0f1117;--bg-card: #1a1d27;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--accent-blue: #3b82f6;--accent-green: #10b981;--accent-red: #ef4444;--accent-yellow: #f59e0b;--border: #2d3348;--sidebar-width: 240px}html,body,#app{height:100%;width:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-main);color:var(--text-primary);line-height:1.5}a{color:var(--accent-blue);text-decoration:none}button{cursor:pointer;font-family:inherit}input{font-family:inherit}
