@charset "UTF-8";:root{--el-color-white:#ffffff;--el-color-black:#000000;--el-color-primary-rgb:64,158,255;--el-color-success-rgb:103,194,58;--el-color-warning-rgb:230,162,60;--el-color-danger-rgb:245,108,108;--el-color-error-rgb:245,108,108;--el-color-info-rgb:144,147,153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645,.045,.355,1);--el-transition-function-fast-bezier:cubic-bezier(.23,1,.32,1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier),opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:rgb(121,187,255);--el-color-primary-light-5:rgb(160,207,255);--el-color-primary-light-7:rgb(198,226,255);--el-color-primary-light-8:rgb(217,236,255);--el-color-primary-light-9:rgb(236,245,255);--el-color-primary-dark-2:rgb(51,126,204);--el-color-success:#67c23a;--el-color-success-light-3:rgb(149,212,117);--el-color-success-light-5:rgb(179,225,157);--el-color-success-light-7:rgb(209,237,196);--el-color-success-light-8:rgb(225,243,216);--el-color-success-light-9:rgb(240,249,235);--el-color-success-dark-2:rgb(82,155,46);--el-color-warning:#e6a23c;--el-color-warning-light-3:rgb(238,190,119);--el-color-warning-light-5:rgb(243,209,158);--el-color-warning-light-7:rgb(248,227,197);--el-color-warning-light-8:rgb(250,236,216);--el-color-warning-light-9:rgb(253,246,236);--el-color-warning-dark-2:rgb(184,130,48);--el-color-danger:#f56c6c;--el-color-danger-light-3:rgb(248,152,152);--el-color-danger-light-5:rgb(250,182,182);--el-color-danger-light-7:rgb(252,211,211);--el-color-danger-light-8:rgb(253,226,226);--el-color-danger-light-9:rgb(254,240,240);--el-color-danger-dark-2:rgb(196,86,86);--el-color-error:#f56c6c;--el-color-error-light-3:rgb(248,152,152);--el-color-error-light-5:rgb(250,182,182);--el-color-error-light-7:rgb(252,211,211);--el-color-error-light-8:rgb(253,226,226);--el-color-error-light-9:rgb(254,240,240);--el-color-error-dark-2:rgb(196,86,86);--el-color-info:#909399;--el-color-info-light-3:rgb(177,179,184);--el-color-info-light-5:rgb(200,201,204);--el-color-info-light-7:rgb(222,223,224);--el-color-info-light-8:rgb(233,233,235);--el-color-info-light-9:rgb(244,244,245);--el-color-info-dark-2:rgb(115,118,122);--el-bg-color:#ffffff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#ffffff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#ffffff;--el-box-shadow:0px 12px 32px 4px rgba(0,0,0,.04),0px 8px 20px rgba(0,0,0,.08);--el-box-shadow-light:0px 0px 12px rgba(0,0,0,.12);--el-box-shadow-lighter:0px 0px 6px rgba(0,0,0,.12);--el-box-shadow-dark:0px 16px 48px 16px rgba(0,0,0,.08),0px 12px 32px rgba(0,0,0,.12),0px 8px 16px -8px rgba(0,0,0,.16);--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:rgba(0,0,0,.8);--el-overlay-color-light:rgba(0,0,0,.7);--el-overlay-color-lighter:rgba(0,0,0,.5);--el-mask-color:rgba(255,255,255,.9);--el-mask-color-extra-light:rgba(255,255,255,.3);--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:var(--el-transition-md-fade)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:var(--el-transition-md-fade)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:var(--el-transition-md-fade)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.el-icon{--color:inherit;align-items:center;color:var(--color);display:inline-flex;fill:currentColor;font-size:inherit;height:1em;justify-content:center;line-height:1em;position:relative;width:1em}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{background-color:var(--el-mask-color);bottom:0;left:0;margin:0;position:absolute;right:0;top:0;transition:opacity var(--el-transition-duration);z-index:2000}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size))/2);position:absolute;text-align:center;top:50%;width:100%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);font-size:14px;margin:3px 0}.el-loading-spinner .circular{animation:loading-rotate 2s linear infinite;display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size)}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke:var(--el-color-primary);stroke-dasharray:90,150;stroke-dashoffset:0;stroke-linecap:round;stroke-width:2}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(1turn)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}*{margin:0;padding:0;box-sizing:border-box}#app{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";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;width:100vw;overflow:auto;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}:root{--color-primary: #409eff;--color-success: #67c23a;--color-warning: #e6a23c;--color-danger: #f56c6c;--color-info: #909399;--color-up: #f5222d;--color-down: #52c41a;--color-flat: #8c8c8c}.text-up{color:var(--color-up)}.text-down{color:var(--color-down)}.text-flat{color:var(--color-flat)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){#app{overflow:auto!important;height:auto!important;min-height:100vh}.el-button{min-height:40px;padding:8px 16px}.el-button--small{min-height:36px}.el-input__inner{min-height:40px;font-size:16px!important}.el-textarea__inner{font-size:16px!important}.el-table{font-size:13px}.el-table .el-table__cell{padding:8px 4px}.el-dialog{width:95%!important;margin:10px auto!important;max-height:90vh}.el-dialog__body{max-height:70vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.el-card{border-radius:8px}.el-card__body,.el-card__header{padding:12px}.el-tabs__nav-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.el-tabs__header{margin-bottom:8px}.el-form-item{margin-bottom:16px}.el-form--label-top .el-form-item__label,.el-form-item__label{padding-bottom:4px}.el-dropdown-menu{min-width:140px}.el-row{margin-left:-5px!important;margin-right:-5px!important}.el-row>[class*=el-col-]{padding-left:5px!important;padding-right:5px!important}::-webkit-scrollbar{width:4px;height:4px}}@media (max-width: 768px){.home-container .app-header{padding:8px 12px;height:auto;min-height:56px;flex-wrap:wrap;gap:8px}.home-container .header-left{width:100%;gap:8px}.home-container .header-left .logo .logo-text{font-size:16px}.home-container .header-left .logo .logo-icon{font-size:20px}.home-container .header-left .search-input{width:100%!important;flex:1}.home-container .header-right{width:100%;justify-content:flex-end;gap:8px}.home-container .header-right .username{display:none}.home-container .main-container{flex-direction:column-reverse;height:auto;min-height:calc(100vh - 56px)}.home-container .app-aside{width:100%!important;height:auto;position:fixed;bottom:0;left:0;right:0;z-index:100;background-color:#304156;box-shadow:0 -2px 8px #00000026}.home-container .app-aside .el-menu{display:flex!important;flex-direction:row;justify-content:space-around;padding:0;height:auto!important}.home-container .app-aside .el-menu .el-menu-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:auto!important;line-height:normal!important;padding:8px 4px!important;font-size:11px;min-width:0}.home-container .app-aside .el-menu .el-menu-item .el-icon{margin-right:0;margin-bottom:2px;font-size:18px}.home-container .app-aside .el-menu .el-menu-item span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60px}.home-container .app-main{padding:12px 12px 72px;overflow-y:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 768px){.macro-dashboard{padding:12px}.macro-dashboard .page-header{flex-direction:column;gap:12px;align-items:flex-start}.macro-dashboard .page-header h2{font-size:20px}.macro-dashboard .indicator-cards .el-col{max-width:100%!important;flex:0 0 100%!important}.macro-dashboard .current-value{font-size:22px}.macro-dashboard .main-chart{height:250px}.macro-dashboard .events-row .el-table{overflow-x:auto}}@media (max-width: 768px){.watchlist-page{padding:12px}.watchlist-page .page-header{flex-direction:column;gap:12px;align-items:flex-start}.watchlist-page .page-header h2{font-size:20px}.watchlist-page .stats-row .el-col{max-width:50%!important;flex:0 0 50%!important;margin-bottom:10px}.watchlist-page .stat-value{font-size:20px}.watchlist-page .table-header{flex-direction:column;gap:10px;align-items:flex-start}.watchlist-page .el-table{overflow-x:auto}.watchlist-page .el-dialog{width:95%!important}}@media (max-width: 768px){.data-factory{padding:12px}.data-factory .header-content h1{font-size:22px}.data-factory .stats-row .el-col{max-width:50%!important;flex:0 0 50%!important;margin-bottom:10px}.data-factory .stat-value{font-size:20px}.data-factory .filter-form .el-form-item{margin-right:0!important;margin-bottom:10px;width:100%}.data-factory .filter-form .el-form-item .el-select,.data-factory .filter-form .el-form-item .el-input{width:100%!important}.data-factory .el-form--inline .el-form-item{display:block}}@media (max-width: 768px){.pdf-reports{padding:12px}.pdf-reports .header-content h1{font-size:22px}.pdf-reports .stats-row .el-col{max-width:100%!important;flex:0 0 100%!important;margin-bottom:10px}.pdf-reports .action-card .el-button{width:100%;margin-bottom:8px}.pdf-reports .action-card .el-button+.el-button{margin-left:0!important}.pdf-reports .pdf-preview-container{height:400px}.pdf-reports .pdf-preview-container iframe{height:400px!important}}@media (max-width: 768px){.stock-detail{padding:12px}.stock-detail .stock-header{padding:16px}.stock-detail .stock-info{flex-direction:column;align-items:flex-start;gap:12px}.stock-detail .stock-name h1{font-size:22px}.stock-detail .current-price{font-size:28px}.stock-detail .key-metrics{flex-wrap:wrap;gap:16px}.stock-detail .key-metrics .metric-item{flex:0 0 calc(50% - 8px)}.stock-detail .metrics-row .el-col,.stock-detail .valuation-row .el-col{max-width:50%!important;flex:0 0 50%!important;margin-bottom:10px}.stock-detail .metric-num{font-size:18px}.stock-detail .band-chart{height:250px}.stock-detail .detail-tabs .el-tabs__nav-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.stock-detail .tab-content{padding:12px}.stock-detail .analysis-header{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width: 768px){.search-page{padding:12px;max-width:100%}.search-page .search-header h2{font-size:20px}.search-page .result-item{padding:12px}.search-page .stock-info{flex-direction:column;align-items:flex-start;gap:8px}.search-page .stock-main{flex-direction:column;gap:4px}}@media (max-width: 768px){.login-page,.register-page{padding:40px 16px 16px;align-items:flex-start}.login-container,.register-container{max-width:100%;padding:0}.login-card .el-form-item__label,.register-card .el-form-item__label{text-align:left}.logo-icon{font-size:36px!important}.login-header h1,.register-header h1,.logo h1{font-size:26px!important}.register-page .sms-input{flex-direction:column;gap:8px}.register-page .send-btn{width:100%}}@media (max-width: 768px){.not-found-page .error-code{font-size:72px}.not-found-page .error-title{font-size:24px}.not-found-page .error-actions{flex-direction:column;gap:10px}.not-found-page .link-list{grid-template-columns:repeat(3,1fr);gap:8px}.not-found-page .link-icon{font-size:28px}.not-found-page .link-text{font-size:12px}}@media (max-width: 480px){.watchlist-page .stats-row .el-col,.data-factory .stats-row .el-col,.stock-detail .metrics-row .el-col,.stock-detail .valuation-row .el-col{max-width:100%!important;flex:0 0 100%!important}.stock-detail .key-metrics .metric-item{flex:0 0 100%}.not-found-page .link-list{grid-template-columns:1fr}.home-container .app-aside .el-menu .el-menu-item span{font-size:9px;max-width:50px}}@supports (padding-bottom: env(safe-area-inset-bottom)){@media (max-width: 768px){.home-container .app-aside{padding-bottom:env(safe-area-inset-bottom)}.home-container .app-main{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}}
