:root{--paper:#f7f6f0;--ink:#323b35;--muted:#979b90;--line:#dcded4;--up:#b55a49;--down:#428577;--mono:"Cascadia Code","SFMono-Regular",Consolas,monospace;--serif:"Noto Serif SC","Songti SC","STSong","SimSun",serif;--sans:"PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}body:before{content:"";z-index:-1;pointer-events:none;opacity:.19;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.22' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}button,input{font:inherit}button{cursor:pointer}:is(button:focus-visible,input:focus-visible,svg:focus-visible){outline-offset:4px;outline:2px solid #789384}button{color:inherit}::selection{background:#d5e0d4}.observatory{max-width:1600px;margin:auto;padding:0 64px 30px}.masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;height:112px;display:flex}.identity{flex-shrink:0;align-items:center;gap:13px;display:flex}.brand-mark{color:#576952}.brand-name{font-family:var(--serif);letter-spacing:5px;font-size:26px;font-weight:600;line-height:1.15}.search{background:#fff3;border:1px solid #d7dacf;border-radius:3px;align-items:center;width:100%;max-width:360px;height:43px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.search:focus-within{border-color:#889984;box-shadow:0 0 0 3px #65795d0a}.search-icon{color:#899380;flex-shrink:0;margin:0 13px 0 15px}.search input{letter-spacing:.6px;width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;height:100%;font-size:12px}.search input:focus-visible{outline:none}.search input::placeholder{color:#969d90}.search kbd{color:#939b8d;font:11px var(--mono);border:1px solid #dce0d5;border-radius:3px;margin:0 12px;padding:2px 6px}.search-menu{z-index:20;background:#fafbf6;border:1px solid #d8ddcf;border-radius:4px;width:100%;min-width:310px;animation:.18s appear;position:absolute;top:52px;left:0;overflow:hidden;box-shadow:0 18px 50px #344b331a}.menu-caption{color:#8c9585;letter-spacing:1px;justify-content:space-between;padding:16px 17px 12px;font-size:10px;display:flex}.menu-caption span{font-size:9px}.search-result{text-align:left;background:0 0;border:0;align-items:center;gap:11px;width:100%;padding:12px 16px;display:flex}.search-result.active{background:#edf0e6}.result-kind{color:#7d8c72;border:1px solid #d6dccd;border-radius:2px;padding:4px;font-size:11px}.result-name{flex:1;font-size:13px}.result-name small{color:#919887;margin-top:4px;font-size:9px;display:block}.result-code{font:11px var(--mono);color:#8e9687}.result-arrow{color:#9aa38f;margin-left:5px;font-size:14px}.menu-foot{color:#919b86;border-top:1px solid #e5e8df;gap:18px;padding:11px 16px;font-size:9px;display:flex}.search-message{color:#878f7f;padding:15px 18px;font-size:12px;line-height:1.8}.workspace{padding-top:46px;animation:.65s both appear}.quote-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:44px;display:flex}.instrument-name{align-items:center;gap:24px;display:flex}.instrument-name h1{font-family:var(--serif);letter-spacing:3px;margin:0;font-size:32px;font-weight:500;line-height:1.25}.security-code{font:13px var(--mono);color:#929989;align-items:center;gap:7px;display:flex}.security-code small{color:#8e9a82;border:1px solid #dbe0d2;border-radius:2px;padding:2px 4px;font-size:9px}.quote-value{text-align:right}.last-price{letter-spacing:-1.6px;font-variant-numeric:tabular-nums;font-family:Georgia,Times New Roman,serif;font-size:43px;font-weight:400;line-height:1.1}.price-unit{font:10px var(--sans);letter-spacing:0;color:#909784;margin-left:9px}.price-change{font:11px var(--mono);justify-content:flex-end;align-items:center;gap:14px;margin-top:9px;display:flex}.quote-date{color:#969c90;font:10px var(--sans);margin-left:4px}.up{color:var(--up)}.down{color:var(--down)}.charts{min-width:0}.panel-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.panel-title{white-space:nowrap;align-items:center;gap:13px;display:flex}.section-number{font:9px var(--mono);color:#a4ad98;margin-right:3px}.panel-title h2{letter-spacing:1px;margin:0;font-size:13px;font-weight:500}.panel-note{font:8px var(--mono);letter-spacing:1.4px;color:#959e8c}.adjustment{color:#9ca490;border-left:1px solid var(--line);margin-left:2px;padding-left:12px;font-size:10px}.range-control{border:1px solid #e0e3d9;border-radius:3px;gap:3px;padding:3px;display:flex}.range-control button{color:#89937d;background:0 0;border:0;border-radius:2px;padding:5px 13px;font-size:10px;transition:background .2s,color .2s}.range-control button:hover{background:#ecefe4}.range-control button.selected{color:#fbfcf6;background:#606f56}.ohlc{font:10px var(--mono);color:#9aa18f;font-variant-numeric:tabular-nums;align-items:center;gap:23px;min-height:14px;margin:27px 0 23px;padding-left:28px;display:flex}.ohlc time{color:#707e64;margin-right:3px}.ohlc b{margin-left:6px;font-weight:400}.plot{cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;max-width:100%;display:block;overflow:visible}.plot:active{cursor:grabbing}.grid-line{stroke:#e0e4d8;stroke-width:.65px}.grid-line.vertical{stroke-dasharray:2 6;opacity:.55}.axis-label{fill:#9ca48f;font:9px var(--mono);font-variant-numeric:tabular-nums}.price-tag{fill:#fffdf5;font:9px var(--mono)}.crosshair line{stroke:#738069;stroke-width:.7px;stroke-dasharray:3 4;opacity:.7}.crosshair circle{fill:var(--paper);stroke:#67755b;stroke-width:1.4px}.macd-panel{border-top:1px solid var(--line);margin-top:30px;padding-top:23px}.macd-panel .panel-heading{margin-bottom:24px}.indicator-legend{font:10px var(--mono);font-variant-numeric:tabular-nums;gap:23px;display:flex}.indicator-legend>span{align-items:center;gap:5px;display:flex}.indicator-legend b{text-align:right;min-width:42px;font-weight:400}.indicator-legend i{background:currentColor;width:12px;height:1.5px;margin-right:3px}.indicator-legend .bar-key{opacity:.55;width:5px;height:7px}.zero-line{stroke:#cdd5c2;stroke-width:.9px}.crosshair .cross-date{fill:#5e6c55}.cross-date-text{font:10px var(--mono);fill:#fff}.date-label{font-size:9px}.chart-foot{border-top:1px solid var(--line);letter-spacing:.3px;color:#9ba28e;justify-content:space-between;gap:20px;margin-top:14px;padding-top:22px;font-size:9px;display:flex}.chart-foot>span{align-items:center;gap:8px;display:flex}.source-dot{background:#8b997c;border-radius:50%;width:4px;height:4px}.foot-divider{color:#c3c9b9;margin:0 3px}.interaction-hint span{color:#bac2ad;margin:0 4px}.empty-charts{border-top:1px solid var(--line);background:repeating-linear-gradient(0deg,#0000,#0000 78px,#dce0d330 79px 80px);height:630px;position:relative}.empty-panel-label,.empty-macd{align-items:center;gap:14px;padding-top:24px;font-size:12px;display:flex}.empty-macd{border-top:1px solid var(--line);width:100%;position:absolute;bottom:155px;left:0}.status-content{text-align:center;color:#919b85;position:absolute;top:150px;left:0;right:0}.status-content p{font-family:var(--serif);letter-spacing:2px;margin:19px 0 12px;font-size:16px}.status-content small{letter-spacing:1px;color:#a7af9b;font-size:10px}.status-symbol{font-family:Georgia,serif;font-size:32px}.retry-button{background:0 0;border:1px solid #d2d9c8;border-radius:2px;margin:24px auto 0;padding:10px 20px;font-size:11px;display:block}.retry-button:hover{background:#e9eee0}.retry-button span{margin-left:20px}.quote-placeholder{color:#b4bba8;font-family:Georgia,serif;font-size:40px}.quote-placeholder span{font:10px var(--sans);margin-top:5px;display:block}.loading-candles{justify-content:center;align-items:center;gap:7px;height:36px;display:flex}.loading-candles i{background:#91a17c;width:5px;height:17px;animation:1.4s ease-in-out infinite breathe;position:relative}.loading-candles i:before{content:"";background:inherit;width:1px;position:absolute;top:-6px;bottom:-6px;left:2px}.loading-candles i:nth-child(2){height:24px;animation-delay:.12s}.loading-candles i:nth-child(3){height:12px;animation-delay:.24s}.loading-candles i:nth-child(4){height:30px;animation-delay:.36s}.loading-candles i:nth-child(5){height:19px;animation-delay:.48s}@keyframes breathe{0%,to{opacity:.3;transform:translateY(3px)}50%{opacity:.85;transform:translateY(-3px)}}@keyframes appear{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1500px){.observatory{padding-left:90px;padding-right:90px}.workspace{padding-top:58px}.quote-heading{margin-bottom:54px}.macd-panel{margin-top:38px}}@media (max-width:1100px){.observatory{padding:0 36px 24px}.masthead{height:100px}.search{max-width:310px}.ohlc{gap:16px}.panel-note{font-size:7px}.range-control button{padding:5px 10px}.quote-heading{margin-bottom:36px}.instrument-name{gap:15px}.instrument-name h1{font-size:28px}}@media (max-width:720px){.observatory{padding:0 22px 25px}.masthead{flex-wrap:wrap;gap:22px;height:auto;padding:26px 0 23px}.identity{gap:10px}.brand-name{font-size:23px}.brand-mark{width:31px;height:31px}.search{max-width:none;height:43px}.workspace{padding-top:30px}.quote-heading{gap:14px;margin-bottom:33px}.instrument-name{display:block}.instrument-name h1{letter-spacing:1.5px;font-size:25px}.security-code{gap:6px;margin-top:10px;font-size:10px}.security-code small{font-size:7px}.last-price{letter-spacing:-1px;font-size:33px}.price-unit{margin-left:5px;font-size:8px}.price-change{flex-wrap:wrap;gap:9px;margin-top:8px;font-size:10px}.quote-date{flex-basis:100%;margin-top:1px;font-size:9px;display:block}.panel-title{gap:9px}.panel-title .panel-note{display:none}.panel-title h2{font-size:12px}.adjustment{padding-left:9px;font-size:9px}.section-number{font-size:8px}.range-control{gap:0;padding:2px}.range-control button{padding:5px 8px;font-size:9px}.ohlc{flex-wrap:wrap;gap:10px 12px;margin:23px 0 20px;padding-left:0;font-size:9px}.ohlc time{flex-basis:100%;font-size:9px}.ohlc b{margin-left:3px}.ohlc-change{display:none}.macd-panel{margin-top:25px;padding-top:20px}.macd-panel .panel-heading{margin-bottom:21px;display:block}.indicator-legend{gap:18px;margin-top:19px;font-size:9px}.indicator-legend b{min-width:32px}.chart-foot{flex-wrap:wrap;gap:13px;margin-top:10px;padding-top:18px;font-size:8px}.chart-foot>span{gap:5px}.interaction-hint{opacity:.75}.empty-charts{height:580px}.status-content p{letter-spacing:1px;font-size:13px}.search-menu{min-width:0}.panel-heading{gap:12px}.axis-label,.date-label{font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (min-width:721px){.masthead{height:90px}.workspace{padding-top:30px}.quote-heading{margin-bottom:30px}.ohlc{margin-top:20px;margin-bottom:18px}.macd-panel{margin-top:22px;padding-top:20px}.macd-panel .panel-heading{margin-bottom:18px}.chart-foot{margin-top:10px;padding-top:17px}}@media (max-width:720px){.axis-label,.date-label{font-size:9px}.ohlc{font-size:10px}.chart-foot{font-size:9px}.indicator-legend{gap:14px;font-size:10px}.indicator-legend b{min-width:30px}}.stage-divergence-control{align-items:center;gap:9px;display:flex}.stage-days-label{color:#7c8871;white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:inline-flex}.stage-days-label input{width:61px;height:28px;color:var(--ink);font:11px var(--mono);font-variant-numeric:tabular-nums;background:#fffdf580;border:1px solid #cbd2c2;border-radius:3px;padding:3px 5px}.stage-days-label input[aria-invalid=true]{border-color:var(--up)}.divergence-input-message{color:var(--up);margin:-3px 0 16px;font-size:10px;line-height:1.7}.divergence-note{color:#8b9581;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:-4px 0 18px;font-size:10px;line-height:1.7;display:flex}.macd-divergence>line{opacity:.85}.macd-divergence:hover>line{opacity:1;stroke-width:2.4px}.macd-panel .panel-heading{flex-wrap:wrap;row-gap:14px}.macd-heading-controls{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.cross-toggle{color:#7c8871;white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;min-height:28px;padding:2px 0;font-size:10px;display:inline-flex}.cross-toggle:hover{color:var(--ink)}.switch-track{background:#e5e8de;border:1px solid #cbd2c2;border-radius:10px;align-items:center;width:27px;height:15px;padding:2px;transition:background .2s,border-color .2s;display:inline-flex}.switch-track>span{background:#fffdf5;border-radius:50%;flex-shrink:0;width:9px;height:9px;transition:transform .2s;box-shadow:0 1px 2px #323b3526}.cross-toggle[aria-checked=true] .switch-track{background:#606f56;border-color:#606f56}.cross-toggle[aria-checked=true] .switch-track>span{transform:translate(12px)}.cross-legend{white-space:nowrap;gap:12px;font-size:10px;display:flex}.cross-label{font:10px var(--sans);paint-order:stroke;stroke:var(--paper);stroke-width:3px;stroke-linejoin:round}.search-result-row{align-items:center;display:flex}.search-result-row.active{background:#edf0e6}.search-result-row .search-result{flex:1;width:auto;min-width:0}.history-delete{color:#8c9585;background:0 0;border:0;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-right:8px;padding:0;display:flex}:is(.history-delete:hover,.history-delete:focus-visible){color:var(--ink);background:#e3e8da}#security-results{max-height:360px;overflow-y:auto}.history-toolbar{color:#8c9585;justify-content:space-between;align-items:center;gap:12px;padding:0 17px 10px;font-size:10px;display:flex}.history-toolbar button{color:#64765a;background:0 0;border:0;padding:4px 0;font-size:10px}.history-toolbar button:hover{text-decoration:underline}.result-kind{flex-shrink:0}.result-name{overflow-wrap:anywhere;min-width:0}.sector-source-note{color:#7c8872;border-left:2px solid #c7d2bb;margin:-18px 0 28px;padding-left:10px;font-size:11px;line-height:1.8}.status-content .retry-button{margin-top:16px;margin-bottom:16px}.volume-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:20px}.volume-panel .panel-heading{flex-wrap:wrap;row-gap:12px;margin-bottom:18px}.volume-legend{flex-wrap:wrap;align-items:center;row-gap:8px}.volume-legend b{min-width:0}.volume-bar:hover{opacity:1}@media (max-width:720px){.volume-panel{margin-top:20px}.volume-panel .panel-heading{margin-bottom:18px}.volume-legend{gap:12px;margin-top:0;font-size:9px}}.volume-unit{color:#959e8c;white-space:nowrap;font-size:10px}.charts{overflow-anchor:none}.charts .plot{overflow:hidden}.crosshair{pointer-events:none}.indicator-legend>span{white-space:nowrap}.indicator-legend b{flex-shrink:0;line-height:14px}.ohlc b.close-price-active,.price-tag.close-price-active{font-weight:700}.ohlc{flex-wrap:wrap;row-gap:10px;line-height:14px}.ohlc>span{white-space:nowrap;flex:none}.ohlc-price{inline-size:calc(1em + 1ch + 6px + var(--ohlc-price-width))}.ohlc-change{inline-size:calc(2em + 1ch + 6px + var(--ohlc-change-width))}.ohlc-to-latest{inline-size:calc(5em + 1ch + 6px + var(--ohlc-to-latest-width))}.empty-volume{border-top:1px solid var(--line);align-items:center;gap:14px;width:100%;padding-top:24px;font-size:12px;display:flex;position:absolute;bottom:24px;left:0}.charts{--potential-ink:#98732e}.potential-divergence-note{color:#7e735c;background:#b99b590c;border-left:2px solid #b99b59;margin:-3px 0 18px;padding:11px 14px;font-size:10px;line-height:1.8}.potential-note-heading{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.potential-note-heading strong{color:var(--potential-ink);font-weight:500}.potential-key{color:var(--potential-ink);font:16px var(--mono)}.potential-divergence-note p{color:#8b8475;margin:5px 0 0}.potential-signal{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:2px 14px;margin-top:6px;display:flex}.potential-signal-kind{color:var(--potential-ink)}.potential-divergence>line{opacity:.95}.potential-divergence-control .cross-toggle[aria-checked=true] .switch-track{background:#a08449;border-color:#a08449}.history-status{color:#8b9581;flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:18px;margin-top:14px;font-size:10px;line-height:1.7;display:flex}.history-extent{font-variant-numeric:tabular-nums;margin-left:auto}.history-status[aria-busy=true]{color:#606f56}.history-status.has-error>span:first-child{color:var(--up)}.history-status button{color:#606f56;background:0 0;border:0;border-bottom:1px solid #a7b29a;padding:0 0 1px;font-size:10px}.history-status button:hover{color:var(--ink);border-color:var(--ink)}@media (max-width:720px){.history-status{margin-top:12px;font-size:9px}.history-extent{flex-basis:100%;margin-left:0}}.chart-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.refresh-data-button{color:#606f56;white-space:nowrap;background:0 0;border:1px solid #cdd5c4;border-radius:3px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;font-size:10px;line-height:1.5;transition:background .2s,border-color .2s;display:inline-flex}.refresh-data-button:hover:not(:disabled){background:#edf0e6;border-color:#8d9b80}.refresh-data-button:disabled{cursor:wait;opacity:.65}.refresh-data-button[aria-busy=true] svg{animation:1s linear infinite refresh-data-spin}.refresh-data-status{color:#606f56;margin:8px 0 0;font-size:10px;line-height:1.7}.refresh-data-status.has-error{color:var(--up)}@keyframes refresh-data-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.refresh-data-button[aria-busy=true] svg{animation:none}}@media (max-width:720px){.price-panel>.panel-heading{flex-wrap:wrap;gap:12px}.chart-actions{gap:8px}.refresh-data-button{padding:6px 9px;font-size:9px}.refresh-data-status{font-size:9px}}.data-icon{color:#7f8b74;cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin:0;padding:0;text-decoration:none;display:inline-flex}:is(.data-icon:hover,.data-icon:focus-visible){color:var(--ink);background:#e7ebe1}.data-icon:focus-visible{outline-offset:3px;outline:2px solid #789384}.data-tooltip{z-index:100;color:#56634e;max-width:min(340px,100vw - 32px);font:12px/1.8 var(--sans);overflow-wrap:anywhere;background:#fcfcf7;border:1px solid #d3d9cc;border-radius:6px;padding:12px 15px;animation:.12s appear;box-shadow:0 6px 24px #323b351a}.data-tooltip-arrow{fill:#fcfcf7}.all-overlays-toggle{color:#606f56;background:#edf0e6;border:1px solid #cbd2c2;border-radius:3px;padding:3px 10px}.all-overlays-toggle:hover{background:#e3e8da;border-color:#9aa98d}.macd-button-help strong{font-weight:500;display:block}.macd-button-help p{margin:6px 0 0}
