@charset "utf-8";
/* 囧次元 · jcydmapp.cc · 国风动漫（宣纸底 + 墨黑 / 朱砂 / 黛青）
   渲染语言：朱丝栏与鱼尾题头 —— 每个区块左右各一道朱砂细界行，H2 居中、上方一枚墨黑鱼尾记号、下方一道向两侧渐隐的朱砂细线
   布局骨架：人气榜廊与三层热度带 —— Hero 左文右图 → 四格热度概览条 → 通栏人气榜廊 → 三格热度分层带 → 离线缓存专章 → 截图画廊 → 双列入口卡 → 三列评价 → 折叠问答 → 通栏 CTA
   动效机制：纯 CSS @keyframes inkIn（落墨归位），只挂首页 .fx
   图片：5 张真机截图 + 3 张同配色自绘稿，全部本地化 */

:root{
  --bg:#F4EFE3; --bg2:#EDE6D6; --card:#FFFCF5; --line:#D9CFB8;
  --ink:#1F1B16; --ink-d:#100E0A; --ink-l:#E7E1D4;
  --zhu:#A62B1C; --zhu-d:#7C1C11; --zhu-l:#F7E5E0;
  --dai:#2E4A52; --dai-d:#1E333A; --dai-l:#E2ECEE;
  --txt:#3D362B; --dim:#7C7262;
  --wrap:1180px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background-color:var(--bg);color:var(--txt);
  font:16px/1.8 "Microsoft YaHei","PingFang SC","Hiragino Sans GB","Source Han Sans SC","Noto Sans CJK SC",sans-serif;
  background-image:
    radial-gradient(circle at 86% -4%, rgba(166,43,28,.07), transparent 42%),
    radial-gradient(circle at 4% 8%, rgba(46,74,82,.06), transparent 38%);
  background-repeat:no-repeat;
}
h1,h2,h3,p,ol,ul,figure,blockquote,details{margin:0}
ol,ul{padding:0;list-style:none}
img{max-width:100%;height:auto;display:block;border:0}
a{color:var(--dai);text-decoration:none}
a:hover{color:var(--zhu)}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding-left:22px;padding-right:22px}

/* ── 入场动效：纯 CSS，与滚动位置无关 ── */
@keyframes inkIn{from{opacity:0;transform:translateY(10px) scale(.972)}to{opacity:1;transform:none}}
.fx{animation:inkIn .62s cubic-bezier(.22,.7,.3,1) both}
.fx.d1{animation-delay:.09s}
.fx.d2{animation-delay:.18s}
.fx.d3{animation-delay:.27s}

/* ── 顶栏 ── */
.top{position:sticky;top:0;z-index:60;background:rgba(244,239,227,.94);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top__in{display:flex;align-items:center;gap:18px;min-height:70px}
.brand{display:flex;align-items:center;gap:10px;flex:none}
.brand__logo{width:38px;height:38px;flex:none}
.brand__name{color:var(--ink);font-size:19px;font-weight:700;letter-spacing:.16em}
.brand__sub{display:block;color:var(--dim);font-size:11px;letter-spacing:.18em}
.nav{display:flex;flex-wrap:wrap;gap:4px;margin-left:auto}
.nav a{color:var(--txt);font-size:15px;padding:9px 13px;border-radius:2px}
.nav a:hover{color:var(--ink);background:var(--bg2)}
.nav a[aria-current="page"]{color:#FFF6F1;background:var(--zhu)}
.btn{display:inline-block;border-radius:2px;font-weight:700;letter-spacing:.08em;white-space:nowrap;
  background:var(--zhu);color:#FFF6F1;border:1px solid var(--zhu-d)}
.btn:hover{background:var(--zhu-d);color:#FFFFFF}
.top .btn{padding:10px 20px;font-size:15px}
.top .btn:hover{color:#FFFFFF}

/* ── Hero ── */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);padding:40px 0 48px;
  background:linear-gradient(180deg,#F8F4E9,#F1EBDD)}
.hero::before{content:"";position:absolute;top:-90px;right:-60px;width:560px;height:400px;
  background:radial-gradient(circle,rgba(166,43,28,.13),transparent 68%);pointer-events:none}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;
  background:linear-gradient(180deg,var(--ink) 0 3px,transparent 3px 4px,var(--ink) 4px 5px,transparent 5px)}
.hero__grid{display:grid;grid-template-columns:1.12fr .88fr;gap:40px;align-items:center}
.kicker{display:inline-block;position:relative;padding-left:14px;color:var(--zhu);font-size:13px;letter-spacing:.24em}
.kicker::before{content:"";position:absolute;left:0;top:50%;width:2px;height:15px;margin-top:-8px;background:var(--dai)}
h1{color:var(--ink);font-size:46px;line-height:1.24;letter-spacing:.02em;margin:14px 0 0;font-weight:700}
.lead{margin-top:18px;font-size:16.5px;line-height:1.95;color:var(--txt)}
.hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:26px}
.hero__cta .btn{padding:13px 30px;font-size:16px}
.cta-note{color:var(--dim);font-size:13.5px}
.hero__shot{margin:0;display:flex;justify-content:center}
.hero__shot img{max-width:296px;width:100%;height:auto;
  box-shadow:0 0 0 1px var(--line),0 14px 34px -18px rgba(31,27,22,.45)}

/* ── 四格热度概览条 ── */
.tally{position:relative;margin-top:-1px;border-bottom:1px solid var(--line);background:var(--card)}
.tally__in{display:grid;grid-template-columns:repeat(4,1fr)}
.tally__cell{padding:22px 20px;border-left:1px solid var(--line);text-align:center}
.tally__cell:first-child{border-left:0}
.tally__n{display:block;color:var(--zhu);font-size:26px;font-weight:700;letter-spacing:.02em}
.tally__n i{font-style:normal;font-size:15px;margin-left:2px}
.tally__t{display:block;margin-top:4px;color:var(--dim);font-size:13.5px}

/* ── 区块骨架：朱丝栏 + 鱼尾题头 ── */
.sec{position:relative;padding:64px 0}
.sec__in{position:relative}
.sec__in::before,.sec__in::after{content:"";position:absolute;top:-20px;bottom:-20px;width:1px;
  background:linear-gradient(180deg,transparent,rgba(166,43,28,.32) 10%,rgba(166,43,28,.32) 90%,transparent)}
.sec__in::before{left:5px}
.sec__in::after{right:5px}
.sec--alt{background:var(--bg2)}
.sec h2{text-align:center;color:var(--ink);font-size:30px;line-height:1.4;letter-spacing:.02em}
.sec h2::before{content:"";display:block;width:28px;height:12px;margin:0 auto 14px;background:var(--ink);
  clip-path:polygon(0 0,50% 46%,100% 0,100% 42%,50% 100%,0 42%)}
.sec h2::after{content:"";display:block;width:190px;height:1px;margin:15px auto 0;
  background:linear-gradient(90deg,transparent,var(--zhu),transparent)}
.sub{margin:16px auto 0;max-width:760px;text-align:center;color:var(--dim);font-size:15px;line-height:1.8}
.sec__body{margin-top:34px}

/* ── 人气榜廊 ── */
.rank{border:1px solid var(--line);background:var(--card)}
.rank li{display:grid;grid-template-columns:64px 1fr 190px 92px;align-items:center;gap:16px;
  padding:16px 22px;border-top:1px solid var(--line)}
.rank li:first-child{border-top:0}
.rank li:hover{background:#FFF8EA}
.rank__no{color:var(--ink);font-size:26px;font-weight:700;letter-spacing:.04em}
.rank li:nth-child(n+4) .rank__no{color:#A79C88}
.rank__name{color:var(--ink);font-size:17px;font-weight:700}
.rank__desc{display:block;margin-top:3px;color:var(--dim);font-size:13.5px;font-weight:400;letter-spacing:0}
.rank__bar{height:8px;background:var(--bg2);border:1px solid var(--line)}
.rank__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--zhu),#C8523A)}
.rank__val{text-align:right;color:var(--zhu);font-size:14px;letter-spacing:.02em}

/* ── 三层热度带 ── */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tier{border:1px solid var(--line);background:var(--card);padding:24px 22px}
.tier__h{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:17px;font-weight:700}
.tier__h span{display:inline-block;padding:3px 10px;background:var(--zhu-l);color:var(--zhu-d);font-size:12px;letter-spacing:.1em;font-weight:400}
.tier__p{margin-top:10px;color:var(--dim);font-size:14px;min-height:52px}
.tier ul{margin-top:8px;border-top:1px solid var(--line);padding-top:12px}
.tier li{padding:7px 0}
.tier li a{color:var(--ink);font-size:15px}
.tier li a::before{content:"·";margin-right:8px;color:var(--zhu);font-weight:700}
.tier li a:hover{color:var(--zhu)}

/* ── 离线缓存专章 ── */
.offline{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ocard{border:1px solid var(--line);background:var(--card);padding:26px 22px}
.ocard__t{color:var(--ink);font-size:18px;font-weight:700}
.ocard__d{margin-top:12px;color:var(--txt);font-size:15px;line-height:1.85}
.ocard__l{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);color:var(--dim);font-size:13.5px}
.note{margin-top:22px;border-left:3px solid var(--zhu);background:var(--card);padding:18px 22px;
  border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  color:var(--txt);font-size:15px}

/* ── 截图画廊（真机与同配色示意稿混排） ── */
.shots{columns:3;column-gap:20px}
.shot{break-inside:avoid;margin:0 0 20px;border:1px solid var(--line);background:var(--card);padding:12px}
.shot img{width:100%;height:auto;box-shadow:0 0 0 1px var(--line)}
.shot figcaption{margin-top:10px;color:var(--dim);font-size:13.5px;line-height:1.7}
.shot figcaption b{display:block;margin-bottom:3px;color:var(--ink);font-size:14.5px}

/* ── 双列入口卡 ── */
.xentry{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.xcard{border:1px solid var(--line);background:var(--card);padding:26px 24px}
.xcard__k{color:var(--zhu);font-size:12.5px;letter-spacing:.22em}
.xcard__t{margin-top:8px;color:var(--ink);font-size:20px;font-weight:700}
.xcard__d{margin-top:12px;color:var(--txt);font-size:15px}
.xcard__a{display:inline-block;margin-top:16px;color:var(--dai);font-size:15px;border-bottom:1px solid rgba(46,74,82,.45)}
.xcard__a:hover{color:var(--zhu);border-bottom-color:rgba(166,43,28,.5)}

/* ── 评价 ── */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev{border:1px solid var(--line);background:var(--card);padding:24px 22px}
.rev__s{color:var(--zhu);font-size:15px;letter-spacing:.22em}
.rev__s span{opacity:.34}
.rev__t{margin-top:10px;color:var(--txt);font-size:15px;line-height:1.85}
.rev__w{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--dim);font-size:13.5px}

/* ── 折叠问答 ── */
.faq{border:1px solid var(--line);background:var(--card)}
.faq details{border-top:1px solid var(--line)}
.faq details:first-child{border-top:0}
.faq summary{cursor:pointer;padding:17px 52px 17px 22px;position:relative;color:var(--ink);font-size:16.5px;font-weight:700;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"＋";position:absolute;right:22px;top:16px;color:var(--zhu);font-size:17px}
.faq details[open] summary::after{content:"－"}
.faq p{padding:0 22px 18px;color:var(--txt);font-size:15px;line-height:1.9}

/* ── 通栏 CTA ── */
.cta{background:linear-gradient(180deg,#231E17,#15120D);color:#EDE6D8;text-align:center;padding:56px 0}
.cta h2{color:#FFF7EC;font-size:28px}
.cta .sub{color:#B9AF9C}
.cta .btn{margin-top:24px;padding:14px 36px;font-size:16.5px;letter-spacing:.12em}
.cta .btn:hover{color:#FFFFFF}

/* ── 正文长文（内页） ── */
.page{padding:52px 0 0}
.page__k{color:var(--zhu);font-size:13px;letter-spacing:.24em}
.page h1{font-size:38px;line-height:1.3;margin-top:12px}
.page__lead{margin-top:16px;max-width:860px;color:var(--txt);font-size:16.5px;line-height:1.95}
.prose{max-width:900px;margin-top:34px}
.prose h2{margin-top:44px;font-size:24px}
.prose h2::before{margin:0 0 12px}
.prose h2::after{width:150px;margin:12px 0 0}
.prose p{margin-top:14px;color:var(--txt);font-size:15.5px;line-height:1.95}
.prose ol{margin-top:16px;counter-reset:st}
.prose ol li{position:relative;padding:12px 0 12px 46px;border-top:1px solid var(--line);color:var(--txt);font-size:15.5px}
.prose ol li::before{counter-increment:st;content:counter(st,decimal-leading-zero);position:absolute;left:0;top:12px;
  color:var(--zhu);font-size:16px;font-weight:700}
.prose ul.tick{margin-top:16px;border-top:1px solid var(--line)}
.prose ul.tick li{padding:11px 0 11px 24px;border-bottom:1px solid var(--line);position:relative;font-size:15.5px}
.prose ul.tick li::before{content:"◆";position:absolute;left:0;top:11px;color:var(--dai);font-size:11px}
.tbl{width:100%;margin-top:18px;border:1px solid var(--line);font-size:14.5px}
.tbl th,.tbl td{padding:11px 14px;border:1px solid var(--line);text-align:left}
.tbl th{background:var(--bg2);color:var(--ink);font-weight:700}
.tblwrap{margin-top:18px;overflow-x:auto}
.pg__fig{margin:26px 0 0;max-width:340px;border:1px solid var(--line);background:var(--card);padding:12px}
.pg__fig img{width:100%;height:auto}
.pg__fig figcaption{margin-top:9px;color:var(--dim);font-size:13.5px}
.pairs{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:22px}
.pair{border:1px solid var(--line);background:var(--card);padding:22px}
.pair b{display:block;color:var(--ink);font-size:16.5px}
.pair p{margin-top:9px;color:var(--txt);font-size:15px;line-height:1.85}
.pair i{display:block;margin-top:11px;color:var(--zhu);font-size:13.5px;font-style:normal;letter-spacing:.04em}
.faq__grp{margin-top:34px}
.faq__grp h2{text-align:left;font-size:22px}
.faq__grp h2::before{margin:0 0 10px}
.faq__grp h2::after{width:130px;margin:11px 0 0}
.faq__grp h3{margin-top:26px;color:var(--ink);font-size:17px}
.faq__grp h3::before{content:"问";display:inline-block;margin-right:9px;padding:1px 6px;background:var(--zhu);color:#FFF6F1;font-size:12px;vertical-align:2px}
.faq__grp p{margin-top:9px;color:var(--txt);font-size:15.5px;line-height:1.9}

/* ── 页脚 ── */
.foot{background:#15120D;color:#A79E8C;padding:40px 0 30px;font-size:13.5px;line-height:1.9}
.foot__in{display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between;align-items:flex-start}
.foot__b{color:#E8E0CF;font-size:16px;font-weight:700;letter-spacing:.16em}
.foot__tag{margin-top:8px;max-width:340px;color:#8F8674;font-size:13.5px}
.foot__nav{display:flex;flex-wrap:wrap;gap:8px 18px}
.foot a{color:#C9C0AC}
.foot a:hover{color:#FFF7EC}
.foot__dis{margin-top:22px;padding-top:18px;border-top:1px solid #332C22;color:#8B8271}
.foot .btn{padding:10px 20px;font-size:14.5px;background:var(--zhu);color:#FFF6F1;border-color:var(--zhu-d)}
.foot .btn:hover{background:var(--zhu-d);color:#FFFFFF}
.totop{position:fixed;right:20px;bottom:24px;z-index:70;width:44px;height:44px;line-height:42px;text-align:center;
  border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:17px;cursor:pointer;
  opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.totop[data-show]{opacity:1;visibility:visible}

/* ── 双断点 ── */
@media (max-width:980px){
  .hero__grid{grid-template-columns:1fr;gap:30px}
  .hero__shot img{max-width:290px}
  h1{font-size:36px}
  .tally__in{grid-template-columns:repeat(2,1fr)}
  .tally__cell:nth-child(3){border-left:0}
  .tally__cell:nth-child(n+3){border-top:1px solid var(--line)}
  .tiers,.offline,.reviews{grid-template-columns:1fr}
  .shots{columns:2}
  .rank li{grid-template-columns:52px 1fr 132px 76px;gap:12px;padding:14px 16px}
  .sec h2{font-size:25px}
  .page h1{font-size:30px}
  .pairs{grid-template-columns:1fr}
}
@media (max-width:620px){
  .wrap{padding-left:16px;padding-right:16px}
  .top__in{gap:8px;min-height:0;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
  .brand{order:1}
  .brand__logo{width:34px;height:34px}
  .brand__name{font-size:17px;line-height:1.3}
  .brand__sub{font-size:10px;line-height:1.35;letter-spacing:.12em}
  .top .btn{order:2;margin-left:auto;padding:8px 15px;font-size:14px}
  .nav{order:3;flex:1 1 100%;margin-left:0;gap:2px}
  .nav a{flex:1 1 22%;text-align:center;font-size:13.5px;line-height:1.4;padding:7px 4px}
  .hero{padding:26px 0 34px}
  h1{font-size:29px}
  .lead{font-size:15.5px}
  .hero__shot img{max-width:270px}
  .sec{padding:44px 0}
  .sec__in::before,.sec__in::after{display:none}
  .sec h2{font-size:22px}
  .sub{font-size:14px}
  .tally__cell{padding:16px 10px}
  .tally__n{font-size:22px}
  .rank li{grid-template-columns:38px 1fr auto;grid-template-areas:"no name val" "bar bar bar";
    gap:7px 10px;padding:13px 14px}
  .rank__no{grid-area:no;font-size:20px}
  .rank__name{grid-area:name;font-size:15.5px}
  .rank__bar{grid-area:bar}
  .rank__val{grid-area:val;text-align:right;font-size:12.5px;align-self:start;padding-top:3px}
  .shots{columns:1}
  .cta h2{font-size:22px}
  .page h1{font-size:25px}
  .prose h2{font-size:20px}
  .faq summary{font-size:15.5px;padding:15px 46px 15px 16px}
  .faq p{padding:0 16px 16px;font-size:14.5px}
  .foot__in{gap:16px}
  .totop{right:12px;bottom:14px}
}
