:root{color-scheme:dark;--ui-primary: #22c55e;--ui-primary-hover: #16a34a;--ui-primary-light: #14532d;--ui-primary-shadow: rgba(34, 197, 94, .35);--ui-secondary: #0ea5e9;--ui-secondary-hover: #0284c7;--ui-secondary-light: #0369a1;--ui-warning: #f97316;--ui-warning-hover: #ea580c;--ui-warning-light: #451a03;--ui-danger: #f97373;--ui-danger-hover: #ef4444;--ui-danger-soft-bg: rgba(248, 113, 113, .16);--ui-danger-soft-border: rgba(248, 113, 113, .5);--ui-info-bg: rgba(59, 130, 246, .18);--ui-info-text: #bfdbfe;--ui-bg: #101828;--ui-bg-subtle: radial-gradient(circle at top left, #1a2332 0%, #101828 55%, #0a0f1a 100%);--ui-panel-bg: #1e293b;--ui-panel-bg-alt: #1e293b;--ui-panel-bg-hover: #111827;--ui-text: #f1f5f9;--ui-text-secondary: #cbd5e1;--ui-text-muted: #94a3b8;--ui-border: #374151;--ui-border-light: #1f2937;--ui-radius-sm: 4px;--ui-radius-md: 6px;--ui-radius-lg: 8px;--ui-radius-xl: 10px;--ui-space-xs: 6px;--ui-space-sm: 10px;--ui-space-md: 14px;--ui-space-lg: 20px;--ui-space-xl: 24px;--ui-shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--ui-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .4);--ui-shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .6), 0 8px 10px -6px rgba(0, 0, 0, .5);--ui-shadow-xl: 0 20px 40px -5px rgba(0, 0, 0, .7), 0 20px 30px -10px rgba(0, 0, 0, .6);--ui-font-size-xs: 12px;--ui-font-size-sm: 14px;--ui-font-size-base: 15px;--ui-font-size-lg: 16px;--ui-font-size-xl: 20px;--ui-font-size-title: 24px;--ui-font-medium: 500;--ui-font-semibold: 600;--ui-font-bold: 700;--ui-leading-tight: 1.35;--ui-leading-normal: 1.5;--ui-table-bg: #101828;--ui-table-header-bg: #101828;--ui-table-row-bg: #101828;--ui-table-row-alt-bg: #1a2332;--ui-table-row-hover-bg: #1a2332;--ui-table-border: #1f2937;--ui-sidebar-width: 200px;--ui-sidebar-gap: 12px;--ui-container-max-width: 1536px}:root[data-theme=light]{color-scheme:light;--ui-primary: #059669;--ui-primary-hover: #047857;--ui-primary-light: #d1fae5;--ui-primary-shadow: rgba(5, 150, 105, .25);--ui-secondary: #0d9488;--ui-secondary-hover: #0f766e;--ui-secondary-light: #ccfbf1;--ui-warning: #d97706;--ui-warning-hover: #b45309;--ui-warning-light: #fef3c7;--ui-danger: #dc2626;--ui-danger-hover: #b91c1c;--ui-danger-soft-bg: #fee2e2;--ui-danger-soft-border: #fecaca;--ui-info-bg: #eff6ff;--ui-info-text: #1d4ed8;--ui-bg: #f8fafc;--ui-bg-subtle: linear-gradient(160deg, #f1f5f9 0%, #e2e8f0 100%);--ui-panel-bg: #ffffff;--ui-panel-bg-alt: #f8fafc;--ui-panel-bg-hover: #f1f5f9;--ui-text: #0f172a;--ui-text-secondary: #475569;--ui-text-muted: #94a3b8;--ui-border: #e2e8f0;--ui-border-light: #f1f5f9;--ui-shadow-sm: 0 1px 2px rgba(0, 0, 0, .08);--ui-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .12), 0 2px 4px -2px rgba(0, 0, 0, .1);--ui-shadow-lg: 0 10px 25px -3px rgba(0, 0, 0, .15), 0 8px 10px -6px rgba(0, 0, 0, .12);--ui-shadow-xl: 0 20px 40px -5px rgba(0, 0, 0, .18), 0 20px 30px -10px rgba(0, 0, 0, .15);--ui-table-bg: #ffffff;--ui-table-header-bg: #f5f5f5;--ui-table-row-bg: #ffffff;--ui-table-row-alt-bg: #f9fafb;--ui-table-row-hover-bg: #f3f4f6;--ui-table-border: #dddddd}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{height:100%;min-height:100vh;overflow:hidden;padding:0 28px 28px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,PingFang SC,Microsoft YaHei,Helvetica Neue,Roboto,Arial,sans-serif;font-size:var(--ui-font-size-base);line-height:var(--ui-leading-normal);color:var(--ui-text);background:var(--ui-bg);background-attachment:fixed}#app{height:100%;min-height:100vh;display:flex;flex-direction:column;max-width:var(--ui-container-max-width);margin:0 auto;width:100%}.app-layout{display:flex;gap:var(--ui-sidebar-gap);flex:1;min-height:0}.app-sidebar{width:var(--ui-sidebar-width);flex-shrink:0;background:var(--ui-panel-bg);border-radius:var(--ui-radius-lg);padding:var(--ui-space-lg);display:flex;flex-direction:column;gap:var(--ui-space-sm);overflow:hidden;box-shadow:var(--ui-shadow-md);border:1px solid var(--ui-border-light)}.app-sidebar>.data-export{margin-top:-2px}.app-main{flex:1;min-width:0;background:var(--ui-panel-bg);border-radius:var(--ui-radius-lg);padding:var(--ui-space-xl);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--ui-shadow-md);border:1px solid var(--ui-border-light)}.app-section-title{font-size:var(--ui-font-size-base);font-weight:var(--ui-font-semibold);color:var(--ui-text);margin:0 0 var(--ui-space-sm);letter-spacing:.02em;line-height:var(--ui-leading-tight)}.app-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px var(--ui-space-lg);border:none;border-radius:var(--ui-radius-md);font-size:var(--ui-font-size-sm);font-weight:var(--ui-font-medium);cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.app-btn-primary{background:var(--ui-primary);color:#fff;box-shadow:0 1px 2px #0000000d}.app-btn-primary:hover:not(:disabled){background:var(--ui-primary-hover);box-shadow:0 4px 12px var(--ui-primary-shadow);transform:translateY(-1px)}.app-btn-primary:active:not(:disabled){transform:translateY(0)}.app-btn-primary:disabled{background:var(--ui-border);color:var(--ui-text-muted);cursor:not-allowed;opacity:.85;box-shadow:none}.app-btn svg{width:18px;height:18px;flex-shrink:0;opacity:.95}@media (max-width: 768px){body{padding:12px 16px 16px}.app-layout{flex-direction:column}.app-sidebar{width:100%}.app-main{min-height:400px}}.error-boundary[data-v-d69a03ca]{display:flex;align-items:center;justify-content:center;min-height:400px;padding:40px 20px}.error-content[data-v-d69a03ca]{text-align:center;max-width:600px;background:var(--ui-panel-bg);padding:40px;border-radius:12px;box-shadow:var(--ui-shadow-md)}.error-content svg[data-v-d69a03ca]{color:#ef4444;margin-bottom:20px}.error-title[data-v-d69a03ca]{font-size:var(--ui-font-size-title);font-weight:600;color:var(--ui-text);margin-bottom:12px}.error-message[data-v-d69a03ca]{font-size:var(--ui-font-size-lg);color:var(--ui-text-secondary);margin-bottom:20px;line-height:1.6}.error-details[data-v-d69a03ca]{margin:20px 0;text-align:left}.error-details details[data-v-d69a03ca]{cursor:pointer;padding:12px;background:var(--ui-panel-bg-alt);border-radius:6px}.error-details summary[data-v-d69a03ca]{font-weight:500;color:var(--ui-text-secondary);margin-bottom:8px}.error-details pre[data-v-d69a03ca]{font-size:var(--ui-font-size-xs);color:var(--ui-text);background:transparent;padding:12px;border-radius:4px;overflow-x:auto;margin-top:8px}.error-actions[data-v-d69a03ca]{display:flex;gap:12px;justify-content:center;margin-top:24px}.retry-button[data-v-d69a03ca]{padding:10px 24px;border:none;border-radius:6px;font-size:var(--ui-font-size-base);font-weight:500;cursor:pointer;transition:all .3s ease;background:var(--ui-primary);color:#fff}.retry-button[data-v-d69a03ca]:hover{background:var(--ui-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--ui-primary-shadow)}
