:root{
  --brand:#2563eb;
  --accent:#06b6d4;
  --bg:#f4f8ff;
  --ink:#0f1e3d;
  --line:#dbe6f7;
  --muted:#5c708f;
  --card:#ffffff;
  --radius:8px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:14px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit;}
img{display:block;}
#readbar{
  position:fixed;top:0;left:0;height:3px;width:0;
  background:linear-gradient(90deg,var(--brand),var(--accent));
  z-index:2000;transition:width .08s linear;
}
/* ===== top bar ===== */
.topbar{
  background:#fff;border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:1000;
}
.navbar-brand{
  font-weight:900;font-size:19px;letter-spacing:-.3px;
  color:var(--brand)!important;display:flex;align-items:center;gap:7px;
}
.navbar-brand .mark{
  width:26px;height:26px;border-radius:7px;
  background:linear-gradient(135deg,var(--brand),var(--accent));
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:12px;
}
.nav-link{
  font-weight:600;font-size:13.5px;color:var(--ink)!important;
  padding:6px 10px!important;border-radius:6px;
}
.nav-link:hover{background:#eaf2ff;color:var(--brand)!important;}
.searchbox{
  display:flex;align-items:center;gap:6px;
  background:var(--bg);border:1px solid var(--line);border-radius:8px;
  padding:5px 10px;min-width:190px;
}
.searchbox input{border:0;background:transparent;outline:0;font-size:12.5px;width:100%;color:var(--ink);}
.searchbox i{color:var(--muted);font-size:12px;}
/* ===== hero ===== */
.hero{
  background:linear-gradient(120deg,#eaf2ff 0%,#f4f8ff 45%,#e6fbff 100%);
  border-bottom:1px solid var(--line);
  padding:30px 0 26px;position:relative;overflow:hidden;
}
.hero::after{
  content:"";position:absolute;right:-60px;top:-70px;width:260px;height:260px;
  border-radius:50%;background:radial-gradient(circle,rgba(6,182,212,.18),transparent 70%);
}
.hero-tag{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(37,99,235,.1);color:var(--brand);
  font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:99px;margin-bottom:12px;
}
.hero h1{
  font-size:clamp(24px,4vw,40px);font-weight:900;line-height:1.2;
  letter-spacing:-1px;margin-bottom:10px;min-height:1.25em;
}
.hero h1 .typed{border-right:3px solid var(--brand);padding-right:3px;}
.hero p.lead-txt{
  color:var(--muted);font-size:13.5px;max-width:660px;margin-bottom:16px;
}
.hero-stats{display:flex;gap:26px;flex-wrap:wrap;}
.hero-stats div{font-size:11.5px;color:var(--muted);font-weight:600;}
.hero-stats strong{display:block;font-size:20px;color:var(--brand);font-weight:900;line-height:1.2;}
/* ===== carousel banner ===== */
.banner-wrap{padding:18px 0 4px;}
.banner-card{
  border-radius:var(--radius);overflow:hidden;background:#fff;
  border:1px solid var(--line);box-shadow:0 1px 3px rgba(15,30,61,.05);
  display:grid;grid-template-columns:170px 1fr;gap:0;
}
.banner-thumb{position:relative;aspect-ratio:2/3;overflow:hidden;background:#dbe6f7;}
.banner-thumb img{width:100%;height:100%;object-fit:cover;}
.badge-ep{
  position:absolute;top:6px;left:6px;background:rgba(37,99,235,.94);color:#fff;
  font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;letter-spacing:.2px;
}
.banner-body{padding:14px 16px;display:flex;flex-direction:column;justify-content:center;}
.banner-body h3{font-size:17px;font-weight:900;margin-bottom:6px;letter-spacing:-.3px;}
.banner-body .meta{font-size:11.5px;color:var(--muted);margin-bottom:8px;font-weight:600;}
.banner-body p{font-size:12.5px;color:#3f5474;margin-bottom:10px;line-height:1.65;}
.tag-pill{
  display:inline-block;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:5px;
  background:#eaf2ff;color:var(--brand);margin-right:5px;margin-bottom:4px;
}
.btn-watch{
  align-self:flex-start;background:var(--brand);color:#fff;font-size:12.5px;font-weight:700;
  padding:7px 16px;border-radius:7px;border:0;transition:.18s;
}
.btn-watch:hover{background:#1d4fd0;color:#fff;transform:translateY(-1px);}
/* ===== section head ===== */
.sec{padding:26px 0 4px;}
.sec-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:16px;gap:12px;flex-wrap:wrap;
}
.sec-head h2{
  font-size:18px;font-weight:900;letter-spacing:-.4px;margin:0;
  display:flex;align-items:center;gap:8px;
}
.sec-head h2 i{color:var(--accent);font-size:15px;}
.sec-head .more{font-size:12px;font-weight:700;color:var(--brand);}
.sec-head .more:hover{color:var(--accent);}
/* ===== layout: sidebar + content ===== */
.split{display:grid;grid-template-columns:186px 1fr;gap:20px;align-items:start;}
.side-filter{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:12px;position:sticky;top:72px;
}
.side-filter h4{
  font-size:11px;font-weight:800;color:var(--muted);letter-spacing:1px;
  text-transform:uppercase;margin-bottom:9px;
}
.side-filter ul{list-style:none;padding:0;margin:0 0 12px;}
.side-filter li a{
  display:flex;justify-content:space-between;align-items:center;
  font-size:12.5px;font-weight:600;padding:5px 7px;border-radius:6px;color:#33496b;
}
.side-filter li a:hover,.side-filter li a.on{background:#eaf2ff;color:var(--brand);}
.side-filter li a span{font-size:10.5px;color:var(--muted);font-weight:700;}
/* ===== poster grid ===== */
.poster-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:12px;width:100%;
}
.pcard{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s,border-color .2s;
  opacity:0;transform:translateY(14px);
}
.pcard.in{opacity:1;transform:none;transition:opacity .45s ease,transform .45s ease;}
.pcard:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(37,99,235,.13);border-color:#bfd6fb;}
.pthumb{position:relative;aspect-ratio:2/3;overflow:hidden;background:#dbe6f7;}
.pthumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.pcard:hover .pthumb img{transform:scale(1.05);}
.playbtn{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(15,30,61,.32);opacity:0;transition:.22s;
}
.pcard:hover .playbtn{opacity:1;}
.playbtn i{
  width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.94);
  color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:14px;
  transform:scale(.8);transition:.22s;
}
.pcard:hover .playbtn i{transform:scale(1);}
.pinfo{padding:7px 8px 9px;}
.pinfo .pt{
  font-size:12px;font-weight:800;line-height:1.35;letter-spacing:-.2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px;
}
.pinfo .pm{font-size:10.5px;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:4px;}
.rate{color:#f59e0b;font-weight:800;font-size:11px;}
.hot-badge{
  position:absolute;right:5px;top:5px;background:rgba(255,255,255,.94);
  color:#e11d48;font-size:10px;font-weight:800;border-radius:5px;padding:1px 5px;
}
/* ===== ranking ===== */
.rank-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.rank-item{
  display:flex;gap:10px;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:8px;transition:.18s;align-items:center;
  opacity:0;transform:translateY(10px);
}
.rank-item.in{opacity:1;transform:none;transition:opacity .4s ease,transform .4s ease;}
.rank-item:hover{border-color:#bfd6fb;background:#fbfdff;}
.rank-no{
  width:24px;height:24px;flex:0 0 24px;border-radius:6px;display:flex;
  align-items:center;justify-content:center;font-weight:900;font-size:12px;
  background:#eaf2ff;color:var(--brand);
}
.rank-no.top{background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;}
.rank-thumb{width:42px;height:60px;flex:0 0 42px;border-radius:5px;overflow:hidden;background:#dbe6f7;}
.rank-thumb img{width:100%;height:100%;object-fit:cover;}
.rank-info{min-width:0;flex:1;}
.rank-info .rt{font-size:12.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-info .rm{font-size:10.5px;color:var(--muted);}
.heat{font-size:10.5px;font-weight:800;color:var(--accent);white-space:nowrap;}
/* ===== latest ===== */
.latest-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.latest-row{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:8px 10px;display:flex;justify-content:space-between;align-items:center;gap:8px;
  transition:.16s;opacity:0;transform:translateY(10px);
}
.latest-row.in{opacity:1;transform:none;transition:opacity .4s ease,transform .4s ease;}
.latest-row:hover{border-color:#bfd6fb;background:#fbfdff;}
.latest-row .ln{font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.latest-row .ld{font-size:10.5px;color:var(--muted);white-space:nowrap;}
/* ===== topic / steps ===== */
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.topic-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px;
  transition:.18s;
}
.topic-card:hover{border-color:#bfd6fb;box-shadow:0 4px 14px rgba(37,99,235,.08);}
.topic-card h5{font-size:14px;font-weight:900;margin-bottom:6px;display:flex;align-items:center;gap:6px;}
.topic-card h5 i{color:var(--accent);font-size:12px;}
.topic-card p{font-size:12px;color:#3f5474;line-height:1.7;margin:0;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;}
.step{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px;position:relative;
}
.step .sn{
  position:absolute;right:9px;top:7px;font-size:19px;font-weight:900;color:#e8f0fd;line-height:1;
}
.step h6{font-size:12.5px;font-weight:800;margin-bottom:4px;}
.step p{font-size:11.5px;color:var(--muted);margin:0;line-height:1.6;}
/* ===== faq ===== */
.faq-item{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:12px 14px;margin-bottom:8px;
}
.faq-item h6{font-size:13px;font-weight:800;margin-bottom:5px;display:flex;gap:7px;align-items:flex-start;}
.faq-item h6 i{color:var(--brand);font-size:11px;margin-top:3px;}
.faq-item p{font-size:12.5px;color:#3f5474;margin:0;line-height:1.75;}
/* ===== aside carousel ===== */
.mini-carousel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin-bottom:12px;}
.mini-carousel h4{font-size:11px;font-weight:800;color:var(--muted);letter-spacing:1px;margin-bottom:9px;text-transform:uppercase;}
.mini-carousel .mc-item{display:flex;gap:8px;padding:6px 0;border-top:1px dashed var(--line);}
.mini-carousel .mc-item:first-of-type{border-top:0;}
.mc-thumb{width:34px;height:48px;flex:0 0 34px;border-radius:4px;overflow:hidden;background:#dbe6f7;}
.mc-thumb img{width:100%;height:100%;object-fit:cover;}
.mc-item .mct{font-size:12px;font-weight:700;line-height:1.35;}
.mc-item .mcm{font-size:10.5px;color:var(--muted);}
/* ===== footer ===== */
.friendzone{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:14px 16px;margin-top:26px;
}
.friendzone h3{font-size:12px;font-weight:800;color:var(--muted);letter-spacing:1px;margin-bottom:9px;text-transform:uppercase;}
.friendzone .fl{font-size:12px;color:#4a5f80;line-height:2;}
footer.sitefoot{
  background:#0f1e3d;color:#b9c9e4;margin-top:26px;padding:26px 0 16px;font-size:12.5px;
}
footer.sitefoot h5{color:#fff;font-size:13px;font-weight:800;margin-bottom:10px;}
footer.sitefoot a{color:#b9c9e4;font-size:12.5px;display:block;padding:2px 0;}
footer.sitefoot a:hover{color:var(--accent);}
footer.sitefoot .brandline{color:#fff;font-weight:900;font-size:15px;display:flex;align-items:center;gap:7px;margin-bottom:8px;}
footer.sitefoot .brandline .mark{
  width:24px;height:24px;border-radius:6px;background:linear-gradient(135deg,var(--brand),var(--accent));
  display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;
}
.copyright{
  border-top:1px solid rgba(255,255,255,.1);margin-top:18px;padding-top:12px;
  font-size:11.5px;color:#8497b8;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
}
/* ===== responsive ===== */
@media (max-width:1199px){
  .poster-grid{grid-template-columns:repeat(5,1fr);}
}
@media (max-width:991px){
  .split{grid-template-columns:1fr;}
  .side-filter{position:static;}
  .side-filter ul{display:flex;flex-wrap:wrap;gap:4px;}
  .side-filter li a{padding:5px 9px;font-size:12px;}
  .poster-grid{grid-template-columns:repeat(4,1fr);}
  .latest-list{grid-template-columns:repeat(2,1fr);}
  .topic-grid{grid-template-columns:1fr 1fr;}
  .steps{grid-template-columns:1fr 1fr;}
}
@media (max-width:767px){
  .banner-card{grid-template-columns:110px 1fr;}
  .banner-body{padding:10px 12px;}
  .banner-body h3{font-size:14.5px;}
  .banner-body p{font-size:11.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .poster-grid{grid-template-columns:repeat(3,1fr);gap:8px;}
  .rank-grid{grid-template-columns:1fr;}
  .latest-list{grid-template-columns:1fr;}
  .topic-grid{grid-template-columns:1fr;}
  .hero{padding:22px 0 20px;}
  .hero-stats{gap:18px;}
  .sec-head h2{font-size:16px;}
  .searchbox{min-width:0;width:100%;margin-top:8px;}
}
@media (max-width:420px){
  .poster-grid{grid-template-columns:repeat(2,1fr);}
}

/* --- 子页面追加 --- */
.about-hero {
    background:linear-gradient(135deg,#eff5ff 0%,#f4f8ff 45%,#e8f7fb 100%);
    border-bottom:1px solid var(--line);
    padding:56px 0 46px;
  }
.about-hero h1 {
    font-size:clamp(26px,3.4vw,40px);
    font-weight:900;
    color:var(--ink);
    line-height:1.25;
    letter-spacing:-.5px;
    margin-bottom:16px;
  }
.about-hero p.lead {
    color:var(--muted);
    font-size:16px;
    line-height:1.85;
    max-width:760px;
    margin-bottom:22px;
  }
.hero-chips {display:flex;flex-wrap:wrap;gap:10px;}
.hero-chip {
    display:inline-flex;align-items:center;gap:7px;
    background:var(--card);border:1px solid var(--line);
    color:var(--ink);font-size:13px;font-weight:600;
    padding:8px 14px;border-radius:999px;
  }
.hero-chip i {color:var(--brand);font-size:12px;}
.stat-row {
    display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
    margin-top:34px;
  }
.stat-box {
    background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
    padding:20px 18px;text-align:center;
  }
.stat-box .num {
    font-size:26px;font-weight:900;color:var(--brand);line-height:1.1;
    letter-spacing:-.5px;
  }
.stat-box .num span {font-size:14px;font-weight:700;color:var(--muted);}
.stat-box .lbl {font-size:13px;color:var(--muted);margin-top:6px;}
.about-sec {padding:52px 0;}
.about-sec.alt {background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.about-sec h2 {
    font-size:clamp(20px,2.3vw,26px);font-weight:800;color:var(--ink);
    letter-spacing:-.3px;margin-bottom:16px;
  }
.about-sec h2 .hl {color:var(--brand);}
.about-sec p {color:var(--muted);font-size:15px;line-height:1.9;margin-bottom:14px;}
.about-sec p strong {color:var(--ink);font-weight:700;}
.info-card {
    background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
    padding:22px 22px 18px;height:100%;
  }
.info-card .ic {
    width:40px;height:40px;border-radius:10px;
    background:linear-gradient(135deg,var(--brand),var(--accent));
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:16px;margin-bottom:14px;
  }
.info-card h3 {
    font-size:16px;font-weight:800;color:var(--ink);margin-bottom:8px;line-height:1.4;
  }
.info-card p {font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:0;}
.rule-list {list-style:none;padding:0;margin:0;}
.rule-list li {
    display:flex;gap:14px;padding:16px 0;border-bottom:1px dashed var(--line);
  }
.rule-list li:last-child {border-bottom:0;}
.rule-list .idx {
    flex:0 0 28px;height:28px;border-radius:8px;
    background:#eaf2ff;color:var(--brand);
    font-size:13px;font-weight:800;
    display:flex;align-items:center;justify-content:center;
  }
.rule-list .tx b {display:block;color:var(--ink);font-size:15px;font-weight:700;margin-bottom:5px;}
.rule-list .tx span {color:var(--muted);font-size:14px;line-height:1.8;}
.quote-box {
    border-left:4px solid var(--accent);
    background:#f0fbff;
    border-radius:0 var(--radius) var(--radius) 0;
    padding:20px 22px;
    color:var(--ink);
    font-size:15px;
    line-height:1.9;
    font-weight:500;
  }
.timeline {position:relative;padding-left:26px;}
.timeline::before {
    content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;
    background:linear-gradient(180deg,var(--brand),var(--accent));
    border-radius:2px;
  }
.tl-item {position:relative;margin-bottom:22px;}
.tl-item:last-child {margin-bottom:0;}
.tl-item::before {
    content:"";position:absolute;left:-25px;top:5px;width:12px;height:12px;
    border-radius:50%;background:#fff;border:3px solid var(--brand);
  }
.tl-item b {display:block;color:var(--ink);font-size:15px;font-weight:800;margin-bottom:5px;}
.tl-item span {color:var(--muted);font-size:14px;line-height:1.8;}
.cta-band {
    background:linear-gradient(135deg,var(--brand),var(--accent));
    border-radius:12px;padding:34px 30px;color:#fff;
    display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
  }
.cta-band h3 {font-size:20px;font-weight:800;margin:0 0 6px;color:#fff;}
.cta-band p {margin:0;font-size:14px;color:rgba(255,255,255,.88);}
.cta-band .btns {display:flex;gap:10px;flex-wrap:wrap;}
.cta-band a {
    display:inline-flex;align-items:center;gap:7px;
    background:#fff;color:var(--brand);font-weight:700;font-size:14px;
    padding:10px 18px;border-radius:999px;text-decoration:none;
    transition:.2s;
  }
.cta-band a.ghost {background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.5);}
.cta-band a:hover {transform:translateY(-2px);}
.stat-row {grid-template-columns:repeat(2,1fr);}
.about-sec {padding:38px 0;}
.about-hero {padding:38px 0 32px;}
.cta-band {padding:26px 20px;}

/* --- 子页面追加 --- */
.guide-hero {background:linear-gradient(135deg,#eaf2ff 0%,#f4f8ff 60%,#e6fbff 100%);border-bottom:1px solid var(--line);padding:48px 0 40px;}
.guide-hero h1 {font-weight:800;font-size:clamp(24px,3.4vw,38px);line-height:1.25;margin-bottom:14px;}
.guide-hero h1 em {font-style:normal;color:var(--brand);}
.guide-hero p {color:var(--muted);max-width:760px;margin-bottom:0;font-size:15.5px;line-height:1.8;}
.guide-wrap {padding:44px 0 60px;}
.guide-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px 22px;height:100%;box-shadow:0 2px 10px rgba(37,99,235,.05);}
.guide-card h3 {font-size:18px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.guide-card h3 i {color:var(--accent);font-size:16px;}
.guide-card p,.guide-card li {color:var(--muted);font-size:14.5px;line-height:1.85;}
.guide-card ul {padding-left:18px;margin-bottom:0;}
.guide-card ul li {margin-bottom:6px;}
.sec-title {font-size:clamp(20px,2.4vw,26px);font-weight:800;margin-bottom:8px;}
.sec-sub {color:var(--muted);font-size:14.5px;margin-bottom:26px;}
.step-list {counter-reset:step;list-style:none;padding:0;margin:0;}
.step-list>li {position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px 18px 68px;margin-bottom:16px;box-shadow:0 2px 10px rgba(37,99,235,.05);}
.step-list>li::before {counter-increment:step;content:counter(step);position:absolute;left:20px;top:18px;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;}
.step-list>li h4 {font-size:16.5px;font-weight:700;margin-bottom:8px;}
.step-list>li p {color:var(--muted);font-size:14.5px;line-height:1.85;margin-bottom:0;}
.faq-item h4 {font-size:15.5px;font-weight:700;margin-bottom:8px;display:flex;gap:10px;align-items:flex-start;}
.faq-item h4 i {color:var(--brand);margin-top:3px;font-size:14px;}
.tip-box {background:linear-gradient(135deg,#eaf2ff,#f0fbff);border:1px dashed var(--brand);border-radius:var(--radius);padding:20px 22px;}
.tip-box strong {color:var(--brand);}
.tip-box p {color:var(--ink);font-size:14.5px;line-height:1.85;margin-bottom:0;}
.quick-links {display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.quick-links a {background:var(--card);border:1px solid var(--line);color:var(--brand);border-radius:999px;padding:8px 16px;font-size:13.5px;font-weight:600;text-decoration:none;transition:.2s;}
.quick-links a:hover {background:var(--brand);color:#fff;border-color:var(--brand);}
footer.site-foot {background:#0f1e3d;color:#c8d6ef;padding:40px 0 26px;margin-top:20px;}
footer.site-foot a {color:#c8d6ef;text-decoration:none;font-size:14px;}
footer.site-foot a:hover {color:#fff;}
footer.site-foot h5 {font-size:15px;color:#fff;font-weight:700;margin-bottom:14px;}
footer.site-foot ul {list-style:none;padding:0;margin:0;}
footer.site-foot ul li {margin-bottom:8px;}
.foot-bottom {border-top:1px solid rgba(255,255,255,.12);margin-top:26px;padding-top:18px;font-size:13px;color:#8fa4c8;text-align:center;}

/* --- 子页面追加 --- */
.nav-link:hover,.nav-link.active {color:var(--brand);}
.searchbox button {border:0;background:var(--brand);color:#fff;width:30px;height:30px;border-radius:50%;}
.legal-hero {background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(6,182,212,.10));border:1px solid var(--line);border-radius:14px;padding:38px 32px;margin-top:26px;}
.legal-hero h1 {font-size:30px;font-weight:800;line-height:1.35;margin-bottom:12px;}
.legal-hero p {color:var(--muted);font-size:15px;line-height:1.8;max-width:760px;margin:0;}
.meta-line {color:var(--muted);font-size:13px;margin-top:16px;display:flex;flex-wrap:wrap;gap:18px;}
.sec-head i {color:var(--brand);font-size:18px;}
.doc-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;box-shadow:0 2px 10px rgba(15,30,61,.04);}
.doc-card p {color:var(--ink);font-size:15px;line-height:1.9;margin-bottom:14px;}
.doc-card p:last-child {margin-bottom:0;}
.doc-card strong {color:var(--brand);font-weight:700;}
.doc-list {list-style:none;padding:0;margin:0;}
.doc-list li {position:relative;padding-left:24px;color:var(--ink);font-size:15px;line-height:1.9;margin-bottom:11px;}
.doc-list li::before {content:"\f058";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--accent);position:absolute;left:0;top:2px;font-size:14px;}
.mini-card {background:var(--card);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);padding:20px 22px;}
.mini-card h3 {font-size:16px;font-weight:700;margin-bottom:9px;color:var(--ink);}
.mini-card p {color:var(--muted);font-size:14px;line-height:1.8;margin:0;}
.notice {border:1px dashed var(--brand);background:rgba(37,99,235,.05);border-radius:var(--radius);padding:20px 24px;}
.notice p {margin:0;font-size:14.5px;line-height:1.9;color:var(--ink);}
.notice strong {color:var(--brand);}
.footer {background:var(--card);border-top:1px solid var(--line);padding:34px 0 22px;margin-top:30px;}
.footer-brand {font-weight:800;font-size:18px;color:var(--ink);display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.footer-brand .mark {width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand),var(--accent));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:13px;}
.footer p {color:var(--muted);font-size:13.5px;line-height:1.85;margin-bottom:8px;}
.footer-links {display:flex;flex-wrap:wrap;gap:14px 22px;margin:14px 0 16px;}
.footer-links a {color:var(--muted);font-size:14px;text-decoration:none;transition:color .2s;}
.footer-links a:hover {color:var(--brand);}
.copy {color:var(--muted);font-size:12.5px;padding-top:16px;border-top:1px solid var(--line);}
.legal-hero {padding:26px 20px;}
.legal-hero h1 {font-size:23px;}
.doc-card {padding:20px 18px;}

/* --- 子页面追加 --- */
.sm-hero {background:linear-gradient(135deg,#eaf2ff 0%,#f4f8ff 60%,#e8fbff 100%);border-bottom:1px solid var(--line);padding:44px 0 34px;}
.sm-hero h1 {font-size:30px;font-weight:800;letter-spacing:-.5px;margin:0 0 10px;}
.sm-hero p {color:var(--muted);max-width:760px;margin:0;font-size:15px;line-height:1.75;}
.sm-crumb {font-size:13px;color:var(--muted);margin-bottom:14px;}
.sm-crumb a {color:var(--brand);text-decoration:none;}
.sm-crumb a:hover {text-decoration:underline;}
.sm-block {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin-bottom:18px;}
.sm-block h2 {font-size:19px;font-weight:800;margin:0 0 6px;display:flex;align-items:center;gap:9px;}
.sm-block h2 i {color:var(--brand);font-size:16px;}
.sm-block .sm-desc {color:var(--muted);font-size:13.5px;margin:0 0 16px;line-height:1.7;}
.sm-links {display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px;}
.sm-link {display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfdff;color:var(--ink);text-decoration:none;font-size:14px;font-weight:500;transition:.18s;}
.sm-link:hover {border-color:var(--brand);background:#eef4ff;color:var(--brand);transform:translateY(-1px);}
.sm-link i {color:var(--accent);font-size:13px;width:16px;text-align:center;}
.sm-link small {display:block;color:var(--muted);font-weight:400;font-size:12px;margin-top:2px;}
.sm-link .sm-txt {min-width:0;}
.sm-link .sm-txt span {display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sm-num {display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;}
.sm-chip {font-size:13px;padding:6px 12px;border-radius:999px;background:#eef4ff;color:var(--brand);border:1px solid var(--line);text-decoration:none;}
.sm-chip:hover {background:var(--brand);color:#fff;}
.sm-note {border-left:3px solid var(--accent);background:#f0fbff;border-radius:0 var(--radius) var(--radius) 0;padding:12px 16px;font-size:13.5px;color:var(--muted);line-height:1.75;}
.sm-note strong {color:var(--ink);}
.sm-tiplist {list-style:none;padding:0;margin:0;}
.sm-tiplist li {position:relative;padding-left:24px;font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:8px;}
.sm-tiplist li i {position:absolute;left:0;top:5px;color:var(--accent);font-size:12px;}
.sm-tip {font-size:12.5px;color:var(--muted);}
.sm-hero {padding:30px 0 24px;}
.sm-hero h1 {font-size:22px;}
.sm-block {padding:18px 16px;}
.sm-block h2 {font-size:17px;}

/* --- 子页面追加 --- */
.page-hero {
    background:linear-gradient(135deg,#e9f1ff 0%,#f4f8ff 55%,#e6fbff 100%);
    border-bottom:1px solid var(--line);
    padding:44px 0 38px;
  }
.page-hero h1 {
    font-size:clamp(24px,3.4vw,36px);
    font-weight:800;
    letter-spacing:-.5px;
    margin:0 0 12px;
  }
.page-hero h1 em {font-style:normal;color:var(--brand);}
.page-hero p {color:var(--muted);font-size:15px;line-height:1.85;max-width:720px;margin:0;}
.crumb {font-size:13px;color:var(--muted);margin-bottom:14px;}
.crumb a {color:var(--brand);text-decoration:none;}
.crumb a:hover {text-decoration:underline;}
.crumb span {color:#9aabc4;margin:0 6px;}
.sec-head p {color:var(--muted);font-size:14px;line-height:1.8;margin:0 0 26px;max-width:760px;}
.contact-card {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:calc(var(--radius) + 4px);
    padding:24px 22px;
    height:100%;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  }
.contact-card:hover {
    transform:translateY(-3px);
    border-color:#bcd3f5;
    box-shadow:0 10px 26px rgba(37,99,235,.10);
  }
.contact-card .ico {
    width:44px;height:44px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,var(--brand),var(--accent));
    color:#fff;font-size:18px;margin-bottom:14px;
  }
.contact-card h3 {
    font-size:16px;font-weight:700;margin:0 0 8px;letter-spacing:-.2px;
  }
.contact-card p {
    font-size:13.5px;line-height:1.8;color:var(--muted);margin:0 0 12px;
  }
.contact-card .addr {
    display:inline-block;
    font-size:13px;font-weight:600;color:var(--brand);
    background:#eef4ff;border:1px solid #d6e4fd;
    padding:5px 10px;border-radius:6px;
    word-break:break-all;
  }
.contact-card .tip {
    display:block;margin-top:10px;font-size:12.5px;color:#8a9db8;
  }
.flow {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:calc(var(--radius) + 4px);
    padding:8px 0;
    overflow:hidden;
  }
.flow-row {
    display:flex;gap:16px;padding:18px 22px;
    border-bottom:1px dashed var(--line);
    align-items:flex-start;
  }
.flow-row:last-child {border-bottom:0;}
.flow-num {
    flex:0 0 30px;height:30px;border-radius:50%;
    background:#eef4ff;color:var(--brand);
    font-weight:800;font-size:13px;
    display:flex;align-items:center;justify-content:center;
  }
.flow-row h4 {
    font-size:14.5px;font-weight:700;margin:2px 0 6px;
  }
.flow-row p {
    font-size:13.5px;line-height:1.8;color:var(--muted);margin:0;
  }
.form-panel {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:calc(var(--radius) + 4px);
    padding:26px 24px;
  }
.form-panel h3 {
    font-size:17px;font-weight:800;margin:0 0 6px;
  }
.form-panel .sub {
    font-size:13.5px;color:var(--muted);margin:0 0 20px;line-height:1.75;
  }
.fld {margin-bottom:16px;}
.fld label {
    display:block;font-size:13px;font-weight:600;
    color:var(--ink);margin-bottom:7px;
  }
.fld label i {color:var(--brand);margin-right:4px;font-size:11px;}
.fld input,.fld select,.fld textarea {
    width:100%;
    background:#f7faff;
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:10px 12px;
    font-size:13.5px;
    color:var(--ink);
    font-family:inherit;
    outline:none;
    transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
  }
.fld input::placeholder,.fld textarea::placeholder {color:#9fb0c9;}
.fld input:focus,.fld select:focus,.fld textarea:focus {
    background:#fff;
    border-color:var(--brand);
    box-shadow:0 0 0 3px rgba(37,99,235,.12);
  }
.fld textarea {resize:vertical;min-height:118px;line-height:1.75;}
.btn-send {
    display:inline-flex;align-items:center;gap:8px;
    background:linear-gradient(135deg,var(--brand),var(--accent));
    color:#fff;border:0;border-radius:var(--radius);
    padding:11px 24px;font-size:14px;font-weight:700;
    cursor:pointer;
    transition:opacity .16s ease,transform .16s ease;
  }
.btn-send:hover {opacity:.92;transform:translateY(-1px);}
.form-note {
    font-size:12.5px;color:#8a9db8;line-height:1.75;margin:14px 0 0;
  }
.faq-item h4 span {
    flex:0 0 auto;color:var(--brand);font-weight:900;font-size:13px;
    background:#eef4ff;border-radius:5px;padding:1px 7px;line-height:1.6;
  }
.hours-table {width:100%;border-collapse:collapse;font-size:13.5px;}
.hours-table th,.hours-table td {
    padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;
  }
.hours-table th {
    font-weight:700;color:var(--ink);background:#f7faff;font-size:13px;
  }
.hours-table td {color:var(--muted);}
.hours-table tr:last-child td {border-bottom:0;}
footer.site-foot .fbrand {
    display:flex;align-items:center;gap:9px;
    font-size:17px;font-weight:800;color:#fff;margin-bottom:10px;
  }
footer.site-foot .fbrand .mark {
    width:30px;height:30px;border-radius:8px;
    background:linear-gradient(135deg,var(--brand),var(--accent));
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:14px;
  }
footer.site-foot p.fdesc {font-size:13px;line-height:1.85;color:#8ea4c2;margin:0 0 18px;max-width:360px;}
footer.site-foot ul li a {
    color:#a9bcd6;font-size:13px;text-decoration:none;transition:color .16s ease;
  }
footer.site-foot ul li a:hover {color:var(--accent);}
.foot-bottom a {color:#8ea4c2;text-decoration:none;}
.foot-bottom a:hover {color:var(--accent);}
.page-hero {padding:30px 0 26px;}
.contact-card {padding:20px 18px;}
.form-panel {padding:20px 17px;}
.flow-row {padding:15px 16px;gap:12px;}

/* --- 子页面追加 --- */
.topbar a {color:#c9d8f0;text-decoration:none;}
.topbar a:hover {color:#fff;}
.site-head {background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1030;}
.navbar-brand:hover {color:var(--brand);}
.searchbox input::placeholder {color:#93a5c0;}
.sec-head h2::before {content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;border-radius:3px;background:linear-gradient(180deg,var(--brand),var(--accent));}
.policy-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;box-shadow:0 1px 2px rgba(15,30,61,.04);}
.policy-card h3 {font-size:16px;font-weight:700;margin:0 0 12px;color:var(--ink);}
.policy-card p {color:#37476b;font-size:14.5px;line-height:1.85;margin:0 0 12px;}
.policy-card p:last-child {margin-bottom:0;}
.policy-card ul {margin:0 0 12px;padding-left:20px;}
.policy-card li {color:#37476b;font-size:14.5px;line-height:1.85;margin-bottom:6px;}
.policy-card strong {color:var(--ink);font-weight:700;}
.toc {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;}
.toc h4 {font-size:14px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin:0 0 12px;}
.toc ol {margin:0;padding-left:18px;}
.toc li {margin-bottom:7px;}
.toc a {color:var(--brand);text-decoration:none;font-size:14px;}
.toc a:hover {text-decoration:underline;}
.data-table {width:100%;border-collapse:collapse;font-size:14px;}
.data-table th {background:#eef4ff;color:var(--ink);font-weight:700;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);}
.data-table td {padding:10px 12px;border-bottom:1px solid var(--line);color:#37476b;line-height:1.7;vertical-align:top;}
.data-table tr:last-child td {border-bottom:0;}
.note-box {background:#eef4ff;border-left:4px solid var(--brand);border-radius:0 var(--radius) var(--radius) 0;padding:14px 18px;color:#2b3f66;font-size:14px;line-height:1.8;}
.note-box i {color:var(--brand);margin-right:6px;}
.site-foot .foot-bottom {border-top:1px solid rgba(255,255,255,.12);margin-top:22px;padding-top:16px;font-size:13px;color:#8ba3c4;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;}
.policy-card {padding:20px 18px;}