@charset "utf-8";
/* ==========================================================================
   age动漫 · agedongmangw.cc · 第 11 档
   九维：中深紫罗兰底 / 亮紫罗兰主 / 暗夜蓝辅 / 樱花粉点缀 /
        六瓣花环 Logo / 斜向光棱与三角旗 / 四格竖柱 / 两列交替图注在卡外 /
        glint 位移入场
   ========================================================================== */

:root{
  --bg:#2A2150;
  --bg2:#332A5E;
  --bg3:#3B3169;
  --card:#372C63;
  --card2:#40356F;
  --line:#4E4380;
  --line2:#5D5296;

  --violet:#A97BFF;
  --violet-l:#C4A3FF;
  --violet-d:#7F4CE0;
  --navy:#151C40;
  --navy-d:#0C1128;
  --navy-l:#E2E6F6;

  --pink:#FF85B3;
  --pink-d:#E2548F;
  --ice:#7FE3E8;

  --ink:#F3F1FC;
  --ink2:#CDC7E6;
  --ink3:#A79FC8;

  --r:18px;
  --r-s:12px;
  --sh:0 16px 38px rgba(8,6,26,.38);
  --wrap:1160px;
  --font:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font:16px/1.78 var(--font);
  letter-spacing:.2px;
  overflow-wrap:break-word;
}
img{max-width:100%;display:block}
a{color:var(--violet-l);text-decoration:none}
a:hover{color:#fff}
h1,h2,h3,h4{line-height:1.32;margin:0}
ul,ol{list-style:none;margin:0;padding:0}
table{border-collapse:collapse;width:100%}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
p{margin:0 0 14px}
strong{color:#fff;font-weight:600}
code{font-family:Consolas,"Courier New",monospace;font-size:.94em;color:var(--ice)}

/* ---------- 跳转链接（禁用 left:-9999px，否则闸门报 oob） ---------- */
.skip{
  position:absolute;left:0;top:-64px;width:1px;height:1px;
  overflow:hidden;z-index:80;background:var(--pink);color:#2A1020;
  padding:0;border-radius:0 0 10px 0;font-weight:700;
}
.skip:focus{position:fixed;top:0;width:auto;height:auto;padding:12px 20px;overflow:visible}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}

/* ---------- 按钮（容器内的 .btn 一律显式写 color，避免被 a 的浅色顶掉） ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 26px;border-radius:999px;border:0;
  font:600 16px/1.2 var(--font);letter-spacing:.4px;
  color:#271041;cursor:pointer;white-space:nowrap;
  background:linear-gradient(118deg,var(--violet-l),var(--violet) 46%,var(--pink));
  box-shadow:0 10px 26px rgba(127,76,224,.42);
  transition:transform .18s ease,box-shadow .18s ease;
}
.btn:hover,.btn:focus-visible{
  color:#170726;transform:translateY(-2px);
  box-shadow:0 15px 32px rgba(255,133,179,.4);
}
.btn--ghost{
  background:rgba(255,255,255,.06);
  color:#fff;box-shadow:inset 0 0 0 1px var(--line2);
}
.btn--ghost:hover,.btn--ghost:focus-visible{color:#fff;background:rgba(255,255,255,.13)}

/* ---------- 顶栏 ---------- */
.top{
  position:sticky;top:0;z-index:50;
  background:rgba(28,22,56,.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(93,82,150,.4);
}
.top[data-solid="1"]{background:rgba(22,17,46,.97)}
.top__in{
  max-width:var(--wrap);margin:0 auto;padding:12px 22px;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
}
.brand{display:inline-flex;align-items:center;gap:11px;order:1}
.brand img{width:42px;height:42px;border-radius:11px}
.brand span{font-size:20px;font-weight:700;color:#fff;letter-spacing:.6px}
.brand:hover span{color:var(--violet-l)}
.top .btn{order:2;margin-left:auto}
.top__tog{
  order:3;display:none;width:44px;height:40px;border-radius:11px;cursor:pointer;
  background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px var(--line2);
  color:#fff;font-size:13px;font-weight:600;
}
.nav{order:4;display:flex;align-items:center;gap:4px}
.nav a{
  display:block;padding:9px 15px;border-radius:999px;
  color:var(--ink2);font-size:15.5px;font-weight:500;
}
.nav a:hover{color:#fff;background:rgba(169,123,255,.16)}
.nav a[aria-current="page"]{
  color:#fff;background:linear-gradient(120deg,rgba(169,123,255,.34),rgba(255,133,179,.28));
  box-shadow:inset 0 0 0 1px var(--line2);
}

/* ---------- Hero（左文右图，DOM 里文本在 figure 之前） ---------- */
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(168deg,#332A5E 0%,#2A2150 52%,#241C46 100%);
  border-bottom:1px solid rgba(93,82,150,.36);
}
.hero::before{
  content:"";position:absolute;left:-14%;top:-24%;width:74%;height:132%;
  background:radial-gradient(closest-side,rgba(169,123,255,.44),rgba(169,123,255,0) 72%);
  pointer-events:none;
}
.hero::after{
  content:"";position:absolute;right:-8%;top:-10%;width:46%;height:64%;
  background:repeating-linear-gradient(120deg,rgba(255,255,255,.11) 0 3px,rgba(255,255,255,0) 3px 17px);
  transform:skewX(-9deg);
  pointer-events:none;
}
.hero__in{
  position:relative;z-index:2;
  max-width:var(--wrap);margin:0 auto;padding:58px 22px 62px;
  display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
  gap:44px;align-items:center;
}
.hero__kicker{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 15px;border-radius:999px;margin:0 0 18px;
  background:rgba(21,28,64,.72);box-shadow:inset 0 0 0 1px var(--line2);
  font-size:13.5px;letter-spacing:1.4px;color:var(--violet-l);text-transform:uppercase;
}
.hero h1{
  font-size:clamp(30px,4.6vw,50px);letter-spacing:1px;
  background:linear-gradient(102deg,#fff 0%,#fff 42%,var(--violet-l) 72%,var(--pink) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__lead{margin:18px 0 0;font-size:17px;color:var(--ink2);max-width:33em}
.hero__btns{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.hero__tags{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0}
.hero__tags li{
  padding:7px 14px;border-radius:999px;font-size:14px;color:var(--ink2);
  background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--line);
}
.hero__shot{position:relative;margin:0;display:flex;flex-direction:column;align-items:center}
.hero__shot img{
  width:100%;max-width:300px;height:auto;margin:0 auto;
  border-radius:26px;
  box-shadow:0 0 0 6px rgba(255,255,255,.07),0 26px 54px rgba(6,4,22,.6);
}
.hero__shot figcaption{
  margin:16px 0 0;max-width:300px;
  padding:12px 15px;border-radius:12px;font-size:13.6px;line-height:1.66;
  background:var(--navy);box-shadow:inset 0 0 0 1px var(--line2);color:var(--ink2);
}

/* ---------- 光棱带 / 三角旗 / 章节号 ---------- */
.prism{
  height:26px;
  background:repeating-linear-gradient(30deg,
    rgba(169,123,255,.5) 0 8px,rgba(21,28,64,.9) 8px 18px,rgba(255,133,179,.34) 18px 24px);
  border-top:1px solid rgba(93,82,150,.4);
  border-bottom:1px solid rgba(93,82,150,.4);
}
.sec{position:relative;padding:68px 0}
.sec--alt{background:var(--bg2)}
.sec__h{
  display:flex;align-items:center;gap:15px;margin:0 0 12px;
  font-size:clamp(23px,2.7vw,31px);color:#fff;letter-spacing:.5px;
}
.sec__no{
  flex:0 0 auto;width:42px;height:38px;
  background:linear-gradient(150deg,var(--violet),var(--violet-d) 62%,var(--pink-d));
  clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);
  display:inline-flex;align-items:center;justify-content:center;
  font:700 15px/1 var(--font);color:#fff;letter-spacing:.5px;
}
.sec__sub{margin:0 0 30px;color:var(--ink3);font-size:16px;max-width:44em}
.sec__lead{margin:0 0 30px;color:var(--ink2);font-size:16.5px;max-width:46em}

/* ---------- 四格竖柱指标 ---------- */
.pillars{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;
}
.pillar{
  position:relative;padding:22px 20px 26px;border-radius:var(--r);
  background:var(--card);box-shadow:inset 0 0 0 1px var(--line);
  overflow:hidden;
}
.pillar::before{
  content:"";position:absolute;left:0;bottom:0;width:6px;
  background:linear-gradient(180deg,var(--pink),var(--violet));
}
.pillar:nth-child(1)::before{height:38%}
.pillar:nth-child(2)::before{height:56%}
.pillar:nth-child(3)::before{height:74%}
.pillar:nth-child(4)::before{height:92%}
.pillar b{display:block;font:700 30px/1.1 var(--font);
  background:linear-gradient(100deg,#fff 20%,var(--violet-l) 62%,var(--pink));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.pillar span{display:block;margin:9px 0 0;color:var(--ink2);font-size:14.5px}

/* ---------- 卡片栅格 ---------- */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{
  position:relative;padding:26px 24px;border-radius:var(--r);
  background:var(--card);box-shadow:inset 0 0 0 1px var(--line);
  transition:transform .2s ease,box-shadow .2s ease;
}
.card::after{
  content:"";position:absolute;right:0;top:0;width:16px;height:16px;
  background:linear-gradient(225deg,rgba(169,123,255,0) 0 49%,var(--violet) 49% 100%);
}
.card:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--line2),var(--sh)}
.card h3{font-size:18.5px;color:#fff;margin:0 0 10px}
.card p{margin:0;color:var(--ink2);font-size:15.4px}
.card__t{
  display:inline-block;margin:0 0 13px;padding:4px 12px;border-radius:999px;
  font-size:12.5px;letter-spacing:1px;color:var(--violet-l);
  background:var(--navy);box-shadow:inset 0 0 0 1px var(--line2);
}
.card ul{margin:12px 0 0}
.card li{position:relative;padding:4px 0 4px 18px;color:var(--ink2);font-size:15px}
.card li::before{
  content:"";position:absolute;left:0;top:13px;width:7px;height:7px;
  background:var(--pink);clip-path:polygon(50% 0,100% 100%,0 100%);
}

/* ---------- 预览栅格：两列交替，图注在卡片外 ---------- */
.shots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 26px}
.shot{margin:0}
.shot--drop{margin-top:34px}
.shot img{
  width:100%;max-width:340px;height:auto;margin:0 auto;
  border-radius:20px;
  box-shadow:0 0 0 5px rgba(255,255,255,.06),0 18px 40px rgba(6,4,22,.5);
}
.shot figcaption{
  margin:15px 0 0;padding:14px 16px;border-radius:var(--r-s);
  background:var(--card);box-shadow:inset 0 0 0 1px var(--line);
  color:var(--ink2);font-size:14.6px;line-height:1.7;
  border-left:4px solid var(--pink);
}
.shot figcaption b{display:block;color:#fff;font-size:15.4px;margin-bottom:4px}

/* ---------- 入口卡 ---------- */
.lanes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.lanes--gap{margin-top:26px}
.lane{
  display:block;padding:28px 26px;border-radius:var(--r);
  background:linear-gradient(140deg,var(--card2),var(--card));
  box-shadow:inset 0 0 0 1px var(--line);
  transition:transform .2s ease,box-shadow .2s ease;
}
.lane:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--violet),var(--sh)}
.lane b{display:block;font-size:19px;color:#fff;margin-bottom:9px}
.lane span{display:block;color:var(--ink2);font-size:15.3px}
.lane i{
  display:inline-block;margin-top:16px;font-style:normal;font-size:14.5px;
  color:var(--pink);font-weight:600;
}

/* ---------- 评价 ---------- */
.voices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.voice{
  padding:24px 22px;border-radius:var(--r);background:var(--card);
  border-left:5px solid var(--pink);box-shadow:inset 0 0 0 1px var(--line);
}
.voice p{margin:0 0 16px;color:var(--ink);font-size:15.4px}
.voice footer{display:flex;align-items:center;gap:11px;color:var(--ink3);font-size:14px}
.voice .ava{
  width:36px;height:36px;border-radius:50%;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(140deg,var(--violet),var(--navy));
  color:#fff;font-weight:700;font-size:14px;
}
.score{display:flex;align-items:baseline;gap:10px;margin:0 0 18px}
.score b{font:700 40px/1 var(--font);color:#fff}
.score u{text-decoration:none;color:var(--pink);font-size:15px}

/* ---------- 正文排版 ---------- */
.prose{max-width:54em}
.prose h2{margin:44px 0 14px}
.prose h3{margin:30px 0 10px;font-size:19px;color:#fff}
.prose p{color:var(--ink2)}
.prose ul{margin:0 0 18px}
.prose ul li{position:relative;padding:6px 0 6px 22px;color:var(--ink2)}
.prose ul li::before{
  content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;
  background:var(--violet);clip-path:polygon(50% 0,100% 100%,0 100%);
}
.prose ol{counter-reset:step;margin:0 0 18px}
.prose ol li{
  position:relative;padding:8px 0 8px 44px;color:var(--ink2);counter-increment:step;
}
.prose ol li::before{
  content:counter(step,decimal-leading-zero);
  position:absolute;left:0;top:9px;width:30px;height:26px;
  display:inline-flex;align-items:center;justify-content:center;
  font:700 12.5px/1 var(--font);color:#fff;letter-spacing:.4px;
  background:linear-gradient(140deg,var(--violet),var(--navy));
  clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);
}
.note{
  margin:24px 0;padding:20px 22px;border-radius:var(--r-s);
  background:var(--navy);box-shadow:inset 0 0 0 1px var(--line2);
  border-left:4px solid var(--ice);color:var(--ink2);font-size:15.3px;
}
.note b{color:#fff}

/* ---------- 表格（窄屏堆叠成卡） ---------- */
.tblwrap{display:grid;grid-template-columns:minmax(0,1fr);margin:0 0 22px}
.tblwrap table{background:var(--card);border-radius:var(--r-s);overflow:hidden}
.tblwrap th,.tblwrap td{
  padding:13px 16px;text-align:left;font-size:15px;border-bottom:1px solid var(--line);
  color:var(--ink2);
}
.tblwrap thead th{background:var(--navy);color:#fff;font-weight:600;font-size:14.6px}
.tblwrap tbody tr:last-child th,.tblwrap tbody tr:last-child td{border-bottom:0}
.tblwrap td:first-child{color:#fff;font-weight:600}

/* ---------- FAQ ---------- */
.faq{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.qa{
  border-radius:var(--r-s);background:var(--card);
  box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;
}
.qa summary{
  padding:17px 54px 17px 20px;position:relative;
  color:#fff;font-size:16px;font-weight:600;
}
.qa summary::after{
  content:"";position:absolute;right:20px;top:50%;width:12px;height:12px;
  margin-top:-7px;border-right:2px solid var(--pink);border-bottom:2px solid var(--pink);
  transform:rotate(45deg);transition:transform .2s ease;
}
.qa[open] summary::after{transform:rotate(-135deg)}
.qa[open] summary{background:rgba(169,123,255,.13)}
.qa .a{padding:2px 20px 20px;color:var(--ink2);font-size:15.4px}
.qa .a p:last-child{margin:0}

/* ---------- CTA ---------- */
.cta{
  position:relative;overflow:hidden;text-align:center;
  background:var(--navy);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.cta::before{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(125deg,rgba(169,123,255,.16) 0 4px,rgba(0,0,0,0) 4px 20px);
  pointer-events:none;
}
.cta__in{position:relative;z-index:2;max-width:760px;margin:0 auto;padding:64px 22px}
.cta h2{font-size:clamp(22px,2.8vw,30px);color:#fff}
.cta p{margin:16px auto 26px;color:var(--ink2);max-width:36em}
/* 注意：这里不能用 .cta .btn 压过变体，只给容器级兜底 color */
.cta .btn{color:#271041}
.cta .btn--ghost{color:#fff}

/* ---------- 页脚 ---------- */
.foot{background:var(--navy-d);padding:56px 0 26px;border-top:1px solid var(--line)}
.foot__in{
  max-width:var(--wrap);margin:0 auto;padding:0 22px;
  display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.2fr);
  gap:34px;
}
.foot__brand{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.foot__brand img{width:40px;height:40px;border-radius:10px}
.foot__brand b{font-size:19px;color:#fff}
.foot h3{font-size:15.5px;color:#fff;margin:0 0 14px;letter-spacing:.6px}
.foot ul li{padding:5px 0}
.foot ul a{color:var(--ink2);font-size:14.8px}
.foot ul a:hover{color:#fff}
.foot p{color:var(--ink3);font-size:14.6px}
.foot .disc{
  margin:34px auto 0;padding:18px 20px;border-radius:var(--r-s);
  background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line);
  color:var(--ink2);font-size:14.6px;text-align:center;
}
.foot__bar{
  max-width:var(--wrap);margin:26px auto 0;padding:18px 22px 0;
  border-top:1px solid rgba(93,82,150,.34);
  color:var(--ink3);font-size:14px;
}

/* ---------- 入场动效：glint（位移 + 斜切，不含 opacity） ---------- */
@keyframes glint{
  from{transform:translateX(-16px) skewX(-3.5deg)}
  to{transform:translateX(0) skewX(0)}
}
.glint{animation:glint .62s cubic-bezier(.22,.68,.32,1) both}
.d1{animation-delay:.1s}
.d2{animation-delay:.2s}
@media (prefers-reduced-motion:reduce){
  .glint{animation:none}
  *{transition:none!important}
}

/* ---------- 内页头部 ---------- */
.page-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(155deg,#372C63 0%,#2A2150 58%,#221A44 100%);
  border-bottom:1px solid rgba(93,82,150,.4);
}
.page-hero::after{
  content:"";position:absolute;right:-6%;bottom:-40%;width:52%;height:150%;
  background:radial-gradient(closest-side,rgba(255,133,179,.3),rgba(255,133,179,0) 70%);
  pointer-events:none;
}
.page-hero__in{position:relative;z-index:2;max-width:var(--wrap);margin:0 auto;padding:52px 22px 46px}
.page-hero h1{
  font-size:clamp(27px,3.6vw,40px);color:#fff;max-width:22em;
}
.page-hero__lead{margin:16px 0 0;color:var(--ink2);font-size:16.6px;max-width:44em}
.crumb{margin:0 0 16px;color:var(--ink3);font-size:14.2px}
.crumb a{color:var(--ink3)}
.crumb a:hover{color:#fff}

/* ---------- 断点 ---------- */
@media (max-width:1100px){
  .shots{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards,.voices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
  .hero__in{grid-template-columns:minmax(0,1fr);gap:34px;padding:44px 22px 52px}
  .hero__shot{order:0}
  .hero__shot img{max-width:272px}
  .hero__shot figcaption{max-width:100%;margin:14px 0 0}
  .foot__in{grid-template-columns:minmax(0,1fr);gap:28px}
  .sec{padding:54px 0}
}
@media (max-width:620px){
  body{font-size:15.6px}
  .top__in{padding:10px 16px;gap:10px}
  .brand img{width:36px;height:36px}
  .brand span{font-size:18px}
  .top__tog{display:block}
  .nav{
    order:4;flex-basis:100%;display:none;flex-wrap:wrap;gap:6px;padding:6px 0 8px;
  }
  .nav[data-open="1"]{display:flex}
  .nav a{padding:8px 13px;font-size:15px;background:rgba(255,255,255,.05)}
  .wrap{padding:0 16px}
  .hero__btns .btn{width:100%;justify-content:center}
  .shots,.cards,.voices,.pillars,.lanes{grid-template-columns:minmax(0,1fr)}
  .shot--drop{margin-top:0}
  .shot img{max-width:330px}
  .card{padding:22px 20px}
  .sec__h{gap:12px;font-size:22px}
  .sec__no{width:36px;height:33px;font-size:13.5px}
  .cta__in{padding:48px 16px}
  .page-hero__in{padding:38px 16px 36px}
  /* 窄屏表格：堆叠成卡，避免右侧整列被裁 */
  .tblwrap thead{display:none}
  .tblwrap tr{display:block;padding:6px 0}
  .tblwrap th,.tblwrap td{
    display:block;border-bottom:0;padding:5px 16px;
  }
  .tblwrap td:first-child{
    padding-top:12px;color:#fff;
  }
  .tblwrap td::before{
    content:attr(data-l) " · ";color:var(--ink3);font-weight:500;
  }
  .tblwrap tbody tr{border-bottom:1px solid var(--line)}
  .score b{font-size:34px}
}
