/* Logical Market sizes. Setup's body zoom is the only global scale. */
:root{--dte-text-body:13px;--dte-text-data:10px;--dte-text-small:10px;--dte-text-caption:9px;--dte-text-heading:13px;--dte-text-metric:14px;--dte-control-scale:.6}
/* Market keeps its established sizes, now sharing the same semantic tokens. */
.mdi-window-body>.panel table{font-size:var(--dte-text-data)}
.mdi-window-body>.panel td{font-size:var(--dte-text-data)}
.mdi-window-body>.panel th{font-size:var(--dte-text-caption)}
.mdi-window-body>.panel .book-mid strong{font-size:var(--dte-text-metric)}
.liquidity-module{font:var(--dte-text-body) var(--sans)}
.liquidity-module table,.liquidity-module td,.liquidity-module .liquidity-ladder td,.liquidity-module .liquidity-live-books table,.liquidity-module .liquidity-live-books td{font:var(--dte-text-data) var(--mono);line-height:1.4}
.liquidity-module th,.liquidity-module .liquidity-live-books th{font:500 var(--dte-text-caption) var(--sans)}
.liquidity-module .liquidity-instrument{font-size:11px}
.liquidity-module .liquidity-mode,.liquidity-module .liquidity-stamp,.liquidity-module .liquidity-metrics span,.liquidity-module .liquidity-legend,.liquidity-module .liquidity-inline-summary,.liquidity-module .liquidity-inline-summary strong,.liquidity-module .liquidity-chip{font-size:var(--dte-text-caption)}
.liquidity-module .liquidity-metrics strong,.liquidity-module .liquidity-live-top strong{font:650 var(--dte-text-metric)/1.25 var(--sans)}
.liquidity-module .liquidity-bar-row,.liquidity-module .liquidity-event>.strategy-button,.liquidity-module .liquidity-live-header strong{font-size:var(--dte-text-small)}
.liquidity-module .liquidity-plot text{font-family:var(--sans);font-size:var(--dte-text-data)}
.liquidity-module .liquidity-plot text[font-size="26"]{font-size:var(--dte-text-metric)}
.liquidity-module .liquidity-control select{min-height:calc(32px * var(--dte-control-scale));height:calc(32px * var(--dte-control-scale));font-size:max(9px,calc(12px * var(--dte-control-scale)));padding:calc(7px * var(--dte-control-scale)) calc(9px * var(--dte-control-scale));line-height:1}
.liquidity-module .liquidity-control{font-size:var(--dte-text-caption);gap:3px}
.strategy-module.strategy-direct{position:relative;font:var(--dte-text-body) var(--sans);overflow:hidden}
.strategy-direct .direct-toolbar{height:28px;min-height:28px;display:flex;align-items:center;gap:6px;padding:0 6px;background:var(--panel-alt);border-bottom:1px solid var(--line);flex:none}
.strategy-direct .direct-context{font-size:var(--dte-text-caption);letter-spacing:.4px;color:var(--muted);font-weight:600}
.strategy-direct .direct-context:only-of-type{margin-right:auto}
.strategy-direct .direct-badge{font-size:var(--dte-text-caption);line-height:1;padding:3px 4px;border:1px solid var(--line);border-radius:3px;color:var(--primary);background:var(--primary-soft);margin-right:auto}
.strategy-direct .direct-tool{height:23px;min-width:24px;padding:0 3px;display:inline-flex;justify-content:center;align-items:center;font:14px var(--sans);border-radius:3px;color:var(--muted)}
.strategy-direct .direct-tool:hover{background:var(--hover);color:var(--primary)}
.strategy-direct .strategy-body{padding:6px;gap:6px;overflow:auto}
.strategy-direct .strategy-status.direct-status{min-height:18px;max-height:18px;padding:2px 6px;font-size:var(--dte-text-caption);line-height:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.strategy-direct .strategy-metrics{gap:0;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));border:1px solid var(--line);border-radius:3px;overflow:hidden}
.strategy-direct .strategy-metric{padding:5px 7px;border:0;border-right:1px solid var(--line);border-radius:0}
.strategy-direct .strategy-metric:last-child{border-right:0}
.strategy-direct .strategy-metric span{font-size:var(--dte-text-caption);margin-bottom:3px}
.strategy-direct .strategy-metric strong{font-size:var(--dte-text-metric);line-height:1.2}
.strategy-direct .strategy-table-wrap{border-radius:3px;flex:1;min-height:75px}
.strategy-direct table{min-width:320px}
.strategy-direct th,.strategy-direct td{padding:5px 7px;font-size:var(--dte-text-data);line-height:1.4}
.strategy-direct td{font-family:var(--mono)}
.strategy-direct th,.strategy-direct th .strategy-button{font-size:var(--dte-text-caption)}
.strategy-direct .strategy-cell-state{font-size:var(--dte-text-caption)}
.strategy-direct .strategy-button{min-height:calc(30px * var(--dte-control-scale));padding:calc(6px * var(--dte-control-scale)) calc(10px * var(--dte-control-scale));font-size:max(9px,calc(11px * var(--dte-control-scale)));line-height:1.15;border-radius:3px}
.strategy-direct td .strategy-button{min-height:18px;padding:2px 4px;font-size:var(--dte-text-caption)}
.strategy-direct .strategy-actions{gap:4px}
.strategy-direct input:not([type=checkbox]),.strategy-direct select{min-height:calc(32px * var(--dte-control-scale));height:calc(32px * var(--dte-control-scale));padding:calc(7px * var(--dte-control-scale)) calc(9px * var(--dte-control-scale));font-size:max(9px,calc(12px * var(--dte-control-scale)));line-height:1;border-radius:3px}
.strategy-direct .strategy-table-tools{gap:5px}
.strategy-direct .strategy-fields{gap:6px;grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}
.strategy-direct .strategy-field{gap:3px}
.strategy-direct .strategy-field>span{font-size:var(--dte-text-caption);font-weight:500}
.strategy-direct .strategy-count{font-size:var(--dte-text-caption)}
.strategy-direct .strategy-form{gap:6px}
.strategy-direct .strategy-preview,.strategy-direct .strategy-row-detail{padding:8px;font-size:var(--dte-text-small);border-radius:3px;line-height:1.4}
.strategy-direct .strategy-preview p{margin:3px 0}
.strategy-direct .strategy-section-title,.strategy-direct .strategy-row-detail h4{font-size:var(--dte-text-small)}
.strategy-direct .strategy-bars{padding:8px;border-radius:3px;min-height:90px;flex:1;display:flex;flex-direction:column}
.strategy-direct .strategy-bar-plot{flex:1;min-height:65px;height:auto}
.strategy-direct .strategy-bars figcaption{font-size:var(--dte-text-caption);margin-top:5px}
.strategy-direct .strategy-editor{min-height:140px;flex:1;resize:none;padding:7px;font:11px/1.5 var(--mono)}
.strategy-direct .strategy-console{font-size:var(--dte-text-data);line-height:1.5;padding:6px;min-height:75px;max-height:none;flex:1}
.strategy-direct .direct-drawer{position:absolute;z-index:15;inset:28px 0 0 auto;width:min(100%,420px);display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--line);box-shadow:-8px 0 20px #00102122;min-width:0}
.strategy-direct .direct-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--panel-alt);font-size:11px;flex:none}
.strategy-direct .direct-drawer-body{padding:10px;display:flex;flex-direction:column;gap:9px;overflow:auto;min-height:0;font-size:11px;line-height:1.5;overscroll-behavior:contain}
.strategy-direct .direct-drawer-body h3{font-size:var(--dte-text-heading);margin:0}
.strategy-direct .direct-drawer-body .strategy-note{font-size:11px;line-height:1.5}
.strategy-direct .direct-drawer-body>.strategy-table-tools{flex-wrap:wrap}
@container(max-width:370px){.strategy-direct .strategy-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-direct .strategy-body{padding:4px;gap:4px}.strategy-direct .strategy-metric{padding:4px 5px}.strategy-direct .strategy-fields{grid-template-columns:1fr 1fr}}
@container module (max-height:200px){.strategy-direct .strategy-status.direct-status{display:none}.strategy-direct .strategy-metric{padding:3px 5px}}
/* Touch pointers retain a practical hit area while keeping the visual layout compact. */
@media(pointer:coarse) and (max-width:650px){.strategy-direct .direct-tool{min-width:32px}.strategy-direct .direct-drawer select,.strategy-direct .direct-drawer input:not([type=checkbox]),.liquidity-module .liquidity-drawer select{min-height:28px;height:28px}.strategy-direct .direct-drawer .strategy-button{min-height:26px}}
