:root{
  --main:#f472b6;
  --accent:#fbbf24;
  --bg:#fff5f7;
  --ink:#4a2530;
  --ink-soft:#7c5560;
  --line:#4a2530;
  --card:#fffdfe;
  --shadow:8px 8px 0 0 #4a2530;
  --shadow-sm:5px 5px 0 0 #4a2530;
}
*{border-radius:0 !important;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  font-weight:400;
  line-height:1.7;
  overflow-x:hidden;
}
h1,h2,h3,h4,.hand{
  font-family:'Inter','Noto Sans SC',sans-serif;
  font-weight:900;
  letter-spacing:-0.02em;
  color:var(--ink);
}
a{color:var(--ink);text-decoration:none;}
a:hover{color:var(--main);}
::selection{background:var(--accent);color:var(--ink);}

/* progress bar */
#readbar{
  position:fixed;top:0;left:0;height:6px;width:0%;
  background:linear-gradient(90deg,var(--main),var(--accent));
  z-index:2000;border-right:2px solid var(--ink);
}

/* nav */
.topnav{
  background:var(--bg);
  border-bottom:4px solid var(--line);
  position:sticky;top:0;z-index:1500;
}
.brandmark{
  font-weight:900;font-size:1.35rem;letter-spacing:-0.03em;
  background:var(--main);color:#fff;
  padding:.4rem .9rem;border:4px solid var(--line);
  box-shadow:var(--shadow-sm);
  display:inline-flex;align-items:center;gap:.5rem;
  transition:transform .15s ease;
}
.brandmark:hover{transform:translate(-2px,-2px);color:#fff;}
.navlink{
  display:inline-block;
  font-weight:700;
  padding:.45rem .8rem;
  border:3px solid transparent;
  color:var(--ink);
  font-size:.95rem;
  position:relative;
}
.navlink:hover{
  border-color:var(--line);
  background:var(--accent);
  color:var(--ink);
}
.nav-toggler{
  border:4px solid var(--line);background:var(--accent);
  padding:.4rem .7rem;font-size:1.1rem;box-shadow:var(--shadow-sm);
}
.mobile-menu{
  display:none;flex-direction:column;gap:.3rem;
  border-top:3px dashed var(--line);margin-top:.6rem;padding-top:.6rem;
}
.mobile-menu.open{display:flex;}

/* hero */
.hero{
  position:relative;
  min-height:82vh;
  display:flex;align-items:center;
  overflow:hidden;
  border-bottom:6px solid var(--line);
  background:#2a1620;
}
.hero-bg{
  position:absolute;inset:-12% 0 -12% 0;
  background-image:url('{随机图片}');
  background-size:cover;background-position:center;
  filter:brightness(.38) saturate(1.1);
  will-change:transform;
}
.hero-bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(74,37,48,.55),rgba(74,37,48,.85));
}
.hero-inner{position:relative;z-index:3;padding:5rem 0 4rem;}
.hero-tag{
  display:inline-block;background:var(--accent);color:var(--ink);
  font-weight:800;font-size:.85rem;letter-spacing:.08em;
  padding:.35rem .9rem;border:3px solid var(--line);
  box-shadow:var(--shadow-sm);margin-bottom:1.4rem;
  text-transform:uppercase;
}
.hero h1{
  color:#fff;font-size:clamp(2.6rem,6.5vw,4.6rem);
  line-height:1.02;letter-spacing:-0.04em;
  text-shadow:6px 6px 0 rgba(244,114,182,.55);
  margin-bottom:1.2rem;
}
.hero p.lede{
  color:#ffe3ee;font-size:1.12rem;max-width:620px;
  font-weight:400;margin-bottom:2rem;
}
.btn-hard{
  display:inline-flex;align-items:center;gap:.6rem;
  background:var(--main);color:#fff;font-weight:800;
  padding:.85rem 1.7rem;border:4px solid var(--line);
  box-shadow:var(--shadow);position:relative;overflow:hidden;
  transition:transform .18s ease;font-size:1rem;
}
.btn-hard::before{
  content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.65),transparent);
  transform:skewX(-18deg);transition:left .55s ease;
}
.btn-hard:hover::before{left:140%;}
.btn-hard:hover{transform:translate(-3px,-3px);color:#fff;}
.btn-ghost{
  background:transparent;color:var(--accent);
  border:4px solid var(--accent);box-shadow:8px 8px 0 0 var(--accent);
}
.btn-ghost:hover{color:var(--ink);background:var(--accent);}

/* section head */
.section{padding:4.5rem 0;}
.sec-kicker{
  display:inline-block;font-weight:900;font-size:.8rem;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--main);border-left:6px solid var(--main);
  padding-left:.6rem;margin-bottom:.7rem;
}
.sec-title{
  font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.05;
  margin-bottom:.4rem;
}
.sec-sub{color:var(--ink-soft);max-width:660px;margin-bottom:2.4rem;}

/* rank board */
.rank-wrap{
  border:5px solid var(--line);background:var(--card);
  box-shadow:var(--shadow);
}
.rank-item{
  display:flex;align-items:center;gap:1.1rem;
  padding:1rem 1.3rem;border-bottom:3px solid var(--line);
  cursor:pointer;transition:background .15s ease;
}
.rank-item:last-child{border-bottom:none;}
.rank-item:hover{background:#ffe9f1;}
.rank-num{
  font-weight:900;font-size:1.7rem;min-width:52px;text-align:center;
  color:var(--main);-webkit-text-stroke:1px var(--line);
}
.rank-item:nth-child(1) .rank-num,
.rank-item:nth-child(2) .rank-num,
.rank-item:nth-child(3) .rank-num{color:var(--accent);}
.rank-thumb{
  width:64px;height:88px;object-fit:cover;
  border:3px solid var(--line);flex-shrink:0;
}
.rank-meta h4{font-size:1.05rem;margin:0 0 .15rem;font-weight:800;}
.rank-meta span{font-size:.85rem;color:var(--ink-soft);}
.rank-score{
  margin-left:auto;font-weight:900;font-size:1.2rem;color:var(--main);
  white-space:nowrap;
}

/* poster wall */
.poster-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr));
  gap:1.5rem;
}
.pcard{
  background:var(--card);border:4px solid var(--line);
  box-shadow:var(--shadow-sm);
  overflow:hidden;cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease;
  perspective:1200px;
}
.pcard:hover{transform:translate(-3px,-3px);box-shadow:var(--shadow);}
.flip-inner{
  position:relative;width:100%;transition:transform .55s cubic-bezier(.4,.1,.2,1);
  transform-style:preserve-3d;
}
.pcard.flipped .flip-inner{transform:rotateY(180deg);}
.flip-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;}
.flip-front{}
.flip-back{
  position:absolute;inset:0;transform:rotateY(180deg);
  background:var(--ink);color:#fff;padding:1rem;
  display:flex;flex-direction:column;overflow-y:auto;
  border:0;
}
.flip-back h4{color:var(--accent);font-size:1rem;margin-bottom:.4rem;}
.flip-back p{font-size:.78rem;line-height:1.55;margin-bottom:.4rem;color:#ffe3ee;}
.flip-back .closeflip{
  position:absolute;top:.3rem;right:.4rem;background:var(--main);
  color:#fff;border:2px solid #fff;width:24px;height:24px;
  font-weight:900;line-height:1;font-size:.9rem;cursor:pointer;
}
.poster-in{
  position:relative;aspect-ratio:2/3;overflow:hidden;
  background:#2a1620;
}
.poster-in img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .4s ease,filter .4s ease;
}
.pcard:hover .poster-in img{transform:scale(1.07);filter:brightness(.85);}
.poster-shade{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(42,22,32,0) 40%,rgba(42,22,32,.9) 100%);
  pointer-events:none;
}
.play-float{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.7);
  width:56px;height:56px;border:4px solid #fff;
  background:rgba(244,114,182,.85);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;opacity:0;transition:opacity .25s ease,transform .25s ease;
  pointer-events:none;
}
.pcard:hover .play-float{opacity:1;transform:translate(-50%,-50%) scale(1);}
.poster-tag{
  position:absolute;top:.6rem;left:.6rem;
  background:var(--accent);color:var(--ink);font-weight:900;
  font-size:.72rem;padding:.15rem .5rem;border:2px solid var(--line);
}
.poster-txt{padding:.75rem .85rem 1rem;}
.poster-txt h3{
  font-size:.98rem;margin:0 0 .35rem;font-weight:800;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.poster-txt .pmeta{
  font-size:.78rem;color:var(--ink-soft);
  display:flex;justify-content:space-between;gap:.4rem;
}
.poster-txt .pscore{color:var(--main);font-weight:900;}

/* filter chips */
.chips{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:2rem;}
.chip{
  padding:.45rem 1.1rem;border:3px solid var(--line);background:var(--card);
  font-weight:700;font-size:.9rem;cursor:pointer;
  box-shadow:3px 3px 0 0 var(--line);transition:all .15s ease;
}
.chip.active,.chip:hover{background:var(--main);color:#fff;transform:translate(-2px,-2px);box-shadow:5px 5px 0 0 var(--line);}

/* classic section accent bg */
.classic{background:linear-gradient(180deg,#fff5f7,#ffe4ee);border-top:5px solid var(--line);border-bottom:5px solid var(--line);}

/* trailer strip */
.trailer-row{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;
}
.tcard{
  border:4px solid var(--line);background:var(--card);
  box-shadow:var(--shadow-sm);overflow:hidden;cursor:pointer;
  transition:transform .18s ease;
}
.tcard:hover{transform:translate(-3px,-3px);}
.tcard .timg{position:relative;aspect-ratio:16/9;overflow:hidden;background:#2a1620;}
.tcard .timg img{width:100%;height:100%;object-fit:cover;}
.tcard .timg .tbadge{
  position:absolute;top:.6rem;right:.6rem;background:var(--accent);
  color:var(--ink);font-weight:900;font-size:.72rem;padding:.15rem .5rem;
  border:2px solid var(--line);
}
.tcard .tbody{padding:.9rem 1rem 1.1rem;}
.tcard .tbody h3{font-size:1.05rem;margin-bottom:.3rem;}
.tcard .tbody p{font-size:.84rem;color:var(--ink-soft);margin:0;}

/* compare table */
.cmp-wrap{overflow-x:auto;border:5px solid var(--line);box-shadow:var(--shadow);background:var(--card);}
table.cmp{width:100%;border-collapse:collapse;min-width:640px;}
table.cmp th,table.cmp td{
  border:2px solid var(--line);padding:.9rem 1.1rem;
  font-size:.94rem;text-align:left;vertical-align:top;
}
table.cmp thead th{background:var(--main);color:#fff;font-weight:900;font-size:1rem;}
table.cmp tbody tr:nth-child(even){background:#fff0f5;}
table.cmp tbody th{background:#ffe0ec;font-weight:800;white-space:nowrap;}

/* ordered list */
.numlist{list-style:none;counter-reset:nl;padding:0;margin:0;}
.numlist li{
  counter-increment:nl;position:relative;
  border:4px solid var(--line);background:var(--card);
  box-shadow:var(--shadow-sm);padding:1.1rem 1.2rem 1.1rem 4.2rem;
  margin-bottom:1.1rem;
}
.numlist li::before{
  content:counter(nl,decimal-leading-zero);
  position:absolute;left:1rem;top:50%;transform:translateY(-50%);
  font-weight:900;font-size:1.5rem;color:var(--main);
}
.numlist li strong{display:block;font-weight:900;margin-bottom:.25rem;}
.numlist li span{font-size:.9rem;color:var(--ink-soft);}

/* picker widget */
.pick-box{
  border:5px solid var(--line);background:var(--card);
  box-shadow:var(--shadow);padding:2rem;
}
.pick-result{
  margin-top:1.5rem;border:4px dashed var(--line);padding:1.3rem;
  background:#fff0f5;min-height:96px;
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
}
.pick-result img{width:74px;height:104px;object-fit:cover;border:3px solid var(--line);}
.pick-result .ptxt h4{margin:0 0 .2rem;font-size:1.1rem;}
.pick-result .ptxt p{margin:0;font-size:.86rem;color:var(--ink-soft);}

/* faq */
.faq-item{border:4px solid var(--line);background:var(--card);box-shadow:var(--shadow-sm);margin-bottom:1rem;}
.faq-q{
  width:100%;text-align:left;background:none;border:none;
  padding:1.05rem 1.2rem;font-weight:800;font-size:1rem;color:var(--ink);
  display:flex;justify-content:space-between;align-items:center;gap:1rem;cursor:pointer;
}
.faq-q i{color:var(--main);transition:transform .25s ease;}
.faq-item.open .faq-q i{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 1.2rem;color:var(--ink-soft);font-size:.92rem;}
.faq-item.open .faq-a{max-height:400px;padding-bottom:1.1rem;}

/* footer */
footer{background:var(--ink);color:#ffe3ee;padding:3.5rem 0 2rem;border-top:6px solid var(--line);}
footer h5{color:var(--accent);font-size:1rem;font-weight:900;margin-bottom:1rem;}
footer a{color:#ffd9e6;font-size:.9rem;display:inline-block;margin-bottom:.5rem;}
footer a:hover{color:var(--accent);}
.friend-links{border-top:3px dashed rgba(255,255,255,.25);margin-top:2rem;padding-top:1.6rem;}
.friend-links .fl-line{color:#ffd9e6;font-size:.88rem;line-height:1.9;}
.copyright{border-top:3px solid rgba(255,255,255,.2);margin-top:1.8rem;padding-top:1.4rem;font-size:.85rem;color:#e6b6c6;}

@media (max-width:767px){
  .hero{min-height:70vh;}
  .section{padding:3rem 0;}
  .poster-grid{grid-template-columns:repeat(2,1fr);gap:1rem;}
  .rank-thumb{width:52px;height:72px;}
  .rank-num{font-size:1.3rem;min-width:40px;}
  .pick-box{padding:1.2rem;}
  .brandmark{font-size:1.1rem;padding:.35rem .7rem;}
}

/* --- 子页面追加 --- */
.about-kicker {display:inline-block;background:var(--accent);color:var(--ink);border:3px solid var(--line);
    padding:4px 14px;border-radius:999px;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;
    box-shadow:var(--shadow-sm);margin-bottom:18px;}
.about-lead {font-size:1.05rem;line-height:1.9;color:var(--ink-soft);max-width:820px;}
.about-card {background:var(--card);border:3px solid var(--line);border-radius:18px;box-shadow:var(--shadow);
    padding:26px 24px;height:100%;}
.about-card h3 {font-size:1.12rem;font-weight:800;color:var(--ink);margin:0 0 12px;line-height:1.5;}
.about-card p {color:var(--ink-soft);font-size:.94rem;line-height:1.85;margin:0;}
.about-card .ic {width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
    background:var(--main);color:#fff;border:3px solid var(--line);box-shadow:var(--shadow-sm);margin-bottom:14px;font-size:1.1rem;}
.num-list {list-style:none;padding:0;margin:0;counter-reset:n;}
.num-list li {position:relative;padding:14px 0 14px 56px;border-bottom:2px dashed rgba(74,37,48,.18);
    color:var(--ink-soft);font-size:.95rem;line-height:1.8;}
.num-list li:last-child {border-bottom:none;}
.num-list li::before {counter-increment:n;content:counter(n,decimal-leading-zero);position:absolute;left:0;top:12px;
    width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;
    background:var(--accent);color:var(--ink);border:3px solid var(--line);font-weight:900;font-size:.85rem;}
.num-list li b {color:var(--ink);font-weight:800;}
.fact-row {display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;}
.fact {flex:1 1 150px;background:var(--card);border:3px solid var(--line);border-radius:14px;
    box-shadow:var(--shadow-sm);padding:16px 18px;text-align:center;}
.fact .v {font-size:1.5rem;font-weight:900;color:var(--main);line-height:1.2;}
.fact .k {font-size:.8rem;color:var(--ink-soft);font-weight:700;letter-spacing:.04em;margin-top:4px;}
.about-note {background:var(--card);border-left:8px solid var(--main);border-radius:0 14px 14px 0;
    border-top:3px solid var(--line);border-right:3px solid var(--line);border-bottom:3px solid var(--line);
    box-shadow:var(--shadow-sm);padding:20px 24px;color:var(--ink-soft);font-size:.94rem;line-height:1.85;}
.about-note b {color:var(--ink);}

/* --- 子页面追加 --- */
.brandmark span { margin-right:.35rem; }
.navlink.active {
    background:var(--accent);
    border-color:var(--line);
    box-shadow:3px 3px 0 0 var(--line);
  }
.page-hero {
    padding:3.2rem 0 2.2rem;
    position:relative;
  }
.page-hero h1 {
    font-weight:900;
    font-size:clamp(1.8rem,4.4vw,2.9rem);
    line-height:1.22;
    letter-spacing:-0.02em;
    margin-bottom:.9rem;
  }
.page-hero h1 em {
    font-style:normal;
    background:linear-gradient(transparent 62%, var(--main) 62%);
    padding:0 .12em;
  }
.page-hero p {
    color:var(--ink-soft);
    max-width:46rem;
    font-size:1.02rem;
    line-height:1.8;
    margin:0;
  }
.doc-card {
    background:var(--card);
    border:3px solid var(--line);
    border-radius:1.1rem;
    box-shadow:var(--shadow);
    padding:1.6rem 1.5rem;
    margin-bottom:1.6rem;
  }
.doc-card h2 {
    font-weight:900;
    font-size:1.18rem;
    line-height:1.4;
    margin-bottom:.85rem;
    display:flex;
    align-items:flex-start;
    gap:.6rem;
  }
.doc-card h2 .num {
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:1.9rem;
    height:1.9rem;
    background:var(--main);
    color:#fff;
    border:2px solid var(--line);
    border-radius:.5rem;
    font-size:.9rem;
    font-weight:900;
    box-shadow:2px 2px 0 0 var(--line);
  }
.doc-card p {
    color:var(--ink-soft);
    font-size:.95rem;
    line-height:1.85;
    margin-bottom:.8rem;
  }
.doc-card p:last-child { margin-bottom:0; }
.doc-card ul {
    margin:0 0 .8rem;
    padding-left:0;
    list-style:none;
  }
.doc-card ul li {
    position:relative;
    padding-left:1.5rem;
    color:var(--ink-soft);
    font-size:.95rem;
    line-height:1.85;
    margin-bottom:.45rem;
  }
.doc-card ul li::before {
    content:"\f061";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    left:0;
    top:.12rem;
    font-size:.72rem;
    color:var(--main);
  }
.doc-card strong { color:var(--ink); font-weight:800; }
.doc-card a {
    color:var(--ink);
    font-weight:800;
    text-decoration:underline;
    text-decoration-thickness:2px;
    text-decoration-color:var(--accent);
    text-underline-offset:3px;
  }
.doc-card a:hover { color:var(--main); }
.notice-strip {
    background:var(--accent);
    border:3px solid var(--line);
    border-radius:1rem;
    box-shadow:var(--shadow-sm);
    padding:1rem 1.2rem;
    font-size:.92rem;
    font-weight:700;
    line-height:1.75;
    color:var(--ink);
    margin-bottom:1.6rem;
    display:flex;
    gap:.8rem;
    align-items:flex-start;
  }
.notice-strip i { margin-top:.2rem; }
.mini-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:1rem;
    margin-top:.4rem;
  }
.mini-box {
    background:var(--bg);
    border:2px solid var(--line);
    border-radius:.85rem;
    padding:.9rem 1rem;
  }
.mini-box h3 {
    font-size:.92rem;
    font-weight:900;
    margin-bottom:.35rem;
  }
.mini-box p {
    font-size:.85rem;
    line-height:1.7;
    margin:0;
    color:var(--ink-soft);
  }
.site-footer {
    border-top:3px solid var(--line);
    background:var(--card);
    padding:2.2rem 0 2rem;
    margin-top:1rem;
  }
.site-footer p {
    color:var(--ink-soft);
    font-size:.88rem;
    line-height:1.8;
    margin-bottom:.5rem;
  }
.site-footer a {
    color:var(--ink);
    font-weight:700;
    text-decoration:none;
  }
.site-footer a:hover { color:var(--main); text-decoration:underline; }
.footer-links {
    display:flex;
    flex-wrap:wrap;
    gap:.4rem 1.1rem;
    margin-bottom:.9rem;
  }
.footer-brand {
    font-weight:900;
    font-size:1.05rem;
    color:var(--ink);
    margin-bottom:.7rem;
  }

/* --- 子页面追加 --- */
.guide-hero {
    padding:56px 0 40px;
    border-bottom:3px solid var(--line);
    background:
      radial-gradient(circle at 12% 20%, rgba(244,114,182,.22), transparent 45%),
      radial-gradient(circle at 88% 70%, rgba(251,191,36,.22), transparent 45%),
      var(--bg);
  }
.guide-hero h1 {
    font-weight:900;
    font-size:clamp(1.9rem,4.4vw,3.1rem);
    line-height:1.18;
    letter-spacing:-.02em;
    margin:14px 0 16px;
  }
.guide-hero h1 .hl {
    background:linear-gradient(transparent 62%, rgba(244,114,182,.55) 62%);
  }
.guide-hero p.lead-txt {
    color:var(--ink-soft);
    font-size:1.02rem;
    max-width:720px;
    margin:0;
  }
.guide-tag {
    display:inline-block;
    background:var(--accent);
    color:var(--ink);
    border:2px solid var(--line);
    box-shadow:var(--shadow-sm);
    padding:5px 14px;
    border-radius:999px;
    font-weight:800;
    font-size:.8rem;
    letter-spacing:.06em;
  }
.g-card {
    background:var(--card);
    border:3px solid var(--line);
    box-shadow:var(--shadow-sm);
    border-radius:14px;
    padding:24px 22px;
    height:100%;
  }
.g-card h3 {
    font-weight:800;
    font-size:1.08rem;
    margin-bottom:10px;
    display:flex;
    align-items:center;
    gap:9px;
  }
.g-card h3 i {
    color:var(--main);
  }
.g-card p {
    color:var(--ink-soft);
    font-size:.94rem;
    line-height:1.75;
    margin:0;
  }
.step-item {
    display:flex;
    gap:16px;
    background:var(--card);
    border:3px solid var(--line);
    box-shadow:var(--shadow-sm);
    border-radius:14px;
    padding:20px;
    margin-bottom:18px;
  }
.step-num {
    flex:0 0 auto;
    width:44px;height:44px;
    display:flex;align-items:center;justify-content:center;
    background:var(--main);
    color:#fff;
    border:3px solid var(--line);
    border-radius:50%;
    font-weight:900;
    font-size:1.05rem;
  }
.step-item h3 {
    font-weight:800;
    font-size:1.05rem;
    margin:2px 0 8px;
  }
.step-item p {
    color:var(--ink-soft);
    font-size:.94rem;
    line-height:1.75;
    margin:0;
  }
.faq-q[aria-expanded="true"] i {transform:rotate(180deg);}
.tip-bar {
    background:var(--accent);
    border:3px solid var(--line);
    box-shadow:var(--shadow-sm);
    border-radius:14px;
    padding:18px 22px;
    font-weight:600;
    font-size:.95rem;
    line-height:1.7;
  }

/* --- 子页面追加 --- */
.rank-note-card {background:var(--card);border:2px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;padding:22px 22px 18px;height:100%;}
.rank-note-card h3 {font-size:1.08rem;font-weight:800;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.rank-note-card h3 i {color:var(--main);}
.rank-note-card p {color:var(--ink-soft);font-size:.94rem;line-height:1.8;margin:0;}
.rank-rule-list {list-style:none;padding:0;margin:0;}
.rank-rule-list li {display:flex;gap:12px;padding:12px 0;border-bottom:1px dashed rgba(74,37,48,.18);color:var(--ink-soft);font-size:.95rem;line-height:1.75;}
.rank-rule-list li:last-child {border-bottom:0;}
.rank-rule-list li .rn {flex:0 0 30px;height:30px;border-radius:8px;background:var(--accent);color:var(--ink);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.9rem;border:2px solid var(--line);}
.rank-rule-list li b {color:var(--ink);}
.score-band {display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.score-chip {background:rgba(244,114,182,.14);border:2px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:700;color:var(--ink);}
.rank-faq {border:2px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm);overflow:hidden;}
.rank-faq details {border-bottom:2px solid rgba(74,37,48,.14);}
.rank-faq details:last-child {border-bottom:0;}
.rank-faq summary {cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;color:var(--ink);font-size:.98rem;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.rank-faq summary::-webkit-details-marker {display:none;}
.rank-faq summary::after {content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;font-size:.8rem;color:var(--main);transition:transform .2s;}
.rank-faq details[open] summary::after {transform:rotate(180deg);}
.rank-faq .faq-body {padding:0 20px 18px;color:var(--ink-soft);font-size:.93rem;line-height:1.85;}
.rank-table {width:100%;border-collapse:separate;border-spacing:0;border:2px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);box-shadow:var(--shadow-sm);}
.rank-table th {background:var(--main);color:#fff;font-size:.88rem;font-weight:800;padding:12px 14px;text-align:left;border-bottom:2px solid var(--line);}
.rank-table td {padding:12px 14px;font-size:.9rem;color:var(--ink-soft);border-bottom:1px solid rgba(74,37,48,.14);}
.rank-table tr:last-child td {border-bottom:0;}
.rank-table td b {color:var(--ink);}
.rank-table {display:block;overflow-x:auto;white-space:nowrap;}