/* 登陆页样式 */
.wrap{max-width:1180px;margin:0 auto;padding:30px 22px 60px;}
.hero{padding:46px 0 30px;text-align:center;}
.hero .eyebrow{font-size:14px;letter-spacing:.5em;color:var(--red-d);font-weight:800;margin-bottom:14px;}
.hero .h1{font-size:clamp(34px,7vw,76px);font-weight:900;letter-spacing:.04em;
  background:linear-gradient(180deg,#c0392b,#8e2a20);-webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 2px 0 rgba(231,179,179,.35);}
.hero .lead{margin:18px auto 0;text-align:center;}
.hero-actions{margin-top:26px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.sec{margin-top:46px;}
.sec-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;}
.sec-head h2{font-size:23px;font-weight:900;letter-spacing:.02em;}

.grid10{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
@media(max-width:900px){.grid10{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.grid10{grid-template-columns:repeat(2,1fr);}}

.gcard{position:relative;display:block;padding:20px 16px 18px;border-radius:16px;overflow:hidden;
  background:var(--paper);box-shadow:var(--shadow);border:1px solid rgba(110,99,84,.2);
  transition:transform .15s,box-shadow .15s,border-color .15s;}
.gcard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c);}
.gcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(30,25,15,.26);border-color:var(--c);}
.gcard .gnum{font-size:13px;font-weight:800;letter-spacing:.18em;color:var(--ink-soft);}
.gcard .gname{font-size:21px;font-weight:900;margin:4px 0 14px;}
.gcard .gmeta{font-size:12.5px;color:var(--ink-soft);line-height:1.7;border-top:1px dashed rgba(110,99,84,.3);padding-top:10px;}
.gcard .gmeta b{color:var(--ink);}
.gcard .gstar{position:absolute;right:12px;top:12px;width:26px;height:26px;border-radius:50%;
  background:var(--c);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:13px;
  box-shadow:0 3px 8px rgba(0,0,0,.25);}
.gcard .online{position:absolute;right:12px;top:46px;font-size:11px;font-weight:700;color:var(--green);opacity:0;transition:.2s;}
.gcard.on .online{opacity:1;}

.npc-cta{display:flex;justify-content:center;}
.npc-cta .card{text-align:center;max-width:520px;width:100%;}
.npc-icon{width:64px;height:64px;margin:0 auto 12px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  font-size:34px;background:linear-gradient(180deg,var(--red),var(--red-d));color:#fff;box-shadow:0 6px 18px rgba(192,57,43,.4);}
.npc-cta h3{font-size:22px;font-weight:900;margin-bottom:10px;}
.npc-cta .btn{margin-top:16px;}

.test-zone{background:rgba(224,165,38,.07);border:1px dashed rgba(224,165,38,.4);border-radius:18px;padding:24px;}
.test-row{display:flex;gap:12px;flex-wrap:wrap;}
.test-row .btn{box-shadow:0 4px 0 #8e2a20,var(--shadow);}

.foot{margin-top:54px;text-align:center;font-size:13px;color:var(--ink-soft);letter-spacing:.06em;}

.scanline{position:fixed;left:0;right:0;top:0;height:140px;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(192,57,43,.12),transparent);
  animation:scanMove 7s linear infinite;}
@keyframes scanMove{0%{transform:translateY(-140px)}100%{transform:translateY(100vh)}}
