:root{--up:#ef5b66;--down:#20a67a;--terminal:#0c1724;--terminal-soft:#101e2d}
:root[data-theme="light"]{--up:#d83b49;--down:#138761;--terminal:#fff;--terminal-soft:#f7f9f8}
.broker-dashboard{max-width:1560px;margin:auto;padding:18px clamp(14px,2.8vw,44px) 30px;font-variant-numeric:tabular-nums}
.broker-head{height:54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:12px}.broker-head>div,.broker-account{display:flex;align-items:center;gap:16px}.broker-head>div>strong{font-size:19px}.broker-head>div>span{font-size:11px;color:var(--muted)}.broker-head i{display:inline-block;width:6px;height:6px;background:var(--down);border-radius:50%;margin-right:5px}.broker-account{gap:10px}.broker-account b,.broker-account small{display:block}.broker-account b{font-size:12px}.broker-account small{font-size:9px;color:var(--muted);margin-top:2px}.simulation-badge{font-size:9px!important;font-weight:800;color:#fff!important;background:#8b6b25;padding:4px 6px;border-radius:4px;letter-spacing:.08em}.broker-account .text-button{margin:0;padding:6px}
.broker-head #market-status.closed i{background:var(--muted)}
.account-strip{display:grid;grid-template-columns:1.25fr repeat(3,1fr);background:var(--surface);border:1px solid var(--line);border-radius:6px;margin-bottom:12px}.account-strip>div{padding:15px 20px;border-right:1px solid var(--line)}.account-strip>div:last-child{border:0}.account-strip small,.account-strip span{display:block;color:var(--muted);font-size:10px}.account-strip strong{display:block;font-size:21px;margin:7px 0 4px}.account-strip .up,.up{color:var(--up)!important}.account-strip .down,.down{color:var(--down)!important}.flat{color:var(--text)!important}
.trade-terminal{display:grid;grid-template-columns:250px minmax(480px,1fr) 286px;gap:10px;align-items:stretch}.terminal-panel{background:var(--terminal);border:1px solid var(--line);border-radius:6px;min-width:0}.market-panel,.order-panel{padding:14px}.terminal-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.terminal-title h2{margin:0;font-size:14px}.terminal-title span{color:var(--muted);font-size:10px}.market-search{position:relative}.market-search>span{position:absolute;left:9px;top:6px;color:var(--muted);font-size:16px}.market-search input{width:100%;height:31px;padding:0 9px 0 28px;border:1px solid var(--line);border-radius:4px;background:var(--input);color:var(--text);font-size:11px}.market-tabs{display:flex;gap:3px;overflow:auto;margin:10px 0 8px}.market-tabs button,.chart-tab,.record-tabs button{border:0;background:none;color:var(--muted);font-size:10px;white-space:nowrap;padding:5px 7px}.market-tabs button.selected,.chart-tab.selected,.record-tabs button.selected{color:var(--accent);background:var(--accent-deep);border-radius:3px}.quote-table-head,.quote-row{display:grid;grid-template-columns:1fr 64px 58px;gap:6px;align-items:center}.quote-table-head{padding:7px;color:var(--muted);font-size:9px;border-bottom:1px solid var(--line)}.quote-table-head span:not(:first-child){text-align:right}.quote-list{max-height:516px;overflow:auto}.quote-row{width:100%;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:none;color:var(--text);padding:9px 7px;text-align:left}.quote-row:hover,.quote-row.selected{background:var(--surface2)}.quote-row.selected{box-shadow:inset 2px 0 var(--accent)}.quote-row span b,.quote-row span small{display:block}.quote-row span b{font-size:11px}.quote-row span small{font-size:9px;color:var(--muted);margin-top:3px}.quote-row strong,.quote-row em{font-size:11px;text-align:right;font-style:normal}.list-empty,.record-empty{color:var(--muted);font-size:11px;padding:28px;text-align:center}
.chart-panel{display:flex;flex-direction:column}.quote-head{display:flex;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--line)}.quote-head>div:first-child>div{display:flex;gap:8px;align-items:baseline}.quote-head h1{font-size:18px;margin:0}.quote-head>div:first-child>div span{font-size:10px;color:var(--muted)}.quote-head>div:first-child>strong{display:inline-block;font-size:28px;margin:10px 12px 0 0}.quote-head>div:first-child>span{font-size:12px}.quote-head dl{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0;align-self:center}.quote-head dl div{display:grid;gap:6px}.quote-head dt{font-size:9px;color:var(--muted)}.quote-head dd{margin:0;font-size:11px}.chart-toolbar{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line)}.chart-toolbar span{font-size:9px;color:var(--muted)}.chart-wrap{position:relative;flex:1;min-height:430px;padding:7px}#kline-chart{display:block;width:100%;height:100%;min-height:420px}.chart-wrap>div{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:12px}
.depth-head,.depth-row{display:grid;grid-template-columns:45px 1fr 1fr;gap:8px;align-items:center}.depth-head{font-size:9px;color:var(--muted);padding:4px 2px 7px;border-bottom:1px solid var(--line)}.depth-head span:not(:first-child),.depth-row strong,.depth-row span:last-child{text-align:right}.depth-row{padding:4px 2px;font-size:10px}.depth-mid{text-align:center;color:var(--up);font-size:11px;font-weight:700;padding:7px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:4px 0}.depth-empty{font-size:9px;color:var(--muted);text-align:center;padding:5px}.order-divider{height:1px;background:var(--line);margin:12px -14px}.side-switch{display:grid;grid-template-columns:1fr 1fr;margin-bottom:10px}.side-switch button{height:31px;border:1px solid var(--line);background:var(--input);color:var(--muted)}.side-switch button:first-child{border-radius:4px 0 0 4px}.side-switch button:last-child{border-radius:0 4px 4px 0}.side-switch button.buy.selected{background:color-mix(in srgb,var(--up) 17%,var(--input));border-color:var(--up);color:var(--up)}.side-switch button.sell.selected{background:color-mix(in srgb,var(--down) 17%,var(--input));border-color:var(--down);color:var(--down)}.order-panel label{font-size:10px;color:var(--muted);margin:10px 0 5px}.unit-input{display:flex;border:1px solid var(--line);border-radius:4px;background:var(--input);align-items:center}.unit-input:focus-within{border-color:var(--accent)}.unit-input input{width:100%;height:34px;border:0;background:transparent;color:var(--text);padding:0 9px;font-size:12px;outline:0}.unit-input span{padding-right:9px;font-size:9px;color:var(--muted)}.quick-qty{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:7px}.quick-qty button{border:1px solid var(--line);background:var(--input);color:var(--muted);border-radius:3px;padding:5px;font-size:9px}.order-panel form>p{font-size:10px;color:var(--muted);margin:9px 0}.broker-submit{width:100%;height:36px;border:0;border-radius:4px;color:#fff;font-weight:700;margin-top:5px}.broker-submit.buy{background:var(--up)}.broker-submit.sell{background:var(--down)}.order-panel .form-error,.order-panel .trade-success{padding:7px;font-size:9px}.trade-success{color:var(--accent);background:var(--accent-deep)}
.records-panel{margin-top:10px;padding:0 14px 10px}.record-tabs{display:flex;align-items:center;border-bottom:1px solid var(--line);height:42px;gap:8px}.record-tabs button{font-size:11px;height:42px;border-radius:0!important}.record-tabs button.selected{box-shadow:inset 0 -2px var(--accent);background:none}.record-tabs button span{font-size:8px;background:var(--surface2);padding:2px 5px;border-radius:8px}.record-tabs>span{margin-left:auto;color:var(--muted);font-size:9px}.record-head,.record-row{display:grid;gap:12px;align-items:center}.position-grid{grid-template-columns:1.5fr 1fr 1fr 1fr 90px}.order-grid{grid-template-columns:1.5fr .7fr 1fr 1fr .7fr 60px}.record-head{color:var(--muted);font-size:9px;padding:9px;border-bottom:1px solid var(--line)}.record-row{padding:10px 9px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);font-size:11px}.record-row b,.record-row small{display:block}.record-row small{color:var(--muted);font-size:9px;margin-top:2px}.record-actions{display:flex;gap:5px}.record-actions button,.cancel-order{border:1px solid var(--line);background:var(--input);border-radius:3px;font-size:9px;padding:4px 6px}.cancel-order{color:var(--text)}.broker-risk{text-align:right;color:var(--muted);font-size:9px;padding:14px 2px 0}
.signup-industries,.modal-industries{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px}.signup-industries{max-height:none}.modal-industries{border:0}.signup-industries .industry-tag,.modal-industries .industry-tag{padding:10px}
@media(max-width:1100px){.trade-terminal{grid-template-columns:210px minmax(430px,1fr)}.order-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px}.order-panel>.terminal-title,.order-panel>.depth-head,.order-panel>#depth-book{grid-column:1}.order-panel>.order-divider{display:none}.order-panel>form{grid-column:2;grid-row:1/5}.quote-head dl{gap:10px}}
@media(max-width:780px){.broker-dashboard{padding:8px}.broker-head{height:auto;padding:9px 0}.broker-head>div:first-child span{display:none}.account-strip{grid-template-columns:1fr 1fr}.account-strip>div:nth-child(2){border-right:0}.account-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.trade-terminal{grid-template-columns:1fr}.market-panel{max-height:none}.quote-list{max-height:280px}.chart-wrap,#kline-chart{min-height:340px}.order-panel{grid-column:auto;display:block}.order-panel>form{display:block}.order-divider{display:block!important}.records-panel{overflow:auto}.record-head,.record-row{min-width:680px}.quote-head{display:block}.quote-head dl{margin-top:12px}.broker-account .text-button:first-of-type{display:none}}
@media(max-width:520px){.account-strip strong{font-size:16px}.account-strip>div{padding:12px}.broker-head>div>strong{font-size:15px}.quote-head dl{grid-template-columns:repeat(2,1fr)}.chart-wrap,#kline-chart{min-height:290px}.simulation-badge{display:none}.broker-account{gap:4px}}
