:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64);--surface-page: #f8fafc;--surface-base: #ffffff;--surface-card: #ffffff;--surface-card-muted: #f8fafc;--surface-card-soft: #f9fafb;--surface-hover: #f1f5f9;--surface-elevated: #ffffff;--surface-header: #ffffff;--surface-sidebar-gradient: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);--surface-menu-hover-gradient: linear-gradient(135deg, #f1f5f9, #e2e8f0);--surface-code: #f1f5f9;--text-primary: #1f2937;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-weak: #64748b;--text-inverse: #ffffff;--border-color: #e2e8f0;--border-color-soft: #e5e7eb;--border-color-weak: #d1d5db;--shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .1);--shadow-lg: 0 8px 25px rgba(15, 23, 42, .12);--shadow-xl: 0 20px 40px rgba(15, 23, 42, .15);--shadow-sidebar: 2px 0 12px rgba(15, 23, 42, .08);--shadow-sidebar-hover: 4px 0 20px rgba(15, 23, 42, .12);--shadow-card: 0 4px 12px rgba(15, 23, 42, .08);--overlay-soft: rgba(15, 23, 42, .05);--overlay-medium: rgba(15, 23, 42, .08);--overlay-strong: rgba(15, 23, 42, .12);--overlay-mask: rgba(15, 23, 42, .5);--scrollbar-track: #f1f5f9;--scrollbar-thumb: #c1c1c1;--scrollbar-thumb-hover: #a8a8a8;--login-page-bg: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--login-card-bg: rgba(255, 255, 255, .95);--login-card-border: rgba(255, 255, 255, .25);--chart-tooltip-bg: rgba(15, 23, 42, .86);--chart-tooltip-text: #f8fafc;--chart-grid-color: rgba(15, 23, 42, .08);--chart-axis-color: #64748b;--chart-point-border: #ffffff;--chart-empty-text: #6b7280;--chart-card-bg: #ffffff;--table-header-bg: #f8fafc;--table-row-hover-bg: #f1f5f9;--section-gap: 160px;--color-background: var(--surface-base);--color-background-soft: var(--surface-card-muted);--color-background-mute: var(--surface-page);--color-border: var(--border-color);--color-border-hover: var(--border-color-weak);--color-heading: var(--text-primary);--color-text: var(--text-primary)}html[data-theme=dark]{color-scheme:dark;--surface-page: #0b1220;--surface-base: #111827;--surface-card: #111827;--surface-card-muted: #1e293b;--surface-card-soft: #172033;--surface-hover: #334155;--surface-elevated: #1f2937;--surface-header: #0f172a;--surface-sidebar-gradient: linear-gradient(180deg, #111827 0%, #0b1220 100%);--surface-menu-hover-gradient: linear-gradient(135deg, #1f2937, #334155);--surface-code: #1e293b;--text-primary: #e5e7eb;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-weak: #cbd5e1;--text-inverse: #ffffff;--border-color: #334155;--border-color-soft: #475569;--border-color-weak: #64748b;--shadow-sm: 0 2px 8px rgba(2, 6, 23, .45);--shadow-md: 0 4px 6px -1px rgba(2, 6, 23, .55);--shadow-lg: 0 8px 25px rgba(2, 6, 23, .58);--shadow-xl: 0 20px 40px rgba(2, 6, 23, .62);--shadow-sidebar: 2px 0 12px rgba(2, 6, 23, .55);--shadow-sidebar-hover: 4px 0 20px rgba(2, 6, 23, .62);--shadow-card: 0 4px 12px rgba(2, 6, 23, .55);--overlay-soft: rgba(148, 163, 184, .12);--overlay-medium: rgba(148, 163, 184, .2);--overlay-strong: rgba(148, 163, 184, .28);--overlay-mask: rgba(2, 6, 23, .68);--scrollbar-track: #1e293b;--scrollbar-thumb: #475569;--scrollbar-thumb-hover: #64748b;--login-page-bg: linear-gradient(135deg, #1e293b 0%, #111827 100%);--login-card-bg: rgba(17, 24, 39, .92);--login-card-border: rgba(148, 163, 184, .24);--chart-tooltip-bg: rgba(2, 6, 23, .92);--chart-tooltip-text: #e2e8f0;--chart-grid-color: rgba(148, 163, 184, .2);--chart-axis-color: #94a3b8;--chart-point-border: #0f172a;--chart-empty-text: #94a3b8;--chart-card-bg: #111827;--table-header-bg: #1e293b;--table-row-hover-bg: #334155;--color-background: var(--surface-base);--color-background-soft: var(--surface-card-muted);--color-background-mute: var(--surface-page);--color-border: var(--border-color);--color-border-hover: var(--border-color-weak);--color-heading: var(--text-primary);--color-text: var(--text-primary)}html[data-theme=light]{color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--surface-page);transition:color .3s ease,background-color .3s ease;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;height:100vh;margin:0;padding:0;font-weight:400;overflow:hidden}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media (hover: hover){a:hover{background-color:#00bd7e33}}body{margin:0;padding:0;width:100%;height:100vh;overflow:hidden;-webkit-overflow-scrolling:touch;touch-action:manipulation}*{box-sizing:border-box}button,.n-button,a,input,select,textarea{min-height:44px;min-width:44px}@media (max-width: 768px){button,.n-button{min-height:48px;padding:12px 16px}input,select,textarea{min-height:48px;font-size:16px}}@media (max-width: 480px){button,.n-button{min-height:52px;padding:14px 18px}input,select,textarea{min-height:52px;font-size:16px}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.hidden-mobile{display:block}@media (max-width: 768px){.hidden-mobile{display:none}}.hidden-desktop{display:none}@media (max-width: 768px){.hidden-desktop{display:block}}
