:root{--bg:#0b0e12;--panel:#141920;--panel2:#1b222b;--text:#eef2f6;--muted:#8e9aa8;--line:#27313d;--up:#51d28c;--down:#ff6b6b;--accent:#4da3ff;--safe:env(safe-area-inset-bottom)}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;min-height:100%;overscroll-behavior:none}button,input,select{font:inherit}.hidden{display:none!important}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.35)}.brand-mark{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:var(--accent);font-weight:800;font-size:22px;margin-bottom:18px}.login-card h1{margin:0 0 4px;font-size:24px}.muted{color:var(--muted)}.small{font-size:12px}.login-card label{display:block;margin:18px 0 0;color:var(--muted);font-size:13px}.login-card input{display:block;width:100%;margin-top:8px;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:#0e1217;color:var(--text);outline:none}.login-card input:focus{border-color:var(--accent)}button{border:0;border-radius:11px;padding:11px 14px;color:var(--text);background:var(--panel2);cursor:pointer}.primary{width:100%;margin-top:20px;background:var(--accent);font-weight:700}.danger{width:100%;margin-top:24px;background:#55262b}.ghost{padding:8px 11px;background:var(--panel2)}.error{color:var(--down);font-size:13px;min-height:18px;margin-top:12px}.security-note{color:var(--muted);font-size:11px;line-height:1.45;margin-top:14px}
.app{min-height:100vh;padding-bottom:calc(72px + var(--safe))}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:rgba(11,14,18,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.app-title{font-weight:700}.connection{font-size:11px;color:var(--up)}.account-mini{text-align:right;font-size:12px;color:var(--muted)}main{padding:12px;max-width:900px;margin:0 auto}.view{display:none}.view.active{display:block}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 10px}.section-head h2{font-size:18px;margin:0}.subhead{font-size:13px;font-weight:700;color:var(--muted);margin:14px 2px 8px}.table-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel)}
.quote-tools{display:flex;align-items:center;gap:10px;margin-bottom:9px}.quote-tools input{flex:1;min-width:0;padding:9px 11px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);outline:none}.quote-tools input:focus{border-color:var(--accent)}.quote-header,.quote-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.quote-header{padding:9px 12px;color:var(--muted);font-size:11px;border-bottom:1px solid var(--line)}.quote-header span:not(:first-child),.quote-row span:not(:first-child){text-align:right}.quote-row{padding:11px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.quote-row:last-child{border-bottom:0}.quote-symbol{font-weight:700}.quote-price{font-size:15px}.flash-up{color:var(--up)}.flash-down{color:var(--down)}
.chart-controls{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:8px;margin-bottom:8px}.chart-controls select,#historyDays{background:var(--panel);border:1px solid var(--line);color:var(--text);padding:10px;border-radius:10px}.chart-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.chart-price{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;margin:5px 2px}.live-pill{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--up);box-shadow:0 0 9px rgba(81,210,140,.7);animation:livePulse 1.15s ease-in-out infinite}.live-pill.stale .live-dot{background:#ffb454;box-shadow:0 0 9px rgba(255,180,84,.7);animation-duration:1.8s}.live-pill.offline .live-dot{background:var(--down);box-shadow:0 0 9px rgba(255,107,107,.75);animation:none}.live-pill.stale{color:#ffb454}.live-pill.offline{color:var(--down)}@keyframes livePulse{0%,100%{opacity:.35;transform:scale(.82)}50%{opacity:1;transform:scale(1.18)}}.ohlc-strip{display:flex;gap:10px 14px;flex-wrap:wrap;color:var(--muted);font-size:11px;margin:0 2px 8px}.ohlc-strip b{color:var(--text);font-variant-numeric:tabular-nums}.chart-wrap{height:52vh;min-height:320px;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.chart-wrap canvas{width:100%;height:100%;display:block}.readonly-badge{font-size:10px;color:#ffd479;border:1px solid #6f5927;padding:4px 7px;border-radius:999px}
.summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.summary-strip>div{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0}.summary-strip span{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-strip b{display:block;margin-top:3px;font-size:14px;font-variant-numeric:tabular-nums}.pos{color:var(--up)!important}.neg{color:var(--down)!important}
.cards{display:grid;gap:9px}.order-card{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:12px}.order-top{display:flex;justify-content:space-between;gap:10px}.order-symbol{font-weight:800}.order-type{font-size:11px;color:var(--muted);margin-left:4px}.order-profit.pos{color:var(--up)}.order-profit.neg{color:var(--down)}.order-meta,.order-costs{margin-top:7px;color:var(--muted);font-size:12px;display:flex;flex-wrap:wrap;gap:8px 14px}.order-costs{font-size:11px;border-top:1px solid var(--line);padding-top:7px}.empty{padding:26px;text-align:center;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:14px}.empty.compact{border:0;border-radius:0;padding:18px}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:12px}.metric .k{color:var(--muted);font-size:11px}.metric .v{font-size:18px;font-weight:700;margin-top:3px;font-variant-numeric:tabular-nums}.account-note{margin-top:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--muted);font-size:12px}.version{text-align:center;color:var(--muted);font-size:11px;margin:14px 0}
.bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;height:calc(64px + var(--safe));padding:4px 6px var(--safe);display:grid;grid-template-columns:repeat(6,1fr);background:rgba(15,19,24,.97);border-top:1px solid var(--line);backdrop-filter:blur(12px)}.bottom-nav button{background:transparent;padding:5px 2px;border-radius:9px;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.bottom-nav button.active{color:var(--accent);background:#14273b}.bottom-nav span{font-size:19px;line-height:1}.bottom-nav small{font-size:9px}
@media(max-width:430px){.summary-strip{grid-template-columns:1fr 1fr}.summary-strip>div:last-child{grid-column:1/-1}.chart-controls{grid-template-columns:1.25fr .75fr .75fr}.chart-price{font-size:18px}.account-grid{gap:7px}.metric{padding:10px}.metric .v{font-size:16px}}
@media(min-width:700px){.quote-row{padding:12px 18px}.quote-header{padding:10px 18px}.bottom-nav{left:50%;transform:translateX(-50%);max-width:700px;border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:16px 16px 0 0}.topbar{padding-left:max(18px,calc((100vw - 900px)/2));padding-right:max(18px,calc((100vw - 900px)/2))}}


.trade-status{margin:0 2px 9px;min-height:16px}
.trade-toolbar{display:flex;gap:8px;margin-bottom:10px}
.small-btn{width:auto!important;margin:0!important;padding:9px 12px!important}
.trade-ticket{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:12px}
.ticket-title{font-size:15px;font-weight:800;margin-bottom:10px}
.trade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.trade-grid label{display:block;color:var(--muted);font-size:11px}
.trade-grid input,.trade-grid select{display:block;width:100%;margin-top:5px;padding:10px;border-radius:10px;border:1px solid var(--line);background:#0e1217;color:var(--text);outline:none}
.trade-grid input:focus,.trade-grid select:focus{border-color:var(--accent)}
.trade-grid input:disabled{opacity:.5}
.trade-preview{margin:10px 0 0;padding:9px 10px;border-radius:10px;background:#0e1217;border:1px solid var(--line);font-size:12px;color:var(--muted)}
.trade-send{margin-top:10px}
.trade-message{min-height:18px;margin-top:8px;font-size:12px;color:var(--muted)}
.trade-message.ok{color:var(--up)}
.trade-message.err{color:var(--down)}
.trade-mode-on{color:var(--up)!important;border-color:#285f46!important}
.trade-mode-off{color:var(--down)!important;border-color:#7a3038!important;background:rgba(255,107,107,.05)}
.order-actions{margin-top:9px;display:flex;gap:7px;flex-wrap:wrap}
.order-actions button{padding:7px 10px;border-radius:8px;font-size:11px}
.order-actions .close-btn{background:#55262b}
.order-actions .delete-btn{background:#55262b}
.order-actions .modify-btn{background:#253444}
.real-warning{color:#ffb454}
.demo-ok{color:var(--up)}
@media(max-width:430px){.trade-grid{grid-template-columns:1fr}.trade-toolbar{display:grid;grid-template-columns:1fr 1fr}.trade-toolbar button{font-size:11px;padding:9px 7px!important}}

.order-levels{margin-top:7px;display:flex;flex-wrap:wrap;gap:7px 14px;color:var(--muted);font-size:11px}.order-levels b{color:var(--text);font-variant-numeric:tabular-nums}.current-price{color:var(--accent)}
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:16px}.trade-modal{width:min(560px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 24px 70px rgba(0,0,0,.55)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.quick-prices{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.quick-prices button{font-size:11px;padding:8px 5px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.modal-actions .primary{width:auto;margin:0}.modal-actions .ghost{margin:0}@media(max-width:430px){.quick-prices{grid-template-columns:1fr 1fr}}

.rule-info{color:var(--muted)}
.rule-error{color:var(--down);font-weight:600}
#modifyRule{margin-top:9px;line-height:1.5}

/* v1.4.0 order-entry refinements */
.field-hint{display:block;margin-top:5px;font-size:11px;color:var(--muted)}
.expiration-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.mini-field-btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:7px;padding:5px 8px;font-size:11px;cursor:pointer}
.mini-field-btn:hover{filter:brightness(1.08)}


/* v1.5.0 desktop Web Terminal workspace */
.topbar-right{display:flex;align-items:center;gap:12px}.desktop-title{display:none}.desktop-new-order,.desktop-tool-tabs{display:none}.quote-row.selected{background:#14273b;box-shadow:inset 3px 0 0 var(--accent)}
@media(min-width:1100px){
  .desktop-title{display:inline}.mobile-title{display:none}
  html,body{height:100%;overflow:auto}.app{padding-bottom:0;min-height:100vh}.topbar{padding:8px 12px;min-height:54px}.topbar .app-title{font-size:15px}.desktop-new-order{display:inline-flex;align-items:center;background:var(--accent);font-weight:700;padding:8px 13px;border-radius:8px}.account-mini{min-width:96px}
  main{max-width:none;width:100%;padding:8px;display:grid;grid-template-columns:290px minmax(0,1fr);grid-template-rows:minmax(520px,calc(100vh - 360px)) 38px minmax(250px,auto);grid-template-areas:"market chart" "tabs tabs" "tool tool";gap:8px;margin:0}
  #viewQuotes{grid-area:market!important;display:flex!important;flex-direction:column;min-width:0;min-height:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:9px;overflow:hidden}
  #viewChart{grid-area:chart!important;display:flex!important;flex-direction:column;min-width:0;min-height:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:9px;overflow:hidden}
  #viewTrade,#viewHistory,#viewAccount{grid-area:tool;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:0}
  #viewTrade.active,#viewHistory.active,#viewAccount.active{display:block}
  #viewQuotes .section-head{margin-bottom:8px}#viewQuotes .section-head h2{font-size:14px}#viewQuotes #refreshQuotesBtn{display:none}.quote-tools{margin-bottom:6px}.quote-tools input{padding:7px 9px;font-size:12px}.table-card{border-radius:7px;flex:1;min-height:0;overflow:auto}.quote-header{position:sticky;top:0;z-index:2;background:var(--panel);padding:7px 8px}.quote-row{padding:7px 8px;cursor:pointer}.quote-symbol{font-size:12px}.quote-price{font-size:12px}.quote-count{font-size:10px}
  .chart-controls{grid-template-columns:minmax(170px,1.2fr) 90px 90px;margin-bottom:5px}.chart-controls select{padding:7px 8px;border-radius:7px}.chart-price{font-size:18px;margin:2px 0}.ohlc-strip{margin-bottom:5px}.chart-wrap{height:auto;min-height:0;flex:1;border-radius:7px}.chart-title-row{min-height:28px}
  .desktop-tool-tabs{grid-area:tabs;display:flex;align-items:end;gap:2px;border-bottom:1px solid var(--line);padding-left:6px}.desktop-tool-tabs button{border-radius:7px 7px 0 0;background:transparent;color:var(--muted);padding:8px 18px;font-size:12px;border:1px solid transparent;border-bottom:0}.desktop-tool-tabs button.active{background:var(--panel);color:var(--text);border-color:var(--line);position:relative;top:1px}.bottom-nav{display:none!important}
  #viewTrade .section-head,#viewHistory .section-head,#viewAccount .section-head{margin:0 0 8px}.summary-strip{grid-template-columns:repeat(3,minmax(140px,220px));justify-content:start}.summary-strip>div{padding:7px 10px;border-radius:7px}.summary-strip b{font-size:13px}.trade-toolbar{margin-bottom:7px}.trade-ticket{border-radius:7px;padding:10px}.trade-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:7px}.trade-grid input,.trade-grid select{padding:8px;border-radius:6px}.trade-preview{padding:7px 9px;margin-top:7px}.trade-send{max-width:360px}.cards{gap:4px}.order-card{border-radius:6px;padding:7px 9px}.order-meta,.order-costs,.order-levels{margin-top:4px;gap:5px 12px}.order-costs{padding-top:4px}.order-actions{margin-top:5px}.order-actions button{padding:5px 8px}.subhead{margin:8px 2px 5px}
  #viewHistory .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}#viewHistory .order-card{min-width:0}.account-grid{grid-template-columns:repeat(5,minmax(150px,1fr));gap:6px}.metric{border-radius:7px;padding:8px}.metric .v{font-size:15px}.danger{max-width:320px}.version{text-align:left}
  .modal-backdrop{padding:20px}.trade-modal{border-radius:10px}
}
@media(min-width:1500px){main{grid-template-columns:320px minmax(0,1fr);grid-template-rows:minmax(590px,calc(100vh - 370px)) 38px minmax(250px,auto)}#viewHistory .cards{grid-template-columns:repeat(3,minmax(0,1fr))}}


/* v1.6.0 Professional workspace: Market Watch, one-click, indicators, tables */
.quote-header,.quote-row{grid-template-columns:24px minmax(74px,1fr) 1fr 1fr}.quote-header span:not(:first-child),.quote-row span:not(:first-child){text-align:right}.quote-header span:nth-child(2),.quote-row .quote-symbol{text-align:left}.mw-star{padding:0;background:transparent;color:#65717f;font-size:15px;line-height:1;border-radius:4px}.mw-star.on{color:#f5c451}.mw-tool-btn{padding:7px 9px}.quote-tools #quoteCount{white-space:nowrap}
.chart-controls{grid-template-columns:minmax(130px,1.4fr) .65fr .65fr .75fr auto auto}.chart-tool-btn{white-space:nowrap;padding:8px 10px}.indicator-panel{display:flex;gap:8px 14px;flex-wrap:wrap;align-items:center;padding:8px 10px;margin-bottom:7px;background:#0e1217;border:1px solid var(--line);border-radius:8px;font-size:11px;color:var(--muted)}.indicator-panel label{display:flex;align-items:center;gap:5px}.indicator-panel input[type=checkbox]{accent-color:var(--accent)}.ind-period{width:52px!important;padding:4px 5px!important;margin:0!important;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--text)}.ind-fixed{color:var(--muted);font-size:10px}
.oneclick-bar{display:none;grid-template-columns:auto minmax(105px,150px) 92px minmax(105px,150px) 1fr;gap:6px;align-items:stretch;margin:0 0 7px}.oneclick-arm{font-size:10px;border:1px solid #6f5927;color:#ffd479;background:#2a2518;padding:6px 9px}.oneclick-arm.on{border-color:#285f46;color:var(--up);background:#14271f}.oneclick-side{display:flex;justify-content:space-between;align-items:center;border-radius:7px;padding:6px 10px;font-weight:800}.oneclick-side span{font-size:10px}.oneclick-side b{font-size:15px;font-variant-numeric:tabular-nums}.oneclick-side.sell{background:#6c2b31}.oneclick-side.buy{background:#1e568a}.oneclick-side:disabled{opacity:.42;cursor:not-allowed}.oneclick-volume{display:flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:9px}.oneclick-volume input{min-width:0;width:100%;border:0;background:transparent;color:var(--text);outline:0;font-variant-numeric:tabular-nums}.chart-wrap{position:relative}.chart-cursor-tip{position:absolute;pointer-events:none;z-index:5;background:rgba(9,12,16,.92);border:1px solid var(--line);border-radius:6px;padding:5px 7px;font-size:10px;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.orders-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:7px}.orders-table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.orders-table th{position:sticky;top:0;z-index:2;background:#171d24;color:var(--muted);font-weight:600;text-align:right;padding:6px 7px;border-bottom:1px solid var(--line)}.orders-table th:nth-child(1),.orders-table th:nth-child(2),.orders-table th:nth-child(3),.orders-table th:nth-child(5){text-align:left}.orders-table td{padding:6px 7px;border-bottom:1px solid #222b35;text-align:right}.orders-table td:nth-child(1),.orders-table td:nth-child(2),.orders-table td:nth-child(3),.orders-table td:nth-child(5){text-align:left}.orders-table tr:last-child td{border-bottom:0}.orders-table tbody tr:hover{background:#16212c}.orders-table .table-actions{display:flex;gap:4px;justify-content:flex-end}.orders-table .table-actions button{padding:4px 6px;border-radius:5px;font-size:10px}.orders-table .row-symbol{font-weight:800}.orders-table .current-price{font-weight:700}.orders-table .net{font-weight:800}
.market-modal-list{max-height:60vh;overflow:auto;border:1px solid var(--line);border-radius:8px}.market-modal-row{display:grid;grid-template-columns:32px 1fr 80px;align-items:center;padding:7px 9px;border-bottom:1px solid var(--line)}.market-modal-row:last-child{border-bottom:0}.market-modal-row .fav-toggle{background:transparent;color:#65717f;padding:3px}.market-modal-row .fav-toggle.on{color:#f5c451}.market-modal-actions{display:flex;justify-content:space-between;gap:8px;margin-top:10px}.market-modal-actions button{margin:0}
.account-grid .metric[title]{cursor:help}
@media(min-width:1100px){.oneclick-bar{display:grid}.chart-controls{grid-template-columns:minmax(170px,1fr) 80px 78px 88px auto auto}.chart-controls select,.chart-tool-btn{font-size:11px;padding:6px 7px}.chart-wrap{min-height:370px}.orders-table-wrap{max-height:330px}.cards.orders-desktop{display:block}.desktop-tool-tabs{position:sticky;top:54px;z-index:6;background:var(--bg)}#viewTrade,#viewHistory,#viewMailbox,#viewAccount{overflow:auto;max-height:520px}}
@media(max-width:1099px){.chart-controls{grid-template-columns:1.2fr .65fr .65fr}.chart-controls #chartType,.chart-controls .chart-tool-btn{display:none}.indicator-panel{display:none!important}.oneclick-bar{display:none}.mw-tool-btn{display:none}.quote-header,.quote-row{grid-template-columns:1fr 1fr 1fr}.quote-header span:first-child,.quote-row .mw-star{display:none}.quote-header span:nth-child(2){text-align:left}.quote-header span:nth-child(3),.quote-header span:nth-child(4){text-align:right}}

/* ===== v1.7.0 Resilient Professional Workspace ===== */
.chart-tabs{display:none;align-items:center;gap:4px;margin:0 0 6px;overflow-x:auto;white-space:nowrap;min-height:30px}.chart-tab{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:#10151b;color:var(--muted);font-size:10px}.chart-tab.active{background:#17304a;color:var(--text);border-color:#28557f}.chart-tab .tab-close{padding:0 2px;background:transparent;color:var(--muted);font-size:12px}.chart-tab-add{padding:5px 9px;border:1px dashed #405064;background:transparent;color:var(--accent);font-size:11px}
.chart-settings-panel{display:flex;gap:9px 14px;flex-wrap:wrap;align-items:center;padding:8px 10px;margin-bottom:7px;background:#0e1217;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:11px}.chart-settings-panel label{display:flex;align-items:center;gap:6px}.chart-settings-panel input[type=color]{width:34px;height:25px;padding:1px;border:1px solid var(--line);border-radius:5px;background:transparent}.live-block{text-align:right}.last-tick{font-size:9px;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums}.connection.offline{color:var(--down)!important}.connection.stale{color:#ffb454!important}
.orders-table.history-table{min-width:1220px;width:100%;font-size:10px;table-layout:auto}.orders-table.history-table th,.orders-table.history-table td{padding:6px 8px}.orders-table td.comment-cell{max-width:220px;overflow:hidden;text-overflow:ellipsis;text-align:left}.orders-table th.time-col,.orders-table td.time-col{text-align:left}.orders-table th.symbol-col,.orders-table td.symbol-col{text-align:left}.orders-table .sl-col,.orders-table .tp-col{color:#c7d0da}.orders-table .total-col{font-weight:800}.orders-table .total-col.pos{color:var(--up)}.orders-table .total-col.neg{color:var(--down)}
.trade-offline-note{color:var(--down);font-weight:700}.oneclick-bar.offline{opacity:.52}.chart-wrap canvas{cursor:default}
@media(min-width:1100px){
  main{grid-template-rows:auto 38px auto}
  #viewChart{overflow:visible;min-height:610px}
  #viewQuotes{min-height:610px;max-height:760px}
  .chart-tabs{display:flex}
  .chart-controls{grid-template-columns:minmax(180px,1fr) 76px 74px 86px auto auto auto}
  .chart-wrap{min-height:430px;flex:none;height:52vh;max-height:680px}
  #viewTrade,#viewHistory,#viewMailbox,#viewAccount{max-height:none;overflow:visible}
  #viewHistory .cards,#historyOrders{display:block!important;width:100%;max-width:none}
  #viewHistory .orders-table-wrap{width:100%;max-width:none;max-height:none;overflow-x:auto;overflow-y:visible}
  #viewTrade .orders-table-wrap{max-height:420px}
}
@media(min-width:1500px){#viewChart{min-height:660px}#viewQuotes{min-height:660px}.chart-wrap{min-height:480px}}
@media(max-width:1099px){.chart-tabs,.chart-settings-panel{display:none!important}.last-tick{display:none}}

@media(min-width:1100px){#viewHistory{min-height:260px}#viewHistory .orders-table.history-table th,#viewHistory .orders-table.history-table td{white-space:nowrap}#viewHistory .orders-table td.comment-cell{max-width:160px}.history-table .time-col{min-width:112px}}


/* ===== v1.8.0 MT4-like chart controls ===== */
.chart-mode-btn{min-width:36px;font-weight:800}
.chart-mode-btn.active{background:#17304a;border-color:#2f6ea8;color:#dceeff;box-shadow:inset 0 0 0 1px rgba(77,163,255,.18)}
.chart-cursor-tip{white-space:pre;line-height:1.35;min-width:150px}
@media(min-width:1100px){.chart-controls{grid-template-columns:minmax(170px,1fr) 76px 74px 86px auto auto 38px 38px 38px 38px}}
@media(max-width:1099px){.chart-mode-btn{display:none!important}}


/* ===== v2.0.0 Bilingual commercial/site additions ===== */
.chart-objects-panel{display:flex;gap:6px 8px;flex-wrap:wrap;align-items:center;padding:7px 9px;margin-bottom:7px;background:#0e1217;border:1px solid var(--line);border-radius:8px}
.chart-objects-panel button.active{background:#17304a;border:1px solid #28557f}
#chartDrawHint{min-width:170px}
.chart-mode-btn.active,#chartHistoryLeftBtn.active,#chartHistoryRightBtn.active{background:#153653;color:#dceeff}
@media(min-width:1100px){
  .chart-controls{grid-template-columns:minmax(150px,1fr) 74px 78px 92px auto auto auto auto 38px 38px 38px 38px 38px 38px;gap:5px}
  #viewChart{min-height:520px}
  .chart-wrap{min-height:390px}
}
@media(max-width:1099px){#chartObjectsBtn,#chartHistoryLeftBtn,#chartHistoryRightBtn{display:none}.chart-objects-panel{display:none!important}}

/* v2.0.0 language + Hi-Tech-Fx branding */
.login-brand-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.lang-box{margin:0;min-width:112px;color:#8fa3ba;font-size:12px}.lang-box span{display:block;margin-bottom:5px}.lang-box select,.top-lang{width:auto;min-width:76px;background:#111a24;color:#e8f0f8;border:1px solid #2a3a4d;border-radius:9px;padding:7px 9px}.developer-credit{margin-top:16px;padding-top:12px;border-top:1px solid #213042;color:#7f93aa;font-size:12px;line-height:1.5}.developer-credit a{color:#65b2ff;text-decoration:none}.developer-credit a:hover{text-decoration:underline}.top-lang{margin-right:4px;padding:6px 8px;min-width:58px}@media(max-width:700px){.top-lang{position:absolute;right:10px;top:8px}.login-card{max-width:420px}}


/* ===== v2.1.1 Commercial Core: Mailbox / Specification / extended studies ===== */
.extra-indicator-panels{display:grid;gap:6px;margin-top:6px}
.extra-indicator-panel{position:relative;height:92px;background:#10151b;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.extra-indicator-panel canvas{display:block;width:100%;height:100%}
.extra-indicator-title{position:absolute;left:7px;top:5px;z-index:2;color:var(--muted);font-size:9px;pointer-events:none}
.mailbox-list{display:grid;gap:8px;margin-top:10px}
.mail-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.mail-head{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:8px;padding:9px 11px;cursor:pointer}
.mail-subject{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-meta{color:var(--muted);font-size:10px;text-align:right;white-space:nowrap}
.mail-from{color:#9db2c8;font-size:10px;margin-top:3px}
.mail-body{display:none;padding:10px 12px;border-top:1px solid var(--line);white-space:pre-wrap;font-size:12px;line-height:1.45;color:#dbe4ed;background:#0e1217}
.mail-card.open .mail-body{display:block}
.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;font-size:12px}
.spec-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #202a34}
.spec-row span{color:var(--muted)}.spec-row b{text-align:right;font-variant-numeric:tabular-nums}
.spec-section-title{margin:10px 0 3px;font-size:11px;color:#9eb1c4;text-transform:uppercase;letter-spacing:.04em}
.chart-object-text{font-size:10px}
@media(max-width:600px){.spec-grid{grid-template-columns:1fr}.bottom-nav small{font-size:8px}.bottom-nav button{padding-left:0;padding-right:0}}
@media(min-width:1100px){#viewMailbox{min-height:260px}.mailbox-list{max-height:420px;overflow:auto}}


/* v2.1.1: compact History columns and clearer read-only market price */
.orders-table.history-table{min-width:1060px;table-layout:fixed}
.history-table th:nth-child(1),.history-table td:nth-child(1){width:46px}
.history-table th:nth-child(2),.history-table td:nth-child(2),
.history-table th:nth-child(9),.history-table td:nth-child(9){width:98px;min-width:98px;max-width:98px}
.history-table th:nth-child(3),.history-table td:nth-child(3){width:48px}
.history-table th:nth-child(4),.history-table td:nth-child(4){width:42px}
.history-table th:nth-child(5),.history-table td:nth-child(5){width:62px}
.history-table th:nth-child(6),.history-table td:nth-child(6),
.history-table th:nth-child(7),.history-table td:nth-child(7),
.history-table th:nth-child(8),.history-table td:nth-child(8),
.history-table th:nth-child(10),.history-table td:nth-child(10){width:66px}
.history-table th:nth-child(11),.history-table td:nth-child(11){width:74px}
.history-table th:nth-child(12),.history-table td:nth-child(12),
.history-table th:nth-child(13),.history-table td:nth-child(13){width:52px}
.history-table th:nth-child(14),.history-table td:nth-child(14),
.history-table th:nth-child(15),.history-table td:nth-child(15){width:66px}
.history-table th:nth-child(16),.history-table td:nth-child(16){width:100px}
#tradePrice:disabled{opacity:.92;color:var(--text)}
#tradePrice:disabled::placeholder{color:#9db0c3;opacity:1}

/* v2.2.0: Mailbox auto-refresh/reply + truly compact History */
@media(min-width:1100px){
  #viewMailbox{grid-area:tool!important;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:0;min-height:320px;max-height:none!important;overflow:visible!important}
  #viewMailbox.active{display:block}
  .mailbox-list{max-height:560px;overflow:auto;grid-template-columns:1fr}
}
.mail-card{width:100%}.mail-body{padding:12px 14px}.mail-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.mail-actions{display:flex;justify-content:flex-end;margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}
.mailbox-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 5px;margin-left:6px;border-radius:9px;background:var(--accent);color:white;font-size:9px;font-weight:800;vertical-align:middle}.mailbox-badge.hidden{display:none!important}
.mail-compose-modal{width:min(680px,96vw)!important;max-width:680px!important}.mail-compose-grid{display:grid;gap:10px}.mail-compose-grid label{display:grid;gap:5px;color:var(--muted);font-size:12px}.mail-compose-grid input,.mail-compose-grid textarea{width:100%;box-sizing:border-box;background:#0e1217;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:9px 10px;outline:none}.mail-compose-grid textarea{min-height:190px;resize:vertical;font:inherit;line-height:1.45}.mail-compose-grid input:focus,.mail-compose-grid textarea:focus{border-color:var(--accent)}
.orders-table.history-table{width:max-content!important;min-width:930px!important;table-layout:fixed!important}
.orders-table.history-table th,.orders-table.history-table td{padding:4px 4px!important}
.history-table th:nth-child(1),.history-table td:nth-child(1){width:42px!important}
.history-table th:nth-child(2),.history-table td:nth-child(2),.history-table th:nth-child(9),.history-table td:nth-child(9){width:86px!important;min-width:86px!important;max-width:86px!important}
.history-table th:nth-child(3),.history-table td:nth-child(3){width:42px!important}.history-table th:nth-child(4),.history-table td:nth-child(4){width:34px!important}.history-table th:nth-child(5),.history-table td:nth-child(5){width:56px!important}
.history-table th:nth-child(6),.history-table td:nth-child(6),.history-table th:nth-child(7),.history-table td:nth-child(7),.history-table th:nth-child(8),.history-table td:nth-child(8),.history-table th:nth-child(10),.history-table td:nth-child(10){width:58px!important}
.history-table th:nth-child(11),.history-table td:nth-child(11){width:62px!important}.history-table th:nth-child(12),.history-table td:nth-child(12),.history-table th:nth-child(13),.history-table td:nth-child(13){width:44px!important}.history-table th:nth-child(14),.history-table td:nth-child(14),.history-table th:nth-child(15),.history-table td:nth-child(15){width:56px!important}.history-table th:nth-child(16),.history-table td:nth-child(16){width:82px!important}


/* ===== v2.2.1 Production UI polish / responsive parity ===== */
.version a{color:#65b2ff;text-decoration:none}.version a:hover{text-decoration:underline}

/* History stretches across the full desktop tool area; compact minimum is kept for smaller windows. */
.orders-table.history-table{width:100%!important;min-width:930px!important;max-width:none!important;table-layout:auto!important}
.history-table th:nth-child(16),.history-table td:nth-child(16){width:auto!important;min-width:100px!important}
#viewHistory .orders-table-wrap{width:100%!important}

/* Chart controls: main selectors + horizontally scrollable tool strip. */
.chart-controls{display:flex!important;align-items:center;gap:6px;min-width:0}
.chart-primary-controls{display:flex;align-items:center;gap:6px;min-width:0;flex:0 1 auto}
.chart-primary-controls #chartSymbol{width:150px;min-width:120px}
.chart-primary-controls #chartTf{width:74px;min-width:68px}
.chart-primary-controls #chartCount{width:74px;min-width:68px}
.chart-primary-controls #chartType{width:98px;min-width:92px}
.chart-tool-strip{display:flex;align-items:center;gap:5px;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding-bottom:2px}
.chart-tool-strip .chart-tool-btn{display:inline-flex!important;flex:0 0 auto;white-space:nowrap}

/* Close volume is a compact trading field, not a full-width text box. */
#closeVolume{width:9ch!important;min-width:92px;max-width:120px;margin-top:6px;padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:#0e1217;color:var(--text)}
.close-presets{max-width:390px}

/* Mobile/tablet feature parity: tools remain available via swipe instead of being removed. */
@media(max-width:1099px){
  .chart-controls{display:block!important;margin-bottom:8px}
  .chart-primary-controls{display:flex;width:100%;overflow-x:auto;padding-bottom:6px}
  .chart-primary-controls #chartSymbol{flex:1 0 145px}
  .chart-primary-controls #chartTf{flex:0 0 70px}
  .chart-primary-controls #chartCount{flex:0 0 70px}
  .chart-primary-controls #chartType{display:block!important;flex:0 0 100px}
  .chart-tool-strip{display:flex!important;width:100%;overflow-x:auto;padding-bottom:4px}
  .chart-tool-strip .chart-tool-btn,
  #chartObjectsBtn,#chartHistoryLeftBtn,#chartHistoryRightBtn,.chart-mode-btn{display:inline-flex!important}
  .indicator-panel:not(.hidden),
  .chart-settings-panel:not(.hidden),
  .chart-objects-panel:not(.hidden){display:flex!important;overflow-x:auto;flex-wrap:nowrap}
  .indicator-panel label,.chart-settings-panel label,.chart-objects-panel button{flex:0 0 auto}
  .oneclick-bar{display:grid!important;grid-template-columns:auto minmax(82px,1fr) 66px minmax(82px,1fr);gap:5px;overflow-x:auto}
  .oneclick-arm{font-size:9px;padding:6px 7px;white-space:nowrap}
  .oneclick-side{min-width:82px;padding:6px 7px}
  .oneclick-volume{min-width:66px}
  #oneClickStatus{grid-column:1/-1;min-height:0}
  .chart-tabs{display:none!important}
}
@media(max-width:430px){
  main{padding-left:8px;padding-right:8px}
  .chart-tool-strip .chart-tool-btn{font-size:10px;padding:7px 8px}
  .oneclick-bar{grid-template-columns:auto 90px 64px 90px}
  .oneclick-side b{font-size:13px}
  .oneclick-arm{font-size:8px}
  .trade-modal{max-height:92vh;overflow:auto}
}


/* ===== v2.2.2 multilingual + mobile/tablet polish ===== */
/* Market Watch: direction, symbol, Bid, Ask, Spread. Favorite star stays inside symbol cell. */
.quote-header,.quote-row{grid-template-columns:18px minmax(86px,1.05fr) minmax(74px,1fr) minmax(74px,1fr) 42px!important;column-gap:3px}
.quote-header span{font-variant-numeric:tabular-nums}.quote-header span:nth-child(n+3){text-align:right}
.quote-row{padding-left:9px;padding-right:9px}.quote-row>span:nth-child(n+3){text-align:right}
.quote-dir{display:grid;place-items:center;font-size:14px;font-weight:900;line-height:1}.quote-dir.up{color:var(--up)}.quote-dir.down{color:var(--down)}.quote-dir.flat{color:#607080;font-size:9px}
.quote-symbol-cell{display:flex;align-items:center;gap:2px;min-width:0}.quote-symbol-cell .quote-symbol{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.quote-symbol-cell .mw-star{margin-left:1px;flex:0 0 13px;width:13px;min-width:13px;text-align:center}
.quote-spread{font-size:12px;color:#b8c4d0;font-variant-numeric:tabular-nums;text-align:center!important}.quote-header span:nth-child(5){text-align:center!important}

/* Keep symbol selectors compact and stop focus decoration being clipped by scroll containers. */
.chart-primary-controls{padding:3px 3px 5px 3px;scroll-padding-inline:4px}
.chart-primary-controls select{outline:none!important;box-shadow:none}
.chart-primary-controls select:focus{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent) inset!important}
#tradeSymbol{width:min(100%,220px)!important;max-width:220px!important}
#tradeType{width:min(100%,220px)!important;max-width:220px!important}
#tradeVolume{width:min(100%,150px)!important;max-width:150px!important}
#tradePrice{width:min(100%,220px)!important;max-width:220px!important}

/* App-controlled fullscreen: avoids Android/Chrome native fullscreen system message. */
body.chart-pseudo-fullscreen{overflow:hidden!important}
#viewChart.pseudo-fullscreen{display:block!important;position:fixed!important;inset:0!important;z-index:1000!important;background:var(--bg)!important;padding:8px!important;overflow:auto!important;max-width:none!important;margin:0!important}
#viewChart.pseudo-fullscreen .chart-wrap{height:calc(100dvh - 190px)!important;min-height:300px!important}
#viewChart.pseudo-fullscreen #chartFullscreenBtn{position:relative;z-index:2}

/* Custom confirmation / alert / prompt dialogs, fully controlled by the terminal language. */
.ui-dialog-backdrop{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.66);display:grid;place-items:center;padding:16px}
.ui-dialog{width:min(520px,96vw);max-height:90dvh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.5);padding:16px}
.ui-dialog-title{font-size:17px;font-weight:800;margin:0 0 12px}.ui-dialog-message{white-space:pre-line;line-height:1.5;font-size:14px;color:#e6edf4;overflow-wrap:anywhere}
.ui-dialog-input{width:100%;margin-top:12px;padding:10px 12px;border-radius:9px;border:1px solid var(--line);background:#0e1217;color:var(--text);outline:none}.ui-dialog-input:focus{border-color:var(--accent)}
.ui-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.ui-dialog-actions button{min-width:92px}.ui-dialog-actions .primary{width:auto;margin:0}.ui-dialog-actions .danger-ok{background:#7b2e37}

/* Better touch targets for chart navigation; tap crosshair gives bar info on touch screens. */
.chart-tool-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#chartCursorTip{pointer-events:none;white-space:pre-line}

@media(max-width:1099px){
  .chart-primary-controls #chartSymbol{flex:0 0 124px!important;width:124px!important;min-width:124px!important;max-width:124px!important}
  .chart-primary-controls #chartTf{flex:0 0 62px!important;width:62px!important;min-width:62px!important}
  .chart-primary-controls #chartCount{flex:0 0 66px!important;width:66px!important;min-width:66px!important}
  .chart-primary-controls #chartType{flex:0 0 92px!important;width:92px!important;min-width:92px!important}
  .chart-tool-strip .chart-tool-btn{min-height:38px}
}
@media(max-width:430px){
  .quote-header,.quote-row{grid-template-columns:16px minmax(70px,1fr) minmax(64px,1fr) minmax(64px,1fr) 38px!important;column-gap:2px}
  .quote-header{padding-left:6px!important;padding-right:6px!important;font-size:9px}.quote-row{padding-left:6px!important;padding-right:6px!important}.quote-price{font-size:12px}.quote-spread{font-size:10px}.mw-star{font-size:11px!important}
  .chart-primary-controls #chartSymbol{flex-basis:112px!important;width:112px!important;min-width:112px!important;max-width:112px!important}
  #tradeSymbol,#tradeType,#tradePrice{max-width:190px!important}.trade-grid{align-items:start}
  #viewChart.pseudo-fullscreen{padding:4px!important}#viewChart.pseudo-fullscreen .chart-wrap{height:calc(100dvh - 174px)!important}
}
html[dir="rtl"] body{direction:rtl}
html[dir="rtl"] .orders-table,html[dir="rtl"] .quote-header,html[dir="rtl"] .quote-row,html[dir="rtl"] .chart-controls,html[dir="rtl"] .oneclick-bar{direction:ltr}
html[dir="rtl"] .section-head,html[dir="rtl"] .modal-head,html[dir="rtl"] .ui-dialog{direction:rtl}


/* v2.2.2 custom in-app color picker: avoids OS/browser-language native color dialog. */
.color-swatch{width:34px;height:24px;min-width:34px;padding:0!important;border:1px solid #73808d!important;border-radius:5px!important;background:var(--swatch,#ffffff)!important;box-shadow:inset 0 0 0 2px rgba(0,0,0,.22);vertical-align:middle;cursor:pointer}
.color-swatch:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),inset 0 0 0 2px rgba(0,0,0,.22)}
.color-picker-grid{display:grid;grid-template-columns:repeat(5,44px);gap:10px;margin:12px 0;justify-content:start}
.color-picker-choice{width:44px;height:36px;border:2px solid #657280;border-radius:8px;cursor:pointer;padding:0;background:var(--pick)!important}
.color-picker-choice.selected{border-color:#fff;box-shadow:0 0 0 2px var(--accent)}
.color-picker-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.color-picker-row input{width:130px;padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:#0e1217;color:var(--text);text-transform:uppercase}
@media(max-width:430px){.color-picker-grid{grid-template-columns:repeat(5,38px);gap:7px}.color-picker-choice{width:38px;height:34px}}


/* ===== v2.2.4 Journal + Market Watch polish ===== */
.journal-card{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}
.journal-head,.journal-row{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:start}
.journal-head{position:sticky;top:0;z-index:2;background:#111820;color:var(--muted);font-size:11px;border-bottom:1px solid var(--line);padding:8px 10px}
.journal-row{padding:7px 10px;border-bottom:1px solid #202a34;font-size:12px;line-height:1.35;font-variant-numeric:tabular-nums}
.journal-row:last-child{border-bottom:0}.journal-time{color:#8fa0b3;white-space:nowrap}.journal-message{overflow-wrap:anywhere}.journal-row.ok .journal-message{color:#b8e6c9}.journal-row.error .journal-message{color:#ff8c8c}.journal-row.info .journal-message{color:#d7e0e9}
.journal-rows{max-height:calc(100vh - 260px);min-height:180px;overflow:auto}
.quote-dir{width:16px;min-width:16px}.mw-star{width:13px!important;min-width:13px!important;padding:0!important}
@media(max-width:700px){.journal-head,.journal-row{grid-template-columns:78px minmax(0,1fr)}.journal-row{padding:7px 8px;font-size:11px}.journal-head{padding:7px 8px}.journal-time{font-size:10px}.journal-rows{max-height:calc(100dvh - 190px)}}


/* ===== v2.2.5 responsive table alignment ===== */
/* Market Watch: no direction triangle; separate narrow Favorites column; centered numeric columns. */
.quote-header,.quote-row{
  display:grid!important;
  grid-template-columns:minmax(64px,1.14fr) 20px minmax(56px,1fr) minmax(56px,1fr) minmax(34px,.52fr)!important;
  column-gap:2px!important;
  align-items:center!important;
}
.quote-header{padding:7px 6px!important}
.quote-row{padding:8px 6px!important}
.quote-header>span,.quote-row>span{min-width:0!important}
.quote-header>span:first-child,.quote-row>.quote-symbol{display:block!important;text-align:left!important}
.quote-header>span:nth-child(2),.quote-fav-cell{text-align:center!important}
.quote-header>span:nth-child(n+3),.quote-row>.quote-price,.quote-row>.quote-spread{text-align:center!important}
.quote-fav-cell{display:grid!important;place-items:center!important;width:20px!important;min-width:20px!important}
.quote-row .mw-star{display:grid!important;place-items:center!important;width:16px!important;min-width:16px!important;height:18px!important;margin:0!important;padding:0!important;font-size:12px!important;line-height:1!important}
.quote-dir{display:none!important}
.quote-symbol{font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.quote-price,.quote-spread{font-variant-numeric:tabular-nums!important;white-space:nowrap!important}
.quote-spread{font-size:11px!important}
@media(min-width:1100px){
  #viewQuotes .quote-header,#viewQuotes .quote-row{grid-template-columns:minmax(62px,1.12fr) 18px minmax(55px,1fr) minmax(55px,1fr) 34px!important;column-gap:1px!important}
  #viewQuotes .quote-header{font-size:9px!important;padding:6px 4px!important}
  #viewQuotes .quote-row{padding:6px 4px!important}
  #viewQuotes .quote-symbol,#viewQuotes .quote-price{font-size:11px!important}
  #viewQuotes .quote-spread{font-size:10px!important}
}
@media(max-width:1099px){
  .quote-header,.quote-row{grid-template-columns:minmax(72px,1.15fr) 22px minmax(62px,1fr) minmax(62px,1fr) minmax(38px,.52fr)!important;column-gap:3px!important}
  .quote-header{font-size:11px!important;padding:9px 8px!important}
  .quote-row{padding:10px 8px!important}
  .quote-symbol,.quote-price{font-size:14px!important}
  .quote-spread{font-size:12px!important}
}
@media(max-width:430px){
  .quote-header,.quote-row{grid-template-columns:minmax(68px,1.12fr) 20px minmax(58px,1fr) minmax(58px,1fr) 36px!important;column-gap:2px!important}
  .quote-header{padding:8px 5px!important;font-size:10px!important}
  .quote-row{padding:9px 5px!important}
  .quote-symbol,.quote-price{font-size:13px!important}
  .quote-spread{font-size:11px!important}
}

/* Trade and History use the same readable desktop density. */
@media(min-width:1100px){
  #viewTrade .orders-table,#viewHistory .orders-table.history-table{font-size:11px!important;line-height:1.35!important}
  #viewTrade .orders-table th,#viewTrade .orders-table td,#viewHistory .orders-table.history-table th,#viewHistory .orders-table.history-table td{padding:6px 7px!important}
  #viewHistory .orders-table.history-table{width:100%!important;min-width:1230px!important;table-layout:fixed!important}
  #viewHistory .history-table th:nth-child(1),#viewHistory .history-table td:nth-child(1){width:48px!important}
  #viewHistory .history-table th:nth-child(2),#viewHistory .history-table td:nth-child(2),#viewHistory .history-table th:nth-child(9),#viewHistory .history-table td:nth-child(9){width:128px!important;min-width:128px!important;max-width:128px!important}
  #viewHistory .history-table th:nth-child(3),#viewHistory .history-table td:nth-child(3){width:52px!important}
  #viewHistory .history-table th:nth-child(4),#viewHistory .history-table td:nth-child(4){width:42px!important}
  #viewHistory .history-table th:nth-child(5),#viewHistory .history-table td:nth-child(5){width:66px!important}
  #viewHistory .history-table th:nth-child(6),#viewHistory .history-table td:nth-child(6),#viewHistory .history-table th:nth-child(7),#viewHistory .history-table td:nth-child(7),#viewHistory .history-table th:nth-child(8),#viewHistory .history-table td:nth-child(8),#viewHistory .history-table th:nth-child(10),#viewHistory .history-table td:nth-child(10){width:74px!important}
  #viewHistory .history-table th:nth-child(11),#viewHistory .history-table td:nth-child(11){width:82px!important}
  #viewHistory .history-table th:nth-child(12),#viewHistory .history-table td:nth-child(12),#viewHistory .history-table th:nth-child(13),#viewHistory .history-table td:nth-child(13){width:58px!important}
  #viewHistory .history-table th:nth-child(14),#viewHistory .history-table td:nth-child(14),#viewHistory .history-table th:nth-child(15),#viewHistory .history-table td:nth-child(15){width:68px!important}
  #viewHistory .history-table th:nth-child(16),#viewHistory .history-table td:nth-child(16){width:auto!important;min-width:120px!important;max-width:none!important}
  #viewHistory .orders-table td.comment-cell{text-align:left!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
}

/* Journal: fixed no-comma timestamp and enough space on phones so message cannot overlap. */
.journal-head,.journal-row{grid-template-columns:142px minmax(0,1fr)!important;column-gap:10px!important}
.journal-time{white-space:nowrap!important;font-variant-numeric:tabular-nums!important}
@media(max-width:700px){
  .journal-head,.journal-row{grid-template-columns:126px minmax(0,1fr)!important;column-gap:9px!important}
  .journal-head{font-size:11px!important;padding:8px 10px!important}
  .journal-row{font-size:11px!important;padding:9px 10px!important;line-height:1.3!important}
  .journal-time{font-size:10.5px!important}
  .journal-message{padding-left:2px!important}
}
@media(max-width:360px){
  .journal-head,.journal-row{grid-template-columns:118px minmax(0,1fr)!important;column-gap:7px!important}
  .journal-row,.journal-head{padding-left:7px!important;padding-right:7px!important}
  .journal-time{font-size:10px!important}
}

/* ===== v2.2.5 R2: phone chart toolbar compactness ===== */
/* Keep the 30/50/75/100/150/200/300/500 selector readable, including the last digit. */
@media(max-width:1099px){
  .chart-primary-controls #chartCount{
    flex:0 0 82px!important;
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
  }
}

/* Phone only: compact, centered chart-control buttons; swipe remains available but scrollbar chrome is hidden. */
@media(max-width:430px){
  .chart-primary-controls,
  .chart-tool-strip,
  .indicator-panel,
  .chart-settings-panel,
  .chart-objects-panel{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  .chart-primary-controls::-webkit-scrollbar,
  .chart-tool-strip::-webkit-scrollbar,
  .indicator-panel::-webkit-scrollbar,
  .chart-settings-panel::-webkit-scrollbar,
  .chart-objects-panel::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
  }

  .chart-tool-strip{
    gap:6px!important;
    padding:4px 0 5px!important;
    align-items:center!important;
  }
  .chart-tool-strip .chart-tool-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 11px!important;
    border-radius:11px!important;
    font-size:11px!important;
    line-height:1!important;
    text-align:center!important;
  }
  #chartHistoryLeftBtn,
  #chartHistoryRightBtn,
  #chartCrosshairBtn,
  #chartAutoScrollBtn,
  #chartShiftBtn,
  #chartFullscreenBtn{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    padding:0!important;
  }
  .chart-primary-controls #chartCount{
    flex-basis:82px!important;
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
  }
}


/* ===== v2.2.5 R3: final workspace / Market Watch / chart tabs polish ===== */
/* Market Watch desktop: symmetric visual inset and wheel scrolling without scrollbar chrome. */
@media(min-width:1100px){
  #viewQuotes .quote-header,#viewQuotes .quote-row{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  #viewQuotes .table-card{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  #viewQuotes .table-card::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }
  /* Journal uses the same full-width lower workspace as Trade / History / Account. */
  #viewJournal{
    grid-area:tool!important;
    min-width:0!important;
    width:100%!important;
    background:var(--panel)!important;
    border:1px solid var(--line)!important;
    border-radius:8px!important;
    padding:10px 12px!important;
    margin:0!important;
  }
  #viewJournal.active{display:block!important}
  #viewJournal .section-head{margin:0 0 8px!important}
  #viewJournal .journal-card{width:100%!important;max-width:none!important}
  #viewJournal .journal-rows{max-height:420px!important;min-height:190px!important}

  /* Slightly shorter chart symbol selector frees useful room for tools. */
  .chart-primary-controls #chartSymbol{
    width:128px!important;
    min-width:118px!important;
    max-width:128px!important;
    flex:0 0 128px!important;
  }
  /* Tool strip still scrolls when needed, but the visible scrollbar is not part of the UI. */
  .chart-tool-strip{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  .chart-tool-strip::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
  }
}

/* Phone/tablet: Favorites and Market Watch Settings stay available next to Search. */
@media(max-width:1099px){
  .quote-tools{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 40px 40px auto!important;
    align-items:center!important;
    gap:6px!important;
  }
  .quote-tools #quoteSearch{width:100%!important;min-width:0!important}
  #mwFavoritesBtn,#mwSettingsBtn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    padding:0!important;
    margin:0!important;
    border-radius:10px!important;
    font-size:15px!important;
  }
  .quote-tools #quoteCount{justify-self:end!important;white-space:nowrap!important}
}
@media(max-width:380px){
  .quote-tools{grid-template-columns:minmax(0,1fr) 36px 36px auto!important;gap:5px!important}
  #mwFavoritesBtn,#mwSettingsBtn{width:36px!important;min-width:36px!important;max-width:36px!important;height:38px!important}
}


/* ===== v2.2.6 Market recovery + login branding/contact polish ===== */
/* Login header: obvious client-logo placeholder and centered language label. */
.login-brand-row{align-items:flex-start!important;gap:14px!important}
.brand-placeholder{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0;max-width:220px;padding:5px 9px;border:2px solid #dce5ee;border-radius:3px;box-sizing:border-box}
.brand-placeholder .brand-mark{width:54px;height:54px;min-width:54px;margin:0!important;border-radius:14px;font-size:21px}
.brand-logo-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f3f6fa;font-size:18px;font-weight:800;letter-spacing:.02em}
.lang-box{text-align:center!important;min-width:88px!important}
.lang-box span{text-align:center!important}
.lang-box select{display:block!important;margin-left:auto!important;margin-right:auto!important}
.developer-line strong{color:#aebed0;font-weight:650}
.contact-block{display:grid;gap:4px;margin-top:9px;padding-top:9px;border-top:1px solid #1d2a38}
.contact-block>span{color:#90a4b9;margin-bottom:1px}
.contact-block a{display:block;width:max-content;max-width:100%;overflow-wrap:anywhere}

/* Market Watch: small inner inset on Symbol side for visual left/right symmetry. */
.quote-header>span:first-child,.quote-row>.quote-symbol{padding-left:4px!important;box-sizing:border-box!important}

@media(max-width:430px){
  .login-screen{padding:12px!important}
  .login-card{padding:22px!important}
  .login-brand-row{gap:10px!important}
  .brand-placeholder{max-width:205px!important;padding:4px 7px!important;gap:8px!important}
  .brand-placeholder .brand-mark{width:50px;height:50px;min-width:50px;font-size:20px}
  .brand-logo-text{font-size:15px!important}
  .lang-box{min-width:78px!important}
  .developer-credit{font-size:11px!important}
}

/* ===== v2.2.7 effective trading status ===== */
#tradeModeBadge.trade-mode-off{color:var(--down)!important;border-color:#7a3038!important;background:rgba(255,107,107,.05)}

/* v2.2.8 login footer refinement */
.developer-line{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.developer-site{display:block}.copyright-line{margin-top:12px;padding-top:10px;border-top:1px solid #213042;text-align:center;color:#6f8399;font-size:11px;letter-spacing:.02em}
