/* ==========================================================================
   设计系统 · 基础样式（首页 + 提交页共享）
   主色：深蓝 #1B4DFF（差异化于参考站的紫色）
   点缀：青 #00C2A8
   ========================================================================== */

:root{
  /* 品牌色 */
  --brand:        #1B4DFF;
  --brand-deep:   #0F3BE0;
  --brand-darker: #0A2BA8;
  --brand-light:  #EEF3FF;
  --brand-ghost:  #F6F9FF;

  /* 点缀色 */
  --accent:       #00C2A8;
  --accent-deep:  #00A08A;
  --accent-light: #E3FAF6;

  /* 中性色 */
  --ink:    #0F1B2D;   /* 主文字 */
  --ink-2:  #44506B;   /* 次文字 */
  --ink-3:  #8A94A6;   /* 弱文字 */
  --bg:     #F6F8FB;   /* 页面底 */
  --card:   #FFFFFF;
  --line:   #E4EAF2;
  --line-2: #EDF1F7;

  /* 语义色 */
  --ok:      #15803D;
  --ok-bg:   #F0FDF4;
  --ok-line: #BBF7D0;
  --err:     #B91C1C;
  --err-bg:  #FEF2F2;
  --err-line:#FECACA;

  /* 圆角 */
  --r-sm: 10px;
  --r:    14px;
  --r-lg: 20px;

  /* 阴影 */
  --sh-sm: 0 1px 2px rgba(15,27,45,.04), 0 2px 8px rgba(15,27,45,.04);
  --sh:    0 4px 12px rgba(15,27,45,.06), 0 12px 32px rgba(15,27,45,.06);
  --sh-lg: 0 12px 40px rgba(27,77,255,.14);

  /* 布局 */
  --wrap: 1120px;
  --nav-h: 64px;

  /* 字体 */
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei",
          "PingFang SC", "Hiragino Sans GB", "Source Han Sans SC", sans-serif;
  --mono: ui-monospace, "SF Mono", Consolas, "Courier New", monospace;
}

/* ---------------------------------------------------------------- 基础 */
*{ box-sizing:border-box; margin:0; padding:0; }
html{ -webkit-text-size-adjust:100%; }
body{
  font-family:var(--font);
  background:var(--bg);
  color:var(--ink);
  line-height:1.6;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{ max-width:100%; display:block; }
a{ color:var(--brand); text-decoration:none; }
a:hover{ color:var(--brand-deep); }
button{ font-family:inherit; }
main{ flex:1; }

.wrap{ max-width:var(--wrap); margin:0 auto; padding:0 24px; width:100%; }
.wrap-narrow{ max-width:820px; margin:0 auto; padding:0 24px; width:100%; }

/* ---------------------------------------------------------------- 顶部导航 */
.nav{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.85);
  backdrop-filter:saturate(180%) blur(12px);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  height:var(--nav-h);
  display:flex; align-items:center; justify-content:space-between;
}
.brand{ display:flex; align-items:center; gap:11px; }
.brand-logo{
  width:36px; height:36px; border-radius:10px;
  background:linear-gradient(135deg, var(--brand) 0%, var(--brand-darker) 100%);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-weight:800; font-size:16px;
  box-shadow:0 4px 12px rgba(27,77,255,.28);
}
.brand-name{ font-size:16px; font-weight:700; letter-spacing:-.2px; }
.brand-tag{ font-size:11px; color:var(--ink-3); font-weight:400; margin-left:2px; }
.nav-links{ display:flex; align-items:center; gap:26px; }
.nav-links a{ color:var(--ink-2); font-size:14px; font-weight:500; transition:.15s; }
.nav-links a:hover{ color:var(--brand); }
.nav-cta{
  display:inline-flex; align-items:center; gap:6px;
  height:38px; padding:0 18px;
  background:var(--brand); color:#fff !important;
  border-radius:9px; font-size:14px; font-weight:600;
  transition:.15s;
}
.nav-cta:hover{ background:var(--brand-deep); transform:translateY(-1px); }

/* ---------------------------------------------------------------- 按钮 */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  height:50px; padding:0 30px;
  border:none; border-radius:11px;
  font-size:15.5px; font-weight:700; cursor:pointer;
  transition:.18s cubic-bezier(.4,0,.2,1);
  text-decoration:none;
}
.btn-primary{
  background:linear-gradient(135deg, var(--brand) 0%, var(--brand-deep) 100%);
  color:#fff;
  box-shadow:0 6px 18px rgba(27,77,255,.30);
}
.btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(27,77,255,.38);
  color:#fff;
}
.btn-primary:active{ transform:translateY(0); }
.btn-primary:disabled{
  background:#C3CDDE; box-shadow:none; cursor:not-allowed; transform:none;
}
.btn-ghost{
  background:var(--card); color:var(--ink);
  border:1.5px solid var(--line);
}
.btn-ghost:hover{ border-color:var(--brand); color:var(--brand); }
.btn-lg{ height:56px; padding:0 38px; font-size:16.5px; border-radius:13px; }
.btn-block{ width:100%; }

/* ---------------------------------------------------------------- 区块标题 */
.sec-head{ text-align:center; margin-bottom:52px; }
.sec-eyebrow{
  display:inline-block;
  font-size:12.5px; font-weight:700; letter-spacing:1.5px;
  color:var(--brand); text-transform:uppercase;
  padding:5px 14px; background:var(--brand-light); border-radius:20px;
  margin-bottom:16px;
}
.sec-title{
  font-size:clamp(26px, 4vw, 38px);
  font-weight:800; letter-spacing:-.8px; line-height:1.25;
}
.sec-sub{
  font-size:15.5px; color:var(--ink-2); margin-top:14px;
  max-width:640px; margin-left:auto; margin-right:auto;
}

/* ---------------------------------------------------------------- 卡片 */
.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  box-shadow:var(--sh-sm);
}

/* ---------------------------------------------------------------- 页脚 */
.footer{
  background:#0C1424;
  color:#93A0B8;
  padding:52px 0 30px;
  margin-top:auto;
}
.footer-grid{
  display:grid; grid-template-columns:2fr 1fr 1fr; gap:40px;
  padding-bottom:36px; border-bottom:1px solid rgba(255,255,255,.08);
}
.footer-brand .brand-logo{ margin-bottom:14px; }
.footer-brand p{ font-size:13px; line-height:1.7; max-width:320px; }
.footer h4{ color:#fff; font-size:14px; font-weight:700; margin-bottom:16px; }
.footer ul{ list-style:none; }
.footer ul li{ margin-bottom:10px; }
.footer ul a{ color:#93A0B8; font-size:13.5px; transition:.15s; }
.footer ul a:hover{ color:#fff; }
.footer-bottom{
  padding-top:24px; display:flex; justify-content:space-between; align-items:center;
  font-size:12.5px; flex-wrap:wrap; gap:10px;
}
.footer-note{ color:#64748B; }

/* ---------------------------------------------------------------- 响应式 */
@media (max-width: 860px){
  .footer-grid{ grid-template-columns:1fr; gap:32px; }
}
@media (max-width: 640px){
  .nav-links a:not(.nav-cta){ display:none; }
  .wrap, .wrap-narrow{ padding:0 18px; }
  .sec-head{ margin-bottom:38px; }
}

/* ---------------------------------------------------------------- 动效 */
@keyframes fadeUp{
  from{ opacity:0; transform:translateY(18px); }
  to{ opacity:1; transform:translateY(0); }
}
.reveal{ animation:fadeUp .6s cubic-bezier(.2,.6,.3,1) both; }
.reveal-1{ animation-delay:.08s; }
.reveal-2{ animation-delay:.16s; }
.reveal-3{ animation-delay:.24s; }

@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; }
}
