:root { --page:#F2F2F2; --card:#fff; --ink:#171717; --muted:#6b6b6b; --accent:#6A61D6; --sky:#C2D2EC; --cream:#FCEAA0; --lilac:#B6A1EB; }
@media (prefers-color-scheme: dark) { :root { --page:#191919; --card:#222; --ink:#f2f2f2; --muted:#8f8f8f; --accent:#7F77DD; } }
* { box-sizing: border-box; }
body { margin:0; font: 16px/1.65 -apple-system, "PingFang SC", "Hiragino Sans", "Helvetica Neue", sans-serif; color:var(--ink); background:var(--page); }
a { color:var(--accent); text-decoration:none; }
.top { display:flex; align-items:center; justify-content:space-between; padding:18px 28px; max-width:1040px; margin:0 auto; }
.brand { display:flex; align-items:center; gap:10px; font-weight:700; font-size:18px; color:var(--ink); }
.brand span { color:var(--muted); font-weight:500; font-size:14px; }
.brand img { border-radius:9px; }
nav a { margin-left:18px; font-size:14px; color:var(--muted); }
main { max-width:1040px; margin:0 auto; padding:0 28px 60px; }
.doc { max-width:760px; }
.doc h1 { font-size:30px; margin:28px 0 4px; }
.doc h2 { font-size:18px; margin:26px 0 6px; }
.doc p, .doc li { font-size:15px; }
.doc hr { border:0; border-top:1px solid rgba(128,128,128,.25); margin:48px 0; }
.muted { color:var(--muted); }
code { background:rgba(128,128,128,.15); padding:1px 6px; border-radius:6px; font-size:.92em; }
footer { text-align:center; color:var(--muted); font-size:13px; padding:30px; }
/* 首页 */
.hero { display:grid; grid-template-columns:1.1fr 1fr; gap:36px; align-items:center; padding:40px 0 20px; }
.hero h1 { font-size:44px; line-height:1.15; margin:0 0 14px; }
.hero p { font-size:17px; color:var(--muted); margin:0 0 22px; }
.hero img { width:100%; border-radius:18px; box-shadow:0 30px 60px -30px rgba(0,0,0,.45); }
.cta { display:inline-flex; align-items:center; gap:10px; background:var(--ink); color:var(--page); padding:14px 24px; border-radius:999px; font-weight:600; }
.cta.secondary { background:transparent; color:var(--ink); border:1.5px solid rgba(128,128,128,.35); margin-left:10px; }
.grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:30px 0; }
.card { background:var(--card); border-radius:20px; padding:20px; }
.card h3 { margin:0 0 6px; font-size:16px; }
.card p { margin:0; color:var(--muted); font-size:14px; }
.price { background:var(--card); border-radius:22px; padding:28px; display:flex; justify-content:space-between; align-items:center; gap:20px; margin:30px 0; border:1.5px solid var(--accent); }
.price strong { font-size:28px; }
@media (max-width:760px) { .hero, .grid { grid-template-columns:1fr; } .hero h1 { font-size:32px; } .price { flex-direction:column; align-items:flex-start; } }
/* 领码页 /claim（由 Worker 生成，见 cloud/site）：沿用首页的 hero / grid / price */
.claim-hero h1 { text-wrap:balance; }
.badge { display:inline-block; font-size:13px; font-weight:600; color:var(--accent); background:rgba(106,97,214,.12); padding:5px 12px; border-radius:999px; margin-bottom:16px; }
.lang-pills { display:inline-flex; flex-wrap:wrap; gap:2px; background:var(--card); border-radius:999px; padding:4px; margin-bottom:12px; }
.lang-pills a { font-size:14px; color:var(--muted); padding:6px 14px; border-radius:999px; }
.lang-pills a.on { background:var(--ink); color:var(--page); font-weight:600; }
.claim-row { display:flex; gap:10px; }
.claim-row input { flex:1; min-width:0; font:inherit; color:var(--ink); background:var(--card); border:1.5px solid rgba(128,128,128,.3); border-radius:999px; padding:13px 20px; }
.claim-row input:focus { outline:none; border-color:var(--accent); }
.claim-row .cta { border:0; font:inherit; font-weight:600; cursor:pointer; white-space:nowrap; }
.hero .claim-meta { font-size:14px; margin:12px 0 0; }
.claim-meta strong { color:var(--ink); }
.claim-trap { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.claim-result { background:var(--card); border-radius:18px; padding:18px 20px; font-size:17px; margin-bottom:22px; }
.claim-result h2 { font-size:20px; margin:0 0 6px; }
.claim-result.err { color:#c0392b; }
.hero .claim-notice { font-size:14px; background:var(--cream); color:#171717; border-radius:12px; padding:10px 14px; margin:22px 0 0; }
.section-title { font-size:24px; margin:40px 0 0; }
.section-title + .grid { margin-top:16px; }
.step { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; background:var(--accent); color:#fff; font-size:14px; font-weight:700; margin-bottom:10px; }
.price .cta { white-space:nowrap; }
.claim-rules { text-align:center; max-width:640px; margin:0 auto; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.small { font-size:13px; }
.promo { background:var(--card); border-radius:22px; padding:20px 28px; display:flex; justify-content:space-between; align-items:center; gap:20px; margin:30px 0; }
.promo strong { font-size:20px; }
@media (max-width:760px) { .top { padding:16px 20px; gap:12px; } .brand { white-space:nowrap; } .brand span { display:none; } nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px 14px; } nav a { margin-left:0; } main { padding:0 20px 48px; } .claim-row { flex-direction:column; } .promo { flex-direction:column; align-items:flex-start; } }
