:root{
  --main:#06b6d4;
  --accent:#ec4899;
  --bg:#0c0a1a;
  --text:#e0f2fe;
  --card:#151228;
  --card2:#1b1735;
  --line:rgba(224,242,254,.10);
  --muted:#8ea5bb;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Inter',"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:14px;
  line-height:1.6;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    radial-gradient(600px 300px at 12% 8%, rgba(6,182,212,.16), transparent 60%),
    radial-gradient(500px 320px at 88% 22%, rgba(236,72,153,.13), transparent 62%),
    radial-gradient(700px 400px at 50% 100%, rgba(6,182,212,.08), transparent 70%);
  pointer-events:none;
  z-index:0;
}
.content-layer{position:relative;z-index:1;}
h1,h2,h3,h4,.brand-font{
  font-family:'Inter',"PingFang SC","Microsoft YaHei",sans-serif;
  font-weight:800;
  letter-spacing:.4px;
}
a{text-decoration:none;color:inherit;}
::selection{background:var(--accent);color:#fff;}

/* scrollbar */
::-webkit-scrollbar{width:9px;height:9px;}
::-webkit-scrollbar-track{background:#0a0817;}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--main),var(--accent));border-radius:20px;}

/* ===== NAV ===== */
.top-nav{
  position:sticky;top:0;z-index:1040;
  background:rgba(12,10,26,.86);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:1480px;margin:0 auto;
  display:flex;align-items:center;gap:18px;
  padding:10px 18px;
}
.navbar-brand{
  font-size:20px;font-weight:900;white-space:nowrap;
  background:linear-gradient(92deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.brand-dot{
  display:inline-block;width:9px;height:9px;border-radius:50%;
  background:var(--main);box-shadow:0 0 10px var(--main);margin-right:7px;
  vertical-align:middle;
}
.nav-links{
  display:flex;align-items:center;gap:4px;flex:1;flex-wrap:wrap;
}
.nav-links a{
  padding:7px 13px;border-radius:999px;font-size:13px;font-weight:600;
  color:var(--muted);transition:.25s;white-space:nowrap;
}
.nav-links a:hover,.nav-links a.active{
  color:#fff;background:rgba(6,182,212,.16);
  box-shadow:inset 0 0 0 1px rgba(6,182,212,.4);
}
.nav-search{
  display:flex;align-items:center;gap:8px;
  background:var(--card);border:1px solid var(--line);
  border-radius:999px;padding:6px 8px 6px 15px;min-width:190px;
}
.nav-search input{
  background:transparent;border:none;outline:none;color:var(--text);
  font-size:12.5px;width:100%;
}
.nav-search input::placeholder{color:#5d7288;}
.nav-search i{color:var(--main);font-size:13px;}
.burger{
  display:none;background:transparent;border:1px solid var(--line);
  color:var(--text);border-radius:10px;width:40px;height:36px;font-size:16px;
}

/* ===== HERO ===== */
.hero{
  position:relative;overflow:hidden;
  padding:48px 18px 30px;
  max-width:1480px;margin:0 auto;
}
.hero-grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;
}
.hero-tag{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;font-weight:600;color:var(--main);
  border:1px solid rgba(6,182,212,.4);border-radius:999px;
  padding:5px 14px;background:rgba(6,182,212,.08);margin-bottom:16px;
}
.hero h1{
  font-size:clamp(30px,4.4vw,52px);line-height:1.18;margin:0 0 14px;
}
.grad-text{
  background:linear-gradient(100deg,var(--main) 4%,#7dd3fc 32%,var(--accent) 78%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.hero p{color:var(--muted);font-size:14.5px;max-width:560px;margin:0 0 22px;}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
.btn-pill{
  display:inline-flex;align-items:center;gap:9px;
  border-radius:999px;padding:11px 24px;font-weight:700;font-size:13.5px;
  border:1px solid transparent;transition:.28s;cursor:pointer;
}
.btn-main{background:linear-gradient(92deg,var(--main),#0891b2);color:#04141a;box-shadow:0 8px 26px rgba(6,182,212,.32);}
.btn-main:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(6,182,212,.44);color:#04141a;}
.btn-ghost{background:transparent;border-color:rgba(236,72,153,.5);color:var(--accent);}
.btn-ghost:hover{background:rgba(236,72,153,.14);transform:translateY(-2px);color:var(--accent);}
.hero-stats{display:flex;gap:26px;margin-top:26px;flex-wrap:wrap;}
.hero-stats div strong{display:block;font-size:22px;color:var(--text);}
.hero-stats div span{font-size:11.5px;color:var(--muted);letter-spacing:.5px;}

/* hero visual */
.hero-visual{position:relative;height:330px;}
.float-card{
  position:absolute;border-radius:18px;overflow:hidden;
  border:1px solid rgba(224,242,254,.14);
  box-shadow:0 18px 42px rgba(0,0,0,.6);
  background:linear-gradient(160deg,#1b1735,#0e0c20);
  animation:floaty 6s ease-in-out infinite;
}
.float-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.05);}
.fc1{width:150px;height:214px;left:6%;top:26px;animation-delay:0s;}
.fc2{width:132px;height:190px;left:34%;top:96px;animation-delay:.8s;}
.fc3{width:158px;height:224px;right:6%;top:14px;animation-delay:1.6s;}
.fc4{width:118px;height:170px;right:26%;bottom:6px;animation-delay:2.3s;}
@keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
.orb{
  position:absolute;border-radius:50%;filter:blur(50px);opacity:.5;z-index:-1;
}
.orb-a{width:220px;height:220px;background:var(--main);left:-40px;top:-30px;}
.orb-b{width:200px;height:200px;background:var(--accent);right:-30px;bottom:-20px;}

/* ===== SECTION HEAD ===== */
.section{max-width:1480px;margin:0 auto;padding:34px 18px;}
.sec-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;}
.sec-head h2{font-size:22px;margin:0;display:flex;align-items:center;gap:10px;}
.sec-head h2 i{color:var(--main);font-size:18px;}
.sec-head .line{flex:1;height:1px;background:linear-gradient(90deg,var(--line),transparent);min-width:30px;}
.sec-head .more{font-size:12.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 15px;transition:.25s;}
.sec-head .more:hover{color:var(--main);border-color:rgba(6,182,212,.5);}

/* ===== LAYOUT: SIDEBAR + GRID ===== */
.layout{
  max-width:1480px;margin:0 auto;padding:8px 18px 0;
  display:grid;grid-template-columns:222px 1fr;gap:22px;align-items:start;
}
.sidebar{
  position:sticky;top:76px;
  background:linear-gradient(180deg,var(--card),#100e22);
  border:1px solid var(--line);border-radius:20px;padding:16px 14px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}
.side-title{font-size:12px;letter-spacing:1.6px;color:var(--muted);font-weight:700;margin:0 0 10px 6px;text-transform:uppercase;}
.cat-list{list-style:none;padding:0;margin:0 0 16px;}
.cat-list li a{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 12px;border-radius:999px;font-size:13px;color:#b9cee0;
  transition:.22s;font-weight:500;
}
.cat-list li a:hover{background:rgba(6,182,212,.13);color:#fff;transform:translateX(3px);}
.cat-list li a .cnt{font-size:11px;color:#59708a;}
.cat-list li a.active{background:linear-gradient(92deg,rgba(6,182,212,.24),rgba(236,72,153,.16));color:#fff;box-shadow:inset 0 0 0 1px rgba(6,182,212,.35);}
.side-tip{
  border-radius:16px;padding:12px 13px;font-size:12px;color:var(--muted);
  background:rgba(236,72,153,.08);border:1px solid rgba(236,72,153,.22);
  line-height:1.65;
}
.side-tip b{color:var(--accent);}

/* ===== MOVIE GRID ===== */
.grid-wall{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(148px,1fr));
  gap:14px;
}
.mv-card{
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  overflow:hidden;cursor:pointer;transition:transform .3s,box-shadow .3s,border-color .3s;
  position:relative;opacity:0;transform:translateY(26px);
}
.mv-card.show{opacity:1;transform:translateY(0);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.3,1),box-shadow .3s,border-color .3s;}
.mv-card:hover{transform:translateY(-5px);border-color:rgba(6,182,212,.5);box-shadow:0 16px 36px rgba(6,182,212,.2);}
.poster{position:relative;aspect-ratio:2/3;overflow:hidden;background:linear-gradient(150deg,#1a1730,#0f0d20);}
.poster img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.86);transition:transform .55s,filter .5s;opacity:0;}
.poster img.loaded{opacity:1;transition:opacity .6s ease,transform .55s,filter .5s;}
.mv-card:hover .poster img{transform:scale(1.08);filter:brightness(1);}
.poster::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(12,10,26,0) 34%,rgba(12,10,26,.92) 100%);
}
.play-ov{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  z-index:3;opacity:0;transform:scale(.7);transition:.3s;
}
.mv-card:hover .play-ov{opacity:1;transform:scale(1);}
.play-ov span{
  width:48px;height:48px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(92deg,var(--main),var(--accent));
  color:#fff;font-size:17px;box-shadow:0 8px 24px rgba(236,72,153,.5);
}
.badge-ep{
  position:absolute;top:8px;right:8px;z-index:4;font-size:10.5px;font-weight:700;
  background:rgba(6,182,212,.9);color:#04141a;border-radius:999px;padding:2px 9px;
}
.badge-sc{
  position:absolute;top:8px;left:8px;z-index:4;font-size:11px;font-weight:800;
  background:rgba(12,10,26,.82);color:var(--accent);border-radius:999px;padding:2px 9px;
  border:1px solid rgba(236,72,153,.4);
}
.mv-meta{padding:9px 11px 11px;}
.mv-meta h3{
  font-size:13px;margin:0 0 5px;font-weight:700;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mv-meta p{
  margin:0;font-size:11px;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mv-tags{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap;}
.mv-tags span{
  font-size:10px;padding:1px 8px;border-radius:999px;
  background:rgba(6,182,212,.12);color:#7dd3fc;border:1px solid rgba(6,182,212,.22);
}

/* ===== CATEGORY ENTRY ===== */
.cat-entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:13px;}
.cat-box{
  border-radius:18px;padding:16px;border:1px solid var(--line);
  background:linear-gradient(150deg,var(--card2),#0f0d20);
  transition:.28s;position:relative;overflow:hidden;
}
.cat-box:hover{transform:translateY(-4px);border-color:rgba(236,72,153,.45);box-shadow:0 14px 30px rgba(236,72,153,.16);}
.cat-box i{font-size:19px;color:var(--main);margin-bottom:9px;display:block;}
.cat-box h4{font-size:14px;margin:0 0 5px;}
.cat-box p{margin:0;font-size:11.5px;color:var(--muted);line-height:1.55;}

/* ===== RANK LIST ===== */
.rank-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;}
.rank-col{background:linear-gradient(170deg,var(--card),#100e22);border:1px solid var(--line);border-radius:20px;padding:14px 15px;}
.rank-col h3{font-size:15px;margin:0 0 12px;display:flex;align-items:center;gap:8px;}
.rank-col h3 i{color:var(--accent);font-size:13px;}
.rank-item{
  display:flex;align-items:center;gap:11px;padding:7px 6px;border-radius:12px;
  transition:.22s;cursor:pointer;
}
.rank-item:hover{background:rgba(6,182,212,.09);}
.rank-no{
  width:23px;height:23px;flex:0 0 23px;border-radius:8px;font-size:11.5px;font-weight:800;
  display:flex;align-items:center;justify-content:center;background:#241f42;color:#8ea5bb;
}
.rank-item:nth-child(2) .rank-no{background:linear-gradient(92deg,var(--main),#0891b2);color:#04141a;}
.rank-item:nth-child(3) .rank-no{background:linear-gradient(92deg,var(--accent),#be185d);color:#fff;}
.rank-item:nth-child(4) .rank-no{background:linear-gradient(92deg,#f59e0b,#d97706);color:#231400;}
.rank-info{flex:1;min-width:0;}
.rank-info b{display:block;font-size:12.8px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-info span{font-size:10.8px;color:var(--muted);}
.rank-hot{font-size:11.5px;color:var(--accent);font-weight:700;}

/* ===== TABLE ===== */
.cmp-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.8px;
  background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;}
.cmp-table th{
  background:linear-gradient(92deg,rgba(6,182,212,.16),rgba(236,72,153,.12));
  color:#fff;font-weight:700;padding:12px 14px;text-align:left;font-size:12.5px;
}
.cmp-table td{padding:11px 14px;border-top:1px solid var(--line);color:#c3d7e8;}
.cmp-table tr:hover td{background:rgba(6,182,212,.05);}
.cmp-table td b{color:var(--main);}

/* ===== NUMBERED LIST ===== */
.step-list{list-style:none;counter-reset:st;padding:0;margin:0;display:grid;gap:12px;}
.step-list li{
  counter-increment:st;position:relative;padding:14px 16px 14px 56px;
  background:var(--card);border:1px solid var(--line);border-radius:16px;
}
.step-list li::before{
  content:counter(st,decimal-leading-zero);
  position:absolute;left:15px;top:14px;
  width:28px;height:28px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;color:#04141a;
  background:linear-gradient(92deg,var(--main),#22d3ee);
}
.step-list li h4{margin:0 0 4px;font-size:13.8px;}
.step-list li p{margin:0;font-size:12.4px;color:var(--muted);line-height:1.65;}

/* ===== TRAFFIC (专题) ===== */
.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.topic-card{
  border-radius:20px;padding:20px;border:1px solid var(--line);
  background:
    radial-gradient(340px 150px at 100% 0%, rgba(236,72,153,.16), transparent 66%),
    linear-gradient(160deg,var(--card2),#0f0d20);
  transition:.28s;
}
.topic-card:hover{transform:translateY(-4px);border-color:rgba(6,182,212,.45);}
.topic-card .tp-ico{font-size:22px;margin-bottom:10px;}
.topic-card h4{font-size:15.5px;margin:0 0 8px;color:#fff;}
.topic-card p{margin:0;font-size:12.5px;color:var(--muted);line-height:1.72;}
.topic-card .tp-list{margin:10px 0 0;padding-left:16px;font-size:12.2px;color:#9fb6cb;}
.topic-card .tp-list li{margin-bottom:3px;}

/* ===== PICK LIST (精选片单) ===== */
.pick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;}
.pick-item{
  display:flex;gap:13px;align-items:flex-start;
  background:var(--card);border:1px solid var(--line);border-radius:16px;padding:13px 14px;
  transition:.26s;
}
.pick-item:hover{border-color:rgba(236,72,153,.4);transform:translateX(3px);}
.pick-rank{
  flex:0 0 34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:14px;color:#04141a;
  background:linear-gradient(130deg,var(--main),#67e8f9);
}
.pick-item:nth-child(even) .pick-rank{background:linear-gradient(130deg,var(--accent),#f9a8d4);color:#2b0416;}
.pick-body h4{margin:0 0 3px;font-size:13.6px;}
.pick-body p{margin:0;font-size:12.2px;color:var(--muted);line-height:1.65;}

/* ===== FAQ ===== */
.faq-box{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:8px 6px;}
.faq-item{border-bottom:1px solid var(--line);padding:13px 14px;}
.faq-item:last-child{border-bottom:none;}
.faq-item h4{margin:0 0 6px;font-size:13.8px;color:#fff;display:flex;gap:9px;align-items:flex-start;}
.faq-item h4 i{color:var(--main);font-size:13px;margin-top:3px;}
.faq-item p{margin:0 0 0 22px;font-size:12.6px;color:var(--muted);line-height:1.72;}

/* ===== DRAWER 弹窗 ===== */
.drawer-mask{
  position:fixed;inset:0;background:rgba(5,4,14,.72);backdrop-filter:blur(5px);
  z-index:1200;opacity:0;visibility:hidden;transition:.3s;
}
.drawer-mask.open{opacity:1;visibility:visible;}
.drawer{
  position:fixed;left:0;right:0;bottom:0;z-index:1210;
  background:linear-gradient(170deg,#171433,#0d0b1d);
  border-top:1px solid rgba(6,182,212,.35);
  border-radius:24px 24px 0 0;
  padding:20px 20px 30px;
  transform:translateY(102%);transition:transform .38s cubic-bezier(.2,.8,.3,1);
  max-height:82vh;overflow-y:auto;
  box-shadow:0 -18px 50px rgba(0,0,0,.65);
}
.drawer.open{transform:translateY(0);}
.drawer-inner{max-width:980px;margin:0 auto;}
.drawer-close{
  position:absolute;top:14px;right:18px;width:34px;height:34px;border-radius:50%;
  border:1px solid var(--line);background:transparent;color:var(--muted);
  font-size:15px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.25s;
}
.drawer-close:hover{color:#fff;border-color:var(--accent);background:rgba(236,72,153,.15);}
.dw-head{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:16px;}
.dw-poster{width:118px;height:168px;border-radius:14px;overflow:hidden;flex:0 0 118px;border:1px solid var(--line);}
.dw-poster img{width:100%;height:100%;object-fit:cover;display:block;}
.dw-main{flex:1;min-width:230px;}
.dw-main h3{font-size:21px;margin:0 0 8px;}
.dw-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px;}
.dw-chips span{
  font-size:11px;padding:3px 11px;border-radius:999px;
  background:rgba(6,182,212,.13);color:#7dd3fc;border:1px solid rgba(6,182,212,.26);
}
.dw-chips span.hot{background:rgba(236,72,153,.15);color:#f9a8d4;border-color:rgba(236,72,153,.32);}
.dw-score{font-size:26px;font-weight:900;color:var(--accent);}
.dw-score small{font-size:12px;color:var(--muted);font-weight:500;}
.dw-sec h4{font-size:13.5px;margin:0 0 8px;color:var(--main);display:flex;align-items:center;gap:8px;}
.dw-sec p{margin:0 0 14px;font-size:13px;color:#b7cbdd;line-height:1.82;}
.dw-play{
  display:inline-flex;align-items:center;gap:10px;border-radius:999px;
  padding:11px 28px;font-weight:700;font-size:13.5px;color:#04141a;
  background:linear-gradient(92deg,var(--main),var(--accent));border:none;cursor:pointer;
}

/* ===== FOOTER ===== */
footer{
  margin-top:36px;border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(12,10,26,.4),#0a0817);
  padding:38px 18px 22px;position:relative;z-index:1;
}
.foot-inner{max-width:1480px;margin:0 auto;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:26px;}
.foot-brand{
  font-size:19px;font-weight:900;margin-bottom:11px;
  background:linear-gradient(92deg,var(--main),var(--accent));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.foot-grid p{font-size:12.4px;color:var(--muted);line-height:1.78;margin:0 0 10px;}
.foot-grid h5{font-size:13px;margin:0 0 12px;color:#fff;}
.foot-grid ul{list-style:none;padding:0;margin:0;}
.foot-grid ul li{margin-bottom:7px;}
.foot-grid ul li a{font-size:12.4px;color:var(--muted);transition:.22s;}
.foot-grid ul li a:hover{color:var(--main);padding-left:3px;}
.friend-box{
  margin-top:26px;padding:16px 18px;border-radius:16px;
  background:rgba(6,182,212,.05);border:1px solid var(--line);
}
.friend-box h5{font-size:12.5px;margin:0 0 10px;color:var(--main);display:flex;align-items:center;gap:8px;}
.friend-box .flinks{font-size:12.3px;color:var(--muted);line-height:2;}
.copy{
  margin-top:22px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  font-size:12px;color:#6d8399;
}

/* ===== RESPONSIVE ===== */
@media(max-width:1080px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-visual{height:270px;margin-top:16px;}
  .layout{grid-template-columns:1fr;}
  .sidebar{position:static;top:0;}
  .cat-list{display:flex;flex-wrap:wrap;gap:6px;}
  .cat-list li{flex:0 0 auto;}
  .cat-list li a{padding:6px 13px;}
  .cat-list li a .cnt{display:none;}
}
@media(max-width:820px){
  .nav-links{
    display:none;position:absolute;left:0;right:0;top:100%;
    background:rgba(12,10,26,.98);border-bottom:1px solid var(--line);
    padding:12px 16px 16px;flex-direction:column;align-items:stretch;gap:4px;
    backdrop-filter:blur(14px);
  }
  .nav-links.open{display:flex;}
  .nav-links a{padding:10px 14px;}
  .burger{display:block;}
  .nav-search{order:3;flex:1;min-width:0;}
  .foot-grid{grid-template-columns:1fr 1fr;gap:20px;}
}
@media(max-width:560px){
  .grid-wall{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;}
  .mv-meta h3{font-size:12px;}
  .hero{padding:30px 16px 20px;}
  .hero-stats{gap:18px;}
  .fc2,.fc4{display:none;}
  .foot-grid{grid-template-columns:1fr;}
  .dw-poster{width:96px;height:136px;flex:0 0 96px;}
}

/* --- 子页面追加 --- */
/* 本页专属：专题精选卡片与时间线 */
  .page-hero {padding:120px 0 40px;position:relative;overflow:hidden;}
.page-hero h1 {font-weight:800;font-size:clamp(1.8rem,4vw,3rem);line-height:1.2;letter-spacing:-.02em;}
.page-hero p.lead-txt {color:var(--muted);max-width:760px;margin-top:18px;font-size:1.02rem;line-height:1.9;}
.sec {padding:56px 0;}
.sec-head .sub {color:var(--muted);font-size:.9rem;}
.topic-thumb {position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--card2);}
.topic-thumb img {width:100%;height:100%;object-fit:cover;display:block;transition:.5s ease;}
.topic-card:hover .topic-thumb img {transform:scale(1.06);}
.topic-badge {position:absolute;top:12px;left:12px;background:rgba(12,10,26,.72);backdrop-filter:blur(6px);border:1px solid var(--line);color:var(--main);font-size:.72rem;font-weight:700;padding:5px 12px;border-radius:999px;letter-spacing:.04em;}
.topic-badge.pink {color:var(--accent);}
.topic-body {padding:20px 20px 22px;display:flex;flex-direction:column;flex:1;}
.topic-body h3 {font-size:1.06rem;font-weight:700;margin:0 0 10px;line-height:1.5;}
.topic-body p {color:var(--muted);font-size:.88rem;line-height:1.8;margin:0 0 16px;flex:1;}
.topic-meta {display:flex;align-items:center;gap:14px;color:var(--muted);font-size:.76rem;border-top:1px solid var(--line);padding-top:14px;}
.topic-meta i {color:var(--main);margin-right:5px;}
.topic-meta .n {margin-left:auto;color:var(--main);font-weight:700;}
.criteria {background:var(--card2);border:1px solid var(--line);border-radius:18px;padding:28px 26px;height:100%;}
.criteria .ico {width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(6,182,212,.12);color:var(--main);font-size:1.1rem;margin-bottom:16px;}
.criteria h3 {font-size:1rem;font-weight:700;margin:0 0 10px;}
.criteria p {color:var(--muted);font-size:.86rem;line-height:1.8;margin:0;}
.timeline {position:relative;padding-left:26px;}
.timeline::before {content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--main),transparent);}
.tl-item {position:relative;padding:0 0 26px 4px;}
.tl-item::before {content:"";position:absolute;left:-26px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--main);}
.tl-item h4 {font-size:.98rem;font-weight:700;margin:0 0 6px;}
.tl-item h4 span {color:var(--main);font-weight:600;margin-right:8px;font-size:.82rem;}
.tl-item p {color:var(--muted);font-size:.86rem;line-height:1.8;margin:0;}
.cta-band {background:linear-gradient(120deg,rgba(6,182,212,.14),rgba(236,72,153,.12));border:1px solid var(--line);border-radius:20px;padding:34px 30px;text-align:center;}
.cta-band h3 {font-weight:800;font-size:clamp(1.1rem,2.2vw,1.5rem);margin:0 0 12px;}
.cta-band p {color:var(--muted);font-size:.9rem;margin:0 auto 22px;max-width:640px;line-height:1.8;}
.page-hero {padding:100px 0 24px;}
.sec {padding:38px 0;}

/* --- 子页面追加 --- */
/* 本页专属：观影指南内容排版 */
  .guide-wrap {max-width:1080px;margin:0 auto;padding:0 20px;}
.guide-hero {padding:70px 0 40px;position:relative;overflow:hidden;}
.guide-hero h1 {font-size:clamp(28px,4.6vw,46px);font-weight:800;line-height:1.2;margin:16px 0 18px;letter-spacing:-.5px;}
.guide-hero p.lead {color:var(--muted);font-size:17px;line-height:1.85;max-width:760px;}
.gsec {padding:44px 0;border-top:1px solid var(--line);}
.gsec:first-of-type {border-top:none;}
.gsec h2 {font-size:clamp(21px,3vw,29px);font-weight:700;margin-bottom:10px;letter-spacing:-.3px;}
.gsec h2 .num {color:var(--main);font-weight:800;margin-right:10px;font-variant-numeric:tabular-nums;}
.gsec > p {color:var(--muted);line-height:1.9;font-size:15.5px;margin-bottom:22px;max-width:820px;}
.gcard {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;height:100%;transition:.25s;}
.gcard:hover {border-color:rgba(6,182,212,.45);transform:translateY(-3px);}
.gcard h3 {font-size:17px;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:9px;}
.gcard h3 i {color:var(--main);font-size:15px;}
.gcard p {color:var(--muted);font-size:14.5px;line-height:1.85;margin:0;}
.gcard ul {margin:0;padding-left:19px;color:var(--muted);font-size:14.5px;line-height:1.9;}
.gcard ul li::marker {color:var(--accent);}
.step-list li strong {color:var(--text);font-weight:600;}
.tip-box {background:linear-gradient(135deg,rgba(6,182,212,.10),rgba(236,72,153,.08));border:1px solid rgba(6,182,212,.28);border-radius:16px;padding:20px 22px;color:var(--text);font-size:15px;line-height:1.9;}
.tip-box i {color:var(--accent);margin-right:8px;}
.tag-row {display:flex;flex-wrap:wrap;gap:9px;margin-top:6px;}
.tag-row span {font-size:13px;color:var(--text);background:rgba(6,182,212,.12);border:1px solid rgba(6,182,212,.3);padding:5px 13px;border-radius:999px;}
.faq-item h3 {font-size:16px;font-weight:700;margin:0 0 8px;color:var(--text);}
.faq-item h3 i {color:var(--main);margin-right:9px;font-size:13px;}
.cta-band h2 {font-size:clamp(20px,3vw,26px);font-weight:800;margin-bottom:12px;}
.guide-hero {padding:46px 0 26px;}
.gsec {padding:34px 0;}

/* --- 子页面追加 --- */
/* 剧集榜页面专属少量样式，配色沿用站点变量 */
  body {background:var(--bg);color:var(--text);font-family:'Inter',"PingFang SC","Microsoft YaHei",sans-serif;}
.rank-hero {padding:120px 0 40px;position:relative;overflow:hidden;}
.rank-hero .orb {position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none;}
.rank-hero .orb-a {width:360px;height:360px;background:var(--main);top:-120px;left:-80px;}
.rank-hero .orb-b {width:300px;height:300px;background:var(--accent);bottom:-140px;right:-60px;opacity:.35;}
.rank-hero-inner {position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 20px;}
.rank-hero h1 {font-size:clamp(28px,4.5vw,46px);font-weight:900;line-height:1.25;margin:18px 0 14px;}
.rank-hero p.lead-txt {color:var(--muted);font-size:16px;line-height:1.85;max-width:760px;}
.rank-tabs {display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.rank-tabs a {padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font-size:14px;font-weight:500;text-decoration:none;transition:.25s;}
.rank-tabs a:hover,.rank-tabs a.active {background:linear-gradient(120deg,var(--main),var(--accent));border-color:transparent;color:#06121a;font-weight:700;}
.sec-inner {max-width:1180px;margin:0 auto;padding:0 20px;}
.sec-title {font-size:clamp(20px,2.6vw,28px);font-weight:800;margin-bottom:10px;display:flex;align-items:center;gap:12px;}
.sec-title .bar {display:inline-block;width:6px;height:24px;border-radius:4px;background:linear-gradient(180deg,var(--main),var(--accent));}
.sec-desc {color:var(--muted);font-size:15px;line-height:1.8;margin-bottom:26px;max-width:820px;}
.rank-list {display:flex;flex-direction:column;gap:14px;}
.rank-item.top1 .rank-no {color:#fbbf24;}
.rank-item.top2 .rank-no {color:#cbd5e1;}
.rank-item.top3 .rank-no {color:#f97316;}
.rank-poster {width:96px;height:128px;border-radius:10px;object-fit:cover;background:var(--card2);border:1px solid var(--line);}
.rank-info h3 {font-size:17px;font-weight:700;margin:0 0 6px;}
.rank-info h3 span {font-size:12px;font-weight:500;color:var(--muted);margin-left:8px;}
.rank-meta {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;}
.tag {padding:3px 10px;font-size:12px;border-radius:999px;background:rgba(6,182,212,.12);color:var(--main);border:1px solid rgba(6,182,212,.25);}
.tag.pink {background:rgba(236,72,153,.12);color:var(--accent);border-color:rgba(236,72,153,.28);}
.rank-info p {color:var(--muted);font-size:13.5px;line-height:1.7;margin:0;}
.rank-score {text-align:right;}
.rank-score .num {font-size:24px;font-weight:900;color:var(--main);line-height:1;}
.rank-score .lbl {font-size:11px;color:var(--muted);letter-spacing:1px;}
.dim-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;}
.dim-card {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;}
.dim-card i {font-size:22px;color:var(--main);margin-bottom:12px;display:block;}
.dim-card h3 {font-size:16px;font-weight:700;margin-bottom:8px;}
.dim-card p {color:var(--muted);font-size:14px;line-height:1.75;margin:0;}
.note-box {background:var(--card2);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:14px;padding:20px 24px;color:var(--muted);font-size:14px;line-height:1.85;}
.note-box strong {color:var(--text);}
footer.site-footer {border-top:1px solid var(--line);padding:40px 0 30px;margin-top:20px;}
.foot-links {display:flex;flex-wrap:wrap;gap:16px;}
.foot-links a {color:var(--muted);text-decoration:none;font-size:14px;}
.foot-links a:hover {color:var(--main);}
.foot-copy {width:100%;color:var(--muted);font-size:13px;margin-top:14px;border-top:1px solid var(--line);padding-top:16px;}
.rank-poster {width:72px;height:96px;}
.rank-score {grid-column:3;text-align:left;margin-top:6px;}

/* --- 子页面追加 --- */
/* 仅本页需要的少量补充样式，沿用首页配色变量 */
  .page-head {padding:120px 0 30px;}
.page-head h1 {font-size:clamp(1.9rem,4.4vw,3rem);font-weight:900;line-height:1.2;margin:0 0 14px;}
.page-sub {color:var(--muted);max-width:760px;font-size:1.02rem;line-height:1.8;margin:0;}
.crumb {font-size:.85rem;color:var(--muted);margin-bottom:16px;}
.crumb a {color:var(--muted);text-decoration:none;}
.crumb a:hover {color:var(--main);}
.crumb span {margin:0 6px;opacity:.5;}
.filter-bar {display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 8px;}
.chip {border:1px solid var(--line);background:var(--card);color:var(--text);
    padding:8px 16px;border-radius:999px;font-size:.86rem;cursor:pointer;transition:.25s;text-decoration:none;}
.chip:hover {border-color:var(--main);color:var(--main);}
.chip.on {background:linear-gradient(135deg,var(--main),var(--accent));color:#06121a;border-color:transparent;font-weight:700;}
.v-card {background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;
    height:100%;display:flex;flex-direction:column;transition:.3s;}
.v-card:hover {transform:translateY(-6px);border-color:rgba(6,182,212,.5);box-shadow:0 18px 40px rgba(0,0,0,.45);}
.v-thumb {position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--card2);}
.v-thumb img {width:100%;height:100%;object-fit:cover;display:block;transition:.5s;}
.v-card:hover .v-thumb img {transform:scale(1.06);}
.v-badge {position:absolute;top:10px;left:10px;background:rgba(12,10,26,.82);backdrop-filter:blur(6px);
    color:var(--main);font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--line);}
.v-score {position:absolute;bottom:10px;right:10px;background:rgba(236,72,153,.9);color:#fff;
    font-size:.75rem;font-weight:800;padding:3px 9px;border-radius:8px;}
.v-body {padding:15px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.v-body h3 {font-size:1.02rem;font-weight:700;margin:0;line-height:1.45;}
.v-body h3 a {color:var(--text);text-decoration:none;}
.v-body h3 a:hover {color:var(--main);}
.v-meta {font-size:.8rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:10px;}
.v-desc {font-size:.86rem;color:var(--muted);line-height:1.7;margin:0;flex:1;}
.rank-item:last-child {border-bottom:none;}
.rank-item:nth-child(1) .rank-no {background:linear-gradient(135deg,var(--main),var(--accent));color:#06121a;}
.rank-info strong {display:block;font-size:.95rem;font-weight:700;}
.rank-info small {color:var(--muted);font-size:.8rem;}
.cal-wrap {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:6px 4px;}
.cal-row {display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line);}
.cal-row:last-child {border-bottom:none;}
.cal-day {flex:0 0 76px;font-weight:800;font-size:.86rem;color:var(--main);}
.cal-list {flex:1;color:var(--text);font-size:.88rem;line-height:1.6;}
.cal-list em {font-style:normal;color:var(--muted);font-size:.8rem;}
.tip-box strong {color:var(--text);}
.site-foot {border-top:1px solid var(--line);padding:40px 0 30px;margin-top:60px;color:var(--muted);font-size:.88rem;}
.site-foot a {color:var(--muted);text-decoration:none;margin-right:16px;}
.site-foot a:hover {color:var(--main);}
.foot-bottom {display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;opacity:.8;}
.page-head {padding:100px 0 20px;}
.cal-day {flex:0 0 60px;}

/* --- 子页面追加 --- */
/* ===== 动漫页专属样式（少量，配色沿用站点变量） ===== */
  .anime-hero { padding: 130px 0 40px; position: relative; overflow: hidden; }
.anime-hero h1 { font-size: clamp(28px, 4.4vw, 46px); font-weight: 800; line-height: 1.15; letter-spacing: -.5px; }
.anime-hero p.lead-txt { color: var(--muted); max-width: 720px; margin-top: 16px; font-size: 16px; line-height: 1.8; }
.sec-pad { padding: 54px 0; }
.sec-sub { color: var(--muted); font-size: 14.5px; margin-bottom: 26px; max-width: 760px; line-height: 1.75; }
.anime-card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; overflow: hidden;
    height: 100%; display: flex; flex-direction: column; transition: .28s; }
.anime-card:hover { transform: translateY(-5px); border-color: rgba(6,182,212,.5); box-shadow: 0 16px 40px rgba(6,182,212,.14); }
.anime-thumb { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: var(--card2); }
.anime-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: .4s; }
.anime-card:hover .anime-thumb img { transform: scale(1.06); }
.badge-tag { position: absolute; top: 10px; left: 10px; padding: 4px 10px; border-radius: 8px;
    font-size: 11.5px; font-weight: 700; background: rgba(12,10,26,.78); color: var(--main); border: 1px solid rgba(6,182,212,.4); backdrop-filter: blur(4px); }
.score-tag { position: absolute; top: 10px; right: 10px; padding: 4px 9px; border-radius: 8px;
    font-size: 12px; font-weight: 800; background: linear-gradient(135deg, var(--main), var(--accent)); color: #06121a; }
.anime-body { padding: 14px 15px 16px; display: flex; flex-direction: column; gap: 7px; flex: 1; }
.anime-name { font-size: 15.5px; font-weight: 700; color: var(--text); line-height: 1.4; }
.anime-meta { font-size: 12.5px; color: var(--muted); display: flex; flex-wrap: wrap; gap: 8px; }
.anime-meta span { display: inline-flex; align-items: center; gap: 5px; }
.anime-desc { font-size: 13px; color: var(--muted); line-height: 1.65; margin-top: 2px; }
.feature-item { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 24px 22px; height: 100%; transition: .28s; }
.feature-item:hover { border-color: rgba(236,72,153,.45); transform: translateY(-4px); }
.feature-ico { width: 46px; height: 46px; border-radius: 13px; display: grid; place-items: center; font-size: 19px;
    background: linear-gradient(135deg, rgba(6,182,212,.18), rgba(236,72,153,.18)); color: var(--main); margin-bottom: 14px; }
.feature-item h3 { font-size: 17px; font-weight: 700; margin-bottom: 9px; color: var(--text); }
.feature-item p { font-size: 13.5px; color: var(--muted); line-height: 1.75; margin: 0; }
footer.site-footer .f-brand { font-size: 17px; font-weight: 800; color: var(--text); }
footer.site-footer a.f-link { color: var(--muted); text-decoration: none; font-size: 13.5px; margin-right: 16px; display: inline-block; margin-bottom: 8px; }
footer.site-footer a.f-link:hover { color: var(--main); }
footer.site-footer .f-copy { color: var(--muted); font-size: 12.5px; margin-top: 18px; }
.anime-hero { padding: 108px 0 24px; }
.sec-pad { padding: 38px 0; }

/* --- 子页面追加 --- */
.doc-hero {padding:120px 0 48px;}
.doc-hero h1 {font-size:clamp(28px,4.4vw,52px);font-weight:900;line-height:1.18;margin:14px 0 16px;}
.doc-hero p {color:var(--muted);max-width:760px;font-size:16px;line-height:1.85;}
.sec-head p {color:var(--muted);margin:8px 0 0;font-size:14px;max-width:640px;line-height:1.8;}
.sec-head .tag {font-size:12px;color:var(--main);border:1px solid var(--main);border-radius:999px;padding:4px 12px;white-space:nowrap;}
.cat-strip {display:flex;gap:10px;flex-wrap:wrap;margin:0 0 40px;padding:0;}
.cat-strip button {
    background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:999px;
    padding:8px 18px;font-size:13.5px;cursor:pointer;transition:.25s;font-family:inherit;
  }
.cat-strip button:hover {border-color:var(--main);color:var(--main);}
.cat-strip button.on {background:linear-gradient(120deg,var(--main),var(--accent));border-color:transparent;color:#04121a;font-weight:700;}
.doc-card {
    background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;
    height:100%;display:flex;flex-direction:column;transition:.3s;
  }
.doc-card:hover {transform:translateY(-6px);border-color:rgba(6,182,212,.55);box-shadow:0 18px 40px rgba(6,182,212,.12);}
.doc-poster {position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--card2);}
.doc-poster img {width:100%;height:100%;object-fit:cover;display:block;transition:.5s;}
.doc-card:hover .doc-poster img {transform:scale(1.06);}
.doc-score {position:absolute;top:12px;right:12px;background:rgba(12,10,26,.82);backdrop-filter:blur(6px);
    border:1px solid var(--line);color:var(--main);font-weight:800;font-size:13px;padding:4px 10px;border-radius:999px;}
.doc-body {padding:16px 18px 20px;display:flex;flex-direction:column;gap:9px;flex:1;}
.doc-body h3 {font-size:16.5px;font-weight:700;margin:0;line-height:1.45;}
.doc-body .meta {font-size:12.5px;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap;}
.doc-body .desc {font-size:13.5px;color:var(--muted);line-height:1.75;margin:0;flex:1;}
.doc-tags {display:flex;gap:8px;flex-wrap:wrap;}
.doc-tags em {font-style:normal;font-size:11.5px;color:var(--main);background:rgba(6,182,212,.10);
    border:1px solid rgba(6,182,212,.25);border-radius:6px;padding:2px 8px;}
.plan {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;height:100%;}
.plan i {color:var(--main);font-size:22px;}
.plan h3 {font-size:17px;font-weight:700;margin:14px 0 10px;}
.plan p {color:var(--muted);font-size:13.5px;line-height:1.85;margin:0;}
.plan b {color:var(--text);font-weight:600;}
.faq-q {width:100%;text-align:left;background:none;border:0;color:var(--text);font-family:inherit;
    font-size:15px;font-weight:600;padding:18px 20px;display:flex;justify-content:space-between;gap:14px;cursor:pointer;}
.faq-q i {color:var(--main);transition:.3s;flex-shrink:0;}
.faq-a {color:var(--muted);font-size:13.8px;line-height:1.9;padding:0 20px 0;max-height:0;overflow:hidden;transition:.35s;}
.faq-item.open .faq-a {max-height:420px;padding-bottom:20px;}
.faq-item.open .faq-q i {transform:rotate(45deg);}
.stat-row {display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:44px 0 0;}
.stat-box {background:var(--card2);border:1px solid var(--line);border-radius:16px;padding:20px 22px;}
.stat-box strong {display:block;font-size:26px;font-weight:900;
    background:linear-gradient(120deg,var(--main),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-box span {display:block;color:var(--muted);font-size:13px;margin-top:6px;}
footer.site-foot {border-top:1px solid var(--line);margin-top:80px;padding:44px 0 30px;color:var(--muted);font-size:13.5px;}
footer.site-foot a {color:var(--muted);text-decoration:none;margin-right:16px;}
footer.site-foot a:hover {color:var(--main);}
.doc-hero {padding:100px 0 32px;}

/* --- 子页面追加 --- */
/* 本页专属少量样式，配色沿用站点变量 */
  .about-hero {
    padding: 120px 0 56px;
    position: relative;
    overflow: hidden;
  }
.about-hero h1 {
    font-size: clamp(28px, 4.6vw, 48px);
    font-weight: 800;
    line-height: 1.22;
    margin: 18px 0 18px;
    color: var(--text);
  }
.about-hero p.lead-txt {
    color: var(--muted);
    font-size: 16px;
    line-height: 1.9;
    max-width: 720px;
    margin: 0 auto;
  }
.sec-block { padding: 54px 0; }
.sec-head i { color: var(--main); font-size: 18px; }
.info-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 26px 24px;
    height: 100%;
    transition: .25s ease;
    position: relative;
    overflow: hidden;
  }
.info-card:hover {
    background: var(--card2);
    border-color: rgba(6,182,212,.38);
    transform: translateY(-4px);
  }
.info-card .ic {
    width: 46px; height: 46px;
    border-radius: 13px;
    display:flex; align-items:center; justify-content:center;
    background: linear-gradient(135deg, rgba(6,182,212,.22), rgba(236,72,153,.18));
    color: var(--main);
    font-size: 19px;
    margin-bottom: 16px;
  }
.info-card h3 {
    font-size: 16.5px;
    font-weight: 700;
    color: var(--text);
    margin: 0 0 10px;
  }
.info-card p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85;
    margin: 0;
  }
.num-strip {
    display:flex; flex-wrap: wrap; gap: 14px;
    margin-top: 6px;
  }
.num-item {
    flex: 1 1 150px;
    background: var(--card2);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 18px 18px;
    text-align: center;
  }
.num-item b {
    display:block;
    font-size: 24px;
    font-weight: 800;
    color: var(--main);
    line-height: 1.2;
  }
.num-item span {
    color: var(--muted);
    font-size: 13px;
    letter-spacing: .3px;
  }
.flow-list { margin-top: 4px; }
.flow-item {
    display:flex; gap: 16px;
    padding: 18px 0;
    border-bottom: 1px dashed var(--line);
  }
.flow-item:last-child { border-bottom: none; }
.flow-idx {
    flex: 0 0 38px; height: 38px;
    border-radius: 50%;
    display:flex; align-items:center; justify-content:center;
    font-weight: 800;
    font-size: 14px;
    color: var(--main);
    background: rgba(6,182,212,.12);
    border: 1px solid rgba(6,182,212,.3);
  }
.flow-item h4 {
    font-size: 15.5px;
    font-weight: 700;
    color: var(--text);
    margin: 6px 0 7px;
  }
.flow-item p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85;
    margin: 0;
  }
.prose p {
    color: var(--muted);
    font-size: 14.5px;
    line-height: 2;
    margin-bottom: 16px;
  }
.prose strong { color: var(--text); font-weight: 600; }
.tag-chip {
    font-size: 12.5px;
    color: var(--main);
    border: 1px solid rgba(6,182,212,.32);
    background: rgba(6,182,212,.08);
    padding: 6px 13px;
    border-radius: 999px;
  }
.cta-box {
    margin-top: 10px;
    background: linear-gradient(135deg, rgba(6,182,212,.12), rgba(236,72,153,.10));
    border: 1px solid var(--line);
    border-radius: 20px;
    padding: 34px 28px;
    text-align: center;
  }
.cta-box h3 {
    font-size: 19px;
    font-weight: 800;
    color: var(--text);
    margin-bottom: 10px;
  }
.cta-box p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.85;
    margin-bottom: 20px;
  }
.about-hero { padding: 96px 0 36px; }
.sec-block { padding: 38px 0; }

/* --- 子页面追加 --- */
.legal-wrap {max-width:1080px;margin:0 auto;padding:0 20px 90px}
.legal-hero {padding:120px 0 40px;text-align:center}
.legal-hero h1 {font-size:clamp(26px,4vw,42px);font-weight:800;line-height:1.25;margin:14px 0 16px}
.legal-hero p {color:var(--muted);max-width:720px;margin:0 auto;font-size:15px;line-height:1.9}
.legal-meta {margin-top:18px;font-size:13px;color:var(--muted)}
.legal-card {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 26px 22px;margin-bottom:20px}
.legal-card h2 {font-size:20px;font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.legal-card h2 i {color:var(--main);font-size:17px}
.legal-card h3 {font-size:16px;font-weight:600;margin:20px 0 8px;color:var(--text)}
.legal-card p {color:var(--muted);font-size:14.5px;line-height:1.95;margin:0 0 12px}
.legal-card ul {margin:0 0 12px;padding-left:20px}
.legal-card li {color:var(--muted);font-size:14.5px;line-height:1.95;margin-bottom:6px}
.legal-card strong {color:var(--text);font-weight:600}
.legal-toc {display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:26px}
.legal-toc a {display:flex;align-items:center;gap:10px;background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:13px 16px;color:var(--text);text-decoration:none;font-size:14px;transition:.2s}
.legal-toc a:hover {border-color:var(--main);color:var(--main);transform:translateY(-2px)}
.legal-toc i {color:var(--accent);font-size:13px}
.notice-box {background:linear-gradient(135deg,rgba(6,182,212,.12),rgba(236,72,153,.10));border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:0 0 22px}
.notice-box p {margin:0;color:var(--text);font-size:14.5px;line-height:1.9}
.contact-line {display:flex;flex-wrap:wrap;gap:14px;margin-top:6px}
.contact-line span {display:inline-flex;align-items:center;gap:8px;background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-size:13.5px;color:var(--text)}
.contact-line i {color:var(--main)}
.legal-footer-note {text-align:center;color:var(--muted);font-size:13px;margin-top:26px;line-height:2}
.legal-hero {padding:96px 0 30px}
.legal-card {padding:20px 18px}