:root{
    --main:#f97316;
    --accent:#facc15;
    --bg:#1a1410;
    --text:#fff7ed;
    --line:rgba(250,204,21,.18);
    --card-bg:#221a14;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:"Inter","Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
    font-weight:400;
    letter-spacing:.2px;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4,.serif{
    font-family:"Source Han Serif SC","Noto Serif SC","SimSun",serif;
    letter-spacing:1px;
  }
  a{text-decoration:none;color:inherit;}
  ::selection{background:var(--main);color:#1a1410;}

  /* ===== 顶部导航 ===== */
  .site-nav{
    position:sticky;top:0;z-index:1000;
    background:rgba(26,20,16,.92);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:1280px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;
    padding:16px 24px;gap:20px;
  }
  .brand{
    font-family:"Source Han Serif SC","Noto Serif SC",serif;
    font-size:1.45rem;font-weight:700;
    color:var(--text);display:flex;align-items:center;gap:8px;
    white-space:nowrap;
  }
  .brand i{color:var(--main);font-size:1.2rem;}
  .brand span.dot{color:var(--accent);}
  .nav-links{
    display:flex;gap:6px;align-items:center;flex-wrap:wrap;
    list-style:none;margin:0;padding:0;
  }
  .nav-links a{
    display:inline-block;padding:7px 14px;border-radius:999px;
    font-size:.9rem;color:rgba(255,247,237,.72);
    border:1px solid transparent;transition:.25s;
    white-space:nowrap;
  }
  .nav-links a:hover,.nav-links a.active{
    color:var(--text);border-color:var(--main);
    background:rgba(249,115,22,.12);
  }
  .nav-toggle{
    display:none;background:none;border:1px solid var(--line);
    color:var(--text);border-radius:8px;padding:6px 12px;font-size:1.1rem;
  }
  @media(max-width:900px){
    .nav-toggle{display:block;}
    .nav-links{
      display:none;position:absolute;top:100%;left:0;right:0;
      flex-direction:column;align-items:stretch;
      background:#1a1410;border-bottom:1px solid var(--line);
      padding:10px 18px;gap:2px;
    }
    .nav-links.open{display:flex;}
    .nav-links a{padding:11px 14px;border-radius:8px;}
  }

  /* ===== 容器 ===== */
  .wrap{max-width:1280px;margin:0 auto;padding:0 24px;}

  /* ===== Hero ===== */
  .hero{position:relative;padding:86px 0 64px;overflow:hidden;}
  .hero-float{position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px);opacity:.55;}
  .hero-float.f1{width:160px;height:160px;background:radial-gradient(circle at 30% 30%,rgba(249,115,22,.55),transparent 70%);top:6%;right:8%;animation:floaty 9s ease-in-out infinite;}
  .hero-float.f2{width:110px;height:110px;background:radial-gradient(circle at 50% 50%,rgba(250,204,21,.5),transparent 70%);top:48%;left:4%;animation:floaty 12s ease-in-out infinite reverse;}
  .hero-float.f3{width:70px;height:70px;border:1px solid var(--line);background:transparent;bottom:12%;right:26%;animation:floaty 7s ease-in-out infinite;}
  @keyframes floaty{0%,100%{transform:translateY(0) translateX(0);}50%{transform:translateY(-22px) translateX(10px);}}
  .hero-eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-size:.78rem;letter-spacing:2px;color:var(--accent);
    border:1px solid var(--line);border-radius:999px;padding:6px 16px;
    text-transform:uppercase;margin-bottom:22px;
  }
  .hero h1{
    font-size:clamp(2.4rem,6vw,4.6rem);
    font-weight:700;line-height:1.12;margin-bottom:20px;
    background:linear-gradient(100deg,var(--main) 0%,var(--accent) 55%,#fff7ed 100%);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:transparent;
  }
  .hero p.lead-txt{
    max-width:620px;font-size:1.02rem;line-height:1.85;
    color:rgba(255,247,237,.68);
  }
  .hero-stats{display:flex;gap:44px;flex-wrap:wrap;margin-top:40px;}
  .hero-stat b{
    display:block;font-size:2.1rem;font-weight:800;color:var(--main);
    font-family:"Inter",sans-serif;line-height:1;
  }
  .hero-stat small{display:block;margin-top:8px;font-size:.82rem;color:rgba(255,247,237,.55);letter-spacing:1px;}

  /* ===== 区块通用 ===== */
  .section{padding:58px 0;border-top:1px solid var(--line);}
  .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:36px;flex-wrap:wrap;}
  .sec-head h2{font-size:clamp(1.5rem,3vw,2.15rem);font-weight:700;margin:0;}
  .sec-head h2 em{font-style:normal;color:var(--main);}
  .sec-head .sec-sub{font-size:.86rem;color:rgba(255,247,237,.5);margin-top:8px;}
  .sec-more{font-size:.84rem;color:var(--accent);border:1px solid var(--line);padding:8px 18px;border-radius:999px;transition:.25s;white-space:nowrap;}
  .sec-more:hover{border-color:var(--main);color:var(--main);}

  /* ===== 海报卡片 ===== */
  .poster-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(168px,1fr));
    gap:22px;
  }
  .poster-card{
    background:var(--card-bg);
    border:1px solid var(--line);
    border-radius:10px;
    overflow:hidden;
    cursor:pointer;
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
    position:relative;
    display:flex;flex-direction:column;
  }
  .poster-card:hover{
    transform:scale(1.035) translateY(-6px);
    border-color:var(--main);
    box-shadow:0 18px 40px -12px rgba(0,0,0,.75);
    z-index:2;
  }
  .poster-thumb{
    position:relative;width:100%;aspect-ratio:2/3;
    background:linear-gradient(145deg,#2a2018,#1f1811);
    overflow:hidden;
  }
  .poster-thumb img{
    width:100%;height:100%;object-fit:cover;display:block;
    opacity:0;transition:opacity .6s ease;
  }
  .poster-thumb img.loaded{opacity:1;}
  .badge-q{
    position:absolute;top:8px;left:8px;
    font-size:.66rem;font-weight:700;letter-spacing:.5px;
    padding:3px 8px;border-radius:5px;
    background:var(--accent);color:#1a1410;
  }
  .badge-q.q4k{background:var(--main);color:#fff7ed;}
  .score-tag{
    position:absolute;bottom:8px;right:8px;
    font-size:.78rem;font-weight:800;
    background:rgba(26,20,16,.86);color:var(--accent);
    padding:3px 9px;border-radius:6px;border:1px solid rgba(250,204,21,.3);
  }
  .poster-meta{padding:12px 12px 14px;}
  .poster-meta h3{
    font-size:.94rem;font-weight:600;margin:0 0 6px;
    font-family:"Inter","Noto Sans SC",sans-serif;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .poster-meta .pm-line{
    font-size:.74rem;color:rgba(255,247,237,.5);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }

  /* 横向滚动行 */
  .scroll-row{
    display:flex;gap:20px;overflow-x:auto;padding-bottom:14px;
    scroll-behavior:smooth;
  }
  .scroll-row::-webkit-scrollbar{height:6px;}
  .scroll-row::-webkit-scrollbar-thumb{background:rgba(249,115,22,.4);border-radius:99px;}
  .scroll-row::-webkit-scrollbar-track{background:transparent;}
  .scroll-row .poster-card{flex:0 0 176px;}

  /* ===== 榜单 ===== */
  .rank-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px;}
  @media(max-width:820px){.rank-list{grid-template-columns:1fr;}}
  .rank-item{
    display:flex;align-items:center;gap:16px;
    padding:14px 4px;border-bottom:1px solid var(--line);
    cursor:pointer;transition:.25s;
  }
  .rank-item:hover{padding-left:12px;}
  .rank-num{
    font-family:"Inter",sans-serif;font-size:1.5rem;font-weight:800;
    color:rgba(255,247,237,.22);min-width:38px;
  }
  .rank-item:hover .rank-num{color:var(--main);}
  .rank-item:nth-child(-n+3) .rank-num{color:var(--accent);}
  .rank-info{flex:1;min-width:0;}
  .rank-info b{display:block;font-size:1rem;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .rank-info span{font-size:.76rem;color:rgba(255,247,237,.48);}
  .rank-hot{
    font-size:.8rem;font-weight:700;color:var(--main);
    border:1px solid var(--line);border-radius:999px;padding:4px 12px;
    white-space:nowrap;
  }

  /* ===== 标签页(特色) ===== */
  .tab-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px;}
  .tab-btn{
    background:none;border:1px solid var(--line);color:rgba(255,247,237,.6);
    padding:9px 22px;border-radius:999px;font-size:.88rem;cursor:pointer;transition:.25s;
  }
  .tab-btn.active,.tab-btn:hover{border-color:var(--main);color:var(--main);background:rgba(249,115,22,.1);}
  .tab-panel{display:none;}
  .tab-panel.active{display:block;animation:fadeUp .45s ease both;}

  /* ===== 时间线(说明) ===== */
  .timeline{position:relative;padding-left:34px;max-width:760px;}
  .timeline::before{
    content:"";position:absolute;left:9px;top:8px;bottom:8px;
    width:1px;background:var(--line);
  }
  .tl-item{position:relative;padding-bottom:30px;}
  .tl-item::before{
    content:"";position:absolute;left:-30px;top:6px;
    width:9px;height:9px;border-radius:50%;
    background:var(--bg);border:1px solid var(--main);
  }
  .tl-item.on::before{background:var(--main);}
  .tl-item h4{font-size:1rem;margin:0 0 6px;font-weight:600;font-family:"Inter","Noto Sans SC",sans-serif;}
  .tl-item p{font-size:.86rem;color:rgba(255,247,237,.55);margin:0;line-height:1.75;}

  /* ===== 心情选片 ===== */
  .mood-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px;}
  .mood-btn{
    background:none;border:1px solid var(--line);color:rgba(255,247,237,.7);
    padding:10px 24px;border-radius:999px;font-size:.9rem;cursor:pointer;transition:.25s;
  }
  .mood-btn.active,.mood-btn:hover{border-color:var(--accent);color:var(--accent);background:rgba(250,204,21,.1);}
  .mood-panel{display:none;}
  .mood-panel.active{display:block;animation:fadeUp .45s ease both;}
  .mood-tip{font-size:.86rem;color:rgba(255,247,237,.5);margin-bottom:22px;line-height:1.8;}

  /* ===== FAQ ===== */
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-q{
    width:100%;background:none;border:none;color:var(--text);text-align:left;
    padding:22px 4px;font-size:1rem;font-weight:600;cursor:pointer;
    display:flex;justify-content:space-between;align-items:center;gap:18px;
    font-family:"Inter","Noto Sans SC",sans-serif;
  }
  .faq-q i{color:var(--main);transition:.3s;font-size:.8rem;}
  .faq-item.open .faq-q i{transform:rotate(45deg);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease;}
  .faq-a p{font-size:.9rem;line-height:1.85;color:rgba(255,247,237,.6);padding:0 4px 22px;margin:0;}

  /* ===== 友情链接 ===== */
  .friend-section{padding:48px 0;border-top:1px solid var(--line);}
  .friend-section h3{font-size:1rem;font-weight:600;color:rgba(255,247,237,.72);margin-bottom:18px;letter-spacing:1px;}
  .friend-links{
    border:1px dashed var(--line);border-radius:10px;padding:20px 22px;
    font-size:.86rem;color:rgba(255,247,237,.5);line-height:2;
    word-break:break-all;
  }

  /* ===== 页脚 ===== */
  footer.site-footer{border-top:1px solid var(--line);padding:48px 0 34px;}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px;}
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:520px){.foot-grid{grid-template-columns:1fr;}}
  .foot-brand{font-family:"Source Han Serif SC","Noto Serif SC",serif;font-size:1.3rem;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
  .foot-brand i{color:var(--main);}
  .foot-desc{font-size:.84rem;color:rgba(255,247,237,.48);line-height:1.9;max-width:320px;}
  .foot-col h5{font-size:.9rem;font-weight:600;margin-bottom:16px;color:rgba(255,247,237,.85);}
  .foot-col a{display:block;font-size:.84rem;color:rgba(255,247,237,.5);margin-bottom:10px;transition:.2s;}
  .foot-col a:hover{color:var(--main);}
  .foot-bottom{
    margin-top:38px;padding-top:22px;border-top:1px solid var(--line);
    display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
    font-size:.8rem;color:rgba(255,247,237,.4);
  }

  /* ===== 详情侧滑 ===== */
  .drawer-mask{
    position:fixed;inset:0;background:rgba(0,0,0,.6);
    opacity:0;visibility:hidden;transition:.3s;z-index:1900;
  }
  .drawer-mask.show{opacity:1;visibility:visible;}
  .detail-drawer{
    position:fixed;top:0;right:0;height:100%;width:420px;max-width:92vw;
    background:#1a1410;border-left:1px solid var(--main);
    transform:translateX(102%);transition:transform .38s cubic-bezier(.4,0,.2,1);
    z-index:2000;overflow-y:auto;padding:0 0 40px;
  }
  .detail-drawer.show{transform:translateX(0);}
  .drawer-close{
    position:absolute;top:16px;right:16px;z-index:3;
    width:38px;height:38px;border-radius:50%;
    background:rgba(26,20,16,.85);border:1px solid var(--line);
    color:var(--text);font-size:1rem;cursor:pointer;transition:.25s;
    display:flex;align-items:center;justify-content:center;
  }
  .drawer-close:hover{border-color:var(--main);color:var(--main);transform:rotate(90deg);}
  .drawer-poster{width:100%;aspect-ratio:3/4;overflow:hidden;background:#2a2018;}
  .drawer-poster img{width:100%;height:100%;object-fit:cover;display:block;}
  .drawer-body{padding:26px 26px 0;}
  .drawer-body h3{font-size:1.5rem;font-weight:700;margin:0 0 14px;}
  .drawer-score{display:flex;align-items:baseline;gap:10px;margin-bottom:22px;}
  .drawer-score b{font-size:2.6rem;font-weight:800;color:var(--accent);font-family:"Inter",sans-serif;line-height:1;}
  .drawer-score small{font-size:.8rem;color:rgba(255,247,237,.5);}
  .d-field{display:flex;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.88rem;}
  .d-field span{color:rgba(255,247,237,.45);min-width:56px;flex:0 0 56px;}
  .d-field em{font-style:normal;color:var(--text);line-height:1.6;}
  .d-plot{margin-top:24px;}
  .d-plot h4{font-size:.9rem;color:var(--accent);margin-bottom:10px;font-family:"Inter","Noto Sans SC",sans-serif;letter-spacing:1px;}
  .d-plot p{font-size:.88rem;line-height:1.9;color:rgba(255,247,237,.66);margin:0;}

  /* ===== 滚动进入动画 ===== */
  .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.in{opacity:1;transform:none;}
  @keyframes fadeUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}

  @media(max-width:600px){
    .poster-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:14px;}
    .scroll-row .poster-card{flex:0 0 134px;}
    .hero{padding:60px 0 44px;}
    .hero-stats{gap:28px;}
    .hero-stat b{font-size:1.6rem;}
    .section{padding:44px 0;}
    .drawer-body{padding:22px 20px 0;}
  }

/* --- 子页面追加 --- */
/* 本页专属少量样式 */
  .guide-hero {
    padding:64px 0 34px;
    background:
      radial-gradient(900px 320px at 12% -10%, rgba(249,115,22,.22), transparent 60%),
      radial-gradient(760px 300px at 88% 0%, rgba(250,204,21,.14), transparent 62%);
    border-bottom:1px solid var(--line);
  }
.guide-hero h1 {
    font-size:clamp(1.7rem,3.6vw,2.7rem);
    font-weight:800;
    line-height:1.28;
    margin:14px 0 12px;
    letter-spacing:-.5px;
  }
.guide-hero h1 em {
    font-style:normal;
    color:var(--accent);
  }
.guide-lead {
    color:rgba(255,247,237,.74);
    max-width:760px;
    font-size:1.02rem;
    line-height:1.85;
    margin:0;
  }
.step-card {
    background:var(--card-bg);
    border:1px solid var(--line);
    border-radius:16px;
    padding:24px 22px;
    height:100%;
    transition:.25s ease;
  }
.step-card:hover {
    border-color:rgba(249,115,22,.55);
    transform:translateY(-3px);
  }
.step-num {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;height:38px;
    border-radius:11px;
    background:linear-gradient(135deg,var(--main),var(--accent));
    color:#1a1410;
    font-weight:800;
    font-size:1rem;
    margin-bottom:14px;
  }
.step-card h3 {
    font-size:1.05rem;
    font-weight:700;
    margin:0 0 10px;
    color:var(--text);
  }
.step-card p {
    margin:0;
    color:rgba(255,247,237,.7);
    font-size:.93rem;
    line-height:1.8;
  }
.tip-list {
    list-style:none;
    padding:0;
    margin:0;
  }
.tip-list li {
    position:relative;
    padding:12px 0 12px 30px;
    border-bottom:1px dashed var(--line);
    color:rgba(255,247,237,.78);
    font-size:.94rem;
    line-height:1.75;
  }
.tip-list li:last-child {border-bottom:none;}
.tip-list li::before {
    content:"\f058";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    left:0;top:13px;
    color:var(--main);
    font-size:.9rem;
  }
.tip-list li b {color:var(--accent);font-weight:600;}
.qa-item {
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--card-bg);
    padding:20px 22px;
    margin-bottom:14px;
  }
.qa-item h3 {
    font-size:1rem;
    font-weight:700;
    margin:0 0 10px;
    color:var(--accent);
  }
.qa-item p {
    margin:0;
    color:rgba(255,247,237,.72);
    font-size:.93rem;
    line-height:1.85;
  }
.tag-row {display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.tag-pill {
    display:inline-block;
    padding:7px 15px;
    border-radius:999px;
    border:1px solid var(--line);
    background:rgba(249,115,22,.09);
    color:var(--accent);
    font-size:.85rem;
    font-weight:500;
  }
.guide-note {
    border-left:3px solid var(--main);
    background:rgba(249,115,22,.07);
    border-radius:0 12px 12px 0;
    padding:16px 20px;
    color:rgba(255,247,237,.8);
    font-size:.93rem;
    line-height:1.85;
  }
.guide-cta {
    display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;
  }
.guide-cta a {
    display:inline-flex;align-items:center;gap:8px;
    padding:11px 22px;
    border-radius:11px;
    font-weight:600;
    font-size:.94rem;
    text-decoration:none;
    transition:.22s ease;
  }
.guide-cta a.primary {
    background:linear-gradient(135deg,var(--main),var(--accent));
    color:#1a1410;
  }
.guide-cta a.ghost {
    border:1px solid var(--line);
    color:var(--text);
    background:var(--card-bg);
  }
.guide-cta a.primary:hover {filter:brightness(1.08);}
.guide-cta a.ghost:hover {border-color:var(--main);color:var(--accent);}
.guide-hero {padding:44px 0 26px;}
.step-card {padding:20px 18px;}

/* --- 子页面追加 --- */
.about-hero {
    padding:64px 0 40px;
    border-bottom:1px solid var(--line);
    background:
      radial-gradient(900px 360px at 12% -10%, rgba(249,115,22,.20), transparent 60%),
      radial-gradient(700px 320px at 88% 0%, rgba(250,204,21,.10), transparent 60%);
  }
.about-hero h1 {
    font-size:clamp(1.7rem,3.6vw,2.7rem);
    font-weight:900;
    line-height:1.25;
    margin:14px 0 16px;
    letter-spacing:-.01em;
  }
.about-hero h1 em {
    font-style:normal;
    color:var(--main);
  }
.about-hero p.lead-text {
    color:rgba(255,247,237,.72);
    font-size:1.02rem;
    line-height:1.9;
    max-width:760px;
    margin:0;
  }
.about-tag {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 14px;
    border:1px solid var(--line);
    border-radius:999px;
    background:rgba(249,115,22,.10);
    color:var(--accent);
    font-size:.78rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-weight:600;
  }
.about-section {
    padding:52px 0;
    border-bottom:1px solid var(--line);
  }
.about-section:last-of-type {border-bottom:none;}
.about-section h2 {
    font-size:clamp(1.25rem,2.2vw,1.65rem);
    font-weight:800;
    margin:0 0 10px;
    line-height:1.4;
  }
.about-section h2 span {color:var(--main);}
.about-sub {
    color:rgba(255,247,237,.55);
    font-size:.94rem;
    margin:0 0 26px;
    line-height:1.8;
  }
.about-section p {
    color:rgba(255,247,237,.76);
    line-height:1.95;
    font-size:.96rem;
  }
.fact-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
    gap:16px;
    margin-top:8px;
  }
.fact-box {
    background:var(--card-bg);
    border:1px solid var(--line);
    border-radius:14px;
    padding:20px 20px 18px;
    transition:border-color .25s ease, transform .25s ease;
  }
.fact-box:hover {
    border-color:rgba(249,115,22,.55);
    transform:translateY(-3px);
  }
.fact-num {
    font-size:1.7rem;
    font-weight:900;
    color:var(--accent);
    line-height:1.1;
    letter-spacing:-.02em;
  }
.fact-num small {
    font-size:.85rem;
    color:var(--main);
    font-weight:700;
    margin-left:3px;
  }
.fact-label {
    margin-top:8px;
    font-size:.86rem;
    color:rgba(255,247,237,.62);
    line-height:1.6;
  }
.info-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:14px;
  }
.info-list li {
    position:relative;
    padding:16px 20px 16px 54px;
    background:var(--card-bg);
    border:1px solid var(--line);
    border-radius:12px;
    color:rgba(255,247,237,.78);
    line-height:1.85;
    font-size:.94rem;
  }
.info-list li i {
    position:absolute;
    left:19px;
    top:18px;
    color:var(--main);
    font-size:1rem;
  }
.info-list li strong {
    color:var(--accent);
    font-weight:700;
  }
.steps {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:18px;
    counter-reset:step;
  }
.step-card::before {
    counter-increment:step;
    content:"0" counter(step);
    display:block;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.12em;
    color:var(--main);
    margin-bottom:10px;
  }
.about-quote {
    margin:0;
    padding:26px 26px 26px 30px;
    border-left:3px solid var(--main);
    background:linear-gradient(90deg, rgba(249,115,22,.10), transparent 70%);
    border-radius:0 14px 14px 0;
    color:rgba(255,247,237,.82);
    font-size:1rem;
    line-height:1.95;
  }
.about-cta {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:26px;
  }
.btn-main {
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:12px 24px;
    border-radius:999px;
    background:var(--main);
    color:#1a1410;
    font-weight:800;
    font-size:.92rem;
    text-decoration:none;
    border:1px solid var(--main);
    transition:transform .2s ease, box-shadow .2s ease;
  }
.btn-main:hover {
    color:#1a1410;
    transform:translateY(-2px);
    box-shadow:0 10px 26px rgba(249,115,22,.32);
  }
.btn-ghost {
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:12px 24px;
    border-radius:999px;
    background:transparent;
    color:var(--accent);
    font-weight:700;
    font-size:.92rem;
    text-decoration:none;
    border:1px solid var(--line);
    transition:border-color .2s ease, color .2s ease;
  }
.btn-ghost:hover {
    color:var(--main);
    border-color:rgba(249,115,22,.55);
  }
.about-hero {padding:44px 0 30px;}
.about-section {padding:38px 0;}
.info-list li {padding:15px 16px 15px 46px;}
.info-list li i {left:15px;}

/* --- 子页面追加 --- */
/* 本页专属少量样式，沿用站点配色变量 */
  .legal-hero {
    padding: 56px 0 32px;
    border-bottom: 1px solid var(--line);
    background: radial-gradient(900px 320px at 20% 0%, rgba(249,115,22,.16), transparent 70%);
  }
.legal-hero h1 {
    font-size: clamp(1.6rem, 3.6vw, 2.5rem);
    font-weight: 800;
    line-height: 1.35;
    color: var(--text);
    margin: 10px 0 14px;
  }
.legal-hero h1 em { color: var(--accent); font-style: normal; }
.legal-hero p.lead-txt {
    color: rgba(255,247,237,.72);
    max-width: 760px;
    line-height: 1.9;
    font-size: .98rem;
    margin: 0;
  }
.legal-meta {
    display: flex; flex-wrap: wrap; gap: 18px;
    margin-top: 20px; font-size: .84rem;
    color: rgba(255,247,237,.5);
  }
.legal-meta i { color: var(--main); margin-right: 6px; }
.legal-wrap { padding: 46px 0 60px; }
.legal-layout { display: grid; grid-template-columns: 240px 1fr; gap: 36px; align-items: start; }
.legal-toc {
    position: sticky; top: 84px;
    background: var(--card-bg);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 18px 16px;
  }
.legal-toc h3 {
    font-size: .82rem; letter-spacing: .12em; text-transform: uppercase;
    color: var(--accent); margin: 0 0 12px; font-weight: 700;
  }
.legal-toc a {
    display: block; padding: 8px 10px; border-radius: 8px;
    color: rgba(255,247,237,.72); font-size: .9rem;
    text-decoration: none; transition: .18s;
    border-left: 2px solid transparent;
  }
.legal-toc a:hover { background: rgba(249,115,22,.12); color: var(--text); border-left-color: var(--main); }
.legal-block {
    background: var(--card-bg);
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 26px 26px 22px;
    margin-bottom: 22px;
  }
.legal-block h2 {
    font-size: 1.18rem; font-weight: 700; color: var(--text);
    margin: 0 0 14px; display: flex; align-items: flex-start; gap: 10px; line-height: 1.5;
  }
.legal-block h2 .idx {
    flex: 0 0 auto;
    display: inline-flex; align-items: center; justify-content: center;
    width: 26px; height: 26px; border-radius: 8px; margin-top: 2px;
    background: rgba(249,115,22,.16); color: var(--main);
    font-size: .8rem; font-weight: 800;
  }
.legal-block p, .legal-block li {
    color: rgba(255,247,237,.76);
    font-size: .95rem; line-height: 1.95;
  }
.legal-block p { margin: 0 0 12px; }
.legal-block p:last-child { margin-bottom: 0; }
.legal-block ul { margin: 0 0 12px; padding-left: 20px; }
.legal-block li { margin-bottom: 8px; }
.legal-block strong { color: var(--accent); font-weight: 600; }
.legal-note {
    border-left: 3px solid var(--main);
    background: rgba(249,115,22,.08);
    border-radius: 0 10px 10px 0;
    padding: 14px 16px; margin: 6px 0 16px;
  }
.legal-note p { margin: 0; color: rgba(255,247,237,.82); font-size: .92rem; }
.legal-cta {
    display: flex; flex-wrap: wrap; gap: 12px; margin-top: 4px;
  }
.legal-cta a {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 20px; border-radius: 999px;
    font-size: .9rem; font-weight: 600; text-decoration: none;
    background: var(--main); color: #1a1410; transition: .2s;
  }
.legal-cta a.ghost {
    background: transparent; color: var(--accent);
    border: 1px solid var(--line);
  }
.legal-cta a:hover { transform: translateY(-2px); opacity: .92; }
.legal-layout { grid-template-columns: 1fr; gap: 22px; }
.legal-toc { position: static; }
.legal-block { padding: 20px 18px; }