:root{
  --bg:#070b14; --bg2:#0c1220; --card:#0f1626; --card2:#121a2e;
  --border:#1e2740; --text:#e7ecf7; --text-dim:#9aa7c2; --text-mute:#6b7794;
  --accent:#3ee6a8; --accent2:#5b8cff; --warn:#ffb454; --danger:#ff6b6b;
  --grad: linear-gradient(135deg,#5b8cff 0%,#3ee6a8 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}
  *, *::before, *::after{
    animation-duration:0.001ms !important; animation-iteration-count:1 !important;
    transition-duration:0.001ms !important; scroll-behavior:auto !important;
  }
}
body{
  margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;
  background:var(--bg); color:var(--text); line-height:1.6;
}
/* 2026-09-13可访问性/移动端审计: 不用overflow-x:hidden掩盖溢出问题, 而是逐个修正会撑宽
   页面的具体元素(长链接/长token/长数字统一允许换行, 而不是被剪掉或撑破布局)。 */
img, svg, canvas, video{max-width:100%}
a, .body-text, .news-item, td, .list-clean li{overflow-wrap:break-word; word-break:break-word}

/* 跳到主要内容: 默认移出视口, 获得焦点时显示在左上角, 键盘用户第一个Tab就能看到 */
.skip-link{
  position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;
  background:var(--accent2); color:#04121a; padding:12px 20px; border-radius:0 0 8px 0;
  font-weight:700; z-index:200;
}
.skip-link:focus{left:0; top:0; width:auto; height:auto}

/* 统一的可见焦点样式(键盘Tab导航用), 不依赖浏览器默认outline(部分浏览器默认outline对比度不够) */
a:focus-visible, button:focus-visible, input:focus-visible{
  outline:2px solid var(--accent2); outline-offset:2px;
}

a{color:inherit; text-decoration:none}
.container{max-width:1120px; margin:0 auto; padding:0 24px}
main{display:block}

.announcement-banner{background:linear-gradient(90deg,#6c5ce7,#00cec9); color:#fff; text-align:center; padding:8px 16px; font-size:13px}

.nav{position:sticky; top:0; z-index:50; backdrop-filter:blur(10px); background:rgba(7,11,20,0.85); border-bottom:1px solid var(--border)}
.nav-inner{max-width:1120px; margin:0 auto; padding:16px 24px; display:flex; align-items:center; justify-content:space-between; gap:12px}
.logo{font-weight:800; font-size:20px; letter-spacing:-0.02em; display:flex; align-items:center; gap:8px}
.logo .dot{width:10px; height:10px; border-radius:50%; background:var(--grad)}
.nav-links{display:flex; align-items:center; gap:20px; font-size:14px; color:var(--text-dim)}
.nav-links a:hover{color:var(--text)}
.nav-links a[aria-current="page"]{color:var(--text); font-weight:700}
.nav-cta{background:var(--grad); color:#04121a; font-weight:700; padding:9px 18px; border-radius:8px; font-size:14px; white-space:nowrap}
.nav-cta:hover{opacity:0.9}
.nav-cta-mobile{display:none}
.nav-toggle{display:none}

/* 移动端导航: 汉堡按钮 + 下拉面板, 不再直接display:none隐藏且不给任何入口 */
@media(max-width:720px){
  .nav-toggle{
    display:flex; align-items:center; justify-content:center;
    width:40px; height:40px; background:transparent; border:1px solid var(--border);
    border-radius:8px; cursor:pointer; flex-shrink:0;
  }
  .nav-toggle-bars{display:flex; flex-direction:column; gap:4px; width:18px}
  .nav-toggle-bars span{display:block; height:2px; background:var(--text); border-radius:1px}
  .nav-links{
    display:none; position:absolute; left:0; right:0; top:100%;
    flex-direction:column; align-items:stretch; gap:0;
    background:var(--bg2); border-bottom:1px solid var(--border);
    padding:8px 24px 16px;
  }
  .nav-links.open{display:flex}
  .nav-links a{padding:12px 4px; border-bottom:1px solid rgba(255,255,255,0.05)}
  .nav-cta-desktop{display:none}
  .nav-cta-mobile{display:block; margin-top:12px; text-align:center}
}


.hero{padding:88px 0 64px; text-align:center}
.badge{display:inline-flex; align-items:center; gap:8px; background:var(--card); border:1px solid var(--border); padding:6px 14px; border-radius:999px; font-size:13px; color:var(--text-dim); margin-bottom:28px}
.badge .pulse{width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 0 rgba(62,230,168,0.6); animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(62,230,168,0.5)}70%{box-shadow:0 0 0 8px rgba(62,230,168,0)}100%{box-shadow:0 0 0 0 rgba(62,230,168,0)}}
.hero h1{font-size:52px; font-weight:800; letter-spacing:-0.03em; margin:0 0 20px; line-height:1.15}
.hero h1 .grad{background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent}
.hero p.sub{font-size:19px; color:var(--text-dim); max-width:680px; margin:0 auto 36px}
.hero-ctas{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-bottom:56px}
.btn{display:inline-flex; align-items:center; gap:8px; padding:13px 26px; border-radius:10px; font-weight:700; font-size:15px; cursor:pointer; border:none}
.btn-primary{background:var(--grad); color:#04121a}
.btn-primary:hover{opacity:0.92}
.btn-ghost{background:transparent; border:1px solid var(--border); color:var(--text)}
.btn-ghost:hover{border-color:var(--accent2); color:var(--accent2)}
.trust-row{display:flex; gap:40px; justify-content:center; flex-wrap:wrap; color:var(--text-mute); font-size:13px}
.trust-row b{color:var(--text); font-size:15px; display:block}

.stat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:56px 0}
.stat-card{background:var(--card); border:1px solid var(--border); border-radius:14px; padding:22px}
.stat-card .label{font-size:12px; color:var(--text-mute); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:8px}
.stat-card .value{font-size:26px; font-weight:800}
.stat-card .value.up{color:var(--accent)}
.stat-card .value.down{color:var(--danger)}
@media(max-width:800px){.stat-grid{grid-template-columns:repeat(2,1fr)}}

section{padding:72px 0}
.section-head{text-align:center; max-width:640px; margin:0 auto 48px}
.eyebrow{color:var(--accent2); font-weight:700; font-size:13px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:12px}
.section-head h2{font-size:34px; font-weight:800; letter-spacing:-0.02em; margin:0 0 14px}
.section-head p{color:var(--text-dim); font-size:16px}

.feature-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.feature-card{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:28px}
.feature-card .icon{width:44px; height:44px; border-radius:11px; background:var(--grad); display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:18px}
.feature-card h3{font-size:18px; margin:0 0 10px}
.feature-card p{color:var(--text-dim); font-size:14px; margin:0}
@media(max-width:860px){.feature-grid{grid-template-columns:1fr}}

.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:20px}
.step{position:relative; padding-top:8px}
.step .num{font-size:13px; font-weight:800; color:var(--accent); border:1px solid var(--border); width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin-bottom:16px}
.step h4{font-size:15px; margin:0 0 8px}
.step p{font-size:13px; color:var(--text-dim); margin:0}
@media(max-width:860px){.steps{grid-template-columns:1fr 1fr}}

.pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch}
.plan{background:var(--card); border:1px solid var(--border); border-radius:18px; padding:32px; display:flex; flex-direction:column}
.plan.featured{border-color:var(--accent2); background:linear-gradient(180deg, rgba(91,140,255,0.08), var(--card) 40%); position:relative}
.plan.featured::before{content:"最受欢迎"; position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--grad); color:#04121a; font-size:12px; font-weight:800; padding:4px 14px; border-radius:999px}
.plan .tier-name{font-size:14px; font-weight:700; color:var(--text-dim); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:10px}
.plan .price{font-size:38px; font-weight:800; margin-bottom:4px}
.plan .price span{font-size:15px; font-weight:500; color:var(--text-mute)}
.plan .price-note{font-size:13px; color:var(--text-mute); margin-bottom:24px}
.plan ul{list-style:none; padding:0; margin:0 0 28px; flex:1}
.plan li{display:flex; gap:10px; padding:8px 0; font-size:14px; color:var(--text-dim); border-bottom:1px solid rgba(255,255,255,0.04)}
.plan li .ck{color:var(--accent); flex-shrink:0}
.status-pill{display:inline-block; font-size:11px; font-weight:700; padding:3px 10px; border-radius:999px; margin-bottom:16px; width:fit-content}
.status-pill.live{background:rgba(62,230,168,0.15); color:var(--accent)}
.status-pill.soon{background:rgba(255,180,84,0.15); color:var(--warn)}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}}

.waitlist-form{display:flex; gap:8px; margin-top:auto}
.waitlist-form input{flex:1; background:var(--bg2); border:1px solid var(--border); border-radius:8px; padding:11px 14px; color:var(--text); font-size:14px}
.waitlist-form input:focus{outline:none; border-color:var(--accent2)}
.waitlist-form button{background:var(--grad); color:#04121a; border:none; border-radius:8px; padding:0 18px; font-weight:700; font-size:14px; cursor:pointer; white-space:nowrap}
.form-msg{font-size:13px; margin-top:10px; min-height:18px}
.form-msg.ok{color:var(--accent)}
.form-msg.err{color:var(--danger)}

.table-wrap{background:var(--card); border:1px solid var(--border); border-radius:16px; overflow:hidden; overflow-x:auto}
table{width:100%; border-collapse:collapse; font-size:14px}
th{text-align:left; padding:14px 18px; color:var(--text-mute); font-weight:600; font-size:12px; text-transform:uppercase; letter-spacing:0.04em; border-bottom:1px solid var(--border); background:var(--card2); white-space:nowrap}
td{padding:14px 18px; border-bottom:1px solid var(--border); color:var(--text-dim); white-space:nowrap}
tr:last-child td{border-bottom:none}
td.name{color:var(--text); font-weight:600}
.tag{display:inline-block; font-size:11px; font-weight:700; padding:3px 9px; border-radius:6px}
.tag.pending{background:rgba(255,180,84,0.15); color:var(--warn)}
.tag.confirmed{background:rgba(62,230,168,0.15); color:var(--accent)}
.tag.reversed{background:rgba(255,107,107,0.15); color:var(--danger)}
.empty-note{padding:40px; text-align:center; color:var(--text-mute); font-size:14px}

.pager{display:flex; align-items:center; justify-content:flex-end; gap:12px; padding:14px 18px; border-top:1px solid var(--border)}
.pager-info{color:var(--text-mute); font-size:13px; margin-right:auto}
.pager-btn{background:var(--card2); border:1px solid var(--border); color:var(--text-dim); font-size:13px; font-weight:600; padding:7px 16px; border-radius:8px; cursor:pointer}
.pager-btn:hover:not(:disabled){border-color:var(--accent2); color:var(--accent2)}
.pager-btn:disabled{opacity:0.4; cursor:not-allowed}

.report-card{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:28px; margin-bottom:20px}
.report-card h3{margin:0 0 16px; font-size:16px; display:flex; align-items:center; gap:8px}
.report-card .body-text{color:var(--text-dim); font-size:14px; line-height:1.8}
.list-clean{list-style:none; padding:0; margin:0}
.list-clean li{padding:9px 0; border-bottom:1px solid rgba(255,255,255,0.04); font-size:14px; color:var(--text-dim); display:flex; justify-content:space-between; gap:12px}
.list-clean li:last-child{border-bottom:none}
.list-clean .n{color:var(--text); font-weight:600}
.pct-up{color:var(--accent); font-weight:700}
.pct-down{color:var(--danger); font-weight:700}
.report-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px}
@media(max-width:860px){.report-grid{grid-template-columns:1fr}}
.news-item{padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.04); font-size:14px}
.news-item:last-child{border-bottom:none}
.news-src{color:var(--accent2); font-size:12px; font-weight:700; margin-right:8px}
.disclaimer-box{background:var(--card2); border:1px solid var(--border); border-radius:12px; padding:18px 20px; font-size:13px; color:var(--text-mute); margin-bottom:32px}

.affiliate-box{background:var(--card); border:1px dashed var(--border); border-radius:14px; padding:24px}
.affiliate-box p.disclosure{font-size:13px; color:var(--text-mute); margin-bottom:16px}
.affiliate-links{display:flex; gap:12px; flex-wrap:wrap}
.affiliate-links a{background:var(--card2); border:1px solid var(--border); padding:10px 18px; border-radius:9px; font-size:14px; font-weight:600}
.affiliate-links a:hover{border-color:var(--accent2)}

footer{border-top:1px solid var(--border); padding:48px 0 32px; color:var(--text-mute); font-size:13px}
.footer-grid{display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; margin-bottom:24px}
.footer-links{display:flex; gap:20px}
.footer-links a:hover{color:var(--text)}
.footer-legal{border-top:1px solid var(--border); padding-top:20px; font-size:12px; line-height:1.7}

.prose h2{font-size:24px; margin:40px 0 16px}
.prose h2:first-child{margin-top:0}
.prose p, .prose li{color:var(--text-dim); font-size:15px; line-height:1.8}
.prose ul{padding-left:20px}
.prose table{margin:16px 0}

.page-hero{padding:56px 0 8px; text-align:center}
.page-hero h1{font-size:38px; font-weight:800; margin:0 0 12px}
.page-hero p{color:var(--text-dim); font-size:16px; max-width:600px; margin:0 auto}

/* 视觉隐藏但屏幕阅读器可读(表单label/图表数据摘要标题用), 不用display:none(那样屏幕阅读器也读不到) */
.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;
}

/* 表单label显式可见版本(邮箱订阅表单用) */
.form-label{display:block; font-size:13px; color:var(--text-dim); margin-bottom:6px}
.field-error{color:var(--danger); font-size:12px; margin-top:4px}
.waitlist-form input[aria-invalid="true"]{border-color:var(--danger)}

/* 图表数据摘要/替代表格(Canvas无障碍替代内容用) */
.chart-summary{font-size:13px; color:var(--text-dim); margin:10px 0}
.chart-data-toggle{background:var(--card2); border:1px solid var(--border); color:var(--text-dim); font-size:12px; padding:6px 12px; border-radius:6px; cursor:pointer; margin-bottom:10px}
.chart-data-table{display:none; margin-bottom:16px}
.chart-data-table.open{display:block}
.update-time{font-size:12px; color:var(--text-mute); margin-bottom:12px}

/* 策略持仓移动端卡片视图(横向表格在窄屏难读时的替代呈现) */
.positions-cards{display:none}
@media(max-width:640px){
  .table-wrap.responsive-table table{display:none}
  .positions-cards{display:block}
  .position-card{background:var(--card2); border:1px solid var(--border); border-radius:12px; padding:16px; margin-bottom:12px}
  .position-card .pc-row{display:flex; justify-content:space-between; font-size:13px; padding:4px 0; border-bottom:1px solid rgba(255,255,255,0.05)}
  .position-card .pc-row:last-child{border-bottom:none}
  .position-card .pc-row .k{color:var(--text-mute)}
}

/* ==================== 2026-09-13移动端溢出修复 ==================== */
@media(max-width:480px){
  .container{padding:0 16px}
  .hero{padding:56px 0 40px}
  .hero h1{font-size:32px}
  .hero p.sub{font-size:16px}
  .trust-row{gap:20px}
  .section-head h2{font-size:26px}
  .stat-grid{grid-template-columns:1fr 1fr; gap:10px}
  .stat-card{padding:16px}
  .stat-card .value{font-size:20px}
  .page-hero h1{font-size:28px}
  .footer-grid{flex-direction:column}
  .footer-links{flex-wrap:wrap; gap:12px 16px}
  .plan{padding:22px}
  .waitlist-form{flex-direction:column; align-items:stretch}
  .waitlist-form button{padding:11px 18px}
}
/* 长文本(邮箱/地址/token)统一允许折行, 而不是撑宽容器 */
.affiliate-links a, .news-item a, td, th{overflow-wrap:break-word}
table{table-layout:auto; max-width:100%}

