:root{
  --bg:#ffffff;
  --bg-alt:#f8f9fa;
  --card:#ffffffee;
  --border:#e0e5eb;
  --text:#1a202c;
  --muted:#5a6c7d;
  --brand:#5b6ff0; /* 明快蓝紫 */
  --brand-2:#22d3ee; /* 青绿点缀 */
  --accent:#f0f4ff; /* 浅蓝背景 */
}
*{box-sizing:border-box}
html,body{padding:0;margin:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, "Noto Sans CJK", sans-serif;
  color:var(--text);
  background: radial-gradient(1200px 600px at 20% -10%, #f0f4ff 0%, transparent 60%),
              radial-gradient(800px 400px at 100% 0%, #e0f7fa 0%, transparent 50%),
              var(--bg);
}
.container{width:min(1100px, 92%); margin:0 auto}

/* Header */
.site-header{position:sticky; top:0; z-index:10; backdrop-filter:saturate(1.2) blur(10px); background:linear-gradient(to bottom, #ffffffdd, #ffffff00); border-bottom:1px solid var(--border)}
.nav{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{display:flex; align-items:center; gap:10px; color:var(--text); text-decoration:none}
.logo{width:28px; height:28px}
.nav-links{display:flex; gap:16px; align-items:center}
.nav-links a{color:var(--text); text-decoration:none; opacity:.9}
.nav-links a:hover{opacity:1}
.nav-links #cta-top{color:#fff;}
.nav-toggle{display:none; background:none; border:1px solid var(--border); color:var(--text); padding:6px 10px; border-radius:8px}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:6px 14px; border-radius:6px; text-decoration:none; color:#ffffff; background:linear-gradient(90deg, #3a7afe 0%, #5bb3ff 100%); font-weight:600; font-size:16px; height:36px; line-height:24px; border:none; cursor:pointer; box-shadow:0 6px 18px rgba(58,122,254,0.12); transition:transform 0.12s ease, box-shadow 0.12s ease, opacity 0.12s ease}
.btn:hover{transform:translateY(-1px); box-shadow:0 8px 24px rgba(58,122,254,0.2)}
.btn-primary{background:linear-gradient(90deg, #3a7afe 0%, #5bb3ff 100%)}
.btn-lg{padding:10px 20px; font-size:18px; height:44px}
.ghost{background:transparent; color:var(--text); border:1px solid var(--border); box-shadow:none}
.ghost:hover{background:var(--bg-alt); transform:none}

/* Hero */
.hero{padding:64px 0 24px}
.hero-inner{display:grid; grid-template-columns:1.1fr .9fr; gap:32px; align-items:center}
.hero-copy h1{font-size:44px; line-height:1.15; margin:0 0 14px}
.hero-copy p{color:var(--muted); margin:0 0 18px}
.actions{display:flex; gap:12px; flex-wrap:wrap}
.hero-highlights{display:flex; gap:10px; margin-top:14px; flex-wrap:wrap}
.hero-highlights span{border:1px dashed var(--border); padding:6px 10px; border-radius:20px; color:var(--muted); background:var(--bg-alt)}
.hero-visual{display:flex; justify-content:center}
.chat-preview{min-height:280px; display:grid; gap:10px}
.chat-row{padding:10px 12px; border-radius:12px; border:1px solid var(--border); background:var(--bg); box-shadow:0 1px 3px rgba(0,0,0,0.06)}
.chat-row.user{justify-self:end; background:var(--accent); border-color:#d0d9ff}
.chat-row.ai{justify-self:start; border-left:3px solid var(--brand)}

/* Sections */
.section{padding:64px 0}
.section.alt{background:linear-gradient(180deg, var(--accent) 0%, rgba(240,244,255,0) 100%)}
.section-title{text-align:center; font-size:28px; margin:0 0 22px}
.grid{display:grid; gap:16px}
.features{grid-template-columns:repeat(3,1fr)}
.usecases{grid-template-columns:repeat(3,1fr)}
.feature, .usecase{padding:18px}
.icon{font-size:22px}

/* App download */
#app-download .section-title{margin-bottom:14px}
.app-download-grid{grid-template-columns:repeat(2,1fr)}
.app-card{padding:18px; display:grid; gap:10px; align-content:start}
.app-card .btn{width:max-content}
.qr{border:1px solid var(--border); border-radius:12px; background:#fff; box-shadow:0 2px 8px rgba(0,0,0,0.06)}

/* Card / glass */
.glass{background:var(--card); border:1px solid var(--border); border-radius:14px; box-shadow:0 2px 12px rgba(0,0,0,0.08)}
.card{padding:14px}

/* Code */
.section.code .codeblock{padding:16px; overflow:auto}
.section.code .actions{margin-top:16px}
.center{justify-content:center}

/* CTA strip */
.section.cta{padding:72px 0}
.cta-inner{display:grid; gap:10px; place-items:center; text-align:center}
.cta-inner p{color:var(--muted); margin:0 0 6px}

/* FAQ */
.faq{display:grid; gap:10px}
.faq details{padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--bg); box-shadow:0 1px 3px rgba(0,0,0,0.06)}
.faq summary{cursor:pointer; font-weight:600}
.faq p{color:var(--muted)}

/* Footer */
.site-footer{border-top:1px solid var(--border); margin-top:24px; padding:20px 0 32px}
.footer-inner{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap}
.footer-brand{display:flex; align-items:center; gap:12px}
.footer-links{display:flex; gap:16px; align-items:center}
.footer-links a{color:var(--muted); text-decoration:none}
.footer-links a:hover{color:var(--text)}
.footer-links .police{width:16px; height:16px; margin-right:4px; vertical-align:middle}
.muted{color:var(--muted)}

/* Responsive */
@media (max-width: 960px){
  .hero-inner{grid-template-columns:1fr}
  .features{grid-template-columns:repeat(2,1fr)}
  .usecases{grid-template-columns:repeat(2,1fr)}
  .app-download-grid{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .nav-toggle{display:inline-flex}
  .nav-links{display:none}
  .nav.open .nav-links{display:flex; position:absolute; right:4%; top:60px; background:var(--bg); border:1px solid var(--border); border-radius:12px; padding:12px; flex-direction:column; gap:10px; box-shadow:0 4px 12px rgba(0,0,0,0.1)}
  .hero-copy h1{font-size:32px}
  .features,.usecases{grid-template-columns:1fr}
}
