:root{--app-bg:#f3f6fb;--surface:#fff;--surface-raised:#fff;--surface-muted:#f7f9fd;--surface-hover:#eef4ff;--text-primary:#102041;--text-secondary:#61708d;--text-tertiary:#52627e;--text-inverse:#fff;--text-on-primary:#fff;--border:#dfe7f2;--border-strong:#c7d4e5;--primary:#1769ff;--primary-hover:#0956dd;--primary-active:#0046bd;--primary-soft:#edf4ff;--accent:#0b2e6f;--accent-soft:#edf3ff;--navy:#06245c;--navy-deep:#041a43;--navy-soft:#103a7d;--success:#15803d;--success-soft:#f0fdf4;--warning:#b45309;--warning-soft:#fffbeb;--danger:#b91c1c;--danger-soft:#fef2f2;--focus-ring:#2563eb38;--disabled-opacity:.55;--header-height:72px;--sidebar-width:224px;--sidebar-collapsed-width:72px;--primary-rail-width:72px;--content-max-width:1600px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--line-height-tight:1.3;--line-height-base:1.5;--line-height-relaxed:1.65;--radius-sm:4px;--radius-md:6px;--radius-dialog:8px;--shadow-sm:0 1px 2px #0f172a0f;--shadow-overlay:0 16px 40px #0f172a24;--duration-fast:.12s;--duration-base:.18s;--ease-standard:cubic-bezier(.2, 0, 0, 1);color:var(--text-primary);letter-spacing:0;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}*,:before,:after{box-sizing:border-box}html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,blockquote,figure{margin:0}ul,ol{padding:0}button,input,textarea,select{font:inherit}button,input,textarea,select,a{-webkit-tap-highlight-color:transparent}button{border:0}img,svg,canvas{max-width:100%;display:block}table{border-collapse:collapse;border-spacing:0}a{color:inherit;text-decoration:none}:root{--el-color-primary:var(--primary);--el-color-success:var(--success);--el-color-warning:var(--warning);--el-color-danger:var(--danger);--el-border-radius-base:var(--radius-md);--el-border-radius-small:var(--radius-sm);--el-border-color:var(--border);--el-border-color-light:var(--border);--el-fill-color-light:var(--surface-muted);--el-bg-color-page:var(--app-bg);--el-text-color-primary:var(--text-primary);--el-text-color-regular:var(--text-secondary);--el-font-size-base:var(--font-size-base)}.el-card{border-radius:var(--radius-dialog);box-shadow:0 4px 14px #1f3e7a0a}.el-button:focus-visible,.el-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.el-input__wrapper:focus-within,.el-select__wrapper:focus-within,.el-textarea__inner:focus-visible{box-shadow:0 0 0 1px var(--primary) inset, 0 0 0 3px var(--focus-ring)}html,body,#app{width:100%;min-width:320px;min-height:100%}html{background:var(--app-bg)}body{background:var(--app-bg);color:var(--text-primary);font-size:var(--font-size-base);line-height:var(--line-height-base);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit;letter-spacing:0}button:not(:disabled),[role=button]:not([aria-disabled=true]){cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:var(--primary-soft);color:var(--text-primary)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.startup-failure[data-v-2cffe4ac]{min-height:100vh;padding:var(--space-6);background:var(--app-bg);place-items:center;display:grid}.startup-failure__content[data-v-2cffe4ac]{text-align:center;width:min(100%,480px)}.startup-failure h1[data-v-2cffe4ac]{color:var(--text-primary);font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.startup-failure p[data-v-2cffe4ac]{margin-top:var(--space-3);color:var(--text-secondary);line-height:var(--line-height-relaxed)}.startup-failure button[data-v-2cffe4ac]{width:120px;height:40px;margin-top:var(--space-6);border-radius:var(--radius-md);background:var(--primary);color:var(--text-inverse);transition:background var(--duration-fast) var(--ease-standard);font-weight:600}.startup-failure button[data-v-2cffe4ac]:hover{background:var(--primary-hover)}@media (width<=480px){.startup-failure[data-v-2cffe4ac]{padding:var(--space-4)}}
