/* Let the workspace use the viewport; long datasets scroll within their panels. */
.market-chart{height:clamp(220px,34dvh,360px);padding:0;isolation:isolate}
.market-chart>div{position:absolute!important;inset:0}
.chart-tools{display:flex;align-items:center;gap:3px;margin-left:auto}
.chart-tools button{font-size:9px;min-height:28px;padding:3px 6px;border:1px solid #353d4b;border-radius:3px;color:#a3afc4;white-space:nowrap}
.chart-tools button[aria-pressed=true]{color:#acbfff;border-color:#5a6891;background:#8899dd12}
.chart-toolbar{gap:8px;flex-wrap:wrap}.chart-toolbar>span{margin-left:0}
.chart-bottom a{color:#9aa8bc;font-size:8px;letter-spacing:0}
.chart-unavailable{padding:30px;color:#b4bdcc;font-size:12px}
@media(min-width:1051px) and (min-height:650px){.market-chart{height:auto}}
@media(max-width:760px){.market-chart{height:clamp(220px,32dvh,300px)}.chart-tools button{min-height:32px}.chart-bottom{flex-wrap:wrap}}
.terminal-open .topline{display:none}
.terminal-open .header{height:58px;padding-inline:18px}
#terminal-root{max-width:none;padding:12px 16px 8px}
.terminal-top{margin-bottom:8px;gap:12px}
.terminal-top>div:first-child{display:flex;align-items:center;gap:16px}
.terminal-kicker{margin:0;font-size:8px;letter-spacing:1px}
.terminal-top h1{font-size:20px;letter-spacing:-.6px}
.terminal-top-actions .button{min-height:30px}
.market-overview{padding:8px 0;margin-bottom:10px;gap:20px}
.terminal-bottom{margin-top:8px;padding-top:7px;font-size:6px}
.coin-details{flex-shrink:0}
.coin-details>summary{cursor:pointer;padding:12px;font-size:11px;color:#b5c3ca;min-height:40px}
.coin-details>summary:hover{color:var(--lime)}
.coin-details>summary:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}
.coin-details .coin-info{padding:0 12px 12px}
.terminal-assistant{padding:9px;min-height:36px}
@media(min-width:1051px) and (min-height:650px){
  #terminal-root{height:calc(100dvh - 58px);display:flex;flex-direction:column;min-height:0}
  .terminal-top,.market-overview,.terminal-bottom{flex-shrink:0}
  .terminal-workspace{flex:1;min-height:0;align-items:stretch;gap:10px;grid-template-columns:clamp(230px,20vw,290px) minmax(0,1fr) clamp(255px,22vw,300px)}
  .market-explorer{display:flex;flex-direction:column;min-height:0}
  .market-explorer>*{flex-shrink:0}
  .explorer-heading{padding:12px 13px 9px}.explorer-heading h2{font-size:14px}
  .market-search{height:34px}
  .market-filters{padding:8px 10px;gap:3px}.market-filters button{min-height:28px;padding:5px 7px}
  .market-list-label{padding:6px 12px}
  .market-list{flex:1;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}
  .market-select{padding-block:10px}.explorer-foot{padding:9px 12px}
  .terminal-center{display:grid;grid-template-rows:minmax(290px,1fr) minmax(110px,.38fr);min-height:0;gap:10px}
  .chart-panel{display:flex;flex-direction:column;min-height:0}
  .chart-panel>*{flex-shrink:0}
  .selected-identity{padding:10px 14px 8px;gap:9px}.selected-identity h2{font-size:17px;margin-bottom:3px}.selected-identity .market-avatar{width:30px;height:30px}
  .market-metrics{padding-bottom:10px;margin-inline:14px;gap:10px}.market-metrics>div{gap:5px}.market-metrics .selected-price>strong{font-size:19px}
  .chart-toolbar{padding:5px 12px}.chart-ohlc{padding:7px 12px 3px;min-height:25px;gap:9px}
  .market-chart{flex:1;min-height:0;overflow:hidden}
  .market-chart>svg{width:100%;height:100%;min-height:0;aspect-ratio:auto}
  .chart-bottom{padding:6px 12px;letter-spacing:.3px}
  .activity-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
  .activity-header{flex-shrink:0;padding-inline:12px}.activity-tabs button{padding:10px 0}
  .terminal-table-wrap{flex:1;min-height:0;max-height:none;overscroll-behavior:contain}
  .terminal-table th,.terminal-table td{padding:8px 10px}
  .terminal-order-column{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#444c59 transparent;gap:8px;padding-right:2px}
  .terminal-order-column>*{flex-shrink:0}
  .order-ticket{padding:12px}
  .order-heading{margin-bottom:9px}.order-heading h2{font-size:15px}
  .order-coin{padding-bottom:8px;margin-bottom:8px;gap:7px}.order-coin .market-avatar{width:22px;height:22px}
  .order-sides{padding:3px}.order-sides button{min-height:30px}
  .order-market-label{margin:9px 0 7px}
  .order-amount-box{padding:8px 10px}.order-amount-box>div:not(.order-balance){margin:3px 0 6px}.order-amount-box input{font-size:24px}
  .order-presets{margin-top:6px}.order-presets button{min-height:27px}
  .order-result{padding:9px 0;gap:3px}.order-result strong{font-size:20px}
  .order-details{gap:6px;padding-top:8px}
  .order-ticket .error-text{margin:5px 0;min-height:0}.order-ticket .error-text:empty{display:none}
  .order-ticket .button{min-height:38px;margin-top:9px}
  .paper-explainer{font-size:8px;line-height:1.5;margin-top:7px}
}
/* Tablet widths switch panels instead of placing the order ticket below the chart. */
@media(min-width:761px) and (max-width:1050px){
  .mobile-terminal-tabs{display:flex;gap:5px;padding:4px;background:#111318;border:1px solid #3b424d;border-radius:5px;margin-bottom:10px}
  .mobile-terminal-tabs button{min-height:40px;flex:1;border-radius:3px;color:#a1b5c0;font-size:12px}
  .mobile-terminal-tabs button.active{background:var(--lime);color:#18210d}
  .terminal-workspace{display:block}.terminal-center,.terminal-order-column,.market-explorer{display:none;position:static}
  #terminal-root[data-view=markets] .market-explorer{display:flex;flex-direction:column}
  #terminal-root[data-view=chart] .terminal-center{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  #terminal-root[data-view=order] .terminal-order-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.7fr);gap:12px;align-items:start}
  .order-ticket{grid-row:1/4}.terminal-assistant{grid-column:2}
  .market-list{max-height:calc(100dvh - 390px);min-height:180px}
  .market-chart>svg{min-height:0;height:clamp(210px,34dvh,340px)}
  .terminal-table-wrap{max-height:180px}
}
@media(max-width:760px){
  .terminal-open .header{height:58px;padding-inline:14px}
  #terminal-root{padding:10px 12px}
  .terminal-top>div:first-child{display:block}.terminal-kicker{font-size:7px;margin-bottom:4px}.terminal-top h1{font-size:20px}
  .terminal-top-actions{gap:5px}.terminal-top-actions .button{min-height:28px}
  .market-overview{padding:7px 0;margin-bottom:8px;gap:12px}
  .mobile-terminal-tabs{margin-bottom:9px;top:4px}
  .explorer-heading{padding:12px 15px 10px}.market-filters{padding:8px 12px}.market-select{padding-block:11px}
  .selected-identity{padding:12px 14px 10px}.market-metrics{padding-bottom:12px}
  .chart-toolbar{padding:6px 12px}.chart-ohlc{padding-top:8px;min-height:28px}
  .market-chart>svg{min-height:0;height:clamp(190px,30dvh,280px);aspect-ratio:auto}
  .chart-bottom{padding:7px 10px}.terminal-table-wrap{max-height:180px}
  .order-ticket{padding:15px}.order-heading{margin-bottom:10px}.order-heading h2{font-size:19px}
  .order-coin{margin:10px 0;padding-bottom:10px}.order-market-label{margin:12px 0 9px}
  .order-amount-box{padding:11px 12px}.order-amount-box input{font-size:28px}.order-result{padding:12px 0}
  .order-details{gap:9px}.order-ticket .error-text{min-height:0;margin:9px 0}.order-ticket .error-text:empty{display:none}
  .order-ticket .button{margin-top:10px;min-height:44px}.paper-explainer{margin-top:8px;font-size:10px}
  .terminal-open .mobile-nav:not([hidden]){top:55px}
}
/* Short landscape windows and zoom retain document scrolling, never clipped controls. */
@media(min-width:1051px) and (max-height:649px){
  .market-list{max-height:360px}.market-chart>svg{min-height:180px;max-height:230px}.terminal-table-wrap{max-height:160px}
}
