:root{
  --main:#f97316;
  --accent:#facc15;
  --bg:#1a1410;
  --text:#fff7ed;
  --panel:#241b14;
  --panel-2:#2f2318;
  --line:rgba(250,204,21,0.18);
  --shadow:0 18px 40px rgba(0,0,0,0.6);
  --shadow-sm:0 8px 20px rgba(0,0,0,0.45);
  --radius:18px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;
  line-height:1.85;
  overflow-x:hidden;
  margin:0;
}
h1,h2,h3,h4,.brand-font{
  font-family:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
  font-weight:800;
  letter-spacing:.5px;
}
a{text-decoration:none;color:inherit;}
a:hover{color:var(--accent);}

/* ===== 顶部导航 ===== */
.navbar-top{
  background:linear-gradient(180deg,rgba(26,20,16,.98),rgba(26,20,16,.86));
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  box-shadow:0 6px 24px rgba(0,0,0,.55);
  position:sticky;top:0;z-index:1000;
}
.navbar-brand{
  font-weight:900;font-size:1.35rem;color:var(--text)!important;
  display:flex;align-items:center;gap:.5rem;
}
.navbar-brand .logo-badge{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(145deg,var(--main),#c2410c);
  display:flex;align-items:center;justify-content:center;
  color:#1a1410;font-size:1.1rem;
  box-shadow:0 6px 16px rgba(249,115,22,.5),inset 0 2px 4px rgba(255,255,255,.35);
}
.navbar-top .nav-link{
  color:rgba(255,247,237,.82)!important;
  font-weight:600;font-size:.95rem;
  padding:.5rem .85rem!important;border-radius:10px;
  transition:all .25s ease;
}
.navbar-top .nav-link:hover{color:var(--accent)!important;background:rgba(249,115,22,.12);}
.navbar-toggler{border-color:rgba(250,204,21,.4);}
.navbar-toggler-icon{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%23facc15' stroke-width='2.5' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

/* ===== Hero ===== */
.hero{
  position:relative;
  min-height:88vh;
  display:flex;align-items:center;
  background:
    radial-gradient(circle at 78% 22%,rgba(249,115,22,.36),transparent 55%),
    radial-gradient(circle at 18% 82%,rgba(250,204,21,.18),transparent 50%),
    linear-gradient(160deg,#241a12 0%,#1a1410 60%,#120d0a 100%);
  overflow:hidden;
  border-bottom:1px solid var(--line);
}
.hero::after{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,247,237,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,247,237,.028) 1px,transparent 1px);
  background-size:64px 64px;
  pointer-events:none;
}
.hero-inner{position:relative;z-index:2;padding:5rem 0 4rem;}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(249,115,22,.16);
  border:1px solid rgba(249,115,22,.5);
  color:var(--accent);
  padding:.42rem 1.1rem;border-radius:999px;
  font-size:.82rem;font-weight:700;letter-spacing:1.5px;
  box-shadow:0 6px 18px rgba(0,0,0,.4);
}
.hero h1{
  font-size:clamp(2.1rem,5.2vw,3.9rem);
  line-height:1.28;margin:1.5rem 0 1.2rem;
  text-shadow:0 8px 30px rgba(0,0,0,.7);
}
.hero h1 .hl{
  background:linear-gradient(120deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero p.lead{
  font-size:clamp(1rem,1.5vw,1.18rem);
  color:rgba(255,247,237,.78);max-width:660px;margin-bottom:2.2rem;
}
.btn-glow{
  background:linear-gradient(145deg,var(--main),#ea580c);
  color:#fff7ed!important;font-weight:700;
  border:none;border-radius:14px;padding:.85rem 2rem;
  box-shadow:0 12px 28px rgba(249,115,22,.42),inset 0 2px 3px rgba(255,255,255,.28);
  transition:transform .22s ease,box-shadow .22s ease;
}
.btn-glow:hover{transform:translateY(-3px);box-shadow:0 18px 34px rgba(249,115,22,.55);}
.btn-ghost{
  background:rgba(255,247,237,.06);
  border:1px solid rgba(250,204,21,.45);
  color:var(--text)!important;font-weight:700;
  border-radius:14px;padding:.85rem 2rem;
  box-shadow:0 8px 20px rgba(0,0,0,.4);
  transition:all .22s ease;
}
.btn-ghost:hover{background:rgba(250,204,21,.14);transform:translateY(-3px);}
.hero-stats{display:flex;gap:2.4rem;flex-wrap:wrap;margin-top:3rem;}
.hero-stats .stat b{
  display:block;font-size:1.7rem;color:var(--accent);font-weight:900;
  text-shadow:0 4px 14px rgba(250,204,21,.3);
}
.hero-stats .stat span{font-size:.85rem;color:rgba(255,247,237,.62);}

/* ===== 区块通用 ===== */
.section{padding:4.5rem 0;position:relative;}
.section-alt{background:linear-gradient(180deg,#1f1710,#181210);}
.sec-head{margin-bottom:2.4rem;}
.sec-tag{
  display:inline-block;
  background:linear-gradient(145deg,rgba(249,115,22,.2),rgba(250,204,21,.1));
  border:1px solid rgba(249,115,22,.42);
  color:var(--accent);
  font-size:.75rem;font-weight:800;letter-spacing:2px;
  padding:.32rem .95rem;border-radius:999px;margin-bottom:.9rem;
  text-transform:uppercase;
}
.sec-head h2{
  font-size:clamp(1.5rem,3vw,2.15rem);
  margin:0;
  text-shadow:0 6px 20px rgba(0,0,0,.5);
}
.sec-head p{color:rgba(255,247,237,.62);margin:.7rem 0 0;max-width:720px;}

/* ===== 卡片网格 ===== */
.poster-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1.35rem;
  width:100%;
}
@media(max-width:1400px){.poster-grid{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media(max-width:1100px){.poster-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:768px){.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;}}
@media(max-width:520px){.poster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;}}

.poster-card{
  position:relative;
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(250,204,21,.12);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
  display:flex;flex-direction:column;
}
.poster-card:hover{
  transform:translateY(-8px);
  border-color:rgba(249,115,22,.55);
  box-shadow:0 22px 46px rgba(0,0,0,.7),0 0 0 1px rgba(249,115,22,.28);
}
.poster-thumb{
  position:relative;width:100%;aspect-ratio:2/3;overflow:hidden;background:#120d0a;
}
.poster-thumb img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .55s cubic-bezier(.2,.7,.3,1);
}
.poster-card:hover .poster-thumb img{transform:scale(1.1);}
.poster-mask{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(26,20,16,0) 35%,rgba(26,20,16,.92) 100%);
  opacity:0;transition:opacity .35s ease;
  display:flex;align-items:flex-end;padding:.8rem;
}
.poster-card:hover .poster-mask{opacity:1;}
.poster-mask span{
  font-size:.78rem;color:var(--accent);font-weight:700;
  display:flex;align-items:center;gap:.35rem;
}
.poster-body{padding:.7rem .8rem .85rem;}
.poster-body h3{
  font-size:.9rem;margin:0 0 .3rem;font-weight:700;
  line-height:1.45;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:2.6em;
}
.poster-body .meta{
  font-size:.72rem;color:rgba(255,247,237,.5);
  display:flex;justify-content:space-between;align-items:center;gap:.4rem;
}
.score{
  color:var(--accent);font-weight:800;font-size:.78rem;
}
.badge-cat{
  display:inline-block;font-size:.68rem;font-weight:700;
  padding:.12rem .5rem;border-radius:999px;
  background:rgba(249,115,22,.18);
  border:1px solid rgba(249,115,22,.42);
  color:var(--main);
}
.rank-medal{
  position:absolute;top:.6rem;left:.6rem;z-index:3;
  width:32px;height:32px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:.9rem;
  box-shadow:0 6px 16px rgba(0,0,0,.6),inset 0 2px 3px rgba(255,255,255,.35);
}
.medal-gold{background:linear-gradient(145deg,#facc15,#ca8a04);color:#3b2606;}
.medal-silver{background:linear-gradient(145deg,#e5e7eb,#9ca3af);color:#2b2b2b;}
.medal-bronze{background:linear-gradient(145deg,#f59e0b,#92400e);color:#fff7ed;}
.medal-plain{background:linear-gradient(145deg,#3f3020,#241b14);color:var(--accent);border:1px solid rgba(250,204,21,.28);}

/* ===== 轮播 ===== */
.carousel-shell{
  border-radius:24px;overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:linear-gradient(160deg,#2b2016,#1a1410);
}
.carousel-item-inner{
  min-height:420px;
  display:flex;align-items:center;
  padding:3rem 2.6rem;
  background:
    radial-gradient(circle at 82% 30%,rgba(249,115,22,.35),transparent 58%),
    radial-gradient(circle at 12% 85%,rgba(250,204,21,.16),transparent 52%),
    linear-gradient(135deg,#2a1e14,#160f0b);
}
@media(max-width:768px){.carousel-item-inner{min-height:340px;padding:2rem 1.3rem;}}
.carousel-item-inner h3{
  font-size:clamp(1.35rem,3vw,2.1rem);margin-bottom:.8rem;
  text-shadow:0 8px 24px rgba(0,0,0,.65);
}
.carousel-item-inner p{color:rgba(255,247,237,.75);max-width:560px;}
.carousel-indicators [data-bs-target]{
  width:26px;height:5px;border-radius:999px;background:var(--accent);opacity:.45;
}
.carousel-indicators .active{opacity:1;}
.pill-tag{
  display:inline-block;padding:.26rem .8rem;border-radius:999px;
  font-size:.74rem;font-weight:700;
  background:rgba(250,204,21,.14);
  border:1px solid rgba(250,204,21,.42);
  color:var(--accent);margin-right:.4rem;margin-bottom:.5rem;
}

/* ===== 图标列表 ===== */
.feature-list{list-style:none;padding:0;margin:0;display:grid;gap:1.1rem;}
.feature-list li{
  display:flex;gap:1rem;align-items:flex-start;
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(250,204,21,.13);
  border-radius:var(--radius);
  padding:1.15rem 1.3rem;
  box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .3s ease,border-color .3s ease;
}
.feature-list li:hover{transform:translateX(6px);border-color:rgba(249,115,22,.5);}
.feature-ico{
  flex:0 0 48px;width:48px;height:48px;border-radius:14px;
  background:linear-gradient(145deg,var(--main),#c2410c);
  display:flex;align-items:center;justify-content:center;
  color:#fff7ed;font-size:1.15rem;
  box-shadow:0 8px 18px rgba(249,115,22,.4),inset 0 2px 3px rgba(255,255,255,.3);
}
.feature-list h4{font-size:1rem;margin:0 0 .25rem;}
.feature-list p{margin:0;font-size:.88rem;color:rgba(255,247,237,.62);}

/* ===== 手风琴 ===== */
.accordion-item{
  background:linear-gradient(160deg,var(--panel-2),var(--panel))!important;
  border:1px solid rgba(250,204,21,.14)!important;
  border-radius:14px!important;margin-bottom:.9rem;overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.accordion-button{
  background:transparent!important;
  color:var(--text)!important;font-weight:700;font-size:.98rem;
  box-shadow:none!important;
}
.accordion-button:not(.collapsed){color:var(--accent)!important;}
.accordion-button::after{filter:invert(85%) sepia(40%) saturate(600%) hue-rotate(340deg);}
.accordion-body{color:rgba(255,247,237,.7);font-size:.92rem;}

/* ===== 分类胶囊 ===== */
.cat-pills{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:2rem;}
.cat-pill{
  padding:.5rem 1.3rem;border-radius:999px;
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(250,204,21,.2);
  color:rgba(255,247,237,.8);font-size:.86rem;font-weight:600;
  box-shadow:0 6px 14px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);
  transition:all .25s ease;cursor:pointer;
}
.cat-pill:hover,.cat-pill.active{
  background:linear-gradient(145deg,var(--main),#c2410c);
  color:#fff7ed;border-color:transparent;
  box-shadow:0 10px 22px rgba(249,115,22,.45);
  transform:translateY(-2px);
}

/* ===== 榜单 ===== */
.rank-list{display:grid;gap:.85rem;}
.rank-row{
  display:flex;align-items:center;gap:1.1rem;
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(250,204,21,.12);
  border-radius:16px;padding:.85rem 1.1rem;
  box-shadow:var(--shadow-sm);
  transition:transform .28s ease,border-color .28s ease;
}
.rank-row:hover{transform:translateX(6px);border-color:rgba(249,115,22,.5);}
.rank-no{
  flex:0 0 38px;height:38px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:.95rem;
  box-shadow:0 6px 14px rgba(0,0,0,.55),inset 0 2px 3px rgba(255,255,255,.3);
}
.rank-title{flex:1 1 auto;font-weight:700;font-size:.96rem;}
.rank-sub{font-size:.76rem;color:rgba(255,247,237,.5);}
.rank-score{
  font-weight:900;color:var(--accent);font-size:1rem;
  text-shadow:0 3px 12px rgba(250,204,21,.35);
}

/* ===== 页脚 ===== */
.site-footer{
  background:linear-gradient(180deg,#160f0b,#0e0906);
  border-top:1px solid var(--line);
  padding:3.5rem 0 1.6rem;
}
.site-footer h4{font-size:1rem;margin-bottom:1rem;color:var(--accent);}
.site-footer p,.site-footer li{font-size:.88rem;color:rgba(255,247,237,.6);}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.55rem;}
.site-footer a{color:rgba(255,247,237,.72);transition:color .2s ease;}
.site-footer a:hover{color:var(--accent);}
.friend-links{
  background:linear-gradient(160deg,var(--panel-2),var(--panel));
  border:1px solid rgba(250,204,21,.14);
  border-radius:var(--radius);
  padding:1.6rem 1.8rem;
  box-shadow:var(--shadow-sm);
}
.friend-links h4{font-size:.95rem;margin-bottom:.9rem;color:var(--accent);}
.friend-links .links-line{font-size:.86rem;color:rgba(255,247,237,.6);line-height:2.1;}
.foot-bottom{
  border-top:1px solid rgba(250,204,21,.12);
  margin-top:2.4rem;padding-top:1.3rem;
  font-size:.82rem;color:rgba(255,247,237,.45);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;
}

/* ===== 滚动动效 ===== */
.reveal{opacity:0;transform:translateY(38px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1);}
.reveal.in{opacity:1;transform:none;}
.poster-card.reveal{transition-delay:var(--d,0s);}

/* --- 子页面追加 --- */
/* ===== 本页专属少量样式，配色沿用站点变量 ===== */
    .guide-hero {
      background:
        radial-gradient(1100px 420px at 12% -10%, rgba(249,115,22,.22), transparent 62%),
        radial-gradient(900px 380px at 92% 0%, rgba(250,204,21,.14), transparent 60%),
        var(--panel);
      border-bottom: 1px solid var(--line);
    }
.guide-hero h1 {
      font-weight: 800;
      letter-spacing: -.5px;
      line-height: 1.25;
    }
.guide-hero h1 .hl {
      background: linear-gradient(120deg, var(--accent), var(--main));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
.toc-card {
      background: var(--panel-2);
      border: 1px solid var(--line);
      border-radius: var(--radius);
      box-shadow: var(--shadow-sm);
    }
.toc-card a {
      display: block;
      color: var(--text);
      opacity: .82;
      text-decoration: none;
      padding: .42rem .25rem;
      border-left: 2px solid transparent;
      padding-left: .7rem;
      font-size: .95rem;
      transition: .2s;
    }
.toc-card a:hover {
      color: var(--accent);
      opacity: 1;
      border-left-color: var(--accent);
      padding-left: 1rem;
    }
.step-card {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: var(--radius);
      box-shadow: var(--shadow-sm);
      height: 100%;
      padding: 1.5rem 1.4rem;
      transition: .25s;
    }
.step-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow);
      border-color: rgba(249,115,22,.45);
    }
.step-num {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 42px; height: 42px;
      border-radius: 12px;
      background: linear-gradient(135deg, var(--main), var(--accent));
      color: #1a1410;
      font-weight: 800;
      font-size: 1.05rem;
      margin-bottom: .9rem;
    }
.step-card h3 {
      font-size: 1.12rem;
      font-weight: 700;
      margin-bottom: .55rem;
      color: var(--text);
    }
.step-card p {
      color: var(--text);
      opacity: .74;
      font-size: .93rem;
      line-height: 1.75;
      margin: 0;
    }
.tip-box {
      background: var(--panel-2);
      border: 1px solid var(--line);
      border-left: 4px solid var(--main);
      border-radius: 12px;
      padding: 1rem 1.15rem;
      color: var(--text);
      opacity: .9;
      font-size: .93rem;
      line-height: 1.8;
    }
.tip-box .tip-ico {
      color: var(--accent);
      margin-right: .45rem;
    }
.qa-item {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 1.15rem 1.25rem;
      margin-bottom: .9rem;
    }
.qa-item h3 {
      font-size: 1rem;
      font-weight: 700;
      color: var(--accent);
      margin-bottom: .5rem;
      display: flex;
      gap: .5rem;
      align-items: flex-start;
    }
.qa-item p {
      margin: 0;
      color: var(--text);
      opacity: .76;
      font-size: .92rem;
      line-height: 1.8;
    }
.faq-q {
      color: var(--accent);
      font-weight: 700;
      flex: 0 0 auto;
    }
.guide-hero h1 { font-size: 1.6rem; }
.step-card { padding: 1.25rem 1.1rem; }

/* --- 子页面追加 --- */
/* 本页专属少量样式，仅用于关于页排版 */
  .about-hero-visual {
    position: relative;
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
    border: 1px solid var(--line);
    background: var(--panel-2);
  }
.about-hero-visual img { width: 100%; display: block; opacity: .92; }
.about-quote {
    border-left: 3px solid var(--main);
    padding: 10px 0 10px 18px;
    color: var(--text);
    font-size: 1.05rem;
    line-height: 1.9;
    opacity: .92;
  }
.value-card {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 26px 22px;
    height: 100%;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  }
.value-card:hover {
    transform: translateY(-4px);
    border-color: rgba(249,115,22,.5);
    box-shadow: var(--shadow-sm);
  }
.value-icon {
    width: 48px; height: 48px;
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--main), var(--accent));
    color: #1a1410;
    font-size: 1.15rem;
    margin-bottom: 16px;
  }
.value-card h3 {
    font-size: 1.08rem;
    font-weight: 700;
    color: var(--accent);
    margin-bottom: 10px;
  }
.value-card p {
    color: var(--text);
    opacity: .78;
    font-size: .92rem;
    line-height: 1.85;
    margin: 0;
  }
.timeline { position: relative; padding-left: 28px; }
.timeline::before {
    content: "";
    position: absolute; left: 7px; top: 6px; bottom: 6px;
    width: 2px;
    background: linear-gradient(180deg, var(--main), rgba(250,204,21,.15));
  }
.timeline-item { position: relative; padding-bottom: 26px; }
.timeline-item:last-child { padding-bottom: 0; }
.timeline-item::before {
    content: "";
    position: absolute; left: -28px; top: 5px;
    width: 16px; height: 16px;
    border-radius: 50%;
    background: var(--bg);
    border: 3px solid var(--main);
  }
.timeline-item h4 {
    font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 6px;
  }
.timeline-item h4 span { color: var(--accent); font-size: .82rem; font-weight: 600; margin-right: 8px; }
.timeline-item p { color: var(--text); opacity: .72; font-size: .9rem; line-height: 1.8; margin: 0; }
.about-list { list-style: none; padding: 0; margin: 0; }
.about-list li {
    display: flex; gap: 12px; align-items: flex-start;
    padding: 12px 0;
    border-bottom: 1px dashed var(--line);
    color: var(--text); opacity: .85; font-size: .93rem; line-height: 1.8;
  }
.about-list li:last-child { border-bottom: none; }
.about-list i { color: var(--main); margin-top: 5px; }
.stat-mini {
    text-align: center;
    padding: 20px 10px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    height: 100%;
  }
.stat-mini strong {
    display: block; font-size: 1.5rem; font-weight: 800;
    color: var(--accent); letter-spacing: -.5px;
  }
.stat-mini span { color: var(--text); opacity: .68; font-size: .84rem; }

/* --- 子页面追加 --- */
.legal-wrap {max-width:960px;margin:0 auto;}
.legal-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--shadow-sm);
    padding:28px 26px;
    margin-bottom:22px;
  }
.legal-card h2 {
    font-size:1.22rem;
    font-weight:800;
    color:var(--text);
    margin:0 0 14px;
    display:flex;
    align-items:center;
    gap:10px;
  }
.legal-card h2 .ico {
    width:34px;height:34px;flex:0 0 34px;
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:10px;
    background:linear-gradient(135deg,var(--main),var(--accent));
    color:#1a1410;font-size:.9rem;
  }
.legal-card p {color:rgba(255,247,237,.82);line-height:1.9;margin:0 0 12px;font-size:.95rem;}
.legal-card p:last-child {margin-bottom:0;}
.legal-card ul {margin:0 0 12px;padding-left:20px;}
.legal-card li {color:rgba(255,247,237,.82);line-height:1.9;font-size:.95rem;margin-bottom:6px;}
.legal-card li::marker {color:var(--accent);}
.legal-card strong {color:var(--accent);font-weight:700;}
.legal-note {
    background:var(--panel-2);
    border-left:3px solid var(--main);
    border-radius:10px;
    padding:14px 16px;
    font-size:.9rem;
    color:rgba(255,247,237,.85);
    line-height:1.85;
    margin:0 0 12px;
  }
.legal-toc {
    background:var(--panel-2);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:20px 22px;
    margin-bottom:26px;
  }
.legal-toc h3 {font-size:1rem;font-weight:700;color:var(--accent);margin:0 0 12px;letter-spacing:.02em;}
.legal-toc ol {margin:0;padding-left:20px;}
.legal-toc a {color:rgba(255,247,237,.85);text-decoration:none;font-size:.92rem;line-height:2;}
.legal-toc a:hover {color:var(--main);}
.legal-toc li::marker {color:var(--main);font-weight:700;}
.legal-meta {
    font-size:.82rem;color:rgba(255,247,237,.5);
    text-align:center;margin-top:6px;
  }

/* --- 子页面追加 --- */
/* 本页专属少量样式，其余复用站点样式表 */
  .map-hero {
    padding: 130px 0 60px;
    background:
      radial-gradient(900px 420px at 15% -10%, rgba(249,115,22,.22), transparent 60%),
      radial-gradient(700px 380px at 90% 0%, rgba(250,204,21,.14), transparent 62%),
      var(--bg);
    border-bottom: 1px solid var(--line);
  }
.map-hero h1 {
    font-size: clamp(1.9rem, 4vw, 2.9rem);
    font-weight: 800;
    letter-spacing: -.5px;
    margin: 14px 0 12px;
  }
.map-hero p {
    color: rgba(255,247,237,.72);
    max-width: 720px;
    line-height: 1.9;
  }
.map-card {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 26px 24px;
    height: 100%;
    box-shadow: var(--shadow-sm);
    transition: transform .25s ease, border-color .25s ease;
  }
.map-card:hover {
    transform: translateY(-4px);
    border-color: rgba(249,115,22,.5);
  }
.map-card h3 {
    font-size: 1.08rem;
    font-weight: 700;
    color: var(--accent);
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
  }
.map-card h3 i { color: var(--main); }
.map-list { list-style: none; padding: 0; margin: 0; }
.map-list li { border-bottom: 1px dashed var(--line); }
.map-list li:last-child { border-bottom: none; }
.map-list a {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 10px 2px;
    color: var(--text);
    text-decoration: none;
    font-size: .93rem;
    transition: color .2s ease, padding-left .2s ease;
  }
.map-list a:hover { color: var(--main); padding-left: 8px; }
.map-list .path {
    margin-left: auto;
    font-size: .74rem;
    color: rgba(255,247,237,.38);
    font-family: 'Inter', monospace;
    letter-spacing: .3px;
  }
.map-note {
    background: var(--panel-2);
    border: 1px solid var(--line);
    border-left: 4px solid var(--main);
    border-radius: 12px;
    padding: 18px 22px;
    color: rgba(255,247,237,.75);
    font-size: .92rem;
    line-height: 1.9;
  }
.faq-item {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 18px 22px;
    margin-bottom: 14px;
  }
.faq-item strong { color: var(--accent); display: block; margin-bottom: 8px; }
.faq-item p { margin: 0; color: rgba(255,247,237,.72); font-size: .9rem; line-height: 1.85; }
.map-hero { padding: 110px 0 44px; }
.map-list .path { display: none; }

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