:root{
  --main:#f97316;
  --accent:#facc15;
  --bg:#1a1410;
  --text:#fff7ed;
  --card:#241a13;
  --card2:#2e2117;
  --muted:#c9b6a4;
  --radius-lg:24px;
  --radius-md:18px;
  --radius-sm:12px;
  --shadow-soft:0 18px 40px -18px rgba(0,0,0,.75), 0 6px 18px -8px rgba(249,115,22,.22);
}
*{box-sizing:border-box}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
  overflow-x:hidden;
}
h1,h2,h3,h4,.hw-font{
  font-family:'Inter','PingFang SC',sans-serif;
  font-weight:900;
  letter-spacing:-.02em;
}
a{text-decoration:none;color:inherit}
::selection{background:var(--main);color:#1a1410}

/* 进度条 */
#progressBar{
  position:fixed;top:0;left:0;height:4px;width:0%;
  background:linear-gradient(90deg,var(--main),var(--accent));
  z-index:2000;transition:width .1s linear;
  box-shadow:0 0 12px rgba(249,115,22,.7);
}

/* 导航 */
.nav-wrap{
  position:fixed;top:0;left:0;right:0;z-index:1500;
  transition:background .35s ease, backdrop-filter .35s ease, box-shadow .35s ease, padding .35s ease;
  padding:18px 0;
  background:transparent;
}
.nav-wrap.scrolled{
  background:rgba(26,20,16,.82);
  backdrop-filter:blur(16px);
  box-shadow:0 10px 30px -18px rgba(0,0,0,.9);
  padding:10px 0;
  border-bottom:1px solid rgba(249,115,22,.16);
}
.brand-logo{
  font-size:1.6rem;font-weight:900;color:var(--text)!important;
  display:flex;align-items:center;gap:.5rem;
}
.brand-logo .fa-film{color:var(--main);font-size:1.4rem}
.nav-link{
  color:var(--muted)!important;font-weight:600;font-size:.95rem;
  padding:.5rem .95rem!important;border-radius:999px;transition:.25s;
}
.nav-link:hover{color:var(--text)!important;background:rgba(249,115,22,.15)}
.navbar-toggler{border:none;color:var(--text);font-size:1.4rem;box-shadow:none!important}
.navbar-toggler:focus{box-shadow:none}

/* 按钮 */
.btn-glow{
  background:linear-gradient(120deg,var(--main),var(--accent),var(--main));
  background-size:220% 100%;
  color:#1a1410;font-weight:800;border:none;border-radius:999px;
  padding:.7rem 1.9rem;position:relative;overflow:hidden;
  transition:background-position .6s ease, transform .25s ease, box-shadow .3s;
  box-shadow:0 12px 26px -12px rgba(249,115,22,.85);
}
.btn-glow:hover{background-position:100% 0;transform:translateY(-2px);color:#1a1410}
.btn-glow::after{
  content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.7),transparent);
  transform:skewX(-20deg);transition:left .6s ease;
}
.btn-glow:hover::after{left:130%}
.btn-ghost{
  border:1.5px solid rgba(255,247,237,.28);color:var(--text);
  border-radius:999px;padding:.7rem 1.9rem;font-weight:700;
  background:rgba(255,247,237,.05);transition:.3s;
}
.btn-ghost:hover{background:rgba(249,115,22,.16);border-color:var(--main);color:var(--text);transform:translateY(-2px)}

/* HERO */
.hero{
  position:relative;min-height:100vh;display:flex;align-items:center;
  padding:140px 0 80px;
  background:
    radial-gradient(ellipse at 20% 10%, rgba(249,115,22,.28), transparent 55%),
    radial-gradient(ellipse at 85% 80%, rgba(250,204,21,.16), transparent 50%),
    linear-gradient(160deg,#1a1410 0%,#241a13 55%,#1a1410 100%);
  overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,247,237,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,247,237,.035) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse at center,#000 20%,transparent 78%);
  pointer-events:none;
}
.hero-title{
  font-size:clamp(2.4rem,5.6vw,4.6rem);line-height:1.05;margin-bottom:1.2rem;
}
.hero-title .hl{
  background:linear-gradient(100deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-sub{color:var(--muted);font-size:1.12rem;max-width:560px;line-height:1.8}
.hero-stats{display:flex;gap:2.4rem;margin-top:2.6rem;flex-wrap:wrap}
.hero-stat b{
  display:block;font-size:2.4rem;font-weight:900;
  background:linear-gradient(100deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;color:transparent;line-height:1;
}
.hero-stat span{color:var(--muted);font-size:.9rem;letter-spacing:.06em}
.hero-cards{
  position:relative;height:520px;display:none;
}
@media(min-width:992px){.hero-cards{display:block}}
.hero-float{
  position:absolute;border-radius:var(--radius-md);overflow:hidden;
  box-shadow:var(--shadow-soft);border:2px solid rgba(255,247,237,.08);
  transition:transform .5s ease;
}
.hero-float img{width:100%;height:100%;object-fit:cover;display:block}
.hero-float:hover{transform:scale(1.05) rotate(0deg)!important;z-index:9}
.hf1{width:190px;height:280px;left:8%;top:6%;transform:rotate(-7deg)}
.hf2{width:170px;height:250px;right:6%;top:0;transform:rotate(6deg)}
.hf3{width:180px;height:265px;left:30%;top:32%;transform:rotate(-2deg);z-index:3}
.hf4{width:160px;height:235px;right:14%;top:48%;transform:rotate(8deg)}
.hf5{width:150px;height:220px;left:0;top:56%;transform:rotate(4deg)}

/* 通用区块 */
.section{padding:90px 0}
.section-head{margin-bottom:44px}
.eyebrow{
  display:inline-flex;align-items:center;gap:.45rem;
  background:rgba(249,115,22,.14);color:var(--main);
  font-weight:800;font-size:.78rem;letter-spacing:.12em;
  padding:.4rem 1rem;border-radius:999px;text-transform:uppercase;
  margin-bottom:1rem;
}
.sec-title{font-size:clamp(1.8rem,3.4vw,2.8rem);margin-bottom:.6rem}
.sec-desc{color:var(--muted);max-width:620px;line-height:1.8}

/* 分类胶囊 */
.chip-row{display:flex;gap:.6rem;flex-wrap:wrap}
.chip{
  background:var(--card);border:1px solid rgba(255,247,237,.08);
  color:var(--muted);border-radius:999px;padding:.42rem 1.15rem;
  font-weight:700;font-size:.86rem;transition:.28s;cursor:pointer;
}
.chip:hover,.chip.active{
  background:linear-gradient(100deg,var(--main),var(--accent));
  color:#1a1410;border-color:transparent;transform:translateY(-2px);
  box-shadow:0 10px 20px -12px rgba(249,115,22,.9);
}

/* 胶囊标签 */
.tag-pill{
  display:inline-block;background:rgba(250,204,21,.13);color:var(--accent);
  font-size:.72rem;font-weight:700;padding:.2rem .65rem;border-radius:999px;
}

/* 海报卡片（翻转） */
.poster-cell{perspective:1200px}
.poster-card{
  position:relative;width:100%;aspect-ratio:2/3;
  transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,.2,.2,1);
  cursor:pointer;
}
.poster-card.flipped{transform:rotateY(180deg)}
.poster-face{
  position:absolute;inset:0;border-radius:var(--radius-md);
  overflow:hidden;backface-visibility:hidden;
  background:var(--card);border:1px solid rgba(255,247,237,.08);
  box-shadow:0 14px 30px -18px rgba(0,0,0,.9);
}
.poster-front img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}
.poster-cell:hover .poster-front img{transform:scale(1.07)}
.poster-front::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(15,10,7,.94) 0%,rgba(15,10,7,.35) 42%,transparent 68%);
}
.poster-meta{
  position:absolute;left:0;right:0;bottom:0;padding:.85rem .9rem;z-index:2;
}
.poster-meta h4{
  font-size:1rem;margin:0 0 .3rem;font-weight:800;line-height:1.25;
  color:var(--text);
}
.poster-meta .line{display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--muted);flex-wrap:wrap}
.score-badge{
  position:absolute;top:.6rem;right:.6rem;z-index:3;
  background:rgba(26,20,16,.82);border:1px solid rgba(250,204,21,.45);
  color:var(--accent);font-weight:900;font-size:.8rem;
  padding:.18rem .55rem;border-radius:9px;backdrop-filter:blur(6px);
}
.poster-back{
  transform:rotateY(180deg);
  background:linear-gradient(160deg,var(--card2),#1d140e);
  padding:1.05rem;display:flex;flex-direction:column;
  border:1px solid rgba(249,115,22,.25);
  overflow-y:auto;
}
.poster-back::-webkit-scrollbar{width:4px}
.poster-back::-webkit-scrollbar-thumb{background:var(--main);border-radius:4px}
.poster-back h5{font-size:.95rem;color:var(--accent);font-weight:800;margin-bottom:.5rem}
.pb-row{font-size:.72rem;color:var(--muted);line-height:1.55;margin-bottom:.22rem}
.pb-row b{color:var(--text);font-weight:700}
.pb-plot{font-size:.72rem;color:#e5d6c6;line-height:1.62;margin-top:.45rem}
.close-flip{
  position:absolute;top:.45rem;right:.5rem;width:26px;height:26px;
  border:none;border-radius:50%;background:rgba(249,115,22,.9);color:#1a1410;
  font-weight:900;line-height:1;font-size:.9rem;cursor:pointer;z-index:5;
}
.close-flip:hover{background:var(--accent)}

/* 榜单 */
.rank-list{display:flex;flex-direction:column;gap:.7rem}
.rank-item{
  display:flex;align-items:center;gap:1rem;
  background:var(--card);border:1px solid rgba(255,247,237,.06);
  border-radius:var(--radius-md);padding:.75rem 1rem;
  transition:.3s;cursor:pointer;
}
.rank-item:hover{
  background:var(--card2);transform:translateX(6px);
  border-color:rgba(249,115,22,.35);
  box-shadow:var(--shadow-soft);
}
.rank-no{
  flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;
  font-weight:900;font-size:1.05rem;background:rgba(255,247,237,.06);color:var(--muted);
}
.rank-no.gold{background:linear-gradient(140deg,#facc15,#f97316);color:#1a1410}
.rank-no.silver{background:linear-gradient(140deg,#e2e8f0,#94a3b8);color:#1a1410}
.rank-no.bronze{background:linear-gradient(140deg,#d97706,#a16207);color:#fff7ed}
.rank-thumb{flex:0 0 46px;height:64px;border-radius:10px;overflow:hidden;background:#2b1f16}
.rank-thumb img{width:100%;height:100%;object-fit:cover}
.rank-info{flex:1;min-width:0}
.rank-info h5{font-size:.92rem;margin:0 0 .18rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-info p{font-size:.75rem;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-score{
  font-weight:900;font-size:1.15rem;color:var(--accent);flex:0 0 auto;
}

/* 分类大卡 */
.cat-card{
  background:linear-gradient(160deg,var(--card),var(--card2));
  border-radius:var(--radius-lg);padding:1.8rem;
  border:1px solid rgba(255,247,237,.07);
  box-shadow:var(--shadow-soft);height:100%;
  position:relative;overflow:hidden;transition:.35s;
}
.cat-card:hover{transform:translateY(-6px);border-color:rgba(249,115,22,.4)}
.cat-card::before{
  content:"";position:absolute;top:-40%;right:-20%;width:200px;height:200px;
  border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.22),transparent 70%);
}
.cat-icon{
  width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(140deg,var(--main),var(--accent));color:#1a1410;
  font-size:1.25rem;margin-bottom:1rem;
}
.cat-card h3{font-size:1.25rem;margin-bottom:.5rem}
.cat-card p{color:var(--muted);font-size:.88rem;line-height:1.7;margin-bottom:1rem}
.cat-count{font-size:2rem;font-weight:900;color:var(--main);line-height:1}
.cat-count small{font-size:.72rem;color:var(--muted);font-weight:600;letter-spacing:.1em;display:block;margin-top:.2rem}

/* 横滑海报行 */
.row-scroll{
  display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;scroll-snap-type:x mandatory;
}
.row-scroll::-webkit-scrollbar{height:6px}
.row-scroll::-webkit-scrollbar-thumb{background:rgba(249,115,22,.5);border-radius:6px}
.row-scroll .scroll-item{flex:0 0 158px;scroll-snap-align:start}
@media(max-width:576px){.row-scroll .scroll-item{flex:0 0 138px}}

/* 即将上线 */
.soon-card{
  background:var(--card);border-radius:var(--radius-md);padding:1.2rem;
  border:1px solid rgba(255,247,237,.07);display:flex;gap:1rem;align-items:center;
  transition:.3s;height:100%;
}
.soon-card:hover{background:var(--card2);border-color:rgba(250,204,21,.35);transform:translateY(-4px)}
.soon-date{
  flex:0 0 58px;text-align:center;border-radius:14px;padding:.45rem 0;
  background:linear-gradient(150deg,rgba(249,115,22,.2),rgba(250,204,21,.12));
  border:1px solid rgba(249,115,22,.3);
}
.soon-date b{display:block;font-size:1.25rem;font-weight:900;color:var(--main);line-height:1}
.soon-date span{font-size:.68rem;color:var(--muted);letter-spacing:.08em}
.soon-card h5{font-size:.98rem;margin:0 0 .25rem;font-weight:800}
.soon-card p{font-size:.76rem;color:var(--muted);margin:0;line-height:1.5}

/* 步骤条 */
.step-wrap{position:relative;padding-left:2.6rem}
.step-wrap::before{
  content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;
  background:linear-gradient(to bottom,var(--main),var(--accent),transparent);
  opacity:.45;
}
.step-item{position:relative;margin-bottom:2rem}
.step-item:last-child{margin-bottom:0}
.step-dot{
  position:absolute;left:-2.6rem;top:0;width:32px;height:32px;border-radius:50%;
  background:linear-gradient(140deg,var(--main),var(--accent));color:#1a1410;
  display:grid;place-items:center;font-weight:900;font-size:.85rem;
  box-shadow:0 0 0 5px rgba(249,115,22,.12);
}
.step-item h4{font-size:1.02rem;margin-bottom:.4rem;font-weight:800}
.step-item p{color:var(--muted);font-size:.9rem;line-height:1.78;margin:0}

/* 指南 */
.guide-box{
  background:linear-gradient(155deg,var(--card),#20160f);
  border-radius:var(--radius-lg);padding:2.4rem;
  border:1px solid rgba(255,247,237,.07);box-shadow:var(--shadow-soft);
}
.guide-box p{color:#e6d8c9;line-height:1.95;font-size:.96rem;margin-bottom:1rem}
.guide-box p:last-child{margin-bottom:0}
.guide-box strong{color:var(--accent);font-weight:800}

/* 相关推荐 */
.rec-card{
  display:block;background:var(--card);border-radius:var(--radius-md);
  padding:1.5rem;border:1px solid rgba(255,247,237,.07);
  transition:.3s;height:100%;
}
.rec-card:hover{transform:translateY(-5px);border-color:rgba(249,115,22,.4);background:var(--card2)}
.rec-card i{color:var(--main);font-size:1.4rem;margin-bottom:.8rem;display:block}
.rec-card h4{font-size:1.05rem;margin-bottom:.4rem}
.rec-card p{color:var(--muted);font-size:.85rem;line-height:1.7;margin:0}

/* 友链 */
.friend-links{
  background:var(--card);border-radius:var(--radius-lg);padding:2rem;
  border:1px dashed rgba(249,115,22,.3);
}
.friend-links h4{font-size:1.05rem;margin-bottom:1rem;color:var(--accent)}
.friend-links-text{color:var(--muted);font-size:.9rem;line-height:2;word-break:break-all}

/* 页脚 */
footer{
  background:#150f0b;padding:60px 0 28px;border-top:1px solid rgba(249,115,22,.14);
}
.foot-brand{font-size:1.4rem;font-weight:900;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}
.foot-brand i{color:var(--main)}
footer p,footer a{color:var(--muted);font-size:.87rem;line-height:1.9}
footer a:hover{color:var(--main)}
.foot-title{color:var(--text);font-weight:800;font-size:.95rem;margin-bottom:1rem}
.foot-divider{border-top:1px solid rgba(255,247,237,.08);margin:2.2rem 0 1.3rem}

.modal-backdrop-overlay{display:none}
@media(max-width:768px){
  .section{padding:64px 0}
  .guide-box{padding:1.6rem}
  .hero{padding-top:120px}
}

/* --- 子页面追加 --- */
/* 本页专属少量样式，复用站点变量 */
.guide-hero {
  position:relative;overflow:hidden;border-radius:var(--radius-lg);
  background:radial-gradient(1200px 400px at 12% -10%,rgba(249,115,22,.30),transparent 60%),
             radial-gradient(800px 360px at 92% 0%,rgba(250,204,21,.18),transparent 60%),
             linear-gradient(160deg,var(--card2),var(--card));
  border:1px solid rgba(249,115,22,.22);
  box-shadow:var(--shadow-soft);
  padding:clamp(28px,5vw,56px);
}
.guide-hero::after {
  content:"";position:absolute;right:-80px;bottom:-120px;width:320px;height:320px;
  background:radial-gradient(circle,rgba(249,115,22,.28),transparent 65%);pointer-events:none;
}
.guide-step {
  background:var(--card);border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius-md);padding:26px 24px;height:100%;
  box-shadow:var(--shadow-soft);transition:.28s ease;position:relative;overflow:hidden;
}
.guide-step:hover {transform:translateY(-6px);border-color:rgba(249,115,22,.45);}
.guide-step .step-no {
  font-family:'Inter',sans-serif;font-weight:900;font-size:34px;line-height:1;
  background:linear-gradient(120deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:block;margin-bottom:12px;
}
.guide-step h3 {font-size:19px;font-weight:800;color:var(--text);margin:0 0 10px;}
.guide-step p {color:var(--muted);font-size:14.5px;line-height:1.85;margin:0;}
.guide-card {
  background:var(--card);border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius-md);padding:26px;height:100%;
  box-shadow:var(--shadow-soft);
}
.guide-card h3 {font-size:18px;font-weight:800;color:var(--text);margin:0 0 14px;display:flex;align-items:center;gap:10px;}
.guide-card h3 i {color:var(--main);font-size:16px;}
.guide-card ul {margin:0;padding-left:18px;}
.guide-card li {color:var(--muted);font-size:14.5px;line-height:1.95;margin-bottom:8px;}
.guide-card li strong {color:var(--accent);font-weight:700;}
.qa-item {
  background:var(--card2);border-left:3px solid var(--main);
  border-radius:var(--radius-sm);padding:18px 20px;margin-bottom:14px;
}
.qa-item .q {color:var(--text);font-weight:700;font-size:15.5px;margin:0 0 8px;display:flex;gap:9px;align-items:flex-start;}
.qa-item .q i {color:var(--main);margin-top:4px;font-size:13px;}
.qa-item .a {color:var(--muted);font-size:14.5px;line-height:1.9;margin:0;padding-left:22px;}
.guide-note {
  border-radius:var(--radius-md);padding:22px 24px;
  background:linear-gradient(120deg,rgba(249,115,22,.12),rgba(250,204,21,.06));
  border:1px dashed rgba(249,115,22,.4);color:var(--muted);
  font-size:14.5px;line-height:1.9;
}
.guide-note strong {color:var(--accent);}
.guide-tip {
  display:flex;gap:14px;align-items:flex-start;
  background:var(--card);border:1px solid rgba(255,255,255,.06);
  border-radius:var(--radius-sm);padding:16px 18px;margin-bottom:12px;
}
.guide-tip .ico {
  flex:0 0 40px;width:40px;height:40px;border-radius:12px;
  display:grid;place-items:center;
  background:linear-gradient(140deg,rgba(249,115,22,.9),rgba(250,204,21,.7));
  color:#1a1410;font-size:16px;
}
.guide-tip .txt b {display:block;color:var(--text);font-size:15px;margin-bottom:4px;}
.guide-tip .txt span {color:var(--muted);font-size:14px;line-height:1.8;}

/* --- 子页面追加 --- */
/* ===== 本页专属：榜单样式（不用 Bootstrap 组件类） ===== */
  .rank-tabs {
    display:flex;flex-wrap:wrap;gap:.55rem;
    margin-top:1.4rem;
  }
.rank-tabs a {
    padding:.5rem 1.05rem;
    border-radius:999px;
    background:var(--card);
    border:1px solid rgba(249,115,22,.28);
    color:var(--muted);
    font-size:.9rem;
    font-weight:600;
    transition:.22s ease;
  }
.rank-tabs a:hover {
    color:var(--text);
    border-color:var(--main);
    transform:translateY(-2px);
  }
.rank-tabs a.active {
    background:linear-gradient(135deg,var(--main),#fb923c);
    color:#1a1410;
    border-color:transparent;
    box-shadow:var(--shadow-soft);
  }
.rank-block {margin-top:3.2rem;}
.rank-block-head {
    display:flex;align-items:flex-end;justify-content:space-between;
    gap:1rem;flex-wrap:wrap;
    margin-bottom:1.15rem;
  }
.rank-block-head h2 {
    font-size:1.35rem;font-weight:800;margin:0;
    display:flex;align-items:center;gap:.6rem;
    letter-spacing:.2px;
  }
.rank-block-head h2 i {color:var(--main);font-size:1.05rem;}
.rank-block-head .rb-note {
    color:var(--muted);font-size:.82rem;
    display:flex;align-items:center;gap:.4rem;
  }
.rb-note .dot {
    width:7px;height:7px;border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 0 4px rgba(250,204,21,.16);
  }
.rank-item::before {
    content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
    background:linear-gradient(180deg,var(--main),transparent);
    opacity:0;transition:.25s ease;
  }
.rank-item:hover::before {opacity:1;}
.rank-item.top1 .rank-no {color:var(--accent);}
.rank-item.top2 .rank-no {color:#e2e8f0;}
.rank-item.top3 .rank-no {color:#f0a868;}
.rank-info h3 {
    font-size:.98rem;font-weight:700;margin:0 0 .3rem;
    color:var(--text);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
.rank-meta {
    display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;
    font-size:.76rem;color:var(--muted);
  }
.rank-meta .tag-pill {
    font-size:.7rem;
    padding:.12rem .55rem;
    border-radius:999px;
    background:rgba(249,115,22,.14);
    color:var(--main);
    font-weight:600;
  }
.rank-score strong {
    display:block;
    font-size:1.05rem;font-weight:800;
    color:var(--accent);
    line-height:1.1;
  }
.rank-score span {
    font-size:.68rem;color:var(--muted);
    letter-spacing:.4px;
  }
.heat-bar {
    margin-top:.45rem;
    height:4px;border-radius:4px;
    background:rgba(255,255,255,.07);
    overflow:hidden;
  }
.heat-bar i {
    display:block;height:100%;border-radius:4px;
    background:linear-gradient(90deg,var(--main),var(--accent));
  }
.rank-score strong {font-size:.95rem;}
/* 说明卡片 */
  .rule-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1rem;
    margin-top:1.6rem;
  }
.rule-card {
    background:var(--card);
    border:1px solid rgba(255,255,255,.06);
    border-radius:var(--radius-md);
    padding:1.4rem 1.3rem;
    transition:.25s ease;
  }
.rule-card:hover {
    border-color:rgba(249,115,22,.35);
    background:var(--card2);
    transform:translateY(-3px);
  }
.rule-card i {
    font-size:1.15rem;color:var(--main);
    margin-bottom:.75rem;display:block;
  }
.rule-card h3 {
    font-size:1rem;font-weight:700;margin:0 0 .5rem;
  }
.rule-card p {
    font-size:.85rem;line-height:1.75;color:var(--muted);margin:0;
  }
.rule-grid {grid-template-columns:1fr 1fr;}
.rule-grid {grid-template-columns:1fr;}
/* 页脚 */
  .site-footer {
    margin-top:4.5rem;
    background:var(--card);
    border-top:1px solid rgba(255,255,255,.06);
    padding:3rem 0 2rem;
  }
.footer-brand {
    font-weight:800;font-size:1.15rem;
    color:var(--text);
    display:inline-flex;align-items:center;gap:.55rem;
    margin-bottom:.7rem;
  }
.footer-brand i {color:var(--main);}
.footer-desc {color:var(--muted);font-size:.86rem;line-height:1.8;margin:0 0 1rem;}
.footer-links {
    display:flex;flex-wrap:wrap;gap:1.1rem;
    margin-bottom:1.2rem;
  }
.footer-links a {
    color:var(--muted);font-size:.86rem;transition:.2s;
  }
.footer-links a:hover {color:var(--main);}
.footer-copy {
    border-top:1px solid rgba(255,255,255,.06);
    padding-top:1.2rem;
    color:var(--muted);font-size:.78rem;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;
  }

/* --- 子页面追加 --- */
.brand-logo i {color:var(--main);margin-right:8px;}
.nav-link:hover,.nav-link.active {color:var(--accent)!important;}
.navbar-toggler i {color:var(--main);}
/* About page custom blocks */
    .about-hero {
      position:relative;
      padding:90px 0 60px;
      overflow:hidden;
    }
.about-hero::before {
      content:"";
      position:absolute;
      top:-160px;right:-120px;
      width:460px;height:460px;
      background:radial-gradient(circle,rgba(249,115,22,.28),transparent 65%);
      filter:blur(20px);
      z-index:0;
    }
.about-hero::after {
      content:"";
      position:absolute;
      bottom:-180px;left:-140px;
      width:420px;height:420px;
      background:radial-gradient(circle,rgba(250,204,21,.16),transparent 65%);
      filter:blur(24px);
      z-index:0;
    }
.about-hero .container {position:relative;z-index:2;}
.hero-title .grad {
      background:linear-gradient(120deg,var(--main),var(--accent));
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }
.stat-box {
      background:var(--card);
      border:1px solid rgba(249,115,22,.16);
      border-radius:var(--radius-md);
      padding:16px 22px;
      min-width:130px;
      box-shadow:var(--shadow-soft);
    }
.stat-box b {
      display:block;
      font-size:1.6rem;
      font-weight:800;
      color:var(--accent);
      line-height:1.1;
    }
.stat-box span {color:var(--muted);font-size:.82rem;}
.info-card {
      background:var(--card);
      border:1px solid rgba(249,115,22,.14);
      border-radius:var(--radius-lg);
      padding:28px 26px;
      height:100%;
      box-shadow:var(--shadow-soft);
      transition:.3s;
    }
.info-card:hover {
      transform:translateY(-4px);
      border-color:rgba(249,115,22,.4);
    }
.info-card .ic {
      width:52px;height:52px;
      border-radius:16px;
      display:flex;align-items:center;justify-content:center;
      background:linear-gradient(135deg,rgba(249,115,22,.22),rgba(250,204,21,.14));
      color:var(--main);
      font-size:1.3rem;
      margin-bottom:18px;
    }
.info-card h3 {
      font-size:1.1rem;
      font-weight:700;
      margin-bottom:10px;
      color:var(--text);
    }
.info-card p {color:var(--muted);font-size:.92rem;line-height:1.8;margin:0;}
.timeline {
      position:relative;
      padding-left:34px;
      border-left:2px dashed rgba(249,115,22,.3);
    }
.tl-item {position:relative;padding-bottom:30px;}
.tl-item:last-child {padding-bottom:0;}
.tl-item::before {
      content:"";
      position:absolute;
      left:-41px;top:4px;
      width:14px;height:14px;
      border-radius:50%;
      background:var(--main);
      box-shadow:0 0 0 4px rgba(249,115,22,.18);
    }
.tl-item h4 {
      font-size:1.02rem;
      font-weight:700;
      color:var(--accent);
      margin-bottom:6px;
    }
.tl-item p {color:var(--muted);font-size:.92rem;line-height:1.8;margin:0;}
.quote-box {
      background:linear-gradient(135deg,var(--card2),var(--card));
      border:1px solid rgba(249,115,22,.22);
      border-radius:var(--radius-lg);
      padding:34px 30px;
      box-shadow:var(--shadow-soft);
      position:relative;
    }
.quote-box i.quote {
      color:rgba(249,115,22,.35);
      font-size:2rem;
      margin-bottom:14px;
    }
.quote-box p {
      font-size:1.05rem;
      line-height:1.9;
      color:var(--text);
      margin-bottom:0;
    }
.cta-band {
      background:linear-gradient(120deg,rgba(249,115,22,.16),rgba(250,204,21,.08));
      border:1px solid rgba(249,115,22,.28);
      border-radius:var(--radius-lg);
      padding:44px 34px;
      box-shadow:var(--shadow-soft);
    }
.cta-band h2 {font-size:1.5rem;font-weight:800;margin-bottom:10px;}
.cta-band p {color:var(--muted);margin-bottom:0;line-height:1.8;}
footer .brand-logo {font-size:1.15rem;}
footer p {color:var(--muted);font-size:.88rem;line-height:1.8;}
footer .f-link {
      color:var(--muted);
      text-decoration:none;
      font-size:.9rem;
      display:inline-block;
      margin:0 10px 8px 0;
      transition:.2s;
    }
footer .f-link:hover {color:var(--accent);}
footer .f-title {font-weight:700;color:var(--text);margin-bottom:14px;font-size:.95rem;}
.about-hero {padding:60px 0 40px;}

/* --- 子页面追加 --- */
.policy-wrap {max-width:900px;margin:0 auto;}
.policy-card {background:var(--card);border:1px solid rgba(249,115,22,.18);border-radius:var(--radius-md);padding:26px 24px;margin-bottom:22px;box-shadow:var(--shadow-soft);}
.policy-card h2 {font-size:1.25rem;font-weight:800;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:10px;}
.policy-card h2 i {color:var(--main);font-size:1.05rem;}
.policy-card p,.policy-card li {color:var(--muted);font-size:.95rem;line-height:1.85;}
.policy-card ul {padding-left:1.15rem;margin:0;}
.policy-card li {margin-bottom:8px;}
.policy-card strong {color:var(--accent);font-weight:600;}
.policy-card a {color:var(--main);text-decoration:none;border-bottom:1px dashed rgba(249,115,22,.5);}
.policy-card a:hover {color:var(--accent);border-bottom-color:var(--accent);}
.policy-updated {display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted);background:var(--card2);border:1px solid rgba(249,115,22,.2);border-radius:999px;padding:7px 16px;margin-bottom:26px;}
.policy-updated i {color:var(--main);}
.policy-note {background:linear-gradient(135deg,rgba(249,115,22,.12),rgba(250,204,21,.06));border-left:3px solid var(--main);border-radius:var(--radius-sm);padding:16px 18px;color:var(--text);font-size:.92rem;line-height:1.8;}
.policy-toc {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px;}
.policy-toc a {font-size:.84rem;color:var(--muted);background:var(--card2);border:1px solid rgba(249,115,22,.18);border-radius:999px;padding:7px 15px;text-decoration:none;transition:.25s;}
.policy-toc a:hover {color:var(--bg);background:var(--main);border-color:var(--main);}
.policy-card {padding:20px 17px;}
.policy-card h2 {font-size:1.1rem;}

/* --- 子页面追加 --- */
/* 本页专属少量样式，其余复用站点样式表 */
  .contact-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;}
.contact-card {
    background:var(--card);
    border:1px solid rgba(249,115,22,.18);
    border-radius:var(--radius-md);
    padding:26px 24px;
    height:100%;
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
  }
.contact-card:hover {transform:translateY(-4px);border-color:rgba(249,115,22,.5);box-shadow:var(--shadow-soft);}
.contact-card .cc-icon {
    width:52px;height:52px;display:flex;align-items:center;justify-content:center;
    border-radius:var(--radius-sm);
    background:linear-gradient(135deg,rgba(249,115,22,.22),rgba(250,204,21,.12));
    color:var(--main);font-size:1.35rem;margin-bottom:16px;
  }
.contact-card h3 {font-size:1.08rem;font-weight:700;color:var(--text);margin-bottom:10px;}
.contact-card p {color:var(--muted);font-size:.92rem;line-height:1.75;margin-bottom:12px;}
.contact-card .cc-mail {
    display:inline-block;color:var(--accent);font-weight:600;font-size:.92rem;
    word-break:break-all;border-bottom:1px dashed rgba(250,204,21,.4);
  }
.contact-card .cc-mail:hover {color:var(--main);border-bottom-color:var(--main);}
.mail-form {
    background:var(--card2);
    border:1px solid rgba(249,115,22,.16);
    border-radius:var(--radius-lg);
    padding:34px 30px;
    box-shadow:var(--shadow-soft);
  }
.mail-form .mf-label {display:block;font-size:.86rem;font-weight:600;color:var(--muted);margin-bottom:8px;letter-spacing:.02em;}
.mail-form .mf-input,
  .mail-form .mf-select,
  .mail-form .mf-textarea {
    width:100%;
    background:rgba(26,20,16,.85);
    border:1px solid rgba(201,182,164,.22);
    border-radius:var(--radius-sm);
    color:var(--text);
    font-family:inherit;
    font-size:.94rem;
    padding:12px 14px;
    outline:none;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
.mail-form .mf-input:focus,
  .mail-form .mf-select:focus,
  .mail-form .mf-textarea:focus {
    border-color:var(--main);
    box-shadow:0 0 0 3px rgba(249,115,22,.18);
  }
.mail-form .mf-input::placeholder,
  .mail-form .mf-textarea::placeholder {color:rgba(201,182,164,.55);}
.mail-form .mf-select option {background:var(--card);color:var(--text);}
.mail-form .mf-textarea {resize:vertical;min-height:130px;}
.mf-hint {font-size:.8rem;color:var(--muted);opacity:.8;margin-top:8px;}
.faq-item {
    background:var(--card);
    border:1px solid rgba(249,115,22,.14);
    border-radius:var(--radius-md);
    padding:20px 22px;
    margin-bottom:14px;
  }
.faq-item h4 {font-size:.98rem;font-weight:700;color:var(--accent);margin-bottom:8px;display:flex;gap:10px;align-items:baseline;}
.faq-item h4 i {color:var(--main);font-size:.85rem;}
.faq-item p {color:var(--muted);font-size:.9rem;line-height:1.8;margin:0;}
.reply-note {
    display:flex;gap:14px;align-items:flex-start;
    background:linear-gradient(135deg,rgba(249,115,22,.12),rgba(250,204,21,.06));
    border-left:3px solid var(--main);
    border-radius:var(--radius-sm);
    padding:18px 20px;
  }
.reply-note i {color:var(--main);font-size:1.2rem;margin-top:2px;}
.reply-note p {color:var(--muted);font-size:.9rem;line-height:1.8;margin:0;}
.reply-note strong {color:var(--text);}