/* Datrux visual system. Original layout, controls and behavior are retained. */
/* Every candle uses the same geometry. Activity is indicated by its label, not a magnifying glow. */
.candles .candle>b{height:max(1px,var(--candle-body-height));box-shadow:none;animation:none}
.candles .candle>span.candle-wick{width:1px;min-height:0;transition:none;opacity:.72}
.candles .candle>span.candle-wick-upper{top:var(--candle-upper-top);height:var(--candle-upper-height)}
.candles .candle>span.candle-wick-lower{top:var(--candle-lower-top);height:var(--candle-lower-height)}
.candles .candle>b,.candles .candle-price-line{transition:none}
.candles .candle:last-child>b{box-shadow:none}
.chart-stage .candles{top:39px;bottom:64px}
.chart-stage .price-scale{top:39px;bottom:64px;display:block}
.chart-stage .price-scale>span{position:absolute;left:0;right:0;text-align:center;transform:translateY(-50%)}
/* One shared plot rectangle for candles, scale, indicators and order levels. */
.trader-shell .chart-card{background:var(--dt-bg);border:1px solid var(--dt-line);border-radius:12px;min-height:510px;height:72%;flex-shrink:0}
.chart-card .chart-stage{--plot-top:42px;--plot-bottom:100px;--plot-left:52px;--plot-right:80px;background-color:var(--dt-bg);background-image:linear-gradient(color-mix(in srgb,var(--dt-line) 50%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--dt-line) 42%,transparent) 1px,transparent 1px);background-size:100% 20%,12.5% 100%}
.chart-card .chart-stage.no-grid{background-image:none}
.chart-card .chart-stage .candles,.chart-card .indicator-overlay,.chart-card .drawing-overlay{inset:var(--plot-top) var(--plot-right) var(--plot-bottom) var(--plot-left)}
.chart-card .indicator-overlay,.chart-card .drawing-overlay{width:calc(100% - var(--plot-left) - var(--plot-right));height:calc(100% - var(--plot-top) - var(--plot-bottom))}
.chart-card .chart-stage .price-scale{top:var(--plot-top);bottom:var(--plot-bottom);width:74px;background:var(--dt-bg);color:var(--dt-muted);border-color:var(--dt-line);font-variant-numeric:tabular-nums}
.chart-card .candles{gap:0}
.chart-card .candles .candle>b{width:70%;max-width:34px;border-radius:0}
.chart-card .candles.density-compact .candle>b{width:46%}
.chart-card .candles.density-wide .candle>b{width:88%}
.chart-card .candles .candle>span.candle-wick{opacity:1}
.chart-card .candle.up{color:#22b895}.chart-card .candle.down{color:#ef5968}
.chart-card .live-candle:after{display:none}
.chart-card .candle-price-line{left:0;right:-6px;overflow:visible;border-color:#22b89599}
.chart-card .candle-price-line.down{border-color:#ef596899}
.chart-card .chart-current-price{position:absolute;left:100%;top:0;transform:translateY(-50%);background:#198a70;color:#fff;border-radius:3px;padding:4px 5px;min-width:70px;font:600 10px/1.2 Inter,'Segoe UI',sans-serif;letter-spacing:0;text-align:center;font-variant-numeric:tabular-nums}
.chart-card .candle-price-line.down .chart-current-price{background:#bf4655}
.chart-card .volume-bars{left:var(--plot-left);right:var(--plot-right);height:56px;bottom:35px;gap:0;opacity:.5;border-top:1px solid var(--dt-line)}
.chart-card .volume-bars i{flex:none;transform:scaleX(.7);transform-origin:center bottom;background:#22b895}
.chart-card .volume-bars i.down{background:#ef5968}
.chart-card .time-axis{left:var(--plot-left);right:var(--plot-right);bottom:14px;color:var(--dt-muted);font-size:9px}
.chart-card .ohlc{color:var(--dt-muted);left:var(--plot-left);right:var(--plot-right);font-variant-numeric:tabular-nums}
.chart-card .ohlc>b{color:var(--dt-accent)}
.chart-card .drawing-tools{background:var(--dt-panel);border-color:var(--dt-line)}
.chart-card .chart-controls,.chart-card .chart-foot{background:var(--dt-panel);border-color:var(--dt-line)}
.chart-card .instrument-head,.chart-card .live-quote-strip{background:var(--dt-bg);border-color:var(--dt-line)}
.chart-card .chart-range-controls .stream-health{color:var(--dt-accent)}
.chart-card .drawing-manager{background:var(--dt-panel);border-color:var(--dt-line);border-radius:6px}
.chart-card .chart-crosshair>i,.chart-card .chart-crosshair>b{opacity:.4}
@media(min-width:1051px){.trader-shell .chart-card{min-height:480px;height:74%}.trader-shell .positions-panel{min-height:160px!important}}
@media(max-width:1050px){.trader-shell .chart-card{height:620px;min-height:620px}}
@media(max-width:720px){.chart-card .chart-stage{--plot-left:36px;--plot-right:66px;--plot-top:42px;--plot-bottom:96px;min-height:400px!important}.trader-shell .chart-card{height:590px;min-height:590px}.chart-card .chart-current-price{min-width:58px;font-size:9px}.chart-card .chart-stage .price-scale{width:61px}.chart-card .time-axis{font-size:8px}.chart-card .ohlc{font-size:8px;white-space:nowrap;overflow:hidden}.chart-card .time-axis span:nth-child(even){display:none}}
.trader-shell .chart-card.chart-expanded{width:100%;max-width:100%;height:100dvh;min-height:100dvh;border-radius:0}
:root{color-scheme:dark;--dt-accent:#b7e4bb;--dt-deep:#4b9b6a;--dt-bg:#101613;--dt-panel:#18211d;--dt-line:#2d3a32;--dt-muted:#99aaa0}
body[data-brand=ivm]{--dt-accent:#e9cd8b;--dt-deep:#b2914e;--dt-bg:#171713;--dt-panel:#22231c;--dt-line:#3c3d30;--dt-muted:#acafa0}
body{margin:0;background:var(--dt-bg);color:#eff3ed;font-family:Inter,'Segoe UI',Arial,sans-serif}
button,input,select{font:inherit}button,a,input,select{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--dt-accent)}
.trader-shell{background:var(--dt-bg);padding:12px;gap:10px}
.trader-top{background:linear-gradient(110deg,var(--dt-panel),var(--dt-bg));border:1px solid var(--dt-line);border-radius:14px;box-shadow:0 12px 32px #0002;min-height:80px}
.trader-workspace{gap:10px}.watchlist,.order-ticket,.positions-panel{background:var(--dt-panel);border:1px solid var(--dt-line);border-radius:14px;overflow:hidden}.trading-center{gap:10px}
.chart-panel{background:var(--dt-panel);border:1px solid var(--dt-line);border-radius:14px}
.chart-watermark{opacity:.045}.instrument-head,.chart-controls,.watch-search,.watch-tabs,.ticket-tabs,.position-tabs{border-color:var(--dt-line)}
.top-metrics>div{border-color:var(--dt-line)}.top-metrics b{color:#f5f6ef}.top-metrics small,.environment-bar,.market-columns,.position-header{color:var(--dt-muted)}
.trader-top .profile,.terminal-account-toggle{background:#ffffff08;border:1px solid var(--dt-line);border-radius:12px}
.watchlist button.active,.timeframes button.active,.chart-range-controls button.active,.watch-tabs button.active,.ticket-tabs button.active,.position-tabs button.active{color:var(--dt-accent);background:color-mix(in srgb,var(--dt-accent) 12%,transparent);border-color:var(--dt-deep)}
.account-card{background:linear-gradient(135deg,color-mix(in srgb,var(--dt-deep) 20%,var(--dt-panel)),var(--dt-panel));border-color:var(--dt-line);border-radius:12px}.account-card b{color:var(--dt-accent)}
.order-ticket input,.order-ticket select,.watch-search input{background:var(--dt-bg);border-color:var(--dt-line);border-radius:7px;color:#f4f6f1}
.order-ticket .buy{background:#257954;border-color:#419b70}.order-ticket .sell{background:#a84c4c;border-color:#ba6666}.environment-bar{background:transparent;border:0}.terminal-brand-logo{max-width:160px;max-height:52px}
.pro-admin-shell{background:var(--dt-bg);padding-top:40px;--admin-sidebar-width:230px}.pro-admin-topbar{background:var(--dt-panel);border-bottom:1px solid var(--dt-line);box-shadow:none;top:40px}.pro-admin-sidebar{background:var(--dt-panel);border-color:var(--dt-line);top:112px}
.pro-admin-main{background:radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--dt-accent) 5%,transparent),transparent 50%),var(--dt-bg)}
.pro-admin-heading small{color:var(--dt-accent);letter-spacing:.16em}.pro-admin-heading h1{font-size:32px;font-weight:600;letter-spacing:-1px}
.pro-admin-kpis{gap:14px}.pro-admin-kpis article,.pro-admin-panel{background:var(--dt-panel);border:1px solid var(--dt-line);border-radius:14px;box-shadow:0 4px 16px #0001}.pro-admin-kpis article{padding:22px}.pro-admin-kpis b{font-weight:500;letter-spacing:-1px}.pro-admin-kpis article>i{color:var(--dt-accent);background:#ffffff08;border:1px solid var(--dt-line)}
.pro-admin-sidebar button.active,.pro-admin-nav-link.active{background:color-mix(in srgb,var(--dt-accent) 12%,transparent);color:var(--dt-accent);border-color:var(--dt-deep)}.pro-admin-sidebar button,.pro-admin-nav-link{border-radius:9px}.pro-admin-panel-title,.pro-admin-row,.pro-admin-table-head,.pro-admin-user-table,.pro-admin-toolbar{border-color:var(--dt-line)}
.pro-admin-main input,.pro-admin-main select,.pro-admin-modal input,.pro-admin-modal select,.admin-client-filters input,.admin-client-filters select{background:var(--dt-bg);border:1px solid var(--dt-line);color:#e9efe9;border-radius:7px}.pro-admin-main button,.pro-admin-topbar button,.pro-admin-actions a,.pro-admin-modal button{border-radius:8px}.primary,.primary-mini,.pro-admin-actions .primary{background:var(--dt-accent)!important;color:var(--dt-bg)!important;border-color:var(--dt-accent)!important}
.pro-admin-modal{z-index:1200}.pro-admin-modal>form,.pro-admin-modal>section,.pro-admin-modal>div{background:var(--dt-panel);border:1px solid var(--dt-line);border-radius:18px}.modal-title h2{font-weight:550}.admin-client-filters{background:var(--dt-panel);border-color:var(--dt-line);border-radius:12px}.pro-admin-table-panel{overflow:hidden}.pro-admin-alert{border-radius:10px}
.datrux-switch{height:40px;position:fixed;inset:0 0 auto;z-index:1000;background:#0c100e;border-bottom:1px solid var(--dt-line);display:flex;align-items:center;gap:18px;padding:0 22px;font-size:11px;letter-spacing:.1em}.datrux-switch a{color:#d1dcd2;text-decoration:none}.datrux-switch>span{margin-left:auto;color:var(--dt-muted)}.datrux-switch select{background:var(--dt-panel);color:var(--dt-accent);border:0;padding:4px 15px;border-radius:5px;min-width:100px}.datrux-switch b{font-size:10px;color:var(--dt-muted)}
.trader-loading{padding:40px;color:var(--dt-muted)}.trader-login{min-height:100vh;display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 15% 20%,#30473555,transparent 55%),var(--dt-bg)}.trader-login form,.trader-login section{z-index:1;width:min(420px,calc(100vw - 48px));padding:44px 0}.trader-login small{color:var(--dt-accent);letter-spacing:.2em}.trader-login h1{font-size:52px;line-height:1.1;font-weight:500;letter-spacing:-2px;margin:26px 0}.trader-login p{color:var(--dt-muted)}.trader-login label{display:grid;gap:10px;margin-top:24px;font-size:13px}.trader-login input{padding:15px;border:1px solid var(--dt-line);border-radius:9px;background:var(--dt-panel);color:white}.trader-login button{width:100%;padding:16px;margin:28px 0 20px;border:0;border-radius:9px}.trader-login a{color:var(--dt-accent);font-size:13px}.login-orbit{position:absolute;width:800px;height:800px;border:1px solid #6c8a631a;border-radius:50%;left:-400px;top:20%}.login-orbit:after{content:'';position:absolute;inset:80px;border:1px solid #6c8a631a;border-radius:50%}
@media(max-width:900px){.trader-shell{padding:5px;gap:6px}.trader-top{border-radius:9px}.pro-admin-heading h1{font-size:26px}.pro-admin-kpis article{padding:16px}.pro-admin-sidebar{top:40px}.datrux-switch{padding:0 12px;gap:10px}.pro-admin-topbar{top:40px}.trader-login h1{font-size:42px}}
.trader-top .terminal-brand-logo{max-width:none!important;max-height:none!important}.pro-admin-shell .pro-admin-sidebar button.active{background:color-mix(in srgb,var(--dt-accent) 14%,var(--dt-panel));box-shadow:inset 3px 0 var(--dt-accent);border-color:var(--dt-deep)}.pro-admin-shell .pro-admin-heading small,.pro-admin-shell .pro-admin-panel-title small{color:var(--dt-accent)}.pro-admin-shell .admin-client-filters{background:var(--dt-panel);border-color:var(--dt-line)}.pro-admin-shell .pro-admin-accounts>div,.pro-admin-shell .pro-admin-orders>div,.pro-admin-shell .pro-admin-user-table>div{background:transparent;border-color:var(--dt-line)}.pro-admin-shell .pro-admin-accounts>.head,.pro-admin-shell .pro-admin-orders>.head,.pro-admin-shell .pro-admin-user-table>.head{background:var(--dt-bg)}

/* Drag owns pointer gestures within the plot, including touch and pen. */
.chart-stage.pannable{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.chart-stage.panning,.chart-stage.panning *{cursor:grabbing!important}
.chart-stage:focus-visible{outline:1px solid var(--accent,#7fbacb);outline-offset:-1px}
.chart-stage .candles,.chart-stage .volume-bars,.chart-stage .indicator-overlay{user-select:none;-webkit-user-select:none}
.chart-foot .return-live{margin:6px 12px;border:1px solid currentColor;border-radius:6px;padding:7px 12px;color:var(--accent,#d6b269);background:transparent;cursor:pointer;white-space:nowrap}
@media(max-width:720px){.chart-foot.real{flex-wrap:wrap}.chart-stage .time-axis{font-size:8px}.chart-foot .return-live{margin-left:auto}}
