:root{
  --main:#f97316;
  --accent:#facc15;
  --bg:#1a1410;
  --text:#fff7ed;
  --panel:#241b14;
  --line:#3d2e21;
  --muted:#c9b8a6;
  --hard-shadow:8px 8px 0 rgba(249,115,22,.28);
  --hard-shadow-accent:8px 8px 0 rgba(250,204,21,.25);
}
*{border-radius:0 !important;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:'Noto Sans SC','Inter','Microsoft YaHei',sans-serif;
  font-weight:400;
  line-height:1.75;
  overflow-x:hidden;
}
h1,h2,h3,h4,.serif{font-family:'Noto Serif SC','Inter',serif;font-weight:900;letter-spacing:-.5px;}
a{text-decoration:none;}
::selection{background:var(--main);color:#1a1410;}

/* 顶部导航 */
.top-nav{
  background:rgba(26,20,16,.94);
  border-bottom:3px solid var(--line);
  backdrop-filter:blur(10px);
  position:sticky;top:0;z-index:1030;
}
.brand-mark{
  font-family:'Noto Serif SC',serif;
  font-weight:900;
  font-size:1.4rem;
  color:var(--text);
  letter-spacing:1px;
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.3rem 1rem;
  border:3px solid var(--main);
  box-shadow:4px 4px 0 var(--accent);
  transition:.2s;
}
.brand-mark:hover{color:var(--accent);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--main);}
.brand-mark i{color:var(--main);}
.nav-link-custom{
  color:var(--muted);font-weight:500;font-size:.95rem;
  padding:.5rem .85rem;display:inline-block;border:2px solid transparent;
  transition:.18s;
}
.nav-link-custom:hover{color:var(--accent);border-color:var(--line);background:#221a13;}
.nav-toggle-btn{
  background:transparent;border:3px solid var(--main);color:var(--text);
  padding:.35rem .7rem;font-size:1.1rem;
}
.nav-toggle-btn:hover{background:var(--main);color:#1a1410;}

/* Hero */
.hero{
  position:relative;
  padding:6rem 0 5rem;
  overflow:hidden;
  border-bottom:3px solid var(--line);
  background:
    radial-gradient(circle at 15% 20%, rgba(249,115,22,.22), transparent 45%),
    radial-gradient(circle at 85% 75%, rgba(250,204,21,.16), transparent 45%),
    var(--bg);
}
.hero-parallax{
  position:absolute;inset:0;pointer-events:none;z-index:0;
  will-change:transform;
}
.float-dot{
  position:absolute;border:3px solid var(--main);width:70px;height:70px;
  opacity:.4;
}
.float-dot.d2{border-color:var(--accent);width:40px;height:40px;transform:rotate(20deg);}
.float-dot.d3{border-color:var(--line);width:110px;height:110px;}
.hero-inner{position:relative;z-index:2;}
.hero-kicker{
  display:inline-block;
  border:3px solid var(--accent);
  color:var(--accent);
  padding:.25rem 1rem;
  font-weight:700;
  letter-spacing:3px;
  font-size:.8rem;
  margin-bottom:1.6rem;
  background:rgba(250,204,21,.07);
}
.hero-title{
  font-size:clamp(2.6rem,6.5vw,4.6rem);
  line-height:1.05;
  font-weight:900;
  margin-bottom:1.5rem;
}
.grad-text{
  background:linear-gradient(100deg,var(--main) 5%,var(--accent) 50%,var(--main) 95%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.hero-sub{color:var(--muted);font-size:1.05rem;max-width:640px;font-weight:300;}
.hero-stats{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:2.4rem;}
.stat-box{
  border:3px solid var(--line);
  background:var(--panel);
  padding:.9rem 1.3rem;
  box-shadow:var(--hard-shadow);
  min-width:130px;
}
.stat-box b{display:block;font-size:1.7rem;color:var(--accent);font-family:'Noto Serif SC',serif;line-height:1.1;}
.stat-box span{font-size:.82rem;color:var(--muted);letter-spacing:1px;}

/* 通用区块 */
.section{padding:5rem 0;position:relative;}
.section-alt{background:#201812;border-top:3px solid var(--line);border-bottom:3px solid var(--line);}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2.6rem;border-bottom:3px solid var(--line);padding-bottom:1.2rem;}
.sec-title{
  font-size:clamp(2rem,4.5vw,3.4rem);
  line-height:1;
  margin:0;
}
.sec-title .hash{color:var(--main);}
.sec-desc{color:var(--muted);font-size:.95rem;max-width:520px;margin:0;font-weight:300;}
.sec-tagline{
  border:2px solid var(--main);color:var(--main);padding:.2rem .8rem;font-size:.8rem;
  font-weight:700;letter-spacing:2px;
}

/* 标签页 */
.tab-bar{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;}
.tab-btn{
  border:3px solid var(--line);background:transparent;color:var(--muted);
  padding:.5rem 1.3rem;font-weight:700;font-size:.9rem;letter-spacing:1px;
  cursor:pointer;transition:.18s;
}
.tab-btn:hover{border-color:var(--main);color:var(--text);}
.tab-btn.active{background:var(--main);border-color:var(--main);color:#1a1410;box-shadow:5px 5px 0 var(--accent);}
.tab-panel{display:none;}
.tab-panel.active{display:block;animation:fadeUp .45s ease both;}

/* 海报卡片 */
.poster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:1.4rem;}
.poster-card{
  background:var(--panel);
  border:3px solid var(--line);
  overflow:hidden;
  cursor:pointer;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
  position:relative;
  display:flex;flex-direction:column;
}
.poster-card:hover{
  transform:scale(1.035);
  border-color:var(--main);
  box-shadow:var(--hard-shadow);
  z-index:5;
}
.poster-thumb{
  position:relative;aspect-ratio:2/3;background:linear-gradient(135deg,#2c2117,#1a1410);
  overflow:hidden;
}
.poster-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;opacity:0;}
.poster-thumb img.loaded{opacity:1;}
.poster-thumb .ph{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:#4a382a;font-size:2rem;z-index:0;
}
.poster-card:hover .poster-thumb img{transform:scale(1.08);}
.poster-score{
  position:absolute;top:0;right:0;background:var(--accent);color:#1a1410;
  font-weight:900;font-size:.95rem;padding:.15rem .5rem;font-family:'Noto Serif SC',serif;
  border-left:3px solid #1a1410;border-bottom:3px solid #1a1410;
}
.poster-badge{
  position:absolute;bottom:0;left:0;background:var(--main);color:#1a1410;
  font-size:.72rem;font-weight:700;padding:.12rem .5rem;letter-spacing:1px;
}
.poster-info{padding:.7rem .8rem .9rem;}
.poster-info h3{
  font-size:.98rem;margin:0 0 .25rem;font-weight:700;line-height:1.3;
  font-family:'Noto Sans SC',sans-serif;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.poster-meta{font-size:.75rem;color:var(--muted);display:flex;gap:.4rem;flex-wrap:wrap;}
.poster-meta span{border:1px solid var(--line);padding:0 .35rem;}

/* 排行榜 */
.rank-list{display:grid;gap:1rem;}
.rank-item{
  display:flex;gap:1.2rem;align-items:center;
  border:3px solid var(--line);background:var(--panel);
  padding:.9rem 1.2rem;cursor:pointer;transition:.2s;
}
.rank-item:hover{border-color:var(--accent);transform:translateX(6px);box-shadow:var(--hard-shadow-accent);}
.rank-no{
  font-family:'Noto Serif SC',serif;font-weight:900;font-size:1.8rem;
  min-width:52px;text-align:center;line-height:1;
}
.rank-no.gold{color:#facc15;}
.rank-no.silver{color:#d6d3d1;}
.rank-no.bronze{color:#fb923c;}
.rank-no.normal{color:#5a4433;font-size:1.4rem;}
.rank-thumb{width:56px;height:78px;flex:0 0 auto;border:2px solid var(--line);overflow:hidden;background:#2c2117;}
.rank-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.rank-body{flex:1;min-width:0;}
.rank-body h4{font-size:1.05rem;margin:0 0 .2rem;font-weight:700;font-family:'Noto Sans SC',sans-serif;}
.rank-body p{margin:0;font-size:.82rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-score{font-family:'Noto Serif SC',serif;font-weight:900;color:var(--accent);font-size:1.3rem;}

/* 指南 & 时间线 */
.guide-wrap{
  border:3px solid var(--line);background:var(--panel);padding:2.2rem;
  box-shadow:var(--hard-shadow);
}
.guide-wrap h3{font-size:1.6rem;margin-bottom:1rem;color:var(--accent);}
.guide-wrap p{color:#e6d8c9;font-size:.97rem;font-weight:300;margin-bottom:1rem;}
.timeline{position:relative;padding-left:2rem;margin-top:2rem;}
.timeline::before{content:"";position:absolute;left:8px;top:4px;bottom:4px;width:3px;background:var(--main);}
.tl-item{position:relative;padding-bottom:1.6rem;}
.tl-item::before{
  content:"";position:absolute;left:-2rem;top:6px;width:19px;height:19px;
  background:var(--bg);border:3px solid var(--accent);
}
.tl-item h4{font-size:1.05rem;margin:0 0 .3rem;color:var(--main);font-family:'Noto Sans SC',sans-serif;font-weight:700;}
.tl-item p{margin:0;font-size:.9rem;color:var(--muted);font-weight:300;}

/* 小贴士 */
.tip-list{list-style:none;padding:0;margin:0;display:grid;gap:1rem;}
.tip-list li{
  border-left:6px solid var(--main);background:var(--panel);
  padding:1rem 1.2rem;font-size:.94rem;color:#e6d8c9;font-weight:300;
  border-top:2px solid var(--line);border-right:2px solid var(--line);border-bottom:2px solid var(--line);
}
.tip-list li b{color:var(--accent);font-weight:700;}

/* 友链 */
.friend-links{border-top:3px solid var(--line);background:#201812;padding:3rem 0;}
.friend-links h3{font-size:1.3rem;margin-bottom:1.2rem;}
.friend-links h3 i{color:var(--main);margin-right:.4rem;}
.fl-box{border:3px dashed var(--line);padding:1.2rem;color:var(--muted);font-size:.9rem;}

/* 页脚 */
footer.site-footer{background:#120d09;border-top:3px solid var(--main);padding:3.4rem 0 2rem;}
.footer-brand{
  font-family:'Noto Serif SC',serif;font-weight:900;font-size:1.5rem;color:var(--text);
  border:3px solid var(--main);display:inline-block;padding:.3rem 1rem;box-shadow:4px 4px 0 var(--accent);
  margin-bottom:1rem;
}
footer.site-footer p,footer.site-footer a{color:var(--muted);font-size:.88rem;font-weight:300;}
footer.site-footer a:hover{color:var(--accent);}
.foot-nav{display:flex;flex-wrap:wrap;gap:1rem 1.4rem;margin:1.2rem 0;}
.copyright{border-top:2px solid var(--line);margin-top:2rem;padding-top:1.4rem;font-size:.82rem;color:#8a7663;}

/* 弹窗 */
.modal-mask{
  position:fixed;inset:0;z-index:2000;display:none;
  background:rgba(10,7,5,.82);backdrop-filter:blur(14px);
  overflow-y:auto;padding:2rem 1rem;
}
.modal-mask.show{display:flex;align-items:center;justify-content:center;animation:fadeIn .25s ease both;}
.modal-card{
  position:relative;width:100%;max-width:880px;
  background:var(--bg);border:4px solid var(--main);
  box-shadow:14px 14px 0 rgba(249,115,22,.32);
  animation:popIn .3s ease both;
}
.modal-bg{
  position:absolute;inset:0;background-size:cover;background-position:center;
  filter:blur(26px) brightness(.35);z-index:0;
}
.modal-inner{position:relative;z-index:2;display:flex;gap:2rem;padding:2rem;flex-wrap:wrap;}
.modal-poster{flex:0 0 210px;max-width:210px;border:3px solid var(--accent);overflow:hidden;}
.modal-poster img{width:100%;display:block;aspect-ratio:2/3;object-fit:cover;}
.modal-body{flex:1;min-width:220px;}
.modal-body h3{font-size:2rem;margin:0 0 .6rem;color:var(--text);}
.modal-score{
  display:inline-block;background:var(--accent);color:#1a1410;
  font-family:'Noto Serif SC',serif;font-weight:900;font-size:1.5rem;
  padding:.1rem .8rem;margin-bottom:1rem;border:3px solid #1a1410;
}
.modal-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem;}
.modal-meta span{border:2px solid var(--line);color:var(--muted);font-size:.8rem;padding:.1rem .55rem;}
.modal-body .lbl{color:var(--main);font-weight:700;font-size:.85rem;letter-spacing:1px;display:block;margin-top:.9rem;}
.modal-body p{font-size:.94rem;color:#e6d8c9;font-weight:300;margin:.35rem 0 0;}
.modal-close{
  position:absolute;top:-3px;right:-3px;z-index:9;
  background:var(--main);color:#1a1410;border:none;
  width:46px;height:46px;font-size:1.2rem;font-weight:900;cursor:pointer;
  border-left:3px solid #1a1410;border-bottom:3px solid #1a1410;
}
.modal-close:hover{background:var(--accent);}

/* 动画 */
@keyframes fadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes popIn{from{opacity:0;transform:scale(.94) translateY(20px);}to{opacity:1;transform:none;}}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease;}
.reveal.in{opacity:1;transform:none;}

@media (max-width:768px){
  .hero{padding:4rem 0 3.4rem;}
  .section{padding:3.4rem 0;}
  .poster-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:1rem;}
  .modal-inner{padding:1.4rem;gap:1.2rem;}
  .modal-poster{flex:0 0 130px;max-width:130px;}
  .modal-body h3{font-size:1.4rem;}
  .rank-item{padding:.7rem .8rem;gap:.8rem;}
  .rank-no{font-size:1.4rem;min-width:40px;}
  .rank-thumb{width:44px;height:62px;}
  .guide-wrap{padding:1.4rem;}
}

/* --- 子页面追加 --- */
.about-lead {color:var(--muted);font-size:1.02rem;line-height:1.95;}
.about-lead strong {color:var(--accent);font-weight:700;}
.value-card {background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 24px;height:100%;transition:.25s;box-shadow:0 0 0 rgba(249,115,22,0);}
.value-card:hover {transform:translateY(-4px);border-color:var(--main);box-shadow:var(--hard-shadow);}
.value-icon {width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.35rem;background:rgba(249,115,22,.14);color:var(--main);margin-bottom:16px;}
.value-card h3 {font-size:1.12rem;font-weight:800;color:var(--text);margin-bottom:10px;}
.value-card p {color:var(--muted);font-size:.94rem;line-height:1.85;margin:0;}
.timeline-item {position:relative;padding-left:34px;padding-bottom:26px;border-left:2px dashed var(--line);}
.timeline-item:last-child {border-left-color:transparent;padding-bottom:0;}
.timeline-dot {position:absolute;left:-9px;top:2px;width:16px;height:16px;border-radius:50%;background:var(--main);box-shadow:0 0 0 4px rgba(249,115,22,.18);}
.timeline-item h3 {font-size:1.05rem;font-weight:800;color:var(--text);margin-bottom:6px;}
.timeline-item p {color:var(--muted);font-size:.93rem;line-height:1.85;margin:0;}
.fact-list {list-style:none;padding:0;margin:0;}
.fact-list li {display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.95rem;line-height:1.8;}
.fact-list li:last-child {border-bottom:none;}
.fact-list i {color:var(--accent);margin-top:4px;}
.about-cta {background:linear-gradient(135deg,rgba(249,115,22,.16),rgba(250,204,21,.08));border:1px solid var(--line);border-radius:20px;padding:38px 30px;text-align:center;}
.about-cta h2 {font-size:1.5rem;font-weight:900;color:var(--text);margin-bottom:12px;}
.about-cta p {color:var(--muted);max-width:620px;margin:0 auto 22px;line-height:1.9;}
.link-btn {display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border-radius:999px;background:var(--main);color:#1a1410;font-weight:800;text-decoration:none;transition:.2s;margin:6px;}
.link-btn:hover {background:var(--accent);color:#1a1410;transform:translateY(-2px);}
.link-btn.ghost {background:transparent;border:1px solid var(--line);color:var(--text);}
.link-btn.ghost:hover {border-color:var(--main);color:var(--main);}
.about-hero-img {border-radius:18px;border:1px solid var(--line);width:100%;height:auto;display:block;}

/* --- 子页面追加 --- */
.disc-wrap {max-width:960px;margin:0 auto;}
.disc-card {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:16px;
    padding:28px 26px;
    margin-bottom:24px;
    box-shadow:var(--hard-shadow);
  }
.disc-card h2 {
    font-size:1.28rem;
    font-weight:800;
    color:var(--text);
    margin:0 0 14px;
    display:flex;
    align-items:center;
    gap:10px;
    line-height:1.45;
  }
.disc-card h2 i {color:var(--main);font-size:1.05rem;}
.disc-card p {
    color:var(--muted);
    font-size:.96rem;
    line-height:1.95;
    margin:0 0 12px;
  }
.disc-card p:last-child {margin-bottom:0;}
.disc-card strong {color:var(--accent);font-weight:700;}
.disc-card ul {margin:0;padding-left:0;list-style:none;}
.disc-card ul li {
    color:var(--muted);
    font-size:.95rem;
    line-height:1.9;
    padding-left:26px;
    position:relative;
    margin-bottom:10px;
  }
.disc-card ul li::before {
    content:"\f111";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    left:4px;
    top:9px;
    font-size:.42rem;
    color:var(--main);
  }
.disc-updated {
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:rgba(249,115,22,.12);
    border:1px solid rgba(249,115,22,.4);
    color:var(--main);
    font-size:.82rem;
    padding:6px 14px;
    border-radius:999px;
    margin-bottom:18px;
    font-weight:600;
  }
.disc-note {
    border-left:4px solid var(--accent);
    background:rgba(250,204,21,.08);
    padding:14px 18px;
    border-radius:0 10px 10px 0;
    color:var(--muted);
    font-size:.93rem;
    line-height:1.85;
    margin-top:16px;
  }
.disc-note strong {color:var(--accent);}
.disc-back {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--text);
    background:var(--main);
    font-weight:700;
    padding:11px 22px;
    border-radius:12px;
    text-decoration:none;
    box-shadow:6px 6px 0 rgba(0,0,0,.35);
    transition:.2s;
  }
.disc-back:hover {background:var(--accent);color:#1a1410;transform:translate(-2px,-2px);}
.disc-card {padding:22px 18px;box-shadow:5px 5px 0 rgba(249,115,22,.22);}
.disc-card h2 {font-size:1.12rem;}

/* --- 子页面追加 --- */
/* 本页专属少量补充样式，主配色沿用站点变量 */
  .guide-step {
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:14px;
    padding:22px 20px;
    height:100%;
    box-shadow:var(--hard-shadow);
    transition:transform .2s ease;
  }
.guide-step:hover {transform:translateY(-4px);}
.guide-step .step-no {
    display:inline-flex;align-items:center;justify-content:center;
    width:38px;height:38px;border-radius:10px;
    background:var(--main);color:#1a1410;font-weight:800;font-size:17px;
    margin-bottom:14px;
  }
.guide-step h3 {
    font-size:18px;font-weight:700;color:var(--text);margin-bottom:10px;
  }
.guide-step p {color:var(--muted);font-size:14.5px;line-height:1.75;margin:0;}
.guide-card {
    background:var(--panel);border:1px solid var(--line);border-radius:14px;
    padding:24px 22px;height:100%;
  }
.guide-card h3 {
    font-size:17.5px;font-weight:700;color:var(--text);
    display:flex;align-items:center;gap:9px;margin-bottom:12px;
  }
.guide-card h3 i {color:var(--accent);font-size:16px;}
.guide-card p {color:var(--muted);font-size:14.5px;line-height:1.8;margin:0;}
.guide-card p + p {margin-top:10px;}
.guide-faq {
    background:var(--panel);border:1px solid var(--line);border-radius:14px;
    padding:20px 22px;margin-bottom:14px;
  }
.guide-faq h3 {
    font-size:16.5px;font-weight:700;color:var(--text);margin-bottom:9px;
    display:flex;align-items:flex-start;gap:9px;
  }
.guide-faq h3 i {color:var(--main);margin-top:3px;font-size:14px;}
.guide-faq p {color:var(--muted);font-size:14.5px;line-height:1.8;margin:0;}
.guide-note {
    background:rgba(249,115,22,.08);
    border:1px solid var(--line);
    border-left:4px solid var(--main);
    border-radius:10px;
    padding:16px 18px;
    color:var(--muted);
    font-size:14.5px;line-height:1.8;
  }
.guide-note strong {color:var(--accent);}
.quality-table {width:100%;border-collapse:collapse;font-size:14.5px;}
.quality-table th,.quality-table td {
    padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);
  }
.quality-table th {
    color:var(--accent);font-weight:700;font-size:13.5px;
    letter-spacing:.5px;text-transform:uppercase;
  }
.quality-table td {color:var(--muted);}
.quality-table tr:last-child td {border-bottom:none;}
.quality-table td:first-child {color:var(--text);font-weight:600;}
.guide-step {box-shadow:4px 4px 0 rgba(249,115,22,.28);}