.login-container[data-v-4e675fe3]{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem}.login-card[data-v-4e675fe3]{background:#fff;border-radius:12px;padding:3rem 2rem;box-shadow:0 20px 60px #0000004d;max-width:400px;width:100%;text-align:center}.login-title[data-v-4e675fe3]{font-size:2rem;font-weight:700;margin:0 0 .5rem;color:#333}.login-subtitle[data-v-4e675fe3]{font-size:1rem;color:#666;margin:0 0 2rem}.error-container[data-v-4e675fe3]{margin-bottom:1.5rem}.error-message[data-v-4e675fe3]{background:#fef2f2;border:2px solid #fca5a5;border-radius:8px;padding:1rem;margin-bottom:1rem;display:flex;gap:.75rem;align-items:flex-start}.error-icon[data-v-4e675fe3]{width:24px;height:24px;color:#dc2626;flex-shrink:0;margin-top:.125rem}.error-content[data-v-4e675fe3]{text-align:left;flex:1}.error-title[data-v-4e675fe3]{font-size:.875rem;font-weight:600;color:#7f1d1d;margin:0 0 .25rem}.error-text[data-v-4e675fe3]{font-size:.875rem;color:#991b1b;margin:0;line-height:1.5}.try-again-button[data-v-4e675fe3]{width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:600;color:#fff;background:#dc2626;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.try-again-button[data-v-4e675fe3]:hover{background:#b91c1c}.try-again-button[data-v-4e675fe3]:active{transform:translateY(1px)}.loading-state[data-v-4e675fe3]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem;padding:2rem 1rem}.spinner[data-v-4e675fe3]{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #4285F4;border-radius:50%;animation:spin-4e675fe3 1s linear infinite}@keyframes spin-4e675fe3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text[data-v-4e675fe3]{font-size:.875rem;color:#666;margin:0;font-weight:500}.login-button[data-v-4e675fe3]{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;color:#333;background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .2s ease}.login-button[data-v-4e675fe3]:hover:not(:disabled){background:#f8f9fa;border-color:#4285f4;box-shadow:0 2px 8px #4285f433}.login-button[data-v-4e675fe3]:active:not(:disabled){transform:translateY(1px)}.login-button[data-v-4e675fe3]:disabled{opacity:.6;cursor:not-allowed}.google-icon[data-v-4e675fe3]{width:20px;height:20px}.logout-button[data-v-c2e8eff7]{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s}.logout-button[data-v-c2e8eff7]:hover:not(:disabled){background:#dc2626}.logout-button[data-v-c2e8eff7]:active:not(:disabled){transform:translateY(1px)}.logout-button[data-v-c2e8eff7]:disabled{opacity:.6;cursor:not-allowed}.side-menu[data-v-47a231d9]{width:240px;min-height:100vh;background:#1f2937;display:flex;flex-direction:column;flex-shrink:0}.menu-header[data-v-47a231d9]{padding:1.5rem;border-bottom:1px solid #374151}.menu-title[data-v-47a231d9]{font-size:1.25rem;font-weight:700;color:#fff}.menu-list[data-v-47a231d9]{list-style:none;margin:0;padding:.5rem 0}.menu-item[data-v-47a231d9]{margin:.25rem .5rem}.menu-link[data-v-47a231d9]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:6px;color:#9ca3af;text-decoration:none;font-weight:500;font-size:.875rem;transition:all .15s ease}.menu-link[data-v-47a231d9]:hover{color:#fff;background:#374151}.menu-link[data-v-47a231d9]:focus{outline:none;box-shadow:0 0 0 2px var(--accent-color),0 0 0 4px color-mix(in srgb,var(--accent-color) 30%,transparent)}.menu-link[data-v-47a231d9]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-color),0 0 0 4px color-mix(in srgb,var(--accent-color) 30%,transparent)}.menu-link.active[data-v-47a231d9]{color:#fff;background:var(--accent-color)}.menu-link.active[data-v-47a231d9]:hover{background:color-mix(in srgb,var(--accent-color) 85%,black)}.menu-icon[data-v-47a231d9]{width:20px;height:20px;flex-shrink:0}.menu-label[data-v-47a231d9]{white-space:nowrap}.app-layout[data-v-f355a6e2]{display:flex;min-height:100vh;background:#f9fafb}.app-main[data-v-f355a6e2]{flex:1;display:flex;flex-direction:column;overflow-x:hidden}.app-header[data-v-f355a6e2]{background:#fff;border-bottom:1px solid #E5E7EB;padding:1rem 2rem;position:sticky;top:0;z-index:10}.header-content[data-v-f355a6e2]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.app-title[data-v-f355a6e2]{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.user-info[data-v-f355a6e2]{display:flex;align-items:center;gap:1rem}.user-name[data-v-f355a6e2]{font-weight:500;color:#374151}.logout-button[data-v-f355a6e2]{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s}.logout-button[data-v-f355a6e2]:hover{background:#dc2626}.logout-button[data-v-f355a6e2]:focus{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #ef4444}.app-content[data-v-f355a6e2]{flex:1;padding:2rem;max-width:1200px;width:100%;margin:0 auto}@media (max-width: 768px){.app-header[data-v-f355a6e2]{padding:1rem}.header-content[data-v-f355a6e2]{flex-direction:column;gap:.75rem;align-items:flex-start}.app-content[data-v-f355a6e2]{padding:1rem}}.config-check-list[data-v-7af64963]{display:flex;flex-direction:column;gap:.5rem}.check-item[data-v-7af64963]{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border-radius:6px;transition:background-color .2s ease}.status-valid[data-v-7af64963]{background:#ecfdf5;border-left:3px solid #10b981}.status-missing[data-v-7af64963]{background:#fef3c7;border-left:3px solid #f59e0b}.status-invalid[data-v-7af64963]{background:#fef2f2;border-left:3px solid #ef4444}.check-header[data-v-7af64963]{display:flex;align-items:center;gap:.5rem}.check-icon[data-v-7af64963]{font-weight:700;font-size:1rem;min-width:1.25rem;text-align:center}.status-valid .check-icon[data-v-7af64963]{color:#10b981}.status-missing .check-icon[data-v-7af64963]{color:#f59e0b}.status-invalid .check-icon[data-v-7af64963]{color:#ef4444}.check-name[data-v-7af64963]{font-weight:600;font-family:Courier New,Courier,monospace;font-size:.875rem;flex:1}.check-required[data-v-7af64963]{color:#ef4444;font-weight:700;font-size:1rem}.check-details[data-v-7af64963]{display:flex;flex-direction:column;gap:.25rem;margin-left:1.75rem}.check-error[data-v-7af64963],.check-hint[data-v-7af64963]{font-size:.8125rem;line-height:1.4}.check-error[data-v-7af64963]{color:#dc2626}.check-hint[data-v-7af64963]{color:#6b7280}.check-error strong[data-v-7af64963],.check-hint strong[data-v-7af64963]{font-weight:600}.connectivity-status-list[data-v-6c12cc98]{display:flex;flex-direction:column;gap:.5rem}.connectivity-item[data-v-6c12cc98]{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border-radius:6px;transition:background-color .2s ease}.status-connected[data-v-6c12cc98]{background:#ecfdf5;border-left:3px solid #10b981}.status-auth-error[data-v-6c12cc98],.status-network-error[data-v-6c12cc98],.status-timeout[data-v-6c12cc98]{background:#fef2f2;border-left:3px solid #ef4444}.status-skipped[data-v-6c12cc98]{background:#f9fafb;border-left:3px solid #9ca3af}.connectivity-header[data-v-6c12cc98]{display:flex;align-items:center;gap:.5rem}.connectivity-icon[data-v-6c12cc98]{font-size:1rem;min-width:1.25rem;text-align:center}.status-connected .connectivity-icon[data-v-6c12cc98]{color:#10b981}.status-auth-error .connectivity-icon[data-v-6c12cc98],.status-network-error .connectivity-icon[data-v-6c12cc98],.status-timeout .connectivity-icon[data-v-6c12cc98]{color:#ef4444}.status-skipped .connectivity-icon[data-v-6c12cc98]{color:#9ca3af}.connectivity-service[data-v-6c12cc98]{font-weight:600;font-family:Courier New,Courier,monospace;font-size:.875rem;flex:1}.connectivity-latency[data-v-6c12cc98]{font-size:.8125rem;font-weight:600;color:#10b981;padding:.125rem .5rem;background:#d1fae5;border-radius:4px}.connectivity-details[data-v-6c12cc98]{display:flex;flex-direction:column;gap:.25rem;margin-left:1.75rem}.connectivity-error[data-v-6c12cc98],.connectivity-hint[data-v-6c12cc98]{font-size:.8125rem;line-height:1.4}.connectivity-error[data-v-6c12cc98]{color:#dc2626}.connectivity-hint[data-v-6c12cc98]{color:#6b7280}.connectivity-error strong[data-v-6c12cc98],.connectivity-hint strong[data-v-6c12cc98]{font-weight:600}.connectivity-timestamp[data-v-6c12cc98]{font-size:.75rem;color:#9ca3af;margin-left:1.75rem}.component-health-card[data-v-464f43bd]{border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 1px 3px #0000001a;overflow:hidden}.card-header[data-v-464f43bd]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#f9fafb;border-bottom:1px solid #e5e7eb}.component-name[data-v-464f43bd]{margin:0;font-size:1.25rem;font-weight:700;color:#111827}.status-indicators[data-v-464f43bd]{display:flex;align-items:center;gap:.75rem}.status-badge[data-v-464f43bd]{padding:.25rem .75rem;font-size:.8125rem;font-weight:600;text-transform:uppercase;border-radius:9999px;letter-spacing:.025em}.badge-healthy[data-v-464f43bd]{background:#d1fae5;color:#065f46;border:1px solid #10b981}.badge-degraded[data-v-464f43bd]{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.badge-unhealthy[data-v-464f43bd]{background:#fecaca;color:#991b1b;border:1px solid #ef4444}.operational-indicator[data-v-464f43bd]{font-size:1.5rem;line-height:1}.operational-indicator.operational[data-v-464f43bd]{color:#10b981}.operational-indicator.non-operational[data-v-464f43bd]{color:#ef4444}.card-body[data-v-464f43bd]{padding:1.25rem}.section[data-v-464f43bd]{margin-bottom:1.5rem}.section[data-v-464f43bd]:last-child{margin-bottom:0}.section-title[data-v-464f43bd]{margin:0 0 .75rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.details-toggle[data-v-464f43bd]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s ease;width:100%;text-align:left;font-size:.875rem;font-weight:600;color:#374151}.details-toggle[data-v-464f43bd]:hover{background:#e5e7eb}.details-toggle[data-v-464f43bd]:focus{outline:2px solid #3b82f6;outline-offset:2px}.toggle-icon[data-v-464f43bd]{font-size:.75rem;color:#6b7280}.toggle-text[data-v-464f43bd]{text-transform:uppercase;letter-spacing:.05em}.details-content[data-v-464f43bd]{margin-top:.75rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;overflow-x:auto}.details-content pre[data-v-464f43bd]{margin:0;font-family:Courier New,Courier,monospace;font-size:.8125rem;line-height:1.5;color:#374151;white-space:pre-wrap;word-wrap:break-word}.system-health[data-v-e60be0b6]{display:flex;flex-direction:column;gap:1.5rem}.page-title[data-v-e60be0b6]{font-size:1.75rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.loading-state[data-v-e60be0b6]{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:3rem;color:#6b7280;font-size:1rem}.loading-spinner[data-v-e60be0b6]{animation:spin-e60be0b6 1s linear infinite;font-size:1.5rem}@keyframes spin-e60be0b6{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-state[data-v-e60be0b6]{background:#fef2f2;border:1px solid #FECACA;border-radius:8px;padding:2rem;text-align:center}.error-state h2[data-v-e60be0b6]{color:#dc2626;margin:0 0 .5rem}.error-message[data-v-e60be0b6]{color:#991b1b;margin:0 0 1rem}.retry-button[data-v-e60be0b6]{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-weight:500}.retry-button[data-v-e60be0b6]:hover{background:#b91c1c}.overall-status[data-v-e60be0b6]{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-radius:8px;background:#fff;border:1px solid #E5E7EB}.overall-status.status-ok[data-v-e60be0b6]{background:#ecfdf5;border-color:#a7f3d0}.overall-status.status-degraded[data-v-e60be0b6]{background:#fffbeb;border-color:#fde68a}.overall-status.status-unhealthy[data-v-e60be0b6]{background:#fef2f2;border-color:#fecaca}.status-indicator[data-v-e60be0b6]{display:flex;align-items:center;gap:.75rem}.status-icon[data-v-e60be0b6]{font-size:1.5rem;font-weight:700}.status-ok .status-icon[data-v-e60be0b6]{color:#10b981}.status-degraded .status-icon[data-v-e60be0b6]{color:#f59e0b}.status-unhealthy .status-icon[data-v-e60be0b6]{color:#ef4444}.status-text[data-v-e60be0b6]{font-size:1.125rem;font-weight:600;color:#1f2937}.status-details[data-v-e60be0b6]{display:flex;gap:1.5rem}.detail-item[data-v-e60be0b6]{display:flex;gap:.5rem;font-size:.875rem}.detail-item .label[data-v-e60be0b6]{color:#6b7280}.detail-item .value[data-v-e60be0b6]{font-weight:500;color:#1f2937}.components-section[data-v-e60be0b6]{margin-top:.5rem}.components-section h2[data-v-e60be0b6]{font-size:1.125rem;font-weight:600;color:#374151;margin:0 0 1rem}.components-grid[data-v-e60be0b6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1rem}.status-card[data-v-e60be0b6]{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.status-card h2[data-v-e60be0b6]{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#374151}h3[data-v-e60be0b6]{margin:1rem 0 .5rem;font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.status-item[data-v-e60be0b6]{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #F3F4F6}.status-item[data-v-e60be0b6]:last-child{border-bottom:none}.label[data-v-e60be0b6]{font-weight:500;color:#6b7280}.value[data-v-e60be0b6]{font-weight:600;color:#1f2937}.value.warning[data-v-e60be0b6]{color:#f59e0b}.value.code[data-v-e60be0b6]{font-family:Courier New,monospace;font-size:.875rem;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px}.commits-section[data-v-e60be0b6]{margin-top:1rem;padding-top:1rem;border-top:1px solid #E5E7EB}.commits-list[data-v-e60be0b6]{list-style:none;margin:0;padding:0}.commit-item[data-v-e60be0b6]{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0;border-bottom:1px solid #F3F4F6}.commit-item[data-v-e60be0b6]:last-child{border-bottom:none}.commit-sha[data-v-e60be0b6]{font-family:Courier New,monospace;font-size:.75rem;background:#eef2ff;color:#4f46e5;padding:.125rem .375rem;border-radius:4px;flex-shrink:0}.commit-message[data-v-e60be0b6]{font-size:.875rem;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.overall-status[data-v-e60be0b6]{flex-direction:column;align-items:flex-start;gap:1rem}.status-details[data-v-e60be0b6]{flex-direction:column;gap:.5rem}.components-grid[data-v-e60be0b6]{grid-template-columns:1fr}}
