:root{
      --bg:#f6f7fb;
      --bg2:#eef3ff;
      --card:#ffffff;
      --text:#132033;
      --muted:#5b6b83;
      --line:#dce4f2;
      --brand:#246bff;
      --brand2:#8a5cff;
      --accent:#18b7a6;
      --warm:#ffcf5a;
      --shadow:0 18px 50px rgba(34,64,140,.10);
      --radius:20px;
      --radius-sm:14px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at top left, rgba(36,107,255,.10), transparent 28%),
        radial-gradient(circle at top right, rgba(138,92,255,.10), transparent 22%),
        linear-gradient(180deg, #ffffff 0%, var(--bg) 36%, #f7f9fe 100%);
      min-height:100vh;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    .container{width:min(var(--container), calc(100% - 32px)); margin:0 auto}
    .topbar{
      position:sticky; top:0; z-index:50;
      backdrop-filter:saturate(140%) blur(16px);
      background:rgba(255,255,255,.84);
      border-bottom:1px solid rgba(220,228,242,.9);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:18px;
      padding:14px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand .ai-page-logo{width:42px; height:42px; object-fit:contain; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(34,64,140,.08)}
    .brand-text{min-width:0}
    .brand-text strong{display:block; font-size:16px; letter-spacing:.4px}
    .brand-text span{display:block; font-size:12px; color:var(--muted); margin-top:2px}
    .nav-links{
      display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end;
      font-size:14px;
    }
    .nav-links a{color:#31435d; padding:8px 10px; border-radius:999px; transition:.2s ease}
    .nav-links a:hover{background:#edf3ff; color:var(--brand)}
    .nav-actions{display:flex; align-items:center; gap:10px}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border:1px solid transparent; border-radius:999px; padding:12px 18px;
      font-weight:700; cursor:pointer; transition:.25s ease; line-height:1;
      white-space:nowrap;
    }
    .btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; box-shadow:0 14px 30px rgba(36,107,255,.22)}
    .btn-primary:hover{transform:translateY(-2px); box-shadow:0 18px 34px rgba(36,107,255,.26)}
    .btn-ghost{background:#fff; color:var(--text); border-color:var(--line)}
    .btn-ghost:hover{border-color:#b9c7e6; transform:translateY(-1px)}
    .menu-btn{
      display:none; width:44px; height:44px; border-radius:14px; border:1px solid var(--line);
      background:#fff; align-items:center; justify-content:center; cursor:pointer;
    }
    .menu-btn span{display:block; width:18px; height:2px; background:#31435d; position:relative}
    .menu-btn span:before,.menu-btn span:after{content:""; position:absolute; left:0; width:18px; height:2px; background:#31435d}
    .menu-btn span:before{top:-6px}.menu-btn span:after{top:6px}
    .hero{
      padding:42px 0 22px;
      position:relative;
      overflow:hidden;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:1.25fr .9fr;
      gap:24px;
      align-items:stretch;
    }
    .hero-main,.hero-side,.panel,.card,.faq-item,.review,.article,.timeline-item,.price-card,.form-card,.compare-card{
      background:rgba(255,255,255,.86);
      border:1px solid rgba(220,228,242,.92);
      box-shadow:var(--shadow);
      backdrop-filter:blur(10px);
    }
    .hero-main{border-radius:28px; padding:34px}
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px;
      background:linear-gradient(90deg, rgba(36,107,255,.12), rgba(138,92,255,.12));
      color:#1e4fc3; border:1px solid rgba(36,107,255,.14);
      padding:8px 14px; border-radius:999px; font-size:13px; font-weight:700;
    }
    h1{margin:16px 0 14px; font-size:clamp(30px, 5vw, 52px); line-height:1.08}
    .lead{font-size:17px; line-height:1.8; color:var(--muted); max-width:58ch}
    .hero-points{
      display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:24px 0;
    }
    .point{
      padding:14px; border-radius:18px; background:linear-gradient(180deg,#fff,#f7f9ff); border:1px solid var(--line);
    }
    .point strong{display:block; font-size:16px; margin-bottom:6px}
    .point span{font-size:13px; color:var(--muted); line-height:1.6}
    .cta-row{display:flex; flex-wrap:wrap; gap:12px; margin-top:18px}
    .hero-side{border-radius:28px; padding:24px; display:grid; gap:14px}
    .mini-stat{
      padding:18px; border-radius:20px; background:linear-gradient(135deg, rgba(36,107,255,.08), rgba(138,92,255,.08));
      border:1px solid rgba(36,107,255,.10);
    }
    .mini-stat strong{display:block; font-size:28px; line-height:1; margin-bottom:6px}
    .mini-stat span{color:var(--muted); font-size:13px}
    .hero-badges{display:flex; flex-wrap:wrap; gap:10px}
    .badge{padding:8px 12px; background:#fff; border:1px solid var(--line); border-radius:999px; font-size:13px; color:#31435d}
    .section{padding:18px 0 26px}
    .section h2{font-size:clamp(24px, 3vw, 34px); margin:0 0 12px}
    .section .sub{color:var(--muted); line-height:1.8; margin:0 0 18px; max-width:70ch}
    .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
    .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:16px}
    .card,.panel,.review,.article,.form-card,.compare-card,.price-card,.faq-item,.timeline-item{border-radius:22px}
    .card{padding:22px}
    .card h3,.panel h3,.review h3,.article h3,.form-card h3,.compare-card h3,.price-card h3{margin:0 0 10px; font-size:18px}
    .card p,.panel p,.review p,.article p,.price-card p{margin:0; color:var(--muted); line-height:1.78}
    .icon{
      width:46px; height:46px; border-radius:14px; display:grid; place-items:center; margin-bottom:16px;
      background:linear-gradient(135deg, rgba(36,107,255,.12), rgba(24,183,166,.12));
      color:#265fdd; font-weight:900;
    }
    .banner-row{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
    .banner-row .card{padding:14px}
    .banner-row img{border-radius:16px; width:100%; aspect-ratio:1.16; object-fit:cover; background:#eef2fb}
    .two-col{display:grid; grid-template-columns:1.1fr .9fr; gap:16px}
    .panel{padding:24px}
    .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
    .tag-cloud span{padding:9px 12px; border-radius:999px; background:#fff; border:1px solid var(--line); color:#40506b; font-size:13px}
    table{width:100%; border-collapse:separate; border-spacing:0; overflow:hidden}
    .table-wrap{overflow:auto; border-radius:18px; border:1px solid var(--line)}
    th,td{padding:14px 12px; border-bottom:1px solid #edf1f7; text-align:left; vertical-align:top}
    th{background:#f8faff; color:#31435d; font-size:14px}
    td{font-size:14px; color:#33445f; background:#fff}
    tr:last-child td{border-bottom:none}
    .rating{
      display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:14px 0 0;
      color:#27446d; font-weight:700;
    }
    .stars{color:#ffb400; letter-spacing:2px}
    .timeline{display:grid; gap:12px}
    .timeline-item{padding:16px 18px; border-left:4px solid rgba(36,107,255,.35)}
    .timeline-item strong{display:block; margin-bottom:6px}
    .timeline-item span{color:var(--muted); line-height:1.7; font-size:14px}
    .faq-list{display:grid; gap:12px}
    .faq-item{padding:0; overflow:hidden}
    .faq-q{
      width:100%; border:none; background:#fff; color:var(--text); padding:18px 18px; text-align:left;
      display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:16px; font-weight:700; cursor:pointer;
    }
    .faq-q span:last-child{transition:.2s ease}
    .faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
    .faq-a{max-height:0; overflow:hidden; transition:max-height .28s ease; border-top:1px solid #edf1f7}
    .faq-a p{margin:0; padding:0 18px 18px; color:var(--muted); line-height:1.8}
    .review .meta{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px}
    .review .name{font-weight:800}
    .review .role{font-size:13px; color:var(--muted)}
    .review .rate{color:#ffb400; font-weight:800}
    .article-list{display:grid; gap:14px}
    .article{padding:18px}
    .article small{display:inline-block; margin-bottom:10px; color:#2561d6; font-weight:700}
    .article p{margin-top:8px}
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    .field{display:grid; gap:8px}
    label{font-size:14px; font-weight:700; color:#33445f}
    input,select,textarea{
      width:100%; border:1px solid var(--line); background:#fff; color:var(--text);
      border-radius:14px; padding:13px 14px; font:inherit; outline:none;
    }
    textarea{min-height:120px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#85a8ff; box-shadow:0 0 0 4px rgba(36,107,255,.08)}
    .full{grid-column:1/-1}
    .footer{
      margin-top:18px; padding:24px 0 30px; border-top:1px solid rgba(220,228,242,.9);
      background:linear-gradient(180deg, rgba(255,255,255,.4), rgba(255,255,255,.76));
    }
    .footer-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:18px}
    .footer a{color:#1f5fe0}
    .footer p,.footer li,.footer small{color:#5b6b83; line-height:1.8}
    .footer ul{margin:10px 0 0; padding:0; list-style:none; display:grid; gap:8px}
    .floating{
      position:fixed; right:18px; bottom:18px; z-index:60; display:grid; gap:10px;
    }
    .float-btn{
      width:54px; height:54px; border-radius:18px; background:linear-gradient(135deg,var(--brand),var(--brand2));
      color:#fff; display:grid; place-items:center; box-shadow:0 16px 30px rgba(36,107,255,.26);
      border:none; cursor:pointer; font-size:20px;
    }
    .客服{
      position:fixed; left:18px; bottom:18px; z-index:60;
      display:flex; align-items:flex-end; gap:12px;
    }
    .kefu-card{
      width:168px; padding:12px; border-radius:18px; background:rgba(255,255,255,.96); border:1px solid var(--line); box-shadow:var(--shadow);
    }
    .kefu-card img{border-radius:14px; width:100%}
    .kefu-card strong{display:block; margin:10px 0 4px}
    .kefu-card span{font-size:12px; color:var(--muted)}
    .reveal{opacity:0; transform:translateY(18px); transition:.55s ease}
    .reveal.visible{opacity:1; transform:none}
    .home-link{font-weight:800}
    .section-anchor{scroll-margin-top:92px}
    .hero-shell{
      position:absolute; inset:auto 0 0 0; height:220px; pointer-events:none;
      background:linear-gradient(180deg, transparent, rgba(36,107,255,.06));
      mask-image:linear-gradient(180deg, transparent, black 35%);
    }
    .mobile-only{display:none}
    @media (max-width: 1080px){
      .hero-grid,.two-col,.footer-grid,.grid-4,.grid-3,.grid-2,.banner-row{grid-template-columns:1fr 1fr}
      .grid-4,.banner-row{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width: 840px){
      .nav-links,.nav-actions{display:none}
      .menu-btn{display:inline-flex}
      .mobile-only{display:block}
      .hero-grid,.two-col,.footer-grid,.grid-4,.grid-3,.grid-2,.banner-row{grid-template-columns:1fr}
      .hero-main,.hero-side{padding:22px}
      .hero-points{grid-template-columns:1fr}
      .form-grid{grid-template-columns:1fr}
      .客服{left:12px; bottom:12px}
    }
    .mobile-menu{
      display:none; padding:0 0 16px;
    }
    .mobile-menu.open{display:block}
    .mobile-menu .wrap{
      display:grid; gap:8px; padding:14px; background:#fff; border:1px solid var(--line); border-radius:20px; box-shadow:var(--shadow)
    }
    .mobile-menu a{padding:12px 12px; border-radius:14px; background:#f8faff; color:#32435f}
    .mobile-menu a:hover{background:#eaf1ff; color:var(--brand)}