:root{--text-1: #1f2329;--text-2: #646a73;--text-3: #8f959e;--line: #dee0e3;--line-soft: #eff0f1;--primary: #3370ff;--danger: #d83931;--warn: #de7802;--bg: #ffffff}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,system-ui,sans-serif;color:var(--text-1);background:var(--bg);-webkit-font-smoothing:antialiased}.app{display:flex;height:100%;min-width:0;background:var(--bg)}.app-chart{flex:1;min-width:0;display:flex;padding:16px 18px 8px}.sc-root{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.sc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:4px}.sc-head-text{min-width:0}.sc-title{margin:0;font-size:16px;font-weight:600;line-height:1.4;letter-spacing:.2px}.sc-sub{margin:0;font-size:13px;color:var(--text-2);line-height:1.5}.sc-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.sc-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2);white-space:nowrap}.sc-legend-dot{width:9px;height:9px;border-radius:3px;display:inline-block;flex:none}.sc-body{flex:1;min-height:0;display:flex;margin-top:4px}.sc-yaxis{width:46px;flex:none;padding:12px 0 38px;position:relative}.sc-yaxis-inner{position:relative;height:100%}.sc-yaxis-inner span{position:absolute;right:6px;transform:translateY(-50%);font-size:11px;color:var(--text-3);white-space:nowrap;line-height:1}.sc-scroll{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.sc-scroll::-webkit-scrollbar{height:8px}.sc-scroll::-webkit-scrollbar-thumb{background:#d7d9dc;border-radius:4px}.sc-plotwrap{display:flex;flex-direction:column;height:100%;min-width:100%}.sc-plot{position:relative;flex:1;min-height:0;margin:12px 0 0}.sc-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sc-grid-line{position:absolute;left:0;right:0;height:0;border-top:1px solid #f2f3f5}.sc-grid-line-strong{border-top-color:#dfe1e4}.sc-cols{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch}.sc-col{flex:1 1 0;min-width:42px;position:relative}.sc-col:hover{background:#1f232906}.sc-bar{position:absolute;left:50%;transform:translate(-50%);width:64%;max-width:40px;min-width:14px;border-radius:4px;cursor:default;transition:box-shadow .12s ease}.sc-col:hover .sc-bar{box-shadow:0 0 0 1px #1f23291f,0 1px 4px #1f232914}.sc-xrow{flex:none;height:38px;display:flex;align-items:flex-start;padding-top:6px;border-top:1px solid var(--line-soft)}.sc-xlabel{flex:1 1 0;min-width:42px;display:flex;flex-direction:column;align-items:center;gap:1px}.sc-xlabel-date{font-size:11px;color:var(--text-2);line-height:1.2;white-space:nowrap}.sc-xlabel-week{font-size:10px;color:#a8adb4;line-height:1.2;white-space:nowrap}.sc-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:24px}.sc-empty-title{font-size:13px;color:var(--text-2)}.sc-empty-desc{font-size:12px;color:var(--text-3);max-width:360px;line-height:1.6}.sc-tip{position:fixed;z-index:40;transform:translate(-50%,-100%);background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 22px #1f232924;padding:9px 11px;min-width:118px;pointer-events:none}.sc-tip-date{font-size:12px;font-weight:600;color:var(--text-1);margin-bottom:5px}.sc-tip-row{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;line-height:1.8}.sc-tip-row em{font-style:normal;color:var(--text-3)}.sc-tip-row b{font-weight:500;color:var(--text-1);font-variant-numeric:tabular-nums}.cfg{width:288px;flex:none;display:flex;flex-direction:column;border-left:1px solid var(--line-soft);background:#fff}.cfg-header{padding:14px 16px 10px;border-bottom:1px solid var(--line-soft)}.cfg-header-title{font-size:13px;font-weight:600;color:var(--text-1)}.cfg-body{flex:1;min-height:0;overflow-y:auto;padding:14px 16px 8px}.cfg-section{margin-bottom:18px}.cfg-section-title{font-size:12px;font-weight:600;color:var(--text-1);margin-bottom:10px}.cfg-field{margin-bottom:12px}.cfg-label{display:block;font-size:12px;color:var(--text-2);margin-bottom:6px}.cfg-field-inline{display:flex;gap:10px}.cfg-field-inline .cfg-field{flex:1;min-width:0}.cfg-select{width:100%;height:32px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 8px;font-size:13px;color:var(--text-1);outline:none;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.cfg-native{display:block;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:26px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23a8adb4' stroke-width='1.4' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.cfg-select:focus,.cfg-select.is-open{border-color:var(--primary);box-shadow:0 0 0 2px #3370ff1f}.cfg-select:disabled{background:#f5f6f7;color:var(--text-3);cursor:not-allowed}.cfg-basepicker{position:relative}.cfg-select{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer}.cfg-select-value{color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfg-select-placeholder{color:var(--text-3)}.cfg-caret{flex:none;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #a8adb4;margin-right:2px}.cfg-dropdown{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #1f23291f;overflow:hidden}.cfg-search{width:100%;height:32px;border:none;border-bottom:1px solid var(--line-soft);padding:0 10px;font-size:12px;outline:none;font-family:inherit}.cfg-dropdown-list{max-height:240px;overflow-y:auto;padding:4px}.cfg-dropdown-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border:none;background:transparent;border-radius:4px;font-size:13px;color:var(--text-1);text-align:left;cursor:pointer;font-family:inherit}.cfg-dropdown-item:hover{background:#f5f6f7}.cfg-dropdown-item.is-active{color:var(--primary)}.cfg-dropdown-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfg-dropdown-check{flex:none;font-size:11px;color:var(--primary)}.cfg-dropdown-tip{padding:12px 8px;font-size:12px;color:var(--text-3);text-align:center}.cfg-dropdown-error{color:var(--danger)}.cfg-dropdown-more{width:100%;padding:8px;border:none;background:transparent;font-size:12px;color:var(--primary);cursor:pointer;font-family:inherit}.cfg-hint{font-size:11px;color:var(--text-3);line-height:1.6;margin-top:6px}.cfg-hint-error{color:var(--danger)}.cfg-hint-warn{color:var(--warn)}.cfg-footer{flex:none;padding:12px 16px 14px;border-top:1px solid var(--line-soft);background:#fff}.cfg-save{width:100%;height:32px;border:none;border-radius:6px;background:var(--primary);color:#fff;font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s ease}.cfg-save:hover:not(:disabled){background:#2b63e0}.cfg-save:disabled{background:#c3c9d4;cursor:not-allowed}.preview-shell{min-height:100%;padding:24px;background:#f5f6f7;display:flex;flex-direction:column;gap:16px}.preview-note{font-size:12px;color:var(--text-3)}.preview-card{background:#fff;border-radius:12px;box-shadow:0 2px 10px #1f23290f;height:560px;overflow:hidden}.preview-card-sm{height:340px}.preview-card-panel{height:600px}
