@font-face {
  font-family: "Montserrat";
  src: url("./fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("./fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Inter";
  src: url("./fonts/Inter-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}

:root {
  color-scheme: light;
  font-family: "Inter", sans-serif;
  background: #ffffff;
  color: #333333;
  --cas-bg-main: #ffffff;
  --cas-bg-secondary: #f3f5f6;
  --cas-bg-surface: #ffffffcc;
  --cas-bg-surface-solid: #ffffff;
  --cas-bg-alt: #f6f7f8;
  --cas-bg-muted: #f4f6f9;
  --cas-bg-accent-soft: #f4f6f9;
  --cas-text: #333333;
  --cas-text-secondary: #333333a3;
  --cas-text-muted: #8e98a6;
  --cas-border: #e1e3e5;
  --cas-border-soft: #0313281f;
  --cas-border-strong: rgba(3, 19, 40, 0.12);
  --cas-aqua: #2f3135;
  --cas-aqua-hover: #232528;
  --cas-dark: #242b31;
  --cas-shadow: 1px 1px 20px 1px rgba(169, 169, 169, 0.05);
  --cas-shadow-raised: 0 18px 44px rgba(3, 19, 40, 0.08);
  --cas-brand-gradient:
    linear-gradient(-120deg, rgba(28, 199, 238, 1) -10%, rgba(191, 20, 217, 1) 65%, rgba(255, 238, 5, 1) 120%);
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  scroll-behavior: smooth;
}

html[dir="rtl"] body {
  direction: rtl;
}

html[dir="rtl"] input,
html[dir="rtl"] select {
  text-align: right;
}

body {
  position: relative;
  margin: 0;
  min-height: 100vh;
  background:
    linear-gradient(180deg, var(--cas-bg-main) 0%, var(--cas-bg-secondary) 100%);
  color: var(--cas-text);
  overflow-x: hidden;
}

body[data-page="auth"],
html:has(body.auth-page),
html:has(body.payment-page) {
  background: #06080a;
}

body.auth-page,
body.payment-page {
  min-height: 100vh;
}

body::before,
body::after {
  content: none;
  position: fixed;
  inset: auto;
  border-radius: 999px;
  pointer-events: none;
  filter: blur(180px);
  z-index: 0;
}

body::before {
  width: 820px;
  height: 820px;
  left: -280px;
  top: -220px;
  background: rgba(36, 43, 49, 0.03);
}

body::after {
  width: 620px;
  height: 620px;
  right: -220px;
  top: 420px;
  background: rgba(79, 6, 226, 0.02);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
select {
  font: inherit;
}

button {
  border: 0;
  cursor: pointer;
}

.hidden {
  display: none !important;
}

.landing-backdrop {
  position: absolute;
  top: -1080px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  min-width: 1440px;
  opacity: 0.18;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.page {
  position: relative;
  z-index: 1;
  width: min(1360px, calc(100vw - 40px));
  margin: 0 auto;
  padding: 24px 0 72px;
}

.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition:
    opacity 0.68s ease,
    transform 0.68s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--reveal-delay, 0s);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.copy-flow {
  display: grid;
  gap: 6px;
}

.copy-flow.compact {
  gap: 4px;
}

.copy-flow-wide {
  max-width: 760px;
}

.copy-line,
.copy-item {
  opacity: 0;
  filter: blur(10px);
  transform: translateY(16px);
  transition:
    opacity 0.72s ease,
    transform 0.72s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.72s ease;
}

.copy-line {
  display: block;
  transition-delay: calc(var(--line-index, 0) * 90ms + 110ms);
}

.copy-item {
  transition-delay: calc(var(--item-index, 0) * 70ms + 140ms);
}

.hero-trust-row .copy-item {
  display: inline-block;
}

.reveal.is-visible .copy-line,
.reveal.is-visible .copy-item,
.faq-item.active .copy-line,
.faq-item.active .copy-item {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
}

.copy-highlight {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding-inline: 0.08em;
  color: var(--cas-text);
}

.copy-highlight::after {
  content: "";
  position: absolute;
  left: -0.04em;
  right: -0.04em;
  bottom: 0.08em;
  height: 0.62em;
  border-radius: 0.42em;
  background: linear-gradient(90deg, rgba(36, 43, 49, 0.08) 0%, rgba(196, 188, 151, 0.24) 100%);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.72s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 220ms;
  z-index: -1;
}

.reveal.is-visible .copy-highlight::after,
.faq-item.active .copy-highlight::after {
  transform: scaleX(1);
}

.copy-list {
  margin-bottom: 0;
}

.copy-list .copy-item {
  margin-bottom: 0.32rem;
}

.float-card {
  animation: floatCard 11s ease-in-out infinite;
}

.reveal-row {
  opacity: 0;
  transform: translateY(10px);
  animation: rowAppear 0.42s ease forwards;
  animation-delay: calc(var(--row-index, 0) * 55ms);
}

@keyframes floatCard {
  0%,
  100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-6px);
  }
}

@keyframes rowAppear {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  min-height: 80px;
  margin-bottom: 28px;
  padding: 0 2px;
  position: sticky;
  top: 0;
  z-index: 10;
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
}

.topbar::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: -20px;
  right: -20px;
  height: 1px;
  background: var(--cas-border-soft);
}

.topbar-actions,
.topbar-auth,
.brand-wrap,
.nav {
  display: flex;
  align-items: center;
  gap: 16px;
}

.language-select {
  min-height: 40px;
  padding: 0 34px 0 12px;
  border: 1px solid var(--cas-border);
  border-radius: 8px;
  appearance: none;
  -webkit-appearance: none;
  background-color: rgba(255, 255, 255, 0.84);
  background-image:
    linear-gradient(45deg, transparent 50%, currentColor 50%),
    linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position:
    calc(100% - 17px) 50%,
    calc(100% - 12px) 50%;
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
  color: var(--cas-text);
  font-size: 0.88rem;
  font-weight: 600;
  outline: none;
}

.language-select::-ms-expand {
  display: none;
}

.language-select:focus {
  border-color: rgba(36, 43, 49, 0.28);
  box-shadow: 0 0 0 4px rgba(36, 43, 49, 0.06);
}

.brand-wrap {
  gap: 14px;
}

.brand-link {
  color: inherit;
  text-decoration: none;
}

.brand-link:hover .brand-mark {
  color: inherit;
}

.brand-logo {
  width: 72px;
  height: auto;
  flex-shrink: 0;
}

.brand-mark {
  font-family: "Montserrat", sans-serif;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cas-text);
}

.brand-subtitle {
  margin-top: 4px;
  color: var(--cas-text-secondary);
  font-size: 0.88rem;
}

.nav {
  gap: 28px;
}

.nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: auto;
  padding: 0;
  color: var(--cas-text-secondary);
  background: transparent;
  border: 0;
  transition: color 0.18s ease;
}

.button-ghost,
.auth-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 10px;
  color: var(--cas-text);
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid var(--cas-border-soft);
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.button-ghost.icon-only {
  width: 40px;
  min-width: 40px;
  padding: 0;
}

.nav-link:hover {
  color: var(--cas-text);
}

.button-ghost:hover,
.auth-tab:hover {
  background: var(--cas-bg-alt);
  color: var(--cas-text);
  border-color: var(--cas-border);
}

.button-primary,
.button-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 10px;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.button-primary {
  background: var(--cas-aqua);
  color: #ffffff;
  box-shadow: 0 10px 24px rgba(36, 43, 49, 0.12);
}

.button-primary:hover {
  background: var(--cas-aqua-hover);
  transform: translateY(-1px);
}

.cta-live {
  position: relative;
  overflow: hidden;
}

.cta-live::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -42%;
  width: 34%;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.22) 50%, transparent 100%);
  transform: skewX(-18deg);
  animation: ctaSweep 3.4s ease-in-out infinite;
}

.button-secondary {
  background: rgba(255, 255, 255, 0.72);
  color: var(--cas-text);
  border: 1px solid var(--cas-border-soft);
}

.button-secondary:hover {
  background: var(--cas-bg-alt);
}

.button-ghost-light {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

.button-ghost-light:hover {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

.block {
  width: 100%;
}

.topbar-cta {
  background: var(--cas-brand-gradient);
  background-size: 180% 180%;
  box-shadow: 0 10px 24px rgba(83, 38, 180, 0.16);
  animation: casGradientShift 6s ease-in-out infinite;
}

.topbar-cta:hover {
  filter: brightness(0.97);
  background: var(--cas-brand-gradient);
}

.user-pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--cas-border-soft);
  color: var(--cas-text);
}

.hero,
.section,
.access {
  margin-bottom: 26px;
}

.hero-single {
  min-height: auto;
}

.hero-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
  gap: 18px;
  align-items: stretch;
}

.hero-copy,
.hero-preview,
.section,
.panel,
.pricing-card,
.access-copy,
.access-card,
.proof-card,
.stat,
.plan-card,
.step,
.access-highlight,
.message-box,
.lock-card {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: var(--cas-bg-surface);
  backdrop-filter: blur(18px);
  box-shadow: var(--cas-shadow);
}

.hero-copy,
.hero-preview,
.panel,
.pricing-card,
.access-copy,
.access-card {
  padding: 28px;
}

.hero-copy::before,
.hero-preview::before,
.panel::before,
.pricing-card::before,
.access-copy::before,
.access-card::before,
.plan-card::before {
  content: none;
}

.hero-copy-compact {
  min-height: 100%;
}

.pill,
.section-kicker,
.refresh,
.plan-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: var(--cas-text);
  border: 1px solid var(--cas-border);
  font-size: 0.83rem;
}

.pill.success {
  background: rgba(255, 255, 255, 0.9);
  color: var(--cas-text);
}

.hero-copy h1,
.panel h2,
.pricing-card h2,
.access-copy h2 {
  margin: 14px 0 14px;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  color: var(--cas-text);
}

.hero-copy h1 {
  max-width: 820px;
  font-size: clamp(1.9rem, 3.7vw, 3.35rem);
  line-height: 1.01;
  letter-spacing: -0.03em;
}

.panel h2,
.pricing-card h2,
.access-copy h2 {
  font-size: clamp(1.65rem, 3vw, 2.4rem);
  line-height: 1.02;
}

.hero-copy p,
.panel p,
.pricing-card p,
.access-copy p,
.step p,
.feature-list,
.pricing-note {
  color: var(--cas-text-secondary);
  line-height: 1.6;
}

.hero-copy p {
  max-width: 720px;
  font-size: 1rem;
}

.hero-actions,
.section-meta,
.auth-toggle-row,
.topbar-auth {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.hero-phrase-band {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--cas-border-soft);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92) 0%, rgba(244, 246, 249, 0.94) 72%, rgba(255, 255, 255, 0.92) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
  overflow: hidden;
}

.hero-phrase-band::after {
  content: "";
  position: absolute;
  inset: auto -18% -125% auto;
  width: 220px;
  height: 220px;
  background: radial-gradient(circle, rgba(191, 20, 217, 0.08) 0%, rgba(28, 199, 238, 0.06) 48%, transparent 100%);
  filter: blur(18px);
  animation: heroPhraseGlow 5.8s ease-in-out infinite;
  pointer-events: none;
}

.hero-phrase-label {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background: rgba(255, 255, 255, 0.88);
  font-size: 0.78rem;
  color: var(--cas-text-secondary);
}

.hero-phrase-window {
  position: relative;
  overflow: hidden;
  min-height: 26px;
}

.hero-phrase-text {
  display: inline-block;
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  font-size: 0.94rem;
  line-height: 1.35;
}

.hero-phrase-text.is-swapping {
  animation: heroPhraseSwap 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.hero-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 16px;
  color: var(--cas-text-secondary);
  font-size: 0.92rem;
}

.hero-trust-row span {
  position: relative;
  padding-left: 12px;
}

.hero-trust-row span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: rgba(51, 51, 51, 0.75);
  transform: translateY(-50%);
}

.hero-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.hero-mini-stat {
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.7);
}

.hero-mini-stat span {
  display: block;
  margin-bottom: 6px;
  color: var(--cas-text-secondary);
  font-size: 0.88rem;
}

.hero-mini-stat strong {
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.venue-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
  gap: 12px;
  margin-top: 22px;
}

.venue-card {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.66);
  border: 1px solid var(--cas-border-soft);
}

.venue-card img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.venue-card strong {
  display: block;
  font-family: "Montserrat", sans-serif;
  font-size: 0.95rem;
  color: var(--cas-text);
}

.venue-card span {
  color: var(--cas-text-secondary);
  font-size: 0.9rem;
}

.venue-card-text {
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}

.arb-motion-card {
  position: relative;
  margin-top: 16px;
  padding: 18px 18px 16px;
  border-radius: 18px;
  border: 1px solid var(--cas-border-soft);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(244, 246, 249, 0.96) 100%);
  box-shadow: var(--cas-shadow);
  overflow: hidden;
}

.arb-motion-card::before {
  content: "";
  position: absolute;
  inset: -28% auto auto -12%;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(28, 199, 238, 0.16) 0%, rgba(191, 20, 217, 0.12) 46%, rgba(255, 238, 5, 0.08) 74%, transparent 100%);
  filter: blur(18px);
  animation: arbAmbientDrift 8s ease-in-out infinite;
  pointer-events: none;
}

.arb-motion-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.arb-motion-head strong {
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.arb-motion-head span {
  color: var(--cas-text-secondary);
  font-size: 0.9rem;
}

.arb-motion-stage {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 14px;
  min-height: 118px;
  padding: 8px 0 20px;
}

.arb-node {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 8px 24px rgba(22, 28, 35, 0.05);
}

.arb-node-left {
  animation: arbNodeDriftLeft 3.8s ease-in-out infinite;
}

.arb-node-right {
  animation: arbNodeDriftRight 3.8s ease-in-out infinite;
}

.arb-node img {
  width: 18px;
  height: 18px;
}

.arb-node span,
.arb-node small,
.arb-node strong {
  color: var(--cas-text);
}

.arb-node-center {
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 2px;
  min-width: 144px;
  animation: arbNodeCenterFloat 3s ease-in-out infinite;
}

.arb-node-center::before {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  width: 108px;
  height: 108px;
  border-radius: 999px;
  background: conic-gradient(from 0deg, rgba(28, 199, 238, 0.18), rgba(191, 20, 217, 0.2), rgba(255, 238, 5, 0.14), rgba(28, 199, 238, 0.18));
  transform: translate(-50%, -50%);
  filter: blur(18px);
  animation: arbCenterHalo 4.6s linear infinite;
  z-index: -1;
}

.arb-node-center small {
  color: var(--cas-text-secondary);
}

.arb-core-ring {
  position: absolute;
  inset: 50% auto auto 50%;
  width: 82px;
  height: 82px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.14);
  transform: translate(-50%, -50%);
  animation: arb-core-pulse 2.2s ease-in-out infinite;
}

.arb-link {
  position: absolute;
  top: 50%;
  height: 2px;
  background: var(--cas-brand-gradient);
  background-size: 180% 100%;
  border-radius: 999px;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.18),
    0 10px 26px rgba(83, 38, 180, 0.12);
  animation: arbLinkStream 2.2s linear infinite;
}

.arb-link-left {
  left: 15%;
  width: 31%;
}

.arb-link-right {
  right: 15%;
  width: 31%;
  animation-direction: reverse;
}

.arb-link::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 10px;
  height: 10px;
  background: var(--cas-brand-gradient);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  transform: translateY(-50%);
  filter: drop-shadow(0 6px 14px rgba(83, 38, 180, 0.18));
}

.arb-link-left::after {
  right: -1px;
}

.arb-link-right::after {
  left: -1px;
  transform: translateY(-50%) rotate(180deg);
}

.arb-pulse {
  position: absolute;
  top: calc(50% - 5px);
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--cas-brand-gradient);
  box-shadow:
    0 0 0 8px rgba(191, 20, 217, 0.05),
    0 10px 24px rgba(83, 38, 180, 0.16);
}

.arb-pulse-left {
  left: 18%;
  animation: arb-pulse-left 2s linear infinite;
}

.arb-pulse-right {
  right: 18%;
  animation: arb-pulse-right 2s linear infinite;
}

.signal-marquee {
  position: relative;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.signal-marquee-track {
  display: inline-flex;
  gap: 10px;
  min-width: max-content;
  will-change: transform;
  animation: arb-marquee 11s linear infinite;
}

.signal-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--cas-border);
  background: rgba(255, 255, 255, 0.92);
  color: var(--cas-text-secondary);
  white-space: nowrap;
}

.signal-chip strong {
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  font-size: 0.88rem;
}

.signal-chip span {
  font-size: 0.86rem;
}

.hero-preview {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 247, 248, 0.96) 100%);
  display: flex;
  min-height: 100%;
}

.preview-shell {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  width: 100%;
  border-radius: 18px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.84);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
  cursor: pointer;
}

.preview-shell::before {
  content: "";
  position: absolute;
  inset: -18% auto auto -12%;
  width: 210px;
  height: 210px;
  background: radial-gradient(circle, rgba(28, 199, 238, 0.12) 0%, rgba(191, 20, 217, 0.08) 44%, rgba(255, 238, 5, 0.06) 74%, transparent 100%);
  filter: blur(12px);
  pointer-events: none;
}

.preview-shell::after {
  content: "";
  position: absolute;
  inset: auto -24% -22% auto;
  width: 220px;
  height: 220px;
  background: radial-gradient(circle, rgba(191, 20, 217, 0.07) 0%, rgba(28, 199, 238, 0.05) 46%, transparent 100%);
  filter: blur(16px);
  pointer-events: none;
}

.preview-shell:hover {
  border-color: rgba(36, 43, 49, 0.18);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 14px 38px rgba(22, 28, 35, 0.08);
  transform: translateY(-1px);
}

.preview-top,
.preview-tabs,
.preview-row,
.preview-footer,
.preview-insights {
  display: grid;
  align-items: center;
}

.preview-top {
  grid-template-columns: 1fr auto;
  gap: 12px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--cas-border-soft);
}

.preview-title strong {
  display: block;
  margin-bottom: 4px;
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.preview-title span,
.preview-footer span {
  color: var(--cas-text-secondary);
  font-size: 0.88rem;
}

.preview-badge,
.preview-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 0.8rem;
}

.preview-badge {
  background: var(--cas-bg-muted);
  color: var(--cas-text);
  border: 1px solid var(--cas-border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.preview-tabs {
  grid-template-columns: repeat(4, auto);
  justify-content: start;
  gap: 8px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--cas-border-soft);
}

.preview-tab {
  background: rgba(255, 255, 255, 0.82);
  color: var(--cas-text);
  border: 1px solid var(--cas-border);
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.preview-tab.active {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(243, 245, 246, 0.96) 100%);
  color: var(--cas-text);
  border-color: rgba(36, 43, 49, 0.14);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.8),
    0 8px 18px rgba(22, 28, 35, 0.05);
  transform: translateY(-1px);
}

.preview-tab:hover {
  border-color: rgba(36, 43, 49, 0.16);
}

.preview-table {
  padding: 0 18px;
}

.preview-row {
  grid-template-columns: 1.05fr 0.9fr 0.8fr 0.45fr;
  gap: 10px;
  min-height: 48px;
  border-bottom: 1px solid rgba(3, 19, 40, 0.08);
  color: var(--cas-text);
  position: relative;
  z-index: 1;
}

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

.preview-row-action {
  width: 100%;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.preview-row-action:hover {
  background: linear-gradient(90deg, rgba(244, 246, 249, 0.94) 0%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.preview-row-action:focus-visible,
.preview-tab:focus-visible,
.preview-footer-action:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(36, 43, 49, 0.16);
}

.preview-head {
  min-height: 38px;
  color: var(--cas-text-secondary);
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.preview-symbol-cell,
.preview-venue-cell {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.preview-symbol-cell strong,
.preview-funding-cell {
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  font-size: 0.88rem;
}

.preview-token-logo {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  flex-shrink: 0;
  box-shadow: 0 8px 18px rgba(36, 43, 49, 0.12);
}

.preview-venue-cell img {
  width: 14px;
  height: 14px;
  object-fit: contain;
}

.preview-venue-cell span {
  color: var(--cas-text-secondary);
  font-size: 0.84rem;
}

.preview-score-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 26px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 246, 249, 0.96) 100%);
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  color: var(--cas-text);
}

.preview-insights {
  gap: 12px;
  padding: 16px 18px 14px;
  margin-top: auto;
  border-top: 1px solid var(--cas-border-soft);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76) 0%, rgba(244, 246, 249, 0.88) 100%);
}

.preview-spotlight {
  position: relative;
  overflow: hidden;
  padding: 14px 14px 12px;
  border-radius: 16px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 247, 248, 0.94) 58%, rgba(255, 255, 255, 0.92) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.preview-spotlight::after {
  content: "";
  position: absolute;
  inset: -20% -20% auto auto;
  width: 120px;
  height: 120px;
  background: radial-gradient(circle, rgba(28, 199, 238, 0.14) 0%, rgba(191, 20, 217, 0.08) 52%, transparent 100%);
  filter: blur(18px);
  animation: previewGlow 6s ease-in-out infinite;
}

.preview-spotlight-top {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.preview-spotlight-kicker,
.preview-spotlight-cycle {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background: rgba(255, 255, 255, 0.88);
  font-size: 0.75rem;
  color: var(--cas-text-secondary);
}

.preview-spotlight-main {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 4px;
}

.preview-spotlight-main strong {
  font-family: "Montserrat", sans-serif;
  font-size: 1.08rem;
  color: var(--cas-text);
}

.preview-spotlight-main span {
  color: var(--cas-text-secondary);
  font-size: 0.9rem;
  line-height: 1.5;
}

.preview-flow {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  align-items: center;
  min-height: 54px;
}

.preview-rail {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 50%;
  height: 1px;
  background: linear-gradient(90deg, rgba(36, 43, 49, 0.06) 0%, rgba(36, 43, 49, 0.2) 48%, rgba(36, 43, 49, 0.06) 100%);
  transform: translateY(-50%);
}

.preview-flow-node {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background: rgba(255, 255, 255, 0.88);
  font-size: 0.8rem;
  color: var(--cas-text);
  box-shadow: 0 6px 14px rgba(22, 28, 35, 0.04);
  animation: previewNodeLift 3.4s ease-in-out infinite;
}

.preview-flow-node-left {
  animation-delay: 0s;
}

.preview-flow-node-center {
  animation-delay: 0.32s;
}

.preview-flow-node-right {
  animation-delay: 0.64s;
}

.preview-flow-pulse {
  position: absolute;
  top: calc(50% - 5px);
  left: 10%;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(28, 199, 238, 1) 0%, rgba(191, 20, 217, 0.88) 70%, rgba(255, 238, 5, 0.9) 100%);
  box-shadow: 0 0 0 8px rgba(191, 20, 217, 0.05);
  animation: previewPulse 3.2s linear infinite;
}

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

.preview-meta-card {
  padding: 12px 12px 10px;
  border-radius: 14px;
  border: 1px solid rgba(36, 43, 49, 0.08);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.preview-meta-card span {
  display: block;
  margin-bottom: 6px;
  color: var(--cas-text-secondary);
  font-size: 0.76rem;
}

.preview-meta-card strong {
  font-family: "Montserrat", sans-serif;
  font-size: 0.88rem;
  color: var(--cas-text);
  line-height: 1.25;
}

.preview-footer {
  grid-template-columns: repeat(3, auto);
  justify-content: start;
  gap: 12px;
  padding: 14px 18px 16px;
  border-top: 1px solid var(--cas-border-soft);
  position: relative;
  z-index: 1;
}

.preview-footer-action {
  display: inline-flex;
  align-items: center;
  padding: 0;
  background: transparent;
  color: var(--cas-text-secondary);
  font-size: 0.88rem;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.18s ease, transform 0.18s ease;
}

.preview-footer-action:hover {
  color: var(--cas-text);
  transform: translateY(-1px);
}

@keyframes previewPulse {
  0% {
    left: 10%;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  48% {
    left: calc(50% - 5px);
    opacity: 1;
  }
  92% {
    left: calc(90% - 10px);
    opacity: 1;
  }
  100% {
    left: calc(90% - 10px);
    opacity: 0;
  }
}

@keyframes previewGlow {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.9;
  }
  50% {
    transform: translate3d(-12px, 10px, 0) scale(1.08);
    opacity: 0.55;
  }
}

@keyframes casGradientShift {
  0%,
  100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}

@keyframes ctaSweep {
  0%,
  100% {
    left: -42%;
    opacity: 0;
  }
  18% {
    opacity: 0.65;
  }
  52% {
    left: 118%;
    opacity: 0.4;
  }
  100% {
    left: 118%;
    opacity: 0;
  }
}

@keyframes heroPhraseGlow {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.8;
  }
  50% {
    transform: translate3d(-16px, -10px, 0) scale(1.08);
    opacity: 0.48;
  }
}

@keyframes heroPhraseSwap {
  0% {
    opacity: 0;
    transform: translateY(10px);
    filter: blur(8px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes arbAmbientDrift {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.9;
  }
  50% {
    transform: translate3d(20px, 18px, 0) scale(1.1);
    opacity: 0.55;
  }
}

@keyframes arbCenterHalo {
  0% {
    transform: translate(-50%, -50%) rotate(0deg) scale(0.96);
  }
  50% {
    transform: translate(-50%, -50%) rotate(180deg) scale(1.06);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg) scale(0.96);
  }
}

@keyframes arbNodeDriftLeft {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(-6px, -5px, 0);
  }
}

@keyframes arbNodeDriftRight {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(6px, 5px, 0);
  }
}

@keyframes arbNodeCenterFloat {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -6px, 0);
  }
}

@keyframes arbLinkStream {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 140% 50%;
  }
}

@keyframes previewNodeLift {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
}

.site-footer {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  margin-top: 26px;
  padding: 20px 4px 0;
  border-top: 1px solid rgba(3, 19, 40, 0.08);
}

.site-footer-copy {
  display: grid;
  gap: 4px;
}

.site-footer-copy strong {
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.site-footer-copy span,
.site-footer-nav a {
  color: var(--cas-text-secondary);
  font-size: 0.92rem;
}

.site-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}

.site-footer-nav a:hover {
  color: var(--cas-text);
}

.legal-page .page {
  padding-bottom: 48px;
}

.legal-shell {
  display: grid;
  gap: 18px;
}

.legal-card {
  padding: 28px;
  border-radius: 18px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.84);
  box-shadow: var(--cas-shadow);
}

.legal-header {
  display: grid;
  gap: 14px;
}

.legal-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  color: var(--cas-text-secondary);
  font-size: 0.92rem;
}

.legal-card h1,
.legal-card h2,
.legal-card h3 {
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.legal-card h1 {
  margin: 0;
  font-size: clamp(2rem, 3.4vw, 3rem);
  line-height: 1.02;
}

.legal-card h2 {
  margin: 0 0 12px;
  font-size: 1.42rem;
}

.legal-card h3 {
  margin: 16px 0 10px;
  font-size: 1.06rem;
}

.legal-card p,
.legal-card li {
  color: var(--cas-text-secondary);
  line-height: 1.68;
}

.legal-card ul {
  margin: 0;
  padding-left: 18px;
}

.legal-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.legal-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--cas-border);
  background: rgba(255, 255, 255, 0.86);
  color: var(--cas-text);
}

.legal-nav a:hover,
.legal-nav a.active {
  background: var(--cas-bg-muted);
}

@keyframes arb-core-pulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.72;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 1;
  }
}

@keyframes arb-pulse-left {
  0% {
    transform: translateX(0);
    opacity: 0;
  }
  10%, 85% {
    opacity: 1;
  }
  100% {
    transform: translateX(240px);
    opacity: 0;
  }
}

@keyframes arb-pulse-right {
  0% {
    transform: translateX(0);
    opacity: 0;
  }
  10%, 85% {
    opacity: 1;
  }
  100% {
    transform: translateX(-240px);
    opacity: 0;
  }
}

@keyframes arb-marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.metrics-shell {
  display: grid;
  gap: 16px;
  margin-bottom: 22px;
}

.stats,
.proof-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.stat,
.proof-card,
.access-highlight,
.step {
  padding: 18px;
  background: rgba(255, 255, 255, 0.68);
}

.stat span,
.proof-card span,
.access-highlight span,
.pricing-note {
  color: var(--cas-text-secondary);
}

.stat strong,
.proof-card strong,
.access-highlight strong {
  display: block;
  margin-top: 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 1.05rem;
  color: var(--cas-text);
}

.section {
  padding: 24px;
}

.section-title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 18px;
}

.section-title-row h2 {
  margin: 12px 0 0;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.7rem, 3vw, 2.4rem);
}

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

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.bucket-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 12px 0 14px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
  color: var(--cas-text);
  border: 1px solid var(--cas-border-soft);
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.bucket-pill small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  min-height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: rgba(244, 246, 249, 0.92);
  color: var(--cas-text-secondary);
  font-size: 0.74rem;
  font-weight: 700;
}

.bucket-pill:hover {
  background: var(--cas-bg-alt);
  color: var(--cas-text);
  border-color: var(--cas-border);
}

.bucket-pill.active,
.auth-tab.active {
  background: #ffffff;
  color: var(--cas-text);
  border-color: var(--cas-border);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}

.bucket-pill.active small {
  background: rgba(36, 43, 49, 0.08);
  color: var(--cas-text);
}

.scanner-controls {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.scanner-input,
.scanner-select,
.auth-form input {
  border: 1px solid var(--cas-border);
  background-color: rgba(255, 255, 255, 0.88);
  color: var(--cas-text);
  border-radius: 10px;
  outline: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.scanner-input,
.scanner-select {
  height: 40px;
  padding: 0 14px;
}

.scanner-input {
  width: 220px;
}

.scanner-select {
  min-width: 148px;
  padding-right: 34px;
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, currentColor 50%),
    linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position:
    calc(100% - 17px) 50%,
    calc(100% - 12px) 50%;
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
}

.scanner-select::-ms-expand {
  display: none;
}

.scanner-filter-toggle.active {
  background: var(--cas-dark);
  border-color: var(--cas-dark);
  color: #ffffff;
}

.scanner-filter-toggle:disabled {
  cursor: not-allowed;
  opacity: 0.56;
}

.scanner-input::placeholder,
.auth-form input::placeholder {
  color: var(--cas-text-secondary);
}

.scanner-input:focus,
.scanner-select:focus,
.auth-form input:focus {
  border-color: rgba(36, 43, 49, 0.26);
  box-shadow: 0 0 0 4px rgba(36, 43, 49, 0.06);
  background-color: #ffffff;
}

.scanner-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  color: var(--cas-text-secondary);
  font-size: 0.9rem;
}

.scanner-count {
  color: var(--cas-text);
  font-weight: 600;
}

.scanner-hint {
  text-align: right;
}

.scanner-health-strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 14px;
}

.health-strip-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 8px;
  align-items: center;
  min-height: 58px;
  padding: 10px 11px;
  border-radius: 14px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.84);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.health-strip-card strong {
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  font-size: 0.82rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.health-strip-card small {
  grid-column: 2;
  color: var(--cas-text-secondary);
  font-size: 0.72rem;
  line-height: 1.3;
}

.health-strip-card.degraded,
.health-strip-card.unavailable {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(245, 151, 34, 0.22);
}

.health-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #9ca3af;
  box-shadow: 0 0 0 5px rgba(156, 163, 175, 0.12);
}

.health-dot.healthy {
  background: #16a34a;
  box-shadow: 0 0 0 5px rgba(22, 163, 74, 0.12);
}

.health-dot.degraded {
  background: #f59e0b;
  box-shadow: 0 0 0 5px rgba(245, 158, 11, 0.14);
}

.health-dot.unavailable {
  background: #dc2626;
  box-shadow: 0 0 0 5px rgba(220, 38, 38, 0.12);
}

.scanner-board-strip {
  display: grid;
  grid-template-columns: 1.3fr 0.95fr 0.95fr;
  gap: 12px;
  margin-bottom: 16px;
}

.scanner-fast-lane {
  margin-bottom: 16px;
}

.scanner-notice {
  margin: 12px 0 16px;
}

.scanner-watchlist-strip {
  margin-bottom: 16px;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 246, 249, 0.96) 100%);
  box-shadow: var(--cas-shadow);
}

.watchlist-strip-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.watchlist-kicker,
.watchlist-copy {
  color: var(--cas-text-secondary);
  font-size: 0.82rem;
}

.watchlist-strip-head strong {
  display: block;
  margin-top: 6px;
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
}

.watchlist-card-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.watch-card {
  padding: 14px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.9);
  text-align: left;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.watch-card:hover {
  transform: translateY(-1px);
  border-color: rgba(36, 43, 49, 0.18);
  box-shadow: 0 10px 24px rgba(36, 43, 49, 0.08);
}

.watch-card-top {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
}

.watch-card-logo {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  box-shadow: 0 8px 18px rgba(36, 43, 49, 0.12);
}

.watch-card-top strong,
.watch-card-middle,
.watch-card-bottom {
  display: block;
}

.watch-card-top strong {
  color: var(--cas-text);
}

.watch-card-middle,
.watch-card-bottom,
.watch-card-remove {
  color: var(--cas-text-secondary);
  line-height: 1.45;
}

.watch-card-middle {
  margin-top: 10px;
}

.watch-card-bottom {
  margin-top: 6px;
  font-size: 0.84rem;
}

.watch-card-remove {
  font-size: 0.78rem;
  font-weight: 600;
}

.fast-lane-card {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 246, 249, 0.96) 100%);
  box-shadow: var(--cas-shadow);
}

.fast-lane-kicker {
  display: block;
  margin-bottom: 8px;
  color: var(--cas-text-secondary);
  font-size: 0.78rem;
}

.fast-lane-copy strong {
  display: block;
  margin-bottom: 8px;
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  font-size: 1.02rem;
  line-height: 1.3;
}

.fast-lane-copy p,
.fast-lane-copy small {
  margin: 0;
  color: var(--cas-text-secondary);
  line-height: 1.5;
}

.fast-lane-copy small {
  display: block;
  margin-top: 8px;
}

.fast-lane-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.fast-lane-link,
.fast-lane-focus {
  min-height: 42px;
}

.board-card {
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.84);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

.board-card span {
  display: block;
  margin-bottom: 8px;
  color: var(--cas-text-secondary);
  font-size: 0.78rem;
}

.board-card strong {
  display: block;
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  line-height: 1.4;
  font-size: 0.96rem;
}

.board-card small {
  display: block;
  margin-top: 7px;
  color: var(--cas-text-secondary);
  line-height: 1.45;
}

.board-card-wide strong {
  font-size: 0.98rem;
}

.scanner-shell {
  position: relative;
}

.scanner-shell.is-preview .table {
  max-height: 534px;
  overflow: hidden;
}

.scanner-shell.is-locked .table {
  max-height: 648px;
  overflow: hidden;
}

.scanner-overlay {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  min-height: 108px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 22px;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(243, 245, 246, 0) 0%, rgba(243, 245, 246, 0.72) 34%, rgba(255, 255, 255, 0.92) 100%);
  backdrop-filter: blur(7px);
  pointer-events: none;
}

.scanner-overlay .button-primary {
  pointer-events: auto;
  box-shadow: 0 8px 24px rgba(36, 43, 49, 0.12);
}

.table {
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid var(--cas-border);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--cas-shadow);
}

.table-row {
  display: grid;
  grid-template-columns: 1.05fr 1.08fr 0.92fr 0.92fr 0.84fr 1.72fr;
  gap: 12px;
  align-items: center;
  min-height: 64px;
  padding: 12px 16px;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid rgba(3, 19, 40, 0.08);
  transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

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

.table-head {
  min-height: 48px;
  padding-top: 10px;
  padding-bottom: 10px;
  background: var(--cas-bg-muted);
  color: var(--cas-text-secondary);
  font-size: 0.83rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.table-row:not(.table-head):hover {
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(36, 43, 49, 0.04);
}

.table-row:not(.table-head) {
  cursor: pointer;
}

.table-row.selected-row {
  background: linear-gradient(90deg, rgba(36, 43, 49, 0.04), rgba(255, 255, 255, 0.99));
  box-shadow:
    inset 3px 0 0 var(--cas-dark),
    inset 0 0 0 1px rgba(36, 43, 49, 0.06);
}

.table-row.selected-row .row-story strong,
.table-row.selected-row .ticker-cell strong {
  color: #111111;
}

.featured-row {
  background: linear-gradient(90deg, rgba(36, 74, 127, 0.03), rgba(255, 255, 255, 0.98));
}

.symbol-cell {
  display: flex;
  align-items: center;
  gap: 12px;
}

.table-token-logo {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  flex-shrink: 0;
  box-shadow: 0 10px 22px rgba(36, 43, 49, 0.12);
}

.ticker-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ticker-cell strong {
  color: var(--cas-text);
}

.ticker-cell small {
  color: var(--cas-text-secondary);
}

.venue-stack,
.metric-stack,
.quality-cell,
.row-story {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.venue-stack small,
.metric-stack small,
.quality-cell small,
.row-story small {
  color: var(--cas-text-secondary);
  line-height: 1.4;
}

.row-story strong {
  color: var(--cas-text);
  line-height: 1.45;
  font-size: 0.92rem;
}

.row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 2px;
}

.row-action-link {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(36, 43, 49, 0.12);
  background: rgba(255, 255, 255, 0.92);
  color: var(--cas-text);
  font-size: 0.8rem;
  font-weight: 600;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.row-action-link:hover {
  background: var(--cas-bg-muted);
  border-color: rgba(36, 43, 49, 0.2);
  transform: translateY(-1px);
}

.row-action-link.secondary {
  color: var(--cas-text-secondary);
}

.row-action-link.watch.active,
.focus-watch-button.active {
  background: var(--cas-dark);
  border-color: var(--cas-dark);
  color: #ffffff;
}

.scanner-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(340px, 0.82fr);
  gap: 18px;
  margin-top: 18px;
  align-items: start;
}

.scanner-detail-card {
  padding: 24px;
  background: rgba(255, 255, 255, 0.92);
}

.detail-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--cas-border);
  background: rgba(255, 255, 255, 0.8);
  color: var(--cas-text);
  font-size: 0.82rem;
  font-weight: 600;
}

.detail-pill.is-fresh {
  border-color: rgba(0, 163, 40, 0.18);
  background: rgba(0, 185, 45, 0.08);
  color: #008029;
}

.detail-pill.is-stale {
  border-color: rgba(245, 34, 34, 0.14);
  background: rgba(245, 34, 34, 0.08);
  color: #c73030;
}

.focus-badge-row,
.focus-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.focus-badge-row {
  margin-top: 16px;
}

.focus-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(244, 246, 249, 0.9);
  border: 1px solid var(--cas-border);
  color: var(--cas-text);
  font-size: 0.8rem;
  font-weight: 600;
}

.focus-badge.long {
  background: rgba(0, 185, 45, 0.08);
  color: #009529;
}

.focus-badge.short {
  background: rgba(245, 34, 34, 0.08);
  color: #de3232;
}

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

.focus-metric,
.proof-metric {
  padding: 16px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 246, 249, 0.96) 100%);
}

.focus-metric span,
.proof-metric span {
  display: block;
  margin-bottom: 8px;
  color: var(--cas-text-secondary);
  font-size: 0.78rem;
}

.focus-metric strong,
.proof-metric strong {
  display: block;
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
  line-height: 1.35;
  font-size: 0.96rem;
}

.focus-metric small,
.proof-metric small {
  display: block;
  margin-top: 7px;
  color: var(--cas-text-secondary);
  line-height: 1.45;
}

.focus-presence,
.proof-movers {
  margin-top: 18px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.8);
}

.focus-presence-head,
.proof-movers-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.focus-presence-head strong,
.proof-movers-head strong {
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
}

.focus-presence-head span,
.proof-movers-head span {
  color: var(--cas-text-secondary);
  line-height: 1.45;
}

.presence-chip-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.presence-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin-right: 8px;
  margin-bottom: 8px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(244, 246, 249, 0.92);
  border: 1px solid var(--cas-border);
  color: var(--cas-text);
  font-size: 0.78rem;
  font-weight: 600;
}

.focus-secondary-list,
.proof-mover-list {
  display: grid;
  gap: 10px;
}

.focus-secondary-item,
.proof-mover {
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(244, 246, 249, 0.66);
}

.focus-secondary-item {
  width: 100%;
  text-align: left;
  transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.focus-secondary-item:hover {
  transform: translateY(-1px);
  border-color: rgba(36, 43, 49, 0.18);
  background: rgba(255, 255, 255, 0.9);
}

.focus-secondary-item.active {
  border-color: rgba(36, 43, 49, 0.2);
  background: rgba(255, 255, 255, 0.92);
}

.focus-secondary-item strong,
.proof-mover strong {
  display: block;
  color: var(--cas-text);
}

.focus-secondary-item span,
.proof-mover span {
  display: block;
  margin-top: 6px;
  color: var(--cas-text-secondary);
  line-height: 1.45;
}

.focus-actions {
  margin-top: 18px;
}

.field-input-wrap.is-error {
  border-color: rgba(196, 46, 46, 0.36);
  box-shadow: 0 0 0 4px rgba(196, 46, 46, 0.08);
}

.field-shell.is-error .field-label,
.field-message {
  color: #b23a3a;
}

.field-message {
  min-height: 16px;
  font-size: 0.76rem;
  line-height: 1.3;
}

.checkbox-row.is-error {
  color: #b23a3a;
}

.checkbox-row.is-error a {
  color: #8f2e2e;
}

button:disabled,
.button-primary:disabled,
.button-ghost:disabled {
  cursor: not-allowed;
  opacity: 0.64;
  transform: none !important;
}

.message-box.is-error {
  border-color: rgba(196, 46, 46, 0.22);
  background: rgba(255, 244, 244, 0.92);
  color: #8f2e2e;
}

.message-box.is-success {
  border-color: rgba(26, 125, 52, 0.18);
  background: rgba(244, 252, 246, 0.92);
  color: #165f2b;
}

.muted-metric {
  opacity: 0.84;
}

.exchange-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--cas-bg-alt);
  border: 1px solid var(--cas-border);
}

.exchange-badge.secondary {
  background: rgba(244, 246, 249, 0.68);
}

.exchange-badge img {
  width: 14px;
  height: 14px;
  object-fit: contain;
}

.status-pill,
.score-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  width: fit-content;
  min-width: 58px;
  padding: 0 10px;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.82rem;
}

.score-pill {
  background: var(--cas-bg-muted);
  color: var(--cas-text);
}

.quality-cell .score-pill,
.quality-cell .status-pill {
  width: fit-content;
}

.status-pill.long {
  background: rgba(0, 185, 45, 0.08);
  color: #009529;
}

.status-pill.short {
  background: rgba(245, 34, 34, 0.08);
  color: #de3232;
}

.status-pill.neutral {
  background: rgba(36, 43, 49, 0.08);
  color: var(--cas-dark);
}

.message-box,
.lock-card {
  margin-top: 14px;
  padding: 16px 18px;
  line-height: 1.58;
}

.message-box a,
.lock-card a {
  color: var(--cas-dark);
  font-weight: 600;
}

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

.section-center {
  max-width: 760px;
  margin: 0 auto 24px;
  text-align: center;
}

.comparison-section {
  padding-top: 30px;
}

.comparison-header {
  margin-bottom: 18px;
}

.comparison-title-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: center;
  max-width: 980px;
  margin: 0 auto 8px;
  padding: 0 8px;
  color: var(--cas-text-secondary);
}

.comparison-title-main {
  color: var(--cas-text);
  font-family: "Montserrat", sans-serif;
}

.comparison-table {
  max-width: 980px;
  margin: 0 auto;
}

.comparison-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 48px minmax(0, 0.95fr);
  gap: 20px;
  align-items: center;
  min-height: 88px;
  padding: 0 8px;
  border-top: 1px solid rgba(3, 19, 40, 0.12);
}

.comparison-left strong {
  display: block;
  margin-bottom: 6px;
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.comparison-left span,
.comparison-right {
  color: var(--cas-text-secondary);
  line-height: 1.55;
}

.comparison-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin: 0 auto;
  border-radius: 999px;
  font-size: 0.95rem;
}

.comparison-mark-good {
  background: rgba(0, 185, 45, 0.12);
  color: #00a328;
}

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

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

.product-card {
  position: relative;
  overflow: hidden;
  min-height: 170px;
  padding: 20px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: var(--cas-shadow);
  transition:
    transform 0.26s ease,
    border-color 0.26s ease,
    box-shadow 0.26s ease;
}

.product-card::before {
  content: none;
}

.product-card h3 {
  margin: 0 0 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 1.18rem;
  line-height: 1.08;
  color: var(--cas-text);
}

.product-card p {
  margin: 0;
  color: var(--cas-text-secondary);
  line-height: 1.58;
}

.accent-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 246, 249, 0.96) 100%);
}

.education-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 20px;
  margin-bottom: 22px;
}

.education-copy,
.education-card,
.risk-note,
.mechanics-card {
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: var(--cas-shadow);
}

.education-copy {
  padding: 26px 28px;
}

.education-copy h2 {
  margin: 10px 0 14px;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2rem, 3vw, 2.7rem);
  line-height: 1.04;
}

.education-copy p {
  margin: 0 0 14px;
  color: var(--cas-text-secondary);
  line-height: 1.68;
}

.education-copy p:last-child {
  margin-bottom: 0;
}

.education-card {
  padding: 24px;
  align-self: start;
  transition:
    transform 0.26s ease,
    border-color 0.26s ease,
    box-shadow 0.26s ease;
}

.education-card h3,
.mechanics-card h3,
.step-card h3,
.risk-card h3 {
  margin: 14px 0 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 1.24rem;
  line-height: 1.12;
  color: var(--cas-text);
}

.education-note {
  margin: 16px 0 0;
  color: var(--cas-text-secondary);
  line-height: 1.58;
}

.info-list {
  margin-bottom: 0;
}

.steps-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.step-card,
.risk-card,
.faq-item {
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: var(--cas-shadow);
}

.step-card {
  min-height: 196px;
  padding: 22px;
  transition:
    transform 0.26s ease,
    border-color 0.26s ease,
    box-shadow 0.26s ease;
}

.step-card p,
.risk-card p,
.mechanics-card p,
.faq-answer p {
  margin: 0;
  color: var(--cas-text-secondary);
  line-height: 1.6;
}

.step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 32px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid var(--cas-border);
  background: rgba(255, 255, 255, 0.9);
  font-family: "Montserrat", sans-serif;
  font-size: 0.84rem;
  font-weight: 600;
  color: var(--cas-text);
}

.risk-grid,
.mechanics-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.risk-card,
.mechanics-card {
  min-height: 184px;
  padding: 22px;
  transition:
    transform 0.26s ease,
    border-color 0.26s ease,
    box-shadow 0.26s ease;
}

.risk-note {
  margin-top: 16px;
  padding: 18px 20px;
  color: var(--cas-text-secondary);
  line-height: 1.6;
}

.faq-list {
  display: grid;
  gap: 12px;
  max-width: 980px;
  margin: 0 auto;
}

.faq-question {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 20px 22px;
  background: transparent;
  text-align: left;
}

.faq-question span:first-child {
  font-family: "Montserrat", sans-serif;
  font-size: 1.02rem;
  font-weight: 600;
  color: var(--cas-text);
}

.faq-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid var(--cas-border);
  color: var(--cas-text-secondary);
  transition: transform 0.18s ease, color 0.18s ease;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 22px;
  opacity: 0;
  transition: max-height 0.22s ease, opacity 0.18s ease, padding-bottom 0.22s ease;
}

.faq-item.active .faq-answer {
  max-height: 240px;
  opacity: 1;
  padding-bottom: 20px;
}

.faq-item.active .faq-icon {
  transform: rotate(45deg);
  color: var(--cas-text);
}

.product-card:hover,
.education-card:hover,
.step-card:hover,
.risk-card:hover,
.mechanics-card:hover,
.faq-item:hover,
.plan-card:hover {
  transform: translateY(-2px);
  border-color: rgba(36, 43, 49, 0.14);
  box-shadow: 0 18px 40px rgba(3, 19, 40, 0.07);
}

.plan-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 24px;
  background: var(--cas-bg-muted);
  border-color: transparent;
  box-shadow: none;
}

.plan-card.highlighted {
  border-color: transparent;
  box-shadow: none;
}

.plan-title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.plan-title-row h3 {
  margin: 0 0 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 1.3rem;
}

.plan-title-row p {
  margin: 0;
  color: var(--cas-text-secondary);
}

.plan-price {
  margin: 18px 0 20px;
  font-family: "Montserrat", sans-serif;
  font-size: 2.45rem;
  line-height: 1;
}

.pricing-center {
  margin-bottom: 26px;
}

.pricing-intro {
  margin: 14px 0 0;
  color: var(--cas-text-secondary);
  line-height: 1.6;
}

.product-fit-card {
  justify-content: space-between;
}

.product-fit-note {
  margin-top: 10px;
  color: var(--cas-text-secondary);
  font-size: 0.92rem;
  line-height: 1.55;
}

.plan-price span {
  margin-left: 6px;
  font-size: 1rem;
  color: var(--cas-text-secondary);
}

.plan-card .button-primary {
  background: #2f3135;
  box-shadow: none;
}

.plan-card .button-primary:hover {
  background: #232528;
}

.price {
  margin: 16px 0 20px;
}

.amount {
  font-family: "Montserrat", sans-serif;
  font-size: 3rem;
  font-weight: 600;
  color: var(--cas-text);
}

.period {
  margin-left: 6px;
  color: var(--cas-text-secondary);
}

.feature-list {
  margin: 0 0 20px;
  padding-left: 18px;
}

.feature-list.compact {
  margin-bottom: 22px;
  flex: 1 1 auto;
}

.plan-card .button-primary {
  margin-top: auto;
}

.cta-stack {
  display: grid;
  gap: 12px;
}

.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.section-copy {
  margin: 0 0 18px;
}

.steps,
.access-highlights {
  display: grid;
  gap: 14px;
}

.workflow-points {
  display: grid;
  gap: 14px;
}

.workflow-point {
  padding: 18px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.04);
}

.workflow-point strong {
  display: block;
  margin-bottom: 8px;
  font-family: "Montserrat", sans-serif;
  color: #ffffff;
}

.workflow-point span {
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.58;
}

.step h3 {
  margin: 0 0 10px;
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.access {
  display: grid;
  grid-template-columns: 1.1fr 0.95fr;
  gap: 24px;
}

.auth-form {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.auth-form input {
  min-height: 46px;
  padding: 0 14px;
}

.auth-page .landing-backdrop,
.payment-page .landing-backdrop {
  top: -860px;
}

.auth-shell,
.payment-shell {
  position: relative;
  z-index: 1;
  min-height: 100vh;
  display: grid;
  align-content: center;
  gap: 18px;
  padding: 24px;
}

.auth-card,
.payment-card {
  width: min(100%, 480px);
  padding: 24px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: var(--cas-bg-muted);
  box-shadow: var(--cas-shadow-raised);
}

.payment-card {
  width: min(100%, 720px);
}

.auth-shell .auth-card,
.payment-shell .payment-card {
  justify-self: center;
}

.auth-shell .site-footer,
.payment-shell .site-footer {
  width: min(100%, 1100px);
  justify-self: stretch;
  margin-top: 0;
}

.auth-card-header,
.payment-card-header {
  display: grid;
  grid-template-columns: 40px 1fr 40px;
  align-items: center;
  margin-bottom: 12px;
}

.auth-card-spacer {
  width: 40px;
  height: 40px;
}

.auth-logo {
  width: 82px;
  margin: 0 auto;
}

.auth-copy h1,
.payment-copy h1 {
  margin: 12px 0 12px;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.8rem, 3vw, 2.3rem);
  line-height: 1.06;
}

.auth-copy p,
.payment-copy p,
.form-note,
.text-link,
.payment-plan-copy small,
.payment-plan-features,
.payment-informer span,
.password-helper span {
  color: var(--cas-text-secondary);
}

.auth-form-card {
  margin-top: 16px;
}

.field-shell {
  display: grid;
  gap: 8px;
}

.field-label {
  font-size: 0.88rem;
  color: var(--cas-text-secondary);
}

.field-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid var(--cas-border);
  background: var(--cas-bg-main);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.field-input-wrap:focus-within {
  border-color: rgba(36, 43, 49, 0.26);
  box-shadow: 0 0 0 4px rgba(36, 43, 49, 0.06);
}

.field-input-wrap input {
  width: 100%;
  min-height: 56px;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--cas-text);
}

.field-toggle {
  padding: 0;
  background: transparent;
  color: var(--cas-text-secondary);
  font-weight: 600;
}

.auth-action-stack {
  display: grid;
  gap: 10px;
}

.auth-meta-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  align-items: center;
}

.text-link {
  font-weight: 600;
}

.inline-link {
  display: inline;
}

.password-helper {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.88rem;
}

.checkbox-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 0.92rem;
  color: var(--cas-text-secondary);
}

.checkbox-row input {
  margin-top: 3px;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.terms-checkbox {
  margin-top: 2px;
  line-height: 1.45;
}

.payment-segmented {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 4px;
  border-radius: 12px;
  background: var(--cas-bg-main);
  border: 1px solid var(--cas-border-soft);
  margin: 12px 0 4px;
}

.segment-button {
  min-height: 44px;
  border-radius: 10px;
  background: transparent;
  color: var(--cas-text-secondary);
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  transition: background 0.18s ease, color 0.18s ease;
}

.segment-button.active {
  background: var(--cas-bg-muted);
  color: var(--cas-text);
}

.payment-plan-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: 8px;
}

.payment-plan-card {
  display: flex;
  gap: 12px;
  padding: 14px 12px;
  align-items: flex-start;
  border: 0;
  border-bottom: 1px solid var(--cas-border-soft);
  background: var(--cas-bg-main);
  text-align: left;
}

.payment-plan-card:first-child {
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.payment-plan-card:last-child {
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  border-bottom: 0;
}

.payment-plan-card.active {
  background: rgba(255, 255, 255, 0.92);
  box-shadow: inset 0 0 0 1px rgba(36, 43, 49, 0.12);
}

.payment-plan-radio {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid var(--cas-border-strong);
  background: var(--cas-bg-main);
  flex-shrink: 0;
  margin-top: 4px;
}

.payment-plan-radio.active {
  border-color: var(--cas-dark);
  box-shadow: inset 0 0 0 5px var(--cas-dark);
}

.payment-plan-main {
  display: grid;
  gap: 6px;
  width: 100%;
}

.payment-plan-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.payment-plan-copy {
  display: grid;
  gap: 4px;
}

.payment-plan-copy strong,
.payment-plan-price,
.payment-informer strong {
  font-family: "Montserrat", sans-serif;
  color: var(--cas-text);
}

.payment-plan-features {
  line-height: 1.5;
  font-size: 0.92rem;
}

.payment-informer {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
  border-radius: 12px;
  background: var(--cas-bg-main);
  border: 1px solid var(--cas-border-soft);
  margin-top: 10px;
}

.payment-actions {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.scanner-page-shell {
  padding-bottom: 40px;
}

.scanner-topbar {
  min-height: 72px;
  margin-bottom: 18px;
}

.scanner-page-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 14px;
  margin-bottom: 14px;
  align-items: stretch;
}

.scanner-page-copy {
  padding: 14px 18px;
  border-radius: 16px;
  border: 1px solid var(--cas-border-soft);
  background: var(--cas-bg-surface);
  box-shadow: var(--cas-shadow);
}

.scanner-page-copy h1 {
  margin: 6px 0 8px;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.35rem, 2.35vw, 1.95rem);
  line-height: 1.02;
}

.scanner-page-copy p {
  margin: 0;
  color: var(--cas-text-secondary);
  line-height: 1.46;
  max-width: 540px;
}

.scanner-status-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-content: stretch;
}

.scanner-status-row .stat {
  min-height: 100%;
}

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

.scanner-main-card {
  margin-bottom: 0;
  padding: 24px 24px 20px;
}

.scanner-side-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.scanner-side-head h2 {
  margin: 0;
}

.scanner-side-head .button-ghost {
  flex-shrink: 0;
}

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

@media (max-width: 1160px) {
  .hero-shell,
  .split,
  .access,
  .scanner-grid,
  .scanner-detail-grid,
  .scanner-board-strip,
  .watchlist-card-row,
  .stats,
  .proof-strip,
  .plan-grid,
  .product-grid,
  .conditions-grid,
  .education-layout,
  .steps-grid,
  .risk-grid,
  .mechanics-grid,
  .venue-strip {
    grid-template-columns: 1fr;
  }

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

  .hero-mini-stats {
    grid-template-columns: 1fr;
  }

  .preview-tabs,
  .preview-footer {
    grid-template-columns: repeat(2, auto);
  }

  .preview-row {
    grid-template-columns: 1fr;
    min-height: auto;
    padding: 10px 0;
  }

  .preview-head {
    display: none;
  }

  .comparison-title-row,
  .comparison-row {
    grid-template-columns: 1fr;
  }

  .comparison-mark {
    margin: 0;
  }

  .topbar {
    display: grid;
    gap: 14px;
  }

  .topbar-actions {
    display: grid;
    gap: 14px;
  }

  .nav,
  .topbar-auth {
    flex-wrap: wrap;
  }

  .site-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .scanner-toolbar,
  .scanner-controls,
  .scanner-summary-row,
  .section-title-row,
  .auth-meta-row,
  .password-helper,
  .payment-plan-head,
  .fast-lane-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .scanner-hint {
    text-align: left;
  }

  .scanner-input {
    width: 100%;
  }

  .scanner-select,
  .scanner-filter-toggle,
  .focus-metrics-grid,
  .proof-metrics-grid {
    width: 100%;
    grid-template-columns: 1fr;
  }

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

  .fast-lane-card {
    grid-template-columns: 1fr;
  }

  .scanner-page-hero {
    grid-template-columns: 1fr;
  }

  .table-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .table-head {
    display: none;
  }

  .faq-question {
    padding: 18px;
  }

  .faq-answer {
    padding-left: 18px;
    padding-right: 18px;
  }

  .payment-card {
    width: min(100%, 560px);
  }
}

@media (max-width: 720px) {
  .page {
    width: min(100vw - 24px, 100%);
    padding-top: 16px;
    padding-bottom: 48px;
  }

  .landing-backdrop {
    top: -320px;
    min-width: 880px;
    opacity: 0.7;
  }

  .scanner-health-strip {
    grid-template-columns: 1fr;
  }

  .hero-copy,
  .hero-preview,
  .panel,
  .pricing-card,
  .access-copy,
  .access-card,
  .section,
  .plan-card {
    padding: 20px;
  }

  .hero-copy h1 {
    font-size: 2.2rem;
  }

  .amount,
  .hero-price {
    font-size: 2.4rem;
  }

  .auth-shell,
  .payment-shell {
    padding: 12px;
  }

  .auth-card,
  .payment-card {
    padding: 18px;
  }

  .arb-motion-head,
  .site-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .arb-motion-stage {
    grid-template-columns: 1fr;
    justify-items: center;
    min-height: auto;
    padding-bottom: 8px;
  }

  .arb-link,
  .arb-pulse {
    display: none;
  }

  .preview-meta-grid {
    grid-template-columns: 1fr;
  }

  .preview-flow {
    grid-template-columns: 1fr;
    gap: 8px;
    min-height: auto;
  }

  .preview-rail,
  .preview-flow-pulse {
    display: none;
  }

  .preview-footer {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .hero-actions,
  .hero-trust-row,
  .auth-meta-row,
  .password-helper {
    flex-direction: column;
    align-items: stretch;
  }

  .scanner-status-row {
    grid-template-columns: 1fr;
  }

  .scanner-overlay {
    left: 12px;
    right: 12px;
    bottom: 12px;
    min-height: 96px;
    padding: 16px;
  }
}

/* Product terminal pass */
body.scanner-page {
  background:
    radial-gradient(circle at 18% 0%, rgba(255, 238, 5, 0.055), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(191, 20, 217, 0.035), transparent 24%),
    linear-gradient(180deg, #fbfbfb 0%, #f2f4f6 100%);
}

body.scanner-page .landing-backdrop {
  opacity: 0.08;
  top: -980px;
}

.scanner-page-shell {
  width: min(1500px, calc(100vw - 28px));
  padding-top: 16px;
}

.scanner-topbar {
  min-height: auto;
  margin-bottom: 12px;
  padding: 12px 16px;
  border: 1px solid rgba(3, 19, 40, 0.1);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(18px);
  box-shadow: none;
}

.scanner-command-bar {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(520px, 0.82fr);
  gap: 14px;
  align-items: stretch;
  margin-bottom: 14px;
  padding: 14px;
  border: 1px solid rgba(3, 19, 40, 0.1);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: none;
}

.scanner-command-bar::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent 0%, rgba(36, 43, 49, 0.035) 48%, transparent 100%),
    var(--cas-brand-gradient);
  opacity: 0.08;
  transform: translateX(-72%);
  animation: terminalSweep 5.2s ease-in-out infinite;
  pointer-events: none;
}

.scanner-command-bar > * {
  position: relative;
  z-index: 1;
}

.scanner-page-copy {
  display: grid;
  align-content: center;
  padding: 4px 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.scanner-page-copy h1 {
  margin: 4px 0 8px;
  font-size: clamp(2rem, 3.2vw, 3.3rem);
  letter-spacing: -0.06em;
}

.scanner-page-copy p {
  max-width: 760px;
  color: rgba(51, 51, 51, 0.68);
  font-size: 1rem;
}

.scanner-status-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.scanner-status-row .stat {
  min-height: 86px;
  padding: 13px 14px;
  border-radius: 12px;
  border: 1px solid rgba(3, 19, 40, 0.1);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(246, 247, 248, 0.92));
  box-shadow: none;
}

.scanner-status-row .stat span,
.scanner-status-row .stat strong {
  position: relative;
  z-index: 1;
}

.scanner-status-row .stat span {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.68rem;
  color: rgba(51, 51, 51, 0.52);
}

.scanner-status-row .stat strong {
  display: block;
  margin-top: 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  line-height: 1.25;
}

.scanner-grid {
  grid-template-columns: minmax(0, 1fr) 392px;
  gap: 14px;
  align-items: start;
}

.scanner-side-rail {
  position: sticky;
  top: 14px;
  display: grid;
  gap: 14px;
}

.scanner-main-card,
.scanner-detail-card {
  border: 1px solid rgba(3, 19, 40, 0.1);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: none;
}

.scanner-main-card {
  padding: 16px;
}

.scanner-detail-card {
  padding: 16px;
}

.scanner-main-card .section-title-row {
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(3, 19, 40, 0.08);
}

.scanner-main-card .section-title-row h2,
.scanner-side-head h2 {
  margin-top: 4px;
  letter-spacing: -0.045em;
}

.scanner-main-card .section-title-row h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.55rem);
}

.section-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.section-meta .refresh {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(3, 19, 40, 0.1);
  background: #f8f8f9;
  color: rgba(51, 51, 51, 0.72);
  font-size: 0.84rem;
}

.scanner-toolbar {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  align-items: stretch;
}

.tabs {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
}

.bucket-pill {
  min-height: 34px;
  border-radius: 9px;
  background: #ffffff;
  border-color: rgba(3, 19, 40, 0.1);
  justify-content: space-between;
  font-size: 0.86rem;
}

.bucket-pill small {
  min-width: 24px;
  min-height: 20px;
  font-size: 0.7rem;
  background: #f1f2f4;
}

.bucket-pill.active {
  background: #242b31;
  border-color: #242b31;
  color: #ffffff;
}

.bucket-pill.active small {
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

.scanner-controls {
  display: grid;
  grid-template-columns: minmax(210px, 1.2fr) repeat(3, minmax(130px, 0.75fr)) auto auto;
  gap: 8px;
  align-items: center;
}

body[data-page="landing"] .scanner-controls {
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 220px);
  justify-content: end;
}

.scanner-input,
.scanner-select,
.scanner-filter-toggle {
  height: 36px;
  border-radius: 9px;
  box-shadow: none;
}

.scanner-input {
  width: 100%;
}

.scanner-select {
  min-width: 0;
}

.scanner-summary-row {
  margin: 10px 0 12px;
  padding: 0 1px;
  font-size: 0.82rem;
}

.scanner-hint {
  color: rgba(51, 51, 51, 0.54);
}

.scanner-health-strip {
  grid-template-columns: repeat(7, minmax(90px, 1fr));
  gap: 6px;
  margin-bottom: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.health-strip-card {
  min-height: 44px;
  padding: 8px 9px;
  border-radius: 10px;
  background: #fbfbfc;
  border-color: rgba(3, 19, 40, 0.09);
  box-shadow: none;
}

.health-strip-card strong {
  font-size: 0.76rem;
}

.health-strip-card small {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.66rem;
}

.scanner-board-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.board-card,
.fast-lane-card,
.scanner-watchlist-strip {
  border-radius: 12px;
  border-color: rgba(3, 19, 40, 0.09);
  background: #fbfbfc;
  box-shadow: none;
}

.board-card {
  padding: 11px 12px;
}

.board-card span,
.fast-lane-kicker,
.watchlist-kicker,
.watchlist-copy {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.66rem;
}

.board-card strong {
  font-size: 0.86rem;
  line-height: 1.34;
}

.board-card small {
  margin-top: 5px;
  font-size: 0.72rem;
}

.fast-lane-card {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 12px;
}

.fast-lane-copy strong {
  margin-bottom: 4px;
  font-size: 0.95rem;
}

.fast-lane-copy p {
  max-width: 760px;
  font-size: 0.84rem;
}

.fast-lane-copy small {
  margin-top: 4px;
  font-size: 0.75rem;
}

.fast-lane-link,
.fast-lane-focus {
  min-height: 34px;
  padding-inline: 11px;
  border-radius: 9px;
  font-size: 0.82rem;
}

.table {
  overflow-x: auto;
  border-radius: 12px;
  box-shadow: none;
  background: #ffffff;
}

.table-row {
  min-width: 1050px;
  grid-template-columns: 0.82fr 1fr 0.72fr 0.88fr 0.74fr 1.68fr;
  min-height: 58px;
  padding: 10px 12px;
  gap: 10px;
  border-bottom-color: rgba(3, 19, 40, 0.07);
}

.table-head {
  position: sticky;
  top: 0;
  z-index: 2;
  min-height: 38px;
  background: #f2f3f5;
  font-size: 0.72rem;
  letter-spacing: 0.055em;
}

.table-row:not(.table-head):hover {
  transform: translateX(2px);
  background: #fbfbfc;
}

.table-row.selected-row {
  background:
    linear-gradient(90deg, rgba(36, 43, 49, 0.062), rgba(255, 255, 255, 0.98)),
    #ffffff;
  box-shadow:
    inset 4px 0 0 #242b31,
    inset 0 0 0 1px rgba(3, 19, 40, 0.08);
}

.table-token-logo {
  width: 30px;
  height: 30px;
  box-shadow: none;
}

.ticker-cell strong,
.metric-stack strong {
  font-size: 0.92rem;
}

.ticker-cell small,
.venue-stack small,
.metric-stack small,
.quality-cell small,
.row-story small {
  font-size: 0.72rem;
}

.exchange-badge {
  min-height: 28px;
  padding: 0 9px;
  border-radius: 999px;
  background: #f8f8f9;
  border: 1px solid rgba(3, 19, 40, 0.1);
}

.exchange-badge img {
  width: 14px;
  height: 14px;
}

.score-pill,
.status-pill {
  min-height: 26px;
  border-radius: 999px;
  font-size: 0.78rem;
}

.row-story strong {
  font-size: 0.86rem;
  line-height: 1.35;
}

.row-actions {
  gap: 6px;
  margin-top: 5px;
}

.row-action-link {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 8px;
  font-size: 0.72rem;
}

.scanner-side-head {
  align-items: center;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(3, 19, 40, 0.08);
}

.detail-pill {
  min-height: 28px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 0.76rem;
}

.focus-badge-row {
  margin-top: 12px;
  gap: 7px;
}

.focus-badge,
.presence-chip {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 8px;
  font-size: 0.72rem;
}

.focus-metrics-grid,
.proof-metrics-grid {
  gap: 8px;
  margin-top: 12px;
}

.focus-metric,
.proof-metric {
  padding: 11px;
  border-radius: 11px;
  background: #fbfbfc;
  border-color: rgba(3, 19, 40, 0.09);
}

.focus-metric span,
.proof-metric span {
  display: block;
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.65rem;
}

.focus-metric strong,
.proof-metric strong {
  font-size: 0.88rem;
  line-height: 1.35;
}

.focus-metric small,
.proof-metric small {
  display: block;
  margin-top: 5px;
  font-size: 0.72rem;
  line-height: 1.35;
}

.focus-presence,
.proof-movers {
  margin-top: 12px;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(3, 19, 40, 0.09);
  background: #fbfbfc;
}

.focus-secondary-list,
.proof-mover-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.focus-secondary-item,
.proof-mover {
  border-radius: 10px;
  border-color: rgba(3, 19, 40, 0.09);
  background: #ffffff;
}

.focus-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin-top: 12px;
}

.focus-actions .block,
.scanner-detail-card .button-ghost {
  min-height: 36px;
  border-radius: 9px;
}

.hero-single .hero-shell {
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.72fr);
}

.hero-copy,
.hero-preview,
.preview-shell {
  border-color: rgba(3, 19, 40, 0.1);
  box-shadow: none;
}

.hero-copy h1 {
  max-width: 860px;
  letter-spacing: -0.066em;
}

.hero-phrase-band,
.arb-motion-card,
.preview-insights {
  border-color: rgba(3, 19, 40, 0.1);
  box-shadow: none;
}

.hero-mini-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hero-mini-stat,
.venue-card,
.preview-meta-card {
  box-shadow: none;
}

.arb-link {
  background: linear-gradient(90deg, transparent, rgba(36, 43, 49, 0.42), rgba(191, 20, 217, 0.36), transparent);
}

.arb-pulse,
.preview-flow-pulse {
  background: var(--cas-brand-gradient);
  box-shadow: 0 0 26px rgba(191, 20, 217, 0.24);
}

.hero-preview {
  position: sticky;
  top: 16px;
}

.preview-shell {
  min-height: auto;
}

.preview-row-action:hover {
  background: #f8f8f9;
}

.scanner-shell.is-preview .table,
.scanner-shell.is-locked .table {
  max-height: 680px;
}

.scanner-overlay {
  min-height: 92px;
  background:
    linear-gradient(180deg, rgba(246, 247, 248, 0) 0%, rgba(246, 247, 248, 0.54) 28%, rgba(255, 255, 255, 0.92) 100%);
}

@keyframes terminalSweep {
  0%,
  38% {
    transform: translateX(-78%);
  }
  64%,
  100% {
    transform: translateX(78%);
  }
}

@media (max-width: 1260px) {
  .scanner-command-bar,
  .scanner-grid,
  .hero-single .hero-shell {
    grid-template-columns: 1fr;
  }

  .scanner-side-rail,
  .hero-preview {
    position: static;
  }

  .scanner-controls {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

@media (max-width: 760px) {
  .scanner-page-shell {
    width: min(100vw - 20px, 100%);
  }

  .scanner-topbar,
  .scanner-command-bar,
  .scanner-main-card,
  .scanner-detail-card {
    border-radius: 14px;
  }

  .scanner-status-row,
  .tabs,
  .scanner-controls,
  .scanner-board-strip,
  .hero-mini-stats {
    grid-template-columns: 1fr;
  }

  .scanner-main-card .section-title-row,
  .section-meta {
    align-items: stretch;
    flex-direction: column;
  }

  .table-row {
    min-width: 0;
    grid-template-columns: 1fr;
  }

  .table-head {
    display: none;
  }
}

/* Scanner workbench pass: remove marketing noise, improve light/dark readability */
body.scanner-page {
  background:
    radial-gradient(circle at 12% -10%, rgba(46, 49, 53, 0.08), transparent 28%),
    linear-gradient(180deg, #f2f0eb 0%, #e9e7e1 100%);
  color: #27292c;
}

body.scanner-page:not(.light-theme) {
  --terminal-bg: #07090b;
  --terminal-panel: #0d1115;
  --terminal-panel-2: #121820;
  --terminal-line: rgba(218, 226, 232, 0.12);
  --terminal-line-strong: rgba(218, 226, 232, 0.2);
  --terminal-text: #eef2f5;
  --terminal-muted: rgba(238, 242, 245, 0.68);
  --terminal-dim: rgba(238, 242, 245, 0.44);
  --terminal-lime: #9bff36;
  background:
    radial-gradient(circle at 12% -12%, rgba(155, 255, 54, 0.08), transparent 28%),
    linear-gradient(180deg, #0b0e12 0%, #050607 100%);
  color: var(--terminal-text);
}

body.scanner-page .landing-backdrop,
body.scanner-page .scanner-command-bar::before {
  display: none;
  content: none;
}

body.scanner-page .reveal,
body.scanner-page .reveal-row,
body.scanner-page .copy-line,
body.scanner-page .copy-item {
  opacity: 1;
  transform: none;
  animation: none !important;
  filter: none;
}

body.scanner-page .scanner-page-shell {
  width: min(1520px, calc(100vw - 32px));
  padding-top: 12px;
}

body.scanner-page .scanner-topbar {
  display: grid;
  grid-template-columns: minmax(260px, auto) minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  min-height: 58px;
  margin-bottom: 12px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(31, 34, 38, 0.14);
  background: rgba(251, 250, 247, 0.9);
  box-shadow: 0 10px 30px rgba(31, 34, 38, 0.045);
  backdrop-filter: none;
}

body.scanner-page:not(.light-theme) .scanner-topbar {
  border-color: var(--terminal-line);
  background: rgba(13, 17, 21, 0.96);
  box-shadow: none;
}

body.scanner-page .topbar::after {
  display: none;
}

body.scanner-page .topbar-actions {
  justify-content: flex-end;
  gap: 14px;
}

body.scanner-page .nav {
  flex: 0 1 auto;
  gap: 8px;
}

body.scanner-page .nav-link {
  min-height: 34px;
  padding: 0 11px;
  border-radius: 6px;
  color: rgba(39, 41, 44, 0.62);
  font-size: 0.84rem;
  font-weight: 700;
}

body.scanner-page .nav-link:hover {
  background: rgba(31, 34, 38, 0.06);
  color: #27292c;
}

body.scanner-page:not(.light-theme) .nav-link {
  color: var(--terminal-muted);
}

body.scanner-page:not(.light-theme) .nav-link:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--terminal-text);
}

body.scanner-page .topbar-auth {
  gap: 8px;
}

body.scanner-page .language-picker {
  min-width: 116px;
}

body.scanner-page .language-picker-trigger,
body.scanner-page .button-ghost,
body.scanner-page .account-link,
body.scanner-page .user-pill {
  min-height: 36px;
  border-radius: 6px;
  border-color: rgba(31, 34, 38, 0.14);
  background: rgba(255, 255, 255, 0.58);
  color: #27292c;
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .language-picker-trigger,
body.scanner-page:not(.light-theme) .button-ghost,
body.scanner-page:not(.light-theme) .account-link,
body.scanner-page:not(.light-theme) .user-pill {
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-text);
}

body.scanner-page .account-link {
  font-weight: 800;
}

body.scanner-page .scanner-command-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.62fr);
  gap: 12px;
  margin-bottom: 12px;
  padding: 16px 18px;
  border-radius: 10px;
  border: 1px solid rgba(31, 34, 38, 0.14);
  background: rgba(251, 250, 247, 0.92);
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .scanner-command-bar {
  border-color: var(--terminal-line);
  background: rgba(13, 17, 21, 0.92);
}

body.scanner-page .scanner-page-copy {
  gap: 5px;
  padding: 0;
}

body.scanner-page .scanner-page-copy .section-kicker,
body.scanner-page .scanner-main-card .section-kicker,
body.scanner-page .scanner-side-head .section-kicker {
  width: fit-content;
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(39, 41, 44, 0.56);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.08em;
}

body.scanner-page:not(.light-theme) .scanner-page-copy .section-kicker,
body.scanner-page:not(.light-theme) .scanner-main-card .section-kicker,
body.scanner-page:not(.light-theme) .scanner-side-head .section-kicker {
  color: var(--terminal-dim);
}

body.scanner-page .scanner-page-copy h1 {
  margin: 0;
  color: #27292c;
  font-size: clamp(1.85rem, 2.4vw, 2.65rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

body.scanner-page:not(.light-theme) .scanner-page-copy h1 {
  color: var(--terminal-text);
}

body.scanner-page .scanner-page-copy p {
  max-width: 780px;
  margin-top: 4px;
  color: rgba(39, 41, 44, 0.68);
  font-size: 0.94rem;
  line-height: 1.5;
}

body.scanner-page:not(.light-theme) .scanner-page-copy p {
  color: var(--terminal-muted);
}

body.scanner-page .scanner-status-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

body.scanner-page .scanner-status-row .stat {
  min-height: 72px;
  padding: 12px;
  border-radius: 8px;
  border: 1px solid rgba(31, 34, 38, 0.13);
  background: rgba(255, 255, 255, 0.54);
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat {
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
}

body.scanner-page .scanner-status-row .stat span {
  color: rgba(39, 41, 44, 0.5);
  font-size: 0.66rem;
  letter-spacing: 0.08em;
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat span {
  color: var(--terminal-dim);
}

body.scanner-page .scanner-status-row .stat strong {
  margin-top: 8px;
  color: #27292c;
  font-size: 0.98rem;
  line-height: 1.25;
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat strong {
  color: var(--terminal-text);
}

body.scanner-page .scanner-grid {
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 12px;
}

body.scanner-page .scanner-main-card,
body.scanner-page .scanner-detail-card {
  border-radius: 10px;
  border: 1px solid rgba(31, 34, 38, 0.14);
  background: rgba(251, 250, 247, 0.94);
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .scanner-main-card,
body.scanner-page:not(.light-theme) .scanner-detail-card {
  border-color: var(--terminal-line);
  background: rgba(13, 17, 21, 0.94);
}

body.scanner-page .scanner-main-card {
  padding: 14px;
}

body.scanner-page .scanner-main-card .section-title-row {
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom-color: rgba(31, 34, 38, 0.1);
}

body.scanner-page:not(.light-theme) .scanner-main-card .section-title-row {
  border-bottom-color: var(--terminal-line);
}

body.scanner-page .scanner-main-card .section-title-row h2 {
  margin: 3px 0 0;
  color: #27292c;
  font-size: clamp(1.5rem, 2vw, 2rem);
  line-height: 1;
  letter-spacing: -0.045em;
}

body.scanner-page:not(.light-theme) .scanner-main-card .section-title-row h2 {
  color: var(--terminal-text);
}

body.scanner-page .section-meta {
  gap: 8px;
}

body.scanner-page .section-meta .refresh {
  max-width: min(430px, 44vw);
  min-height: 34px;
  padding: 0 10px;
  overflow: hidden;
  border-radius: 6px;
  border-color: rgba(31, 34, 38, 0.13);
  background: rgba(255, 255, 255, 0.56);
  color: rgba(39, 41, 44, 0.68);
  font-size: 0.8rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.scanner-page:not(.light-theme) .section-meta .refresh {
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-muted);
}

body.scanner-page .scanner-toolbar {
  gap: 8px;
}

body.scanner-page .bucket-pill,
body.scanner-page .scanner-input,
body.scanner-page .scanner-select,
body.scanner-page .scanner-filter-toggle {
  border-radius: 6px;
  border-color: rgba(31, 34, 38, 0.13);
  background-color: rgba(255, 255, 255, 0.62);
  color: #27292c;
}

body.scanner-page:not(.light-theme) .bucket-pill,
body.scanner-page:not(.light-theme) .scanner-input,
body.scanner-page:not(.light-theme) .scanner-select,
body.scanner-page:not(.light-theme) .scanner-filter-toggle {
  border-color: var(--terminal-line);
  background-color: rgba(255, 255, 255, 0.04);
  color: var(--terminal-text);
}

body.scanner-page .bucket-pill.active,
body.scanner-page .scanner-filter-toggle.active {
  background: #27292c;
  border-color: #27292c;
  color: #fff;
}

body.scanner-page:not(.light-theme) .bucket-pill.active,
body.scanner-page:not(.light-theme) .scanner-filter-toggle.active {
  background: var(--terminal-lime);
  border-color: var(--terminal-lime);
  color: #061006;
}

body.scanner-page .scanner-summary-row {
  margin: 8px 0;
  color: rgba(39, 41, 44, 0.68);
}

body.scanner-page:not(.light-theme) .scanner-summary-row {
  color: var(--terminal-muted);
}

body.scanner-page .scanner-hint {
  color: rgba(39, 41, 44, 0.5);
}

body.scanner-page:not(.light-theme) .scanner-hint {
  color: var(--terminal-dim);
}

body.scanner-page .scanner-health-strip {
  grid-template-columns: repeat(7, minmax(96px, 1fr));
  gap: 5px;
  margin-bottom: 8px;
}

body.scanner-page .health-strip-card {
  min-height: 38px;
  padding: 7px 8px;
  border-radius: 6px;
  border-color: rgba(31, 34, 38, 0.11);
  background: rgba(255, 255, 255, 0.48);
}

body.scanner-page:not(.light-theme) .health-strip-card {
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
}

body.scanner-page .table {
  border-radius: 8px;
  border: 1px solid rgba(31, 34, 38, 0.14);
  background: #fffefa;
  color: #27292c;
  font-size: 12.5px;
}

body.scanner-page:not(.light-theme) .table {
  border-color: var(--terminal-line);
  background: #0b0f13;
  color: var(--terminal-text);
}

body.scanner-page .table-head {
  background: #dedbd2;
  color: rgba(39, 41, 44, 0.58);
}

body.scanner-page:not(.light-theme) .table-head {
  background: #151b21;
  color: var(--terminal-dim);
}

body.scanner-page .table-row {
  background: #fffefa;
  border-bottom-color: rgba(31, 34, 38, 0.085);
}

body.scanner-page:not(.light-theme) .table-row {
  background: #0b0f13;
  border-bottom-color: rgba(218, 226, 232, 0.08);
}

body.scanner-page .table-row:not(.table-head):hover,
body.scanner-page .table-row.selected-row {
  background: #f0eee7;
  transform: none;
}

body.scanner-page:not(.light-theme) .table-row:not(.table-head):hover,
body.scanner-page:not(.light-theme) .table-row.selected-row {
  background: #121820;
}

body.scanner-page .ticker-cell strong,
body.scanner-page .metric-stack strong,
body.scanner-page .exchange-badge strong,
body.scanner-page .row-story strong {
  color: #27292c;
}

body.scanner-page:not(.light-theme) .ticker-cell strong,
body.scanner-page:not(.light-theme) .metric-stack strong,
body.scanner-page:not(.light-theme) .exchange-badge strong,
body.scanner-page:not(.light-theme) .row-story strong {
  color: var(--terminal-text);
}

body.scanner-page .ticker-cell small,
body.scanner-page .bucket-cell small,
body.scanner-page .metric-stack small,
body.scanner-page .quality-cell small,
body.scanner-page .focus-metric small,
body.scanner-page .proof-metric small {
  color: rgba(39, 41, 44, 0.52);
}

body.scanner-page:not(.light-theme) .ticker-cell small,
body.scanner-page:not(.light-theme) .bucket-cell small,
body.scanner-page:not(.light-theme) .metric-stack small,
body.scanner-page:not(.light-theme) .quality-cell small,
body.scanner-page:not(.light-theme) .focus-metric small,
body.scanner-page:not(.light-theme) .proof-metric small {
  color: var(--terminal-dim);
}

body.scanner-page .scanner-detail-card {
  padding: 14px;
}

body.scanner-page .scanner-side-head {
  margin-bottom: 10px;
  padding-bottom: 9px;
}

body.scanner-page .scanner-side-head h2 {
  color: #27292c;
  font-size: 1.22rem;
}

body.scanner-page:not(.light-theme) .scanner-side-head h2 {
  color: var(--terminal-text);
}

body.scanner-page .focus-metric,
body.scanner-page .proof-metric,
body.scanner-page .focus-presence,
body.scanner-page .proof-movers {
  border-radius: 7px;
  border-color: rgba(31, 34, 38, 0.11);
  background: rgba(255, 255, 255, 0.52);
}

body.scanner-page:not(.light-theme) .focus-metric,
body.scanner-page:not(.light-theme) .proof-metric,
body.scanner-page:not(.light-theme) .focus-presence,
body.scanner-page:not(.light-theme) .proof-movers {
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
}

body.scanner-page .site-footer {
  margin-top: 14px;
  color: rgba(39, 41, 44, 0.5);
}

body.scanner-page:not(.light-theme) .site-footer {
  color: var(--terminal-dim);
}

@media (max-width: 1120px) {
  body.scanner-page .scanner-command-bar,
  body.scanner-page .scanner-grid {
    grid-template-columns: 1fr;
  }

  body.scanner-page .scanner-side-rail {
    position: static;
  }
}

@media (max-width: 760px) {
  body.scanner-page .scanner-page-shell {
    width: min(100vw - 16px, 100%);
  }

  body.scanner-page .scanner-topbar {
    grid-template-columns: 1fr;
  }

  body.scanner-page .topbar-actions,
  body.scanner-page .topbar-auth,
  body.scanner-page .nav {
    width: 100%;
  }

  body.scanner-page .topbar-auth {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.scanner-page .scanner-status-row,
  body.scanner-page .scanner-controls,
  body.scanner-page .tabs {
    grid-template-columns: 1fr;
  }

  body.scanner-page .section-meta {
    justify-content: stretch;
  }

  body.scanner-page .section-meta .refresh {
    max-width: none;
  }
}

/* De-AI product pass: calmer market-data interface */
body[data-page="landing"] {
  background: #f4f5f6;
}

body[data-page="landing"] .landing-backdrop,
body.scanner-page .landing-backdrop {
  display: none;
}

body[data-page="landing"] .page {
  width: min(1440px, calc(100vw - 32px));
}

body[data-page="landing"] .topbar,
body[data-page="landing"] .hero-copy,
body[data-page="landing"] .hero-preview,
body[data-page="landing"] .section,
body[data-page="landing"] .metrics-shell,
body[data-page="landing"] .proof-card,
body[data-page="landing"] .stat,
body[data-page="landing"] .step-card,
body[data-page="landing"] .education-card,
body[data-page="landing"] .scanner-main-card,
.scanner-main-card,
.scanner-detail-card,
.scanner-command-bar {
  backdrop-filter: none;
  background: #ffffff;
  border-color: #dfe3e7;
  box-shadow: none;
}

body[data-page="landing"] .topbar {
  min-height: 64px;
  padding: 12px 14px;
  border-radius: 12px;
}

.topbar-cta,
.topbar-cta:hover {
  background: #242b31;
  box-shadow: none;
  animation: none;
}

.cta-live::after {
  content: none;
}

.button-primary {
  box-shadow: none;
}

.button-primary:hover,
.button-secondary:hover,
.button-ghost:hover {
  transform: none;
}

body[data-page="landing"] .hero-shell {
  grid-template-columns: minmax(0, 0.9fr) minmax(560px, 1.1fr);
  align-items: start;
}

body[data-page="landing"] .hero-copy,
body[data-page="landing"] .hero-preview {
  padding: 22px;
  border-radius: 14px;
}

body[data-page="landing"] .hero-copy h1 {
  max-width: 720px;
  margin: 12px 0;
  font-size: clamp(2rem, 3.25vw, 3rem);
  line-height: 1.04;
  letter-spacing: -0.055em;
}

body[data-page="landing"] .hero-copy p {
  max-width: 760px;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.55;
}

body[data-page="landing"] .copy-line,
body[data-page="landing"] .copy-item {
  opacity: 1;
  filter: none;
  transform: none;
  transition: none;
}

body[data-page="landing"] .copy-highlight::after {
  content: none;
}

.pill,
.section-kicker,
.refresh,
.plan-badge {
  min-height: 30px;
  border-radius: 8px;
  background: #f7f8f9;
  color: rgba(51, 51, 51, 0.68);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.68rem;
}

.hero-market-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 14px;
  padding: 11px 12px;
  border: 1px solid #dfe3e7;
  border-radius: 10px;
  background: #f7f8f9;
}

.hero-market-line span {
  color: rgba(51, 51, 51, 0.54);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.hero-market-line strong {
  overflow: hidden;
  color: #333333;
  font-family: "Montserrat", sans-serif;
  font-size: 0.9rem;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.hero-phrase-text.is-swapping {
  animation: none;
}

.data-stack-card {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 16px;
}

.data-stack-card div {
  padding: 12px;
  border: 1px solid #dfe3e7;
  border-radius: 10px;
  background: #f9fafb;
}

.data-stack-card span {
  display: block;
  margin-bottom: 7px;
  color: rgba(51, 51, 51, 0.52);
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.data-stack-card strong {
  color: #333333;
  font-family: "Montserrat", sans-serif;
  font-size: 0.86rem;
  line-height: 1.35;
}

body[data-page="landing"] .hero-mini-stats,
body[data-page="landing"] .venue-strip {
  gap: 8px;
  margin-top: 14px;
}

body[data-page="landing"] .hero-mini-stat,
body[data-page="landing"] .venue-card,
body[data-page="landing"] .preview-meta-card,
body[data-page="landing"] .preview-spotlight,
body[data-page="landing"] .preview-footer-action {
  border-radius: 10px;
  border-color: #dfe3e7;
  background: #f9fafb;
  box-shadow: none;
}

body[data-page="landing"] .hero-mini-stat {
  padding: 12px;
}

body[data-page="landing"] .hero-mini-stat span,
body[data-page="landing"] .venue-card span,
body[data-page="landing"] .preview-title span {
  font-size: 0.78rem;
}

body[data-page="landing"] .hero-preview {
  position: sticky;
  top: 14px;
  min-height: auto;
}

body[data-page="landing"] .preview-shell {
  border-radius: 12px;
  border-color: #dfe3e7;
  background: #ffffff;
  box-shadow: none;
}

.preview-shell::before,
.hero-phrase-band::after,
.scanner-command-bar::before {
  content: none;
}

body[data-page="landing"] .preview-insights {
  border-top: 1px solid #e8ebef;
  background: #ffffff;
}

body[data-page="landing"] .preview-meta-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.float-card {
  animation: none;
}

.scanner-command-bar {
  padding: 12px;
  border-radius: 12px;
}

.scanner-page-copy h1 {
  font-size: clamp(1.5rem, 2.25vw, 2.25rem);
  letter-spacing: -0.045em;
}

.scanner-page-copy p {
  font-size: 0.92rem;
}

.scanner-status-row .stat,
.scanner-main-card,
.scanner-detail-card,
.table,
.board-card,
.fast-lane-card,
.health-strip-card,
.focus-metric,
.proof-metric,
.focus-presence,
.proof-movers {
  border-color: #dfe3e7;
}

.table-row {
  min-height: 54px;
}

@media (max-width: 980px) {
  body[data-page="landing"] .hero-shell {
    grid-template-columns: 1fr;
  }

  body[data-page="landing"] .hero-preview {
    position: static;
  }

  .data-stack-card {
    grid-template-columns: 1fr;
  }
}

/* Product fix v72: deduped scanner view support, stable checkout layout */
body.payment-page {
  height: auto;
  min-height: 100svh;
  overflow-y: auto;
}

body.payment-page .payment-shell {
  height: auto;
  min-height: 100svh;
  display: block;
  padding: clamp(18px, 4vh, 42px) 0 24px;
}

body.payment-page .payment-card {
  display: grid;
  grid-template-columns: minmax(320px, 0.82fr) minmax(440px, 1fr);
  grid-template-rows: auto auto auto auto auto;
  width: min(1120px, calc(100vw - 48px));
  min-height: 0;
  max-height: none;
  margin: 0 auto;
  overflow: visible;
  gap: 18px 46px;
}

body.payment-page .payment-card-header {
  grid-column: 1 / -1;
  grid-row: 1;
}

body.payment-page .payment-copy {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
}

body.payment-page .payment-copy h1 {
  max-width: 8.5ch;
  font-size: clamp(2.7rem, 5.8vw, 5rem);
}

body.payment-page .payment-segmented {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
}

body.payment-page .payment-plan-list {
  grid-column: 1;
  grid-row: 3;
  align-self: start;
  max-height: none;
  min-height: 0;
  overflow: visible;
}

body.payment-page .payment-plan-card {
  min-height: 88px;
}

body.payment-page .payment-informer {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
}

body.payment-page #checkout-message {
  grid-column: 1 / -1;
  grid-row: 4;
}

body.payment-page .payment-actions {
  grid-column: 2;
  grid-row: 4;
  align-self: start;
}

body.payment-page .account-billing-panel {
  grid-column: 1 / -1;
  grid-row: 5;
  margin-top: 8px;
}

body.payment-page .site-footer {
  position: static;
  width: min(1120px, calc(100vw - 48px));
  transform: none;
  margin: 14px auto 0;
  padding-top: 12px;
}

body.payment-page.light-theme .payment-plan-copy strong,
body.payment-page.light-theme .payment-plan-price,
body.payment-page.light-theme .payment-informer strong,
body.payment-page.light-theme .account-billing-head h2,
body.payment-page.light-theme .account-summary-grid strong,
body.payment-page.light-theme .billing-history-row strong {
  color: #202327;
}

body.payment-page.light-theme .payment-plan-copy small,
body.payment-page.light-theme .payment-plan-features,
body.payment-page.light-theme .payment-informer span,
body.payment-page.light-theme .account-summary-grid span,
body.payment-page.light-theme .billing-history-row span,
body.payment-page.light-theme .billing-history-title span {
  color: #646a70;
}

body.payment-page.light-theme .payment-plan-card,
body.payment-page.light-theme .payment-informer,
body.payment-page.light-theme .account-summary-grid div,
body.payment-page.light-theme .billing-history-row {
  background: rgba(255, 255, 255, 0.72);
}

body.payment-page.light-theme .payment-plan-card.active {
  background: rgba(236, 237, 232, 0.96);
  box-shadow: inset 3px 0 0 #242b31;
}

body.payment-page:not(.light-theme) .payment-plan-copy strong,
body.payment-page:not(.light-theme) .payment-plan-price,
body.payment-page:not(.light-theme) .payment-informer strong,
body.payment-page:not(.light-theme) .account-billing-head h2,
body.payment-page:not(.light-theme) .account-summary-grid strong,
body.payment-page:not(.light-theme) .billing-history-row strong {
  color: #f2f5f6;
}

@media (max-width: 900px) {
  body.payment-page .payment-card {
    grid-template-columns: 1fr;
    width: min(100%, calc(100vw - 24px));
    gap: 14px;
  }

  body.payment-page .payment-copy,
  body.payment-page .payment-segmented,
  body.payment-page .payment-plan-list,
  body.payment-page .payment-informer,
  body.payment-page #checkout-message,
  body.payment-page .payment-actions,
  body.payment-page .account-billing-panel {
    grid-column: 1;
    grid-row: auto;
  }

  body.payment-page .site-footer {
    width: min(100%, calc(100vw - 24px));
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Product fix v73: hard contrast pass for landing light market layer and scanner dark chrome */
body.terminal-landing.light-theme .market-hero {
  background:
    radial-gradient(circle at 68% 48%, rgba(111, 159, 18, 0.055), transparent 28%),
    linear-gradient(180deg, #fffdf7 0%, #f4f2eb 100%);
}

body.terminal-landing.light-theme .hero-market-layer {
  opacity: 1;
}

body.terminal-landing.light-theme .funding-matrix {
  opacity: 0.96;
}

body.terminal-landing.light-theme .funding-matrix span {
  border-color: rgba(29, 32, 36, 0.18);
  background: rgba(255, 253, 247, 0.88);
  color: #5d646b;
  box-shadow: 0 5px 16px rgba(29, 32, 36, 0.035);
}

body.terminal-landing.light-theme .funding-matrix span:nth-child(3n) {
  color: #4f8f14;
}

body.terminal-landing.light-theme .funding-matrix span:nth-child(4n) {
  color: #b83242;
}

body.terminal-landing.light-theme .venue-node {
  opacity: 1;
  border-color: rgba(29, 32, 36, 0.28);
  background: rgba(236, 234, 226, 0.96);
  color: #2a2f34;
  box-shadow: 0 8px 22px rgba(29, 32, 36, 0.08);
}

body.terminal-landing.light-theme .venue-node::before {
  background: #6f9f12;
  box-shadow: 0 0 0 4px rgba(111, 159, 18, 0.12);
}

body.terminal-landing.light-theme .venue-route {
  opacity: 0.92;
  background: linear-gradient(90deg, transparent, rgba(111, 159, 18, 0.68), transparent);
}

body.terminal-landing.light-theme .venue-route::after {
  background: #6f9f12;
  filter: blur(2px);
  opacity: 0.75;
}

body.terminal-landing.light-theme .imbalance-pulse {
  border-color: rgba(111, 159, 18, 0.3);
}

body.terminal-landing.light-theme .pulse-b {
  border-color: rgba(181, 109, 9, 0.28);
}

body.scanner-page:not(.light-theme) .scanner-topbar {
  border-color: rgba(230, 235, 238, 0.18);
  background: #0d1218;
}

body.scanner-page:not(.light-theme) .brand-logo {
  filter: invert(1) grayscale(1) contrast(1.42);
  opacity: 1;
}

body.scanner-page:not(.light-theme) .brand-mark {
  color: #f1f5f6;
  opacity: 1;
}

body.scanner-page:not(.light-theme) .brand-wrap {
  opacity: 1;
}

body.scanner-page:not(.light-theme) .bucket-pill,
body.scanner-page:not(.light-theme) .scanner-filter-toggle {
  border-color: rgba(230, 235, 238, 0.24);
  background: #151b22;
  color: #e8eef0;
}

body.scanner-page:not(.light-theme) .bucket-pill small {
  background: rgba(241, 245, 246, 0.12);
  color: #e8eef0;
}

body.scanner-page:not(.light-theme) .bucket-pill.active,
body.scanner-page:not(.light-theme) .scanner-filter-toggle.active {
  border-color: #9cff2e;
  background: #9cff2e;
  color: #071006;
}

body.scanner-page:not(.light-theme) .bucket-pill.active small {
  background: rgba(7, 16, 6, 0.12);
  color: #071006;
}

/* Product fix v74: account page becomes account/billing workspace when access is active */
body.payment-page {
  overflow-y: auto;
}

body.payment-page .payment-shell {
  width: min(1160px, calc(100vw - 48px));
  height: auto;
  min-height: 100svh;
  display: block;
  padding: 20px 0;
}

body.payment-page .payment-card {
  width: 100%;
  min-height: 0;
  max-height: none;
  overflow: visible;
  display: grid;
  grid-template-columns: minmax(300px, 0.78fr) minmax(440px, 1fr);
  grid-template-rows: auto auto auto auto;
  gap: 20px 44px;
  margin: 0 auto;
}

body.payment-page .payment-card::after {
  opacity: 0.34;
}

body.payment-page .payment-card-header {
  grid-column: 1 / -1;
  grid-row: 1;
}

body.payment-page .payment-copy {
  grid-column: 1;
  grid-row: 2;
}

body.payment-page .payment-copy h1 {
  max-width: 10ch;
  font-size: clamp(2.6rem, 5.4vw, 4.85rem);
  line-height: 0.92;
}

body.payment-page .payment-segmented {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  width: 100%;
}

body.payment-page .payment-plan-list {
  grid-column: 1;
  grid-row: 3;
  max-height: none;
  min-height: 0;
  overflow: visible;
}

body.payment-page .payment-plan-card {
  min-height: 88px;
  overflow: hidden;
}

body.payment-page .payment-informer {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
  min-height: 112px;
}

body.payment-page #checkout-message {
  grid-column: 1 / -1;
  grid-row: 4;
}

body.payment-page .payment-actions {
  grid-column: 2;
  grid-row: 4;
  align-self: start;
}

body.payment-page .account-billing-panel {
  grid-column: 1 / -1;
  grid-row: 5;
  margin-top: 4px;
}

body.payment-page.payment-active .payment-card {
  grid-template-columns: minmax(300px, 0.72fr) minmax(440px, 1fr);
  grid-template-rows: auto auto auto auto;
  gap: 18px 42px;
}

body.payment-page.payment-active .payment-card::after {
  display: none;
}

body.payment-page.payment-active .payment-copy h1 {
  max-width: 11ch;
  font-size: clamp(2.35rem, 4.4vw, 4.1rem);
}

body.payment-page.payment-active .payment-segmented,
body.payment-page.payment-active .payment-plan-list,
body.payment-page.payment-active #checkout-message.hidden {
  display: none;
}

body.payment-page.payment-active .payment-informer {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
  min-height: 144px;
  display: grid;
  align-content: center;
  gap: 8px;
}

body.payment-page.payment-active .payment-actions {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
}

body.payment-page.payment-active .account-billing-panel {
  grid-row: 4;
  padding-top: 18px;
}

body.payment-page.payment-active .account-summary-grid {
  grid-template-columns: 1.35fr 1fr 1fr 1.25fr;
}

body.payment-page .account-billing-head {
  padding-top: 0;
  border-top: 0;
}

body.payment-page .account-billing-head h2 {
  font-size: clamp(1.2rem, 2vw, 1.7rem);
}

body.payment-page .account-summary-grid div,
body.payment-page .billing-history-row {
  min-height: 66px;
}

body.payment-page .billing-history-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

body.payment-page.light-theme .payment-card,
body.payment-page.light-theme .payment-informer,
body.payment-page.light-theme .payment-plan-card,
body.payment-page.light-theme .account-summary-grid div,
body.payment-page.light-theme .billing-history-row {
  border-color: rgba(29, 32, 36, 0.18);
  background: rgba(255, 253, 247, 0.92);
  color: #202327;
}

body.payment-page.light-theme .payment-informer {
  background:
    linear-gradient(180deg, rgba(111, 159, 18, 0.075), rgba(255, 253, 247, 0.92)),
    #fffdf7;
}

body.payment-page.light-theme .payment-copy p,
body.payment-page.light-theme .payment-informer span,
body.payment-page.light-theme .payment-plan-copy small,
body.payment-page.light-theme .payment-plan-features,
body.payment-page.light-theme .account-summary-grid span,
body.payment-page.light-theme .billing-history-row span,
body.payment-page.light-theme .billing-history-title span {
  color: #596168;
}

body.payment-page:not(.light-theme) .payment-informer {
  background:
    linear-gradient(180deg, rgba(156, 255, 46, 0.07), rgba(255, 255, 255, 0.035)),
    #10161d;
}

body.payment-page:not(.light-theme) .payment-copy p,
body.payment-page:not(.light-theme) .payment-informer span,
body.payment-page:not(.light-theme) .payment-plan-copy small,
body.payment-page:not(.light-theme) .payment-plan-features,
body.payment-page:not(.light-theme) .account-summary-grid span,
body.payment-page:not(.light-theme) .billing-history-row span,
body.payment-page:not(.light-theme) .billing-history-title span {
  color: rgba(241, 245, 246, 0.66);
}

body.payment-page .site-footer {
  position: static;
  width: 100%;
  transform: none;
  margin-top: 14px;
}

@media (max-width: 920px) {
  body.payment-page .payment-shell {
    width: min(100%, calc(100vw - 24px));
  }

  body.payment-page .payment-card,
  body.payment-page.payment-active .payment-card {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  body.payment-page .payment-copy,
  body.payment-page .payment-segmented,
  body.payment-page .payment-plan-list,
  body.payment-page .payment-informer,
  body.payment-page #checkout-message,
  body.payment-page .payment-actions,
  body.payment-page .account-billing-panel,
  body.payment-page.payment-active .payment-informer,
  body.payment-page.payment-active .payment-actions,
  body.payment-page.payment-active .account-billing-panel {
    grid-column: 1;
    grid-row: auto;
  }

  body.payment-page.payment-active .account-summary-grid,
  body.payment-page .account-summary-grid {
    grid-template-columns: 1fr;
  }
}

/* Trading utility pass */
.product-terminal-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(520px, 0.9fr);
  gap: 14px;
  align-items: end;
  margin: 14px 0 12px;
  padding: 16px;
  border: 1px solid #d9dde2;
  border-radius: 10px;
  background: #ffffff;
}

.terminal-title-block h1 {
  max-width: 760px;
  margin: 8px 0 8px;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.8rem, 2.6vw, 2.65rem);
  line-height: 1.04;
  letter-spacing: -0.055em;
}

.terminal-title-block p {
  max-width: 840px;
  margin: 0;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.5;
}

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

.terminal-facts div {
  min-height: 64px;
  padding: 10px 11px;
  border: 1px solid #dfe3e7;
  border-radius: 8px;
  background: #f8f9fa;
}

.terminal-facts span {
  display: block;
  margin-bottom: 8px;
  color: rgba(51, 51, 51, 0.52);
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.terminal-facts strong {
  color: #333333;
  font-family: "Montserrat", sans-serif;
  font-size: 0.9rem;
}

body[data-page="landing"] #scanner {
  padding: 14px;
  border-radius: 10px;
  border-color: #d9dde2;
}

body[data-page="landing"] #scanner .section-title-row,
.scanner-main-card .section-title-row {
  margin-bottom: 10px;
}

body[data-page="landing"] #scanner .section-title-row h2,
.scanner-main-card .section-title-row h2 {
  margin-top: 4px;
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  letter-spacing: -0.04em;
}

.scanner-board-strip,
.scanner-fast-lane {
  display: none;
}

.scanner-toolbar {
  gap: 8px;
  margin-bottom: 8px;
}

.tabs {
  gap: 6px;
}

.bucket-pill {
  min-height: 31px;
  padding: 0 9px;
  border-radius: 6px;
  font-size: 0.78rem;
}

.bucket-pill small {
  min-width: 22px;
  min-height: 18px;
  padding: 0 6px;
  font-size: 0.66rem;
}

.scanner-input,
.scanner-select,
.scanner-filter-toggle {
  height: 32px;
  border-radius: 6px;
  font-size: 0.82rem;
}

.scanner-summary-row {
  margin: 6px 0 8px;
  font-size: 0.78rem;
}

.table {
  overflow: auto;
  border-radius: 8px;
  border-color: #d9dde2;
  background: #ffffff;
  box-shadow: none;
  font-size: 12.5px;
  font-variant-numeric: tabular-nums;
}

.table-row {
  display: grid;
  grid-template-columns:
    minmax(132px, 1.08fr)
    minmax(112px, 0.82fr)
    minmax(120px, 0.9fr)
    minmax(120px, 0.9fr)
    minmax(92px, 0.68fr)
    minmax(92px, 0.68fr)
    minmax(78px, 0.56fr)
    minmax(76px, 0.54fr)
    minmax(64px, 0.46fr)
    minmax(86px, 0.62fr)
    minmax(72px, 0.5fr)
    minmax(66px, 0.46fr)
    minmax(138px, 0.95fr);
  gap: 8px;
  align-items: center;
  min-width: 1370px;
  min-height: 46px;
  padding: 0 10px;
  background: #ffffff;
  border-bottom: 1px solid #edf0f2;
  transition: background 0.12s ease;
}

.table-head {
  position: sticky;
  top: 0;
  z-index: 2;
  min-height: 34px;
  background: #f1f3f5;
  color: rgba(51, 51, 51, 0.56);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.sort-header-cell {
  display: flex;
  min-width: 0;
  align-items: center;
}

.sort-header-cell.number-cell {
  justify-content: flex-end;
}

.sort-header {
  display: inline-flex;
  max-width: 100%;
  min-height: 24px;
  align-items: center;
  gap: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.sort-header span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sort-arrows {
  display: inline-grid;
  grid-template-rows: 7px 7px;
  align-items: center;
  justify-items: center;
  width: 8px;
  color: rgba(51, 51, 51, 0.28);
  font-size: 7px;
  line-height: 1;
}

.sort-arrow {
  display: block;
  height: 7px;
}

.sort-header.active {
  color: #242b31;
}

.sort-header.active.asc .sort-arrow.up,
.sort-header.active.desc .sort-arrow.down {
  color: #242b31;
}

.sort-header:hover {
  color: #242b31;
}

.table-row:not(.table-head):hover {
  background: #f8fafb;
  box-shadow: none;
  transform: none;
}

.table-row.selected-row {
  background: #f4f6f8;
  box-shadow:
    inset 3px 0 0 #242b31,
    inset 0 0 0 1px rgba(36, 43, 49, 0.06);
}

.featured-row {
  background: #ffffff;
}

.reveal-row {
  opacity: 1;
  transform: none;
  animation: none;
}

.number-cell {
  justify-self: stretch;
  text-align: right;
}

.symbol-cell {
  gap: 8px;
  min-width: 0;
}

.table-token-logo {
  width: 24px;
  height: 24px;
  box-shadow: none;
}

.ticker-cell {
  min-width: 0;
  gap: 1px;
}

.ticker-cell strong {
  overflow: hidden;
  font-size: 0.86rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ticker-cell small,
.bucket-cell small,
.metric-stack small,
.quality-cell small {
  color: rgba(51, 51, 51, 0.48);
  font-size: 0.68rem;
  line-height: 1.25;
}

.bucket-cell,
.metric-stack,
.quality-cell {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 2px;
}

.bucket-cell {
  align-items: flex-start;
}

.number-cell.metric-stack,
.number-cell.quality-cell {
  align-items: flex-end;
}

.venue-stack {
  min-width: 0;
}

.exchange-badge {
  display: inline-flex;
  max-width: 100%;
  min-height: 24px;
  gap: 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.exchange-badge img {
  width: 14px;
  height: 14px;
}

.exchange-badge strong {
  overflow: hidden;
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.metric-stack strong {
  color: #333333;
  font-size: 0.84rem;
  line-height: 1.2;
}

.rate-positive {
  color: #11843b !important;
}

.rate-negative {
  color: #c23a3a !important;
}

.rate-neutral {
  color: #333333 !important;
}

.status-pill {
  min-height: 21px;
  padding: 0 7px;
  border-radius: 5px;
  font-size: 0.68rem;
}

.status-pill.long {
  background: #e9f6ee;
  color: #11843b;
}

.status-pill.short {
  background: #fbecec;
  color: #c23a3a;
}

.score-pill,
.age-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 23px;
  padding: 0 7px;
  border-radius: 5px;
  background: #f2f4f6;
  color: #333333;
  font-weight: 700;
}

.age-pill.fresh {
  background: #e9f6ee;
  color: #11843b;
}

.age-pill.cooling {
  background: #fff7e6;
  color: #9a6200;
}

.age-pill.stale {
  background: #fbecec;
  color: #c23a3a;
}

.utility-actions-cell .row-actions {
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 5px;
}

.row-action-link {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 5px;
  background: #ffffff;
  border-color: #dfe3e7;
  font-size: 0.68rem;
  white-space: nowrap;
}

.row-action-link:hover {
  background: #f1f3f5;
  transform: none;
}

.row-action-link.watch.active,
.focus-watch-button.active {
  background: #242b31;
  border-color: #242b31;
}

.scanner-shell.is-preview .table {
  max-height: 620px;
}

.scanner-shell.is-locked .table {
  max-height: 680px;
}

@media (max-width: 980px) {
  .product-terminal-hero,
  .terminal-facts {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation: none !important;
    transition-duration: 0.01ms !important;
  }
}

/* Product QA pass: compact header, real terminal table, separated education */
.topbar {
  display: grid;
  grid-template-columns: minmax(250px, auto) minmax(0, 1fr);
  align-items: center;
}

.topbar-actions {
  justify-content: flex-end;
  min-width: 0;
}

.nav {
  flex: 1 1 auto;
  justify-content: flex-end;
  min-width: 0;
  gap: 18px;
}

.topbar-auth {
  flex: 0 1 auto;
  flex-wrap: nowrap;
  min-width: 0;
  gap: 8px;
}

.topbar-auth .button-ghost,
.topbar-auth .button-primary,
.language-select {
  flex: 0 0 auto;
  white-space: nowrap;
}

.language-select {
  max-width: 124px;
  height: 36px;
  min-height: 36px;
  border-radius: 8px;
  font-size: 0.82rem;
}

.user-pill {
  max-width: 190px;
  min-height: 36px;
  overflow: hidden;
  padding-inline: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.brand-wrap {
  min-width: 0;
}

.brand-text {
  min-width: 0;
}

.brand-mark,
.brand-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
}

.help-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 22px 24px;
}

.help-strip h2 {
  margin: 8px 0 8px;
  font-size: clamp(1.35rem, 2vw, 2rem);
  letter-spacing: -0.04em;
}

.help-strip p {
  max-width: 820px;
  margin: 0;
  color: rgba(51, 51, 51, 0.64);
  line-height: 1.5;
}

.value-motion-section {
  padding: 20px;
}

.value-motion-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.value-motion-card {
  min-height: 260px;
  padding: 18px;
  border: 1px solid #dfe3e7;
  border-radius: 14px;
  background:
    linear-gradient(180deg, #ffffff 0%, #f7f8f9 100%);
  overflow: hidden;
}

.value-motion-card h3 {
  margin: 18px 0 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 1.15rem;
  letter-spacing: -0.03em;
}

.value-motion-card p {
  margin: 0;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.55;
}

.motion-board,
.motion-proof,
.motion-route {
  position: relative;
  min-height: 112px;
  border: 1px solid #dfe3e7;
  border-radius: 12px;
  background: #ffffff;
  overflow: hidden;
}

.motion-board {
  display: grid;
  gap: 8px;
  align-content: center;
  padding: 18px;
}

.motion-row {
  display: block;
  height: 12px;
  width: 72%;
  border-radius: 999px;
  background: linear-gradient(90deg, #242b31 0%, #8a8f97 52%, #e9ecef 100%);
  animation: boardRankSlide 2.8s ease-in-out infinite;
}

.motion-row.wide {
  width: 92%;
  animation-delay: -0.35s;
}

.motion-row.short {
  width: 54%;
  animation-delay: -0.7s;
}

.motion-rank {
  position: absolute;
  right: 14px;
  bottom: 12px;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #242b31;
  color: #ffffff;
  font-size: 0.76rem;
  font-weight: 700;
}

.motion-proof {
  padding: 16px;
}

.motion-proof span,
.motion-proof strong {
  display: block;
}

.motion-proof span {
  color: rgba(51, 51, 51, 0.56);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.motion-proof strong {
  margin: 8px 0 16px;
  color: #11843b;
  font-family: "Montserrat", sans-serif;
  font-size: 1.65rem;
}

.motion-proof::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 52px;
  background: linear-gradient(90deg, transparent, rgba(36, 43, 49, 0.1), transparent);
  animation: proofSweep 2.4s ease-in-out infinite;
}

.motion-route {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  padding: 24px;
}

.route-dot {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #242b31;
  color: #ffffff;
  font-weight: 800;
  animation: routePulse 1.8s ease-in-out infinite;
}

.route-dot:last-child {
  animation-delay: 0.4s;
}

.route-line {
  display: block;
  height: 2px;
  margin: 0 12px;
  background: linear-gradient(90deg, #242b31, #dfe3e7, #242b31);
  background-size: 220% 100%;
  animation: routeFlow 1.8s linear infinite;
}

.locked-value {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 0 7px;
  border: 1px dashed rgba(36, 43, 49, 0.2);
  border-radius: 6px;
  background: rgba(36, 43, 49, 0.04);
  color: rgba(51, 51, 51, 0.52);
  font-size: 0.68rem;
  font-weight: 700;
  white-space: nowrap;
}

.locked-badge {
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
  color: rgba(51, 51, 51, 0.54);
}

.locked-badge small,
.preview-lock-copy {
  color: rgba(51, 51, 51, 0.56);
}

.locked-score {
  color: rgba(51, 51, 51, 0.48);
}

.locked-metric {
  background: repeating-linear-gradient(
    -45deg,
    #ffffff,
    #ffffff 8px,
    #f6f7f8 8px,
    #f6f7f8 16px
  );
}

@keyframes boardRankSlide {
  0%,
  100% {
    transform: translateX(0);
    opacity: 0.62;
  }
  50% {
    transform: translateX(18px);
    opacity: 1;
  }
}

@keyframes proofSweep {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}

@keyframes routeFlow {
  to {
    background-position: -220% 0;
  }
}

@keyframes routePulse {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.08);
  }
}

.scanner-shell {
  max-width: 100%;
  overflow: hidden;
}

.table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto !important;
  overflow-y: auto !important;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-color: rgba(36, 43, 49, 0.28) rgba(36, 43, 49, 0.06);
  scrollbar-width: thin;
}

.table::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.table::-webkit-scrollbar-track {
  background: rgba(36, 43, 49, 0.06);
  border-radius: 999px;
}

.table::-webkit-scrollbar-thumb {
  background: rgba(36, 43, 49, 0.28);
  border-radius: 999px;
}

.table-row {
  width: 1720px;
  min-width: 1720px;
  max-width: none;
  grid-template-columns:
    168px
    124px
    136px
    136px
    106px
    106px
    88px
    86px
    72px
    116px
    86px
    72px
    280px;
  gap: 8px;
  padding-inline: 10px;
}

.table-head {
  width: 1720px;
  min-width: 1720px;
}

.utility-actions-cell {
  min-width: 0;
  overflow: hidden;
}

.utility-actions-cell .row-actions {
  display: grid;
  grid-template-columns: 52px minmax(98px, 1fr) minmax(98px, 1fr);
  gap: 6px;
  width: 100%;
  margin: 0;
}

.row-action-link {
  justify-content: center;
  min-width: 0;
  width: 100%;
  overflow: hidden;
  padding-inline: 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.row-action-link.watch {
  font-weight: 700;
}

html[dir="rtl"] .table,
html[dir="rtl"] .scanner-summary-row,
html[dir="rtl"] .scanner-toolbar {
  direction: ltr;
}

.help-page {
  background: #f4f5f6;
}

.help-page-shell {
  width: min(1320px, calc(100vw - 32px));
}

.help-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: end;
  margin-bottom: 18px;
  padding: 28px;
  border: 1px solid #dfe3e7;
  border-radius: 14px;
  background: #ffffff;
}

.help-hero h1 {
  max-width: 780px;
  margin: 10px 0;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2rem, 3vw, 3.4rem);
  line-height: 1.02;
  letter-spacing: -0.055em;
}

.help-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.55;
}

.help-grid,
.help-columns {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.help-grid {
  margin-bottom: 18px;
}

.help-card,
.help-columns > div {
  padding: 20px;
  border: 1px solid #dfe3e7;
  border-radius: 14px;
  background: #ffffff;
}

.help-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 28px;
  margin-bottom: 16px;
  border: 1px solid #dfe3e7;
  border-radius: 999px;
  color: rgba(51, 51, 51, 0.62);
  font-weight: 700;
}

.help-card h2,
.help-columns h3 {
  margin: 0 0 10px;
  color: #333333;
  font-family: "Montserrat", sans-serif;
  letter-spacing: -0.03em;
}

.help-card p,
.help-columns p {
  margin: 0;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.55;
}

.help-article {
  padding: 24px;
}

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

  .topbar-actions {
    justify-content: flex-start;
  }

  .nav {
    justify-content: flex-start;
  }

  .topbar-auth {
    flex-wrap: wrap;
  }

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

@media (max-width: 760px) {
  .help-strip,
  .help-hero {
    grid-template-columns: 1fr;
  }

  .help-grid,
  .help-columns,
  .value-motion-grid {
    grid-template-columns: 1fr;
  }

  .table-row,
  .table-head {
    width: 1720px;
    min-width: 1720px;
    grid-template-columns:
      168px
      124px
      136px
      136px
      106px
      106px
      88px
      86px
      72px
      116px
      86px
      72px
      280px;
  }

  .table-head {
    display: grid;
  }
}

/* Cinematic terminal landing: data-machine, not SaaS template */
body.terminal-landing {
  --terminal-bg: #06080a;
  --terminal-panel: #0b0f13;
  --terminal-panel-2: #10161b;
  --terminal-line: rgba(155, 166, 176, 0.18);
  --terminal-line-strong: rgba(204, 214, 224, 0.28);
  --terminal-text: #eef3f7;
  --terminal-muted: rgba(238, 243, 247, 0.58);
  --terminal-dim: rgba(238, 243, 247, 0.36);
  --terminal-lime: #b8ff46;
  --terminal-cyan: #d8e0d2;
  --terminal-amber: #ffb84a;
  --terminal-red: #ff5c6a;
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 12%, rgba(184, 255, 70, 0.075), transparent 34%),
    radial-gradient(circle at 70% 0%, rgba(255, 184, 74, 0.055), transparent 32%),
    radial-gradient(circle at 88% 10%, rgba(184, 255, 70, 0.08), transparent 28%),
    linear-gradient(180deg, #06080a 0%, #0a0e12 42%, #050608 100%);
  background-color: #06080a;
  color: var(--terminal-text);
  overflow-x: hidden;
}

html:has(body.terminal-landing) {
  background: #06080a;
}

body.terminal-landing::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(circle at 50% 18%, #000 0%, transparent 72%);
}

body.terminal-landing::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.16;
  background-image:
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.22) 0 1px, transparent 1px 4px);
  mix-blend-mode: soft-light;
}

.terminal-page {
  width: min(1320px, calc(100vw - 40px));
  margin: 0 auto;
  padding: 18px 0 32px;
}

body.terminal-landing .terminal-topbar {
  position: sticky;
  top: 14px;
  z-index: 30;
  min-height: 58px;
  margin-bottom: 18px;
  padding: 10px 12px;
  border: 1px solid var(--terminal-line);
  border-radius: 0;
  background: rgba(8, 11, 14, 0.78);
  backdrop-filter: blur(18px);
}

body.terminal-landing .terminal-topbar::after {
  content: none;
}

body.terminal-landing .brand-logo {
  width: 70px;
  filter: invert(1) grayscale(1) contrast(1.4);
}

body.terminal-landing .brand-mark {
  color: var(--terminal-text);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
}

body.terminal-landing .brand-subtitle,
body.terminal-landing .nav-link {
  color: var(--terminal-muted);
}

body.terminal-landing .nav {
  gap: 22px;
}

body.terminal-landing .nav-link:hover {
  color: var(--terminal-text);
}

body.terminal-landing .button-primary,
body.terminal-landing .button-ghost {
  min-height: 38px;
  border-radius: 0;
  font-size: 0.82rem;
  font-weight: 750;
  letter-spacing: 0.01em;
}

body.terminal-landing .button-primary {
  border: 1px solid rgba(184, 255, 70, 0.52);
  background: linear-gradient(180deg, #d7ff71 0%, #9bea25 100%);
  color: #071006;
  box-shadow:
    0 0 0 1px rgba(184, 255, 70, 0.16),
    0 18px 48px rgba(184, 255, 70, 0.16);
}

body.terminal-landing .button-ghost {
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-text);
}

body.terminal-landing .language-select,
body.terminal-landing .user-pill {
  border-radius: 0;
  border-color: var(--terminal-line);
  color: var(--terminal-text);
}

body.terminal-landing .language-select {
  background-color: rgba(7, 10, 13, 0.78);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.terminal-landing .user-pill {
  max-width: 168px;
  background: rgba(255, 255, 255, 0.035);
}

body.terminal-landing .language-select:focus {
  border-color: rgba(184, 255, 70, 0.48);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 0 1px rgba(184, 255, 70, 0.12),
    0 0 30px rgba(184, 255, 70, 0.08);
}

.market-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 470px;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid var(--terminal-line);
  background:
    linear-gradient(135deg, rgba(10, 14, 18, 0.96) 0%, rgba(6, 8, 10, 0.72) 58%, rgba(11, 16, 20, 0.92) 100%);
}

.market-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.42;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 0%, rgba(184, 255, 70, 0.11) 48%, transparent 100%);
  transform: translateX(-100%);
  animation: marketSweep 5.8s cubic-bezier(0.72, 0, 0.18, 1) infinite;
}

.hero-market-layer {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.funding-matrix {
  position: absolute;
  inset: 24px 28px auto auto;
  display: grid;
  grid-template-columns: repeat(4, 92px);
  gap: 6px;
  transform: perspective(900px) rotateX(54deg) rotateZ(-11deg);
  transform-origin: right top;
  opacity: 0.72;
}

.funding-matrix span {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(238, 243, 247, 0.08);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(238, 243, 247, 0.62);
  font-family: "Inter", sans-serif;
  font-size: 0.67rem;
  font-variant-numeric: tabular-nums;
  animation: matrixTick 2.8s steps(2, end) infinite;
}

.funding-matrix span:nth-child(3n) {
  color: var(--terminal-lime);
}

.funding-matrix span:nth-child(4n) {
  color: var(--terminal-red);
}

.venue-map {
  position: absolute;
  inset: 132px 82px 84px 42%;
}

.venue-node {
  position: absolute;
  min-width: 96px;
  padding: 8px 10px;
  border: 1px solid rgba(238, 243, 247, 0.18);
  background: rgba(6, 8, 10, 0.82);
  color: var(--terminal-text);
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.venue-node::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--terminal-lime);
  box-shadow: 0 0 18px rgba(184, 255, 70, 0.58);
}

.venue-node.binance { left: 8%; top: 8%; }
.venue-node.bybit { right: 3%; top: 24%; }
.venue-node.okx { left: 0; bottom: 18%; }
.venue-node.kucoin { right: 16%; bottom: 4%; }

.venue-route {
  position: absolute;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.82), transparent);
  transform-origin: left;
  opacity: 0.72;
  animation: routeBlink 2.4s ease-in-out infinite;
}

.venue-route::after {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 36px;
  height: 5px;
  background: var(--terminal-cyan);
  filter: blur(4px);
  animation: routePacket 2.4s linear infinite;
}

.route-a { left: 18%; top: 25%; width: 66%; transform: rotate(11deg); }
.route-b { left: 12%; top: 68%; width: 58%; transform: rotate(-18deg); animation-delay: -0.7s; }
.route-c { left: 42%; top: 45%; width: 42%; transform: rotate(64deg); animation-delay: -1.1s; }

.imbalance-pulse {
  position: absolute;
  width: 148px;
  height: 148px;
  border: 1px solid rgba(184, 255, 70, 0.36);
  border-radius: 50%;
  opacity: 0;
  animation: pressurePulse 3.2s ease-out infinite;
}

.pulse-a { left: 42%; top: 25%; }
.pulse-b { right: 20%; bottom: 18%; animation-delay: -1.4s; border-color: rgba(255, 184, 74, 0.34); }

.hero-copy-block {
  position: relative;
  z-index: 2;
  align-self: end;
  max-width: 620px;
  padding: 44px 36px 38px;
}

.terminal-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 26px;
  color: rgba(238, 243, 247, 0.56);
  font-size: 0.76rem;
  font-weight: 750;
  letter-spacing: 0.03em;
  text-transform: none;
}

.feed-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--terminal-lime);
  box-shadow: 0 0 18px rgba(184, 255, 70, 0.72);
  animation: feedHeartbeat 1.55s ease-in-out infinite;
}

.hero-copy-block h1 {
  max-width: 640px;
  margin: 14px 0 14px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.58rem, 2.65vw, 2.85rem);
  line-height: 1.03;
  letter-spacing: -0.038em;
}

.hero-copy-block p {
  max-width: 520px;
  margin: 0;
  color: var(--terminal-muted);
  font-size: 0.92rem;
  line-height: 1.58;
}

.hero-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.hero-primary,
.hero-secondary {
  min-height: 46px !important;
  padding-inline: 18px !important;
}

.hero-metrics-panel {
  position: relative;
  z-index: 10;
  align-self: end;
  margin: 0 22px 22px 0;
  padding: 18px;
  border: 1px solid var(--terminal-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.018)),
    #070a0d;
}

.terminal-window-label {
  display: flex;
  justify-content: space-between;
  margin-bottom: 14px;
  color: rgba(238, 243, 247, 0.66);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.terminal-window-label::after {
  content: none;
}

.funding-chart {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(204, 214, 224, 0.16);
  background:
    radial-gradient(circle at 74% 20%, rgba(184, 255, 70, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.026), rgba(0, 0, 0, 0.16));
}

.funding-chart svg {
  display: block;
  width: 100%;
  height: auto;
}

.chart-grid-line {
  fill: none;
  stroke: rgba(238, 243, 247, 0.08);
  stroke-width: 1;
}

.spread-zone {
  fill: url(#spreadFillHero);
  opacity: 0.92;
  animation: chartZoneBreathe 4.8s ease-in-out infinite;
}

.large-chart .spread-zone {
  fill: url(#spreadFillMain);
}

.chart-line {
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-dasharray: 740;
  stroke-dashoffset: 740;
  animation: chartLineDraw 4.8s cubic-bezier(0.2, 0.82, 0.2, 1) infinite;
}

.chart-line-binance {
  stroke: var(--terminal-lime);
}

.chart-line-bybit {
  stroke: var(--terminal-red);
  animation-delay: 0.18s;
}

.chart-entry,
.chart-exit {
  stroke: rgba(238, 243, 247, 0.26);
  stroke-width: 1;
  stroke-dasharray: 6 8;
}

.chart-exit {
  stroke: rgba(255, 184, 74, 0.34);
}

.chart-dot {
  fill: var(--terminal-lime);
  filter: drop-shadow(0 0 14px rgba(184, 255, 70, 0.32));
  animation: liveDotPulse 1.45s ease-out infinite;
}

.chart-dot-b {
  fill: var(--terminal-red);
  filter: drop-shadow(0 0 14px rgba(255, 92, 106, 0.28));
  animation-delay: 0.25s;
}

.chart-caption-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border-top: 1px solid rgba(204, 214, 224, 0.12);
  background: rgba(204, 214, 224, 0.08);
}

.large-chart .chart-caption-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.chart-caption-row span {
  min-height: 34px;
  padding: 10px;
  background: rgba(0, 0, 0, 0.18);
  color: rgba(238, 243, 247, 0.5);
  font-size: 0.72rem;
}

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

.rate-pair span {
  display: grid;
  gap: 3px;
  padding: 12px;
  border: 1px solid rgba(204, 214, 224, 0.15);
  background: rgba(255, 255, 255, 0.026);
}

.rate-pair em {
  color: rgba(238, 243, 247, 0.5);
  font-size: 0.74rem;
  font-style: normal;
}

.rate-pair strong {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: 1.35rem;
  letter-spacing: -0.04em;
}

.hero-spread-focus {
  position: relative;
  margin-bottom: 14px;
  padding: 16px 14px 14px;
  border: 1px solid rgba(184, 255, 70, 0.28);
  background:
    radial-gradient(circle at 82% 22%, rgba(184, 255, 70, 0.16), transparent 38%),
    linear-gradient(180deg, rgba(184, 255, 70, 0.08), rgba(255, 255, 255, 0.018));
  overflow: hidden;
}

.hero-spread-focus::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.18), transparent);
  transform: translateX(-110%);
  animation: signalSweep 2.8s cubic-bezier(0.2, 0.8, 0.2, 1) infinite;
}

.hero-spread-focus span {
  position: relative;
  display: block;
  color: rgba(238, 243, 247, 0.62);
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.hero-spread-focus strong {
  position: relative;
  display: block;
  margin-top: 8px;
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.3rem, 3.7vw, 3.8rem);
  line-height: 0.86;
  letter-spacing: -0.072em;
  text-shadow: 0 0 34px rgba(184, 255, 70, 0.2);
  animation: numberFlicker 2.6s steps(2, end) infinite;
}

.hero-spread-focus div {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.hero-spread-focus em {
  padding: 6px 8px;
  border: 1px solid rgba(204, 214, 224, 0.16);
  background: rgba(0, 0, 0, 0.2);
  color: rgba(238, 243, 247, 0.78);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.live-metric-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--terminal-line);
  border-left: 1px solid var(--terminal-line);
}

.live-metric-grid div {
  min-height: 84px;
  padding: 12px;
  border-right: 1px solid var(--terminal-line);
  border-bottom: 1px solid var(--terminal-line);
}

.live-metric-grid span,
.sync-feed span,
.preview-lock-status span {
  display: block;
  color: var(--terminal-dim);
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.live-metric-grid strong {
  display: block;
  margin-top: 12px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: 1.65rem;
  letter-spacing: -0.04em;
}

.sync-feed {
  margin-top: 14px;
  padding: 12px;
  border: 1px solid var(--terminal-line);
  background: rgba(0, 0, 0, 0.18);
}

.sync-feed strong {
  display: block;
  margin-top: 6px;
  color: var(--terminal-muted);
  font-size: 0.8rem;
  font-weight: 650;
}

.terminal-preview-section,
.data-cinematics,
.institutional-access {
  position: relative;
  margin-top: 18px;
  border: 1px solid var(--terminal-line);
  background: rgba(9, 13, 16, 0.9);
}

.terminal-preview-section {
  padding: 18px;
  scroll-margin-top: 92px;
  overflow: hidden;
}

.terminal-preview-section::before,
.institutional-access::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.07), transparent);
  transform: translateX(-110%);
  animation: terminalDataWipe 8s ease-in-out infinite;
}

.feed-header {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.feed-header h2,
.cinematic-copy h2,
.access-left h2 {
  margin: 10px 0 0;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.12rem, 1.72vw, 1.78rem);
  line-height: 1.06;
  letter-spacing: -0.04em;
}

.feed-header p {
  max-width: 680px;
  margin: 10px 0 0;
  color: rgba(238, 243, 247, 0.6);
  font-size: 0.92rem;
  line-height: 1.48;
}

.feed-header-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.market-flow-experience {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(360px, 0.82fr);
  gap: 12px;
  margin-bottom: 12px;
}

.funding-visual-panel,
.neutral-trade-card,
.how-it-works-panel {
  position: relative;
  border: 1px solid rgba(204, 214, 224, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.014)),
    rgba(0, 0, 0, 0.22);
  overflow: hidden;
}

.funding-visual-panel {
  padding: 18px;
}

.chart-head,
.trade-card-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.chart-head span,
.trade-card-head span {
  color: rgba(238, 243, 247, 0.56);
  font-size: 0.86rem;
}

.chart-head strong {
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.28rem, 1.95vw, 1.95rem);
  line-height: 0.96;
  letter-spacing: -0.062em;
}

.large-chart {
  min-height: 280px;
}

.neutral-trade-card {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: 14px;
  padding: 18px;
}

.trade-card-head {
  display: grid;
  align-items: start;
  justify-content: stretch;
}

.trade-card-head strong {
  max-width: 360px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.05rem, 1.55vw, 1.45rem);
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.trade-legs {
  display: grid;
  gap: 10px;
}

.trade-leg {
  position: relative;
  min-height: 84px;
  padding: 14px;
  border: 1px solid rgba(204, 214, 224, 0.16);
  background: rgba(255, 255, 255, 0.024);
}

.trade-leg::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 2px;
  background: var(--terminal-lime);
  transform-origin: left center;
  animation: pressureLineWiden 2.8s ease-in-out infinite;
}

.trade-leg.short::after {
  background: var(--terminal-red);
  animation-delay: -0.9s;
}

.trade-leg span,
.trade-summary span {
  display: block;
  color: rgba(238, 243, 247, 0.48);
  font-size: 0.76rem;
}

.trade-leg strong {
  display: block;
  margin-top: 14px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.02rem, 1.55vw, 1.4rem);
  line-height: 1.06;
  letter-spacing: -0.044em;
}

.trade-summary {
  display: grid;
  align-content: end;
  gap: 1px;
  border: 1px solid rgba(204, 214, 224, 0.14);
  background: rgba(204, 214, 224, 0.08);
}

.trade-summary div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 0 12px;
  background: rgba(0, 0, 0, 0.2);
}

.trade-summary strong {
  color: var(--terminal-text);
  font-weight: 800;
  text-align: right;
}

.setup-note {
  align-self: end;
  color: rgba(238, 243, 247, 0.38);
  font-size: 0.72rem;
}

.how-it-works-panel {
  z-index: 2;
  padding: 16px;
}

.simple-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 12px;
  border: 1px solid rgba(204, 214, 224, 0.14);
  background: rgba(204, 214, 224, 0.09);
}

.simple-steps div {
  min-height: 148px;
  padding: 16px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.012)),
    #070a0d;
}

.simple-steps span {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 30px;
  border: 1px solid rgba(204, 214, 224, 0.18);
  color: rgba(238, 243, 247, 0.52);
  font-size: 0.78rem;
  font-weight: 800;
}

.simple-steps strong {
  display: block;
  margin-top: 14px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(0.98rem, 1.25vw, 1.24rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
}

.simple-steps p {
  margin: 12px 0 0;
  color: rgba(238, 243, 247, 0.58);
  line-height: 1.46;
}

.market-proof-grid,
.education-panel {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 12px;
  margin-top: 12px;
}

.market-replay-card,
.scanner-tracks-card,
.education-panel {
  border: 1px solid rgba(204, 214, 224, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.036), rgba(255, 255, 255, 0.014)),
    rgba(0, 0, 0, 0.22);
}

.market-replay-card,
.scanner-tracks-card {
  min-height: 188px;
  padding: 16px;
}

.market-replay-card > span,
.scanner-tracks-card > span {
  color: rgba(238, 243, 247, 0.48);
  font-size: 0.78rem;
}

.market-replay-card h3,
.scanner-tracks-card h3,
.education-panel h2 {
  margin: 10px 0 0;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.12rem, 1.65vw, 1.62rem);
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.replay-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 18px;
  border: 1px solid rgba(204, 214, 224, 0.14);
  background: rgba(204, 214, 224, 0.09);
}

.replay-steps div {
  min-height: 82px;
  padding: 12px;
  background: rgba(0, 0, 0, 0.18);
}

.replay-steps strong {
  display: block;
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
}

.replay-steps span {
  display: block;
  margin-top: 10px;
  color: rgba(238, 243, 247, 0.62);
  line-height: 1.35;
}

.scanner-tracks-card ul {
  display: grid;
  gap: 8px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.scanner-tracks-card li {
  padding: 10px 0;
  border-bottom: 1px solid rgba(204, 214, 224, 0.14);
  color: rgba(238, 243, 247, 0.7);
}

.education-panel {
  align-items: center;
  padding: 18px;
}

.education-panel p {
  max-width: 720px;
  margin: 12px 0 0;
  color: rgba(238, 243, 247, 0.62);
  line-height: 1.55;
}

.education-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

body.terminal-landing.light-theme {
  --terminal-bg: #f4f2ec;
  --terminal-panel: #ffffff;
  --terminal-panel-2: #eef0ea;
  --terminal-line: rgba(35, 39, 34, 0.16);
  --terminal-line-strong: rgba(35, 39, 34, 0.28);
  --terminal-text: #20231f;
  --terminal-muted: rgba(32, 35, 31, 0.66);
  --terminal-dim: rgba(32, 35, 31, 0.42);
  --terminal-lime: #5e8f13;
  --terminal-red: #c44755;
  --terminal-amber: #b56b12;
  background:
    radial-gradient(circle at 18% 12%, rgba(126, 164, 32, 0.1), transparent 34%),
    radial-gradient(circle at 70% 0%, rgba(181, 107, 18, 0.075), transparent 32%),
    linear-gradient(180deg, #f4f2ec 0%, #edece5 48%, #f8f7f2 100%);
  background-color: #f4f2ec;
}

html:has(body.terminal-landing.light-theme) {
  background: #f4f2ec;
}

body.terminal-landing.light-theme::before {
  background-image:
    linear-gradient(rgba(35, 39, 34, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(35, 39, 34, 0.045) 1px, transparent 1px);
}

body.terminal-landing.light-theme::after {
  opacity: 0.06;
  mix-blend-mode: multiply;
}

body.terminal-landing.light-theme .terminal-topbar,
body.terminal-landing.light-theme .market-hero,
body.terminal-landing.light-theme .terminal-preview-section,
body.terminal-landing.light-theme .institutional-access,
body.terminal-landing.light-theme .education-panel,
body.terminal-landing.light-theme .funding-visual-panel,
body.terminal-landing.light-theme .neutral-trade-card,
body.terminal-landing.light-theme .how-it-works-panel,
body.terminal-landing.light-theme .market-replay-card,
body.terminal-landing.light-theme .scanner-tracks-card,
body.terminal-landing.light-theme .plan-card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(242, 241, 235, 0.76)),
    #f7f6f1;
}

body.terminal-landing.light-theme .brand-logo {
  filter: none;
}

body.terminal-landing.light-theme .button-ghost,
body.terminal-landing.light-theme .language-select,
body.terminal-landing.light-theme .user-pill {
  background-color: rgba(255, 255, 255, 0.72);
  color: var(--terminal-text);
}

body.terminal-landing.light-theme .button-primary {
  border-color: rgba(35, 39, 34, 0.22);
  background: #20231f;
  color: #ffffff;
  box-shadow: 0 14px 34px rgba(35, 39, 34, 0.14);
}

body.terminal-landing.light-theme .funding-chart,
body.terminal-landing.light-theme .trade-leg,
body.terminal-landing.light-theme .trade-summary div,
body.terminal-landing.light-theme .simple-steps div,
body.terminal-landing.light-theme .replay-steps div {
  background: rgba(255, 255, 255, 0.5);
}

body.terminal-landing.light-theme .chart-caption-row span {
  background: rgba(255, 255, 255, 0.72);
  color: rgba(32, 35, 31, 0.56);
}

body.terminal-landing.light-theme .terminal-kicker,
body.terminal-landing.light-theme .chart-head span,
body.terminal-landing.light-theme .trade-card-head span,
body.terminal-landing.light-theme .trade-leg span,
body.terminal-landing.light-theme .trade-summary span,
body.terminal-landing.light-theme .simple-steps span,
body.terminal-landing.light-theme .market-replay-card > span,
body.terminal-landing.light-theme .scanner-tracks-card > span,
body.terminal-landing.light-theme .setup-note {
  color: rgba(32, 35, 31, 0.54);
}

body.terminal-landing.light-theme .feed-header p,
body.terminal-landing.light-theme .simple-steps p,
body.terminal-landing.light-theme .replay-steps span,
body.terminal-landing.light-theme .scanner-tracks-card li,
body.terminal-landing.light-theme .education-panel p {
  color: rgba(32, 35, 31, 0.64);
}

body.terminal-landing.light-theme .trade-summary strong,
body.terminal-landing.light-theme .rate-pair strong,
body.terminal-landing.light-theme .simple-steps strong,
body.terminal-landing.light-theme .market-replay-card h3,
body.terminal-landing.light-theme .scanner-tracks-card h3,
body.terminal-landing.light-theme .education-panel h2 {
  color: var(--terminal-text);
}

body.terminal-landing.light-theme .venue-node {
  opacity: 0.52;
}

.cinematic-market-preview {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
  gap: 12px;
  min-height: 520px;
  margin-bottom: 12px;
}

.opportunity-stage {
  position: relative;
  min-height: 520px;
  border: 1px solid rgba(204, 214, 224, 0.22);
  background:
    radial-gradient(circle at 18% 24%, rgba(184, 255, 70, 0.13), transparent 24%),
    radial-gradient(circle at 78% 38%, rgba(255, 92, 106, 0.12), transparent 26%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015) 48%, rgba(0, 0, 0, 0.28));
  overflow: hidden;
}

.opportunity-stage::before,
.opportunity-stage::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.opportunity-stage::before {
  inset: -40%;
  opacity: 0.24;
  background:
    conic-gradient(from 180deg at 50% 50%, transparent 0deg, rgba(184, 255, 70, 0.22) 38deg, transparent 70deg, rgba(255, 92, 106, 0.16) 148deg, transparent 210deg, rgba(255, 184, 74, 0.15) 288deg, transparent 360deg);
  animation: fundingPressureRotate 14s linear infinite;
}

.opportunity-stage::after {
  inset: 0;
  background:
    linear-gradient(90deg, transparent 0%, rgba(184, 255, 70, 0.09) 44%, rgba(184, 255, 70, 0.22) 50%, rgba(255, 184, 74, 0.08) 56%, transparent 100%);
  transform: translateX(-120%);
  animation: liquidityScan 4.6s cubic-bezier(0.68, 0, 0.2, 1) infinite;
}

.pressure-grid {
  position: absolute;
  inset: 0;
  opacity: 0.28;
  background-image:
    linear-gradient(rgba(238, 243, 247, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(238, 243, 247, 0.08) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.22));
  animation: pressureGridShift 9s linear infinite;
}

.scene-status-line {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--terminal-line);
  background: rgba(0, 0, 0, 0.28);
  color: var(--terminal-text);
}

.scene-status-line strong {
  font-size: 0.92rem;
  letter-spacing: -0.01em;
}

.scene-status-line small {
  margin-left: auto;
  color: var(--terminal-dim);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.live-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--terminal-lime);
  box-shadow: 0 0 0 0 rgba(184, 255, 70, 0.42);
  animation: liveDotPulse 1.35s ease-out infinite;
}

.market-scene {
  position: absolute;
  z-index: 4;
  border: 1px solid rgba(204, 214, 224, 0.2);
  background:
    linear-gradient(180deg, rgba(17, 23, 27, 0.92), rgba(5, 7, 9, 0.94));
  box-shadow:
    0 30px 90px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.scene-primary {
  left: 42px;
  top: 92px;
  width: min(680px, calc(100% - 84px));
  min-height: 382px;
  padding: 20px;
  animation: sceneSnapIn 7.2s cubic-bezier(0.2, 0.86, 0.14, 1) infinite;
}

.scene-secondary {
  right: 44px;
  bottom: 36px;
  width: min(390px, calc(100% - 88px));
  padding: 18px;
  animation: sceneFloatIn 7.2s cubic-bezier(0.2, 0.86, 0.14, 1) infinite;
  animation-delay: 1.15s;
}

.scene-head,
.venue-split,
.scene-result,
.money-flash {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.scene-head {
  color: var(--terminal-dim);
  font-size: 0.76rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.scene-head strong {
  color: var(--terminal-lime);
  font-size: 0.68rem;
  animation: terminalFlicker 1.35s steps(2, end) infinite;
}

.venue-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-top: 28px;
  padding: 16px;
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.025);
}

.venue-split div {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.venue-split div:last-child {
  text-align: right;
}

.venue-split span {
  color: var(--terminal-muted);
  font-size: 0.82rem;
}

.venue-split strong {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.45rem, 3.65vw, 3.9rem);
  line-height: 0.78;
  letter-spacing: -0.075em;
  filter: drop-shadow(0 0 20px rgba(184, 255, 70, 0.12));
  animation: advantageNumberSurge 2.1s steps(3, end) infinite;
}

.positive { color: var(--terminal-lime); }
.negative { color: var(--terminal-red); }

.gap-ladder {
  display: grid;
  gap: 8px;
  margin-top: 24px;
}

.gap-ladder span {
  display: block;
  width: var(--bar);
  height: 8px;
  background:
    linear-gradient(90deg, rgba(184, 255, 70, 0.2), rgba(184, 255, 70, 0.95));
  box-shadow: 0 0 24px rgba(184, 255, 70, 0.22);
  transform-origin: left center;
  animation: fundingBarSurge 2.7s cubic-bezier(0.2, 0.8, 0.1, 1) infinite;
  animation-delay: calc(var(--bar, 50%) * -0.018s);
}

.scene-result {
  margin-top: 24px;
  color: var(--terminal-muted);
}

.scene-result strong {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(3.6rem, 7vw, 6.4rem);
  line-height: 0.82;
  letter-spacing: -0.095em;
}

.money-flash {
  position: absolute;
  left: 20px;
  right: auto;
  bottom: -22px;
  min-width: 220px;
  padding: 16px 18px;
  border: 1px solid rgba(184, 255, 70, 0.36);
  background:
    linear-gradient(135deg, rgba(184, 255, 70, 0.17), rgba(255, 184, 74, 0.11)),
    #080c0b;
  color: var(--terminal-muted);
  animation: carryFlash 3.4s cubic-bezier(0.16, 1, 0.3, 1) infinite;
}

.money-flash strong {
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.4rem, 4vw, 4rem);
  letter-spacing: -0.085em;
}

.pressure-copy {
  display: grid;
  gap: 8px;
  margin-top: 20px;
}

.pressure-copy strong {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: 1.45rem;
  letter-spacing: -0.04em;
}

.pressure-copy span {
  color: var(--terminal-muted);
  line-height: 1.42;
}

.pressure-meter {
  height: 12px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid rgba(255, 92, 106, 0.24);
  background: rgba(255, 92, 106, 0.08);
}

.pressure-meter span {
  display: block;
  height: 100%;
  width: 76%;
  background:
    linear-gradient(90deg, rgba(255, 92, 106, 0.32), rgba(255, 184, 74, 0.95));
  animation: pressureMeter 2.5s cubic-bezier(0.2, 0.82, 0.17, 1) infinite;
}

.urgency-panel {
  display: grid;
  grid-template-rows: 1fr 1fr auto auto;
  gap: 12px;
}

.urgency-card {
  position: relative;
  min-height: 155px;
  padding: 18px;
  border: 1px solid var(--terminal-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015));
  overflow: hidden;
}

.urgency-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 2px;
  background: var(--terminal-lime);
  transform-origin: left center;
  animation: urgencyWindow 7.2s linear infinite;
}

.urgency-card span,
.urgency-card small {
  display: block;
  color: var(--terminal-dim);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.urgency-card strong {
  display: block;
  margin: 18px 0 12px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.2rem, 5vw, 4.35rem);
  line-height: 0.88;
  letter-spacing: -0.075em;
}

.active-window strong {
  color: var(--terminal-lime);
  animation: timerPulse 1.1s steps(2, end) infinite;
}

.closed-window {
  opacity: 0.82;
}

.closed-window::after {
  background: var(--terminal-red);
  animation-delay: -3.2s;
}

.closed-window strong {
  color: var(--terminal-red);
}

.opportunity-tape {
  display: flex;
  gap: 8px;
  max-width: 100%;
  min-height: 46px;
  padding: 10px;
  border: 1px solid var(--terminal-line);
  background: rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.opportunity-tape span {
  flex: 0 0 auto;
  padding: 8px 12px;
  border: 1px solid rgba(204, 214, 224, 0.16);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-muted);
  font-size: 0.78rem;
  white-space: nowrap;
  animation: tapeSlide 7.6s linear infinite;
}

.button-primary.block {
  display: flex;
  justify-content: center;
  width: 100%;
}

.real-board-proof {
  position: relative;
  z-index: 2;
  padding: 16px;
  border: 1px solid var(--terminal-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.014)),
    #070a0d;
}

.delta-neutral-flow {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.9fr) minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
}

.flow-leg,
.flow-core,
.flow-proof-rows div {
  position: relative;
  border: 1px solid rgba(204, 214, 224, 0.18);
  background: rgba(255, 255, 255, 0.026);
  overflow: hidden;
}

.flow-leg {
  min-height: 170px;
  padding: 18px;
}

.flow-leg::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 3px;
  background: var(--terminal-lime);
  transform-origin: left center;
  animation: pressureLineWiden 2.4s ease-in-out infinite;
}

.short-leg::after {
  background: var(--terminal-red);
  animation-delay: -0.8s;
}

.flow-leg span,
.flow-core span,
.flow-core small,
.flow-proof-rows span {
  display: block;
  color: rgba(238, 243, 247, 0.68);
  font-size: 0.74rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.flow-leg strong {
  display: block;
  margin-top: 18px;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.6rem, 5vw, 5.2rem);
  line-height: 0.86;
  letter-spacing: -0.085em;
}

.flow-leg em {
  display: block;
  margin-top: 16px;
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.2rem, 4vw, 4.2rem);
  font-style: normal;
  line-height: 0.9;
  letter-spacing: -0.08em;
}

.short-leg em {
  color: var(--terminal-red);
}

.flow-core {
  display: grid;
  place-items: center;
  min-height: 190px;
  padding: 22px;
  text-align: center;
}

.flow-core strong {
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.8rem, 5.5vw, 5.8rem);
  line-height: 0.82;
  letter-spacing: -0.095em;
}

.flow-core small {
  max-width: 260px;
  margin-top: 8px;
  line-height: 1.45;
  text-transform: none;
  letter-spacing: 0;
}

.flow-orbit {
  position: absolute;
  inset: 18px;
  pointer-events: none;
}

.flow-orbit span {
  position: absolute;
  inset: 8%;
  border: 1px solid rgba(184, 255, 70, 0.32);
  border-radius: 999px;
  opacity: 0;
  animation: pressureRingExpand 2.8s ease-out infinite;
}

.flow-orbit span:last-child {
  animation-delay: 0.9s;
}

.flow-proof-rows {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 12px;
  border: 1px solid var(--terminal-line);
  background: var(--terminal-line);
}

.flow-proof-rows div {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 58px;
  border: 0;
  padding: 12px;
  background: #070a0d;
}

.flow-proof-rows strong {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  letter-spacing: -0.04em;
}

.flow-proof-rows em {
  color: var(--terminal-lime);
  font-style: normal;
  font-weight: 800;
}

.proof-fragment-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
  color: var(--terminal-dim);
  font-size: 0.76rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.proof-fragment-head strong {
  color: var(--terminal-muted);
  font-size: 0.76rem;
}

.real-board-proof .scanner-fast-lane,
.real-board-proof .scanner-summary-row {
  display: none;
}

body.terminal-landing .real-board-proof .terminal-scanner-shell {
  max-height: 285px;
  overflow: hidden;
}

body.terminal-landing .real-board-proof .terminal-scanner-shell::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 120px;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(5, 7, 9, 0), rgba(5, 7, 9, 0.88) 62%, #050709);
}

.preview-command-line {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 0.36fr);
  gap: 10px;
  align-items: stretch;
  margin-bottom: 10px;
}

body.terminal-landing .terminal-tabs {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  gap: 0;
  border: 1px solid var(--terminal-line);
  background: rgba(0, 0, 0, 0.16);
}

body.terminal-landing .bucket-pill {
  flex: 0 0 auto;
  min-height: 42px;
  border: 0;
  border-right: 1px solid var(--terminal-line);
  border-radius: 0;
  background: transparent;
  color: var(--terminal-muted);
}

body.terminal-landing .bucket-pill.active {
  background: rgba(184, 255, 70, 0.11);
  color: var(--terminal-text);
}

body.terminal-landing .bucket-pill small {
  background: rgba(255, 255, 255, 0.08);
  color: var(--terminal-muted);
}

.preview-lock-status {
  padding: 10px 12px;
  border: 1px solid rgba(184, 255, 70, 0.2);
  background:
    repeating-linear-gradient(
      90deg,
      rgba(184, 255, 70, 0.035),
      rgba(184, 255, 70, 0.035) 2px,
      transparent 2px,
      transparent 9px
    );
}

.preview-lock-status strong {
  display: block;
  margin-top: 7px;
  color: var(--terminal-lime);
  font-size: 0.78rem;
  line-height: 1.35;
}

.terminal-summary-row {
  position: relative;
  z-index: 2;
  color: var(--terminal-muted);
}

body.terminal-landing .message-box {
  border-radius: 0;
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.04);
  color: var(--terminal-muted);
}

body.terminal-landing .terminal-scanner-shell {
  position: relative;
  z-index: 2;
  border: 1px solid var(--terminal-line);
  background: #050709;
}

body.terminal-landing .table {
  border: 0;
  border-radius: 0;
  background: #050709;
}

body.terminal-landing .table-row {
  background: rgba(7, 10, 12, 0.98);
  border-bottom: 1px solid rgba(238, 243, 247, 0.085);
  color: var(--terminal-text);
  animation: terminalRowIn 0.58s cubic-bezier(0.2, 0.82, 0.19, 1) both;
  animation-delay: calc(var(--row-index, 0) * 55ms);
}

body.terminal-landing .table-row:not(.table-head):hover {
  background: rgba(184, 255, 70, 0.065);
}

body.terminal-landing .table-head {
  background: #10151a;
  color: var(--terminal-dim);
}

body.terminal-landing .ticker-cell strong,
body.terminal-landing .metric-stack strong,
body.terminal-landing .quality-cell strong,
body.terminal-landing .exchange-badge strong {
  color: var(--terminal-text);
}

body.terminal-landing .ticker-cell small,
body.terminal-landing .bucket-cell small,
body.terminal-landing .metric-stack small,
body.terminal-landing .quality-cell small {
  color: var(--terminal-dim);
}

body.terminal-landing .table-token-logo {
  box-shadow: 0 0 0 1px rgba(238, 243, 247, 0.18);
}

body.terminal-landing .status-pill.long {
  background: rgba(184, 255, 70, 0.13);
  color: var(--terminal-lime);
}

body.terminal-landing .status-pill.short {
  background: rgba(255, 92, 106, 0.13);
  color: var(--terminal-red);
}

body.terminal-landing .age-pill.fresh {
  background: rgba(184, 255, 70, 0.13);
  color: var(--terminal-lime);
  animation: terminalFlicker 1.8s steps(2, end) infinite;
}

body.terminal-landing .age-pill.cooling {
  background: rgba(255, 184, 74, 0.13);
  color: var(--terminal-amber);
}

body.terminal-landing .locked-value {
  position: relative;
  border-color: rgba(184, 255, 70, 0.22);
  background: rgba(184, 255, 70, 0.045);
  color: rgba(238, 243, 247, 0.66);
  overflow: hidden;
}

body.terminal-landing .locked-value::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.24), transparent);
  transform: translateX(-100%);
  animation: lockedScan 2.2s ease-in-out infinite;
}

body.terminal-landing .row-action-link {
  border-radius: 0;
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-text);
}

body.terminal-landing .row-action-link.watch {
  border-color: rgba(184, 255, 70, 0.32);
  color: var(--terminal-lime);
}

body.terminal-landing .scanner-board-strip {
  display: none;
}

body.terminal-landing .preview-route-card {
  border-radius: 0;
  border-color: rgba(184, 255, 70, 0.18);
  background: linear-gradient(90deg, rgba(184, 255, 70, 0.07), rgba(255, 255, 255, 0.025));
}

.advantage-cinema {
  display: block;
  min-height: 860px;
  padding: clamp(18px, 2vw, 28px);
  scroll-margin-top: 92px;
  overflow: hidden;
  background:
    radial-gradient(circle at 24% 24%, rgba(184, 255, 70, 0.12), transparent 28%),
    radial-gradient(circle at 76% 42%, rgba(255, 92, 106, 0.1), transparent 26%),
    linear-gradient(180deg, rgba(12, 16, 19, 0.98), rgba(3, 5, 7, 0.98));
}

.advantage-cinema::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.22;
  background-image:
    linear-gradient(rgba(238, 243, 247, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(238, 243, 247, 0.06) 1px, transparent 1px);
  background-size: 72px 72px;
  animation: advantageGridDrift 12s linear infinite;
}

.advantage-header {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}

.advantage-header h2 {
  max-width: 900px;
  margin: 10px 0 0;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.4rem, 6vw, 6.8rem);
  line-height: 0.88;
  letter-spacing: -0.085em;
}

.advantage-header p {
  margin: 16px 0 0;
  color: var(--terminal-muted);
  font-size: clamp(1rem, 1.8vw, 1.35rem);
}

.advantage-timeline {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
}

.advantage-scene {
  position: relative;
  min-height: 360px;
  border: 1px solid rgba(204, 214, 224, 0.2);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)),
    rgba(0, 0, 0, 0.28);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.advantage-scene::before,
.advantage-scene::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.advantage-scene::before {
  inset: 0;
  opacity: 0.18;
  background: linear-gradient(115deg, transparent, rgba(184, 255, 70, 0.18), transparent 56%);
  transform: translateX(-110%);
  animation: advantageSceneSweep 6.2s cubic-bezier(0.65, 0, 0.2, 1) infinite;
}

.advantage-scene::after {
  inset: auto 0 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.72), transparent);
  animation: terminalFlicker 1.8s steps(2, end) infinite;
}

.scene-spread {
  grid-column: span 7;
  min-height: 440px;
  padding: 22px;
}

.scene-early {
  grid-column: span 5;
  min-height: 440px;
  padding: 22px;
}

.scene-board-reacts {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1.16fr) minmax(320px, 0.84fr);
  gap: 18px;
  min-height: 310px;
  padding: 22px;
}

.advantage-scene-meta {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: var(--terminal-dim);
  font-size: 0.75rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.advantage-scene-meta strong {
  color: var(--terminal-lime);
  animation: terminalFlicker 1.5s steps(2, end) infinite;
}

.spread-theater {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(110px, 0.6fr) minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  margin-top: 52px;
}

.venue-column {
  min-height: 188px;
  padding: 20px;
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.025);
}

.venue-column span,
.venue-column small {
  display: block;
  color: var(--terminal-dim);
  font-size: 0.75rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.venue-column strong {
  display: block;
  margin: 32px 0 14px;
  color: var(--terminal-muted);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(3.4rem, 7vw, 7.2rem);
  line-height: 0.78;
  letter-spacing: -0.105em;
}

.venue-column.hot {
  border-color: rgba(184, 255, 70, 0.34);
  background: rgba(184, 255, 70, 0.055);
}

.venue-column.hot strong {
  color: var(--terminal-lime);
  animation: advantageNumberSurge 2.2s steps(3, end) infinite;
}

.spread-pressure {
  position: relative;
  height: 190px;
}

.spread-pressure > span {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 64px;
  height: 64px;
  border: 1px solid rgba(184, 255, 70, 0.4);
  border-radius: 999px;
  transform: translate(-50%, -50%) scale(0.28);
  opacity: 0;
  animation: pressureRingExpand 2.4s ease-out infinite;
}

.spread-pressure > span:nth-child(2) { animation-delay: 0.45s; }
.spread-pressure > span:nth-child(3) { animation-delay: 0.9s; }

.pressure-line {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 2px;
  background:
    linear-gradient(90deg, rgba(238, 243, 247, 0.12), rgba(184, 255, 70, 0.9), rgba(255, 92, 106, 0.72));
  transform-origin: center;
  animation: pressureLineWiden 1.9s cubic-bezier(0.18, 0.9, 0.2, 1) infinite;
}

.advantage-money {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-top: 42px;
  padding: 18px;
  border: 1px solid rgba(184, 255, 70, 0.28);
  background:
    linear-gradient(90deg, rgba(184, 255, 70, 0.12), rgba(255, 184, 74, 0.08)),
    rgba(0, 0, 0, 0.22);
}

.advantage-money span,
.advantage-countdown span {
  color: var(--terminal-dim);
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.advantage-money strong {
  color: var(--terminal-lime);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(3.2rem, 7vw, 7rem);
  line-height: 0.82;
  letter-spacing: -0.085em;
}

.advantage-scene p {
  position: relative;
  z-index: 2;
  margin: 16px 0 0;
  color: var(--terminal-muted);
}

.heat-field {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-top: 40px;
}

.heat-field span {
  aspect-ratio: 1;
  border: 1px solid rgba(204, 214, 224, 0.12);
  background: rgba(255, 255, 255, 0.025);
  animation: heatCellIdle 4s ease-in-out infinite;
}

.heat-field span:nth-child(3n) { animation-delay: -0.8s; }
.heat-field span:nth-child(4n) { animation-delay: -1.4s; }

.heat-field .heat-hot {
  background: rgba(255, 184, 74, 0.16);
  border-color: rgba(255, 184, 74, 0.34);
  box-shadow: 0 0 34px rgba(255, 184, 74, 0.16);
}

.heat-field .heat-active {
  background: rgba(184, 255, 70, 0.26);
  border-color: rgba(184, 255, 70, 0.72);
  box-shadow: 0 0 60px rgba(184, 255, 70, 0.32);
  animation: activeHeatPulse 1.15s ease-in-out infinite;
}

.early-asset {
  position: relative;
  z-index: 3;
  display: grid;
  gap: 8px;
  margin-top: 20px;
  padding: 16px;
  border: 1px solid rgba(184, 255, 70, 0.26);
  background: rgba(0, 0, 0, 0.2);
}

.early-asset span {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.8rem, 4vw, 3.6rem);
  line-height: 0.92;
  letter-spacing: -0.07em;
}

.early-asset strong {
  color: var(--terminal-lime);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.advantage-countdown {
  position: relative;
  z-index: 2;
  margin-top: 18px;
}

.advantage-countdown strong {
  display: block;
  margin-top: 8px;
  color: var(--terminal-red);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(3.2rem, 6vw, 5.6rem);
  line-height: 0.86;
  letter-spacing: -0.08em;
}

.rerank-board {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 8px;
  align-self: stretch;
  padding-top: 42px;
}

.rerank-row {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 130px;
  align-items: center;
  gap: 16px;
  min-height: 56px;
  padding: 0 16px;
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.03);
}

.rerank-row span,
.rerank-row em {
  color: var(--terminal-dim);
  font-style: normal;
}

.rerank-row strong {
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  letter-spacing: -0.04em;
}

.rerank-row em {
  justify-self: end;
  color: var(--terminal-lime);
}

.row-a { animation: rerankDrop 4.5s cubic-bezier(0.2, 0.9, 0.18, 1) infinite; }
.row-b { animation: rerankHold 4.5s cubic-bezier(0.2, 0.9, 0.18, 1) infinite; }
.row-c {
  border-color: rgba(184, 255, 70, 0.4);
  background: rgba(184, 255, 70, 0.07);
  animation: rerankSurge 4.5s cubic-bezier(0.2, 0.9, 0.18, 1) infinite;
}

.rerank-flash {
  justify-self: start;
  margin-top: 4px;
  padding: 8px 10px;
  border: 1px solid rgba(255, 184, 74, 0.32);
  background: rgba(255, 184, 74, 0.1);
  color: var(--terminal-amber);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  animation: terminalFlicker 1.1s steps(2, end) infinite;
}

.board-react-copy {
  position: relative;
  z-index: 2;
  align-self: end;
  padding: 20px;
  border: 1px solid var(--terminal-line);
  background: rgba(0, 0, 0, 0.24);
}

.board-react-copy strong {
  display: block;
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2rem, 4vw, 4.6rem);
  line-height: 0.92;
  letter-spacing: -0.075em;
}

.board-react-copy span {
  display: block;
  max-width: 520px;
  margin-top: 14px;
  color: var(--terminal-muted);
  line-height: 1.45;
}

.institutional-access {
  display: grid;
  grid-template-columns: minmax(0, 0.86fr) minmax(420px, 1.14fr);
  gap: 20px;
  padding: 18px;
}

.institutional-access .access-left h2 {
  font-size: clamp(1.35rem, 2.15vw, 2.18rem);
  line-height: 1.06;
}

.access-left p {
  max-width: 620px;
  margin: 12px 0 18px;
  color: var(--terminal-muted);
  font-size: 0.93rem;
  line-height: 1.54;
}

.access-objections {
  display: grid;
  border-top: 1px solid var(--terminal-line);
}

.access-objections div {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 18px;
  padding: 12px 0;
  border-bottom: 1px solid var(--terminal-line);
}

.access-objections strong {
  color: var(--terminal-text);
}

.access-objections span {
  color: var(--terminal-muted);
}

body.terminal-landing .institutional-plan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--terminal-line);
  background: var(--terminal-line);
}

body.terminal-landing .plan-card {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  min-height: 100%;
  padding: clamp(16px, 1.6vw, 22px);
  border-radius: 0;
  border: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018)),
    #070a0d;
  box-shadow: none;
}

body.terminal-landing .plan-card.highlighted {
  position: relative;
  background:
    radial-gradient(circle at 72% 14%, rgba(184, 255, 70, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(184, 255, 70, 0.09), rgba(255, 255, 255, 0.026)),
    #080d08;
  box-shadow: inset 0 0 0 1px rgba(184, 255, 70, 0.38);
}

body.terminal-landing .plan-card.highlighted::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.12), transparent);
  transform: translateX(-110%);
  animation: advantageSceneSweep 6.4s ease-in-out infinite;
}

body.terminal-landing .plan-title-row h3,
body.terminal-landing .plan-price {
  color: var(--terminal-text);
}

body.terminal-landing .plan-title-row p,
body.terminal-landing .feature-list {
  color: rgba(238, 243, 247, 0.72);
}

body.terminal-landing .plan-title-row {
  align-items: flex-start;
  gap: 14px;
}

body.terminal-landing .plan-title-row h3 {
  font-size: clamp(1.08rem, 1.65vw, 1.45rem);
  letter-spacing: -0.035em;
}

body.terminal-landing .plan-title-row p {
  margin-top: 7px;
  font-size: 0.76rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body.terminal-landing .plan-price {
  margin: 18px 0 16px;
  font-size: clamp(1.95rem, 3.15vw, 3.05rem);
  line-height: 0.95;
  letter-spacing: -0.062em;
}

body.terminal-landing .plan-price span {
  margin-left: 8px;
  color: rgba(238, 243, 247, 0.72);
  font-size: clamp(0.8rem, 1.1vw, 1rem);
  letter-spacing: -0.02em;
}

body.terminal-landing .plan-card .feature-list {
  display: grid;
  gap: 7px;
  margin-bottom: 18px;
}

body.terminal-landing .plan-card .feature-list li {
  color: rgba(238, 243, 247, 0.78);
  line-height: 1.35;
}

body.terminal-landing .plan-badge {
  border-radius: 0;
  border-color: rgba(184, 255, 70, 0.55);
  background: var(--terminal-lime);
  color: #071006;
  font-weight: 850;
  box-shadow: 0 0 32px rgba(184, 255, 70, 0.18);
}

.terminal-footer {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 18px;
  padding: 18px 0 0;
  color: var(--terminal-dim);
}

.terminal-footer div,
.terminal-footer nav {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.terminal-footer strong,
.terminal-footer a {
  color: var(--terminal-muted);
}

@keyframes marketSweep {
  0%,
  46% { transform: translateX(-110%); }
  72% { transform: translateX(110%); }
  100% { transform: translateX(110%); }
}

@keyframes signalSweep {
  0%,
  52% { transform: translateX(-110%); opacity: 0; }
  64% { opacity: 1; }
  82% { transform: translateX(110%); opacity: 0.3; }
  100% { transform: translateX(110%); opacity: 0; }
}

@keyframes numberFlicker {
  0%,
  100% { filter: brightness(1); transform: translateY(0); }
  42% { filter: brightness(1.18); }
  44% { filter: brightness(1.52); transform: translateY(-1px); }
  46% { filter: brightness(1); transform: translateY(0); }
}

@keyframes chartLineDraw {
  0% { stroke-dashoffset: 740; opacity: 0.28; }
  28% { opacity: 1; }
  58% { stroke-dashoffset: 0; opacity: 1; }
  100% { stroke-dashoffset: 0; opacity: 0.84; }
}

@keyframes chartZoneBreathe {
  0%,
  100% { opacity: 0.62; transform: translateX(0); }
  50% { opacity: 1; transform: translateX(4px); }
}

@keyframes matrixTick {
  0%,
  100% { opacity: 0.38; }
  50% { opacity: 0.92; }
}

@keyframes routeBlink {
  0%,
  100% { opacity: 0.32; }
  50% { opacity: 0.9; }
}

@keyframes routePacket {
  to { transform: translateX(260px); }
}

@keyframes pressurePulse {
  0% { transform: scale(0.2); opacity: 0; }
  12% { opacity: 0.42; }
  100% { transform: scale(1.8); opacity: 0; }
}

@keyframes feedHeartbeat {
  0%,
  100% { transform: scale(1); opacity: 0.72; }
  50% { transform: scale(1.45); opacity: 1; }
}

@keyframes terminalDataWipe {
  0%,
  58% { transform: translateX(-110%); }
  80% { transform: translateX(110%); }
  100% { transform: translateX(110%); }
}

@keyframes terminalRowIn {
  from {
    opacity: 0;
    transform: translateX(-18px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes terminalFlicker {
  0%,
  100% { filter: brightness(1); }
  50% { filter: brightness(1.35); }
}

@keyframes lockedScan {
  to { transform: translateX(100%); }
}

@keyframes slabPulse {
  0%,
  55% { opacity: 0; transform: translateX(-80%); }
  72% { opacity: 1; }
  100% { opacity: 0; transform: translateX(80%); }
}

@keyframes advantageGridDrift {
  to { background-position: 72px 144px; }
}

@keyframes advantageSceneSweep {
  0%,
  42% { opacity: 0; transform: translateX(-110%); }
  56% { opacity: 0.22; }
  78% { opacity: 0; transform: translateX(110%); }
  100% { opacity: 0; transform: translateX(110%); }
}

@keyframes advantageNumberSurge {
  0%,
  100% { filter: brightness(1); transform: translateY(0); }
  50% { filter: brightness(1.45); transform: translateY(-2px); }
}

@keyframes pressureRingExpand {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(0.22); }
  18% { opacity: 0.52; }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(2.6); }
}

@keyframes pressureLineWiden {
  0% { transform: scaleX(0.28); opacity: 0.32; }
  42% { transform: scaleX(1); opacity: 1; }
  100% { transform: scaleX(0.66); opacity: 0.62; }
}

@keyframes heatCellIdle {
  0%,
  100% { opacity: 0.34; transform: scale(1); }
  50% { opacity: 0.72; transform: scale(1.02); }
}

@keyframes activeHeatPulse {
  0%,
  100% { filter: brightness(1); transform: scale(1); }
  50% { filter: brightness(1.45); transform: scale(1.08); }
}

@keyframes rerankDrop {
  0%,
  28% { transform: translateY(0); opacity: 1; }
  50%,
  100% { transform: translateY(74px); opacity: 0.48; }
}

@keyframes rerankHold {
  0%,
  28% { transform: translateY(0); }
  50%,
  100% { transform: translateY(0); }
}

@keyframes rerankSurge {
  0%,
  20% { transform: translateY(0) scale(1); }
  48%,
  76% { transform: translateY(-128px) scale(1.035); }
  100% { transform: translateY(-128px) scale(1.015); }
}

@keyframes fundingPressureRotate {
  to { transform: rotate(360deg); }
}

@keyframes liquidityScan {
  0%,
  34% { transform: translateX(-120%); opacity: 0; }
  48% { opacity: 1; }
  70% { transform: translateX(120%); opacity: 0.22; }
  100% { transform: translateX(120%); opacity: 0; }
}

@keyframes pressureGridShift {
  to { background-position: 42px 84px; }
}

@keyframes liveDotPulse {
  0% { box-shadow: 0 0 0 0 rgba(184, 255, 70, 0.42); }
  72% { box-shadow: 0 0 0 12px rgba(184, 255, 70, 0); }
  100% { box-shadow: 0 0 0 0 rgba(184, 255, 70, 0); }
}

@keyframes sceneSnapIn {
  0% { opacity: 0; transform: translate3d(-28px, 22px, 0) scale(0.96); filter: blur(7px); }
  11%,
  58% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
  65% { transform: translate3d(0, -8px, 0) scale(1.01); }
  84%,
  100% { opacity: 0.92; transform: translate3d(0, -8px, 0) scale(0.995); }
}

@keyframes sceneFloatIn {
  0%,
  10% { opacity: 0; transform: translate3d(28px, 18px, 0); filter: blur(6px); }
  24%,
  72% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
  100% { opacity: 0.86; transform: translate3d(-6px, -7px, 0); }
}

@keyframes fundingBarSurge {
  0% { transform: scaleX(0.28); opacity: 0.38; }
  34%,
  72% { transform: scaleX(1); opacity: 1; }
  100% { transform: scaleX(0.64); opacity: 0.62; }
}

@keyframes carryFlash {
  0%,
  22% { opacity: 0; transform: translate3d(18px, 18px, 0) scale(0.92); }
  34%,
  70% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
  82%,
  100% { opacity: 0.82; transform: translate3d(-3px, -4px, 0) scale(0.985); }
}

@keyframes pressureMeter {
  0% { transform: scaleX(0.2); opacity: 0.5; }
  48% { transform: scaleX(1); opacity: 1; }
  100% { transform: scaleX(0.74); opacity: 0.72; }
}

@keyframes urgencyWindow {
  0% { transform: scaleX(1); opacity: 1; }
  68% { transform: scaleX(0.2); opacity: 0.8; }
  100% { transform: scaleX(0); opacity: 0; }
}

@keyframes timerPulse {
  0%,
  100% { filter: brightness(1); }
  50% { filter: brightness(1.35); }
}

@keyframes tapeSlide {
  to { transform: translateX(-60px); }
}

@media (max-width: 1180px) {
  .market-hero,
  .market-flow-experience,
  .market-proof-grid,
  .education-panel,
  .cinematic-market-preview,
  .institutional-access,
  .preview-command-line {
    grid-template-columns: 1fr;
  }

  .advantage-timeline,
  .scene-board-reacts {
    grid-template-columns: 1fr;
  }

  .scene-spread,
  .scene-early,
  .scene-board-reacts {
    grid-column: 1 / -1;
  }

  .hero-metrics-panel {
    margin: 0 22px 22px;
  }

  .venue-map {
    inset: 160px 32px 110px 34%;
  }
}

@media (max-width: 760px) {
  .terminal-page {
    width: min(100vw - 20px, 100%);
    padding-top: 10px;
  }

  .market-hero {
    min-height: 560px;
  }

  .hero-copy-block {
    padding: 34px 18px 28px;
  }

  .hero-copy-block h1 {
    font-size: clamp(1.8rem, 10.5vw, 2.85rem);
  }

  .funding-matrix {
    inset: 70px -80px auto auto;
    grid-template-columns: repeat(4, 82px);
  }

  .venue-map {
    inset: 240px 10px 170px 10px;
  }

  .feed-header,
  .terminal-footer,
  .advantage-header,
  .access-objections div {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }

  .advantage-cinema {
    min-height: auto;
  }

  .spread-theater {
    grid-template-columns: 1fr;
    margin-top: 28px;
  }

  .spread-pressure {
    height: 90px;
  }

  .rerank-row {
    grid-template-columns: 44px minmax(0, 1fr) 92px;
  }

  .cinematic-market-preview,
  .opportunity-stage,
  .market-flow-experience {
    min-height: auto;
  }

  .large-chart {
    min-height: auto;
  }

  .chart-head,
  .rate-pair,
  .simple-steps,
  .replay-steps {
    grid-template-columns: 1fr;
  }

  .education-actions {
    justify-content: flex-start;
  }

  .chart-caption-row,
  .large-chart .chart-caption-row {
    grid-template-columns: 1fr 1fr;
  }

  .neutral-trade-card,
  .funding-visual-panel {
    padding: 14px;
  }

  .opportunity-stage {
    padding: 0 12px 14px;
  }

  .scene-status-line {
    margin: 0 -12px;
    flex-wrap: wrap;
  }

  .scene-status-line small {
    flex: 1 0 100%;
    margin-left: 18px;
  }

  .market-scene {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    width: 100%;
  }

  .scene-primary,
  .scene-secondary {
    margin-top: 12px;
    animation-duration: 8.4s;
  }

  .money-flash {
    position: relative;
    right: auto;
    bottom: auto;
    margin-top: 16px;
  }

  .urgency-panel {
    grid-template-rows: auto;
  }

  .real-board-proof {
    padding: 12px;
  }

  .proof-fragment-head {
    display: grid;
    gap: 5px;
  }

  .delta-neutral-flow,
  .flow-proof-rows {
    grid-template-columns: 1fr;
  }

  .flow-leg,
  .flow-core {
    min-height: 132px;
  }

  .flow-proof-rows div {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr) auto;
  }

  body.terminal-landing .institutional-plan-grid {
    grid-template-columns: 1fr;
  }
}

/* Viewport composition system for access and checkout screens */
body.auth-page,
body.payment-page {
  --terminal-bg: #06080a;
  --terminal-panel: #0b0f13;
  --terminal-panel-2: #10161b;
  --terminal-line: rgba(155, 166, 176, 0.18);
  --terminal-line-strong: rgba(204, 214, 224, 0.28);
  --terminal-text: #eef3f7;
  --terminal-muted: rgba(238, 243, 247, 0.58);
  --terminal-dim: rgba(238, 243, 247, 0.36);
  --terminal-lime: #b8ff46;
  --terminal-cyan: #7de7ff;
  --terminal-amber: #ffb84a;
  --terminal-red: #ff5c6a;
  height: 100vh;
  height: max(100vh, 100dvh, 100lvh);
  min-height: 100vh;
  min-height: max(100vh, 100dvh, 100lvh);
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 18%, rgba(184, 255, 70, 0.1), transparent 30%),
    radial-gradient(circle at 86% 12%, rgba(125, 231, 255, 0.08), transparent 28%),
    linear-gradient(180deg, #06080a 0%, #0b0f13 55%, #050608 100%);
  color: var(--terminal-text);
}

body.auth-page::before,
body.payment-page::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  width: auto;
  height: auto;
  border-radius: 0;
  pointer-events: none;
  filter: none;
  opacity: 0.42;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.028) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: radial-gradient(circle at 50% 42%, #000 0%, transparent 72%);
  animation: accessGridLock 5.4s ease-in-out both;
}

body.auth-page::after,
body.payment-page::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  width: auto;
  height: auto;
  right: auto;
  top: auto;
  border-radius: 0;
  pointer-events: none;
  filter: none;
  opacity: 0.9;
  background:
    linear-gradient(90deg, transparent 0%, rgba(184, 255, 70, 0.07) 48%, transparent 100%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 5px);
  transform: translateX(-100%);
  animation: gatewaySweep 7.4s cubic-bezier(0.72, 0, 0.18, 1) infinite;
  mix-blend-mode: screen;
}

body.auth-page .landing-backdrop,
body.payment-page .landing-backdrop {
  display: none;
}

body.auth-page .auth-shell,
body.payment-page .payment-shell {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100vw - clamp(24px, 5vw, 72px)));
  height: 100vh;
  height: max(100vh, 100dvh, 100lvh);
  min-height: 100vh;
  min-height: max(100vh, 100dvh, 100lvh);
  margin: 0 auto;
  padding: clamp(12px, 2.2dvh, 22px) 0 clamp(8px, 1.5dvh, 16px);
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  align-content: stretch;
  gap: clamp(8px, 1.4dvh, 14px);
}

body.auth-page .auth-card,
body.payment-page .payment-card {
  position: relative;
  isolation: isolate;
  align-self: center;
  justify-self: center;
  width: 100%;
  max-height: calc(100vh - clamp(58px, 8dvh, 82px));
  max-height: calc(max(100vh, 100dvh, 100lvh) - clamp(58px, 8dvh, 82px));
  min-height: clamp(460px, 74dvh, 640px);
  padding: clamp(16px, 2.8dvh, 28px);
  overflow: hidden;
  border-radius: 0;
  border: 1px solid var(--terminal-line-strong);
  background:
    linear-gradient(135deg, rgba(13, 18, 23, 0.94), rgba(8, 11, 14, 0.86)),
    radial-gradient(circle at 0 0, rgba(184, 255, 70, 0.1), transparent 38%);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.035),
    0 26px 88px rgba(0, 0, 0, 0.42);
  animation: accessFrameResolve 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
}

body.auth-page .auth-card::before,
body.payment-page .payment-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0.38;
  background:
    linear-gradient(90deg, transparent, rgba(184, 255, 70, 0.08), transparent),
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 100% 100%, 100% 34px;
}

body.auth-page .auth-card::after,
body.payment-page .payment-card::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  left: 50%;
  background: linear-gradient(180deg, transparent, rgba(184, 255, 70, 0.28), transparent);
  opacity: 0.7;
  pointer-events: none;
}

body.auth-page .auth-card {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr);
  grid-template-rows: auto minmax(0, 1fr) auto auto;
  column-gap: clamp(20px, 4.4vw, 58px);
  row-gap: clamp(8px, 1.8dvh, 16px);
}

body.auth-page .auth-card-header,
body.payment-page .payment-card-header {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) minmax(116px, 170px);
  align-items: center;
  min-height: 42px;
  margin: 0;
  padding-bottom: clamp(8px, 1.5dvh, 14px);
  border-bottom: 1px solid var(--terminal-line);
}

body.auth-page .auth-card-header .button-ghost,
body.payment-page .payment-card-header .button-ghost {
  grid-column: 1;
  grid-row: 1;
  justify-self: start;
}

body.auth-page .auth-logo,
body.payment-page .auth-logo {
  grid-column: 2;
  grid-row: 1;
  justify-self: center;
  width: clamp(72px, 7.6vw, 96px);
  margin: 0;
  color: var(--terminal-text);
  filter: invert(1) grayscale(1) contrast(1.35);
  opacity: 0.92;
}

body.auth-page .auth-card-spacer,
body.payment-page .auth-card-spacer {
  display: none;
}

body.auth-page .auth-card-header .language-select,
body.payment-page .payment-card-header .language-select {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
}

body.auth-page .auth-copy {
  grid-column: 1;
  grid-row: 2;
  align-self: center;
  max-width: 620px;
}

body.auth-page .auth-copy h1,
body.payment-page .payment-copy h1 {
  margin: clamp(8px, 1.3dvh, 12px) 0 clamp(10px, 1.8dvh, 16px);
  color: var(--terminal-text);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.35rem, 6.4dvh, 4.9rem);
  line-height: 0.92;
  letter-spacing: -0.075em;
}

body.auth-page .section-kicker,
body.payment-page .section-kicker {
  width: fit-content;
  min-height: 28px;
  padding: 7px 10px;
  border-radius: 0;
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-muted);
  font-family: "Montserrat", sans-serif;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.auth-page .auth-copy p,
body.payment-page .payment-copy p {
  max-width: 500px;
  margin: 0;
  color: var(--terminal-muted);
  font-size: clamp(0.98rem, 1.8dvh, 1.08rem);
  line-height: 1.56;
}

body.auth-page .auth-form {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: center;
  display: grid;
  gap: clamp(8px, 1.45dvh, 12px);
  width: 100%;
  margin: 0;
  padding: clamp(14px, 2.2dvh, 20px);
  border: 1px solid var(--terminal-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.048), rgba(255, 255, 255, 0.02));
}

body.auth-page .field-shell {
  gap: 6px;
}

body.auth-page .field-label {
  color: var(--terminal-dim);
  font-family: "Montserrat", sans-serif;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

body.auth-page .field-input-wrap {
  min-height: clamp(42px, 6dvh, 52px);
  padding: 0 12px;
  border-radius: 0;
  border-color: var(--terminal-line);
  background: rgba(2, 4, 6, 0.68);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025);
}

body.auth-page .field-input-wrap:focus-within {
  border-color: rgba(184, 255, 70, 0.52);
  box-shadow:
    0 0 0 1px rgba(184, 255, 70, 0.14),
    0 0 42px rgba(184, 255, 70, 0.08);
}

body.auth-page .field-input-wrap input,
body.auth-page .auth-form input {
  min-height: clamp(42px, 6dvh, 52px);
  color: var(--terminal-text);
  font-size: 0.95rem;
}

body.auth-page .field-input-wrap input::placeholder {
  color: var(--terminal-dim);
}

body.auth-page .field-toggle,
body.auth-page .text-link {
  color: var(--terminal-lime);
}

body.auth-page .auth-action-stack,
body.payment-page .payment-actions {
  gap: 8px;
}

body.auth-page .auth-meta-row {
  grid-column: 1;
  grid-row: 3;
  align-items: end;
  margin: 0;
  padding-top: clamp(8px, 1.6dvh, 14px);
  border-top: 1px solid var(--terminal-line);
}

body.auth-page .form-note,
body.auth-page .password-helper span,
body.auth-page .checkbox-row,
body.auth-page .auth-copy p,
body.payment-page .payment-copy p,
body.payment-page .payment-informer span,
body.payment-page .payment-plan-features,
body.payment-page .payment-plan-copy small {
  color: var(--terminal-muted);
}

body.auth-page .form-note {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.13em;
}

body.auth-page .form-note .copy-line {
  padding: 5px 7px;
  border: 1px solid var(--terminal-line);
  color: var(--terminal-dim);
  background: rgba(255, 255, 255, 0.028);
}

body.auth-page .password-helper {
  gap: 8px;
  font-size: 0.78rem;
}

body.auth-page .auth-form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: -2px;
  color: var(--terminal-muted);
  font-size: 0.78rem;
}

body.auth-page .auth-security-note {
  color: var(--terminal-muted);
  line-height: 1.4;
}

body.auth-page .field-message {
  color: #ff8c8c;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

body.auth-page .field-shell.is-error .field-input-wrap {
  border-color: rgba(255, 99, 99, 0.62);
  box-shadow:
    0 0 0 1px rgba(255, 99, 99, 0.18),
    0 0 32px rgba(255, 99, 99, 0.1);
}

body.auth-page .password-strength {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 22px;
  padding-top: 6px;
  color: var(--terminal-muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.auth-page .password-strength::before,
body.auth-page .password-strength::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  background: rgba(255, 255, 255, 0.08);
}

body.auth-page .password-strength::after {
  right: auto;
  width: var(--score-width, 0%);
  background: var(--terminal-lime);
  transition: width 0.18s ease, background 0.18s ease;
}

body.auth-page .password-strength[data-score="0"] { --score-width: 0%; }
body.auth-page .password-strength[data-score="1"] { --score-width: 25%; }
body.auth-page .password-strength[data-score="2"] { --score-width: 50%; }
body.auth-page .password-strength[data-score="3"] { --score-width: 75%; }
body.auth-page .password-strength[data-score="4"] { --score-width: 100%; }

body.auth-page .password-strength[data-score="1"]::after {
  background: #ff6b6b;
}

body.auth-page .password-strength[data-score="2"]::after,
body.auth-page .password-strength[data-score="3"]::after {
  background: #f7b84b;
}

body.auth-page .recover-dev-link {
  display: inline-flex;
  margin-left: 8px;
  font-weight: 850;
}

body.auth-page .terms-checkbox {
  margin: 0;
  padding: 9px 10px;
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.025);
  line-height: 1.35;
}

body.auth-page .checkbox-row input {
  accent-color: var(--terminal-lime);
}

body.auth-page #auth-message,
body.payment-page #checkout-message {
  grid-column: 1 / -1;
  margin: 0;
  border-radius: 0;
}

body.auth-page .button-primary,
body.auth-page .button-ghost,
body.payment-page .button-primary,
body.payment-page .button-secondary,
body.payment-page .button-ghost {
  min-height: clamp(40px, 5.8dvh, 48px);
  border-radius: 0;
  font-family: "Montserrat", sans-serif;
  font-size: 0.86rem;
  font-weight: 850;
  letter-spacing: 0.01em;
}

body.auth-page .button-primary,
body.payment-page .button-primary {
  border: 1px solid rgba(184, 255, 70, 0.58);
  background: linear-gradient(180deg, #d7ff71 0%, #9bea25 100%);
  color: #071006;
  box-shadow:
    0 0 0 1px rgba(184, 255, 70, 0.14),
    0 18px 48px rgba(184, 255, 70, 0.14);
}

body.auth-page .button-primary:disabled,
body.payment-page .button-primary:disabled {
  cursor: not-allowed;
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.055);
  color: var(--terminal-dim);
  box-shadow: none;
}

body.auth-page .button-ghost,
body.payment-page .button-secondary,
body.payment-page .button-ghost {
  border: 1px solid var(--terminal-line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--terminal-text);
  box-shadow: none;
}

body.auth-page .icon-only,
body.payment-page .icon-only {
  width: 38px;
  min-height: 38px;
  padding: 0;
}

body.auth-page .language-select,
body.payment-page .language-select {
  height: 38px;
  max-width: 168px;
  border-radius: 0;
  border: 1px solid var(--terminal-line);
  background-color: rgba(7, 10, 13, 0.78);
  color: var(--terminal-text);
  font-size: 0.82rem;
}

body.payment-page .payment-card {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(300px, 0.72fr);
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  column-gap: clamp(18px, 3.6vw, 46px);
  row-gap: clamp(8px, 1.55dvh, 14px);
}

body.payment-page .payment-card-header {
  grid-column: 1 / -1;
}

body.payment-page .payment-copy {
  grid-column: 1;
  grid-row: 2;
  align-self: end;
}

body.payment-page .payment-segmented {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  margin: 0;
  padding: 3px;
  border-radius: 0;
  border-color: var(--terminal-line);
  background: rgba(255, 255, 255, 0.03);
}

body.payment-page .segment-button {
  min-height: 38px;
  border-radius: 0;
  color: rgba(238, 243, 247, 0.72);
}

body.payment-page .segment-button.active {
  background: rgba(184, 255, 70, 0.12);
  color: var(--terminal-lime);
}

body.payment-page .payment-plan-list {
  grid-column: 1;
  grid-row: 3 / span 2;
  align-self: stretch;
  min-height: 0;
  max-height: min(270px, 34dvh);
  margin: 0;
  overflow: auto;
  border: 1px solid var(--terminal-line);
  background: rgba(2, 4, 6, 0.42);
}

body.payment-page .payment-plan-card {
  padding: clamp(10px, 1.7dvh, 14px) 12px;
  border-bottom: 1px solid var(--terminal-line);
  border-radius: 0;
  background: transparent;
  color: var(--terminal-text);
}

body.payment-page .payment-plan-card:first-child,
body.payment-page .payment-plan-card:last-child {
  border-radius: 0;
}

body.payment-page .payment-plan-card.active {
  background:
    linear-gradient(90deg, rgba(184, 255, 70, 0.16), rgba(255, 255, 255, 0.026));
  box-shadow: inset 3px 0 0 var(--terminal-lime);
}

body.payment-page .payment-plan-radio {
  border-color: var(--terminal-line-strong);
  background: rgba(2, 4, 6, 0.84);
}

body.payment-page .payment-plan-radio.active {
  border-color: var(--terminal-lime);
  box-shadow: inset 0 0 0 5px var(--terminal-lime);
}

body.payment-page .payment-plan-copy strong,
body.payment-page .payment-plan-price,
body.payment-page .payment-informer strong {
  color: var(--terminal-text);
}

body.payment-page .payment-plan-copy small,
body.payment-page .payment-plan-features,
body.payment-page .payment-informer span {
  color: rgba(238, 243, 247, 0.72);
}

body.payment-page .payment-plan-price {
  font-size: clamp(1rem, 2dvh, 1.3rem);
  letter-spacing: -0.04em;
}

body.payment-page .payment-plan-features {
  font-size: 0.82rem;
  line-height: 1.45;
}

body.payment-page .payment-informer {
  grid-column: 2;
  grid-row: 3;
  margin: 0;
  padding: clamp(12px, 2.1dvh, 18px);
  border-radius: 0;
  border-color: var(--terminal-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.025));
}

body.payment-page .payment-actions {
  grid-column: 2;
  grid-row: 4;
  align-self: end;
  margin: 0;
}

body.auth-page .site-footer,
body.payment-page .site-footer {
  position: fixed;
  left: 50%;
  bottom: clamp(10px, 2dvh, 22px);
  z-index: 3;
  width: min(1180px, calc(100vw - clamp(24px, 5vw, 72px)));
  transform: translateX(-50%);
  margin: 0;
  padding: clamp(7px, 1.2dvh, 11px) 0 0;
  border-top: 1px solid var(--terminal-line);
  background: transparent;
  color: var(--terminal-dim);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

body.auth-page .site-footer-copy,
body.payment-page .site-footer-copy {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

body.auth-page .site-footer-copy strong,
body.payment-page .site-footer-copy strong,
body.auth-page .site-footer-copy span,
body.payment-page .site-footer-copy span,
body.auth-page .site-footer-nav a,
body.payment-page .site-footer-nav a {
  color: var(--terminal-dim);
  font-family: "Montserrat", sans-serif;
  font-size: 0.65rem;
  font-weight: 750;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
}

body.auth-page .site-footer-copy span,
body.payment-page .site-footer-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
}

body.auth-page .site-footer-nav,
body.payment-page .site-footer-nav {
  flex-wrap: nowrap;
  gap: 12px;
}

body.auth-page .site-footer-nav a:hover,
body.payment-page .site-footer-nav a:hover {
  color: var(--terminal-text);
}

@keyframes accessFrameResolve {
  from {
    opacity: 0;
    transform: translateY(18px) scale(0.985);
    filter: blur(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes gatewaySweep {
  0%,
  52% {
    transform: translateX(-110%);
    opacity: 0;
  }
  68% {
    opacity: 0.9;
  }
  88%,
  100% {
    transform: translateX(110%);
    opacity: 0;
  }
}

@keyframes accessGridLock {
  0% {
    opacity: 0;
    transform: scale(1.025);
  }
  100% {
    opacity: 0.42;
    transform: scale(1);
  }
}

@media (min-width: 1181px) and (min-height: 760px) {
  body.terminal-landing .market-hero {
    min-height: min(560px, calc(100dvh - 116px));
  }
}

@media (max-width: 820px), (max-height: 680px) {
  body.auth-page,
  body.payment-page {
    height: auto;
    min-height: 100svh;
    overflow-y: auto;
  }

  body.auth-page .auth-shell,
  body.payment-page .payment-shell {
    width: min(100vw - 20px, 100%);
    height: auto;
    min-height: 100svh;
    display: block;
    padding: 10px 0 12px;
  }

  body.auth-page .auth-card,
  body.payment-page .payment-card {
    display: grid;
    grid-template-columns: 1fr;
    min-height: auto;
    max-height: none;
    padding: 16px;
    row-gap: 12px;
  }

  body.auth-page .auth-card::after,
  body.payment-page .payment-card::after {
    display: none;
  }

  body.auth-page .auth-card-header,
  body.payment-page .payment-card-header,
  body.auth-page .auth-copy,
  body.auth-page .auth-form,
  body.auth-page .auth-meta-row,
  body.auth-page #auth-message,
  body.payment-page .payment-copy,
  body.payment-page .payment-segmented,
  body.payment-page .payment-plan-list,
  body.payment-page .payment-informer,
  body.payment-page .payment-actions,
  body.payment-page #checkout-message {
    grid-column: 1;
    grid-row: auto;
  }

  body.auth-page .auth-copy h1,
  body.payment-page .payment-copy h1 {
    font-size: clamp(2.15rem, 12vw, 3.2rem);
  }

  body.auth-page .auth-form {
    padding: 12px;
  }

  body.payment-page .payment-plan-list {
    max-height: none;
  }

  body.auth-page .site-footer,
  body.payment-page .site-footer {
    position: static;
    width: 100%;
    transform: none;
    margin-top: 10px;
    flex-direction: column;
    align-items: flex-start;
  }

  body.auth-page .site-footer-copy,
  body.payment-page .site-footer-copy,
  body.auth-page .site-footer-nav,
  body.payment-page .site-footer-nav {
    flex-wrap: wrap;
  }
}

/* Platform consistency pass: institutional light mode, shared controls, scanner workflow */
:root {
  --finance-bg: #ebe9e4;
  --finance-bg-soft: #f3f1ec;
  --finance-paper: #fbfaf7;
  --finance-paper-strong: #ffffff;
  --finance-ink: #242426;
  --finance-muted: rgba(36, 36, 38, 0.64);
  --finance-dim: rgba(36, 36, 38, 0.44);
  --finance-line: rgba(31, 34, 38, 0.13);
  --finance-line-strong: rgba(31, 34, 38, 0.2);
  --finance-graphite: #2e3135;
  --finance-green: #168044;
  --finance-red: #ba3e47;
  --finance-amber: #9b650c;
  --finance-lime: #9bff36;
}

.language-picker {
  position: relative;
  z-index: 20;
  flex: 0 0 auto;
  min-width: 124px;
}

.language-picker-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid var(--terminal-line, rgba(255, 255, 255, 0.16));
  border-radius: 0;
  background: rgba(255, 255, 255, 0.04);
  color: var(--terminal-text, #eef3f7);
  font-family: "Montserrat", sans-serif;
  font-size: 0.78rem;
  font-weight: 760;
  cursor: pointer;
}

.language-picker-trigger::after {
  content: "⌄";
  color: currentColor;
  opacity: 0.58;
  transition: transform 0.18s ease;
}

.language-picker.open .language-picker-trigger::after {
  transform: rotate(180deg);
}

.language-picker-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  display: grid;
  width: max(180px, 100%);
  max-height: min(330px, calc(100vh - 140px));
  padding: 6px;
  overflow: auto;
  border: 1px solid var(--terminal-line-strong, rgba(255, 255, 255, 0.22));
  border-radius: 0;
  background: rgba(8, 11, 14, 0.98);
  box-shadow: 0 22px 72px rgba(0, 0, 0, 0.34);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-6px);
  transition:
    opacity 0.16s ease,
    transform 0.16s ease;
}

.language-picker.open .language-picker-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.language-picker-menu button {
  min-height: 34px;
  padding: 0 10px;
  border: 0;
  background: transparent;
  color: rgba(238, 243, 247, 0.74);
  font-family: "Montserrat", sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.language-picker-menu button:hover,
.language-picker-menu button.active {
  background: rgba(184, 255, 70, 0.12);
  color: var(--terminal-lime, #b8ff46);
}

html[dir="rtl"] .language-picker-menu {
  right: auto;
  left: 0;
}

html[dir="rtl"] .language-picker-menu button {
  text-align: right;
}

body.terminal-landing.light-theme,
body.scanner-page.light-theme,
body.help-page.light-theme,
body.auth-page.light-theme,
body.payment-page.light-theme {
  --terminal-bg: var(--finance-bg);
  --terminal-panel: var(--finance-paper);
  --terminal-panel-2: #f4f2ed;
  --terminal-line: var(--finance-line);
  --terminal-line-strong: var(--finance-line-strong);
  --terminal-text: var(--finance-ink);
  --terminal-muted: var(--finance-muted);
  --terminal-dim: var(--finance-dim);
  --terminal-lime: #6f9f12;
  --terminal-cyan: #4b5c6a;
  --terminal-amber: var(--finance-amber);
  --terminal-red: var(--finance-red);
  background:
    radial-gradient(circle at 18% -8%, rgba(36, 43, 49, 0.075), transparent 32%),
    radial-gradient(circle at 92% 4%, rgba(155, 255, 54, 0.08), transparent 24%),
    linear-gradient(180deg, var(--finance-bg-soft) 0%, var(--finance-bg) 100%);
  color: var(--finance-ink);
}

html:has(body.scanner-page.light-theme),
html:has(body.help-page.light-theme),
html:has(body.auth-page.light-theme),
html:has(body.payment-page.light-theme) {
  background: var(--finance-bg);
}

body.light-theme .language-picker-trigger,
body.light-theme .button-ghost,
body.light-theme .user-pill,
body.light-theme .scanner-input,
body.light-theme .scanner-select,
body.light-theme .scanner-filter-toggle {
  border-color: var(--finance-line);
  background: rgba(255, 255, 255, 0.62);
  color: var(--finance-ink);
}

body.light-theme .language-picker-menu {
  border-color: var(--finance-line-strong);
  background: rgba(251, 250, 247, 0.985);
  box-shadow: 0 22px 56px rgba(31, 34, 38, 0.14);
}

body.light-theme .language-picker-menu button {
  color: var(--finance-muted);
}

body.light-theme .language-picker-menu button:hover,
body.light-theme .language-picker-menu button.active {
  background: rgba(46, 49, 53, 0.08);
  color: var(--finance-ink);
}

body.light-theme .button-primary {
  border-color: var(--finance-graphite);
  background: var(--finance-graphite);
  color: #ffffff;
  box-shadow: none;
}

body.light-theme .topbar,
body.light-theme .scanner-command-bar,
body.light-theme .scanner-main-card,
body.light-theme .scanner-detail-card,
body.light-theme .help-hero,
body.light-theme .help-market-lab,
body.light-theme .help-card,
body.light-theme .help-columns > div,
body.light-theme .help-article,
body.light-theme .auth-card,
body.light-theme .payment-card,
body.light-theme .payment-plan-list,
body.light-theme .payment-informer,
body.light-theme .plan-card {
  border-color: var(--finance-line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(251, 250, 247, 0.94)),
    var(--finance-paper);
  color: var(--finance-ink);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 18px 46px rgba(31, 34, 38, 0.06);
}

body.light-theme .section-kicker,
body.light-theme .terminal-kicker,
body.light-theme .pill,
body.light-theme .refresh,
body.light-theme .plan-badge {
  border-color: var(--finance-line);
  background: rgba(255, 255, 255, 0.64);
  color: var(--finance-muted);
}

body.light-theme .brand-logo,
body.auth-page.light-theme .auth-logo,
body.payment-page.light-theme .auth-logo {
  filter: none;
}

body.auth-page .auth-card-header,
body.payment-page .payment-card-header {
  grid-template-columns: 42px minmax(78px, 1fr) minmax(124px, auto) auto;
  column-gap: 10px;
}

body.auth-page .auth-card-header > .icon-only,
body.payment-page .payment-card-header > .icon-only {
  grid-column: 1;
  justify-self: start;
}

body.auth-page .auth-logo,
body.payment-page .auth-logo {
  grid-column: 2;
  justify-self: center;
}

body.auth-page .auth-card-header .language-picker,
body.payment-page .payment-card-header .language-picker {
  grid-column: 3;
  justify-self: end;
}

body.auth-page .auth-card-header .theme-toggle,
body.payment-page .payment-card-header .theme-toggle {
  grid-column: 4;
  justify-self: end;
}

body.auth-page.light-theme,
body.payment-page.light-theme {
  overflow: hidden;
}

body.auth-page.light-theme::before,
body.payment-page.light-theme::before {
  opacity: 0.32;
  background-image:
    linear-gradient(rgba(36, 43, 49, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36, 43, 49, 0.045) 1px, transparent 1px);
}

body.auth-page.light-theme::after,
body.payment-page.light-theme::after {
  opacity: 0.32;
  background:
    linear-gradient(90deg, transparent 0%, rgba(46, 49, 53, 0.08) 48%, transparent 100%),
    repeating-linear-gradient(0deg, rgba(36, 43, 49, 0.06) 0 1px, transparent 1px 5px);
  mix-blend-mode: multiply;
}

body.auth-page.light-theme .auth-copy h1,
body.payment-page.light-theme .payment-copy h1,
body.help-page.light-theme h1,
body.help-page.light-theme h2,
body.scanner-page.light-theme h1,
body.scanner-page.light-theme h2,
body.scanner-page.light-theme h3 {
  color: var(--finance-ink);
}

body.auth-page.light-theme .auth-form,
body.auth-page.light-theme .field-input-wrap,
body.auth-page.light-theme .terms-checkbox,
body.payment-page.light-theme .payment-segmented,
body.payment-page.light-theme .payment-plan-card,
body.payment-page.light-theme .payment-informer {
  border-color: var(--finance-line);
  background: rgba(255, 255, 255, 0.58);
}

body.auth-page.light-theme .field-input-wrap input,
body.auth-page.light-theme .auth-form input {
  color: var(--finance-ink);
}

body.auth-page.light-theme .field-toggle,
body.auth-page.light-theme .text-link {
  color: var(--finance-graphite);
}

body.auth-page.light-theme .field-message {
  color: #9f2f32;
}

body.auth-page.light-theme .auth-security-note,
body.auth-page.light-theme .password-strength {
  color: var(--finance-muted);
}

body.auth-page.light-theme .password-strength::before {
  background: rgba(36, 43, 49, 0.1);
}

body.auth-page.light-theme .form-note .copy-line {
  border-color: var(--finance-line);
  background: rgba(46, 49, 53, 0.035);
  color: var(--finance-dim);
}

body.payment-page.light-theme .segment-button {
  color: var(--finance-muted);
}

body.payment-page.light-theme .segment-button.active,
body.payment-page.light-theme .payment-plan-card.active {
  background: rgba(46, 49, 53, 0.06);
  color: var(--finance-ink);
  box-shadow: inset 3px 0 0 var(--finance-graphite);
}

body.payment-page.light-theme .payment-plan-radio.active {
  border-color: var(--finance-graphite);
  box-shadow: inset 0 0 0 5px var(--finance-graphite);
}

.help-market-lab {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(420px, 1fr);
  gap: 18px;
  align-items: stretch;
  margin-bottom: 18px;
  padding: 24px;
  border: 1px solid #dfe3e7;
  border-radius: 14px;
  background: #ffffff;
  overflow: hidden;
}

.help-lab-copy {
  display: grid;
  align-content: center;
}

.help-lab-copy h2 {
  margin: 10px 0;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.help-lab-copy p {
  max-width: 560px;
  margin: 0;
  color: rgba(51, 51, 51, 0.66);
  line-height: 1.55;
}

.help-lab-chart {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(160px, 1fr) auto auto;
  gap: 12px;
  min-height: 310px;
  padding: 18px;
  border: 1px solid #dfe3e7;
  border-radius: 12px;
  background:
    linear-gradient(90deg, rgba(36, 43, 49, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(36, 43, 49, 0.035) 1px, transparent 1px),
    #fafafa;
  background-size: 48px 48px;
}

.lab-venue-row,
.lab-summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid rgba(31, 34, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

.lab-venue-row span,
.lab-summary span {
  color: rgba(51, 51, 51, 0.56);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.lab-venue-row strong,
.lab-summary strong {
  font-family: "Montserrat", sans-serif;
  font-size: 1.05rem;
}

.lab-lines {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(31, 34, 38, 0.1);
  background:
    linear-gradient(180deg, transparent 0 33%, rgba(31, 34, 38, 0.06) 33% 34%, transparent 34% 66%, rgba(31, 34, 38, 0.06) 66% 67%, transparent 67%);
}

.lab-line {
  position: absolute;
  left: 8%;
  right: 8%;
  top: 50%;
  height: 3px;
  border-radius: 999px;
  transform-origin: left center;
}

.lab-line.positive {
  background: linear-gradient(90deg, #168044, #9bff36);
  transform: translateY(-18px) rotate(-9deg);
  animation: labPositive 3.4s ease-in-out infinite;
}

.lab-line.negative {
  background: linear-gradient(90deg, #ba3e47, #ff6670);
  transform: translateY(18px) rotate(9deg);
  animation: labNegative 3.4s ease-in-out infinite;
}

.lab-spread-zone {
  position: absolute;
  inset: 28% 10%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(155, 255, 54, 0.18), rgba(186, 62, 71, 0.12), transparent 64%);
  filter: blur(2px);
  animation: labZonePulse 3.4s ease-in-out infinite;
}

body.scanner-page.light-theme {
  background:
    radial-gradient(circle at 9% -6%, rgba(46, 49, 53, 0.08), transparent 32%),
    radial-gradient(circle at 84% 0%, rgba(155, 255, 54, 0.08), transparent 28%),
    linear-gradient(180deg, #f3f1ec 0%, #ebe9e4 100%);
}

body.scanner-page.light-theme .scanner-topbar,
body.scanner-page.light-theme .scanner-command-bar,
body.scanner-page.light-theme .scanner-main-card,
body.scanner-page.light-theme .scanner-detail-card {
  background: rgba(251, 250, 247, 0.88);
  border-color: var(--finance-line);
}

body.scanner-page.light-theme .table {
  border-color: var(--finance-line);
  background: var(--finance-paper-strong);
}

body.scanner-page.light-theme .table-head {
  background: #e4e2dc;
  color: var(--finance-muted);
}

body.scanner-page.light-theme .table-row {
  background: #fbfaf7;
  border-bottom-color: rgba(31, 34, 38, 0.08);
}

body.scanner-page.light-theme .table-row:not(.table-head):hover,
body.scanner-page.light-theme .table-row.selected-row {
  background: #f1efea;
}

body.scanner-page.light-theme .exchange-badge,
body.scanner-page.light-theme .score-pill,
body.scanner-page.light-theme .locked-value,
body.scanner-page.light-theme .health-strip-card,
body.scanner-page.light-theme .board-card,
body.scanner-page.light-theme .fast-lane-card,
body.scanner-page.light-theme .focus-metric,
body.scanner-page.light-theme .proof-metric,
body.scanner-page.light-theme .focus-presence,
body.scanner-page.light-theme .proof-movers {
  background: rgba(255, 255, 255, 0.62);
  border-color: var(--finance-line);
}

body.help-page.light-theme {
  background:
    radial-gradient(circle at 8% 0%, rgba(46, 49, 53, 0.08), transparent 32%),
    linear-gradient(180deg, #f3f1ec 0%, #ebe9e4 100%);
}

body.help-page.light-theme .help-lab-chart {
  border-color: var(--finance-line);
  background:
    linear-gradient(90deg, rgba(36, 43, 49, 0.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(36, 43, 49, 0.045) 1px, transparent 1px),
    #f7f5ef;
  background-size: 48px 48px;
}

.scanner-select,
.scanner-input {
  appearance: none;
  -webkit-appearance: none;
}

.scanner-select {
  padding-right: 28px;
  background-image:
    linear-gradient(45deg, transparent 50%, currentColor 50%),
    linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position:
    calc(100% - 16px) 50%,
    calc(100% - 11px) 50%;
  background-size:
    5px 5px,
    5px 5px;
  background-repeat: no-repeat;
}

html[dir="rtl"] .scanner-select {
  padding-right: 10px;
  padding-left: 28px;
  background-position:
    16px 50%,
    11px 50%;
}

@keyframes labPositive {
  0%,
  100% {
    transform: translateY(-14px) rotate(-6deg);
  }
  50% {
    transform: translateY(-28px) rotate(-13deg);
  }
}

@keyframes labNegative {
  0%,
  100% {
    transform: translateY(14px) rotate(6deg);
  }
  50% {
    transform: translateY(28px) rotate(13deg);
  }
}

@keyframes labZonePulse {
  0%,
  100% {
    opacity: 0.34;
    transform: scaleX(0.82);
  }
  50% {
    opacity: 0.82;
    transform: scaleX(1.04);
  }
}

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

@media (max-width: 860px) {
  body.auth-page .auth-card-header,
  body.payment-page .payment-card-header {
    grid-template-columns: 38px minmax(58px, 1fr) auto;
  }

  body.auth-page .auth-card-header .theme-toggle,
  body.payment-page .payment-card-header .theme-toggle {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }

  body.auth-page .auth-card-header .language-picker,
  body.payment-page .payment-card-header .language-picker {
    grid-column: 3;
  }

  .language-picker {
    min-width: 112px;
  }

  .language-picker-trigger {
    min-height: 36px;
    padding-inline: 10px;
    font-size: 0.74rem;
  }

  .help-market-lab {
    padding: 14px;
    border-radius: 14px;
  }

  .help-lab-chart {
    min-height: 260px;
    padding: 12px;
  }
}

@media (max-width: 760px) {
  .topbar {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .topbar-actions,
  .nav,
  .topbar-auth {
    width: 100%;
  }

  .nav {
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 2px;
  }

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

  .topbar-auth .language-picker,
  .topbar-auth .button-ghost,
  .topbar-auth .button-primary,
  .topbar-auth .user-pill {
    width: 100%;
    max-width: none;
  }

  .scanner-command-bar,
  .scanner-grid {
    grid-template-columns: 1fr;
  }

  .scanner-status-row,
  .scanner-controls,
  .tabs {
    grid-template-columns: 1fr;
  }

  .scanner-side-rail {
    position: static;
  }

  .scanner-summary-row {
    display: grid;
    gap: 6px;
  }

  .table {
    max-height: 68vh;
  }

  .table-row,
  .table-head {
    min-width: 1320px;
  }

  .help-page-shell,
  .scanner-page-shell {
    width: min(100vw - 18px, 100%);
  }

  .help-hero,
  .help-market-lab,
  .help-grid,
  .help-columns {
    grid-template-columns: 1fr;
  }

  .help-hero h1,
  .help-lab-copy h2 {
    font-size: clamp(1.8rem, 10vw, 2.6rem);
  }

  body.auth-page,
  body.payment-page,
  body.auth-page.light-theme,
  body.payment-page.light-theme {
    overflow-y: auto;
  }
}

/* Final scanner QA override: workstation first, marketing second. Keep this last. */
body.scanner-page {
  background:
    radial-gradient(circle at 14% -14%, rgba(38, 41, 45, 0.055), transparent 30%),
    linear-gradient(180deg, #f4f2ed 0%, #ebe8e2 100%);
  color: #292b2f;
}

body.scanner-page:not(.light-theme) {
  --scanner-bg: #080a0d;
  --scanner-panel: #0f1318;
  --scanner-panel-soft: #141a20;
  --scanner-border: rgba(230, 235, 238, 0.13);
  --scanner-border-strong: rgba(230, 235, 238, 0.2);
  --scanner-text: #f0f3f4;
  --scanner-muted: rgba(240, 243, 244, 0.68);
  --scanner-dim: rgba(240, 243, 244, 0.45);
  background:
    radial-gradient(circle at 12% -14%, rgba(155, 255, 54, 0.07), transparent 27%),
    radial-gradient(circle at 88% -8%, rgba(98, 133, 255, 0.06), transparent 24%),
    linear-gradient(180deg, #0b0e12 0%, #050608 100%);
  color: var(--scanner-text);
}

body.scanner-page .landing-backdrop,
body.scanner-page .scanner-command-bar::before {
  display: none !important;
}

body.scanner-page .reveal,
body.scanner-page .reveal-row,
body.scanner-page .copy-line,
body.scanner-page .copy-item {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  filter: none !important;
}

body.scanner-page .scanner-page-shell {
  width: min(1520px, calc(100vw - 32px));
  padding-top: 12px;
}

body.scanner-page .scanner-topbar {
  display: grid;
  grid-template-columns: minmax(250px, auto) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  min-height: 58px;
  margin-bottom: 12px;
  padding: 10px 14px;
  border: 1px solid rgba(38, 41, 45, 0.14);
  border-radius: 10px;
  background: rgba(251, 250, 247, 0.94);
  box-shadow: 0 12px 36px rgba(30, 32, 35, 0.05);
  backdrop-filter: none;
}

body.scanner-page:not(.light-theme) .scanner-topbar {
  border-color: var(--scanner-border);
  background: rgba(15, 19, 24, 0.94);
  box-shadow: none;
}

body.scanner-page .topbar::after {
  display: none;
}

body.scanner-page .brand-text {
  gap: 2px;
}

body.scanner-page .brand-mark {
  font-size: 0.84rem;
  letter-spacing: 0.12em;
}

body.scanner-page .brand-subtitle {
  color: rgba(41, 43, 47, 0.58);
  font-size: 0.8rem;
}

body.scanner-page:not(.light-theme) .brand-subtitle {
  color: var(--scanner-muted);
}

body.scanner-page .topbar-actions {
  justify-content: flex-end;
  gap: 12px;
}

body.scanner-page .nav {
  flex: 0 1 auto;
  gap: 4px;
}

body.scanner-page .nav-link {
  min-height: 34px;
  padding: 0 10px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: rgba(41, 43, 47, 0.62);
  font-size: 0.82rem;
  font-weight: 740;
}

body.scanner-page .nav-link:hover {
  background: rgba(38, 41, 45, 0.06);
  color: #292b2f;
}

body.scanner-page:not(.light-theme) .nav-link {
  color: var(--scanner-muted);
}

body.scanner-page:not(.light-theme) .nav-link:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--scanner-text);
}

body.scanner-page .topbar-auth {
  gap: 7px;
}

body.scanner-page .language-picker {
  min-width: 112px;
}

body.scanner-page .language-picker-trigger,
body.scanner-page .button-ghost,
body.scanner-page .account-link,
body.scanner-page .scanner-help-link,
body.scanner-page .user-pill {
  min-height: 35px;
  border-radius: 7px;
  border-color: rgba(38, 41, 45, 0.15);
  background: rgba(255, 255, 255, 0.6);
  color: #292b2f;
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .language-picker-trigger,
body.scanner-page:not(.light-theme) .button-ghost,
body.scanner-page:not(.light-theme) .account-link,
body.scanner-page:not(.light-theme) .user-pill {
  border-color: var(--scanner-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--scanner-text);
}

body.scanner-page .scanner-command-bar,
body.scanner-page .scanner-main-card,
body.scanner-page .scanner-detail-card {
  border: 1px solid rgba(38, 41, 45, 0.14);
  border-radius: 12px;
  background: rgba(251, 250, 247, 0.92);
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .scanner-command-bar,
body.scanner-page:not(.light-theme) .scanner-main-card,
body.scanner-page:not(.light-theme) .scanner-detail-card {
  border-color: var(--scanner-border);
  background: rgba(15, 19, 24, 0.94);
}

body.scanner-page .scanner-command-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
  margin-bottom: 12px;
  padding: 14px 16px;
}

body.scanner-page .scanner-page-copy {
  gap: 5px;
  padding: 0;
}

body.scanner-page .scanner-page-copy .section-kicker,
body.scanner-page .scanner-main-card .section-kicker,
body.scanner-page .scanner-side-head .section-kicker {
  width: fit-content;
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(41, 43, 47, 0.54);
  font-size: 0.67rem;
  font-weight: 840;
  letter-spacing: 0.08em;
}

body.scanner-page:not(.light-theme) .scanner-page-copy .section-kicker,
body.scanner-page:not(.light-theme) .scanner-main-card .section-kicker,
body.scanner-page:not(.light-theme) .scanner-side-head .section-kicker {
  color: var(--scanner-dim);
}

body.scanner-page .scanner-page-copy h1 {
  margin: 0;
  color: #292b2f;
  font-size: clamp(1.75rem, 2.25vw, 2.48rem);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

body.scanner-page:not(.light-theme) .scanner-page-copy h1 {
  color: var(--scanner-text);
}

body.scanner-page .scanner-page-copy p {
  max-width: 790px;
  margin: 5px 0 0;
  color: rgba(41, 43, 47, 0.68);
  font-size: 0.94rem;
  line-height: 1.45;
}

body.scanner-page:not(.light-theme) .scanner-page-copy p {
  color: var(--scanner-muted);
}

body.scanner-page .scanner-status-row {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  max-width: 680px;
}

body.scanner-page .scanner-status-row .stat {
  min-width: 136px;
  min-height: 58px;
  padding: 9px 11px;
  border: 1px solid rgba(38, 41, 45, 0.13);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.54);
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat {
  border-color: var(--scanner-border);
  background: rgba(255, 255, 255, 0.035);
}

body.scanner-page .scanner-status-row .stat span {
  color: rgba(41, 43, 47, 0.48);
  font-size: 0.64rem;
  letter-spacing: 0.08em;
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat span {
  color: var(--scanner-dim);
}

body.scanner-page .scanner-status-row .stat strong {
  margin-top: 6px;
  color: #292b2f;
  font-size: 0.92rem;
  line-height: 1.22;
}

body.scanner-page:not(.light-theme) .scanner-status-row .stat strong {
  color: var(--scanner-text);
}

body.scanner-page .scanner-grid {
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 12px;
}

body.scanner-page .scanner-main-card,
body.scanner-page .scanner-detail-card {
  padding: 14px;
}

body.scanner-page .section-title-row {
  align-items: center;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(38, 41, 45, 0.08);
}

body.scanner-page:not(.light-theme) .section-title-row {
  border-bottom-color: var(--scanner-border);
}

body.scanner-page .section-title-row h2,
body.scanner-page .scanner-side-head h2 {
  color: #292b2f;
  font-size: clamp(1.35rem, 1.6vw, 1.82rem);
  letter-spacing: -0.04em;
}

body.scanner-page:not(.light-theme) .section-title-row h2,
body.scanner-page:not(.light-theme) .scanner-side-head h2 {
  color: var(--scanner-text);
}

body.scanner-page .section-meta {
  gap: 8px;
  color: rgba(41, 43, 47, 0.58);
  font-size: 0.78rem;
}

body.scanner-page:not(.light-theme) .section-meta {
  color: var(--scanner-muted);
}

body.scanner-page .refresh {
  min-height: 32px;
  padding: 7px 10px;
  border: 1px solid rgba(38, 41, 45, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.52);
}

body.scanner-page:not(.light-theme) .refresh {
  border-color: var(--scanner-border);
  background: rgba(255, 255, 255, 0.035);
}

body.scanner-page .scanner-toolbar {
  margin-top: 12px;
  gap: 10px;
}

body.scanner-page .tabs {
  gap: 6px;
}

body.scanner-page .tab-button,
body.scanner-page .scanner-filter-toggle {
  min-height: 34px;
  border-radius: 7px;
  font-size: 0.82rem;
  font-weight: 700;
}

body.scanner-page .scanner-controls {
  grid-template-columns: minmax(180px, 1.05fr) minmax(132px, 0.7fr) minmax(118px, 0.55fr) minmax(150px, 0.75fr) auto auto;
  gap: 7px;
}

body.scanner-page .scanner-input,
body.scanner-page .scanner-select {
  min-height: 36px;
  border-radius: 7px;
  border-color: rgba(38, 41, 45, 0.14);
  background-color: rgba(255, 255, 255, 0.66);
  color: #292b2f;
  font-size: 0.86rem;
}

body.scanner-page:not(.light-theme) .scanner-input,
body.scanner-page:not(.light-theme) .scanner-select {
  border-color: var(--scanner-border);
  background-color: rgba(255, 255, 255, 0.04);
  color: var(--scanner-text);
}

body.scanner-page .scanner-summary-row {
  margin: 9px 0 8px;
  color: rgba(41, 43, 47, 0.62);
  font-size: 0.78rem;
}

body.scanner-page:not(.light-theme) .scanner-summary-row {
  color: var(--scanner-muted);
}

body.scanner-page .scanner-hint {
  color: rgba(41, 43, 47, 0.46);
}

body.scanner-page:not(.light-theme) .scanner-hint {
  color: var(--scanner-dim);
}

body.scanner-page .scanner-health-strip,
body.scanner-page .scanner-board-strip,
body.scanner-page .scanner-fast-lane {
  display: none !important;
}

body.scanner-page .scanner-shell {
  border-radius: 10px;
  border-color: rgba(38, 41, 45, 0.12);
  background: rgba(255, 255, 255, 0.42);
}

body.scanner-page:not(.light-theme) .scanner-shell {
  border-color: var(--scanner-border);
  background: rgba(255, 255, 255, 0.02);
}

body.scanner-page .table {
  max-height: 70vh;
  overflow: auto;
  border-color: rgba(38, 41, 45, 0.12);
  background: #fbfaf7;
}

body.scanner-page:not(.light-theme) .table {
  border-color: var(--scanner-border);
  background: #0e1217;
}

body.scanner-page .table-head {
  position: sticky;
  top: 0;
  z-index: 3;
  min-width: 1280px;
  background: #e7e4de;
  color: rgba(41, 43, 47, 0.52);
}

body.scanner-page:not(.light-theme) .table-head {
  background: #151a20;
  color: var(--scanner-dim);
}

body.scanner-page .table-row {
  min-width: 1280px;
  background: #fbfaf7;
  border-bottom-color: rgba(38, 41, 45, 0.08);
}

body.scanner-page:not(.light-theme) .table-row {
  background: #0f1318;
  border-bottom-color: var(--scanner-border);
}

body.scanner-page .table-row:not(.table-head):hover,
body.scanner-page .table-row.selected-row {
  background: #f0eee8;
}

body.scanner-page:not(.light-theme) .table-row:not(.table-head):hover,
body.scanner-page:not(.light-theme) .table-row.selected-row {
  background: #151b22;
}

body.scanner-page .table-cell {
  color: #292b2f;
}

body.scanner-page:not(.light-theme) .table-cell {
  color: var(--scanner-text);
}

body.scanner-page .table-subtext,
body.scanner-page .muted,
body.scanner-page small {
  color: rgba(41, 43, 47, 0.52);
}

body.scanner-page:not(.light-theme) .table-subtext,
body.scanner-page:not(.light-theme) .muted,
body.scanner-page:not(.light-theme) small {
  color: var(--scanner-dim);
}

body.scanner-page .exchange-badge,
body.scanner-page .score-pill,
body.scanner-page .locked-value,
body.scanner-page .focus-metric,
body.scanner-page .proof-metric,
body.scanner-page .focus-presence,
body.scanner-page .proof-movers,
body.scanner-page .detail-pill,
body.scanner-page .focus-badge,
body.scanner-page .presence-chip {
  border-color: rgba(38, 41, 45, 0.12);
  background: rgba(255, 255, 255, 0.56);
  color: #292b2f;
}

body.scanner-page:not(.light-theme) .exchange-badge,
body.scanner-page:not(.light-theme) .score-pill,
body.scanner-page:not(.light-theme) .locked-value,
body.scanner-page:not(.light-theme) .focus-metric,
body.scanner-page:not(.light-theme) .proof-metric,
body.scanner-page:not(.light-theme) .focus-presence,
body.scanner-page:not(.light-theme) .proof-movers,
body.scanner-page:not(.light-theme) .detail-pill,
body.scanner-page:not(.light-theme) .focus-badge,
body.scanner-page:not(.light-theme) .presence-chip {
  border-color: var(--scanner-border);
  background: rgba(255, 255, 255, 0.045);
  color: var(--scanner-text);
}

body.scanner-page .scanner-detail-card .copy-flow {
  color: rgba(41, 43, 47, 0.64);
}

body.scanner-page:not(.light-theme) .scanner-detail-card .copy-flow {
  color: var(--scanner-muted);
}

body.scanner-page .site-footer {
  margin-top: 14px;
  color: rgba(41, 43, 47, 0.52);
}

body.scanner-page:not(.light-theme) .site-footer {
  color: var(--scanner-dim);
}

@media (max-width: 1180px) {
  body.scanner-page .scanner-command-bar,
  body.scanner-page .scanner-grid {
    grid-template-columns: 1fr;
  }

  body.scanner-page .scanner-status-row {
    justify-content: stretch;
  }

  body.scanner-page .scanner-status-row .stat {
    flex: 1 1 160px;
  }

  body.scanner-page .scanner-side-rail {
    position: static;
  }
}

@media (max-width: 760px) {
  body.scanner-page .scanner-page-shell {
    width: min(100vw - 18px, 100%);
  }

  body.scanner-page .scanner-topbar {
    grid-template-columns: 1fr;
  }

  body.scanner-page .topbar-auth,
  body.scanner-page .scanner-status-row,
  body.scanner-page .scanner-controls,
  body.scanner-page .tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.scanner-page .scanner-command-bar,
  body.scanner-page .scanner-main-card,
  body.scanner-page .scanner-detail-card {
    padding: 12px;
  }

  body.scanner-page .section-title-row {
    align-items: start;
    grid-template-columns: 1fr;
  }

  body.scanner-page .section-meta {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
  }

  body.scanner-page .table {
    max-height: 62vh;
  }
}

/* Product reset v68 disabled
body.terminal-landing {
  --edge-bg: #080a0d;
  --edge-panel: #101419;
  --edge-panel-soft: #151a20;
  --edge-line: rgba(235, 240, 242, 0.14);
  --edge-text: #f1f4f2;
  --edge-muted: rgba(241, 244, 242, 0.66);
  --edge-dim: rgba(241, 244, 242, 0.42);
  --edge-green: #a8ff43;
  --edge-red: #ff5a68;
  --edge-amber: #d99b35;
  background:
    radial-gradient(circle at 14% 4%, rgba(168, 255, 67, 0.08), transparent 27%),
    linear-gradient(180deg, #090c0f 0%, #050608 100%);
  color: var(--edge-text);
}

body.terminal-landing.light-theme {
  --edge-bg: #f2efe8;
  --edge-panel: #fbfaf6;
  --edge-panel-soft: #efede6;
  --edge-line: rgba(33, 36, 32, 0.14);
  --edge-text: #252824;
  --edge-muted: rgba(37, 40, 36, 0.64);
  --edge-dim: rgba(37, 40, 36, 0.42);
  --edge-green: #5f8f13;
  --edge-red: #c74453;
  --edge-amber: #9b6421;
  background:
    radial-gradient(circle at 18% 0%, rgba(95, 143, 19, 0.08), transparent 28%),
    linear-gradient(180deg, #f2efe8 0%, #e9e6de 100%);
  color: var(--edge-text);
}

body.terminal-landing .terminal-page {
  width: min(1360px, calc(100vw - 40px));
  padding: 16px 0 30px;
}

body.terminal-landing .terminal-topbar,
body.terminal-landing.light-theme .terminal-topbar {
  top: 12px;
  min-height: 58px;
  margin-bottom: 12px;
  border: 1px solid var(--edge-line);
  border-radius: 12px;
  background: color-mix(in srgb, var(--edge-panel) 88%, transparent);
  box-shadow: none;
  backdrop-filter: blur(16px);
}

body.terminal-landing .brand-mark,
body.terminal-landing.light-theme .brand-mark {
  color: var(--edge-text);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
}

body.terminal-landing .brand-subtitle,
body.terminal-landing .nav-link,
body.terminal-landing.light-theme .brand-subtitle,
body.terminal-landing.light-theme .nav-link {
  color: var(--edge-muted);
}

body.terminal-landing .nav {
  gap: 6px;
}

body.terminal-landing .nav-link {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 7px;
  border: 0;
  font-size: 0.83rem;
  font-weight: 740;
}

body.terminal-landing .nav-link:hover {
  background: color-mix(in srgb, var(--edge-text) 7%, transparent);
  color: var(--edge-text);
}

body.terminal-landing .button-primary,
body.terminal-landing .button-ghost,
body.terminal-landing.light-theme .button-primary,
body.terminal-landing.light-theme .button-ghost {
  min-height: 38px;
  border-radius: 8px;
  box-shadow: none;
}

body.terminal-landing .button-primary,
body.terminal-landing.light-theme .button-primary {
  border-color: var(--edge-text);
  background: var(--edge-text);
  color: var(--edge-bg);
}

body.terminal-landing .button-ghost,
body.terminal-landing.light-theme .button-ghost,
body.terminal-landing .language-picker-trigger,
body.terminal-landing.light-theme .language-picker-trigger,
body.terminal-landing .user-pill,
body.terminal-landing.light-theme .user-pill {
  border-color: var(--edge-line);
  background: color-mix(in srgb, var(--edge-panel) 72%, transparent);
  color: var(--edge-text);
}

body.terminal-landing .hero-market-layer,
body.terminal-landing .funding-matrix,
body.terminal-landing .venue-map,
body.terminal-landing .feed-dot,
body.terminal-landing .market-hero::before,
body.terminal-landing .terminal-preview-section::before,
body.terminal-landing .institutional-access::before {
  display: none !important;
  animation: none !important;
  content: none;
}

body.terminal-landing .reveal,
body.terminal-landing .copy-line,
body.terminal-landing .copy-item {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  filter: none !important;
}

body.terminal-landing .edge-hero {
  display: grid;
  grid-template-columns: minmax(330px, 0.74fr) minmax(0, 1.26fr);
  gap: 14px;
  min-height: 0;
  padding: 16px;
  border: 1px solid var(--edge-line);
  border-radius: 16px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--edge-panel) 96%, transparent), color-mix(in srgb, var(--edge-panel-soft) 78%, transparent));
  overflow: hidden;
}

body.terminal-landing .edge-copy {
  align-self: center;
  max-width: 580px;
  padding: 10px 12px;
}

body.terminal-landing .edge-copy h1 {
  margin: 0;
  color: var(--edge-text);
  font-size: clamp(2.25rem, 4.4vw, 4.85rem);
  line-height: 0.92;
  letter-spacing: -0.075em;
}

body.terminal-landing .edge-copy p {
  max-width: 500px;
  margin: 18px 0 0;
  color: var(--edge-muted);
  font-size: clamp(0.94rem, 1.04vw, 1.05rem);
  line-height: 1.55;
}

body.terminal-landing .hero-action-row {
  margin-top: 24px;
  gap: 8px;
}

body.terminal-landing .hero-primary,
body.terminal-landing .hero-secondary {
  min-height: 42px !important;
}

body.terminal-landing .venue-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 24px;
}

body.terminal-landing .venue-strip span {
  padding: 6px 9px;
  border: 1px solid var(--edge-line);
  border-radius: 999px;
  color: var(--edge-dim);
  font-size: 0.72rem;
  font-weight: 760;
}

body.terminal-landing .edge-visual {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.48fr);
  gap: 10px;
  margin: 0;
}

body.terminal-landing .funding-visual-panel,
body.terminal-landing .neutral-trade-card,
body.terminal-landing .edge-steps,
body.terminal-landing .edge-proof,
body.terminal-landing .education-panel,
body.terminal-landing .institutional-access,
body.terminal-landing.light-theme .funding-visual-panel,
body.terminal-landing.light-theme .neutral-trade-card,
body.terminal-landing.light-theme .edge-steps,
body.terminal-landing.light-theme .edge-proof,
body.terminal-landing.light-theme .education-panel,
body.terminal-landing.light-theme .institutional-access {
  border: 1px solid var(--edge-line);
  border-radius: 14px;
  background: color-mix(in srgb, var(--edge-panel) 92%, transparent);
  box-shadow: none;
}

body.terminal-landing .funding-visual-panel {
  padding: clamp(14px, 1.5vw, 22px);
}

body.terminal-landing .neutral-trade-card {
  padding: 16px;
}

body.terminal-landing .chart-head,
body.terminal-landing .trade-card-head {
  align-items: start;
  margin-bottom: 12px;
}

body.terminal-landing .chart-head span,
body.terminal-landing .trade-card-head span {
  color: var(--edge-dim);
  font-size: 0.78rem;
  font-weight: 720;
}

body.terminal-landing .chart-head strong {
  color: var(--edge-green);
  font-size: clamp(2.2rem, 4.3vw, 4.4rem);
  letter-spacing: -0.08em;
  line-height: 0.84;
  text-shadow: none;
}

body.terminal-landing .funding-chart {
  border-color: var(--edge-line);
  border-radius: 10px;
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--edge-text) 5%, transparent) 1px, transparent 1px),
    linear-gradient(180deg, color-mix(in srgb, var(--edge-text) 5%, transparent) 1px, transparent 1px),
    color-mix(in srgb, var(--edge-panel-soft) 82%, transparent);
  background-size: 48px 48px;
}

body.terminal-landing .large-chart {
  min-height: 0;
}

body.terminal-landing .chart-grid-line {
  stroke: color-mix(in srgb, var(--edge-text) 8%, transparent);
}

body.terminal-landing .chart-line,
body.terminal-landing .spread-zone,
body.terminal-landing .chart-dot,
body.terminal-landing .trade-leg::after {
  animation: none !important;
}

body.terminal-landing .chart-line {
  stroke-width: 5;
  stroke-dasharray: none;
  stroke-dashoffset: 0;
}

body.terminal-landing .chart-line-binance {
  stroke: var(--edge-green);
}

body.terminal-landing .chart-line-bybit {
  stroke: var(--edge-red);
}

body.terminal-landing .chart-entry,
body.terminal-landing .chart-exit {
  stroke: color-mix(in srgb, var(--edge-text) 26%, transparent);
}

body.terminal-landing .chart-caption-row,
body.terminal-landing .large-chart .chart-caption-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top-color: var(--edge-line);
  background: var(--edge-line);
}

body.terminal-landing .chart-caption-row span,
body.terminal-landing.light-theme .chart-caption-row span {
  min-height: 30px;
  padding: 8px;
  background: color-mix(in srgb, var(--edge-panel) 86%, transparent);
  color: var(--edge-dim);
  font-size: 0.68rem;
}

body.terminal-landing .trade-card-head strong,
body.terminal-landing .trade-leg strong,
body.terminal-landing .trade-summary strong,
body.terminal-landing .simple-steps strong,
body.terminal-landing .edge-proof h2,
body.terminal-landing .education-panel h2,
body.terminal-landing .access-left h2 {
  color: var(--edge-text);
}

body.terminal-landing .trade-leg,
body.terminal-landing.light-theme .trade-leg {
  min-height: 74px;
  border-color: var(--edge-line);
  border-radius: 10px;
  background: color-mix(in srgb, var(--edge-panel-soft) 72%, transparent);
}

body.terminal-landing .trade-leg span,
body.terminal-landing .trade-summary span,
body.terminal-landing .simple-steps p,
body.terminal-landing .education-panel p,
body.terminal-landing .access-left p,
body.terminal-landing .access-objections span,
body.terminal-landing .setup-note {
  color: var(--edge-muted);
}

body.terminal-landing .trade-summary {
  border-color: var(--edge-line);
  border-radius: 10px;
  background: var(--edge-line);
  overflow: hidden;
}

body.terminal-landing .trade-summary div,
body.terminal-landing.light-theme .trade-summary div {
  min-height: 44px;
  background: color-mix(in srgb, var(--edge-panel) 88%, transparent);
}

body.terminal-landing .edge-steps,
body.terminal-landing .edge-proof,
body.terminal-landing .education-panel,
body.terminal-landing .institutional-access {
  margin-top: 12px;
  padding: 16px;
}

body.terminal-landing .edge-steps .proof-fragment-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
}

body.terminal-landing .edge-steps .proof-fragment-head span {
  color: var(--edge-text);
  font-size: clamp(1.2rem, 2vw, 2rem);
  font-family: "Montserrat", sans-serif;
  font-weight: 820;
  letter-spacing: -0.04em;
}

body.terminal-landing .edge-steps .proof-fragment-head strong {
  max-width: 360px;
  color: var(--edge-muted);
  font-size: 0.9rem;
  font-weight: 650;
  text-align: right;
}

body.terminal-landing .simple-steps,
body.terminal-landing .simple-steps div,
body.terminal-landing.light-theme .simple-steps div {
  border-color: var(--edge-line);
  background: color-mix(in srgb, var(--edge-panel) 88%, transparent);
}

body.terminal-landing .simple-steps div {
  min-height: 126px;
  border-radius: 10px;
}

body.terminal-landing .simple-steps {
  border: 0;
  background: transparent;
  gap: 8px;
}

body.terminal-landing .simple-steps span {
  width: auto;
  height: auto;
  border: 0;
  color: var(--edge-dim);
}

body.terminal-landing .edge-proof {
  display: grid;
  grid-template-columns: minmax(240px, 0.48fr) 1fr;
  align-items: center;
  gap: 18px;
}

body.terminal-landing .edge-proof h2 {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.22rem, 2.15vw, 2.15rem);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

body.terminal-landing .edge-proof-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

body.terminal-landing .edge-proof-list span {
  min-height: 64px;
  padding: 12px;
  border: 1px solid var(--edge-line);
  border-radius: 10px;
  color: var(--edge-muted);
  background: color-mix(in srgb, var(--edge-panel-soft) 62%, transparent);
  font-weight: 720;
}

body.terminal-landing .education-panel {
  grid-template-columns: minmax(0, 1fr) auto;
}

body.terminal-landing .education-panel h2,
body.terminal-landing .access-left h2 {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.24rem, 2vw, 2rem);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

body.terminal-landing .institutional-access {
  grid-template-columns: minmax(0, 0.72fr) minmax(420px, 1fr);
}

body.terminal-landing .access-objections {
  border-top-color: var(--edge-line);
}

body.terminal-landing .access-objections div {
  grid-template-columns: 150px minmax(0, 1fr);
  border-bottom-color: var(--edge-line);
}

body.terminal-landing .access-objections strong {
  color: var(--edge-text);
}

body.terminal-landing .institutional-plan-grid {
  gap: 8px;
  border: 0;
  background: transparent;
}

body.terminal-landing .plan-card,
body.terminal-landing.light-theme .plan-card {
  min-height: 0;
  padding: 16px;
  border: 1px solid var(--edge-line);
  border-radius: 12px;
  background: color-mix(in srgb, var(--edge-panel) 92%, transparent);
}

body.terminal-landing .plan-title-row {
  align-items: start;
}

body.terminal-landing .plan-title-row h3 {
  color: var(--edge-text);
  font-size: 1.05rem;
}

body.terminal-landing .plan-title-row p,
body.terminal-landing .plan-price span {
  color: var(--edge-muted);
}

body.terminal-landing .plan-price {
  margin: 18px 0;
  color: var(--edge-text);
  font-size: clamp(2.1rem, 3vw, 3.1rem);
}

body.terminal-landing .plan-card .feature-list {
  display: none;
}

body.terminal-landing .plan-badge {
  border-color: var(--edge-line);
  background: color-mix(in srgb, var(--edge-green) 12%, transparent);
  color: var(--edge-text);
}

body.terminal-landing .terminal-footer {
  margin-top: 14px;
  color: var(--edge-muted);
}

body.help-page.light-theme,
body.auth-page.light-theme,
body.payment-page.light-theme {
  background:
    radial-gradient(circle at 12% 0%, rgba(95, 143, 19, 0.06), transparent 28%),
    linear-gradient(180deg, #f2efe8 0%, #e9e6de 100%);
  color: #252824;
}

body.help-page:not(.light-theme),
body.auth-page:not(.light-theme),
body.payment-page:not(.light-theme) {
  background:
    radial-gradient(circle at 12% 0%, rgba(168, 255, 67, 0.06), transparent 28%),
    linear-gradient(180deg, #090c0f 0%, #050608 100%);
  color: #f1f4f2;
}

body.help-page.light-theme .help-hero,
body.help-page.light-theme .help-market-lab,
body.help-page.light-theme .help-card,
body.help-page.light-theme .help-article,
body.auth-page.light-theme .auth-card,
body.payment-page.light-theme .payment-card {
  border-radius: 14px;
  border-color: rgba(33, 36, 32, 0.14);
  background: rgba(251, 250, 246, 0.92);
  box-shadow: none;
}

body.help-page:not(.light-theme) .help-hero,
body.help-page:not(.light-theme) .help-market-lab,
body.help-page:not(.light-theme) .help-card,
body.help-page:not(.light-theme) .help-article,
body.auth-page:not(.light-theme) .auth-card,
body.payment-page:not(.light-theme) .payment-card {
  border-radius: 14px;
  border-color: rgba(235, 240, 242, 0.14);
  background: rgba(16, 20, 25, 0.92);
  box-shadow: none;
}

body.auth-page .landing-backdrop,
body.payment-page .landing-backdrop {
  display: none;
}

body.auth-page .auth-card,
body.payment-page .payment-card {
  max-width: 520px;
}

body.auth-page .section-kicker,
body.payment-page .section-kicker,
body.help-page .section-kicker {
  display: none;
}

body.auth-page .auth-copy h1,
body.payment-page .payment-copy h1,
body.help-page .help-hero h1 {
  font-size: clamp(1.85rem, 3.2vw, 3rem);
  letter-spacing: -0.055em;
}

body.auth-page .form-note,
body.payment-page .site-footer-copy span,
body.auth-page .site-footer-copy span {
  text-transform: none;
  letter-spacing: 0;
}

body.payment-page.light-theme .payment-plan-card,
body.payment-page.light-theme .payment-informer {
  border-radius: 10px;
  border-color: rgba(33, 36, 32, 0.14);
  background: rgba(255, 255, 255, 0.52);
}

body.payment-page:not(.light-theme) .payment-plan-card,
body.payment-page:not(.light-theme) .payment-informer {
  border-radius: 10px;
  border-color: rgba(235, 240, 242, 0.14);
  background: rgba(255, 255, 255, 0.045);
}

body.help-page .help-lab-chart {
  border-radius: 12px;
}

@media (max-width: 1180px) {
  body.terminal-landing .edge-hero,
  body.terminal-landing .edge-visual,
  body.terminal-landing .edge-proof,
  body.terminal-landing .education-panel,
  body.terminal-landing .institutional-access {
    grid-template-columns: 1fr;
  }

  body.terminal-landing .edge-copy {
    max-width: 760px;
  }

  body.terminal-landing .edge-steps .proof-fragment-head {
    align-items: start;
    flex-direction: column;
  }

  body.terminal-landing .edge-steps .proof-fragment-head strong {
    text-align: left;
  }
}

@media (max-width: 760px) {
  body.terminal-landing .terminal-page {
    width: min(100vw - 18px, 100%);
    padding-top: 10px;
  }

  body.terminal-landing .terminal-topbar {
    grid-template-columns: 1fr;
    position: static;
  }

  body.terminal-landing .topbar-actions,
  body.terminal-landing .topbar-auth,
  body.terminal-landing .nav {
    width: 100%;
  }

  body.terminal-landing .topbar-auth {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  body.terminal-landing .edge-hero,
  body.terminal-landing .edge-steps,
  body.terminal-landing .edge-proof,
  body.terminal-landing .education-panel,
  body.terminal-landing .institutional-access {
    padding: 12px;
    border-radius: 12px;
  }

  body.terminal-landing .edge-copy {
    padding: 4px;
  }

  body.terminal-landing .edge-copy h1 {
    font-size: clamp(2.2rem, 13vw, 3.65rem);
  }

  body.terminal-landing .chart-head {
    display: grid;
    gap: 8px;
  }

  body.terminal-landing .chart-head strong {
    font-size: clamp(2.5rem, 15vw, 4rem);
  }

  body.terminal-landing .chart-caption-row,
  body.terminal-landing .large-chart .chart-caption-row,
  body.terminal-landing .simple-steps,
  body.terminal-landing .edge-proof-list,
  body.terminal-landing .institutional-plan-grid,
  body.terminal-landing .access-objections div {
    grid-template-columns: 1fr;
  }

  body.terminal-landing .funding-visual-panel,
  body.terminal-landing .neutral-trade-card {
    padding: 12px;
  }

  body.auth-page,
  body.payment-page {
    overflow-y: auto;
  }
}
*/

/* Product cleanup v70: readable light mode + fullscreen scanner workspace */
body.light-theme {
  --finance-bg: #ece9e1;
  --finance-bg-soft: #f4f1e9;
  --finance-paper: #fffdf7;
  --finance-paper-strong: #ffffff;
  --finance-ink: #1d2024;
  --finance-muted: rgba(29, 32, 36, 0.72);
  --finance-dim: rgba(29, 32, 36, 0.54);
  --finance-line: rgba(29, 32, 36, 0.18);
  --finance-line-strong: rgba(29, 32, 36, 0.28);
  --finance-green: #08783b;
  --finance-red: #b83242;
  --finance-amber: #835606;
}

body.terminal-landing.light-theme,
body.help-page.light-theme,
body.auth-page.light-theme,
body.payment-page.light-theme {
  color: var(--finance-ink);
  background:
    radial-gradient(circle at 10% -8%, rgba(29, 32, 36, 0.07), transparent 28%),
    linear-gradient(180deg, var(--finance-bg-soft) 0%, var(--finance-bg) 100%);
}

body.terminal-landing.light-theme .terminal-topbar,
body.terminal-landing.light-theme .market-hero,
body.terminal-landing.light-theme .terminal-preview-section,
body.terminal-landing.light-theme .funding-visual-panel,
body.terminal-landing.light-theme .neutral-trade-card,
body.terminal-landing.light-theme .how-it-works-panel,
body.terminal-landing.light-theme .market-replay-card,
body.terminal-landing.light-theme .scanner-tracks-card,
body.terminal-landing.light-theme .education-panel,
body.terminal-landing.light-theme .institutional-access,
body.terminal-landing.light-theme .plan-card,
body.help-page.light-theme .help-hero,
body.help-page.light-theme .help-market-lab,
body.help-page.light-theme .help-card,
body.help-page.light-theme .help-article,
body.help-page.light-theme .help-cms-article,
body.payment-page.light-theme .payment-card,
body.payment-page.light-theme .payment-plan-card,
body.payment-page.light-theme .payment-informer {
  border-color: var(--finance-line);
  background: var(--finance-paper);
  color: var(--finance-ink);
  box-shadow: 0 12px 28px rgba(29, 32, 36, 0.055);
}

body.terminal-landing.light-theme h1,
body.terminal-landing.light-theme h2,
body.terminal-landing.light-theme h3,
body.terminal-landing.light-theme .brand-mark,
body.terminal-landing.light-theme .plan-title-row h3,
body.terminal-landing.light-theme .plan-price,
body.terminal-landing.light-theme .trade-card-head strong,
body.terminal-landing.light-theme .trade-leg strong,
body.terminal-landing.light-theme .trade-summary strong,
body.help-page.light-theme h1,
body.help-page.light-theme h2,
body.help-page.light-theme h3 {
  color: var(--finance-ink);
}

body.terminal-landing.light-theme p,
body.terminal-landing.light-theme .brand-subtitle,
body.terminal-landing.light-theme .nav-link,
body.terminal-landing.light-theme .trade-leg span,
body.terminal-landing.light-theme .trade-summary span,
body.terminal-landing.light-theme .simple-steps p,
body.terminal-landing.light-theme .education-panel p,
body.terminal-landing.light-theme .access-left p,
body.terminal-landing.light-theme .access-objections span,
body.terminal-landing.light-theme .feature-list,
body.terminal-landing.light-theme .feature-list li,
body.terminal-landing.light-theme .plan-title-row p,
body.terminal-landing.light-theme .plan-price span,
body.help-page.light-theme p,
body.help-page.light-theme small {
  color: var(--finance-muted);
}

body.terminal-landing.light-theme .chart-head strong,
body.terminal-landing.light-theme .rate-positive,
body.scanner-page.light-theme .rate-positive {
  color: var(--finance-green);
}

body.terminal-landing.light-theme .rate-negative,
body.scanner-page.light-theme .rate-negative {
  color: var(--finance-red);
}

body.terminal-landing.light-theme .funding-chart,
body.terminal-landing.light-theme .trade-leg,
body.terminal-landing.light-theme .trade-summary div,
body.terminal-landing.light-theme .simple-steps div,
body.terminal-landing.light-theme .replay-steps div {
  border-color: var(--finance-line);
  background: #f8f6ef;
}

body.terminal-landing.light-theme .chart-grid-line {
  stroke: rgba(29, 32, 36, 0.18);
}

body.terminal-landing.light-theme .chart-line-binance {
  stroke: #4f8f14;
}

body.terminal-landing.light-theme .chart-line-bybit {
  stroke: #ba3445;
}

body.terminal-landing.light-theme .spread-zone {
  fill: rgba(111, 159, 18, 0.16);
}

body.terminal-landing.light-theme .button-ghost,
body.terminal-landing.light-theme .language-picker-trigger,
body.help-page.light-theme .button-ghost,
body.help-page.light-theme .language-picker-trigger,
body.payment-page.light-theme .button-ghost,
body.payment-page.light-theme .language-picker-trigger {
  border-color: var(--finance-line);
  background: #fffdf7;
  color: var(--finance-ink);
}

body.terminal-landing.light-theme .button-primary,
body.help-page.light-theme .button-primary,
body.payment-page.light-theme .button-primary {
  border-color: #22252a;
  background: #22252a;
  color: #ffffff;
  box-shadow: none;
}

body.terminal-landing.light-theme .plan-card.highlighted {
  border-color: rgba(79, 143, 20, 0.42);
  background:
    linear-gradient(180deg, rgba(111, 159, 18, 0.08), rgba(255, 253, 247, 0.98)),
    var(--finance-paper);
}

body.terminal-landing.light-theme .plan-badge {
  border-color: rgba(79, 143, 20, 0.42);
  background: rgba(111, 159, 18, 0.12);
  color: #325d0d;
}

body.scanner-page {
  overflow: hidden;
}

body.scanner-page.light-theme {
  background: #ece9e1;
  color: #1d2024;
}

body.scanner-page:not(.light-theme) {
  background: #07090c;
}

body.scanner-page .scanner-page-shell {
  width: 100%;
  max-width: none;
  min-height: 100dvh;
  padding: 8px;
}

body.scanner-page .scanner-topbar {
  min-height: 48px;
  margin-bottom: 8px;
  padding: 8px 10px;
  border-radius: 8px;
  box-shadow: none;
}

body.scanner-page .brand-logo {
  width: 78px;
}

body.scanner-page .brand-subtitle,
body.scanner-page .nav-link[href="/help/"] {
  display: none;
}

body.scanner-page .scanner-grid {
  display: block;
}

body.scanner-page .scanner-main-card {
  display: flex;
  flex-direction: column;
  height: calc(100dvh - 74px);
  min-height: 0;
  padding: 8px;
  border-radius: 8px;
  background: #fffdf7;
  border-color: rgba(29, 32, 36, 0.2);
}

body.scanner-page:not(.light-theme) .scanner-main-card {
  background: #0f1318;
  border-color: rgba(230, 235, 238, 0.16);
}

body.scanner-page .section-title-row {
  flex: 0 0 auto;
  min-height: 36px;
  margin: 0 0 8px;
  padding: 0 0 8px;
}

body.scanner-page .section-title-row h2 {
  margin: 0;
  font-size: 1rem;
  letter-spacing: -0.015em;
}

body.scanner-page .section-meta .refresh {
  min-height: 30px;
  padding: 5px 9px;
  border-radius: 6px;
  color: rgba(29, 32, 36, 0.68);
  font-size: 0.76rem;
}

body.scanner-page .scanner-toolbar {
  flex: 0 0 auto;
  margin-top: 0;
  gap: 8px;
}

body.scanner-page .tabs {
  gap: 5px;
}

body.scanner-page .bucket-pill,
body.scanner-page .scanner-filter-toggle,
body.scanner-page .scanner-input,
body.scanner-page .scanner-select {
  min-height: 32px;
  border-radius: 6px;
}

body.scanner-page .scanner-controls {
  grid-template-columns: minmax(180px, 1fr) minmax(126px, 0.6fr) minmax(112px, 0.5fr) minmax(142px, 0.62fr) auto auto;
  gap: 6px;
}

body.scanner-page .scanner-summary-row {
  flex: 0 0 auto;
  margin: 7px 0;
  color: rgba(29, 32, 36, 0.64);
  font-size: 0.76rem;
}

body.scanner-page:not(.light-theme) .scanner-summary-row {
  color: rgba(240, 243, 244, 0.62);
}

body.scanner-page .scanner-shell {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid rgba(29, 32, 36, 0.18);
  background: #ffffff;
}

body.scanner-page:not(.light-theme) .scanner-shell {
  border-color: rgba(230, 235, 238, 0.14);
  background: #090d12;
}

body.scanner-page .table {
  height: 100%;
  max-height: none;
  overflow: auto;
  border: 0;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
}

body.scanner-page:not(.light-theme) .table {
  background: #090d12;
}

body.scanner-page .table-row,
body.scanner-page .table-head {
  min-width: 1360px;
  grid-template-columns: minmax(150px, 1.05fr) minmax(128px, 0.72fr) minmax(116px, 0.62fr) minmax(116px, 0.62fr) minmax(106px, 0.58fr) minmax(106px, 0.58fr) minmax(112px, 0.62fr) minmax(112px, 0.6fr) minmax(126px, 0.68fr) minmax(288px, 1.25fr);
  gap: 8px;
}

body.scanner-page .table-head {
  position: sticky;
  top: 0;
  z-index: 5;
  min-height: 34px;
  padding: 7px 10px;
  border-bottom: 1px solid rgba(29, 32, 36, 0.16);
  background: #e2dfd6;
  color: rgba(29, 32, 36, 0.62);
  font-size: 0.68rem;
  letter-spacing: 0.05em;
}

body.scanner-page:not(.light-theme) .table-head {
  border-bottom-color: rgba(230, 235, 238, 0.14);
  background: #151a20;
  color: rgba(240, 243, 244, 0.54);
}

body.scanner-page .table-row {
  min-height: 54px;
  padding: 8px 10px;
  background: #fffdf7;
  border-bottom-color: rgba(29, 32, 36, 0.1);
}

body.scanner-page:not(.light-theme) .table-row {
  background: #0d1116;
  border-bottom-color: rgba(230, 235, 238, 0.11);
}

body.scanner-page .table-row:not(.table-head):hover,
body.scanner-page .table-row.selected-row {
  background: #f1eee5;
  transform: none;
}

body.scanner-page:not(.light-theme) .table-row:not(.table-head):hover,
body.scanner-page:not(.light-theme) .table-row.selected-row {
  background: #151b22;
}

body.scanner-page .ticker-cell strong,
body.scanner-page .metric-stack strong {
  color: #1d2024;
  font-size: 0.93rem;
}

body.scanner-page .ticker-history-link {
  width: fit-content;
  margin-top: 2px;
  color: rgba(29, 32, 36, 0.62);
  font-size: 0.66rem;
  font-weight: 760;
  text-decoration: none;
}

body.scanner-page .ticker-history-link:hover {
  color: #1d2024;
  text-decoration: underline;
}

body.scanner-page:not(.light-theme) .ticker-cell strong,
body.scanner-page:not(.light-theme) .metric-stack strong {
  color: #f0f3f4;
}

body.scanner-page:not(.light-theme) .ticker-history-link {
  color: rgba(240, 243, 244, 0.62);
}

body.scanner-page:not(.light-theme) .ticker-history-link:hover {
  color: #f0f3f4;
}

body.scanner-page .ticker-cell small,
body.scanner-page .bucket-cell small,
body.scanner-page .metric-stack small,
body.scanner-page .quality-cell small {
  color: rgba(29, 32, 36, 0.54);
  font-size: 0.68rem;
}

body.scanner-page:not(.light-theme) .ticker-cell small,
body.scanner-page:not(.light-theme) .bucket-cell small,
body.scanner-page:not(.light-theme) .metric-stack small,
body.scanner-page:not(.light-theme) .quality-cell small {
  color: rgba(240, 243, 244, 0.46);
}

body.scanner-page .exchange-badge,
body.scanner-page .score-pill,
body.scanner-page .locked-value {
  border-color: rgba(29, 32, 36, 0.14);
  background: rgba(255, 255, 255, 0.72);
}

body.scanner-page .score-pill {
  min-width: 42px;
  color: #1d2024;
  font-weight: 840;
}

body.scanner-page .row-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
  margin: 0;
  overflow: hidden;
}

body.scanner-page .row-action-link {
  min-height: 28px;
  max-width: 88px;
  padding: 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 5px;
  font-size: 0.72rem;
}

body.scanner-page .row-action-link.secondary {
  max-width: 108px;
}

body.scanner-page .row-new,
body.scanner-page .row-rank-up,
body.scanner-page .row-changed {
  animation: scannerRowUp 1.15s ease-out both;
}

body.scanner-page .row-rank-down {
  animation: scannerRowDown 1.15s ease-out both;
}

body.scanner-page .change-delta {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 3px;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: 0.66rem;
  font-weight: 840;
}

body.scanner-page .change-delta.up {
  background: rgba(8, 120, 59, 0.12);
  color: #08783b;
}

body.scanner-page .change-delta.down {
  background: rgba(184, 50, 66, 0.12);
  color: #b83242;
}

body.scanner-page .site-footer {
  display: none;
}

.pair-page-shell {
  max-width: 1480px;
}

body.pair-page {
  overflow-x: hidden;
  overflow-y: auto;
}

body.pair-page .scanner-page-shell {
  min-height: 100dvh;
  height: auto;
}

.pair-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 8px;
  padding: 20px 24px;
}

.pair-title-block {
  display: flex;
  align-items: center;
  gap: 16px;
}

.pair-logo .token-logo,
.pair-token-logo {
  width: 54px;
  height: 54px;
}

.pair-title-block h1 {
  margin: 5px 0 4px;
  font-size: clamp(2rem, 3vw, 3.25rem);
  letter-spacing: -0.055em;
}

.pair-title-block p,
.pair-status {
  color: rgba(29, 32, 36, 0.64);
}

body:not(.light-theme) .pair-title-block p,
body:not(.light-theme) .pair-status {
  color: rgba(240, 243, 244, 0.62);
}

.pair-window-tabs {
  display: inline-flex;
  padding: 4px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  background: rgba(255, 255, 255, 0.6);
}

.pair-window-tabs button {
  min-width: 58px;
  min-height: 34px;
  border: 0;
  background: transparent;
  color: rgba(29, 32, 36, 0.68);
  font: inherit;
  font-weight: 820;
  cursor: pointer;
}

.pair-window-tabs button.active {
  background: #1d2024;
  color: #fffdf7;
}

body:not(.light-theme) .pair-window-tabs {
  border-color: rgba(230, 235, 238, 0.16);
  background: rgba(255, 255, 255, 0.04);
}

body:not(.light-theme) .pair-window-tabs button {
  color: rgba(240, 243, 244, 0.66);
}

body:not(.light-theme) .pair-window-tabs button.active {
  background: #92ff2f;
  color: #071006;
}

.pair-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin: 10px 0;
}

.pair-stat {
  padding: 16px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 12px;
  background: #fffdf7;
}

body:not(.light-theme) .pair-stat {
  border-color: rgba(230, 235, 238, 0.14);
  background: #0f1318;
}

.pair-stat span,
.pair-stat .metric-label,
.pair-stat small,
.pair-section-head .eyebrow {
  display: block;
  color: rgba(29, 32, 36, 0.56);
  font-size: 0.72rem;
  font-weight: 820;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body:not(.light-theme) .pair-stat span,
body:not(.light-theme) .pair-stat .metric-label,
body:not(.light-theme) .pair-stat small,
body:not(.light-theme) .pair-section-head .eyebrow {
  color: rgba(240, 243, 244, 0.56);
}

.help-label {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.help-label em {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-style: normal;
}

.help-tip {
  position: relative;
  z-index: 15;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  border: 1px solid rgba(29, 32, 36, 0.2);
  border-radius: 50%;
  color: rgba(29, 32, 36, 0.68);
  font-style: normal;
  line-height: 1;
  cursor: help;
}

.help-tip > i,
.help-tip > span {
  font-style: normal;
  font-size: 0.62rem;
  font-weight: 900;
}

.help-tip > b {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 9px);
  z-index: 100;
  width: min(270px, 76vw);
  padding: 10px 11px;
  border: 1px solid rgba(29, 32, 36, 0.16);
  border-radius: 10px;
  background: #1d2024;
  color: #fffdf7;
  box-shadow: 0 18px 48px rgba(29, 32, 36, 0.22);
  font-size: 0.76rem;
  font-weight: 720;
  letter-spacing: 0;
  line-height: 1.35;
  text-align: left;
  text-transform: none;
  white-space: normal;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 5px);
  transition: opacity 0.14s ease, transform 0.14s ease;
}

.help-tip > b::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 100%;
  width: 8px;
  height: 8px;
  background: inherit;
  border-right: 1px solid rgba(29, 32, 36, 0.16);
  border-bottom: 1px solid rgba(29, 32, 36, 0.16);
  transform: translate(-50%, -4px) rotate(45deg);
}

.help-tip:hover,
.help-tip:focus-visible {
  border-color: rgba(29, 32, 36, 0.42);
  color: #1d2024;
  outline: none;
}

.help-tip:hover > b,
.help-tip:focus-visible > b {
  opacity: 1;
  transform: translate(-50%, 0);
}

body:not(.light-theme) .help-tip {
  border-color: rgba(240, 243, 244, 0.24);
  color: rgba(240, 243, 244, 0.76);
}

body:not(.light-theme) .help-tip > b {
  border-color: rgba(240, 243, 244, 0.18);
  background: #f5f7f8;
  color: #0b1014;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.42);
}

body:not(.light-theme) .help-tip:hover,
body:not(.light-theme) .help-tip:focus-visible {
  border-color: rgba(146, 255, 47, 0.54);
  color: #f5f7f8;
}

.table-head .help-label,
.row-detail-metrics .help-label,
.pair-route-metrics .help-label,
.pair-point-grid .help-label,
.pair-stat .help-label {
  display: inline-flex;
}

.table-head .help-tip {
  width: 14px;
  height: 14px;
}

.table-head .help-tip > b {
  top: calc(100% + 9px);
  bottom: auto;
}

.table-head .help-tip > b::after {
  top: auto;
  bottom: 100%;
  transform: translate(-50%, 4px) rotate(225deg);
}

.help-tooltip-layer {
  position: fixed;
  z-index: 99999;
  max-width: min(310px, calc(100vw - 24px));
  padding: 10px 12px 11px;
  border: 1px solid rgba(29, 32, 36, 0.2);
  border-radius: 10px;
  background: #1d2024;
  color: #fffdf7;
  box-shadow: 0 18px 48px rgba(29, 32, 36, 0.24);
  font-size: 0.78rem;
  font-weight: 720;
  letter-spacing: -0.005em;
  line-height: 1.38;
  text-align: left;
  pointer-events: none;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
}

.help-tooltip-layer.hidden {
  opacity: 0;
  visibility: hidden;
  transform: translateY(4px);
}

.help-tooltip-layer[dir="rtl"] {
  text-align: right;
}

body:not(.light-theme) .help-tooltip-layer {
  border-color: rgba(240, 243, 244, 0.2);
  background: #f5f7f8;
  color: #0b1014;
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.42);
}

.pair-point-grid .help-label em,
.pair-route-metrics .help-label em,
.row-detail-metrics .help-label em,
.table-head .help-label em {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.pair-stat strong {
  display: block;
  margin: 7px 0 4px;
  color: #1d2024;
  font-size: 1.55rem;
  letter-spacing: -0.045em;
}

body:not(.light-theme) .pair-stat strong {
  color: #f0f3f4;
}

.pair-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, 0.68fr);
  gap: 12px;
}

.pair-chart-card,
.pair-current-card,
.pair-history-card {
  padding: 18px;
  overflow: visible;
}

.pair-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.pair-section-head h2 {
  margin: 4px 0 0;
  font-size: 1.35rem;
}

.pair-chart {
  min-height: 520px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  background: #fffdf7;
}

body:not(.light-theme) .pair-chart {
  border-color: rgba(226, 232, 235, 0.2);
  background: #0b1014;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.pair-chart-stage {
  position: relative;
}

.pair-chart-controls {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 6px 5px 10px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.86);
  color: rgba(29, 32, 36, 0.68);
  font-size: 0.72rem;
  font-weight: 820;
  letter-spacing: 0.01em;
  backdrop-filter: blur(14px);
}

body:not(.light-theme) .pair-chart-controls {
  border-color: rgba(226, 232, 235, 0.16);
  background: rgba(11, 16, 20, 0.84);
  color: rgba(240, 243, 244, 0.72);
}

.pair-chart-controls button {
  min-height: 24px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 999px;
  background: #1d2024;
  color: #fffdf7;
  font: inherit;
  font-size: 0.68rem;
  cursor: pointer;
}

.pair-chart-controls .pair-chart-pan {
  min-width: 24px;
  padding-inline: 7px;
}

body:not(.light-theme) .pair-chart-controls button {
  border-color: rgba(146, 255, 47, 0.4);
  background: #92ff2f;
  color: #071006;
}

.pair-chart-svg {
  display: block;
  width: 100%;
  height: 438px;
  cursor: grab;
  overscroll-behavior: contain;
  touch-action: none;
}

body.is-pair-chart-panning .pair-chart-svg,
.pair-chart-svg:active {
  cursor: grabbing;
}

.pair-chart-svg text {
  fill: currentColor;
  color: rgba(29, 32, 36, 0.68);
  font-size: 12px;
  font-weight: 760;
}

body:not(.light-theme) .pair-chart-svg text {
  color: rgba(240, 243, 244, 0.68);
}

.chart-grid line {
  stroke: rgba(29, 32, 36, 0.11);
}

.chart-grid line.vertical {
  stroke: rgba(29, 32, 36, 0.075);
}

.chart-grid line.baseline {
  stroke: rgba(29, 32, 36, 0.2);
}

body:not(.light-theme) .chart-grid line {
  stroke: rgba(240, 243, 244, 0.13);
}

body:not(.light-theme) .chart-grid line.vertical {
  stroke: rgba(240, 243, 244, 0.085);
}

body:not(.light-theme) .chart-grid line.baseline {
  stroke: rgba(240, 243, 244, 0.24);
}

.chart-y-axis text,
.chart-x-axis text {
  color: rgba(29, 32, 36, 0.56);
  font-size: 11px;
  font-weight: 860;
  letter-spacing: 0.01em;
}

body:not(.light-theme) .chart-y-axis text,
body:not(.light-theme) .chart-x-axis text {
  color: rgba(240, 243, 244, 0.6);
}

.chart-axis-title,
.chart-max-label,
.chart-latest-label {
  color: rgba(29, 32, 36, 0.68);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body:not(.light-theme) .chart-axis-title,
body:not(.light-theme) .chart-max-label,
body:not(.light-theme) .chart-latest-label {
  color: rgba(240, 243, 244, 0.7);
}

.history-window-start {
  stroke: rgba(29, 32, 36, 0.22);
  stroke-dasharray: 3 5;
}

body:not(.light-theme) .history-window-start {
  stroke: rgba(240, 243, 244, 0.2);
}

.gap-area {
  fill: url(#gapFill);
}

.gap-line {
  fill: none;
  stroke: #69b915;
  stroke-width: 3.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gap-dot {
  fill: #92ff2f;
  stroke: #1d2024;
  stroke-width: 2;
}

.gap-cursor {
  stroke: rgba(29, 32, 36, 0.34);
  stroke-dasharray: 5 5;
  pointer-events: none;
  stroke-width: 1.2;
}

body:not(.light-theme) .gap-cursor {
  stroke: rgba(236, 244, 246, 0.38);
}

.gap-hit-dot {
  fill: transparent;
  stroke: transparent;
  cursor: crosshair;
}

.gap-hit-dot.visible {
  fill: #92ff2f;
  stroke: #1d2024;
  stroke-width: 2.2;
}

body:not(.light-theme) .gap-hit-dot.visible {
  stroke: #05080a;
}

.gap-hit-dot.active {
  fill: #1d2024;
  stroke: #92ff2f;
  stroke-width: 3.2;
}

body:not(.light-theme) .gap-hit-dot.active {
  fill: #92ff2f;
  stroke: #f6fff0;
}

.pair-chart-tooltip {
  position: absolute;
  z-index: 4;
  width: min(238px, calc(100% - 24px));
  padding: 9px;
  border: 1px solid rgba(29, 32, 36, 0.16);
  border-radius: 10px;
  background: rgba(255, 253, 247, 0.96);
  color: #1d2024;
  box-shadow: 0 16px 42px rgba(29, 32, 36, 0.14);
  pointer-events: none;
}

body:not(.light-theme) .pair-chart-tooltip {
  border-color: rgba(226, 232, 235, 0.2);
  background: rgba(13, 18, 23, 0.96);
  color: #f5f7f8;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.44);
}

.pair-chart-inspector strong {
  display: block;
  color: inherit;
}

.pair-chart-inspector > span {
  display: block;
  margin-top: 3px;
  color: rgba(29, 32, 36, 0.6);
  font-size: 0.78rem;
}

body:not(.light-theme) .pair-chart-inspector > span {
  color: rgba(240, 243, 244, 0.68);
}

.pair-tooltip-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(29, 32, 36, 0.1);
}

body:not(.light-theme) .pair-tooltip-head {
  border-bottom-color: rgba(226, 232, 235, 0.14);
}

.pair-tooltip-head strong {
  min-width: 0;
  overflow: hidden;
  color: inherit;
  font-size: 0.86rem;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pair-tooltip-head span {
  flex: 0 0 auto;
  color: rgba(29, 32, 36, 0.55);
  font-size: 0.67rem;
  font-weight: 760;
}

body:not(.light-theme) .pair-tooltip-head span {
  color: rgba(240, 243, 244, 0.62);
}

.pair-tooltip-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 10px;
  row-gap: 1px;
  padding: 7px 0;
  border-bottom: 1px solid rgba(29, 32, 36, 0.075);
}

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

body:not(.light-theme) .pair-tooltip-row {
  border-bottom-color: rgba(226, 232, 235, 0.1);
}

.pair-tooltip-row span {
  min-width: 0;
  overflow: hidden;
  color: rgba(29, 32, 36, 0.54);
  font-size: 0.62rem;
  font-weight: 820;
  letter-spacing: 0.035em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.pair-tooltip-row b {
  color: inherit;
  font-size: 0.9rem;
  font-weight: 860;
  text-align: right;
  white-space: nowrap;
}

.pair-tooltip-row em {
  grid-column: 1 / -1;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.67rem;
  font-style: normal;
  font-weight: 720;
}

.pair-tooltip-row.accent {
  margin-inline: -3px;
  padding-inline: 3px;
  border-radius: 7px;
  background: rgba(146, 255, 47, 0.09);
}

.pair-tooltip-row.accent b {
  color: #24320c;
}

body:not(.light-theme) .pair-tooltip-row span {
  color: rgba(240, 243, 244, 0.58);
}

body:not(.light-theme) .pair-tooltip-row em {
  color: rgba(240, 243, 244, 0.62);
}

body:not(.light-theme) .pair-tooltip-row.accent {
  background: rgba(146, 255, 47, 0.1);
}

body:not(.light-theme) .pair-tooltip-row.accent b {
  color: #b9ff76;
}

.pair-chart-inspector {
  display: grid;
  gap: 8px;
  margin: 10px;
  padding: 12px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 12px;
  background: rgba(246, 242, 233, 0.68);
}

body:not(.light-theme) .pair-chart-inspector {
  border-color: rgba(226, 232, 235, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

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

.pair-point-grid div {
  padding: 8px;
  border: 1px solid rgba(29, 32, 36, 0.1);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.55);
}

.pair-point-grid.compact {
  grid-template-columns: 1fr;
}

.pair-point-grid small {
  display: block;
  color: rgba(29, 32, 36, 0.52);
  font-size: 0.66rem;
  font-weight: 820;
  text-transform: uppercase;
}

.pair-point-grid b {
  display: block;
  margin-top: 3px;
  font-size: 1rem;
}

.pair-point-grid em {
  display: block;
  margin-top: 2px;
  color: rgba(29, 32, 36, 0.52);
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 760;
}

body:not(.light-theme) .pair-point-grid div {
  border-color: rgba(226, 232, 235, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

body:not(.light-theme) .pair-point-grid small,
body:not(.light-theme) .pair-point-grid em {
  color: rgba(240, 243, 244, 0.58);
}

.pair-chart-empty {
  display: grid;
  place-items: center;
  min-height: 260px;
  text-align: center;
  color: rgba(29, 32, 36, 0.62);
}

.pair-current-rows,
.venue-history-table {
  display: grid;
  gap: 8px;
}

.pair-route-card {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.58);
}

.pair-route-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.pair-route-top strong {
  display: block;
  color: #1d2024;
  font-size: 1rem;
}

.pair-route-top span,
.pair-route-metrics span {
  display: block;
  margin-top: 3px;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.72rem;
  font-weight: 760;
}

.pair-route-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.pair-route-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 8px;
  color: inherit;
  font-size: 0.75rem;
  font-weight: 820;
  text-decoration: none;
}

.pair-bucket-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.pair-bucket-chip {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(102, 185, 30, 0.1);
  color: #23813b;
  font-size: 0.68rem;
  font-weight: 820;
}

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

.pair-route-metrics div {
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(29, 32, 36, 0.09);
  border-radius: 10px;
  background: rgba(255, 253, 247, 0.66);
}

.pair-route-metrics small {
  display: block;
  color: rgba(29, 32, 36, 0.52);
  font-size: 0.64rem;
  font-weight: 820;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.pair-route-metrics b {
  display: block;
  margin-top: 3px;
  color: #1d2024;
  font-size: 0.98rem;
}

body:not(.light-theme) .pair-route-card {
  border-color: rgba(226, 232, 235, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

body:not(.light-theme) .pair-route-top strong,
body:not(.light-theme) .pair-route-metrics b {
  color: #f5f7f8;
}

body:not(.light-theme) .pair-route-top span,
body:not(.light-theme) .pair-route-metrics span {
  color: rgba(240, 243, 244, 0.64);
}

body:not(.light-theme) .pair-route-actions a {
  border-color: rgba(230, 235, 238, 0.14);
}

body:not(.light-theme) .pair-bucket-chip {
  background: rgba(146, 255, 47, 0.1);
  color: #bfff86;
}

body:not(.light-theme) .pair-route-metrics div {
  border-color: rgba(226, 232, 235, 0.12);
  background: rgba(255, 255, 255, 0.036);
}

body:not(.light-theme) .pair-route-metrics small {
  color: rgba(240, 243, 244, 0.56);
}

.pair-row,
.venue-history-row {
  display: grid;
  align-items: center;
  gap: 10px;
  padding: 11px 12px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.5);
}

.pair-row {
  grid-template-columns: minmax(0, 1.25fr) minmax(105px, 0.62fr) minmax(120px, 0.76fr) minmax(105px, 0.62fr) auto auto;
}

.venue-history-row {
  grid-template-columns: minmax(120px, 0.7fr) minmax(120px, 0.7fr) minmax(120px, 1fr) minmax(90px, 0.6fr);
}

.pair-history-row {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) repeat(4, minmax(105px, 0.42fr));
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.58);
}

body:not(.light-theme) .pair-row,
body:not(.light-theme) .venue-history-row,
body:not(.light-theme) .pair-history-row {
  border-color: rgba(226, 232, 235, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

.pair-row span,
.venue-history-row span {
  display: block;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.74rem;
}

.pair-history-row span {
  display: block;
  margin-top: 3px;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.74rem;
}

body:not(.light-theme) .pair-row span,
body:not(.light-theme) .venue-history-row span,
body:not(.light-theme) .pair-history-row span {
  color: rgba(240, 243, 244, 0.64);
}

.pair-row a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 8px;
  color: inherit;
  font-size: 0.75rem;
  font-weight: 820;
  text-decoration: none;
}

body:not(.light-theme) .pair-row a {
  border-color: rgba(230, 235, 238, 0.14);
}

body.pair-page:not(.light-theme) {
  color: #f5f7f8;
  background:
    radial-gradient(circle at 18% -8%, rgba(146, 255, 47, 0.1), transparent 30%),
    linear-gradient(180deg, #070a0d 0%, #090d11 100%);
}

body.pair-page:not(.light-theme) .pair-hero,
body.pair-page:not(.light-theme) .pair-chart-card,
body.pair-page:not(.light-theme) .pair-current-card,
body.pair-page:not(.light-theme) .pair-history-card {
  border-color: rgba(226, 232, 235, 0.18);
  background: #0f1419;
  box-shadow: none;
}

body.pair-page:not(.light-theme) .pair-title-block h1,
body.pair-page:not(.light-theme) .pair-section-head h2,
body.pair-page:not(.light-theme) .pair-row strong,
body.pair-page:not(.light-theme) .pair-history-row strong {
  color: #f5f7f8;
}

body.pair-page:not(.light-theme) .pair-window-tabs button:hover,
body.pair-page:not(.light-theme) .pair-row a:hover,
body.pair-page:not(.light-theme) .pair-route-actions a:hover {
  border-color: rgba(146, 255, 47, 0.5);
  color: #f5f7f8;
}

body.pair-page.pair-loading .pair-chart-card,
body.pair-page.pair-loading .pair-stats,
body.pair-page.pair-loading .pair-history-card {
  opacity: 0.58;
  transition: opacity 0.16s ease;
}

@media (max-width: 980px) {
  .pair-hero,
  .pair-layout,
  .pair-stats {
    grid-template-columns: 1fr;
  }

  .pair-hero {
    display: grid;
  }

  .pair-row,
  .pair-route-top,
  .venue-history-row,
  .pair-history-row {
    grid-template-columns: 1fr;
  }

  .pair-route-top {
    display: grid;
  }

  .pair-route-actions,
  .pair-route-metrics {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .pair-route-actions a {
    flex: 1;
  }
}

.help-cms-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 0.35fr);
  gap: 10px;
  margin: 0 0 14px;
}

.help-cms-article {
  padding: 16px;
  border: 1px solid var(--finance-line, rgba(29, 32, 36, 0.14));
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
}

.help-cms-article span,
.help-cms-article small {
  color: var(--finance-muted, rgba(29, 32, 36, 0.64));
  font-size: 0.74rem;
  font-weight: 760;
}

.help-cms-article h3 {
  margin: 8px 0;
}

.help-admin-shell {
  display: grid;
  grid-template-columns: minmax(280px, 0.58fr) minmax(360px, 1fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 16px;
}

.help-admin-copy,
.help-admin-form,
.help-admin-row {
  padding: 18px;
  border: 1px solid var(--finance-line, rgba(29, 32, 36, 0.14));
  border-radius: 14px;
  background: var(--finance-paper, #fffdf7);
}

.help-admin-copy h1 {
  margin: 0 0 10px;
}

.help-admin-actions,
.help-admin-row-actions,
.help-admin-two,
.help-admin-checks {
  display: flex;
  gap: 10px;
}

.help-admin-form {
  display: grid;
  gap: 12px;
}

.help-admin-form label {
  display: grid;
  gap: 6px;
  color: var(--finance-muted, rgba(29, 32, 36, 0.64));
  font-size: 0.76rem;
  font-weight: 760;
}

.help-admin-two {
  display: grid;
  grid-template-columns: 1fr 180px;
}

.help-admin-checks label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.help-admin-list {
  display: grid;
  gap: 10px;
}

.help-admin-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.help-admin-row span,
.help-admin-row small {
  display: block;
  color: var(--finance-muted, rgba(29, 32, 36, 0.64));
}

.help-admin-row strong {
  display: block;
  margin: 6px 0;
}

.button-ghost.danger {
  color: #b83242;
}

@keyframes scannerRowUp {
  0% {
    background: rgba(8, 120, 59, 0.18);
    box-shadow: inset 3px 0 0 #08783b;
  }
  100% {
    background: inherit;
    box-shadow: none;
  }
}

@keyframes scannerRowDown {
  0% {
    background: rgba(184, 50, 66, 0.16);
    box-shadow: inset 3px 0 0 #b83242;
  }
  100% {
    background: inherit;
    box-shadow: none;
  }
}

@media (max-width: 980px) {
  body.scanner-page {
    overflow: auto;
  }

  body.scanner-page .scanner-page-shell {
    padding: 6px;
  }

  body.scanner-page .scanner-main-card {
    height: calc(100dvh - 128px);
    min-height: 620px;
  }

  body.scanner-page .scanner-controls,
  .help-cms-toolbar,
  .help-admin-shell,
  .help-admin-two,
  .help-admin-row {
    grid-template-columns: 1fr;
  }

  body.scanner-page .row-actions {
    flex-wrap: wrap;
  }
}

/* Product fix v71: scanner density, row inspector, dark help, account billing */
body.scanner-page .scanner-shell {
  position: relative;
}

body.scanner-page .table {
  width: 100%;
  overflow: auto;
  scrollbar-gutter: stable;
}

body.scanner-page .table-row,
body.scanner-page .table-head {
  width: max(100%, 1520px);
  min-width: 1520px;
  box-sizing: border-box;
  grid-template-columns:
    minmax(170px, 1.05fr)
    minmax(140px, 0.74fr)
    minmax(130px, 0.68fr)
    minmax(130px, 0.68fr)
    minmax(120px, 0.62fr)
    minmax(120px, 0.62fr)
    minmax(132px, 0.66fr)
    minmax(100px, 0.48fr)
    minmax(300px, 1.22fr);
}

body.scanner-page .table-row.selected-row {
  box-shadow:
    inset 3px 0 0 #202327,
    inset 0 0 0 1px rgba(29, 32, 36, 0.08);
}

body.scanner-page:not(.light-theme) .table-row.selected-row {
  box-shadow:
    inset 3px 0 0 #9cff2e,
    inset 0 0 0 1px rgba(156, 255, 46, 0.1);
}

body.scanner-page:not(.light-theme) .bucket-pill,
body.scanner-page:not(.light-theme) .scanner-filter-toggle,
body.scanner-page:not(.light-theme) .scanner-input,
body.scanner-page:not(.light-theme) .scanner-select,
body.scanner-page:not(.light-theme) .button-ghost,
body.scanner-page:not(.light-theme) .language-picker-trigger,
body.scanner-page:not(.light-theme) .user-pill {
  border-color: rgba(230, 235, 238, 0.18);
  background: #121820;
  color: #f2f5f6;
}

body.scanner-page:not(.light-theme) .scanner-input::placeholder {
  color: rgba(242, 245, 246, 0.42);
}

body.scanner-page:not(.light-theme) .bucket-pill.active,
body.scanner-page:not(.light-theme) .scanner-filter-toggle.active {
  border-color: #9cff2e;
  background: #9cff2e;
  color: #111417;
}

body.scanner-page:not(.light-theme) .exchange-badge,
body.scanner-page:not(.light-theme) .score-pill,
body.scanner-page:not(.light-theme) .locked-value,
body.scanner-page:not(.light-theme) .row-action-link {
  border-color: rgba(230, 235, 238, 0.16);
  background: rgba(255, 255, 255, 0.05);
  color: #eef3f4;
}

body.scanner-page:not(.light-theme) .row-action-link.watch.active,
body.scanner-page:not(.light-theme) .row-detail-watch.active {
  border-color: rgba(156, 255, 46, 0.42);
  background: rgba(156, 255, 46, 0.18);
  color: #d9ff9f;
}

body.scanner-page:not(.light-theme) .scanner-main-card,
body.scanner-page:not(.light-theme) .scanner-shell,
body.scanner-page:not(.light-theme) .table {
  background: #0d1217;
  color: #edf2f3;
}

body.scanner-page:not(.light-theme) .table-head {
  background: #10161d;
  color: rgba(241, 245, 245, 0.64);
  border-color: rgba(230, 235, 238, 0.14);
}

body.scanner-page:not(.light-theme) .table-row {
  border-color: rgba(230, 235, 238, 0.1);
  color: #edf2f3;
}

body.scanner-page:not(.light-theme) .ticker-cell strong,
body.scanner-page:not(.light-theme) .metric-stack strong,
body.scanner-page:not(.light-theme) .quality-cell strong,
body.scanner-page:not(.light-theme) .venue-stack strong {
  color: #f5f8f8;
}

body.scanner-page:not(.light-theme) .ticker-cell small,
body.scanner-page:not(.light-theme) .metric-stack small,
body.scanner-page:not(.light-theme) .bucket-cell small,
body.scanner-page:not(.light-theme) .quality-cell small,
body.scanner-page:not(.light-theme) .scanner-hint,
body.scanner-page:not(.light-theme) .scanner-count {
  color: rgba(241, 245, 245, 0.58);
}

.row-detail-drawer {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 12;
  width: min(420px, calc(100% - 20px));
  max-height: calc(100% - 20px);
  overflow: auto;
  padding: 14px;
  border: 1px solid rgba(29, 32, 36, 0.18);
  border-radius: 8px;
  background: rgba(255, 253, 247, 0.98);
  box-shadow: 0 18px 42px rgba(29, 32, 36, 0.16);
}

body.scanner-page:not(.light-theme) .row-detail-drawer {
  border-color: rgba(230, 235, 238, 0.18);
  background: rgba(14, 18, 23, 0.98);
  color: #f1f5f5;
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.44);
}

.row-detail-head,
.row-detail-route,
.row-detail-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.row-detail-head {
  justify-content: space-between;
  margin-bottom: 10px;
}

.row-detail-head span,
.row-detail-metrics span,
.row-detail-copy strong,
.billing-history-title span,
.account-summary-grid span,
.billing-history-row span {
  color: var(--finance-muted, rgba(29, 32, 36, 0.66));
  font-size: 0.72rem;
  font-weight: 760;
}

body:not(.light-theme) .row-detail-head span,
body:not(.light-theme) .row-detail-metrics span,
body:not(.light-theme) .row-detail-copy strong,
body:not(.light-theme) .billing-history-title span,
body:not(.light-theme) .account-summary-grid span,
body:not(.light-theme) .billing-history-row span {
  color: rgba(241, 245, 245, 0.62);
}

.row-detail-head h3 {
  margin: 3px 0 0;
  font-size: 1.4rem;
}

.row-detail-route {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-bottom: 10px;
}

.row-detail-route div,
.row-detail-metrics div,
.account-summary-grid div,
.billing-history-row {
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.62);
}

body:not(.light-theme) .row-detail-route div,
body:not(.light-theme) .row-detail-metrics div,
body:not(.light-theme) .account-summary-grid div,
body:not(.light-theme) .billing-history-row {
  border-color: rgba(230, 235, 238, 0.13);
  background: rgba(255, 255, 255, 0.045);
}

.row-detail-route div {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px 8px;
  align-items: center;
  padding: 9px;
}

.row-detail-route img {
  width: 18px;
  height: 18px;
}

.row-detail-route strong {
  grid-column: 1 / -1;
  font-size: 1.05rem;
}

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

.row-detail-metrics div {
  min-height: 68px;
  padding: 9px;
}

.row-detail-metrics strong {
  display: block;
  margin-top: 6px;
  font-size: 1rem;
}

.row-detail-metrics small {
  display: block;
  margin-top: 2px;
}

.row-detail-copy {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
}

.row-detail-copy p {
  margin: 0 0 8px;
  color: var(--finance-muted, rgba(29, 32, 36, 0.72));
  line-height: 1.45;
}

body:not(.light-theme) .row-detail-copy p {
  color: rgba(241, 245, 245, 0.72);
}

.row-detail-actions {
  flex-wrap: wrap;
  margin-top: 6px;
}

.row-detail-actions .button-primary,
.row-detail-actions .button-ghost {
  min-height: 34px;
  padding: 0 12px;
}

.row-detail-actions.primary-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 10px;
}

.row-detail-actions.primary-actions .button-primary,
.row-detail-actions.primary-actions .button-ghost {
  justify-content: center;
  width: 100%;
}

.row-detail-actions.primary-actions .button-ghost {
  grid-column: 1 / -1;
}

.row-detail-actions.primary-actions .secondary-action {
  border-color: rgba(29, 32, 36, 0.28);
  background: rgba(29, 32, 36, 0.86);
}

body:not(.light-theme) .row-detail-actions.primary-actions .secondary-action {
  border-color: rgba(156, 255, 46, 0.28);
  background: rgba(156, 255, 46, 0.12);
  color: #eaffd8;
}

.account-billing-panel {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(230, 235, 238, 0.14);
}

body.payment-page.light-theme .account-billing-panel {
  border-top-color: rgba(29, 32, 36, 0.14);
}

.account-billing-head,
.billing-history-title,
.billing-history-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.account-billing-head h2 {
  margin: 2px 0 0;
  font-size: 1.25rem;
}

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

.account-summary-grid div {
  padding: 10px;
}

.account-summary-grid strong {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
}

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

.billing-history-row {
  padding: 10px;
}

.billing-history-row > div:last-child {
  text-align: right;
}

body.help-page:not(.light-theme) .topbar,
body.help-page:not(.light-theme) .help-cms-article,
body.help-page:not(.light-theme) .help-admin-copy,
body.help-page:not(.light-theme) .help-admin-form,
body.help-page:not(.light-theme) .help-admin-row {
  border-color: rgba(230, 235, 238, 0.16);
  background: rgba(16, 20, 25, 0.94);
  color: #f1f5f5;
}

body.help-page:not(.light-theme) .scanner-input,
body.help-page:not(.light-theme) .scanner-select,
body.help-page:not(.light-theme) .button-ghost,
body.help-page:not(.light-theme) .language-picker-trigger,
body.help-page:not(.light-theme) .user-pill {
  border-color: rgba(230, 235, 238, 0.18);
  background: #121820;
  color: #f2f5f6;
}

body.help-page:not(.light-theme) .help-cms-article p,
body.help-page:not(.light-theme) .help-admin-row small,
body.help-page:not(.light-theme) .help-admin-copy p,
body.help-page:not(.light-theme) .help-admin-form label,
body.help-page:not(.light-theme) .site-footer-copy span,
body.help-page:not(.light-theme) .site-footer-nav a {
  color: rgba(241, 245, 245, 0.68);
}

body.payment-page .payment-card {
  width: min(1120px, calc(100vw - 48px));
  grid-template-columns: minmax(340px, 0.9fr) minmax(420px, 1.1fr);
  gap: 28px 46px;
}

body.payment-page .payment-copy h1 {
  max-width: 9ch;
  font-size: clamp(2.4rem, 5.1vw, 4.6rem);
  letter-spacing: -0.07em;
  line-height: 0.92;
}

body.payment-page .payment-informer,
body.payment-page .account-billing-panel {
  grid-column: 1 / -1;
}

body.payment-page .payment-actions {
  grid-column: 2;
}

body.payment-page:not(.light-theme) .account-billing-panel,
body.payment-page:not(.light-theme) .account-summary-grid div,
body.payment-page:not(.light-theme) .billing-history-row {
  border-color: rgba(230, 235, 238, 0.16);
}

body.payment-page:not(.light-theme) .account-billing-head h2,
body.payment-page:not(.light-theme) .account-summary-grid strong,
body.payment-page:not(.light-theme) .billing-history-row strong {
  color: #f4f8f8;
}

body.payment-page.light-theme .account-billing-head h2,
body.payment-page.light-theme .account-summary-grid strong,
body.payment-page.light-theme .billing-history-row strong {
  color: #202327;
}

@media (max-width: 980px) {
  body.scanner-page .table-row,
  body.scanner-page .table-head {
    width: 1280px;
    min-width: 1280px;
  }

  .row-detail-drawer {
    inset: auto 8px 8px 8px;
    width: auto;
    max-height: 56dvh;
  }

  .row-detail-metrics,
  .account-summary-grid {
    grid-template-columns: 1fr 1fr;
  }

  body.payment-page .payment-card {
    width: min(100%, calc(100vw - 24px));
    grid-template-columns: 1fr;
  }

  body.payment-page .payment-actions {
    grid-column: 1;
  }

  body.payment-page .payment-copy h1 {
    max-width: 12ch;
    font-size: clamp(2.15rem, 13vw, 3.3rem);
  }
}

/* Product fix v75: account page is a billing workspace, not checkout UI */
body.payment-page.payment-active {
  height: auto;
  min-height: 100dvh;
  overflow-y: auto;
}

body.payment-page.payment-active::before,
body.payment-page.payment-active::after {
  opacity: 0.08;
}

body.payment-page.payment-active .payment-shell {
  width: min(1120px, calc(100vw - 48px));
  height: auto;
  min-height: 100dvh;
  grid-template-rows: auto auto;
  align-content: start;
  padding: 20px 0 16px;
}

body.payment-page.payment-active .payment-card {
  width: 100%;
  max-width: none;
  max-height: none;
  min-height: 0;
  overflow: visible;
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(360px, 1.15fr);
  grid-template-rows: auto auto auto auto;
  gap: 18px 34px;
  padding: 24px 26px 26px;
  border-radius: 14px;
}

body.payment-page.payment-active .payment-card::before,
body.payment-page.payment-active .payment-card::after {
  display: none;
}

body.payment-page.payment-active .payment-card-header {
  grid-column: 1 / -1;
  grid-template-columns: 44px minmax(0, 1fr) auto auto;
  gap: 10px;
  min-height: 40px;
  padding-bottom: 14px;
}

body.payment-page.payment-active .auth-logo {
  justify-self: center;
  width: 92px;
}

body.payment-page.payment-active .payment-copy {
  grid-column: 1;
  grid-row: 2 / span 2;
  align-self: center;
}

body.payment-page.payment-active .payment-copy h1 {
  max-width: 11ch;
  margin: 0 0 12px;
  font-size: clamp(2.05rem, 4.2vw, 3.15rem);
  line-height: 0.96;
  letter-spacing: -0.065em;
}

body.payment-page.payment-active .payment-copy p {
  max-width: 430px;
  font-size: 1rem;
  line-height: 1.55;
}

body.payment-page.payment-active .payment-segmented,
body.payment-page.payment-active .payment-plan-list,
body.payment-page.payment-active #checkout-message {
  display: none !important;
}

body.payment-page.payment-active .payment-informer {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  min-height: 122px;
  margin: 0;
  padding: 18px;
  display: grid;
  align-content: center;
  gap: 8px;
  border-radius: 12px;
}

body.payment-page.payment-active .payment-informer strong {
  font-size: 1.18rem;
}

body.payment-page.payment-active .payment-informer span {
  font-size: 0.95rem;
  line-height: 1.48;
}

body.payment-page.payment-active .payment-actions {
  grid-column: 2;
  grid-row: 3;
  align-self: start;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 0;
}

body.payment-page.payment-active .account-billing-panel {
  grid-column: 1 / -1;
  grid-row: 4;
  display: grid;
  gap: 14px;
  margin-top: 8px;
  padding-top: 18px;
  border-top: 1px solid rgba(29, 32, 36, 0.12);
}

body.payment-page.payment-active .account-billing-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 14px;
}

body.payment-page.payment-active .account-billing-head span,
body.payment-page.payment-active .billing-history-title span,
body.payment-page.payment-active .account-summary-grid span,
body.payment-page.payment-active .billing-history-row span {
  font-size: 0.78rem;
}

body.payment-page.payment-active .account-billing-head h2 {
  margin: 3px 0 0;
  font-size: clamp(1.35rem, 2.2vw, 1.9rem);
  letter-spacing: -0.04em;
}

body.payment-page.payment-active .account-summary-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.25fr;
  gap: 10px;
}

body.payment-page.payment-active .account-summary-grid div {
  min-width: 0;
  min-height: 72px;
  padding: 12px;
  border-radius: 10px;
}

body.payment-page.payment-active .account-summary-grid strong {
  display: block;
  margin-top: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.payment-page.payment-active .billing-history-title,
body.payment-page.payment-active .billing-history-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

body.payment-page.payment-active .billing-history-list {
  display: grid;
  gap: 8px;
}

body.payment-page.payment-active .billing-history-row {
  min-height: 58px;
  padding: 10px 12px;
  border-radius: 10px;
}

body.payment-page.payment-active .billing-history-row > div:last-child {
  text-align: right;
}

body.payment-page.payment-active.light-theme {
  background:
    radial-gradient(circle at 12% 0%, rgba(29, 32, 36, 0.055), transparent 30%),
    linear-gradient(180deg, #f4f1e9 0%, #ece9e1 100%);
}

body.payment-page.payment-active.light-theme .payment-card,
body.payment-page.payment-active.light-theme .payment-informer,
body.payment-page.payment-active.light-theme .account-summary-grid div,
body.payment-page.payment-active.light-theme .billing-history-row {
  border-color: rgba(29, 32, 36, 0.18);
  background: #fffdf7;
  color: #1d2024;
  box-shadow: 0 10px 24px rgba(29, 32, 36, 0.045);
}

body.payment-page.payment-active.light-theme .payment-copy h1,
body.payment-page.payment-active.light-theme .payment-informer strong,
body.payment-page.payment-active.light-theme .account-billing-head h2,
body.payment-page.payment-active.light-theme .account-summary-grid strong,
body.payment-page.payment-active.light-theme .billing-history-row strong {
  color: #1d2024;
}

body.payment-page.payment-active.light-theme .payment-copy p,
body.payment-page.payment-active.light-theme .payment-informer span,
body.payment-page.payment-active.light-theme .account-billing-head span,
body.payment-page.payment-active.light-theme .account-summary-grid span,
body.payment-page.payment-active.light-theme .billing-history-title span,
body.payment-page.payment-active.light-theme .billing-history-row span {
  color: rgba(29, 32, 36, 0.68);
}

body.payment-page.payment-active:not(.light-theme) .payment-card,
body.payment-page.payment-active:not(.light-theme) .payment-informer,
body.payment-page.payment-active:not(.light-theme) .account-summary-grid div,
body.payment-page.payment-active:not(.light-theme) .billing-history-row {
  border-color: rgba(235, 240, 242, 0.16);
  background: #101419;
  color: #f3f6f6;
}

body.payment-page.payment-active:not(.light-theme) .account-billing-panel {
  border-top-color: rgba(235, 240, 242, 0.14);
}

body.payment-page.payment-active .site-footer {
  position: static;
  width: 100%;
  transform: none;
  margin-top: 14px;
  padding-top: 10px;
}

/* Product fix v76: scanner has explicit exits to landing and education */
body.scanner-page .brand-link {
  min-width: 0;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

body.scanner-page .brand-link .brand-mark {
  transition: opacity 0.16s ease, color 0.16s ease;
}

body.scanner-page .brand-link:hover .brand-mark {
  opacity: 0.72;
}

body.scanner-page .scanner-help-link {
  white-space: nowrap;
}

body.scanner-page.light-theme .brand-link .brand-mark {
  color: #1d2024;
}

body.scanner-page:not(.light-theme) .brand-link .brand-mark {
  color: #f2f5f6;
}

body.scanner-page:not(.light-theme) .scanner-help-link {
  border-color: rgba(230, 235, 238, 0.18);
  background: #121820;
  color: #f2f5f6;
}

/* Product fix v77: compact signed-in state, no raw email in topbar */
.user-pill {
  gap: 7px;
  max-width: none;
}

.user-pill::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #35a852;
  box-shadow: 0 0 0 3px rgba(53, 168, 82, 0.12);
}

body.scanner-page .user-pill {
  min-width: auto;
  padding-inline: 10px;
}

body.scanner-page.light-theme .user-pill {
  border-color: rgba(8, 120, 59, 0.2);
  background: rgba(8, 120, 59, 0.055);
  color: #155f36;
}

body.scanner-page:not(.light-theme) .user-pill {
  border-color: rgba(156, 255, 46, 0.22);
  background: rgba(156, 255, 46, 0.075);
  color: #e9ffdc;
}

/* Product fix v78: scanner empty state is a market-board state, not a generic message */
body.scanner-page .scanner-empty-state {
  box-sizing: border-box;
  width: calc(100% - 24px);
  min-width: calc(1520px - 24px);
  margin: 12px;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 8px;
  border: 1px dashed rgba(29, 32, 36, 0.18);
  background: #f8f6ef;
  color: #1d2024;
  box-shadow: none;
}

body.scanner-page .scanner-empty-state::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: rgba(29, 32, 36, 0.32);
}

body.scanner-page .scanner-empty-state strong {
  font-size: 0.9rem;
  font-weight: 760;
  white-space: nowrap;
}

body.scanner-page .scanner-empty-state span {
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.84rem;
}

body.scanner-page:not(.light-theme) .scanner-empty-state {
  border-color: rgba(230, 235, 238, 0.14);
  background: #10161d;
  color: #edf2f3;
}

body.scanner-page:not(.light-theme) .scanner-empty-state::before {
  background: rgba(156, 255, 46, 0.62);
  box-shadow: 0 0 0 4px rgba(156, 255, 46, 0.08);
}

body.scanner-page:not(.light-theme) .scanner-empty-state span {
  color: rgba(237, 242, 243, 0.58);
}

@media (max-width: 760px) {
body.scanner-page .scanner-help-link {
  display: inline-flex;
}

/* Product completion pass: account billing controls and admin-only CMS link */
.account-billing-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.account-billing-actions .button-ghost {
  min-height: 42px;
  white-space: nowrap;
}

.article-table-wrap {
  margin: 18px 0;
  overflow-x: auto;
  border: 1px solid rgba(130, 139, 152, 0.28);
}

.article-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.article-table td {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(130, 139, 152, 0.18);
}

.article-figure {
  margin: 18px 0;
}

.article-figure img {
  display: block;
  width: 100%;
  max-height: 460px;
  object-fit: contain;
  border: 1px solid rgba(130, 139, 152, 0.28);
}

.article-figure figcaption {
  margin-top: 8px;
  color: var(--text-muted);
  font-size: 13px;
}

.article-highlight {
  margin: 18px 0;
  padding: 18px;
  border-left: 3px solid var(--accent-green);
  background: rgba(157, 255, 47, 0.08);
}

.article-highlight strong {
  display: block;
  margin-bottom: 8px;
}

body.payment-page:not(.light-theme) .account-billing-actions .button-ghost {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.18);
  color: rgba(246, 249, 252, 0.92);
}

@media (max-width: 760px) {
  .account-billing-actions {
    justify-content: stretch;
    width: 100%;
  }

  .account-billing-actions .button-ghost {
    flex: 1 1 160px;
  }
}
}

@media (max-width: 920px) {
  body.payment-page.payment-active .payment-shell {
    width: min(100%, calc(100vw - 20px));
    padding-top: 10px;
  }

  body.payment-page.payment-active .payment-card {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 16px;
  }

  body.payment-page.payment-active .payment-copy,
  body.payment-page.payment-active .payment-informer,
  body.payment-page.payment-active .payment-actions,
  body.payment-page.payment-active .account-billing-panel {
    grid-column: 1;
    grid-row: auto;
  }

  body.payment-page.payment-active .payment-copy h1 {
    max-width: 14ch;
    font-size: clamp(2rem, 11vw, 2.8rem);
  }

  body.payment-page.payment-active .payment-actions,
  body.payment-page.payment-active .account-summary-grid,
  body.payment-page.payment-active .billing-history-title,
  body.payment-page.payment-active .billing-history-row {
    grid-template-columns: 1fr;
  }

  body.payment-page.payment-active .billing-history-row > div:last-child {
    text-align: left;
  }
}

/* Product fix v79: billing history is a real ledger */
body.payment-page.payment-active .billing-history-table {
  overflow: hidden;
  border: 1px solid rgba(235, 240, 242, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.02);
}

body.payment-page.payment-active.light-theme .billing-history-table {
  border-color: rgba(29, 32, 36, 0.16);
  background: #fffdf7;
}

body.payment-page.payment-active .billing-history-table .billing-history-row {
  display: grid;
  grid-template-columns: minmax(116px, 0.8fr) minmax(145px, 1.05fr) minmax(170px, 1.2fr) minmax(132px, 0.95fr) minmax(94px, 0.7fr) minmax(112px, 0.8fr) minmax(150px, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 64px;
  padding: 11px 12px;
  border: 0;
  border-bottom: 1px solid rgba(235, 240, 242, 0.1);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.payment-page.payment-active.light-theme .billing-history-table .billing-history-row {
  border-bottom-color: rgba(29, 32, 36, 0.1);
}

body.payment-page.payment-active .billing-history-table .billing-history-row:last-child {
  border-bottom: 0;
}

body.payment-page.payment-active .billing-history-table .billing-history-head {
  min-height: 38px;
  padding-block: 9px;
  background: rgba(255, 255, 255, 0.035);
  color: rgba(243, 246, 246, 0.54);
  font-size: 0.67rem;
  font-weight: 820;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.payment-page.payment-active.light-theme .billing-history-table .billing-history-head {
  background: rgba(29, 32, 36, 0.04);
  color: rgba(29, 32, 36, 0.54);
}

body.payment-page.payment-active .billing-cell {
  min-width: 0;
  display: grid;
  gap: 3px;
}

body.payment-page.payment-active .billing-cell strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.86rem;
  font-weight: 740;
}

body.payment-page.payment-active .billing-cell small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: rgba(243, 246, 246, 0.52);
  font-size: 0.72rem;
}

body.payment-page.payment-active.light-theme .billing-cell small {
  color: rgba(29, 32, 36, 0.56);
}

body.payment-page.payment-active .amount-cell strong,
body.payment-page.payment-active .reference-cell strong {
  font-variant-numeric: tabular-nums;
}

body.payment-page.payment-active .reference-cell strong {
  font-family: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  font-size: 0.76rem;
}

body.payment-page.payment-active .billing-status-pill {
  width: fit-content;
  max-width: 100%;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(156, 255, 46, 0.12);
  color: #d9ff9f;
}

body.payment-page.payment-active .status-archived .billing-status-pill {
  background: rgba(255, 255, 255, 0.07);
  color: rgba(243, 246, 246, 0.72);
}

body.payment-page.payment-active .status-pending .billing-status-pill,
body.payment-page.payment-active .status-past_due .billing-status-pill,
body.payment-page.payment-active .status-unpaid .billing-status-pill {
  background: rgba(255, 184, 74, 0.16);
  color: #ffd083;
}

body.payment-page.payment-active.light-theme .billing-status-pill {
  background: rgba(8, 120, 59, 0.1);
  color: #08783b;
}

body.payment-page.payment-active.light-theme .status-archived .billing-status-pill {
  background: rgba(29, 32, 36, 0.07);
  color: rgba(29, 32, 36, 0.7);
}

body.payment-page.payment-active.light-theme .status-pending .billing-status-pill,
body.payment-page.payment-active.light-theme .status-past_due .billing-status-pill,
body.payment-page.payment-active.light-theme .status-unpaid .billing-status-pill {
  background: rgba(131, 86, 6, 0.12);
  color: #835606;
}

@media (max-width: 980px) {
  body.payment-page.payment-active .billing-history-table {
    border: 0;
    background: transparent;
  }

  body.payment-page.payment-active .billing-history-table .billing-history-head {
    display: none;
  }

  body.payment-page.payment-active .billing-history-table .billing-history-entry {
    grid-template-columns: 1fr 1fr;
    margin-bottom: 8px;
    border: 1px solid rgba(235, 240, 242, 0.14);
    border-radius: 12px;
    background: #101419;
  }

  body.payment-page.payment-active.light-theme .billing-history-table .billing-history-entry {
    border-color: rgba(29, 32, 36, 0.16);
    background: #fffdf7;
  }

  body.payment-page.payment-active .billing-cell::before {
    content: attr(data-label);
    color: rgba(243, 246, 246, 0.48);
    font-size: 0.66rem;
    font-weight: 820;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  body.payment-page.payment-active.light-theme .billing-cell::before {
    color: rgba(29, 32, 36, 0.48);
  }
}

/* Product fix v80: scanner refresh state is a compact sync toast, not a table alert */
body.scanner-page .scanner-notice {
  position: absolute;
  top: 116px;
  right: 14px;
  z-index: 32;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: min(360px, calc(100% - 28px));
  min-height: 30px;
  margin: 0;
  padding: 7px 12px 7px 31px;
  border-radius: 999px;
  border: 1px solid rgba(29, 32, 36, 0.16);
  background: #fffdf7;
  color: rgba(29, 32, 36, 0.78);
  font-size: 0.75rem;
  font-weight: 760;
  letter-spacing: 0;
  box-shadow: 0 12px 34px rgba(29, 32, 36, 0.1);
  backdrop-filter: blur(10px);
}

body.scanner-page:not(.light-theme) .scanner-notice {
  border-color: rgba(230, 235, 238, 0.18);
  background: #151b22;
  color: rgba(240, 243, 244, 0.82);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.34);
}

body.scanner-page .scanner-notice.hidden {
  display: none;
}

body.scanner-page .scanner-notice::before {
  content: "";
  position: absolute;
  left: 11px;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #9cff2e;
  box-shadow: 0 0 0 5px rgba(156, 255, 46, 0.12);
  animation: scannerSyncPulse 1.15s ease-in-out infinite;
}

body.scanner-page .scanner-notice.is-success::before {
  animation: none;
}

body.scanner-page .scanner-notice.is-error {
  border-color: rgba(184, 50, 66, 0.28);
  background: #fff7f7;
  color: #8a2230;
}

body.scanner-page:not(.light-theme) .scanner-notice.is-error {
  background: #201318;
  color: #ff9aa8;
}

body.scanner-page .scanner-notice.is-error::before {
  background: #ff5f70;
  box-shadow: 0 0 0 5px rgba(255, 95, 112, 0.13);
  animation: none;
}

@keyframes scannerSyncPulse {
  0%,
  100% {
    transform: scale(0.85);
    opacity: 0.62;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
}

@media (max-width: 760px) {
  body.scanner-page .scanner-notice {
    top: 152px;
    right: 10px;
    left: 10px;
    max-width: none;
  }
}

/* Product chrome v83: one navigation/status language across landing, scanner, help, and account */
.brand-link {
  color: inherit;
  text-decoration: none;
}

.brand-link:hover .brand-mark {
  color: currentColor;
  opacity: 0.76;
}

.topbar .nav {
  display: flex;
  align-items: center;
  gap: 18px;
}

.topbar .nav-link {
  white-space: nowrap;
}

.access-active {
  position: relative;
}

.account-link.access-active,
.nav-link.access-active,
.user-pill {
  color: #1c6f3c;
}

.account-link.access-active::before,
.nav-link.access-active::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 999px;
  background: #35a852;
  box-shadow: 0 0 0 3px rgba(53, 168, 82, 0.12);
  vertical-align: 1px;
}

body:not(.light-theme) .account-link.access-active,
body:not(.light-theme) .nav-link.access-active,
body:not(.light-theme) .user-pill {
  color: #dfffcd;
}

.site-footer {
  border-top: 1px solid color-mix(in srgb, currentColor 16%, transparent);
}

.site-footer a {
  color: inherit;
  text-decoration: none;
}

.site-footer-copy strong a {
  letter-spacing: 0.08em;
}

body.help-page:not(.light-theme) {
  background:
    radial-gradient(circle at 15% -6%, rgba(156, 255, 46, 0.07), transparent 28%),
    linear-gradient(180deg, #090d11 0%, #050608 100%);
  color: #f2f5f6;
}

body.help-page:not(.light-theme) .help-page-shell {
  background: transparent;
}

body.help-page:not(.light-theme) .topbar,
body.help-page:not(.light-theme) .site-footer,
body.help-page:not(.light-theme) .help-hero,
body.help-page:not(.light-theme) .help-market-lab,
body.help-page:not(.light-theme) .help-card,
body.help-page:not(.light-theme) .help-article,
body.help-page:not(.light-theme) .help-cms-article,
body.help-page:not(.light-theme) .help-admin-shell,
body.help-page:not(.light-theme) .help-admin-copy,
body.help-page:not(.light-theme) .help-admin-form,
body.help-page:not(.light-theme) .help-admin-row {
  border-color: rgba(232, 238, 240, 0.16);
  background:
    linear-gradient(180deg, rgba(18, 23, 29, 0.96), rgba(12, 16, 21, 0.98)),
    #0d1117;
  color: #f2f5f6;
  box-shadow: none;
}

body.help-page:not(.light-theme) .brand-mark,
body.help-page:not(.light-theme) h1,
body.help-page:not(.light-theme) h2,
body.help-page:not(.light-theme) h3,
body.help-page:not(.light-theme) strong {
  color: #f5f8f8;
}

body.help-page:not(.light-theme) p,
body.help-page:not(.light-theme) small,
body.help-page:not(.light-theme) .brand-subtitle,
body.help-page:not(.light-theme) .nav-link,
body.help-page:not(.light-theme) .site-footer-copy span,
body.help-page:not(.light-theme) .site-footer-nav a,
body.help-page:not(.light-theme) .help-admin-row small,
body.help-page:not(.light-theme) .help-admin-copy p,
body.help-page:not(.light-theme) .help-admin-form label {
  color: rgba(242, 245, 246, 0.72);
}

body.help-page:not(.light-theme) .button-ghost,
body.help-page:not(.light-theme) .language-picker-trigger,
body.help-page:not(.light-theme) .scanner-input,
body.help-page:not(.light-theme) .scanner-select,
body.help-page:not(.light-theme) .section-kicker {
  border-color: rgba(232, 238, 240, 0.18);
  background: #111821;
  color: #f2f5f6;
}

body.help-page:not(.light-theme) .lab-venue-row span,
body.help-page:not(.light-theme) .lab-summary span {
  color: rgba(242, 245, 246, 0.62);
}

body.help-page:not(.light-theme) .button-primary {
  border-color: #9cff2e;
  background: #9cff2e;
  color: #111510;
  box-shadow: 0 16px 38px rgba(156, 255, 46, 0.14);
}

body.help-page:not(.light-theme) .help-lab-chart,
body.help-page:not(.light-theme) .lab-venue-row,
body.help-page:not(.light-theme) .lab-summary {
  border-color: rgba(232, 238, 240, 0.14);
  background: #0b1016;
}

body.help-page:not(.light-theme) .language-picker-menu {
  border-color: rgba(232, 238, 240, 0.18);
  background: #101720;
  box-shadow: 0 24px 58px rgba(0, 0, 0, 0.42);
}

body.help-page:not(.light-theme) .language-picker-menu button {
  color: rgba(242, 245, 246, 0.72);
}

body.help-page:not(.light-theme) .language-picker-menu button:hover,
body.help-page:not(.light-theme) .language-picker-menu button.active {
  background: rgba(156, 255, 46, 0.11);
  color: #f6fff0;
}

/* Help Center v85: article-first structure, no sticky content loss */
body.help-page .topbar {
  position: static;
}

.help-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin: 20px 0 12px;
  color: var(--finance-ink, #1d2024);
}

.help-section-head span {
  color: var(--finance-muted, rgba(29, 32, 36, 0.62));
  font-size: 0.72rem;
  font-weight: 760;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.help-section-head strong {
  max-width: 520px;
  font-size: clamp(1.25rem, 2vw, 1.8rem);
  line-height: 1.08;
  text-align: right;
}

.help-card-link,
.help-cms-link {
  color: inherit;
  text-decoration: none;
}

.help-card-link:hover,
.help-cms-link:hover {
  border-color: rgba(156, 255, 46, 0.38);
  transform: translateY(-1px);
}

body.help-page .help-article {
  margin-top: 18px;
}

body.help-page .help-columns {
  align-items: stretch;
}

body.help-page .help-cms-article {
  display: grid;
  gap: 8px;
  min-height: 154px;
}

body.help-page:not(.light-theme) .help-section-head {
  color: #f2f5f6;
}

body.help-page:not(.light-theme) .help-section-head span {
  color: rgba(242, 245, 246, 0.58);
}

.help-reader {
  max-width: 900px;
  margin: 0 auto;
}

.help-reader-content {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}

.help-reader-content h1 {
  max-width: 12ch;
  margin: 0;
  font-size: clamp(2.2rem, 5vw, 4.4rem);
  line-height: 0.96;
  letter-spacing: -0.065em;
}

.article-meta {
  color: var(--finance-muted, rgba(29, 32, 36, 0.62));
  font-size: 0.75rem;
  font-weight: 760;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.article-summary {
  max-width: 740px;
  margin: 0;
  color: var(--finance-muted, rgba(29, 32, 36, 0.72));
  font-size: 1.05rem;
  line-height: 1.58;
}

.article-body {
  display: grid;
  gap: 14px;
  max-width: 760px;
  margin-top: 14px;
}

.article-body h2,
.article-body h3,
.article-body p,
.article-body ul {
  margin: 0;
}

.article-body h2 {
  margin-top: 16px;
  font-size: clamp(1.35rem, 2vw, 2rem);
}

.article-body p,
.article-body li {
  color: var(--finance-muted, rgba(29, 32, 36, 0.74));
  font-size: 1rem;
  line-height: 1.65;
}

body.help-page:not(.light-theme) .article-summary,
body.help-page:not(.light-theme) .article-body p,
body.help-page:not(.light-theme) .article-body li,
body.help-page:not(.light-theme) .article-meta {
  color: rgba(242, 245, 246, 0.72);
}

body.help-page:not(.light-theme) .help-reader {
  border-color: rgba(232, 238, 240, 0.16);
  background:
    linear-gradient(180deg, rgba(18, 23, 29, 0.96), rgba(12, 16, 21, 0.98)),
    #0d1117;
  color: #f2f5f6;
}

/* Product fix v86: scanner table header contrast in dark theme */
body.scanner-page:not(.light-theme) .table-head {
  background: #121820;
  color: rgba(246, 249, 250, 0.78);
}

body.scanner-page:not(.light-theme) .table-head > span,
body.scanner-page:not(.light-theme) .sort-header {
  color: rgba(246, 249, 250, 0.78);
}

body.scanner-page:not(.light-theme) .sort-header:hover,
body.scanner-page:not(.light-theme) .sort-header.active {
  color: #f6f9fa;
}

body.scanner-page:not(.light-theme) .sort-arrows {
  color: rgba(246, 249, 250, 0.34);
}

body.scanner-page:not(.light-theme) .sort-header.active.asc .sort-arrow.up,
body.scanner-page:not(.light-theme) .sort-header.active.desc .sort-arrow.down {
  color: #9cff2e;
}

body.scanner-page:not(.light-theme) .quality-cell .apr-cell,
body.scanner-page:not(.light-theme) .quality-cell > strong,
body.scanner-page:not(.light-theme) .metric-stack > strong {
  color: #f6f9fa;
}

@media (max-width: 760px) {
  .help-section-head {
    display: grid;
  }

  .help-section-head strong {
    text-align: left;
  }
}

/* Product fix v87: visible board refresh countdown and funding interval column */
body.scanner-page #snapshot-meta.refresh {
  border-color: rgba(29, 32, 36, 0.16);
  background: #fffdf7;
  color: #202327;
  font-weight: 760;
  letter-spacing: 0.02em;
  text-transform: none;
}

body.scanner-page:not(.light-theme) #snapshot-meta.refresh {
  border-color: rgba(230, 235, 238, 0.18);
  background: #121820;
  color: #f2f5f6;
}

body.scanner-page .table-row,
body.scanner-page .table-head {
  width: max(100%, 1740px);
  min-width: 1740px;
  grid-template-columns:
    minmax(160px, 0.95fr)
    minmax(128px, 0.7fr)
    minmax(116px, 0.58fr)
    minmax(116px, 0.58fr)
    minmax(126px, 0.62fr)
    minmax(126px, 0.62fr)
    minmax(122px, 0.6fr)
    minmax(142px, 0.68fr)
    minmax(130px, 0.64fr)
    minmax(132px, 0.66fr)
    minmax(280px, 1.18fr);
}

body.scanner-page .funding-period-cell strong {
  font-variant-numeric: tabular-nums;
}

body.scanner-page .number-cell,
body.scanner-page .metric-stack,
body.scanner-page .quality-cell,
body.scanner-page .funding-period-cell {
  min-width: 0;
}

body.scanner-page .number-cell strong,
body.scanner-page .metric-stack strong,
body.scanner-page .quality-cell strong,
body.scanner-page .apr-cell,
body.scanner-page .focus-metric strong,
body.scanner-page .row-detail-route strong,
body.scanner-page .row-detail-metrics strong,
body.scanner-page .pair-stat strong {
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1, "kern" 1;
  letter-spacing: -0.018em;
  white-space: nowrap;
}

body.scanner-page .metric-stack small,
body.scanner-page .quality-cell small {
  overflow: hidden;
  text-overflow: ellipsis;
}

body.scanner-page:not(.light-theme) .funding-period-cell small {
  color: rgba(246, 249, 250, 0.7);
}

body.scanner-page .scanner-empty-state {
  min-width: calc(1740px - 24px);
}

@media (max-width: 980px) {
  body.scanner-page .table-row,
  body.scanner-page .table-head {
    width: 1740px;
    min-width: 1740px;
  }
}

/* Strategy store */

.strategies-shell {
  display: grid;
  gap: 20px;
}

.strategies-topbar .nav {
  display: flex;
  align-items: center;
  gap: 12px;
}

.strategies-hero,
.strategies-toolbar,
.strategy-store-card,
.strategies-detail,
.strategy-metric-chip {
  background: var(--cas-bg-surface-solid);
  border: 1px solid var(--cas-border);
  box-shadow: var(--cas-shadow);
}

.strategies-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr);
  gap: 20px;
  padding: 24px;
  border-radius: 8px;
}

.strategies-hero-copy {
  display: grid;
  gap: 12px;
}

.strategies-hero-copy h1,
.strategy-detail-panel-shell h2,
.strategy-detail-placeholder h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1.08;
}

.strategies-hero-copy p,
.strategy-detail-copy,
.strategy-store-card-copy,
.strategy-detail-placeholder p,
.strategy-summary-card small,
.strategy-trade-row small {
  color: var(--cas-text-secondary);
  line-height: 1.6;
}

.strategies-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 8px;
}

.strategies-hero-rail {
  display: grid;
  gap: 12px;
}

.strategies-summary-card {
  display: grid;
  gap: 8px;
  padding: 18px;
  border-radius: 8px;
  background: var(--cas-bg-alt);
  border: 1px solid var(--cas-border-soft);
}

.strategies-summary-card span {
  color: var(--cas-text-muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.strategies-summary-card strong {
  font-size: 18px;
}

.strategies-toolbar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
  padding: 16px 18px;
  border-radius: 8px;
}

.strategies-search-wrap {
  flex: 1;
  max-width: 420px;
}

.strategy-search-input {
  width: 100%;
}

.strategies-toolbar-meta {
  color: var(--cas-text-secondary);
  font-size: 13px;
}

.strategies-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  gap: 20px;
  align-items: start;
}

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

.strategy-store-card {
  display: grid;
  gap: 16px;
  padding: 20px;
  border-radius: 8px;
  cursor: pointer;
  transition:
    transform 140ms ease,
    border-color 140ms ease,
    box-shadow 140ms ease;
}

.strategy-store-card:hover,
.strategy-store-card.active {
  transform: translateY(-2px);
  border-color: rgba(47, 49, 53, 0.22);
  box-shadow: var(--cas-shadow-raised);
}

.strategy-store-card-head,
.strategy-detail-head,
.strategy-detail-actions,
.strategy-detail-columns,
.strategy-trade-row {
  display: flex;
  gap: 12px;
}

.strategy-store-card-head,
.strategy-detail-head {
  justify-content: space-between;
  align-items: flex-start;
}

.strategy-store-card h3 {
  margin: 0;
  font-size: 22px;
  line-height: 1.18;
}

.strategy-store-card-metrics,
.strategy-detail-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.strategy-metric-chip {
  display: grid;
  gap: 6px;
  padding: 12px 14px;
  border-radius: 8px;
  background: var(--cas-bg-alt);
  border-color: var(--cas-border-soft);
}

.strategy-metric-chip span {
  color: var(--cas-text-muted);
  font-size: 12px;
}

.strategy-metric-chip strong {
  font-size: 19px;
  line-height: 1.1;
}

.strategy-store-card-footer {
  color: var(--cas-text-secondary);
  font-size: 14px;
  line-height: 1.55;
}

.strategies-detail {
  position: sticky;
  top: 20px;
  padding: 22px;
  border-radius: 8px;
}

.strategy-detail-panel-shell,
.strategy-detail-placeholder {
  display: grid;
  gap: 18px;
}

.strategy-detail-copy {
  margin: 0;
}

.strategy-detail-actions {
  flex-wrap: wrap;
}

.strategy-detail-actions .button-primary,
.strategy-detail-actions .button-ghost,
.strategies-hero-actions .button-primary,
.strategies-hero-actions .button-ghost {
  min-height: 42px;
  padding-inline: 16px;
}

.strategy-detail-chart {
  padding: 12px;
  border-radius: 8px;
  background: var(--cas-bg-alt);
  border: 1px solid var(--cas-border-soft);
  color: #2f3135;
}

.strategy-sparkline {
  display: block;
  width: 100%;
  height: auto;
}

.strategy-detail-columns {
  align-items: flex-start;
}

.strategy-detail-columns > div {
  flex: 1;
  min-width: 0;
  padding: 16px;
  border-radius: 8px;
  background: var(--cas-bg-alt);
  border: 1px solid var(--cas-border-soft);
}

.strategy-detail-columns h3,
.strategy-detail-trades h3 {
  margin: 0 0 10px;
  font-size: 15px;
}

.strategy-detail-columns ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
  color: var(--cas-text-secondary);
  line-height: 1.55;
}

.strategy-trades-list {
  display: grid;
  gap: 10px;
}

.strategy-trade-row {
  justify-content: space-between;
  align-items: flex-start;
  padding: 12px 14px;
  border-radius: 8px;
  background: var(--cas-bg-alt);
  border: 1px solid var(--cas-border-soft);
}

.strategy-trade-row strong {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
}

.strategy-trade-pnl {
  font-weight: 700;
  white-space: nowrap;
}

.strategy-trade-pnl.good {
  color: #0b9b59;
}

.strategy-trade-pnl.bad {
  color: #d84f4f;
}

.strategy-style-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  border: 1px solid var(--cas-border-soft);
  background: var(--cas-bg-alt);
  color: var(--cas-text);
}

.strategy-style-pill.style-conservative {
  color: #0b9b59;
}

.strategy-style-pill.style-balanced {
  color: #2d6cdf;
}

.strategy-style-pill.style-aggressive {
  color: #c07d12;
}

.strategies-page .strategies-hero {
  position: relative;
  overflow: hidden;
}

.strategies-page .strategies-hero::after {
  content: "paper simulation · public market data · no execution";
  position: absolute;
  right: 20px;
  bottom: 14px;
  color: var(--cas-text-muted);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.strategies-page .strategies-summary-card strong {
  font-size: clamp(22px, 2vw, 30px);
  letter-spacing: -0.04em;
}

.strategies-page .strategy-store-card-copy {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.strategies-page .strategy-store-card.active {
  border-color: rgba(143, 255, 36, 0.5);
}

body:not(.light-theme).strategies-page .strategy-detail-chart {
  color: #8fff24;
}

body:not(.light-theme).strategies-page .strategy-style-pill.style-balanced,
body:not(.light-theme).strategies-page .strategy-style-pill.style-conservative,
body:not(.light-theme).strategies-page .strategy-style-pill.style-aggressive {
  color: #dce4e8;
}

@media (max-width: 1180px) {
  .strategies-layout,
  .strategies-hero {
    grid-template-columns: 1fr;
  }

  .strategies-detail {
    position: static;
  }
}

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

  .strategy-detail-columns,
  .strategy-store-card-head,
  .strategy-detail-head,
  .strategies-toolbar {
    flex-direction: column;
  }

  .strategy-store-card-metrics,
  .strategy-detail-metrics {
    grid-template-columns: 1fr;
  }
}

/* Shared product chrome: one header/footer system across landing, scanner, pair, help, legal, auth and payment. */
.product-topbar,
body.scanner-page .product-topbar,
body.help-page .product-topbar,
body[data-page="landing"] .product-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  min-height: 62px;
  margin: 8px auto 10px;
  padding: 10px 12px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 10px;
  background: rgba(255, 253, 247, 0.94);
  color: #1d2024;
  box-shadow: none;
}

body:not(.light-theme) .product-topbar,
body.scanner-page:not(.light-theme) .product-topbar,
body.help-page:not(.light-theme) .product-topbar {
  border-color: rgba(232, 238, 240, 0.16);
  background: #0f1419;
  color: #f2f5f6;
}

.product-topbar::after {
  content: none !important;
}

.product-topbar .brand-wrap {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 210px;
  color: inherit;
}

.product-topbar .brand-logo {
  width: 88px;
  max-width: 88px;
  height: auto;
  flex: 0 0 auto;
}

.product-topbar .brand-text {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.product-topbar .brand-mark {
  color: inherit;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 1.1;
  text-transform: uppercase;
}

.product-topbar .brand-subtitle {
  color: rgba(29, 32, 36, 0.62);
  font-size: 0.72rem;
  font-weight: 760;
  letter-spacing: 0;
  text-transform: none;
}

body:not(.light-theme) .product-topbar .brand-subtitle {
  color: rgba(242, 245, 246, 0.66);
}

.product-topbar .topbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  min-width: 0;
}

.product-topbar .nav {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 1 auto;
}

.product-topbar .nav-link {
  color: rgba(29, 32, 36, 0.68);
  font-size: 0.84rem;
  font-weight: 760;
  white-space: nowrap;
}

.product-topbar .nav-link:hover {
  color: #1d2024;
}

body:not(.light-theme) .product-topbar .nav-link {
  color: rgba(242, 245, 246, 0.72);
}

body:not(.light-theme) .product-topbar .nav-link:hover {
  color: #f2f5f6;
}

.product-topbar .topbar-auth {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  min-width: 0;
}

.product-topbar .topbar-auth .button-ghost,
.product-topbar .topbar-auth .button-primary,
.product-topbar .language-picker-trigger,
.product-topbar .account-link,
.product-topbar .user-pill {
  min-height: 36px;
  padding: 0 13px;
  border-radius: 8px;
  white-space: nowrap;
}

.product-topbar .user-pill {
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.product-topbar .account-link.access-active {
  border-color: rgba(53, 168, 82, 0.28);
  background: rgba(53, 168, 82, 0.08);
}

body:not(.light-theme) .product-topbar .account-link.access-active {
  border-color: rgba(146, 255, 47, 0.28);
  background: rgba(146, 255, 47, 0.08);
}

.multi-filter {
  position: relative;
  min-width: 150px;
}

.multi-filter-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(38, 41, 45, 0.14);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.66);
  color: #292b2f;
  cursor: pointer;
  font: inherit;
  font-size: 0.86rem;
  font-weight: 760;
  text-align: left;
}

.multi-filter-trigger small {
  color: rgba(41, 43, 47, 0.5);
  font-size: 0.72rem;
  font-weight: 760;
  white-space: nowrap;
}

.multi-filter.active .multi-filter-trigger {
  border-color: rgba(34, 121, 68, 0.28);
  background: rgba(34, 121, 68, 0.07);
}

.multi-filter-menu {
  position: absolute;
  z-index: 80;
  top: calc(100% + 6px);
  left: 0;
  display: none;
  width: min(260px, 82vw);
  max-height: 330px;
  overflow: auto;
  padding: 7px;
  border: 1px solid rgba(38, 41, 45, 0.16);
  border-radius: 10px;
  background: #fffefa;
  box-shadow: 0 18px 46px rgba(18, 22, 26, 0.14);
}

.multi-filter.open .multi-filter-menu {
  display: grid;
  gap: 4px;
}

.multi-filter-clear,
.multi-filter-option {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 34px;
  padding: 7px 9px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #25282c;
  cursor: pointer;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 720;
  text-align: left;
}

.multi-filter-clear:hover,
.multi-filter-option:hover {
  background: rgba(38, 41, 45, 0.06);
}

.multi-filter-option input {
  width: 15px;
  height: 15px;
  accent-color: #202429;
}

body:not(.light-theme) .multi-filter-trigger,
body.scanner-page:not(.light-theme) .multi-filter-trigger {
  border-color: rgba(230, 235, 238, 0.18);
  background: #121820;
  color: #f2f5f6;
}

body:not(.light-theme) .multi-filter-trigger small,
body.scanner-page:not(.light-theme) .multi-filter-trigger small {
  color: rgba(242, 245, 246, 0.55);
}

body:not(.light-theme) .multi-filter.active .multi-filter-trigger,
body.scanner-page:not(.light-theme) .multi-filter.active .multi-filter-trigger {
  border-color: rgba(156, 255, 46, 0.42);
  background: rgba(156, 255, 46, 0.12);
}

body:not(.light-theme) .multi-filter-menu,
body.scanner-page:not(.light-theme) .multi-filter-menu {
  border-color: rgba(230, 235, 238, 0.16);
  background: #11171d;
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.42);
}

body:not(.light-theme) .multi-filter-clear,
body:not(.light-theme) .multi-filter-option,
body.scanner-page:not(.light-theme) .multi-filter-clear,
body.scanner-page:not(.light-theme) .multi-filter-option {
  color: #eef3f4;
}

body:not(.light-theme) .multi-filter-clear:hover,
body:not(.light-theme) .multi-filter-option:hover,
body.scanner-page:not(.light-theme) .multi-filter-clear:hover,
body.scanner-page:not(.light-theme) .multi-filter-option:hover {
  background: rgba(255, 255, 255, 0.07);
}

.auth-brand-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 0;
  color: inherit;
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.auth-brand-link .auth-logo {
  width: 86px;
  max-width: 86px;
  height: auto;
}

.auth-card-header .language-picker,
.payment-card-header .language-picker {
  order: 3;
}

.auth-card-header .theme-toggle,
.payment-card-header .theme-toggle {
  order: 4;
}

.site-footer,
body.scanner-page .site-footer,
body.help-page .site-footer,
body.payment-page .site-footer,
body.auth-page .site-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  margin: 18px auto 0;
  padding: 14px 0;
  border-top: 1px solid rgba(29, 32, 36, 0.14);
  background: transparent;
  color: rgba(29, 32, 36, 0.72);
  box-shadow: none;
}

body:not(.light-theme) .site-footer,
body.scanner-page:not(.light-theme) .site-footer,
body.help-page:not(.light-theme) .site-footer {
  border-color: rgba(232, 238, 240, 0.16);
  background: transparent;
  color: rgba(242, 245, 246, 0.7);
}

.site-footer-copy {
  display: grid;
  gap: 2px;
}

.site-footer-copy strong,
.site-footer-copy strong a {
  color: inherit;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.site-footer-copy span {
  color: inherit;
  opacity: 0.78;
  font-size: 0.78rem;
}

.site-footer-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  flex-wrap: wrap;
}

.site-footer-nav a {
  color: inherit;
  font-size: 0.78rem;
  font-weight: 760;
  text-decoration: none;
}

.site-footer-nav a:hover {
  opacity: 1;
}

@media (max-width: 1060px) {
  .product-topbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .product-topbar .topbar-actions {
    width: 100%;
    justify-content: space-between;
  }
}

@media (max-width: 760px) {
  .product-topbar .topbar-actions,
  .product-topbar .topbar-auth,
  .site-footer {
    align-items: stretch;
    flex-direction: column;
    width: 100%;
  }

  .product-topbar .nav,
  .site-footer-nav {
    justify-content: flex-start;
    width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .product-topbar .topbar-auth .button-ghost,
  .product-topbar .topbar-auth .button-primary,
  .product-topbar .language-picker,
  .product-topbar .language-picker-trigger,
  .product-topbar .account-link {
    width: 100%;
  }
}

/* Business operations dashboard */
.ops-page .ops-hero {
  align-items: end;
  grid-template-columns: minmax(0, 1fr) auto;
}

.ops-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.ops-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.ops-kpi,
.ops-panel {
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 12px;
  background: rgba(255, 253, 247, 0.94);
  color: #1d2024;
}

.ops-kpi {
  min-height: 116px;
  padding: 14px;
}

.ops-kpi span,
.ops-panel .section-title-row span,
.ops-list-row span,
.ops-event-row span,
.ops-daily-row span,
.ops-daily-row small {
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.74rem;
  font-weight: 820;
}

.ops-kpi strong {
  display: block;
  margin: 8px 0 4px;
  color: #1d2024;
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1;
}

.ops-kpi small {
  color: rgba(29, 32, 36, 0.66);
  font-weight: 720;
}

.ops-board {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}

.ops-panel {
  padding: 16px;
}

.ops-list,
.ops-events,
.ops-daily {
  display: grid;
  gap: 8px;
}

.ops-list-row,
.ops-event-row,
.ops-daily-row {
  display: grid;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(29, 32, 36, 0.08);
}

.ops-list-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.ops-event-row {
  grid-template-columns: 150px 180px minmax(0, 1fr);
}

.ops-daily-row {
  grid-template-columns: 96px minmax(120px, 1fr) 70px minmax(180px, 1fr);
}

.ops-list-row strong,
.ops-event-row strong,
.ops-daily-row strong {
  color: #1d2024;
}

.ops-list-row small,
.ops-event-row small,
.ops-daily-row small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-daily-bar {
  height: 8px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(29, 32, 36, 0.08);
}

.ops-daily-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #25282c;
}

.ops-empty {
  padding: 16px;
  border: 1px dashed rgba(29, 32, 36, 0.18);
  border-radius: 10px;
  color: rgba(29, 32, 36, 0.62);
  font-weight: 760;
}

body.ops-page:not(.light-theme) .ops-kpi,
body.ops-page:not(.light-theme) .ops-panel {
  border-color: rgba(232, 238, 240, 0.16);
  background: #10161d;
  color: #f2f5f6;
}

body.ops-page:not(.light-theme) .ops-kpi strong,
body.ops-page:not(.light-theme) .ops-list-row strong,
body.ops-page:not(.light-theme) .ops-event-row strong,
body.ops-page:not(.light-theme) .ops-daily-row strong {
  color: #f2f5f6;
}

body.ops-page:not(.light-theme) .ops-kpi span,
body.ops-page:not(.light-theme) .ops-kpi small,
body.ops-page:not(.light-theme) .ops-panel .section-title-row span,
body.ops-page:not(.light-theme) .ops-list-row span,
body.ops-page:not(.light-theme) .ops-event-row span,
body.ops-page:not(.light-theme) .ops-event-row small,
body.ops-page:not(.light-theme) .ops-daily-row span,
body.ops-page:not(.light-theme) .ops-daily-row small {
  color: rgba(242, 245, 246, 0.68);
}

body.ops-page:not(.light-theme) .ops-list-row,
body.ops-page:not(.light-theme) .ops-event-row,
body.ops-page:not(.light-theme) .ops-daily-row {
  border-bottom-color: rgba(232, 238, 240, 0.1);
}

body.ops-page:not(.light-theme) .ops-daily-bar {
  background: rgba(255, 255, 255, 0.09);
}

body.ops-page:not(.light-theme) .ops-daily-bar i {
  background: #98ff2f;
}

body.ops-page:not(.light-theme) .ops-empty {
  border-color: rgba(232, 238, 240, 0.18);
  color: rgba(242, 245, 246, 0.66);
}

/* Landing education gateway: make the help path feel like core onboarding, not a spare footer CTA. */
body.terminal-landing .education-critical {
  position: relative;
  grid-template-columns: minmax(0, 1fr) minmax(260px, auto);
  align-items: center;
  gap: 24px;
  overflow: hidden;
  padding: clamp(20px, 2.2vw, 28px);
  border-color: color-mix(in srgb, var(--edge-green) 34%, var(--edge-line));
  background:
    radial-gradient(circle at 90% 20%, color-mix(in srgb, var(--edge-green) 14%, transparent), transparent 32%),
    linear-gradient(135deg, color-mix(in srgb, var(--edge-panel) 98%, transparent), color-mix(in srgb, var(--edge-panel-soft) 82%, transparent));
}

body.terminal-landing .education-critical::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: var(--edge-green);
  box-shadow: 0 0 34px color-mix(in srgb, var(--edge-green) 48%, transparent);
}

body.terminal-landing .education-critical::after {
  content: "";
  position: absolute;
  right: min(34px, 5vw);
  top: 50%;
  width: 180px;
  height: 180px;
  border: 1px solid color-mix(in srgb, var(--edge-green) 18%, transparent);
  border-radius: 999px;
  opacity: 0.32;
  pointer-events: none;
  transform: translateY(-50%);
}

body.terminal-landing .education-main,
body.terminal-landing .education-actions {
  position: relative;
  z-index: 1;
}

body.terminal-landing .education-critical .terminal-kicker {
  color: var(--edge-green);
}

body.terminal-landing .education-critical h2 {
  max-width: 760px;
}

body.terminal-landing .education-critical p {
  max-width: 840px;
}

.education-value-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.education-value-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb, var(--edge-text) 12%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--edge-panel-soft) 74%, transparent);
  color: var(--edge-muted);
  font-size: 0.78rem;
  font-weight: 760;
}

.education-value-list b {
  color: var(--edge-green);
  font-size: 0.72rem;
  letter-spacing: 0.02em;
}

.education-value-list strong {
  color: var(--edge-text);
  font-size: inherit;
  font-weight: 780;
}

body.terminal-landing .education-critical .education-actions {
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  min-width: min(310px, 100%);
}

body.terminal-landing .education-critical .button-primary,
body.terminal-landing .education-critical .button-ghost {
  justify-content: center;
  min-height: 46px;
  text-align: center;
}

body.terminal-landing.light-theme .education-critical {
  border-color: rgba(8, 120, 59, 0.32);
  background:
    radial-gradient(circle at 88% 14%, rgba(8, 120, 59, 0.1), transparent 30%),
    linear-gradient(135deg, #fffdf7 0%, #f5f4ed 100%);
  box-shadow: 0 16px 40px rgba(29, 32, 36, 0.08);
}

body.terminal-landing.light-theme .education-critical::before {
  background: #08783b;
  box-shadow: 0 0 28px rgba(8, 120, 59, 0.22);
}

body.terminal-landing.light-theme .education-value-list span {
  border-color: rgba(8, 120, 59, 0.16);
  background: rgba(8, 120, 59, 0.055);
}

body.terminal-landing.light-theme .education-value-list b {
  color: #08783b;
}

body.terminal-landing.light-theme .education-value-list strong {
  color: #1d2024;
}

@media (max-width: 1120px) {
  .ops-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ops-board {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .ops-page .ops-hero,
  .ops-summary {
    grid-template-columns: 1fr;
  }

  .ops-toolbar {
    justify-content: stretch;
  }

  .ops-toolbar .scanner-select,
  .ops-toolbar .button-primary {
    width: 100%;
  }

  .ops-event-row,
  .ops-daily-row {
    grid-template-columns: 1fr;
  }

  body.terminal-landing .education-critical {
    grid-template-columns: 1fr;
  }

  body.terminal-landing .education-critical .education-actions {
    width: 100%;
  }
}

/* Help Center dark readability pass: dark mode must read like a product surface, not a faded mockup. */
body.help-page:not(.light-theme) {
  background:
    radial-gradient(circle at 14% -10%, rgba(156, 255, 46, 0.06), transparent 30%),
    linear-gradient(180deg, #090d11 0%, #05070a 100%);
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .help-page-shell {
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .help-hero,
body.help-page:not(.light-theme) .help-market-lab,
body.help-page:not(.light-theme) .help-card,
body.help-page:not(.light-theme) .help-columns > div,
body.help-page:not(.light-theme) .help-article,
body.help-page:not(.light-theme) .help-cms-article,
body.help-page:not(.light-theme) .help-reader,
body.help-page:not(.light-theme) .help-admin-shell,
body.help-page:not(.light-theme) .help-admin-copy,
body.help-page:not(.light-theme) .help-admin-form,
body.help-page:not(.light-theme) .help-admin-row {
  border-color: rgba(232, 238, 240, 0.2);
  background:
    linear-gradient(180deg, rgba(20, 26, 33, 0.98), rgba(12, 17, 23, 0.99)),
    #0f151c;
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .help-card,
body.help-page:not(.light-theme) .help-cms-article {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.help-page:not(.light-theme) .help-card:hover,
body.help-page:not(.light-theme) .help-cms-article:hover,
body.help-page:not(.light-theme) .help-card-link:hover,
body.help-page:not(.light-theme) .help-cms-link:hover {
  border-color: rgba(156, 255, 46, 0.34);
  background:
    linear-gradient(180deg, rgba(23, 31, 38, 0.99), rgba(13, 19, 25, 1)),
    #111923;
}

body.help-page:not(.light-theme) h1,
body.help-page:not(.light-theme) h2,
body.help-page:not(.light-theme) h3,
body.help-page:not(.light-theme) h4,
body.help-page:not(.light-theme) .help-card h2,
body.help-page:not(.light-theme) .help-columns h3,
body.help-page:not(.light-theme) .help-cms-article h3,
body.help-page:not(.light-theme) .section-title-row h2,
body.help-page:not(.light-theme) .help-section-head strong {
  color: #f8fbfc;
}

body.help-page:not(.light-theme) p,
body.help-page:not(.light-theme) li,
body.help-page:not(.light-theme) .help-hero p,
body.help-page:not(.light-theme) .help-card p,
body.help-page:not(.light-theme) .help-columns p,
body.help-page:not(.light-theme) .help-cms-article p,
body.help-page:not(.light-theme) .article-summary,
body.help-page:not(.light-theme) .article-body p,
body.help-page:not(.light-theme) .article-body li,
body.help-page:not(.light-theme) .help-admin-copy p {
  color: rgba(243, 246, 247, 0.8);
}

body.help-page:not(.light-theme) small,
body.help-page:not(.light-theme) .help-card small,
body.help-page:not(.light-theme) .help-cms-article small,
body.help-page:not(.light-theme) .article-meta,
body.help-page:not(.light-theme) .help-admin-row small,
body.help-page:not(.light-theme) .site-footer-copy span,
body.help-page:not(.light-theme) .site-footer-nav a {
  color: rgba(243, 246, 247, 0.68);
}

body.help-page:not(.light-theme) .section-kicker,
body.help-page:not(.light-theme) .help-section-head span,
body.help-page:not(.light-theme) .help-card > span,
body.help-page:not(.light-theme) .help-cms-article > span,
body.help-page:not(.light-theme) .help-cms-article > small {
  border-color: rgba(232, 238, 240, 0.22);
  background: rgba(255, 255, 255, 0.035);
  color: rgba(243, 246, 247, 0.72);
}

body.help-page:not(.light-theme) .help-section-head span,
body.help-page:not(.light-theme) .help-cms-article > span {
  background: transparent;
  border-color: transparent;
  color: rgba(243, 246, 247, 0.68);
}

body.help-page:not(.light-theme) .scanner-input,
body.help-page:not(.light-theme) .scanner-select,
body.help-page:not(.light-theme) .language-picker-trigger,
body.help-page:not(.light-theme) .button-ghost {
  border-color: rgba(232, 238, 240, 0.24);
  background: #101720;
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .scanner-input::placeholder {
  color: rgba(243, 246, 247, 0.58);
}

body.help-page:not(.light-theme) .scanner-input:focus,
body.help-page:not(.light-theme) .scanner-select:focus,
body.help-page:not(.light-theme) .language-picker-trigger:focus,
body.help-page:not(.light-theme) .button-ghost:focus {
  border-color: rgba(156, 255, 46, 0.48);
  box-shadow: 0 0 0 3px rgba(156, 255, 46, 0.1);
  outline: none;
}

body.help-page:not(.light-theme) .product-topbar,
body.help-page:not(.light-theme) .topbar {
  border-color: rgba(232, 238, 240, 0.18);
  background: rgba(15, 20, 25, 0.98);
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .brand-mark,
body.help-page:not(.light-theme) .site-footer-copy strong {
  color: #f8fbfc;
}

body.help-page:not(.light-theme) .brand-subtitle,
body.help-page:not(.light-theme) .nav-link {
  color: rgba(243, 246, 247, 0.72);
}

body.help-page:not(.light-theme) .nav-link:hover,
body.help-page:not(.light-theme) .site-footer-nav a:hover {
  color: #f8fbfc;
}

/* Help Center learning structure: explain the product before listing articles. */
.help-core-guide,
.help-learning-path,
.help-checklist {
  margin: 18px 0;
  border: 1px solid var(--finance-line, rgba(29, 32, 36, 0.14));
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(251, 250, 247, 0.96)),
    var(--finance-paper, #fffdf7);
  color: var(--finance-ink, #1d2024);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 18px 46px rgba(31, 34, 38, 0.055);
}

.help-core-guide {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.46fr);
  gap: 24px;
  align-items: stretch;
  padding: clamp(22px, 2.6vw, 34px);
}

.help-guide-copy h2,
.help-checklist h2 {
  max-width: 780px;
  margin: 12px 0;
  font-size: clamp(1.9rem, 3.2vw, 3.45rem);
  line-height: 0.98;
  letter-spacing: -0.06em;
}

.help-guide-copy p,
.help-checklist p {
  max-width: 850px;
  margin: 0;
  color: rgba(29, 32, 36, 0.7);
  font-size: 1rem;
  line-height: 1.65;
}

.help-guide-note {
  display: grid;
  gap: 8px;
  max-width: 760px;
  margin-top: 22px;
  padding: 16px 18px;
  border-left: 4px solid #1d2024;
  background: rgba(29, 32, 36, 0.045);
}

.help-guide-note strong {
  color: #1d2024;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.help-guide-note span {
  color: rgba(29, 32, 36, 0.72);
  line-height: 1.55;
}

.help-yield-card {
  display: grid;
  align-content: center;
  gap: 10px;
  min-height: 100%;
  padding: 20px;
  border: 1px solid rgba(29, 32, 36, 0.15);
  border-radius: 12px;
  background:
    radial-gradient(circle at 85% 12%, rgba(8, 120, 59, 0.1), transparent 32%),
    #f6f5ef;
}

.help-yield-row,
.help-yield-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  background: rgba(255, 255, 255, 0.72);
}

.help-yield-row span,
.help-yield-result span {
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.76rem;
  font-weight: 820;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.help-yield-row strong,
.help-yield-result strong {
  color: #1d2024;
  font-size: 1.45rem;
  letter-spacing: -0.04em;
}

.help-yield-result {
  border-color: rgba(8, 120, 59, 0.26);
  background: rgba(8, 120, 59, 0.07);
}

.help-yield-result strong {
  color: #08783b;
}

.help-yield-card p {
  margin: 6px 0 0;
  color: rgba(29, 32, 36, 0.7);
  font-size: 0.9rem;
  line-height: 1.55;
}

.help-learning-path {
  padding: clamp(20px, 2.4vw, 28px);
}

.help-section-head-left {
  align-items: start;
  justify-content: start;
  flex-direction: column;
  margin: 0 0 16px;
}

.help-section-head-left strong {
  max-width: 760px;
  text-align: left;
}

.help-path-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.help-path-grid article {
  display: grid;
  gap: 10px;
  min-height: 210px;
  padding: 18px;
  border: 1px solid rgba(29, 32, 36, 0.13);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.54);
}

.help-path-grid article span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 28px;
  border: 1px solid rgba(29, 32, 36, 0.16);
  border-radius: 999px;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.8rem;
  font-weight: 860;
}

.help-path-grid h3 {
  margin: 0;
  color: #1d2024;
  font-size: 1.16rem;
  letter-spacing: -0.035em;
}

.help-path-grid p {
  margin: 0;
  color: rgba(29, 32, 36, 0.7);
  line-height: 1.55;
}

.help-checklist {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(320px, 1fr);
  gap: 22px;
  align-items: start;
  padding: clamp(22px, 2.6vw, 32px);
}

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

.help-check-grid span {
  min-height: 76px;
  padding: 14px;
  border: 1px solid rgba(29, 32, 36, 0.13);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.62);
  color: rgba(29, 32, 36, 0.74);
  font-weight: 760;
  line-height: 1.45;
}

body.help-page:not(.light-theme) .help-core-guide,
body.help-page:not(.light-theme) .help-learning-path,
body.help-page:not(.light-theme) .help-checklist {
  border-color: rgba(232, 238, 240, 0.2);
  background:
    linear-gradient(180deg, rgba(20, 26, 33, 0.98), rgba(12, 17, 23, 0.99)),
    #0f151c;
  color: #f3f6f7;
  box-shadow: none;
}

body.help-page:not(.light-theme) .help-guide-copy h2,
body.help-page:not(.light-theme) .help-checklist h2,
body.help-page:not(.light-theme) .help-path-grid h3 {
  color: #f8fbfc;
}

body.help-page:not(.light-theme) .help-guide-copy p,
body.help-page:not(.light-theme) .help-checklist p,
body.help-page:not(.light-theme) .help-path-grid p,
body.help-page:not(.light-theme) .help-yield-card p {
  color: rgba(243, 246, 247, 0.78);
}

body.help-page:not(.light-theme) .help-guide-note {
  border-left-color: #9cff2e;
  background: rgba(156, 255, 46, 0.06);
}

body.help-page:not(.light-theme) .help-guide-note strong {
  color: #dfffcd;
}

body.help-page:not(.light-theme) .help-guide-note span {
  color: rgba(243, 246, 247, 0.78);
}

body.help-page:not(.light-theme) .help-yield-card,
body.help-page:not(.light-theme) .help-path-grid article,
body.help-page:not(.light-theme) .help-check-grid span {
  border-color: rgba(232, 238, 240, 0.18);
  background: rgba(255, 255, 255, 0.035);
}

body.help-page:not(.light-theme) .help-yield-row,
body.help-page:not(.light-theme) .help-yield-result {
  border-color: rgba(232, 238, 240, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

body.help-page:not(.light-theme) .help-yield-result {
  border-color: rgba(156, 255, 46, 0.28);
  background: rgba(156, 255, 46, 0.08);
}

body.help-page:not(.light-theme) .help-yield-row span,
body.help-page:not(.light-theme) .help-yield-result span,
body.help-page:not(.light-theme) .help-path-grid article span {
  color: rgba(243, 246, 247, 0.66);
}

body.help-page:not(.light-theme) .help-yield-row strong,
body.help-page:not(.light-theme) .help-check-grid span {
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .help-yield-result strong {
  color: #9cff2e;
}

@media (max-width: 1100px) {
  .help-core-guide,
  .help-checklist {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 720px) {
  .help-check-grid,
  .help-path-grid {
    grid-template-columns: 1fr;
  }

  .help-core-guide,
  .help-learning-path,
  .help-checklist {
    padding: 18px;
  }
}

/* Help navigation polish: keep menus above content and article flow obvious. */
.topbar,
.product-topbar {
  position: relative;
  z-index: 1000;
  overflow: visible;
}

.topbar-actions,
.topbar-auth,
.language-picker {
  overflow: visible;
}

.language-picker {
  z-index: 1010;
}

.language-picker.open {
  z-index: 1200;
}

.language-picker-menu {
  z-index: 1210;
}

body.help-page .help-page-shell,
body.terminal-landing .terminal-page {
  overflow: visible;
}

.article-nav {
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-top: clamp(28px, 4vw, 42px);
  padding-top: 22px;
  border-top: 1px solid rgba(29, 32, 36, 0.14);
}

.article-nav.has-next:not(.has-previous) {
  justify-content: flex-end;
}

.article-nav-link {
  display: grid;
  gap: 7px;
  width: min(430px, 100%);
  min-height: 102px;
  padding: 18px 20px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
  color: #1d2024;
  text-decoration: none;
  transition:
    border-color 0.16s ease,
    background 0.16s ease,
    transform 0.16s ease;
}

.article-nav-link:hover {
  border-color: rgba(29, 32, 36, 0.28);
  background: #ffffff;
  transform: translateY(-1px);
}

.article-nav-link.next {
  text-align: right;
}

.article-nav-label {
  color: rgba(29, 32, 36, 0.52);
  font-size: 0.72rem;
  font-weight: 860;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.article-nav-title {
  color: #1d2024;
  font-size: clamp(1rem, 1.2vw, 1.16rem);
  font-weight: 900;
  line-height: 1.24;
  letter-spacing: -0.035em;
}

body.help-page:not(.light-theme) .article-nav {
  border-top-color: rgba(232, 238, 240, 0.16);
}

body.help-page:not(.light-theme) .article-nav-link {
  border-color: rgba(232, 238, 240, 0.18);
  background: rgba(255, 255, 255, 0.035);
  color: #f3f6f7;
}

body.help-page:not(.light-theme) .article-nav-link:hover {
  border-color: rgba(156, 255, 46, 0.34);
  background: rgba(156, 255, 46, 0.06);
}

body.help-page:not(.light-theme) .article-nav-label {
  color: rgba(243, 246, 247, 0.58);
}

body.help-page:not(.light-theme) .article-nav-title {
  color: #f8fbfc;
}

html[dir="rtl"] .article-nav-link.next {
  text-align: left;
}

html[dir="rtl"] .article-nav-link.previous {
  text-align: right;
}

@media (max-width: 720px) {
  .article-nav {
    flex-direction: column;
  }

  .article-nav-link {
    width: 100%;
    min-height: auto;
  }

  .article-nav-link.next {
    text-align: left;
  }

  html[dir="rtl"] .article-nav-link.next,
  html[dir="rtl"] .article-nav-link.previous {
    text-align: right;
  }
}

/* Final readability pass for dark Help/Scanner chrome and metric help icons. */
body:not(.light-theme) .product-topbar .brand-logo {
  filter: brightness(0) invert(1) contrast(1.12) !important;
  opacity: 1 !important;
}

body:not(.light-theme) .auth-logo {
  filter: brightness(0) invert(1) contrast(1.12) !important;
  opacity: 1 !important;
}

body:not(.light-theme) .product-topbar .brand-mark,
body:not(.light-theme) .product-topbar .brand-link {
  color: #f8fbfc;
}

body:not(.light-theme) .product-topbar .brand-subtitle {
  color: rgba(248, 251, 252, 0.76);
}

body.help-page:not(.light-theme) .help-reader {
  border-color: rgba(232, 238, 240, 0.22);
  background:
    linear-gradient(180deg, rgba(20, 26, 33, 0.98), rgba(13, 18, 24, 0.99)),
    #111821;
}

body.help-page:not(.light-theme) .help-reader > .text-link {
  color: rgba(243, 246, 247, 0.78);
}

body.help-page:not(.light-theme) .help-reader > .text-link:hover {
  color: #9cff2e;
}

body.help-page:not(.light-theme) .help-reader-content h1,
body.help-page:not(.light-theme) .article-body h2,
body.help-page:not(.light-theme) .article-body h3 {
  color: #f8fbfc;
}

body.help-page:not(.light-theme) .article-meta {
  color: rgba(243, 246, 247, 0.82);
}

body.help-page:not(.light-theme) .article-summary,
body.help-page:not(.light-theme) .article-body p,
body.help-page:not(.light-theme) .article-body li {
  color: rgba(243, 246, 247, 0.86);
}

.help-tip {
  box-sizing: border-box;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  padding: 0 !important;
  overflow: hidden;
  vertical-align: middle;
  line-height: 1 !important;
}

.help-tip > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: currentColor;
  font-size: 9px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none;
}

.pair-stat .help-tip,
.table-head .help-tip,
.row-detail-metrics .help-tip,
.pair-route-metrics .help-tip,
.pair-point-grid .help-tip {
  display: inline-flex;
}

.pair-stat .help-tip > span,
.table-head .help-tip > span,
.row-detail-metrics .help-tip > span,
.pair-route-metrics .help-tip > span,
.pair-point-grid .help-tip > span {
  display: flex;
  color: currentColor;
  font-size: 9px !important;
  font-weight: 900;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none;
}

.scanner-hint a {
  color: inherit;
  font-weight: 860;
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.scanner-page:not(.light-theme) .scanner-hint a {
  color: #dfffcd;
}

/* Legal pages: same product chrome, calmer document layout, full light/dark support. */
body.legal-page {
  background:
    radial-gradient(circle at 12% 0%, rgba(156, 255, 46, 0.045), transparent 28%),
    linear-gradient(180deg, #f2f0e8 0%, #e9e7df 100%);
}

body.legal-page:not(.light-theme) {
  background:
    radial-gradient(circle at 14% 0%, rgba(156, 255, 46, 0.08), transparent 26%),
    linear-gradient(180deg, #07100e 0%, #05080a 100%);
}

body.legal-page .landing-backdrop {
  opacity: 0.26;
}

body.legal-page:not(.light-theme) .landing-backdrop {
  opacity: 0.18;
  filter: saturate(0.7) brightness(0.75);
}

body.legal-page .page {
  width: min(1320px, calc(100vw - 32px));
  padding-bottom: 44px;
}

body.legal-page .legal-shell {
  width: min(1120px, 100%);
  margin: 0 auto;
  gap: 12px;
}

body.legal-page .legal-card {
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 12px;
  background: rgba(255, 253, 247, 0.88);
  box-shadow: none;
  color: #1d2024;
}

body.legal-page .legal-hero {
  position: relative;
  overflow: hidden;
  min-height: 230px;
  padding: clamp(24px, 4vw, 42px);
  border-color: rgba(29, 32, 36, 0.14);
  background:
    linear-gradient(110deg, rgba(255, 253, 247, 0.98), rgba(255, 253, 247, 0.88)),
    radial-gradient(circle at 84% 20%, rgba(156, 255, 46, 0.16), transparent 26%);
}

body.legal-page .legal-hero::after {
  content: '';
  position: absolute;
  inset: auto 28px 22px auto;
  width: 220px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(29, 32, 36, 0.24));
}

body.legal-page .legal-header .pill {
  width: fit-content;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 7px;
  border: 1px solid rgba(29, 32, 36, 0.14);
  background: rgba(255, 255, 255, 0.68);
  color: rgba(29, 32, 36, 0.68);
  font-size: 0.68rem;
  font-weight: 860;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.legal-page .legal-card h1 {
  max-width: 760px;
  font-size: clamp(2.15rem, 4.4vw, 4.35rem);
  letter-spacing: -0.07em;
}

body.legal-page .legal-card h2 {
  margin-bottom: 12px;
  font-size: clamp(1.22rem, 1.9vw, 1.55rem);
  letter-spacing: -0.035em;
}

body.legal-page .legal-card h3 {
  color: rgba(29, 32, 36, 0.86);
  font-size: 1rem;
  letter-spacing: -0.02em;
}

body.legal-page .legal-card p,
body.legal-page .legal-card li {
  max-width: 910px;
  color: rgba(29, 32, 36, 0.68);
  font-size: 0.98rem;
  line-height: 1.72;
}

body.legal-page .legal-card p {
  margin: 0;
}

body.legal-page .legal-card p + p,
body.legal-page .legal-card ul + p,
body.legal-page .legal-card p + ul {
  margin-top: 12px;
}

body.legal-page .legal-card a:not(.article-nav-link):not(.button-ghost) {
  color: inherit;
  font-weight: 820;
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.legal-page .legal-meta {
  gap: 8px 14px;
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.88rem;
  font-weight: 720;
}

body.legal-page .legal-meta span {
  display: inline-flex;
  align-items: center;
}

body.legal-page .legal-meta span + span::before {
  content: '';
  width: 4px;
  height: 4px;
  margin-right: 10px;
  border-radius: 50%;
  background: rgba(29, 32, 36, 0.26);
}

body.legal-page .legal-nav {
  gap: 8px;
  margin-top: 8px;
}

body.legal-page .legal-nav a {
  min-height: 36px;
  padding: 0 13px;
  border-radius: 8px;
  border-color: rgba(29, 32, 36, 0.14);
  background: rgba(255, 253, 247, 0.78);
  color: rgba(29, 32, 36, 0.82);
  font-size: 0.86rem;
  font-weight: 780;
  text-decoration: none;
}

body.legal-page .legal-nav a:hover,
body.legal-page .legal-nav a.active {
  border-color: rgba(29, 32, 36, 0.24);
  background: #1d2024;
  color: #fffdf7;
}

body.legal-page .legal-index {
  display: grid;
  grid-template-columns: minmax(170px, 0.26fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding: 16px;
  background: rgba(255, 253, 247, 0.76);
}

body.legal-page .legal-index-head {
  display: grid;
  gap: 4px;
  padding: 8px 6px;
}

body.legal-page .legal-index-head span {
  color: rgba(29, 32, 36, 0.5);
  font-size: 0.68rem;
  font-weight: 860;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.legal-page .legal-index-head strong {
  color: #1d2024;
  font-size: 1rem;
  font-weight: 900;
}

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

body.legal-page .legal-index-grid a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  min-height: 46px;
  padding: 8px 10px;
  border: 1px solid rgba(29, 32, 36, 0.1);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.52);
  color: #1d2024;
  text-decoration: none;
}

body.legal-page .legal-index-grid a:hover {
  border-color: rgba(29, 32, 36, 0.22);
  background: rgba(236, 234, 226, 0.86);
}

body.legal-page .legal-index-grid span {
  color: rgba(29, 32, 36, 0.42);
  font-size: 0.72rem;
  font-weight: 860;
}

body.legal-page .legal-index-grid strong {
  overflow: hidden;
  color: inherit;
  font-size: 0.88rem;
  font-weight: 820;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.legal-page .legal-section-card {
  scroll-margin-top: 92px;
  padding: 24px 28px;
}

body.legal-page .legal-section-card:hover {
  border-color: rgba(29, 32, 36, 0.18);
}

body.legal-page:not(.light-theme) .legal-card {
  border-color: rgba(232, 238, 240, 0.16);
  background: rgba(15, 20, 26, 0.88);
  color: #f8fbfc;
}

body.legal-page:not(.light-theme) .legal-hero {
  border-color: rgba(232, 238, 240, 0.2);
  background:
    linear-gradient(112deg, rgba(16, 22, 29, 0.98), rgba(13, 18, 24, 0.92)),
    radial-gradient(circle at 84% 20%, rgba(156, 255, 46, 0.12), transparent 26%);
}

body.legal-page:not(.light-theme) .legal-hero::after {
  background: linear-gradient(90deg, transparent, rgba(232, 238, 240, 0.28));
}

body.legal-page:not(.light-theme) .legal-header .pill {
  border-color: rgba(232, 238, 240, 0.22);
  background: rgba(232, 238, 240, 0.05);
  color: rgba(248, 251, 252, 0.72);
}

body.legal-page:not(.light-theme) .legal-card h1,
body.legal-page:not(.light-theme) .legal-card h2,
body.legal-page:not(.light-theme) .legal-card h3,
body.legal-page:not(.light-theme) .legal-index-head strong {
  color: #f8fbfc;
}

body.legal-page:not(.light-theme) .legal-card p,
body.legal-page:not(.light-theme) .legal-card li {
  color: rgba(243, 246, 247, 0.78);
}

body.legal-page:not(.light-theme) .legal-meta,
body.legal-page:not(.light-theme) .legal-index-head span {
  color: rgba(243, 246, 247, 0.58);
}

body.legal-page:not(.light-theme) .legal-meta span + span::before {
  background: rgba(243, 246, 247, 0.28);
}

body.legal-page:not(.light-theme) .legal-nav a {
  border-color: rgba(232, 238, 240, 0.18);
  background: rgba(232, 238, 240, 0.04);
  color: rgba(248, 251, 252, 0.84);
}

body.legal-page:not(.light-theme) .legal-nav a:hover,
body.legal-page:not(.light-theme) .legal-nav a.active {
  border-color: rgba(156, 255, 46, 0.32);
  background: rgba(156, 255, 46, 0.14);
  color: #dfffcd;
}

body.legal-page:not(.light-theme) .legal-index {
  background: rgba(15, 20, 26, 0.72);
}

body.legal-page:not(.light-theme) .legal-index-grid a {
  border-color: rgba(232, 238, 240, 0.12);
  background: rgba(232, 238, 240, 0.035);
  color: rgba(248, 251, 252, 0.9);
}

body.legal-page:not(.light-theme) .legal-index-grid a:hover {
  border-color: rgba(156, 255, 46, 0.28);
  background: rgba(156, 255, 46, 0.06);
}

body.legal-page:not(.light-theme) .legal-index-grid span {
  color: rgba(243, 246, 247, 0.5);
}

/* Legal polish: avoid white document tail in dark mode and keep legal tab labels readable. */
html:has(body.legal-page) {
  min-height: 100%;
  background: #e9e7df;
}

html:has(body.legal-page:not(.light-theme)) {
  background: #05080a;
}

body.legal-page .page {
  min-height: 100dvh;
}

body.legal-page .legal-card .legal-nav a,
body.legal-page .legal-card .legal-nav a:link,
body.legal-page .legal-card .legal-nav a:visited,
body.legal-page .legal-card .legal-index-grid a,
body.legal-page .legal-card .legal-index-grid a:link,
body.legal-page .legal-card .legal-index-grid a:visited {
  text-decoration: none;
}

body.legal-page .legal-card .legal-nav a,
body.legal-page .legal-card .legal-nav a:link,
body.legal-page .legal-card .legal-nav a:visited {
  color: rgba(29, 32, 36, 0.82);
}

body.legal-page .legal-card .legal-index-grid a,
body.legal-page .legal-card .legal-index-grid a:link,
body.legal-page .legal-card .legal-index-grid a:visited {
  color: #1d2024;
}

body.legal-page .legal-card .legal-nav a:hover,
body.legal-page .legal-card .legal-nav a.active,
body.legal-page .legal-card .legal-nav a.active:link,
body.legal-page .legal-card .legal-nav a.active:visited {
  color: #fffdf7;
}

body.legal-page:not(.light-theme) .legal-card .legal-nav a,
body.legal-page:not(.light-theme) .legal-card .legal-nav a:link,
body.legal-page:not(.light-theme) .legal-card .legal-nav a:visited {
  color: rgba(248, 251, 252, 0.84);
}

body.legal-page:not(.light-theme) .legal-card .legal-index-grid a,
body.legal-page:not(.light-theme) .legal-card .legal-index-grid a:link,
body.legal-page:not(.light-theme) .legal-card .legal-index-grid a:visited {
  color: rgba(248, 251, 252, 0.9);
}

body.legal-page:not(.light-theme) .legal-card .legal-nav a:hover,
body.legal-page:not(.light-theme) .legal-card .legal-nav a.active,
body.legal-page:not(.light-theme) .legal-card .legal-nav a.active:link,
body.legal-page:not(.light-theme) .legal-card .legal-nav a.active:visited {
  color: #dfffcd;
}

@media (max-width: 840px) {
  body.legal-page .page {
    width: min(100%, calc(100vw - 20px));
  }

  body.legal-page .legal-hero,
  body.legal-page .legal-section-card {
    padding: 20px;
  }

  body.legal-page .legal-index {
    grid-template-columns: 1fr;
  }

  body.legal-page .legal-index-grid {
    grid-template-columns: 1fr;
  }

  body.legal-page .legal-card h1 {
    font-size: clamp(2rem, 11vw, 3.2rem);
  }

  body.legal-page .legal-meta {
    flex-direction: column;
  }

  body.legal-page .legal-meta span + span::before {
    content: none;
  }
}

/* Final content polish: Help should feel like a product education surface, not a card dump. */
body.help-page .help-hero,
body.help-page .help-core-guide,
body.help-page .help-learning-path,
body.help-page .help-checklist,
body.help-page .help-article,
body.help-page .help-reader {
  border-radius: 12px;
}

body.help-page .help-hero {
  min-height: 220px;
  background:
    linear-gradient(110deg, rgba(255, 253, 247, 0.98), rgba(255, 253, 247, 0.9)),
    radial-gradient(circle at 86% 24%, rgba(29, 32, 36, 0.055), transparent 28%);
}

body.help-page .help-section-head {
  justify-content: flex-start;
  margin: 24px 0 12px;
  text-align: left;
}

body.help-page .help-section-head span {
  min-height: 28px;
  padding-inline: 11px;
  border: 1px solid rgba(29, 32, 36, 0.12);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.76);
  color: rgba(29, 32, 36, 0.58);
  font-size: 0.68rem;
  font-weight: 880;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.help-page .help-card,
body.help-page .help-cms-article {
  min-height: 210px;
  border-radius: 12px;
}

body.help-page .help-card p,
body.help-page .help-cms-article p {
  color: rgba(29, 32, 36, 0.72);
  font-size: 0.95rem;
}

body.help-page .help-cms-article small,
body.help-page .help-card small {
  align-self: end;
  color: rgba(29, 32, 36, 0.52);
  font-size: 0.72rem;
  font-weight: 760;
}

body.help-page .help-reader {
  width: min(980px, 100%);
  max-width: 980px;
  padding: clamp(28px, 4vw, 48px);
}

body.help-page .help-reader-content {
  gap: 18px;
}

body.help-page .help-reader-content h1 {
  max-width: 14ch;
}

body.help-page .article-body {
  max-width: 820px;
  gap: 16px;
}

body.help-page .article-body h2 {
  margin-top: 22px;
}

body.help-page .article-table-wrap {
  border-radius: 12px;
  background: rgba(255, 253, 247, 0.72);
}

body.help-page .article-table td:first-child {
  width: 34%;
  color: #1d2024;
  font-weight: 860;
}

body.help-page .article-table td {
  color: rgba(29, 32, 36, 0.72);
  vertical-align: top;
}

body.help-page .article-highlight {
  border-radius: 0 12px 12px 0;
  background:
    linear-gradient(90deg, rgba(156, 255, 46, 0.12), rgba(156, 255, 46, 0.035));
}

body.help-page .article-highlight strong {
  color: #1d2024;
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.help-page .article-highlight p {
  color: rgba(29, 32, 36, 0.74);
}

body.help-page:not(.light-theme) .help-hero {
  background:
    linear-gradient(110deg, rgba(17, 23, 30, 0.98), rgba(12, 17, 23, 0.94)),
    radial-gradient(circle at 86% 24%, rgba(156, 255, 46, 0.08), transparent 28%);
}

body.help-page:not(.light-theme) .help-section-head span {
  border-color: rgba(232, 238, 240, 0.18);
  background: rgba(232, 238, 240, 0.045);
  color: rgba(243, 246, 247, 0.72);
}

body.help-page:not(.light-theme) .article-table-wrap {
  border-color: rgba(232, 238, 240, 0.16);
  background: rgba(255, 255, 255, 0.025);
}

body.help-page:not(.light-theme) .article-table td {
  border-bottom-color: rgba(232, 238, 240, 0.11);
  color: rgba(243, 246, 247, 0.82);
}

body.help-page:not(.light-theme) .article-table td:first-child,
body.help-page:not(.light-theme) .article-highlight strong {
  color: #f8fbfc;
}

body.help-page:not(.light-theme) .article-highlight {
  border-left-color: #9cff2e;
  background:
    linear-gradient(90deg, rgba(156, 255, 46, 0.1), rgba(156, 255, 46, 0.025));
}

body.help-page:not(.light-theme) .article-highlight p {
  color: rgba(243, 246, 247, 0.84);
}

/* Final chrome polish: one product shell across public, help, legal, and product pages. */
.topbar .brand-link,
.topbar .brand-wrap.brand-link {
  color: inherit;
  text-decoration: none;
}

body:not(.light-theme) .topbar .brand-logo {
  filter: brightness(0) invert(1) contrast(1.12);
  opacity: 1;
}

body:not(.light-theme) .topbar .brand-mark {
  color: #f8fbfc;
}

body:not(.light-theme) .topbar .brand-subtitle {
  color: rgba(248, 251, 252, 0.72);
}

body.legal-page .site-footer,
body.help-page .site-footer {
  margin-top: 24px;
}

body.legal-page:not(.light-theme) .site-footer {
  border-color: rgba(232, 238, 240, 0.16);
  color: rgba(243, 246, 247, 0.76);
}

body.legal-page:not(.light-theme) .site-footer-copy strong,
body.legal-page:not(.light-theme) .site-footer-copy strong a {
  color: #f8fbfc;
}

body.legal-page:not(.light-theme) .site-footer-copy span,
body.legal-page:not(.light-theme) .site-footer-nav a {
  color: rgba(243, 246, 247, 0.64);
}

body.legal-page:not(.light-theme) .site-footer-nav a:hover {
  color: #f8fbfc;
}

body:not(.light-theme) .button-primary {
  color: #071009;
}

/* Final layering fix: language menu must always float above page cards. */
.topbar,
.product-topbar,
body.help-page .topbar,
body.help-page .product-topbar,
body[data-page="landing"] .topbar,
body[data-page="landing"] .product-topbar,
body.scanner-page .topbar,
body.scanner-page .product-topbar {
  position: relative !important;
  z-index: 50000 !important;
  overflow: visible !important;
  isolation: isolate;
}

.topbar-actions,
.topbar-auth,
.language-picker,
.language-picker.open {
  position: relative;
  overflow: visible !important;
}

.language-picker,
.language-picker.open {
  z-index: 50010 !important;
}

.language-picker-menu,
body.help-page:not(.light-theme) .language-picker-menu,
body:not(.light-theme) .language-picker-menu {
  z-index: 50020 !important;
  background: #101720;
  border-color: rgba(232, 238, 240, 0.24);
  box-shadow: 0 26px 72px rgba(0, 0, 0, 0.58);
}

.language-picker-menu button,
body.help-page:not(.light-theme) .language-picker-menu button,
body:not(.light-theme) .language-picker-menu button {
  color: rgba(242, 245, 246, 0.86);
}

.language-picker-menu button:hover,
.language-picker-menu button.active,
body.help-page:not(.light-theme) .language-picker-menu button:hover,
body.help-page:not(.light-theme) .language-picker-menu button.active,
body:not(.light-theme) .language-picker-menu button:hover,
body:not(.light-theme) .language-picker-menu button.active {
  background: rgba(156, 255, 46, 0.13);
  color: #f8fff4;
}

body.light-theme .language-picker-menu {
  z-index: 50020 !important;
  background: #fffefa;
  border-color: rgba(31, 34, 38, 0.2);
  box-shadow: 0 24px 62px rgba(31, 34, 38, 0.18);
}

body.light-theme .button-primary,
body.strategies-page.light-theme .button-primary,
body.strategies-page.light-theme .strategies-hero-actions .button-primary,
body.strategies-page.light-theme .strategy-detail-actions .button-primary {
  color: #ffffff !important;
}

body.strategies-page:not(.light-theme) {
  background:
    radial-gradient(circle at 18% 8%, rgba(109, 255, 37, 0.1), transparent 34%),
    #05090b;
  color: #f2f6f4;
}

body.strategies-page:not(.light-theme) .strategies-hero,
body.strategies-page:not(.light-theme) .strategies-toolbar,
body.strategies-page:not(.light-theme) .strategy-store-card,
body.strategies-page:not(.light-theme) .strategies-detail,
body.strategies-page:not(.light-theme) .strategies-summary-card,
body.strategies-page:not(.light-theme) .strategy-detail-panel-shell,
body.strategies-page:not(.light-theme) .strategy-detail-placeholder,
body.strategies-page:not(.light-theme) .strategy-metric-chip,
body.strategies-page:not(.light-theme) .strategy-detail-columns > div,
body.strategies-page:not(.light-theme) .strategy-trade-row,
body.strategies-page:not(.light-theme) .strategy-search-input {
  border-color: rgba(225, 238, 240, 0.18);
  background: rgba(16, 22, 28, 0.94);
  color: #f2f6f4;
}

body.strategies-page:not(.light-theme) .strategy-store-card-copy,
body.strategies-page:not(.light-theme) .strategy-detail-copy,
body.strategies-page:not(.light-theme) .strategy-detail-placeholder p,
body.strategies-page:not(.light-theme) .strategy-store-card-footer,
body.strategies-page:not(.light-theme) .strategy-summary-card small,
body.strategies-page:not(.light-theme) .strategies-hero-copy p,
body.strategies-page:not(.light-theme) .strategies-toolbar-meta,
body.strategies-page:not(.light-theme) .strategy-trade-row small {
  color: rgba(234, 241, 242, 0.78);
}

body.strategies-page:not(.light-theme) .terminal-kicker,
body.strategies-page:not(.light-theme) .strategy-metric-chip span,
body.strategies-page:not(.light-theme) .strategy-style-pill {
  color: rgba(234, 241, 242, 0.64);
}

body.strategies-page:not(.light-theme) .strategy-metric-chip strong,
body.strategies-page:not(.light-theme) .strategy-search-input::placeholder {
  color: #f2f6f4;
}

body.strategies-page:not(.light-theme) .button-primary,
body.strategies-page:not(.light-theme) .strategies-hero-actions .button-primary,
body.strategies-page:not(.light-theme) .strategy-detail-actions .button-primary {
  border-color: #92ff24;
  background: #92ff24;
  color: #071009 !important;
  box-shadow: 0 18px 52px rgba(146, 255, 36, 0.2);
}

body.strategies-page:not(.light-theme) .button-ghost,
body.strategies-page:not(.light-theme) .strategies-hero-actions .button-ghost,
body.strategies-page:not(.light-theme) .strategy-detail-actions .button-ghost {
  border-color: rgba(225, 238, 240, 0.2);
  background: rgba(255, 255, 255, 0.03);
  color: #f2f6f4;
}

/* Strategy research console: sober contrast, same hierarchy in both themes. */
body.strategies-page {
  background:
    radial-gradient(circle at 88% 8%, rgba(136, 160, 120, 0.12), transparent 34%),
    linear-gradient(180deg, #f0eee7 0%, #e7e5dc 100%);
  color: #202327;
}

body.strategies-page .strategies-shell {
  width: min(1500px, calc(100vw - 32px));
  margin-inline: auto;
}

body.strategies-page .strategies-hero,
body.strategies-page .strategies-toolbar,
body.strategies-page .strategies-methodology,
body.strategies-page .strategy-store-card,
body.strategies-page .strategies-detail,
body.strategies-page .strategies-summary-card,
body.strategies-page .strategy-detail-columns > div,
body.strategies-page .strategy-trade-row,
body.strategies-page .strategy-metric-chip {
  border-color: rgba(25, 29, 34, 0.16);
  background: rgba(255, 254, 249, 0.96);
  color: #202327;
  box-shadow: none;
}

body.strategies-page .strategies-hero {
  border-radius: 14px;
  padding: clamp(22px, 3vw, 38px);
}

body.strategies-page .strategies-hero-copy h1 {
  max-width: 760px;
  color: #191c20;
  font-size: clamp(34px, 4.2vw, 70px);
  letter-spacing: -0.065em;
}

body.strategies-page .strategies-hero-copy p,
body.strategies-page .strategy-detail-copy,
body.strategies-page .strategy-store-card-copy,
body.strategies-page .strategy-detail-placeholder p,
body.strategies-page .strategy-summary-card small,
body.strategies-page .strategy-trade-row small,
body.strategies-page .strategy-store-card-footer,
body.strategies-page .strategy-detail-columns li,
body.strategies-page .strategies-toolbar-meta,
body.strategies-page .strategies-methodology p {
  color: rgba(32, 35, 39, 0.76);
}

body.strategies-page .terminal-kicker,
body.strategies-page .strategy-metric-chip span,
body.strategies-page .strategies-summary-card span,
body.strategies-page .strategies-methodology span {
  color: rgba(32, 35, 39, 0.62);
}

body.strategies-page .strategy-metric-chip strong,
body.strategies-page .strategies-summary-card strong,
body.strategies-page .strategy-trade-row strong,
body.strategies-page .strategies-methodology strong {
  color: #191c20;
}

.strategies-methodology {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--cas-border);
  border-radius: 14px;
}

.strategies-methodology article {
  display: grid;
  gap: 8px;
  min-height: 148px;
  padding: 20px;
  border-right: 1px solid rgba(25, 29, 34, 0.12);
}

.strategies-methodology article:last-child {
  border-right: 0;
}

.strategies-methodology span {
  font-size: 11px;
  font-weight: 780;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.strategies-methodology strong {
  font-size: 20px;
  line-height: 1.15;
}

.strategies-methodology p {
  margin: 0;
  max-width: 34rem;
  line-height: 1.55;
}

body.strategies-page .strategy-store-card {
  border-radius: 14px;
}

body.strategies-page .strategy-store-card:hover,
body.strategies-page .strategy-store-card.active {
  transform: translateY(-1px);
  border-color: rgba(25, 29, 34, 0.34);
  box-shadow: 0 18px 44px rgba(25, 29, 34, 0.08);
}

body.strategies-page .strategy-store-card.active {
  box-shadow:
    inset 3px 0 0 #202327,
    0 18px 44px rgba(25, 29, 34, 0.08);
}

body.strategies-page .strategy-style-pill {
  border-color: rgba(25, 29, 34, 0.18);
  background: #f0eee7;
  color: #202327;
}

body.strategies-page .strategy-style-pill.style-conservative,
body.strategies-page .strategy-style-pill.style-balanced,
body.strategies-page .strategy-style-pill.style-aggressive {
  color: #202327;
}

body.strategies-page .strategy-detail-chart {
  color: #3f7f12;
}

body.strategies-page .button-primary {
  border-color: #202327;
  background: #202327;
  color: #ffffff !important;
  box-shadow: none;
}

body.strategies-page .button-ghost {
  border-color: rgba(25, 29, 34, 0.18);
  background: rgba(255, 255, 255, 0.48);
  color: #202327;
}

body.strategies-page:not(.light-theme) {
  background:
    radial-gradient(circle at 12% -8%, rgba(118, 189, 63, 0.12), transparent 34%),
    linear-gradient(180deg, #070b0f 0%, #0a0f14 100%);
  color: #f5f8f7;
}

body.strategies-page:not(.light-theme) .strategies-hero,
body.strategies-page:not(.light-theme) .strategies-toolbar,
body.strategies-page:not(.light-theme) .strategies-methodology,
body.strategies-page:not(.light-theme) .strategy-store-card,
body.strategies-page:not(.light-theme) .strategies-detail,
body.strategies-page:not(.light-theme) .strategies-summary-card,
body.strategies-page:not(.light-theme) .strategy-detail-panel-shell,
body.strategies-page:not(.light-theme) .strategy-detail-placeholder,
body.strategies-page:not(.light-theme) .strategy-metric-chip,
body.strategies-page:not(.light-theme) .strategy-detail-columns > div,
body.strategies-page:not(.light-theme) .strategy-trade-row,
body.strategies-page:not(.light-theme) .strategy-search-input {
  border-color: rgba(226, 235, 238, 0.18);
  background: #111820;
  color: #f5f8f7;
}

body.strategies-page:not(.light-theme) .strategies-methodology article {
  border-color: rgba(226, 235, 238, 0.14);
}

body.strategies-page:not(.light-theme) .strategies-hero-copy h1,
body.strategies-page:not(.light-theme) .strategy-metric-chip strong,
body.strategies-page:not(.light-theme) .strategies-summary-card strong,
body.strategies-page:not(.light-theme) .strategy-trade-row strong,
body.strategies-page:not(.light-theme) .strategies-methodology strong {
  color: #f5f8f7;
}

body.strategies-page:not(.light-theme) .strategy-store-card-copy,
body.strategies-page:not(.light-theme) .strategy-detail-copy,
body.strategies-page:not(.light-theme) .strategy-detail-placeholder p,
body.strategies-page:not(.light-theme) .strategy-store-card-footer,
body.strategies-page:not(.light-theme) .strategy-summary-card small,
body.strategies-page:not(.light-theme) .strategies-hero-copy p,
body.strategies-page:not(.light-theme) .strategies-toolbar-meta,
body.strategies-page:not(.light-theme) .strategy-trade-row small,
body.strategies-page:not(.light-theme) .strategy-detail-columns li,
body.strategies-page:not(.light-theme) .strategies-methodology p {
  color: rgba(236, 243, 245, 0.78);
}

body.strategies-page:not(.light-theme) .terminal-kicker,
body.strategies-page:not(.light-theme) .strategy-metric-chip span,
body.strategies-page:not(.light-theme) .strategies-summary-card span,
body.strategies-page:not(.light-theme) .strategies-methodology span {
  color: rgba(236, 243, 245, 0.66);
}

body.strategies-page:not(.light-theme) .strategy-store-card:hover,
body.strategies-page:not(.light-theme) .strategy-store-card.active {
  border-color: rgba(143, 255, 36, 0.38);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

body.strategies-page:not(.light-theme) .strategy-store-card.active {
  box-shadow:
    inset 3px 0 0 #8fff24,
    0 18px 44px rgba(0, 0, 0, 0.28);
}

body.strategies-page:not(.light-theme) .strategy-style-pill {
  border-color: rgba(236, 243, 245, 0.18);
  background: rgba(255, 255, 255, 0.05);
  color: rgba(245, 248, 247, 0.9);
}

body.strategies-page:not(.light-theme) .button-primary {
  border-color: #8fff24;
  background: #8fff24;
  color: #071009 !important;
  box-shadow: none;
}

body.strategies-page:not(.light-theme) .button-ghost {
  border-color: rgba(236, 243, 245, 0.22);
  background: rgba(255, 255, 255, 0.04);
  color: #f5f8f7;
}

body.strategies-page:not(.light-theme) .site-footer {
  color: #f5f8f7;
}

@media (max-width: 760px) {
  .strategies-methodology {
    grid-template-columns: 1fr;
  }

  .strategies-methodology article {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid rgba(25, 29, 34, 0.12);
  }

  .strategies-methodology article:last-child {
    border-bottom: 0;
  }

  body.help-page .help-reader {
    padding: 22px;
  }

  body.help-page .help-card,
  body.help-page .help-cms-article {
    min-height: auto;
  }
}

/* Strategy readability pass: fewer competing surfaces, higher contrast labels, no hidden copy. */
body.strategies-page .strategies-hero::after {
  content: none;
  display: none;
}

body.strategies-page .strategies-grid {
  grid-template-columns: 1fr;
}

body.strategies-page .strategy-store-card {
  gap: 14px;
  padding: 18px 20px;
  animation: strategyCardResolve 520ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

body.strategies-page .strategy-store-card:nth-child(2) {
  animation-delay: 70ms;
}

body.strategies-page .strategy-store-card:nth-child(3) {
  animation-delay: 140ms;
}

body.strategies-page .strategy-store-card-copy {
  display: block;
  overflow: visible;
  max-width: 74rem;
  -webkit-line-clamp: initial;
  -webkit-box-orient: initial;
  font-size: 14.5px;
}

body.strategies-page .strategy-store-card-metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.strategies-page .strategy-metric-chip {
  min-height: 68px;
  padding: 12px;
}

body.strategies-page .strategy-metric-chip span,
body.strategies-page .strategies-summary-card span,
body.strategies-page .terminal-kicker {
  font-size: 11px;
  font-weight: 760;
  letter-spacing: 0.075em;
}

body.strategies-page .strategy-metric-chip strong {
  font-size: clamp(17px, 1.25vw, 21px);
  overflow-wrap: anywhere;
}

body.strategies-page .strategies-summary-card strong {
  font-size: clamp(18px, 1.8vw, 24px);
  line-height: 1.12;
  overflow-wrap: anywhere;
}

body.strategies-page .strategy-detail-columns {
  display: grid;
  grid-template-columns: 1fr;
}

body.strategies-page .strategy-detail-columns > div {
  width: 100%;
}

body.strategies-page .strategy-detail-copy {
  font-size: 14.5px;
}

body.strategies-page .strategy-store-card-footer {
  padding-top: 2px;
  font-size: 13.5px;
}

body.strategies-page .strategy-visual {
  position: relative;
  display: grid;
  grid-template-columns: minmax(118px, 0.43fr) minmax(150px, 0.57fr);
  align-items: stretch;
  min-height: 118px;
  overflow: hidden;
  border: 1px solid rgba(25, 29, 34, 0.14);
  border-radius: 12px;
  background:
    radial-gradient(circle at 20% 28%, rgba(58, 134, 41, 0.14), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.66), rgba(236, 239, 232, 0.88));
}

body.strategies-page:not(.light-theme) .strategy-visual {
  border-color: rgba(236, 243, 245, 0.16);
  background:
    radial-gradient(circle at 20% 28%, rgba(143, 255, 36, 0.14), transparent 34%),
    linear-gradient(135deg, rgba(22, 30, 38, 0.92), rgba(12, 18, 24, 0.98));
}

body.strategies-page .strategy-visual::before,
body.strategies-page .strategy-visual::after {
  content: "";
  position: absolute;
  inset: -30%;
  pointer-events: none;
}

body.strategies-page .strategy-visual::before {
  background:
    repeating-linear-gradient(90deg, transparent 0 28px, rgba(37, 43, 48, 0.05) 29px 30px),
    repeating-linear-gradient(0deg, transparent 0 18px, rgba(37, 43, 48, 0.04) 19px 20px);
  transform: translateX(-8%);
  animation: strategyGridDrift 9s linear infinite;
}

body.strategies-page .strategy-visual::after {
  opacity: 0.58;
  background: linear-gradient(105deg, transparent 34%, rgba(143, 255, 36, 0.16) 48%, transparent 62%);
  animation: strategySignalSweep 4.8s ease-in-out infinite;
}

body.strategies-page .strategy-visual-stable {
  --strategy-accent: #1ca364;
  --strategy-accent-soft: rgba(28, 163, 100, 0.2);
}

body.strategies-page .strategy-visual-rotation {
  --strategy-accent: #3371ff;
  --strategy-accent-soft: rgba(51, 113, 255, 0.18);
}

body.strategies-page .strategy-visual-dislocation {
  --strategy-accent: #ff9b21;
  --strategy-accent-soft: rgba(255, 155, 33, 0.2);
}

body.strategies-page:not(.light-theme) .strategy-visual-stable {
  --strategy-accent: #8fff24;
  --strategy-accent-soft: rgba(143, 255, 36, 0.2);
}

body.strategies-page:not(.light-theme) .strategy-visual-rotation {
  --strategy-accent: #63a6ff;
  --strategy-accent-soft: rgba(99, 166, 255, 0.18);
}

body.strategies-page:not(.light-theme) .strategy-visual-dislocation {
  --strategy-accent: #ffb142;
  --strategy-accent-soft: rgba(255, 177, 66, 0.2);
}

body.strategies-page .strategy-visual-orbit {
  position: relative;
  min-height: 118px;
  border-right: 1px solid rgba(25, 29, 34, 0.1);
}

body.strategies-page:not(.light-theme) .strategy-visual-orbit {
  border-right-color: rgba(236, 243, 245, 0.12);
}

body.strategies-page .strategy-visual-orbit span {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--strategy-accent);
  box-shadow: 0 0 0 7px var(--strategy-accent-soft);
  animation: strategyNodePulse 2.8s ease-in-out infinite;
}

body.strategies-page .strategy-visual-orbit span:nth-child(1) { left: 22%; top: 28%; animation-delay: 0ms; }
body.strategies-page .strategy-visual-orbit span:nth-child(2) { left: 64%; top: 22%; animation-delay: 160ms; }
body.strategies-page .strategy-visual-orbit span:nth-child(3) { left: 44%; top: 52%; animation-delay: 320ms; }
body.strategies-page .strategy-visual-orbit span:nth-child(4) { left: 76%; top: 72%; animation-delay: 480ms; }
body.strategies-page .strategy-visual-orbit span:nth-child(5) { left: 18%; top: 76%; animation-delay: 640ms; }

body.strategies-page .strategy-visual-core {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 18px 18px 16px;
}

body.strategies-page .strategy-visual-core strong {
  color: var(--strategy-accent);
  font-family: "Montserrat", sans-serif;
  font-size: clamp(26px, 3.5vw, 42px);
  font-weight: 900;
  line-height: 0.92;
  letter-spacing: -0.07em;
  font-variant-numeric: tabular-nums;
}

body.strategies-page .strategy-visual-core small {
  color: rgba(32, 35, 39, 0.72);
  font-size: 11px;
  font-weight: 820;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.strategies-page:not(.light-theme) .strategy-visual-core small {
  color: rgba(236, 243, 245, 0.72);
}

body.strategies-page .strategy-visual-tape {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 10px;
  z-index: 1;
  display: flex;
  gap: 8px;
  overflow: hidden;
  white-space: nowrap;
}

body.strategies-page .strategy-visual-tape span {
  min-width: max-content;
  padding: 4px 8px;
  border: 1px solid rgba(25, 29, 34, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.54);
  color: rgba(32, 35, 39, 0.7);
  font-size: 11px;
  font-weight: 760;
  animation: strategyTapeBreathe 3.6s ease-in-out infinite;
}

body.strategies-page:not(.light-theme) .strategy-visual-tape span {
  border-color: rgba(236, 243, 245, 0.15);
  background: rgba(255, 255, 255, 0.055);
  color: rgba(236, 243, 245, 0.72);
}

body.strategies-page .strategy-detail-visual-row .strategy-visual {
  min-height: 142px;
}

body.strategies-page .strategy-detail-visual-row .strategy-visual-core strong {
  font-size: clamp(32px, 4.2vw, 52px);
}

@keyframes strategyCardResolve {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes strategyGridDrift {
  from { transform: translate3d(-8%, 0, 0); }
  to { transform: translate3d(8%, 0, 0); }
}

@keyframes strategySignalSweep {
  0%, 28% { transform: translateX(-24%); opacity: 0; }
  48% { opacity: 0.62; }
  74%, 100% { transform: translateX(24%); opacity: 0; }
}

@keyframes strategyNodePulse {
  0%, 100% {
    transform: scale(0.86);
    opacity: 0.62;
  }
  48% {
    transform: scale(1.18);
    opacity: 1;
  }
}

@keyframes strategyTapeBreathe {
  0%, 100% { opacity: 0.72; transform: translateY(0); }
  50% { opacity: 1; transform: translateY(-1px); }
}

@media (prefers-reduced-motion: reduce) {
  body.strategies-page .strategy-store-card,
  body.strategies-page .strategy-visual::before,
  body.strategies-page .strategy-visual::after,
  body.strategies-page .strategy-visual-orbit span,
  body.strategies-page .strategy-visual-tape span {
    animation: none !important;
  }
}

body.strategies-page .site-footer-copy span,
body.strategies-page .site-footer-nav a {
  color: rgba(32, 35, 39, 0.7);
}

body.strategies-page:not(.light-theme) .site-footer-copy span,
body.strategies-page:not(.light-theme) .site-footer-nav a {
  color: rgba(236, 243, 245, 0.7);
}

body.strategies-page:not(.light-theme) .site-footer-copy strong,
body.strategies-page:not(.light-theme) .site-footer-copy strong a {
  color: #f5f8f7;
}

@media (max-width: 920px) {
  body.strategies-page .strategy-store-card-metrics,
  body.strategies-page .strategy-detail-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body.strategies-page .strategy-store-card-metrics,
  body.strategies-page .strategy-detail-metrics {
    grid-template-columns: 1fr;
  }
}

/* Strategies v155: replace toy sparkline with an institutional equity curve. */
body.strategies-page .strategies-layout {
  grid-template-columns: minmax(340px, 0.72fr) minmax(620px, 1.28fr);
}

body.strategies-page .strategies-detail {
  top: 12px;
}

body.strategies-page .strategy-equity-card {
  display: grid;
  gap: 18px;
  padding: 22px;
  border: 1px solid var(--cas-border-soft);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(245, 247, 248, 0.88)),
    var(--cas-bg-alt);
}

body.strategies-page:not(.light-theme) .strategy-equity-card {
  border-color: rgba(232, 238, 240, 0.13);
  background:
    linear-gradient(180deg, rgba(18, 24, 31, 0.96), rgba(12, 16, 21, 0.98)),
    #0f1419;
}

body.strategies-page .strategy-equity-head h3 {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.05;
  letter-spacing: -0.055em;
}

body.strategies-page .strategy-equity-head p {
  max-width: 720px;
  margin: 10px 0 0;
  color: var(--cas-text-secondary);
  font-size: 14.5px;
  line-height: 1.55;
}

body.strategies-page .strategy-equity-layout {
  display: grid;
  grid-template-columns: minmax(170px, 0.28fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

body.strategies-page .strategy-equity-tabs {
  display: grid;
  gap: 8px;
}

body.strategies-page .strategy-return-tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: var(--cas-text-secondary);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

body.strategies-page .strategy-return-tab.active {
  border-color: var(--cas-border-soft);
  background: rgba(226, 231, 236, 0.8);
  color: var(--cas-text);
}

body.strategies-page:not(.light-theme) .strategy-return-tab.active {
  border-color: rgba(232, 238, 240, 0.15);
  background: rgba(232, 238, 240, 0.07);
}

body.strategies-page .strategy-return-tab strong {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

body.strategies-page .strategy-return-tab strong.good {
  color: #0a9f50;
}

body.strategies-page .strategy-return-tab strong.bad {
  color: #d84f4f;
}

body.strategies-page:not(.light-theme) .strategy-return-tab strong.good {
  color: #8fff24;
}

body.strategies-page .strategy-equity-main {
  display: grid;
  gap: 12px;
  min-width: 0;
}

body.strategies-page .strategy-chart-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: var(--cas-text-muted);
  font-size: 12.5px;
}

body.strategies-page .strategy-chart-shell {
  --strategy-chart-positive: #1dad51;
  --strategy-chart-negative: #d84f4f;
  position: relative;
  min-height: 330px;
  color: #1dad51;
}

body.strategies-page:not(.light-theme) .strategy-chart-shell {
  --strategy-chart-positive: #8fff24;
  --strategy-chart-negative: #ff6161;
  color: #8fff24;
}

body.strategies-page .strategy-chart-shell svg {
  display: block;
  width: 100%;
  height: 330px;
  overflow: visible;
}

body.strategies-page .strategy-chart-grid-line {
  stroke: rgba(28, 35, 43, 0.1);
  stroke-width: 1;
}

body.strategies-page:not(.light-theme) .strategy-chart-grid-line {
  stroke: rgba(232, 238, 240, 0.11);
}

body.strategies-page .strategy-chart-area {
  fill: url(#strategy-equity-area);
}

body.strategies-page .strategy-chart-line {
  stroke-width: 2.35;
  stroke-linejoin: miter;
  stroke-linecap: square;
  vector-effect: non-scaling-stroke;
}

body.strategies-page .strategy-chart-axis-label,
body.strategies-page .strategy-chart-annotation,
body.strategies-page .strategy-chart-phase-label {
  fill: var(--cas-text-secondary);
  font-size: 13px;
  font-weight: 760;
  letter-spacing: -0.015em;
}

body.strategies-page .strategy-chart-annotation {
  fill: var(--cas-text);
  font-weight: 820;
}

body.strategies-page:not(.light-theme) .strategy-chart-axis-label,
body.strategies-page:not(.light-theme) .strategy-chart-phase-label {
  fill: rgba(232, 238, 240, 0.74);
}

body.strategies-page:not(.light-theme) .strategy-chart-annotation {
  fill: rgba(248, 251, 252, 0.96);
}

body.strategies-page .strategy-chart-focus-line,
body.strategies-page .strategy-chart-phase-line {
  stroke: currentColor;
  stroke-width: 1.4;
  stroke-dasharray: 5 5;
  opacity: 0.32;
}

body.strategies-page .strategy-chart-high-dot,
body.strategies-page .strategy-chart-focus-dot {
  fill: currentColor;
  stroke: var(--cas-bg-surface-solid);
  stroke-width: 2.4;
}

body.strategies-page:not(.light-theme) .strategy-chart-high-dot,
body.strategies-page:not(.light-theme) .strategy-chart-focus-dot {
  stroke: #0f1419;
}

body.strategies-page .strategy-chart-overlay {
  cursor: crosshair;
}

body.strategies-page .strategy-chart-tooltip {
  position: absolute;
  left: 0;
  top: 0;
  display: grid;
  gap: 3px;
  min-width: 142px;
  padding: 10px 12px;
  border: 1px solid rgba(29, 32, 36, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 36px rgba(3, 19, 40, 0.16);
  transform: translate(-50%, calc(-100% - 14px));
  pointer-events: none;
}

body.strategies-page:not(.light-theme) .strategy-chart-tooltip {
  border-color: rgba(232, 238, 240, 0.15);
  background: rgba(17, 23, 30, 0.96);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.42);
}

body.strategies-page .strategy-chart-current-value {
  color: var(--cas-text);
  font-size: 14.5px;
  font-weight: 880;
}

body.strategies-page .strategy-chart-current-date,
body.strategies-page .strategy-chart-current-phase {
  color: var(--cas-text-secondary);
  font-size: 12.5px;
  font-weight: 650;
}

body.strategies-page .strategy-chart-empty {
  display: grid;
  min-height: 220px;
  place-items: center;
  color: var(--cas-text-secondary);
  border: 1px solid var(--cas-border-soft);
  border-radius: 10px;
  background: var(--cas-bg-alt);
}

@media (max-width: 1180px) {
  body.strategies-page .strategies-layout,
  body.strategies-page .strategy-equity-layout {
    grid-template-columns: 1fr;
  }

  body.strategies-page .strategy-equity-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  body.strategies-page .strategy-equity-card {
    padding: 16px;
  }

  body.strategies-page .strategy-equity-tabs {
    grid-template-columns: 1fr;
  }

  body.strategies-page .strategy-chart-shell,
  body.strategies-page .strategy-chart-shell svg {
    min-height: 280px;
    height: 280px;
  }
}
