:root{--brand: var(--el-color-primary, #409EFF);--brand-light: var(--el-color-primary-light-3, #79bbff);--brand-dark: var(--el-color-primary-dark-2, #337ecc);--brand-alpha-10: rgba(var(--el-color-primary-rgb, 64, 158, 255), .1);--brand-alpha-20: rgba(var(--el-color-primary-rgb, 64, 158, 255), .2);--brand-alpha-25: rgba(var(--el-color-primary-rgb, 64, 158, 255), .25);--color-primary: var(--brand);--color-primary-light: var(--brand-light);--color-primary-dark: var(--brand-dark);--gradient-primary: linear-gradient(135deg, var(--brand) 0%, var(--brand-light) 100%);--gradient-primary-hover: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand) 100%);--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--info: #3B82F6;--warning-dark: #D97706;--color-error: var(--danger);--color-white: #ffffff;--color-white-rgb: 255, 255, 255;--danger-rgb: 239, 68, 68;--rise: #EF4444;--rise-rgb: 239, 68, 68;--rise-bg: rgba(239, 68, 68, .08);--fall: #10B981;--fall-rgb: 16, 185, 129;--fall-bg: rgba(16, 185, 129, .08);--gray-50: #F9FAFB;--gray-100: #F3F4F6;--gray-200: #E5E7EB;--gray-300: #D1D5DB;--gray-400: #9CA3AF;--gray-500: #6B7280;--gray-600: #4B5563;--gray-700: #374151;--gray-800: #1F2937;--gray-900: #111827;--text-primary: #111827;--text-secondary: #475569;--text-tertiary: #94A3B8;--text-inverse: #FFFFFF;--bg-page: #F8FAFC;--bg-surface: #FFFFFF;--bg-elevated: #FFFFFF;--bg-secondary: #F1F5F9;--bg-primary: var(--bg-page);--bg-tertiary: #E2E8F0;--bg-card: var(--bg-surface);--bg-card-hover: #F8FAFC;--bg-warning-light: #fffbeb;--border: #E5E7EB;--border-light: #F3F4F6;--border-dark: #D1D5DB;--border-primary: #E2E8F0;--border-secondary: #CBD5E1;--border-hover: #94A3B8;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 1px rgba(15, 23, 42, .02);--shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px rgba(15, 23, 42, .04), 0 2px 4px rgba(15, 23, 42, .03);--shadow-lg: 0 10px 15px rgba(15, 23, 42, .05), 0 4px 6px rgba(15, 23, 42, .03);--shadow-xl: 0 20px 25px rgba(15, 23, 42, .05), 0 8px 10px rgba(15, 23, 42, .03);--shadow-primary: rgba(15, 23, 42, .08);--shadow-secondary: rgba(15, 23, 42, .12);--glow-primary: rgba(var(--el-color-primary-rgb, 64, 158, 255), .08);--glow-secondary: rgba(var(--el-color-primary-rgb, 64, 158, 255), .04);--radius-sm: 4px;--radius-md: 6px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-3);--space-lg: var(--space-4);--space-xl: var(--space-5);--space-2xl: var(--space-6);--header-height: 64px;--sidebar-width: 220px;--page-pad-x: 16px;--page-pad-y: 16px;--page-gap: 16px;--page-gap-y: 16px;--page-max: 1600px;--card-pad: 16px;--card-padding: 16px;--card-radius: var(--radius);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;--font-xs: 12px;--font-sm: 14px;--font-base: 15px;--font-md: 16px;--font-lg: 18px;--font-xl: 22px;--font-2xl: 26px;--font-3xl: 34px;--font-4xl: 38px;--font-5xl: 54px;--lh-tight: 1.3;--lh-base: 1.5;--lh-loose: 1.6;--btn-h-xs: 24px;--btn-h-sm: 32px;--btn-h-md: 36px;--btn-h-lg: 44px;--btn-radius: var(--radius);--btn-text: #ffffff;--btn-fs-xs: 12px;--btn-fs-sm: 13px;--btn-fs-md: 13px;--btn-fs-lg: 14px;--btn-padding-xs: 0 12px;--btn-padding-sm: 0 16px;--btn-padding-md: 0 20px;--btn-padding-lg: 0 24px;--toolbar-control-height-pc: 40px;--toolbar-select-height-pc: 44px;--toolbar-control-height-mobile: 44px;--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: ease-out;--dur-fast: .15s;--dur-base: .25s;--dur-slow: .4s;--transition-base: .25s ease-out;--line-height-tight: 1.3}@media(max-width:768px){:root{--page-pad-x: 8px;--page-pad-y: 12px;--page-gap: 12px;--page-gap-y: 12px;--card-pad: 12px;--card-radius: 8px;--btn-h-xs: 24px;--btn-h-sm: 32px;--btn-h-md: 36px;--btn-h-lg: 44px;--btn-fs-xs: 12px;--btn-fs-sm: 13px;--btn-fs-md: 15px;--btn-fs-lg: 16px;--font-base: 16px;--font-sm: 14px;--font-xs: 12px;--font-3xl: 30px;--font-4xl: 34px;--font-5xl: 42px;--btn-padding-xs: 0 12px;--btn-padding-sm: 0 16px;--btn-padding-md: 0 24px;--btn-padding-lg: 0 32px;--touch-target-min: 44px;--touch-target-sm: 40px;--touch-target-lg: 48px;--nav-icon-size: 44px;--nav-icon-radius: 10px;--nav-item-padding: 12px 4px;--nav-label-size: 12px;--nav-label-color: var(--text-secondary);--nav-gradient-blue: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);--nav-gradient-purple: linear-gradient(135deg, #9333EA 0%, #7C3AED 100%);--nav-gradient-green: linear-gradient(135deg, #10B981 0%, #059669 100%);--nav-gradient-orange: linear-gradient(135deg, #F97316 0%, #EA580C 100%);--nav-gradient-yellow: linear-gradient(135deg, #FBBF24 0%, #F59E0B 100%);--nav-gradient-red: linear-gradient(135deg, #EF4444 0%, #DC2626 100%);--nav-gradient-cyan: linear-gradient(135deg, #06B6D4 0%, #0891B2 100%);--nav-gradient-pink: linear-gradient(135deg, #EC4899 0%, #DB2777 100%);--nav-gradient-gold: linear-gradient(135deg, #FBBF24 0%, #D97706 100%);--nav-gradient-game: linear-gradient(135deg, #A855F7 0%, #9333EA 100%)}}@media(max-width:480px){:root{--card-pad: 16px;--btn-h-md: 36px}}:root{--table-header-bg: #FAFAFA;--table-border-color: var(--border);--table-border: var(--border-primary);--table-hover-bg: #F9FAFB;--table-hover: var(--bg-card-hover);--table-stripe-bg: #FAFAFA;--table-cell-hpad: 6px;--table-cell-vpad: 4px;--table-row-height: 48px;--frozen-col-width: 120px;--frozen-col-padding-left: 2px;--frozen-col-padding-right: 2px;--frozen-col-padding-top: 2px;--frozen-col-padding-bottom: 2px;--frozen-col-z-index: 10;--frozen-col-z-index-header: 11;--frozen-col-bg: #ffffff;--frozen-col-shadow-pc: 2px 0 4px rgba(0, 0, 0, .06);--frozen-col-shadow-mobile: 2px 0 4px rgba(0, 0, 0, .1);--frozen-col-mobile-padding-left: 4px;--frozen-col-mobile-padding-right: 2px;--frozen-col-mobile-padding-top: 4px;--frozen-col-mobile-padding-bottom: 4px;--frozen-col-name-font-family: var(--font-family);--frozen-col-name-size: 14px;--frozen-col-name-color: #303133;--frozen-col-name-weight: 500;--frozen-col-name-line-height: 1.4;--frozen-col-code-font-family: var(--font-family);--frozen-col-code-size: 13px;--frozen-col-code-color: #909399;--frozen-col-code-line-height: 1.3;--frozen-col-gap: 4px;--frozen-col-padding-y: 8px;--table-header-font-family: var(--font-family);--table-header-font-size: 13px;--table-header-font-weight: 600;--table-header-color: var(--text-primary);--table-header-line-height: 1.5;--table-cell-font-family: var(--font-family);--table-cell-font-size: 13px;--table-cell-color: var(--text-primary);--table-cell-line-height: 1.5;--table-cell-font-weight: 400;--table-number-font-family: var(--font-family);--table-number-font-size: 13px;--table-number-color: var(--text-primary);--table-number-font-weight: 400;--table-number-line-height: 1.5}@media(max-width:768px){:root{--table-cell-hpad: 8px;--table-cell-vpad: 6px;--table-row-height: 48px;--frozen-col-width: 100px;--frozen-col-name-size: 13px;--frozen-col-code-size: 11px;--table-header-font-family: var(--font-family);--table-header-font-size: 12px;--table-header-font-weight: 600;--table-header-color: var(--text-primary);--table-header-line-height: 1.3;--table-cell-font-family: var(--font-family);--table-cell-font-size: 12px;--table-cell-color: var(--text-primary);--table-cell-line-height: 1.4;--table-cell-font-weight: 400;--table-number-font-family: var(--font-family);--table-number-font-size: 12px;--table-number-color: var(--text-primary);--table-number-font-weight: 400;--table-number-line-height: 1.4}}:root{--chart-h: 500px;--chart-h-sm: 300px;--chart-h-lg: 600px;--chart-h-mobile: 360px;--chart-pad-x: 16px;--chart-pad-y: 12px;--chart-grid: #E5E7EB;--chart-text: var(--text-secondary);--chart-1: var(--el-color-primary, #409EFF);--chart-2: #10B981;--chart-3: #F59E0B;--chart-4: #EF4444;--chart-5: #8B5CF6;--chart-6: #06B6D4;--chart-7: #EC4899;--chart-8: #84CC16}:root{--page-bg-pc: #F8FAFC;--page-bg-mobile: #F8FAFC;--page-pad-x: 16px;--page-pad-y: 16px;--page-gap: 16px;--page-gap-y: 16px;--page-max: 1600px;--card-margin: 12px;--card-pad: 16px;--card-radius: var(--radius);--card-shadow: 0 2px 12px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--card-shadow-hover: 0 4px 16px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--card-header-padding: 12px 16px;--card-body-padding: 16px;--card-border: 1px solid #e8eaed;--card-bg: #ffffff;--table-header-bg: #f0f2f5;--table-row-even-bg: #ffffff;--table-row-hover-bg: #eef5ff;--breadcrumb-height: 40px;--mobile-nav-height: 48px;--mobile-nav-spacing: 48px;--mobile-bottom-nav-height: 60px;--mobile-bottom-padding: 70px;--pagination-height: 32px;--pagination-padding: 12px 0;--pagination-gap: 12px;--font-size-h1: 28px;--font-size-h2: 24px;--font-size-h3: 20px;--font-size-h4: 18px;--font-size-h5: 16px;--font-size-h6: 14px}@media(max-width:768px){:root{--chart-h: var(--chart-h-mobile);--chart-h-sm: 220px;--chart-h-lg: 360px;--page-pad-x: 8px;--page-pad-y: 12px;--page-gap: 12px;--page-gap-y: 12px;--card-pad: 12px;--card-radius: 8px;--card-shadow: 0 1px 6px rgba(0, 0, 0, .06);--card-header-padding: 12px 12px;--card-body-padding: 12px;--card-bg: #ffffff;--table-header-bg: #f0f2f5;--table-row-even-bg: #ffffff;--table-row-hover-bg: #eef5ff;--mobile-nav-height: 48px;--mobile-nav-spacing: 48px;--mobile-bottom-nav-height: 60px;--mobile-bottom-padding: 70px;--space-3: 10px;--space-4: 14px;--space-5: 18px;--space-6: 22px;--pagination-height: 36px;--pagination-padding: 10px 0;--pagination-gap: 8px;--font-size-h1: 22px;--font-size-h2: 19px;--font-size-h3: 17px;--font-size-h4: 15px}}:root{--admin-primary: #1677FF;--admin-primary-hover: #4096FF;--admin-primary-active: #0958D9;--admin-primary-light: #E6F4FF;--admin-success: #52C41A;--admin-warning: #FAAD14;--admin-danger: #FF4D4F;--admin-info: #1677FF;--admin-bg-page: #F0F2F5;--admin-bg-card: #FFFFFF;--admin-bg-sidebar: #001529;--admin-bg-header: #FFFFFF;--admin-text-primary: #000000E0;--admin-text-secondary: #00000073;--admin-text-tertiary: #00000040;--admin-text-disabled: #00000026;--admin-border: #D9D9D9;--admin-border-light: #F0F0F0;--admin-space-1: 4px;--admin-space-2: 8px;--admin-space-3: 12px;--admin-space-4: 16px;--admin-space-6: 24px}.el-button.is-loading{min-height:var(--el-button-size, 32px)!important;height:var(--el-button-size, 32px)!important}html,body,.el-scrollbar__wrap,.el-table__body-wrapper,.el-select-dropdown__wrap{touch-action:pan-y}#app{max-width:100%;margin:0;padding:0;font-weight:400}a{text-decoration:none;color:var(--color-primary);transition:color .3s ease}a:hover{color:var(--color-primary-light)}@media(min-width:1024px){body{display:block}#app{display:block;padding:0}}@media(min-width:769px){[class*=pagination-container]{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;flex-wrap:nowrap!important;margin-top:40px!important;margin-bottom:24px!important;padding:var(--pagination-padding)!important;width:100%!important;box-sizing:border-box!important}[class*=pagination-container] [class*=pagination-size-selector]{display:flex!important;align-items:center!important;gap:var(--space-2)!important;order:1!important;flex-shrink:0!important;margin-right:auto!important}[class*=pagination-container] [class*=pagination-size-selector] span{font-size:var(--font-base)!important;color:var(--text-secondary)!important;white-space:nowrap!important}[class*=pagination-container] .el-pagination{order:2!important;flex-shrink:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;gap:var(--pagination-gap)!important;padding:0!important;margin:0!important;width:auto!important}[class*=pagination-container] .btn-prev{order:1!important;margin:0!important;min-width:var(--pagination-height)!important;height:var(--pagination-height)!important;line-height:var(--pagination-height)!important}[class*=pagination-container] .el-pager{order:2!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:var(--space-1)!important;margin:0!important;padding:0!important}[class*=pagination-container] .btn-next{order:3!important;margin:0!important;min-width:var(--pagination-height)!important;height:var(--pagination-height)!important;line-height:var(--pagination-height)!important}[class*=pagination-container] .el-pagination__total{order:4!important;margin-left:var(--pagination-gap)!important;margin-right:0!important;font-size:var(--font-sm)!important;color:var(--text-secondary)!important;white-space:nowrap!important}[class*=pagination-container] .el-pagination__sizes{display:none!important}}@media(max-width:768px){[class*=pagination-container]{display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:var(--pagination-gap)!important;flex-wrap:wrap!important;margin-top:0!important;margin-bottom:16px!important;padding:var(--pagination-padding)!important;padding-bottom:16px!important;width:100%!important;box-sizing:border-box!important}[class*=pagination-container] [class*=pagination-size-selector]{display:none!important}[class*=pagination-container] .el-pagination{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:var(--space-1)!important;padding:0!important;margin:0!important;width:100%!important}[class*=pagination-container] .el-pagination__total{order:5!important;width:100%!important;text-align:center!important;margin:var(--space-1) 0 0 0!important;font-size:var(--font-sm)!important;color:var(--text-secondary)!important;white-space:nowrap!important;flex-shrink:0!important}[class*=pagination-container] .btn-prev{order:1!important;min-width:var(--pagination-height)!important;height:var(--pagination-height)!important;line-height:var(--pagination-height)!important;padding:0 var(--space-4)!important;font-size:var(--font-sm)!important;flex-shrink:0!important}[class*=pagination-container] .el-pager{order:2!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:var(--space-1)!important;margin:0!important;padding:0!important;flex-shrink:0!important}[class*=pagination-container] .btn-next{order:3!important;min-width:var(--pagination-height)!important;height:var(--pagination-height)!important;line-height:var(--pagination-height)!important;padding:0 var(--space-4)!important;font-size:var(--font-sm)!important;flex-shrink:0!important}[class*=pagination-container] .el-pager li{min-width:var(--pagination-height)!important;max-width:40px!important;height:var(--pagination-height)!important;line-height:var(--pagination-height)!important;font-size:var(--font-sm)!important;padding:0 var(--space-1)!important;box-sizing:border-box!important;flex-shrink:0!important}[class*=pagination-container] .el-pagination__sizes,[class*=pagination-container] .el-pagination__jump{display:none!important}}.qrcode-dialog-content{display:flex;flex-direction:column;align-items:center;padding:20px 0;text-align:center}.qrcode-icon{font-size:48px;margin-bottom:16px}.qrcode-title{font-size:20px;font-weight:600;color:#303133;margin:0 0 8px}.qrcode-subtitle{font-size:14px;color:#909399;margin:0 0 20px}.qrcode-wrapper{width:200px;height:200px;display:flex;align-items:center;justify-content:center;background:#f5f7fa;border-radius:8px;margin-bottom:16px}.qrcode-img{width:100%;height:100%;object-fit:contain}.qrcode-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;color:#909399}.qrcode-placeholder .placeholder-text{font-size:14px;margin-top:12px;margin-bottom:4px}.qrcode-placeholder .placeholder-hint{font-size:12px;color:#c0c4cc}.qrcode-hint{font-size:14px;color:#606266;margin-top:8px}.qrcode-btn{min-width:120px}.detail-code{font-size:14px;color:#909399;background:#f4f4f5;padding:2px 8px;border-radius:4px;white-space:nowrap}.detail-code[title],.detail-code.clickable{cursor:pointer;color:#667eea}.detail-code[title]:hover,.detail-code.clickable:hover{text-decoration:underline}@media(max-width:768px){.detail-code{font-size:13px;color:#909399;background:#f4f4f5;padding:2px 6px;border-radius:3px}.detail-code[title],.detail-code.clickable{color:#667eea}}.detail-name-section{display:flex;align-items:baseline;gap:10px}@media(max-width:768px){.detail-name-section{gap:6px!important}}@media(min-width:769px){.date-picker-single{min-width:160px}.date-filter{display:flex;align-items:center;gap:8px}.date-filter .el-date-picker{flex:1;min-width:140px}.date-filter .date-separator{flex-shrink:0;color:var(--color-text-secondary, #666);font-size:var(--font-base, 14px);padding:0 4px}.el-date-picker .el-input__wrapper{border-radius:var(--card-radius, 4px)}.el-date-picker .el-input__inner{text-align:center}.el-date-picker--daterange{min-width:320px}}@media(max-width:768px){.date-picker-single{width:100%}.date-filter{display:flex;flex-direction:row;align-items:center;gap:4px;width:100%;flex:1;min-width:0}.date-filter .el-date-picker{flex:1 1 0;min-width:0;width:calc(50% - 2px)}.date-filter .el-date-picker .el-input__wrapper{width:100%;max-width:100%;padding:0 8px}.date-filter .el-date-picker .el-input{width:100%;max-width:100%}.date-filter .el-date-picker .el-input__inner{width:100%;text-align:center;font-size:var(--font-sm, 13px)}.date-filter .date-separator{flex-shrink:0;margin:0 2px;color:var(--color-text-secondary, #666);font-size:var(--font-sm, 13px)}.date-filter .el-date-picker .el-input__icon{font-size:14px;width:20px}.el-date-picker--daterange{width:100%}}@media(min-width:769px){.chart-time-filter{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-3, 12px) var(--card-padding, 16px)}.chart-time-filter .el-date-picker{width:160px}.chart-time-filter .el-input__wrapper{width:100%}.chart-time-filter .el-input__inner{text-align:center}.chart-time-filter-mobile{display:none}}@media(max-width:768px){.chart-time-filter{display:none}.chart-time-filter-mobile{display:block!important;padding:var(--space-3, 12px) var(--card-padding, 10px)}.chart-time-filter-mobile .time-filter{display:flex!important;justify-content:center;gap:var(--space-2, 8px)}.chart-time-filter-mobile .el-button{flex:1;min-width:60px;min-height:48px;font-size:var(--font-base, 14px)}}.mobile-date-range-picker{display:flex;flex-direction:row;align-items:center;gap:4px;width:100%}@media(max-width:768px){.mobile-date-range-picker{flex-direction:column;gap:8px}.mobile-date-range-picker .el-date-picker{width:100%}.mobile-date-range-picker .date-separator{display:none}}.mobile-date-range-picker .el-date-picker{flex:1 1 0;min-width:0;width:calc(50% - 2px)}.mobile-date-range-picker .el-date-picker .el-input__wrapper{width:100%;max-width:100%;padding:0 8px}.mobile-date-range-picker .el-date-picker .el-input{width:100%;max-width:100%}.mobile-date-range-picker .el-date-picker .el-input__inner{width:100%;text-align:center;font-size:var(--font-sm, 13px)}.mobile-date-range-picker .date-separator{flex-shrink:0;margin:0 2px;color:var(--color-text-secondary, #666);font-size:var(--font-sm, 13px)}.mobile-date-range-picker .el-input__icon{font-size:14px;width:20px}@media(min-width:769px){.el-form-item .el-date-picker,.admin-form .el-date-picker{width:100%}}@media(max-width:768px){.el-form-item .el-date-picker,.el-form-item .el-date-picker .el-input__wrapper{width:100%}}.el-picker-panel{border-radius:var(--card-radius, 4px);box-shadow:var(--card-shadow, 0 2px 8px rgba(0, 0, 0, .08))}@media(max-width:768px){.el-picker-panel{max-width:90vw}.el-date-picker__header{padding:var(--space-2, 8px)}.el-date-table td{padding:var(--space-1, 4px)}}.backdrop-filter{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.backdrop-filter-light{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gpu-accelerated{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}html{overflow-y:auto;scrollbar-gutter:stable;scroll-behavior:auto}@media(max-width:768px){html{overflow-y:auto;scrollbar-gutter:auto}html::-webkit-scrollbar{display:none}html{-ms-overflow-style:none;scrollbar-width:none}}body{-webkit-tap-highlight-color:transparent;min-height:100vh;position:relative}a,button,[role=button],.clickable{-webkit-tap-highlight-color:transparent}@media(max-width:768px){body.wechat-no-pull{overscroll-behavior:none;touch-action:pan-y}video{width:100%;object-fit:contain;-webkit-playsinline:true;playsinline:true;x5-video-player-type:h5;x5-video-player-fullscreen:true}img{max-width:100%;-webkit-touch-callout:none}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.wechat-header-adjust{padding-top:constant(safe-area-inset-top,0px);padding-top:env(safe-area-inset-top,0px)}.wechat-scroll-smooth{-webkit-overflow-scrolling:touch;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.no-long-press{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}.link-neutral{color:inherit;text-decoration:none;cursor:pointer}.link-neutral:hover{text-decoration:underline}.link-muted{color:var(--text-secondary, #909399);text-decoration:none;cursor:pointer}.link-muted:hover{text-decoration:underline}.link-muted-tag{color:var(--text-secondary, #909399);background:#f4f4f5;padding:2px 8px;border-radius:4px;text-decoration:none;cursor:pointer}.link-muted-tag:hover{text-decoration:underline}button,[role=button]{-webkit-user-select:none;user-select:none}.clickable-element,.menu-item,.card-item,.card-item-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:all .2s ease}.clickable-element:active,.menu-item:active,.card-item:active,.card-item-clickable:active{opacity:.9;background:#0000000d}.transition-base{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-fast{transition:all .15s ease}.active-bg{transition:background-color .2s ease}.active-bg:active{background-color:#0000000a}.touch-feedback-scale{transition:transform .2s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.touch-feedback-scale:active{transform:scale(.98)}.touch-feedback-bg{transition:background-color .2s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.touch-feedback-bg:active{background-color:#0000000d}.touch-feedback-opacity{transition:opacity .2s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.touch-feedback-opacity:active{opacity:.9}body:not(:has(.admin-layout)) .app-container{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}body:not(:has(.admin-layout)) .el-card{min-height:0}body:not(:has(.admin-layout)) .el-table{min-height:100px;width:100%;table-layout:fixed}body:not(:has(.admin-layout)) .el-loading-parent--relative,body:not(:has(.admin-layout)) .el-loading-mask{position:relative!important}body:not(:has(.admin-layout)) .is-loading{min-height:120px}body:not(:has(.admin-layout)) .el-table__empty-text,body:not(:has(.admin-layout)) .el-loading-parent--relative{min-height:120px}body:not(:has(.admin-layout)) .skeleton-row{min-height:44px}body:not(:has(.admin-layout)) .chart-container{min-height:300px;will-change:min-height}@media(min-width:769px){body:not(:has(.admin-layout)) .chart-container{min-height:600px}}body:not(:has(.admin-layout)) .stats-card.is-loading{min-height:120px}body:not(:has(.admin-layout)) .header-card.is-loading{min-height:80px}body:not(:has(.admin-layout)) .data-card.is-loading,body:not(:has(.admin-layout)) .content-card.is-loading{min-height:200px}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--text-primary, #111827);background:var(--page-bg-pc);line-height:var(--lh-base);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:var(--font-base);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(min-width:769px){.el-card[class*=clickable],.el-card[class*=item],.strategy-card,.etf-card,.fund-card,.board-card{transition:box-shadow var(--transition-base) var(--ease-out);cursor:pointer}}@media(max-width:768px){body:not(:has(.admin-layout)) .el-input__wrapper,body:not(:has(.admin-layout)) .el-input__inner{font-size:16px!important}body:not(:has(.admin-layout)) textarea,body:not(:has(.admin-layout)) .el-textarea__inner{font-size:16px!important}body:not(:has(.admin-layout)) .el-date-editor .el-input__wrapper,body:not(:has(.admin-layout)) .el-date-editor .el-input__inner{font-size:16px!important}}.no-hover,.no-active,.no-transition{transition:none!important}.no-hover:hover,.no-active:active{transform:none!important;box-shadow:inherit!important;opacity:1!important}.no-hover.el-card:hover,.no-hover .el-card:hover,.no-hover :deep(.el-card):hover{box-shadow:inherit!important;transform:none!important}.is-loading,[disabled],.is-disabled{pointer-events:none!important;opacity:.6!important;cursor:not-allowed!important}@media(min-width:769px){body:not(:has(.admin-layout)) .el-button{border-radius:10px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}body:not(:has(.admin-layout)) .el-button--primary{background:var(--el-color-primary, #409EFF);border:none}body:not(:has(.admin-layout)) .el-button--primary:hover{background:var(--el-color-primary-light, #66b1ff);box-shadow:0 2px 8px #409eff4d;transform:translateY(-1px)}.el-input__wrapper{border-radius:10px;box-shadow:0 0 0 1px var(--border) inset;transition:box-shadow .2s ease}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--border-dark) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--brand) inset,0 0 0 4px #4a6cf70f!important}.el-date-picker{min-width:160px}.el-date-picker.el-date-picker--daterange{min-width:320px}}@media(max-width:768px){body{background:var(--page-bg-mobile);font-size:var(--font-base)}.home-view,.strategies-view,.market-view,.lof-view,.funds-view,.stocks-view,.favorites-view,.profile-view,.table-page-view{padding-bottom:var(--mobile-bottom-padding)!important}.el-card{border-radius:var(--card-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);margin:0 8px var(--page-gap-y);width:calc(100% - 16px);background:#fff}.el-card.toolbar-card,.el-card.metric-card-bar{margin:0!important;width:100%!important;border-radius:0!important;border:none!important;box-shadow:none!important}.el-card__header{padding:var(--card-header-padding);background:#fff;border-bottom:1px solid var(--border-light);font-weight:600;color:var(--text-primary);font-size:15px}.el-card__body{padding:16px;height:auto;background:#fff}.el-table{border-radius:0;margin:0;width:100%}.el-table__header-wrapper,.el-table__body-wrapper{border-radius:0}.table-card{margin:0!important;border-radius:0!important;box-shadow:none!important;border:none!important;width:100%!important;background:#fff!important}.table-card .el-card__body{padding:0!important}.table-card .el-card__header{display:none}.macro-panel-root .el-card{margin:0 8px var(--page-gap-y);border-radius:var(--card-radius);box-shadow:var(--card-shadow);border:none;width:calc(100% - 16px)}.macro-panel-root .el-card:last-child{margin-bottom:0}.macro-panel-root .table-card .el-card__body{padding:var(--card-body-padding) var(--card-body-padding)}.breadcrumb-card,.header-card{margin:0 8px var(--page-gap-y);border-radius:var(--card-radius);box-shadow:var(--card-shadow);border:none;width:calc(100% - 16px)}.breadcrumb-card :deep(.el-card__body),.header-card :deep(.el-card__body){padding:12px;min-height:var(--breadcrumb-height);display:flex;align-items:center;box-sizing:border-box}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}h4{font-size:var(--font-size-h4)}.el-table th,.el-table td,.el-table__cell{padding:12px 14px;font-size:var(--font-base);white-space:nowrap}.el-table__row{height:var(--table-row-height)}.el-table__header-wrapper .el-table__cell{font-size:var(--font-base);background:var(--table-header-bg);color:var(--table-header-color);border-bottom:1px solid var(--table-border-color)}.el-table th .cell,.el-table td .cell,.el-table__header-wrapper .cell,.el-table__body-wrapper .cell{padding:12px 14px!important;white-space:nowrap;line-height:1.2}.el-table .el-table__header-wrapper{overflow:hidden;position:relative}.el-table .el-table__body-wrapper{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.el-table .el-table__header-wrapper table,.el-table .el-table__body-wrapper table{table-layout:fixed;width:100%;min-width:auto}.el-table .el-table__fixed-left,.el-table .el-table__fixed-right{overflow:hidden}.el-table .hide-on-mobile,.el-table__header .hide-on-mobile,.el-table__body .hide-on-mobile,.el-table th.hide-on-mobile,.el-table td.hide-on-mobile{display:none}.el-radio-group{display:flex;flex-wrap:wrap;gap:var(--space-4)}.el-radio-button__inner{padding:var(--space-3) var(--space-5);font-size:var(--font-sm);border-radius:var(--card-radius)}.el-tag{font-size:var(--font-sm);padding:var(--space-1) var(--space-4);line-height:var(--line-height-tight)}.el-tag--small{font-size:var(--font-xs);padding:var(--space-1) var(--space-3)}.el-dialog{width:90%;margin:5vh auto;max-height:90vh}.el-dialog__body{padding:var(--space-5);max-height:calc(90vh - 120px);overflow-y:auto}.el-dialog__footer{padding:var(--space-5)}.el-form-item{margin-bottom:var(--space-5)}.el-form-item__label{font-size:var(--font-sm);padding-bottom:var(--space-3)}.el-form-item__content .el-input,.el-form-item__content .el-select,.el-form-item__content .el-date-picker{font-size:16px}.filter-content>.el-input,.filter-content>.el-select,.toolbar>.el-input,.toolbar>.el-select{flex:1;min-width:0}.el-select,.el-select .el-input__wrapper{width:100%}.date-filter{display:flex;flex-direction:row;align-items:center;gap:var(--space-1);width:100%;flex:1;min-width:0}.date-filter .el-date-picker{flex:1 1 0;min-width:0;width:calc(50% - 2px)}.date-filter .date-separator{flex-shrink:0;margin:0 2px}.toolbar{flex-direction:column;align-items:stretch;gap:var(--space-5)}.strategies-grid,.config-list,.summary-grid{grid-template-columns:1fr;gap:var(--page-gap-y)}.filter-content{flex-direction:row;align-items:center;gap:var(--space-4)}.etf-list,.tag-list{gap:var(--space-4);flex-wrap:wrap}.card-header,.el-card__header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.config-row{flex-direction:row;align-items:center;padding:var(--space-5);min-height:var(--btn-h-lg)}.config-row .label{max-width:55%;flex-shrink:0}.config-row .value{max-width:45%;text-align:right;word-break:break-word}.tabs-card{overflow-x:auto}.mobile-date-buttons{margin-top:var(--space-2);margin-bottom:var(--space-3);padding:0}.mobile-date-buttons .el-radio-group{display:flex;width:100%;gap:var(--space-3)}.mobile-date-buttons .el-radio-button{flex:1;margin:0}.mobile-date-buttons .el-radio-button__inner{width:100%;padding:var(--space-2) var(--space-1);font-size:var(--font-sm);border-radius:var(--radius-sm)!important}.el-button{font-size:var(--font-base);padding:var(--space-3) var(--space-4);border-radius:var(--radius);min-height:var(--btn-h-lg);min-width:80px}.el-button--small{font-size:var(--font-sm);padding:var(--space-2) var(--space-3);min-height:var(--btn-h-md);min-width:70px}.el-button--large{font-size:var(--font-md);padding:var(--space-3) var(--space-5);min-height:var(--btn-h-lg);min-width:90px}.card-actions .el-button,.action-buttons .el-button{flex:1;min-width:0;padding:var(--space-3) var(--space-2);font-size:var(--font-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-radio-button__inner{font-size:var(--font-sm);padding:var(--space-3) var(--space-3);min-width:60px;text-align:center}.chart-controls .el-radio-button__inner,.compact-controls .el-radio-button__inner{font-size:var(--font-xs);padding:var(--space-2);min-width:60px;text-align:center}.el-select-dropdown,.el-popper,.el-dropdown-menu,.el-select-dropdown__item,.el-dropdown-menu__item{background:#fff}.el-select-dropdown__item:hover,.el-dropdown-menu__item:hover{background:var(--table-hover-bg)}.el-select-dropdown__item.is-selected{background:#2196f31a;color:var(--info)}}.text-rise,.positive{color:var(--rise);font-weight:500}.text-fall,.negative{color:var(--fall);font-weight:500}.text-neutral{color:var(--gray-500)}.bg-rise{background-color:var(--rise-bg);color:var(--rise)}.bg-fall{background-color:var(--fall-bg);color:var(--fall)}.border-rise{border-color:var(--rise)}.border-fall{border-color:var(--fall)}.number-primary{color:var(--text-primary);font-weight:600}.number-secondary{color:var(--text-secondary);font-weight:500}.number-muted{color:var(--text-tertiary);font-weight:400}:root{--icon-size-xs: 12px;--icon-size-sm: 14px;--icon-size-md: 16px;--icon-size-lg: 20px;--icon-size-xl: 24px}.icon-xs{font-size:var(--icon-size-xs)}.icon-sm{font-size:var(--icon-size-sm)}.icon-md{font-size:var(--icon-size-md)}.icon-lg{font-size:var(--icon-size-lg)}.icon-xl{font-size:var(--icon-size-xl)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-info{color:var(--info)}.text-muted{color:#909399}.text-primary{color:var(--info)}.link-primary{color:var(--info);text-decoration:none;cursor:pointer}.link-primary:hover{color:var(--info);opacity:.8}.w-full{width:100%}.w-auto{width:auto}.w-100{width:100px}.w-150{width:150px}.w-300{max-width:300px}.w-400{max-width:400px}.w-500{max-width:500px}.w-800{max-width:800px}.dialog-sm{max-width:380px}.dialog-md{max-width:500px}.dialog-lg{max-width:800px}.mt-xs{margin-top:var(--space-1)}.mt-sm{margin-top:var(--space-2)}.mt-md{margin-top:var(--space-3)}.mt-lg{margin-top:var(--space-4)}.mt-xl{margin-top:var(--space-5)}.mb-xs{margin-bottom:var(--space-1)}.mb-sm{margin-bottom:var(--space-2)}.mb-md{margin-bottom:var(--space-3)}.mb-lg{margin-bottom:var(--space-4)}.mb-xl{margin-bottom:var(--space-5)}.mr-xs{margin-right:var(--space-1)}.mr-sm{margin-right:var(--space-2)}.p-xs{padding:var(--space-1)}.p-sm{padding:var(--space-2)}.p-md{padding:var(--space-3)}.p-lg{padding:var(--space-4)}.p-xl{padding:var(--space-5)}.text-xs{font-size:var(--font-sm)}.text-sm{font-size:var(--font-base)}.text-md{font-size:var(--font-md)}.text-lg{font-size:var(--font-size-h4)}.text-13{font-size:13px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.text-gray{color:#666}.text-gray-light{color:#909399}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-2)}.gap-md{gap:var(--space-3)}.gap-lg{gap:var(--space-4)}.stats-row{display:flex;gap:16px;flex-wrap:nowrap;width:100%}.stat-item{white-space:nowrap}.clickable{cursor:pointer}.hide{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:360px){:root{--page-pad-y: 6px;--page-gap-y: 6px;--card-padding: 8px;--card-pad: 8px;--card-header-padding: 8px 8px;--card-body-padding: 8px;--font-base: 14px;--font-sm: 12px;--font-md: 15px;--font-size-h1: 20px;--font-size-h2: 18px;--font-size-h3: 16px;--font-size-h4: 14px;--space-1: 3px;--space-2: 6px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 20px}.el-button{padding:calc(var(--space-3) - 1px) var(--space-4);min-height:38px}.el-button--small{padding:var(--space-2) var(--space-3);min-height:34px}.el-button--large{padding:var(--space-3) var(--space-5);min-height:42px}.el-input__wrapper{padding:var(--space-2) var(--space-3)}.el-tag{padding:var(--space-1) var(--space-3)}.el-dialog{width:92%;margin:3vh auto}.el-dialog__body{padding:16px}.el-dialog__footer{padding:12px 16px 16px}.el-form-item{margin-bottom:14px}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(20px,-20px)}}.skeleton-card{opacity:1}@media(min-width:768px){.strategy-card{opacity:1;animation:none}}@media(max-width:768px){.strategy-card{animation:fadeInTransform .3s ease-out forwards;opacity:0;will-change:transform,opacity}}@keyframes fadeInTransform{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.el-empty{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}body:not(:has(.admin-layout)) .el-skeleton{animation:none}body:not(:has(.admin-layout)) .skeleton-line{animation:none;background:#f0f2f5}.skeleton-header .skeleton-line{background:linear-gradient(to bottom,#f0f2f5,#fafbfc)}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .08s ease;will-change:opacity}.page-fade-enter-from,.page-fade-leave-to{opacity:0}.page-slide-enter-active{transition:opacity .3s ease-out,transform .3s ease-out}.page-slide-leave-active{transition:opacity .2s ease-in,transform .2s ease-in}.page-slide-enter-from{opacity:0;transform:translate(20px)}.page-slide-leave-to{opacity:0;transform:translate(-20px)}.page-bottom-enter-active{transition:opacity .3s ease-out,transform .3s ease-out}.page-bottom-leave-active{transition:opacity .2s ease-in,transform .2s ease-in}.page-bottom-enter-from{opacity:0;transform:translateY(30px)}.page-bottom-leave-to{opacity:0;transform:translateY(-30px)}.list-item-enter-active{transition:opacity .25s ease-out,transform .25s ease-out}.list-item-leave-active{transition:opacity .15s ease-in,transform .15s ease-in}.list-item-enter-from{opacity:0;transform:translateY(10px)}.list-item-leave-to{opacity:0;transform:translate(-20px)}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple-effect:active:after{width:300px;height:300px}.el-card:hover{transition:transform .3s ease,box-shadow .3s ease}.dialog-fade-enter-active,.dialog-fade-leave-active{transition:opacity .2s ease}.dialog-fade-enter-from,.dialog-fade-leave-to{opacity:0}.drawer-slide-enter-active,.drawer-slide-leave-active{transition:transform .3s ease}.drawer-slide-enter-from,.drawer-slide-leave-to{transform:translate(100%)}.image-fade-enter-active{transition:opacity .4s ease}.image-fade-enter-from{opacity:0}.image-fade-enter-to{opacity:1}.qrcode-container{opacity:0;animation:qrcodeFadeIn .4s ease forwards}@keyframes qrcodeFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.image-placeholder{background:linear-gradient(90deg,#f8f9fa 25%,#e9ecef,#f8f9fa 75%);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.pc-only{display:block}.mobile-only{display:none}@media(max-width:768px){.pc-only,.table-page-view .pc-only,.table-page-view .toolbar.pc-only,.table-page-view .toolbar.pc-toolbar.pc-only{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important;position:absolute!important;left:-9999px!important}.mobile-only,.table-page-view .mobile-only{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important}}.table-page-view{max-width:var(--page-max);margin:0 auto;padding:var(--page-pad-y) var(--page-pad-x);background:var(--page-bg-pc);min-height:calc(100vh - var(--header-height))}.table-page-view .header-card{margin-bottom:var(--page-gap-y)}.table-page-view .header-card :deep(.el-card__body){padding:var(--card-header-padding)}.table-page-view .toolbar-card{margin-bottom:var(--page-gap-y)}.table-page-view .toolbar-card :deep(.el-card__body){padding:var(--card-body-padding) var(--space-4)!important;min-height:48px;display:flex;align-items:center}.table-page-view .table-card{margin-bottom:0}.table-page-view .table-card :deep(.el-card__body){padding:var(--card-body-padding) 0!important}.table-page-view .toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:32px}.table-page-view .toolbar-left,.table-page-view .toolbar-right,.table-page-view .filter-row{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}@media(min-width:769px){.table-page-view .toolbar,.table-page-view .pc-toolbar{flex-wrap:nowrap!important;flex-direction:row!important;align-items:center}.table-page-view .toolbar-left,.table-page-view .toolbar-right,.table-page-view .filter-row{flex-wrap:nowrap}.table-page-view .filter-group{display:flex;gap:var(--space-2);align-items:center;flex-wrap:nowrap;width:auto}.table-page-view .stats-info{flex-wrap:nowrap;width:auto}.table-page-view .stats-info>div{flex-wrap:nowrap;width:auto}.table-page-view .stats-metrics{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important}.table-page-view .search-area{display:flex;gap:var(--space-4);align-items:center;flex-wrap:nowrap}.table-page-view .search-input{flex-shrink:1;min-width:200px;max-width:300px}.table-page-view .filter-select{flex-shrink:0;width:150px}.table-page-view .filter-input{max-width:300px}}.table-page-view .stats-info{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.table-page-view .stats-metrics{display:flex;flex-direction:row;gap:var(--space-4);align-items:center;flex-wrap:nowrap}.table-page-view .stat-item{font-size:var(--font-base);color:var(--color-text-secondary);white-space:nowrap}.table-page-view .stat-item strong{color:var(--color-heading);font-size:var(--font-size-lg);margin-left:var(--space-1);font-weight:600}.table-page-view .name-code-cell{width:var(--frozen-col-width);max-width:var(--frozen-col-width);padding:var(--frozen-col-padding-y) 0;cursor:pointer;word-break:break-word;white-space:normal;overflow-wrap:break-word;box-sizing:border-box}.table-page-view .name-code-cell:hover .name-text{color:var(--info);text-decoration:underline}.table-page-view .name-code-cell:hover .code-text{color:var(--frozen-col-code-color);text-decoration:none}.table-page-view .name-favorite-cell{display:flex;align-items:center;gap:var(--space-2);padding:var(--frozen-col-padding-y) 0}.table-page-view .name-favorite-cell .name-text{font-family:var(--frozen-col-name-font-family);font-size:var(--frozen-col-name-size);color:var(--frozen-col-name-color);font-weight:var(--frozen-col-name-weight);line-height:var(--frozen-col-name-line-height);word-break:break-word;white-space:normal;flex:1;min-width:0}.table-page-view .name-favorite-cell:hover .name-text{color:var(--info);text-decoration:underline}.table-page-view .name-text{font-family:var(--frozen-col-name-font-family);font-size:var(--frozen-col-name-size);color:var(--frozen-col-name-color);font-weight:var(--frozen-col-name-weight);margin-bottom:var(--frozen-col-gap);line-height:var(--frozen-col-name-line-height);word-break:break-word;white-space:normal}.table-page-view .code-text{font-family:var(--frozen-col-code-font-family);font-size:var(--frozen-col-code-size);color:var(--frozen-col-code-color);line-height:var(--frozen-col-code-line-height);word-break:break-word;white-space:normal}.table-page-view .code-favorite-row{display:flex;align-items:center;gap:var(--space-1);flex-wrap:nowrap}@media(min-width:769px){.table-page-view .table-card :deep(.el-table__header th:first-child),.table-page-view .table-card :deep(.el-table__body td:first-child),.table-page-view .table-card :deep(.el-table_1_column_1){position:sticky!important;left:0!important;z-index:var(--frozen-col-z-index)!important;background:var(--frozen-col-bg)!important;box-shadow:var(--frozen-col-shadow-pc)!important;width:var(--frozen-col-width)!important;min-width:var(--frozen-col-width)!important;max-width:var(--frozen-col-width)!important;box-sizing:border-box!important;padding:0!important}.table-page-view .table-card :deep(.el-table__header-wrapper colgroup col:first-child),.table-page-view .table-card :deep(.el-table__body-wrapper colgroup col:first-child){width:var(--frozen-col-width)!important}.table-page-view .table-card :deep(.el-table__header th:first-child){z-index:var(--frozen-col-z-index-header)!important}.table-page-view .el-table__header th:first-child .cell,.table-page-view .el-table__body td:first-child .cell,.table-page-view .table-card .el-table_1_column_1 .cell{padding:var(--frozen-col-padding-top) var(--frozen-col-padding-right) var(--frozen-col-padding-bottom) var(--frozen-col-padding-left)!important}}.table-page-view :deep(.el-table th:first-child .cell),.table-page-view :deep(.el-table td:first-child .cell){text-align:left!important}.table-page-view :deep(.el-table th:not(:first-child) .cell),.table-page-view :deep(.el-table td:not(:first-child) .cell){text-align:right!important}.table-page-view :deep(.el-table th.is-sortable .caret-wrapper){display:none}.table-page-view :deep(.el-table th .cell){font-weight:600;color:var(--table-header-color)}.table-page-view .number-value{color:var(--table-number-color)}.table-page-view :deep(.el-table th.is-sortable){cursor:pointer}.table-page-view :deep(.el-table th.is-sortable:hover){background-color:var(--table-hover-bg)}.hide-sort-arrows :deep(.caret-wrapper),.hide-sort-arrows :deep(.sort-caret),.hide-sort-arrows :deep(.el-table .caret-wrapper),.hide-sort-arrows :deep(.el-table .sort-caret),.hide-sort-arrows :deep(.el-table__header .caret-wrapper),.hide-sort-arrows :deep(.el-table__header .sort-caret){display:none}@media(max-width:768px){.hide-sort-arrows :deep(.caret-wrapper),.hide-sort-arrows :deep(.sort-caret),.hide-sort-arrows :deep(.el-table .caret-wrapper),.hide-sort-arrows :deep(.el-table .sort-caret),.hide-sort-arrows :deep(.el-table__header .caret-wrapper),.hide-sort-arrows :deep(.el-table__header .sort-caret){display:none}}.table-page-view .pagination-container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:nowrap;margin-top:var(--space-6);margin-bottom:var(--space-5);padding:var(--pagination-padding);width:100%;box-sizing:border-box}.table-page-view .pagination-size-selector{display:flex;align-items:center;gap:var(--space-2);order:1;flex-shrink:0;margin-right:auto}.table-page-view .pagination-size-selector span{font-size:var(--font-base);color:var(--text-secondary);white-space:nowrap}.table-page-view .pagination-container :deep(.el-pagination){order:2;flex-shrink:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:var(--pagination-gap);padding:0;margin:0;width:auto}.table-page-view .pagination-container :deep(.btn-prev){order:1;margin:0;min-width:var(--pagination-height);height:var(--pagination-height);line-height:var(--pagination-height)}.table-page-view .pagination-container :deep(.el-pager){order:2;display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-1);margin:0;padding:0}.table-page-view .pagination-container :deep(.btn-next){order:3;margin:0;min-width:var(--pagination-height);height:var(--pagination-height);line-height:var(--pagination-height)}.table-page-view .pagination-container :deep(.el-pagination__total){order:4;margin-left:var(--pagination-gap);margin-right:0;font-size:var(--font-sm);color:var(--text-secondary);white-space:nowrap}.table-page-view .pagination-container :deep(.el-pagination__sizes){display:none}@media(max-width:768px){.table-page-view{max-width:none;padding:var(--page-pad-y) 0 0 0;background:var(--page-bg-mobile)}.table-page-view .header-card{display:none!important}.table-page-view .toolbar-card{width:100%;padding:0;border:none;border-radius:var(--card-radius);box-shadow:var(--card-shadow);background:var(--card-bg);border-bottom:1px solid var(--table-border-color)}.table-page-view.funds-view,.table-page-view.market-view,.table-page-view.lof-view{padding-top:calc(var(--mobile-nav-spacing) + env(safe-area-inset-top,0px))!important;padding-bottom:calc(var(--mobile-bottom-nav-height) + var(--space-4) + env(safe-area-inset-bottom,0px))}.table-page-view.favorites-view{padding-top:0!important}.table-page-view .toolbar-card :deep(.el-card__body){padding:var(--space-2) var(--card-body-padding)}.table-page-view:not(.favorites-view) .table-card{width:100%;margin:0!important;padding:0;border:none;border-radius:0;box-shadow:none;background:var(--card-bg)}.mobile-table-card-full{width:100%!important;margin:0!important;padding:0!important;border:none!important;border-radius:0!important;box-shadow:none!important;background:var(--card-bg)!important}.mobile-table-card-full :deep(.el-card__body){padding:0!important}.table-page-view:not(.favorites-view) .table-card :deep(.el-card__body){padding:0!important}.table-page-view:not(.favorites-view) .table-card :deep(.el-card__header){display:none}.table-page-view .table-card :deep(.el-table){margin:0!important;padding:0!important;border-spacing:0!important;border-collapse:collapse!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x!important;display:block!important}.table-page-view .table-card :deep(.el-table__header-wrapper){overflow:visible!important}.table-page-view .table-card :deep(.el-table__body-wrapper){margin:0!important;padding:0!important;overflow-x:visible!important}.table-page-view .table-card :deep(.el-table__body-wrapper *){pointer-events:auto!important}.table-page-view .toolbar{flex-direction:column;align-items:stretch}.table-page-view .toolbar-left,.table-page-view .toolbar-right{width:100%}.table-page-view .search-input{flex-shrink:1!important;min-width:140px!important;max-width:none!important;width:100%!important}.table-page-view .pagination-container{display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:var(--pagination-gap)!important;flex-wrap:wrap!important;margin-top:0!important;margin-bottom:var(--space-4)!important;padding:var(--pagination-padding)!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.table-page-view .pagination-size-selector{display:none!important}.table-page-view .pagination-container :deep(.el-pagination__total){order:5!important;width:100%!important;text-align:center!important;margin:var(--space-1) 0 0 0!important;font-size:var(--font-sm, 13px)!important;color:var(--text-secondary)!important;white-space:nowrap!important;flex-shrink:0!important}.table-page-view .pagination-container :deep(.btn-prev),.table-page-view .pagination-container :deep(.btn-next){order:1!important;min-width:var(--pagination-height, 32px)!important;height:var(--pagination-height, 32px)!important;line-height:var(--pagination-height, 32px)!important;padding:0 var(--space-4)!important;font-size:var(--font-sm, 13px)!important;flex-shrink:0!important}.table-page-view .pagination-container :deep(.el-pager){order:2;display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-1);margin:0;padding:0;flex-shrink:0}.table-page-view .pagination-container :deep(.el-pager li){min-width:var(--pagination-height, 32px)!important;max-width:40px;height:var(--pagination-height, 32px)!important;line-height:var(--pagination-height, 32px)!important;font-size:var(--font-sm, 13px)!important;padding:0 var(--space-1);box-sizing:border-box;flex-shrink:0}.table-page-view .pagination-container :deep(.el-pagination__sizes),.table-page-view .pagination-container :deep(.el-pagination__jump){display:none}.table-page-view .pagination-container :deep(.el-pagination){display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:var(--pagination-gap)!important;padding:0!important;margin:0!important;width:100%!important}.table-page-view .table-card :deep(.el-table th:first-child),.table-page-view .table-card :deep(.el-table td:first-child),.table-page-view .table-card :deep(.el-table__fixed-left th:first-child),.table-page-view .table-card :deep(.el-table__fixed-left td:first-child),.table-page-view .table-card :deep(.el-table__fixed-left-patch){width:120px!important;min-width:120px!important;max-width:120px!important}.table-page-view .table-card :deep(.el-table__header th:first-child),.table-page-view .table-card :deep(.el-table__body td:first-child),.table-page-view .table-card :deep(.el-table__fixed-left .el-table__header th:first-child),.table-page-view .table-card :deep(.el-table__fixed-left .el-table__body td:first-child),.table-page-view .table-card :deep(.el-table__fixed-left-patch),.table-page-view .table-card :deep(.el-table_1_column_1){position:sticky!important;left:0!important;z-index:3!important;background:var(--frozen-col-bg)!important;box-shadow:2px 0 8px #0000001f!important}.table-page-view .table-card :deep(.el-table__header th:first-child){z-index:4!important}.table-page-view .table-card :deep(.el-table th:first-child .cell),.table-page-view .table-card :deep(.el-table td:first-child .cell){width:100%!important;max-width:100%!important;word-break:break-word!important;white-space:normal!important;overflow-wrap:break-word!important}.table-page-view .table-card :deep(.name-code-cell){width:100%!important;max-width:100%!important;word-break:break-word!important;white-space:normal!important;overflow-wrap:break-word!important}.table-page-view .table-card :deep(.name-text),.table-page-view .table-card :deep(.code-text){word-break:break-word!important;white-space:normal!important;overflow-wrap:break-word!important}.table-page-view .table-card :deep(.el-table th .cell){font-size:13px!important;padding:8px 6px!important;line-height:1.3!important}.table-page-view .table-card :deep(.el-table td .cell){font-size:13px!important;padding:2px 6px!important;line-height:1.3!important}.table-page-view .table-card :deep(.el-table tr){height:auto!important}.table-page-view .name-code-cell{padding:0!important;gap:2px!important;width:auto!important;max-width:none!important}.table-page-view .name-text{line-height:1.3!important;font-size:13px!important}.table-page-view .code-text{line-height:1.2!important;font-size:11px!important}.table-page-view .code-favorite-row{gap:2px!important}}@media(max-width:768px){.mobile-freeze-first-col :deep(.el-table__header th:first-child),.mobile-freeze-first-col :deep(.el-table__body td:first-child){position:sticky!important;left:0!important;z-index:3!important;background:var(--frozen-col-bg, #fff)!important;box-shadow:2px 0 8px #0000001f!important}.mobile-freeze-first-col :deep(.el-table__header th:first-child){z-index:4!important}}@media(max-width:768px){.mobile-freeze-columns :deep(.el-table__header-wrapper table),.mobile-freeze-columns :deep(.el-table__body-wrapper table){table-layout:fixed!important}.mobile-freeze-columns :deep(.el-table__header th:nth-child(1)),.mobile-freeze-columns :deep(.el-table__body td:nth-child(1)){position:sticky;left:0;z-index:var(--frozen-col-z-index);background:var(--frozen-col-bg);box-shadow:var(--frozen-col-shadow-mobile)}.mobile-freeze-columns :deep(.el-table__header th:nth-child(2)),.mobile-freeze-columns :deep(.el-table__body td:nth-child(2)){position:sticky;left:var(--frozen-col-width, 120px);z-index:var(--frozen-col-z-index);background:var(--frozen-col-bg);box-shadow:var(--frozen-col-shadow-mobile)}.mobile-freeze-columns :deep(.el-table__header th:nth-child(1)),.mobile-freeze-columns :deep(.el-table__header th:nth-child(2)){z-index:var(--frozen-col-z-index-header)}}@media(min-width:769px){body:not(:has(.admin-layout)) .el-table{border-radius:var(--card-radius);overflow:hidden}body:not(:has(.admin-layout)) .el-table th{background:linear-gradient(to bottom,var(--table-header-bg),var(--card-bg));font-weight:600;color:var(--table-header-color);border-bottom:2px solid var(--table-border-color)}body:not(:has(.admin-layout)) .el-table tr:hover>td{background:var(--table-hover-bg)}body:not(:has(.admin-layout)) .el-table--striped .el-table__body tr.el-table__row--striped td{background:var(--table-stripe-bg)}body:not(:has(.admin-layout)) .el-table th.is-sortable:hover{background-color:var(--table-hover-bg)}}@media(max-width:768px){body:not(:has(.admin-layout)) .el-table__row{transition:none!important}}.el-table .caret-wrapper,.el-table .sort-caret,.el-table .el-table__sort-icon{display:none}@media screen and (max-width:768px){html,body{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y manipulation!important}.table-page-view,.table-card,.table-card .el-card__body{overflow:visible!important;height:auto!important}.el-table{overflow:visible!important;height:auto!important;-webkit-overflow-scrolling:touch!important}.el-table__body-wrapper{overflow:scroll!important;overflow-x:auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x pan-y!important;height:auto!important;max-height:none!important}.el-table__body{height:auto!important}.el-table__row{-webkit-overflow-scrolling:touch!important}}.el-table th.is-sortable{cursor:pointer}:root{--table-row-height-pc: 48px;--table-row-height-mobile: 48px;--table-frozen-shadow: 2px 0 4px rgba(0,0,0,.06);--table-frozen-bg: #fff;--table-name-font-size: 14px;--table-name-color: var(--text-primary);--table-code-font-size: 12px;--table-code-color: var(--text-secondary);--table-name-code-gap: 4px;--table-header-bg: #FAFAFA;--table-header-font-size: 13px;--table-header-font-weight: 600;--table-mobile-font-size: 12px;--table-mobile-header-font-size: 12px}.name-code-cell{display:flex;flex-direction:column;gap:var(--table-name-code-gap, 4px);padding:8px 0;cursor:pointer;word-break:break-word;white-space:normal;overflow-wrap:break-word;box-sizing:border-box}.name-code-cell:hover .name-text{color:var(--brand, #409EFF);text-decoration:underline}.name-code-cell:hover .code-text{color:var(--text-secondary, #909399);text-decoration:none}.name-text{font-size:var(--table-name-font-size, 14px);color:var(--table-name-color, #111827);font-weight:500;line-height:1.4;word-break:break-word;white-space:normal}.code-text{font-size:var(--table-code-font-size, 12px);color:var(--table-code-color, #9CA3AF);line-height:1.3;word-break:break-word;white-space:normal}.data-table-wrapper :deep(.el-table th:first-child .cell),.data-table-wrapper :deep(.el-table td:first-child .cell){text-align:left!important}.data-table-wrapper :deep(.el-table th:not(:first-child) .cell),.data-table-wrapper :deep(.el-table td:not(:first-child) .cell){text-align:right!important}.data-table-wrapper :deep(.el-table th.is-sortable .caret-wrapper){display:none}.pagination-container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:nowrap;margin-top:var(--space-6, 24px);margin-bottom:var(--space-5, 20px);padding:var(--pagination-padding, 12px 0);width:100%;box-sizing:border-box}.pagination-size-selector{display:flex;align-items:center;gap:var(--space-2, 8px);order:1;flex-shrink:0;margin-right:auto}.pagination-size-selector span{font-size:var(--font-base, 14px);color:var(--text-secondary, #6B7280);white-space:nowrap}.pagination-container :deep(.el-pagination){order:2;flex-shrink:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:var(--pagination-gap, 12px);padding:0;margin:0;width:auto}.pagination-container :deep(.el-pagination__sizes){display:none}@media(min-width:769px){.data-table-wrapper :deep(.el-table){border-radius:var(--radius-md, 6px);overflow:hidden}.data-table-wrapper :deep(.el-table th){background:var(--table-header-bg, #FAFAFA);font-weight:var(--table-header-font-weight, 600);color:var(--text-primary, #111827);font-size:var(--table-header-font-size, 13px)}.data-table-wrapper :deep(.el-table tr:hover > td){background:var(--table-hover-bg, #F9FAFB)}.data-table-wrapper :deep(.el-table--striped .el-table__body tr.el-table__row--striped td){background:var(--table-stripe-bg, #FAFAFA)}}@media(max-width:768px){.data-table-wrapper{border:1px solid var(--border-primary, #e4e7ed);overflow:hidden;background:var(--card-bg)}.el-table{margin:0!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-x!important;display:block!important;table-layout:fixed!important;font-size:13px!important;border:none!important}.el-table__header-wrapper,.el-table__body-wrapper{overflow:visible!important}.el-table__body-wrapper{overflow-x:visible!important;margin:0!important;padding:0!important}.el-table__row{transition:none!important;height:var(--table-row-height-mobile, 48px)!important}.el-table th,.el-table td{padding:0!important}.el-table th{background:var(--table-header-bg)!important;border-bottom:1px solid #dcdfe6!important}.el-table th .cell{font-size:13px!important;font-weight:600!important;padding:8px 6px!important;line-height:1.3!important;white-space:nowrap!important;color:#303133!important}.el-table th:first-child .cell{padding-left:12px!important}.el-table th:last-child .cell{padding-right:12px!important}.el-table td .cell{font-size:13px!important;padding:10px 6px!important;line-height:1.5!important;white-space:nowrap!important;color:#606266!important}.el-table td:first-child .cell{padding-left:12px!important}.el-table td:last-child .cell{padding-right:12px!important}.el-table--striped .el-table__body tr.el-table__row--striped td{background:var(--table-row-even-bg)!important}.el-table__body tr:hover>td{background:var(--table-row-hover-bg)!important}.el-table th:first-child .cell,.el-table td:first-child .cell{text-align:left!important}.el-table th:not(:first-child) .cell,.el-table td:not(:first-child) .cell{text-align:right!important}.el-table th.is-sortable .caret-wrapper{display:none!important}.name-code-cell{padding:0!important;gap:2px!important;width:auto!important;max-width:none!important}.name-text{line-height:1.3!important;font-size:13px!important;color:#303133!important}.code-text{line-height:1.2!important;font-size:11px!important;color:#909399!important}.code-favorite-row{gap:2px!important}.pagination-container{justify-content:center!important;flex-wrap:wrap!important;margin-top:0!important;margin-bottom:var(--space-4, 16px)!important}.pagination-size-selector{display:none!important}.pagination-container :deep(.el-pagination){justify-content:center!important;flex-wrap:wrap!important;gap:var(--space-1, 4px)!important;width:100%!important}.pagination-container :deep(.el-pagination__total){width:100%!important;text-align:center!important;margin:var(--space-1, 4px) 0 0 0!important;font-size:var(--font-sm, 13px)!important}.pagination-container :deep(.el-pagination__sizes),.pagination-container :deep(.el-pagination__jump){display:none}.pagination-container :deep(.btn-prev),.pagination-container :deep(.btn-next){min-width:var(--pagination-height, 32px)!important;height:var(--pagination-height, 32px)!important;line-height:var(--pagination-height, 32px)!important}.pagination-container :deep(.el-pager li){min-width:var(--pagination-height, 32px)!important;max-width:40px;height:var(--pagination-height, 32px)!important;line-height:var(--pagination-height, 32px)!important;font-size:var(--font-sm, 13px)!important}}:root{--chart-height: 600px;--chart-min-height: 400px;--chart-height-mobile: 360px;--chart-min-height-mobile: 300px;--chart-single-height: 600px;--chart-single-height-mobile: 280px;--chart-large-height: 600px;--chart-large-height-mobile: 410px;--chart-small-height: 400px;--chart-small-height-mobile: 300px;--chart-combined-height: 600px;--chart-combined-height-mobile: 410px;--chart-combined-main-ratio: 60%;--chart-combined-sub-ratio: 30%;--chart-combined-gap: 5%;--chart-margin-x: 16px;--chart-margin-y: 16px;--chart-margin-x-mobile: 10px;--chart-margin-y-mobile: 10px;--chart-pad-left: 10px;--chart-pad-right: 20px;--chart-pad-top: 12px;--chart-pad-bottom: 28px;--chart-pad-left-mobile: 10px;--chart-pad-right-mobile: 10px;--chart-pad-top-mobile: 10px;--chart-pad-bottom-mobile: 24px;--chart-color-primary: #165dff;--chart-color-secondary: #00c853;--chart-color-tertiary: #f44336;--chart-color-quaternary: #ff9800;--chart-color-quinary: #9c27b0;--chart-color-senary: #00bcd4;--chart-color-septenary: #795548;--chart-color-octonary: #607d8b;--chart-rise: var(--rise);--chart-fall: var(--fall);--chart-rise-light: var(--rise-bg);--chart-fall-light: var(--fall-bg);--chart-font-size: 12px;--chart-font-size-mobile: 11px;--chart-text-color: #666;--chart-grid-color: #e0e0e0}@media(max-width:768px){:root{--chart-height: var(--chart-height-mobile);--chart-min-height: var(--chart-min-height-mobile);--chart-single-height: var(--chart-single-height-mobile);--chart-large-height: var(--chart-large-height-mobile);--chart-small-height: var(--chart-small-height-mobile);--chart-combined-height: var(--chart-combined-height-mobile);--chart-margin-x: var(--chart-margin-x-mobile);--chart-margin-y: var(--chart-margin-y-mobile);--chart-pad-left: var(--chart-pad-left-mobile);--chart-pad-right: var(--chart-pad-right-mobile);--chart-pad-top: var(--chart-pad-top-mobile);--chart-pad-bottom: var(--chart-pad-bottom-mobile)}}.chart-container,.chart-container-large,.chart-container-small{width:100%;height:var(--chart-height);min-height:var(--chart-min-height);margin:0;padding:0}.chart-container-large{height:var(--chart-large-height)}.chart-container-small{height:var(--chart-small-height);min-height:250px}.chart-combined{height:var(--chart-combined-height);display:flex;flex-direction:column}.chart-combined .chart-main{flex:0 0 var(--chart-combined-main-ratio);height:var(--chart-combined-main-ratio);min-height:0}.chart-combined .chart-sub{flex:0 0 var(--chart-combined-sub-ratio);height:var(--chart-combined-sub-ratio);min-height:0}.chart-combined .chart-gap{flex:0 0 var(--chart-combined-gap);height:var(--chart-combined-gap);min-height:20px}.chart-card{margin-bottom:var(--page-gap-y, 12px)}.chart-card:last-child{margin-bottom:0}.chart-card .el-card__header{padding:var(--card-header-padding, 8px 12px);border-bottom:0!important;border-top:0!important;border-left:0!important;border-right:0!important;background:transparent!important;box-shadow:none!important}.chart-card .el-card__body{padding:16px}@media(min-width:769px){.chart-card{min-height:640px}.chart-card.chart-small{min-height:440px}}.chart-candlestick{height:var(--chart-large-height)}.chart-area,.chart-bar,.chart-line,.chart-scatter{height:var(--chart-height)}.chart-header{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-4, 16px);margin-bottom:var(--space-3, 12px)}.chart-time-range{flex-shrink:0}@media(max-width:768px){.chart-card.hide-header :deep(.el-card__header),.chart-card.hide-header .chart-header{display:none}}.chart-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3, 12px);padding:var(--card-padding, 12px) 0 var(--space-2, 8px) 0;border-top:1px solid var(--color-border, #e5e6eb);margin-top:var(--page-gap-y, 12px)}.chart-control-left,.chart-control-right{display:flex;align-items:center;gap:var(--space-2, 8px);flex-wrap:wrap}.chart-control-label{font-size:var(--font-base, 14px);color:var(--color-text-secondary, #666);font-weight:500;white-space:nowrap;flex-shrink:0}@media(max-width:768px){.chart-controls{flex-direction:column;align-items:flex-start;gap:var(--space-2, 8px);padding:var(--space-2, 8px) 0 var(--space-1, 4px) 0;margin-top:var(--space-2, 8px)}.chart-control-left,.chart-control-right{width:100%;flex-direction:column;align-items:flex-start;gap:var(--space-1, 4px)}}@media(min-width:769px){.chart-time-filter{display:flex;align-items:center;gap:var(--space-2, 8px)}.chart-time-filter .el-date-picker{width:160px}.chart-time-filter .el-date-picker .el-input__wrapper{width:100%}.chart-time-filter .el-date-picker .el-input__inner{text-align:center}}@media(max-width:768px){.chart-time-filter{display:flex;align-items:center;gap:4px;width:100%}.chart-time-filter .el-date-picker{flex:1 1 0;min-width:0;width:calc(50% - 2px);max-width:calc(50% - 2px)}.chart-time-filter .el-date-picker .el-input__wrapper{width:100%;max-width:100%;padding:0 8px}.chart-time-filter .el-date-picker .el-input{width:100%;max-width:100%}.chart-time-filter .el-date-picker .el-input__inner{width:100%;text-align:center;font-size:var(--font-sm, 13px)}.chart-time-filter .el-date-picker .el-input__icon{font-size:var(--font-base);width:20px}}@media(min-width:769px){.time-range-selector{display:inline-flex}}@media(max-width:768px){.time-range-selector{width:100%}.time-range-selector .mobile-time-range{width:100%;padding:var(--space-2, 8px) 0;display:flex;justify-content:center}.time-range-selector .mobile-time-range :deep(.el-radio-group),.chart-date-controls-outside :deep(.el-radio-group){display:flex;flex-wrap:nowrap;gap:0;width:100%;border-radius:4px;overflow:hidden;border:1px solid #d9d9d9}.time-range-selector .mobile-time-range :deep(.el-radio-button),.chart-date-controls-outside :deep(.el-radio-button){flex:1;min-width:0;max-width:none;border-radius:0!important}.time-range-selector .mobile-time-range :deep(.el-radio-button__inner),.chart-date-controls-outside :deep(.el-radio-button__inner){width:100%;padding:8px 4px;font-size:var(--font-sm, 13px);text-align:center;border-radius:0!important;border-left:1px solid #d9d9d9!important;border-right:none!important;border-top:none!important;border-bottom:none!important}.time-range-selector .mobile-time-range :deep(.el-radio-button:first-child .el-radio-button__inner),.chart-date-controls-outside :deep(.el-radio-button:first-child .el-radio-button__inner){border-left:none!important}}@media(max-width:480px){.time-range-selector .mobile-time-range :deep(.el-radio-button__inner),.chart-date-controls-outside :deep(.el-radio-button__inner){padding:4px 2px;font-size:var(--font-xs);border-radius:0!important}}@media(min-width:769px){.chart-controls-header{display:flex!important;align-items:center;gap:var(--space-2, 8px);flex-wrap:nowrap!important;flex-direction:row;margin:0!important;padding:0!important}.chart-controls-header :deep(.el-radio-group){display:flex;flex-wrap:nowrap;margin:0!important}.chart-controls-header :deep(.el-radio-button){flex:1;border:none!important;box-shadow:none!important;outline:none!important;margin:0!important;padding:0!important;background:transparent!important;position:relative}.chart-controls-header :deep(.el-radio-button):before,.chart-controls-header :deep(.el-radio-button):after{display:none!important;content:none!important;border:none!important}.chart-controls-header :deep(.el-radio-button__inner){padding:var(--space-1, 4px) var(--space-3, 12px)!important;white-space:nowrap;min-width:80px;text-align:center;font-size:var(--font-sm, 13px);border:1px solid transparent!important;box-shadow:none!important;outline:none!important;margin:0!important;background-color:#f5f7fa!important;color:#606266!important;border-radius:4px!important}.chart-controls-header :deep(.el-radio-button.is-active .el-radio-button__inner){background-color:#409eff!important;color:#fff!important;border:1px solid transparent!important;box-shadow:none!important}.chart-controls-header :deep(.el-radio-group){border:none!important;box-shadow:none!important;background:transparent!important;outline:none!important;padding:0!important;margin:0!important;gap:0;background-image:none!important}.chart-controls-header .el-radio-group,.chart-controls-header :deep(.el-radio-group){border-top:none!important;border-bottom:none!important;border-left:none!important;border-right:none!important;box-shadow:none!important;-webkit-box-shadow:none!important;background-image:none!important;background-color:transparent!important}.chart-controls-mobile{display:none}}@media(max-width:768px){.chart-controls-header,.chart-controls-card{display:none!important}.chart-controls-mobile{display:flex;width:100%;padding:8px 12px;background:#fff;margin-bottom:8px;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.chart-controls-row{display:flex;flex-direction:row;flex-wrap:nowrap;gap:0;width:100%;justify-content:space-between}.chart-control-group{display:flex;flex:0 0 45%;width:45%}.chart-control-group:first-child{margin-right:10%}.chart-controls-mobile .el-radio-group,.chart-controls-mobile .el-radio-button,.chart-controls-mobile .el-radio-button__inner{all:unset!important}.chart-controls-mobile .el-radio-group{display:flex!important;gap:0!important;width:100%!important}.chart-controls-mobile .el-radio-button{display:inline-block!important;flex:1!important}.chart-controls-mobile .el-radio-button__inner{display:inline-block!important;width:100%!important;padding:8px 4px!important;font-size:var(--font-sm)!important;line-height:1.5!important;white-space:nowrap!important;text-align:center!important;cursor:pointer!important;border:1px solid #dcdfe6!important;border-radius:0!important;background-color:#fff!important;color:#606266!important;transition:all .2s ease!important;box-sizing:border-box!important;margin-left:-1px!important}.chart-controls-mobile .el-radio-button:first-child .el-radio-button__inner{border-radius:4px 0 0 4px!important;margin-left:0!important}.chart-controls-mobile .el-radio-button:last-child .el-radio-button__inner{border-radius:0 4px 4px 0!important}.chart-controls-mobile .el-radio-button.is-active .el-radio-button__inner{background-color:#409eff!important;border-color:#409eff!important;color:#fff!important;z-index:1!important;position:relative!important}}@media(max-width:480px){.chart-controls-mobile .el-radio-button__inner{padding:6px 2px!important;font-size:var(--font-xs)!important}}.chart-disclaimer{margin-top:var(--page-gap-y, 12px);font-size:var(--font-size-sm, 12px);color:var(--color-text-secondary, #666);text-align:center;line-height:1.6}@media(min-width:769px){.chart-row{display:flex;gap:var(--page-gap-y, 12px)}.chart-row .chart-card{flex:1;margin-bottom:0}.chart-row .chart-card:last-child{margin-bottom:0}}@media(max-width:768px){.chart-row{display:flex;flex-direction:column;gap:var(--page-gap-y, 8px)}.chart-row .chart-card{margin-bottom:var(--page-gap-y, 8px)}}.chart-tooltip-date{margin-bottom:8px;font-weight:700}.chart-tooltip-row{margin:4px 0;display:flex;justify-content:space-between;min-width:150px}.chart-tooltip-row span{flex-shrink:0}.chart-tooltip-row strong{margin-left:20px;text-align:right;flex-shrink:0}.chart-tooltip-divider{border-top:1px solid #ddd;margin:8px 0}@keyframes firework{0%{transform:translate(0) scale(0);opacity:1}50%{opacity:1}to{transform:translate(var(--x),var(--y)) scale(1);opacity:0}}@media(min-width:769px){.payment-success{position:relative;overflow:hidden}.payment-success:before,.payment-success:after{content:"";position:absolute;font-size:var(--font-2xl);animation:firework 2s ease-out infinite}.payment-success:before{--x: -100px;--y: -100px;top:50%;left:50%;animation-delay:0s}.payment-success:after{--x: 100px;--y: -100px;top:50%;left:50%;animation-delay:.5s}.payment-dialog .el-button--primary{background:linear-gradient(135deg,#ffd54f,#ffb300);border:none;color:#d84315;font-weight:600}.payment-dialog .el-button--primary:hover{background:linear-gradient(135deg,#ffe082,#ffc107)}.payment-dialog .el-dialog__header{background:linear-gradient(135deg,#fff9e6,#fff);border-bottom:2px solid rgba(255,193,7,.2)}.payment-dialog .el-dialog__title{color:#e65100;font-weight:700}.payment-dialog .el-dialog__body{background:#fffbf0}}.payment-success .success-icon .el-icon{color:var(--warning)}.payment-dialog .el-alert--info{background-color:#fff9e6;border-color:#ffc1074d}.payment-dialog .el-alert__title{color:#e65100}.qrcode-section{display:flex;flex-direction:column;align-items:center;justify-content:center}.qrcode-wrapper{margin:0 auto var(--space-4)}.qrcode-image{margin:0 auto}.qrcode-tips{color:#e65100;margin:0 auto}.qrcode-tips .el-icon{color:var(--warning)}.selected-plan-info{background:linear-gradient(135deg,#fff9e6,#ffecb3);border:2px solid rgba(255,193,7,.3);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-5)}.plan-summary .plan-price{color:var(--warning);font-weight:700}@media(min-width:769px){.vip-view .card-header h3{font-size:var(--font-2xl)!important;color:var(--text-primary)!important;font-weight:600}.vip-view .benefit-item{font-size:var(--font-base)!important;padding:12px 16px!important;color:var(--text-secondary)}.vip-view .benefit-item.highlight{background:linear-gradient(to right,#4a6cf70a,#6366f10f,#4a6cf70a)!important;background-size:200% 100%;border:1px solid rgba(74,108,247,.12)!important;color:var(--brand)!important;border-radius:10px}.vip-view .benefit-item.highlight .el-icon{color:var(--brand)!important}.vip-view .pricing-section{margin-bottom:64px}.vip-view .vip-plans{gap:24px}.vip-view .plan-card{padding:36px 32px;background:#fff;box-shadow:var(--shadow);border:1px solid var(--border-light);border-radius:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.vip-view .plan-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:#4a6cf726}.vip-view .popular-plan{transform:scale(1.02);background:#fff;box-shadow:var(--shadow-lg),0 0 0 1px #4a6cf71a;border:1px solid rgba(74,108,247,.2);position:relative}.vip-view .popular-plan:before{content:"推荐";position:absolute;top:-1px;right:24px;background:var(--el-color-primary, #409EFF);color:#fff;font-size:var(--font-xs);font-weight:600;padding:4px 12px;border-radius:0 0 8px 8px;letter-spacing:.5px}.vip-view .popular-plan:hover{transform:translateY(-6px) scale(1.02)!important;box-shadow:var(--shadow-xl),0 0 0 1px #4a6cf726!important}.vip-view .plan-header h3{font-size:var(--font-xl)!important;color:var(--text-primary)!important;font-weight:600}.vip-view .price-amount{font-size:48px!important;color:var(--text-primary)!important;font-weight:700!important;letter-spacing:-1px}.vip-view .plan-save{font-size:var(--font-sm)!important;padding:6px 14px!important;background:#4a6cf70f!important;color:var(--brand)!important;border:1px solid rgba(74,108,247,.12)!important;border-radius:100px;font-weight:500}.vip-view .plan-card .el-button{height:48px!important;font-size:var(--font-base)!important;font-weight:600!important;border-radius:10px}.vip-view .popular-btn{background:linear-gradient(135deg,#f44336,#e53935)!important;border:none!important;color:#fff!important;box-shadow:0 4px 14px #f443364d!important;transition:all .25s cubic-bezier(.4,0,.2,1)}.vip-view .popular-btn:hover{background:linear-gradient(135deg,#e53935,#d32f2f)!important;box-shadow:0 8px 24px #f4433666!important;transform:translateY(-2px) scale(1.02)!important}.vip-view .plan-card .el-button--primary{background:var(--el-color-primary, #409EFF)!important;border:none!important;color:#fff!important;transition:all .25s cubic-bezier(.4,0,.2,1)}.vip-view .plan-card .el-button--primary:hover{background:#66b1ff!important;transform:translateY(-2px)!important;box-shadow:0 4px 14px #409eff4d!important}}@media(min-width:769px){.home-view .hero-section{padding:96px 20px 80px!important;background:linear-gradient(180deg,#fff,#f8fafc);position:relative;overflow:hidden;border-bottom:1px solid rgba(226,232,240,.6)}.home-view .hero-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(74,108,247,.06) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(99,102,241,.04) 0%,transparent 50%);pointer-events:none}.home-view .hero-badge{font-size:var(--font-sm)!important;padding:8px 20px!important;background:#4a6cf70f!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(74,108,247,.12)!important;color:var(--brand)!important;box-shadow:none;letter-spacing:.5px}.home-view .hero-title{font-size:52px!important;margin:24px 0!important;font-weight:600;color:var(--text-primary);letter-spacing:-.5px;line-height:1.15}.home-view .gradient-text{background:var(--el-color-primary, #409EFF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-view .hero-subtitle{font-size:var(--font-lg);margin-bottom:40px;color:var(--text-secondary);font-weight:400;letter-spacing:.5px}.home-view .hero-actions{gap:16px}.home-view .btn-primary{font-size:var(--font-base);padding:12px 32px;height:auto;border-radius:10px;background:var(--el-color-primary, #409EFF);box-shadow:0 4px 14px #4a6cf740;transition:all .25s cubic-bezier(.4,0,.2,1)}.home-view .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #4a6cf759}.home-view .btn-secondary{font-size:var(--font-base);padding:12px 32px;height:auto;border-radius:10px;background:#fff;border:1px solid var(--border);color:var(--text-secondary);transition:all .25s cubic-bezier(.4,0,.2,1)}.home-view .btn-secondary:hover{background:#f8fafc;border-color:var(--border-dark);color:var(--text-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.home-view .hero-stats{gap:48px}.home-view .stat-value{font-size:40px;font-weight:600;letter-spacing:-1px;color:var(--text-primary)}.home-view .stat-label{font-size:var(--font-base);color:var(--text-secondary);font-weight:400}.home-view .features-section{padding:80px 20px!important;background:var(--page-bg-pc)}.home-view .section-header h2{font-size:var(--font-2xl)!important;margin-bottom:12px!important;font-weight:600;color:var(--text-primary);letter-spacing:-.3px}.home-view .section-desc{font-size:var(--font-md)!important;margin-bottom:48px!important;color:var(--text-secondary);font-weight:400}.home-view .features-grid{gap:20px!important}.home-view .feature-card{padding:28px!important;background:#fff;border:1px solid var(--border-light);border-radius:14px;box-shadow:var(--shadow-sm)!important;transition:all .3s cubic-bezier(.4,0,.2,1)}.home-view .feature-card:hover{transform:translateY(-4px)!important;box-shadow:var(--shadow-md)!important;border-color:#4a6cf726}.home-view .feature-icon{width:48px!important;height:48px!important;margin-bottom:16px!important;border-radius:12px;background:#4a6cf714!important}.home-view .feature-title{font-size:var(--font-md)!important;margin-bottom:8px!important;font-weight:600;color:var(--text-primary)}.home-view .feature-desc{font-size:var(--font-sm)!important;color:var(--text-secondary);line-height:1.6}.home-view .vip-section{padding:80px 20px!important;background:linear-gradient(180deg,#f1f5f9,#e2e8f0);border-top:1px solid rgba(226,232,240,.6)}.home-view .vip-card{padding:48px!important;background:#fff;border-radius:20px;box-shadow:var(--shadow-lg)!important;border:1px solid var(--border-light)}.home-view .vip-badge{font-size:var(--font-sm)!important;padding:8px 16px!important;background:#4a6cf714;border:1px solid rgba(74,108,247,.15);color:var(--brand);border-radius:100px}.home-view .vip-title{font-size:var(--font-3xl)!important;margin:20px 0!important;font-weight:600;color:var(--text-primary);letter-spacing:-.3px}.home-view .vip-desc{font-size:var(--font-md)!important;margin-bottom:32px!important;color:var(--text-secondary)}.home-view .vip-feature-item{font-size:var(--font-base)!important;padding:8px 0!important;color:var(--text-secondary)}.home-view .vip-btn{font-size:var(--font-base)!important;padding:12px 36px!important;height:auto!important;border-radius:10px;background:var(--el-color-primary, #409EFF);box-shadow:0 4px 14px #4a6cf740!important;transition:all .25s cubic-bezier(.4,0,.2,1)}.home-view .vip-btn:hover{transform:translateY(-2px)!important;box-shadow:0 8px 24px #4a6cf759!important}.home-view .vip-icon{font-size:120px!important;color:var(--brand);opacity:.15}}@media(min-width:769px){.el-card{transition:box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s ease,transform .3s ease}html{scroll-behavior:smooth}a{color:var(--brand);transition:color .2s ease,opacity .2s ease}a:hover{color:var(--brand-dark);opacity:.9}}.header[data-v-61e423bd]{padding:0;height:var(--header-height);position:fixed;top:0;left:0;right:0;z-index:1001;background:var(--bg-surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.header-content[data-v-61e423bd]{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1920px;margin:0 auto;padding:0 var(--space-5);height:100%;gap:var(--space-6);overflow:hidden}.logo[data-v-61e423bd]{display:flex;align-items:center;gap:var(--space-2);width:auto;cursor:pointer;flex-shrink:0}.logo h2[data-v-61e423bd]{margin:0;font-size:var(--font-xl);font-weight:400;color:var(--text-primary);-webkit-user-select:none;user-select:none}.logo-icon[data-v-61e423bd]{width:32px;height:32px}.mobile-menu-toggle[data-v-61e423bd]{display:none;align-items:center;justify-content:center;width:32px;height:32px;cursor:pointer}.mobile-menu-toggle .el-icon[data-v-61e423bd]{font-size:var(--font-lg);color:var(--text-primary)}.main-nav[data-v-61e423bd]{flex:1;margin:0;display:flex;align-items:center;gap:var(--space-3);overflow-x:auto;overflow-y:hidden;min-width:0}.main-nav .nav-item[data-v-61e423bd]{padding:0 var(--space-4);height:var(--header-height);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--font-base);color:var(--text-primary);white-space:nowrap;transition:color var(--dur-fast) ease,border-bottom-color var(--dur-fast) ease,transform var(--dur-fast) ease;border-bottom:2px solid transparent;-webkit-user-select:none;user-select:none;will-change:color,border-bottom-color}.main-nav .nav-item[data-v-61e423bd]:hover{color:var(--brand)}.main-nav .nav-item[data-v-61e423bd]:active{transform:scale(.98)}.main-nav .nav-item.active[data-v-61e423bd]{color:var(--brand);border-bottom-color:var(--brand);font-weight:500}.main-nav .nav-item-link[data-v-61e423bd]{text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}.main-nav .nav-item-link.active[data-v-61e423bd]{color:var(--brand);border-bottom-color:var(--brand);font-weight:500}.user-area[data-v-61e423bd]{display:flex;align-items:center;width:auto;min-width:80px;justify-content:flex-end;flex-shrink:0;margin-right:var(--space-6);-webkit-user-select:none;user-select:none}.login-link[data-v-61e423bd]{font-size:var(--font-base);color:var(--text-secondary);cursor:pointer;padding:0 var(--space-2)}.login-link[data-v-61e423bd]:hover{color:var(--brand)}.user-profile-text[data-v-61e423bd]{color:var(--text-secondary);font-size:var(--font-base);cursor:pointer;padding:0 var(--space-2)}.user-profile-text[data-v-61e423bd]:hover{color:var(--brand)}@media(max-width:768px){.mobile-menu-toggle[data-v-61e423bd]{display:flex}.main-nav[data-v-61e423bd]{display:none}}.mobile-bottom-nav[data-v-70ae50a5]{display:none;position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-surface, #ffffff);border-top:1px solid var(--border, #e4e7ed);z-index:1001;box-shadow:0 -2px 8px #0000000f;padding-bottom:env(safe-area-inset-bottom,0px)}@media(max-width:768px){.mobile-bottom-nav[data-v-70ae50a5]{display:flex;align-items:center}}.nav-item[data-v-70ae50a5]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;color:var(--text-secondary, #909399);font-size:var(--font-sm);transition:all .25s var(--ease, ease);padding:6px 0;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.nav-item .el-icon[data-v-70ae50a5]{font-size:22px;transition:all .25s var(--ease, ease)}.nav-item.active[data-v-70ae50a5]{color:var(--brand)}.nav-item.active .el-icon[data-v-70ae50a5]{transform:scale(1.05)}.nav-item.active[data-v-70ae50a5]:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:24px;height:3px;background:#409eff;border-radius:2px;transition:all .25s var(--ease, ease)}.nav-item[data-v-70ae50a5]:active{background:#409eff14;transform:scale(.96)}.mobile-drawer .el-drawer__body{padding:0}.mobile-drawer-header{padding:20px;border-bottom:1px solid #e4e7ed}.mobile-drawer-title{font-size:var(--font-md);font-weight:500;color:var(--text-primary)}.mobile-nav-menu{border:none}.mobile-nav-menu .nav-icon{width:18px;height:18px;margin-right:var(--space-3);flex-shrink:0}.mobile-nav-menu .group-title{font-size:var(--font-xs);color:var(--text-tertiary);font-weight:500;letter-spacing:.5px;padding-left:var(--space-1)}.mobile-nav-menu .el-sub-menu__title{padding-left:var(--space-4)!important;color:var(--text-tertiary)}.mobile-nav-menu .el-sub-menu .el-menu-item{padding-left:44px!important}.mobile-user-area{padding:20px;border-top:1px solid #e4e7ed;position:absolute;bottom:0;left:0;right:0;background:#fff}.mobile-login-btn{width:100%}.login-dialog[data-v-904c603e] .el-dialog{border-radius:20px;overflow:hidden}.login-dialog[data-v-904c603e] .el-dialog__header{display:none}.login-dialog[data-v-904c603e] .el-dialog__body{padding:0 32px 24px}.login-dialog-header[data-v-904c603e]{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;border-bottom:1px solid #f0f0f0}.login-dialog-title[data-v-904c603e]{margin:0;font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.login-dialog-close[data-v-904c603e]{background:none;border:none;padding:var(--space-1);cursor:pointer;color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--dur-fast);-webkit-user-select:none;user-select:none}.login-dialog-close[data-v-904c603e]:hover{color:var(--text-secondary);background:var(--bg-secondary)}.wechat-login-content[data-v-904c603e]{display:flex;flex-direction:column;align-items:center}.login-header[data-v-904c603e]{text-align:center;margin-bottom:24px}.login-title[data-v-904c603e]{margin:0 0 var(--space-2);font-size:var(--font-xl);font-weight:600;color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.wechat-title-icon[data-v-904c603e]{flex-shrink:0}.login-subtitle[data-v-904c603e]{margin:0;font-size:var(--font-sm);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.subtitle-icon[data-v-904c603e]{flex-shrink:0}.qrcode-container[data-v-904c603e]{position:relative;width:300px;height:340px;margin-bottom:20px;background:#fff;border-radius:8px;overflow:hidden}.wechat-qrcode-iframe[data-v-904c603e]{width:300px;height:340px;border:none}.qrcode-loading[data-v-904c603e]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8f9faf2;gap:16px}.loading-spinner[data-v-904c603e]{width:48px;height:48px}.spinner-svg[data-v-904c603e]{width:100%;height:100%;animation:rotate-904c603e 1.2s linear infinite}.spinner-path[data-v-904c603e]{stroke:#07c160;stroke-linecap:round;animation:dash-904c603e 1.5s ease-in-out infinite}@keyframes rotate-904c603e{to{transform:rotate(360deg)}}@keyframes dash-904c603e{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.loading-text[data-v-904c603e]{color:var(--text-secondary);margin:0;font-size:var(--font-sm)}.qrcode-expired[data-v-904c603e]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#f8f9fafa;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.expired-content[data-v-904c603e]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px}.expired-icon[data-v-904c603e]{margin-bottom:8px}.expired-text[data-v-904c603e]{font-size:var(--font-md);font-weight:500;color:var(--text-primary);margin:0}.expired-hint[data-v-904c603e]{font-size:var(--font-sm);color:var(--text-tertiary);margin:0 0 var(--space-3)}.refresh-btn[data-v-904c603e]{display:flex;align-items:center;gap:6px;background:#07c160;border-color:#07c160}.refresh-btn[data-v-904c603e]:hover{background:#06a352;border-color:#06a352}.btn-icon[data-v-904c603e]{flex-shrink:0}.qrcode-success[data-v-904c603e]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#f8f9fafa;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.success-content[data-v-904c603e]{display:flex;flex-direction:column;align-items:center;gap:8px}.success-checkmark[data-v-904c603e]{margin-bottom:8px;animation:scaleIn-904c603e .3s ease-out}@keyframes scaleIn-904c603e{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.checkmark-circle[data-v-904c603e]{stroke-dasharray:166;stroke-dashoffset:166;animation:strokeCircle-904c603e .6s cubic-bezier(.65,0,.45,1) forwards}.checkmark-check[data-v-904c603e]{stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck-904c603e .3s cubic-bezier(.65,0,.45,1) .4s forwards}@keyframes strokeCircle-904c603e{to{stroke-dashoffset:0}}@keyframes strokeCheck-904c603e{to{stroke-dashoffset:0}}.success-text[data-v-904c603e]{font-size:18px;font-weight:600;color:#07c160;margin:0}.success-hint[data-v-904c603e]{font-size:var(--font-sm);color:var(--text-secondary);margin:0}.scan-guide[data-v-904c603e]{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding:16px 20px;background:#f8f9fa;border-radius:12px}.guide-step[data-v-904c603e]{display:flex;align-items:center;gap:6px}.step-num[data-v-904c603e]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:#07c160;color:#fff;font-size:12px;font-weight:600;border-radius:50%}.step-text[data-v-904c603e]{font-size:var(--font-sm);color:var(--text-primary)}.guide-arrow[data-v-904c603e]{opacity:.6}.login-footer[data-v-904c603e]{display:flex;flex-direction:column;align-items:center;width:100%}.wechat-brand[data-v-904c603e]{display:flex;align-items:center;gap:8px}.wechat-icon[data-v-904c603e]{flex-shrink:0}.login-text[data-v-904c603e]{font-size:var(--font-sm);color:var(--text-secondary)}html{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body{margin:0;padding:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}.el-message{z-index:3000!important}.app-container{min-height:100vh;display:flex;flex-direction:column;width:100%;min-width:320px;position:relative}.main-content{padding:0;min-height:calc(100vh - var(--header-height));margin-top:var(--header-height);flex:1;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}@media(max-width:768px){html,body{touch-action:pan-y;overflow-x:hidden;height:auto!important}.main-content{margin-top:0;margin-bottom:calc(60px + env(safe-area-inset-bottom,0px));overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;position:relative;height:auto!important;min-height:calc(100vh - 60px - env(safe-area-inset-bottom,0px))}}.el-breadcrumb{font-size:var(--font-base);font-weight:400!important}.el-breadcrumb__item{font-weight:400!important}.el-breadcrumb__inner{font-weight:400!important;color:var(--text-secondary)}.el-breadcrumb__inner:hover{color:var(--brand)}.el-breadcrumb__item:last-child .el-breadcrumb__inner{color:var(--text-primary);font-weight:400!important}
