.wl-search-row{display:flex;align-items:end;gap:20px;margin-bottom:14px}.wl-search{position:relative;width:min(100%,480px)}.wl-search-label{display:block;margin-bottom:6px;color:var(--muted)}.wl-search-group{display:flex;align-items:center;position:relative;line-height:28px}.wl-search-group input{width:100%;height:40px;padding:0 12px 0 40px;border:var(--hairline) solid var(--border);border-radius:4px;background:var(--surface);color:var(--text)}.wl-search-group input::placeholder{color:var(--muted)}.wl-search-group input:hover{border-color:var(--border-strong)}.wl-search-icon{position:absolute;left:14px;width:16px;height:16px;fill:var(--muted);pointer-events:none}.wl-count{white-space:nowrap;padding-bottom:9px}.wl-search-results{position:absolute;z-index:10;left:0;right:0;top:calc(100% + 4px);max-height:380px;overflow-y:auto;overscroll-behavior:contain;padding:6px;border:var(--hairline) solid var(--border);border-radius:4px;background:var(--surface);color:var(--text)}.wl-search-status{padding:8px 10px;color:var(--muted)}.wl-search-results ul{margin:0;padding:0;list-style:none}.wl-search-results li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px;border-top:var(--hairline) solid var(--separator)}.wl-search-results li:focus-within,.wl-search-results li:hover{background:var(--control)}.wl-stock-link{display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;padding:4px 8px;white-space:nowrap}.wl-stock-link strong{font-weight:500}.wl-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:12px}.wl-ranges button{font-size:var(--fs-body)}.wl-table-wrap{max-height:calc(100vh - 290px);min-height:160px;border:var(--hairline) solid var(--separator);border-radius:4px;overflow:auto}.wl-table{min-width:850px;border-collapse:separate;border-spacing:0}.wl-table th{position:sticky;top:0;z-index:2;height:36px}.wl-table th:first-child{z-index:3}.wl-table td{height:48px}.wl-table tbody tr{cursor:pointer}.wl-table tr:hover td,.wl-table tr:focus-within td{background:var(--control)}.wl-table tr:focus-visible{outline-offset:-2px}.wl-table .wl-stock-link{padding-left:0}.wl-table td:nth-child(3) span{display:inline-block;min-width:76px;margin-left:12px}.wl-mini{display:block;width:136px;height:36px}.wl-mini path{fill:none;stroke:currentColor;stroke-width:1.5px;vector-effect:non-scaling-stroke}.wl-note-marker{border-bottom:1px dotted var(--muted);color:var(--muted);cursor:help}.wl-detail-heading{justify-content:flex-start;flex-wrap:wrap;margin-bottom:10px}.wl-detail-heading>button:last-child{margin-left:auto}.wl-detail-time{margin-bottom:12px}.wl-quote-summary{overflow-x:auto}.wl-quote-grid{display:grid;min-width:1160px;padding:12px 0}.wl-quote-grid-1{grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:var(--hairline) solid var(--separator)}.wl-quote-grid-2{grid-template-columns:repeat(11,minmax(max-content,1fr))}.wl-quote-grid>div{padding:0 12px;border-right:var(--hairline) solid var(--separator)}.wl-quote-grid>div:last-child{border-right:0}.wl-quote-grid dt{color:var(--muted);font-size:var(--fs-caption);white-space:nowrap}.wl-quote-grid dd{margin-top:6px;white-space:nowrap}.wl-quote-grid-1 dd{font-size:var(--fs-title)}.wl-kline-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:0 16px 10px}.wl-kline-meta .badge,.wl-news .badge{background:var(--control);color:var(--muted)}.wl-chart-loading{display:grid;align-content:center;justify-items:center;gap:20px;height:360px;color:var(--muted)}.wl-skeleton{width:80%;height:180px;border-radius:4px;background:var(--control);border-bottom:var(--hairline) solid var(--border)}.wl-note-editor{padding:0 16px 16px}.wl-note-editor label{display:block;margin-bottom:8px}.wl-note-editor textarea{display:block;width:100%;resize:vertical;padding:10px 12px;font:inherit;color:var(--text);background:var(--bg);border:var(--hairline) solid var(--border);border-radius:4px}.wl-note-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px}.wl-note-actions span{margin-right:auto}.wl-note-edit{width:100%;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}.wl-news{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.wl-disclaimer{border-top:var(--hairline) solid var(--separator)}.wl-candles{padding:0 16px 14px}.wl-candle-readout,.wl-candle-legend,.wl-candles figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-bottom:8px}.wl-candle-readout{color:var(--muted)}.wl-candle-readout b{color:var(--text);font-weight:400}.wl-candle-legend b{font-weight:400}.wl-ma5{color:var(--warning)}.wl-ma10{color:var(--chart)}.wl-ma20{color:var(--brand)}.wl-candle-viewport{width:100%;overflow-x:auto}.wl-candle-viewport svg{display:block;max-width:none}.wl-candle-viewport text{fill:var(--muted);font:var(--fs-caption) var(--mono)}.wl-ma-line{fill:none;stroke:currentColor;stroke-width:1.5px}.wl-ma-line.wl-ma5{stroke-dasharray:4 3}.wl-ma-line.wl-ma20{stroke-dasharray:8 3 2 3}.wl-crosshair{stroke:var(--muted);stroke-dasharray:3 4;pointer-events:none}.wl-candles figcaption{justify-content:space-between;margin-top:8px}.wl-candles input[type=range]{width:100%;accent-color:var(--brand);min-height:28px}@media(max-width:760px){.wl-search-row{flex-wrap:wrap;gap:8px}.wl-search{width:100%}.wl-search-results li{gap:4px}.wl-search-results .wl-stock-link{gap:4px;flex-direction:column;align-items:flex-start}.wl-search-results li>button:last-child{white-space:nowrap}.wl-count{padding:0}.wl-news{grid-template-columns:1fr;gap:0}.wl-table-wrap{max-height:65vh}.stock-detail .section-title{flex-wrap:wrap}}:root{--fs-caption: 12px;--fs-body: 14px;--fs-title: 18px;--fs-display: 24px;--hairline: .5px;--mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--on-brand: #202020}html[data-theme=light]{color-scheme:light;--bg: #fcfcfc;--surface: #f9f9f9;--control: #f0f0f0;--control-hover: #e8e8e8;--selected: #e0e0e0;--separator: #d9d9d9;--border: #cecece;--border-strong: #bbbbbb;--muted: #646464;--text: #202020;--up: #ca244d;--up-fill: #e54666;--down: #208368;--down-fill: #29a383;--brand: #5c7c2f;--brand-fill: #bdee63;--brand-hover: #b0e64c;--brand-border: #8db654;--chart: #00749e;--chart-line: #60b3d7;--chart-fill: #7ce2fe;--warning: #ab6400;--up-bg: #feeaed;--down-bg: #e6f7ed;--warning-bg: #fff7c2;--warning-border: #e9c162}html[data-theme=dark]{color-scheme:dark;--bg: #111111;--surface: #191919;--control: #222222;--control-hover: #2a2a2a;--selected: #313131;--separator: #3a3a3a;--border: #484848;--border-strong: #606060;--muted: #b4b4b4;--text: #eeeeee;--up: #ff949d;--up-fill: #e54666;--down: #1fd8a4;--down-fill: #29a383;--brand: #bde56c;--brand-fill: #bdee63;--brand-hover: #d4ff70;--brand-border: #577538;--chart: #75c7f0;--chart-line: #197cae;--chart-fill: #7ce2fe;--warning: #ffca16;--up-bg: #3a141e;--down-bg: #0f2e22;--warning-bg: #302008;--warning-border: #714f19}*{box-sizing:border-box}html{font-size:var(--fs-body);background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:var(--fs-body)/1.5 system-ui,"Microsoft YaHei",sans-serif}body,button,input,.panel,.card,.metrics,.account-grid,th,td,.badge,.product-mark,.notification{transition:color .25s ease-out,background-color .25s ease-out,border-color .25s ease-out}h1,h2,h3,p,figure,dl,dd{margin:0}h1{font-size:var(--fs-display);font-weight:600}h2{font-size:var(--fs-title);font-weight:600}h3{font-size:var(--fs-caption);font-weight:400;color:var(--muted)}button,input{font:inherit;color:inherit}button{border:var(--hairline) solid var(--border);background:var(--control);border-radius:4px;min-height:36px;padding:6px 16px;cursor:pointer}button:hover{background:var(--control-hover)}button:disabled{background:var(--control);color:var(--muted);cursor:not-allowed}:focus-visible{outline:2px solid var(--brand-border);outline-offset:3px}.muted,.caption{color:var(--muted);font-size:var(--fs-caption)}.up{color:var(--up)}.down{color:var(--down)}.warning{color:var(--warning)}.number,.numeric,time,.account-grid b,.account-grid strong,.metrics strong,.facts dd{font-family:var(--mono);font-variant-numeric:tabular-nums}.topbar{min-height:64px;margin:0 32px;display:flex;align-items:center;gap:40px;border-bottom:var(--hairline) solid var(--separator)}.brand,.top-actions{display:flex;align-items:center;gap:12px}.brand{font-size:var(--fs-title);font-weight:600;white-space:nowrap}.product-mark{width:32px;height:32px;flex-shrink:0;border-radius:4px;display:inline-flex;justify-content:center;align-items:center;background:var(--brand-fill);color:var(--on-brand);font:600 var(--fs-title)/1 var(--mono)}.top-actions{margin-left:auto;white-space:nowrap}.tabs{display:flex;align-items:stretch;gap:4px}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:0 20px;height:64px;color:var(--muted)}.tabs button:hover{background:var(--control-hover);color:var(--text)}.tabs button[aria-selected=true]{color:var(--brand);background:var(--control);border-bottom-color:var(--brand-border)}.theme-toggle{width:36px;height:36px;padding:8px;display:inline-flex;justify-content:center;align-items:center;flex-shrink:0}.theme-toggle svg{width:18px;height:18px}main{padding:20px 32px 32px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.page-heading .caption{text-align:right}.workspace{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:24px;align-items:start}.workspace>*{min-width:0}.panel,.card{background:var(--surface);border-radius:4px;overflow:hidden}.panel{margin-bottom:20px;border-top:var(--hairline) solid var(--separator)}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:10px 16px}.section-note{padding:12px 16px;color:var(--muted);font-size:var(--fs-caption)}.account-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 0 20px}.account-grid>div{padding:0 20px;text-align:right;border-right:var(--hairline) solid var(--separator)}.account-grid>div:last-child{border-right:0}.account-grid b,.equity strong{display:block;font-size:var(--fs-display);margin-top:6px;font-weight:600}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;background:var(--surface);padding:16px 0;border-radius:4px}.metrics>div{padding:0 20px;border-right:var(--hairline) solid var(--separator);text-align:right}.metrics>div:last-child{border-right:0}.metrics strong{display:block;margin-top:4px;font-size:var(--fs-display);font-weight:600}.status-content>div{padding:8px 16px 16px}.status-content strong{display:block;font-size:var(--fs-display);margin-top:4px;font-weight:600}.facts{padding:0 16px 12px}.facts>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:var(--hairline) solid var(--separator)}.facts>div:last-child{border-bottom:0}.facts dt{color:var(--muted);font-size:var(--fs-caption)}.facts dd{text-align:right}.chart{padding:0 16px 16px}.chart svg{display:block;width:100%;height:270px}.chart text{fill:var(--muted);font-size:var(--fs-caption);font-family:var(--mono);font-variant-numeric:tabular-nums}.chart-grid{stroke:var(--separator);stroke-width:.5px;vector-effect:non-scaling-stroke}.chart-line{fill:none;stroke:var(--chart-line);stroke-width:1.5px;vector-effect:non-scaling-stroke}.chart-point{fill:var(--chart-fill)}.chart figcaption{display:flex;justify-content:space-between;gap:16px;color:var(--chart);font-family:var(--mono);font-variant-numeric:tabular-nums}.indices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:24px;background:var(--surface);border-radius:4px;padding:16px 0}.card{position:relative;padding:0 20px;border-right:var(--hairline) solid var(--separator);border-radius:4px}.card:last-child{border-right:0}.card-details{display:flex;flex-direction:column;gap:4px;margin-top:6px;text-align:right}.index-price{font-size:var(--fs-display);font-weight:600;white-space:nowrap}.notification{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;margin-bottom:16px;color:var(--warning);background:var(--warning-bg);border:var(--hairline) solid var(--warning-border);border-radius:4px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{height:36px;padding:0 16px;border-bottom:var(--hairline) solid var(--separator);text-align:left}th{font-size:var(--fs-caption);font-weight:400;color:var(--muted);background:var(--control)}td{background:var(--surface)}th:first-child,td:first-child{position:sticky;left:0;z-index:1}th.number,td.number{text-align:right;font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:1px 6px;border-radius:4px;font-size:var(--fs-caption)}.buy{color:var(--up);background:var(--up-bg)}.sell{color:var(--down);background:var(--down-bg)}.filters{display:flex;gap:2px}.filters button{border:0;border-radius:4px;min-width:40px;min-height:28px;padding:4px 12px;font-size:var(--fs-caption)}.filters button[aria-pressed=true]{background:var(--selected);color:var(--brand)}.empty{min-height:144px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--muted);border-top:var(--hairline) solid var(--separator)}.empty-mark{font-size:var(--fs-display)}.loading{min-height:144px;display:grid;place-items:center;color:var(--muted)}.market-status{display:flex;flex-direction:column;gap:0;padding:0 16px 12px;color:var(--muted);font-size:var(--fs-caption)}.market-status>span{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:var(--hairline) solid var(--separator)}.market-status>span:last-child{border-bottom:0}.market-status time,.timestamp{text-align:right}.login-page{min-height:100vh;display:grid;place-items:center;padding:32px}.login-actions{position:absolute;top:16px;right:32px}.login-card{width:min(100%,440px);position:relative;display:flex;flex-direction:column;background:var(--surface);border:var(--hairline) solid var(--border);border-radius:4px;overflow:hidden}.login-heading{display:flex;align-items:center;gap:12px;padding:28px 24px;border-bottom:var(--hairline) solid var(--separator)}.login-heading h1{font-size:var(--fs-title)}.form{display:flex;flex-direction:column;gap:12px;padding:24px}.form h2{margin-bottom:8px}.form label{font-size:var(--fs-caption);color:var(--muted)}.form input{width:100%;min-height:40px;padding:8px 12px;border:var(--hairline) solid var(--border);border-radius:4px;background:var(--control)}.login-error{min-height:24px}.primary{min-height:40px;background:var(--brand-fill);color:var(--on-brand);border:0;font-weight:600}.primary:hover{background:var(--brand-hover)}.primary:disabled{background:var(--control);color:var(--muted)}.password-dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;margin:auto;overflow-y:auto;color:var(--text);background:var(--surface);border:var(--hairline) solid var(--border);border-radius:4px;box-shadow:none}.password-dialog::backdrop{background:#00000073}.password-actions{display:flex;justify-content:flex-end;gap:12px}.password-dialog,.password-dialog *,.password-dialog::backdrop,.password-trigger{transition:none;animation:none;box-shadow:none}@media(max-width:1100px){.topbar{gap:20px;flex-wrap:wrap}.navigation{order:3;width:100%}.brand,.top-actions{margin-top:12px}.tabs button{height:44px}.workspace{grid-template-columns:minmax(0,1fr)}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.account-grid>div:nth-child(2){border-right:0}}@media(max-width:700px){main{padding:16px}.topbar{margin:0 16px;gap:8px}.brand{font-size:var(--fs-body);gap:8px}.top-actions{gap:6px}.top-actions .caption{display:none}.top-actions>button:not(.theme-toggle){padding:6px 10px}.tabs{gap:0}.tabs button{padding:0 12px}.indices{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.indices .card:last-child{grid-column:1 / -1}.card{padding:0 12px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.metrics>div:nth-child(2){border-right:0}.account-grid>div,.metrics>div{padding:0 12px}.account-grid b,.equity strong{overflow-wrap:anywhere}.section-title{padding:10px 12px;flex-wrap:wrap}.page-heading{flex-wrap:wrap;margin-bottom:16px}.page-heading .caption{text-align:left}.chart{padding:0 8px 16px}th,td{padding:0 12px}.login-page{padding:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.overview{min-height:calc(100vh - 117px);min-height:calc(100dvh - 117px);display:flex;flex-direction:column;gap:20px}.overview>.page-heading,.overview .panel,.overview>.metrics{margin-bottom:0}.overview>.page-heading,.overview>.account-panel,.overview>.overview-status{flex-shrink:0}.overview .overview-status{grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;padding:12px 0}.overview-status>div{min-width:0;overflow-wrap:anywhere}.overview-status strong{font-size:var(--fs-title)}.overview-status>.overview-pending{background:var(--warning-bg);border-left:2px solid var(--warning-border);padding-top:8px;padding-bottom:8px}.overview-pending strong{color:var(--warning);font-size:var(--fs-display)}.overview-pending .muted{color:var(--warning)}.overview-main{flex:1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:24px;min-height:440px}.overview-main>*{min-width:0}.overview-equity{display:flex}.overview-equity>.panel{flex:1;min-width:0;display:flex;flex-direction:column}.overview-equity .section-title{flex-shrink:0}.overview-equity .chart{flex:1;display:flex;flex-direction:column;position:relative;min-height:380px;padding-top:0}.overview-equity .chart svg{position:absolute;top:0;left:16px;width:calc(100% - 32px);height:calc(100% - 42px)}.overview-equity .chart figcaption{margin-top:auto}.overview-equity .empty{flex:1}.overview-trade-list{list-style:none;padding:0 16px;margin:0}.overview-trade-list>li{padding:20px 0;border-top:var(--hairline) solid var(--separator)}.overview-trade-heading,.overview-trade-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.overview-trade-heading strong{overflow-wrap:anywhere}.overview-trade-meta{margin-top:6px}.overview-trade-list dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.overview-trade-list dt{color:var(--muted);font-size:var(--fs-caption)}.overview-trade-list dd{margin-top:4px;overflow-wrap:anywhere}.overview-trade-list dl>div:last-child{text-align:right}@media(max-width:1100px){.overview{min-height:calc(100dvh - 165px)}.overview-main{grid-template-columns:minmax(0,1fr)}.overview-equity{min-height:480px}.overview .overview-status{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}.overview-status>div:nth-child(3){border-right:0}}@media(max-width:700px){.overview .overview-status{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-status>div:nth-child(3){border-right:var(--hairline) solid var(--separator)}.overview-status>div:nth-child(2n){border-right:0}.overview-equity .chart svg{left:8px;width:calc(100% - 16px)}.overview .page-heading .caption{overflow-wrap:anywhere}}
