:root {
  --bg: #000000;
  --panel: #08090b;
  --panel-2: #101114;
  --panel-3: #050607;
  --line: rgba(255, 255, 255, 0.12);
  --line-soft: rgba(255, 255, 255, 0.07);
  --muted: #ffffff;
  --text: #fff8f0;
  --soft: #ffffff;
  /* de-orange the secondary text so it stops blending into the warm theme
     (overrides brand.css's warm --dim #E3A486 / --faint #A87863 on the terminal only) */
  --dim: #F3F1EF;
  --faint: #C6C4C9;
  --green: #28f0aa;
  --cyan: #2fe0ff;
  --amber: var(--gold, #ffc24a);
  --red: #ff5b6e;
  --blue: #a24bff;
  --shadow: 0 22px 70px rgba(0, 0, 0, 0.34);
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 78% -18%, rgba(255, 90, 31, 0.08), transparent 34%),
    radial-gradient(circle at 12% 110%, rgba(47, 224, 255, 0.035), transparent 30%),
    linear-gradient(180deg, #050607, #000 46%, #000),
    var(--bg);
  color: var(--text);
  letter-spacing: 0;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.72);
}

button,
input {
  font: inherit;
}

button {
  color: inherit;
}

.shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 100vh;
}

.scanner-page .shell {
  grid-template-columns: 312px minmax(0, 1fr);
}

.sidebar {
  display: none;
  border-right: 1px solid var(--line);
  background: rgba(3, 4, 6, 0.9);
  backdrop-filter: blur(18px);
  padding: 18px;
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: auto;
}

.scanner-page .sidebar {
  display: block;
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}

.mark,
.coin-avatar {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  display: grid;
  place-items: center;
  color: #1a0500;
  background: linear-gradient(135deg, var(--ember), var(--fire-hot));
  font-weight: 900;
  box-shadow: 0 12px 28px rgba(255, 90, 31, 0.2);
}

.mark.brand-g {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  color: #ff6a00;
  background:
    radial-gradient(circle at 46% 34%, rgba(255, 210, 106, 0.26), transparent 30%),
    radial-gradient(circle at 56% 56%, rgba(255, 58, 0, 0.36), transparent 50%),
    linear-gradient(135deg, #090504, #1b0700 58%, #050100);
  border: 1px solid rgba(255, 111, 31, 0.45);
  font-family: "Press Start 2P", var(--mono);
  font-size: 19px;
  line-height: 1;
  text-shadow:
    0 0 9px rgba(255, 90, 31, 0.9),
    1px 0 0 rgba(47, 224, 255, 0.42),
    -1px 0 0 rgba(255, 45, 155, 0.45);
  box-shadow: 0 0 22px rgba(255, 90, 31, 0.28);
}

.mark.brand-g::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: repeating-linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.08) 0 1px,
    transparent 1px 4px
  );
  mix-blend-mode: screen;
  opacity: 0.36;
}

.brand-name {
  font-weight: 900;
  font-size: 18px;
}

.brand-name .pixlogo {
  display: flex;
}

.brand-sub,
.title-block p,
small,
.metric span,
.selected-title span,
.intel-grid span,
.position-box span,
.search span,
.range-control span,
.mini-input span {
  color: var(--muted);
  font-weight: 650;
}

.title-block p,
.brand-sub {
  color: #ffffff;
}

.brand-sub,
small {
  font-size: 12px;
}

.search {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
}

.search input,
.position-box input {
  width: 100%;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: 7px;
  outline: none;
}

.search input {
  height: 42px;
  padding: 0 12px;
}

.search input:focus,
.position-box input:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 3px rgba(255, 138, 42, 0.13);
}

.nav-stack {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
}

.nav-item,
.segmented button,
.icon-btn,
.text-btn {
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 7px;
  cursor: pointer;
}

.nav-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 42px;
  padding: 0 12px;
  text-align: left;
}

.nav-item span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 850;
}

.nav-item.active,
.segmented button.active {
  border-color: rgba(255, 120, 40, 0.5);
  background: rgba(255, 90, 31, 0.13);
  color: var(--whitehot, #ffe8b0);
}

.nav-item b {
  color: var(--green);
}

.range-control,
.mini-input {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.range-control span {
  display: flex;
  justify-content: space-between;
}

.range-control b {
  color: var(--green);
}

.range-control input {
  width: 100%;
  accent-color: var(--green);
}

.mini-input input {
  height: 38px;
  width: 100%;
  padding: 0 10px;
  color: var(--text);
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: 7px;
  outline: none;
}

.sidebar-panel,
.score-card,
.trade-panel {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  margin-bottom: 14px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16);
}

.sidebar-panel.compact {
  padding-bottom: 12px;
}

.panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.panel-head span {
  color: #ffffff;
  font-weight: 950;
}

.rank-list {
  display: grid;
  gap: 8px;
}

.rank-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
  min-height: 34px;
  border-bottom: 1px solid var(--line-soft);
  padding-bottom: 8px;
}

.rank-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.rank-row strong {
  font-size: 13px;
}

.rank-row small {
  display: block;
}

.move-up {
  color: var(--green);
}

.move-down {
  color: var(--red);
}

.move-new {
  color: var(--ember, #ff8a2a);
}

.feed-meter {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.feed-meter div,
.metric,
.intel-grid div,
.position-box > div {
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 10px;
}

.feed-meter strong,
.metric strong {
  display: block;
  margin-top: 4px;
}

.main {
  min-width: 0;
  padding: 18px 18px 20px;
}

.scanner-page .main {
  padding: 24px 22px;
}

.scanner-page .topbar {
  padding: 8px 0 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

.scanner-page .title-block h1 {
  text-shadow:
    0 1px 0 #000,
    0 0 18px rgba(255, 90, 31, 0.2);
}

.scanner-page .title-mode {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-left: 1px solid rgba(255, 138, 42, 0.4);
  color: #fff8f0;
  text-shadow: 0 0 12px rgba(255, 138, 42, 0.18);
}

.topbar {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.scanner-page .topbar {
  display: flex;
}

.back-link {
  display: none;
  width: max-content;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: var(--muted);
  text-decoration: none;
  font-weight: 850;
}

.coin-page .back-link {
  display: inline-flex;
}

.back-link svg {
  width: 16px;
  height: 16px;
}

.title-block h1 {
  margin: 0;
  font-size: 24px;
  line-height: 1.12;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.title-mode {
  color: var(--dim, #c79e8e);
  font-size: 14px;
  font-weight: 900;
}

.title-block p {
  margin: 6px 0 0;
}

.top-actions {
  display: flex;
  gap: 8px;
}

.icon-btn {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  font-weight: 900;
}

.icon-btn.primary {
  color: #1a0500;
  border-color: transparent;
  background: linear-gradient(135deg, var(--ember), var(--fire-hot));
}

.icon-btn.active {
  color: var(--amber);
  border-color: rgba(246, 183, 86, 0.55);
  background: rgba(255, 201, 111, 0.09);
}

.icon-btn svg,
.text-btn svg,
.nav-item svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}

.icon-btn:hover,
.text-btn:hover,
.segmented button:hover,
.nav-item:hover {
  border-color: rgba(255, 138, 42, 0.55);
}

.metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.replay-stage {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-bottom: 18px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  background: #050607;
  box-shadow: 0 26px 80px rgba(0, 0, 0, 0.34);
  overflow: hidden;
}

.replay-stage.stage-focus {
  animation: stageFocus 900ms ease;
}

@keyframes stageFocus {
  0% {
    border-color: rgba(255, 90, 31, 0.78);
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.18), 0 26px 80px rgba(0, 0, 0, 0.34);
  }
  100% {
    border-color: rgba(255, 90, 31, 0.22);
    box-shadow: 0 26px 80px rgba(0, 0, 0, 0.34);
  }
}

.stage-copy {
  display: grid;
  grid-template-columns: minmax(250px, 1.45fr) repeat(5, minmax(112px, 0.7fr)) minmax(96px, 0.55fr);
  align-items: stretch;
  gap: 0;
  min-width: 0;
  padding: 0 14px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), transparent),
    #08090b;
}

.stage-coin {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  min-width: 0;
  padding: 10px 16px 9px 0;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.stage-avatar {
  width: 44px;
  height: 44px;
}

.stage-eyebrow {
  color: #c9c6cf;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.stage-coin h2 {
  margin: 1px 0;
  font-size: 22px;
  line-height: 1;
}

.stage-coin p {
  margin: 0;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.stage-contract {
  display: grid;
  grid-template-columns: minmax(0, max-content) 30px;
  gap: 8px;
  margin-top: 8px;
  max-width: 100%;
}

.stage-contract span {
  min-width: 0;
  height: 26px;
  display: flex;
  align-items: center;
  padding: 0 9px;
  color: var(--soft);
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(0, 0, 0, 0.18);
  border-radius: 6px;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.stage-contract .icon-btn {
  width: 30px;
  height: 26px;
}

.stage-stat-block {
  min-width: 0;
  padding: 10px 12px 9px;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.stage-stat-block span {
  display: block;
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
}

.stage-stat-block strong {
  display: block;
  margin-top: 6px;
  font-size: 20px;
  line-height: 1.05;
  color: #fbfaf9;
  text-shadow: 0 0 18px rgba(255, 255, 255, 0.06);
  white-space: nowrap;
}

.stage-stat-block small {
  display: block;
  margin-top: 7px;
  color: #ffffff;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.stage-stat-block small b {
  color: #f3f1ef;
}

.stage-stat-block.peak strong {
  color: var(--amber);
}

.stage-stat-block.peak strong.x-muted {
  color: #8f9bad;
}

.stage-stat-block.peak strong.x-one {
  color: #fff8f0;
}

.stage-stat-block.peak strong.x-two {
  color: #28f0aa;
}

.stage-stat-block.peak strong.x-five {
  color: #ffc24a;
}

.stage-stat-block.peak strong.x-ten {
  color: #fb923c;
}

.stage-stat-block.peak strong.x-twenty {
  color: #ff4fa8;
}

.stage-stat-block.peak strong.x-fifty {
  color: #a855f7;
}

.stage-stat-block.peak strong.x-hundred {
  color: #2fe0ff;
}

.stage-stat-block.peak strong.x-thousand {
  background-image: linear-gradient(90deg, #2fe0ff, #ff2d9b 48%, #ffc24a);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 14px rgba(255, 45, 155, 0.42));
}

.stage-signal {
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 14px 0 12px 14px;
}

.stage-signal .tier {
  width: max-content;
  min-height: 28px;
  display: inline-grid;
  place-items: center;
  padding: 0 10px;
  font-size: 11px;
}

.stage-signal strong {
  color: #f5f3f1;
  font-size: 13px;
}

.stage-chart-shell {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.stage-chart-top,
.stage-controls {
  display: flex;
  align-items: center;
  gap: 10px;
}

.stage-chart-top {
  order: 2;
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto;
  align-items: center;
  gap: 8px 12px;
  padding: 10px 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  background: #07080a;
}

.stage-chart-top strong,
.stage-chart-top span {
  display: block;
}

.stage-timeframes {
  grid-column: 1 / 2;
  grid-row: 2;
  justify-self: stretch;
  max-width: 100%;
  overflow-x: auto;
  scrollbar-width: thin;
}

.stage-chart-top span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.stage-chart-readout {
  margin-top: 5px;
  color: #ffffff;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.stage-chart-tools {
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: flex-end;
}

.chart-tool {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
}

.chart-tool:hover,
.chart-tool.active {
  color: #2fe0ff;
  border-color: rgba(47, 224, 255, 0.36);
  background: rgba(47, 224, 255, 0.09);
}

.chart-tool svg {
  width: 16px;
  height: 16px;
}

.stage-chart-frame {
  order: 1;
  position: relative;
  min-height: clamp(390px, 50vh, 510px);
  border: 0;
  border-radius: 0;
  background: #040506;
  overflow: hidden;
}

.stage-chart {
  position: absolute;
  inset: 0;
  min-height: clamp(390px, 50vh, 510px);
}

.stage-chart-frame::after {
  content: attr(data-watermark);
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
  color: rgba(255, 255, 255, 0.055);
  font-size: clamp(42px, 8vw, 92px);
  font-weight: 900;
  letter-spacing: 0;
  pointer-events: none;
}

.chart-transport {
  position: absolute;
  left: 50%;
  bottom: 18px;
  z-index: 3;
  display: inline-grid;
  grid-template-columns: 38px 38px 38px;
  gap: 7px;
  padding: 7px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 9px;
  background: rgba(4, 5, 6, 0.88);
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.34);
  opacity: 0;
  transform: translate(-50%, 8px);
  pointer-events: none;
  transition: opacity 140ms ease, transform 140ms ease;
}

.stage-chart-frame:hover .chart-transport,
.stage-chart-frame:focus-within .chart-transport {
  opacity: 1;
  transform: translate(-50%, 0);
  pointer-events: auto;
}

.stage-controls {
  order: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 9px 16px 13px;
  background: #07080a;
}

.stage-controls input {
  width: 100%;
  accent-color: #2fe0ff;
}

.stage-controls span {
  color: #ffffff;
  font-size: 12px;
  white-space: nowrap;
}

.stage-tabbar {
  order: 4;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 13px 16px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  background: #07080a;
}

.stage-tabbar button {
  height: 34px;
  padding: 0;
  color: var(--muted);
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  font-weight: 900;
  cursor: pointer;
}

.stage-tabbar button.active {
  color: var(--text);
  border-bottom-color: #2fe0ff;
}

.trade-cta {
  margin-left: auto;
  min-width: 148px;
  height: 38px;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #02100b;
  text-decoration: none;
  border-radius: 8px;
  background: linear-gradient(135deg, #35f4b1, #14c987);
  cursor: pointer;
  font: inherit;
  font-weight: 950;
}

.trade-cta svg {
  width: 17px;
  height: 17px;
}

.stage-lower {
  order: 5;
  padding: 14px 16px 18px;
  background: #07080a;
}

.stage-panel {
  display: none;
}

.stage-panel.active {
  display: block;
}

.stage-panel-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.stage-panel-grid > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.026);
}

.stage-panel-grid span,
.stage-panel-grid small {
  display: block;
  color: #ffffff;
  font-size: 12px;
}

.stage-panel-grid strong {
  display: block;
  margin-top: 5px;
  color: #fff8f0;
  font-size: 24px;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.stage-panel-grid small {
  margin-top: 6px;
}

.stage-trade-wide {
  height: 56px;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 12px;
  color: #02100b;
  text-decoration: none;
  border-radius: 10px;
  background: linear-gradient(135deg, #35f4b1, #14c987);
  box-shadow: 0 18px 42px rgba(40, 240, 170, 0.18);
  cursor: pointer;
  font: inherit;
  font-size: 20px;
  font-weight: 950;
}

.stage-trade-wide svg {
  width: 19px;
  height: 19px;
}

.stage-tape {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.stage-tape-row {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.17);
  font-size: 12px;
}

.stage-tape-row b {
  color: #28f0aa;
  text-transform: uppercase;
}

.stage-tape-row.sell b {
  color: var(--red);
}

.stage-tape-row span {
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.stage-tape-row strong {
  color: var(--soft);
  white-space: nowrap;
}

.stage-tape .empty-row {
  grid-column: 1 / -1;
}

.intel > .chart-head,
.intel > .replay-board,
.intel > .replay-controls,
.intel > .chart,
.intel > .data-strip {
  display: none;
}

.metric {
  min-height: 70px;
  padding: 12px;
  transition: border-color 140ms ease, transform 140ms ease;
}

.metric strong {
  font-size: 22px;
}

.metric:hover {
  border-color: rgba(255, 138, 42, 0.28);
}

.spotlight {
  display: none;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.scanner-page .replay-stage,
.scanner-page .back-link,
.scanner-page .metrics,
.scanner-page .attention-panel,
.scanner-page .intel {
  display: none;
}

.coin-page .metrics,
.coin-page .attention-panel,
.coin-page .desk {
  display: none;
}

.spot-pill {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  color: var(--soft);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 999px;
  cursor: pointer;
}

.spot-pill strong {
  color: var(--whitehot, #ffe8b0);
}

.spot-pill svg {
  width: 15px;
  height: 15px;
}

.attention-panel {
  border: 1px solid rgba(255, 90, 31, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.06), rgba(255, 255, 255, 0.022));
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 18px;
}

.attention-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.attention-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 58px;
  padding: 10px;
  border: 1px solid var(--line);
  background: rgba(5, 8, 12, 0.38);
  border-radius: 8px;
  cursor: pointer;
}

.attention-item:hover {
  border-color: rgba(255, 138, 42, 0.45);
}

.attention-item strong,
.attention-item span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.attention-item small {
  display: block;
  margin-top: 3px;
}

.attention-badge {
  color: #1a0500;
  background: var(--ember, #ff8a2a);
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 900;
}

.desk {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 18px;
  align-items: start;
}

.feed,
.intel {
  min-width: 0;
}

.feed-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.segmented {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--line);
  border-radius: 8px;
  max-width: 100%;
  overflow: auto;
}

.segmented button {
  height: 32px;
  min-width: 68px;
  padding: 0 10px;
  white-space: nowrap;
  color: var(--soft);
}

.segmented.small button {
  min-width: 46px;
  height: 30px;
  padding: 0 8px;
  font-size: 12px;
}

.density {
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
}

.table-wrap {
  border: 0;
  background: transparent;
  border-radius: 8px;
  overflow: auto;
}

table {
  width: 100%;
  min-width: 1080px;
  border-collapse: separate;
  border-spacing: 0 10px;
}

th,
td {
  padding: 13px 14px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
  background: rgba(255, 255, 255, 0.035);
  color: #ffffff;
}

th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(12, 7, 8, 0.96);
  color: #ffffff;
  font-size: 12px;
  text-transform: uppercase;
  backdrop-filter: blur(18px);
  font-weight: 950;
}

tbody td:first-child {
  border-left: 1px solid var(--line);
  border-radius: 10px 0 0 10px;
}

tbody td:last-child {
  border-right: 1px solid var(--line);
  border-radius: 0 10px 10px 0;
}

tbody tr {
  cursor: pointer;
}

tbody tr:hover,
tbody tr.selected {
  background: transparent;
}

tbody tr:hover td,
tbody tr.selected td {
  background: rgba(255, 90, 31, 0.105);
}

tbody tr.selected {
  outline: none;
}

tbody tr.selected td {
  border-color: rgba(255, 120, 40, 0.34);
}

.coin-cell {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 220px;
}

.rank-cell {
  width: 58px;
  color: var(--muted);
  text-align: center;
}

.rank-cell span {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-weight: 850;
}

tbody tr:nth-child(1) .rank-cell span {
  color: var(--amber);
  border-color: rgba(255, 201, 111, 0.76);
}

tbody tr:nth-child(2) .rank-cell span {
  color: #ffffff;
  border-color: rgba(244, 215, 200, 0.52);
}

tbody tr:nth-child(3) .rank-cell span {
  color: #ff9d45;
  border-color: rgba(255, 157, 69, 0.72);
}

.spark-cell {
  width: auto;
}

.spark-target {
  width: 100%;
  max-width: 164px;
  height: 46px;
}

.mini-pulse {
  width: 100%;
  height: 46px;
  display: block;
  filter: drop-shadow(0 0 10px rgba(255, 90, 31, 0.13));
}

.spark-loading {
  width: 100%;
  max-width: 164px;
  height: 46px;
  display: grid;
  place-items: center;
  color: var(--muted);
  border: 1px dashed var(--line);
  border-radius: 8px;
  font-size: 12px;
}

.spark-loading.muted {
  opacity: 0.7;
}

.token-img {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  object-fit: cover;
  background: #0c1116;
}

.coin-meta strong {
  display: block;
  max-width: 100%;
  color: #fff8f0;
  font-weight: 950;
  text-shadow: 0 1px 0 #000, 0 0 16px rgba(255, 255, 255, 0.12);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.coin-meta span,
.subtext {
  display: block;
  color: #ffffff;
  font-size: 12px;
  font-weight: 650;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.token-meta-strip {
  display: flex !important;
  align-items: center;
  gap: 7px;
  min-height: 18px;
  margin-top: 3px;
  color: var(--muted);
}

.token-age {
  display: inline-flex !important;
  align-items: center;
  color: #28f0aa;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}

.token-age::before {
  content: "";
  width: 6px;
  height: 6px;
  margin-right: 4px;
  border-radius: 99px;
  background: #28f0aa;
  box-shadow: 0 0 9px rgba(40, 240, 170, 0.55);
}

.token-social {
  width: 15px;
  height: 15px;
  display: inline-grid !important;
  place-items: center;
  color: #9aa7b8;
  border: 0;
  background: transparent;
  text-decoration: none;
}

.token-social:hover {
  color: #28f0aa;
}

.token-social svg {
  width: 13px;
  height: 13px;
}

.telegram-icon {
  width: 14px;
  height: 14px;
  display: block;
  fill: currentColor;
}

.token-social-x {
  color: inherit;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.stage-socials {
  min-height: 18px;
  margin: 5px 0 7px;
}

.stage-socials .token-meta-strip {
  margin: 0;
  gap: 8px;
}

.stage-socials .token-age {
  font-size: 12px;
}

.stage-socials .token-social {
  color: #a9b4c4;
}

.stage-socials .token-social:hover {
  color: #28f0aa;
}

.x-preview-card {
  position: absolute;
  z-index: 4000;
  display: none;
  max-height: min(420px, calc(100vh - 24px));
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    rgba(3, 4, 6, 0.98);
  box-shadow:
    0 20px 70px rgba(0, 0, 0, 0.58),
    0 0 28px rgba(255, 90, 31, 0.16);
  color: var(--soft);
  overflow: auto;
}

.x-preview-card.open {
  display: block;
}

.x-preview-state,
.x-preview-head {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 6px 4px;
}

.x-preview-state span,
.x-preview-head span {
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 6px;
  color: #ffffff;
  background: #050607;
  font-size: 12px;
  font-weight: 950;
}

.x-preview-state strong,
.x-preview-head strong {
  font-size: 13px;
  font-weight: 900;
}

.x-preview-body {
  min-height: 96px;
}

.x-preview-body .twitter-tweet,
.x-preview-body .twitter-timeline {
  margin: 0 !important;
}

.x-preview-body iframe {
  max-width: 100% !important;
}

.x-preview-fallback {
  margin: 6px 4px 10px;
  color: #a9b4c4;
  font-size: 12px;
  font-weight: 700;
}

.x-preview-open {
  display: inline-flex;
  margin: 8px 4px 2px;
  color: #28f0aa;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.x-preview-open:hover {
  color: #ffffff;
}

.token-contract-line,
.scanner-page .coin-meta .token-contract-line {
  display: flex !important;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.token-contract,
.scanner-page .coin-meta .token-contract {
  display: inline-block !important;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.token-copy,
.scanner-page .coin-meta .token-copy {
  all: unset;
  width: 12px !important;
  height: 12px !important;
  flex: 0 0 auto;
  display: inline-grid !important;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 2px;
  background: transparent;
  color: #9aa7b8;
  cursor: pointer;
  line-height: 1;
  opacity: 0.72;
}

.token-copy:hover,
.token-copy.copied,
.scanner-page .coin-meta .token-copy:hover,
.scanner-page .coin-meta .token-copy.copied {
  color: #28f0aa;
  background: transparent;
  opacity: 1;
}

.token-copy svg,
.scanner-page .coin-meta .token-copy svg {
  width: 10px !important;
  height: 10px !important;
  display: block;
  stroke-width: 2.4;
}

.signal-cell {
  display: flex;
  align-items: center;
  gap: 8px;
}

.action {
  display: inline-grid;
  place-items: center;
  height: 26px;
  min-width: 64px;
  padding: 0 8px;
  border-radius: 6px;
  border: 1px solid currentColor;
  font-weight: 900;
  font-size: 12px;
}

.fire {
  color: var(--fire, #ff5a1f);
  background: rgba(255, 90, 31, 0.12);
}

.watch {
  color: var(--ember, #ff8a2a);
  border-color: rgba(255, 138, 42, 0.46);
  background:
    linear-gradient(180deg, rgba(255, 138, 42, 0.18), rgba(255, 138, 42, 0.065)),
    rgba(12, 8, 4, 0.92);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 0 18px rgba(255, 138, 42, 0.08);
}

.wait {
  color: var(--amber);
  background: rgba(246, 183, 86, 0.1);
}

.avoid,
.fading {
  color: var(--red);
  background: rgba(255, 91, 110, 0.1);
}

.runner {
  color: var(--fire, #ff5a1f);
  background: rgba(255, 90, 31, 0.12);
}

.score-pill {
  color: #f5f3f1;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 6px;
  padding: 4px 7px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* rug-risk badge — launch-concentration risk surfaced on every row */
.rug-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 5px;
  padding: 2px 7px;
  border-radius: 5px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.02em;
  white-space: nowrap;
  width: max-content;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rug-badge.high { color: #ff8a80; background: rgba(255, 91, 110, 0.15); border: 1px solid rgba(255, 91, 110, 0.42); }
.rug-badge.med { color: #ffce7a; background: rgba(255, 194, 74, 0.12); border: 1px solid rgba(255, 194, 74, 0.34); }
.rug-badge.clean { color: #7ce0b0; background: rgba(40, 240, 170, 0.1); border: 1px solid rgba(40, 240, 170, 0.28); }
.rug-badge.unknown { color: #9aa0ab; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.12); }

.green {
  color: #28f0aa;
}

.red {
  color: #ff5b6e;
}

.amber {
  color: var(--amber);
}

.x-muted {
  color: #8f9bad;
}

.x-one {
  color: #fff8f0;
}

.x-two {
  color: #28f0aa;
  text-shadow: 0 0 14px rgba(40, 240, 170, 0.28);
}

.x-five {
  color: #ffc24a;
  text-shadow: 0 0 14px rgba(255, 194, 74, 0.3);
}

.x-ten {
  color: #fb923c;
  text-shadow: 0 0 16px rgba(251, 146, 60, 0.34);
}

.x-twenty {
  color: #ff4fa8;
  text-shadow: 0 0 18px rgba(255, 79, 168, 0.38);
}

.x-fifty {
  color: #a855f7;
  text-shadow: 0 0 20px rgba(168, 85, 247, 0.42);
}

.x-hundred {
  color: #2fe0ff;
  text-shadow: 0 0 22px rgba(47, 224, 255, 0.46);
}

.x-thousand {
  background-image: linear-gradient(90deg, #2fe0ff, #ff2d9b 48%, #ffc24a);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 14px rgba(255, 45, 155, 0.42));
}

.subtext.x-two,
.subtext.x-five,
.subtext.x-ten,
.subtext.x-twenty,
.subtext.x-fifty,
.subtext.x-hundred,
.subtext.x-thousand {
  font-weight: 850;
}

.mult-chip,
.peak-tag {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border-radius: 7px;
  border: 1px solid currentColor;
  background: rgba(255, 255, 255, 0.035);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(0, 0, 0, 0.28),
    0 0 18px rgba(255, 255, 255, 0.06),
    0 8px 22px rgba(0, 0, 0, 0.24);
}

.mult-chip {
  min-height: 28px;
  padding: 4px 8px;
  font-weight: 950;
}

.peak-tag {
  margin-top: 5px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.01em;
}

.mobile-row-metrics {
  display: none;
}

.peak-tag::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-radius: 99px;
  background: currentColor;
  box-shadow: 0 0 10px currentColor;
}

.mult-chip.x-two,
.peak-tag.x-two {
  color: #28f0aa;
  border-color: rgba(40, 240, 170, 0.9);
  background: linear-gradient(180deg, rgba(40, 240, 170, 0.24), rgba(40, 240, 170, 0.1));
}

.mult-chip.x-five,
.peak-tag.x-five {
  color: #ffd84d;
  border-color: rgba(255, 216, 77, 0.9);
  background: linear-gradient(180deg, rgba(255, 216, 77, 0.23), rgba(255, 216, 77, 0.1));
}

.mult-chip.x-ten,
.peak-tag.x-ten {
  color: #ff9f43;
  border-color: rgba(255, 159, 67, 0.92);
  background: linear-gradient(180deg, rgba(255, 159, 67, 0.25), rgba(255, 159, 67, 0.11));
}

.mult-chip.x-twenty,
.peak-tag.x-twenty {
  color: #ff4fa8;
  border-color: rgba(255, 79, 168, 0.92);
  background: linear-gradient(180deg, rgba(255, 79, 168, 0.25), rgba(255, 79, 168, 0.11));
}

.mult-chip.x-fifty,
.peak-tag.x-fifty {
  color: #c084fc;
  border-color: rgba(192, 132, 252, 0.94);
  background: linear-gradient(180deg, rgba(192, 132, 252, 0.27), rgba(192, 132, 252, 0.12));
}

.mult-chip.x-hundred,
.peak-tag.x-hundred {
  color: #2fe0ff;
  border-color: rgba(47, 224, 255, 0.94);
  background: linear-gradient(180deg, rgba(47, 224, 255, 0.28), rgba(47, 224, 255, 0.12));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 0 22px rgba(47, 224, 255, 0.16);
}

.mult-chip.x-thousand,
.peak-tag.x-thousand {
  color: #fff8f0;
  -webkit-background-clip: border-box;
  background-clip: border-box;
  border-color: rgba(255, 45, 155, 0.58);
  background: linear-gradient(135deg, rgba(47, 224, 255, 0.2), rgba(255, 45, 155, 0.18), rgba(255, 194, 74, 0.13));
  box-shadow: 0 0 26px rgba(255, 45, 155, 0.16);
  filter: none;
  text-shadow: 0 0 18px rgba(255, 194, 74, 0.36);
}

.star-btn {
  width: 32px;
  height: 32px;
  border-radius: 7px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--muted);
  cursor: pointer;
  font-weight: 900;
}

.star-btn.active {
  color: var(--amber);
  border-color: rgba(246, 183, 86, 0.55);
}

.scanner-page {
  --bg: #000000;
  --panel: #08090b;
  --panel-2: #101114;
  --panel-3: #050607;
  --line: rgba(255, 255, 255, 0.12);
  --line-soft: rgba(255, 255, 255, 0.07);
  --muted: #ffffff;
  --soft: #ffffff;
  background:
    radial-gradient(circle at 72% 8%, rgba(47, 224, 255, 0.11), transparent 25%),
    radial-gradient(circle at 18% 22%, rgba(168, 85, 247, 0.13), transparent 32%),
    radial-gradient(circle at 52% 118%, rgba(255, 194, 74, 0.08), transparent 34%),
    linear-gradient(180deg, #07070c 0%, #010203 44%, #000 100%);
  position: relative;
  isolation: isolate;
}

@media (min-width: 981px) {
  .scanner-page::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image:
      radial-gradient(circle, rgba(255, 194, 74, 0.52) 0 1px, transparent 1.8px),
      radial-gradient(circle, rgba(47, 224, 255, 0.34) 0 1px, transparent 1.8px),
      radial-gradient(circle, rgba(168, 85, 247, 0.42) 0 1px, transparent 1.7px);
    background-position: 22px 34px, 88px 121px, 180px 72px;
    background-size: 220px 180px, 280px 230px, 320px 260px;
    opacity: 0.22;
    mask-image: linear-gradient(180deg, transparent 0%, #000 12%, #000 88%, transparent 100%);
  }
}

.scanner-page .mark {
  background: linear-gradient(135deg, var(--ember, #ff8a2a), var(--fire-hot, #ff3b00));
  box-shadow: none;
}

.scanner-page .mark.brand-g {
  background:
    radial-gradient(circle at 46% 34%, rgba(255, 210, 106, 0.26), transparent 30%),
    radial-gradient(circle at 56% 56%, rgba(255, 58, 0, 0.36), transparent 50%),
    linear-gradient(135deg, #090504, #1b0700 58%, #050100);
  box-shadow: 0 0 20px rgba(255, 90, 31, 0.22);
}

.scanner-page .brand-name {
  color: var(--fire, #ff5a1f);
}

.scanner-page .nav-item,
.scanner-page .icon-btn,
.scanner-page .text-btn {
  border-color: rgba(255, 255, 255, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.028) 46%, rgba(0, 0, 0, 0.18)),
    rgba(10, 11, 13, 0.9);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(0, 0, 0, 0.44),
    0 12px 24px rgba(0, 0, 0, 0.3);
}

.scanner-page .nav-item.active {
  border-color: rgba(255, 138, 42, 0.72);
  background:
    linear-gradient(180deg, rgba(255, 138, 42, 0.22), rgba(255, 90, 31, 0.1)),
    rgba(26, 9, 4, 0.94);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    inset 0 -1px 0 rgba(0, 0, 0, 0.42),
    0 0 0 1px rgba(255, 138, 42, 0.12),
    0 12px 26px rgba(0, 0, 0, 0.28),
    0 0 28px rgba(255, 90, 31, 0.2);
}

.scanner-page .nav-item:hover,
.scanner-page .icon-btn:hover,
.scanner-page .text-btn:hover {
  border-color: rgba(255, 194, 74, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 194, 74, 0.1), rgba(255, 255, 255, 0.024)),
    rgba(12, 13, 15, 0.96);
}

.scanner-page .sidebar {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.008)),
    radial-gradient(circle at 22% 0%, rgba(255, 90, 31, 0.08), transparent 28%),
    #030405;
  box-shadow:
    inset -1px 0 0 rgba(255, 255, 255, 0.07),
    inset 1px 0 0 rgba(255, 255, 255, 0.025),
    18px 0 55px rgba(0, 0, 0, 0.28);
}

.scanner-page .search input,
.scanner-page .mini-input input {
  border-color: rgba(255, 255, 255, 0.14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.012)),
    rgba(8, 9, 11, 0.94);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(0, 0, 0, 0.46),
    0 10px 22px rgba(0, 0, 0, 0.16);
}

.scanner-page .search input:focus,
.scanner-page .mini-input input:focus {
  border-color: rgba(40, 240, 170, 0.62);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.46),
    0 0 0 3px rgba(40, 240, 170, 0.12),
    0 12px 28px rgba(0, 0, 0, 0.2);
}

.scanner-page .sidebar-panel,
.scanner-page .feed-meter div {
  position: relative;
  overflow: hidden;
  border-color: rgba(255, 255, 255, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.062), rgba(255, 255, 255, 0.016) 50%, rgba(0, 0, 0, 0.16)),
    rgba(8, 9, 11, 0.9);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    inset 0 -1px 0 rgba(0, 0, 0, 0.45),
    0 14px 30px rgba(0, 0, 0, 0.22);
}

.scanner-page .sidebar-panel::before,
.scanner-page .feed-meter div::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: linear-gradient(180deg, rgba(255, 194, 74, 0.85), rgba(255, 90, 31, 0.26), rgba(168, 85, 247, 0.48));
  opacity: 0.72;
  box-shadow: 0 0 14px rgba(255, 138, 42, 0.18);
}

.scanner-page .sidebar-panel > *,
.scanner-page .feed-meter div > * {
  position: relative;
  z-index: 1;
}

.scanner-page .panel-head {
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.065);
}

.scanner-page .rank-row {
  min-height: 40px;
  padding: 8px 9px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.01)),
    rgba(0, 0, 0, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 8px 16px rgba(0, 0, 0, 0.12);
}

.scanner-page .rank-row:hover {
  border-color: rgba(255, 138, 42, 0.26);
  background:
    linear-gradient(180deg, rgba(255, 138, 42, 0.075), rgba(255, 255, 255, 0.014)),
    rgba(2, 3, 4, 0.38);
}

.scanner-page .rank-row:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  padding-bottom: 8px;
}

.scanner-page .range-control input {
  filter: drop-shadow(0 3px 8px rgba(40, 240, 170, 0.14));
}

.scanner-page .desk {
  grid-template-columns: 1fr;
  gap: 0;
}

.scanner-page .feed-toolbar {
  align-items: center;
  margin: 10px 0 18px;
  padding: 10px 0 6px;
}

.scanner-page .segmented {
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

.scanner-page .segmented button {
  height: 42px;
  min-width: 118px;
  padding: 0 20px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.035) 48%, rgba(0, 0, 0, 0.18)),
    rgba(16, 17, 20, 0.92);
  color: #ffffff;
  font-weight: 950;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    inset 0 -1px 0 rgba(0, 0, 0, 0.46),
    0 12px 28px rgba(0, 0, 0, 0.34);
}

.scanner-page .segmented button.active {
  color: #ffffff;
  border-color: rgba(40, 240, 170, 0.68);
  background:
    linear-gradient(180deg, rgba(40, 240, 170, 0.24), rgba(40, 240, 170, 0.08)),
    rgba(5, 18, 14, 0.94);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.24),
    inset 0 -1px 0 rgba(0, 0, 0, 0.42),
    0 0 0 1px rgba(40, 240, 170, 0.12),
    0 13px 28px rgba(0, 0, 0, 0.32),
    0 0 30px rgba(40, 240, 170, 0.24);
}

.scanner-page .density {
  color: #ffffff;
  font-weight: 950;
  padding: 0 2px;
  text-shadow: 0 0 14px rgba(255, 255, 255, 0.12);
}

.scanner-page .table-wrap {
  border-radius: 0;
  overflow-x: hidden;
}

.scanner-page table {
  min-width: 0;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}

.scanner-page th,
.scanner-page td {
  padding: 13px 10px;
  border-top: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  background: transparent;
  overflow: hidden;
  text-overflow: ellipsis;
}

.scanner-page th:nth-child(1),
.scanner-page td:nth-child(1) {
  width: 54px;
}

.scanner-page th:nth-child(2),
.scanner-page td:nth-child(2) {
  width: 22%;
}

.scanner-page th:nth-child(3),
.scanner-page td:nth-child(3) {
  width: 14%;
}

.scanner-page th:nth-child(4),
.scanner-page td:nth-child(4) {
  width: 12%;
}

.scanner-page th:nth-child(5),
.scanner-page td:nth-child(5),
.scanner-page th:nth-child(6),
.scanner-page td:nth-child(6),
.scanner-page th:nth-child(7),
.scanner-page td:nth-child(7),
.scanner-page th:nth-child(8),
.scanner-page td:nth-child(8) {
  width: 10%;
}

.scanner-page th:nth-child(9),
.scanner-page td:nth-child(9) {
  width: 6%;
}

.scanner-page th:nth-child(10),
.scanner-page td:nth-child(10) {
  width: 42px;
  padding-right: 0;
}

.scanner-page th {
  color: #8f9bad;
  background: rgba(0, 0, 0, 0.96);
  font-size: 11px;
  letter-spacing: 0.2em;
  text-shadow: 0 1px 0 #000;
}

.scanner-page tbody td:first-child,
.scanner-page tbody td:last-child {
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}

.scanner-page tbody tr:hover td {
  background: rgba(255, 255, 255, 0.045);
}

.scanner-page tbody tr.selected td {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(40, 240, 170, 0.035);
}

.scanner-page .coin-cell {
  min-width: 0;
}

.scanner-page .token-img {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
}

.scanner-page .coin-meta strong,
.scanner-page td > strong {
  font-size: 17px;
  color: #ffffff;
  font-weight: 950;
  text-shadow: 0 1px 0 #000, 0 0 18px rgba(255, 255, 255, 0.16);
}

.scanner-page .subtext,
.scanner-page .coin-meta span {
  font-size: 13px;
  color: #ffffff;
  font-weight: 700;
  text-shadow: 0 1px 0 #000;
}

.scanner-page .subtext.green,
.subtext.green {
  color: #28f0aa;
}

.scanner-page .subtext.red,
.subtext.red {
  color: #ff5b6e;
}

@media (min-width: 981px) {
  .scanner-page .table-wrap {
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.085);
    border-radius: 10px;
    padding: 0 0 8px;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.006)),
      rgba(2, 3, 4, 0.94);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.06),
      0 20px 70px rgba(0, 0, 0, 0.34);
  }

  .scanner-page .table-wrap::before {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: 0;
    pointer-events: none;
    border-radius: 11px;
    padding: 1px;
    background: linear-gradient(135deg, rgba(255, 194, 74, 0.32), rgba(40, 240, 170, 0.26), rgba(168, 85, 247, 0.26));
    -webkit-mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask:
      linear-gradient(#000 0 0) content-box,
      linear-gradient(#000 0 0);
    mask-composite: exclude;
    opacity: 0.74;
  }

  .scanner-page .table-wrap::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    top: -1px;
    height: 1px;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, rgba(255, 194, 74, 0.75), rgba(40, 240, 170, 0.48), transparent);
    filter: drop-shadow(0 0 10px rgba(255, 194, 74, 0.28));
  }

  .scanner-page table {
    position: relative;
    z-index: 1;
  }

  .scanner-page table {
    border-collapse: separate;
    border-spacing: 0 8px;
  }

  .scanner-page th {
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.018)),
      #030405;
    color: #d9e2ee;
    font-size: 11px;
    font-weight: 950;
    line-height: 1.2;
    letter-spacing: 0.2em;
    text-shadow: 0 1px 0 #000, 0 0 14px rgba(255, 255, 255, 0.12);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(255, 255, 255, 0.08);
  }

  .scanner-page th:first-child {
    border-radius: 8px 0 0 8px;
  }

  .scanner-page th:last-child {
    border-radius: 0 8px 8px 0;
  }

  .scanner-page th:not(:last-child),
  .scanner-page td:not(:last-child) {
    border-right: 1px solid rgba(255, 255, 255, 0.064);
  }

  .scanner-page tbody td {
    border-top: 1px solid rgba(255, 255, 255, 0.035);
    border-bottom: 1px solid rgba(255, 255, 255, 0.095);
    background: rgba(255, 255, 255, 0.012);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.055),
      inset 0 -1px 0 rgba(0, 0, 0, 0.42),
      0 12px 24px rgba(0, 0, 0, 0.18);
  }

  .scanner-page tbody td:first-child {
    border-left: 1px solid rgba(255, 255, 255, 0.085);
    border-radius: 9px 0 0 9px;
  }

  .scanner-page tbody td:last-child {
    border-right: 1px solid rgba(255, 255, 255, 0.085);
    border-radius: 0 9px 9px 0;
  }

  .scanner-page tbody tr:nth-child(odd) td {
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.026), rgba(255, 255, 255, 0.008)),
      rgba(5, 6, 7, 0.88);
  }

  .scanner-page tbody tr:nth-child(even) td {
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.014), rgba(255, 255, 255, 0.004)),
      rgba(1, 2, 3, 0.93);
  }

  .scanner-page tbody td:nth-child(4),
  .scanner-page tbody td:nth-child(5),
  .scanner-page tbody td:nth-child(6),
  .scanner-page tbody td:nth-child(7),
  .scanner-page tbody td:nth-child(8) {
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.028);
  }

  .scanner-page th:nth-child(3),
  .scanner-page th:nth-child(8) {
    color: #28f0aa;
    text-shadow: 0 0 16px rgba(40, 240, 170, 0.22);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(40, 240, 170, 0.58);
  }

  .scanner-page th:nth-child(4) {
    color: #ff9f43;
    text-shadow: 0 0 16px rgba(255, 159, 67, 0.2);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(255, 159, 67, 0.52);
  }

  .scanner-page th:nth-child(5),
  .scanner-page th:nth-child(6) {
    color: #ffc24a;
    text-shadow: 0 0 16px rgba(255, 194, 74, 0.18);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(255, 194, 74, 0.55);
  }

  .scanner-page th:nth-child(7),
  .scanner-page th:nth-child(9) {
    color: #9aa7ff;
    text-shadow: 0 0 16px rgba(154, 167, 255, 0.18);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(154, 167, 255, 0.52);
  }

  .scanner-page th:nth-child(10) {
    color: #fff8f0;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.11),
      inset 0 -2px 0 rgba(255, 255, 255, 0.26);
  }

  .scanner-page tbody td:nth-child(3) {
    background-image: linear-gradient(180deg, rgba(40, 240, 170, 0.045), rgba(40, 240, 170, 0.012));
  }

  .scanner-page tbody td:nth-child(5),
  .scanner-page tbody td:nth-child(6) {
    background-image: linear-gradient(180deg, rgba(255, 194, 74, 0.05), rgba(255, 194, 74, 0.012));
  }

  .scanner-page tbody td:nth-child(7),
  .scanner-page tbody td:nth-child(9) {
    background-image: linear-gradient(180deg, rgba(154, 167, 255, 0.045), rgba(154, 167, 255, 0.01));
  }

  .scanner-page tbody td:nth-child(8) {
    background-image: linear-gradient(180deg, rgba(40, 240, 170, 0.055), rgba(40, 240, 170, 0.012));
  }

  .scanner-page tbody tr:hover td {
    background:
      linear-gradient(180deg, rgba(40, 240, 170, 0.065), rgba(40, 240, 170, 0.02)),
      rgba(5, 10, 8, 0.96);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.08),
      inset 0 -1px 0 rgba(0, 0, 0, 0.42),
      0 16px 34px rgba(0, 0, 0, 0.3),
      0 0 26px rgba(40, 240, 170, 0.075);
  }

  .scanner-page tbody tr.selected td {
    border-top-color: rgba(40, 240, 170, 0.2);
    border-bottom-color: rgba(40, 240, 170, 0.24);
    background:
      linear-gradient(180deg, rgba(40, 240, 170, 0.075), rgba(40, 240, 170, 0.024)),
      rgba(4, 9, 8, 0.96);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.09),
      inset 0 -1px 0 rgba(0, 0, 0, 0.46),
      0 18px 38px rgba(0, 0, 0, 0.32),
      0 0 30px rgba(40, 240, 170, 0.1);
  }

  .scanner-page tbody tr.selected td:first-child {
    box-shadow:
      inset 3px 0 0 rgba(40, 240, 170, 0.86),
      inset 1px 0 0 rgba(255, 255, 255, 0.06);
  }
}

.intel {
  position: sticky;
  top: 20px;
  display: grid;
  gap: 12px;
  min-width: 0;
}

.selected-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 38px;
  gap: 10px;
  align-items: center;
  padding: 2px 0 2px;
}

.contract-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 8px;
  align-items: center;
}

.contract-box span {
  min-width: 0;
  height: 38px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  color: var(--soft);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 7px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.coin-avatar {
  overflow: hidden;
}

.coin-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.selected-title {
  min-width: 0;
}

.selected-title strong,
.selected-title span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.score-card {
  margin: 0;
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.07), rgba(255, 255, 255, 0.026));
}

.score-card > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.score-card strong {
  font-size: 34px;
}

.score-card p {
  margin: 10px 0 0;
  color: var(--soft);
  line-height: 1.45;
}

.chart-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.text-btn {
  height: 34px;
  padding: 0 12px;
  color: var(--soft);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.chart-head .segmented {
  min-width: 0;
}

.chart-head .icon-btn {
  flex: 0 0 38px;
}

.chart {
  height: 330px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-3);
  overflow: hidden;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}

.replay-board {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.replay-board div {
  min-height: 62px;
  padding: 10px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 8px;
}

.replay-board span {
  color: var(--muted);
  font-size: 12px;
}

.replay-board strong {
  display: block;
  margin-top: 4px;
  color: #ffffff;
  font-size: 24px;
}

.replay-controls {
  display: grid;
  grid-template-columns: 38px 38px 38px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}

.replay-controls input {
  width: 100%;
  accent-color: var(--fire, #ff5a1f);
}

.data-strip {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  color: var(--muted);
  font-size: 12px;
}

.data-strip span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.03);
  border-radius: 999px;
}

.data-strip svg {
  width: 13px;
  height: 13px;
}

.chart-empty,
.empty-row {
  min-height: 100%;
  display: grid;
  place-items: center;
  color: var(--muted);
  padding: 24px;
  text-align: center;
}

.intel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.intel-grid strong {
  display: block;
  margin-top: 5px;
}

.reasons {
  display: grid;
  gap: 7px;
}

.social-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.social-links:empty {
  display: none;
}

.social-links a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: var(--soft);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 7px;
  text-decoration: none;
  font-weight: 800;
  font-size: 12px;
}

.social-links svg {
  width: 14px;
  height: 14px;
}

.reason {
  border-left: 3px solid var(--ember, #ff8a2a);
  background: rgba(255, 90, 31, 0.07);
  padding: 8px 10px;
  border-radius: 0 7px 7px 0;
  color: var(--soft);
  font-size: 13px;
}

.position-box {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr;
  gap: 8px;
}

.position-box label {
  display: grid;
  gap: 6px;
}

.position-box input {
  height: 38px;
  padding: 0 10px;
}

.position-box strong {
  display: block;
  margin-top: 4px;
}

.quick-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.quick-links a {
  display: grid;
  place-items: center;
  min-height: 34px;
  color: var(--soft);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  border-radius: 7px;
  text-decoration: none;
  font-weight: 800;
  font-size: 12px;
}

.quick-links a:hover {
  border-color: rgba(255, 138, 42, 0.55);
  color: var(--text);
}

.trade-panel {
  margin: 0;
}

.trade-tape {
  display: grid;
  gap: 6px;
  max-height: 220px;
  overflow: auto;
}

.trade-row {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 8px;
  align-items: center;
  min-height: 30px;
  color: var(--soft);
  font-size: 12px;
}

.trade-side {
  font-weight: 900;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 40;
  display: none;
  padding: 28px;
  background: rgba(0, 0, 0, 0.72);
}

.modal.open {
  display: grid;
  place-items: center;
}

.modal-body {
  width: min(1180px, 100%);
  height: min(760px, 92vh);
  background: #090504;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
}

.modal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}

.modal-top span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  max-width: 72vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.modal-chart {
  min-height: 0;
}

.trade-modal {
  position: fixed;
  inset: 0;
  z-index: 55;
  display: none;
  padding: 24px;
  background: rgba(0, 0, 0, 0.76);
  backdrop-filter: blur(10px);
}

.trade-modal.open {
  display: grid;
  place-items: center;
}

.trade-modal-body {
  width: min(520px, 100%);
  max-height: min(680px, 92vh);
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid rgba(255, 120, 40, 0.28);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.08), rgba(255, 255, 255, 0.012)),
    #090504;
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.66),
    0 0 0 1px rgba(255, 232, 176, 0.04) inset;
}

.trade-modal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px;
  border-bottom: 1px solid rgba(255, 120, 40, 0.16);
}

.trade-modal-top strong,
.trade-modal-top span {
  display: block;
}

.trade-modal-top strong {
  color: #fff8f0;
  font-size: 20px;
  line-height: 1.1;
}

.trade-modal-top span {
  margin-top: 5px;
  max-width: 360px;
  overflow: hidden;
  color: var(--dim, #c79e8e);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.trade-modal-tools {
  display: flex;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255, 120, 40, 0.12);
}

.trade-modal-tools button {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(255, 120, 40, 0.24);
  border-radius: 8px;
  color: #fff8f0;
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
  font-weight: 900;
}

.trade-platform-list {
  min-height: 0;
  display: grid;
  gap: 8px;
  overflow: auto;
  padding: 14px 16px 16px;
}

.trade-platform {
  min-height: 70px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(255, 120, 40, 0.18);
  border-radius: 8px;
  color: #fff8f0;
  text-decoration: none;
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.045), rgba(255, 255, 255, 0.01)),
    rgba(255, 255, 255, 0.025);
}

.trade-platform:hover {
  border-color: rgba(255, 120, 40, 0.48);
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.09), rgba(255, 255, 255, 0.018)),
    rgba(255, 255, 255, 0.04);
}

.trade-platform-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 120, 40, 0.28);
  border-radius: 8px;
  color: #ff7a1f;
  background: rgba(255, 90, 31, 0.08);
  font-weight: 950;
}

.trade-platform strong,
.trade-platform small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.trade-platform strong {
  font-size: 15px;
}

.trade-platform small {
  margin-top: 3px;
  color: var(--dim, #c79e8e);
  font-size: 12px;
}

.trade-platform b {
  min-width: 64px;
  display: inline-flex;
  justify-content: center;
  padding: 7px 10px;
  border-radius: 8px;
  color: #1a0500;
  background: linear-gradient(135deg, var(--gold, #ffc24a), var(--fire-hot, #ff3b00));
  font-size: 12px;
  font-weight: 950;
}

.bottom-nav {
  display: none;
}

.mobile-menu-btn,
.mobile-menu-close,
.sidebar-scrim {
  display: none;
}

@media (max-width: 1180px) {
  .shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: relative;
    height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .desk {
    grid-template-columns: 1fr;
  }

  .intel {
    position: relative;
    top: auto;
  }

  .coin-page .stage-copy {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 0;
  }

  .coin-page .stage-coin {
    grid-column: 1 / -1;
    padding: 14px 16px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .coin-page .stage-stat-block,
  .coin-page .stage-signal {
    padding: 13px 14px;
    border-right: 1px solid var(--line);
  }

  .scanner-page th:nth-child(9),
  .scanner-page td:nth-child(9) {
    display: none;
  }

  .scanner-page th:nth-child(2),
  .scanner-page td:nth-child(2) {
    width: 25%;
  }

  .scanner-page th:nth-child(3),
  .scanner-page td:nth-child(3) {
    width: 13%;
  }
}

@media (max-width: 980px) {
  .scanner-page .shell {
    display: flex;
    flex-direction: column;
  }

  .scanner-page .main {
    order: 1;
    overflow-x: hidden;
    padding: 14px 14px 76px;
  }

  .scanner-page .sidebar {
    display: none;
  }

  .scanner-page .topbar,
  .scanner-page .feed-toolbar {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }

  .scanner-page .segmented {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: thin;
  }

  .scanner-page .segmented button {
    flex: 0 0 auto;
    min-width: 108px;
  }

  .scanner-page table,
  .scanner-page thead,
  .scanner-page tbody {
    display: block;
    min-width: 0;
    width: 100%;
  }

  .scanner-page thead {
    display: none;
  }

  .scanner-page tbody {
    display: grid;
    gap: 10px;
  }

  .scanner-page tbody tr {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 9px 10px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
      rgba(5, 6, 7, 0.94);
    overflow: hidden;
  }

  .scanner-page th,
  .scanner-page td,
  .scanner-page tbody td:first-child,
  .scanner-page tbody td:last-child {
    display: block;
    width: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .scanner-page td:nth-child(1) {
    grid-column: 1;
    grid-row: 1 / span 2;
    width: auto !important;
  }

  .scanner-page td:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    width: auto !important;
  }

  .scanner-page td:nth-child(3),
  .scanner-page td:nth-child(9),
  .scanner-page td:nth-child(10) {
    display: none !important;
  }

  .scanner-page td:nth-child(4) {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    width: auto !important;
  }

  .scanner-page td:nth-child(8) {
    grid-row: 3;
  }

  .scanner-page td:nth-child(5),
  .scanner-page td:nth-child(6),
  .scanner-page td:nth-child(7),
  .scanner-page td:nth-child(8) {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    grid-template-rows: auto auto;
    gap: 2px 10px;
    align-items: center;
    min-width: 0;
    width: 100% !important;
    padding-top: 9px;
    border-top: 1px solid var(--line-soft);
    text-align: left;
  }

  .scanner-page td:nth-child(5) {
    grid-row: 4;
  }

  .scanner-page td:nth-child(6) {
    grid-row: 5;
  }

  .scanner-page td:nth-child(7) {
    grid-row: 6;
  }

  .scanner-page td:nth-child(5)::before,
  .scanner-page td:nth-child(6)::before,
  .scanner-page td:nth-child(7)::before,
  .scanner-page td:nth-child(8)::before {
    grid-row: 1 / span 2;
    color: #8f9bad;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-shadow: 0 1px 0 #000;
  }

  .scanner-page td:nth-child(5)::before {
    content: "MKT CAP";
  }

  .scanner-page td:nth-child(6)::before {
    content: "VOLUME";
  }

  .scanner-page td:nth-child(7)::before {
    content: "LIQUIDITY";
  }

  .scanner-page td:nth-child(8)::before {
    content: "LIVE / PEAK";
  }

  .scanner-page td:nth-child(5) > strong,
  .scanner-page td:nth-child(6) > strong,
  .scanner-page td:nth-child(7) > strong,
  .scanner-page td:nth-child(8) > strong,
  .scanner-page td:nth-child(5) > .subtext,
  .scanner-page td:nth-child(6) > .subtext,
  .scanner-page td:nth-child(7) > .subtext,
  .scanner-page td:nth-child(8) > .subtext {
    grid-column: 2;
    justify-self: start;
    min-width: 0;
    max-width: 100%;
  }

  .scanner-page .coin-cell {
    gap: 9px;
    min-width: 0;
  }

  .scanner-page .coin-meta {
    min-width: 0;
  }

  .scanner-page .coin-meta strong,
  .scanner-page td > strong {
    font-size: 16px;
  }

  .scanner-page .subtext,
  .scanner-page .coin-meta span {
    font-size: 12px;
  }

  .scanner-page .rank-cell {
    width: auto;
  }

  .scanner-page .signal-cell {
    flex-wrap: wrap;
    min-width: 0;
  }

  .scanner-page .score-pill {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .scanner-page tbody tr:hover td,
  .scanner-page tbody tr.selected td {
    background: transparent;
  }
}

@media (max-width: 760px) {
  .shell {
    display: flex;
    flex-direction: column;
  }

  .main {
    order: 1;
  }

  .sidebar {
    order: 2;
  }

  .main,
  .sidebar {
    padding: 14px;
  }

  .topbar,
  .feed-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .spotlight {
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 2px;
  }

  .spot-pill {
    flex: 0 0 auto;
  }

  .replay-stage {
    grid-template-columns: 1fr;
  }

  .stage-copy {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 0;
    overflow: visible;
    padding: 0;
  }

  .stage-coin,
  .stage-stat-block,
  .stage-signal {
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    padding: 12px 14px;
  }

  .stage-coin {
    grid-column: 1 / -1;
    padding-left: 14px;
  }

  .stage-stat-block {
    min-width: 0;
  }

  .stage-signal {
    align-content: center;
  }

  .stage-chart-frame,
  .stage-chart {
    min-height: 420px;
  }

  .stage-coin h2 {
    font-size: 30px;
  }

  .stage-stat-block strong {
    font-size: 24px;
  }

  .stage-controls {
    grid-template-columns: 1fr;
  }

  .stage-chart-top {
    grid-template-columns: minmax(0, 1fr) 38px;
  }

  .stage-chart-tools {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-content: flex-start;
    overflow-x: auto;
  }

  .stage-timeframes {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: stretch;
  }

  .stage-controls input,
  .stage-controls > span {
    grid-column: 1 / -1;
  }

  .stage-tabbar {
    flex-wrap: wrap;
    gap: 12px;
  }

  .trade-cta {
    width: 100%;
    margin-left: 0;
  }

  .stage-panel-grid,
  .stage-tape {
    grid-template-columns: 1fr;
  }

  .attention-list {
    grid-template-columns: 1fr;
  }

  .metric strong {
    font-size: 20px;
  }

  .position-box,
  .quick-links,
  .social-links {
    grid-template-columns: 1fr;
  }

  .chart {
    height: 360px;
  }

  .bottom-nav {
    position: sticky;
    bottom: 0;
    z-index: 30;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    padding: 8px 10px env(safe-area-inset-bottom);
    border-top: 1px solid var(--line);
    background: rgba(7, 4, 5, 0.92);
    backdrop-filter: blur(18px);
  }

  .bottom-nav button {
    min-height: 48px;
    display: grid;
    place-items: center;
    gap: 2px;
    color: var(--soft);
    border: 0;
    background: transparent;
    font-size: 11px;
  }

  .bottom-nav svg {
    width: 19px;
    height: 19px;
  }

  .modal {
    padding: 10px;
  }

  .trade-modal {
    padding: 10px;
  }

  .trade-modal-body {
    max-height: calc(100dvh - 20px);
  }

  .trade-modal-top span {
    max-width: calc(100vw - 118px);
  }

}

@media (max-width: 760px) {
  body.scanner-page {
    background: #050607;
  }

  body.scanner-page.menu-open {
    overflow: hidden;
  }

  .scanner-page .shell {
    display: block;
    min-height: 100vh;
  }

  .scanner-page .sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 80;
    display: block;
    width: min(84vw, 318px);
    height: 100dvh;
    padding: calc(16px + env(safe-area-inset-top)) 16px calc(92px + env(safe-area-inset-bottom));
    border-right: 1px solid rgba(255, 255, 255, 0.14);
    border-bottom: 0;
    background:
      linear-gradient(180deg, rgba(18, 19, 22, 0.98), rgba(3, 4, 6, 0.98)),
      #050607;
    box-shadow: 24px 0 60px rgba(0, 0, 0, 0.54);
    transform: translateX(-104%);
    transition: transform 160ms ease;
  }

  .scanner-page.menu-open .sidebar {
    transform: translateX(0);
  }

  .scanner-page .sidebar-scrim {
    position: fixed;
    inset: 0;
    z-index: 70;
    width: 100%;
    border: 0;
    background: rgba(0, 0, 0, 0.58);
    backdrop-filter: blur(5px);
  }

  .scanner-page.menu-open .sidebar-scrim {
    display: block;
  }

  .scanner-page .mobile-menu-close {
    position: absolute;
    top: calc(12px + env(safe-area-inset-top));
    right: 12px;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 10px;
    color: #ffffff;
    background: rgba(255, 255, 255, 0.04);
  }

  .scanner-page .mobile-menu-btn {
    display: grid;
  }

  .scanner-page .main {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
    padding: max(12px, env(safe-area-inset-top)) 10px calc(92px + env(safe-area-inset-bottom));
  }

  .scanner-page .topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    margin: 0 0 16px;
  }

  .scanner-page .title-block h1 {
    display: grid;
    gap: 3px;
    align-items: start;
    font-size: 18px;
    line-height: 1.05;
  }

  .scanner-page .title-block .pixlogo {
    font-size: 12px;
    white-space: nowrap;
  }

  .scanner-page .title-mode {
    font-size: 13px;
    color: #f0c0a4;
  }

  .scanner-page .title-block p {
    margin-top: 5px;
    font-size: 16px;
    font-weight: 900;
    color: #ffffff;
  }

  .scanner-page .top-actions {
    align-self: start;
    display: flex;
    gap: 7px;
  }

  .scanner-page .top-actions .icon-btn {
    width: 40px;
    height: 40px;
    border-radius: 10px;
  }

  .scanner-page #clearSearchBtn {
    display: none;
  }

  .scanner-page .feed-toolbar {
    display: grid;
    gap: 12px;
    margin: 0 0 14px;
    overflow: hidden;
  }

  .scanner-page .segmented {
    display: flex;
    gap: 10px;
    width: calc(100vw - 20px);
    margin: 0;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .scanner-page .segmented::-webkit-scrollbar {
    display: none;
  }

  .scanner-page .segmented button {
    flex: 0 0 auto;
    min-width: 122px;
    height: 42px;
    padding: 0 15px;
    font-size: 16px;
    border-radius: 999px;
  }

  .scanner-page .density {
    order: -1;
    font-size: 16px;
    color: #ffffff;
  }

  .scanner-page .table-wrap {
    width: 100%;
    max-width: 100%;
    overflow: visible;
  }

  .scanner-page table,
  .scanner-page thead,
  .scanner-page tbody {
    display: block;
    min-width: 0;
    max-width: 100%;
    width: 100%;
  }

  .scanner-page thead {
    display: none !important;
  }

  .scanner-page tbody {
    display: grid;
    gap: 8px;
  }

  .scanner-page tbody tr {
    position: relative;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) 74px;
    grid-template-rows: auto;
    column-gap: 7px;
    row-gap: 0;
    align-items: center;
    min-height: 66px;
    padding: 8px;
    border: 1px solid rgba(255, 255, 255, 0.105);
    border-radius: 16px;
    background:
      linear-gradient(90deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
      #08090d;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.018);
    overflow: hidden;
  }

  .scanner-page tbody tr > * {
    min-width: 0;
  }

  .scanner-page th,
  .scanner-page thead,
  .scanner-page td {
    display: block;
    width: auto !important;
    min-width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    overflow: hidden;
  }

  .scanner-page td:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
  }

  .scanner-page .rank-cell span {
    width: 22px;
    height: 22px;
    font-size: 11px;
  }

  .scanner-page td:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }

  .scanner-page .coin-cell {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
    min-width: 0;
  }

  .scanner-page .token-img {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
    border-radius: 8px;
  }

  .scanner-page .coin-meta strong {
    grid-column: 1;
    grid-row: 1;
    max-width: 100%;
    font-size: 16px;
    line-height: 1.08;
  }

  .scanner-page .coin-meta > span:first-of-type {
    grid-column: 1;
    grid-row: 2;
    max-width: 94px;
    color: #748197;
    font-size: 11px;
    font-weight: 750;
  }

  .scanner-page .coin-meta {
    display: grid;
    grid-template-columns: minmax(74px, 0.8fr) minmax(136px, 1.2fr);
    grid-template-rows: auto auto auto;
    column-gap: 10px;
    align-items: center;
    min-width: 0;
    width: 100%;
  }

  .scanner-page .token-meta-strip {
    grid-column: 1;
    grid-row: 3;
    gap: 5px;
    min-height: 16px;
    margin-top: 4px;
  }

  .scanner-page .token-age {
    font-size: 12px;
  }

  .scanner-page .token-social {
    width: 14px;
    height: 14px;
  }

  .scanner-page .token-contract-line,
  .scanner-page .coin-meta .token-contract-line {
    display: none !important;
  }

  .scanner-page .mobile-row-metrics {
    grid-column: 2;
    grid-row: 1 / span 3;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
    gap: 8px;
    align-self: center;
    min-width: 0;
    margin-top: 0;
  }

  .scanner-page .mobile-row-metrics span {
    display: grid;
    gap: 1px;
    min-width: 0;
  }

  .scanner-page .mobile-row-metrics b {
    min-width: 0;
    overflow: hidden;
    color: #fff8f0;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .scanner-page .mobile-row-metrics small {
    color: #66738a;
    font-size: 7.5px;
    font-weight: 850;
    letter-spacing: 0.1em;
  }

  .scanner-page td:nth-child(3),
  .scanner-page td:nth-child(4),
  .scanner-page td:nth-child(5),
  .scanner-page td:nth-child(6),
  .scanner-page td:nth-child(7),
  .scanner-page td:nth-child(8),
  .scanner-page td:nth-child(9),
  .scanner-page td:nth-child(10) {
    display: none !important;
  }

  .scanner-page td:nth-child(3) {
    display: block !important;
    grid-column: 3;
    grid-row: 1;
    align-self: center;
    width: 74px !important;
    min-width: 0;
    justify-self: end;
    position: static;
    width: 74px !important;
    transform: none;
  }

  body:not([data-feed-sort="trending"]) .scanner-page tbody tr {
    grid-template-columns: minmax(0, 1fr) 74px;
  }

  body:not([data-feed-sort="trending"]) .scanner-page td:nth-child(1) {
    display: none;
  }

  body:not([data-feed-sort="trending"]) .scanner-page td:nth-child(2) {
    grid-column: 1;
  }

  body:not([data-feed-sort="trending"]) .scanner-page td:nth-child(3) {
    grid-column: 2;
  }

  .scanner-page .spark-target,
  .scanner-page .spark-loading,
  .scanner-page .mini-pulse {
    width: 74px;
    max-width: 74px;
    height: 42px;
  }

  .scanner-page tbody tr:hover td,
  .scanner-page tbody tr.selected td {
    background: transparent;
  }

  .scanner-page .bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
  }

  .scanner-page .bottom-nav button {
    min-height: 38px;
  }

  .scanner-page .bottom-nav button span {
    display: none;
  }
}

@media (max-width: 430px) {
  .scanner-page .main {
    padding-left: 8px;
    padding-right: 8px;
  }

  .scanner-page tbody tr {
    grid-template-columns: 20px minmax(0, 1fr) 66px;
    column-gap: 6px;
    min-height: 64px;
    padding: 8px 7px;
    border-radius: 15px;
  }

  .scanner-page td:nth-child(3) {
    width: 66px !important;
  }

  body:not([data-feed-sort="trending"]) .scanner-page tbody tr {
    grid-template-columns: minmax(0, 1fr) 66px;
  }

  .scanner-page .rank-cell span {
    width: 20px;
    height: 20px;
    font-size: 10px;
  }

  .scanner-page .token-img {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
  }

  .scanner-page .coin-meta strong {
    font-size: 15px;
  }

  .scanner-page .coin-meta > span:first-of-type {
    max-width: 80px;
    font-size: 9.5px;
  }

  .scanner-page .token-age {
    font-size: 11px;
  }

  .scanner-page .mobile-row-metrics {
    gap: 7px;
  }

  .scanner-page .coin-meta {
    grid-template-columns: minmax(62px, 0.76fr) minmax(132px, 1.24fr);
    column-gap: 8px;
  }

  .scanner-page .mobile-row-metrics b {
    font-size: 11px;
  }

  .scanner-page .mobile-row-metrics small {
    font-size: 8px;
  }

  .scanner-page .spark-target,
  .scanner-page .spark-loading,
  .scanner-page .mini-pulse {
    width: 66px;
    max-width: 66px;
    height: 38px;
  }
}

/* Landing-aligned dashboard pass: black/fire terminal, one surface language. */
body.scanner-page {
  --panel: var(--surface, #0c0708);
  --panel-2: var(--surface2, #140b0a);
  --panel-3: #050303;
  --line: rgba(255, 120, 40, 0.15);
  --line-soft: rgba(255, 120, 40, 0.085);
  --muted: var(--dim, #c79e8e);
  --soft: var(--ink, #fff3ec);
  --text: var(--ink, #fff3ec);
  --green: var(--up, #2bffa3);
  --red: var(--down, #ff5a6a);
  --dash-surface:
    linear-gradient(180deg, rgba(255, 90, 31, 0.055), rgba(255, 255, 255, 0.014)),
    linear-gradient(160deg, var(--surface, #0c0708), #000 86%);
  --dash-control:
    linear-gradient(180deg, rgba(255, 138, 42, 0.1), rgba(255, 255, 255, 0.018)),
    var(--surface2, #140b0a);
  --dash-row:
    linear-gradient(180deg, rgba(255, 90, 31, 0.035), rgba(255, 255, 255, 0.01)),
    rgba(12, 7, 8, 0.94);
  --dash-row-alt:
    linear-gradient(180deg, rgba(255, 138, 42, 0.026), rgba(255, 255, 255, 0.006)),
    rgba(5, 3, 3, 0.96);
  --dash-shadow:
    inset 0 1px 0 rgba(255, 232, 176, 0.07),
    0 22px 70px rgba(0, 0, 0, 0.34);
  background:
    radial-gradient(circle at 76% 0%, rgba(255, 90, 31, 0.13), transparent 26%),
    radial-gradient(circle at 18% 12%, rgba(255, 194, 74, 0.075), transparent 24%),
    linear-gradient(180deg, #070405 0%, #000 48%, #000 100%);
}

@media (min-width: 981px) {
  body.scanner-page::before {
    background-image:
      linear-gradient(rgba(255, 120, 40, 0.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255, 120, 40, 0.035) 1px, transparent 1px);
    background-size: 34px 34px;
    background-position: 0 0;
    opacity: 0.22;
    mask-image: linear-gradient(180deg, transparent 0%, #000 16%, #000 80%, transparent 100%);
  }
}

.scanner-page .sidebar {
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.055), rgba(255, 255, 255, 0.008)),
    #050303;
  border-right: 1px solid var(--line);
  box-shadow:
    inset -1px 0 0 rgba(255, 120, 40, 0.11),
    18px 0 60px rgba(0, 0, 0, 0.36);
}

.scanner-page .topbar,
.scanner-page .feed-toolbar,
.scanner-page .sidebar-panel,
.scanner-page .feed-meter div {
  border: 1px solid var(--line);
  border-radius: var(--r, 12px);
  background: var(--dash-surface);
  box-shadow: var(--dash-shadow);
}

.scanner-page .topbar {
  margin-bottom: 14px;
  padding: 12px 14px;
}

.scanner-page .feed-toolbar {
  margin: 0 0 14px;
  padding: 10px;
}

.scanner-page .sidebar-panel,
.scanner-page .feed-meter div {
  border-color: var(--line);
}

.scanner-page .sidebar-panel::before,
.scanner-page .feed-meter div::before {
  width: 2px;
  background: linear-gradient(180deg, var(--gold, #ffc24a), var(--fire, #ff5a1f));
  opacity: 0.72;
  box-shadow: 0 0 16px rgba(255, 90, 31, 0.24);
}

.scanner-page .panel-head {
  border-bottom-color: var(--line-soft);
}

.scanner-page .brand-sub,
.scanner-page .panel-head small,
.scanner-page .density,
.scanner-page .subtext,
.scanner-page .coin-meta span {
  color: var(--dim, #c79e8e);
}

.scanner-page .title-mode {
  color: var(--ember, #ff8a2a);
  border-left-color: var(--line2, rgba(255, 120, 40, 0.28));
}

.scanner-page .search input,
.scanner-page .mini-input input,
.scanner-page .nav-item,
.scanner-page .segmented button,
.scanner-page .icon-btn,
.scanner-page .text-btn,
.scanner-page .rank-row,
.scanner-page .spot-pill,
.scanner-page .star-btn {
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--dash-control);
  box-shadow:
    inset 0 1px 0 rgba(255, 232, 176, 0.07),
    inset 0 -1px 0 rgba(0, 0, 0, 0.42);
}

.scanner-page .nav-item,
.scanner-page .rank-row {
  position: relative;
  overflow: hidden;
}

.scanner-page .nav-item::before,
.scanner-page .rank-row::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: rgba(255, 90, 31, 0.45);
  opacity: 0;
}

.scanner-page .nav-item > *,
.scanner-page .rank-row > * {
  position: relative;
  z-index: 1;
}

.scanner-page .nav-item.active,
.scanner-page .segmented button.active,
.scanner-page .icon-btn.active {
  color: #1a0500;
  border-color: transparent;
  background: linear-gradient(135deg, var(--gold, #ffc24a), var(--fire-hot, #ff3b00));
  box-shadow:
    0 0 22px rgba(255, 90, 31, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.scanner-page .nav-item.active span,
.scanner-page .nav-item.active b,
.scanner-page .nav-item.active svg,
.scanner-page .segmented button.active,
.scanner-page .icon-btn.active svg {
  color: #1a0500;
  stroke: currentColor;
}

.scanner-page .nav-item.active::before,
.scanner-page .rank-row:hover::before {
  opacity: 1;
}

.scanner-page .nav-item:hover,
.scanner-page .icon-btn:hover,
.scanner-page .text-btn:hover,
.scanner-page .segmented button:hover,
.scanner-page .rank-row:hover {
  border-color: var(--line3, rgba(255, 120, 40, 0.4));
  background:
    linear-gradient(180deg, rgba(255, 90, 31, 0.1), rgba(255, 255, 255, 0.018)),
    var(--surface2, #140b0a);
}

.scanner-page .search input:focus,
.scanner-page .mini-input input:focus {
  border-color: var(--fire, #ff5a1f);
  box-shadow:
    0 0 0 3px rgba(255, 90, 31, 0.14),
    inset 0 1px 0 rgba(255, 232, 176, 0.07);
}

.scanner-page .segmented {
  gap: 8px;
}

.scanner-page .segmented button {
  min-width: 104px;
  height: 38px;
  border-radius: 10px;
}

.scanner-page .coin-meta strong,
.scanner-page td > strong {
  color: var(--ink, #fff3ec);
  text-shadow: 0 0 16px rgba(255, 90, 31, 0.16);
}

.scanner-page .subtext.green,
.scanner-page .up,
.scanner-page .pos {
  color: var(--up, #2bffa3);
}

.scanner-page .subtext.red,
.scanner-page .down,
.scanner-page .neg {
  color: var(--down, #ff5a6a);
}

.scanner-page .rank-cell span,
.scanner-page .score-pill,
.scanner-page .token-age,
.scanner-page .token-social {
  border-radius: 6px;
}

@media (min-width: 981px) {
  .scanner-page .table-wrap {
    border: 1px solid var(--line);
    border-radius: var(--r, 12px);
    padding: 8px;
    background: var(--dash-surface);
    box-shadow: var(--dash-shadow);
  }

  .scanner-page .table-wrap::before {
    border-radius: calc(var(--r, 12px) + 1px);
    background: linear-gradient(135deg, rgba(255, 194, 74, 0.38), rgba(255, 90, 31, 0.28), transparent 72%);
    opacity: 0.82;
  }

  .scanner-page .table-wrap::after {
    background: linear-gradient(90deg, transparent, rgba(255, 194, 74, 0.74), rgba(255, 90, 31, 0.5), transparent);
    filter: drop-shadow(0 0 10px rgba(255, 90, 31, 0.28));
  }

  .scanner-page table {
    border-spacing: 0 7px;
  }

  .scanner-page th {
    color: var(--faint, #a87863);
    border-bottom-color: var(--line);
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.07), rgba(255, 255, 255, 0.012)),
      #050303;
    box-shadow:
      inset 0 1px 0 rgba(255, 232, 176, 0.06),
      inset 0 -2px 0 rgba(255, 90, 31, 0.22);
  }

  .scanner-page th:nth-child(3),
  .scanner-page th:nth-child(4),
  .scanner-page th:nth-child(5),
  .scanner-page th:nth-child(6),
  .scanner-page th:nth-child(7),
  .scanner-page th:nth-child(8),
  .scanner-page th:nth-child(9),
  .scanner-page th:nth-child(10) {
    color: var(--faint, #a87863);
    text-shadow: 0 1px 0 #000;
    box-shadow:
      inset 0 1px 0 rgba(255, 232, 176, 0.06),
      inset 0 -2px 0 rgba(255, 90, 31, 0.22);
  }

  .scanner-page tbody td,
  .scanner-page tbody tr:nth-child(odd) td,
  .scanner-page tbody td:nth-child(3),
  .scanner-page tbody td:nth-child(4),
  .scanner-page tbody td:nth-child(5),
  .scanner-page tbody td:nth-child(6),
  .scanner-page tbody td:nth-child(7),
  .scanner-page tbody td:nth-child(8),
  .scanner-page tbody td:nth-child(9) {
    border-top-color: rgba(255, 120, 40, 0.08);
    border-bottom-color: rgba(255, 120, 40, 0.14);
    background: var(--dash-row);
    box-shadow:
      inset 0 1px 0 rgba(255, 232, 176, 0.045),
      inset 0 -1px 0 rgba(0, 0, 0, 0.46);
  }

  .scanner-page tbody tr:nth-child(even) td {
    background: var(--dash-row-alt);
  }

  .scanner-page tbody td:first-child {
    border-left-color: var(--line);
    border-radius: 10px 0 0 10px;
  }

  .scanner-page tbody td:last-child {
    border-right-color: var(--line);
    border-radius: 0 10px 10px 0;
  }

  .scanner-page tbody tr:hover td {
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.1), rgba(255, 255, 255, 0.016)),
      var(--raise, #1c0f0c);
    box-shadow:
      inset 0 1px 0 rgba(255, 232, 176, 0.08),
      inset 0 -1px 0 rgba(0, 0, 0, 0.48),
      0 14px 34px rgba(0, 0, 0, 0.3);
  }

  .scanner-page tbody tr.selected td {
    border-top-color: rgba(255, 90, 31, 0.28);
    border-bottom-color: rgba(255, 90, 31, 0.3);
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.13), rgba(255, 255, 255, 0.018)),
      var(--raise, #1c0f0c);
    box-shadow:
      inset 0 1px 0 rgba(255, 232, 176, 0.08),
      inset 0 -1px 0 rgba(0, 0, 0, 0.48),
      0 0 26px rgba(255, 90, 31, 0.1);
  }

  .scanner-page tbody tr.selected td:first-child {
    box-shadow:
      inset 3px 0 0 var(--fire, #ff5a1f),
      inset 0 1px 0 rgba(255, 232, 176, 0.08);
  }
}

@media (max-width: 980px) {
  body.scanner-page {
    background:
      radial-gradient(circle at 80% 0%, rgba(255, 90, 31, 0.1), transparent 28%),
      linear-gradient(180deg, #070405 0%, #000 56%, #000 100%);
  }

  .scanner-page .topbar,
  .scanner-page .feed-toolbar {
    border-radius: var(--r, 12px);
  }

  .scanner-page tbody tr {
    border-color: var(--line);
    border-radius: var(--r, 12px);
    background: var(--dash-row);
    box-shadow:
      inset 3px 0 0 rgba(255, 90, 31, 0.32),
      inset 0 1px 0 rgba(255, 232, 176, 0.055),
      0 14px 34px rgba(0, 0, 0, 0.24);
  }

  .scanner-page tbody tr:hover,
  .scanner-page tbody tr.selected {
    border-color: var(--line3, rgba(255, 120, 40, 0.4));
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.12), rgba(255, 255, 255, 0.016)),
      var(--raise, #1c0f0c);
  }

  .scanner-page .mobile-row-metrics small,
  .scanner-page .coin-meta > span:first-of-type {
    color: var(--faint, #a87863);
  }
}

/* Terminal + coin route: moving GLITCH tunnel background behind both views so the
   coin page reflects the terminal theme. */
body.scanner-page,
body.coin-page {
  background: #000 !important;
  position: relative;
  isolation: isolate;
}

/* pure-black base for the terminal — kills the warm orange body glow */
body.scanner-page,
body.coin-page {
  background: #000;
}

body.scanner-page::before,
body.coin-page::before {
  content: "";
  position: fixed;
  inset: -5vh -5vw;
  z-index: 0;
  pointer-events: none;
  display: block;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.08) 47%, rgba(0, 0, 0, 0.4) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.06) 60%, rgba(0, 0, 0, 0.86) 100%),
    image-set(
      url("/assets/terminal-bg.webp") type("image/webp"),
      url("/assets/terminal-bg-opt.jpg") type("image/jpeg")
    ) center center / cover no-repeat #000;
  opacity: 1;
  filter: saturate(1.2) contrast(1.05) brightness(1.06);
  transform: scale(1.03) translate3d(0, 0, 0);
  transform-origin: center;
  animation: terminal-bg-drift 24s ease-in-out infinite alternate;
  will-change: transform;
}

body.scanner-page::after,
body.coin-page::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.24) 0 1px,
    transparent 1px 3px
  );
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.scanner-page .shell,
.coin-page .shell {
  position: relative;
  z-index: 1;
}

@keyframes terminal-bg-drift {
  0% {
    transform: scale(1.03) translate3d(0, 0, 0);
  }

  100% {
    transform: scale(1.1) translate3d(-1.6%, -1.2%, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.scanner-page::before {
    animation: none;
  }
}

@media (min-width: 981px) {
  body.scanner-page::before {
    display: block;
  }

  .scanner-page .table-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    overscroll-behavior-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 90, 31, 0.62) #050303;
  }

  .scanner-page .table-wrap::-webkit-scrollbar {
    height: 10px;
  }

  .scanner-page .table-wrap::-webkit-scrollbar-track {
    background: #050303;
    border-radius: 999px;
  }

  .scanner-page .table-wrap::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, var(--fire, #ff5a1f), var(--gold, #ffc24a));
    border-radius: 999px;
  }

  .scanner-page table {
    width: max(100%, 1040px);
    min-width: 1040px;
  }
}

/* Crisp terminal table pass. */
@media (min-width: 981px) and (max-width: 1520px) {
  .scanner-page .desk {
    grid-template-columns: minmax(0, 1fr);
  }

  .scanner-page .intel {
    position: relative;
    top: auto;
  }
}

@media (min-width: 981px) {
  .scanner-page .main {
    padding: 20px;
  }

  .scanner-page .desk {
    gap: 16px;
  }

  .scanner-page .table-wrap {
    padding: 6px;
    border-color: rgba(255, 120, 40, 0.22);
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.055), rgba(255, 255, 255, 0.012)),
      rgba(5, 3, 3, 0.84);
    backdrop-filter: blur(14px);
  }

  .scanner-page table {
    width: max(100%, 1040px);
    min-width: 1040px;
    table-layout: fixed;
    border-spacing: 0 6px;
  }

  .scanner-page th,
  .scanner-page td {
    padding: 10px;
    line-height: 1.18;
    white-space: nowrap;
  }

  .scanner-page th {
    height: 38px;
    color: var(--faint, #a87863);
    font-size: 10px;
    letter-spacing: 0.06em;
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.07), rgba(255, 255, 255, 0.01)),
      rgba(5, 3, 3, 0.94);
  }

  .scanner-page tbody td {
    height: 68px;
    background:
      linear-gradient(180deg, rgba(255, 90, 31, 0.04), rgba(255, 255, 255, 0.008)),
      rgba(9, 5, 5, 0.92);
  }

  .scanner-page th:nth-child(1),
  .scanner-page td:nth-child(1) {
    width: 44px;
  }

  .scanner-page th:nth-child(2),
  .scanner-page td:nth-child(2) {
    width: 246px;
  }

  .scanner-page th:nth-child(3),
  .scanner-page td:nth-child(3) {
    width: 108px;
  }

  .scanner-page th:nth-child(4),
  .scanner-page td:nth-child(4) {
    width: 120px;
  }

  .scanner-page th:nth-child(5),
  .scanner-page td:nth-child(5) {
    width: 100px;
  }

  .scanner-page th:nth-child(6),
  .scanner-page td:nth-child(6) {
    width: 108px;
  }

  .scanner-page th:nth-child(7),
  .scanner-page td:nth-child(7) {
    width: 106px;
  }

  .scanner-page th:nth-child(8),
  .scanner-page td:nth-child(8) {
    width: 94px;
  }

  .scanner-page th:nth-child(9),
  .scanner-page td:nth-child(9) {
    width: 66px;
  }

  .scanner-page th:nth-child(10),
  .scanner-page td:nth-child(10) {
    width: 40px;
  }

  .scanner-page .coin-cell {
    min-width: 0;
    gap: 10px;
  }

  .scanner-page .token-img {
    width: 34px;
    height: 34px;
  }

  .scanner-page .coin-meta strong,
  .scanner-page td > strong {
    font-size: 14px;
    line-height: 1.12;
  }

  .scanner-page .subtext,
  .scanner-page .coin-meta span {
    color: var(--dim, #c79e8e);
    font-size: 11px;
    line-height: 1.25;
  }

  .scanner-page .spark-target,
  .scanner-page .spark-loading,
  .scanner-page .mini-pulse {
    width: 92px;
    max-width: 92px;
    height: 36px;
  }

  .scanner-page .signal-cell {
    display: grid;
    gap: 5px;
    align-items: start;
    justify-items: start;
  }

  .scanner-page .action {
    height: 23px;
    min-width: 58px;
    padding: 0 7px;
    font-size: 10px;
    letter-spacing: 0;
  }

  .scanner-page .score-pill {
    padding: 3px 6px;
    font-size: 10px;
  }

  .scanner-page .rank-cell span {
    width: 30px;
    height: 30px;
  }

  .scanner-page .star-btn {
    width: 34px;
    height: 34px;
  }
}

/* Live / peak pair. Live alone was misleading — a call that ran 24x and faded
   to 8x displayed as an 8x, which undersells every runner we ever caught. */

.live-peak .lp-sep { color:#6b4636; font-size:12px; }
.live-peak .mult-chip { white-space:nowrap; }
.live-peak .mult-chip.peak { opacity:.95; }
@media (max-width: 720px) {
  .live-peak { gap:4px; }
  .live-peak .mult-chip { font-size:13px; }
  .live-peak .lp-sep { font-size:11px; }
}

/* Stacked, not inline: side by side the pair overflowed the LIVE column and the
   peak got clipped, which is worse than not showing it at all. */
.live-peak { display:flex; flex-direction:column; gap:2px; line-height:1.15; }
.live-peak .lp-row { display:flex; align-items:baseline; gap:6px; white-space:nowrap; }
.live-peak .lp-row b { font-size:15px; font-weight:800; }
.live-peak .lp-row i { font-style:normal; font-size:9.5px; letter-spacing:.06em;
  text-transform:uppercase; color:#8a6152; }
@media (max-width:720px){ .live-peak .lp-row b { font-size:13px; } }
