:root{
  --primary:#e50914;
  --accent:#f5c518;
  --bg:#0b0b0f;
  --text:#f5f5f7;
  --card-bg:#14141c;
  --border:#2a2a35;
  --muted:#9c9ca3;
}
*{box-sizing:border-box;margin:0;padding:0;border-radius:0!important;}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',system-ui,sans-serif;
  font-weight:400;
  line-height:1.7;
  letter-spacing:0.01em;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{
  font-weight:900;
  letter-spacing:-0.02em;
  line-height:1.2;
}
p{margin-bottom:1rem}
a{color:inherit;text-decoration:none}
::selection{background:var(--primary);color:#fff}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--border);border:2px solid var(--bg)}
::-webkit-scrollbar-thumb:hover{background:var(--primary)}

/* ========== 滚动进度条 ========== */
#scroll-progress{
  position:fixed;top:0;left:0;width:0%;height:3px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  z-index:9999;transition:width 0.1s linear;
}

/* ========== 导航栏 ========== */
.navbar-99{
  background:rgba(11,11,15,0.92);
  backdrop-filter:blur(12px);
  border-bottom:2px solid var(--border);
  padding:12px 0;
  position:sticky;top:0;z-index:1000;
}
.navbar-99 .navbar-brand{
  font-weight:900;font-size:1.7rem;color:var(--text);
  display:flex;align-items:center;gap:8px;
}
.navbar-99 .navbar-brand i{
  color:var(--accent);font-size:1.6rem;
}
.navbar-99 .nav-link{
  color:var(--text);font-weight:600;margin:0 6px;padding:6px 14px;
  border:2px solid transparent;transition:all 0.25s;
  font-size:0.95rem;
}
.navbar-99 .nav-link:hover{
  border-color:var(--primary);
  color:var(--accent);
}
.navbar-toggler{
  border:2px solid var(--border);
  color:var(--text);
  font-size:1.2rem;
  padding:4px 10px;
  background:transparent;
}
.navbar-toggler:focus{box-shadow:none}

/* ========== Hero 开场 ========== */
.hero-99{
  position:relative;
  padding:70px 0 60px;
  text-align:center;
  background:
    radial-gradient(ellipse at 20% 20%,rgba(229,9,20,0.15) 0%,transparent 50%),
    radial-gradient(ellipse at 80% 80%,rgba(245,197,24,0.12) 0%,transparent 50%);
  border-bottom:2px solid var(--border);
  overflow:hidden;
}
.hero-99 h1{
  font-size:3.8rem;
  font-weight:900;
  background:linear-gradient(120deg,var(--primary),var(--accent),var(--primary));
  background-size:200% auto;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:gradientFlow 4s ease-in-out infinite;
  margin-bottom:16px;
}
@keyframes gradientFlow{
  0%,100%{background-position:0% center}
  50%{background-position:100% center}
}
.hero-99 .hero-sub{
  font-size:1.25rem;color:var(--muted);max-width:720px;margin:0 auto 20px;
}
.hero-99 .hero-badge{
  display:inline-block;background:rgba(229,9,20,0.15);
  border:1px solid var(--primary);color:var(--accent);
  padding:6px 18px;font-weight:700;font-size:0.9rem;margin-bottom:15px;
}
.hero-float{
  position:absolute;font-size:2rem;opacity:0.2;animation:floatUp 6s ease-in-out infinite;
}
@keyframes floatUp{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-20px) rotate(8deg)}
}
.hero-float.f1{top:20%;left:8%}
.hero-float.f2{top:60%;right:12%;animation-delay:1.5s}
.hero-float.f3{bottom:15%;left:18%;animation-delay:3s}
.hero-float.f4{top:15%;right:25%;animation-delay:2s}

/* ========== 区块通用 ========== */
.section-99{
  padding:60px 0;
  border-bottom:2px solid var(--border);
}
.section-title{
  display:flex;align-items:center;gap:12px;
  margin-bottom:30px;
  border-left:6px solid var(--primary);
  padding-left:16px;
}
.section-title h2{
  font-size:1.8rem;font-weight:900;
}
.section-title .title-badge{
  background:var(--primary);color:#fff;font-size:0.7rem;
  padding:2px 10px;font-weight:700;letter-spacing:1px;
}

/* ========== 海报卡片 ========== */
.movie-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:20px;
}
.movie-card{
  background:var(--card-bg);
  border:2px solid var(--border);
  position:relative;
  overflow:hidden;
  transition:transform 0.3s ease,box-shadow 0.3s ease;
  cursor:pointer;
  display:block;
}
.movie-card:hover{
  transform:translateY(-6px);
  box-shadow:6px 8px 0 rgba(229,9,20,0.35);
  border-color:var(--primary);
}
.movie-card .poster{
  position:relative;
  aspect-ratio:2/3;
  overflow:hidden;
  background:#1a1a22;
}
.movie-card .poster img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 0.6s ease;
  opacity:0;
  transition:opacity 0.5s ease,transform 0.6s ease;
}
.movie-card .poster img.loaded{opacity:1}
.movie-card:hover .poster img{
  transform:scale(1.08);
}
.movie-card .gradient-overlay{
  position:absolute;bottom:0;left:0;right:0;height:70%;
  background:linear-gradient(to top,rgba(0,0,0,0.95) 0%,rgba(0,0,0,0.4) 60%,transparent 100%);
  display:flex;align-items:flex-end;padding:12px;
  opacity:0.9;transition:opacity 0.3s;
}
.movie-card:hover .gradient-overlay{opacity:1}
.movie-card .play-btn{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);
  width:56px;height:56px;
  background:var(--primary);
  border:2px solid #fff;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%!important;
  font-size:1.3rem;color:#fff;
  transition:transform 0.3s ease;
  box-shadow:0 0 25px rgba(229,9,20,0.6);
}
.movie-card:hover .play-btn{transform:translate(-50%,-50%) scale(1)}
.movie-card .movie-info{
  padding:12px;
  position:relative;
}
.movie-card .movie-title{
  font-weight:700;font-size:0.95rem;margin-bottom:4px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.movie-card .movie-meta{
  font-size:0.8rem;color:var(--muted);
  display:flex;justify-content:space-between;align-items:center;
}
.movie-card .rating{
  color:var(--accent);font-weight:800;
  font-family:'Courier New',monospace;
}
.movie-card .rating i{
  font-size:0.7rem;margin-right:2px;
}
.movie-card .type-tag{
  background:rgba(245,197,24,0.15);
  color:var(--accent);
  font-size:0.7rem;padding:1px 8px;
  border:1px solid rgba(245,197,24,0.3);
}

/* ========== 排行榜 ========== */
.rank-list{
  list-style:none;
}
.rank-item{
  display:flex;align-items:center;
  padding:12px 16px;
  background:var(--card-bg);
  border:1px solid var(--border);
  margin-bottom:10px;
  transition:all 0.3s;
  position:relative;
}
.rank-item:hover{
  border-color:var(--accent);
  transform:translateX(4px);
}
.rank-number{
  font-size:1.4rem;font-weight:900;color:var(--primary);
  width:48px;font-family:'Courier New',monospace;
}
.rank-item:nth-child(1) .rank-number{color:var(--accent)}
.rank-item:nth-child(2) .rank-number{color:#c0c0c0}
.rank-item:nth-child(3) .rank-number{color:#cd7f32}
.rank-title{
  flex:1;font-weight:600;
}
.rank-score{
  color:var(--accent);font-weight:800;font-family:'Courier New',monospace;
}
.rank-trend{color:var(--muted);font-size:0.8rem;margin-left:10px}
.rank-item .fa-caret-up{color:#4ade80}
.rank-item .fa-caret-down{color:var(--primary)}

/* ========== 分类入口 ========== */
.category-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:15px;
}
.category-item{
  background:var(--card-bg);
  border:2px solid var(--border);
  padding:24px 12px;
  text-align:center;
  transition:all 0.3s;
  cursor:pointer;
}
.category-item:hover{
  border-color:var(--primary);
  transform:translateY(-4px);
  box-shadow:4px 4px 0 rgba(229,9,20,0.3);
}
.category-item i{
  font-size:2.2rem;margin-bottom:10px;color:var(--accent);
}
.category-item .cat-name{
  font-weight:700;font-size:0.9rem;
}

/* ========== 手风琴折叠 ========== */
.accordion-99 .accordion-item{
  background:var(--card-bg);
  border:1px solid var(--border)!important;
  margin-bottom:12px;
}
.accordion-99 .accordion-button{
  background:var(--card-bg);
  color:var(--text);
  font-weight:700;
  border:2px solid var(--border);
  box-shadow:none!important;
  padding:16px 20px;
}
.accordion-99 .accordion-button:not(.collapsed){
  background:rgba(229,9,20,0.1);
  color:var(--accent);
}
.accordion-99 .accordion-button:focus{
  box-shadow:none;
  border-color:var(--primary);
}
.accordion-99 .accordion-body{
  padding:20px;
  color:var(--muted);
  border-top:1px solid var(--border);
}

/* ========== 心情选片 ========== */
.mood-chips{
  display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px;
}
.mood-chip{
  background:var(--card-bg);
  border:2px solid var(--border);
  padding:8px 20px;
  font-weight:600;cursor:pointer;
  transition:all 0.3s;
}
.mood-chip:hover,.mood-chip.active{
  border-color:var(--primary);
  color:var(--accent);
  background:rgba(229,9,20,0.1);
}
.mood-result{
  background:var(--card-bg);
  border:2px solid var(--border);
  padding:24px;
  display:none;
}
.mood-result.show{display:block}
.mood-result .movie-suggestion{
  display:flex;gap:16px;align-items:center;
}
.mood-result .suggestion-poster{
  width:100px;height:140px;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  display:flex;align-items:center;justify-content:center;
  font-size:2rem;
}
.mood-result .suggestion-title{
  font-size:1.3rem;font-weight:800;
}
.mood-result .suggestion-desc{
  color:var(--muted);font-size:0.9rem;
}

/* ========== 弹窗 ========== */
.movie-modal{
  display:none;
  position:fixed;inset:0;
  z-index:2000;
  background:rgba(0,0,0,0.7);
  backdrop-filter:blur(8px);
  align-items:center;justify-content:center;
}
.movie-modal.show{
  display:flex;
}
.modal-backdrop-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  filter:blur(30px) brightness(0.4);
  z-index:-1;
}
.modal-content-99{
  position:relative;
  background:rgba(20,20,28,0.95);
  border:2px solid var(--border);
  max-width:650px;width:90%;
  max-height:85vh;
  overflow-y:auto;
  padding:0;
  z-index:2;
  box-shadow:10px 10px 0 rgba(229,9,20,0.4);
}
.modal-header-99{
  padding:20px 24px;
  border-bottom:1px solid var(--border);
  display:flex;justify-content:space-between;align-items:center;
  background:rgba(0,0,0,0.3);
}
.modal-header-99 h3{
  font-size:1.4rem;margin:0;font-weight:800;
}
.modal-close{
  background:none;border:2px solid var(--border);
  color:var(--text);font-size:1.2rem;
  width:36px;height:36px;cursor:pointer;
  transition:all 0.3s;
}
.modal-close:hover{
  background:var(--primary);border-color:var(--primary);
}
.modal-body-99{
  padding:24px;
}
.modal-body-99 .movie-detail-title{
  font-size:1.8rem;font-weight:900;margin-bottom:12px;
}
.modal-body-99 .detail-rating{
  font-size:1.6rem;color:var(--accent);font-weight:900;
  font-family:'Courier New',monospace;
  margin-bottom:15px;
}
.modal-body-99 .detail-meta{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;
}
.modal-body-99 .detail-tag{
  background:rgba(245,197,24,0.12);
  border:1px solid rgba(245,197,24,0.3);
  color:var(--accent);
  padding:4px 14px;font-size:0.85rem;
  font-weight:600;
}
.modal-body-99 .detail-plot{
  background:rgba(0,0,0,0.2);
  border-left:4px solid var(--primary);
  padding:16px;margin:20px 0;
  color:var(--text);font-size:0.95rem;
}
.modal-body-99 .detail-actors{
  color:var(--muted);font-size:0.9rem;
}
.modal-body-99 .detail-actors span{
  color:var(--text);font-weight:600;
}

/* ========== 页脚 ========== */
.footer-99{
  background:#070709;
  border-top:3px solid var(--primary);
  padding:50px 0 30px;
}
.footer-99 .footer-links{
  display:flex;justify-content:center;gap:25px;
  flex-wrap:wrap;margin-bottom:25px;
}
.footer-99 .footer-links a{
  color:var(--muted);
  font-size:0.9rem;
  transition:color 0.3s;
}
.footer-99 .footer-links a:hover{color:var(--accent)}
.footer-99 .footer-copy{
  text-align:center;color:var(--muted);
  font-size:0.9rem;
  border-top:1px solid var(--border);
  padding-top:25px;
}
.footer-99 .footer-brand{
  text-align:center;font-size:1.5rem;font-weight:900;
  color:var(--text);margin-bottom:5px;
}
.footer-99 .footer-brand i{
  color:var(--accent);
}

/* ========== 专题区 ========== */
.special-block{
  background:linear-gradient(135deg,rgba(229,9,20,0.05),rgba(245,197,24,0.05));
  border:2px solid var(--border);
  padding:30px;
  position:relative;
  overflow:hidden;
  margin-bottom:20px;
}
.special-block::before{
  content:'';position:absolute;top:0;left:0;width:100%;height:4px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
}
.special-block h3{
  font-size:1.4rem;font-weight:900;margin-bottom:15px;
}
.special-list{
  list-style:none;margin:0;
}
.special-list li{
  padding:10px 0;border-bottom:1px dashed var(--border);
  display:flex;gap:10px;align-items:flex-start;
}
.special-list li i{
  color:var(--accent);margin-top:5px;font-size:0.8rem;
}
.special-list li:last-child{border-bottom:none}

/* ========== 类型科普 ========== */
.genre-info{
  background:var(--card-bg);
  border:1px solid var(--border);
  padding:20px;
  height:100%;
}
.genre-info i{
  font-size:2rem;color:var(--primary);margin-bottom:10px;
}
.genre-info h4{
  font-weight:800;font-size:1.1rem;margin-bottom:8px;
}
.genre-info p{
  color:var(--muted);font-size:0.88rem;margin:0;
}

/* ========== 懒加载 ========== */
img.lazy-load{
  opacity:0;
  transition:opacity 0.5s ease;
}
img.lazy-load.loaded{
  opacity:1;
}

/* ========== 响应式 ========== */
@media (max-width:768px){
  .hero-99 h1{font-size:2.4rem}
  .movie-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
  .category-grid{grid-template-columns:repeat(3,1fr)}
  .section-99{padding:40px 0}
  .hero-99{padding:45px 0 35px}
  .hero-99 .hero-sub{font-size:1rem}
  .modal-content-99{width:95%}
}

/* --- 子页面追加 --- */
/* 关于我们页面专属样式 */
    .about-hero {
      padding: 80px 0 60px;
      text-align: center;
      background: linear-gradient(180deg, rgba(229, 9, 20, 0.08) 0%, rgba(11, 11, 15, 0) 100%);
    }
.about-hero h1 {
      font-size: 2.8rem;
      font-weight: 800;
      margin-bottom: 16px;
    }
.about-hero h1 .brand-highlight {
      color: var(--primary);
    }
.about-hero p {
      color: var(--muted);
      max-width: 600px;
      margin: 0 auto;
      font-size: 1.1rem;
      line-height: 1.8;
    }
.about-section {
      padding: 60px 0;
      border-bottom: 1px solid var(--border);
    }
.about-section:last-child {
      border-bottom: none;
    }
.about-section h2 {
      font-size: 1.8rem;
      font-weight: 700;
      margin-bottom: 24px;
      position: relative;
      padding-left: 20px;
    }
.about-section h2::before {
      content: '';
      position: absolute;
      left: 0;
      top: 6px;
      width: 4px;
      height: 70%;
      background: var(--primary);
      border-radius: 2px;
    }
.about-section h2 .brand {
      color: var(--primary);
    }
.about-section p {
      color: var(--text);
      line-height: 1.9;
      margin-bottom: 16px;
      font-size: 1rem;
    }
.about-section .lead {
      color: var(--muted);
      font-size: 1.05rem;
    }
.feature-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-top: 30px;
    }
.feature-item {
      background: var(--card-bg);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 28px 24px;
      transition: transform 0.3s ease, border-color 0.3s ease;
    }
.feature-item:hover {
      transform: translateY(-4px);
      border-color: var(--primary);
    }
.feature-item i {
      font-size: 2rem;
      color: var(--primary);
      margin-bottom: 16px;
    }
.feature-item h3 {
      font-size: 1.15rem;
      font-weight: 600;
      margin-bottom: 10px;
      color: var(--text);
    }
.feature-item p {
      color: var(--muted);
      font-size: 0.9rem;
      line-height: 1.6;
      margin-bottom: 0;
    }
.stat-row {
      display: flex;
      flex-wrap: wrap;
      gap: 40px;
      margin-top: 30px;
      justify-content: center;
    }
.stat-item {
      text-align: center;
      min-width: 120px;
    }
.stat-item .stat-number {
      font-size: 2.2rem;
      font-weight: 800;
      color: var(--accent);
      display: block;
    }
.stat-item .stat-label {
      color: var(--muted);
      font-size: 0.9rem;
      margin-top: 6px;
    }
.value-list {
      list-style: none;
      padding: 0;
      margin: 20px 0 0;
    }
.value-list li {
      padding: 12px 0;
      border-bottom: 1px solid var(--border);
      display: flex;
      align-items: flex-start;
      gap: 12px;
    }
.value-list li:last-child {
      border-bottom: none;
    }
.value-list li i {
      color: var(--primary);
      margin-top: 4px;
      flex-shrink: 0;
    }
.value-list li strong {
      color: var(--text);
      display: block;
      margin-bottom: 4px;
      font-size: 1rem;
    }
.value-list li span {
      color: var(--muted);
      font-size: 0.92rem;
      line-height: 1.6;
    }
.journey-text {
      background: var(--card-bg);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 30px;
      margin-top: 24px;
    }
.journey-text p {
      margin-bottom: 12px;
    }
.journey-text p:last-child {
      margin-bottom: 0;
    }
.about-hero h1 {
        font-size: 2rem;
      }
.about-section h2 {
        font-size: 1.5rem;
      }
.feature-grid {
        grid-template-columns: 1fr;
        gap: 16px;
      }
.stat-row {
        gap: 24px;
      }
.stat-item {
        min-width: 90px;
      }
.stat-item .stat-number {
        font-size: 1.8rem;
      }
.journey-text {
        padding: 20px;
      }

/* --- 子页面追加 --- */
/* 免责声明页面专属样式 */
    .disclaimer-hero { padding: 80px 0 40px; }
.disclaimer-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 16px; padding: 32px; margin-bottom: 24px; }
.disclaimer-card h2 { color: var(--primary); font-weight: 700; font-size: 1.6rem; margin-bottom: 16px; display: flex; align-items: center; gap: 12px; }
.disclaimer-card h2 i { font-size: 1.3rem; }
.disclaimer-card p, .disclaimer-card li { color: var(--muted); line-height: 1.8; }
.disclaimer-card ul { padding-left: 20px; }
.disclaimer-card ul li { margin-bottom: 8px; }
.disclaimer-highlight { background: rgba(229, 9, 20, 0.1); border-left: 4px solid var(--primary); padding: 16px 20px; border-radius: 0 8px 8px 0; margin: 20px 0; }
.disclaimer-highlight p { color: var(--text); }
.disclaimer-date { color: var(--muted); font-size: 0.9rem; text-align: right; margin-top: 16px; }
.disclaimer-hero { padding: 60px 0 30px; }
.disclaimer-card { padding: 24px; }

/* --- 子页面追加 --- */
.privacy-section { padding: 60px 0; }
.privacy-container { max-width: 900px; margin: 0 auto; padding: 0 20px; }
.privacy-title { font-size: 2.5rem; font-weight: 800; color: var(--text); margin-bottom: 10px; text-align: center; }
.privacy-subtitle { color: var(--muted); text-align: center; margin-bottom: 40px; font-size: 1.1rem; }
.privacy-card { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; padding: 30px; margin-bottom: 25px; transition: border-color 0.3s; }
.privacy-card:hover { border-color: var(--primary); }
.privacy-card h2 { color: var(--accent); font-size: 1.5rem; font-weight: 700; margin-bottom: 15px; }
.privacy-card h3 { color: var(--text); font-size: 1.15rem; font-weight: 600; margin-bottom: 12px; }
.privacy-card p { color: var(--muted); line-height: 1.8; margin-bottom: 12px; font-size: 0.95rem; }
.privacy-card ul { color: var(--muted); padding-left: 20px; margin-bottom: 15px; }
.privacy-card li { margin-bottom: 8px; line-height: 1.7; }
.privacy-highlight { color: var(--accent); font-weight: 500; }
.privacy-update { text-align: center; color: var(--muted); font-size: 0.9rem; margin-top: 40px; padding: 20px; border-top: 1px solid var(--border); }
.privacy-icon { color: var(--primary); margin-right: 10px; }
.privacy-title { font-size: 1.8rem; }
.privacy-card { padding: 20px; }
.privacy-card h2 { font-size: 1.3rem; }

/* --- 子页面追加 --- */
/* 本页专属样式 */
        .contact-hero {
            padding: 80px 0 50px;
            text-align: center;
        }
.contact-hero h1 {
            font-size: 2.5rem;
            font-weight: 800;
            color: var(--text);
            margin-bottom: 15px;
        }
.contact-hero p {
            color: var(--muted);
            font-size: 1.1rem;
            max-width: 700px;
            margin: 0 auto;
        }
.contact-section {
            padding: 40px 0;
        }
.contact-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 25px;
            margin-top: 30px;
        }
.contact-item {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 30px;
            text-align: center;
            transition: transform 0.3s, border-color 0.3s;
        }
.contact-item:hover {
            transform: translateY(-5px);
            border-color: var(--primary);
        }
.contact-item i {
            font-size: 2.5rem;
            color: var(--primary);
            margin-bottom: 20px;
        }
.contact-item h3 {
            font-size: 1.2rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: 15px;
        }
.contact-item p {
            color: var(--muted);
            font-size: 0.95rem;
            line-height: 1.6;
            margin-bottom: 15px;
        }
.contact-item a {
            color: var(--accent);
            text-decoration: none;
            font-weight: 500;
        }
.contact-item a:hover {
            color: var(--primary);
        }
.contact-form-wrap {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 16px;
            padding: 40px;
            margin-top: 50px;
        }
.contact-form-wrap h2 {
            font-size: 1.8rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: 10px;
        }
.contact-form-wrap .sub {
            color: var(--muted);
            margin-bottom: 30px;
        }
.form-group-99 {
            margin-bottom: 20px;
        }
.form-group-99 label {
            display: block;
            color: var(--text);
            font-weight: 500;
            margin-bottom: 8px;
            font-size: 0.95rem;
        }
.form-group-99 input,
        .form-group-99 textarea,
        .form-group-99 select {
            width: 100%;
            padding: 12px 15px;
            background: rgba(0,0,0,0.3);
            border: 1px solid var(--border);
            border-radius: 8px;
            color: var(--text);
            font-size: 0.95rem;
            transition: border-color 0.3s;
        }
.form-group-99 input:focus,
        .form-group-99 textarea:focus,
        .form-group-99 select:focus {
            outline: none;
            border-color: var(--primary);
        }
.form-group-99 input::placeholder,
        .form-group-99 textarea::placeholder {
            color: rgba(255,255,255,0.4);
        }
.form-group-99 select {
            appearance: none;
            -webkit-appearance: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239c9ca3' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 15px center;
            cursor: pointer;
        }
.form-group-99 select option {
            background: var(--card-bg);
            color: var(--text);
        }
.btn-submit-99 {
            background: var(--primary);
            color: #fff;
            border: none;
            padding: 14px 40px;
            border-radius: 8px;
            font-weight: 600;
            font-size: 1rem;
            cursor: pointer;
            transition: background 0.3s, transform 0.2s;
            width: 100%;
        }
.btn-submit-99:hover {
            background: #d40813;
            transform: translateY(-2px);
        }
.faq-list {
            margin-top: 20px;
        }
.faq-item {
            background: var(--card-bg);
            border: 1px solid var(--border);
            border-radius: 10px;
            padding: 20px 25px;
            margin-bottom: 15px;
        }
.faq-item h4 {
            color: var(--text);
            font-size: 1.05rem;
            font-weight: 600;
            margin-bottom: 8px;
        }
.faq-item p {
            color: var(--muted);
            font-size: 0.9rem;
            line-height: 1.6;
            margin: 0;
        }
.faq-item p a {
            color: var(--accent);
            text-decoration: none;
        }
.faq-item p a:hover {
            color: var(--primary);
        }
.note-box {
            background: rgba(245,197,24,0.08);
            border: 1px solid rgba(245,197,24,0.3);
            border-radius: 10px;
            padding: 20px 25px;
            margin-top: 30px;
        }
.note-box p {
            color: var(--muted);
            font-size: 0.9rem;
            line-height: 1.6;
            margin: 0;
        }
.note-box i {
            color: var(--accent);
            margin-right: 8px;
        }
.contact-hero {
                padding: 60px 0 30px;
            }
.contact-hero h1 {
                font-size: 1.8rem;
            }
.contact-form-wrap {
                padding: 25px;
            }
.contact-grid {
                grid-template-columns: 1fr;
            }

/* --- Bootstrap 组件配色适配(程序自动补,避免白底黑字) --- */
.accordion-header { background:transparent !important; }
