:root{
  --bg:#0A0A0C; --bg-2:#101013;
  --surface:rgba(255,255,255,.045);
  --surface-2:rgba(255,255,255,.07);
  --border:rgba(255,255,255,.10);
  --gold:#C9A24B; --gold-2:#E6C766;
  --gold-grad:linear-gradient(135deg,#E6C766,#C9A24B 55%,#9C7B2E);
  --text:#F4F1EA; --text-2:#A7A29A;
  --danger:#E5484D; --ok:#3FB950; --warn:#E3A008;
  --radius:20px;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.5;}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
strong{color:var(--gold-2);font-weight:600}

/* 顶栏 */
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;
  padding:14px 22px;background:rgba(10,10,12,.7);backdrop-filter:blur(18px);
  border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:10px;cursor:pointer}
.brand-mark{width:22px;height:22px;border-radius:50%;background:var(--gold-grad);
  box-shadow:0 0 14px rgba(201,162,75,.6)}
.brand-name{font-weight:700;letter-spacing:.5px;font-size:16px}
.brand-name em{font-style:normal;color:var(--text-2);font-weight:500;font-size:11px;letter-spacing:2px}
.nav{display:flex;gap:22px;margin-left:14px}
.nav a{color:var(--text-2);font-size:14px;cursor:pointer;padding:4px 0;border-bottom:2px solid transparent}
.nav a.active,.nav a:hover{color:var(--text);border-color:var(--gold)}
.cart-btn{margin-left:auto;position:relative;background:var(--surface);border:1px solid var(--border);
  color:var(--text);width:42px;height:42px;border-radius:14px;display:grid;place-items:center;cursor:pointer}
.cart-btn:hover{border-color:var(--gold)}
.cart-badge{position:absolute;top:-6px;right:-6px;background:var(--gold-grad);color:#1a1300;
  font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px}

/* 视图 */
.view{max-width:1080px;margin:0 auto;padding:0 20px 80px}

/* Hero */
.hero{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:center;
  padding:54px 0 30px;overflow:hidden}
.hero-glow{position:absolute;width:520px;height:520px;right:-80px;top:-120px;
  background:radial-gradient(circle,rgba(201,162,75,.22),transparent 60%);filter:blur(20px);z-index:0}
.hero-text{position:relative;z-index:1}
.eyebrow{color:var(--gold);letter-spacing:4px;font-size:12px;margin-bottom:14px}
.hero h1{font-size:44px;line-height:1.12;font-weight:800;letter-spacing:.5px}
.hero-sub{color:var(--text-2);margin:18px 0 26px;font-size:15px}
.hero-ring{position:relative;z-index:1;display:grid;place-items:center}
.ring-svg{width:240px;height:240px;filter:drop-shadow(0 0 30px rgba(201,162,75,.35));animation:spin 18s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* 按钮 */
.btn-gold{background:var(--gold-grad);color:#1a1300;border:none;font-weight:700;font-size:15px;
  padding:13px 30px;border-radius:14px;cursor:pointer;transition:transform .15s,box-shadow .15s;
  box-shadow:0 8px 26px rgba(201,162,75,.32)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(201,162,75,.42)}
.btn-gold.block{width:100%;margin-top:10px}
.btn-ghost{background:var(--surface);border:1px solid var(--border);color:var(--text);
  padding:11px 20px;border-radius:12px;cursor:pointer;font-size:14px}
.btn-ghost:hover{border-color:var(--gold)}
.btn-ghost.block{width:100%;margin-top:10px}

/* 商品 */
.section-title{font-size:26px;font-weight:700;margin:30px 0 20px;text-align:center}
.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.product-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  padding:26px;backdrop-filter:blur(16px);position:relative;overflow:hidden;transition:transform .2s,border-color .2s}
.product-card:hover{transform:translateY(-4px);border-color:var(--gold)}
.product-card.pro{border-color:rgba(230,199,102,.35)}
.pc-tag{position:absolute;top:16px;right:16px;font-size:11px;letter-spacing:1px;padding:4px 10px;border-radius:20px;
  background:var(--gold-grad);color:#1a1300;font-weight:700}
.pc-tag.pre{background:rgba(230,199,102,.18);color:var(--gold-2);border:1px solid rgba(230,199,102,.4)}
.pc-ring{width:84px;height:84px;margin-bottom:16px}
.pc-name{font-size:19px;font-weight:700;margin-bottom:6px}
.pc-tagline{color:var(--text-2);font-size:13px;margin-bottom:16px;min-height:38px}
.pc-price{font-size:30px;font-weight:800;color:var(--gold-2);display:flex;align-items:baseline;gap:8px}
.pc-price small{font-size:13px;color:var(--text-2);font-weight:500}
.pc-stock{font-size:12px;color:var(--text-2);margin:6px 0 16px}
.pc-feats{list-style:none;margin:14px 0 20px}
.pc-feats li{font-size:13px;color:var(--text-2);padding:4px 0;display:flex;gap:8px;align-items:center}
.pc-feats li.on{color:var(--text)}
.pc-feats li .dot{width:6px;height:6px;border-radius:50%;background:var(--gold)}
.pc-feats li.off .dot{background:#555}
.pc-actions{display:flex;gap:10px}
.pc-actions .btn-gold{flex:1;padding:11px}
.pc-actions .btn-ghost{flex:1}

/* 保障条 */
.assurance{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:46px}
.assure{background:var(--surface);border:1px solid var(--border);border-radius:16px;
  padding:20px;text-align:center}
.assure span{font-size:22px;font-weight:800;color:var(--gold-2);display:block;margin-bottom:6px}
.assure p{color:var(--text-2);font-size:13px}

/* 订单页 */
.orders-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:34px 0 18px}
.orders-head h2{font-size:26px}
.phone-input{display:flex;gap:8px}
.phone-input input{background:var(--surface);border:1px solid var(--border);color:var(--text);
  padding:11px 14px;border-radius:12px;font-size:14px;width:200px}
.order-list{display:flex;flex-direction:column;gap:14px}
.order-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 20px}
.order-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.order-id{font-weight:700;letter-spacing:.5px}
.order-status{font-size:12px;padding:4px 12px;border-radius:20px;font-weight:600}
.st-unpaid{background:rgba(229,160,8,.16);color:var(--warn)}
.st-paid{background:rgba(63,185,80,.16);color:var(--ok)}
.st-shipped{background:rgba(88,166,255,.16);color:#58a6ff}
.st-done{background:rgba(255,255,255,.1);color:var(--text-2)}
.st-cancelled{background:rgba(229,72,77,.16);color:var(--danger)}
.order-items{font-size:13px;color:var(--text-2);margin-bottom:8px}
.order-meta{font-size:12px;color:var(--text-2);display:flex;gap:16px;flex-wrap:wrap}
.order-amount{font-weight:700;color:var(--gold-2)}
.order-foot{margin-top:12px;display:flex;gap:10px}
.empty{color:var(--text-2);text-align:center;padding:40px}

/* 弹层 / 抽屉 */
.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(0,0,0,.6);backdrop-filter:blur(6px)}
.modal-card{background:var(--bg-2);border:1px solid var(--border);border-radius:22px;padding:30px;
  width:min(460px,92vw);max-height:88vh;overflow:auto;position:relative}
.modal-card.center{text-align:center}
.modal-card h3{font-size:20px;margin-bottom:16px}
.x{position:absolute;top:16px;right:18px;background:none;border:none;color:var(--text-2);font-size:26px;cursor:pointer;line-height:1}
.x:hover{color:var(--text)}
.detail-head{display:flex;gap:18px;align-items:center;margin-bottom:18px}
.detail-head .pc-ring{width:96px;height:96px;margin:0}
.detail-name{font-size:21px;font-weight:700}
.detail-tagline{color:var(--text-2);font-size:13px;margin-top:4px}
.detail-price{font-size:28px;font-weight:800;color:var(--gold-2);margin:6px 0}
.detail-price small{font-size:13px;color:var(--text-2);font-weight:500}
.detail-section-title{font-size:13px;color:var(--gold);letter-spacing:1px;margin:18px 0 10px}
.feat-table{width:100%;border-collapse:collapse;font-size:13px}
.feat-table td{padding:8px 6px;border-bottom:1px solid var(--border)}
.feat-table td:first-child{color:var(--text-2)}
.yes{color:var(--ok);font-weight:700}.no{color:#666}

.drawer{position:fixed;inset:0;z-index:50}
.drawer-mask{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.drawer-panel{position:absolute;right:0;top:0;height:100%;width:min(400px,92vw);
  background:var(--bg-2);border-left:1px solid var(--border);display:flex;flex-direction:column}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border)}
.drawer-head h3{font-size:18px}
.x{font-size:26px}
.cart-items{flex:1;overflow:auto;padding:16px 20px;display:flex;flex-direction:column;gap:14px}
.ci{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px}
.ci .pc-ring{width:48px;height:48px;margin:0}
.ci-info{flex:1}
.ci-name{font-size:14px;font-weight:600}
.ci-price{font-size:13px;color:var(--gold-2)}
.ci-qty{display:flex;align-items:center;gap:10px}
.ci-qty button{width:28px;height:28px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);color:var(--text);cursor:pointer;font-size:16px}
.ci-qty span{min-width:22px;text-align:center}
.drawer-foot{padding:18px 20px;border-top:1px solid var(--border)}
.cart-total{display:flex;justify-content:space-between;margin-bottom:12px;font-size:15px}
.cart-total strong{font-size:20px}

/* 表单 */
label{display:block;font-size:13px;color:var(--text-2);margin-bottom:14px}
label input,label textarea{width:100%;margin-top:6px;background:var(--surface);border:1px solid var(--border);
  color:var(--text);padding:11px 13px;border-radius:11px;font-size:14px;font-family:inherit;resize:vertical}
.mini-items{font-size:13px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);
  border-radius:12px;padding:12px;margin-bottom:16px}
.checkout-sum{display:flex;justify-content:space-between;align-items:center;margin:6px 0 14px;font-size:15px}
.checkout-sum strong{font-size:22px}
.pay-tip{font-size:12px;color:var(--gold);margin-top:10px;text-align:center}

/* 结果 */
.result-icon{width:64px;height:64px;border-radius:50%;background:var(--gold-grad);color:#1a1300;
  font-size:34px;display:grid;place-items:center;margin:0 auto 16px}
.result-order{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;
  font-size:13px;color:var(--text-2);margin:16px 0;text-align:left}
.result-order b{color:var(--text)}

/* 会员中心 */
.member-head{text-align:center;padding:34px 0 10px}
.member-head h2{font-size:26px}
.member-sub{color:var(--text-2);font-size:13px;margin-top:8px}
.m-card{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:22px;backdrop-filter:blur(16px)}
.m-card.login{justify-content:center;flex-direction:column;text-align:center;gap:10px}
.m-avatar{width:64px;height:64px;border-radius:50%;background:var(--gold-grad);color:#1a1300;
  font-size:28px;font-weight:800;display:grid;place-items:center;box-shadow:0 0 22px rgba(201,162,75,.4)}
.m-info{flex:1}
.m-name{font-size:19px;font-weight:700;display:flex;align-items:center;gap:10px}
.m-edit{font-size:12px;color:var(--gold-2);border:1px solid rgba(230,199,102,.4);border-radius:20px;padding:2px 10px;cursor:pointer}
.m-id{color:var(--text-2);font-size:13px;margin-top:4px;letter-spacing:.5px}
.m-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.m-stat{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}
.m-stat span{display:block;color:var(--text-2);font-size:12px;margin-bottom:8px}
.m-stat b{font-size:18px;font-weight:700}
.m-stat b.gold{color:var(--gold-2)}
.m-invite{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;margin-top:16px}
.m-block-title{font-size:13px;color:var(--gold);letter-spacing:1px;margin-bottom:14px}
.m-code-row,.m-link-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.m-code,.m-link{flex:1;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;
  padding:12px 14px;font-size:13px;color:var(--text);word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace}
.copy-btn{flex:none;background:var(--gold-grad);color:#1a1300;border:none;font-weight:700;font-size:13px;
  padding:11px 16px;border-radius:10px;cursor:pointer;white-space:nowrap}
.copy-btn:hover{filter:brightness(1.05)}
.m-tip{color:var(--text-2);font-size:12px;margin-top:6px;line-height:1.6}
.m-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.m-invite-note{background:rgba(230,199,102,.1);border:1px solid rgba(230,199,102,.35);border-radius:14px;
  padding:14px;color:var(--gold-2);font-size:13px;margin-bottom:16px}
.m-login label{margin-top:18px}

/* Toast */
.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#1c1c20;
  border:1px solid var(--border);color:var(--text);padding:12px 22px;border-radius:14px;z-index:80;font-size:14px;
  box-shadow:0 10px 30px rgba(0,0,0,.4)}

@media(max-width:760px){
  .hero{grid-template-columns:1fr;text-align:center;padding:30px 0}
  .hero-ring{display:none}
  .hero h1{font-size:34px}
  .product-grid{grid-template-columns:1fr}
  .assurance{grid-template-columns:repeat(2,1fr)}
  .nav{display:flex;overflow-x:auto;gap:16px;-webkit-overflow-scrolling:touch}
  .nav::-webkit-scrollbar{display:none}
  .topbar{gap:12px;padding:14px 16px}
}
