:root{
    --main:#818cf8;
    --accent:#c084fc;
    --bg:#1e1b4b;
    --text:#e0e7ff;
    --line:rgba(129,140,248,.28);
    --soft:rgba(224,231,255,.62);
    --mono:'Inter',ui-monospace,SFMono-Regular,Menlo,monospace;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:'Inter',system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
    font-weight:400;
    font-size:14px;
    line-height:1.7;
    letter-spacing:.2px;
    overflow-x:hidden;
  }
  h1,h2,h3,h4,h5{font-weight:900;letter-spacing:-.5px;line-height:1.15;margin:0;}
  a{text-decoration:none;color:inherit;}
  a:hover{color:var(--main);}
  ::selection{background:var(--accent);color:#1e1b4b;}

  /* 顶部阅读进度条 */
  #readbar{
    position:fixed;top:0;left:0;height:2px;width:0%;
    background:linear-gradient(90deg,var(--main),var(--accent));
    z-index:2000;transition:width .08s linear;
  }

  /* 导航 */
  .nav-wrap{
    position:sticky;top:0;z-index:1500;
    background:rgba(30,27,75,.82);
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:1240px;margin:0 auto;padding:0 20px;
    display:flex;align-items:center;justify-content:space-between;height:62px;
  }
  .brand{
    font-weight:900;font-size:19px;letter-spacing:-.4px;
    display:flex;align-items:center;gap:8px;color:var(--text);
  }
  .brand i{color:var(--accent);font-size:16px;}
  .nav-links{display:flex;align-items:center;gap:26px;}
  .nav-links a{
    font-size:13px;font-weight:500;color:var(--soft);
    padding:6px 0;border-bottom:1px solid transparent;transition:.2s;
    white-space:nowrap;
  }
  .nav-links a:hover{color:var(--main);border-bottom-color:var(--main);}
  .nav-toggle{
    display:none;background:none;border:1px solid var(--line);
    color:var(--text);border-radius:4px;width:38px;height:34px;font-size:15px;
  }
  @media(max-width:860px){
    .nav-links{
      position:absolute;top:62px;left:0;right:0;
      background:rgba(30,27,75,.98);
      border-bottom:1px solid var(--line);
      flex-direction:column;align-items:flex-start;gap:0;
      padding:8px 20px 18px;display:none;
    }
    .nav-links.open{display:flex;}
    .nav-links a{width:100%;padding:11px 0;border-bottom:1px solid var(--line);}
    .nav-toggle{display:block;}
  }

  .wrap{max-width:1240px;margin:0 auto;padding:0 20px;}

  /* Hero 杂志封面式 */
  .hero{
    position:relative;overflow:hidden;
    border-bottom:1px solid var(--line);
    padding:70px 0 56px;
  }
  .hero-glow{
    position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0;
  }
  .g1{width:440px;height:440px;background:rgba(129,140,248,.34);top:-160px;right:-90px;}
  .g2{width:360px;height:360px;background:rgba(192,132,252,.28);bottom:-180px;left:-120px;}
  .hero .wrap{position:relative;z-index:2;}
  .hero-tag{
    display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:2px;
    text-transform:uppercase;color:var(--accent);
    border:1px solid var(--line);padding:4px 12px;margin-bottom:26px;
    background:rgba(129,140,248,.07);
  }
  .stat-lead{
    display:flex;flex-wrap:wrap;gap:0 46px;margin-bottom:30px;
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    padding:22px 0;
  }
  .stat-lead .st{min-width:120px;margin:8px 0;}
  .stat-lead .num{
    font-family:var(--mono);font-size:38px;font-weight:700;
    color:var(--main);line-height:1;letter-spacing:-2px;
  }
  .stat-lead .num b{color:var(--accent);font-weight:700;font-size:20px;}
  .stat-lead .lbl{font-size:11px;color:var(--soft);letter-spacing:1px;margin-top:7px;}
  .hero h1{
    font-size:clamp(38px,6.2vw,78px);
    letter-spacing:-2.5px;
    margin-bottom:18px;
  }
  .hero h1 em{
    font-style:normal;
    background:linear-gradient(92deg,var(--main),var(--accent));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero-sub{
    max-width:600px;font-size:14.5px;color:var(--soft);line-height:1.85;
  }
  .hero-actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;}
  .btn-o{
    display:inline-flex;align-items:center;gap:9px;
    border:1px solid var(--main);color:var(--main);
    font-size:13px;font-weight:600;padding:10px 22px;
    transition:.22s;background:transparent;
  }
  .btn-o:hover{background:var(--main);color:#1e1b4b;}
  .btn-o.solid{background:linear-gradient(92deg,var(--main),var(--accent));border-color:transparent;color:#181538;}
  .btn-o.solid:hover{filter:brightness(1.12);color:#181538;}

  /* 区块通用 */
  section{padding:66px 0;border-bottom:1px solid var(--line);position:relative;}
  .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap;}
  .sec-kicker{
    font-family:var(--mono);font-size:11px;letter-spacing:2.5px;
    color:var(--accent);text-transform:uppercase;margin-bottom:10px;
  }
  .sec-head h2{font-size:clamp(24px,3.4vw,36px);letter-spacing:-1.2px;}
  .sec-head p{font-size:13px;color:var(--soft);max-width:420px;margin:0;}

  /* 特色卡片网格 */
  .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0;border:1px solid var(--line);}
  .card{
    padding:28px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    transition:.25s;position:relative;background:transparent;
  }
  .card:hover{background:rgba(129,140,248,.07);}
  .card .ic{
    width:38px;height:38px;border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    color:var(--main);font-size:15px;margin-bottom:18px;
    border-radius:50%;
  }
  .card h3{font-size:17px;margin-bottom:10px;letter-spacing:-.3px;}
  .card p{font-size:12.5px;color:var(--soft);line-height:1.8;margin:0;}
  .card .idx{
    position:absolute;top:16px;right:18px;font-family:var(--mono);
    font-size:11px;color:rgba(224,231,255,.28);
  }

  /* 海报网格 */
  .posters{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:18px;}
  .poster{position:relative;border:1px solid var(--line);overflow:hidden;background:rgba(129,140,248,.06);}
  .poster .ph{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .5s;}
  .poster:hover .ph{transform:scale(1.05);}
  .poster .meta{padding:10px 11px 12px;}
  .poster .meta h4{font-size:13px;font-weight:700;letter-spacing:-.2px;}
  .poster .meta span{font-family:var(--mono);font-size:10.5px;color:var(--soft);display:block;margin-top:4px;}
  .play{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    background:rgba(30,27,75,.55);opacity:0;transition:.28s;
  }
  .poster:hover .play{opacity:1;}
  .play i{
    width:50px;height:50px;border-radius:50%;
    border:1px solid var(--accent);color:var(--accent);
    display:flex;align-items:center;justify-content:center;font-size:16px;
    background:rgba(30,27,75,.6);
  }

  /* 长文分栏 */
  .article-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;}
  @media(max-width:900px){.article-grid{grid-template-columns:1fr;gap:36px;}}
  .prose p{font-size:13.5px;line-height:1.95;color:var(--soft);margin-bottom:16px;}
  .prose p strong{color:var(--text);font-weight:700;}
  .prose h3{font-size:19px;margin:30px 0 14px;letter-spacing:-.5px;}
  .prose h3:first-child{margin-top:0;}
  .prose .quote{
    border-left:2px solid var(--accent);padding:4px 0 4px 18px;
    font-size:13px;color:var(--text);margin:22px 0;
  }
  .prose .quote small{display:block;font-family:var(--mono);font-size:10.5px;color:var(--soft);margin-top:7px;letter-spacing:1px;}

  /* 步骤条 */
  .steps{border:1px solid var(--line);}
  .step{
    display:flex;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);
    transition:.22s;
  }
  .step:last-child{border-bottom:none;}
  .step:hover{background:rgba(192,132,252,.07);}
  .step .n{
    font-family:var(--mono);font-size:13px;font-weight:700;color:var(--accent);
    border:1px solid var(--line);width:30px;height:30px;flex:0 0 30px;
    display:flex;align-items:center;justify-content:center;border-radius:50%;
  }
  .step h4{font-size:14px;margin-bottom:6px;letter-spacing:-.2px;}
  .step p{font-size:12.5px;color:var(--soft);margin:0;line-height:1.8;}

  .dense-stats{
    display:grid;grid-template-columns:repeat(2,1fr);gap:0;
    border:1px solid var(--line);margin-top:24px;
  }
  .dense-stats div{
    padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  }
  .dense-stats div:nth-child(2n){border-right:none;}
  .dense-stats b{
    display:block;font-family:var(--mono);font-size:22px;color:var(--main);font-weight:700;
  }
  .dense-stats span{font-size:11px;color:var(--soft);letter-spacing:.6px;}

  /* FAQ */
  .faq-list{border-top:1px solid var(--line);}
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-q{
    width:100%;background:none;border:none;text-align:left;color:var(--text);
    padding:20px 40px 20px 0;font-size:14px;font-weight:700;position:relative;
    letter-spacing:-.2px;cursor:pointer;line-height:1.6;
  }
  .faq-q:after{
    content:'+';position:absolute;right:6px;top:18px;font-family:var(--mono);
    font-size:19px;color:var(--accent);transition:.25s;font-weight:400;
  }
  .faq-item.open .faq-q:after{transform:rotate(45deg);}
  .faq-a{
    max-height:0;overflow:hidden;transition:max-height .32s ease;
  }
  .faq-a p{
    font-size:13px;color:var(--soft);line-height:1.9;padding:0 40px 22px 0;margin:0;
  }

  /* CTA */
  .cta{
    position:relative;overflow:hidden;border-bottom:none;
    padding:80px 0;
  }
  .cta .g3{width:520px;height:520px;background:rgba(192,132,252,.24);filter:blur(110px);position:absolute;top:-220px;left:50%;transform:translateX(-50%);pointer-events:none;}
  .cta-box{
    position:relative;z-index:2;border:1px solid var(--line);
    padding:52px 40px;text-align:center;
    background:rgba(129,140,248,.05);
  }
  .cta-box h2{font-size:clamp(26px,4vw,44px);letter-spacing:-1.6px;margin-bottom:16px;}
  .cta-box p{font-size:13.5px;color:var(--soft);max-width:520px;margin:0 auto 28px;line-height:1.9;}

  /* 友链 */
  .friends{padding:44px 0;border-bottom:1px solid var(--line);}
  .friends h5{
    font-family:var(--mono);font-size:11px;letter-spacing:2.5px;
    color:var(--accent);text-transform:uppercase;margin-bottom:16px;font-weight:600;
  }
  .friends .fl{
    font-size:12.5px;color:var(--soft);line-height:2.1;
    border:1px dashed var(--line);padding:16px 18px;
  }

  /* 页脚 */
  footer{padding:46px 0 34px;}
  .foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:34px;}
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;gap:26px;}}
  @media(max-width:520px){.foot-grid{grid-template-columns:1fr;}}
  .foot-grid h6{
    font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:14px;
    color:var(--text);text-transform:uppercase;
  }
  .foot-grid ul{list-style:none;padding:0;margin:0;}
  .foot-grid li{margin-bottom:9px;}
  .foot-grid li a{font-size:12.5px;color:var(--soft);transition:.2s;}
  .foot-grid li a:hover{color:var(--main);}
  .foot-about p{font-size:12.5px;color:var(--soft);line-height:1.9;max-width:300px;}
  .foot-brand{font-size:17px;font-weight:900;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
  .foot-brand i{color:var(--accent);font-size:15px;}
  .copy{
    margin-top:38px;padding-top:20px;border-top:1px solid var(--line);
    display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
    font-size:11.5px;color:rgba(224,231,255,.45);font-family:var(--mono);letter-spacing:.4px;
  }

/* --- 子页面追加 --- */
.about-note {
            border-left: 3px solid var(--accent);
            padding: .9rem 1.2rem;
            background: rgba(129, 140, 248, .08);
            border-radius: 0 10px 10px 0;
            color: var(--soft);
            font-size: .95rem;
            line-height: 1.85;
        }
.about-note strong { color: var(--text); font-weight: 600; }
.about-list { list-style: none; padding: 0; margin: 0; }
.about-list li {
            position: relative;
            padding-left: 1.6rem;
            margin-bottom: .85rem;
            color: var(--soft);
            line-height: 1.85;
            font-size: .95rem;
        }
.about-list li::before {
            content: "\f058";
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            color: var(--main);
            position: absolute;
            left: 0;
            top: .1rem;
            font-size: .9rem;
        }
.about-list li strong { color: var(--text); font-weight: 600; }
.about-figure {
            border: 1px solid var(--line);
            border-radius: 14px;
            overflow: hidden;
            background: rgba(129, 140, 248, .06);
        }
.about-figure img { display: block; width: 100%; height: auto; }
.about-figure figcaption {
            padding: .85rem 1.1rem;
            font-size: .85rem;
            color: var(--soft);
            border-top: 1px solid var(--line);
        }
.about-card {
            background: rgba(129, 140, 248, .07);
            border: 1px solid var(--line);
            border-radius: 14px;
            padding: 1.5rem 1.4rem;
            height: 100%;
            transition: border-color .2s ease, transform .2s ease;
        }
.about-card:hover { border-color: var(--main); transform: translateY(-3px); }
.about-card h3 {
            font-size: 1.05rem;
            font-weight: 700;
            color: var(--text);
            margin-bottom: .7rem;
            line-height: 1.5;
        }
.about-card p { color: var(--soft); font-size: .9rem; line-height: 1.85; margin: 0; }
.about-card .num {
            font-family: var(--mono);
            font-size: .78rem;
            color: var(--accent);
            letter-spacing: .12em;
            display: block;
            margin-bottom: .55rem;
        }
.about-timeline { border-left: 1px solid var(--line); padding-left: 1.6rem; margin: 0; }
.about-timeline li { position: relative; list-style: none; padding-bottom: 1.4rem; }
.about-timeline li:last-child { padding-bottom: 0; }
.about-timeline li::before {
            content: "";
            position: absolute;
            left: -1.72rem;
            top: .45rem;
            width: 9px;
            height: 9px;
            border-radius: 50%;
            background: var(--accent);
            box-shadow: 0 0 0 3px rgba(192, 132, 252, .18);
        }
.about-timeline .t-year {
            font-family: var(--mono);
            font-size: .8rem;
            color: var(--main);
            letter-spacing: .08em;
        }
.about-timeline .t-text { color: var(--soft); font-size: .93rem; line-height: 1.85; margin-top: .2rem; }
.about-timeline .t-text strong { color: var(--text); font-weight: 600; }
.about-cta {
            border: 1px solid var(--line);
            border-radius: 16px;
            padding: 2rem 1.8rem;
            background: linear-gradient(135deg, rgba(129, 140, 248, .12), rgba(192, 132, 252, .08));
            text-align: center;
        }
.about-cta h2 { font-size: 1.3rem; font-weight: 800; margin-bottom: .6rem; }
.about-cta p { color: var(--soft); font-size: .93rem; margin-bottom: 1.3rem; }
.about-cta .btn-o { display: inline-block; margin: .3rem .35rem; }
.about-cta { padding: 1.5rem 1.2rem; }

/* --- 子页面追加 --- */
.doc-wrap {max-width:900px;margin:0 auto;padding:0 20px;}
.doc-hero {padding:70px 0 30px;text-align:center;position:relative;}
.doc-hero h1 {font-size:clamp(1.6rem,4.2vw,2.6rem);font-weight:800;line-height:1.3;margin:18px 0 14px;background:linear-gradient(100deg,var(--main),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;}
.doc-hero p {color:var(--soft);max-width:640px;margin:0 auto;font-size:.98rem;line-height:1.85;}
.doc-meta {margin-top:22px;font-family:var(--mono);font-size:.78rem;color:var(--soft);letter-spacing:.04em;}
.doc-block {background:rgba(129,140,248,.06);border:1px solid var(--line);border-radius:16px;padding:26px 28px;margin-bottom:22px;}
.doc-block h2 {font-size:1.15rem;font-weight:700;margin:0 0 14px;color:var(--text);display:flex;align-items:center;gap:10px;}
.doc-block h2 i {color:var(--accent);font-size:1rem;}
.doc-block h3 {font-size:.98rem;font-weight:600;margin:18px 0 8px;color:var(--main);}
.doc-block p,.doc-block li {color:var(--soft);font-size:.94rem;line-height:1.9;margin:0 0 10px;}
.doc-block ul {padding-left:20px;margin:0 0 6px;}
.doc-block strong {color:var(--text);font-weight:600;}
.doc-block a {color:var(--main);text-decoration:none;border-bottom:1px dashed var(--line);}
.doc-block a:hover {color:var(--accent);border-bottom-color:var(--accent);}
.doc-note {border-left:3px solid var(--accent);background:rgba(192,132,252,.08);border-radius:0 12px 12px 0;padding:14px 18px;margin:16px 0 0;font-size:.9rem;color:var(--soft);line-height:1.85;}
.doc-toc {display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px;justify-content:center;}
.doc-toc a {font-family:var(--mono);font-size:.78rem;color:var(--soft);border:1px solid var(--line);border-radius:999px;padding:6px 14px;text-decoration:none;transition:.2s;}
.doc-toc a:hover {color:var(--text);border-color:var(--main);background:rgba(129,140,248,.12);}
.doc-hero {padding:48px 0 22px;}
.doc-block {padding:20px 18px;}
.doc-toc {gap:8px;}
.doc-toc a {font-size:.72rem;padding:5px 11px;}

/* --- 子页面追加 --- */
/* 本页专属补充样式，沿用站点变量，不覆盖任何 Bootstrap 组件 */
.rank-panel {background:rgba(129,140,248,.06);border:1px solid var(--line);border-radius:16px;padding:22px 20px;}
.rank-list {list-style:none;margin:0;padding:0;}
.rank-item {display:flex;align-items:center;gap:16px;padding:14px 12px;border-bottom:1px solid var(--line);transition:background .2s ease;}
.rank-item:last-child {border-bottom:none;}
.rank-item:hover {background:rgba(129,140,248,.1);border-radius:10px;}
.rank-no {flex:0 0 42px;font-family:var(--mono);font-size:1.15rem;font-weight:800;color:var(--soft);text-align:center;}
.rank-item.top .rank-no {color:var(--accent);font-size:1.35rem;}
.rank-thumb {flex:0 0 52px;height:52px;border-radius:10px;background:linear-gradient(135deg,rgba(129,140,248,.35),rgba(192,132,252,.35));display:flex;align-items:center;justify-content:center;font-size:1.3rem;}
.rank-body {flex:1;min-width:0;}
.rank-title {font-weight:600;color:var(--text);font-size:1rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rank-meta {font-size:.82rem;color:var(--soft);margin-top:3px;display:flex;flex-wrap:wrap;gap:10px;}
.rank-score {flex:0 0 auto;font-family:var(--mono);font-weight:700;color:var(--main);font-size:1rem;}
.rank-bar {height:4px;border-radius:99px;background:rgba(224,231,255,.14);overflow:hidden;margin-top:8px;}
.rank-bar i {display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--main),var(--accent));}
.rules-list {margin:0;padding-left:0;list-style:none;}
.rules-list li {position:relative;padding-left:26px;margin-bottom:12px;color:var(--soft);line-height:1.75;}
.rules-list li::before {content:"\f058";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:2px;color:var(--main);font-size:.9rem;}
.rules-list li strong {color:var(--text);font-weight:600;}
.tab-btns {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px;}
.tab-btn {border:1px solid var(--line);background:transparent;color:var(--soft);padding:8px 18px;border-radius:99px;font-size:.9rem;cursor:pointer;transition:all .2s ease;font-family:inherit;}
.tab-btn:hover {color:var(--text);border-color:var(--main);}
.tab-btn.active {background:linear-gradient(135deg,var(--main),var(--accent));color:#1e1b4b;border-color:transparent;font-weight:600;}
.rank-tip {font-size:.84rem;color:var(--soft);margin-top:16px;display:flex;gap:8px;align-items:flex-start;}
.rank-tip i {color:var(--accent);margin-top:3px;}
.rank-item {gap:10px;padding:12px 6px;}
.rank-thumb {display:none;}
.rank-no {flex:0 0 30px;font-size:1rem;}

/* --- 子页面追加 --- */
/* 本页专属少量样式：分类索引专用的标签网格与筛选说明 */
  .cat-jump { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.4rem; }
.cat-jump a {
    font-family: var(--mono);
    font-size:.78rem;
    letter-spacing:.02em;
    padding:.42rem .9rem;
    border-radius:999px;
    border:1px solid var(--line);
    color: var(--text);
    background: rgba(129,140,248,.08);
    text-decoration:none;
    transition:.25s ease;
  }
.cat-jump a:hover {
    border-color: var(--accent);
    background: rgba(192,132,252,.18);
    color:#fff;
    transform: translateY(-2px);
  }
.cat-block { margin-top: 3.2rem; }
.cat-block > h2 {
    font-size: 1.42rem;
    font-weight: 800;
    letter-spacing:-.01em;
    margin-bottom:.5rem;
  }
.cat-block > h2 span { color: var(--accent); }
.cat-note {
    color: var(--soft);
    font-size:.92rem;
    line-height:1.85;
    max-width: 62ch;
    margin-bottom: 1.5rem;
  }
.tag-grid {
    display:grid;
    grid-template-columns: repeat(auto-fill, minmax(178px, 1fr));
    gap:.85rem;
  }
.tag-item {
    display:flex;
    flex-direction:column;
    gap:.28rem;
    padding:.95rem 1.05rem;
    border-radius:14px;
    border:1px solid var(--line);
    background: linear-gradient(160deg, rgba(129,140,248,.12), rgba(30,27,75,.55));
    text-decoration:none;
    transition:.25s ease;
  }
.tag-item:hover {
    border-color: var(--accent);
    transform: translateY(-3px);
    box-shadow: 0 12px 28px -14px rgba(192,132,252,.6);
  }
.tag-item strong { color: var(--text); font-size:.98rem; font-weight:700; }
.tag-item em {
    font-style: normal;
    font-family: var(--mono);
    font-size:.72rem;
    color: var(--soft);
    letter-spacing:.02em;
  }
.cat-table-wrap { overflow-x:auto; margin-top:1.2rem; }
table.cat-table { width:100%; border-collapse:collapse; font-size:.9rem; }
table.cat-table th, table.cat-table td {
    text-align:left;
    padding:.78rem .9rem;
    border-bottom:1px solid var(--line);
    vertical-align:top;
  }
table.cat-table th {
    color: var(--accent);
    font-family: var(--mono);
    font-size:.75rem;
    letter-spacing:.06em;
    text-transform:uppercase;
    font-weight:600;
    white-space:nowrap;
  }
table.cat-table td { color: var(--soft); line-height:1.7; }
table.cat-table td:first-child { color: var(--text); font-weight:600; white-space:nowrap; }
.cat-faq { display:grid; gap:1rem; margin-top:1.4rem; }
.cat-faq-item {
    padding:1.1rem 1.25rem;
    border-radius:14px;
    border:1px solid var(--line);
    background: rgba(129,140,248,.07);
  }
.cat-faq-item h3 { font-size:1rem; font-weight:700; margin-bottom:.45rem; }
.cat-faq-item p { color: var(--soft); font-size:.9rem; line-height:1.8; margin:0; }
.tag-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
.cat-block > h2 { font-size:1.2rem; }

/* --- 子页面追加 --- */
.contact-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;}
.channel {background:rgba(129,140,248,.07);border:1px solid var(--line);border-radius:16px;padding:1.5rem;transition:.25s;}
.channel:hover {border-color:var(--main);transform:translateY(-3px);}
.channel .ico {width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(192,132,252,.14);color:var(--accent);font-size:1.1rem;margin-bottom:.9rem;}
.channel h3 {font-size:1.05rem;font-weight:700;margin:0 0 .5rem;color:var(--text);}
.channel p {font-size:.9rem;color:var(--soft);line-height:1.75;margin:0 0 .8rem;}
.channel .meta {font-family:var(--mono);font-size:.78rem;color:var(--main);letter-spacing:.02em;}
.form-shell {background:rgba(30,27,75,.55);border:1px solid var(--line);border-radius:18px;padding:1.8rem;}
.field {margin-bottom:1.1rem;}
.field label {display:block;font-size:.85rem;font-weight:600;color:var(--soft);margin-bottom:.45rem;letter-spacing:.02em;}
.field input,.field select,.field textarea {width:100%;background:rgba(0,0,0,.32);border:1px solid var(--line);border-radius:10px;padding:.72rem .9rem;color:var(--text);font-family:inherit;font-size:.92rem;outline:none;transition:.2s;}
.field input:focus,.field select:focus,.field textarea:focus {border-color:var(--main);box-shadow:0 0 0 3px rgba(129,140,248,.16);}
.field input::placeholder,.field textarea::placeholder {color:rgba(224,231,255,.36);}
.field select option {background:#1e1b4b;color:var(--text);}
.field textarea {resize:vertical;min-height:130px;}
.submit-btn {display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--main),var(--accent));color:#161233;border:none;border-radius:999px;padding:.8rem 1.9rem;font-weight:700;font-size:.95rem;cursor:pointer;transition:.25s;}
.submit-btn:hover {filter:brightness(1.12);transform:translateY(-2px);}
.faq-item h3 {font-size:.98rem;font-weight:700;margin:0 0 .5rem;color:var(--text);}
.faq-item p {font-size:.89rem;color:var(--soft);line-height:1.8;margin:0;}
.note-bar {font-size:.83rem;color:var(--soft);background:rgba(192,132,252,.08);border-left:3px solid var(--accent);border-radius:8px;padding:.8rem 1rem;line-height:1.7;}
.form-shell {padding:1.2rem;}
.channel {padding:1.2rem;}