body{
  font-family:var(--font-body);
  color:var(--color-text);
  background:var(--color-bg);
  line-height:1.7;
  font-size:15px;
}
.container{max-width:var(--max-width);margin:0 auto;padding:0 16px}

/* ===== Header ===== */
.site-header{
  background:var(--color-white);
  border-bottom:1px solid var(--color-border);
  position:sticky;top:0;z-index:100;
  box-shadow:var(--shadow-sm);
}

.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:96px;
  gap:24px;
}

/* 左右导航 */
.nav-left,
.nav-right{
  display:flex;
  align-items:center;
  gap:36px;
  flex:1;
}
.nav-left{ justify-content:flex-start; }
.nav-right{ justify-content:flex-end; }

.nav-left li,
.nav-right li{ list-style:none; }

.nav-left a,
.nav-right a{
  font-size:15px;
  color:var(--color-text);
  padding:6px 0;
  position:relative;
  transition:color var(--transition);
  white-space:nowrap;
}
.nav-left a::after,
.nav-right a::after{
  content:'';
  position:absolute;
  left:50%;bottom:-4px;
  transform:translateX(-50%);
  width:0;height:2px;
  background:var(--color-primary);
  transition:width var(--transition);
}
.nav-left a:hover,
.nav-right a:hover{ color:var(--color-primary); }
.nav-left a:hover::after,
.nav-right a:hover::after{ width:100%; }
.nav-left a.active,
.nav-right a.active{ color:var(--color-primary); font-weight:600; }
.nav-left a.active::after,
.nav-right a.active::after{ width:100%; }

/* 中间 Logo */
.logo{
  flex-shrink:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.logo img{
  height:64px;
  width:auto;
  display:block;
}

/* 语言切换 */
.lang-switch{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  color:var(--color-muted);
}
.lang-switch span{ color:var(--color-border); }
.lang-switch a{
  font-size:13px;
  color:var(--color-muted);
  padding:4px 6px;
  border-radius:var(--radius);
  transition:var(--transition);
}
.lang-switch a::after{ display:none; }
.lang-switch a.active{
  color:var(--color-white);
  background:var(--color-primary);
}

/* ===== Main ===== */
.site-main{min-height:60vh}

/* ===== Section ===== */
.section{padding:48px 0}
.section-title{
  font-family:var(--font-heading);
  font-size:28px;margin-bottom:24px;
  color:var(--color-primary);position:relative;padding-left:16px;
}
.section-title::before{
  content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:24px;background:var(--color-primary);border-radius:2px;
}

/* ===== Page Banner ===== */
.page-banner{
  background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));
  color:var(--color-white);text-align:center;padding:64px 16px;
}
.page-banner h1{font-family:var(--font-heading);font-size:32px;letter-spacing:2px}

/* ============================================================
   页脚
   ============================================================ */
.site-footer {
  background: var(--color-dark);
  color: #bbb;
  padding: 48px 0 24px;
  text-align: center;
  font-size: 14px;
  margin-top: 48px;
}

/* 联系方式 */
.site-footer .contact-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  flex-wrap: wrap;
  margin-bottom: 24px;
  font-size: 14px;
  color: #ccc;
}
.site-footer .contact-row span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* 版权 + 技术支持 */
.site-footer .copy {
  font-size: 13px;
  color: #888;
  line-height: 1.9;
  padding-top: 20px;
  border-top: 1px solid #3a2a1a;
  margin: 0;
}
.site-footer .copy a {
  color: var(--color-accent);
  transition: var(--transition);
}
.site-footer .copy a:hover {
  color: #fff;
  text-decoration: underline;
}

/* 响应式 */
@media (max-width: 768px) {
  .site-footer {
    padding: 32px 0 80px;
    font-size: 13px;
  }
  .site-footer .contact-row {
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
  }
  .site-footer .copy {
    font-size: 12px;
    padding-top: 16px;
  }
}

/* ===== Flash ===== */
.flash{
  margin-top:12px;padding:10px 14px;border-radius:var(--radius);
  background:#eef7ee;color:#2e7d32;border:1px solid #c8e6c9;
}