:root{
    --brand:#ea580c;
    --brand-accent:#d97706;
    --bg:#fffbf5;
    --ink:#1c1917;
    --ink-soft:#4b423c;
    --ink-faint:#7c7167;
    --card:#ffffff;
    --line:#efdfcf;
    --shadow-lg:0 18px 40px -18px rgba(120,60,10,.35), 0 4px 10px -4px rgba(120,60,10,.18);
    --shadow-sm:0 6px 16px -8px rgba(120,60,10,.28), 0 2px 4px -2px rgba(120,60,10,.12);
    --radius:20px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;scroll-padding-top:90px;}
  body{
    margin:0;
    background:
      radial-gradient(circle at 12% 8%, rgba(234,88,12,.07), transparent 45%),
      radial-gradient(circle at 88% 22%, rgba(217,119,6,.08), transparent 42%),
      var(--bg);
    color:var(--ink);
    font-family:'Inter',-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;
    font-weight:400;
    line-height:1.85;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4,.display-font{
    font-weight:900;
    letter-spacing:-.02em;
    line-height:1.25;
  }
  .mono{font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;font-variant-numeric:tabular-nums;}
  a{color:var(--brand);text-decoration:none;}
  a:hover{color:var(--brand-accent);}

  /* 滚动进度条 */
  #readProgress{
    position:fixed;top:0;left:0;height:4px;width:0%;
    background:linear-gradient(90deg,var(--brand),var(--brand-accent));
    z-index:2000;
    box-shadow:0 0 12px rgba(234,88,12,.55);
    transition:width .08s linear;
  }
  /* 导航 */
  .site-nav{
    position:sticky;top:0;z-index:1500;
    background:rgba(255,251,245,.55);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    border-bottom:1px solid transparent;
    transition:background .35s ease, box-shadow .35s ease, border-color .35s ease;
  }
  .site-nav.scrolled{
    background:rgba(255,251,245,.94);
    border-bottom-color:var(--line);
    box-shadow:0 8px 24px -18px rgba(120,60,10,.55);
  }
  .nav-inner{
    max-width:960px;margin:0 auto;padding:14px 20px;
    display:flex;align-items:center;justify-content:space-between;gap:16px;
  }
  .brand-mark{
    display:inline-flex;align-items:center;gap:9px;
    font-weight:900;font-size:1.16rem;color:var(--ink);
    padding:8px 16px;border-radius:14px;
    background:linear-gradient(180deg,#ffffff,#fff4e8);
    border:1px solid var(--line);
    box-shadow:var(--shadow-sm);
  }
  .brand-mark:hover{color:var(--ink);}
  .brand-mark i{color:var(--brand);font-size:1.05rem;}
  .nav-links{display:flex;align-items:center;gap:4px;flex-wrap:wrap;}
  .nav-links a{
    color:var(--ink-soft);font-size:.92rem;font-weight:600;
    padding:7px 13px;border-radius:10px;transition:.22s;
    border:1px solid transparent;
  }
  .nav-links a:hover{color:var(--brand);background:#fff4e8;border-color:var(--line);}
  .nav-toggle{
    display:none;background:none;border:1px solid var(--line);border-radius:12px;
    padding:8px 12px;color:var(--ink);font-size:1rem;cursor:pointer;
  }
  @media (max-width:768px){
    .nav-toggle{display:inline-block;}
    .nav-links{
      display:none;width:100%;flex-direction:column;align-items:stretch;
      padding-top:10px;gap:2px;
    }
    .nav-links.open{display:flex;}
    .nav-inner{flex-wrap:wrap;}
    .nav-links a{padding:10px 12px;}
  }

  .wrap{max-width:840px;margin:0 auto;padding:0 22px;}

  /* HERO */
  .hero{
    position:relative;padding:88px 0 104px;text-align:center;overflow:hidden;
  }
  .hero::after{
    content:"";position:absolute;left:0;right:0;bottom:-1px;height:70px;
    background:var(--card);
    -webkit-clip-path:polygon(0 100%,100% 100%,100% 0,75% 45%,50% 10%,25% 45%,0 0);
    clip-path:polygon(0 100%,100% 100%,100% 0,75% 45%,50% 10%,25% 45%,0 0);
  }
  .tagline{
    display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.16em;
    text-transform:uppercase;color:var(--brand);
    background:#fff2e3;border:1px solid #f8d9b6;border-radius:999px;
    padding:6px 16px;margin-bottom:26px;
    box-shadow:var(--shadow-sm);
  }
  .hero h1{
    font-size:clamp(2rem,5.4vw,3.3rem);
    margin:0 auto 22px;max-width:15em;
    text-shadow:0 2px 0 #fff,0 14px 30px rgba(180,90,20,.16);
  }
  .hero h1 em{
    font-style:normal;
    background:linear-gradient(180deg,var(--brand-accent),var(--brand));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero p.lead-sub{
    font-size:clamp(1rem,2.2vw,1.13rem);color:var(--ink-soft);
    max-width:34em;margin:0 auto 38px;font-weight:400;
  }
  .btn-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
  .btn-solid,.btn-ghost{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 32px;border-radius:16px;font-weight:800;font-size:1rem;
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
  }
  .btn-solid{
    color:#fff;
    background:linear-gradient(180deg,#f97316,var(--brand));
    box-shadow:0 12px 24px -10px rgba(234,88,12,.7),inset 0 1px 0 rgba(255,255,255,.4);
  }
  .btn-solid:hover{color:#fff;transform:translateY(-2px);box-shadow:0 18px 32px -12px rgba(234,88,12,.8),inset 0 1px 0 rgba(255,255,255,.4);}
  .btn-ghost{
    color:var(--ink);background:linear-gradient(180deg,#ffffff,#fdf3e8);
    border:1px solid var(--line);
    box-shadow:0 10px 20px -14px rgba(120,60,10,.5);
  }
  .btn-ghost:hover{color:var(--brand);transform:translateY(-2px);}

  /* 通用区块 */
  section.block{padding:72px 0;}
  .kicker{
    font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
    color:var(--brand-accent);margin-bottom:14px;display:block;
  }
  h2.sec-title{
    font-size:clamp(1.5rem,3.4vw,2.05rem);
    margin:0 0 18px;
  }
  .sec-desc{color:var(--ink-soft);max-width:40em;margin:0 0 40px;}

  /* 波浪分割 */
  .wave-sep{line-height:0;position:relative;}
  .wave-sep svg{display:block;width:100%;height:56px;}

  /* 对比表格 */
  .panel{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:var(--shadow-lg);
    overflow:hidden;
  }
  .panel-head{
    padding:22px 26px;
    background:linear-gradient(180deg,#fff8f0,#fff2e5);
    border-bottom:1px solid var(--line);
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  }
  .panel-head h3{margin:0;font-size:1.08rem;font-weight:900;}
  .panel-head .chip{
    font-size:.72rem;font-weight:700;letter-spacing:.08em;
    color:var(--brand);background:#fff;border:1px solid #f6d9bb;
    border-radius:999px;padding:3px 12px;
  }
  .compare-scroll{overflow-x:auto;}
  table.compare{
    width:100%;border-collapse:collapse;min-width:560px;
    font-size:.95rem;
  }
  table.compare th,table.compare td{
    padding:17px 24px;text-align:left;vertical-align:middle;
    border-bottom:1px solid #f7ebdd;
  }
  table.compare thead th{
    background:#fffdf9;font-weight:900;font-size:.86rem;
    letter-spacing:.05em;color:var(--ink-soft);text-transform:uppercase;
  }
  table.compare tbody tr:last-child th,table.compare tbody tr:last-child td{border-bottom:0;}
  table.compare tbody th{font-weight:700;color:var(--ink);width:34%;}
  table.compare td.yes{color:#15803d;font-weight:700;}
  table.compare td.no{color:#a8a29e;font-weight:600;}
  table.compare tbody tr{transition:background .2s;}
  table.compare tbody tr:hover{background:#fffaf3;}
  .cell-icon{margin-right:7px;}

  /* 特色卡片 */
  .features-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:22px;
  }
  .feature-card{
    position:relative;
    background:linear-gradient(180deg,#ffffff,#fffaf4);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:30px 26px;
    box-shadow:var(--shadow-sm);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  }
  .feature-card:hover{
    transform:scale(1.025) translateY(-3px);
    border-color:var(--brand);
    box-shadow:0 24px 42px -22px rgba(234,88,12,.5);
  }
  .feature-ico{
    width:52px;height:52px;border-radius:16px;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1.25rem;color:#fff;margin-bottom:20px;
    background:linear-gradient(160deg,#fdba74,var(--brand));
    box-shadow:0 10px 18px -10px rgba(234,88,12,.85),inset 0 1px 0 rgba(255,255,255,.5);
  }
  .feature-card h3{font-size:1.06rem;margin:0 0 10px;}
  .feature-card p{margin:0;color:var(--ink-soft);font-size:.94rem;line-height:1.8;}

  /* 介绍 编号清单 */
  .intro-list{counter-reset:step;list-style:none;padding:0;margin:0;display:grid;gap:20px;}
  .intro-list li{
    counter-increment:step;
    position:relative;
    background:var(--card);
    border:1px solid var(--line);
    border-radius:18px;
    padding:24px 26px 24px 84px;
    box-shadow:var(--shadow-sm);
    transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  }
  .intro-list li:hover{
    transform:scale(1.012);
    border-color:var(--brand);
    box-shadow:0 20px 36px -22px rgba(234,88,12,.45);
  }
  .intro-list li::before{
    content:counter(step,decimal-leading-zero);
    position:absolute;left:24px;top:22px;
    font-family:'SFMono-Regular',Consolas,Menlo,monospace;
    font-weight:800;font-size:.95rem;color:var(--brand);
    width:42px;height:42px;border-radius:13px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(180deg,#fff4e6,#ffe6cb);
    border:1px solid #f8d9b6;
    box-shadow:inset 0 1px 0 #fff;
  }
  .intro-list h3{margin:0 0 8px;font-size:1.02rem;}
  .intro-list p{margin:0;color:var(--ink-soft);font-size:.94rem;}

  /* FAQ */
  .faq-item{
    background:var(--card);
    border:1px solid var(--line);
    border-radius:16px;
    margin-bottom:16px;
    box-shadow:var(--shadow-sm);
    overflow:hidden;
    transition:border-color .22s ease, box-shadow .22s ease;
  }
  .faq-item:hover{border-color:#f3c79c;}
  .faq-item summary{
    cursor:pointer;list-style:none;
    padding:22px 26px;font-weight:800;font-size:1rem;
    display:flex;align-items:flex-start;gap:14px;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-q-mark{
    flex:0 0 auto;width:26px;height:26px;border-radius:9px;
    display:inline-flex;align-items:center;justify-content:center;
    font-size:.72rem;font-weight:900;color:#fff;
    background:linear-gradient(160deg,var(--brand-accent),var(--brand));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
    margin-top:2px;
  }
  .faq-item[open] summary{color:var(--brand);}
  .faq-a{
    padding:0 26px 24px 66px;color:var(--ink-soft);font-size:.95rem;
  }

  /* CTA */
  .cta-box{
    position:relative;
    background:linear-gradient(165deg,#fff5ea,#ffe9d2 55%,#ffdcbb);
    border:1px solid #f6d3ac;
    border-radius:28px;
    padding:60px 34px;
    text-align:center;
    box-shadow:0 30px 60px -34px rgba(180,90,20,.55),inset 0 1px 0 rgba(255,255,255,.85);
    overflow:hidden;
  }
  .cta-box::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.9),transparent 55%);
    pointer-events:none;
  }
  .cta-box h2{position:relative;font-size:clamp(1.5rem,3.6vw,2.1rem);margin:0 0 16px;}
  .cta-box p{position:relative;color:var(--ink-soft);max-width:32em;margin:0 auto 34px;}
  .cta-box .btn-row{position:relative;}

  /* 友情链接 */
  .friend-links{
    padding:52px 0 30px;text-align:center;
  }
  .friend-links h3{
    font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
    color:var(--ink-faint);margin:0 0 18px;
  }
  .friend-links .fl-box{
    display:inline-block;padding:16px 26px;border-radius:14px;
    background:#fff;border:1px dashed #f0d5ba;
    color:var(--ink-soft);font-size:.9rem;
    box-shadow:var(--shadow-sm);
    max-width:100%;overflow-wrap:anywhere;
  }

  /* 页脚 */
  footer.site-footer{
    border-top:1px solid var(--line);
    background:linear-gradient(180deg,#fffaf3,#fff3e5);
    padding:44px 0 34px;
    margin-top:20px;
  }
  .footer-inner{
    max-width:840px;margin:0 auto;padding:0 22px;
    display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:flex-start;
  }
  .footer-brand{font-weight:900;font-size:1.05rem;margin-bottom:10px;display:flex;align-items:center;gap:9px;}
  .footer-brand i{color:var(--brand);}
  .footer-note{color:var(--ink-faint);font-size:.86rem;max-width:30em;line-height:1.8;}
  .footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.88rem;}
  .footer-links a{color:var(--ink-soft);font-weight:600;}
  .footer-links a:hover{color:var(--brand);}
  .copyright{
    max-width:840px;margin:28px auto 0;padding:20px 22px 0;
    border-top:1px solid #f3e2d1;
    color:var(--ink-faint);font-size:.82rem;
    display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;
  }
  .top-link{
    position:fixed;right:20px;bottom:22px;z-index:1200;
    width:46px;height:46px;border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(180deg,#ffffff,#fdf0e1);
    border:1px solid var(--line);color:var(--brand);font-size:.95rem;
    box-shadow:var(--shadow-sm);cursor:pointer;opacity:0;pointer-events:none;
    transition:opacity .3s, transform .3s;
  }
  .top-link.show{opacity:1;pointer-events:auto;}
  .top-link:hover{transform:translateY(-3px);}

/* --- 子页面追加 --- */
.about-hero {padding:64px 0 34px;text-align:center;}
.about-hero h1 {font-size:clamp(1.7rem,3.6vw,2.7rem);font-weight:900;color:var(--ink);line-height:1.25;margin:14px 0 16px;}
.about-hero h1 em {font-style:normal;color:var(--brand);}
.about-hero .tagline {max-width:760px;margin:0 auto;}
.about-sec {padding:34px 0;}
.about-sec h2 {font-size:clamp(1.25rem,2.4vw,1.65rem);font-weight:800;color:var(--ink);margin-bottom:10px;}
.about-sec h2 .num {color:var(--brand-accent);font-family:'Inter',monospace;font-weight:800;margin-right:8px;}
.about-sec p {color:var(--ink-soft);line-height:1.9;margin-bottom:12px;}
.about-card {background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px 22px;height:100%;}
.about-card h3 {font-size:1.05rem;font-weight:800;color:var(--ink);margin-bottom:8px;display:flex;align-items:center;gap:9px;}
.about-card h3 i {color:var(--brand);font-size:.95rem;}
.about-card p {font-size:.94rem;margin-bottom:0;}
.about-quote {border-left:4px solid var(--brand);background:rgba(234,88,12,.06);border-radius:0 var(--radius) var(--radius) 0;padding:18px 22px;color:var(--ink-soft);font-size:.97rem;line-height:1.85;margin:6px 0 0;}
.pillrow {display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.pill {font-family:'Inter',monospace;font-size:.82rem;font-weight:600;color:var(--brand-accent);background:rgba(217,119,6,.1);border:1px solid rgba(217,119,6,.28);border-radius:999px;padding:7px 14px;}
.stat-strip {display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px;}
.stat-box {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px 14px;text-align:center;box-shadow:var(--shadow-sm);}
.stat-box b {display:block;font-family:'Inter',monospace;font-size:1.45rem;font-weight:800;color:var(--brand);line-height:1.2;}
.stat-box span {font-size:.82rem;color:var(--ink-faint);}
.stat-strip {grid-template-columns:repeat(2,1fr);}
.about-hero {padding:40px 0 22px;}

/* --- 子页面追加 --- */
.legal-hero { padding: 64px 0 32px; }
.legal-hero h1 { font-size: clamp(1.7rem, 4vw, 2.6rem); line-height: 1.25; font-weight: 800; color: var(--ink); margin: 14px 0 12px; }
.legal-hero .lead { color: var(--ink-soft); font-size: 1.02rem; line-height: 1.85; max-width: 760px; }
.legal-body { padding-bottom: 24px; }
.legal-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    padding: 30px 32px;
    margin-bottom: 22px;
  }
.legal-card h2 {
    font-size: 1.22rem;
    font-weight: 700;
    color: var(--ink);
    margin: 0 0 14px;
    display: flex;
    align-items: center;
    gap: 10px;
  }
.legal-card h2 i { color: var(--brand); font-size: 1rem; }
.legal-card p { color: var(--ink-soft); line-height: 1.9; margin: 0 0 12px; font-size: .97rem; }
.legal-card p:last-child { margin-bottom: 0; }
.legal-card ul { margin: 0 0 12px; padding-left: 20px; }
.legal-card li { color: var(--ink-soft); line-height: 1.9; font-size: .97rem; margin-bottom: 6px; }
.legal-card strong { color: var(--ink); font-weight: 600; }
.legal-meta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ink-faint);
    font-size: .84rem;
    margin-top: 6px;
  }
.legal-toc {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    padding: 22px 28px;
    margin-bottom: 26px;
  }
.legal-toc h3 { font-size: .95rem; font-weight: 700; color: var(--ink); margin: 0 0 12px; letter-spacing: .02em; }
.legal-toc ol { margin: 0; padding-left: 20px; }
.legal-toc li { margin-bottom: 7px; }
.legal-toc a { color: var(--ink-soft); text-decoration: none; font-size: .92rem; transition: color .2s; }
.legal-toc a:hover { color: var(--brand); }
.legal-note {
    border-left: 3px solid var(--brand);
    background: rgba(234, 88, 12, .06);
    border-radius: 8px;
    padding: 14px 18px;
    color: var(--ink-soft);
    font-size: .93rem;
    line-height: 1.85;
    margin: 16px 0 0;
  }
.legal-card { padding: 22px 20px; }
.legal-toc { padding: 18px 20px; }
.legal-hero { padding: 40px 0 20px; }

/* --- 子页面追加 --- */
.guide-hero {position:relative;overflow:hidden}
.guide-hero .hero-inner {position:relative;z-index:2}
.guide-step {
    display:grid;grid-template-columns:64px 1fr;gap:20px;
    padding:26px 26px;border:1px solid var(--line);border-radius:var(--radius);
    background:var(--card);box-shadow:var(--shadow-sm);margin-bottom:18px;
  }
.guide-step .step-no {
    font-family:'Inter',monospace;font-weight:800;font-size:26px;color:var(--brand);
    display:flex;align-items:center;justify-content:center;
    width:64px;height:64px;border-radius:18px;
    background:linear-gradient(135deg,rgba(234,88,12,.12),rgba(217,119,6,.06));
    border:1px solid var(--line);
  }
.guide-step h3 {margin:0 0 8px;font-size:19px;font-weight:700;color:var(--ink)}
.guide-step p {margin:0 0 8px;color:var(--ink-soft);line-height:1.75;font-size:15px}
.guide-step ul {margin:8px 0 0;padding-left:20px;color:var(--ink-soft);font-size:15px;line-height:1.8}
.guide-step ul li::marker {color:var(--brand-accent)}
.guide-note {
    display:flex;gap:14px;align-items:flex-start;
    background:linear-gradient(135deg,rgba(234,88,12,.08),rgba(217,119,6,.04));
    border:1px solid var(--line);border-left:4px solid var(--brand);
    border-radius:14px;padding:18px 22px;margin:22px 0;color:var(--ink-soft);font-size:15px;line-height:1.75;
  }
.guide-note i {color:var(--brand);font-size:20px;margin-top:2px}
.guide-tip-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:8px}
.guide-tip {
    background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
    padding:22px 22px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease;
  }
.guide-tip:hover {transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.guide-tip i {font-size:22px;color:var(--brand);margin-bottom:12px;display:block}
.guide-tip h4 {margin:0 0 8px;font-size:16px;font-weight:700;color:var(--ink)}
.guide-tip p {margin:0;font-size:14px;line-height:1.7;color:var(--ink-faint)}
.guide-tip code,.guide-step code {background:rgba(234,88,12,.1);color:var(--brand-accent);padding:1px 6px;border-radius:6px;font-size:13px}
.guide-step {grid-template-columns:1fr;padding:20px}
.guide-step .step-no {width:52px;height:52px;font-size:22px}