/* ============ TERMINAL — Bloomberg-dark skin ============ */

.term-root {
  display: flex; flex-direction: column;
  height: 100%;
  background: #0a0f0a;
  color: #33ff66;
  font-family: 'IBM Plex Mono', monospace;
}

.term-mast { padding: 8px 12px; border-bottom: 1px solid #1f3b1f; }
.tm-name { font-family: 'VT323', monospace; font-size: 22px; color: #46ff46; }
.tm-sub { color: #1f9c42; margin-left: 10px; font-size: 11px; }

.term-stats {
  display: flex; flex-wrap: wrap; gap: 6px 22px;
  padding: 6px 12px;
  border-bottom: 1px solid #1f3b1f;
  font-size: 11px;
}
.tm-stat .tm-k { color: #1f9c42; margin-right: 6px; }
.tm-stat .tm-v { color: #e8ffe8; }

.term-body { flex: 1; overflow: auto; padding: 8px 12px; }

.mkt-table { width: 100%; border-collapse: collapse; }
.mkt-table td, .mkt-table th {
  text-align: right; padding: 4px 8px; font-size: 12px;
}
.mkt-table th {
  color: #1f9c42; font-weight: 400;
  border-bottom: 1px solid #1f3b1f;
}
.mkt-table td:first-child, .mkt-table th:first-child { text-align: left; }
.up { color: #46ff46; }
.dn { color: #ff5f56; }

.term-news {
  overflow: hidden;
  border-top: 1px solid #1f3b1f;
  padding: 4px 0;
  white-space: nowrap;
}
.tn-track {
  display: inline-block;
  padding-right: 50%;
  animation: marquee 30s linear infinite;
}
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.tn-track span { margin-right: 48px; font-size: 11px; color: #9fdf9f; }

.term-footer {
  padding: 3px 12px;
  font-size: 10px; color: #1f9c42;
  border-top: 1px solid #1f3b1f;
  display: flex; justify-content: space-between;
}

/* ---------- tabs ---------- */
.term-nav {
  display: flex; gap: 2px;
  padding: 6px 12px 0;
  border-bottom: 1px solid #1f3b1f;
}
.term-tab {
  font: inherit; font-size: 12px;
  background: none; border: none;
  color: #1f9c42; padding: 4px 10px;
  cursor: pointer;
}
.term-tab .n { color: #46ff46; }
.term-tab.active { color: #0a0f0a; background: #33ff66; }
.term-tab.active .n { color: #0a0f0a; }

/* ---------- board ---------- */
.best-bid { color: #46ff46; font-weight: 700; }
.best-ask { color: #ff5f56; font-weight: 700; }
.dim { color: #1f9c42; }
.edge-row td {
  color: #9fdf9f;
  border-bottom: 1px dashed #1f3b1f;
  padding-bottom: 8px;
  white-space: nowrap;
}

/* ---------- board: equity chart + side lists ---------- */
.board-wrap { display: flex; height: 100%; }
.board-chart {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column;
  padding: 8px 12px;
}
.bc-head { font-size: 11px; color: #1f9c42; margin-bottom: 6px; }
.bc-head span { color: #46ff46; }
#eq-chart {
  flex: 1; width: 100%;
  background: #060a06;
  border: 1px solid #1f3b1f;
}
.board-side {
  width: 240px; flex: none;
  border-left: 1px solid #1f3b1f;
  padding: 8px 10px;
  overflow: auto;
}
.bs-head {
  font-size: 10px; color: #1f9c42;
  letter-spacing: 1px;
  margin: 8px 0 4px;
}
.bs-head:first-child { margin-top: 0; }
.bs-row {
  display: flex; justify-content: space-between; gap: 8px;
  font-size: 11px; padding: 2px 0;
  color: #9fdf9f; white-space: nowrap;
}

/* ---------- log ---------- */
.log-line { padding: 2px 0; font-size: 11px; color: #9fdf9f; }
.log-line .lt { color: #1f9c42; }
.log-line .lp { color: #e8ffe8; }
.log-line.exec .la { color: #46ff46; font-weight: 700; }
.log-line.skip .la { color: #ffb000; }

/* ---------- how it works ---------- */
.hw {
  padding: 12px 16px;
  font-size: 12px; line-height: 1.6;
  color: #9fdf9f;
  white-space: pre-wrap;
}
.hw .h { color: #46ff46; font-weight: 700; }
