:root{
  --main:#10b981;
  --accent:#fbbf24;
  --bg:#0a1410;
  --text:#ecfdf5;
  --card:#10201a;
  --card-2:#132a22;
  --line:rgba(16,185,129,.25);
  --muted:#9fb8ad;
  --shadow:0 10px 30px rgba(0,0,0,.45);
  --radius-card:18px;
  --radius-pill:999px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
  overflow-x:hidden;
}
h1,h2,h3,h4,.hand-title{
  font-family:'Inter','PingFang SC','Microsoft YaHei',sans-serif;
  letter-spacing:.5px;
}
a{text-decoration:none}
::selection{background:var(--main);color:#04120c}

/* 导航 */
.navbar-cine{
  position:fixed;top:0;left:0;right:0;z-index:1030;
  padding:16px 0;
  background:rgba(10,20,16,0);
  border-bottom:1px solid rgba(16,185,129,0);
  transition:background .35s ease,border-color .35s ease,padding .35s ease,box-shadow .35s ease;
}
.navbar-cine.scrolled{
  background:rgba(10,20,16,.92);
  border-bottom:1px solid var(--line);
  box-shadow:0 8px 26px rgba(0,0,0,.45);
  padding:10px 0;
  backdrop-filter:blur(8px);
}
.brand-mark{
  font-weight:900;font-size:1.35rem;color:var(--text)!important;
  display:inline-flex;align-items:center;gap:8px;letter-spacing:1px;
}
.brand-mark .dot{color:var(--main)}
.nav-cine .nav-link{
  color:#cfe7dc!important;font-weight:500;font-size:.95rem;
  padding:7px 16px!important;border-radius:var(--radius-pill);
  transition:.25s;
}
.nav-cine .nav-link:hover,.nav-cine .nav-link:focus{
  color:#04120c!important;background:var(--main);
}
.nav-cine .nav-link.to-home{
  background:rgba(16,185,129,.14);color:var(--main)!important;
  border:1px solid var(--line);
}
.nav-cine .nav-link.to-home:hover{color:#04120c!important}
.navbar-toggler{border:1px solid var(--line);border-radius:12px;padding:6px 10px}
.navbar-toggler:focus{box-shadow:none}
.navbar-toggler i{color:var(--main)}

/* Hero */
.hero{
  position:relative;
  min-height:100vh;
  display:flex;align-items:center;
  overflow:hidden;
  padding-top:120px;padding-bottom:80px;
  background:
    radial-gradient(circle at 15% 20%,rgba(16,185,129,.22),transparent 55%),
    radial-gradient(circle at 85% 15%,rgba(251,191,36,.14),transparent 50%),
    linear-gradient(180deg,#07110c 0%,#0a1410 55%,#0a1410 100%);
}
.hero-bg{
  position:absolute;inset:-12% 0 0 0;z-index:0;
  background-image:
    radial-gradient(circle at 30% 40%,rgba(16,185,129,.16),transparent 45%),
    radial-gradient(circle at 70% 70%,rgba(251,191,36,.10),transparent 45%),
    repeating-linear-gradient(115deg,rgba(255,255,255,.025) 0 2px,transparent 2px 9px);
  will-change:transform;
}
.hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,20,16,.35) 0%,rgba(10,20,16,.75) 65%,var(--bg) 100%);
}
.hero-inner{position:relative;z-index:2}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 18px;border-radius:var(--radius-pill);
  border:1px solid var(--line);background:rgba(16,185,129,.10);
  color:var(--main);font-weight:600;font-size:.85rem;letter-spacing:1.5px;
}
.hero h1{
  font-size:clamp(2.4rem,6vw,4rem);
  font-weight:900;line-height:1.08;margin:22px 0 18px;
}
.hero h1 .hl{color:var(--main)}
.hero h1 .hl2{color:var(--accent)}
.hero-lead{
  color:var(--muted);font-size:1.05rem;max-width:560px;line-height:1.85;
}
.hero-stats{display:flex;flex-wrap:wrap;gap:34px;margin-top:38px}
.stat-num{
  font-size:clamp(2rem,4.5vw,3rem);font-weight:900;color:var(--main);
  line-height:1;letter-spacing:-1px;
}
.stat-num.accent{color:var(--accent)}
.stat-label{color:var(--muted);font-size:.86rem;margin-top:6px;letter-spacing:1px}
.btn-cine{
  border-radius:var(--radius-pill);padding:13px 34px;font-weight:700;
  border:none;transition:.28s;font-size:.98rem;
}
.btn-main{
  background:var(--main);color:#04120c;
  box-shadow:0 12px 28px rgba(16,185,129,.32);
}
.btn-main:hover{background:#0ea472;color:#04120c;transform:translateY(-2px)}
.btn-ghost{
  background:transparent;color:var(--text);border:1px solid var(--line);
}
.btn-ghost:hover{background:rgba(16,185,129,.14);color:var(--main);border-color:var(--main)}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}

/* 区块通用 */
.section{padding:88px 0;position:relative}
.section-tight{padding:64px 0}
.sec-kicker{
  color:var(--main);font-weight:700;letter-spacing:3px;font-size:.8rem;
  text-transform:uppercase;margin-bottom:10px;
}
.sec-title{
  font-size:clamp(1.9rem,3.6vw,2.6rem);font-weight:900;margin-bottom:12px;
}
.sec-desc{color:var(--muted);max-width:640px;line-height:1.85}
.line-soft{height:1px;background:linear-gradient(90deg,var(--line),transparent);border:0;margin:0}

/* 榜单 */
.chart-wrap{
  background:linear-gradient(160deg,#0d1d17,#0a1410);
  border:1px solid var(--line);border-radius:26px;padding:10px;
}
.chart-item{
  display:flex;align-items:center;gap:18px;
  padding:16px 20px;border-radius:16px;transition:.25s;cursor:pointer;
  border-bottom:1px solid rgba(16,185,129,.08);
}
.chart-item:last-child{border-bottom:none}
.chart-item:hover{background:rgba(16,185,129,.10);transform:translateX(4px)}
.chart-rank{
  font-size:1.5rem;font-weight:900;min-width:44px;text-align:center;
  color:var(--muted);
}
.chart-item:nth-child(1) .chart-rank{color:var(--accent)}
.chart-item:nth-child(2) .chart-rank{color:#d1d5db}
.chart-item:nth-child(3) .chart-rank{color:#b45309}
.chart-name{font-weight:700;font-size:1.02rem}
.chart-meta{color:var(--muted);font-size:.82rem;margin-top:3px}
.chart-score{
  margin-left:auto;font-weight:900;color:var(--accent);font-size:1.05rem;white-space:nowrap;
}
.chart-score i{font-size:.75rem;margin-right:5px}

/* 海报卡片 */
.poster-card{
  background:var(--card);border:1px solid rgba(16,185,129,.14);
  border-radius:var(--radius-card);overflow:hidden;cursor:pointer;
  transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;
  box-shadow:0 6px 18px rgba(0,0,0,.28);height:100%;
}
.poster-card:hover{
  transform:translateY(-8px);
  box-shadow:0 22px 44px rgba(0,0,0,.55);
  border-color:var(--main);
}
.poster-thumb{position:relative;aspect-ratio:2/3;overflow:hidden;background:#123024}
.poster-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.poster-card:hover .poster-thumb img{transform:scale(1.07)}
.poster-mask{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(4,12,9,.85) 100%);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .3s;
}
.poster-card:hover .poster-mask{opacity:1}
.play-btn{
  width:56px;height:56px;border-radius:50%;
  background:rgba(16,185,129,.92);color:#04120c;
  display:flex;align-items:center;justify-content:center;font-size:1.15rem;
  box-shadow:0 8px 22px rgba(16,185,129,.5);
  transform:scale(.85);transition:transform .3s;
}
.poster-card:hover .play-btn{transform:scale(1)}
.score-badge{
  position:absolute;top:10px;right:10px;z-index:3;
  background:rgba(4,12,9,.82);color:var(--accent);
  font-weight:800;font-size:.8rem;padding:4px 10px;border-radius:var(--radius-pill);
  border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(4px);
}
.tag-badge{
  position:absolute;top:10px;left:10px;z-index:3;
  background:rgba(16,185,129,.9);color:#04120c;
  font-weight:700;font-size:.72rem;padding:3px 9px;border-radius:var(--radius-pill);
}
.poster-body{padding:13px 14px 16px}
.poster-title{
  font-weight:700;font-size:.95rem;margin-bottom:5px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.poster-sub{color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 分类筛选 */
.filter-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.filter-pill{
  border:1px solid var(--line);background:transparent;color:#cfe7dc;
  border-radius:var(--radius-pill);padding:9px 22px;font-size:.88rem;font-weight:600;
  transition:.25s;cursor:pointer;
}
.filter-pill:hover{border-color:var(--main);color:var(--main)}
.filter-pill.active{background:var(--main);color:#04120c;border-color:var(--main);box-shadow:0 8px 20px rgba(16,185,129,.3)}

/* 标签页 */
.tab-cine{
  display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px;
  border-bottom:1px solid rgba(16,185,129,.15);padding-bottom:18px;
}
.tab-btn{
  border:none;background:transparent;color:var(--muted);
  padding:10px 22px;border-radius:var(--radius-pill);font-weight:700;font-size:.92rem;
  transition:.25s;cursor:pointer;
}
.tab-btn:hover{color:var(--text)}
.tab-btn.active{background:rgba(16,185,129,.16);color:var(--main);box-shadow:inset 0 0 0 1px var(--line)}
.tab-pane-cine{display:none;animation:fadeUp .45s ease}
.tab-pane-cine.active{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* 时间线 */
.timeline{position:relative;padding-left:38px;margin-top:20px}
.timeline::before{
  content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;
  background:linear-gradient(180deg,var(--main),rgba(16,185,129,.1));
}
.tl-item{position:relative;padding-bottom:34px}
.tl-item:last-child{padding-bottom:0}
.tl-dot{
  position:absolute;left:-33px;top:4px;width:16px;height:16px;border-radius:50%;
  background:var(--bg);border:3px solid var(--main);box-shadow:0 0 0 4px rgba(16,185,129,.12);
}
.tl-year{
  color:var(--accent);font-weight:900;font-size:1.05rem;letter-spacing:1px;margin-bottom:6px;
}
.tl-title{font-weight:700;font-size:1.02rem;margin-bottom:6px}
.tl-text{color:var(--muted);font-size:.92rem;line-height:1.85;max-width:640px}

/* 预告 */
.trailer-card{
  position:relative;border-radius:var(--radius-card);overflow:hidden;
  aspect-ratio:16/10;background:#123024;cursor:pointer;
  border:1px solid rgba(16,185,129,.16);transition:.3s;
}
.trailer-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.trailer-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:var(--main)}
.trailer-card:hover img{transform:scale(1.06)}
.trailer-cap{
  position:absolute;left:0;right:0;bottom:0;padding:22px 18px 16px;
  background:linear-gradient(180deg,transparent,rgba(4,12,9,.92));
}
.trailer-cap .t{font-weight:800;font-size:1.02rem}
.trailer-cap .m{color:var(--muted);font-size:.8rem;margin-top:3px}
.trailer-play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transition:.3s;background:rgba(4,12,9,.35);
}
.trailer-card:hover .trailer-play{opacity:1}

/* FAQ */
.faq-item{
  border:1px solid rgba(16,185,129,.15);border-radius:16px;
  margin-bottom:14px;overflow:hidden;background:rgba(16,32,26,.55);
}
.faq-q{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:18px 22px;font-weight:700;cursor:pointer;font-size:.98rem;
  transition:.25s;
}
.faq-q:hover{color:var(--main)}
.faq-q i{color:var(--main);transition:transform .3s;font-size:.85rem}
.faq-item.open .faq-q i{transform:rotate(180deg)}
.faq-a{
  max-height:0;overflow:hidden;transition:max-height .38s ease;
  color:var(--muted);font-size:.92rem;line-height:1.9;
}
.faq-a-inner{padding:0 22px 20px}

/* 类型科普 */
.genre-box{
  background:linear-gradient(160deg,#0d1d17,#0a1410);
  border:1px solid var(--line);border-radius:22px;padding:32px;
  height:100%;
}
.genre-box h4{font-size:1.08rem;font-weight:800;margin-bottom:10px;color:var(--main)}
.genre-box p{color:var(--muted);font-size:.92rem;line-height:1.9;margin:0}

/* 友链 */
.friend-links{
  text-align:center;padding:44px 20px;
  border-top:1px solid rgba(16,185,129,.14);
  border-bottom:1px solid rgba(16,185,129,.14);
}
.friend-links h5{font-weight:800;font-size:1rem;letter-spacing:2px;margin-bottom:18px;color:var(--main)}
.friend-links .fl-body{color:var(--muted);font-size:.88rem;line-height:2;word-break:break-all}

/* 页脚 */
.footer-cine{
  background:#071009;padding:64px 0 28px;position:relative;
}
.footer-cine::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--main),transparent);opacity:.5;
}
.footer-brand{font-weight:900;font-size:1.25rem;margin-bottom:14px;display:inline-flex;gap:8px;align-items:center}
.footer-brand i{color:var(--main)}
.footer-text{color:var(--muted);font-size:.88rem;line-height:1.95;max-width:380px}
.footer-h{font-weight:800;font-size:.95rem;margin-bottom:16px;color:var(--text)}
.footer-list{list-style:none;padding:0;margin:0}
.footer-list li{margin-bottom:10px}
.footer-list a{color:var(--muted);font-size:.88rem;transition:.22s}
.footer-list a:hover{color:var(--main);padding-left:4px}
.footer-bottom{
  margin-top:46px;padding-top:22px;border-top:1px solid rgba(16,185,129,.12);
  color:#6f8a7e;font-size:.82rem;text-align:center;line-height:1.9;
}

/* 弹窗 */
.modal-cine{
  position:fixed;inset:0;z-index:2000;display:none;
  align-items:center;justify-content:center;padding:20px;
  background:rgba(3,9,7,.78);backdrop-filter:blur(6px);
}
.modal-cine.show{display:flex;animation:modalIn .28s ease}
@keyframes modalIn{from{opacity:0}to{opacity:1}}
.modal-box{
  background:#f3faf6;color:#0e231b;border-radius:22px;
  max-width:900px;width:100%;max-height:90vh;overflow-y:auto;
  position:relative;box-shadow:0 30px 80px rgba(0,0,0,.6);
  animation:boxIn .32s cubic-bezier(.2,.9,.3,1.2);
}
@keyframes boxIn{from{transform:translateY(24px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.modal-close{
  position:absolute;top:14px;right:14px;z-index:5;
  width:38px;height:38px;border-radius:50%;border:none;
  background:rgba(14,35,27,.08);color:#0e231b;font-size:1.05rem;
  cursor:pointer;transition:.22s;
}
.modal-close:hover{background:#10b981;color:#fff;transform:rotate(90deg)}
.modal-grid{display:grid;grid-template-columns:250px 1fr;gap:26px;padding:26px}
.modal-poster{border-radius:16px;overflow:hidden;aspect-ratio:2/3;background:#0e231b}
.modal-poster img{width:100%;height:100%;object-fit:cover;display:block}
.modal-title{font-size:1.55rem;font-weight:900;margin:0 0 10px;padding-right:40px}
.modal-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.m-chip{
  font-size:.76rem;font-weight:700;padding:4px 12px;border-radius:999px;
  background:rgba(16,185,129,.14);color:#0b7a56;
}
.m-chip.year{background:rgba(251,191,36,.2);color:#a06800}
.m-score{
  display:inline-flex;align-items:center;gap:6px;font-weight:900;color:#b45309;
  font-size:1.1rem;margin-bottom:16px;
}
.m-row{font-size:.9rem;margin-bottom:9px;color:#0e231b;line-height:1.6}
.m-row .k{color:#5c7a6e;font-weight:600;margin-right:6px}
.m-plot{
  margin-top:14px;font-size:.9rem;line-height:1.95;color:#274a3c;
  background:rgba(16,185,129,.07);padding:14px 16px;border-radius:12px;
  border-left:3px solid #10b981;
}
@media (max-width:768px){
  .modal-grid{grid-template-columns:1fr;gap:18px;padding:20px}
  .modal-poster{max-width:180px;margin:0 auto}
  .modal-title{font-size:1.25rem}
}

/* 通用小响应 */
@media (max-width:991px){
  .hero{padding-top:110px;min-height:auto}
  .hero-stats{gap:26px}
  .section{padding:64px 0}
  .chart-item{padding:13px 14px;gap:12px}
  .chart-sяло{display:none}
}
@media (max-width:575px){
  .hero h1{font-size:2.1rem}
  .stat-num{font-size:1.9rem}
  .sec-title{font-size:1.6rem}
  .filter-pill{padding:7px 16px;font-size:.82rem}
  .tab-btn{padding:8px 16px;font-size:.85rem}
}

/* --- 子页面追加 --- */
/* 本页专属少量样式,复用站点变量与类名 */
  .about-hero {position:relative;overflow:hidden;padding:120px 0 70px;}
.about-hero .hero-bg {position:absolute;inset:0;background:
      radial-gradient(900px 420px at 15% 0%, rgba(16,185,129,.20), transparent 60%),
      radial-gradient(700px 380px at 85% 20%, rgba(251,191,36,.12), transparent 60%);
      pointer-events:none;}
.about-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.about-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);
      padding:24px 22px;box-shadow:var(--shadow);height:100%;transition:.25s ease;}
.about-card:hover {transform:translateY(-4px);border-color:rgba(16,185,129,.55);background:var(--card-2);}
.about-card .ico {width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
      background:rgba(16,185,129,.14);color:var(--main);font-size:18px;margin-bottom:14px;}
.about-card h3 {font-size:1.06rem;font-weight:700;color:var(--text);margin:0 0 8px;}
.about-card p {margin:0;color:var(--muted);font-size:.93rem;line-height:1.75;}
.about-list {list-style:none;padding:0;margin:0;}
.about-list li {position:relative;padding-left:28px;margin-bottom:14px;color:var(--muted);
      font-size:.95rem;line-height:1.8;}
.about-list li i {position:absolute;left:0;top:5px;color:var(--main);font-size:.85rem;}
.about-list li strong {color:var(--text);font-weight:600;}
.about-panel {background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);
      padding:30px 28px;box-shadow:var(--shadow);}
.about-panel p {color:var(--muted);line-height:1.95;font-size:.96rem;}
.about-panel p:last-child {margin-bottom:0;}
.about-panel strong {color:var(--main);font-weight:600;}
.timeline li {position:relative;padding:0 0 26px 26px;}
.timeline li:last-child {padding-bottom:0;}
.timeline li::before {content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;
      border-radius:50%;background:var(--main);box-shadow:0 0 0 4px rgba(16,185,129,.15);}
.timeline h4 {font-size:.98rem;font-weight:700;color:var(--text);margin:0 0 6px;}
.timeline p {margin:0;color:var(--muted);font-size:.92rem;line-height:1.75;}
.num-badge {display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;
      padding:0 8px;border-radius:var(--radius-pill);background:rgba(251,191,36,.14);color:var(--accent);
      font-size:.78rem;font-weight:700;margin-right:10px;}
.about-cta {background:linear-gradient(135deg, rgba(16,185,129,.16), rgba(251,191,36,.08));
      border:1px solid var(--line);border-radius:var(--radius-card);padding:38px 28px;text-align:center;}
.about-cta h2 {font-size:1.5rem;font-weight:800;color:var(--text);margin-bottom:12px;}
.about-cta p {color:var(--muted);max-width:640px;margin:0 auto 22px;line-height:1.85;}
.about-grid {grid-template-columns:1fr 1fr;}
.about-hero {padding:100px 0 56px;}
.about-grid {grid-template-columns:1fr;}
.about-panel {padding:22px 18px;}
.about-cta {padding:28px 18px;}

/* --- 子页面追加 --- */
.legal-hero {position:relative;overflow:hidden;padding:96px 0 56px;}
.legal-hero::before {content:"";position:absolute;inset:0;background:
    radial-gradient(900px 420px at 18% 0%, rgba(16,185,129,.18), transparent 70%),
    radial-gradient(700px 380px at 88% 12%, rgba(251,191,36,.10), transparent 70%);
    pointer-events:none;}
.legal-hero .container {position:relative;z-index:2;}
.legal-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:28px 26px;height:100%;}
.legal-card h3 {font-size:1.06rem;font-weight:700;color:var(--text);margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.legal-card h3 i {color:var(--main);font-size:.95rem;}
.legal-card p {color:var(--muted);font-size:.94rem;line-height:1.85;margin:0;}
.legal-block {background:var(--card-2);border:1px solid var(--line);border-radius:var(--radius-card);padding:26px 24px;}
.legal-block h2 {font-size:1.18rem;font-weight:800;color:var(--text);margin-bottom:14px;}
.legal-block h2 .idx {display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:rgba(16,185,129,.16);color:var(--main);font-size:.85rem;font-weight:800;margin-right:10px;}
.legal-block p,.legal-block li {color:var(--muted);font-size:.95rem;line-height:1.9;}
.legal-block ul {padding-left:1.1rem;margin:10px 0 0;}
.legal-block li {margin-bottom:8px;}
.legal-block strong {color:var(--text);font-weight:600;}
.legal-note {border-left:3px solid var(--accent);background:rgba(251,191,36,.07);border-radius:0 12px 12px 0;padding:14px 18px;color:var(--muted);font-size:.92rem;line-height:1.85;}
.legal-note b {color:var(--accent);}
.meta-row {display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.meta-pill {display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-pill);border:1px solid var(--line);background:rgba(16,185,129,.07);color:var(--muted);font-size:.82rem;}
.meta-pill i {color:var(--main);font-size:.78rem;}
.toc-list {list-style:none;padding:0;margin:0;}
.toc-list li {margin-bottom:6px;}
.toc-list a {display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:var(--muted);text-decoration:none;font-size:.92rem;transition:.2s;border:1px solid transparent;}
.toc-list a:hover {color:var(--text);background:rgba(16,185,129,.09);border-color:var(--line);}
.toc-list a i {color:var(--main);font-size:.78rem;}
.legal-hero {padding:72px 0 40px;}
.legal-card,.legal-block {padding:22px 18px;}

/* --- 子页面追加 --- */
/* 本页专属：指南步骤卡片与正文排版 */
  .guide-wrap { background: var(--bg); color: var(--text); }
.g-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow);
    padding: 26px 24px;
    height: 100%;
    transition: transform .25s ease, border-color .25s ease;
  }
.g-card:hover { transform: translateY(-4px); border-color: rgba(16,185,129,.55); }
.g-card .g-ico {
    width: 46px; height: 46px; border-radius: 14px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--card-2); color: var(--main);
    font-size: 1.15rem; margin-bottom: 14px;
    border: 1px solid var(--line);
  }
.g-card h3 { font-size: 1.06rem; font-weight: 700; margin-bottom: 10px; color: var(--text); }
.g-card p { color: var(--muted); font-size: .93rem; line-height: 1.75; margin-bottom: 0; }
.g-num {
    font-size: .72rem; font-weight: 800; letter-spacing: .14em;
    color: var(--accent); text-transform: uppercase; margin-bottom: 8px; display: block;
  }
.g-step {
    display: flex; gap: 18px; padding: 20px 0;
    border-bottom: 1px dashed var(--line);
  }
.g-step:last-child { border-bottom: 0; }
.g-step-no {
    flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(16,185,129,.12); border: 1px solid var(--line);
    color: var(--main); font-weight: 800; font-size: 1rem;
  }
.g-step-body h3 { font-size: 1.02rem; font-weight: 700; margin-bottom: 6px; }
.g-step-body p { color: var(--muted); font-size: .93rem; line-height: 1.78; margin: 0; }
.g-box {
    background: var(--card-2); border: 1px solid var(--line);
    border-radius: var(--radius-card); padding: 22px 24px;
  }
.g-box h3 { font-size: 1rem; font-weight: 700; margin-bottom: 12px; }
.g-box p, .g-box li { color: var(--muted); font-size: .92rem; line-height: 1.8; }
.g-box ul { padding-left: 1.1rem; margin: 0; }
.g-box li { margin-bottom: 8px; }
.g-box li:last-child { margin-bottom: 0; }
.g-tag {
    display: inline-block; padding: 5px 14px; border-radius: var(--radius-pill);
    border: 1px solid var(--line); background: rgba(16,185,129,.08);
    color: var(--main); font-size: .8rem; font-weight: 600; margin: 0 8px 8px 0;
  }
.g-tag.accent { color: var(--accent); border-color: rgba(251,191,36,.35); background: rgba(251,191,36,.08); }
.g-note {
    border-left: 3px solid var(--accent);
    background: rgba(251,191,36,.06);
    border-radius: 0 12px 12px 0;
    padding: 16px 20px; color: var(--muted); font-size: .9rem; line-height: 1.8;
  }
.g-note strong { color: var(--accent); }
.g-faq-item {
    background: var(--card); border: 1px solid var(--line);
    border-radius: 14px; padding: 18px 22px; margin-bottom: 14px;
  }
.g-faq-item h3 { font-size: .98rem; font-weight: 700; margin-bottom: 8px; }
.g-faq-item h3 i { color: var(--main); margin-right: 8px; font-size: .85rem; }
.g-faq-item p { color: var(--muted); font-size: .92rem; line-height: 1.78; margin: 0; }
.footer-cine a { color: var(--muted); text-decoration: none; font-size: .9rem; }
.footer-cine a:hover { color: var(--main); }
.footer-cine .brand-mark { color: var(--text); font-weight: 800; font-size: 1.1rem; }
.footer-links { display: flex; flex-wrap: wrap; gap: 10px 22px; }
.footer-copy { font-size: .82rem; color: var(--muted); opacity: .8; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.g-card { padding: 22px 18px; }
.g-step { gap: 14px; }
.g-step-no { flex: 0 0 38px; width: 38px; height: 38px; font-size: .92rem; }

/* --- 子页面追加 --- */
.rank-hero {position:relative;overflow:hidden;padding:120px 0 64px;background:
    radial-gradient(900px 420px at 15% -10%,rgba(16,185,129,.20),transparent 60%),
    radial-gradient(700px 380px at 90% 0%,rgba(251,191,36,.10),transparent 60%),
    var(--bg);}
.rank-hero .hero-inner {max-width:860px}
.rank-panel {background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:26px 24px;height:100%}
.rank-panel h3 {font-size:1.05rem;font-weight:700;margin:0 0 10px;color:var(--text)}
.rank-panel p {margin:0;color:var(--muted);font-size:.94rem;line-height:1.75}
.rank-panel .ico {width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;
    background:rgba(16,185,129,.12);color:var(--main);border:1px solid var(--line);margin-bottom:14px;font-size:1rem}
.rule-list {list-style:none;padding:0;margin:0;counter-reset:r}
.rule-list li {position:relative;padding:16px 0 16px 52px;border-bottom:1px dashed rgba(16,185,129,.18);color:var(--muted);line-height:1.8;font-size:.96rem}
.rule-list li:last-child {border-bottom:none}
.rule-list li::before {counter-increment:r;content:counter(r,decimal-leading-zero);position:absolute;left:0;top:14px;
    width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    font-size:.78rem;font-weight:800;color:var(--bg);background:linear-gradient(135deg,var(--main),#34d399)}
.rule-list li strong {color:var(--text);font-weight:700}
.weight-table {width:100%;border-collapse:collapse;font-size:.93rem}
.weight-table th,.weight-table td {padding:12px 14px;text-align:left;border-bottom:1px solid rgba(16,185,129,.16)}
.weight-table th {color:var(--main);font-weight:700;font-size:.84rem;letter-spacing:.06em;text-transform:uppercase}
.weight-table td {color:var(--muted)}
.weight-table td:first-child {color:var(--text);font-weight:600}
.weight-table tr:last-child td {border-bottom:none}
.badge-cine {display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-pill);
    font-size:.76rem;font-weight:700;letter-spacing:.04em;border:1px solid var(--line);color:var(--main);background:rgba(16,185,129,.08)}
.badge-cine.gold {color:var(--accent);border-color:rgba(251,191,36,.35);background:rgba(251,191,36,.08)}
.note-box {border-left:3px solid var(--accent);background:rgba(251,191,36,.06);border-radius:0 14px 14px 0;
    padding:18px 20px;color:var(--muted);font-size:.94rem;line-height:1.85}
.note-box strong {color:var(--accent)}
.faq-item h3 {font-size:.98rem;font-weight:700;color:var(--text);margin:0 0 8px;display:flex;gap:10px;align-items:flex-start}
.faq-item h3 i {color:var(--main);margin-top:3px}
.faq-item p {margin:0;color:var(--muted);font-size:.93rem;line-height:1.8}
.rank-hero {padding:96px 0 44px}
.weight-table th,.weight-table td {padding:10px 8px;font-size:.86rem}

/* --- 子页面追加 --- */
/* 本页专属少量样式，其余复用站点类名 */
  .fb-panel {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius-card);
    box-shadow:var(--shadow);
    padding:28px;
  }
.fb-field {margin-bottom:18px;}
.fb-label {
    display:block;
    font-size:.9rem;
    font-weight:600;
    color:var(--text);
    margin-bottom:8px;
    letter-spacing:.02em;
  }
.fb-label span {color:var(--accent);}
.fb-input,.fb-select,.fb-textarea {
    width:100%;
    background:rgba(10,20,16,.75);
    border:1px solid var(--line);
    border-radius:12px;
    color:var(--text);
    font-family:inherit;
    font-size:.95rem;
    padding:12px 14px;
    transition:border-color .2s, box-shadow .2s;
    outline:none;
  }
.fb-input::placeholder,.fb-textarea::placeholder {color:rgba(159,184,173,.55);}
.fb-input:focus,.fb-select:focus,.fb-textarea:focus {
    border-color:var(--main);
    box-shadow:0 0 0 3px rgba(16,185,129,.15);
  }
.fb-select option {background:#0a1410;color:var(--text);}
.fb-textarea {min-height:150px;resize:vertical;line-height:1.7;}
.fb-hint {font-size:.8rem;color:var(--muted);margin-top:6px;}
.fb-type-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    gap:10px;
    margin-bottom:6px;
  }
.fb-type {
    display:flex;
    align-items:center;
    gap:9px;
    background:var(--card-2);
    border:1px solid var(--line);
    border-radius:12px;
    padding:11px 13px;
    font-size:.88rem;
    color:var(--muted);
    cursor:pointer;
    transition:.2s;
    user-select:none;
  }
.fb-type:hover {border-color:rgba(16,185,129,.55);color:var(--text);}
.fb-type input {accent-color:var(--main);width:15px;height:15px;cursor:pointer;flex:0 0 auto;}
.fb-type i {color:var(--main);font-size:.9rem;}
.fb-note {
    background:rgba(251,191,36,.07);
    border:1px solid rgba(251,191,36,.28);
    border-radius:14px;
    padding:14px 16px;
    font-size:.85rem;
    color:var(--muted);
    line-height:1.75;
  }
.fb-note strong {color:var(--accent);}
.fb-step {
    display:flex;
    gap:14px;
    padding:16px 0;
    border-bottom:1px dashed rgba(16,185,129,.18);
  }
.fb-step:last-child {border-bottom:none;padding-bottom:0;}
.fb-step-num {
    flex:0 0 34px;
    height:34px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--main),#0d8f63);
    color:#04140e;
    font-weight:800;
    font-size:.9rem;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 14px rgba(16,185,129,.35);
  }
.fb-step h4 {
    font-size:.98rem;
    font-weight:700;
    margin:0 0 5px;
    color:var(--text);
  }
.fb-step p {
    margin:0;
    font-size:.86rem;
    color:var(--muted);
    line-height:1.7;
  }
.fb-quick {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:14px;
  }
.fb-chip {
    font-size:.8rem;
    color:var(--muted);
    border:1px solid var(--line);
    border-radius:var(--radius-pill);
    padding:6px 13px;
    background:var(--card-2);
    transition:.2s;
    text-decoration:none;
  }
.fb-chip:hover {color:var(--text);border-color:var(--main);}
.fb-msg {
    display:none;
    margin-top:16px;
    padding:13px 16px;
    border-radius:12px;
    background:rgba(16,185,129,.12);
    border:1px solid rgba(16,185,129,.4);
    color:var(--text);
    font-size:.88rem;
  }
.fb-msg.show {display:block;}
.fb-side-card {
    background:var(--card-2);
    border:1px solid var(--line);
    border-radius:var(--radius-card);
    padding:22px;
  }
.fb-side-card h3 {
    font-size:1.02rem;
    font-weight:700;
    margin-bottom:12px;
    color:var(--text);
  }
.fb-side-card ul {
    list-style:none;
    padding:0;
    margin:0;
  }
.fb-side-card li {
    font-size:.86rem;
    color:var(--muted);
    line-height:1.75;
    padding:8px 0;
    border-bottom:1px dashed rgba(16,185,129,.15);
    display:flex;
    gap:9px;
  }
.fb-side-card li:last-child {border-bottom:none;}
.fb-side-card li i {color:var(--main);margin-top:4px;font-size:.75rem;}
.navbar-cine .nav-link.active {color:var(--main);font-weight:700;}
.fb-panel {padding:20px 16px;}

/* --- 子页面追加 --- */
.policy-wrap {max-width:920px;margin:0 auto;}
.policy-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:clamp(20px,3vw,38px);box-shadow:var(--shadow);margin-bottom:22px;}
.policy-card h3 {font-size:1.15rem;font-weight:800;color:var(--text);margin-bottom:14px;display:flex;align-items:flex-start;gap:10px;}
.policy-card h3 .num {flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:rgba(16,185,129,.15);border:1px solid var(--line);color:var(--main);font-size:.85rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;line-height:1;}
.policy-card p,.policy-card li {color:var(--muted);line-height:1.85;font-size:.95rem;}
.policy-card p {margin-bottom:12px;}
.policy-card ul {padding-left:20px;margin-bottom:12px;}
.policy-card li {margin-bottom:8px;}
.policy-card strong {color:var(--text);font-weight:600;}
.policy-meta {color:var(--muted);font-size:.85rem;display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:26px;}
.policy-meta i {color:var(--main);margin-right:6px;}
.policy-tag {display:inline-block;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.35);color:var(--accent);font-size:.78rem;font-weight:600;padding:3px 12px;border-radius:var(--radius-pill);margin-bottom:10px;}
.policy-note {background:var(--card-2);border:1px solid var(--line);border-left:3px solid var(--main);border-radius:12px;padding:14px 18px;margin:14px 0;}
.policy-note p {margin-bottom:0;font-size:.9rem;}
.toc {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px;}
.toc a {font-size:.85rem;color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-pill);padding:6px 14px;text-decoration:none;transition:.2s;background:var(--card);}
.toc a:hover {color:var(--main);border-color:var(--main);transform:translateY(-2px);}
.policy-card .table-wrap {overflow-x:auto;margin:12px 0 6px;}
.policy-table {width:100%;border-collapse:collapse;font-size:.9rem;}
.policy-table th,.policy-table td {border:1px solid var(--line);padding:10px 14px;text-align:left;color:var(--muted);}
.policy-table th {background:var(--card-2);color:var(--text);font-weight:700;}
.nav-link.active-page {color:var(--main) !important;font-weight:700;}
.policy-card {padding:18px 16px;}
.policy-meta {font-size:.8rem;}