/* Terminal — dense Solana 2 trading interface. */
#terminal-icon { top: 448px; }
#terminal-icon img { width: 46px; height: 46px; image-rendering: auto; }
.terminal-window { left: 12px; top: 12px; width: calc(100% - 24px); height: calc(100% - 24px); min-width: 900px; min-height: 540px; max-width: calc(100% - 24px); transform: none; overflow: hidden; }
.terminal-window.maximized { left: 6px; top: 6px; width: calc(100% - 12px); height: calc(100% - 12px); min-height: 0; max-width: calc(100% - 12px); }
.terminal-window .window-title img { width: 19px; height: 19px; object-fit: contain; }
.terminal-shell { --t-bg: #06080b; --t-panel: #090c10; --t-raised: #0e1218; --t-hover: #121720; --t-line: #1a1f27; --t-line-soft: #12171e; --t-text: #eef1f5; --t-muted: #777f8c; --t-dim: #4c5562; --t-accent: #5967f2; --t-accent-hover: #6876ff; --t-green: #27c79a; --t-red: #f34e6d; --t-yellow: #d9c14d; position: relative; display: flex; flex-direction: column; width: 100%; height: calc(100% - 30px); overflow: hidden; background: var(--t-bg); color: var(--t-text); font-family: "Pump Inter", Inter, Arial, sans-serif; font-size: 12px; line-height: 1.3; container-type: inline-size; scrollbar-color: #343b47 var(--t-bg); scrollbar-width: thin; }
.terminal-shell *, .terminal-shell *::before, .terminal-shell *::after { box-sizing: border-box; }
.terminal-shell [hidden] { display: none !important; }
.terminal-shell button, .terminal-shell input, .terminal-shell select { font-family: inherit; }
.terminal-shell button { color: inherit; cursor: pointer; }
.terminal-shell button, .terminal-shell input, .terminal-shell select { outline: 0; }
.terminal-shell button:focus-visible, .terminal-shell input:focus-visible, .terminal-shell select:focus-visible, .terminal-shell [tabindex]:focus-visible { outline: 1px solid var(--t-accent); outline-offset: -2px; }
.terminal-shell svg { display: block; width: 16px; height: 16px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.terminal-svg-library { position: absolute; width: 0; height: 0; overflow: hidden; }
.terminal-icon-button { display: inline-grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 5px; background: transparent; color: var(--t-muted); }
.terminal-icon-button:hover { background: var(--t-hover); color: var(--t-text); }
.terminal-topbar { display: flex; flex: 0 0 56px; align-items: center; gap: 20px; min-width: 0; padding: 0 20px; border-bottom: 1px solid var(--t-line); background: #07090d; }
.terminal-brand { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; padding: 0; border: 0; background: transparent; }
.terminal-brand img { width: 25px; height: 25px; }
.terminal-brand strong { color: #f5f6f8; font-size: 20px; font-weight: 650; letter-spacing: -.045em; }
.terminal-primary-nav { display: flex; align-items: center; align-self: stretch; gap: 25px; min-width: 0; }
.terminal-primary-nav button { position: relative; height: 100%; padding: 0; border: 0; background: transparent; color: #c4c8d0; font-size: 12px; font-weight: 550; white-space: nowrap; }
.terminal-primary-nav button:hover { color: #fff; }
.terminal-primary-nav button.active { color: var(--t-accent); }
.terminal-primary-nav button.active::after { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 2px; background: var(--t-accent); }
.terminal-actions { display: flex; align-items: center; gap: 10px; min-width: 0; margin-left: auto; }
.terminal-search { display: flex; align-items: center; gap: 8px; width: 240px; height: 33px; padding: 0 10px; border: 1px solid var(--t-line); border-radius: 18px; background: #090c11; color: var(--t-muted); }
.terminal-search input { width: 100%; min-width: 0; border: 0; background: transparent; color: var(--t-text); font-size: 11px; }
.terminal-search input::placeholder { color: #717885; }
.terminal-search kbd { padding: 0 4px; border: 1px solid #282e37; border-radius: 3px; color: var(--t-muted); font-family: inherit; font-size: 10px; }
.terminal-network-chip { display: flex; align-items: center; gap: 5px; height: 33px; padding: 0 10px; border: 1px solid var(--t-line); border-radius: 17px; background: #0d1117; white-space: nowrap; }
.terminal-network-chip img { width: 16px; height: 16px; }
.terminal-network-chip span { color: #b9c0ca; font-size: 10px; }
.terminal-buy-button:hover { background: var(--t-accent-hover); }
.terminal-wallet-chip { display: flex; align-items: center; gap: 7px; height: 33px; padding: 0 10px; border: 1px solid var(--t-line); border-radius: 17px; background: #0d1117; color: #c5cbd4; font-size: 10px; }
.terminal-user-avatar { display: grid; place-items: center; width: 31px; height: 31px; flex: 0 0 31px; border: 0; border-radius: 50%; background: #41627c; color: #fff; font-size: 10px; font-weight: 700; }
.terminal-subbar { display: flex; flex: 0 0 39px; align-items: center; gap: 3px; padding: 0 20px; border-bottom: 1px solid var(--t-line); }
.terminal-subbar .terminal-icon-button { width: 27px; height: 27px; }
.terminal-subbar-separator { width: 1px; height: 15px; margin-left: 4px; background: var(--t-line); }
.terminal-view { flex: 1 1 auto; min-width: 0; min-height: 0; }
.terminal-discover-view { display: flex; flex-direction: column; padding: 0 22px 16px; }
.terminal-discover-toolbar { display: flex; flex: 0 0 66px; align-items: center; gap: 25px; min-width: 0; padding-left: 45px; overflow-x: auto; scrollbar-width: none; }
.terminal-discover-toolbar::-webkit-scrollbar { display: none; }
.terminal-feed-tabs { display: flex; align-items: center; gap: 24px; height: 100%; }
.terminal-feed-tabs button { position: relative; height: 100%; padding: 0; border: 0; background: transparent; color: #717986; font-size: 18px; font-weight: 500; white-space: nowrap; }
.terminal-feed-tabs button.active { color: #eff1f5; font-weight: 650; }
.terminal-feed-tabs button small { position: absolute; top: 9px; right: -13px; color: var(--t-yellow); font-size: 6px; font-weight: 700; }
.terminal-feed-tabs button span { margin-left: 5px; font-size: 11px; }
.terminal-timeframes { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.terminal-timeframes button { min-width: 32px; height: 27px; padding: 0 6px; border: 0; border-radius: 4px; background: transparent; color: #a5acb6; font-size: 10px; }
.terminal-timeframes button.active { background: #171d27; color: var(--t-accent); }
.terminal-tool-group { display: flex; align-items: center; gap: 4px; }
.terminal-tool-group .terminal-icon-button { width: 25px; height: 27px; }
.terminal-quick-control { display: flex; align-items: center; gap: 7px; height: 31px; padding: 0 10px; border: 1px solid var(--t-line); border-radius: 16px; background: #090c11; color: #a5acb6; white-space: nowrap; }
.terminal-quick-control select { border: 0; background: #090c11; color: #d9dde4; font-size: 10px; cursor: pointer; }
.terminal-presets { display: flex; gap: 3px; }
.terminal-presets button { height: 27px; padding: 0 7px; border: 0; border-radius: 4px; background: transparent; color: #838b97; font-size: 10px; }
.terminal-presets button.active { background: #202638; color: #aab4ff; }
.terminal-discover-layout { display: flex; flex: 1 1 auto; min-height: 0; border: 1px solid var(--t-line); border-radius: 7px; overflow: hidden; background: var(--t-panel); }
.terminal-chain-rail { display: flex; flex: 0 0 45px; flex-direction: column; align-items: center; gap: 9px; padding-top: 15px; border-right: 1px solid var(--t-line); background: #080b0f; }
.terminal-chain-rail button { position: relative; display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 1px solid #2b321d; border-radius: 8px; background: #111710; }
.terminal-chain-rail button img { width: 18px; height: 18px; }
.terminal-chain-rail button b { position: absolute; right: -3px; bottom: -3px; display: grid; place-items: center; width: 12px; height: 12px; border-radius: 50%; background: var(--t-accent); color: #fff; font-size: 7px; }
.terminal-market-table { flex: 1 1 auto; min-width: 0; overflow: auto; }
.terminal-market-head, .terminal-market-row { display: grid; grid-template-columns: minmax(340px, 1.65fr) 112px 105px 100px 100px 82px minmax(205px, .95fr) 150px; align-items: center; min-width: 1190px; }
.terminal-market-head { position: sticky; z-index: 3; top: 0; height: 39px; border-bottom: 1px solid var(--t-line); background: #090c10; color: #737b87; font-size: 10px; }
.terminal-market-head > span { padding: 0 12px; }
.terminal-market-row { position: relative; min-height: 91px; border-bottom: 1px solid var(--t-line-soft); background: #090c10; cursor: pointer; }
.terminal-market-row:hover { background: #0d1117; }
.terminal-market-row > div { min-width: 0; padding: 9px 12px; }
.terminal-pair-cell { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 12px; }
.terminal-token-frame { position: relative; width: 64px; height: 64px; }
.terminal-token-frame > img { display: block; width: 64px; height: 64px; border: 1px solid #776b28; border-radius: 5px; object-fit: cover; background: #11151b; }
.terminal-token-chain { position: absolute; right: -4px; bottom: -4px; display: grid; place-items: center; width: 19px; height: 19px; border: 2px solid #090c10; border-radius: 50%; background: #111827; }
.terminal-token-chain img { width: 12px; height: 12px; }
.terminal-pair-copy { min-width: 0; }
.terminal-pair-title { display: flex; align-items: center; gap: 6px; min-width: 0; }
.terminal-pair-title strong { overflow: hidden; color: #f0f2f5; font-size: 14px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.terminal-pair-title > span { overflow: hidden; color: #a2a9b3; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.terminal-copy-button { display: inline-grid; place-items: center; width: 19px; height: 19px; flex: 0 0 19px; padding: 0; border: 0; background: transparent; color: #69727f; }
.terminal-copy-button svg { width: 12px; height: 12px; }
.terminal-pair-meta { display: flex; align-items: center; gap: 11px; margin-top: 8px; color: #828b97; font-size: 9px; }
.terminal-pair-meta > span { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.terminal-pair-meta > span:first-child { color: var(--t-green); font-size: 11px; }
.terminal-pair-meta svg { width: 12px; height: 12px; }
.terminal-mini-metrics { display: flex; align-items: center; gap: 11px; margin-top: 6px; color: #6f7885; font-size: 9px; }
.terminal-mini-metrics b { color: #b1b8c2; font-weight: 500; }
.terminal-sparkline { width: 100%; height: 42px; }
.terminal-number { color: #e3e6eb; font-size: 13px; font-weight: 600; white-space: nowrap; }
.terminal-subnumber { margin-top: 5px; font-size: 10px; }
.terminal-positive { color: var(--t-green) !important; }
.terminal-negative { color: var(--t-red) !important; }
.terminal-neutral { color: var(--t-muted) !important; }
.terminal-token-info { display: grid; gap: 6px; color: #8c949f; font-size: 9px; }
.terminal-info-line { display: flex; flex-wrap: wrap; gap: 7px 12px; }
.terminal-info-line span { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.terminal-info-line svg { width: 11px; height: 11px; }
.terminal-action-cell { display: flex; justify-content: flex-end; }
.terminal-buy-button { min-width: 127px; height: 34px; padding: 0 14px; border: 0; border-radius: 18px; background: var(--t-accent); color: #fff; font-size: 11px; font-weight: 650; white-space: nowrap; }
.terminal-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; min-height: 210px; padding: 30px; color: var(--t-muted); text-align: center; }
.terminal-empty strong { color: #d9dde3; font-size: 13px; }
.terminal-empty span { max-width: 340px; font-size: 11px; }
.terminal-empty button { margin-top: 5px; padding: 7px 13px; border: 1px solid var(--t-line); border-radius: 5px; background: var(--t-raised); color: #d9dde3; font-size: 11px; }
/* Pulse */
.terminal-pulse-view { display: flex; flex-direction: column; }
.terminal-pulse-toolbar { display: flex; flex: 0 0 72px; align-items: center; gap: 14px; min-width: 0; padding: 0 20px; }
.terminal-pulse-toolbar h1 { margin: 0; color: #f0f2f5; font-size: 21px; font-weight: 600; letter-spacing: -.03em; }
.terminal-pulse-chain { display: flex; align-items: center; gap: 6px; height: 29px; padding: 0 10px; border: 1px solid var(--t-line); border-radius: 15px; background: #0c1116; color: #b9c1cb; font-size: 10px; }
.terminal-pulse-chain img { width: 15px; height: 15px; }
.terminal-pulse-wallet-group { display: flex; align-items: center; gap: 7px; padding: 0; border: 0; background: transparent; color: #79818d; font-size: 10px; }
.terminal-pulse-tools { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.terminal-display-button { display: flex; align-items: center; gap: 7px; height: 31px; padding: 0 13px; border: 1px solid var(--t-line); border-radius: 16px; background: #0e1218; color: #d4d9df; font-size: 10px; }
.terminal-pulse-grid { display: grid; flex: 1 1 auto; grid-template-columns: repeat(3, minmax(0, 1fr)); min-height: 0; border-top: 1px solid var(--t-line); }
.terminal-pulse-stage { display: flex; flex-direction: column; min-width: 0; min-height: 0; border-right: 1px solid var(--t-line); }
.terminal-pulse-stage:last-child { border-right: 0; }
.terminal-stage-header { display: flex; flex: 0 0 43px; align-items: center; gap: 8px; min-width: 0; padding: 0 12px; border-bottom: 1px solid var(--t-line); }
.terminal-stage-header h2 { flex: 0 0 auto; margin: 0; color: #e9edf2; font-size: 14px; font-weight: 600; }
.terminal-stage-search { display: flex; flex: 1 1 100px; align-items: center; min-width: 50px; height: 26px; padding: 0 8px; border: 1px solid var(--t-line); border-radius: 13px; background: #090c11; }
.terminal-stage-search input { width: 100%; min-width: 0; border: 0; background: transparent; color: #d9dde3; font-size: 9px; }
.terminal-stage-search input::placeholder { color: #626b77; }
.terminal-stage-header .terminal-icon-button { width: 23px; height: 25px; }
.terminal-stage-header .terminal-presets { gap: 0; }
.terminal-stage-header .terminal-presets button { padding: 0 4px; font-size: 9px; }
.terminal-stage-list { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
.terminal-pulse-card { display: grid; grid-template-columns: 66px minmax(0, 1fr) 105px; gap: 10px; min-height: 97px; padding: 9px 11px; border-bottom: 1px solid var(--t-line-soft); cursor: pointer; }
.terminal-pulse-card:hover { background: #0d1117; }
.terminal-pulse-card .terminal-token-frame, .terminal-pulse-card .terminal-token-frame > img { width: 64px; height: 64px; }
.terminal-pulse-copy { min-width: 0; }
.terminal-pulse-copy .terminal-pair-title strong { font-size: 12px; }
.terminal-pulse-copy .terminal-pair-title > span { font-size: 10px; }
.terminal-pulse-copy .terminal-pair-meta { gap: 8px; margin-top: 6px; }
.terminal-pulse-copy .terminal-mini-metrics { gap: 8px; margin-top: 5px; }
.terminal-curve-track { width: 100%; height: 3px; margin-top: 7px; overflow: hidden; border-radius: 2px; background: #1c232b; }
.terminal-curve-track span { display: block; height: 100%; background: var(--t-green); }
.terminal-pulse-numbers { display: flex; flex-direction: column; align-items: flex-end; min-width: 0; }
.terminal-pulse-numbers .terminal-number { font-size: 11px; }
.terminal-pulse-numbers .terminal-subnumber { margin-top: 3px; font-size: 9px; }
.terminal-pulse-numbers .terminal-buy-button { min-width: 68px; height: 25px; margin-top: auto; padding: 0 8px; border-radius: 13px; font-size: 9px; }
.terminal-statusbar { display: flex; flex: 0 0 28px; align-items: center; gap: 17px; min-width: 0; padding: 0 15px; border-top: 1px solid var(--t-line); background: #080b0f; color: #7c8591; font-size: 9px; }
.terminal-statusbar > span { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.terminal-live-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--t-green); }
.terminal-statusbar button { display: inline-flex; align-items: center; gap: 5px; margin-left: auto; padding: 0; border: 0; background: transparent; color: #9aa3af; font-size: 9px; }
.terminal-statusbar svg { width: 11px; height: 11px; }
@container (max-width: 1220px) {
  .terminal-topbar { gap: 15px; padding-inline: 15px; }
  .terminal-primary-nav { gap: 17px; }
  .terminal-primary-nav button:nth-child(n+5) { display: none; }
  .terminal-search { width: 190px; }
  .terminal-network-chip span { display: none; }
  .terminal-discover-toolbar { gap: 16px; padding-left: 38px; }
  .terminal-feed-tabs { gap: 18px; }
  .terminal-feed-tabs button { font-size: 16px; }
  .terminal-pulse-card { grid-template-columns: 54px minmax(0, 1fr) 88px; gap: 8px; padding-inline: 8px; }
  .terminal-pulse-card .terminal-token-frame, .terminal-pulse-card .terminal-token-frame > img { width: 52px; height: 52px; }
  .terminal-stage-header { padding-inline: 8px; }
  .terminal-stage-header h2 { font-size: 12px; }
  .terminal-stage-header .terminal-presets { display: none; }
}
@container (max-width: 940px) {
  .terminal-primary-nav button:nth-child(n+4) { display: none; }
  .terminal-wallet-chip, .terminal-actions > .terminal-icon-button { display: none; }
  .terminal-search { width: 160px; }
  .terminal-discover-toolbar { padding-left: 5px; }
  .terminal-feed-tabs button:nth-child(n+4) { display: none; }
  .terminal-tool-group { display: none; }
  .terminal-pulse-grid { overflow-x: auto; grid-template-columns: repeat(3, minmax(360px, 1fr)); }
  .terminal-pulse-wallet-group { display: none; }
}
@media (max-width: 1100px) {
  .terminal-window { left: 6px; top: 6px; width: calc(100% - 12px); height: calc(100% - 12px); max-width: calc(100% - 12px); }
}
@media (max-width: 760px) {
  #terminal-icon { top: 12px; left: 104px; }
  .terminal-window, .terminal-window.maximized { left: 6px; top: 6px; width: calc(100% - 12px); height: calc(100% - 12px); min-width: 0; min-height: 0; max-width: calc(100% - 12px); max-height: none; transform: none; }
  .terminal-topbar { flex: 0 0 54px; gap: 13px; padding-inline: 12px; overflow-x: auto; }
  .terminal-brand strong { font-size: 18px; }
  .terminal-brand img { width: 22px; height: 22px; }
  .terminal-primary-nav { gap: 15px; }
  .terminal-primary-nav button:nth-child(n+3) { display: none; }
  .terminal-actions { gap: 7px; }
  .terminal-search { width: 145px; }
  .terminal-search kbd, .terminal-network-chip, .terminal-user-avatar { display: none; }
  .terminal-subbar { padding-inline: 12px; }
  .terminal-discover-view { padding: 0 8px 8px; }
  .terminal-discover-toolbar { flex-basis: 58px; gap: 12px; padding-left: 3px; }
  .terminal-feed-tabs { gap: 17px; }
  .terminal-feed-tabs button { font-size: 15px; }
  .terminal-feed-tabs button:nth-child(n+3) { display: none; }
  .terminal-timeframes { margin-left: 0; }
  .terminal-timeframes button { min-width: 27px; padding-inline: 4px; }
  .terminal-quick-control { padding-inline: 8px; }
  .terminal-presets { display: none; }
  .terminal-pulse-toolbar { flex-basis: 60px; padding-inline: 12px; }
  .terminal-pulse-toolbar h1 { font-size: 19px; }
  .terminal-pulse-tools .terminal-icon-button { display: none; }
  .terminal-pulse-grid { display: block; overflow-y: auto; }
  .terminal-pulse-stage { min-height: 260px; border-right: 0; border-bottom: 1px solid var(--t-line); }
  .terminal-stage-list { overflow: visible; }
  .terminal-pulse-card { grid-template-columns: 58px minmax(0, 1fr) 87px; }
  .terminal-pulse-card .terminal-token-frame, .terminal-pulse-card .terminal-token-frame > img { width: 56px; height: 56px; }
  .terminal-statusbar { gap: 12px; padding-inline: 10px; }
  .terminal-statusbar > span:nth-child(n+3) { display: none; }
}
/* Coin detail — Axiom-style workspace with observed Solana 2 data. */
.terminal-shell { font-variant-numeric: tabular-nums; }
.terminal-shell ::selection { background: #293461; color: #fff; }
.terminal-shell input { caret-color: var(--t-accent); }
.terminal-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.terminal-pair-view { display: flex; flex-direction: column; overflow: hidden; background: #080a0d; scrollbar-color: #343b47 #080a0d; }
.terminal-detail-layout { display: grid; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr) 320px; min-width: 0; min-height: 0; }
.terminal-pair-main { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.terminal-pair-header { display: flex; flex: 0 0 66px; align-items: center; gap: 18px; min-width: 0; padding: 9px 14px; border-bottom: 1px solid var(--t-line); }
.terminal-pair-identity { display: flex; flex: 0 1 320px; align-items: center; gap: 10px; min-width: 245px; }
#terminal-pair-back { flex: 0 0 24px; width: 24px; height: 32px; font-size: 18px; }
.terminal-pair-avatar { position: relative; flex: 0 0 42px; width: 42px; height: 42px; }
.terminal-pair-avatar > img { width: 42px; height: 42px; border: 1px solid #665f34; border-radius: 4px; object-fit: cover; background: var(--t-raised); }
.terminal-pair-avatar > span { position: absolute; right: -4px; bottom: -3px; display: grid; place-items: center; width: 16px; height: 16px; border: 2px solid #080a0d; border-radius: 50%; background: #1c2530; }
.terminal-pair-avatar > span img { width: 10px; height: 10px; }
.terminal-pair-name { min-width: 0; }
.terminal-pair-name > div { display: flex; align-items: center; gap: 8px; min-width: 0; }
.terminal-pair-name > div + div { margin-top: 6px; }
.terminal-pair-name strong { overflow: hidden; color: #f0f2f5; font-size: 15px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.terminal-pair-name > div > span { color: #929ba7; font-size: 11px; white-space: nowrap; }
#terminal-detail-age { color: var(--t-green); font-size: 10px; }
#terminal-detail-copy { display: inline-flex; align-items: center; gap: 4px; min-width: 0; padding: 0; border: 0; background: transparent; color: #8c96a3; font-size: 9px; }
#terminal-detail-copy:hover { color: #e3e8ef; }
#terminal-detail-copy svg { width: 10px; height: 10px; }
.terminal-pair-metrics { display: grid; flex: 1 1 auto; grid-template-columns: 1.25fr repeat(4, minmax(62px, 1fr)); gap: 14px; min-width: 0; margin: 0; }
.terminal-pair-metrics > div { min-width: 0; }
.terminal-pair-metrics dt { margin-bottom: 4px; color: #98a1ad; font-size: 10px; white-space: nowrap; }
.terminal-pair-metrics dd { overflow: hidden; margin: 0; color: #dce2e9; font-size: 13px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.terminal-pair-metrics .terminal-pair-mcap dd { color: #f5f6f8; font-size: 23px; font-weight: 650; letter-spacing: -.03em; }
.terminal-detail-pump { display: flex; flex: 0 0 auto; align-items: center; gap: 7px; height: 30px; padding: 0 10px; border: 1px solid #29313c; border-radius: 5px; background: #0e1218; color: #b8c0cb; font-size: 9px; }
.terminal-detail-pump:hover { border-color: #4a5667; color: #fff; }
.terminal-detail-pump img { width: 16px; height: 16px; }
.terminal-chart-panel { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; min-height: 310px; }
.terminal-chart-toolbar { display: flex; flex: 0 0 39px; align-items: center; gap: 16px; min-width: 0; padding: 0 11px; border-bottom: 1px solid var(--t-line-soft); }
.terminal-chart-timeframes { display: flex; align-items: center; gap: 3px; }
.terminal-chart-timeframes button { width: 31px; height: 26px; padding: 0; border: 0; border-radius: 3px; background: transparent; color: #a2aab6; font-size: 11px; }
.terminal-chart-timeframes button:hover { background: #121821; color: #fff; }
.terminal-chart-timeframes button.active { background: #1b2330; color: #e9edf3; }
.terminal-chart-tool-label { display: inline-flex; align-items: center; gap: 6px; color: #a4adba; font-size: 10px; }
.terminal-chart-tool-label svg { width: 15px; height: 15px; }
.terminal-chart-modes { display: flex; margin-left: auto; border: 1px solid #29313d; border-radius: 4px; overflow: hidden; }
.terminal-chart-modes button { height: 25px; padding: 0 9px; border: 0; border-right: 1px solid #29313d; background: transparent; color: #98a2af; font-size: 9px; }
.terminal-chart-modes button:last-child { border-right: 0; }
.terminal-chart-modes button.active { background: #1c2540; color: #aab6ff; }
.terminal-chart-currency { min-width: 43px; height: 25px; padding: 0 8px; border: 1px solid #29313d; border-radius: 4px; background: transparent; color: #aab4c1; font-size: 10px; }
.terminal-chart-currency:not(:disabled):hover { background: var(--t-hover); color: #fff; }
.terminal-chart-currency:disabled { cursor: default; opacity: .75; }
.terminal-warning { color: var(--t-yellow) !important; }
.terminal-chart-stage { display: flex; flex: 1 1 auto; min-width: 0; min-height: 0; }
.terminal-chart-rail { display: flex; flex: 0 0 40px; flex-direction: column; align-items: center; gap: 5px; padding-top: 10px; border-right: 1px solid var(--t-line-soft); color: #8c97a5; }
.terminal-chart-rail button { display: grid; place-items: center; width: 29px; height: 30px; padding: 0; border: 0; border-radius: 4px; background: transparent; color: #8c97a5; }
.terminal-chart-rail button:hover { background: #151b24; color: #eef2f6; }
.terminal-chart-rail button.active { background: #161e28; color: #d5dde7; }
.terminal-chart-rail button svg { width: 16px; height: 16px; }
.terminal-chart-rail > span { width: 18px; height: 1px; margin: 3px 0; background: #242c37; }
.terminal-chart-content { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; min-height: 0; }
.terminal-chart-heading { display: flex; flex: 0 0 35px; align-items: center; gap: 12px; padding: 9px 15px 0; }
.terminal-chart-heading h2 { margin: 0; color: #d0d7df; font-size: 12px; font-weight: 500; }
.terminal-chart-heading > span { color: #818b98; font-size: 9px; }
.terminal-chart-summary { display: flex; flex: 0 0 26px; flex-wrap: wrap; align-items: center; gap: 10px; min-width: 0; padding: 4px 15px 0; color: #8994a2; font-size: 9px; }
.terminal-chart-summary b { color: #b1bcca; font-weight: 500; }
.terminal-chart-volume { margin-left: auto; color: #929daa; }
.terminal-chart { flex: 1 1 auto; min-width: 0; min-height: 240px; padding: 0 3px; }
.terminal-chart > svg { display: block; width: 100%; height: 100%; cursor: crosshair; }
.terminal-chart-gridline { stroke: #1b2027; stroke-width: 1; vector-effect: non-scaling-stroke; }
.terminal-chart-grid-hidden .terminal-chart-gridline { opacity: 0; }
.terminal-chart-axis-label { fill: #939ca8; font-family: inherit; font-size: 10px; }
.terminal-chart-time-label { fill: #818c99; font-family: inherit; font-size: 9px; }
.terminal-chart-current-line { stroke: #3c8b7e; stroke-width: .8; stroke-dasharray: 3 3; vector-effect: non-scaling-stroke; }
.terminal-chart-current-label { fill: #28685f; }
.terminal-chart-current-text { fill: #c3f5e7; font-family: inherit; font-size: 10px; }
.terminal-chart-hover-line { stroke: #718094; stroke-width: .8; stroke-dasharray: 3 3; vector-effect: non-scaling-stroke; }
.terminal-chart-hover-price { fill: #2c3746; }
.terminal-chart-hover-text { fill: #e2e8f0; font-family: inherit; font-size: 10px; }
.terminal-chart-no-data { display: flex; flex: 1 1 auto; align-items: center; justify-content: center; min-height: 240px; padding: 24px; color: #8994a1; font-size: 12px; text-align: center; }
.terminal-chart-footer { display: flex; flex: 0 0 29px; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 0 12px 7px; color: #7d8896; font-size: 9px; }
#terminal-chart-range { overflow: hidden; text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.terminal-trading-column { min-width: 0; min-height: 0; overflow-y: auto; border-left: 1px solid var(--t-line); background: #090c10; scrollbar-color: #343b47 #090c10; scrollbar-width: thin; }
.terminal-dex-banner { border-bottom: 1px solid var(--t-line); background: #0b0f14; }
.terminal-dex-banner-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; height: 27px; padding: 0 11px; }
.terminal-dex-banner-heading strong { color: #aab4c1; font-size: 9px; font-weight: 550; letter-spacing: .3px; text-transform: uppercase; }
.terminal-dex-banner-heading span { color: #818d9b; font-size: 8px; }
.terminal-dex-banner-media { position: relative; display: grid; place-items: center; width: 100%; aspect-ratio: 3 / 1; overflow: hidden; border-top: 1px solid var(--t-line-soft); background: #0d1218; }
.terminal-dex-banner:has(#terminal-detail-banner[hidden]) .terminal-dex-banner-media { height: 42px; aspect-ratio: auto; }
#terminal-detail-banner { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
#terminal-detail-banner[hidden] { display: none; }
#terminal-detail-banner-empty { color: #8792a0; font-size: 9px; }
.terminal-volume-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; padding: 11px 11px 9px; border-bottom: 1px solid var(--t-line); }
.terminal-volume-summary > div:not(.terminal-volume-balance) { min-width: 0; }
.terminal-volume-summary span { display: block; margin-bottom: 5px; color: #929ca8; font-size: 9px; }
.terminal-volume-summary strong { display: block; overflow: hidden; color: #d4dae3; font-size: 10px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.terminal-volume-summary > div:nth-child(2) strong { color: var(--t-green); }
.terminal-volume-summary > div:nth-child(3) strong { color: var(--t-red); }
.terminal-volume-summary .terminal-volume-balance { display: flex; grid-column: 1 / -1; gap: 2px; height: 2px; margin-top: 4px; }
.terminal-volume-balance span { height: 100%; margin: 0; }
#terminal-volume-buy-bar { width: 50%; background: var(--t-green); }
#terminal-volume-sell-bar { width: 50%; background: var(--t-red); }
.terminal-trade-panel { border-bottom: 1px solid var(--t-line); }
.terminal-trade-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; padding: 11px 11px 0; }
.terminal-trade-tabs button { height: 32px; border: 0; border-radius: 5px; background: transparent; color: #a5adb8; font-size: 12px; font-weight: 600; }
.terminal-trade-tabs button:hover { background: #131920; }
.terminal-trade-tabs button.active[data-terminal-side="buy"] { background: #35d9a3; color: #062d23; }
.terminal-trade-tabs button.active[data-terminal-side="sell"] { background: #f45470; color: #fff; }
.terminal-trade-market { display: flex; align-items: center; justify-content: space-between; padding: 11px 12px 9px; }
.terminal-trade-market > div { display: flex; align-items: center; gap: 17px; height: 24px; }
.terminal-trade-market button { height: 100%; padding: 0; border: 0; border-bottom: 1px solid transparent; background: transparent; color: #8f9aa8; font-size: 10px; }
.terminal-trade-market button.active { border-bottom-color: #dce3ed; color: #e3e8ee; }
.terminal-trade-market button:disabled { cursor: not-allowed; opacity: .55; }
.terminal-trade-market > span { color: #8793a1; font-size: 9px; }
#terminal-trade-form { padding: 0 11px 12px; }
.terminal-trade-amount-label { display: flex; align-items: center; justify-content: space-between; margin: 0 1px 7px; color: #98a3b1; font-size: 9px; }
#terminal-trade-balance { overflow: hidden; max-width: 75%; color: #8c98a6; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.terminal-trade-amount { display: flex; align-items: center; gap: 7px; height: 41px; padding: 0 10px; border: 1px solid #2a3441; border-radius: 5px 5px 0 0; background: #0d1219; }
.terminal-trade-amount:focus-within { border-color: #448d7b; }
.terminal-trade-amount input { width: 100%; min-width: 0; border: 0; background: transparent; color: #e5eaf0; font-size: 15px; }
.terminal-trade-amount input::placeholder { color: #788494; }
.terminal-trade-amount > span { color: #a9b4c1; font-size: 10px; }
.terminal-trade-amount img { width: 15px; height: 15px; }
.terminal-trade-presets { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2px; padding: 5px; border: 1px solid #2a3441; border-top: 0; border-radius: 0 0 5px 5px; background: #0d1219; }
.terminal-trade-presets button { min-width: 0; height: 24px; padding: 0 2px; border: 0; border-radius: 3px; background: #121923; color: #b1bbc7; font-size: 9px; }
.terminal-trade-presets button:hover { background: #1b2930; color: #e5f7ed; }
.terminal-trade-feedback { min-height: 21px; margin: 6px 1px 2px; color: #96a2b0; font-size: 9px; line-height: 1.5; }
.terminal-trade-feedback.success { color: var(--t-green); }
.terminal-trade-feedback.error { color: var(--t-red); }
.terminal-trade-submit { width: 100%; height: 38px; border: 0; border-radius: 19px; background: #35d9a3; color: #052c22; font-size: 12px; font-weight: 650; }
.terminal-trade-submit:hover { background: #48e6b1; }
.terminal-trade-submit.sell { background: #f45470; color: #fff; }
.terminal-trade-submit:disabled { opacity: .5; cursor: wait; }
.terminal-trade-wallet { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 9px; width: calc(100% - 22px); min-height: 57px; margin: 11px; padding: 9px 10px; border: 1px solid #202a37; border-radius: 6px; background: #0e141d; color: #a8b4c2; text-align: left; }
.terminal-trade-wallet:hover { border-color: #35465c; background: #111924; }
.terminal-trade-wallet > svg { width: 17px; height: 17px; color: #8798ff; }
.terminal-wallet-copy, .terminal-wallet-value { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.terminal-wallet-copy strong { color: #d2dae4; font-size: 10px; font-weight: 550; }
.terminal-wallet-copy small, .terminal-wallet-value small { color: #8996a6; font-size: 8px; white-space: nowrap; }
.terminal-wallet-value { align-items: flex-end; }
.terminal-wallet-value strong { color: #b6c1ff; font-size: 10px; font-weight: 550; white-space: nowrap; }
.terminal-position { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 12px; border-bottom: 1px solid var(--t-line); }
.terminal-position dt { margin-bottom: 6px; color: #929daa; font-size: 9px; }
.terminal-position dd { overflow: hidden; margin: 0; color: #d7dfe7; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.terminal-position > div:last-child dd { color: var(--t-green); }
.terminal-order-presets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding: 10px 11px; border-bottom: 1px solid var(--t-line); }
.terminal-order-presets button { height: 27px; padding: 0 6px; border: 0; border-radius: 4px; background: transparent; color: #a1acb9; font-size: 9px; font-weight: 600; text-transform: uppercase; }
.terminal-order-presets button:hover, .terminal-order-presets button.active { background: #1b2340; color: #b4beff; }
.terminal-token-details-heading { display: flex; align-items: center; justify-content: space-between; height: 39px; padding: 0 12px; }
.terminal-token-details-heading h2 { margin: 0; color: #d5dce5; font-size: 11px; font-weight: 550; }
.terminal-token-details-heading > span { display: inline-flex; align-items: center; gap: 5px; color: #8d99a7; font-size: 8px; }
.terminal-token-details-heading .terminal-live-dot { width: 5px; height: 5px; }
.terminal-token-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 1px 0; background: var(--t-line-soft); }
.terminal-token-info-grid > div { min-width: 0; padding: 10px 12px; background: #0b0f14; }
.terminal-token-info-grid dt { margin-bottom: 5px; color: #929daa; font-size: 9px; }
.terminal-token-info-grid dd { overflow: hidden; margin: 0; color: #d8dfe7; font-size: 11px; font-weight: 550; text-overflow: ellipsis; white-space: nowrap; }
.terminal-curve-info { padding: 12px; border-bottom: 1px solid var(--t-line); }
.terminal-curve-info > div:first-child { display: flex; align-items: center; justify-content: space-between; color: #a3aebb; font-size: 10px; }
.terminal-curve-info strong { font-weight: 500; }
#terminal-curve-percent { color: var(--t-green); }
.terminal-detail-curve-track { height: 4px; margin-top: 9px; overflow: hidden; border-radius: 2px; background: #1b2530; }
.terminal-detail-curve-track span { display: block; width: 0; height: 100%; background: #35d9a3; }
.terminal-curve-info p { margin: 9px 0 5px; color: #a0acba; font-size: 9px; line-height: 1.5; }
.terminal-curve-info small { color: #8491a0; font-size: 9px; }
.terminal-trades-panel { display: flex; flex: 0 0 164px; flex-direction: column; min-width: 0; min-height: 0; border-top: 1px solid var(--t-line); }
.terminal-trades-header { display: flex; flex: 0 0 38px; align-items: center; justify-content: space-between; gap: 12px; padding: 0 12px; border-bottom: 1px solid var(--t-line); }
.terminal-trades-header nav { display: flex; align-items: center; gap: 21px; height: 100%; }
.terminal-trades-header nav button { height: 100%; padding: 0 1px; border: 0; border-bottom: 1px solid #dce3ed; background: transparent; color: #e1e6ee; font-size: 10px; }
.terminal-trades-header nav span { color: #919caa; font-size: 10px; }
.terminal-trades-header nav b { color: #b7c1cd; font-weight: 400; }
.terminal-trades-header > span { display: flex; align-items: center; gap: 6px; color: #8793a1; font-size: 9px; }
.terminal-trades-table-wrap { flex: 1 1 auto; min-height: 0; overflow: auto; scrollbar-color: #343b47 #080a0d; scrollbar-width: thin; }
.terminal-trades-table-wrap table { width: 100%; min-width: 710px; border-collapse: collapse; table-layout: fixed; }
.terminal-trades-table-wrap th { height: 29px; padding: 0 12px; border-bottom: 1px solid var(--t-line-soft); color: #8c97a4; font-size: 9px; font-weight: 400; text-align: left; }
.terminal-trades-table-wrap td { height: 31px; padding: 0 12px; border-bottom: 1px solid #141920; color: #b6c0cd; font-size: 10px; }
.terminal-trades-table-wrap tbody tr:hover { background: #0d1218; }
.terminal-trades-table-wrap th:first-child { width: 80px; }
.terminal-trades-table-wrap th:nth-child(2) { width: 65px; }
.terminal-trades-table-wrap th:nth-child(3) { width: 135px; }
.terminal-trades-table-wrap th:nth-child(4), .terminal-trades-table-wrap th:nth-child(5) { width: 135px; }
.terminal-trades-table-wrap th:last-child { width: 90px; }
.terminal-maker { color: #92a1ed; }
.terminal-block { color: #93a1b1; }
.terminal-trades-empty { height: 72px !important; color: #8995a3 !important; text-align: center; }
@container (max-width: 1260px) {
  .terminal-detail-layout { grid-template-columns: minmax(0, 1fr) 304px; }
  .terminal-pair-header { gap: 12px; }
  .terminal-pair-identity { flex-basis: 270px; }
  .terminal-pair-metrics { gap: 9px; }
  .terminal-detail-pump { width: 29px; padding: 0 6px; overflow: hidden; color: transparent; gap: 0; }
  .terminal-detail-pump img { flex: 0 0 16px; }
}
@container (max-width: 1000px) {
  .terminal-detail-layout { grid-template-columns: minmax(0, 1fr) 288px; }
  .terminal-pair-header { gap: 10px; padding-inline: 10px; }
  .terminal-pair-identity { flex: 0 1 230px; min-width: 210px; }
  .terminal-pair-metrics { gap: 7px; }
  .terminal-pair-metrics dt { font-size: 9px; }
  .terminal-pair-metrics dd { font-size: 11px; }
  .terminal-pair-metrics .terminal-pair-mcap dd { font-size: 19px; }
  .terminal-chart-toolbar { gap: 9px; }
  .terminal-chart-tool-label { display: none; }
  .terminal-chart-modes button { padding-inline: 6px; }
}
@container (max-width: 800px) {
  .terminal-pair-view { overflow: auto; }
  .terminal-detail-layout { display: flex; flex: 1 0 auto; flex-direction: column; min-height: 0; }
  .terminal-pair-main { display: contents; }
  .terminal-pair-header { order: 1; flex-basis: auto; min-height: 68px; padding: 10px; }
  .terminal-pair-identity { flex-basis: 100%; }
  .terminal-pair-metrics { flex-basis: 100%; }
  .terminal-chart-panel { order: 2; flex: 0 0 490px; border-bottom: 1px solid var(--t-line); }
  .terminal-chart { min-height: 300px; }
  .terminal-trading-column { display: grid; order: 3; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); overflow: visible; border-left: 0; }
  .terminal-dex-banner, .terminal-volume-summary { grid-column: 1 / -1; }
  .terminal-trade-panel { grid-column: 1; grid-row: 3 / span 5; border-right: 1px solid var(--t-line); }
  .terminal-trade-wallet, .terminal-position, .terminal-order-presets, .terminal-token-details { grid-column: 2; }
  .terminal-trade-wallet { align-self: start; }
  .terminal-trades-panel { order: 4; flex-basis: 220px; }
}
@container (max-width: 520px) {
  .terminal-pair-header { flex-wrap: wrap; gap: 13px; }
  .terminal-pair-identity { gap: 7px; min-width: 0; }
  .terminal-pair-name strong { font-size: 14px; }
  .terminal-pair-metrics { grid-template-columns: 1.3fr repeat(2, 1fr); gap: 12px 9px; }
  .terminal-pair-metrics dt { font-size: 9px; }
  .terminal-pair-metrics dd { font-size: 12px; }
  .terminal-pair-metrics .terminal-pair-mcap dd { font-size: 20px; }
  .terminal-detail-pump { display: none; }
  .terminal-chart-panel { flex-basis: 440px; }
  .terminal-chart-toolbar { flex-wrap: wrap; gap: 6px; height: auto; min-height: 39px; padding-block: 6px; }
  .terminal-chart-modes { margin-left: 0; }
  .terminal-chart-currency { margin-left: auto; }
  .terminal-chart-rail { flex-basis: 34px; }
  .terminal-chart-rail button { width: 26px; }
  .terminal-chart-heading { gap: 7px; padding-inline: 10px; }
  .terminal-chart-heading h2 { font-size: 11px; }
  .terminal-chart-heading > span { display: none; }
  .terminal-chart-summary { gap: 6px; padding-inline: 10px; font-size: 8px; }
  .terminal-chart-volume { display: none; }
  .terminal-chart { min-height: 250px; }
  .terminal-narrow-chart .terminal-chart-axis-label { font-size: 14px; }
  .terminal-narrow-chart .terminal-chart-time-label { font-size: 13px; }
  .terminal-narrow-chart .terminal-chart-current-text, .terminal-narrow-chart .terminal-chart-hover-text { font-size: 13px; }
  .terminal-chart-footer { flex-basis: 42px; align-items: flex-start; flex-direction: column; justify-content: flex-start; gap: 4px; padding-bottom: 9px; }
  #terminal-chart-range { max-width: 100%; text-align: left; }
  .terminal-trading-column { display: block; }
  .terminal-trade-panel { border-right: 0; }
  .terminal-trades-panel { flex-basis: 230px; }
  .terminal-trades-header > span { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .terminal-shell * { scroll-behavior: auto !important; transition: none !important; }
}
