:root {
  --primary: #FF4500;
  --primary-dark: #CC3700;
  --primary-light: #FF6A33;
  --secondary: #1A1A2E;
  --accent: #FFB800;
}

/* 活力运动风 · 动感粗体 */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }

::-webkit-scrollbar { width: 9px; height: 9px; }
::-webkit-scrollbar-track { background: #09090b; }
::-webkit-scrollbar-thumb { background: #84cc16; }
::-webkit-scrollbar-thumb:hover { background: #a3e635; }
::selection { background: #84cc16; color: #18181b; }

/* 动感卡片 */
.sport-card { transition: transform .25s ease, box-shadow .25s ease; }
.sport-card:hover {
  transform: translateY(-5px) scale(1.01);
  box-shadow: 0 14px 30px -10px rgba(132,204,22,.4);
}

/* 图片缩放 */
.zoom-img { overflow: hidden; }
.zoom-img img { transition: transform .45s ease; }
.zoom-img:hover img { transform: scale(1.08); }

/* 斜切标签 */
.skew-tag { transform: skewX(-12deg); }
.skew-tag > * { display: inline-block; transform: skewX(12deg); }

/* 跑马灯条 */
.marquee-strip {
  background: repeating-linear-gradient(-45deg, #84cc16 0 18px, #18181b 18px 36px);
  height: 6px;
}

/* 移动端抽屉导航 */
.nav { transition: transform .3s ease; }
@media (max-width: 1023px) {
  .nav {
    position: fixed; top: 0; right: 0; bottom: 0;
    width: 84%; max-width: 340px;
    flex-direction: column; align-items: flex-start;
    background: #09090b; padding: 5.5rem 1.25rem 2rem;
    transform: translateX(100%);
    z-index: 60; overflow-y: auto; gap: .25rem;
    display: flex !important;
    border-left: 4px solid #84cc16;
  }
  .nav.active { transform: translateX(0); }
  .nav a { width: 100%; }
  .menu-overlay {
    position: fixed; inset: 0;
    background: rgba(9,9,11,.85);
    opacity: 0; visibility: hidden;
    transition: opacity .3s ease; z-index: 55;
  }
  .menu-overlay.active { opacity: 1; visibility: visible; }
  body.menu-open { overflow: hidden; }
}

/* FAQ 折叠 */
.faq-answer {
  max-height: 0; overflow: hidden; opacity: 0;
  transition: max-height .35s ease, opacity .35s ease;
}
.faq-icon { transition: transform .3s ease; }

/* 回到顶部 */
.back-to-top { opacity: 0; visibility: hidden; transition: opacity .3s ease; }
.back-to-top.visible { opacity: 1; visibility: visible; }

/* 入场动画 */
@keyframes burstIn {
  from { opacity: 0; transform: translateY(24px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.burst-in { animation: burstIn .6s cubic-bezier(.2,.9,.3,1.2) both; }

@media print {
  header, footer, .nav, .no-print { display: none !important; }
  body { background: #fff !important; color: #000 !important; }
}
