/* 复用官网的明亮紫色；原生商品、账号和订单页面保留 ShopXO 交互。 */
html:root { --color-main:#7742b0; --color-main-light:#f0e6fa; --color-main-hover:#66399b; --color-price:#7742b0; --color-button-primary:#7651c6; --color-button-primary-hover:#6542af; --color-button-primary-text:#fff; }
.gn-store { --gn-ink:#34263f; --gn-muted:#71627d; --gn-purple:#7742b0; --gn-line:#e8dff0; color:var(--gn-ink); background:radial-gradient(ellipse at 85% 12%,#eee0fb 0,transparent 35%),linear-gradient(180deg,#fcf9ff,#fff 72%); font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; font-size:15px; line-height:1.65; }
.gn-store *, .gn-store *::before, .gn-store *::after { box-sizing:border-box; }
.gn-store h1,.gn-store h2,.gn-store h3,.gn-store p { margin:0; }
.gn-store a { color:inherit; text-decoration:none; }
.gn-store a:focus-visible { outline:3px solid #7742b0; outline-offset:5px; border-radius:6px; }
.gn-container { width:calc(100% - 96px); max-width:1200px; margin-inline:auto; }
.gn-skip { position:fixed; left:16px; top:12px; z-index:999; padding:12px 20px; background:white; transform:translateY(-180%); }
.gn-skip:focus { transform:none; }
.gn-header { min-height:100px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid rgba(119,66,176,.1); }
.gn-brand { display:inline-flex; align-items:center; gap:10px; font-size:24px; font-weight:650; letter-spacing:-.5px; white-space:nowrap; }
.gn-brand-symbol { color:#7742b0; font-size:42px; line-height:1; font-weight:400; }
.gn-brand-sub { margin-left:10px; padding-left:11px; border-left:1px solid #d5c7e2; color:#71627d; font-size:13px; font-weight:400; letter-spacing:.04em; }
.gn-navigation { display:flex; gap:30px; align-items:center; font-size:14px; }
.gn-navigation a[aria-current],.gn-navigation a:hover { color:#7742b0; }
.gn-store .gn-button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:28px; border:1px solid #7651c6; border-radius:999px; background:#7651c6; color:white; padding:12px 24px; font-weight:500; transition:background .2s; }
.gn-store .gn-button:hover { background:#6542af; border-color:#6542af; }
.gn-store .gn-button-small { min-height:40px; padding:8px 18px; font-size:13px; }
.gn-hero { display:grid; grid-template-columns:1.2fr 1fr; gap:88px; align-items:center; padding-block:88px 80px; }
.gn-eyebrow { display:flex; gap:9px; align-items:center; color:#7742b0; font-size:11px; line-height:1.6; font-weight:600; letter-spacing:.17em; }
.gn-eyebrow>span { width:6px; height:6px; background:#7742b0; border-radius:50%; }
.gn-hero h1 { margin-top:22px; font-size:clamp(36px,3.7vw,52px); font-weight:550; line-height:1.35; letter-spacing:-1.7px; }
.gn-hero-description { max-width:450px; margin-top:24px !important; color:#71627d; line-height:1.9; }
.gn-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:32px; }
.gn-text-link { display:inline-flex; align-items:center; gap:16px; font-size:14px; min-height:44px; }
.gn-hero-caption { margin-top:22px !important; font-size:12px; color:#897794; }
.gn-brief { position:relative; padding:30px 32px 22px; background:rgba(255,255,255,.75); border:1px solid rgba(255,255,255,.95); border-radius:24px; box-shadow:0 16px 64px rgba(95,56,131,.07),inset 0 0 0 1px rgba(119,66,176,.06); backdrop-filter:blur(12px); }
.gn-brief-heading { display:flex; justify-content:space-between; align-items:center; font:10px/1.6 ui-monospace,monospace; letter-spacing:.16em; color:#897794; padding-bottom:20px; border-bottom:1px solid var(--gn-line); }
.gn-brief-dot { width:7px; height:7px; border-radius:50%; background:#b4a2c6; }
.gn-brief h2 { font-size:23px; line-height:1.5; font-weight:550; margin-top:22px; }
.gn-brief-desc { font-size:13px; color:#897794; margin-top:4px !important; }
.gn-process { list-style:none; margin:24px 0 20px; padding:0; }
.gn-process li { display:flex; gap:18px; padding:13px 0; align-items:flex-start; }
.gn-process li>span { display:grid; place-items:center; flex-shrink:0; width:32px; height:32px; border:1px solid #e7dced; border-radius:10px; background:#faf6fd; color:#9971b8; font:11px/1 ui-monospace,monospace; }
.gn-process strong { font-size:14px; font-weight:500; }
.gn-process p { font-size:12px; margin-top:3px !important; color:#897794; }
.gn-brief-footer { display:flex; justify-content:space-between; gap:14px; padding-top:17px; border-top:1px solid var(--gn-line); font-size:11px; color:#897794; }
.gn-brief-footer span:last-child { color:#7742b0; }
.gn-notice { display:flex; gap:16px; align-items:flex-start; padding:16px 20px; border:1px solid #e8dff0; border-radius:12px; background:#fbf8fe; font-size:12px; color:#71627d; }
.gn-notice-label { color:#7742b0; flex-shrink:0; font-weight:500; }
.gn-catalog { padding-block:64px 60px; scroll-margin-top:24px; }
.gn-section-heading { display:flex; gap:24px; align-items:flex-end; justify-content:space-between; margin-bottom:30px; }
.gn-section-heading h2 { margin-top:12px; font-size:27px; line-height:1.5; font-weight:500; letter-spacing:-.7px; }
.gn-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.gn-product { min-width:0; overflow:hidden; border:1px solid #e8dff0; border-radius:18px; background:#fff; transition:border-color .2s,box-shadow .2s; }
.gn-product:hover,.gn-product:focus-within { border-color:#c5acdd; box-shadow:0 8px 24px rgba(95,56,131,.06); }
.gn-product-image { display:block; aspect-ratio:3/2; overflow:hidden; background:#f5effa; border-bottom:1px solid #eee7f4; }
.gn-product-image img { width:100%; height:100%; object-fit:cover; }
.gn-product-content { padding:24px; }
.gn-product-category { color:#9a84aa; font-size:11px; letter-spacing:.05em; }
.gn-product h3 { font-size:20px; line-height:1.5; font-weight:550; margin-top:8px; }
.gn-product-description { font-size:13px; min-height:68px; line-height:1.8; color:#71627d; margin-top:12px !important; }
.gn-product-footer { display:flex; justify-content:space-between; gap:12px; align-items:center; padding-top:22px; margin-top:18px; border-top:1px solid #eee7f4; }
.gn-price { font-size:25px; font-weight:550; line-height:1.5; font-variant-numeric:tabular-nums; letter-spacing:-.6px; }
.gn-price>span { font-size:14px; font-weight:400; margin-right:4px; }
.gn-product-link { color:#7742b0 !important; font-size:12px; min-height:40px; display:inline-flex; align-items:center; gap:12px; }
.gn-empty { color:#71627d; padding-block:32px; }
.gn-assurance { border-top:1px solid #e8dff0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px; padding-block:44px 58px; }
.gn-assurance>div>span { font-size:10px; color:#9a84aa; letter-spacing:.04em; }
.gn-assurance h3 { margin-top:12px; font-size:15px; font-weight:500; }
.gn-assurance p { color:#897794; font-size:12px; line-height:1.9; margin-top:8px !important; }
.gn-footer { min-height:100px; border-top:1px solid #e8dff0; display:flex; gap:24px; align-items:center; justify-content:space-between; }
.gn-footer .gn-brand { font-size:20px; }
.gn-footer p,.gn-footer>a:last-child { color:#897794; font-size:12px; }
@media(max-width:1000px) { .gn-container { width:calc(100% - 48px); } .gn-hero { gap:40px; } .gn-navigation { gap:20px; } .gn-home-link { display:none; } .gn-product-content { padding:20px; } }
@media(max-width:700px) { .gn-container { width:calc(100% - 40px); } .gn-header { min-height:80px; gap:14px; flex-wrap:wrap; padding-block:18px; } .gn-brand { font-size:22px; } .gn-brand-symbol { font-size:34px; } .gn-brand-sub { font-size:11px; } .gn-navigation { order:3; width:100%; justify-content:center; padding-top:12px; border-top:1px solid #e8dff0; } .gn-store .gn-button-small { font-size:12px; padding:8px 13px; } .gn-hero { grid-template-columns:1fr; gap:32px; padding-block:48px 40px; } .gn-hero h1 { font-size:36px; letter-spacing:-1px; } .gn-hero-description { font-size:14px; } .gn-hero-actions { gap:20px; } .gn-brief { padding:24px; } .gn-catalog { padding-block:42px; } .gn-section-heading { align-items:flex-start; flex-direction:column; gap:12px; margin-bottom:22px; } .gn-section-heading h2 { font-size:25px; } .gn-grid { grid-template-columns:1fr; gap:22px; } .gn-product-description { min-height:0; } .gn-assurance { grid-template-columns:1fr; gap:28px; padding-block:32px 42px; } .gn-footer { flex-wrap:wrap; gap:12px; padding-block:24px; } .gn-footer p { order:3; width:100%; } }
@media(prefers-reduced-motion:reduce) { .gn-store * { transition:none; scroll-behavior:auto; } }
