/* style.css */
:root {
  --bg: #f7f8fa;
  --surface: #ffffff;
  --surface-2: #f1f3f6;
  --border: #e3e6eb;
  --text: #14171c;
  --muted: #677080;
  --accent: #2f5bea;
  --accent-ink: #ffffff;
  --up: #0f9d63;
  --down: #d63b3b;
  --spot-bg: #e7efff;
  --spot-ink: #2447b8;
  --perp-bg: #fff1e3;
  --perp-ink: #a65408;
  --binance: #c99400;
  --okx: #14171c;
  --bybit: #e88a00;
  --chain-bg: #e9f7f0;
  --chain-ink: #0b7a4b;
  --warn-bg: #fff6e0;
  --warn-ink: #7a5300;
  --solana: #9945ff;
  --ethereum: #627eea;
  --bsc: #d9a400;
  --series-1: #2a78d6;
  --series-2: #eb6834;
  --series-3: #1baf7a;
  --series-4: #eda100;
  --shade: rgba(47, 91, 234, .07);
  --radius: 10px;
  --shadow: 0 1px 2px rgba(16, 24, 40, .05);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #0e1116;
    --surface: #161a21;
    --surface-2: #1d222b;
    --border: #2a303b;
    --text: #e7eaf0;
    --muted: #8d96a6;
    --accent: #6d8cff;
    --accent-ink: #0e1116;
    --up: #34c38a;
    --down: #f06a6a;
    --spot-bg: #1d2a4d;
    --spot-ink: #9db4ff;
    --perp-bg: #3a2814;
    --perp-ink: #ffb46b;
    --binance: #f0b90b;
    --okx: #e7eaf0;
    --bybit: #ffa53a;
    --chain-bg: #123526;
    --chain-ink: #6fdcaa;
    --warn-bg: #3a2e10;
    --warn-ink: #f3cf7a;
    --solana: #b98cff;
    --ethereum: #8ea4f5;
    --bsc: #f0c93a;
    --series-1: #3987e5;
    --series-2: #d95926;
    --series-3: #199e70;
    --series-4: #c98500;
    --shade: rgba(109, 140, 255, .10);
    --shadow: none;
  }
}
:root[data-theme="dark"] {
  --bg: #0e1116; --surface: #161a21; --surface-2: #1d222b; --border: #2a303b; --text: #e7eaf0;
  --muted: #8d96a6; --accent: #6d8cff; --accent-ink: #0e1116; --up: #34c38a; --down: #f06a6a;
  --spot-bg: #1d2a4d; --spot-ink: #9db4ff; --perp-bg: #3a2814; --perp-ink: #ffb46b;
  --binance: #f0b90b; --okx: #e7eaf0; --bybit: #ffa53a; --shadow: none;
  --chain-bg: #123526; --chain-ink: #6fdcaa; --warn-bg: #3a2e10; --warn-ink: #f3cf7a;
  --solana: #b98cff; --ethereum: #8ea4f5; --bsc: #f0c93a;
  --series-1: #3987e5; --series-2: #d95926; --series-3: #199e70; --series-4: #c98500;
  --shade: rgba(109, 140, 255, .10);
}

* { box-sizing: border-box; }
/* 保证 hidden 属性总能隐藏元素，不被组件的 display 覆盖 */
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 15px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Roboto, sans-serif;
}
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
h1 { font-size: 26px; line-height: 1.25; margin: 0 0 8px; letter-spacing: -.01em; }
h2 { font-size: 18px; margin: 32px 0 12px; }
.wrap { max-width: 1200px; margin: 0 auto; padding: 0 16px; }

/* 顶栏 */
.top { background: var(--surface); border-bottom: 1px solid var(--border); position: sticky; top: 0; z-index: 10; }
.top-inner { display: flex; align-items: center; gap: 16px; height: 60px; }
.brand { display: flex; align-items: center; gap: 8px; color: var(--text); font-weight: 700; white-space: nowrap; }
.brand svg { fill: var(--accent); }
.brand:hover { text-decoration: none; }
.search { position: relative; flex: 1; max-width: 460px; }
.search input, .filter {
  width: 100%; height: 38px; padding: 0 12px; font: inherit; color: var(--text);
  background: var(--surface-2); border: 1px solid var(--border); border-radius: 8px; outline: none;
}
.search input:focus, .filter:focus { border-color: var(--accent); background: var(--surface); }
.suggest {
  position: absolute; left: 0; right: 0; top: 42px; margin: 0; padding: 4px; list-style: none;
  background: var(--surface); border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,.12);
}
.suggest li a { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 6px; color: var(--text); }
.suggest li a span { color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.suggest li a.active, .suggest li a:hover { background: var(--surface-2); text-decoration: none; }
.nav { display: flex; align-items: center; gap: 14px; margin-left: auto; white-space: nowrap; }
.nav a { color: var(--muted); font-size: 14px; }
.nav a:hover { color: var(--text); }
/* 语言下拉菜单 */
.lang-menu { position: relative; }
.lang-menu summary {
  display: flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; cursor: pointer; list-style: none;
  font-size: 13px; color: var(--muted); border: 1px solid var(--border); border-radius: 6px; user-select: none;
}
.lang-menu summary::-webkit-details-marker { display: none; }
.lang-menu summary:hover, .lang-menu[open] summary { color: var(--text); border-color: var(--muted); }
.lang-menu svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.lang-menu .chev { transition: transform .15s; }
.lang-menu[open] .chev { transform: rotate(180deg); }
.lang-menu ul {
  position: absolute; right: 0; top: 36px; z-index: 20; min-width: 150px; margin: 0; padding: 4px; list-style: none;
  background: var(--surface); border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 8px 24px rgba(0,0,0,.12);
}
.lang-menu li a {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 10px;
  border-radius: 6px; color: var(--text); font-size: 14px;
}
.lang-menu li a:hover { background: var(--surface-2); text-decoration: none; }
.lang-menu li a[aria-current] { font-weight: 600; }
.lang-menu .check { color: var(--accent); stroke-width: 2.4; }

main { padding-top: 24px; padding-bottom: 40px; min-height: 60vh; }

/* 首页 */
.hero { margin: 8px 0 20px; }
.stats { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.stats div {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 10px 16px; min-width: 120px; box-shadow: var(--shadow);
}
.stats b { display: block; font-size: 22px; font-variant-numeric: tabular-nums; }
.stats span { color: var(--muted); font-size: 13px; }
.toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.chips { display: flex; flex-wrap: wrap; gap: 6px; }
.chip {
  font: inherit; font-size: 13px; padding: 5px 12px; border-radius: 999px; cursor: pointer;
  color: var(--muted); background: var(--surface); border: 1px solid var(--border);
}
.chip.on { color: var(--accent-ink); background: var(--accent); border-color: var(--accent); }
.filter { max-width: 240px; }

/* 表格 */
.table-wrap { overflow-x: auto; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
.grid { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.grid th, .grid td { padding: 10px 12px; border-bottom: 1px solid var(--border); text-align: left; white-space: nowrap; vertical-align: middle; }
.grid tbody tr:last-child td { border-bottom: 0; }
.grid tbody tr:hover { background: var(--surface-2); }
.grid th { font-size: 12px; font-weight: 600; color: var(--muted); background: var(--surface); position: sticky; top: 0; }
.grid th[data-sort] { cursor: pointer; user-select: none; }
.grid th[data-sort]:hover { color: var(--text); }
.num { text-align: right !important; }
.center { text-align: center !important; }
.up { color: var(--up); }
.down { color: var(--down); }
.tk { display: flex; align-items: center; gap: 10px; color: var(--text); min-width: 0; }
.tk-t { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.sicon { flex: none; border-radius: 50%; object-fit: cover; background: var(--surface-2); vertical-align: middle; }
h1.with-icon { display: flex; align-items: center; gap: 12px; }
.card-t { display: flex; align-items: center; gap: 8px; }
.tk b { font-weight: 700; }
.tk span { color: var(--muted); font-size: 13px; max-width: 260px; overflow: hidden; text-overflow: ellipsis; }
.tk:hover { text-decoration: none; }
.tk:hover b { color: var(--accent); }
.tag {
  display: inline-block; font-style: normal; font-size: 11px; font-weight: 600; padding: 1px 6px;
  border-radius: 4px; background: var(--surface-2); color: var(--muted); border: 1px solid var(--border);
}
.pill { display: inline-block; font-size: 12px; font-weight: 600; padding: 2px 8px; border-radius: 999px; margin: 1px; }
.pill.spot { background: var(--spot-bg); color: var(--spot-ink); }
.pill.perp { background: var(--perp-bg); color: var(--perp-ink); }
.pill.chain { background: var(--chain-bg); color: var(--chain-ink); }
.badge {
  display: inline-block; font-size: 11px; font-weight: 600; padding: 1px 6px; margin-left: 6px;
  border-radius: 4px; border: 1px solid currentColor; vertical-align: 1px;
}
.badge-best_price { color: var(--up); }
.badge-most_active { color: var(--accent); }
.muted { color: var(--muted); }
.none { color: var(--border); }
.sym { display: block; color: var(--muted); font-size: 12px; margin-top: 2px; }
.ex { font-weight: 600; white-space: nowrap; }
/* 交易场所图标：随程序打包的 64px PNG，按场所类名套用 */
.ex::before {
  content: ""; display: inline-block; width: 16px; height: 16px; margin-right: 6px; vertical-align: -3px;
  border-radius: 4px; background: var(--surface-2) center / cover no-repeat;
}
.ex-binance::before { background-image: url(venues/binance.png); }
.ex-okx::before { background-image: url(venues/okx.png); }
.ex-bybit::before { background-image: url(venues/bybit.png); }
.ex-gate::before { background-image: url(venues/gate.png); }
.ex-bitget::before { background-image: url(venues/bitget.png); }
.ex-mexc::before { background-image: url(venues/mexc.png); }
.ex-bingx::before { background-image: url(venues/bingx.png); }
.ex-hyperliquid::before { background-image: url(venues/hyperliquid.png); }
.ex-aster::before { background-image: url(venues/aster.png); }
.ex-solana::before { background-image: url(venues/solana.png); }
.ex-ethereum::before { background-image: url(venues/ethereum.png); }
.ex-bsc::before { background-image: url(venues/bsc.png); }
.pill.ex { font-weight: 600; }
.pill.ex::before { width: 12px; height: 12px; margin-right: 4px; vertical-align: -2px; border-radius: 3px; }
a.ex { color: var(--text); }
.btn {
  display: inline-block; padding: 6px 14px; border-radius: 8px; font-weight: 600; font-size: 14px;
  background: var(--accent); color: var(--accent-ink); border: 1px solid var(--accent);
}
.btn:hover { text-decoration: none; filter: brightness(1.08); }
.btn.ghost { background: transparent; color: var(--accent); }
.btn.sm { padding: 3px 10px; font-size: 13px; cursor: pointer; font-family: inherit; }
.act { text-align: right !important; }
.hint { color: var(--muted); font-size: 13px; margin: 8px 2px; }
.empty { color: var(--muted); padding: 40px 0; text-align: center; }
.count { color: var(--muted); font-weight: 400; font-size: 14px; }

/* 最近上线 */
.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px; }
.card {
  display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; color: var(--text);
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow);
}
.card:hover { border-color: var(--accent); text-decoration: none; }
.card span, .card small { color: var(--muted); font-size: 13px; }

/* 详情页 */
.crumbs { margin-bottom: 12px; font-size: 14px; }
.stock-head { display: flex; justify-content: space-between; gap: 24px; align-items: flex-start; margin-bottom: 20px; }
.stock-head p { margin: 4px 0; color: var(--muted); }
.stock-head .sub { display: flex; gap: 8px; align-items: center; color: var(--text); }
.ref {
  display: flex; flex-direction: column; align-items: flex-end; gap: 4px; min-width: 180px;
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; box-shadow: var(--shadow);
}
.ref b { font-size: 24px; font-variant-numeric: tabular-nums; }
.ref small { color: var(--muted); font-size: 12px; }
.signup {
  display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between;
  margin-top: 20px; padding: 14px 16px; background: var(--surface); border: 1px dashed var(--border); border-radius: var(--radius);
}
.signup p { margin: 0; color: var(--muted); }
.signup div { display: flex; gap: 8px; flex-wrap: wrap; }
.explain { max-width: 760px; }
.explain p { color: var(--muted); }
.results { list-style: none; padding: 0; margin: 0; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); }
.results li { display: flex; justify-content: space-between; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--border); flex-wrap: wrap; }
.results li:last-child { border-bottom: 0; }
.results .meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 13px; }
.notfound { text-align: center; padding: 60px 0; }

/* 地区选择与条款核对 */
.region-pick {
  height: 30px; padding: 0 6px; font: inherit; font-size: 13px; color: var(--muted);
  background: var(--surface); border: 1px solid var(--border); border-radius: 6px;
}
.region-bar {
  display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; justify-content: space-between;
  margin-bottom: 10px; padding: 10px 14px; font-size: 13px; border-radius: 8px;
  background: var(--warn-bg); color: var(--warn-ink);
}
.region-bar label { display: flex; gap: 6px; align-items: center; cursor: pointer; white-space: nowrap; }
tr.restricted td { opacity: .45; }
tr.restricted td:first-child { opacity: 1; }
.pill.restricted { opacity: .35; text-decoration: line-through; }
.badge-restricted { color: var(--down); }
.badge-unknown { color: var(--muted); }
.badge-warn { color: var(--warn-ink); background: var(--warn-bg); border-color: transparent; }
.access-table td, .access-table th { padding: 8px 10px; }
.access-table .st-listed { color: var(--down); font-weight: 700; }
.access-table .st-not_listed { color: var(--muted); }
.access-table .st-unknown { color: var(--muted); }
.access-table .col-on { background: color-mix(in srgb, var(--accent) 10%, transparent); }
.access-line { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }

/* 历史走势图 */
.history-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 32px; }
.history-head h2 { margin: 0; }
.seg { display: inline-flex; border: 1px solid var(--border); border-radius: 8px; overflow: hidden; }
.seg a { padding: 5px 14px; font-size: 13px; color: var(--muted); }
.seg a.on { background: var(--accent); color: var(--accent-ink); }
.seg a:hover { text-decoration: none; }
.chart-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; margin-top: 12px; box-shadow: var(--shadow); }
.chart-card h3 { font-size: 14px; margin: 0 0 6px; }
.legend { display: flex; flex-wrap: wrap; gap: 4px 16px; list-style: none; margin: 0 0 6px; padding: 0; font-size: 12px; color: var(--muted); }
.legend li { display: flex; align-items: center; gap: 6px; }
.key { display: inline-block; width: 14px; height: 2px; border-radius: 1px; }
.key.s1 { background: var(--series-1); } .key.s2 { background: var(--series-2); }
.key.s3 { background: var(--series-3); } .key.s4 { background: var(--series-4); }
.chart-box { position: relative; }
.chart { display: block; width: 100%; height: auto; overflow: visible; font-variant-numeric: tabular-nums; }
.chart .grid { stroke: var(--border); stroke-width: 1; }
.chart .zero { stroke: var(--muted); stroke-width: 1; }
.chart .shade { fill: var(--shade); }
.chart .tick { fill: var(--muted); font-size: 11px; }
.chart .endlabel { fill: var(--muted); font-size: 11px; }
.chart .line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.chart .line.s1, .chart .dot.s1 { stroke: var(--series-1); } .chart .line.s2, .chart .dot.s2 { stroke: var(--series-2); }
.chart .line.s3, .chart .dot.s3 { stroke: var(--series-3); } .chart .line.s4, .chart .dot.s4 { stroke: var(--series-4); }
.chart .dot { fill: var(--surface); stroke-width: 2; }
.chart .cross { stroke: var(--muted); stroke-width: 1; }
.tip {
  position: absolute; top: 8px; pointer-events: none; min-width: 150px; padding: 8px 10px; font-size: 12px;
  background: var(--surface); border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 6px 18px rgba(0,0,0,.12);
}
.tip .t { color: var(--muted); margin-bottom: 4px; }
.tip .r { display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.tip .r b { font-variant-numeric: tabular-nums; }
.tip .r span { color: var(--muted); }
.chart-table { margin-top: 8px; font-size: 13px; }
.chart-table summary { cursor: pointer; color: var(--muted); }
.chart-table .table-wrap { max-height: 280px; overflow: auto; margin-top: 8px; box-shadow: none; }

/* 美股交易时段 */
.period { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--muted); margin: 4px 0 0; }
.period i { width: 8px; height: 8px; border-radius: 50%; background: var(--muted); }
.period-market i { background: var(--up); box-shadow: 0 0 0 3px color-mix(in srgb, var(--up) 25%, transparent); }
.period-extended i, .period-overnight i { background: var(--bybit); }

/* 官方合约地址 */
.warn { background: var(--warn-bg); color: var(--warn-ink); padding: 10px 14px; border-radius: 8px; font-size: 14px; }
.addr { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; background: var(--surface-2); padding: 2px 6px; border-radius: 4px; }
.contracts .chains { white-space: normal; min-width: 180px; font-size: 13px; }

/* 首页场所列 */
.venues-cell { white-space: normal !important; min-width: 140px; }
.venues-cell .pill { font-size: 11px; padding: 1px 7px; }

/* 交易场所一览 */
.venue-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.venue-card {
  display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; color: var(--text);
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow);
}
.venue-card:hover { border-color: var(--accent); text-decoration: none; }
.venue-card span { font-size: 13px; }
.venue-card small { color: var(--muted); font-size: 12px; }

/* 排行榜 */
.lead { color: var(--muted); max-width: 760px; }
.rank-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(440px, 1fr)); gap: 0 24px; }
.rank h2 { font-size: 16px; }
.explain h3 { font-size: 15px; margin: 18px 0 4px; }

/* 页脚 */
.foot { border-top: 1px solid var(--border); background: var(--surface); padding: 20px 0; font-size: 13px; color: var(--muted); }
.disclaimer { max-width: 860px; margin: 0 0 10px; }
.status { display: flex; flex-wrap: wrap; gap: 10px; }
.st::before { content: "●"; margin-right: 4px; }
.st.ok::before { color: var(--up); }
.st.err::before { color: var(--down); }
.copy { margin: 10px 0 0; }
.venues-foot { margin: 10px 0 0; }

@media (max-width: 760px) {
  .top-inner { flex-wrap: wrap; height: auto; padding-top: 10px; padding-bottom: 10px; gap: 10px; }
  .brand { order: 1; }
  .nav { order: 2; gap: 10px; }
  .search { order: 3; flex-basis: 100%; max-width: none; }
  .hide-sm { display: none; }
  h1 { font-size: 22px; }
  .stock-head { flex-direction: column; }
  .ref { align-items: flex-start; width: 100%; }
  .filter { max-width: none; }
  .grid th, .grid td { padding: 9px 8px; }
  .tk-t { flex-direction: column; gap: 0; }
  .lang-menu summary span { display: none; }
  .tk span { max-width: 140px; }
  .rank-grid { grid-template-columns: 1fr; }
  .region-pick { max-width: 110px; }
}

/* redesign.css */
/* Selected visual direction: a clear, search-first research desk. */
:root,
:root:not([data-theme="light"]),
:root[data-theme="dark"] {
  color-scheme: light;
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-2: #f5f8fd;
  --border: #e1e9f5;
  --text: #18243a;
  --muted: #64728a;
  --accent: #2861e8;
  --accent-ink: #ffffff;
  --up: #11865f;
  --down: #cb4051;
  --spot-bg: #edf3ff;
  --spot-ink: #2455c4;
  --perp-bg: #fff3e9;
  --perp-ink: #a65c18;
  --chain-bg: #eaf8f2;
  --chain-ink: #137a5a;
  --warn-bg: #fff8e8;
  --warn-ink: #785e20;
  --radius: 12px;
  --shadow: 0 5px 22px rgba(26, 57, 112, .045);
  --shade: rgba(40, 97, 232, .065);
}

html { scroll-padding-top: 90px; }
body {
  background: var(--bg);
  color: var(--text);
  font: 15px/1.55 -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
button, input, select { font: inherit; }
a { color: var(--accent); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible {
  outline: 3px solid rgba(40, 97, 232, .35);
  outline-offset: 3px;
}
.wrap { max-width: 1400px; padding-left: 28px; padding-right: 28px; }
h1 { color: var(--text); font-size: clamp(30px, 3vw, 40px); line-height: 1.18; letter-spacing: -.035em; }
h2 { color: var(--text); font-size: 24px; line-height: 1.28; letter-spacing: -.025em; margin-top: 38px; }

/* Shared masthead */
.top {
  background: rgba(255, 255, 255, .98);
  border-bottom: 1px solid #e4ebf5;
  box-shadow: none;
  position: sticky;
  top: 0;
  z-index: 30;
}
.top-inner { height: 76px; gap: 28px; }
.top-primary, .top-actions { display: flex; align-items: center; height: 100%; }
.top-primary { gap: clamp(30px, 4vw, 62px); min-width: 0; }
.top-actions { gap: 15px; margin-left: auto; white-space: nowrap; }
.brand { gap: 12px; font-size: 20px; font-weight: 750; letter-spacing: -.035em; color: var(--text); }
.brand svg { width: 26px; height: 26px; fill: var(--accent); }
.nav { margin: 0; height: 100%; gap: 28px; }
.nav a {
  display: inline-flex;
  align-items: center;
  height: 100%;
  border-bottom: 3px solid transparent;
  padding: 3px 2px 0;
  color: #4c5b74;
  font-size: 15px;
  font-weight: 570;
}
.nav a:hover { color: var(--accent); text-decoration: none; }
.nav a[aria-current="page"] { color: var(--accent); border-bottom-color: var(--accent); font-weight: 690; }
.top-search { flex: 0 1 280px; width: min(280px, 21vw); max-width: 280px; }
.top-search input {
  height: 40px;
  padding: 0 14px;
  background: #f7f9fd;
  border: 1px solid #e1e8f4;
  border-radius: 10px;
  font-size: 13px;
}
.top-search input::placeholder { color: #8b98ad; }
.search input:focus, .filter:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(40, 97, 232, .1); }
.suggest {
  top: calc(100% + 7px);
  border-color: var(--border);
  border-radius: 12px;
  box-shadow: 0 18px 42px rgba(26, 50, 91, .13);
  padding: 6px;
  z-index: 35;
}
.suggest li a { padding: 10px 12px; gap: 9px; }
.suggest li a.active, .suggest li a:hover { background: #f0f5ff; }
.region-pick {
  height: 40px;
  min-width: 118px;
  padding: 0 10px;
  background: #fff;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #4e5c73;
  font-size: 14px;
  cursor: pointer;
}
.region-pick:hover { border-color: var(--border); }
.lang-menu summary {
  height: 40px;
  border-color: transparent;
  border-radius: 9px;
  padding: 0 8px;
  font-size: 14px;
  color: #4e5c73;
}
.lang-menu summary:hover, .lang-menu[open] summary { border-color: var(--border); color: var(--text); }
.lang-menu ul { top: 45px; border-color: var(--border); border-radius: 10px; }

main.wrap { padding-top: 32px; padding-bottom: 80px; min-height: 70vh; }
.crumbs { margin: 0 0 24px; color: var(--muted); font-size: 14px; }
.crumbs a { color: #637baf; }
.lead { color: var(--muted); font-size: 16px; line-height: 1.65; max-width: 840px; }
.hint { color: var(--muted); line-height: 1.65; }
.period { font-size: 13px; color: #6c7890; }
.period i { width: 8px; height: 8px; }
.period-extended i, .period-overnight i { background: #eda223; }

/* Shared data components */
.table-wrap { border: 1px solid var(--border); border-radius: 13px; box-shadow: none; }
.grid { font-size: 14px; }
.grid th, .grid td { padding: 14px 16px; border-bottom-color: #e7edf7; }
.grid th {
  color: #65758f;
  background: #f7faff;
  font-size: 12px;
  font-weight: 670;
  letter-spacing: .01em;
}
.grid tbody tr:hover { background: #f8fbff; }
.grid th[data-sort]:hover { color: var(--accent); }
.sicon { border-radius: 10px; }
.tk { gap: 10px; }
.tk b { color: var(--text); }
.tk-t { gap: 7px; }
.tk span { color: #6d7890; }
.tag { background: #f1f4fa; border-color: #e0e8f3; color: #68758c; }
.pill { font-size: 12px; font-weight: 650; border-radius: 999px; }
.pill.spot { background: var(--spot-bg); color: var(--spot-ink); }
.pill.perp { background: var(--perp-bg); color: var(--perp-ink); }
.pill.chain { background: var(--chain-bg); color: var(--chain-ink); }
.none { color: #afbbcc; }
.btn {
  border-radius: 9px;
  padding: 8px 15px;
  min-height: 38px;
  background: var(--accent);
  border-color: var(--accent);
  box-shadow: 0 4px 12px rgba(40, 97, 232, .15);
}
.btn:hover { filter: none; background: #1c54d5; border-color: #1c54d5; }
.btn.ghost { box-shadow: none; border-color: #b7caf7; background: #fff; color: var(--accent); }
.btn.ghost:hover { background: #f0f5ff; }
.empty { padding: 56px 20px; color: var(--muted); }
.warn { border: 1px solid #f2e4b6; }
.region-bar { border: 1px solid #f2e4b6; padding: 13px 17px; }

/* Full-page footer retains provenance and data-health detail. */
.foot { padding: 30px 0 32px; background: #f9fbff; border-top-color: #e5ecf7; }
.foot .wrap { display: grid; gap: 14px; }
.disclaimer { max-width: 980px; margin: 0; line-height: 1.65; }
.foot-links { display: flex; flex-wrap: wrap; gap: 10px 24px; font-size: 14px; font-weight: 650; }
.foot-links a { color: #435c85; }
.status { gap: 8px 13px; line-height: 1.7; }
.status > span:first-child { font-weight: 700; color: var(--text); }
.st { color: #68758d; }
.venues-foot { margin: 0; line-height: 1.8; }
.venues-foot a { color: #667899; }
.copy { margin: 0; color: #8793a7; }

@media (max-width: 1150px) {
  .top-inner { gap: 18px; }
  .top-primary { gap: 26px; }
  .nav { gap: 17px; }
  .top-search { width: 190px; }
  .region-pick { min-width: 108px; }
}
@media (max-width: 900px) {
  .top-inner { flex-wrap: wrap; height: auto; padding-top: 12px; padding-bottom: 12px; row-gap: 8px; }
  .top-primary { width: 100%; justify-content: space-between; }
  .top-actions { width: 100%; height: auto; justify-content: flex-end; }
  .top-search { flex: 1 1 auto; width: auto; max-width: none; }
  .nav { height: 44px; }
  .nav a { font-size: 14px; }
}
@media (max-width: 760px) {
  html { scroll-padding-top: 12px; }
  .wrap { padding-left: 16px; padding-right: 16px; }
  .top { position: relative; }
  .top-inner { gap: 10px; padding-top: 13px; padding-bottom: 12px; }
  .top-primary { flex-wrap: wrap; gap: 7px; justify-content: flex-start; }
  .brand { font-size: 19px; }
  .brand svg { width: 24px; height: 24px; }
  .nav { order: 2; width: 100%; height: 42px; justify-content: space-between; gap: 10px; }
  .nav a { font-size: 13px; }
  .top-actions { justify-content: flex-start; gap: 8px; flex-wrap: wrap; }
  .top-search { order: 2; flex-basis: 100%; }
  .region-pick { max-width: none; height: 34px; padding-left: 0; font-size: 13px; }
  .lang-menu summary { height: 34px; font-size: 13px; }
  .lang-menu summary span { display: inline; }
  main.wrap { padding-top: 24px; padding-bottom: 56px; }
  h1 { font-size: 28px; }
  h2 { font-size: 22px; }
  .lead { font-size: 14px; }
  .grid th, .grid td { padding: 11px 10px; }
  .foot { padding-top: 25px; }
}

/* home-redesign.css */
/* The selected light, editorial direction for the complete home page. */
body:has(.home-page) { overflow-x: clip; }
main:has(.home-page) { padding-top: 0; }

.home-page { color: var(--text); }
.home-page .home-hero {
  position: relative;
  overflow: hidden;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}
.home-page .home-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .3;
  background: url('/static/hero-globe-clean.webp') right -35px top -10px / 800px auto no-repeat;
}
.home-hero-inner {
  display: flex;
  align-items: center;
  max-width: 1400px;
  min-height: 413px;
  margin: 0 auto;
  padding: 50px 24px 27px;
}
.home-hero-copy { position: relative; z-index: 1; width: 100%; }
.home-page .home-hero h1 {
  max-width: 1000px;
  margin: 0 0 8px;
  font-size: clamp(38px, 3.8vw, 54px);
  font-weight: 760;
  line-height: 1.19;
  letter-spacing: -.045em;
}
.home-hero-lead {
  max-width: 990px;
  margin: 0 0 27px;
  color: var(--muted);
  font-size: clamp(16px, 1.55vw, 21px);
  line-height: 1.55;
}
.home-page .home-search {
  display: flex;
  align-items: center;
  width: min(100%, 985px);
  max-width: none;
  height: 78px;
  padding: 6px;
  border: 1px solid #ccdaf5;
  border-radius: 13px;
  background: var(--surface);
  box-shadow: 0 5px 18px rgba(29, 75, 155, .075);
}
.home-page .home-search:focus-within {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(36, 95, 224, .1), 0 5px 18px rgba(29, 75, 155, .08);
}
.home-search-icon {
  flex: none;
  width: 28px;
  height: 28px;
  margin-left: 19px;
  margin-right: 14px;
  fill: #425676;
}
.home-page .home-search input {
  flex: 1;
  min-width: 0;
  height: 100%;
  padding: 0 12px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text);
  font-size: clamp(16px, 1.45vw, 21px);
}
.home-page .home-search input::placeholder { color: #8897b0; opacity: 1; }
.home-page .home-search button {
  flex: none;
  width: 148px;
  height: 64px;
  border: 0;
  border-radius: 10px;
  background: var(--accent);
  color: var(--accent-ink);
  font: inherit;
  font-size: 20px;
  font-weight: 660;
  cursor: pointer;
  transition: filter .15s, transform .15s;
}
.home-page .home-search button:hover { filter: brightness(1.08); }
.home-page .home-search button:active { transform: translateY(1px); }
.home-page .home-search button:focus-visible,
.home-page .home-chips .chip:focus-visible { outline: 3px solid color-mix(in srgb, var(--accent) 36%, transparent); outline-offset: 2px; }
.home-page .home-search .suggest {
  top: calc(100% + 7px);
  z-index: 12;
  padding: 8px;
  border-radius: 12px;
  box-shadow: 0 16px 42px rgba(28, 49, 90, .14);
}
.home-page .home-search .suggest li a { padding: 10px 12px; }
.home-market-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-height: 23px;
  margin: 20px 0 20px;
  color: var(--muted);
  font-size: 14px;
}
.home-market-line .period { margin: 0; color: var(--text); font-size: 14px; font-weight: 630; }
.home-market-line .period i { width: 10px; height: 10px; }
.home-market-note::before { content: '·'; margin-right: 8px; color: #8a9bb6; }
.home-metrics { display: flex; flex-wrap: wrap; gap: 0; align-items: center; margin-top: 20px; }
.home-metric { display: flex; align-items: baseline; gap: 10px; padding: 0 28px; border-left: 1px solid #cbd6ea; }
.home-metric:first-child { padding-left: 0; border-left: 0; }
.home-metric b { font-size: 23px; line-height: 1.1; font-weight: 750; font-variant-numeric: tabular-nums; }
.home-metric span { color: var(--muted); font-size: 14px; white-space: nowrap; }

.home-catalog { padding-top: 46px; }
.home-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin: 0 0 22px; }
.home-page .home-toolbar h2 { margin: 0 8px 0 0; font-size: 30px; line-height: 1.25; letter-spacing: -.035em; white-space: nowrap; }
.home-chips { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; }
.home-page .home-chips .chip {
  min-height: 38px;
  padding: 7px 18px;
  border-color: #dbe4f3;
  border-radius: 999px;
  background: #f8faff;
  color: #465671;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  transition: background .15s, border-color .15s, color .15s;
}
.home-page .home-chips .chip:hover { border-color: var(--accent); color: var(--accent); }
.home-page .home-chips .chip.on { border-color: var(--accent); background: var(--accent); color: var(--accent-ink); box-shadow: 0 3px 10px rgba(42, 94, 224, .18); }
.home-page .home-filter {
  width: 190px;
  height: 38px;
  margin-left: auto;
  padding: 0 12px;
  border-color: #dbe4f3;
  border-radius: 999px;
  background: #f8faff;
  font-size: 14px;
}
.home-page .home-filter:focus { background: var(--surface); }

.home-page .home-table-wrap { overflow-x: auto; border: 0; border-radius: 8px 8px 0 0; box-shadow: none; scrollbar-width: none; }
.home-page .home-table-wrap::-webkit-scrollbar { display: none; }
.home-scroll-hint { display: none; }
.home-table { min-width: 1120px; table-layout: fixed; }
.home-table th:nth-child(1) { width: 22%; }
.home-table th:nth-child(2) { width: 8%; }
.home-table th:nth-child(3) { width: 12%; }
.home-table th:nth-child(4) { width: 29%; }
.home-table th:nth-child(5) { width: 9%; }
.home-table th:nth-child(6) { width: 10%; }
.home-table th:nth-child(7) { width: 10%; }
.home-page .home-table th {
  height: 48px;
  padding: 9px 16px;
  border-bottom: 0;
  background: #f1f5fc;
  color: #596a87;
  font-size: 13px;
  font-weight: 660;
}
.home-page .home-table th:first-child { border-radius: 8px 0 0 8px; }
.home-page .home-table th:last-child { border-radius: 0 8px 8px 0; }
.home-page .home-table td {
  height: 64px;
  padding: 10px 16px;
  border-bottom: 1px solid #e2e9f4;
  color: var(--text);
  font-size: 14px;
}
.home-page .home-table tbody tr:last-child td { border-bottom: 1px solid #e2e9f4; }
.home-page .home-table tbody tr:hover { background: #f9fbff; }
.home-page .home-table .tk { gap: 12px; }
.home-page .home-table .sicon { width: 32px; height: 32px; border-radius: 9px; }
.home-page .home-table .tk-t { display: flex; flex-wrap: nowrap; align-items: baseline; gap: 3px 9px; max-width: none; }
.home-page .home-table .tk b { color: #283751; font-size: 15px; letter-spacing: -.01em; }
.home-page .home-table .tk-t > span { max-width: 150px; color: #6c7d97; font-size: 14px; }
.home-page .home-table .tag { padding: 0 5px; border: 0; background: #eef2f9; color: #667895; font-size: 10px; line-height: 20px; }
.home-page .home-table .home-price,
.home-page .home-table .home-volume { color: #19273e; font-size: 15px; font-weight: 590; font-variant-numeric: tabular-nums; }
.home-page .home-table .venues-cell,
.home-page .home-table .home-chain-cell { white-space: normal; line-height: 1.7; }
.home-page .home-table .pill { padding: 4px 10px; margin: 2px 4px 2px 0; font-size: 12px; font-weight: 640; line-height: 1.5; }
.home-page .home-table .pill.spot { border: 1px solid #ebf0fc; background: #f3f6fd; color: #2b3a53; }
.home-page .home-table .pill.perp { background: #fff5ed; color: #ad510d; }
.home-page .home-table .pill.chain { background: #eaf8f3; color: #147552; }
.home-page .home-table .pill.ex::before { width: 15px; height: 15px; margin-right: 5px; vertical-align: -3px; }
.home-page .home-table .none { color: #a6b7d0; }
.home-page .home-sort-hint { margin-top: 10px; text-align: right; }

.home-latest, .home-guide { margin-top: 60px; }
.home-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 16px; margin-bottom: 20px; }
.home-eyebrow { color: var(--accent); font-size: 12px; font-weight: 760; letter-spacing: .13em; }
.home-page .home-section-heading h2 { margin: 5px 0 0; font-size: 27px; line-height: 1.25; letter-spacing: -.03em; }
.home-section-heading > a { display: inline-flex; align-items: center; gap: 6px; flex: none; padding-bottom: 3px; font-size: 14px; font-weight: 650; }
.home-section-heading > a .v2-icon { width: 16px; height: 16px; color: #6b8fba; }
.home-section-heading > a:hover { text-decoration: none; }
.home-latest-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.home-page .home-latest-card { min-height: 140px; padding: 20px; border-color: var(--border); border-radius: 12px; box-shadow: 0 3px 14px rgba(33, 64, 124, .04); }
.home-page .home-latest-card:hover { border-color: #a9c2f2; box-shadow: 0 8px 22px rgba(33, 64, 124, .1); transform: translateY(-1px); }
.home-latest-card .card-t { gap: 10px; font-size: 18px; }
.home-latest-card .sicon { border-radius: 9px; }
.home-page .home-latest-card .home-latest-type { margin-top: 13px; color: var(--text); font-size: 14px; }
.home-page .home-latest-card small { margin-top: auto; padding-top: 14px; font-size: 12px; }
.home-guide { margin-bottom: 25px; }
.home-guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.home-guide-card { padding: 26px 28px 28px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); }
.home-guide-label { color: var(--accent); font-size: 12px; font-weight: 750; letter-spacing: .1em; }
.home-guide-card h3 { margin: 10px 0 9px; font-size: 20px; }
.home-guide-card p { max-width: 620px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.home-loading { padding: 40px 0 90px; }

@media (max-width: 1180px) {
  .home-page .home-hero::before { background-position: right -115px top -10px; background-size: 760px auto; }
  .home-page .home-filter { width: 180px; }
  .home-latest-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .home-page .home-hero::before { display: none; }
  .home-hero-inner { min-height: 0; padding-top: 52px; padding-bottom: 34px; }
  .home-page .home-search { width: 100%; }
  .home-page .home-toolbar h2 { flex-basis: 100%; }
  .home-page .home-filter { margin-left: 0; }
  .home-latest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .home-hero-inner { padding: 43px 16px 29px; }
  .home-page .home-hero h1 { font-size: clamp(32px, 7.7vw, 46px); line-height: 1.2; }
  .home-hero-lead { margin: 12px 0 22px; font-size: 15px; }
  .home-page .home-search { height: 60px; padding: 5px; border-radius: 10px; }
  .home-search-icon { width: 19px; height: 19px; margin-left: 8px; margin-right: 7px; }
  .home-page .home-search input { padding: 0 4px; font-size: 15px; }
  .home-page .home-search button { width: 78px; height: 48px; border-radius: 7px; font-size: 15px; }
  .home-market-line { margin: 17px 0 18px; font-size: 12px; }
  .home-market-line .period { font-size: 12px; }
  .home-metrics { gap: 16px 0; }
  .home-metric { width: 50%; display: block; padding: 0 10px 0 15px; }
  .home-metric:nth-child(odd) { padding-left: 0; border-left: 0; }
  .home-metric b { display: block; font-size: 21px; }
  .home-metric span { display: block; margin-top: 3px; font-size: 12px; }
  .home-catalog { padding-top: 28px; }
  .home-toolbar { gap: 13px; margin-bottom: 15px; }
  .home-page .home-toolbar h2 { font-size: 26px; }
  .home-chips { overflow-x: auto; flex-wrap: nowrap; width: 100%; padding-bottom: 3px; scrollbar-width: none; }
  .home-chips::-webkit-scrollbar { display: none; }
  .home-page .home-chips .chip { flex: none; min-height: 34px; padding: 6px 14px; font-size: 13px; }
  .home-page .home-filter { width: 100%; max-width: none; border-radius: 8px; }
  .home-scroll-hint { display: block; margin: -2px 0 9px; color: var(--muted); font-size: 12px; text-align: right; }
  .home-page .home-table-wrap { margin: 0 -16px; border-radius: 0; }
  .home-page .home-table { min-width: 1020px; }
  .home-page .home-table .hide-sm { display: table-cell; }
  .home-page .home-table th, .home-page .home-table td { padding: 9px 12px; }
  .home-page .home-table th:first-child,
  .home-page .home-table td:first-child { position: sticky; left: 0; z-index: 2; background: var(--surface); box-shadow: 1px 0 0 var(--border); }
  .home-page .home-table th:first-child { z-index: 3; background: #f1f5fc; }
  .home-page .home-table .tk-t { flex-direction: row; }
  .home-page .home-table .tk-t > span { max-width: 85px; }
  .home-sort-hint { font-size: 12px; }
  .home-latest, .home-guide { margin-top: 45px; }
  .home-page .home-section-heading h2 { font-size: 23px; }
  .home-section-heading > a { font-size: 13px; }
  .home-latest-grid, .home-guide-grid { grid-template-columns: 1fr; }
  .home-page .home-latest-card { min-height: 120px; }
  .home-guide-card { padding: 22px; }
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .home-page .home-hero { background-color: var(--surface); }
  :root:not([data-theme="light"]) .home-page .home-chips .chip,
  :root:not([data-theme="light"]) .home-page .home-filter,
  :root:not([data-theme="light"]) .home-page .home-table th { background: var(--surface-2); color: var(--text); border-color: var(--border); }
  :root:not([data-theme="light"]) .home-page .home-table td,
  :root:not([data-theme="light"]) .home-page .home-table .tk b,
  :root:not([data-theme="light"]) .home-page .home-table .home-price,
  :root:not([data-theme="light"]) .home-page .home-table .home-volume { color: var(--text); border-color: var(--border); }
  :root:not([data-theme="light"]) .home-page .home-table tbody tr:hover { background: var(--surface-2); }
}
:root[data-theme="dark"] .home-page .home-hero { background-color: var(--surface); }
:root[data-theme="dark"] .home-page .home-chips .chip,
:root[data-theme="dark"] .home-page .home-filter,
:root[data-theme="dark"] .home-page .home-table th { background: var(--surface-2); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] .home-page .home-table td,
:root[data-theme="dark"] .home-page .home-table .tk b,
:root[data-theme="dark"] .home-page .home-table .home-price,
:root[data-theme="dark"] .home-page .home-table .home-volume { color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] .home-page .home-table tbody tr:hover { background: var(--surface-2); }

/* stock-redesign.css */
/* Stock detail: the light navy and cobalt system selected for the home page. */
.stock-detail { color: var(--text); }
.stock-detail .sd-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.stock-detail .sd-crumbs { margin: 3px 0 24px; }
.stock-detail .sd-crumbs a { color: #627697; font-weight: 600; }
.stock-detail .sd-crumbs a:hover { color: var(--accent); text-decoration: none; }

.stock-detail .sd-hero {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 40px;
  margin: 0; padding: 15px 0 35px; border-bottom: 1px solid var(--border);
}
.stock-detail .sd-hero-main { min-width: 0; flex: 1; }
.stock-detail .sd-title-row { display: flex; align-items: center; gap: 18px; }
.stock-detail .sd-stock-icon { display: inline-flex; flex: none; align-items: center; justify-content: center; }
.stock-detail .sd-stock-icon .sicon { width: 56px; height: 56px; border-radius: 14px; }
.stock-detail .sd-eyebrow {
  margin: 0 0 6px; color: var(--accent); font-size: 12px; font-weight: 760;
  letter-spacing: .07em; text-transform: uppercase;
}
.stock-detail .sd-hero h1 {
  margin: 0; font-size: clamp(32px, 3.4vw, 48px); font-weight: 760;
  line-height: 1.17; letter-spacing: -.045em;
}
.stock-detail .sd-stock-meta {
  display: flex; flex-wrap: wrap; align-items: center; gap: 7px 10px;
  margin: 14px 0 7px 74px; font-size: 14px;
}
.stock-detail .sd-stock-meta strong { font-weight: 680; }
.stock-detail .sd-stock-meta .tag { padding: 2px 8px; border-radius: 6px; font-size: 11px; }
.stock-detail .sd-hero-description {
  max-width: 700px; margin: 0 0 0 74px; color: var(--muted);
  font-size: 15px; line-height: 1.7;
}
.stock-detail .sd-kpis { display: flex; flex-wrap: wrap; gap: 0; margin: 30px 0 0 74px; }
.stock-detail .sd-kpis > div {
  display: flex; align-items: baseline; gap: 8px; min-width: 130px;
  padding: 0 24px; border-left: 1px solid #ccd8eb;
}
.stock-detail .sd-kpis > div:first-child { padding-left: 0; border-left: 0; }
.stock-detail .sd-kpis strong {
  color: #1d2b44; font-size: 23px; font-weight: 760;
  line-height: 1.25; font-variant-numeric: tabular-nums;
}
.stock-detail .sd-kpis span { color: var(--muted); font-size: 13px; white-space: nowrap; }
.stock-detail .sd-ref {
  align-items: flex-start; gap: 8px; width: 234px; min-width: 234px;
  padding: 22px 24px; border: 1px solid #dce7f5; border-radius: 14px;
  background: #fff; box-shadow: 0 6px 22px rgba(29, 67, 128, .06);
}
.stock-detail .sd-ref-label { color: #75839a; font-size: 13px; }
.stock-detail .sd-ref b {
  color: #17243b; font-size: 30px; font-weight: 770; line-height: 1.2;
  letter-spacing: -.025em; font-variant-numeric: tabular-nums;
}
.stock-detail .sd-ref .period { margin: 1px 0 0; }
.stock-detail .sd-updated { margin-top: 7px; color: #8996a9; font-size: 12px; }

.stock-detail .sd-anchor-nav {
  display: flex; align-items: center; gap: 29px; overflow-x: auto;
  margin: 0 0 44px; padding: 0; border-bottom: 1px solid var(--border);
  scrollbar-width: thin;
}
.stock-detail .sd-anchor-nav a {
  display: inline-flex; align-items: center; min-height: 55px; flex: none;
  border-bottom: 2px solid transparent; color: #63718a;
  font-size: 14px; font-weight: 630; white-space: nowrap;
}
.stock-detail .sd-anchor-nav a:first-child { color: var(--accent); border-bottom-color: var(--accent); }
.stock-detail .sd-anchor-nav a:hover { color: var(--accent); text-decoration: none; }
body:has(.stock-detail #history:target) .stock-detail .sd-anchor-nav a:first-child,
body:has(.stock-detail #contracts:target) .stock-detail .sd-anchor-nav a:first-child,
body:has(.stock-detail #faq:target) .stock-detail .sd-anchor-nav a:first-child {
  color: #63718a; border-bottom-color: transparent;
}
body:has(.stock-detail #history:target) .stock-detail .sd-anchor-nav a[href="#history"],
body:has(.stock-detail #contracts:target) .stock-detail .sd-anchor-nav a[href="#contracts"],
body:has(.stock-detail #faq:target) .stock-detail .sd-anchor-nav a[href="#faq"] {
  color: var(--accent); border-bottom-color: var(--accent);
}

.stock-detail .sd-market-section,
.stock-detail .sd-history,
.stock-detail .sd-contracts,
.stock-detail .sd-faq { scroll-margin-top: 110px; }
.stock-detail .sd-section-heading {
  display: flex; align-items: end; justify-content: space-between; gap: 16px;
  margin: 0 0 19px;
}
.stock-detail .sd-section-kicker {
  margin: 0 0 5px; color: var(--accent); font-size: 12px; font-weight: 740;
  letter-spacing: .06em; text-transform: uppercase;
}
.stock-detail .sd-section-heading h2 {
  margin: 0; font-size: clamp(24px, 2.3vw, 30px); font-weight: 750;
  line-height: 1.27; letter-spacing: -.035em;
}
.stock-detail .sd-section-aside { padding-bottom: 3px; color: #8a97aa; font-size: 13px; }
.stock-detail .region-bar { margin: 0 0 12px; border-radius: 10px; }

.stock-detail .sd-venue-wrap { overflow: visible; border-radius: 12px; }
.stock-detail .sd-venues { width: 100%; table-layout: fixed; }
.stock-detail .sd-venues th:nth-child(1) { width: 19%; }
.stock-detail .sd-venues th:nth-child(2) { width: 27%; }
.stock-detail .sd-venues th:nth-child(3) { width: 13%; }
.stock-detail .sd-venues th:nth-child(4) { width: 11%; }
.stock-detail .sd-venues th:nth-child(5) { width: 15%; }
.stock-detail .sd-venues th:nth-child(6) { width: 15%; }
.stock-detail .sd-venues th {
  position: static; height: 49px; padding: 11px 17px; border-bottom: 1px solid #e3ebf6;
  background: #f3f7fd; color: #60718d; font-size: 12px; font-weight: 680;
}
.stock-detail .sd-venues th:first-child { border-radius: 11px 0 0 0; }
.stock-detail .sd-venues th:last-child { border-radius: 0 11px 0 0; }
.stock-detail .sd-venues td {
  padding: 17px; border-bottom-color: #e5ecf6; background: #fff;
  color: var(--text); font-size: 14px; line-height: 1.55;
}
.stock-detail .sd-venues tr:hover td { background: #f9fbff; }
.stock-detail .sd-venues .sd-venue-name { white-space: normal; font-weight: 690; }
.stock-detail .sd-venue-name .ex { display: inline-block; color: #25344d; }
.stock-detail .sd-venue-name .ex::before { width: 20px; height: 20px; margin-right: 8px; vertical-align: -5px; border-radius: 5px; }
.stock-detail .sd-venue-name .badge { display: inline-block; margin: 5px 4px 0 0; font-size: 10px; }
.stock-detail .sd-market-type { white-space: normal; }
.stock-detail .sd-market-type .pill { margin: 0; padding: 3px 9px; }
.stock-detail .sd-market-type .sym { margin-top: 4px; line-height: 1.45; overflow-wrap: anywhere; }
.stock-detail .sd-price,
.stock-detail .sd-volume { color: #1c2b44 !important; font-size: 15px !important; font-weight: 690; }
.stock-detail .sd-premium { font-size: 14px; font-weight: 690; }
.stock-detail .sd-premium.up { color: var(--up) !important; }
.stock-detail .sd-premium.down { color: var(--down) !important; }
.stock-detail .sd-action-head { text-align: right; }
.stock-detail .sd-action .btn {
  min-width: 96px; padding: 8px 13px; text-align: center; font-size: 13px;
  white-space: nowrap;
}
.stock-detail .sd-row-detail { margin: 5px 0 0; }
.stock-detail .sd-row-detail summary {
  display: inline-block; color: var(--accent); font-size: 12px; font-weight: 610;
  cursor: pointer; list-style-position: inside;
}
.stock-detail .sd-row-detail summary:hover { text-decoration: underline; }
.stock-detail .sd-detail-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 13px;
  margin: 11px 0 2px; padding: 13px; border: 1px solid #dfe9f7;
  border-radius: 9px; background: #f7faff;
}
.stock-detail .sd-detail-grid div { min-width: 0; }
.stock-detail .sd-detail-grid dt { color: #78879d; font-size: 11px; line-height: 1.4; }
.stock-detail .sd-detail-grid dd {
  margin: 2px 0 0; color: #20304a; font-size: 12px; font-weight: 680;
  overflow-wrap: anywhere; font-variant-numeric: tabular-nums;
}
.stock-detail .sd-detail-grid dd.up { color: var(--up); }
.stock-detail .sd-detail-grid dd.down { color: var(--down); }
.stock-detail .sd-market-note { max-width: 1080px; margin: 13px 2px 0; font-size: 12px; }

.stock-detail .sd-history { margin-top: 72px; }
.stock-detail .sd-history .sd-section-heading { margin: 0 0 18px; }
.stock-detail .sd-history .seg {
  padding: 4px; border-color: #dfe8f5; border-radius: 10px; background: #f5f8fd;
}
.stock-detail .sd-history .seg a {
  min-width: 56px; padding: 6px 12px; border-radius: 7px;
  text-align: center; color: #62738e; font-size: 13px; font-weight: 630;
}
.stock-detail .sd-history .seg a.on { color: #fff; background: var(--accent); box-shadow: 0 3px 9px rgba(40, 97, 232, .17); }
.stock-detail .sd-chart-card {
  margin-top: 14px; padding: 23px 27px 18px;
  border-color: #e0e8f4; border-radius: 13px; box-shadow: none;
}
.stock-detail .sd-chart-card h3 { margin: 0 0 10px; color: #263650; font-size: 17px; font-weight: 710; }
.stock-detail .sd-chart-card .legend { margin-bottom: 13px; color: #63718b; font-size: 12px; }
.stock-detail .sd-chart-card .chart-box { overflow: visible; }
.stock-detail .sd-chart-card .chart-table { margin-top: 16px; padding-top: 12px; border-top: 1px solid #e9eef7; }
.stock-detail .sd-chart-card .chart-table summary { color: var(--accent); font-weight: 610; }
.stock-detail .sd-history-note { margin-top: 12px; font-size: 12px; }
.stock-detail .sd-empty { border: 1px dashed #dce7f4; border-radius: 12px; background: #fafcff; }

.stock-detail .sd-signup {
  gap: 16px 24px; margin-top: 66px; padding: 23px 26px;
  border: 1px solid #dce7f8; border-radius: 13px; background: #f5f8ff;
}
.stock-detail .sd-signup-copy { display: block; max-width: 540px; }
.stock-detail .sd-signup-copy strong { color: #23334e; font-size: 18px; font-weight: 720; }
.stock-detail .sd-signup-copy p { margin: 4px 0 0; color: #6b7a93; font-size: 13px; line-height: 1.6; }
.stock-detail .sd-signup-links { justify-content: flex-end; gap: 8px; }
.stock-detail .sd-signup-links .btn { padding: 8px 13px; font-size: 13px; }

.stock-detail .sd-contracts { margin-top: 66px; }
.stock-detail .sd-contracts .warn { margin: 0 0 15px; padding: 13px 16px; font-size: 13px; line-height: 1.6; }
.stock-detail .sd-contract-wrap { overflow: hidden; }
.stock-detail .sd-contract-table th { padding: 13px 16px; }
.stock-detail .sd-contract-table td { padding: 17px 16px; }
.stock-detail .sd-contract-table .sym { display: inline; margin-left: 5px; }
.stock-detail .sd-contract-table .addr { padding: 5px 8px; border-radius: 6px; }
.stock-detail .sd-contract-table .act .btn { min-width: 74px; }

.stock-detail .sd-faq { max-width: none; margin-top: 70px; }
.stock-detail .sd-faq-list { border: 1px solid var(--border); border-radius: 13px; overflow: hidden; }
.stock-detail .sd-faq-item { padding: 0 23px; border-bottom: 1px solid #e4ebf5; background: #fff; }
.stock-detail .sd-faq-item:last-child { border-bottom: 0; }
.stock-detail .sd-faq-item[open] { background: #fbfcff; }
.stock-detail .sd-faq-item summary {
  padding: 19px 0; color: #263650; font-size: 15px; font-weight: 690;
  line-height: 1.5; cursor: pointer;
}
.stock-detail .sd-faq-item p {
  max-width: 960px; margin: 0 0 18px; color: #64738d;
  font-size: 14px; line-height: 1.75;
}

@media (max-width: 1020px) {
  .stock-detail .sd-hero { gap: 24px; }
  .stock-detail .sd-venues th { padding-left: 12px; padding-right: 12px; }
  .stock-detail .sd-venues td { padding: 13px 12px; }
  .stock-detail .sd-venues th:nth-child(1) { width: 19%; }
  .stock-detail .sd-venues th:nth-child(2) { width: 26%; }
  .stock-detail .sd-venues th:nth-child(3) { width: 13%; }
  .stock-detail .sd-venues th:nth-child(4) { width: 12%; }
  .stock-detail .sd-venues th:nth-child(5) { width: 16%; }
  .stock-detail .sd-venues th:nth-child(6) { width: 14%; }
  .stock-detail .sd-venues .sd-action .btn { min-width: 0; width: 100%; padding-left: 5px; padding-right: 5px; }
}

@media (max-width: 760px) {
  .stock-detail .sd-crumbs { margin-bottom: 13px; }
  .stock-detail .sd-hero { display: block; padding: 12px 0 24px; }
  .stock-detail .sd-title-row { align-items: flex-start; gap: 12px; }
  .stock-detail .sd-stock-icon .sicon { width: 45px; height: 45px; border-radius: 12px; }
  .stock-detail .sd-eyebrow { margin-bottom: 5px; font-size: 11px; }
  .stock-detail .sd-hero h1 { font-size: clamp(26px, 7vw, 34px); line-height: 1.18; }
  .stock-detail .sd-stock-meta { margin: 15px 0 7px; }
  .stock-detail .sd-hero-description { margin: 0; font-size: 14px; }
  .stock-detail .sd-kpis { margin: 23px 0 0; }
  .stock-detail .sd-kpis > div { min-width: 0; padding: 0 16px; gap: 6px; }
  .stock-detail .sd-kpis strong { font-size: 20px; }
  .stock-detail .sd-kpis span { font-size: 12px; }
  .stock-detail .sd-ref {
    display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 12px;
    width: 100%; min-width: 0; margin-top: 22px; padding: 15px 17px;
  }
  .stock-detail .sd-ref-label { grid-column: 1; }
  .stock-detail .sd-ref b { grid-column: 1; font-size: 26px; }
  .stock-detail .sd-ref .period { grid-column: 2; grid-row: 2; margin: 0; }
  .stock-detail .sd-updated { grid-column: 1 / -1; margin-top: 4px; }
  .stock-detail .sd-anchor-nav { gap: 22px; margin-bottom: 35px; }
  .stock-detail .sd-anchor-nav a { min-height: 48px; font-size: 13px; }
  .stock-detail .sd-section-heading { align-items: flex-start; margin-bottom: 14px; }
  .stock-detail .sd-section-heading h2 { font-size: 23px; }
  .stock-detail .sd-section-aside { display: none; }
  .stock-detail .sd-venue-wrap { overflow: visible; border: 0; border-radius: 0; }
  .stock-detail .sd-venues,
  .stock-detail .sd-venues tbody,
  .stock-detail .sd-venues tr,
  .stock-detail .sd-venues td { display: block; width: 100%; }
  .stock-detail .sd-venues { table-layout: auto; }
  .stock-detail .sd-venues thead { display: block; margin: 0 0 11px; }
  .stock-detail .sd-venues thead tr {
    display: flex; align-items: center; gap: 7px; padding: 0;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
  }
  .stock-detail .sd-venues thead th { display: none; }
  .stock-detail .sd-venues thead th:nth-child(3),
  .stock-detail .sd-venues thead th:nth-child(4),
  .stock-detail .sd-venues thead th:nth-child(5) {
    display: inline-flex; align-items: center; justify-content: center;
    width: auto; height: 32px; padding: 5px 10px;
    border: 1px solid #dbe5f4; border-radius: 999px;
    background: #f7faff; color: #63748e; font-size: 11px;
    text-align: center !important; white-space: nowrap;
  }
  .stock-detail .sd-venues thead th[aria-sort] {
    border-color: #aac3fb; background: #edf3ff; color: var(--accent);
  }
  .stock-detail .sd-venues tbody { display: grid; gap: 12px; }
  .stock-detail .sd-venues tr {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 7px;
    padding: 16px; border: 1px solid var(--border); border-radius: 12px;
    background: #fff; box-shadow: 0 2px 12px rgba(28, 58, 112, .035);
  }
  .stock-detail .sd-venues tr:hover { background: #fff; }
  .stock-detail .sd-venues td { min-width: 0; padding: 0; border: 0; background: transparent !important; }
  .stock-detail .sd-venues .sd-venue-name { grid-column: 1 / -1; margin-bottom: 5px; }
  .stock-detail .sd-venues .sd-market-type { grid-column: 1 / -1; margin-bottom: 14px; }
  .stock-detail .sd-venues .sd-market-type .sym { margin-top: 4px; }
  .stock-detail .sd-venues .sd-price,
  .stock-detail .sd-venues .sd-premium,
  .stock-detail .sd-venues .sd-volume {
    display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start;
    grid-column: auto; min-height: 57px; padding: 10px 0 0;
    border-top: 1px solid #e8eef7; text-align: left !important;
    white-space: nowrap; font-size: 13px !important;
  }
  .stock-detail .sd-venues .sd-price::before,
  .stock-detail .sd-venues .sd-premium::before,
  .stock-detail .sd-venues .sd-volume::before {
    content: attr(data-label); margin-bottom: 3px; color: #7c8aa0;
    font-size: 11px; font-weight: 510; line-height: 1.3;
  }
  .stock-detail .sd-venues .sd-action { grid-column: 1 / -1; margin-top: 13px; text-align: left !important; }
  .stock-detail .sd-venues .sd-action .btn { display: block; width: 100%; min-height: 39px; padding: 9px; }
  .stock-detail .sd-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stock-detail .sd-market-section,
  .stock-detail .sd-history,
  .stock-detail .sd-contracts,
  .stock-detail .sd-faq { margin-top: 52px; scroll-margin-top: 20px; }
  .stock-detail .sd-market-section { margin-top: 0; }
  .stock-detail .sd-chart-card { padding: 17px 14px 12px; }
  .stock-detail .sd-chart-card h3 { font-size: 15px; }
  .stock-detail .sd-signup { margin-top: 52px; padding: 20px; }
  .stock-detail .sd-signup-links { justify-content: flex-start; }
  .stock-detail .sd-faq-item { padding: 0 16px; }
  .stock-detail .sd-faq-item summary { padding: 16px 0; font-size: 14px; }
  .stock-detail .sd-faq-item p { font-size: 13px; }
}

@media (max-width: 600px) {
  .stock-detail .sd-contract-wrap { overflow: visible; border: 0; }
  .stock-detail .sd-contract-table,
  .stock-detail .sd-contract-table tbody,
  .stock-detail .sd-contract-table tr,
  .stock-detail .sd-contract-table td { display: block; width: 100%; }
  .stock-detail .sd-contract-table thead {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
  }
  .stock-detail .sd-contract-table tbody { display: grid; gap: 10px; }
  .stock-detail .sd-contract-table tr { padding: 14px 16px; border: 1px solid var(--border); border-radius: 11px; }
  .stock-detail .sd-contract-table td { padding: 5px 0; border: 0; white-space: normal; }
  .stock-detail .sd-contract-table td::before {
    content: attr(data-label); display: block; margin: 0 0 3px;
    color: #7a89a0; font-size: 11px; font-weight: 540;
  }
  .stock-detail .sd-contract-table .act { text-align: left !important; }
  .stock-detail .sd-contract-table .addr { overflow-wrap: anywhere; }
}

@media (max-width: 390px) {
  .stock-detail .sd-kpis > div { padding: 0 9px; }
  .stock-detail .sd-kpis strong { font-size: 18px; }
  .stock-detail .sd-kpis span { font-size: 11px; }
  .stock-detail .sd-venues tr { padding: 13px; }
  .stock-detail .sd-venues .sd-price,
  .stock-detail .sd-venues .sd-premium,
  .stock-detail .sd-venues .sd-volume { font-size: 12px !important; }
}

/* aux-redesign.css */
/* Shared visual treatment for venue, ranking, search, and empty-state pages. */
.aux-page {
  --aux-navy: #172238;
  --aux-muted: #65748e;
  --aux-line: #dfe8f5;
  --aux-wash: #f5f8fe;
  --aux-blue: #1e5de8;
  --aux-blue-soft: #eef4ff;
  color: var(--aux-navy);
  padding-bottom: 64px;
}

.aux-page .aux-crumbs {
  margin: 8px 0 0;
  font-size: 13px;
  font-weight: 600;
}
.aux-page .aux-crumbs a { color: var(--aux-muted); }
.aux-page .aux-crumbs a:hover { color: var(--aux-blue); text-decoration: none; }

.aux-page .aux-hero {
  margin: 0;
  padding: 46px 0 42px;
  border-bottom: 1px solid var(--aux-line);
}
.aux-page .aux-eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 17px;
  padding: 6px 12px;
  border: 1px solid #d9e7ff;
  border-radius: 999px;
  background: var(--aux-blue-soft);
  color: var(--aux-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
}
.aux-page .aux-eyebrow .ex { color: var(--aux-blue); }
.aux-page .aux-eyebrow .ex::before { width: 17px; height: 17px; }
.aux-page .aux-hero h1,
.aux-page.aux-notfound h1 {
  max-width: 1020px;
  margin: 0;
  color: var(--aux-navy);
  font-size: clamp(31px, 3.3vw, 46px);
  font-weight: 750;
  line-height: 1.22;
  letter-spacing: -.035em;
}
.aux-page .aux-lead {
  max-width: 880px;
  margin: 16px 0 0;
  color: var(--aux-muted);
  font-size: 16px;
  line-height: 1.75;
}
.aux-page .aux-hero .period {
  margin: 20px 0 0;
  padding: 9px 14px;
  border: 1px solid var(--aux-line);
  border-radius: 999px;
  background: #fff;
  color: #4d5e7a;
  font-size: 12px;
  line-height: 1.45;
}

.aux-page .aux-section { margin: 40px 0 0; }
.aux-page .aux-section-head { margin-bottom: 17px; }
.aux-page .aux-section h2,
.aux-page .aux-rank-card h2 {
  margin: 0;
  color: var(--aux-navy);
  font-size: 23px;
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: -.02em;
}
.aux-page .aux-section .hint {
  max-width: 1060px;
  margin: 8px 0 19px;
  color: var(--aux-muted);
  font-size: 13px;
  line-height: 1.7;
}
.aux-page .count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 25px;
  min-height: 25px;
  margin-left: 5px;
  padding: 0 7px;
  border-radius: 999px;
  background: var(--aux-blue-soft);
  color: var(--aux-blue);
  font-size: 12px;
  font-weight: 700;
  vertical-align: 2px;
}

.aux-page .aux-table-wrap {
  border: 1px solid var(--aux-line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 7px 25px rgba(42, 83, 153, .035);
}
.aux-page .aux-data-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 13px;
}
.aux-page .aux-data-table th,
.aux-page .aux-data-table td {
  height: 61px;
  padding: 11px 15px;
  border-bottom: 1px solid var(--aux-line);
  color: var(--aux-navy);
  vertical-align: middle;
}
.aux-page .aux-data-table th {
  height: 45px;
  padding: 8px 15px;
  background: var(--aux-wash);
  color: var(--aux-muted);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.aux-page .aux-data-table th:first-child { border-top-left-radius: 12px; }
.aux-page .aux-data-table th:last-child { border-top-right-radius: 12px; }
.aux-page .aux-data-table tbody tr:last-child td { border-bottom: 0; }
.aux-page .aux-data-table tbody tr:hover { background: #f9fbff; }
.aux-page .aux-data-table .tk { gap: 10px; }
.aux-page .aux-data-table .tk-t { gap: 7px; }
.aux-page .aux-data-table .tk b { color: var(--aux-navy); font-size: 13px; }
.aux-page .aux-data-table .tk:hover b { color: var(--aux-blue); }
.aux-page .aux-data-table .tk-t span,
.aux-page .aux-data-table .sym { color: var(--aux-muted); }
.aux-page .aux-data-table .up { color: #12875b; font-weight: 650; }
.aux-page .aux-data-table .down { color: #dc3750; font-weight: 650; }
.aux-page .aux-data-table .badge-best_price {
  border-color: #b9ebd0;
  border-radius: 999px;
  background: #ebfaf2;
  color: #138455;
}
.aux-page .aux-data-table a.ex,
.aux-page .aux-data-table span.ex {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 5px 10px;
  border-radius: 999px;
  background: #f2f6ff;
  color: #314260;
  font-size: 12px;
  font-weight: 650;
  text-decoration: none;
}
.aux-page .aux-data-table a.ex:hover { background: #e6efff; color: var(--aux-blue); }
.aux-page .aux-data-table .ex::before { width: 15px; height: 15px; margin-right: 5px; }
.aux-page .aux-data-table .sym { font-size: 11px; }
.aux-page .aux-data-table .aux-trade {
  padding: 6px 13px;
  border-radius: 8px;
  background: var(--aux-blue-soft);
  border-color: #d8e5fc;
  color: var(--aux-blue);
  font-size: 12px;
  white-space: nowrap;
}
.aux-page .aux-data-table .aux-trade:hover { background: #e4eeff; filter: none; }
.aux-page .aux-sort-button {
  display: inline-block;
  width: 100%;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  font-weight: inherit;
  text-align: inherit;
  white-space: nowrap;
}
.aux-page .aux-sort-button:focus-visible,
.aux-page a:focus-visible {
  outline: 2px solid var(--aux-blue);
  outline-offset: 3px;
}
.aux-page th[aria-sort] { color: var(--aux-blue); }
.aux-page .aux-empty {
  margin-top: 28px;
  padding: 58px 24px;
  border: 1px solid var(--aux-line);
  border-radius: 13px;
  background: var(--aux-wash);
  color: var(--aux-muted);
}

/* Exchange detail */
.aux-exchange .aux-hero { align-items: center; gap: 36px; }
.aux-exchange .aux-hero-copy { min-width: 0; flex: 1; }
.aux-exchange .aux-hero .access-line {
  margin: 22px 0 0;
  color: #53627d;
  font-size: 13px;
  line-height: 1.7;
}
.aux-exchange .aux-hero .access-line a { color: var(--aux-blue); font-weight: 650; }
.aux-exchange .aux-hero .tag {
  padding: 4px 10px;
  border-color: #d9e7ff;
  border-radius: 999px;
  background: var(--aux-blue-soft);
  color: var(--aux-blue);
  font-size: 12px;
}
.aux-exchange .aux-hero .hint { max-width: 900px; margin: 8px 0 0; line-height: 1.65; }
.aux-exchange .aux-signup {
  flex: none;
  min-width: 235px;
  gap: 15px;
  align-items: stretch;
  padding: 22px;
  border-color: var(--aux-line);
  border-radius: 13px;
  box-shadow: 0 10px 28px rgba(42, 83, 153, .05);
}
.aux-exchange .aux-signup small { color: var(--aux-muted); font-size: 12px; }
.aux-exchange .aux-signup .btn {
  padding: 11px 14px;
  border-radius: 9px;
  background: var(--aux-blue);
  border-color: var(--aux-blue);
  font-size: 13px;
  text-align: center;
}

/* Ranking page */
.aux-rankings .aux-rank-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 38px;
}
.aux-rankings .aux-rank-card {
  min-width: 0;
  border: 1px solid var(--aux-line);
  border-radius: 13px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 7px 25px rgba(42, 83, 153, .035);
}
.aux-rankings .aux-rank-card h2 {
  padding: 20px 22px 19px;
  font-size: 18px;
}
.aux-rankings .aux-rank-card .aux-table-wrap {
  border: 0;
  border-top: 1px solid var(--aux-line);
  border-radius: 0;
  box-shadow: none;
}
.aux-rankings .aux-rank-card .aux-data-table th,
.aux-rankings .aux-rank-card .aux-data-table td { padding-left: 13px; padding-right: 13px; }
.aux-rankings .aux-rank-card .aux-data-table th:first-child,
.aux-rankings .aux-rank-card .aux-data-table th:last-child { border-radius: 0; }
.aux-rankings .aux-rank-mobile-venue { display: none; }
.aux-rankings .aux-rank-card .aux-empty {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--aux-line);
  border-radius: 0;
}

/* Venue overview */
.aux-venues .aux-access-section .hint { max-width: 1110px; }
.aux-venues .aux-access-wrap { position: relative; }
.aux-venues .access-table { min-width: 1130px; }
.aux-venues .access-table td,
.aux-venues .access-table th { height: 52px; padding: 8px 12px; }
.aux-venues .access-table .st-listed { color: #da3850; }
.aux-venues .access-table .st-not_listed { color: #138455; }
.aux-venues .access-table .st-unknown { color: #8b99ad; }
.aux-venues .access-table .col-on { background: #eaf2ff; }
.aux-venues .access-table a:not(.ex) { color: var(--aux-blue); font-weight: 650; }
.aux-venues .legend-access { margin-top: 12px; }
.aux-venues .aux-venue-section { margin-top: 48px; }
.aux-venues .aux-venue-section h2 { margin-bottom: 0; }
.aux-venues .aux-venue-grid {
  grid-template-columns: repeat(auto-fill, minmax(255px, 1fr));
  gap: 14px;
}
.aux-venues .aux-venue-grid .venue-card {
  min-height: 140px;
  gap: 9px;
  justify-content: space-between;
  padding: 20px;
  border-color: var(--aux-line);
  border-radius: 13px;
  box-shadow: 0 7px 25px rgba(42, 83, 153, .035);
  transition: border-color .2s, transform .2s, box-shadow .2s;
}
.aux-venues .aux-venue-grid .venue-card:hover {
  transform: translateY(-2px);
  border-color: #94b9fa;
  box-shadow: 0 12px 28px rgba(42, 83, 153, .09);
}
.aux-venues .aux-venue-grid .venue-card .ex { color: var(--aux-navy); font-size: 18px; }
.aux-venues .aux-venue-grid .venue-card .ex::before { width: 22px; height: 22px; vertical-align: -5px; }
.aux-venues .aux-venue-grid .venue-card span { color: #475b78; font-size: 13px; }
.aux-venues .aux-venue-grid .venue-card small { color: var(--aux-muted); font-size: 12px; }

/* Search and empty states */
.aux-search-results .aux-results {
  margin-top: 36px;
  border-color: var(--aux-line);
  border-radius: 13px;
  box-shadow: 0 7px 25px rgba(42, 83, 153, .035);
  overflow: hidden;
}
.aux-search-results .aux-results li {
  min-height: 80px;
  align-items: center;
  padding: 17px 22px;
  border-color: var(--aux-line);
}
.aux-search-results .aux-results li:hover { background: #f9fbff; }
.aux-search-results .aux-results .tk { gap: 13px; }
.aux-search-results .aux-results .tk b { color: var(--aux-navy); font-size: 15px; }
.aux-search-results .aux-results .tk:hover b { color: var(--aux-blue); }
.aux-search-results .aux-results .meta { gap: 7px; }
.aux-search-results .aux-results .pill {
  margin: 0;
  padding: 5px 10px;
  border: 1px solid transparent;
  font-size: 12px;
}
.aux-search-results .aux-results .pill.spot { background: #eaf2ff; color: #2157bc; }
.aux-search-results .aux-results .pill.perp { background: #fff1e6; color: #a7591f; }
.aux-search-results .aux-results .ex {
  padding: 5px 9px;
  border-radius: 999px;
  background: #f3f6fc;
  color: #435473;
  font-size: 12px;
}
.aux-search-results .aux-results .ex::before { width: 13px; height: 13px; margin-right: 4px; vertical-align: -2px; }
.aux-notfound {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58vh;
  padding: 56px 0 90px;
}
.aux-notfound .aux-notfound-panel {
  width: min(100%, 660px);
  padding: 48px 38px;
  border: 1px solid var(--aux-line);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(42, 83, 153, .055);
}
.aux-notfound h1 { font-size: clamp(29px, 3vw, 39px); }
.aux-notfound p { margin: 16px 0 0; color: var(--aux-muted); font-size: 15px; line-height: 1.7; }
.aux-notfound p:last-child { margin-top: 28px; }
.aux-notfound .btn { padding: 10px 20px; background: var(--aux-blue); border-color: var(--aux-blue); }

@media (max-width: 920px) {
  .aux-rankings .aux-rank-grid { grid-template-columns: 1fr; }
  .aux-exchange .aux-hero { align-items: flex-start; flex-direction: column; }
  .aux-exchange .aux-signup { min-width: 0; width: min(100%, 360px); }
}

@media (max-width: 760px) {
  .aux-page { padding-bottom: 40px; }
  .aux-page .aux-crumbs { margin-top: 0; }
  .aux-page .aux-hero { padding: 34px 0 32px; }
  .aux-page .aux-hero h1 { font-size: clamp(28px, 7vw, 37px); }
  .aux-page .aux-lead { font-size: 14px; line-height: 1.65; }
  .aux-page .aux-section { margin-top: 34px; }
  .aux-page .aux-section h2 { font-size: 20px; }
  .aux-page .aux-table-wrap { border-radius: 11px; }
  .aux-page .aux-data-table th,
  .aux-page .aux-data-table td { height: 55px; padding: 9px 11px; }
  .aux-exchange .aux-data-table { min-width: 610px; }
  .aux-rankings .aux-rank-grid { gap: 18px; margin-top: 30px; }
  .aux-rankings .aux-rank-card h2 { padding: 18px 16px; font-size: 17px; }
  .aux-rankings .aux-rank-card .aux-data-table { min-width: 0; table-layout: fixed; }
  .aux-rankings .aux-rank-card .aux-data-table th:nth-child(2),
  .aux-rankings .aux-rank-card .aux-data-table td:nth-child(2) { display: none; }
  .aux-rankings .aux-rank-card .aux-data-table th:first-child,
  .aux-rankings .aux-rank-card .aux-data-table td:first-child { width: 68%; }
  .aux-rankings .aux-rank-card .aux-data-table th:nth-child(3),
  .aux-rankings .aux-rank-card .aux-data-table td:nth-child(3) { width: 32%; }
  .aux-rankings .aux-rank-card .aux-data-table td { height: 72px; }
  .aux-rankings .aux-rank-mobile-venue {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 5px;
    margin: 5px 0 0 29px;
  }
  .aux-rankings .aux-rank-mobile-venue .ex { padding: 3px 6px; font-size: 10px; }
  .aux-rankings .aux-rank-mobile-venue .ex::before { width: 12px; height: 12px; }
  .aux-rankings .aux-rank-mobile-venue .sym {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 10px;
  }
  .aux-venues .aux-access-section .hint { margin-bottom: 14px; }
  .aux-venues .aux-venue-grid { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
  .aux-search-results .aux-results { margin-top: 28px; }
  .aux-search-results .aux-results li { padding: 15px; }
  .aux-search-results .aux-results .meta { width: 100%; padding-left: 33px; }
  .aux-notfound { padding: 25px 0 55px; }
  .aux-notfound .aux-notfound-panel { padding: 35px 23px; }
}

@media (prefers-reduced-motion: reduce) {
  .aux-venues .aux-venue-grid .venue-card { transition: none; }
}

/* seo-redesign.css */
/* Editorial and directory pages, using the selected light research-desk theme. */
.aux-page.aux-about,
.aux-page.aux-issuer,
.aux-page.aux-stocks {
  padding-bottom: 72px;
}

.aux-about .prose {
  width: min(100%, 900px);
  margin: 48px auto 0;
  color: #40516c;
  font-size: 16px;
  line-height: 1.9;
}
.aux-about .prose h2 {
  margin: 38px 0 14px;
  padding-top: 37px;
  border-top: 1px solid var(--aux-line);
  color: var(--aux-navy);
  font-size: 23px;
  font-weight: 740;
  line-height: 1.42;
  letter-spacing: -.018em;
}
.aux-about .prose h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.aux-about .prose p { margin: 0 0 15px; }
.aux-about .prose p + p { margin-top: 10px; }
.aux-about .prose a {
  color: var(--aux-blue);
  font-weight: 620;
  text-decoration: underline;
  text-decoration-color: #b8cef9;
  text-underline-offset: 3px;
}
.aux-about .prose a:hover { text-decoration-color: currentColor; }

.aux-issuer .aux-hero .seo-issuer-venues {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
  font-size: 13px;
}
.aux-issuer .seo-issuer-venues strong {
  margin-right: 3px;
  color: #51617d;
  font-size: 12px;
  font-weight: 680;
}
.aux-issuer .seo-issuer-venues .ex {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border: 1px solid #e0e9f8;
  border-radius: 999px;
  background: #f4f8ff;
  color: #3d5276;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.3;
  text-decoration: none;
}
.aux-issuer .seo-issuer-venues .ex:hover { border-color: #abc7f7; color: var(--aux-blue); }
.aux-issuer .seo-issuer-venues .ex::before {
  width: 15px;
  height: 15px;
  margin-right: 5px;
  vertical-align: 0;
}
.aux-issuer .aux-section > .hint { margin-top: 14px; }
.aux-issuer .seo-issuer-explain {
  max-width: 980px;
  margin-top: 52px;
  padding: 28px 30px;
  border: 1px solid var(--aux-line);
  border-radius: 14px;
  background: #f8fbff;
}
.aux-issuer .seo-issuer-explain h2 { margin: 0 0 15px; }
.aux-issuer .seo-issuer-explain p {
  margin: 0 0 12px;
  color: #52637f;
  font-size: 14px;
  line-height: 1.75;
}
.aux-issuer .seo-issuer-explain p:last-child { margin-bottom: 0; }
.aux-issuer .seo-issuer-explain .warn {
  margin-top: 20px;
  padding: 12px 15px;
  border-radius: 9px;
  background: #fff9e9;
  color: #795d1f;
}

.aux-stocks .aux-section { margin-top: 35px; }
.aux-page .seo-table-wrap .aux-data-table .seo-cell-label,
.aux-stocks .seo-mobile-region { display: none; }
.aux-page .seo-table-wrap .aux-data-table td { font-variant-numeric: tabular-nums; }
.aux-page .seo-table-wrap .aux-data-table .venues-cell {
  max-width: 330px;
  min-width: 160px;
  white-space: normal;
}
.aux-page .seo-table-wrap .aux-data-table .venues-cell .pill { margin: 2px 3px 2px 0; }
.aux-page .seo-table-wrap .aux-data-table .sym { white-space: normal; }
.aux-issuer .seo-issuer-table { min-width: 790px; }
.aux-issuer .seo-issuer-table td:first-child { min-width: 200px; }
.aux-issuer .seo-issuer-table td:nth-child(2) { max-width: 180px; }
.aux-issuer .seo-issuer-table td:nth-child(4) .sym {
  margin-top: 2px;
  font-size: 11px;
}
.aux-stocks .seo-stocks-table { min-width: 1040px; }
.aux-stocks .seo-stocks-table td:first-child { min-width: 205px; }
.aux-stocks .seo-stocks-table .tk-t { flex-wrap: wrap; }
.aux-stocks .seo-stocks-table .tag { flex: none; margin-left: 2px; }
.aux-stocks .seo-stocks-table td:nth-child(4) { min-width: 230px; }
.aux-stocks .seo-stocks-table td:last-child { font-weight: 650; }

.aux-stocks .seo-pager {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 32px 0 0;
}
.aux-stocks .seo-pager a,
.aux-stocks .seo-pager span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid var(--aux-line);
  border-radius: 9px;
  background: #fff;
  color: #52647f;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.25;
  text-decoration: none;
}
.aux-stocks .seo-pager a:hover { border-color: #b9cef7; background: #f2f7ff; color: var(--aux-blue); }
.aux-stocks .seo-pager span[aria-current="page"] {
  border-color: var(--aux-blue);
  background: var(--aux-blue);
  color: #fff;
}

@media (max-width: 760px) {
  .aux-page.aux-about,
  .aux-page.aux-issuer,
  .aux-page.aux-stocks { padding-bottom: 42px; }
  .aux-about .prose { margin-top: 32px; font-size: 14px; line-height: 1.8; }
  .aux-about .prose h2 { margin-top: 29px; padding-top: 28px; font-size: 20px; }
  .aux-about .prose p { margin-bottom: 13px; }
  .aux-issuer .aux-hero .seo-issuer-venues { gap: 6px; margin-top: 19px; }
  .aux-issuer .seo-issuer-venues strong { width: 100%; }
  .aux-issuer .seo-issuer-explain { margin-top: 36px; padding: 22px 18px; }

  .aux-page .seo-table-wrap {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .aux-page .seo-table-wrap .aux-data-table,
  .aux-page .seo-table-wrap .aux-data-table tbody,
  .aux-page .seo-table-wrap .aux-data-table thead { display: block; min-width: 0; width: 100%; }
  .aux-page .seo-table-wrap .aux-data-table thead { margin-bottom: 13px; }
  .aux-page .seo-table-wrap .aux-data-table thead tr {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }
  .aux-page .seo-table-wrap .aux-data-table thead th {
    display: inline-flex;
    align-items: center;
    width: auto;
    height: 31px;
    padding: 2px 9px;
    border: 1px solid var(--aux-line);
    border-radius: 999px;
    background: #fff;
    color: #64738d;
    font-size: 11px;
    line-height: 1.1;
    text-align: center !important;
  }
  .aux-page .seo-table-wrap .aux-data-table thead th[aria-sort] {
    border-color: #cbdcfa;
    background: #edf4ff;
    color: var(--aux-blue);
  }
  .aux-page .seo-table-wrap .aux-data-table thead th .aux-sort-button { padding: 2px 0; }
  .aux-page .seo-table-wrap .aux-data-table tbody { display: grid; gap: 11px; }
  .aux-page .seo-table-wrap .aux-data-table tbody tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px 14px;
    min-width: 0;
    padding: 15px;
    border: 1px solid var(--aux-line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(31, 65, 122, .035);
  }
  .aux-page .seo-table-wrap .aux-data-table tbody tr:hover { background: #fff; }
  .aux-page .seo-table-wrap .aux-data-table tbody td {
    display: block;
    width: auto;
    min-width: 0;
    max-width: none;
    height: auto;
    padding: 0;
    border: 0;
    white-space: normal;
    text-align: left !important;
    font-size: 12px;
    line-height: 1.4;
  }
  .aux-page .seo-table-wrap .aux-data-table .seo-cell-label {
    display: block;
    margin-bottom: 3px;
    color: #7d8ba2;
    font-size: 10px;
    font-weight: 650;
    line-height: 1.3;
  }
  .aux-page .seo-table-wrap .aux-data-table .tk { align-items: center; gap: 9px; }
  .aux-page .seo-table-wrap .aux-data-table .tk-t { flex-direction: row; flex-wrap: wrap; gap: 2px 6px; }
  .aux-page .seo-table-wrap .aux-data-table .tk-t b { width: auto; font-size: 15px; }
  .aux-page .seo-table-wrap .aux-data-table .tk-t span { flex-basis: 100%; font-size: 11px; }
  .aux-page .seo-table-wrap .aux-data-table .venues-cell { min-width: 0; max-width: none; }
  .aux-page .seo-table-wrap .aux-data-table .venues-cell .pill {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    margin: 2px 4px 2px 0;
    padding: 4px 8px;
    font-size: 10px;
    line-height: 1.2;
  }
  .aux-page .seo-table-wrap .aux-data-table .venues-cell .pill::before {
    width: 12px;
    height: 12px;
    margin-right: 4px;
  }

  .aux-issuer .seo-issuer-table thead th:nth-child(3),
  .aux-stocks .seo-stocks-table thead th:nth-child(2),
  .aux-stocks .seo-stocks-table thead th:nth-child(4),
  .aux-stocks .seo-stocks-table thead th:nth-child(6) { display: none; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(1),
  .aux-stocks .seo-stocks-table tbody td:nth-child(1) { grid-column: 1; grid-row: 1; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(5),
  .aux-stocks .seo-stocks-table tbody td:nth-child(7) {
    grid-column: 2;
    grid-row: 1;
    text-align: right !important;
    color: var(--aux-navy);
    font-size: 14px;
    font-weight: 740;
    white-space: nowrap;
  }
  .aux-issuer .seo-issuer-table tbody td:nth-child(5) .seo-cell-label,
  .aux-stocks .seo-stocks-table tbody td:nth-child(7) .seo-cell-label { text-align: right; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(2) { grid-column: 1; grid-row: 2; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(4) { grid-column: 2; grid-row: 2; text-align: right !important; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(4) .seo-cell-label { text-align: right; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(3) { grid-column: 1 / -1; grid-row: 3; padding-top: 9px; border-top: 1px solid var(--aux-line); }
  .aux-issuer .seo-issuer-table tbody td:nth-child(3) .seo-cell-label { margin-bottom: 5px; }
  .aux-issuer .seo-issuer-table tbody td:nth-child(2) .sym { overflow-wrap: anywhere; }

  .aux-stocks .seo-stocks-table tbody td:nth-child(2) { display: none; }
  .aux-stocks .seo-mobile-region {
    display: inline-block;
    margin: 5px 0 0 32px;
    color: #8090a8;
    font-size: 10px;
  }
  .aux-stocks .seo-stocks-table tbody td:nth-child(3) { grid-column: 1; grid-row: 2; }
  .aux-stocks .seo-stocks-table tbody td:nth-child(5) { grid-column: 2; grid-row: 2; text-align: right !important; }
  .aux-stocks .seo-stocks-table tbody td:nth-child(5) .seo-cell-label { text-align: right; }
  .aux-stocks .seo-stocks-table tbody td:nth-child(4) { grid-column: 1 / -1; grid-row: 3; padding-top: 9px; border-top: 1px solid var(--aux-line); }
  .aux-stocks .seo-stocks-table tbody td:nth-child(6) { grid-column: 1 / -1; grid-row: 4; }
  .aux-stocks .seo-stocks-table tbody td:nth-child(6) .pill { margin-right: 4px; }
  .aux-stocks .seo-pager { justify-content: flex-start; gap: 6px; margin-top: 25px; }
  .aux-stocks .seo-pager a,
  .aux-stocks .seo-pager span { min-width: 34px; min-height: 34px; padding: 0 9px; font-size: 11px; }
}

/* v2-core.css */
/* okexc editorial shell. */
:root,
:root:not([data-theme="light"]),
:root[data-theme="dark"] {
  --v2-page-bg: #f9f9f7;
  --bg: var(--v2-page-bg);
  --surface: #fff;
  --surface-2: #f8fbff;
  --border: #e5edf7;
  --text: #122143;
  --muted: #557098;
  --accent: #176bd8;
  --accent-ink: #fff;
  --spot-bg: #f1f7ff;
  --spot-ink: #315f99;
  --perp-bg: #f3f8ff;
  --perp-ink: #416b9d;
  --chain-bg: #f1f8f5;
  --chain-ink: #47816b;
  --warn-bg: #fff9ed;
  --warn-ink: #8f6b33;
  --shadow: none;
  --v2-ink: #102043;
  --v2-text: #365a89;
  --v2-muted: #7890ad;
  --v2-line: #e6eef8;
  --v2-blue: #176bd8;
  --v2-sidebar-width: 232px;
  color-scheme: light;
}
html { scroll-behavior: smooth; }
body.v2-body {
  overflow-x: clip;
  background: linear-gradient(to right, var(--v2-page-bg) 50%, #fff 50%);
  color: var(--v2-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 14px;
  line-height: 1.55;
}
body.v2-body a { color: var(--v2-blue); }
body.v2-body a:focus-visible,
body.v2-body button:focus-visible,
body.v2-body select:focus-visible,
body.v2-body summary:focus-visible {
  outline: 2px solid var(--v2-blue);
  outline-offset: 3px;
}
body.v2-body input:focus-visible {
  outline: none;
  box-shadow: none;
  border-color: var(--v2-blue);
}
.v2-shell {
  display: grid;
  grid-template-columns: var(--v2-sidebar-width) minmax(0, 1fr);
  min-height: 100vh;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  background: #fff;
  transition: grid-template-columns .2s ease;
}
.v2-content-frame { position: relative; min-width: 0; }
.v2-sticky-trigger {
  position: absolute;
  top: 40px;
  width: 1px;
  height: 1px;
  pointer-events: none;
}
.v2-sticky-header {
  position: sticky;
  top: 0;
  z-index: 45;
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 64px;
  padding: 12px 30px 12px 48px;
  border-bottom: 1px solid #f1f4f7;
  background: #fff;
}
.v2-sticky-header.is-stuck {
  min-height: 36px;
  padding-top: 1px;
  padding-bottom: 1px;
}
.v2-sticky-header .v2-header-crumbs {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  margin: 0;
  color: var(--v2-text);
  font-size: 14px;
  white-space: nowrap;
}
.v2-sticky-header .v2-header-crumbs a { color: var(--v2-text); font-weight: 600; }
.v2-sticky-header .v2-header-crumbs a:hover { color: var(--v2-blue); text-decoration: none; }
.v2-sticky-header .v2-header-crumbs span[aria-hidden] { color: #a6b9d0; }
.v2-header-crumbs .v2-current-crumb { overflow: hidden; max-width: min(36vw, 420px); text-overflow: ellipsis; }
.v2-sticky-header .v2-top-utilities {
  position: relative;
  top: auto;
  right: auto;
  z-index: 1;
  flex: 0 0 auto;
}
.v2-content-frame.v2-has-sticky-header > .v2-main { padding-top: 24px; }
.v2-has-sticky-header .v2-main [id] { scroll-margin-top: 80px; }
.v2-content-frame > .v2-main {
  width: 100%;
  max-width: none;
  min-width: 0;
  min-height: 74vh;
  margin: 0;
  padding: 30px 30px 58px 48px;
  background: #fff;
}
.v2-sidebar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: var(--v2-sidebar-width);
  height: 100dvh;
  min-height: 650px;
  padding: 40px 20px 28px 36px;
  background: var(--v2-page-bg);
  color: var(--v2-text);
  transition: width .2s ease, padding .2s ease;
}
.v2-brand,
.v2-mobile-brand { display: block; width: max-content; color: inherit !important; }
.v2-sidebar-top { position: relative; }
.v2-brand:hover,
.v2-mobile-brand:hover { text-decoration: none; }
.v2-brand-crop {
  position: relative;
  display: block;
  overflow: hidden;
  width: 88px;
  height: 23px;
}
.v2-brand-crop img {
  display: block;
  width: 88px;
  max-width: none;
  height: auto;
}
.v2-tagline {
  margin: 12px 0 0;
  line-height: 1.45;
  letter-spacing: .015em;
}
.v2-tagline span { display: block; }
.v2-tagline-primary { color: #29496e; font-size: 13px; font-weight: 600; }
.v2-tagline-secondary { margin-top: 2px; color: #788ba2; font-size: 12px; font-weight: 400; }
.v2-nav {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-top: 26px;
}
.v2-nav a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 17px;
  min-height: 56px;
  width: 100%;
  color: #365a89 !important;
  font-size: 15px;
  font-weight: 560;
  letter-spacing: .015em;
  white-space: nowrap;
  transition: color .15s ease;
}
.v2-nav a:hover,
.v2-nav a[aria-current="page"] { color: #0669de !important; text-decoration: none; }
.v2-nav a[aria-current="page"] { font-weight: 690; }
.v2-icon {
  display: inline-block;
  flex: 0 0 auto;
  width: 23px;
  height: 23px;
  background-color: currentColor;
  -webkit-mask: var(--v2-icon-url) center / contain no-repeat;
  mask: var(--v2-icon-url) center / contain no-repeat;
}
.v2-icon-home { --v2-icon-url: url("/static/icons/ui/home.svg"); }
.v2-icon-stocks { --v2-icon-url: url("/static/icons/ui/chart-line.svg"); }
.v2-icon-venues { --v2-icon-url: url("/static/icons/ui/building-bank.svg"); }
.v2-icon-rankings { --v2-icon-url: url("/static/icons/ui/chart-bar.svg"); }
.v2-icon-about { --v2-icon-url: url("/static/icons/ui/file-description.svg"); }
.v2-icon-world { --v2-icon-url: url("/static/icons/ui/world.svg"); }
.v2-icon-language { --v2-icon-url: url("/static/icons/ui/language.svg"); }
.v2-icon-collapse { --v2-icon-url: url("/static/icons/ui/chevrons-left.svg"); }
.v2-icon-menu { --v2-icon-url: url("/static/icons/ui/menu-2.svg"); }
.v2-icon-search { --v2-icon-url: url("/static/icons/ui/search.svg"); }
.v2-icon-chevron { --v2-icon-url: url("/static/icons/ui/chevron-down.svg"); }
.v2-heading-icon { width: 21px; height: 21px; margin-right: 9px; color: #5d85b4; vertical-align: -2px; }
.v2-top-utilities {
  position: absolute;
  top: 23px;
  right: 30px;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 17px;
  min-width: 0;
  color: var(--v2-text);
  font-size: 12px;
  white-space: nowrap;
}
.v2-lang-menu summary {
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: inherit;
  font-size: inherit;
  gap: 4px;
}
.v2-lang-menu {
  position: relative;
  font-size: 12px;
}
.v2-lang-menu summary:hover,
.v2-lang-menu[open] summary { border-color: transparent; color: var(--v2-blue); }
.v2-lang-menu .v2-icon { width: 13px; height: 13px; }
.v2-lang-menu ul {
  top: calc(100% + 6px);
  right: 0;
  bottom: auto;
  left: auto;
  border: 1px solid var(--v2-line);
  border-radius: 5px;
  background: #fff;
  box-shadow: none;
}
.v2-body .v2-lang-menu li a {
  color: var(--v2-text);
  font-weight: 400;
  border-radius: 3px;
}
.v2-body .v2-lang-menu li a:is(:hover, :focus-visible),
.v2-body .v2-lang-menu li a[aria-current="true"] {
  color: var(--v2-blue);
  background: #f0f6fd;
  text-decoration: none;
}
.v2-body .v2-lang-menu li a[aria-current="true"] { font-weight: 600; }
.v2-region-label { display: inline-flex; align-items: center; min-width: 0; }
.v2-region-menu { position: relative; min-width: 0; }
.v2-region-menu summary {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 32px;
  padding: 0;
  list-style: none;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 12px;
  cursor: pointer;
}
.v2-region-menu summary::-webkit-details-marker { display: none; }
.v2-region-menu summary:hover,
.v2-region-menu[open] summary { color: var(--v2-blue); }
.v2-region-menu .v2-icon { width: 13px; height: 13px; }
.v2-region-heading { color: var(--v2-muted); }
.v2-region-dot { color: #b9c8d6; }
[data-region-current] { font-weight: 600; }
.v2-region-menu ul {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  bottom: auto;
  z-index: 45;
  width: max-content;
  min-width: 146px;
  max-height: min(360px, 60vh);
  overflow-y: auto;
  margin: 0;
  padding: 5px;
  list-style: none;
  border: 1px solid var(--v2-line);
  border-radius: 5px;
  background: #fff;
  box-shadow: none;
}
.v2-region-menu:not([open]) ul { display: none; }
.v2-region-menu li { margin: 0; padding: 0; }
.v2-region-menu li button {
  display: block;
  width: 100%;
  padding: 7px 10px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: var(--v2-text);
  font: inherit;
  font-size: 12px;
  line-height: 1.4;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}
.v2-region-menu li button:hover,
.v2-region-menu li button[aria-pressed="true"] { background: #f0f6fd; color: var(--v2-blue); }
.v2-sidebar-toggle {
  position: absolute;
  top: -4.5px;
  right: -6px;
  display: grid;
  place-items: center;
  width: 28px;
  height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #b9c8d6;
  cursor: pointer;
}
.v2-sidebar-toggle:hover { color: #8fa7bf; }
.v2-sidebar-toggle .v2-icon { width: 18px; height: 18px; }
body.v2-sidebar-collapsed { --v2-sidebar-width: 73px; }
.v2-sidebar-collapsed .v2-sidebar { padding-left: 22px; padding-right: 12px; }
.v2-sidebar-collapsed .v2-sidebar .v2-brand-crop { width: 25px; }
.v2-sidebar-collapsed .v2-tagline,
.v2-sidebar-collapsed .v2-nav-label { display: none; }
.v2-sidebar-collapsed .v2-nav { margin-top: 55px; }
.v2-sidebar-collapsed .v2-nav a { width: 32px; }
.v2-sidebar-collapsed .v2-sidebar-toggle { top: 50px; right: auto; left: 0; }
.v2-sidebar-collapsed .v2-sidebar-toggle .v2-icon { transform: rotate(180deg); }

/* Labels remain available when desktop navigation is reduced to icons. */
.v2-sidebar-tip { display: none; }
@media (min-width: 901px) {
  .v2-sidebar-tip {
    position: absolute;
    top: 50%;
    left: calc(100% + 12px);
    z-index: 100;
    display: block;
    width: max-content;
    padding: 8px 12px;
    border: 1px solid #dce7f2;
    border-radius: 5px;
    background: #fff;
    color: #365a89;
    font: 500 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
    white-space: nowrap;
    transform: translateY(-50%);
    visibility: hidden;
    opacity: 0;
  }
  .v2-sidebar-tip::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    width: 14px;
    height: 100%;
  }
  .v2-sidebar-collapsed .v2-nav a:not(.v2-tip-dismissed):is(:hover, :focus-visible) > .v2-sidebar-tip {
    visibility: visible;
    opacity: 1;
  }
}

/* Shared table and content refinements. */
.v2-body .suggest,
.v2-body .tip { box-shadow: none; }
.v2-main .table-wrap { border-color: var(--v2-line); box-shadow: none; }
.v2-main .grid th,
.v2-main .grid td { border-bottom-color: var(--v2-line); }
.v2-main .grid tbody tr:hover { background: #fafcff; }
.v2-main .sicon { background: #fff; object-fit: contain; }
.v2-main .pill.spot { background: #f1f7ff; color: #37639a; }
.v2-main .pill.perp { background: #f3f8ff; color: #5577a2; }
.v2-main .pill.chain { background: #eef8f5; color: #4b836c; }
.v2-main .none { color: #a8b7cb; }
.v2-main .ex::before { background-color: #fff; }
.v2-main .hint { color: var(--v2-muted); }

.v2-footer {
  margin: 0 30px 0 48px;
  padding: 36px 0 22px;
  border-top: 1px solid var(--v2-line);
  background: #fff;
  color: var(--v2-muted);
  font-size: 12px;
  line-height: 1.65;
}
.v2-footer p { margin: 0; }
.v2-footer-main {
  display: grid;
  grid-template-columns: minmax(240px, .85fr) minmax(0, 1.65fr);
  gap: clamp(28px, 4vw, 64px);
  align-items: start;
  padding-bottom: 28px;
}
.v2-footer-brand {
  margin-bottom: 12px !important;
}
.v2-footer-logo { display: inline-flex; align-items: center; flex: none; }
.v2-footer .disclaimer { max-width: 520px; color: var(--v2-muted); font-size: 12px; line-height: 1.8; }
.v2-footer a { color: var(--v2-text) !important; }
.v2-footer a:hover { color: var(--v2-blue) !important; }
.v2-footer-links { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.15fr) minmax(0, .9fr); gap: 24px; align-items: start; }
.v2-footer-link-group { min-width: 0; }
.v2-footer-group-items { display: grid; gap: 8px; justify-items: start; }
.v2-footer-explore .v2-footer-group-items { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; }
.v2-footer-group-items a { overflow-wrap: anywhere; }
.v2-footer .v2-footer-heading { margin-bottom: 14px; color: var(--v2-muted); font-size: 11px; font-weight: 600; letter-spacing: .06em; }
.v2-footer-link-group a { font-size: 12px; line-height: 1.5; text-decoration: none; }
.v2-footer-secondary { padding-top: 20px; border-top: 1px solid var(--v2-line); }
.v2-footer .v2-footer-affiliate { max-width: 1000px; margin-bottom: 12px; color: var(--v2-muted); font-size: 11px; }
.v2-footer-venues { display: flex; align-items: baseline; gap: 18px; }
.v2-footer-venues > span { flex: 0 0 auto; color: var(--v2-muted); font-size: 11px; }
.v2-footer-venues > div { display: flex; flex-wrap: wrap; column-gap: 6px; row-gap: 3px; }
.v2-footer-venues a { font-size: 11px; text-decoration: none; }
.v2-footer-dot { color: #b9c8d6; }
.v2-footer-base { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 26px; padding-top: 16px; border-top: 1px solid var(--v2-line); }
.v2-footer-status { color: var(--v2-muted); font-size: 11px; }
.v2-footer-status .st { padding: 0; border: 0; background: transparent; font-size: 10px; }
.v2-footer-copy { flex: 0 0 auto; color: var(--v2-muted); font-size: 11px; }
.v2-mobile-bar,
.v2-mobile-backdrop { display: none; }

@media (max-width: 1200px) {
  .v2-footer-main { grid-template-columns: 1fr; gap: 26px; }
  .v2-footer .disclaimer { max-width: 680px; }
}
@media (max-width: 1080px) {
  :root,
  :root:not([data-theme="light"]),
  :root[data-theme="dark"] { --v2-sidebar-width: 198px; }
  .v2-sidebar { padding-left: 23px; }
  .v2-top-utilities { right: 24px; }
  .v2-sticky-header { padding-left: 36px; padding-right: 24px; }
  .v2-content-frame > .v2-main { padding-left: 36px; padding-right: 24px; }
  .v2-footer { margin-left: 36px; margin-right: 24px; }
  .v2-footer-main { gap: 28px; }
}
@media (max-width: 900px) {
  :root,
  :root:not([data-theme="light"]),
  :root[data-theme="dark"] { --v2-sidebar-width: 0px; }
  body.v2-body { padding-top: 58px; }
  body.v2-sidebar-collapsed { --v2-sidebar-width: 0px; }
  .v2-shell { display: block; }
  .v2-mobile-bar {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 49;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    justify-content: space-between;
    height: 58px;
    padding: 0 15px;
    border-bottom: 1px solid var(--v2-line);
    background: rgba(255,255,255,.97);
  }
  .v2-mobile-toggle,
  .v2-mobile-search {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--v2-text) !important;
  }
  .v2-mobile-brand { justify-self: center; }
  .v2-mobile-actions { display: flex; align-items: center; justify-content: flex-end; gap: 5px; min-width: 0; }
  .v2-mobile-lang summary { display: inline-flex; align-items: center; gap: 3px; min-height: 36px; height: 36px; white-space: nowrap; }
  .v2-mobile-lang .v2-icon { width: 12px; height: 12px; }
  .v2-top-utilities > .v2-lang-menu { display: none; }
  .v2-mobile-brand .v2-brand-crop { width: 80px; height: 22px; }
  .v2-mobile-brand .v2-brand-crop img { width: 80px; }
  .v2-sidebar,
  .v2-sidebar-collapsed .v2-sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 51;
    width: 250px;
    height: 100dvh;
    min-height: 0;
    padding: 24px 26px 25px 30px;
    transform: translateX(-102%);
    transition: transform .2s ease;
    box-shadow: none;
  }
  .v2-mobile-open .v2-sidebar { transform: translateX(0); }
  .v2-mobile-open .v2-mobile-backdrop {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: block;
    background: rgba(10, 29, 57, .18);
  }
  .v2-top-utilities {
    position: relative;
    top: auto;
    right: auto;
    z-index: 40;
    min-height: 44px;
    padding: 0 16px;
    gap: 15px;
  }
  .v2-top-utilities summary { min-height: 44px; }
  .v2-sticky-header {
    top: 58px;
    margin-top: 0;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    min-height: 0;
    padding: 8px 16px;
  }
  .v2-sticky-trigger { top: 12px; }
  .v2-sticky-header.is-stuck { padding-top: 4px; padding-bottom: 4px; }
  .v2-sticky-header .v2-header-crumbs { flex: 1 1 auto; min-width: 0; gap: 8px; overflow: hidden; font-size: 12px; white-space: nowrap; }
  .v2-sticky-header .v2-header-crumbs a,
  .v2-sticky-header .v2-header-crumbs span[aria-hidden] { flex: 0 0 auto; }
  .v2-sticky-header .v2-header-crumbs .v2-current-crumb { min-width: 0; }
  .v2-header-crumbs .v2-current-crumb { max-width: 44vw; }
  .v2-sticky-header .v2-top-utilities { flex: 0 0 auto; justify-content: flex-end; min-height: 34px; padding: 0; gap: 8px; }
  .v2-sticky-header .v2-top-utilities summary { min-height: 34px; }
  .v2-content-frame.v2-has-sticky-header > .v2-main { padding-top: 20px; }
  .v2-has-sticky-header .v2-main [id] { scroll-margin-top: 140px; }
  .v2-sidebar-collapsed .v2-sidebar .v2-brand-crop { width: 88px; }
  .v2-sidebar-collapsed .v2-tagline,
  .v2-sidebar-collapsed .v2-nav-label { display: initial; }
  .v2-sidebar-collapsed .v2-nav { margin-top: 26px; }
  .v2-sidebar-collapsed .v2-nav a { width: 100%; }
  .v2-sidebar-collapsed .v2-sidebar-toggle { top: -4.5px; right: -6px; left: auto; }
  .v2-sidebar-collapsed .v2-sidebar-toggle .v2-icon { transform: none; }
  .v2-content-frame > .v2-main { padding: 16px 16px 48px; }
  .v2-footer { margin: 0 16px; }
  .v2-footer-main { grid-template-columns: 1fr; gap: 30px; }
  .v2-footer .disclaimer { max-width: 680px; }
}
@media (max-width: 580px) {
  .v2-sticky-header .v2-region-heading,
  .v2-sticky-header .v2-region-dot { display: none; }
  .v2-footer { padding-top: 30px; }
  .v2-footer-main { padding-bottom: 24px; gap: 24px; }
  .v2-footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
  .v2-footer-explore { grid-column: 1 / -1; }
  .v2-footer-group-items { gap: 6px; }
  .v2-footer-link-group a { display: inline-flex; align-items: center; min-height: 30px; }
  .v2-footer .v2-footer-heading { margin-bottom: 10px; }
  .v2-footer-venues { display: block; }
  .v2-footer-venues > span { display: block; margin-bottom: 6px; }
  .v2-footer-base { align-items: flex-start; flex-direction: column; gap: 8px; }
}
@media (max-width: 360px) {
  .v2-mobile-lang summary { justify-content: center; width: 36px; }
  .v2-mobile-lang .v2-utility-label,
  .v2-mobile-lang .v2-icon-chevron { display: none; }
  .v2-mobile-lang .v2-icon-language { width: 16px; height: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .v2-shell,
  .v2-sidebar { transition: none; }
}

/* v2-home.css */
/* Homepage adaptation of the approved C visual. */
.v2-content-frame > .v2-main:has(.home-page) { padding-top: 37px; }
.v2-main .home-page { color: var(--v2-text); }
.v2-main .home-page .home-hero {
  position: relative;
  width: 100%;
  min-height: 360px;
  margin: 0;
  overflow: visible;
  border: 0;
  background: #fff;
}
.v2-main .home-page .home-hero::before {
  content: "";
  position: absolute;
  inset: -100px -29px 0 auto;
  z-index: 0;
  width: min(64%, 790px);
  height: 460px;
  pointer-events: none;
  opacity: .82;
  background: url("/static/hero-globe-v2.webp") right top / 760px auto no-repeat;
}
html[lang="en"] .v2-main .home-page .home-hero::before {
  background-image: url("/static/hero-globe-en-v2.webp");
}
.v2-main .home-page .home-hero.is-animated::before { opacity: 0; }
.v2-main .home-globe-motion {
  position: absolute;
  inset: -100px -29px auto auto;
  z-index: 0;
  width: min(64%, 790px);
  height: 460px;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
}
.v2-main .home-page .home-hero.is-animated .home-globe-motion {
  visibility: visible;
  opacity: .82;
}
.v2-main .home-globe-canvas { display: block; width: 100%; height: 100%; }
.v2-main .home-globe-caption {
  position: absolute;
  top: 55%;
  left: 66%;
  display: flex;
  flex-direction: column;
  width: max-content;
  color: #244c71;
  font-family: "STKaiti", "Kaiti SC", "KaiTi", "Songti SC", serif;
  font-size: 29px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: 1.25;
  white-space: nowrap;
  transform: rotate(-8deg);
  transform-origin: left top;
}
html[lang="en"] .v2-main .home-globe-caption {
  font-family: "Bradley Hand", "Segoe Print", "Snell Roundhand", cursive;
  font-size: 27px;
  font-weight: 600;
  letter-spacing: -.045em;
  transform: rotate(-8deg) scaleX(.82);
}
.v2-main .home-globe-caption i {
  width: 86%;
  height: 11px;
  margin: 3px 0 0 11%;
  border-top: 2px solid #4388c6;
  border-radius: 50%;
  transform: rotate(-5deg);
}
.v2-main .home-hero-inner {
  position: relative;
  z-index: 1;
  align-items: flex-start;
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: 0;
}
.v2-main .home-hero-copy { width: 100%; }
.v2-main .home-onchain-entry {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 9px;
  width: fit-content;
  max-width: 100%;
  margin: 8px 0 20px;
  color: var(--v2-text);
  font-size: 12px;
  line-height: 1.6;
  text-decoration: none;
}
.v2-main .home-onchain-entry strong { color: var(--v2-ink); font-weight: 600; }
.v2-main .home-onchain-entry .v2-icon { width: 15px; height: 15px; flex-shrink: 0; }
.v2-main .home-onchain-entry:hover strong { color: #1769c2; }
.v2-main .home-onchain-entry:focus-visible { outline: 2px solid #7cace2; outline-offset: 5px; border-radius: 3px; }
.v2-home-kicker {
  margin: 0 0 24px;
  color: #3b6193;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .15em;
  line-height: 1.2;
}
.v2-main .home-page .home-hero h1 {
  max-width: 710px;
  margin: 0 0 9px;
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-size: clamp(38px, 3.25vw, 50px);
  font-weight: 700;
  line-height: 1.13;
  letter-spacing: -.055em;
}
.v2-main .home-page .home-hero h1.is-typing { position: relative; }
.home-title-baseline { color: transparent; }
.home-title-overlay { position: absolute; inset: 0; display: block; color: var(--v2-ink); pointer-events: none; }
.home-title-caret { border-right: 2px solid #7894b5; margin-left: 1px; animation: home-title-caret-blink .75s step-end infinite; }
@keyframes home-title-caret-blink { 50% { border-color: transparent; } }
.v2-main .home-hero-lead {
  max-width: 750px;
  margin: 0 0 20px;
  color: #4f5660;
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .03em;
}
.v2-main .home-page .home-search {
  display: flex;
  align-items: center;
  width: min(100%, 795px);
  max-width: none;
  height: 57px;
  padding: 0;
  border: 1px solid #cfdef0;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
}
.v2-main .home-page .home-search:focus-within {
  border-color: var(--v2-blue);
  box-shadow: none;
}
.v2-main .home-search-icon {
  width: 19px;
  height: 19px;
  margin: 0 15px 0 19px;
  color: #5275a2;
}
.v2-main .home-page .home-search input {
  min-width: 0;
  padding: 0 4px;
  color: var(--v2-ink);
  font-family: inherit;
  font-size: 15px;
}
.v2-main .home-page .home-search input::placeholder { color: #6381a9; }
.v2-main .home-page .home-search button {
  width: 111px;
  height: 57px;
  margin: -1px -1px -1px 7px;
  border: 0;
  border-radius: 3px;
  background: #3f789f;
  box-shadow: none;
  color: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
}
.v2-main .home-page .home-search button:hover { background: #2d678f; }
.v2-main .home-page .home-search .suggest {
  top: calc(100% + 4px);
  border: 1px solid var(--v2-line);
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
}
.v2-main .home-metrics {
  display: grid;
  grid-template-columns: 25% 28% 27% 20%;
  align-items: baseline;
  width: min(100%, 795px);
  gap: 0;
  margin: 20px 0 0;
}
.v2-main .home-metric,
.v2-main .home-metric:first-child {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  width: auto;
  padding: 0;
  border: 0;
}
.v2-main .home-metric b {
  display: inline;
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.2;
}
.v2-main .home-metric span {
  display: inline;
  margin: 0;
  color: var(--v2-ink);
  font-size: 13px;
  font-weight: 550;
  white-space: nowrap;
}
.v2-main .home-market-line {
  position: static;
  display: flex;
  justify-content: flex-start;
  gap: 5px;
  max-width: 795px;
  margin: 18px 0 0;
  color: var(--v2-muted);
  font-size: 11px;
  text-align: left;
}
.v2-main .home-market-line .period { color: var(--v2-muted); font-size: 11px; font-weight: 450; }
.v2-main .home-market-line .period i { width: 6px; height: 6px; }
.v2-main .home-market-note::before { margin-right: 5px; }
.v2-main .home-catalog { padding-top: 31px; }
.v2-main .home-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px 17px;
  margin: 0 0 13px;
}
.v2-main .home-page .home-toolbar h2,
.v2-main .home-page .home-section-heading h2 {
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-weight: 700;
  letter-spacing: -.045em;
}
.v2-main .home-page .home-toolbar h2 {
  flex: 0 0 auto;
  margin: 0 auto 0 0;
  font-size: 34px;
  line-height: 1.16;
}
.v2-main .home-chips {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
  max-width: 100%;
}
.v2-main .home-page .home-chips .chip {
  position: relative;
  flex: 0 0 auto;
  min-height: 33px;
  padding: 4px 9px 7px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 450;
}
.v2-main .home-page .home-chips .chip + .chip::before {
  content: "/";
  position: absolute;
  top: 5px;
  left: -3px;
  color: #98acc6;
  font-weight: 400;
}
.v2-main .home-page .home-chips .chip:hover,
.v2-main .home-page .home-chips .chip.on {
  color: #0869da;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.v2-main .home-page .home-chips .chip.on::after {
  content: "";
  position: absolute;
  right: 8px;
  bottom: 0;
  left: 8px;
  height: 2px;
  background: #176bd8;
}
.v2-main .home-page .home-filter {
  width: 135px;
  height: 33px;
  margin: 0 0 2px;
  padding: 0 8px;
  border: 0;
  border-bottom: 1px solid var(--v2-line);
  border-radius: 0;
  background: #fff;
  color: var(--v2-ink);
  font-size: 12px;
}
.v2-main .home-page .home-filter:focus { border-bottom-color: var(--v2-blue); }
.v2-main .home-page .home-table-wrap {
  overflow-x: auto;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.v2-main .home-table {
  width: 100%;
  min-width: 1020px;
  table-layout: auto;
  color: var(--v2-text);
  font-size: 13px;
}
.v2-main .home-table tbody tr[data-home-hidden] { display: none; }
.v2-main .home-table th,
.v2-main .home-table td {
  height: 39px;
  padding: 6px 8px;
  border-bottom: 1px solid var(--v2-line);
  color: var(--v2-text);
  background: #fff;
  font-size: 15px;
  font-weight: 450;
  line-height: 1.35;
}
.v2-main .home-table th {
  height: 32px;
  padding-top: 0;
  padding-bottom: 7px;
  color: #43679a;
  font-size: 14px;
  font-weight: 560;
}
.v2-main .home-table th:first-child,
.v2-main .home-table td:first-child { padding-left: 0; }
.v2-main .home-table th:last-child,
.v2-main .home-table td:last-child { padding-right: 0; }
.v2-main .home-table tr:hover td { background: #fbfdff; }
.v2-main .home-table th:nth-child(1) { width: 18%; }
.v2-main .home-table th:nth-child(2) { width: 6%; }
.v2-main .home-table th:nth-child(3) { width: 11%; }
.v2-main .home-table th:nth-child(4) { width: 10%; }
.v2-main .home-table th:nth-child(5) { width: 22%; }
.v2-main .home-table th:nth-child(6) { width: 11%; }
.v2-main .home-table th:nth-child(7) { width: 10%; }
.v2-main .home-table th:nth-child(8) { width: 12%; }
.v2-main .home-table .home-trend-heading,
.v2-main .home-table .home-trend-cell { text-align: center; }
.v2-main .home-sparkline { display: inline-flex; width: 96px; height: 28px; align-items: center; justify-content: center; vertical-align: middle; border-radius: 3px; }
.v2-main .home-sparkline:hover { background: #f5f8fc; text-decoration: none; }
.v2-main .home-sparkline svg { display: block; width: 96px; height: 28px; overflow: visible; }
.v2-main .home-sparkline path { fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.v2-main .home-sparkline circle { fill: currentColor; }
.v2-main .home-sparkline[data-direction="up"] { color: #239a71; }
.v2-main .home-sparkline[data-direction="down"] { color: #e06470; }
.v2-main .home-sparkline[data-direction="flat"] { color: #8a9eb7; }
.v2-main .home-table .tk { gap: 8px; }
.v2-main .home-table .sicon { width: 25px; height: 25px; border-radius: 3px; }
.v2-main .home-table .tk-t { display: flex; flex-wrap: nowrap; gap: 8px; }
.v2-main .home-table .tk b { color: var(--v2-ink); font-size: 14px; }
.v2-main .home-table .tk-t > span { max-width: 110px; color: var(--v2-text); font-size: 13px; }
.v2-main .home-table .home-price,
.v2-main .home-table .home-volume { color: var(--v2-text); font-size: 15px; font-weight: 450; }
.v2-main .home-table .venues-cell,
.v2-main .home-table .home-chain-cell { white-space: normal; }
.v2-main .home-table .pill {
  padding: 0;
  margin: 0 10px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 450;
  white-space: nowrap;
}
.v2-main .home-table .pill.spot,
.v2-main .home-table .pill.perp,
.v2-main .home-table .pill.chain {
  border: 0;
  background: transparent;
  color: var(--v2-text);
}
.v2-main .home-table .pill.ex::before { width: 14px; height: 14px; margin-right: 4px; vertical-align: -3px; }
.v2-main .home-table .venues-cell a.pill,
.v2-main .home-table .home-chain-cell a.pill { text-decoration: none; }
.v2-main .home-table .venues-cell a.pill:hover,
.v2-main .home-table .venues-cell a.pill:focus-visible,
.v2-main .home-table .home-chain-cell a.pill:hover,
.v2-main .home-table .home-chain-cell a.pill:focus-visible { color: var(--v2-blue); text-decoration: underline; text-underline-offset: 3px; }
.v2-main .home-table .tag { border: 0; background: none; color: var(--v2-muted); }
.v2-main .home-sort-hint { margin-top: 7px; color: var(--v2-muted); font-size: 11px; }
.v2-home-table-foot { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.v2-home-table-foot a { flex: none; color: var(--v2-blue); font-size: 12px; }
.v2-home-lower {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 52px;
  margin-top: 36px;
}
.v2-main .home-latest,
.v2-main .home-guide { min-width: 0; margin: 0; }
.v2-main .home-section-heading {
  display: flex;
  align-items: baseline;
  margin: 0 0 22px;
}
.v2-main .home-eyebrow { display: none; }
.v2-main .home-page .home-section-heading h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1.2;
}
.v2-main .home-section-heading > a {
  color: var(--v2-blue);
  font-size: 12px;
  font-weight: 500;
}
.v2-main .home-latest-grid { display: block; }
.v2-home-latest-empty { max-width: 420px; margin: 12px 0 0; color: var(--v2-text); font-size: 13px; line-height: 1.7; }
.v2-main .home-page .home-latest-card {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  color: var(--v2-text);
  font-size: 12px;
}
.v2-main .home-page .home-latest-card:hover { box-shadow: none; transform: none; }
.v2-main .home-latest-card .card-t { flex: 0 0 130px; gap: 5px; color: var(--v2-ink); font-size: 12px; }
.v2-main .home-latest-card .sicon { width: 16px; height: 16px; border-radius: 2px; }
.v2-main .home-page .home-latest-type {
  overflow: hidden;
  margin: 0;
  color: var(--v2-text);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v2-main .home-page .home-latest-card small { display: none; }
.v2-main .home-latest-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 12px;
  color: var(--v2-blue);
  font-size: 12px;
  font-weight: 600;
}
.v2-main .home-latest-more .v2-icon { width: 13px; height: 13px; }
.v2-main .home-guide-grid { display: block; }
.v2-main .home-guide-card {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 0 10px;
  padding: 0 0 18px;
  border: 0;
  border-radius: 0;
  background: #fff;
}
.v2-main .home-guide-label { grid-row: 1 / span 2; color: var(--v2-ink); font-size: 12px; font-weight: 500; }
.v2-main .home-guide-card h3 { margin: 0 0 8px; color: var(--v2-ink); font-size: 13px; font-weight: 560; }
.v2-main .home-guide-card p { margin: 0; color: var(--v2-text); font-size: 12px; line-height: 1.5; }
.v2-main .home-compare {
  margin-top: 12px;
  padding: 14px 16px 12px;
  border: 1px solid #e2ebf7;
  border-radius: 10px;
  background: #f8fbff;
}
.v2-main .home-compare h3 { margin: 0 0 7px; color: var(--v2-ink); font-size: 14px; font-weight: 650; }
.v2-main .home-compare-table { width: 100%; border-collapse: collapse; table-layout: fixed; color: var(--v2-text); font-size: 12px; line-height: 1.45; }
.v2-main .home-compare-table th,
.v2-main .home-compare-table td { padding: 5px 8px; border-bottom: 1px solid #e5edf7; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.v2-main .home-compare-table th:first-child { width: 78px; padding-left: 0; }
.v2-main .home-compare-table th { color: var(--v2-ink); font-weight: 650; }
.v2-main .home-compare-table tr:last-child > * { border-bottom: 0; }
.v2-main .home-compare p { margin: 8px 0 0; color: var(--v2-muted); font-size: 11px; line-height: 1.5; }
.v2-main .home-next { margin-top: 38px; }
.v2-main .home-page .home-next h2 { margin: 0 0 15px; color: var(--v2-ink); font-size: 22px; line-height: 1.3; }
.v2-main .home-buy-flow {
  display: grid; grid-template-columns: minmax(230px, .8fr) minmax(0, 1.2fr); gap: 28px;
  align-items: center; margin-bottom: 12px; padding: 24px 26px;
  border: 1px solid #dce8f8; border-radius: 12px; background: linear-gradient(120deg, #f5f9ff, #fff 72%);
}
.v2-main .home-buy-kicker { color: var(--v2-blue); font-size: 11px; font-weight: 700; letter-spacing: .12em; }
.v2-main .home-buy-copy h3 { margin: 7px 0 9px; color: var(--v2-ink); font-size: 19px; line-height: 1.35; }
.v2-main .home-buy-copy p { max-width: 38em; margin: 0; color: var(--v2-text); font-size: 13px; line-height: 1.65; }
.v2-main .home-buy-copy > a { display: inline-flex; align-items: center; gap: 5px; margin-top: 13px; color: var(--v2-blue); font-size: 13px; font-weight: 650; text-decoration: none; }
.v2-main .home-buy-copy > a:hover { text-decoration: underline; }
.v2-main .home-buy-copy > a .v2-icon { width: 12px; height: 12px; }
.v2-main .home-buy-diagram { display: grid; gap: 9px; min-width: 0; }
.v2-main .home-buy-start { display: flex; align-items: center; justify-content: center; gap: 10px; }
.v2-main .home-buy-start-step { display: flex; flex: 0 1 190px; align-items: center; gap: 10px; min-width: 0; padding: 8px 11px; border: 1px solid #d7e6f8; border-radius: 8px; background: #fff; }
.v2-main .home-buy-start-step b,
.v2-main .home-buy-finish > b { display: grid; flex: 0 0 27px; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #e9f2ff; color: var(--v2-blue); font-size: 11px; font-weight: 750; }
.v2-main .home-buy-start-step strong { color: var(--v2-ink); font-size: 12px; line-height: 1.35; }
.v2-main .home-buy-flow-arrow { position: relative; flex: 0 0 20px; height: 1px; background: #98b9de; }
.v2-main .home-buy-flow-arrow::after { content: ''; position: absolute; right: 0; top: -3px; width: 6px; height: 6px; border-top: 1px solid #98b9de; border-right: 1px solid #98b9de; transform: rotate(45deg); }
.v2-main .home-buy-branch { color: var(--v2-ink); text-align: center; font-size: 11px; font-weight: 650; }
.v2-main .home-buy-branch span { color: var(--v2-blue); }
.v2-main .home-buy-routes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.v2-main .home-buy-route { display: grid; align-content: center; justify-items: start; gap: 4px; min-width: 0; min-height: 126px; padding: 12px 14px; border: 1px solid #cfe1f6; border-left: 3px solid #4089d8; border-radius: 8px; background: #fff; }
.v2-main .home-buy-route-perp { border-color: #e8d6b2; border-left-color: #ce9341; background: #fffdf8; }
.v2-main .home-buy-route > span { color: var(--v2-blue); font-size: 12px; font-weight: 700; }
.v2-main .home-buy-route-perp > span { color: #95651e; }
.v2-main .home-buy-venue.ex::before { width: 20px; height: 20px; margin-right: 7px; vertical-align: -5px; border-radius: 5px; background-color: #fff; }
.v2-main .home-buy-route strong { color: var(--v2-ink); font-size: 14px; line-height: 1.3; }
.v2-main .home-buy-route small { color: var(--v2-text); font-size: 11px; line-height: 1.45; }
.v2-main .home-buy-route a { display: inline-flex; align-items: center; gap: 4px; margin-top: 5px; color: var(--v2-blue); font-size: 11px; font-weight: 650; line-height: 1.4; text-decoration: none; }
.v2-main .home-buy-route a:hover,
.v2-main .home-buy-route a:focus-visible { text-decoration: underline; }
.v2-main .home-buy-route a .v2-icon { width: 11px; height: 11px; }
.v2-main .home-buy-down { position: relative; justify-self: center; width: 1px; height: 12px; background: #98b9de; }
.v2-main .home-buy-down::after { content: ''; position: absolute; bottom: 0; left: -3px; width: 6px; height: 6px; border-right: 1px solid #98b9de; border-bottom: 1px solid #98b9de; transform: rotate(45deg); }
.v2-main .home-buy-finish { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 10px 13px; border: 1px solid #cfe1f6; border-radius: 8px; background: #edf5ff; }
.v2-main .home-buy-finish > span { display: grid; gap: 2px; min-width: 0; }
.v2-main .home-buy-finish strong { color: var(--v2-ink); font-size: 12px; line-height: 1.35; }
.v2-main .home-buy-finish small { color: var(--v2-text); font-size: 11px; line-height: 1.4; }
.v2-main .home-next-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.v2-main .home-next-links > a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 92px;
  padding: 14px 15px;
  border: 1px solid #e2ebf7;
  border-radius: 10px;
  background: #f9fbff;
  text-decoration: none;
  transition: border-color .15s ease, background-color .15s ease;
}
.v2-main .home-next-links > a:hover,
.v2-main .home-next-links > a:focus-visible { border-color: #a9c5e6; background: #f2f7ff; }
.v2-main .home-next-icon { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border-radius: 8px; background: #eaf3ff; color: var(--v2-blue); }
.v2-main .home-next-icon .v2-icon { width: 19px; height: 19px; }
.v2-main .home-next-copy { display: grid; min-width: 0; gap: 4px; }
.v2-main .home-next-copy strong { color: var(--v2-ink); font-size: 14px; line-height: 1.3; }
.v2-main .home-next-copy small { color: var(--v2-text); font-size: 12px; line-height: 1.4; }
.v2-main .home-next-arrow { flex: 0 0 14px; margin-left: auto; color: #8ba7c6; }
.v2-main .home-loading { padding: 55px 0; }

@media (max-width: 1250px) {
  .v2-main .home-page .home-hero::before { opacity: .45; background-size: 700px auto; }
  .v2-main .home-page .home-hero.is-animated .home-globe-motion { opacity: .45; }
  .v2-main .home-page .home-toolbar h2 { flex-basis: 100%; }
  .v2-main .home-page .home-filter { margin-left: auto; }
}
@media (max-width: 1000px) {
  .v2-main .home-page .home-hero::before { right: -24px; width: 490px; background-size: 620px auto; }
  .v2-main .home-globe-motion { right: -24px; width: 490px; }
  .v2-main .home-globe-caption { font-size: 24px; }
  html[lang="en"] .v2-main .home-globe-caption { font-size: 23px; }
  .v2-main .home-metrics { display: flex; flex-wrap: wrap; gap: 12px 20px; }
  .v2-home-lower { grid-template-columns: 1fr; gap: 28px; }
  .v2-main .home-buy-flow { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 900px) {
  .v2-content-frame > .v2-main:has(.home-page) { padding-top: 26px; }
  .v2-main .home-page .home-table-wrap { margin-right: 0; margin-left: 0; }
  .v2-main .home-page .home-hero { min-height: 0; }
  .v2-main .home-page .home-hero::before { display: none; }
  .v2-main .home-globe-motion { display: none; }
  .v2-main .home-page .home-hero h1 { font-size: clamp(24px, 7.2vw, 32px); line-height: 1.28; }
  .v2-main .home-hero-lead { margin-top: 9px; font-size: 14px; }
  .v2-main .home-page .home-search { height: 52px; }
  .v2-main .home-page .home-search input { font-size: 13px; }
  .v2-main .home-page .home-search button { width: 70px; height: 52px; font-size: 14px; }
  .v2-main .home-search-icon { width: 16px; height: 16px; margin-left: 12px; margin-right: 7px; }
  .v2-main .home-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 8px; margin-top: 21px; }
  .v2-main .home-metric,
  .v2-main .home-metric:first-child { display: flex; width: auto; gap: 5px; }
  .v2-main .home-metric b { font-size: 22px; }
  .v2-main .home-metric span { font-size: 11px; }
  .v2-main .home-market-line { position: static; justify-content: flex-start; max-width: none; margin: 14px 0 0; text-align: left; }
  .v2-main .home-catalog { padding-top: 35px; }
  .v2-main .home-page .home-toolbar h2 { flex-basis: 100%; font-size: 29px; }
  .v2-main .home-chips { width: 100%; overflow-x: auto; scrollbar-width: none; }
  .v2-main .home-page .home-filter { width: 100%; margin: 0; }
  .v2-main .home-scroll-hint { display: block; margin: 0 0 5px; color: var(--v2-muted); font-size: 11px; }
  .v2-main .home-page .home-table-wrap { scrollbar-width: thin; }
  .v2-main .home-table { min-width: 858px; table-layout: fixed; }
  .v2-main .home-table th:nth-child(1) { width: 136px; }
  .v2-main .home-table th:nth-child(2) { width: 50px; }
  .v2-main .home-table th:nth-child(3) { width: 94px; }
  .v2-main .home-table th:nth-child(4) { width: 94px; }
  .v2-main .home-table th:nth-child(5) { width: 172px; }
  .v2-main .home-table th:nth-child(6) { width: 100px; }
  .v2-main .home-table th:nth-child(7) { width: 100px; }
  .v2-main .home-table th:nth-child(8) { width: 112px; }
  .v2-main .home-table th { font-size: 12px; }
  .v2-main .home-table td { height: 56px; font-size: 13px; }
  .v2-main .home-table .tk { gap: 7px; }
  .v2-main .home-table .sicon { width: 22px; height: 22px; }
  .v2-main .home-table .tk-t {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2px 4px;
    min-width: 0;
    width: 100%;
  }
  .v2-main .home-table .tk b { overflow: hidden; text-overflow: ellipsis; font-size: 13px; line-height: 1.35; }
  .v2-main .home-table .tk-t > span { grid-column: 1 / -1; max-width: 100%; font-size: 11px; line-height: 1.4; }
  .v2-main .home-table .tk-t .tag { padding: 0; margin: 0; font-size: 9px; line-height: 1.35; }
  .v2-main .home-table .home-price,
  .v2-main .home-table .home-volume { font-size: 13px; }
  .v2-main .home-table .home-sparkline,
  .v2-main .home-table .home-sparkline svg { width: 78px; }
  .v2-home-lower { margin-top: 30px; }
  .v2-main .home-compare { padding: 14px; }
  .v2-main .home-compare-table th,
  .v2-main .home-compare-table td { padding-right: 5px; padding-left: 5px; }
  .v2-main .home-compare-table th:first-child { width: 64px; }
}
@media (max-width: 650px) {
  .v2-main .home-next { margin-top: 30px; }
  .v2-main .home-page .home-next h2 { font-size: 20px; }
  .v2-main .home-buy-flow { gap: 17px; padding: 18px; }
  .v2-main .home-buy-copy h3 { font-size: 17px; }
  .v2-main .home-buy-routes { grid-template-columns: 1fr; gap: 7px; }
  .v2-main .home-buy-route { min-height: 112px; }
  .v2-main .home-next-links { grid-template-columns: 1fr; gap: 9px; }
  .v2-main .home-next-links > a { min-height: 72px; padding: 12px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .v2-main .home-page .home-hero.is-animated::before { opacity: .82; }
  .v2-main .home-globe-motion { display: none; }
}

/* v2-stock.css */
/* Approved C direction for the stock detail page. Loaded after legacy sheets. */
.stock-detail {
  --sd-ink: var(--v2-ink, #0d1b3d);
  --sd-text: var(--v2-text, #35598a);
  --sd-muted: var(--v2-muted, #7390b4);
  --sd-line: var(--v2-line, #e5edf7);
  --sd-blue: var(--v2-blue, #166de3);
  --series-1: #1675ee;
  --series-2: #00afe1;
  --series-3: #507ec8;
  --series-4: #71b8d9;
  --shade: transparent;
  color: var(--sd-text);
  background: #fff;
}

.stock-detail .sd-crumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 0 0 35px;
  color: var(--sd-text);
  font-size: 14px;
  font-weight: 450;
}
.stock-detail .sd-crumbs a,
.stock-detail .sd-crumbs span { color: var(--sd-text); }
.stock-detail .sd-crumbs a:hover { color: var(--sd-blue); text-decoration: none; }
.stock-detail .sd-crumbs span[aria-hidden] { color: #a6b9d0; }

.stock-detail .sd-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 38px;
  margin: 0;
  padding: 0;
  border: 0;
}
.stock-detail .sd-hero-main { min-width: 0; flex: 1; }
.stock-detail .sd-eyebrow {
  margin: 0 0 19px;
  color: var(--sd-blue) !important;
  font-size: 12px;
  font-weight: 550;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.stock-detail .sd-title-row {
  display: flex;
  align-items: center;
  gap: 18px;
  min-width: 0;
}
.stock-detail .sd-stock-icon { display: inline-flex; flex: none; }
.stock-detail .sd-stock-icon .sicon {
  width: 66px;
  height: 66px;
  border-radius: 12px;
  background: #fff;
  object-fit: contain;
}
.stock-detail .sd-hero h1,
.stock-detail .sd-section-heading h2 {
  color: var(--sd-ink);
  font-family: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;
  font-weight: 600;
}
.stock-detail .sd-hero h1 {
  margin: 0;
  font-size: clamp(39px, 4.1vw, 68px);
  line-height: 1.12;
  letter-spacing: -.035em;
}
.stock-detail .sd-title-ticker { letter-spacing: -.045em; white-space: nowrap; }
.stock-detail .sd-stock-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 5px 0 13px;
  color: var(--sd-ink);
  font-family: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;
  font-size: 19px;
  line-height: 1.45;
}
.stock-detail .sd-stock-meta .muted { color: var(--sd-ink); }
.stock-detail .sd-stock-meta .tag {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--sd-text);
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
}
.stock-detail .sd-stock-meta .tag::before {
  content: "·";
  display: inline-block;
  margin-right: 8px;
  color: var(--sd-blue);
}
.stock-detail .sd-hero-description {
  max-width: 820px;
  margin: 0;
  color: var(--sd-text);
  font-size: 16px;
  line-height: 1.75;
}
.stock-detail .sd-kpis {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 15px 48px;
  margin: 35px 0 0;
}
.stock-detail .sd-kpis > div {
  display: inline-flex;
  align-items: baseline;
  gap: 9px;
  min-width: 0;
  padding: 0;
  border: 0;
}
.stock-detail .sd-kpis strong {
  color: var(--sd-ink);
  font-family: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;
  font-size: 31px;
  font-weight: 500;
  line-height: 1;
}
.stock-detail .sd-kpis span { color: var(--sd-text); font-size: 14px; font-weight: 500; }
.stock-detail .sd-ref {
  display: flex;
  align-items: flex-start;
  flex: 0 0 auto;
  gap: 3px;
  width: auto;
  min-width: 225px;
  max-width: 32%;
  margin-top: 44px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.stock-detail .sd-ref-label { color: var(--sd-text); font-size: 15px; font-weight: 500; }
.stock-detail .sd-ref b {
  color: var(--sd-ink);
  font-family: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;
  font-size: clamp(34px, 3.4vw, 54px);
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: -.035em;
  white-space: nowrap;
}
.stock-detail .sd-ref .period { margin-top: 6px; color: var(--sd-text); }
.stock-detail .sd-updated { margin-top: 3px; color: var(--sd-text); font-size: 12px; line-height: 1.5; }

.stock-detail .sd-anchor-nav {
  display: flex;
  align-items: center;
  gap: 20px;
  overflow-x: auto;
  margin: 41px 0 44px;
  padding: 0;
  border: 0;
  scrollbar-width: thin;
}
.stock-detail .sd-anchor-nav a {
  min-height: 34px;
  padding: 0 0 6px;
  border-bottom-width: 2px;
  color: var(--sd-text);
  font-size: 16px;
  font-weight: 460;
  white-space: nowrap;
}
.stock-detail .sd-anchor-nav a:first-child,
.stock-detail .sd-anchor-nav a:hover { color: var(--sd-blue); border-bottom-color: var(--sd-blue); }
.stock-detail .sd-nav-sep { align-self: flex-start; color: #9eb2ce; font-size: 17px; }

.stock-detail .sd-market-section,
.stock-detail .sd-history,
.stock-detail .sd-contracts,
.stock-detail .sd-faq { scroll-margin-top: 44px; }
.stock-detail .sd-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin: 0 0 26px;
}
.stock-detail .sd-section-heading > div { display: flex; flex-direction: column; }
.stock-detail .sd-section-heading h2 {
  order: 0;
  margin: 0;
  font-size: clamp(29px, 2.6vw, 40px);
  line-height: 1.26;
  letter-spacing: -.025em;
}
.stock-detail .sd-section-kicker {
  order: 1;
  margin: 8px 0 0;
  color: var(--sd-text);
  font-size: 14px;
  font-weight: 450;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
}
.stock-detail .sd-section-aside { padding: 0 0 4px; color: var(--sd-muted); font-size: 12px; }
.stock-detail .region-bar {
  margin: 0 0 16px;
  padding: 10px 12px;
  border: 1px solid var(--sd-line);
  border-radius: 4px;
  background: #f9fbfe;
  color: var(--sd-text);
}
.stock-detail .region-bar label { color: var(--sd-text); }

.stock-detail .sd-venue-wrap,
.stock-detail .sd-contract-wrap {
  overflow-x: auto;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.stock-detail .sd-venues { width: 100%; min-width: 780px; table-layout: fixed; }
.stock-detail .sd-venues th:nth-child(1) { width: 17%; }
.stock-detail .sd-venues th:nth-child(2) { width: 23%; }
.stock-detail .sd-venues th:nth-child(3) { width: 14%; }
.stock-detail .sd-venues th:nth-child(4) { width: 12%; }
.stock-detail .sd-venues th:nth-child(5) { width: 16%; }
.stock-detail .sd-venues th:nth-child(6) { width: 18%; }
.stock-detail .sd-venues th,
.stock-detail .sd-contract-table th {
  position: static;
  height: auto;
  padding: 9px 10px 12px;
  border-bottom: 1px solid var(--sd-line);
  border-radius: 0;
  background: #fff;
  color: var(--sd-text);
  font-size: 13px;
  font-weight: 460;
  letter-spacing: 0;
}
.stock-detail .sd-venues th:first-child,
.stock-detail .sd-venues th:last-child { border-radius: 0; }
.stock-detail .sd-venues td,
.stock-detail .sd-contract-table td {
  padding: 10px;
  border-bottom: 1px solid var(--sd-line);
  background: #fff;
  color: var(--sd-ink);
  font-size: 14px;
  font-weight: 450;
  line-height: 1.45;
  white-space: normal;
}
.stock-detail .sd-venues tbody tr:last-child td,
.stock-detail .sd-contract-table tbody tr:last-child td { border-bottom: 1px solid var(--sd-line); }
.stock-detail .sd-venues tbody tr:hover td,
.stock-detail .sd-contract-table tbody tr:hover td { background: #fbfdff; }
.stock-detail .sd-venues .num,
.stock-detail .sd-contract-table .num { text-align: left !important; }
.stock-detail .sd-venue-name { font-weight: 500; }
.stock-detail .sd-venue-name .ex { display: flex; align-items: center; width: max-content; max-width: 100%; color: var(--sd-ink); font-weight: 500; }
.stock-detail .sd-venue-name .ex::before {
  width: 25px;
  height: 25px;
  margin-right: 11px;
  border-radius: 5px;
  vertical-align: middle;
}
.stock-detail .sd-venue-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 3px 9px;
  margin: 1px 0 0 36px;
  line-height: 1.3;
}
.stock-detail .sd-venue-badges:empty { display: none; }
.stock-detail .sd-venue-name .badge {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 10px;
}
.stock-detail .sd-market-type .pill {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--sd-text);
  font-size: 13px;
  font-weight: 450;
}
.stock-detail .sd-market-type .sym {
  display: inline;
  margin: 0 0 0 9px;
  color: var(--sd-text);
  font-size: 12px;
  line-height: 1.45;
}
.stock-detail .sd-price,
.stock-detail .sd-volume { color: var(--sd-text) !important; font-size: 14px !important; font-weight: 450; }
.stock-detail .sd-premium { font-size: 14px; font-weight: 450; }
.stock-detail .sd-premium.up { color: #258665 !important; }
.stock-detail .sd-premium.down { color: #dc5b67 !important; }
.stock-detail .sd-action-head,
.stock-detail .sd-action { text-align: left !important; }
.stock-detail .sd-action .btn {
  display: inline;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--sd-blue);
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
}
.stock-detail .sd-action .btn:hover { background: none; color: #0855b8; text-decoration: underline; }
.stock-detail .sd-row-detail { margin: 2px 0 0; }
.stock-detail .sd-row-detail summary { color: var(--sd-muted); font-size: 10px; font-weight: 450; }
.stock-detail .sd-detail-grid {
  margin: 8px 0 3px;
  padding: 10px;
  border: 1px solid var(--sd-line);
  border-radius: 3px;
  background: #fff;
}
.stock-detail .sd-detail-grid dt { color: var(--sd-muted); }
.stock-detail .sd-detail-grid dd { color: var(--sd-ink); font-weight: 500; }
.stock-detail .sd-market-note { max-width: none; margin: 15px 0 0; color: var(--sd-text); font-size: 12px; }

.stock-detail .sd-history { margin-top: 72px; }
.stock-detail .sd-history .sd-section-heading { margin-bottom: 26px; }
.stock-detail .sd-history .sd-section-kicker,
.stock-detail .sd-contracts .sd-section-kicker,
.stock-detail .sd-faq .sd-section-kicker { display: none; }
.stock-detail .sd-history .seg {
  gap: 28px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
}
.stock-detail .sd-history .seg a {
  min-width: 0;
  padding: 3px 4px 8px;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--sd-text);
  font-size: 13px;
  font-weight: 450;
}
.stock-detail .sd-history .seg a.on {
  border-bottom-color: var(--sd-blue);
  background: none;
  box-shadow: none;
  color: var(--sd-blue);
}
.stock-detail .sd-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 34px;
  align-items: start;
}
.stock-detail .sd-chart-card {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.stock-detail .sd-chart-card h3 {
  margin: 0 0 10px;
  color: var(--sd-ink);
  font-family: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;
  font-size: 20px;
  font-weight: 600;
}
.stock-detail .sd-chart-card .chart-box { overflow: visible; }
.stock-detail .sd-chart-card .chart .grid { stroke: var(--sd-line); }
.stock-detail .sd-chart-card .chart .zero { stroke: #c6d9f3; }
.stock-detail .sd-chart-card .chart .tick,
.stock-detail .sd-chart-card .chart .endlabel { fill: var(--sd-text); }
.stock-detail .sd-chart-card .chart .line { stroke-width: 2.1; }
.stock-detail .sd-chart-card .legend { margin: 13px 0 0; color: var(--sd-text); }
.stock-detail .sd-chart-card .chart-table { margin-top: 11px; padding-top: 8px; border-top: 1px solid var(--sd-line); }
.stock-detail .sd-chart-card .chart-table summary { color: var(--sd-text); font-weight: 450; }
.stock-detail .sd-history-note { margin-top: 18px; color: var(--sd-text); font-size: 12px; }
.stock-detail .sd-empty {
  margin: 0;
  padding: 30px 15px;
  border: 1px solid var(--sd-line);
  border-radius: 0;
  background: #fff;
}

.stock-detail .sd-signup {
  gap: 16px;
  margin-top: 55px;
  padding: 22px 0;
  border: 0;
  border-top: 1px solid var(--sd-line);
  border-bottom: 1px solid var(--sd-line);
  border-radius: 0;
  background: #fff;
}
.stock-detail .sd-signup-copy { display: block; max-width: 550px; }
.stock-detail .sd-signup-copy strong { color: var(--sd-ink); font-size: 16px; font-weight: 550; }
.stock-detail .sd-signup-copy p { color: var(--sd-text); font-size: 12px; }
.stock-detail .sd-signup-links { gap: 12px 18px; }
.stock-detail .sd-signup-links .btn {
  min-height: 0;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
  color: var(--sd-blue);
  font-size: 13px;
}
.stock-detail .sd-signup-links .btn:hover { background: none; text-decoration: underline; }

.stock-detail .sd-contracts { margin-top: 70px; }
.stock-detail .sd-contracts .warn {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--sd-text);
  font-size: 13px;
  line-height: 1.6;
}
.stock-detail .sd-contract-table { width: 100%; min-width: 660px; }
.stock-detail .sd-contract-table th,
.stock-detail .sd-contract-table td { padding: 11px 10px; }
.stock-detail .sd-contract-table td b { color: var(--sd-ink); font-weight: 550; }
.stock-detail .sd-contract-table .sym { display: inline; margin-left: 5px; color: var(--sd-text); font-size: 13px; }
.stock-detail .sd-contract-table .chains,
.stock-detail .sd-contract-table .chains a { color: var(--sd-text); font-size: 13px; }
.stock-detail .sd-contract-table .addr {
  padding: 0;
  border-radius: 0;
  background: none;
  color: var(--sd-text);
  font-size: 13px;
}
.stock-detail .sd-contract-table .act .btn {
  min-width: 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--sd-blue);
}

.stock-detail .sd-faq { max-width: none; margin-top: 71px; }
.stock-detail .sd-faq-list { overflow: visible; border: 0; border-radius: 0; }
.stock-detail .sd-faq-item {
  padding: 0;
  border-bottom: 1px solid var(--sd-line);
  background: #fff;
}
.stock-detail .sd-faq-item[open] { background: #fff; }
.stock-detail .sd-faq-item summary {
  padding: 13px 0;
  color: var(--sd-text);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.45;
}
.stock-detail .sd-faq-item p {
  max-width: 1100px;
  margin: 0 0 13px;
  color: var(--sd-text);
  font-size: 13px;
  line-height: 1.7;
}

@media (max-width: 1100px) {
  .stock-detail .sd-ref { margin-top: 43px; min-width: 190px; }
  .stock-detail .sd-ref b { font-size: 37px; }
  .stock-detail .sd-kpis { gap: 15px 25px; }
  .stock-detail .sd-chart-grid { gap: 22px; }
}
@media (max-width: 880px) {
  .stock-detail .sd-hero { flex-direction: column; gap: 25px; }
  .stock-detail .sd-ref { max-width: none; margin: 0; }
  .stock-detail .sd-chart-grid { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 900px) {
  .stock-detail .sd-crumbs { margin-bottom: 26px; font-size: 12px; }
  .stock-detail .sd-hero { display: flex; padding: 0; }
  .stock-detail .sd-eyebrow { margin-bottom: 12px; font-size: 10px; }
  .stock-detail .sd-title-row { align-items: center; gap: 10px; }
  .stock-detail .sd-stock-icon .sicon { width: 43px; height: 43px; border-radius: 7px; }
  .stock-detail .sd-hero h1 { font-size: clamp(29px, 7vw, 44px); }
  .stock-detail .sd-stock-meta { margin: 9px 0 12px; font-size: 16px; }
  .stock-detail .sd-hero-description { font-size: 14px; }
  .stock-detail .sd-kpis {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
    margin-top: 23px;
  }
  .stock-detail .sd-kpis > div { padding: 0; }
  .stock-detail .sd-kpis strong { font-size: 25px; }
  .stock-detail .sd-kpis span { font-size: 12px; white-space: normal; }
  .stock-detail .sd-ref {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .stock-detail .sd-ref-label,
  .stock-detail .sd-updated { grid-column: auto; }
  .stock-detail .sd-ref b { font-size: 34px; }
  .stock-detail .sd-ref .period { grid-column: auto; grid-row: auto; }
  .stock-detail .sd-anchor-nav { gap: 12px; margin: 29px 0 31px; }
  .stock-detail .sd-anchor-nav a { min-height: 30px; font-size: 12px; }
  .stock-detail .sd-nav-sep { font-size: 12px; }
  .stock-detail .sd-section-heading h2 { font-size: 27px; }
  .stock-detail .sd-section-kicker { font-size: 12px; }
  .stock-detail .sd-section-aside { display: none; }
  .stock-detail .sd-venue-wrap { overflow: visible; border: 0; }
  .stock-detail .sd-venues { display: block; min-width: 0; table-layout: auto; }
  .stock-detail .sd-venues tbody { gap: 0; }
  .stock-detail .sd-venues tr {
    padding: 17px 0;
    border: 0;
    border-bottom: 1px solid var(--sd-line);
    border-radius: 0;
    box-shadow: none;
  }
  .stock-detail .sd-venues td { border: 0 !important; background: #fff !important; }
  .stock-detail .sd-venues .sd-price,
  .stock-detail .sd-venues .sd-premium,
  .stock-detail .sd-venues .sd-volume {
    min-height: 50px;
    padding: 9px 0 0;
    border-top: 1px solid var(--sd-line) !important;
    font-size: 12px !important;
  }
  .stock-detail .sd-venues .sd-action .btn {
    display: inline;
    width: auto;
    min-height: 0;
    padding: 0;
  }
  .stock-detail .sd-detail-grid { background: #fff; }
  .stock-detail .sd-market-section,
  .stock-detail .sd-history,
  .stock-detail .sd-contracts,
  .stock-detail .sd-faq { margin-top: 49px; scroll-margin-top: 20px; }
  .stock-detail .sd-market-section { margin-top: 0; }
  .stock-detail .sd-chart-card { padding: 0; }
  .stock-detail .sd-chart-card h3 { font-size: 18px; }
  .stock-detail .sd-signup { margin-top: 48px; padding: 18px 0; }
  .stock-detail .sd-contract-wrap { overflow-x: auto; }
  .stock-detail .sd-contract-table { min-width: 0; }
  .stock-detail .sd-contract-table tbody { gap: 0; }
  .stock-detail .sd-contract-table tr {
    padding: 15px 0;
    border: 0;
    border-bottom: 1px solid var(--sd-line);
    border-radius: 0;
  }
  .stock-detail .sd-contract-table td { border: 0 !important; }
  .stock-detail .sd-faq-item summary { font-size: 14px; }
}

/* v2-venues.css */
/* Approved white-and-blue editorial direction for venue pages. */
.v2-venues,
.v2-exchange {
  --venue-ink: var(--v2-ink, #111d43);
  --venue-text: var(--v2-text, #345783);
  --venue-muted: var(--v2-muted, #7186a2);
  --venue-line: var(--v2-line, #e4ebf5);
  --venue-blue: var(--v2-blue, #1765db);
  width: 100%;
  color: var(--venue-text);
  background: #fff;
  padding-bottom: 50px;
}

.v2-venues a,
.v2-exchange a { color: inherit; }
.v2-venues a:hover,
.v2-exchange a:hover { color: var(--venue-blue); text-decoration: none; }
.v2-venues a:focus-visible,
.v2-exchange a:focus-visible,
.v2-venues button:focus-visible,
.v2-exchange button:focus-visible,
.v2-table-scroll:focus-visible { outline: 2px solid var(--venue-blue); outline-offset: 3px; }

.v2-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 2px 0 22px;
  color: var(--venue-muted);
  font-size: 13px;
  line-height: 1.5;
}
.v2-breadcrumb a { color: var(--venue-text); }
.v2-breadcrumb [aria-current] { color: var(--venue-ink); }
.v2-kicker {
  margin: 0 0 11px;
  color: var(--venue-text);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .12em;
  line-height: 1.4;
}
.v2-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.v2-venues-hero { margin: 0 0 30px; }
.v2-venues-hero h1,
.v2-exchange-hero h1,
.v2-venue-section h2,
.v2-exchange-section h2 {
  color: var(--venue-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-weight: 700;
  letter-spacing: -.045em;
}
.v2-venues-hero h1 {
  margin: 0;
  font-size: clamp(38px, 4.7vw, 62px);
  line-height: 1.2;
}
.v2-venues-hero > p:last-child {
  max-width: 800px;
  margin: 12px 0 0;
  color: var(--venue-text);
  font-size: 15px;
  line-height: 1.75;
}

.v2-venue-types {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 35px 0 53px;
}
.v2-venue-type {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 17px;
  align-items: start;
  gap: 12px;
  min-height: 106px;
  padding: 5px 23px 5px 0;
  color: var(--venue-text);
}
.v2-venue-type + .v2-venue-type {
  border-left: 1px solid var(--venue-line);
  padding-left: 23px;
}
.v2-venue-type-index { padding-top: 3px; color: var(--venue-blue); font-size: 13px; font-weight: 680; }
.v2-venue-type-copy { display: flex; flex-direction: column; gap: 10px; }
.v2-venue-type-title { display: flex; align-items: center; gap: 8px; }
.v2-venue-type-title .v2-icon { width: 18px; height: 18px; flex: none; color: #4b79ac; }
.v2-venue-type-copy strong { color: var(--venue-ink); font-size: 19px; font-weight: 690; line-height: 1.35; }
.v2-venue-type-copy small { color: var(--venue-text); font-size: 13px; line-height: 1.65; }
.v2-venue-type-arrow { color: var(--venue-blue); font-size: 18px; line-height: 1.4; }

.v2-venue-section { margin: 49px 0 0; scroll-margin-top: 100px; }
.v2-venue-section:first-of-type { margin-top: 0; }
.v2-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 24px;
}
.v2-section-heading .v2-kicker { margin-bottom: 5px; }
.v2-venue-section h2,
.v2-exchange-section h2 {
  margin: 0;
  font-size: clamp(25px, 2.7vw, 33px);
  line-height: 1.3;
}
.v2-section-intro {
  max-width: 900px;
  margin: 0 0 22px;
  color: var(--venue-text);
  font-size: 13px;
  line-height: 1.75;
}
.v2-section-more { flex: none; padding-bottom: 4px; color: var(--venue-blue) !important; font-size: 13px; }
.v2-section-more span { margin-left: 5px; font-size: 17px; }

.v2-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scrollbar-color: #cad6ea transparent;
}
.v2-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  color: var(--venue-text);
  font-size: 12.5px;
  line-height: 1.4;
}
.v2-table th,
.v2-table td {
  height: 42px;
  padding: 8px 10px;
  border-bottom: 1px solid var(--venue-line);
  background: #fff;
  font-weight: 450;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}
.v2-table th { height: 35px; color: var(--venue-text); font-size: 11.5px; font-weight: 600; }
.v2-table th:first-child,
.v2-table td:first-child { padding-left: 0; }
.v2-table th:last-child,
.v2-table td:last-child { padding-right: 0; }
.v2-table tbody tr:hover td { background: #fafcff; }
.v2-table .v2-num { text-align: right; font-variant-numeric: tabular-nums; }
.v2-table .v2-row-action { text-align: right; }
.v2-table .v2-row-action a { color: var(--venue-blue); font-size: 16px; white-space: nowrap; }
.v2-table a.v2-venue-name { display: inline-flex; align-items: center; gap: 0; color: var(--venue-ink); font-weight: 560; }
.v2-table .ex::before { width: 19px; height: 19px; margin-right: 9px; border-radius: 3px; vertical-align: middle; }
.v2-table .v2-text-link { color: var(--venue-blue); }
.v2-table .v2-subtext { display: block; margin-top: 2px; color: var(--venue-muted); font-size: 10px; }

.v2-access-table { min-width: 1130px; }
.v2-access-table .v2-status,
.v2-access-table .v2-status-head { min-width: 43px; text-align: center; }
.v2-access-table .v2-status { font-size: 17px; line-height: 1; }
.v2-access-table .v2-status-listed { color: #d34f53; }
.v2-access-table .v2-status-not_listed { color: #416b9c; }
.v2-access-table .v2-status-unknown { color: #8998aa; }
.v2-access-table .col-on { background: #f2f7ff; }
.v2-access-table .badge { display: block; width: fit-content; margin: 3px 0 0; border-color: #e7be72; color: #9a681a; }
.v2-access-legend { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 11px; color: var(--venue-muted); font-size: 11px; }
.v2-access-legend span { display: inline-flex; align-items: center; gap: 6px; }
.v2-legend-mark { color: #8998aa; font-size: 15px; font-style: normal; line-height: 1; }
.v2-legend-mark.v2-restricted { color: #d34f53; }
.v2-legend-mark.v2-unlisted { color: #416b9c; }
.v2-category-table { min-width: 590px; }
.v2-category-table td:first-child { min-width: 170px; }

/* Individual venue profile */
.v2-exchange-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 0 0 26px;
}
.v2-exchange-hero-copy { min-width: 0; }
.v2-exchange-hero h1 { margin: 0; font-size: clamp(39px, 4.7vw, 61px); line-height: 1.23; }
.v2-exchange-hero h1 .ex { display: inline-flex; align-items: center; gap: 11px; white-space: normal; }
.v2-exchange-hero h1 .ex::before { flex: none; width: 54px; height: 54px; margin: 0; border-radius: 7px; }
.v2-exchange-lead { max-width: 760px; margin: 11px 0 0; color: var(--venue-text); font-size: 15px; line-height: 1.75; }
.v2-exchange-signup { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; flex: none; }
.v2-primary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 18px;
  border-radius: 3px;
  background: #2d70bb;
  color: #fff !important;
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
}
.v2-primary-action:hover { background: #185dab; color: #fff !important; }
.v2-exchange-signup small { max-width: 210px; color: var(--venue-muted); font-size: 10px; line-height: 1.4; text-align: right; }
.v2-exchange-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 27px 0 46px; }
.v2-exchange-stats > div { padding: 4px 25px; border-left: 1px solid var(--venue-line); }
.v2-exchange-stats > div:first-child { padding-left: 0; border-left: 0; }
.v2-exchange-stats span { display: block; margin-bottom: 7px; color: var(--venue-text); font-size: 13px; }
.v2-exchange-stats strong { display: block; color: var(--venue-ink); font-family: "Songti SC", Georgia, serif; font-size: 29px; font-weight: 600; line-height: 1.2; }
.v2-exchange-stats .v2-stat-date { font-size: 25px; white-space: nowrap; }
.v2-exchange-section { margin: 46px 0 0; }
.v2-exchange-access { margin-top: 0; }
.v2-access-details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 11px 30px; margin: 17px 0 0; }
.v2-access-details > div { display: grid; grid-template-columns: 115px minmax(0, 1fr); gap: 6px; align-items: start; }
.v2-access-details dt { color: var(--venue-muted); font-size: 12px; }
.v2-access-details dd { margin: 0; color: var(--venue-text); font-size: 13px; line-height: 1.6; }
.v2-access-details dd a { color: var(--venue-blue); }
.v2-access-details dd small { display: block; color: var(--venue-muted); font-size: 11px; }
.v2-access-note { max-width: 900px; margin: 13px 0 0; color: var(--venue-muted); font-size: 11.5px; line-height: 1.65; }
.v2-section-count { flex: none; padding-bottom: 4px; color: var(--venue-blue); font-size: 13px; }
.v2-exchange-market .v2-table-scroll { margin-top: 14px; }
.v2-market-table { min-width: 820px; }
.v2-market-table tr[hidden] { display: none; }
.v2-market-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px 20px; margin-top: 20px; }
.v2-market-page-summary { margin: 0; color: var(--venue-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.v2-market-pages { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.v2-market-pages button { min-width: 32px; height: 34px; padding: 0 8px; border: 1px solid var(--venue-line); border-radius: 4px; background: #fff; color: var(--venue-text); font: inherit; font-size: 12px; cursor: pointer; }
.v2-market-pages button:hover:not(:disabled), .v2-market-pages button[aria-current="page"] { border-color: #c4d9f1; background: #f0f6fd; color: var(--venue-blue); }
.v2-market-pages button[aria-current="page"] { font-weight: 650; }
.v2-market-pages button:disabled { opacity: .4; cursor: default; }
.v2-market-page-gap { width: 18px; text-align: center; color: var(--venue-muted); }
@media (max-width: 600px) {
  .v2-market-pagination { flex-direction: column; align-items: flex-start; }
  .v2-market-pages { gap: 3px; }
  .v2-market-pages button { min-width: 29px; height: 36px; padding: 0 6px; }
  .v2-market-page-gap { width: 14px; }
}
.v2-market-table th,
.v2-market-table td { height: 44px; padding: 8px 9px; }
.v2-market-table th { height: 37px; }
.v2-market-table th button { padding: 0; border: 0; background: none; color: inherit; cursor: pointer; font: inherit; font-weight: inherit; white-space: nowrap; }
.v2-market-table th[aria-sort] { color: var(--venue-blue); }
.v2-market-table .v2-stock-name { display: inline-flex; align-items: center; gap: 8px; color: var(--venue-ink); }
.v2-market-table .v2-stock-name img { width: 22px; height: 22px; flex: none; border-radius: 4px; object-fit: contain; }
.v2-market-table .v2-stock-name span { display: inline-flex; align-items: baseline; gap: 5px; min-width: 0; }
.v2-market-table .v2-stock-name strong { font-weight: 610; }
.v2-market-table .v2-stock-name small { max-width: 90px; overflow: hidden; color: var(--venue-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.v2-market-table .v2-best-price { display: block; color: #26835e; font-size: 10px; }
.v2-market-table .v2-symbol { color: var(--venue-text); }
.v2-market-table .v2-issuer { display: block; margin-top: 2px; color: var(--venue-muted); font-size: 10px; }
.v2-market-table .up { color: #168856; }
.v2-market-table .down { color: #cf444f; }
.v2-market-table .v2-row-action a { font-size: 12px; }
.v2-market-table .v2-row-action a span { margin-left: 4px; font-size: 17px; }
.v2-empty { padding: 28px 0; color: var(--venue-muted); }
.v2-exchange-method { padding-top: 2px; }
.v2-exchange-method ol { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 40px; max-width: 1000px; margin: 15px 0 14px; padding-left: 19px; color: var(--venue-text); font-size: 11.5px; line-height: 1.65; }
.v2-exchange-method li { padding-left: 6px; }
.v2-exchange-method li::marker { color: var(--venue-blue); }
.v2-exchange-method > a { color: var(--venue-blue); font-size: 12px; }

@media (max-width: 1100px) {
  .v2-venue-type { grid-template-columns: 21px minmax(0, 1fr); gap: 9px; }
  .v2-venue-type-arrow { display: none; }
  .v2-venue-type + .v2-venue-type { padding-left: 15px; }
  .v2-venue-type { padding-right: 15px; }
  .v2-exchange-stats > div { padding-right: 15px; padding-left: 15px; }
}
@media (max-width: 900px) {
  .v2-venues,
  .v2-exchange { padding-bottom: 28px; }
  .v2-breadcrumb { margin-bottom: 19px; }
  .v2-venues-hero { margin-bottom: 20px; }
  .v2-venues-hero h1 { font-size: 43px; }
  .v2-venues-hero > p:last-child,
  .v2-exchange-lead { font-size: 14px; }
  .v2-venue-types { grid-template-columns: 1fr; margin: 27px 0 38px; }
  .v2-venue-type { min-height: 0; padding: 14px 0; grid-template-columns: 30px 1fr 20px; }
  .v2-venue-type + .v2-venue-type { padding: 14px 0; border-left: 0; border-top: 1px solid var(--venue-line); }
  .v2-venue-type-arrow { display: block; }
  .v2-venue-type-copy { gap: 4px; }
  .v2-venue-type-copy strong { font-size: 17px; }
  .v2-venue-type-copy small { font-size: 12px; }
  .v2-venue-section,
  .v2-exchange-section { margin-top: 37px; }
  .v2-venue-section h2,
  .v2-exchange-section h2 { font-size: 27px; }
  .v2-section-heading { align-items: flex-start; }
  .v2-section-more { max-width: 100px; text-align: right; }
  .v2-exchange-hero { flex-direction: column; align-items: flex-start; margin-bottom: 20px; }
  .v2-exchange-hero h1 { font-size: 41px; }
  .v2-exchange-hero h1 .ex::before { width: 42px; height: 42px; }
  .v2-exchange-signup { align-items: flex-start; }
  .v2-exchange-signup small { text-align: left; }
  .v2-exchange-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px 0; margin: 24px 0 37px; }
  .v2-exchange-stats > div:nth-child(odd) { padding-left: 0; border-left: 0; }
  .v2-exchange-stats > div:nth-child(even) { padding-left: 17px; }
  .v2-exchange-stats strong { font-size: 25px; }
  .v2-exchange-stats .v2-stat-date { font-size: 21px; }
  .v2-exchange-access { margin-top: 0; }
  .v2-access-details { grid-template-columns: 1fr; gap: 11px; }
  .v2-access-details > div { grid-template-columns: 105px 1fr; }
  .v2-exchange-method ol { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 420px) {
  .v2-venues-hero h1 { font-size: 39px; }
  .v2-exchange-hero h1 { font-size: 36px; }
  .v2-exchange-hero h1 .ex::before { width: 36px; height: 36px; }
  .v2-exchange-stats .v2-stat-date { font-size: 17px; }
  .v2-access-legend { flex-direction: column; gap: 6px; }
}

/* v2-catalog.css */
/* Selected okexc visual direction: stock directory and market rankings. */
.v2-catalog,
.v2-rankings {
  --v2-catalog-ink: var(--v2-ink, #101e3f);
  --v2-catalog-text: var(--v2-text, #345487);
  --v2-catalog-muted: var(--v2-muted, #6f87ad);
  --v2-catalog-line: var(--v2-line, #e5edfa);
  --v2-catalog-blue: var(--v2-blue, #1767df);
  color: var(--v2-catalog-text);
  padding: 20px 0 74px;
}
.v2-catalog *,
.v2-rankings * { box-sizing: border-box; }
.v2-catalog a,
.v2-rankings a { color: inherit; }
.v2-catalog a:hover,
.v2-rankings a:hover { color: var(--v2-catalog-blue); text-decoration: none; }
.v2-catalog button:focus-visible,
.v2-catalog input:focus-visible,
.v2-catalog summary:focus-visible,
.v2-catalog a:focus-visible,
.v2-rankings a:focus-visible {
  outline: 2px solid var(--v2-catalog-blue);
  outline-offset: 3px;
}
.v2-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.v2-page-head { margin: 0 0 30px; }
.v2-page-kicker {
  margin: 0 0 16px;
  color: #426aa8;
  font: 500 12px/1.35 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .13em;
}
.v2-page-title {
  margin: 0;
  color: var(--v2-catalog-ink);
  font: 600 clamp(43px, 4.7vw, 72px)/1.12 "Songti SC", "Noto Serif CJK SC", "Source Han Serif SC", Georgia, serif;
  letter-spacing: -.035em;
}
.v2-page-lead {
  margin: 13px 0 0;
  color: var(--v2-catalog-text);
  font: 400 clamp(15px, 1.6vw, 21px)/1.6 "Songti SC", "Noto Serif CJK SC", "Source Han Serif SC", Georgia, serif;
  letter-spacing: .035em;
}

.v2-directory-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(158px, 205px) auto;
  gap: 16px;
  align-items: center;
  margin: 31px 0 32px;
}
.v2-directory-search { position: relative; display: flex; min-width: 0; height: 49px; }
.v2-directory-search-icon { position: absolute; top: 15px; left: 17px; z-index: 1; width: 19px; height: 19px; color: #6484b0; pointer-events: none; }
.v2-directory-search input,
.v2-market-pick summary {
  height: 49px;
  border: 1px solid #dbe7fa;
  border-radius: 4px;
  background: #fff;
  color: var(--v2-catalog-ink);
  font: 400 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif;
}
.v2-directory-search input {
  width: 100%;
  min-width: 0;
  padding: 0 78px 0 48px;
  appearance: none;
  box-shadow: none;
}
.v2-directory-search input::placeholder { color: #6380ae; opacity: 1; }
.v2-directory-search button {
  position: absolute;
  top: 5px;
  right: 5px;
  bottom: 5px;
  padding: 0 15px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #426ba9;
  font: 500 13px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  cursor: pointer;
}
.v2-directory-search button:hover { background: #f4f8ff; color: var(--v2-catalog-blue); }
.v2-market-pick { position: relative; display: block; min-width: 0; }
.v2-market-pick summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 16px;
  list-style: none;
  user-select: none;
  cursor: pointer;
}
.v2-market-pick summary::-webkit-details-marker { display: none; }
.v2-market-pick[open] summary { border-color: #b8cdef; }
.v2-market-options {
  position: absolute;
  top: calc(100% + 5px);
  right: 0;
  z-index: 10;
  display: grid;
  width: 100%;
  max-height: 325px;
  padding: 5px;
  overflow-y: auto;
  border: 1px solid #dbe7fa;
  border-radius: 4px;
  background: #fff;
}
.v2-market-pick:not([open]) .v2-market-options { display: none; }
.v2-market-options button {
  width: 100%;
  min-height: 36px;
  padding: 7px 10px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: var(--v2-catalog-text);
  font: 400 13px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif;
  text-align: left;
  cursor: pointer;
}
.v2-market-options button:hover,
.v2-market-options button:focus-visible { background: #f3f8ff; color: var(--v2-catalog-blue); }
.v2-market-options button[aria-pressed="true"] { background: #edf5ff; color: var(--v2-catalog-blue); font-weight: 600; }
.v2-directory-count {
  margin: 0 0 0 14px;
  color: #365a91;
  font-size: 14px;
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.v2-directory-table-wrap { min-width: 0; overflow-x: auto; }
.v2-directory-table {
  width: 100%;
  min-width: 980px;
  border-collapse: collapse;
  table-layout: auto;
  font-size: 14px;
  font-variant-numeric: tabular-nums;
}
.v2-directory-table th,
.v2-directory-table td {
  height: 58px;
  padding: 8px 11px;
  border-bottom: 1px solid var(--v2-catalog-line);
  color: var(--v2-catalog-text);
  background: transparent;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}
.v2-directory-table th {
  position: static;
  height: 42px;
  padding-top: 0;
  padding-bottom: 9px;
  color: #315d9d;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .02em;
}
.v2-directory-table th button {
  display: inline-block;
  padding: 3px 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  cursor: pointer;
}
.v2-directory-table th[aria-sort] { color: var(--v2-catalog-blue); }
.v2-directory-table th[aria-sort]::after { color: var(--v2-catalog-blue); font-size: 11px; }
.v2-directory-table tr:hover td { background: #fafcff; }
.v2-directory-table td:first-child { min-width: 190px; padding-left: 0; }
.v2-directory-table th:first-child { padding-left: 0; }
.v2-directory-table th:last-child,
.v2-directory-table td:last-child { padding-right: 0; }
.v2-directory-table .v2-venues-cell { min-width: 200px; }
.v2-directory-table .v2-directory-trend { min-width: 112px; text-align: center; }
.v2-directory-table .v2-stock-link {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 10px;
  color: var(--v2-catalog-ink);
}
.v2-directory-table .sicon {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: #fff;
  object-fit: contain;
}
.v2-directory-table .v2-stock-copy {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  min-width: 0;
  gap: 4px 9px;
  color: var(--v2-catalog-ink);
  font-size: 14px;
}
.v2-directory-table .v2-stock-copy b {
  color: var(--v2-catalog-ink);
  font-size: 14px;
  font-weight: 600;
}
.v2-directory-table .v2-stock-copy > span {
  max-width: 105px;
  overflow: hidden;
  color: var(--v2-catalog-ink);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v2-directory-table .tag {
  padding: 0 4px;
  border: 0;
  background: #eef4ff;
  color: #5474a7;
  font-size: 9px;
  font-style: normal;
  line-height: 1.5;
}
.v2-directory-table .v2-venues-cell { white-space: normal; }
.v2-directory-table .v2-venue {
  display: inline-flex;
  align-items: center;
  gap: 0;
  margin: 2px 13px 2px 0;
  color: #365b90;
  font-size: 13px;
  font-weight: 400;
  white-space: nowrap;
}
.v2-directory-table .v2-venue::before {
  width: 17px;
  height: 17px;
  margin-right: 6px;
  border-radius: 2px;
  background-color: transparent;
}
.v2-directory-table .v2-perp-count,
.v2-directory-table .v2-chain-issuer { color: #355a91; }
.v2-directory-table .v2-chain-issuer + .v2-chain-issuer::before { content: " · "; }
.v2-directory-table .v2-no-data { color: #a1b1cd; }
.v2-directory-table .v2-volume { color: #31558b; }
.v2-directory-table .v2-cell-label { display: none; }
.v2-filter-empty {
  margin: 20px 0;
  padding: 24px;
  color: var(--v2-catalog-muted);
  text-align: center;
}

.v2-directory-bottom {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin: 30px 0 0;
}
.v2-directory-pager {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  flex: 1;
}
.v2-directory-pager a,
.v2-directory-pager span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 34px;
  padding: 0 9px;
  border-radius: 3px;
  color: #365d96;
  font-size: 13px;
  text-decoration: none;
}
.v2-directory-pager a:hover { background: #eff5ff; }
.v2-directory-pager span[aria-current="page"] {
  background: var(--v2-catalog-blue);
  color: #fff;
}
.v2-directory-pager .v2-pager-edge { min-width: 80px; }
.v2-directory-note {
  margin: 8px 0 0;
  color: #7690b6;
  font-size: 12px;
  white-space: nowrap;
}

.v2-rankings-head {
  display: block;
  margin-bottom: 38px;
}
.v2-rankings-head > div { min-width: 0; }
.v2-rankings-head .v2-page-title { font-size: clamp(42px, 4vw, 61px); }
.v2-market-period {
  display: inline-flex;
  align-items: center;
  flex: none;
  gap: 8px;
  max-width: 100%;
  margin: 14px 0 0;
  color: #3d649d;
  font-size: 12px;
  line-height: 1.5;
}
.v2-market-period > span {
  width: 8px;
  height: 8px;
  flex: none;
  border-radius: 50%;
  background: #4792e3;
  box-shadow: 0 0 0 3px #e9f3ff;
}
.v2-market-period.period-closed > span { background: #a7b3c9; box-shadow: 0 0 0 3px #f0f3f8; }
.v2-rank-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px 31px;
}
.v2-rank-section { min-width: 0; }
.v2-rank-section h2 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 24px;
  color: var(--v2-catalog-ink);
  font: 600 clamp(24px, 2.4vw, 34px)/1.2 "Songti SC", "Noto Serif CJK SC", "Source Han Serif SC", Georgia, serif;
  letter-spacing: -.015em;
}
.v2-rank-section h2 .v2-icon { width: 23px; height: 23px; flex: none; color: #507eb6; }
.v2-rank-table-wrap { min-width: 0; overflow-x: auto; }
.v2-rank-table {
  width: 100%;
  border-collapse: collapse;
  font-variant-numeric: tabular-nums;
  font-size: 13px;
}
.v2-rank-table th,
.v2-rank-table td {
  height: 48px;
  padding: 7px 7px;
  border-bottom: 1px solid var(--v2-catalog-line);
  background: transparent;
  color: var(--v2-catalog-text);
  vertical-align: middle;
  white-space: nowrap;
}
.v2-rank-table th {
  position: static;
  height: 33px;
  padding-top: 0;
  padding-bottom: 6px;
  color: #315d9d;
  font-size: 12px;
  font-weight: 500;
}
.v2-rank-table th:first-child,
.v2-rank-table td:first-child { padding-left: 0; }
.v2-rank-table th:last-child,
.v2-rank-table td:last-child { padding-right: 0; }
.v2-rank-table .v2-rank-index { width: 27px; color: #46669a; }
.v2-rank-table tbody tr:hover td { background: #fafcff; }
.v2-rank-stock {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 8px;
}
.v2-rank-table .sicon {
  width: 26px;
  height: 26px;
  border-radius: 5px;
  background: #fff;
  object-fit: contain;
}
.v2-rank-stock-copy {
  display: inline-flex;
  align-items: baseline;
  min-width: 0;
  gap: 5px;
}
.v2-rank-stock-copy b {
  color: var(--v2-catalog-ink);
  font-size: 13px;
  font-weight: 600;
}
.v2-rank-stock-copy > span {
  display: inline-block;
  max-width: 92px;
  overflow: hidden;
  color: var(--v2-catalog-ink);
  font-size: 12px;
  font-weight: 400;
  text-overflow: ellipsis;
}
.v2-rank-venue,
.v2-rank-mobile-venue .ex {
  display: inline-flex;
  align-items: center;
  color: #365b90;
  font-size: 12px;
  font-weight: 400;
}
.v2-rank-venue::before,
.v2-rank-mobile-venue .ex::before {
  width: 16px;
  height: 16px;
  margin-right: 5px;
  border-radius: 2px;
  background-color: transparent;
}
.v2-rank-table .v2-rank-value,
.v2-rank-table .v2-rank-value.up,
.v2-rank-table .v2-rank-value.down { color: var(--v2-catalog-blue); font-weight: 600; }
.v2-rank-table .v2-rank-volume { color: #365b90; }
.v2-rank-mobile-venue { display: none; }
.v2-rank-empty {
  margin: 0;
  padding: 20px 0;
  border-top: 1px solid var(--v2-catalog-line);
  color: var(--v2-catalog-muted);
  font-size: 14px;
}
.v2-rank-note { margin: 29px 0 0; color: #6c89b4; font-size: 12px; }

@media (max-width: 1100px) {
  .v2-directory-toolbar { grid-template-columns: minmax(0, 1fr) 180px; }
  .v2-directory-count { grid-column: 1 / -1; margin: 0; text-align: left; }
  .v2-rank-grid { grid-template-columns: 1fr; gap: 35px; }
  .v2-rank-table { max-width: 760px; }
}
@media (max-width: 900px) {
  .v2-catalog,
  .v2-rankings { padding-top: 8px; padding-bottom: 42px; }
  .v2-page-head { margin-bottom: 22px; }
  .v2-page-kicker { margin-bottom: 11px; font-size: 10px; }
  .v2-page-title { font-size: clamp(39px, 9vw, 54px); }
  .v2-page-lead { margin-top: 11px; font-size: 15px; letter-spacing: 0; }
  .v2-directory-toolbar { grid-template-columns: minmax(0, 1fr) 134px; gap: 10px; margin: 25px 0 17px; }
  .v2-directory-search, .v2-directory-search input, .v2-market-pick summary { height: 43px; }
  .v2-directory-search input { padding-left: 37px; padding-right: 52px; font-size: 12px; }
  .v2-directory-search-icon { top: 13px; left: 11px; width: 17px; height: 17px; }
  .v2-directory-search button { padding: 0 8px; font-size: 11px; }
  .v2-market-pick summary { padding: 0 11px; font-size: 12px; }
  .v2-directory-count { font-size: 12px; }
  .v2-directory-table-wrap { overflow: visible; }
  .v2-directory-table,
  .v2-directory-table thead,
  .v2-directory-table tbody { display: block; min-width: 0; width: 100%; }
  .v2-directory-table thead { margin-bottom: 8px; }
  .v2-directory-table thead tr { display: flex; flex-wrap: wrap; gap: 8px; }
  .v2-directory-table thead th {
    display: inline-block;
    width: auto;
    height: auto;
    padding: 4px 8px;
    border: 1px solid #e2ebfa;
    border-radius: 3px;
    font-size: 11px;
  }
  /* Desktop edge cells remove padding; mobile sort controls need both edges. */
  .v2-directory-table thead th[data-sort] { position: relative; max-width: 100%; padding: 0; }
  .v2-directory-table thead th[data-sort] button {
    display: block;
    width: 100%;
    min-height: 32px;
    padding: 4px 12px;
    border-radius: inherit;
    white-space: normal;
    text-align: left;
  }
  .v2-directory-table thead th[aria-sort] button { padding-right: 32px; }
  .v2-directory-table thead th[aria-sort]::after {
    position: absolute;
    top: 50%;
    right: 12px;
    margin: 0;
    transform: translateY(-50%);
    pointer-events: none;
  }
  .v2-directory-table thead th[aria-sort="ascending"]::after { transform: translateY(-50%) rotate(180deg); }
  .v2-directory-table thead th:nth-child(2),
  .v2-directory-table thead th:nth-child(4),
  .v2-directory-table thead th:nth-child(5),
  .v2-directory-table thead th:nth-child(6),
  .v2-directory-table thead th:nth-child(7) { display: none; }
  .v2-directory-table.onchain-directory-table thead th:nth-child(2),
  .v2-directory-table.onchain-directory-table thead th:nth-child(6) { display: inline-block; }
  .v2-directory-table.onchain-directory-table thead th:nth-child(3) { display: none; }
  .v2-directory-table tbody { display: grid; gap: 8px; }
  .v2-directory-table tbody tr {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 10px;
    padding: 12px;
    border: 1px solid var(--v2-catalog-line);
    border-radius: 5px;
  }
  .v2-directory-table tbody tr[hidden] { display: none; }
  .v2-directory-table tbody td {
    display: block;
    min-width: 0 !important;
    height: auto;
    padding: 0;
    border: 0;
    font-size: 12px;
    line-height: 1.4;
    text-align: left !important;
    white-space: normal;
  }
  .v2-directory-table tbody td:first-child { grid-column: 1 / -1; }
  .v2-directory-table tbody .v2-venues-cell { grid-column: 1 / -1; }
  .v2-directory-table tbody .v2-directory-trend { grid-column: auto; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; }
  .v2-directory-table .v2-directory-trend .v2-cell-label { margin-bottom: 3px; }
  .v2-directory-table tbody td:last-child { grid-column: auto; padding-top: 0; border-top: 0; }
  .v2-directory-table.onchain-directory-table tbody td:last-child { grid-column: 1 / -1; }
  .v2-main .v2-directory-table .home-sparkline,
  .v2-main .v2-directory-table .home-sparkline svg { width: min(100%, 96px); }
  .v2-directory-table .v2-cell-label {
    display: block;
    margin: 0 0 3px;
    color: #8298ba;
    font-size: 10px;
  }
  .v2-directory-table .v2-stock-copy > span { max-width: 175px; }
  .v2-directory-table .v2-venue { margin-right: 12px; }
  .v2-directory-bottom { display: block; margin-top: 25px; }
  .v2-directory-pager { justify-content: flex-start; }
  .v2-directory-pager a, .v2-directory-pager span { min-width: 30px; height: 30px; padding: 0 7px; font-size: 12px; }
  .v2-directory-note { margin-top: 18px; }
  .v2-rankings-head { display: block; margin-bottom: 28px; }
  .v2-market-period { margin-top: 14px; max-width: 100%; }
  .v2-rank-grid { gap: 30px; }
  .v2-rank-section h2 { margin-bottom: 20px; font-size: 25px; }
  .v2-rank-table th, .v2-rank-table td { height: 55px; }
  .v2-rank-table th:nth-child(3), .v2-rank-table td:nth-child(3),
  .v2-rank-table th:nth-child(5), .v2-rank-table td:nth-child(5) { display: none; }
  .v2-rank-table .v2-rank-index { width: 24px; }
  .v2-rank-table .v2-rank-mobile-venue { display: block; margin: 3px 0 0 34px; }
  .v2-rank-mobile-venue .ex { font-size: 10px; }
  .v2-rank-mobile-venue .ex::before { width: 12px; height: 12px; }
}
@media (max-width: 390px) {
  .v2-directory-toolbar { grid-template-columns: 1fr; }
  .v2-directory-count { grid-column: auto; }
  .v2-rank-stock-copy > span { max-width: 80px; }
}

/* v2-aux.css */
/* Search, issuer, methodology and not-found pages. */
.v2-main .aux-page {
  --aux-navy: var(--v2-ink);
  --aux-muted: var(--v2-text);
  --aux-line: var(--v2-line);
  --aux-blue: var(--v2-blue);
  --aux-blue-soft: #f4f8fd;
  color: var(--v2-text);
  padding-bottom: 60px;
}
.v2-main .aux-page .aux-crumbs {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 2px 0 25px;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 450;
}
.v2-main .aux-page .aux-crumbs a,
.v2-main .aux-page .aux-crumbs span { color: var(--v2-text); }
.v2-main .aux-page .aux-crumbs a:hover { color: var(--v2-blue); }
.v2-main .aux-page .aux-hero {
  margin: 0;
  padding: 0 0 20px;
  border: 0;
}
.v2-main .aux-page .aux-eyebrow {
  display: inline-block;
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--v2-blue);
  font-size: 12px;
  font-weight: 550;
  letter-spacing: .12em;
}
.v2-main .aux-page .aux-hero h1,
.v2-main .aux-page.aux-notfound h1 {
  max-width: 1150px;
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-size: clamp(40px, 4.2vw, 65px);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -.05em;
}
.v2-main .aux-page .aux-lead {
  max-width: 960px;
  margin: 12px 0 0;
  color: var(--v2-text);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}
.v2-main .aux-page .aux-section { margin-top: 35px; }
.v2-main .aux-page .aux-section:not(.prose) > h2 { margin: 0 0 24px; }
.v2-main .aux-guide > .aux-section { margin-top: 56px; }
.v2-main .aux-guide > .hint { margin-top: 24px; line-height: 1.75; }
.v2-main .aux-page .aux-section h2 {
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", "Noto Serif SC", Georgia, serif;
  font-size: clamp(26px, 2.7vw, 38px);
  font-weight: 700;
  line-height: 1.27;
}
.v2-main .aux-page .count {
  display: inline;
  min-width: 0;
  min-height: 0;
  margin: 0 0 0 5px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--v2-muted);
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 15px;
  font-weight: 450;
}
.v2-main .aux-page .aux-table-wrap {
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.v2-main .aux-page .aux-data-table {
  border-collapse: collapse;
  color: var(--v2-text);
}
.v2-main .aux-page .aux-data-table th,
.v2-main .aux-page .aux-data-table td {
  height: 48px;
  padding: 7px 8px;
  border-bottom: 1px solid var(--v2-line);
  background: #fff;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 450;
}
.v2-main .aux-page .aux-data-table th {
  height: 34px;
  padding-top: 0;
  padding-bottom: 6px;
  color: #3d6494;
  font-size: 12px;
  font-weight: 550;
}
.v2-main .aux-page .aux-data-table th:first-child,
.v2-main .aux-page .aux-data-table td:first-child { padding-left: 0; }
.v2-main .aux-page .aux-data-table th:last-child,
.v2-main .aux-page .aux-data-table td:last-child { padding-right: 0; }
.v2-main .aux-page .aux-data-table .tk b { color: var(--v2-ink); font-size: 13px; }
.v2-main .aux-page .aux-data-table .tk-t span,
.v2-main .aux-page .aux-data-table .sym { color: var(--v2-text); }
.v2-main .aux-page .aux-data-table .ex {
  display: inline-flex;
  align-items: center;
  padding: 0;
  margin: 0 8px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--v2-text);
  font-size: 12px;
  font-weight: 450;
}
.v2-main .aux-page .aux-data-table .ex::before { width: 14px; height: 14px; margin-right: 4px; }
.v2-main .aux-page .aux-empty {
  padding: 45px 15px;
  border: 1px solid var(--v2-line);
  border-radius: 4px;
  background: #fff;
  color: var(--v2-muted);
}
.v2-main .v2-search-empty { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.v2-search-empty .v2-icon { width: 27px; height: 27px; color: #7291bb; }
.v2-search-empty p { margin: 0; }
.v2-search-empty a { color: var(--v2-blue); font-size: 13px; }

/* Guide cards use compact titles and one subject icon per card. */
.v2-main .guide-categories {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  margin-bottom: 28px;
  padding: 3px 2px 7px;
}
.v2-main .guide-categories a {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  padding: 9px 14px;
  border-radius: 5px;
  color: var(--v2-text);
  font-size: 14px;
  line-height: 1.5;
  white-space: nowrap;
}
.v2-main .guide-categories a:is(:hover, :focus-visible),
.v2-main .guide-categories a[aria-current="page"] {
  color: var(--v2-blue);
  background: #f0f6fd;
  text-decoration: none;
}
.v2-main .guide-categories a[aria-current="page"] { font-weight: 600; }
.guide-categories .v2-icon { width: 17px; height: 17px; }
.v2-main .guide-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
.v2-main .guide-topic { color: #607da1; background: #f5f8fc; padding: 3px 8px; border-radius: 3px; font-size: 11px; font-weight: 400; line-height: 1.5; }
.v2-main .guide-list .guide-card-meta .v2-guide-icon { margin-bottom: 0; }
.v2-main .aux-guides .guide-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.v2-main .guide-list .guide-card { gap: 12px; padding: 24px; border-radius: 5px; }
.v2-main .guide-list .guide-card h2,
.v2-main .guide-list .guide-card h3 { margin: 0; color: var(--v2-ink); font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif; font-size: 20px; font-weight: 600; line-height: 1.38; letter-spacing: 0; }
.v2-main .guide-list .guide-card p { color: var(--v2-text); font-size: 13px; line-height: 1.65; }
.v2-main .guide-list .guide-card .v2-guide-icon { width: 23px; height: 23px; margin-bottom: 3px; color: #4f7faf; --v2-icon-url: url("/static/icons/ui/book.svg"); }
.v2-main .guide-list .guide-card-xstocks-vs-ondo-vs-bstocks .v2-guide-icon { --v2-icon-url: url("/static/icons/ui/building-bank.svg"); }
.v2-main .guide-list .guide-card-buy-stock-tokens-on-solana .v2-guide-icon { --v2-icon-url: url("/static/icons/ui/world.svg"); }
.v2-main .guide-list .guide-card-stock-perpetuals-funding-rate .v2-guide-icon { --v2-icon-url: url("/static/icons/ui/chart-line.svg"); }
.v2-main .guide-list .guide-card-stock-token-premium-discount .v2-guide-icon { --v2-icon-url: url("/static/icons/ui/chart-bar.svg"); }
.v2-main .aux-guide .aux-hero h1 { max-width: 900px; font-size: clamp(40px, 3.8vw, 56px); }
@media (max-width: 1200px) {
  .v2-main .aux-guides .guide-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Search */
.v2-main .aux-search-results .aux-hero { padding-bottom: 0; }
.v2-main .aux-search-results .aux-hero h1 { font-size: clamp(38px, 4.1vw, 63px); }
.v2-main .aux-search-results .aux-lead { margin-top: 4px; font-size: 18px; }
.v2-search-form {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: none;
  height: 60px;
  margin-top: 28px;
  border: 1px solid #cfdef0;
  border-radius: 3px;
  background: #fff;
}
.v2-search-form .v2-icon { width: 22px; height: 22px; margin-left: 20px; color: #426da2; }
.v2-search-form input {
  flex: 1;
  min-width: 0;
  height: 100%;
  padding: 0 3px;
  border: 0;
  background: transparent;
  color: var(--v2-ink);
  font-size: 16px;
}
.v2-search-form input:focus { border: 0; box-shadow: none; }
.v2-search-form button {
  align-self: stretch;
  width: 130px;
  margin: -1px -1px -1px 0;
  border: 0;
  border-radius: 3px;
  background: #3f789f;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
}
.v2-search-form button:hover { background: #2d678f; }
.v2-search-form .suggest { top: calc(100% + 5px); z-index: 15; }
.v2-search-help { margin: 11px 0 37px; color: var(--v2-text); font-size: 13px; }
.v2-search-table-wrap { width: 100%; overflow-x: auto; }
.v2-search-table { width: 100%; min-width: 760px; border-collapse: collapse; color: var(--v2-text); }
.v2-search-table th,
.v2-search-table td {
  height: 62px;
  padding: 8px 11px;
  border-bottom: 1px solid var(--v2-line);
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}
.v2-search-table th {
  height: 36px;
  padding-top: 0;
  color: #456a9a;
  font-size: 12px;
  font-weight: 550;
}
.v2-search-table th:first-child,
.v2-search-table td:first-child { padding-left: 0; }
.v2-search-table th:last-child,
.v2-search-table td:last-child { padding-right: 0; }
.v2-search-table td { font-size: 13px; }
.v2-search-table .tk { gap: 10px; }
.v2-search-table .tk b { color: var(--v2-ink); font-size: 14px; }
.v2-search-table .tk-t span { color: var(--v2-text); }
.v2-search-table .v2-search-venues .ex { margin-right: 12px; font-size: 12px; font-weight: 450; }
.v2-search-table .v2-search-venues .ex::before { width: 14px; height: 14px; }
.v2-search-table td:last-child a { white-space: nowrap; }

/* Issuer guide */
.v2-main .aux-issuer .aux-hero { padding-bottom: 0; }
.v2-main .aux-issuer .aux-lead { max-width: 1100px; font-size: 15px; line-height: 1.85; }
.v2-main .aux-issuer .seo-issuer-venues {
  display: flex;
  align-items: center;
  gap: 13px;
  max-width: none;
  margin-top: 20px;
  font-size: 13px;
}
.v2-main .aux-issuer .seo-issuer-venues strong { margin-right: 4px; color: var(--v2-ink); font-size: 14px; }
.v2-main .aux-issuer .seo-issuer-venues .ex {
  display: inline-flex;
  align-items: center;
  margin: 0 13px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 450;
}
.v2-main .aux-issuer .seo-issuer-venues .ex::before { width: 19px; height: 19px; margin-right: 7px; }
.v2-main .aux-issuer .aux-section { margin-top: 47px; }
.v2-main .aux-issuer .aux-section-head { margin-bottom: 24px; }
.v2-main .aux-issuer .seo-issuer-table { min-width: 740px; }
.v2-main .aux-issuer .seo-issuer-explain {
  max-width: none;
  margin-top: 38px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
}
.v2-main .aux-issuer .seo-issuer-explain p {
  max-width: 1050px;
  color: var(--v2-text);
  font-size: 14px;
}
.v2-main .aux-issuer .seo-issuer-explain .warn {
  padding: 10px 14px;
  border: 1px solid #f3e8cf;
  border-radius: 3px;
  background: #fffbf3;
  color: #836c43;
}

/* About with a reading column and anchored contents. */
.v2-main .aux-about .aux-hero { padding-bottom: 0; }
.v2-main .aux-about .aux-lead {
  max-width: 800px;
  font-family: "Songti SC", "Noto Serif CJK SC", Georgia, serif;
  font-size: 19px;
  line-height: 1.65;
}
.v2-about-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 240px;
  gap: 50px;
  align-items: start;
  margin-top: 25px;
}
.v2-main .aux-about .prose {
  width: 100%;
  min-width: 0;
  max-width: 860px;
  margin: 0;
  color: var(--v2-text);
  font-size: 16px;
  line-height: 1.8;
}
.v2-main .aux-about .prose h2 {
  scroll-margin-top: 70px;
  margin: 44px 0 16px;
  padding: 0;
  border: 0;
  color: var(--v2-ink);
  font-size: clamp(25px, 2.55vw, 34px);
  line-height: 1.28;
}
.v2-main .aux-about .prose h2:first-child { margin-top: 0; }
.v2-main .aux-about .prose p { margin: 0 0 11px; }
.v2-main .aux-about .prose p + p { margin-top: 4px; }
.v2-main .aux-about .prose a { color: var(--v2-blue); text-decoration-color: #b9cee9; }
.v2-about-toc {
  position: sticky;
  top: 56px;
  align-self: start;
  padding: 10px 0 0;
}
.v2-about-toc h2 {
  margin: 0 0 19px !important;
  color: var(--v2-ink);
  font-family: "Songti SC", "Noto Serif CJK SC", Georgia, serif;
  font-size: 24px !important;
}
.v2-about-toc nav { display: flex; flex-direction: column; gap: 13px; }
.v2-about-toc a { color: var(--v2-text) !important; font-size: 15px; }
.v2-about-toc a:hover { color: var(--v2-blue) !important; text-decoration: none; }

/* 404 */
.v2-main .aux-notfound {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58vh;
  padding: 45px 0 70px;
}
.v2-main .aux-notfound .aux-notfound-panel {
  width: min(100%, 720px);
  padding: 30px 12px;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.v2-main .aux-notfound .aux-eyebrow { margin-bottom: 10px; }
.v2-main .aux-notfound p { color: var(--v2-text); }
.v2-main .aux-notfound .btn {
  padding: 10px 21px;
  border-radius: 3px;
  background: #3f789f;
  border-color: #3f789f;
  box-shadow: none;
}
@media (max-width: 1000px) {
  .v2-about-layout { grid-template-columns: minmax(0, 1fr) 200px; gap: 24px; }
  .v2-about-toc { padding-left: 0; }
}
@media (max-width: 900px) {
  .v2-main .aux-page .aux-section:not(.prose) > h2 { margin-bottom: 20px; }
  .v2-main .aux-guide > .aux-section { margin-top: 40px; }
  .v2-main .guide-list .guide-card { padding: 20px; }
  .v2-main .aux-issuer .aux-section-head { margin-bottom: 20px; }
  .v2-main .aux-guides .guide-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v2-main .aux-page { padding-bottom: 30px; }
  .v2-main .aux-page .aux-crumbs { margin-bottom: 17px; }
  .v2-main .aux-page .aux-hero h1 { font-size: 39px; }
  .v2-main .aux-page .aux-lead { font-size: 14px; }
  .v2-search-form { height: 51px; margin-top: 22px; gap: 8px; }
  .v2-search-form .v2-icon { width: 18px; height: 18px; margin-left: 12px; }
  .v2-search-form input { font-size: 14px; }
  .v2-search-form button { width: 73px; font-size: 14px; }
  .v2-search-help { margin-bottom: 23px; }
  .v2-main .aux-issuer .seo-issuer-venues { gap: 8px; }
  .v2-main .aux-issuer .seo-issuer-venues strong { width: 100%; }
  .v2-main .aux-issuer .seo-issuer-venues .ex { margin-right: 7px; }
  .v2-main .aux-issuer .seo-table-wrap .aux-data-table tbody tr { border-radius: 3px; box-shadow: none; }
  .v2-about-layout { display: block; margin-top: 24px; }
  .v2-about-toc { position: static; min-height: 0; margin-top: 35px; padding: 15px 0 0; border-top: 1px solid var(--v2-line); border-left: 0; }
  .v2-main .aux-about .prose { font-size: 13px; }
}
@media (max-width: 600px) {
  .v2-main .aux-guides .guide-list { grid-template-columns: 1fr; }
  .v2-main .guide-list .guide-card h2,
  .v2-main .guide-list .guide-card h3 { font-size: 18px; }
}

/* Account guides keep the same lightweight icon system as other guide cards. */
.v2-main .guide-list .guide-card-binance-account-registration .v2-guide-icon,
.v2-main .guide-list .guide-card-okx-account-registration .v2-guide-icon {
  --v2-icon-url: url("/static/icons/ui/building-bank.svg");
}

/* seo-blocks.css */
/* 搜索优化相关的内容区块：H1 关键词后缀、股票页"购买渠道速览"、相关股票。沿用 v2 设计变量。 */
.sd-title-suffix,
.v2-h1-suffix {
  display: block;
  margin-top: 6px;
  font-size: .5em;
  font-weight: 500;
  line-height: 1.3;
  color: var(--v2-muted, var(--muted));
}

.sd-summary {
  margin: 20px 0 8px;
  padding: 18px 20px;
  border: 1px solid var(--v2-line, var(--border));
  border-radius: 12px;
  background: var(--surface, #fff);
}
.sd-summary h2 { margin: 0 0 16px; font-size: 18px; }
.sd-summary ul { margin: 0; padding-left: 20px; }
.sd-summary li { margin: 6px 0; line-height: 1.65; color: var(--v2-text, var(--text)); }
.sd-summary b { font-weight: 600; }

.sd-related { margin-top: 32px; }
.sd-related-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.sd-related-list li { min-width: 0; }
.sd-related-list a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 96px;
  height: 100%;
  padding: 14px 16px;
  border: 1px solid var(--v2-line, var(--border));
  border-radius: 8px;
  background: #fff;
}
.sd-related-list a:hover { border-color: var(--v2-blue, var(--accent)); text-decoration: none; }
.sd-related-list .tk-t { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-width: 0; }
.sd-related-list .tk-t b { color: var(--v2-ink); font-size: 14px; line-height: 1.25; }
.sd-related-list .tk-t > span {
  display: -webkit-box;
  overflow: hidden;
  max-width: 100%;
  color: var(--v2-muted);
  font-size: 12px;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media (max-width: 1100px) { .sd-related-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) { .sd-related-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .sd-related-list { grid-template-columns: 1fr; } }

.v2-footer-affiliate { font-size: 12px; color: var(--v2-muted, var(--muted)); }

/* 教程文章 */
.guide-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.guide-card {
  display: flex; flex-direction: column; gap: 12px; height: 100%; padding: 24px;
  border: 1px solid var(--v2-line, var(--border)); border-radius: 12px; color: var(--v2-text, var(--text));
}
.guide-card:hover { border-color: var(--v2-blue, var(--accent)); text-decoration: none; }
.guide-card h2, .guide-card h3 { margin: 0; font-size: 17px; line-height: 1.45; }
.guide-card p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--v2-muted, var(--muted)); }
.guide-more { margin-top: auto; font-size: 13px; color: var(--v2-blue, var(--accent)); }
.guide-byline { font-size: 13px; color: var(--v2-muted, var(--muted)); }
.guide-body { max-width: 760px; font-size: 16px; line-height: 1.8; }
.v2-main .aux-page .guide-body h2 { margin: 44px 0 18px; }
.v2-main .aux-page .guide-body h3 { margin: 30px 0 14px; font-size: 17px; }
.v2-main .aux-page .guide-body > :first-child { margin-top: 0; }
.guide-body table { margin: 12px 0 18px; font-size: 14px; }
.guide-body table td, .guide-body table th { white-space: normal; vertical-align: top; }
.guide-body code { padding: 1px 5px; border-radius: 4px; background: var(--surface-2, #f1f3f6); font-size: .9em; }
.guide-body .buy-guide-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 18px 0 22px; padding: 0; list-style: none; }
.guide-body .buy-guide-steps li { display: flex; gap: 12px; min-width: 0; padding: 16px; border: 1px solid #dce8f8; border-radius: 10px; background: #f8fbff; }
.guide-body .buy-guide-steps b { display: grid; flex: 0 0 32px; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: #e8f2ff; color: var(--v2-blue, #0967c5); font-size: 11px; line-height: 1; }
.guide-body .buy-guide-steps li div { display: grid; align-content: start; gap: 3px; }
.guide-body .buy-guide-steps strong { color: var(--v2-ink, #17253d); font-size: 14px; line-height: 1.4; }
.guide-body .buy-guide-steps span { color: var(--v2-text, #3d5878); font-size: 13px; line-height: 1.55; }
.sd-guides { margin-top: 44px; }
.v2-icon-guides { --v2-icon-url: url("/static/icons/ui/book.svg"); }
@media (max-width: 900px) {
  .v2-main .aux-page .guide-body h2 { margin: 36px 0 16px; }
  .v2-main .aux-page .guide-body > :first-child { margin-top: 0; }
}
@media (max-width: 600px) {
  .guide-body .buy-guide-steps { grid-template-columns: 1fr; }
}

/* 个股页：公司简介、近 30 天溢价表现 */
.sd-about { margin: 28px 0 8px; }
.sd-about h2 { margin: 0 0 10px; font-size: 22px; }
.sd-about p { max-width: 820px; margin: 0; font-size: 15px; line-height: 1.8; color: var(--v2-text, var(--text)); }
.sd-about .sd-about-meta { margin-top: 8px; font-size: 13px; color: var(--v2-muted, var(--muted)); }
.sd-stats { margin: 4px 0 22px; }
.sd-stats h3 { margin: 0 0 8px; font-size: 17px; color: var(--v2-ink, var(--text)); }
.sd-stats > p { max-width: 860px; margin: 0 0 6px; font-size: 14px; line-height: 1.75; }
.sd-stats .table-wrap { overflow-x: auto; margin: 12px 0 6px; }
.sd-stats-table { width: 100%; max-width: 760px; border-collapse: collapse; font-size: 14px; }
.sd-stats-table th, .sd-stats-table td { padding: 8px 10px; border-bottom: 1px solid var(--v2-line, var(--border)); text-align: left; white-space: nowrap; }
.sd-stats-table th { font-size: 12px; font-weight: 600; color: var(--v2-muted, var(--muted)); }
.sd-stats-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.sd-stats-table .sym { color: var(--v2-muted, var(--muted)); font-size: 12px; }

/* 专题页 */
.topic-page .topic-lead { max-width: 860px; margin-top: 10px; }
.topic-page .v2-page-kicker a { color: inherit; }
.topic-facts { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 18px 0 20px; padding: 0; list-style: none; }
.topic-facts li { display: flex; align-items: baseline; gap: 6px; }
.topic-facts strong { font-size: 22px; color: var(--v2-ink, var(--text)); }
.topic-facts span { font-size: 13px; color: var(--v2-muted, var(--muted)); }
.topic-more, .topic-page .sd-guides { margin-top: 36px; }
.topic-more h2, .topic-page .sd-guides h2 { margin: 0 0 12px; font-size: 22px; }
.topic-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.topic-chips a { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--v2-line, var(--border)); border-radius: 999px; font-size: 14px; color: var(--v2-text, var(--text)); }
.topic-chips a:hover { border-color: var(--v2-blue, var(--accent)); color: var(--v2-blue, var(--accent)); text-decoration: none; }
.topic-chips small { color: var(--v2-muted, var(--muted)); }
.topic-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.topic-cards a { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; border: 1px solid var(--v2-line, var(--border)); border-radius: 8px; color: var(--v2-ink, var(--text)); }
.topic-cards a:hover { border-color: var(--v2-blue, var(--accent)); text-decoration: none; }
.topic-cards strong { font-size: 17px; }
.topic-cards span { font-size: 13px; color: var(--v2-muted, var(--muted)); }
.v2-icon-topics { --v2-icon-url: url("/static/icons/ui/category.svg"); }

/* 交易平台页：购买步骤 */
.ex-steps { margin: 12px 0 10px; padding-left: 22px; max-width: 860px; }
.ex-steps li { margin: 0 0 8px; padding-left: 4px; font-size: 15px; line-height: 1.75; }
.ex-howto-more { margin: 4px 0 14px; font-size: 14px; }
.ex-faq { margin-top: 12px; max-width: 860px; }
.rank-more { margin: 10px 0 0; font-size: 14px; }
.ranking-page .v2-page-kicker a { color: inherit; }

/* 新上线页 */
.listings-week { margin: 8px 0 26px; padding: 16px 20px; border: 1px solid var(--v2-line, var(--border)); border-radius: 8px; background: var(--surface-2, #f8fbff); }
.listings-week h2 { margin: 0 0 8px; font-size: 18px; }
.listings-week p { margin: 0 0 4px; font-size: 14px; line-height: 1.75; }
.listings-day { margin-top: 24px; }
.listings-day h2 { margin: 0 0 10px; font-size: 18px; }
.listings-day h2 small { margin-left: 6px; font-size: 13px; font-weight: 400; color: var(--v2-muted, var(--muted)); }

/* 工具页 */
.tool-form { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px 18px; max-width: 860px; }
.tool-form label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; color: var(--v2-muted, var(--muted)); }
.tool-form input, .tool-form select { height: 40px; padding: 0 10px; border: 1px solid var(--v2-line, var(--border)); border-radius: 6px; background: var(--surface, #fff); color: var(--v2-ink, var(--text)); font-size: 15px; }
.tool-form input:focus, .tool-form select:focus { outline: 2px solid var(--v2-blue, var(--accent)); outline-offset: 1px; }
.tool-result { max-width: 860px; margin: 18px 0 8px; padding: 16px 20px; border-radius: 8px; background: var(--surface-2, #f8fbff); border: 1px solid var(--v2-line, var(--border)); }
.tool-result h2 { margin: 0 0 6px; font-size: 15px; }
.tool-result p { margin: 0; font-size: 16px; line-height: 1.75; color: var(--v2-ink, var(--text)); }

/* 交易平台页、工具页的问答：沿用个股页 v2 问答样式 */
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item { border-bottom: 1px solid var(--v2-line, var(--border)); }
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item > summary {
  display: flex; align-items: center; gap: 8px; padding: 13px 0; list-style: none; cursor: pointer;
  color: var(--v2-ink, var(--text)); font-size: 15px; font-weight: 500; line-height: 1.45;
}
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item > summary::-webkit-details-marker { display: none; }
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item > summary::marker { content: ""; }
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item > summary::before {
  content: ""; display: block; flex: 0 0 15px; width: 15px; height: 15px; background-color: currentColor;
  -webkit-mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  transition: transform .15s ease;
}
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item[open] > summary::before { transform: rotate(180deg); }
:is(.ex-faq, .tool-page .sd-faq-list) .sd-faq-item p { max-width: 900px; margin: 0 0 13px 23px; font-size: 14px; line-height: 1.75; color: var(--v2-text, var(--muted)); }
.sd-topics { margin-top: 40px; } .sd-topics h2 { margin: 0 0 12px; font-size: 22px; }
.ex-show-all { margin: 10px 0 0; font-size: 14px; }

/* 术语表、周报 */
.glossary-index { margin: 8px 0 24px; }
.glossary-list { margin: 0; max-width: 880px; }
.glossary-term { padding: 16px 0; border-bottom: 1px solid var(--v2-line, var(--border)); scroll-margin-top: 88px; }
.glossary-term:target { background: var(--surface-2, #f8fbff); }
.glossary-term dt { font-size: 17px; font-weight: 600; color: var(--v2-ink, var(--text)); }
.glossary-term dt a { color: inherit; }
.glossary-term dd { margin: 6px 0 0; }
.glossary-term dd p { margin: 0 0 4px; font-size: 15px; line-height: 1.75; }
.glossary-more { font-size: 13px; }
.guides-glossary { margin: 8px 0 0; font-size: 14px; }
.weekly-pager { display: flex; flex-wrap: wrap; gap: 18px; margin: 32px 0 12px; font-size: 14px; }
.weekly-volume { margin: 0; padding-left: 22px; line-height: 2; }
.weekly-page .aux-eyebrow a { color: inherit; }
.glossary-link { margin: 14px 0 0; font-size: 14px; }
.ex-kyc-link { margin-left: 12px; font-size: 14px; white-space: nowrap; }

/* Source screenshots: readable full-size asset, compact responsive preview. */
.guide-body .guide-screenshot { margin: 28px 0 36px; }
.guide-body .guide-screenshot-link { display: block; overflow: hidden; border: 1px solid var(--v2-line, #e4edf7); border-radius: 8px; background: #fff; cursor: zoom-in; }
.guide-body .guide-screenshot-link:focus-visible { outline: 2px solid var(--v2-blue, #0967c5); outline-offset: 4px; }
.guide-body .guide-screenshot img { display: block; width: 100%; height: auto; margin: 0; }
.guide-body .guide-screenshot figcaption { display: grid; gap: 6px; margin-top: 12px; font-size: 13px; line-height: 1.7; color: var(--v2-text, #3d5878); overflow-wrap: anywhere; }
.guide-body .guide-screenshot figcaption strong { color: var(--v2-ink, #17253d); font-size: 14px; }
.guide-body .guide-screenshot figcaption small { color: var(--v2-muted, #8298b1); font-size: 12px; }

/* 个股页：数据要点 */
.sd-facts { margin: 24px 0 8px; }
.sd-facts h2 { margin: 0 0 10px; font-size: 22px; }
.sd-facts ul { max-width: 860px; margin: 0; padding-left: 20px; }
.sd-facts li { margin: 0 0 6px; font-size: 15px; line-height: 1.75; }

/* brand-mark.css */
/* 站点 Logo（内联 SVG）：侧栏和页脚 88px 宽，移动端顶栏 80px 宽。 */
.v2-brand-crop .okx-logo {
  display: block;
  width: 88px;
  max-width: none;
  height: auto;
  overflow: visible;
}
.v2-mobile-brand .v2-brand-crop .okx-logo { width: 80px; }
/* 圆点绕圆环转动时会略超出 SVG 边界，展开状态放宽裁切范围。 */
.v2-brand-crop { overflow: visible; clip-path: inset(-4px -3px -4px -4px); }
/* 侧栏收起时只显示圆环，字标从 26px 左右开始。 */
.v2-sidebar-collapsed .v2-sidebar .v2-brand-crop { clip-path: inset(-4px 0 -4px -4px); }

/* guide-toc.css */
/* 教程文章大纲：宽屏时固定在正文右侧并跟随滚动，窄屏时放在正文上方，可折叠。 */
.guide-body h2[id], .guide-body h3[id], #guide-top { scroll-margin-top: 88px; }

.guide-toc { font-size: 14px; line-height: 1.5; }
.guide-toc summary {
  color: var(--v2-ink, var(--text));
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .04em;
  cursor: pointer;
  list-style: none;
}
.guide-toc summary::-webkit-details-marker { display: none; }
.guide-toc ol { margin: 0; padding: 0; list-style: none; }
.guide-toc li { margin: 0; }
.guide-toc a {
  display: block;
  padding: 6px 0 6px 14px;
  border-left: 2px solid var(--v2-line, var(--border));
  color: var(--v2-text, var(--muted));
  text-decoration: none;
  transition: color .15s ease, border-color .15s ease;
}
.guide-toc ol ol a { padding-left: 28px; font-size: 13px; }
.guide-toc a:hover { color: var(--v2-blue, var(--accent)); text-decoration: none; }
.guide-toc a.is-active {
  border-left-color: var(--v2-blue, var(--accent));
  color: var(--v2-blue, var(--accent));
  font-weight: 600;
}
.guide-toc a.is-parent { color: var(--v2-ink, var(--text)); }
.guide-toc .guide-toc-top {
  margin-top: 14px;
  padding-left: 0;
  border-left: 0;
  color: var(--v2-muted, var(--muted));
  font-size: 13px;
}

@media (min-width: 1100px) {
  .v2-main .aux-guide .guide-layout.has-toc {
    display: grid;
    grid-template-columns: minmax(0, 760px) 240px;
    column-gap: clamp(40px, 5vw, 80px);
    align-items: start;
  }
  .v2-main .aux-guide .guide-layout.has-toc .guide-body { grid-column: 1; grid-row: 1; }
  .v2-main .aux-guide .guide-toc-wrap {
    grid-column: 2;
    grid-row: 1;
    position: sticky;
    top: 88px;
    margin-top: 35px;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .guide-toc summary { margin-bottom: 12px; pointer-events: none; }
}

@media (max-width: 1099.98px) {
  .v2-main .aux-guide .guide-toc-wrap { margin-top: 28px; }
  .guide-toc {
    border: 1px solid var(--v2-line, var(--border));
    border-radius: 8px;
    background: var(--surface-2, #f8fbff);
  }
  .guide-toc summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
  }
  .guide-toc summary::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    transition: transform .2s ease;
  }
  .guide-toc[open] summary::after { transform: translateY(2px) rotate(-135deg); }
  .guide-toc nav { padding: 0 16px 14px; }
  .guide-toc .guide-toc-top { display: none; }
}

/* v2-arrows.css */
/* Shared SVG arrows. Keep disclosure, sorting, and navigation icons consistent. */
.v2-arrow-right,
.v2-arrow-left {
  width: 14px;
  height: 14px;
  margin-inline: 1px;
  vertical-align: -2px;
}
.v2-arrow-right { transform: rotate(-90deg); }
.v2-arrow-left { transform: rotate(90deg); }

.stock-detail :is(.sd-row-detail, .sd-faq-item, .chart-table) > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  cursor: pointer;
}
.stock-detail :is(.sd-row-detail, .sd-faq-item, .chart-table) > summary::-webkit-details-marker { display: none; }
.stock-detail :is(.sd-row-detail, .sd-faq-item, .chart-table) > summary::marker { content: ""; }
.stock-detail :is(.sd-row-detail, .sd-faq-item, .chart-table) > summary::before {
  content: "";
  display: block;
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  background-color: currentColor;
  -webkit-mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  transition: transform .15s ease;
}
.stock-detail :is(.sd-row-detail, .sd-faq-item, .chart-table)[open] > summary::before { transform: rotate(180deg); }
.stock-detail .sd-row-detail > summary::before { flex-basis: 12px; width: 12px; height: 12px; }

.v2-market-pick summary::after {
  content: "";
  display: block;
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  margin: 0 0 0 10px;
  border: 0;
  background-color: #6a87af;
  -webkit-mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  transform: none;
  transition: transform .15s ease;
}
.v2-market-pick[open] summary::after { margin-top: 0; transform: rotate(180deg); }

.grid th[aria-sort="ascending"]::after,
.grid th[aria-sort="descending"]::after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-left: 5px;
  background-color: currentColor;
  -webkit-mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  mask: url("/static/icons/ui/chevron-down.svg") center / contain no-repeat;
  vertical-align: -2px;
}
.grid th[aria-sort="ascending"]::after { transform: rotate(180deg); }

