/* ============================================================
   NodeXX Clone Demo — 设计系统
   深空黑底 + 源站亮绿 accent (#25ED78)
   ============================================================ */
:root {
  --bg-0: #070808;
  --bg-1: #0b0c0d;
  --bg-2: #101213;
  --bg-3: #16191a;
  --bg-4: #1d2122;
  --line: #171a1b;
  --line-2: #232728;

  --txt-0: #f7f7fa;
  --txt-1: #b9bec7;
  --txt-2: #7d838f;
  --txt-3: #545a66;

  --gold: #25ed78;
  --gold-2: #5af7a5;
  --gold-dim: rgba(37, 237, 120, .12);
  --gold-line: rgba(37, 237, 120, .32);
  --acc-ink: #070808;

  --up: #f6465d;
  --down: #2ebd85;
  --up-bg: rgba(246, 70, 93, .12);
  --down-bg: rgba(46, 189, 133, .12);

  --blue: #4a9eff;
  --purple: #a06bff;

  --r-s: 4px;
  --r-m: 8px;
  --r-l: 12px;
  --r-xl: 18px;

  --shadow: 0 8px 32px rgba(0, 0, 0, .5);
  --shadow-s: 0 2px 12px rgba(0, 0, 0, .35);

  --hdr: 64px;
  --hdr-min: 1080px;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --mono: 'SF Mono', 'Roboto Mono', Consolas, monospace;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

html { scroll-behavior: smooth; }

body {
  background: var(--bg-0);
  color: var(--txt-0);
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
input, select, textarea { font-family: inherit; }
ul, ol { list-style: none; }
table { border-collapse: collapse; width: 100%; }

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--bg-4); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--line-2); }

.num { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.up { color: var(--up); }
.down { color: var(--down); }
.muted { color: var(--txt-2); }
.dim { color: var(--txt-3); }

/* ===================== 顶部导航 ===================== */
.nx-header {
  position: sticky; top: 0; z-index: 200;
  height: var(--hdr);
  background: #070808;   /* 源站顶栏为不透明深色 */
  backdrop-filter: none;
  border-bottom: 1px solid var(--line);
  display: flex; align-items: center;
  padding: 0 24px; gap: 8px;
}
.nx-logo { display: flex; align-items: center; gap: 9px; font-size: 17px; font-weight: 700; letter-spacing: -.2px; margin-right: 20px; flex-shrink: 0; }
/* 源站真 Logo（深色主题用 brand-dark.svg，浅色主题换 logo-light） */
/* Logo：深色主题 30px（SVG 矢量），浅色主题 26px（PNG 1276×298） */
.nx-logo-img { height: 30px; width: auto; display: block; image-rendering: -webkit-optimize-contrast; }
body[data-theme="light"] .nx-logo-img { height: 26px; }

/* 首页专属：hero 贴顶 + 顶栏透明浮层（对齐源站首页，导航栏叠在视频上） */
body[data-page="index"] .nx-header {
  position: absolute; top: 0; left: 0; right: 0;
  background: transparent; backdrop-filter: none;
  border-bottom-color: transparent;
}
body[data-page="index"] .nx-header .nx-nav > li > a { color: #eef2f6; text-shadow: 0 1px 10px rgba(0,0,0,.55); }
body[data-page="index"] .nx-header .nx-nav > li > a:hover { background: rgba(255,255,255,.12); color: #fff; }
body[data-page="index"] .nx-header .nx-nav > li > a.on { color: var(--gold); }
body[data-page="index"] .nx-header .nx-icon { color: #eef2f6; text-shadow: 0 1px 10px rgba(0,0,0,.55); }
body[data-page="index"] .nx-header .nx-icon:hover { background: rgba(255,255,255,.12); color: #fff; }
body[data-page="index"] .nx-header .nx-user-b { background: rgba(20,22,23,.7); border-color: rgba(255,255,255,.16); color: #e4e8ec; }
body[data-page="index"] .ticker { display: none; }
body[data-page="copy"] .ticker { display: none; }
body[data-page="markets"] .ticker { display: none; }
.nx-logo-mark {
  width: 26px; height: 26px; border-radius: 7px;
  background: linear-gradient(135deg, var(--gold), #10b862);
  display: grid; place-items: center;
  color: #070808; font-weight: 800; font-size: 15px;
  box-shadow: 0 2px 10px rgba(37,237,120, .3);
}
.nx-logo b { color: var(--gold); font-weight: 700; }

.nx-nav { display: flex; align-items: center; gap: 2px; }
.nx-nav > li { position: relative; }
.nx-nav > li > a {
  display: flex; align-items: center; gap: 4px;
  padding: 8px 13px; border-radius: var(--r-m);
  color: var(--txt-1); font-size: 13.5px; font-weight: 500;
  transition: all .16s; white-space: nowrap;
}
.nx-nav > li > a:hover { color: var(--txt-0); background: var(--bg-3); }
.nx-nav > li > a.on { color: var(--gold); }

.nx-drop {
  position: absolute; top: calc(100% + 8px); left: 0;
  min-width: 218px; background: var(--bg-2);
  border: 1px solid var(--line); border-radius: var(--r-l);
  padding: 7px; box-shadow: var(--shadow);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: all .18s;
}
.nx-nav > li:hover .nx-drop,
.nx-user:hover .nx-drop,
.nx-user.on .nx-drop { opacity: 1; visibility: visible; transform: translateY(0); }
.nx-drop a {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 11px; border-radius: var(--r-m);
  font-size: 13px; color: var(--txt-1); transition: all .14s;
}
.nx-drop a:hover { background: var(--bg-4); color: var(--txt-0); }
.nx-drop a i { font-style: normal; font-size: 14px; width: 18px; text-align: center; }
.nx-drop a small { display: block; color: var(--txt-3); font-size: 11px; font-weight: 400; }

/* 顶栏导航下拉（对齐源站实测：宽 339 / bg #0d0e0f / 圆角 12 / 图标 + 标题 + 描述 + 分组标题） */
.nx-nav > li .nx-drop { min-width: 339px; border-radius: 12px; padding: 9px; background: #0d0e0f; }
.nx-drop .nx-grp { font-size: 11.5px; color: var(--txt-3); padding: 11px 12px 5px; letter-spacing: .2px; }
.nx-drop a .nx-i { width: 20px; height: 20px; flex-shrink: 0; margin-top: 2px; }
.nx-drop a .tx { display: flex; flex-direction: column; min-width: 0; }
.nx-drop a .tx .t { font-size: 13.5px; color: var(--txt-0); line-height: 1.35; }
.nx-drop a .tx .d { font-size: 12px; color: var(--txt-2); margin-top: 3px; line-height: 1.5; }
.nx-nav > li > a .nx-fire { width: 17px; height: 17px; margin-left: 4px; vertical-align: -3px; }
.nx-nav > li > a .nx-gift { width: 16px; height: 16px; margin-left: 4px; vertical-align: -3px; }

.nx-right { margin-left: auto; display: flex; align-items: center; gap: 16px; white-space: nowrap; flex-shrink: 0; }
.nx-right > * { white-space: nowrap; }
.nx-nav { white-space: nowrap; }
.nx-nav > li > a { white-space: nowrap; }

/* 空状态插画（源站同款线条文档图）· 描边随主题 */
.aw-empty svg, .copy-empty svg, .ad-empty svg { width: 92px; height: 92px; color: #e3e6ea; margin-bottom: 10px; display: block; }
body:not(.aw) .aw-empty svg, body:not(.aw) .copy-empty svg, body:not(.aw) .ad-empty svg { color: #2a2f31; }
body:not(.aw) .aw-empty svg { color: #b9bec7; }

/* 登录态用户菜单 */
.nx-user { position: relative; }
.nx-user-b {
  display: flex; align-items: center; gap: 8px; height: 34px; padding: 0 11px 0 5px;
  border: 1px solid var(--line-2); border-radius: 999px; background: var(--bg-2);
  cursor: pointer; transition: all .16s; font-size: 13px; color: var(--txt-1);
}
.nx-user-b:hover { border-color: var(--gold-line); color: var(--txt-0); }
.nx-user-b .av {
  width: 25px; height: 25px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, #2a3140, #161a22);
  display: grid; place-items: center; font-family: var(--mono);
  font-size: 11.5px; font-weight: 700; color: var(--gold);
}
.nx-user-b .nm { max-width: 90px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nx-user:hover .nx-drop { opacity: 1; visibility: visible; transform: translateY(0); }
.nx-drop-r { left: auto; right: 0; min-width: 196px; }
.nx-drop-r .sep { height: 1px; background: var(--line); margin: 6px 4px; }

/* 顶栏胶囊按钮（对齐源站：登录=绿描边 / 注册=绿实心） */
.nx-pill-line { display: inline-flex; align-items: center; justify-content: center; height: 34px; padding: 0 20px;
  border-radius: 999px; border: 1px solid var(--gold); color: var(--gold); font-size: 14px; transition: all .16s; }
.nx-pill-line:hover { background: var(--gold-dim); }
/* 充值胶囊（源站实测 52×28） */
.nx-pill-gold { display: inline-flex; align-items: center; justify-content: center; height: 28px; padding: 0 12px;
  border-radius: 999px; background: var(--gold); color: var(--acc-ink); font-size: 14px; font-weight: 500; transition: all .16s; }
.nx-pill-gold:hover { background: var(--gold-2); }
/* 顶栏图标（源站实测 24×24，线性 SVG） */
.nx-icon { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center;
  color: var(--txt-1); font-size: 15px; transition: all .16s; position: relative; }
.nx-icon:hover { color: var(--txt-0); }
.nx-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7;
  stroke-linecap: round; stroke-linejoin: round; display: block; }
/* 顶栏竖线分隔（源站：头像与通知图标之间） */
.nx-sep { width: 1px; height: 18px; background: rgba(255,255,255,.16); flex-shrink: 0; }
html:not([data-theme="dark"]) body.lt .nx-sep,
body.aw .nx-sep { background: rgba(0,0,0,.14); }
/* 通知红点 */
.nx-icon .ndot { position: absolute; top: 0; right: 0; width: 7px; height: 7px; border-radius: 50%;
  background: #f6465d; border: 1.5px solid var(--bg-0); }
/* 资产下拉顶部「总览 + 总资产估值」（对齐源站） */
.nx-atop { display: block; padding: 14px 16px 12px; }
.nx-atop .k { display: block; font-size: 13px; color: var(--txt-2); }
.nx-atop .k i { font-style: normal; opacity: .55; font-size: 11px; }
.nx-atop .v { display: block; margin-top: 9px; font-size: 20px; font-weight: 700; color: var(--txt-0); }
.nx-atop .u { display: block; margin-top: 3px; font-size: 12px; color: var(--txt-3); }
.nx-atop:hover .v { color: var(--gold); }

/* ============================================================
   头像下拉菜单（对齐源站：用户卡 / 橙色安全提示条 / VIP 行 / 带图标菜单）
   源站实测：面板宽 339 / 圆角 12 / bg #0d0e0f
   ============================================================ */
.nx-umenu { min-width: 300px; padding: 10px 10px 8px; }
.nx-ucard { display: flex; gap: 14px; padding: 8px 8px 12px; }
.nx-ucard .ava-lg { width: 68px; height: 68px; border-radius: 50%; flex-shrink: 0; overflow: hidden;
  background: linear-gradient(135deg,#2a3132,#171a1b); display: grid; place-items: center;
  color: var(--txt-1); font-size: 24px; font-weight: 700; }
.nx-ucard .ava-lg img { width: 100%; height: 100%; object-fit: cover; }
.nx-ucard .inf { min-width: 0; padding-top: 4px; }
.nx-ucard .un { font-size: 16px; font-weight: 700; color: var(--txt-0); letter-spacing: .2px; }
.nx-ucard .uid { margin-top: 5px; font-size: 12px; color: var(--txt-3); }
.nx-ucard .cpi { font-style: normal; cursor: pointer; margin-left: 3px; opacity: .8; }
.nx-ucard .cpi:hover { color: var(--gold); }
.nx-badge2 { display: inline-block; margin-top: 9px; font-size: 11px; color: #8e8e92;
  background: rgba(255,255,255,.07); padding: 3px 9px; border-radius: 4px; }
/* 橙色安全等级提示条 */
.nx-secbar { display: flex; gap: 9px; align-items: flex-start; margin: 0 4px 12px; padding: 10px 12px;
  border-radius: 8px; background: rgba(255,138,0,.10); border: 1px solid rgba(255,138,0,.22); }
.nx-secbar.hide { display: none; }
.nx-secbar .w { width: 17px; height: 17px; flex-shrink: 0; margin-top: 1px; fill: none;
  stroke: #ff8a00; stroke-width: 1.7; stroke-linecap: round; }
.nx-secbar .l { flex: 1; min-width: 0; }
.nx-secbar .t { display: block; font-size: 13px; font-weight: 700; color: #ff8a00; text-decoration: none; }
.nx-secbar .t:hover { text-decoration: underline; }
.nx-secbar .d { margin-top: 3px; font-size: 11.5px; color: #b98a4e; }
.nx-secbar .x { font-size: 12px; color: #8e8e92; cursor: pointer; padding: 0 2px; }
.nx-secbar .x:hover { color: #fff; }
/* VIP 行 */
.nx-vip { display: flex; align-items: center; gap: 10px; margin: 0 4px 10px; padding: 8px 10px;
  border-radius: 6px; background: rgba(255,255,255,.05); }
.nx-vip .v0 { font-size: 10.5px; font-weight: 700; color: #070808; background: #d8dde2;
  padding: 2px 7px; border-radius: 3px; letter-spacing: .3px; }
.nx-vip .up { margin-left: auto; font-size: 12.5px; color: var(--txt-1); cursor: pointer; text-decoration: none; }
.nx-vip .up:hover { color: var(--gold); text-decoration: underline; }
/* 带图标的菜单项 */
.nx-umenu .nx-mi { display: flex; align-items: center; gap: 11px; padding: 11px 10px; border-radius: 6px;
  font-size: 14px; color: var(--txt-0); transition: background .15s; }
.nx-umenu .nx-mi:hover { background: rgba(255,255,255,.06); }
.nx-umenu .nx-mi .ic { width: 20px; height: 20px; flex-shrink: 0; display: grid; place-items: center; }
.nx-umenu .nx-mi .ic svg { width: 19px; height: 19px; fill: none; stroke: var(--gold);
  stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.nx-umenu .sep { height: 1px; background: rgba(255,255,255,.08); margin: 8px 6px; }

/* 页脚社交图标 */
.fsoc { display: flex; gap: 10px; }
.fsoc a { width: 32px; height: 32px; border-radius: 50%; background: #151718; border: 1px solid #24282a;
  display: grid; place-items: center; color: var(--txt-2); transition: all .16s; }
.fsoc a:hover { border-color: var(--gold-line); color: var(--gold); background: var(--gold-dim); }
.fsoc a svg { display: block; }

/* 行情数据源状态灯：实时 / 模拟 */
.feed-badge {
  display: inline-flex; align-items: center; gap: 6px; height: 29px; padding: 0 11px;
  border-radius: 999px; border: 1px solid var(--line-2); background: var(--bg-2);
  font-size: 11.5px; font-weight: 600; user-select: none; cursor: default; white-space: nowrap;
}
.feed-badge i { width: 7px; height: 7px; border-radius: 50%; background: var(--txt-3); display: block; flex-shrink: 0; }
.feed-badge b { color: var(--txt-2); font-weight: 600; }
.feed-badge.on { border-color: var(--gold-line); background: var(--gold-dim); }
.feed-badge.on i { background: var(--gold); animation: nx-pulse 1.9s infinite; }
.feed-badge.on b { color: var(--gold); }
@keyframes nx-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(37,237,120,.55); }
  70%  { box-shadow: 0 0 0 7px rgba(37,237,120,0); }
  100% { box-shadow: 0 0 0 0 rgba(37,237,120,0); }
}
@media (max-width: 1180px) { .feed-badge { display: none; } }
.nx-ghost { color: var(--txt-1); font-size: 13.5px; padding: 8px 12px; border-radius: var(--r-m); transition: all .16s; }
.nx-ghost:hover { color: var(--txt-0); background: var(--bg-3); }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 9px 17px; border-radius: var(--r-m);
  font-size: 13.5px; font-weight: 600; transition: all .16s;
  border: 1px solid transparent; white-space: nowrap;
}
.btn-gold { background: var(--gold); color: var(--acc-ink); }
.btn-gold:hover { background: var(--gold-2); box-shadow: 0 4px 18px rgba(37,237,120, .3); }
.btn-line { border-color: var(--line-2); color: var(--txt-0); }
.btn-line:hover { border-color: var(--gold-line); color: var(--gold); background: var(--gold-dim); }
.btn-ghost2 { color: var(--txt-1); }
.btn-ghost2:hover { color: var(--txt-0); background: var(--bg-3); }
.btn-buy { background: var(--up); color: #fff; }
.btn-buy:hover { filter: brightness(1.1); }
.btn-sell { background: var(--down); color: #fff; }
.btn-sell:hover { filter: brightness(1.1); }
.btn-sm { padding: 6px 12px; font-size: 12.5px; }
.btn-lg { padding: 13px 26px; font-size: 15px; }
.btn-block { width: 100%; }
.btn:disabled { opacity: .45; cursor: not-allowed; }

/* ===================== 布局 ===================== */
.wrap { max-width: 1320px; margin: 0 auto; padding: 0 24px; }
.wrap-md { max-width: 980px; margin: 0 auto; padding: 0 24px; }
.page { padding: 28px 0 72px; }
.page-head { margin-bottom: 22px; }
.page-head h1 { font-size: 25px; font-weight: 700; letter-spacing: -.4px; margin-bottom: 6px; }
.page-head p { color: var(--txt-2); font-size: 13.5px; }

.card {
  background: var(--bg-2); border: 1px solid var(--line);
  border-radius: var(--r-l); padding: 20px;
}
.card-tight { padding: 0; overflow: hidden; }
.card-h { display: flex; align-items: center; justify-content: space-between; padding: 15px 20px; border-bottom: 1px solid var(--line); }
.card-h h3 { font-size: 15px; font-weight: 600; }
.card-b { padding: 20px; }

.grid { display: grid; gap: 16px; }
.g2 { grid-template-columns: repeat(2, 1fr); }
.g3 { grid-template-columns: repeat(3, 1fr); }
.g4 { grid-template-columns: repeat(4, 1fr); }
.g5 { grid-template-columns: repeat(5, 1fr); }
.g6 { grid-template-columns: repeat(6, 1fr); }

.sec { padding: 60px 0; }
.sec-h { text-align: center; margin-bottom: 40px; }
.sec-h h2 { font-size: 30px; font-weight: 700; letter-spacing: -.6px; margin-bottom: 10px; }
.sec-h p { color: var(--txt-2); font-size: 14.5px; }

/* ===================== 表格 ===================== */
.tbl { font-size: 13px; }
.tbl th {
  text-align: right; padding: 11px 16px; color: var(--txt-2);
  font-weight: 500; font-size: 12.5px; white-space: nowrap;
  border-bottom: 1px solid var(--line);
}
.tbl th:first-child, .tbl td:first-child { text-align: left; }
.tbl td { text-align: right; padding: 12px 16px; border-bottom: 1px solid rgba(36,39,46,.5); white-space: nowrap; }
.tbl tbody tr { transition: background .12s; }
.tbl tbody tr:hover { background: var(--bg-3); }
.tbl tbody tr:last-child td { border-bottom: none; }
.tbl .sym { display: flex; align-items: center; gap: 9px; }

.coin {
  width: 24px; height: 24px; border-radius: 50%;
  display: grid; place-items: center; flex-shrink: 0;
  font-size: 10px; font-weight: 700; color: #fff;
}
.coin-lg { width: 34px; height: 34px; font-size: 13px; }

/* 源站真实币种 logo（site.js 输出的 <img>） */
.site-logo { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; flex-shrink: 0; display: block; background: #1a1d20; }
img.site-logo.coin { width: 24px; height: 24px; }
img.site-logo.coin-lg { width: 34px; height: 34px; }
img.site-logo.coin-xl { width: 46px; height: 46px; }
img.site-logo.coin-xxl { width: 66px; height: 66px; }

.badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 8px; border-radius: 20px; font-size: 11px; font-weight: 600;
  background: var(--bg-4); color: var(--txt-1);
}
.badge-gold { background: var(--gold-dim); color: var(--gold); }
.badge-up { background: var(--up-bg); color: var(--up); }
.badge-down { background: var(--down-bg); color: var(--down); }
.badge-blue { background: rgba(74,158,255,.12); color: var(--blue); }

.pill {
  padding: 5px 13px; border-radius: 20px; font-size: 12.5px;
  color: var(--txt-2); transition: all .14s; cursor: pointer; white-space: nowrap;
}
.pill:hover { color: var(--txt-0); }
.pill.on { background: var(--gold-dim); color: var(--gold); }

.tabs { display: flex; gap: 2px; border-bottom: 1px solid var(--line); padding: 0 20px; }
.tab {
  padding: 13px 15px; font-size: 13.5px; color: var(--txt-2);
  border-bottom: 2px solid transparent; margin-bottom: -1px; transition: all .15s; cursor: pointer;
}
.tab:hover { color: var(--txt-0); }
.tab.on { color: var(--gold); border-bottom-color: var(--gold); }

.seg { display: inline-flex; background: var(--bg-3); border-radius: var(--r-m); padding: 3px; gap: 2px; }
.seg button { padding: 6px 14px; border-radius: 6px; font-size: 12.5px; color: var(--txt-2); transition: all .15s; }
.seg button.on { background: var(--bg-4); color: var(--txt-0); }

/* ===================== 表单 ===================== */
.field { margin-bottom: 15px; }
.field label { display: block; font-size: 12.5px; color: var(--txt-2); margin-bottom: 7px; }
.input {
  width: 100%; background: var(--bg-1); border: 1px solid var(--line-2);
  border-radius: var(--r-m); padding: 11px 13px; color: var(--txt-0);
  font-size: 13.5px; transition: border-color .15s; outline: none;
}
.input:focus { border-color: var(--gold-line); }
.input::placeholder { color: var(--txt-3); }
.input-group { position: relative; }
.input-group .suffix {
  position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  font-size: 12.5px; color: var(--txt-2); font-weight: 600;
}
.input-group .input { padding-right: 52px; }

/* ===================== 行情组件 ===================== */
.ticker {
  display: flex; align-items: center; gap: 28px;
  overflow: hidden; position: relative; height: 34px;
  border-bottom: 1px solid var(--line); background: var(--bg-1);
  font-size: 12.5px;
}
.ticker-track { display: flex; gap: 30px; animation: tick 48s linear infinite; white-space: nowrap; padding-left: 20px; }
.ticker:hover .ticker-track { animation-play-state: paused; }
@keyframes tick { from { transform: translateX(0); } to { transform: translateX(-50%); } }

.canvas-box { position: relative; width: 100%; }
canvas { display: block; width: 100%; }

.depth-row { display: flex; height: 19px; position: relative; align-items: center; font-size: 12px; }
.depth-row .bar { position: absolute; top: 0; bottom: 0; opacity: .16; }
.depth-row .bar.ask { right: 0; background: var(--up); }
.depth-row .bar.bid { left: 0; background: var(--down); }
.depth-row span { position: relative; z-index: 1; padding: 0 8px; }

/* ===================== 交易终端 ===================== */
.term {
  display: grid; grid-template-columns: 268px 1fr 296px;
  gap: 1px; background: var(--line);
  height: calc(100vh - var(--hdr)); overflow: hidden;
}
.term.col { display: flex; flex-direction: column; }
.panel { background: var(--bg-1); display: flex; flex-direction: column; overflow: hidden; }
.panel-h {
  height: 40px; display: flex; align-items: center; gap: 14px;
  padding: 0 14px; border-bottom: 1px solid var(--line); flex-shrink: 0;
  font-size: 13px;
}
.panel-b { flex: 1; overflow-y: auto; }

.sym-row {
  display: flex; align-items: center; gap: 9px; padding: 7px 14px;
  font-size: 12.5px; cursor: pointer; transition: background .12s;
}
.sym-row:hover { background: var(--bg-3); }
.sym-row.on { background: var(--gold-dim); }
.sym-row .v { margin-left: auto; text-align: right; font-family: var(--mono); }

.trade-btns { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.trade-btns button { padding: 10px; font-size: 13.5px; font-weight: 600; color: var(--txt-2); transition: all .15s; }
.trade-btns button.on-buy { color: var(--up); border-bottom: 2px solid var(--up); }
.trade-btns button.on-sell { color: var(--down); border-bottom: 2px solid var(--down); }
.trade-btns button:hover { background: var(--bg-3); }

.lev-slider {
  -webkit-appearance: none; width: 100%; height: 3px;
  background: var(--bg-4); border-radius: 2px; outline: none;
}
.lev-slider::-webkit-slider-thumb {
  -webkit-appearance: none; width: 14px; height: 14px; border-radius: 50%;
  background: var(--gold); cursor: pointer; box-shadow: 0 0 0 3px var(--gold-dim);
}
.lev-marks { display: flex; justify-content: space-between; font-size: 10.5px; color: var(--txt-3); margin-top: 7px; }

/* ===================== 弹窗 / 抽屉 ===================== */
.mask {
  position: fixed; inset: 0; z-index: 900;
  background: rgba(0,0,0,.62); backdrop-filter: blur(3px);
  display: none; align-items: center; justify-content: center; padding: 24px;
}
.mask.on { display: flex; }
.modal {
  background: var(--bg-2); border: 1px solid var(--line-2);
  border-radius: var(--r-xl); width: 100%; max-width: 470px;
  max-height: 88vh; overflow-y: auto; box-shadow: var(--shadow);
  animation: pop .2s ease;
}
@keyframes pop { from { opacity: 0; transform: scale(.96) translateY(8px); } to { opacity: 1; transform: none; } }
.modal-h { display: flex; align-items: center; justify-content: space-between; padding: 19px 22px; border-bottom: 1px solid var(--line); }
.modal-h h3 { font-size: 16.5px; font-weight: 600; }
.modal-b { padding: 22px; }
.x { color: var(--txt-2); font-size: 20px; line-height: 1; padding: 4px 8px; border-radius: 6px; }
.x:hover { color: var(--txt-0); background: var(--bg-4); }

.toast-host { position: fixed; top: 76px; right: 24px; z-index: 1000; display: flex; flex-direction: column; gap: 10px; }
.toast {
  background: var(--bg-3); border: 1px solid var(--line-2); border-left: 3px solid var(--gold);
  border-radius: var(--r-m); padding: 13px 18px; font-size: 13px;
  box-shadow: var(--shadow); animation: slideIn .22s ease; min-width: 250px;
}
.toast.ok { border-left-color: var(--down); }
.toast.err { border-left-color: var(--up); }
@keyframes slideIn { from { opacity: 0; transform: translateX(24px); } to { opacity: 1; transform: none; } }

/* ===================== 页脚 ===================== */
.nx-footer { background: var(--bg-1); border-top: 1px solid var(--line); padding: 150px 0 90px; margin-top: auto; }
.nx-footer .fgrid { display: grid; grid-template-columns: repeat(4, 1fr) 1.05fr; gap: 38px; margin-bottom: 76px; }
.nx-footer h4 { font-size: 13px; font-weight: 600; margin-bottom: 18px; color: var(--txt-0); }
.nx-footer li { margin-bottom: 14px; }
.nx-footer li a { color: var(--txt-2); font-size: 12.5px; transition: color .15s; }
.nx-footer li a:hover { color: var(--gold); }
.nx-footer .fbot {
  border-top: 1px solid var(--line); padding-top: 22px;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 12px; color: var(--txt-3); flex-wrap: wrap; gap: 14px;
}

/* ===================== 工具 ===================== */
.flex { display: flex; }
.fc { align-items: center; }
.fb { justify-content: space-between; }
.gap4 { gap: 4px; } .gap6 { gap: 6px; } .gap8 { gap: 8px; }
.gap12 { gap: 12px; } .gap16 { gap: 16px; } .gap24 { gap: 24px; }
.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt24{margin-top:24px}
.mb8{margin-bottom:8px}.mb12{margin-bottom:12px}.mb16{margin-bottom:16px}.mb24{margin-bottom:24px}
.tc{text-align:center}.tr{text-align:right}
.fz11{font-size:11px}.fz12{font-size:12px}.fz13{font-size:13px}.fz16{font-size:16px}
.fz18{font-size:18px}.fz22{font-size:22px}.fz30{font-size:30px}.fz40{font-size:40px}
.fw6{font-weight:600}.fw7{font-weight:700}
.hide { display: none !important; }
.spin { animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.blink { animation: blink 1.1s ease-in-out infinite; }
@keyframes blink { 50% { opacity: .38; } }

@media (max-width: 1180px) {
  .term { grid-template-columns: 232px 1fr 268px; }
  .g6 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
  .nx-nav, .ticker { display: none; }
  .term { grid-template-columns: 1fr; height: auto; overflow: visible; }
  .g4, .g5, .g6 { grid-template-columns: repeat(2, 1fr); }
  .g3, .g2 { grid-template-columns: 1fr; }
  .nx-footer .fgrid { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
   登录后（个人中心 / 钱包）—— 浅色主题
   对齐源站 nodexx.co 实测：整页纯白 #FFFFFF，卡片靠 1px #EAEAED 边框分隔，
   顶栏保持深色 #070808。侧栏 228px。
   ============================================================ */
body.aw { background: #fff; color: #181a1b; }
body.aw .ticker { display: none; }

.aw-wrap { display: flex; max-width: 1490px; margin: 0 auto; align-items: flex-start; }

/* 侧栏 */
.aw-side { width: 290px; flex-shrink: 0; padding: 16px 0 50px; }
.aw-side .it { display: flex; align-items: center; gap: 11px; height: 44px; padding: 0 14px; margin: 0 12px 2px;
  border-radius: 8px; color: #4a5157; font-size: 14px; text-decoration: none; transition: all .15s; }
.aw-side .it:hover { background: #f6f8f9; color: #181a1b; }
.aw-side .it.on { background: #f4f6f7; color: #181a1b; font-weight: 600; }
.aw-side .it i { width: 18px; text-align: center; font-style: normal; font-size: 15px; flex-shrink: 0; }
.aw-side .grp { font-size: 11.5px; color: #b6bcc2; padding: 16px 26px 6px; }

/* 主区 */
.aw-main { flex: 1; min-width: 0; padding: 26px 46px 70px; }
.aw-crumb { font-size: 12.5px; color: #8a9199; margin-bottom: 12px; display: flex; align-items: center; gap: 6px; }
.aw-crumb a { color: #8a9199; text-decoration: none; }
.aw-crumb a:hover { color: #181a1b; }
/* 页面标题：源站 header-content = 32px / 600 / padding 40px 0（实测 getComputedStyle） */
.aw-h1 { font-size: 32px; font-weight: 600; color: #181a1b; letter-spacing: -.3px; line-height: 1.25;
  margin: 14px 0 40px; display: flex; align-items: center; gap: 12px; }

/* 卡片 */
.aw-card { background: #fff; border: 1px solid #eaeaed; border-radius: 10px; margin-bottom: 20px; }
.aw-card-h { padding: 17px 24px; border-bottom: 1px solid #f0f2f4; font-size: 15px; font-weight: 600; color: #181a1b;
  display: flex; align-items: center; gap: 10px; }
.aw-card-h .rt { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.aw-card-b { padding: 4px 24px; }
.aw-card-b.pad { padding: 22px 24px; }

/* 行 */
.aw-row { display: flex; align-items: center; gap: 16px; padding: 18px 0; border-bottom: 1px solid #f4f6f7; }
.aw-row:last-child { border-bottom: none; }
.aw-row .ic { width: 22px; flex-shrink: 0; text-align: center; font-size: 16px; }
.aw-row .tx { flex: 1; min-width: 0; }
.aw-row .tx .t { font-size: 14px; color: #181a1b; font-weight: 500; }
.aw-row .tx .d { font-size: 12.5px; color: #8a9199; margin-top: 4px; line-height: 1.65; }
.aw-row .tx .d a { color: #0a9c5b; }
.aw-row .rt { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }

/* 状态胶囊 */
.aw-pill { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 11px; border-radius: 13px;
  font-size: 12px; white-space: nowrap; }
.aw-pill.gray { background: #f4f6f7; color: #8a9199; }
.aw-pill.green { background: rgba(15,190,111,.1); color: #0a9c5b; }
.aw-pill .dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }

/* 按钮 */
.aw-btn { height: 34px; padding: 0 18px; background: #fff; border: 1px solid #e3e6e8; border-radius: 6px; color: #2b3138;
  font-size: 13px; cursor: pointer; transition: all .15s; text-decoration: none; display: inline-flex; align-items: center;
  justify-content: center; gap: 6px; font-family: inherit; }
.aw-btn:hover { border-color: #0d0f10; color: #0d0f10; }
.aw-btn.p { background: #25ed78; border-color: #25ed78; color: #04120a; font-weight: 600; }
.aw-btn.p:hover { filter: brightness(1.06); border-color: #25ed78; color: #04120a; }
.aw-btn.sm { height: 30px; padding: 0 13px; font-size: 12.5px; }
.aw-btn.danger { color: #ef4444; border-color: #f4d3d3; }
.aw-btn.danger:hover { border-color: #ef4444; color: #ef4444; }

/* 开关 */
.aw-sw { width: 44px; height: 24px; border-radius: 12px; background: #e3e6e8; position: relative; cursor: pointer;
  transition: background .2s; flex-shrink: 0; }
.aw-sw::after { content: ''; position: absolute; top: 2px; left: 2px; width: 20px; height: 20px; border-radius: 50%;
  background: #fff; transition: transform .2s; box-shadow: 0 1px 3px rgba(0,0,0,.18); }
.aw-sw.on { background: #25ed78; }
.aw-sw.on::after { transform: translateX(20px); }

/* 下拉 */
.aw-select { height: 36px; padding: 0 34px 0 13px; background: #fff; border: 1px solid #e3e6e8; border-radius: 6px;
  color: #2b3138; font-size: 13px; cursor: pointer; appearance: none; font-family: inherit;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238a9199' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 13px center; }

/* 大数字 */
.aw-big { font-size: 32px; font-weight: 700; color: #181a1b; letter-spacing: -.7px; font-family: var(--mono); }
.aw-big small { font-size: 16px; font-weight: 600; margin-left: 6px; color: #4a5157; }
.aw-sub { font-size: 13px; color: #8a9199; margin-top: 7px; }

/* 状态 chip 组 */
.aw-chips { display: flex; gap: 9px; flex-wrap: wrap; margin-bottom: 20px; }
.aw-chip { cursor: pointer; display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; border-radius: 14px;
  background: #f4f6f7; color: #8a9199; font-size: 12.5px; }

/* 空态 */
.aw-empty { text-align: center; padding: 76px 0; }
.aw-empty img { width: 118px; opacity: .8; margin-bottom: 12px; }
.aw-empty p { font-size: 13.5px; color: #8a9199; }

/* 表格 */
.aw-tbl { width: 100%; border-collapse: collapse; }
.aw-tbl th { text-align: left; font-size: 12.5px; font-weight: 400; color: #8a9199; padding: 14px 0; border-bottom: 1px solid #f0f2f4; }
.aw-tbl td { font-size: 13.5px; color: #2b3138; padding: 16px 0; border-bottom: 1px solid #f4f6f7; }
.aw-tbl tr:last-child td { border-bottom: none; }
.aw-tbl .num { font-family: var(--mono); }

/* 顶栏登录态按钮（对齐源站：充值胶囊 + 资产▾ + 订单▾ + 头像；文字为白色 14px） */
.nx-navbtn { display: inline-flex; align-items: center; gap: 5px; height: 32px; padding: 0 12px; border-radius: 6px;
  color: var(--txt-0); font-size: 14px; text-decoration: none; cursor: pointer; transition: all .15s; }
.nx-navbtn:hover { background: rgba(255,255,255,.06); color: var(--gold); }
/* 下拉箭头用 SVG（不用文本 ▾）——避免污染按钮的 textContent */
.nx-caret { opacity: .55; flex-shrink: 0; }
.nx-ava { width: 32px; height: 32px; border-radius: 50%; overflow: hidden; flex-shrink: 0; cursor: pointer;
  background: linear-gradient(135deg,#2a3132,#171a1b); display: grid; place-items: center; color: var(--txt-1);
  font-size: 13px; font-weight: 700; }
.nx-ava img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 900px) {
  .aw-side { display: none; }
  .aw-main { padding: 20px 18px 60px; }
}
/* 侧栏线条图标 */
.aw-side .it i svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.5;
  stroke-linecap: round; stroke-linejoin: round; display: block; }
.aw-side .it.on i svg { stroke-width: 1.7; }

/* ---------- 胶囊按钮（对齐源站总览页：32px 高 / border-radius 999） ---------- */
.aw-pillbtn { height: 32px; padding: 0 16px; border-radius: 999px; border: 1px solid #e3e6e8; background: #fff;
  color: #070808; font-size: 13px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
  font-family: inherit; transition: all .15s; text-decoration: none; white-space: nowrap; }
.aw-pillbtn:hover { border-color: #c9ced4; }
.aw-pillbtn.p { background: #25ed78; border-color: #25ed78; font-weight: 600; }
.aw-pillbtn.p:hover { filter: brightness(1.06); }
.aw-pillbtn.sm { height: 28px; padding: 0 13px; font-size: 12.5px; }

/* ---------- 通用弹窗（浅色） ---------- */
.aw-modal { position: fixed; inset: 0; background: rgba(13,15,16,.42); z-index: 900; display: none; place-items: center; }
.aw-modal.show { display: grid; }
.aw-modal-b { width: 420px; max-width: calc(100vw - 32px); background: #fff; border-radius: 12px; padding: 24px;
  box-shadow: 0 20px 60px rgba(13,15,16,.22); max-height: 88vh; overflow-y: auto; }
.aw-modal-b .h { display: flex; align-items: center; margin-bottom: 18px; }
.aw-modal-b .h h3 { font-size: 16.5px; font-weight: 600; color: #070808; }
.aw-modal-b .x { margin-left: auto; color: #9aa1a8; cursor: pointer; font-size: 15px; }
.aw-modal-b label { display: block; font-size: 12.5px; color: #8e8e92; margin: 14px 0 8px; }
.aw-modal-b label:first-of-type { margin-top: 0; }
.aw-modal-b input, .aw-modal-b select { width: 100%; height: 42px; padding: 0 13px; background: #fff;
  border: 1px solid #e3e6e8; border-radius: 8px; color: #070808; font-size: 14px; outline: none; font-family: inherit; }
.aw-modal-b input[readonly] { background: #f7f7fa; font-family: var(--mono); font-size: 12.5px; }
.aw-modal-b input:focus, .aw-modal-b select:focus { border-color: #25ed78; }
.aw-modal-b .tip { font-size: 12px; color: #8e8e92; line-height: 1.8; margin: 10px 0 4px; }
.aw-modal-b .tip b { color: #070808; font-family: var(--mono); }
.aw-modal-b .ok { width: 100%; height: 44px; margin-top: 18px; border: none; border-radius: 8px; background: #25ed78;
  color: #04120a; font-size: 14px; font-weight: 700; cursor: pointer; font-family: inherit; }
.aw-modal-b .ok:hover { filter: brightness(1.06); }
.aw-modal-b .row2 { display: flex; gap: 10px; }
.aw-modal-b .row2 > * { flex: 1; }
.aw-modal-b .lnk { font-size: 12px; color: #0a9c5b; cursor: pointer; margin-left: 8px; }

/* ---------- 登录守卫提示（未登录访问登录后页面时显示） ---------- */
.lg-guard { text-align: center; padding: 86px 24px 96px; }
.lg-guard .ico { font-size: 46px; line-height: 1; margin-bottom: 20px; filter: grayscale(.15); }
.lg-guard h2 { font-size: 22px; font-weight: 700; color: #070808; margin: 0 0 12px; letter-spacing: -.3px; }
.lg-guard p { font-size: 13.5px; color: #8e8e92; line-height: 1.85; margin: 0; }
.lg-guard .acts { display: flex; gap: 12px; justify-content: center; margin-top: 28px; flex-wrap: wrap; }
.lg-guard .tip { margin-top: 24px; font-size: 12px; color: #b6bcc2; }
/* 深色页面（未加 aw 类的页面）*/
body:not(.aw) .lg-guard h2 { color: var(--txt-0); }
body:not(.aw) .lg-guard p { color: var(--txt-2); }
body:not(.aw) .lg-guard .tip { color: var(--txt-3); }

/* ---------- 登录 / 注册页（对齐源站：白底 · 无页脚 · 无跑马灯） ---------- */
body[data-page="login"], body[data-page="register"] { background: #fff; }
body[data-page="login"] .auth-form label, body[data-page="register"] .auth-form label { display: none; }
body[data-page="login"] .feed-badge, body[data-page="register"] .feed-badge { display: none; }
body[data-page="login"] .auth-form .field, body[data-page="register"] .auth-form .field { margin-bottom: 14px; }
body[data-page="login"] .ticker, body[data-page="register"] .ticker { display: none; }
body[data-page="login"] .nx-footer, body[data-page="register"] .nx-footer { display: none; }

/* ============================================================
   顶栏窄屏自适应 —— 源站在 1080px 仍完整显示 9 项导航 + 右侧全部按钮，
   所以这里只收紧内边距/间距，尽量不隐藏元素
   ============================================================ */
@media (max-width: 1400px) {
  .nx-header { padding: 0 18px; gap: 6px; }
  .nx-nav > li > a { padding: 8px 10px; font-size: 13.5px; }
  .nx-right { gap: 8px; }
}
@media (max-width: 1280px) {
  .nx-header { padding: 0 14px; gap: 4px; }
  .nx-logo { margin-right: 12px; }
  .nx-nav > li > a { padding: 8px 8px; font-size: 13px; }
  .nx-nav { min-width: 0; overflow-x: auto; scrollbar-width: none; }
  .nx-nav::-webkit-scrollbar { display: none; }
  .nx-right { gap: 6px; }
}
@media (max-width: 1120px) {
  .nx-nav > li > a { padding: 8px 6.5px; font-size: 12.5px; }
  .nx-right > a, .nx-right > .nx-user { margin-left: 0; }
}
@media (max-width: 1040px) {
  .nx-nav > li > a .nx-fire, .nx-nav > li > a .nx-gift { display: none; }
  .nx-logo-img { height: 26px; }
}

/* 浮动客服按钮（对齐源站右下角绿色圆形客服入口） */
.nx-support { position: fixed; right: 22px; bottom: 22px; z-index: 300; width: 52px; height: 52px;
  border-radius: 50%; background: #25ed78; border: none; cursor: pointer; display: grid; place-items: center;
  box-shadow: 0 8px 24px rgba(37,237,120,.34); transition: transform .16s, filter .16s; }
.nx-support:hover { transform: translateY(-2px); filter: brightness(1.05); }
.nx-support svg { width: 24px; height: 24px; fill: none; stroke: #04120a; stroke-width: 2;
  stroke-linecap: round; stroke-linejoin: round; }
.nx-support .bdg { position: absolute; top: -2px; right: -2px; min-width: 18px; height: 18px; padding: 0 5px;
  border-radius: 9px; background: #ef4444; color: #fff; font-size: 11px; font-weight: 700; display: grid;
  place-items: center; }
@media print { .nx-support { display: none; } }
/* 空态插画（img 形式，颜色烧在图里）——深色页下调暗以保持协调 */
body:not(.aw) .aw-empty img, body:not(.aw) .copy-empty img, body:not(.aw) .dp-empty img { filter: brightness(.34); }

/* ============================================================
   顶栏 语言 / 汇率 下拉面板（对齐源站 .sub-menu-language）
   源站实测：436×587 · 圆角 12 · 底色 #0d0e0f · 两栏（语言 11 项 / 汇率 11 项）
   选中项：浅色高亮底 + 右侧 ✓；项高 40
   ============================================================ */
.nx-langpanel { position: fixed; top: 58px; right: 12px; width: 436px; background: #0d0e0f;
  border: 1px solid #1c1e21; border-radius: 12px; box-shadow: 0 24px 64px rgba(0,0,0,.55); z-index: 9999;
  display: flex; padding: 20px 0; animation: nxLpIn .16s ease-out; }
@keyframes nxLpIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.nx-langpanel .lp-col { flex: 1; min-width: 0; padding: 0 14px; }
.nx-langpanel .lp-col + .lp-col { border-left: 1px solid #1c1e21; }
.nx-langpanel .lp-t { font-size: 12.5px; color: #8e8e92; padding: 4px 10px 14px; }
.nx-langpanel .lp-i { position: relative; height: 46px; display: flex; align-items: center; padding: 0 10px;
  border-radius: 6px; font-size: 14px; color: #eaeced; cursor: pointer; transition: background .12s; }
.nx-langpanel .lp-i:hover { background: #17191c; }
.nx-langpanel .lp-i.on { background: #1c1e22; font-weight: 600; }
.nx-langpanel .lp-i .lp-ck { position: absolute; right: 10px; font-style: normal; font-size: 13px; color: #fff; }
@media (max-width: 520px) { .nx-langpanel { width: calc(100vw - 24px); } }

/* ============================================================
   黑天 / 白天 主题切换（对齐源站 html[data-theme]）
   默认 = 白天（账户区浅色）；html[data-theme="dark"] = 黑天
   顶栏月亮按钮切换，偏好存 localStorage.nodexx_theme
   ============================================================ */
html[data-theme="dark"] body.aw { background: #070808; color: #f7f7fa; }
html[data-theme="dark"] body.aw .nx-navbtn { color: #b9bec7; }
html[data-theme="dark"] body.aw .nx-navbtn:hover { background: rgba(255,255,255,.06); color: #f7f7fa; }
html[data-theme="dark"] body.aw .nx-user-b,
html[data-theme="dark"] body.aw .feed-badge { background: #101213; border-color: #1d2122; color: #b9bec7; }
html[data-theme="dark"] body.aw .nx-footer { background: #050606; border-top-color: #171a1b; }
html[data-theme="dark"] body.aw .nx-footer h4 { color: #f7f7fa; }
html[data-theme="dark"] body.aw .nx-footer li a, html[data-theme="dark"] body.aw .nx-footer .fbot { color: #7d838f; }

/* 侧栏 */
html[data-theme="dark"] body.aw .aw-side .it { color: #b9bec7; }
html[data-theme="dark"] body.aw .aw-side .it:hover { background: #16191a; color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-side .it.on { background: #141719; color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-side .grp { color: #6b7280; }

/* 面包屑 / 标题 */
html[data-theme="dark"] body.aw .aw-crumb,
html[data-theme="dark"] body.aw .aw-crumb a { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-crumb a:hover { color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-h1 { color: #f7f7fa; }

/* 卡片 */
html[data-theme="dark"] body.aw .aw-card { background: #0f1112; border-color: #1d2122; }
html[data-theme="dark"] body.aw .aw-card-h { border-bottom-color: #171a1b; color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-row { border-bottom-color: #171a1b; }
html[data-theme="dark"] body.aw .aw-row .tx .t { color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-row .tx .d { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-big { color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-big small { color: #b9bec7; }
html[data-theme="dark"] body.aw .aw-sub { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-pill.gray { background: #16191a; color: #8d949e; }
html[data-theme="dark"] body.aw .aw-chip { background: #16191a; color: #8d949e; }
html[data-theme="dark"] body.aw .aw-empty p { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-empty img { filter: brightness(.42); }

/* 表格 / 按钮 / 输入 */
html[data-theme="dark"] body.aw .aw-tbl th { color: #7d838f; border-bottom-color: #171a1b; }
html[data-theme="dark"] body.aw .aw-tbl td { color: #d7dade; border-bottom-color: #141719; }
html[data-theme="dark"] body.aw .aw-tbl.sp-tbl tbody tr { border-top-color: #141719; }
html[data-theme="dark"] body.aw .aw-tbl.sp-tbl tbody tr:hover { background: #141719; }
html[data-theme="dark"] body.aw .aw-tbl .cnum { color: #d7dade; }
html[data-theme="dark"] body.aw .aw-tbl .cnum.mut { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-tbl .cico .nm { color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-tbl .cico .fn { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-btn,
html[data-theme="dark"] body.aw .aw-pillbtn { background: #0f1112; border-color: #232728; color: #e6e8ea; }
html[data-theme="dark"] body.aw .aw-btn:hover,
html[data-theme="dark"] body.aw .aw-pillbtn:hover { border-color: #3a4144; color: #fff; }
html[data-theme="dark"] body.aw .aw-pillbtn.p,
html[data-theme="dark"] body.aw .aw-btn.p { background: #25ed78; border-color: #25ed78; color: #04120a; }
html[data-theme="dark"] body.aw .aw-btn.danger { color: #ef4444; border-color: #46262a; }
html[data-theme="dark"] body.aw .aw-sw { background: #232728; }
html[data-theme="dark"] body.aw .aw-sw::after { background: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-select { background-color: #0f1112; border-color: #232728; color: #e6e8ea; }

/* 弹窗 */
html[data-theme="dark"] body.aw .aw-modal-b { background: #0f1112; border: 1px solid #1d2122; }
html[data-theme="dark"] body.aw .aw-modal-b h3 { color: #f7f7fa; }
html[data-theme="dark"] body.aw .aw-modal-b label { color: #8d949e; }
html[data-theme="dark"] body.aw .aw-modal-b input,
html[data-theme="dark"] body.aw .aw-modal-b select { background: #141719; border-color: #232728; color: #e6e8ea; }
html[data-theme="dark"] body.aw .aw-modal-b .tip { color: #7d838f; }
html[data-theme="dark"] body.aw .aw-modal-b .tip b { color: #e6e8ea; }
html[data-theme="dark"] body.aw .aw-modal-b .ok { color: #04120a; }

/* ---------- 现货账户（sp-*） ---------- */
html[data-theme="dark"] body.aw .sp-title { color: #f7f7fa; }
html[data-theme="dark"] body.aw .sp-card { background: #0f1112; border-color: #1d2122; }
html[data-theme="dark"] body.aw .sp-est .lb { color: #8d949e; }
html[data-theme="dark"] body.aw .sp-est .lb i { border-color: #3a4144; color: #7d838f; }
html[data-theme="dark"] body.aw .sp-est .v b { color: #f7f7fa; }
html[data-theme="dark"] body.aw .sp-est .v .unit { color: #b9bec7; }
html[data-theme="dark"] body.aw .sp-est .v .car { color: #7d838f; }
html[data-theme="dark"] body.aw .sp-est .usd { color: #7d838f; }
html[data-theme="dark"] body.aw .sp-est .estdrop { background: #141719; border-color: #232728; box-shadow: 0 14px 36px rgba(0,0,0,.6); }
html[data-theme="dark"] body.aw .sp-est .estdrop div { color: #e6e8ea; }
html[data-theme="dark"] body.aw .sp-est .estdrop div:hover { background: #1b1f21; }
html[data-theme="dark"] body.aw .sp-mine h3 { color: #f7f7fa; }
html[data-theme="dark"] body.aw .sp-mine input[type=text] { background: #141719; color: #e6e8ea; }
html[data-theme="dark"] body.aw .sp-mine input[type=text]:focus { background: #16191a; }
html[data-theme="dark"] body.aw .sp-mine .ck { color: #8d949e; }
html[data-theme="dark"] body.aw .sp-empty { color: #7d838f; }

/* ---------- 数字货币充值（dp-*） ---------- */
html[data-theme="dark"] body.aw .dp-wrap { color: #f7f7fa; }
html[data-theme="dark"] body.aw .dp-lb { color: #d7dade; }
html[data-theme="dark"] body.aw .dp-sel { background: #141719; color: #8d949e; }
html[data-theme="dark"] body.aw .dp-sel:hover { border-color: #232728; }
html[data-theme="dark"] body.aw .dp-sel.on { color: #f7f7fa; }
html[data-theme="dark"] body.aw .dp-sel .lk .fn,
html[data-theme="dark"] body.aw .dp-sel i { color: #7d838f; }
html[data-theme="dark"] body.aw .dp-panel { background: #0f1112; border-color: #232728; box-shadow: 0 14px 40px rgba(0,0,0,.6); }
html[data-theme="dark"] body.aw .dp-panel input { background: #141719; border-color: #232728; color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-it { color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-it:hover { background: #1b1f21; }
html[data-theme="dark"] body.aw .dp-it .fn { color: #7d838f; }
html[data-theme="dark"] body.aw .dp-none { color: #7d838f; }
html[data-theme="dark"] body.aw .dp-chip { background: #141719; color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-chip:hover { border-color: #232728; }
html[data-theme="dark"] body.aw .dp-chip.on { border-color: #25ed78; background: rgba(37,237,120,.12); }
html[data-theme="dark"] body.aw .dp-addr { background: #141719; }
html[data-theme="dark"] body.aw .dp-qr { background: #fff; }
html[data-theme="dark"] body.aw .dp-ad .lb,
html[data-theme="dark"] body.aw .dp-ad .tip { color: #8d949e; }
html[data-theme="dark"] body.aw .dp-ad .lb b { color: #f7f7fa; background: #1b1f21; }
html[data-theme="dark"] body.aw .dp-ad .tip b { color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-ad input { background: #0f1112; border-color: #232728; color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-modal-b { background: #0f1112; }
html[data-theme="dark"] body.aw .dp-modal-h h3 { color: #f7f7fa; }
html[data-theme="dark"] body.aw .dp-modal-h .x { color: #7d838f; }
html[data-theme="dark"] body.aw .dp-warn { background: #16191a; color: #a8adb3; }
html[data-theme="dark"] body.aw .dp-warn .i { background: #f7f7fa; color: #0f1112; }
html[data-theme="dark"] body.aw .dp-modal-l .dp-it { color: #e6e8ea; }
html[data-theme="dark"] body.aw .dp-modal-l .dp-it:hover { background: #1b1f21; }
html[data-theme="dark"] body.aw .dp-modal-l .dp-it .fn { color: #7d838f; }
html[data-theme="dark"] body.aw .dp-all { color: #25ed78; }

/* ---------- 页面内联颜色在黑天下的统一映射 ---------- */
html[data-theme="dark"] body.aw [style*="color:#070808"] { color: #f7f7fa !important; }
html[data-theme="dark"] body.aw [style*="color:#181a1b"] { color: #f7f7fa !important; }
html[data-theme="dark"] body.aw [style*="color:#2b3138"] { color: #d7dade !important; }
html[data-theme="dark"] body.aw [style*="color:#4a5157"] { color: #b9bec7 !important; }
html[data-theme="dark"] body.aw [style*="color:#8a9199"] { color: #7d838f !important; }
html[data-theme="dark"] body.aw [style*="color:#8e8e92"] { color: #7d838f !important; }
html[data-theme="dark"] body.aw [style*="color:#b6bcc2"] { color: #6b7280 !important; }
html[data-theme="dark"] body.aw [style*="background:#fff"] { background: #0f1112 !important; }
html[data-theme="dark"] body.aw [style*="background:#ffffff"] { background: #0f1112 !important; }
html[data-theme="dark"] body.aw [style*="background:#f7f7fa"] { background: #141719 !important; }
html[data-theme="dark"] body.aw [style*="background:#f4f6f7"] { background: #16191a !important; }
html[data-theme="dark"] body.aw [style*="border:1px solid #eaeaed"] { border-color: #1d2122 !important; }

/* 顶栏主题按钮 */
.nx-icon.on-theme { position: relative; }
.nx-icon.on-theme svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6;
  stroke-linecap: round; stroke-linejoin: round; display: block; }


/* ============================================================
   公开页白天主题（对齐源站：合约/跟单/买币/通知/关于/储备金/地图/价格 均为白底）
   这些页面全部用 :root 变量取色 → 覆盖变量即可整体变浅；切黑天时自动回到深色
   ============================================================ */
html:not([data-theme="dark"]) body.lt {
  --bg-0: #ffffff;
  --bg-1: #ffffff;
  --bg-2: #f7f7fa;
  --bg-3: #f1f2f4;
  --bg-4: #e9eaee;
  --line: #eaeaed;
  --line-2: #e4e7ea;
  --txt-0: #070808;
  --txt-1: #4a5157;
  --txt-2: #8e8e92;
  --txt-3: #b6bcc2;
  --acc-ink: #ffffff;
  background: #fff;
  color: var(--txt-0);
}
html:not([data-theme="dark"]) body.lt .nx-footer { background: #fafbfb; border-top-color: var(--line); }
html:not([data-theme="dark"]) body.lt .nx-footer h4 { color: var(--txt-0); }
html:not([data-theme="dark"]) body.lt .nx-footer li a,
html:not([data-theme="dark"]) body.lt .nx-footer .fbot { color: var(--txt-2); }
html:not([data-theme="dark"]) body.lt .nx-user-b { background:#fff; border-color:var(--line-2); color:var(--txt-1); }
html:not([data-theme="dark"]) body.lt .feed-badge { background:#fff; border-color:var(--line-2); }

/* lt 页面里的深色 hero 区块：保持深底 + 浅字（对齐原站：hero 深、内容白） */
html:not([data-theme="dark"]) body.lt .ab-hero { background: linear-gradient(120deg,#08150e,#0e1512 62%); border-color:#1a201c; color:#f7f7fa; }
html:not([data-theme="dark"]) body.lt .ab-hero h1 { color:#f7f7fa; }
html:not([data-theme="dark"]) body.lt .ab-hero p,
html:not([data-theme="dark"]) body.lt .ab-hero .fz13-5 { color:#b9bec7 !important; }

/* lt 页面的深色 hero（关于/储备金/跟单）：保持深底浅字 */
html:not([data-theme="dark"]) body.lt :is(.ab-hero, .pr-hero, .cp-hero) h1,
html:not([data-theme="dark"]) body.lt :is(.ab-hero, .pr-hero, .cp-hero) h2,
html:not([data-theme="dark"]) body.lt :is(.ab-hero, .pr-hero, .cp-hero) .sub,
html:not([data-theme="dark"]) body.lt :is(.ab-hero, .pr-hero, .cp-hero) p { color:#e9ecef !important; }
html:not([data-theme="dark"]) body.lt .cp-hero h1 { color:#f7f7fa !important; }
html:not([data-theme="dark"]) body.lt .pr-hero h1 { color:#f7f7fa !important; }


/* ============================================================
   自绘下拉（把原生 select 视觉隐藏，触发器只显示当前选中项）
   —— 对齐源站 nfe-dropdown / ant-select 的文本口径（2026-09-24）
   ============================================================ */
.nx-sel { position: relative; display: inline-block; vertical-align: middle; }
.nx-sel > select { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important;
  opacity: 0 !important; pointer-events: none !important; margin: 0; border: 0; padding: 0; }
.nx-sel-btn { height: 32px; display: inline-flex; align-items: center; gap: 6px; padding: 0 13px;
  font-size: 14px; font-weight: 500; color: #070808; background: #f7f7fa; border: 0; border-radius: 6px;
  cursor: pointer; font-family: inherit; white-space: nowrap; transition: background .15s; }
.nx-sel-btn:hover { background: #eef0f3; }
.nx-sel-btn::after { content: '\25BE'; font-size: 9px; color: #8e8e92; line-height: 1; margin-left: 1px; }
.nx-sel.open .nx-sel-btn::after { transform: rotate(180deg); }
.nx-sel-menu { position: absolute; left: 0; top: calc(100% + 4px); min-width: 100%; max-height: 268px; overflow-y: auto;
  background: #fff; border: 1px solid #eaeaed; border-radius: 8px; box-shadow: 0 12px 32px rgba(13,15,16,.14);
  padding: 5px; display: none; z-index: 400; }
.nx-sel.open .nx-sel-menu { display: block; }
.nx-sel-item { padding: 7px 10px; font-size: 13.5px; color: #16181b; border-radius: 5px; cursor: pointer; white-space: nowrap; }
.nx-sel-item:hover { background: #f5f6f8; }
.nx-sel-item.on { color: #12a45c; font-weight: 600; }
html[data-theme="dark"] .nx-sel-btn { background: #16191a; color: #e6e8ea; }
html[data-theme="dark"] .nx-sel-btn:hover { background: #1d2123; }
html[data-theme="dark"] .nx-sel-menu { background: #101314; border-color: #232728; box-shadow: 0 12px 32px rgba(0,0,0,.5); }
html[data-theme="dark"] .nx-sel-item { color: #d6dadd; }
html[data-theme="dark"] .nx-sel-item:hover { background: #1a1e20; }

/* chip 状态用伪元素表达（不进 textContent） */
.aw-chip.st-on::before { content: '\2713'; color: #12a45c; font-weight: 700; font-size: 12px; }
.aw-chip.st-off::before { content: '\25CB'; color: #c2c7cc; font-size: 12px; }
/* 去掉文本里的装饰符号后，用 i.ar 承载箭头（不进 textContent） */
.ar { font-style: normal; }
.ar::after { content: attr(data-c); }


/* ============================================================
   账户总览：个人信息条 + 双列卡 + 安全项列表（对齐源站 accounts/user/overview）
   ============================================================ */
.aw-pfl { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; }
.aw-pfl .ava { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center;
  background: linear-gradient(135deg, #25ed78, #12a45c); color: #06210f; font-size: 22px; font-weight: 700; flex-shrink: 0; }
.aw-pfl .nm { font-size: 24px; font-weight: 600; color: #070808; display: flex; align-items: center; gap: 9px; line-height: 1.25; }
.aw-pfl .nm i { font-style: normal; font-size: 14px; color: #b6bcc2; cursor: pointer; }
.aw-pfl .meta { display: flex; align-items: center; gap: 10px; margin: 8px 0 7px; font-size: 12.5px; color: #8e8e92; flex-wrap: wrap; }
.aw-pfl .meta b { font-family: var(--mono); color: #57585c; font-weight: 500; }
.aw-pfl .last { font-size: 12.5px; color: #a3a8ae; }
.aw-2col { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.aw-2col > .aw-card { margin-bottom: 20px; }
.aw-sitem { display: flex; align-items: center; height: 52px; border-bottom: 1px solid #f4f6f7;
  font-size: 14px; color: #16181b; cursor: pointer; }
.aw-sitem:last-child { border-bottom: 0; }
.aw-sitem:hover { color: #12a45c; }
.aw-sitem::after { margin-left: auto; font-size: 15px; color: #c2c7cc; }
.aw-sitem.st-arrow::after { content: '\203A'; }
.aw-sitem.st-dot::after { content: '\25CF'; font-size: 11px; color: #4a4d51; }
.aw-sitem.st-dot:hover::after { color: #4a4d51; }
.aw-lv { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; }
.aw-lv .t { font-size: 12px; color: #f0616d; font-weight: 400; }
.aw-lv u { display: inline-flex; gap: 2px; }
.aw-lv u li { width: 4px; height: 11px; border-radius: 1px; background: #f0616d; list-style: none; }
.aw-hintline { display: flex; align-items: center; padding: 15px 0; font-size: 13.5px; color: #16181b; cursor: pointer; }
.aw-hintline:hover { color: #12a45c; }
.aw-hintline::after { content: '\203A'; margin-left: auto; color: #c2c7cc; }
html[data-theme="dark"] body.aw .aw-pfl .nm { color: #f2f4f5; }
html[data-theme="dark"] body.aw .aw-sitem, html[data-theme="dark"] body.aw .aw-hintline { color: #d6dadd; border-color: #1c2022; }


/* 订单页：左侧栏 + 内容（对齐源站 /orders：现货订单 / 合约订单 / C2C订单） */
.od-wrap { display: flex; gap: 26px; align-items: flex-start; }
.od-side { width: 230px; flex-shrink: 0; padding-top: 4px; }
.od-side .it { display: flex; align-items: center; height: 48px; padding: 0 16px; border-radius: 8px;
  font-size: 14px; color: #57585c; cursor: pointer; margin-bottom: 2px; transition: background .14s, color .14s; }
.od-side .it:hover { background: #f6f8f9; color: #181a1b; }
.od-side .it.on { background: #f4f6f7; color: #070808; font-weight: 600; }
.od-main { flex: 1; min-width: 0; }
@media (max-width: 900px) { .od-wrap { display: block; } .od-side { width: auto; display: flex; gap: 6px; margin-bottom: 14px; }
  .od-side .it { height: 38px; padding: 0 12px; } }
html[data-theme="dark"] body .od-side .it { color: #b9bec7; }
html[data-theme="dark"] body .od-side .it:hover, html[data-theme="dark"] body .od-side .it.on { background: #16191a; color: #f7f7fa; }

/* 页标题可点（对齐源站：资金记录 / 设置 / 安全中心 等标题为可点元素，点击刷新） */
.pgt { cursor: pointer; }
.pgt:hover { color: #12a45c; }

/* 总资产计价单位（u-over 可点切换 BTC/USDT；箭头用伪元素不进文本） */
.unit { cursor: pointer; font-size: 16px; font-weight: 600; color: #8e8e92; margin-left: 6px; vertical-align: middle; }
.unit:hover { color: #12a45c; }
.unit::after { content: '\25BE'; font-size: 11px; margin-left: 4px; }

/* 合约选择面板（点合约名弹出） */
.fu-pairpanel { position: absolute; left: 0; top: calc(100% + 8px); min-width: 190px; background: #fff;
  border: 1px solid #eaeaed; border-radius: 10px; box-shadow: 0 14px 36px rgba(13,15,16,.16);
  padding: 6px; z-index: 500; }
.fu-pairpanel a { display: flex; align-items: center; justify-content: space-between; gap: 14px;
  padding: 9px 11px; border-radius: 6px; text-decoration: none; font-size: 13.5px; color: #16181b; }
.fu-pairpanel a:hover { background: #f5f6f8; }
.fu-pairpanel a.on { background: #f2f6f3; font-weight: 600; }
.fu-pairpanel .c { font-family: var(--mono); font-size: 12px; }
.fu-pairpanel .c.up { color: #0fbe6f; }
.fu-pairpanel .c.down { color: #ef4444; }
/* 钱包总览账户行可点（点击进入对应账户页） */
.aw-row[data-acct] { cursor: pointer; }
.aw-row[data-acct]:hover { background: #fafbfc; }
