:root{font-family:Inter,Segoe UI,Microsoft YaHei,system-ui,sans-serif;color:#24324a;background:#f6f8fc;font-synthesis:none;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#fff;border:1px solid #dce3ee;border-radius:9px;padding:9px 13px;color:#42536f;min-height:42px}button:hover{border-color:#789ce2;background:#f4f7fd}button:disabled{cursor:default;opacity:.5}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid #dce3ee;border-radius:8px;background:#fff;padding:9px 10px;color:#24324a;min-height:43px}input:focus,select:focus,textarea:focus,button:focus-visible,summary:focus-visible{outline:2px solid #477ed5;outline-offset:2px}input:disabled,select:disabled{background:#f4f6fa;color:#9aa6b8}input[type=checkbox]{width:18px;height:18px;accent-color:#3869d3;flex-shrink:0}label{display:block;color:#566781;font-size:12px;font-weight:600}label>input:not([type=checkbox]),label>select,label>textarea{margin-top:6px}small{font-size:11px;color:#8492a9;font-weight:400}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.35;letter-spacing:-.5px;color:#1b2d4d}h2{font-size:16px;color:#223653;font-weight:650}h3{font-size:14px}.shell{max-width:1180px;margin:auto;padding:40px 28px 130px}.mast{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{color:#426fbd;letter-spacing:2.8px;font-size:10px;font-weight:700;margin-bottom:7px}.sub{margin-top:9px;color:#8390a4}.data-badge{border:1px solid #e1e8f0;border-radius:20px;background:#fff;white-space:nowrap;padding:8px 13px;font-size:12px;color:#62748d;display:flex;align-items:center;gap:8px}.dot{width:6px;height:6px;border-radius:50%;background:#2dab89}.muted{background:#a4adbd}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.filters,.results{min-width:0}.results{position:sticky;top:20px;scroll-margin-top:20px}.panel{background:#fff;border:1px solid #e3e9f1;border-radius:16px;padding:23px;margin-bottom:16px;box-shadow:0 3px 14px #28477903}.section-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px}.section-head h2>span{font-size:11px;color:#8a9ab4;margin-right:10px;font-weight:500}.text-button{border:0;background:none;min-height:32px;padding:4px;font-size:12px;color:#6083bf}.count{color:#8291a7;background:#f4f6fa;border-radius:12px;padding:3px 9px;font-size:11px;white-space:nowrap}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.exchange{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.check{display:flex;align-items:center;gap:6px;color:#415472;font-size:12px;font-weight:500}.industries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}.industries select{font-size:12px;padding-left:7px}.hint{color:#8390a4;font-size:11px;line-height:1.7;margin:10px 0}.base-control{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,1.5fr);align-items:center;gap:8px;border-bottom:1px solid #f0f3f7;padding:11px 0}.base-control .check{flex-wrap:wrap}.range{display:flex;gap:8px;align-items:center}.range span{font-size:11px;color:#a2abba}.range input{padding:8px 7px}.range input::placeholder{color:#b5bdcb}details{margin-top:14px}summary{cursor:pointer;font-size:12px;font-weight:550;color:#5b7196;padding:9px 0;min-height:40px}summary span{margin-left:8px;font-weight:400;font-size:10px;color:#9aa6b8}details>label{margin-top:12px}.template-buttons{display:flex;gap:8px;margin:12px 0 16px}.template-buttons button{font-size:11px;padding:6px 10px;min-height:34px;color:#6581b1;border-color:#e0e8f5;background:#f8faff}.indicator{border:1px solid #e5eaf2;border-radius:12px;margin:10px 0;overflow:hidden}.indicator.enabled{border-color:#d8e3f7}.indicator-head{display:flex;align-items:center;justify-content:space-between;padding:14px;background:#fafbfd}.indicator.enabled .indicator-head{background:#f6f9ff}.toggle-label{display:flex;align-items:center;gap:8px;font-size:13px}.toggle-label strong{color:#37557f;letter-spacing:.4px}.toggle-label span{color:#9aa6b7;font-size:11px;font-weight:400}.indicator-body{padding:14px}.params{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:15px}.params label{font-size:11px}.params input,.params select{padding:8px 7px}.rule-line{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.time-line{display:flex;gap:9px;align-items:center;margin-top:11px}.time-line>select{flex:2;font-size:12px}.window-label{display:flex;gap:5px;align-items:center;flex:1}.window-label input{max-width:75px;margin:0!important}.add-row{display:flex;gap:5px;margin-top:6px}.add-row button{padding:6px}.extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:#f8faff;border-radius:10px;padding:10px;margin:12px 0}.extra label{min-width:0}.spaced{margin-top:15px}.button-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.button-row button{font-size:12px}.summary-panel{padding:20px;border-radius:13px;background:#edf2fb;border:1px solid #dfe7f6}.summary-panel h2{font-size:13px;margin-bottom:7px}.summary-panel>p{font-size:12px;color:#607392;overflow-wrap:anywhere}.summary-panel .hint{font-size:11px;color:#8d9bb2}.result-panel{min-height:385px}.empty{text-align:center;padding:45px 15px 38px;color:#95a1b5}.empty h3{color:#75849c;margin:10px 0}.empty p{font-size:12px}.empty-icon{font-size:36px;width:60px;height:60px;background:#f1f5fc;color:#7399d3;border-radius:18px;margin:auto;line-height:60px}.empty-meta{font-size:10px;letter-spacing:1px;margin-top:30px;color:#a2afc4}.result-total{display:flex;align-items:baseline;gap:10px;margin:10px 0}.result-total strong{font-size:38px;font-weight:650;line-height:1.2;color:#315d9d}.result-total span{font-size:12px;color:#8390a4}.coverage{border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6}.coverage-row{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;color:#73849d}.result-search{margin:17px 0}.stock-card{border:1px solid #e5eaf2;border-radius:12px;padding:15px;margin:12px 0}.stock-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;border:0;background:none;text-align:left;padding:0}.stock-heading:hover{background:none}.stock-heading strong{display:block;font-size:15px;color:#314869}.stock-heading small{display:block;margin-top:3px;font-size:11px}.price{text-align:right;white-space:nowrap}.price strong{font-size:18px}.up{color:#d35459!important}.down{color:#269678!important}.stock-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin:12px 0;font-size:10px;color:#8a99af}.stock-metrics span{overflow-wrap:anywhere}.stock-metrics b{color:#627797;font-weight:500;margin-left:5px}.explain{border-top:1px solid #edf1f7;margin-top:12px}.explain summary{font-size:11px}.explanation{font-size:11px;color:#718198;margin:5px 0;overflow-wrap:anywhere}.explanation .explanation{border-left:2px solid #e7edf5;margin-left:4px;padding-left:8px}.explanation small{display:block;font-size:10px}.match{color:#269678}.unknown{color:#ac8a41}.detail-link{border:0;padding:3px 0;min-height:28px;font-size:11px;color:#5078b8;background:none}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:8px;font-size:12px;color:#8795aa}.pagination button{font-size:12px;padding:8px 10px}.warning,.error,.notice{border-radius:9px;padding:11px 12px;font-size:12px;margin:12px 0}.warning{background:#fff7e8;color:#9d7b37}.error{background:#fff0f0;color:#bd5256}.notice{background:#eef6ff;color:#5981b4}.inline-error{color:#bf5b60!important;font-size:12px;margin-top:7px}.progress{background:#f3f7ff;padding:17px;border-radius:11px;color:#627da8;font-size:12px}.progress strong{color:#4772ae}.progress p{margin:5px 0}progress{width:100%;height:8px;accent-color:#5485d8}.footer-note{text-align:center;font-size:10px;color:#a2aec1;margin:15px}.run-bar{position:fixed;bottom:0;left:0;right:0;background:#ffffffed;border-top:1px solid #e2e9f4;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:15px max(28px,calc((100vw - 1124px)/2)) max(15px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:center;gap:12px;z-index:10}.run-bar strong{display:block;font-size:12px;color:#6a7e9b;font-weight:500}.run-bar small{display:block;margin-top:3px}.primary{border:0;background:#386bce;color:#fff;min-width:180px;border-radius:11px;padding:14px 20px;font-size:14px;box-shadow:0 4px 12px #376bc72b}.primary:hover{background:#2c5db9;border-color:transparent}.primary span{margin-left:15px}.modal-backdrop{position:fixed;inset:0;background:#23364f77;display:flex;justify-content:center;align-items:center;padding:20px;z-index:30}.modal{max-width:780px;width:100%;max-height:90vh;overflow:auto;background:#fff;padding:25px;border-radius:18px}.chart{background:#fafcff;border:1px solid #edf1f7;border-radius:10px;padding:12px;margin:14px 0}.chart h3{font-size:12px}.chart h3 small{display:block;font-size:10px;margin-top:3px}.chart svg{width:100%;height:auto;display:block;margin-top:8px}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;margin-top:5px}@media(max-width:760px){.shell{padding:24px 16px 115px;max-width:520px}.mast{display:block;margin-bottom:20px}h1{font-size:23px}.sub{font-size:12px}.data-badge{display:inline-flex;margin-top:14px;font-size:11px;padding:6px 10px}.workspace{display:block}.results{position:static;margin-top:20px}.panel{padding:18px;border-radius:14px}.params{grid-template-columns:repeat(2,minmax(0,1fr))}.run-bar{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.run-bar strong,.run-bar small{font-size:10px}.primary{min-width:140px;padding:13px 12px;font-size:13px}.primary span{margin-left:6px}.modal-backdrop{padding:12px}.modal{padding:16px;max-height:93vh}.base-control{grid-template-columns:minmax(95px,1fr) minmax(0,1.4fr)}.two{gap:9px}.industries{gap:5px}.industries select{padding:9px 4px;font-size:11px}.stock-metrics{font-size:11px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.download-button{display:inline-flex;align-items:center;background:#386bce;color:#fff;border-radius:9px;padding:9px 13px;text-decoration:none;min-height:42px;font-size:12px}.export-modal textarea{font-family:monospace;font-size:11px;resize:vertical}.shell{max-width:1680px;width:100%;box-sizing:border-box}.workspace{grid-template-columns:minmax(330px,470px) minmax(0,1fr);align-items:start}.filters,.results,.panel,.stock-chart{min-width:0}.mobile-tabs{display:none}.indicator-library{display:flex;gap:10px;align-items:end;margin:14px 0}.indicator-library label{flex:1;min-width:0}.indicator-library button{flex-shrink:0}.params{grid-template-columns:repeat(auto-fit,minmax(95px,1fr))}.stock-detail{width:min(1500px,96vw);max-width:1500px;max-height:96dvh;box-sizing:border-box}.chart-toolbar,.chart-options,.chart-navigation{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0}.chart-toolbar label{min-width:90px;max-width:260px}.chart-toolbar input[type=number]{width:100px}.chart-options label{margin:0}.chart-options label:not(.check){max-width:200px}.period-buttons{display:flex;gap:5px;flex-wrap:wrap}.selected{background:#e9f0fe!important;border-color:#3567cc!important;color:#244c99!important}.chart-readout{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0;font-size:14px}.chart-spec{padding:12px;margin:10px 0;background:#f5f7fb;border-radius:10px}.chart-settings summary{margin-bottom:10px}.stock-chart .chart{margin:14px 0;border:1px solid #e2e8f0;border-radius:12px;padding:12px;box-sizing:border-box}.stock-chart svg{width:100%;height:auto;display:block;touch-action:pan-y}.price-chart{background:#fff}.chart-navigation label{flex:1;min-width:140px;display:flex;align-items:center;gap:8px}.chart-navigation input{min-width:0;flex:1}.legend{flex-wrap:wrap}.legend button{padding:5px 8px;font-size:12px;background:transparent;border:1px solid #e2e8f0}.legend .line-hidden{opacity:.45;text-decoration:line-through}.expanded{position:fixed;inset:8px;z-index:30;background:#fff;border:1px solid #d9e2ef;border-radius:12px;padding:18px;overflow:auto;box-shadow:0 15px 60px #18233b50}.expanded .price-chart{max-width:1600px;margin-inline:auto}.stock-metrics{overflow-wrap:anywhere}.run-bar{max-width:1624px}.modal-backdrop{padding:10px}input,select,textarea{box-sizing:border-box;max-width:100%}@media(max-width:999px){.shell{max-width:none;padding:18px 16px 120px}.workspace{display:block}.mobile-tabs{display:flex;gap:10px;margin:16px 0;position:sticky;top:0;background:#f4f7fc;z-index:5;padding:8px 0}.mobile-tabs button{flex:1}.workspace.view-filters>.results,.workspace.view-results>.filters{display:none}.results{position:static}.run-bar{left:12px;right:12px;width:auto;max-width:none}.mast{gap:12px}.stock-detail{width:96vw}.chart-toolbar label{max-width:100%}}@media(max-width:480px){.shell{padding:16px 10px 110px}.panel{padding:16px}.mast{flex-wrap:wrap}.mast h1{font-size:25px}.indicator-library{flex-wrap:wrap}.indicator-library label{flex-basis:100%}.indicator-library button{width:100%}.params{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-detail{width:100%;padding:12px;max-height:98dvh}.modal-backdrop{padding:4px}.stock-chart .chart{padding:6px}.chart-toolbar{gap:8px}.chart-toolbar label{flex:1}.chart-options{gap:8px}.chart-readout{font-size:12px}.legend{gap:6px}.expanded{inset:3px;padding:10px}.run-bar{padding:12px;gap:8px}.run-bar>div{min-width:0}.run-bar .primary{padding:12px 16px}.run-bar small{font-size:11px}.rule-line,.two,.industries{min-width:0}.stock-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(orientation:landscape)and (max-height:600px){.modal-backdrop{padding:3px}.stock-detail{max-height:99dvh}.stock-detail>.section-head{margin-bottom:8px}.chart-toolbar{margin:8px 0}.stock-chart .price-chart svg{max-height:65dvh}.run-bar{padding:8px 12px}.mobile-tabs{position:static}.expanded{inset:3px}}.hint,.footer-note{color:#64748b}.stock-detail>.section-head{position:sticky;top:-12px;background:#fff;z-index:20;padding:8px 0}.stock-chart .section-head{position:static}@media(max-width:480px){label,.check{font-size:13px}input:not([type=checkbox]),select,textarea{font-size:16px}.hint{font-size:12px}.chart-toolbar input[type=number]{width:100%}}@media(max-width:480px){.stock-chart svg text{font-size:28px}}.stock-detail>.section-head>button{flex-shrink:0;white-space:nowrap}.page-tabs{display:flex;gap:10px;margin:16px 0}.page-tabs button{flex:1;min-width:0;padding:10px 8px}.display-options{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.display-options .hint{margin:0}.large-text,.large-text label,.large-text .check,.large-text .toggle-label{font-size:16px}.large-text input:not([type=checkbox]),.large-text select,.large-text textarea,.large-text button{font-size:16px;min-height:44px}.large-text .hint,.large-text .footer-note,.large-text small,.large-text summary{font-size:14px}.large-text .count,.large-text .data-badge{font-size:13px}.large-text .result-row{font-size:15px}.large-text .params label{font-size:14px}.sector-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sector-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.3fr);gap:20px;margin-top:16px}.sector-list{max-height:72vh;overflow:auto}.sector-card{border:1px solid #e1e8f0;border-radius:10px;padding:12px;margin-bottom:10px}.sector-card.selected{border-color:#2864dc;background:#f4f8ff}.sector-open{width:100%;display:flex;justify-content:space-between;gap:8px;text-align:left;border:0;padding:4px;background:transparent}.sector-stats{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:13px;color:#64748b}.sector-detail{min-width:0}.sector-detail svg{width:100%;height:auto;display:block}.sector-detail>.section-head{flex-wrap:wrap}.sector-detail>.section-head label{max-width:180px}.up{color:#d53744}.down{color:#0e8769}.sector-daily{margin-top:20px}.sector-daily .coverage-row{flex-wrap:wrap;gap:8px}.large-text .sector-stats{font-size:14px}@media(max-width:999px){.sector-layout{grid-template-columns:minmax(0,1fr)}.sector-list{max-height:45vh}.sector-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.sector-detail{scroll-margin-top:80px}}@media(max-width:480px){.large-text .mast h1{font-size:26px}.large-text .run-bar small{font-size:12px}.page-tabs{gap:6px}.page-tabs button{font-size:14px!important}.sector-detail svg text{font-size:24px}.sector-controls{gap:10px}.sector-card{padding:10px}}.rule-timing{margin-top:14px;padding-top:12px;border-top:1px solid #e1e8f0}.rule-timing .period-buttons{margin:8px 0 12px}.rule-timing .range{display:flex;min-width:0;align-items:center;gap:6px}.rule-timing .range input{width:80px;flex:1;min-width:0}.rule-timing .range select{flex:1.7;min-width:0}.indicator-head{flex-wrap:wrap;gap:6px}.indicator-head .toggle-label{flex:1;min-width:150px}.group-choice{margin:12px 0}.explanation small{display:block;overflow-wrap:anywhere}@media(max-width:480px){.rule-timing .two{grid-template-columns:minmax(0,1fr)}.rule-timing .period-buttons button{flex:1;min-width:60px;font-size:14px!important}}.base-timing{grid-column:1/-1;min-width:0;margin:4px 0 0;padding:8px 0 0;border:0}.base-timing .range span{white-space:nowrap}.base-timing .two+.two{margin-top:10px}
