
:root {
  --bg-deep: #080810;
  --bg-card: #0E0E1A;
  --bg-card2: #141424;
  --gold: #D4A843;
  --gold-bright: #F5D76E;
  --gold-light: #FEF3C7;
  --gold-dark: #B8860B;
  --gold-rose: #C9A86C;
  --champagne: #F7E7CE;
  --text: #F5F0E8;
  --text-dim: #A09880;
  --border: rgba(212,168,67,0.2);
  --border-bright: rgba(245,215,110,0.4);
  --glow-gold: 0 0 30px rgba(212,168,67,0.3);
  --glow-bright: 0 0 40px rgba(245,215,110,0.4);
  --accent: #F5C842;
  --green: #10B981;
  --blue: #3B82F6;
  --red-accent: #C41E3A;
}
* { margin:0; padding:0; box-sizing:border-box; }
html {
  scroll-behavior: smooth;
  scroll-snap-type: y mandatory;
  overflow-y: auto;
  overflow-x: hidden;
}
body {
  font-family: 'Inter', 'Noto Serif SC', sans-serif;
  background: var(--bg-deep);
  color: var(--text);
  overflow-x: hidden;
  line-height: 1.6;
}
/* ===== CAROUSEL ===== */
/* ===== VERTICAL SNAP SCROLLING ===== */
#hSlider { scroll-snap-align: start; }
.h-slider {
  display: flex; flex-wrap: nowrap; overflow-x: auto;
  scroll-snap-type: x mandatory;
  width: 100vw; height: 100vh;
  -webkit-overflow-scrolling: touch;
}
.h-slider::-webkit-scrollbar { display: none; }
.h-slide {
  flex: 0 0 100vw; min-height: 100vh;
  scroll-snap-align: start;
  display: flex; align-items: center; justify-content: flex-start;
  flex-direction: column; position: relative; z-index: 1;
  overflow-y: auto; overflow-x: hidden;
}
.h-slide#h-slide-hero { align-items: center; justify-content: flex-start; padding: 58px 0 0 0; position: relative; }
.h-slide#h-slide-gallery { padding: 70px 2rem 2rem; background: rgba(10,10,20,0.5); }

/* Pin nav hints to right-center of hero slide */
.hero-nav-hint {
  position: fixed; right: 20px; top: 50%; transform: translateY(-50%);
  display: flex; flex-direction: column; gap: 12px;
  z-index: 10; animation: hintFadeIn 1.5s ease-out;
  transition: opacity 0.4s, visibility 0.4s;
}
.hero-nav-hint.hidden { opacity: 0; visibility: hidden; pointer-events: none; }

/* ===== HORIZONTAL SLIDER DOTS (fixed bottom of slider) ===== */
.h-slider-dots {
  position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%);
  display: flex; gap: 12px; z-index: 500;
}
.h-slider-dot {
  width: 10px; height: 10px; border-radius: 50%;
  background: rgba(245,215,110,0.3); border: 1px solid rgba(245,215,110,0.4);
  cursor: pointer; transition: all 0.4s;
}
.h-slider-dot.active {
  background: #F5D76E; border-color: #F5D76E; box-shadow: 0 0 10px rgba(245,215,110,0.5);
  width: 28px; border-radius: 5px;
}

/* ===== VERTICAL SECTIONS (below slider) ===== */
.v-section {
  width: 100vw; min-height: 100vh;
  display: flex; flex-direction: column; align-items: center;
  position: relative; z-index: 1;
  padding: 70px 2rem 2rem;
  scroll-snap-align: start;
}
.v-section#v-engine { background: rgba(14,14,26,0.8); min-height: auto; padding-top: 0; padding-bottom: 0.5rem; }
.v-section#v-supply { background: rgba(12,12,22,0.4); padding-bottom: 3rem; }

/* ===== VERTICAL NAV ARROWS ===== */
.v-nav {
  position: fixed; right: 20px; top: 50%; transform: translateY(-50%);
  display: flex; flex-direction: column; gap: 10px; z-index: 600;
  opacity: 0; transition: opacity 0.5s;
}
.v-nav.visible { opacity: 1; }
.v-nav-btn {
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(14,14,26,0.85); border: 1px solid rgba(212,168,67,0.3);
  color: #F5D76E; font-size: 1.2rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.3s; backdrop-filter: blur(8px);
}
.v-nav-btn:hover {
  background: rgba(212,168,67,0.15); border-color: #F5D76E;
  box-shadow: 0 0 16px rgba(245,215,110,0.25);
}
.v-nav-btn.disabled {
  opacity: 0.25; pointer-events: none; cursor: default;
}

/* Legacy carousel styles kept for compatibility, hidden */
.carousel, .carousel-slide, .carousel-dots, .carousel-dot { display: none; }

/* ===== GALLERY ===== */
.gallery-dual{display:grid;grid-template-columns:1fr 1fr;gap:2rem;width:100%;max-width:1100px;}
.gallery-entry{background:rgba(14,14,26,0.8);border:1px solid rgba(212,168,67,0.2);border-radius:16px;padding:1.5rem;cursor:pointer;transition:all 0.3s;text-align:center;}
.gallery-entry:hover{border-color:rgba(245,215,110,0.5);transform:translateY(-4px);box-shadow:0 8px 30px rgba(212,168,67,0.1);}
.gallery-entry.active{border-color:#F5D76E;background:rgba(212,168,67,0.08);box-shadow:0 0 20px rgba(245,215,110,0.2);}
.gallery-entry .g-icon{font-size:3rem;margin-bottom:0.5rem;}
.gallery-entry h4{color:#F5D76E;font-size:1.1rem;margin-bottom:0.5rem;}
.gallery-entry p{color:#A09880;font-size:0.82rem;line-height:1.5;}
.fabric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:1rem;}
.fabric-card{background:rgba(14,14,26,0.6);border:1px solid rgba(212,168,67,0.15);border-radius:12px;padding:14px;text-align:center;cursor:pointer;transition:all 0.2s;position:relative;}
.fabric-card:hover{border-color:rgba(245,215,110,0.4);background:rgba(212,168,67,0.05);}
.fabric-card.compared{border-color:#F5D76E;background:rgba(212,168,67,0.08);box-shadow:0 0 12px rgba(245,215,110,0.1);}
.fabric-card .f-sample{height:50px;border-radius:8px;margin-bottom:6px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;}
.fabric-card .f-name{color:#F5D76E;font-size:0.82rem;font-weight:600;margin-bottom:4px;}
.fabric-card .f-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0;font-size:0.68rem;}
.fabric-card .f-row .f-label{color:#A09880;}
.fabric-card .f-row .f-val{color:#E2E8F0;font-weight:500;}
.fabric-card .f-price{color:#F5D76E;font-size:0.85rem;font-weight:700;margin:4px 0;}
.fabric-card .f-check{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:4px;border:2px solid rgba(212,168,67,0.3);background:rgba(14,14,26,0.8);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:0.6rem;color:transparent;transition:all 0.2s;z-index:2;}
.fabric-card .f-check.checked{background:#F5D76E;border-color:#F5D76E;color:#0E0E1A;}
/* Order Flow */
.order-flow{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;width:100%;max-width:1100px;}
.order-step{background:rgba(14,14,26,0.6);border:1px solid rgba(212,168,67,0.15);border-radius:14px;padding:1.2rem 1.5rem;display:flex;align-items:center;gap:1.5rem;}
.order-step-num{width:32px;height:32px;border-radius:50%;background:#F5D76E;color:#0E0E1A;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:0.85rem;flex-shrink:0;}
.order-step h4{color:#F5D76E;font-size:0.9rem;margin:0 0 0.4rem;min-width:80px;flex-shrink:0;}
.order-step .step-content{flex:1;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.order-summary{background:rgba(8,8,16,0.6);border:1px solid rgba(212,168,67,0.1);border-radius:8px;padding:12px;font-size:0.78rem;color:#E2E8F0;min-height:60px;flex:1;}
.payment-grid,.logistics-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.payment-option,.logistics-option{background:rgba(14,14,26,0.5);border:1px solid rgba(212,168,67,0.1);border-radius:8px;padding:10px;text-align:center;cursor:pointer;transition:all 0.2s;color:#E2E8F0;font-size:0.78rem;}
.payment-option:hover,.logistics-option:hover{border-color:rgba(245,215,110,0.3);background:rgba(212,168,67,0.05);}
.payment-option{position:relative;}
.logistics-option{position:relative;}
/* Popover detail panel */
.detail-popover{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:320px;background:rgba(14,14,22,0.98);border:1px solid #F5D76E;border-radius:12px;padding:14px;font-size:0.73rem;color:#E2E8F0;line-height:1.6;z-index:100;box-shadow:0 8px 30px rgba(0,0,0,0.6);display:none;}
.detail-popover::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:8px solid transparent;border-top-color:#F5D76E;}
.detail-popover .pop-close{position:absolute;top:6px;right:10px;background:none;border:none;color:#A09880;cursor:pointer;font-size:1rem;}
.detail-popover .pop-close:hover{color:#F5D76E;}
.detail-popover .pop-title{color:#F5D76E;font-size:0.85rem;font-weight:600;margin-bottom:6px;display:block;}
.pmt-icon,.log-icon{font-size:1.5rem;margin-bottom:4px;}

/* Compare Bar */
.compare-bar{position:fixed;bottom:0;left:0;right:0;background:rgba(14,14,26,0.97);border-top:1px solid #F5D76E;padding:12px 20px;z-index:550;display:none;justify-content:center;align-items:center;gap:16px;backdrop-filter:blur(12px);}
.compare-bar.active{display:flex;}
.compare-table{border-collapse:collapse;font-size:0.72rem;}
.compare-table th,.compare-table td{padding:4px 10px;border-bottom:1px solid rgba(212,168,67,0.15);text-align:center;}
.compare-table th{color:#F5D76E;font-weight:600;font-size:0.7rem;}
.compare-table td{color:#E2E8F0;}
.compare-table .best{color:#2ECC71;font-weight:700;}
.compare-close{background:none;border:1px solid rgba(212,168,67,0.3);color:#A09880;border-radius:6px;padding:4px 12px;cursor:pointer;font-size:0.7rem;}
.compare-close:hover{border-color:#F5D76E;color:#F5D76E;}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:1rem;}
.product-card{background:rgba(14,14,26,0.6);border:1px solid rgba(212,168,67,0.15);border-radius:12px;padding:12px;text-align:center;cursor:pointer;transition:all 0.2s;}
.product-card:hover{border-color:rgba(91,163,236,0.5);background:rgba(91,163,236,0.05);}
.product-card .p-icon{font-size:2rem;margin-bottom:6px;}
.product-card .p-name{color:#5BA3EC;font-size:0.8rem;font-weight:600;}
.product-card .p-scene{color:#A09880;font-size:0.68rem;margin-top:2px;}

/* Hide old vertical nav */
.page-nav { display: none; }
.page-nav {
  position: fixed; right: 1.5rem; top: 50%; transform: translateY(-50%);
  z-index: 200; display: flex; flex-direction: column; gap: 0.75rem;
}
.page-nav .arrow {
  width: 44px; height: 44px; border-radius: 50%;
  background: rgba(14,14,26,0.85); border: 1px solid var(--border);
  color: var(--gold-bright); font-size: 1.2rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.3s; backdrop-filter: blur(10px);
}
.page-nav .arrow:hover {
  border-color: var(--gold-bright); background: rgba(212,168,67,0.12);
  box-shadow: var(--glow-gold); transform: scale(1.1);
}
.page-nav .arrow.up { display: none; }
.page-nav .arrow.down { display: none; }

/* ===== GOLD PARTICLES ===== */
#particles {
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
}
.particle {
  position: absolute; border-radius: 50%;
  background: radial-gradient(circle, var(--gold-bright), transparent);
  animation: floatUp linear infinite;
  opacity: 0;
}
@keyframes floatUp {
  0% { transform: translateY(100vh) scale(0); opacity: 0; }
  10% { opacity: 0.8; }
  90% { opacity: 0.1; }
  100% { transform: translateY(-10vh) scale(1.5); opacity: 0; }
}

/* ===== GOLD GLEAM OVERLAY ===== */
.gleam {
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background: radial-gradient(ellipse at 50% 0%, rgba(245,215,110,0.04) 0%, transparent 50%),
              radial-gradient(ellipse at 80% 100%, rgba(212,168,67,0.03) 0%, transparent 50%),
              radial-gradient(ellipse at 20% 60%, rgba(184,134,11,0.03) 0%, transparent 40%);
}

/* ===== NAV ===== */
nav {
  position: fixed; top:0; left:0; right:0; z-index:100;
  background: rgba(8,8,16,0.92); backdrop-filter: blur(24px);
  border-bottom: 1px solid var(--border);
  padding: 0 2rem; height: 54px;
  display: flex; align-items: center; justify-content: space-between;
}
.logo { display: flex; align-items: center; gap: 0.9rem; }
.logo-icon {
  width: 58px; height: 58px;
  background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright), var(--gold-dark));
  border-radius: 14px; display: flex; align-items: center; justify-content: center;
  font-size: 1.8rem; font-weight: 900; color: var(--bg-deep);
  box-shadow: var(--glow-gold);
}
.logo-text { display: flex; flex-direction: column; align-items: center; line-height: 1.25; }
.logo-text .cn { font-size: 1.38rem; font-weight: 700; letter-spacing: 0.04em; background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.logo-text { font-size: 0; }
.logo-text span { 
  font-size: 0.78rem; font-weight: 700;
  color: var(--gold-rose);
  letter-spacing: 0.15em;
  font-family: 'Inter', sans-serif;
  background: none;
  -webkit-text-fill-color: currentColor;
}
.nav-actions { display: flex; gap: 1rem; align-items: center; }
.nav-btn {
  padding: 0.5rem 1.25rem; border-radius: 10px;
  border: 1px solid var(--border); background: transparent;
  color: var(--gold-rose); cursor: pointer; font-size: 0.85rem;
  transition: all 0.3s; font-family: inherit;
}
.nav-btn:hover { border-color: var(--gold-bright); color: var(--gold-bright); box-shadow: var(--glow-gold); }
.nav-btn.primary { 
  background: linear-gradient(135deg, var(--gold-dark), #C9A84C);
  border: none; color: var(--bg-deep); font-weight: 700;
  box-shadow: var(--glow-gold);
}
.nav-btn.primary:hover { box-shadow: var(--glow-bright); transform: translateY(-1px); }

/* ===== HERO ===== */
.hero {
  display: flex; align-items: center; justify-content: center;
  flex-direction: column; text-align: center; padding: 0;
  position: relative; z-index: 1;
  width: 100%; height: 100%;
}
.hero-inner {
  width: 100%; max-width: 1100px; margin: 0 auto;
  display: flex; flex-direction: column; align-items: center;
}
.hero::before {
  content: ''; position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(ellipse at 50% 30%, rgba(245,215,110,0.12) 0%, transparent 55%),
              radial-gradient(ellipse at 20% 80%, rgba(212,168,67,0.08) 0%, transparent 50%),
              radial-gradient(ellipse at 80% 70%, rgba(184,134,11,0.06) 0%, transparent 45%);
}
/* Bridge silhouette */
.hero::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0; height: 120px; z-index: -1;
  background: linear-gradient(to top, rgba(212,168,67,0.06) 0%, transparent 100%);
}
.hero-badge {
  display: inline-flex; align-items: center; gap: 0.4rem;
  padding: 0.35rem 1rem; border-radius: 100px;
  background: rgba(212,168,67,0.1); border: 1px solid var(--border-bright);
  font-size: 0.82rem; color: var(--gold-bright); margin-bottom: 0.5rem;
  backdrop-filter: blur(10px);
}
.hero h1 {
  margin-bottom: -0.3rem; position: relative; z-index: 2;
}
.hero-title-pin {
  display: flex; flex-direction: column; align-items: center; gap: 0.15rem;
}
.pin-top {
  font-size: clamp(1.4rem, 3.2vw, 2.8rem); font-weight: 900;
  background: linear-gradient(135deg, #B8860B 0%, #F5D76E 30%, #FEF3C7 50%, #F5D76E 70%, #B8860B 100%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: goldShimmer 3s ease-in-out infinite;
  letter-spacing: 0.15em; line-height: 1.1;
  filter: drop-shadow(0 0 12px rgba(245,215,110,0.4));
}
.pin-bottom {
  display: flex; gap: 3rem; justify-content: center; align-items: center;
}
.pin-left, .pin-right {
  font-size: clamp(1.1rem, 2.5vw, 2.2rem); font-weight: 900;
  background: linear-gradient(135deg, #B8860B 0%, #F5D76E 40%, #FEF3C7 60%, #F5D76E 80%, #B8860B 100%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: goldShimmer 3s ease-in-out infinite;
  letter-spacing: 0.12em; line-height: 1.1;
  filter: drop-shadow(0 0 8px rgba(245,215,110,0.3));
}
.hero h1 .highlight { 
  background: linear-gradient(135deg, #B8860B 0%, #F5D76E 30%, #FEF3C7 50%, #F5D76E 70%, #B8860B 100%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: goldShimmer 3s ease-in-out infinite;
}
@keyframes goldShimmer {
  0%, 100% { background-position: 0% center; }
  50% { background-position: 200% center; }
}
.hero p {
  font-size: 0.88rem; color: var(--text-dim); max-width: 720px; margin-bottom: 0.15rem; margin-top: 0.8rem;
  line-height: 1.45;
}
.hero-map { 
  width: 100%; margin: -0.5rem auto 0.05rem; 
  position: relative; z-index: 1;
}
.route-map { width: 100%; height: auto; display: block; filter: drop-shadow(0 8px 24px rgba(0,0,0,0.5)); }
.hero-cta { display: flex; gap: 0.5rem; flex-wrap: wrap; justify-content: center; margin: 0.5rem 0 1rem; }

@keyframes hintFadeIn {
  0% { opacity: 0; transform: translateY(10px); }
  100% { opacity: 1; transform: translateY(0); }
}
.hint-btn {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  background: rgba(14,14,26,0.7); border: 1px solid rgba(212,168,67,0.25);
  border-radius: 14px; padding: 10px 22px; cursor: pointer;
  transition: all 0.3s; color: #F5D76E;
  backdrop-filter: blur(8px);
}
.hint-btn:hover {
  background: rgba(212,168,67,0.12); border-color: #F5D76E;
  box-shadow: 0 0 20px rgba(245,215,110,0.2);
  transform: translateY(-2px);
}
.hint-btn .hint-icon {
  font-size: 1.4rem; animation: hintBounce 2s infinite;
}
.hint-btn:nth-child(1) .hint-icon { animation-delay: 0s; }
.hint-btn:nth-child(2) .hint-icon { animation-delay: 0.5s; }
@keyframes hintBounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
.hint-btn .hint-label {
  font-size: 0.72rem; color: #A09880; letter-spacing: 0.5px;
}

.btn {
  padding: 0.55rem 1.4rem; border-radius: 10px; font-size: 0.82rem;
  font-weight: 600; cursor: pointer; transition: all 0.3s; border: none;
  text-decoration: none; display: inline-flex; align-items: center; gap: 0.35rem;
  font-family: inherit; letter-spacing: 0.02em;
}
.btn-primary { 
  background: linear-gradient(135deg, var(--gold-dark), #C9A84C, var(--gold-bright));
  color: var(--bg-deep); box-shadow: 0 4px 20px rgba(212,168,67,0.3);
}
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 35px rgba(245,215,110,0.5); }
.btn-outline { 
  background: transparent; color: var(--gold-bright);
  border: 1.5px solid var(--border-bright);
}
.btn-outline:hover { background: rgba(212,168,67,0.08); transform: translateY(-2px); border-color: var(--gold-bright); }

/* ===== FULL-PAGE SECTIONS ===== */
.fullpage {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: flex-start;
  flex-direction: column; position: relative; z-index: 1;
}
.section-inner {
  width: 100%; max-width: 1100px; margin: 0 auto;
  display: flex; flex-direction: column; align-items: center;
}
.section-header { text-align: center; margin-bottom: 2rem; }
.section-header .overline {
  display: inline-block; font-size: 0.75rem; text-transform: uppercase;
  letter-spacing: 0.2em; color: var(--gold-bright); margin-bottom: 0.75rem;
  padding: 0.25rem 1rem; border: 1px solid var(--border-bright); border-radius: 100px;
}
.section-title {
  font-size: 1.8rem; font-weight: 800; margin-bottom: 0.5rem;
  letter-spacing: -0.01em;
}
.section-title .gold { 
  background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
}
.section-sub { color: var(--text-dim); font-size: 0.9rem; max-width: 500px; margin: 0 auto; }


/* ===== DIGITAL RUNWAY · 一条长 T 台 + 真实观众（2026-10-30 极简重构）===== */
#v-runway {
  padding: 0; overflow: hidden; justify-content: flex-start;
  height: calc(100vh - 60px); min-height: calc(100vh - 60px);
  height: calc(100svh - 60px); min-height: calc(100svh - 60px);
  background:
    radial-gradient(66% 46% at 50% 2%, rgba(255,228,168,0.16), transparent 62%),
    radial-gradient(56% 62% at 9% 74%, rgba(150,172,222,0.26), transparent 74%),
    radial-gradient(56% 62% at 91% 74%, rgba(150,172,222,0.26), transparent 74%),
    linear-gradient(180deg, #10141f 0%, #171c29 48%, #0d1119 100%);
}
/* 2026-10-30 走秀页已并入首屏（替换原 hero），高度按顶部 58px 导航扣除 */
#h-slide-hero #v-runway { height: calc(100svh - 58px); min-height: calc(100svh - 58px); width: 100%; padding: 0; }
#v-runway::after {
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 6;
  background: radial-gradient(128% 100% at 50% 42%, transparent 62%, rgba(0,0,0,0.22) 100%);
}
.rwy-head { position: relative; z-index: 5; text-align: center; padding: clamp(4px, 0.8vh, 10px) 1.2rem 0; }
.rwy-head h2 { font-size: clamp(1.45rem, 3vw, 2.5rem); margin: .12rem 0 0; letter-spacing: .01em; }

/* ---- 一条长 T 台 ---- */
.rwy-stage { position: absolute; left: 0; right: 0; bottom: 0; height: 62%; z-index: 2; pointer-events: none; overflow: hidden; }
.rwy-floor {
  position: absolute; left: -34%; right: -34%; top: 2%; bottom: -36%;
  transform: perspective(680px) rotateX(64deg); transform-origin: 50% 0%;
  background:
    repeating-linear-gradient(180deg, rgba(255,246,214,0.05) 0 1.5px, transparent 1.5px 48px),
    linear-gradient(180deg, rgba(62,70,92,0.94) 0%, rgba(44,50,68,0.96) 48%, rgba(28,33,46,0.98) 100%);
  box-shadow: inset 0 0 160px rgba(212,175,55,0.10);
}
.rwy-strip {
  position: absolute; left: 50%; top: 0; bottom: 0; width: min(46vw, 660px); transform: translateX(-50%);
  clip-path: polygon(35% 0%, 65% 0%, 100% 100%, 0% 100%);
  background: linear-gradient(180deg, rgba(255,246,214,0.02) 0%, rgba(255,246,214,0.055) 62%, rgba(255,236,184,0.125) 100%);
  box-shadow: 0 0 90px rgba(255,232,168,0.07) inset;
}
/* ---- 模特 ---- */
.rwy-duo { position: absolute; left: 50%; bottom: 6.5%; transform: translateX(-50%); z-index: 4; display: flex; align-items: flex-end; gap: 0; pointer-events: none; }
.rwy-model { position: relative; flex: 0 0 auto; width: clamp(176px, 25vw, 352px); aspect-ratio: 3 / 5; filter: drop-shadow(0 38px 60px rgba(0,0,0,0.62)); }
/* 两人并排紧贴：只在上身两侧轻收，底部融黑，接缝不再留白 */
.rwy-model video {
  width: 100%; height: 100%; object-fit: cover; display: block;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 58%, rgba(0,0,0,0.92) 76%, transparent 98%), linear-gradient(90deg, transparent 0%, #000 9%, #000 91%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(180deg, #000 0%, #000 58%, rgba(0,0,0,0.92) 76%, transparent 98%), linear-gradient(90deg, transparent 0%, #000 9%, #000 91%, transparent 100%);
  mask-composite: intersect;
}
.rwy-duo .rwy-model.is-m { margin-right: -30px; }
.rwy-duo .rwy-model.is-f { margin-left: -30px; }
.rwy-fade { position: absolute; left: -6%; right: -6%; bottom: -2%; height: 22%; pointer-events: none; background: linear-gradient(180deg, transparent, rgba(4,5,10,0.92) 72%, #04050a 100%); }
.rwy-pool { position: absolute; left: 50%; bottom: 3%; width: 138%; height: 46px; transform: translateX(-50%); background: radial-gradient(ellipse at 50% 50%, rgba(255,236,184,0.24), rgba(212,175,55,0.09) 46%, transparent 74%); mix-blend-mode: screen; pointer-events: none; }
.rwy-cap { position: absolute; left: 50%; bottom: -1.9rem; transform: translateX(-50%); width: max-content; max-width: 96%; text-align: center; }
.rwy-cap b { display: block; font-size: .62rem; letter-spacing: .18em; color: var(--gold-bright); font-weight: 600; text-shadow: 0 1px 8px rgba(0,0,0,.95); }
.rwy-cap span { display: block; font-size: .74rem; color: #eef0f4; margin-top: .18rem; text-shadow: 0 1px 8px rgba(0,0,0,.95); }
.rwy-cap em { display: block; font-size: .62rem; color: #9aa3b2; font-style: normal; margin-top: .12rem; letter-spacing: .06em; text-shadow: 0 1px 8px rgba(0,0,0,.95); }

/* ---- CTA ---- */
.rwy-cta { position: relative; z-index: 7; margin-top: auto; width: 100%; box-sizing: border-box; padding: 0 clamp(16px, 3.4vw, 54px) clamp(18px, 3.4vh, 34px); display: flex; align-items: center; justify-content: space-between; gap: .7rem; flex-wrap: wrap; }
.rwy-corner { display: flex; align-items: center; gap: .5rem; }
.rwy-corner-t { font-size: .74rem; letter-spacing: .06em; color: #e8dcc0; text-decoration: none; text-shadow: 0 1px 8px rgba(0,0,0,.9); opacity: .92; transition: color .25s ease, opacity .25s ease; }
.rwy-corner-t:hover { color: var(--gold-bright); opacity: 1; }
.rwy-wx { display: inline-flex !important; align-items: center; justify-content: center; width: 1.9em !important; height: 1.9em !important; margin-left: 0 !important; border-radius: 8px; background: #07C160; vertical-align: 0 !important; text-decoration: none; box-shadow: 0 3px 14px rgba(7,193,96,0.42); transition: transform .25s ease, box-shadow .25s ease; }
.rwy-wx:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(7,193,96,0.45); }
/* .rwy-cta a 的按钮内边距会污染图标，单独清零 */
.rwy-cta a.rwy-wx { width: 30px !important; height: 30px !important; padding: 0 !important; border: 0; line-height: 0; background: #07C160 !important; }
.rwy-cta a.rwy-wx svg { width: 62%; height: 62%; display: block; }
.rwy-cta a { font-size: .78rem; padding: .56rem 1.25rem; border-radius: 999px; text-decoration: none; color: #f0e2b6; border: 1px solid rgba(212,175,55,0.42); background: rgba(6,8,14,0.55); backdrop-filter: blur(6px); transition: all .3s ease; }
.rwy-cta a.primary { background: linear-gradient(180deg, #D4AF37, #b8912a); border-color: transparent; color: #14100a; font-weight: 600; }
.rwy-cta a:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(212,175,55,0.22); }

@media (max-width: 760px) {
  #v-runway { padding: 0 !important; }
  .rwy-head { padding-top: 6px; }
  .rwy-duo { bottom: 17%; }
  .rwy-model { width: clamp(144px, 46vw, 206px); }
  .rwy-duo .rwy-model.is-m { margin-right: -20px; }
  .rwy-duo .rwy-model.is-f { margin-left: -20px; }
  .rwy-cap { display: none; }
  .rwy-cta { gap: .4rem; padding: 0 12px clamp(14px, 2.6vh, 24px); flex-wrap: nowrap; }
  .rwy-cta a.primary { font-size: .68rem; padding: .48rem .82rem; white-space: nowrap; }
  .rwy-corner { gap: .34rem; }
  .rwy-corner-t { font-size: .62rem; letter-spacing: .02em; white-space: nowrap; }
  .rwy-wx, .rwy-cta a.rwy-wx { width: 28px !important; height: 28px !important; }
  .rwy-strip { width: 84vw; }
  .rwy-floor { left: -60%; right: -60%; }
  .rwy-cap { bottom: -1.7rem; }
  .rwy-cap span { font-size: .64rem; }
  .rwy-cap em { font-size: .55rem; }
}

/* ===== COUNTRY GRID ===== */
.country-grid {
  display: grid; grid-template-columns: repeat(5, 1fr);
  gap: 1.25rem; width: 100%;
}
.country-card {
  background: linear-gradient(180deg, #0F1A2E 0%, #0D1525 100%); border: 1px solid rgba(59,130,246,0.2);
  border-radius: 20px; padding: 1.75rem 1rem; text-align: center;
  cursor: pointer; transition: all 0.35s; position: relative; overflow: hidden;
}
.country-card::before {
  content: ''; position: absolute; inset: 0; opacity: 0; transition: opacity 0.35s;
  background: radial-gradient(circle at 50% 0%, rgba(245,215,110,0.08) 0%, transparent 70%);
}
.country-card:hover { 
  border-color: rgba(59,130,246,0.5); transform: translateY(-4px); 
  box-shadow: 0 12px 40px rgba(59,130,246,0.15);
}
.country-card:hover::before { opacity: 1; }
.country-card.selected {
  border-color: var(--gold-bright); 
  background: linear-gradient(135deg, rgba(212,168,67,0.12), rgba(59,130,246,0.08));
  box-shadow: 0 0 0 2px rgba(245,215,110,0.3), 0 8px 30px rgba(212,168,67,0.2);
}
.country-card .flag { font-size: 2.2rem; margin-bottom: 0.3rem; }
.country-card .card-landmark { font-size: 2.8rem; margin-bottom: 0.1rem; line-height: 1; }
.country-card .name { font-weight: 600; font-size: 0.92rem; }
.country-card .product { font-size: 0.72rem; color: var(--text-dim); margin-top: 0.3rem; line-height: 1.3; }
.country-card .priority {
  position: absolute; top: 10px; right: 10px;
  background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright));
  color: var(--bg-deep); font-size: 0.65rem; font-weight: 700;
  padding: 2px 10px; border-radius: 100px;
}

/* ===== DESIGN ENGINE ===== */
.engine-bg { background: linear-gradient(180deg, rgba(14,14,26,0.8) 0%, var(--bg-deep) 100%); }
.engine-container {
  width: 100%;
  display: grid; grid-template-columns: 330px 1fr; gap: 1rem;
  align-items: stretch;
}
.engine-panel {
  background: var(--bg-card); border: 1px solid var(--border); border-radius: 18px;
  padding: 1rem 1rem 0.6rem;
  height: auto; max-height: 618px; overflow-y: auto;
}
.engine-panel h3 {
  font-size: 0.95rem; margin-bottom: 0.75rem; display: flex; align-items: center; gap: 0.5rem;
  flex-shrink: 0;
}
.engine-panel h3 .gold-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--gold-bright); box-shadow: 0 0 10px rgba(245,215,110,0.6);
}
.form-group { margin-bottom: 0.6rem; }
.form-group label {
  display: block; font-size: 0.75rem; color: var(--gold-rose); margin-bottom: 0.3rem;
  text-transform: uppercase; letter-spacing: 0.06em; font-weight: 500;
}
.form-group input, .form-group select, .form-group textarea {
  width: 100%; padding: 0.55rem 0.85rem; border-radius: 7px;
  background: var(--bg-card2); border: 1px solid var(--border);
  color: var(--text); font-size: 0.88rem; font-family: inherit;
  resize: vertical; transition: all 0.3s;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  outline: none; border-color: var(--gold-bright); 
  box-shadow: 0 0 0 3px rgba(245,215,110,0.08);
}
.purpose-select {
  width: 100%; position: relative; user-select: none;
}
.purpose-select .selected-tags {
  width: 100%; padding: 0.55rem 2rem 0.55rem 0.85rem; border-radius: 7px;
  background: var(--bg-card2); border: 1px solid var(--border);
  color: var(--text-dim); font-size: 0.82rem; font-family: inherit; cursor: pointer;
  transition: all 0.3s; min-height: 40px; display: flex; flex-wrap: wrap; gap: 0.3rem; align-items: center;
  -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23A09880' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 0.8rem center;
}
.purpose-select .selected-tags:focus, .purpose-select.open .selected-tags {
  outline: none; border-color: var(--gold-bright);
  box-shadow: 0 0 0 3px rgba(245,215,110,0.08);
}
.purpose-select .tag-inline {
  padding: 0.15rem 0.5rem; border-radius: 10px; font-size: 0.7rem;
  background: rgba(212,168,67,0.12); border: 1px solid rgba(212,168,67,0.3); color: var(--gold-bright);
}
.purpose-select .dropdown {
  position: absolute; top: 100%; left: 0; right: 0; z-index: 100;
  background: var(--bg-card); border: 1px solid var(--border); border-radius: 7px;
  margin-top: 2px; display: none; max-height: 240px; overflow-y: auto; padding: 0.3rem;
}
.purpose-select.open .dropdown { display: block; }
.purpose-select .dropdown label {
  display: flex; align-items: center; gap: 0.4rem; padding: 0.4rem 0.6rem;
  border-radius: 5px; cursor: pointer; font-size: 0.8rem; color: var(--text); text-transform: none; letter-spacing: normal; font-weight: 400;
  transition: background 0.15s;
}
.purpose-select .dropdown label:hover { background: rgba(212,168,67,0.08); }
.purpose-select .dropdown input[type=checkbox] {
  accent-color: var(--gold-bright); width: 14px; height: 14px; cursor: pointer;
}
.purpose-select .dropdown .custom-row { border-top: 1px dashed var(--border); margin-top: 0.2rem; padding-top: 0.2rem; }
.purpose-select .dropdown .custom-text {
  width: 100%; padding: 0.35rem 0.5rem; border-radius: 5px; background: var(--bg-card2); border: 1px solid var(--border);
  color: var(--text); font-size: 0.78rem; font-family: inherit; margin-top: 0.2rem; box-sizing: border-box;
}
.param-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; }
.generate-btn {
  width: 100%; padding: 0.65rem; border-radius: 10px; border: none;
  background: linear-gradient(135deg, #B8860B, #D4A843, #F5D76E);
  color: var(--bg-deep); font-size: 0.88rem; font-weight: 700; cursor: pointer;
  transition: all 0.3s; letter-spacing: 0.02em;
  box-shadow: 0 4px 20px rgba(212,168,67,0.3);
  display: block;
}
.generate-btn::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transform: translateX(-100%);
}
.generate-btn:hover::after { transform: translateX(100%); transition: transform 0.6s; }
.generate-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 35px rgba(245,215,110,0.5); }
.generate-btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }

/* ===== RESULT PANEL ===== */
.result-panel {
  background: var(--bg-card); border: 1px solid var(--border); border-radius: 18px;
  padding: 1rem; position: relative; overflow-y: auto;
  height: auto; max-height: 618px; display: flex; flex-direction: column;
}
.result-empty {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
  min-height: 120px; padding-top: 20px; color: var(--text-dim);
}
.result-empty .icon { font-size: 3.5rem; margin-bottom: 0.75rem; opacity: 0.4; }
.result-empty p { font-size: 0.8rem; line-height: 1.5; text-align: center; }

.design-results { display: flex !important; flex-direction: column !important; gap: 0.8rem; flex: 1 !important; }
.design-card {
  background: var(--bg-card2); border: 1px solid var(--border); border-radius: 14px;
  padding: 1.2rem; display: grid; grid-template-columns: 100px 1fr; gap: 1rem;
  transition: all 0.3s; cursor: pointer; position: relative; overflow: hidden;
  flex: 1 !important; min-height: 180px !important;
}
.design-card:hover { 
  border-color: var(--border-bright); 
  box-shadow: 0 4px 25px rgba(212,168,67,0.08);
}
.design-card.best { border-color: rgba(245,215,110,0.5); }
.design-card.best::before {
  content: ''; position: absolute; inset: 0; opacity: 0.04; pointer-events: none;
  background: radial-gradient(circle at 30% 50%, var(--gold-bright) 0%, transparent 70%);
}
.best-badge {
  position: absolute; top: 6px; right: 10px;
  background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright));
  color: var(--bg-deep); font-size: 0.65rem; font-weight: 700;
  padding: 2px 10px; border-radius: 100px;
  box-shadow: var(--glow-gold);
}
.design-preview {
  width: 120px; height: 100%; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2.5rem; position: relative; overflow: hidden;
  flex-shrink: 0; min-height: 120px;
}
.design-preview::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(0,0,0,0.25), transparent 60%);
  border-radius: 10px;
}
.design-info h4 { font-size: 0.85rem; margin-bottom: 0.3rem; font-weight: 600; }
.design-info .meta { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 0.5rem; }
.design-info .meta span {
  font-size: 0.68rem; padding: 2px 8px; border-radius: 100px;
  background: rgba(212,168,67,0.12); color: var(--gold-bright);
  border: 1px solid rgba(212,168,67,0.2);
}
.design-info .desc { font-size: 0.73rem; color: var(--text-dim); line-height: 1.35; }
.design-info .actions { display: flex; gap: 0.35rem; margin-top: 0.35rem; flex-wrap: wrap; }
.action-btn {
  padding: 0.32rem 0.65rem; border-radius: 6px; font-size: 0.68rem;
  border: 1px solid var(--border); background: transparent;
  color: var(--gold-rose); cursor: pointer; transition: all 0.2s;
  font-family: inherit;
}
.action-btn:hover { border-color: var(--gold-bright); color: var(--gold-bright); background: rgba(212,168,67,0.06); }
.action-btn.primary-action {
  background: rgba(212,168,67,0.12); border-color: var(--border-bright); color: var(--gold-bright);
}

/* ===== LOADING ===== */
.loading-overlay {
  position: absolute; inset: 0; background: rgba(8,8,16,0.92);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  border-radius: 22px; z-index: 10; backdrop-filter: blur(8px);
}
.gold-loader {
  width: 100px; height: 100px; position: relative;
}
.gold-loader .ring {
  position: absolute; border-radius: 50%; border: 2px solid transparent;
  animation: goldSpin 1.5s ease-in-out infinite;
}
.gold-loader .ring:nth-child(1) {
  inset: 0; border-top-color: var(--gold-bright); animation-duration: 1.2s;
}
.gold-loader .ring:nth-child(2) {
  inset: 10px; border-right-color: var(--gold); animation-duration: 1.5s; animation-direction: reverse;
}
.gold-loader .ring:nth-child(3) {
  inset: 20px; border-bottom-color: var(--gold-dark); animation-duration: 1.8s;
}
.gold-loader .center {
  position: absolute; inset: 32px; border-radius: 50%;
  background: radial-gradient(circle, var(--gold-bright), var(--gold-dark));
  animation: goldPulse 1s ease-in-out infinite;
  box-shadow: 0 0 20px rgba(245,215,110,0.5);
}
@keyframes goldSpin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes goldPulse {
  0%, 100% { transform: scale(0.8); opacity: 0.7; }
  50% { transform: scale(1.1); opacity: 1; }
}
.typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#5BA3EC;animation:typingBounce 1.4s infinite;}
@keyframes typingBounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}
.loading-text { margin-top: 1.75rem; color: var(--gold-rose); font-size: 0.9rem; }

/* ===== SUPPLY CHAIN ===== */
.sc-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem;
  width: 100%;
}
.sc-card {
  background: var(--bg-card); border: 1px solid var(--border); border-radius: 20px;
  padding: 2.5rem 1.75rem; text-align: center; transition: all 0.3s;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
}
.sc-card:hover { border-color: var(--border-bright); transform: translateY(-4px); box-shadow: var(--glow-gold); }
.sc-card .icon { font-size: 3rem; margin-bottom: 1rem; }
.sc-card h4 { font-size: 1.05rem; margin-bottom: 0.6rem; font-weight: 700; }
.sc-card p { font-size: 0.85rem; color: var(--text-dim); line-height: 1.5; }
.sc-arrow {
  display: flex; align-items: center; justify-content: center;
  color: var(--gold-bright); font-size: 1.25rem; opacity: 0.5;
}

/* ===== STATS STRIP ===== */
.stats-strip {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.5rem;
  width: 100%; margin: 0.5rem auto 0; text-align: center;
}
/* 2026-10-28 视野：统计条（$50B+ / 10国 / 3秒内 / 500+）一行宝蓝钻石色打底 */
.stats-strip {
  /* 2026-10-28 08:38 视野：下面蓝太突出 → 直接用地图陆地的同色同透明度（#2C7BFF @ 34%），保证观感与地图一致 */
  background: rgba(44,123,255,0.14);
  border: 1px solid rgba(132,200,255,0.14);
  border-radius: 14px;
  padding: 0.55rem 0.9rem 0.5rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.06), inset 0 -1px 0 rgba(0,0,0,0.4);
}
.stats-strip::before { content: none; }   /* 2026-10-28 08:36 视野：亮带删除，只留原色 */
.stats-strip > * { position: relative; }
.stats-strip .stat-item .label { color: rgba(222,238,255,0.86); }
.stat-item { cursor: pointer; transition: all 0.3s; }
.stat-item:hover { transform: translateY(-2px); }
.stat-item:hover .num { filter: brightness(1.3); }
.stat-item .num {
  font-size: 1.8rem; font-weight: 900;
  background: linear-gradient(135deg, var(--gold-dark), var(--gold-bright));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  font-family: 'Noto Serif SC', serif;
}
.stat-item .label { font-size: 0.7rem; color: var(--text-dim); margin-top: 0.1rem; }

/* ===== FOOTER ===== */
footer {
  text-align: center; padding: 3rem 2rem; border-top: 1px solid var(--border);
  color: var(--text-dim); font-size: 0.85rem; position: relative; z-index: 1;
}
.footer-line {
  width: 60px; height: 2px; background: linear-gradient(90deg, transparent, var(--gold-bright), transparent);
  margin: 0 auto 1.5rem;
}

/* ===== DIVIDER ===== */
.gold-divider {
  width: 80px; height: 2px; margin: 0 auto 2rem;
  background: linear-gradient(90deg, transparent, var(--gold-bright), transparent);
}

/* ===== MODAL ===== */
.modal-overlay {
  position: fixed; inset: 0; z-index: 1000;
  background: rgba(0,0,0,0.8); backdrop-filter: blur(8px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity 0.3s;
}
.modal-overlay.active { opacity: 1; pointer-events: all; }
.modal-box {
  background: var(--bg-card); border: 1px solid var(--border-bright);
  border-radius: 24px; padding: 2rem; max-width: 1000px; width: 90vw;
  max-height: 85vh; overflow-y: auto; position: relative;
  box-shadow: 0 20px 60px rgba(0,0,0,0.6), 0 0 40px rgba(212,168,67,0.15);
}
.modal-close {
  position: absolute; top: 1rem; right: 1rem;
  width: 36px; height: 36px; border-radius: 50%;
  background: rgba(255,255,255,0.1); border: 1px solid var(--border);
  color: var(--text); font-size: 1.2rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center; transition: all 0.2s; z-index: 10;
}
.modal-close:hover { background: var(--red-accent); border-color: var(--red-accent); }
.modal-title { font-size: 1.5rem; font-weight: 800; margin-bottom: 1.5rem; color: var(--gold-bright); }
.modal-body { color: var(--text-dim); line-height: 1.7; }
.modal-body h3 { color: var(--gold-bright); font-size: 1rem; margin: 1.25rem 0 0.5rem; }
.admin-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; margin-top: 1rem; }
.admin-card {
  background: var(--bg-card2); border: 1px solid var(--border); border-radius: 14px;
  padding: 1rem; cursor: pointer; transition: all 0.3s;
}
.admin-card:hover { border-color: var(--gold-bright); transform: translateY(-2px); }
.admin-card .country-flag { font-size: 1.5rem; margin-bottom: 0.25rem; }
.admin-card .country-name { font-weight: 700; color: var(--gold-bright); }
.admin-card .admin-info { font-size: 0.8rem; color: var(--text-dim); margin-top: 0.5rem; line-height: 1.5; }
.country-detail { 
  background: var(--bg-card2); border: 1px solid var(--border); border-radius: 14px;
  padding: 1.25rem; margin-top: 1rem;
}
.country-detail h3 { font-size: 1.2rem; color: var(--gold-bright); margin-bottom: 1rem; }
.country-detail .region-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 0.5rem; }
.country-detail .region-item {
  padding: 0.5rem 0.75rem; background: rgba(212,168,67,0.08);
  border: 1px solid var(--border); border-radius: 8px; font-size: 0.78rem;
}
.back-btn {
  padding: 0.5rem 1rem; border-radius: 8px; border: 1px solid var(--border);
  background: transparent; color: var(--gold-bright); cursor: pointer;
  font-family: inherit; margin-bottom: 1rem; transition: all 0.2s;
}
.back-btn:hover { border-color: var(--gold-bright); background: rgba(212,168,67,0.1); }
.country-map-container { 
  display: flex; justify-content: center; margin: 1rem 0;
}
.admin-map { 
  width: 100%; max-width: 500px; height: auto; 
  border-radius: 12px; 
}
.country-map-container .admin-map circle { cursor: pointer; }
.country-map-container .admin-map circle:hover { r: 6; filter: brightness(1.5); }

.admin-chips {
  display: flex; flex-wrap: wrap; gap: 0.4rem; margin-bottom: 0.5rem;
}
.admin-chip {
  padding: 0.3rem 0.75rem; border-radius: 100px;
  background: var(--bg-card2); border: 1px solid var(--border);
  font-size: 0.78rem; color: var(--text-dim); cursor: pointer;
  transition: all 0.25s; white-space: nowrap;
}
.admin-chip:hover, .admin-chip.active {
  border-color: var(--gold-bright); color: var(--gold-bright);
  background: rgba(212,168,67,0.12);
}
.country-map-panel { margin-top: 0.3rem; }
.country-map-wrap { 
  display: flex; justify-content: center;
}
.country-map-wrap svg {
  max-width: 100%; max-height: 350px; height: auto;
  border-radius: 12px;
}


/* ===== COUNTRY DETAIL PAGE - Fullscreen Overlay ===== */
#countryDetailSection {
  display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
  z-index: 9999; background: rgba(8,8,16,0.98); backdrop-filter: blur(16px);
  overflow: hidden;
}
#countryDetailSection.active { display: flex; flex-direction: column; }
.detail-header{padding:0.8rem 2rem;display:flex;align-items:center;justify-content:space-between;background:rgba(14,14,26,0.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(212,168,67,0.2);flex-shrink:0;}
.detail-header-left{display:flex;align-items:center;gap:0.75rem;}
.detail-back{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(212,168,67,0.2);color:#F5D76E;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.3s;}
.detail-back:hover{border-color:#F5D76E;background:rgba(212,168,67,0.12);}
.detail-header-info .country-name{font-size:1.3rem;font-weight:800;color:#F5D76E;}
.detail-header-info .country-tagline{font-size:0.72rem;color:#A09880;}
.detail-tabs{display:flex;gap:0;padding:0.75rem 2rem;background:rgba(14,14,26,0.95);border-bottom:1px solid rgba(212,168,67,0.2);flex-shrink:0;}
.detail-tab{padding:0.7rem 1.5rem;background:transparent;border:none;color:#A09880;cursor:pointer;font-family:inherit;font-size:0.98rem;font-weight:600;border-bottom:2px solid transparent;transition:all 0.3s;white-space:nowrap;display:flex;align-items:center;gap:0.35rem;}
.detail-tab:hover{color:#C9A86C;}
.detail-tab.active{color:#F5D76E;border-bottom-color:#F5D76E;}
.detail-content-scroll{flex:1;overflow-y:auto;overflow-x:hidden;}
.detail-content{padding:0;color:var(--text);}

/* ===== SOLUTION DETAIL OVERLAY ===== */
#solutionDetailOverlay {
  display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
  z-index: 10000; background: rgba(8,8,16,0.98); backdrop-filter: blur(16px);
}
#solutionDetailOverlay.active { display: flex; flex-direction: column; }

#sampleOverlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(8,8,16,0.97);flex-direction:column;}
#sampleOverlay.active{display:flex;}
#inqOverlay{display:none;position:fixed;inset:0;z-index:10020;background:rgba(8,8,16,0.97);flex-direction:column;}
#inqOverlay.active{display:flex;}
#jqResultCta{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px;}
.form-row{display:flex;flex-direction:column;gap:4px;}
.form-row label{color:#A09880;font-size:0.75rem;font-weight:500;}
.form-row input,.form-row select,.form-row textarea{background:rgba(14,14,26,0.9);border:1px solid rgba(212,168,67,0.2);color:#E2E8F0;padding:8px 12px;border-radius:8px;font-size:0.82rem;font-family:inherit;outline:none;transition:border-color 0.2s;}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#F5D76E;}

/* ===== AI CHAT OVERLAY ===== */
.jyw-avatar{width:60px;height:60px;border-radius:16px;overflow:hidden;flex-shrink:0;border:2px solid rgba(212,168,67,0.6);box-shadow:0 0 24px rgba(245,215,110,0.35);transition:all 0.3s;}
.jyw-avatar:hover{border-color:#F5D76E;box-shadow:0 0 32px rgba(245,215,110,0.5);}
.jyw-avatar-sm{width:40px;height:40px;border-radius:12px;flex-shrink:0;border:1.5px solid rgba(212,168,67,0.5);box-shadow:0 0 14px rgba(245,215,110,0.2);}
.jyw-avatar img,.jyw-avatar-sm img{width:100%;height:100%;object-fit:contain;display:block;background:rgba(8,8,16,0.6);}
/* 即梦效果图按钮 */
.jimeng-gen-btn:hover{background:linear-gradient(135deg,rgba(212,168,67,0.35),rgba(212,168,67,0.1))!important;box-shadow:0 0 16px rgba(245,215,110,0.25)!important;transform:translateY(-1px);}
.jimeng-gen-btn:active{transform:scale(0.96);}
.jimeng-block{transition:border-color 0.3s;}
.jimeng-block:hover{border-color:rgba(212,168,67,0.55)!important;}
.jimeng-result img{animation:jimengFadeIn 0.5s ease;}
@keyframes jimengFadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
#aiChatOverlay {
  display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
  z-index: 10001; background: rgba(8,8,16,0.98); backdrop-filter: blur(16px);
}
#aiChatOverlay.active { display: flex; flex-direction: column; }
#caseLibOverlay.active { display: block; }
#aiModelSelect option { background: #0E0E1A; color: #F5F0E8; }
.sol-detail-header{display:flex;align-items:center;justify-content:space-between;padding:0.8rem 2rem;background:rgba(14,14,26,0.95);border-bottom:1px solid rgba(212,168,67,0.2);flex-shrink:0;}
.sol-detail-header h3{color:#F5D76E;margin:0;font-size:1.15rem;}
.sol-detail-body{flex:1;overflow-y:auto;padding:2rem;max-width:1100px;margin:0 auto;width:100%;}
.sol-detail-body h4{color:#F5D76E;margin:1.2rem 0 0.5rem;}
.sol-detail-body p{color:#A09880;line-height:1.7;font-size:0.88rem;margin-bottom:0.6rem;}
.sol-detail-body .price-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:0.85rem;}
.sol-detail-body .price-table th{background:rgba(212,168,67,0.1);color:#F5D76E;padding:8px 12px;text-align:left;border:1px solid rgba(212,168,67,0.2);}
.sol-detail-body .price-table td{color:#A09880;padding:8px 12px;border:1px solid rgba(212,168,67,0.15);}
.sol-detail-body .cert-img{max-width:100%;border-radius:12px;border:1px solid rgba(212,168,67,0.3);margin:1rem 0;}
.sol-detail-body .file-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin:6px 0;background:rgba(212,168,67,0.05);border:1px solid rgba(212,168,67,0.15);border-radius:8px;transition:all 0.2s;}
.sol-detail-body .file-item:hover{border-color:rgba(212,168,67,0.4);background:rgba(212,168,67,0.1);}
.sol-detail-body .file-item .file-name{color:#F5D76E;font-weight:600;}
.sol-detail-body .file-item .file-info{color:#A09880;font-size:0.75rem;}
.sol-detail-body .file-item .file-dl{background:rgba(212,168,67,0.15);color:#F5D76E;border:1px solid rgba(212,168,67,0.3);padding:4px 14px;border-radius:6px;cursor:pointer;font-size:0.8rem;}
.sol-detail-body .contact-card{background:rgba(212,168,67,0.05);border:1px solid rgba(212,168,67,0.2);border-radius:12px;padding:1.2rem;margin:0.5rem 0;}
.sol-detail-body .contact-card .ct-label{color:#A09880;font-size:0.75rem;}
.sol-detail-body .contact-card .ct-value{color:#F5D76E;font-size:1rem;font-weight:600;}
.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;}
.profile-stat-card{background:#0E0E1A;border:1px solid rgba(212,168,67,0.2);border-radius:16px;padding:1.25rem;text-align:center;transition:all 0.3s;}
.profile-stat-card:hover{border-color:rgba(245,215,110,0.4);transform:translateY(-2px);}
.profile-stat-card .stat-icon{font-size:1.8rem;margin-bottom:0.4rem;}
.profile-stat-card .stat-value{font-size:1.4rem;font-weight:800;background:linear-gradient(135deg,#B8860B,#F5D76E);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.profile-stat-card .stat-label{font-size:0.72rem;color:#A09880;margin-top:0.15rem;}
.profile-section{background:#0E0E1A;border:1px solid rgba(212,168,67,0.2);border-radius:16px;padding:1.5rem;margin-bottom:1rem;}
.profile-section h3{color:#F5D76E;font-size:1rem;margin-bottom:0.75rem;display:flex;align-items:center;gap:0.5rem;}
.profile-section p{color:#A09880;font-size:0.85rem;line-height:1.75;}
.region-badges{display:flex;flex-wrap:wrap;gap:0.4rem;}
.region-badge{padding:0.35rem 0.75rem;border-radius:8px;background:rgba(212,168,67,0.08);border:1px solid rgba(212,168,67,0.2);font-size:0.75rem;color:#A09880;transition:all 0.2s;}
.region-badge:hover{border-color:#F5D76E;color:#F5D76E;background:rgba(212,168,67,0.15);}
.region-badge.capital{border-color:#F5D76E;color:#F5D76E;background:rgba(245,215,110,0.12);font-weight:600;}
.detail-map-container{background:#0E0E1A;border:1px solid rgba(212,168,67,0.2);border-radius:16px;padding:1rem;display:flex;flex-direction:column;align-items:center;}
.detail-map-container svg{max-width:100%;max-height:65vh;height:auto;border-radius:12px;}
.map-legend{display:flex;gap:1.5rem;margin-top:0.75rem;flex-wrap:wrap;justify-content:center;}
.map-legend span{font-size:0.72rem;color:#A09880;display:flex;align-items:center;gap:0.3rem;}
.map-legend .dot-capital{width:8px;height:8px;border-radius:50%;background:#F5D76E;}
.map-legend .dot-major{width:6px;height:6px;border-radius:50%;background:#D4A843;}
.map-legend .dot-region{width:4px;height:4px;border-radius:50%;background:#94A3B8;}
.region-list-panel{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0.4rem;margin-top:1rem;width:100%;}
.region-list-item{padding:0.4rem 0.7rem;background:rgba(212,168,67,0.05);border:1px solid rgba(212,168,67,0.1);border-radius:8px;font-size:0.72rem;color:#A09880;}
/* ===== CMAP 交互地图（点名定位）2026-10-04 ===== */
.cmap-holder{width:100%;display:flex;justify-content:center}
.cmap-holder svg{max-width:640px;width:100%;height:auto;border-radius:12px;background:#0A1628;display:block}
.cmap-holder path[data-n]{transition:fill .18s,stroke .18s;cursor:pointer}
.cmap-holder path[data-n]:hover{fill:#31456E}
.cmap-holder path.cmap-hl{fill:#D4A843 !important;stroke:#F5D76E !important;stroke-width:2;filter:drop-shadow(0 0 2.5px rgba(245,215,110,.95))}
.cmap-marker{fill:#FF6B6B;stroke:#0A1628;stroke-width:1}
.cmap-pulse{fill:none;stroke:#FF6B6B;stroke-width:1.4}

.cmap-maplabel{fill:#F5D76E;font-size:9px;font-family:sans-serif;stroke:#0A1628;stroke-width:2.6;paint-order:stroke;pointer-events:none}
.cmap-hoverlabel{fill:#DCE6F5;font-size:8.5px;font-family:sans-serif;stroke:#0A1628;stroke-width:2.4;paint-order:stroke;pointer-events:none}
.cmap-list{max-height:232px;overflow:auto}
.cmap-li{cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .16s}
.cmap-li:hover{border-color:#F5D76E;color:#F5D76E}
.cmap-li.active{border-color:#F5D76E;color:#0A1628;background:#F5D76E}
.cmap-li.active .cmap-dot{background:#0A1628}
.cmap-dot{width:7px;height:7px;border-radius:50%;background:#94A3B8;flex:0 0 auto;display:inline-block}
.cmap-li[data-cap="1"] .cmap-dot{background:#F5D76E}
.cmap-dots circle.cmap-dot{pointer-events:none;stroke:#0A1628;stroke-width:.35}
.cmap-dots circle.cmap-r2{fill:#F5D76E;filter:drop-shadow(0 0 2px rgba(245,215,110,.85))}
.cmap-dots circle.cmap-r1{fill:#D4A843}
.cmap-dots circle.cmap-r0{fill:#94A3B8}
.cmap-dots circle.cmap-hit{fill:#F5D76E;fill-opacity:0;cursor:pointer;transition:fill-opacity .15s}
.cmap-dots circle.cmap-hit:hover{fill-opacity:.33}
.cmap-dots text.cmap-caplabel{fill:#F5D76E;font-weight:600;paint-order:stroke;stroke:#0A1628;stroke-width:2px;pointer-events:none}

.cmap-dots circle.cmap-pin-active{fill:#FF6B6B !important}
.cmap-reset{cursor:pointer;color:#D4A843;border:1px solid rgba(212,168,67,.45);border-radius:100px;padding:.12rem .6rem;font-size:.68rem}
.cmap-reset:hover{background:rgba(212,168,67,.15)}
.cmap-li.cmap-nofit{opacity:.62}
.cmap-li.cmap-nofit .cmap-dot{background:transparent;border:1px dashed #64748B}

.brand-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;}
.brand-kpi{background:#0E0E1A;border:1px solid rgba(212,168,67,0.2);border-radius:16px;padding:1.25rem;text-align:center;}
.brand-kpi .kpi-value{font-size:2rem;font-weight:900;background:linear-gradient(135deg,#B8860B,#F5D76E);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.brand-kpi .kpi-label{font-size:0.72rem;color:#A09880;margin-top:0.1rem;}
.brand-city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0.85rem;}
.brand-city-card{background:#141424;border:1px solid rgba(212,168,67,0.2);border-radius:14px;padding:1.15rem;display:flex;align-items:flex-start;gap:0.85rem;transition:all 0.3s;cursor:pointer;}
.brand-city-card:hover{border-color:rgba(245,215,110,0.4);transform:translateY(-2px);box-shadow:0 0 30px rgba(212,168,67,0.3);}
.brand-city-card .city-rank{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#B8860B,#F5D76E);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;color:#080810;flex-shrink:0;}
.brand-city-card .city-info{flex:1;}
.brand-city-card .city-info .city-name{font-weight:700;margin-bottom:0.15rem;}
.brand-city-card .city-info .biz-focus{font-size:0.72rem;color:#A09880;line-height:1.4;}
.brand-city-card .city-count{text-align:right;flex-shrink:0;}
.brand-city-card .city-count .count-num{font-size:1.5rem;font-weight:900;background:linear-gradient(135deg,#B8860B,#F5D76E);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.brand-city-card .city-count .count-label{font-size:0.65rem;color:#A09880;}
.brand-note{margin-top:1.5rem;padding:1rem 1.25rem;background:rgba(212,168,67,0.06);border:1px solid rgba(212,168,67,0.2);border-radius:12px;font-size:0.8rem;color:#A09880;line-height:1.6;}
.brand-note b{color:#F5D76E;}



/* ===== FLAT GALLERY ===== */
.flat-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  padding: 0.5rem 0;
}
.flat-gallery::-webkit-scrollbar { width: 6px; }
.flat-gallery::-webkit-scrollbar-thumb { background: rgba(212,168,67,0.2); border-radius: 3px; }
.showcase-card {
  background: linear-gradient(180deg, #12121e 0%, #0d0d18 100%);
  border: 1px solid rgba(212,168,67,0.15);
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: relative;
}
.showcase-card:hover {
  transform: translateY(-6px);
  border-color: rgba(245,215,110,0.5);
  box-shadow: 0 12px 40px rgba(212,168,67,0.15), 0 0 0 1px rgba(245,215,110,0.1) inset;
}
.showcase-card-img {
  width: 100%; height: 200px;
  object-fit: cover;
}
.showcase-card-glass {
  position: absolute; top: 0; left: 0; right: 0; height: 200px;
  background: linear-gradient(180deg, rgba(255,255,255,0.06) 0%, transparent 30%, rgba(0,0,0,0.3) 100%),
              linear-gradient(135deg, rgba(255,255,255,0.04) 0%, transparent 50%);
  pointer-events: none;
}
.showcase-card-body {
  padding: 1rem 1.2rem;
  position: relative;
}
.showcase-card-body .sc-name {
  color: #F5D76E;
  font-size: 0.95rem;
  font-weight: 700;
  margin-bottom: 0.4rem;
  letter-spacing: 0.02em;
}
.showcase-card-body .sc-desc {
  color: #A09880;
  font-size: 0.73rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 0.5rem;
}
.showcase-card-body .sc-meta {
  display: flex; gap: 0.5rem; flex-wrap: wrap;
}
.showcase-card-body .sc-tag {
  font-size: 0.65rem;
  padding: 2px 10px;
  border-radius: 100px;
  background: rgba(212,168,67,0.1);
  color: #C9A84C;
  border: 1px solid rgba(212,168,67,0.2);
  white-space: nowrap;
}
.showcase-card-body .sc-price {
  font-size: 0.95rem;
  font-weight: 700;
  background: linear-gradient(135deg, #B8860B, #F5D76E);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-top: 0.4rem;
}
.showcase-card .sc-spotlight {
  position: absolute; top: -50px; left: 50%; transform: translateX(-50%);
  width: 150px; height: 60px;
  background: radial-gradient(ellipse, rgba(245,215,110,0.1) 0%, transparent 70%);
  pointer-events: none;
  transition: opacity 0.4s;
  opacity: 0;
}
.showcase-card:hover .sc-spotlight { opacity: 1; }
@media (max-width: 768px) {
  .flat-gallery { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
  .flat-gallery { grid-template-columns: 1fr; }
}


/* Corner + button on cards */
.sc-prefer-btn {
  position: absolute; bottom: 44px; right: 6px; z-index: 5;
  width: 28px; height: 28px; border-radius: 50%;
  background: rgba(0,0,0,0.5); border: 1px solid rgba(255,255,255,0.2);
  color: #666; font-size: 0.9rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.2s;
}
.sc-prefer-btn:hover { border-color: #F5D76E; color: #A09880; }
.sc-prefer-btn.sc-prefer-on {
  border-color: rgba(245,215,110,0.6); color: #F5D76E;
  background: rgba(245,215,110,0.15);
}
.sc-corner-add {
  position: absolute; bottom: 10px; right: 10px;
  width: 30px; height: 30px; border-radius: 10px;
  background: rgba(14,14,26,0.85); border: 1px solid rgba(212,168,67,0.3);
  color: #F5D76E; font-size: 0.9rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  z-index: 5; opacity: 0; transition: all 0.3s;
  backdrop-filter: blur(4px);
}
.showcase-card:hover .sc-prefer-btn {
  position: absolute; bottom: 44px; right: 6px; z-index: 5;
  width: 28px; height: 28px; border-radius: 50%;
  background: rgba(0,0,0,0.5); border: 1px solid rgba(255,255,255,0.2);
  color: #666; font-size: 0.9rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.2s;
}
.sc-prefer-btn:hover { border-color: #F5D76E; color: #A09880; }
.sc-prefer-btn.sc-prefer-on {
  border-color: rgba(245,215,110,0.6); color: #F5D76E;
  background: rgba(245,215,110,0.15);
}
.sc-corner-add { opacity: 1; }
.sc-corner-add:hover {
  background: rgba(212,168,67,0.2); border-color: #F5D76E;
  box-shadow: 0 0 12px rgba(245,215,110,0.3); transform: scale(1.1);
}


/* ===== GALLERY HEADER BUTTONS ==== */
.gallery-header-row {
  display: flex; align-items: center; justify-content: center;
  gap: 1rem; width: 100%; max-width: 1100px; margin: 0 auto;
  position: relative;
}
.gallery-header-btns {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  display: flex; gap: 6px;
}
.gallery-header-btn {
  padding: 0.35rem 0.75rem; border-radius: 8px;
  background: rgba(14,14,26,0.7); border: 1px solid rgba(212,168,67,0.2);
  color: #C9A84C; font-size: 0.72rem; cursor: pointer;
  display: flex; align-items: center; gap: 0.3rem;
  transition: all 0.3s; font-family: inherit; white-space: nowrap;
}
.gallery-header-btn:hover {
  border-color: #F5D76E; background: rgba(212,168,67,0.1);
  color: #F5D76E; box-shadow: 0 0 12px rgba(245,215,110,0.15);
}

/* ===== GALLERY EDIT ==== */
.showcase-card .sc-edit-btn {
  position: absolute; top: 8px; right: 8px;
  width: 28px; height: 28px; border-radius: 8px;
  background: rgba(14,14,26,0.85); border: 1px solid rgba(212,168,67,0.3);
  color: #F5D76E; font-size: 0.75rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  z-index: 5; opacity: 0; transition: all 0.3s;
  backdrop-filter: blur(4px);
}
.showcase-card:hover .sc-edit-btn { opacity: 1; }
.sc-edit-btn:hover {
  background: rgba(212,168,67,0.2); border-color: #F5D76E;
  box-shadow: 0 0 12px rgba(245,215,110,0.3);
}.edit-modal-overlay {
  display: none; position: fixed; inset: 0; z-index: 10002;
  background: rgba(8,8,16,0.92); backdrop-filter: blur(12px);
  align-items: center; justify-content: center;
}
.edit-modal-overlay.active { display: flex; }
.edit-modal {
  background: #0E0E1A; border: 1px solid rgba(212,168,67,0.3);
  border-radius: 20px; padding: 1.5rem; width: 90vw; max-width: 600px;
  max-height: 85vh; overflow-y: auto;
  box-shadow: 0 20px 60px rgba(0,0,0,0.6), 0 0 40px rgba(212,168,67,0.1);
}
.edit-modal h3 { color: #F5D76E; font-size: 1.1rem; margin-bottom: 1rem; }
.edit-modal .form-row { margin-bottom: 0.7rem; }
.edit-modal .form-row label {
  display: block; font-size: 0.72rem; color: #A09880;
  margin-bottom: 0.25rem; text-transform: uppercase; letter-spacing: 0.05em;
}
.edit-modal .form-row input, .edit-modal .form-row textarea {
  width: 100%; padding: 0.5rem 0.75rem; border-radius: 8px;
  background: rgba(14,14,26,0.9); border: 1px solid rgba(212,168,67,0.2);
  color: #E2E8F0; font-size: 0.85rem; font-family: inherit;
  outline: none; transition: border-color 0.2s;
}
.edit-modal .form-row input:focus, .edit-modal .form-row textarea:focus {
  border-color: #F5D76E;
}
.edit-modal .form-row textarea { resize: vertical; min-height: 60px; }
.edit-modal .form-row .img-preview {
  width: 100%; max-height: 150px; object-fit: contain;
  border-radius: 8px; margin-top: 0.5rem; background: rgba(0,0,0,0.3);
}
.edit-modal .btn-row { display: flex; gap: 0.5rem; margin-top: 1rem; flex-wrap: wrap; }
.edit-modal .btn-save {
  flex: 1; padding: 0.6rem; border-radius: 10px; border: none;
  background: linear-gradient(135deg, #B8860B, #D4A843, #F5D76E);
  color: #0E0E1A; font-weight: 700; font-size: 0.85rem; cursor: pointer;
  transition: all 0.3s;
}
.edit-modal .btn-save:hover { box-shadow: 0 4px 20px rgba(245,215,110,0.3); }
.edit-modal .btn-delete {
  padding: 0.6rem 1.2rem; border-radius: 10px;
  background: transparent; border: 1px solid rgba(196,30,58,0.4);
  color: #C41E3A; font-size: 0.85rem; cursor: pointer; transition: all 0.3s;
}
.edit-modal .btn-delete:hover { background: rgba(196,30,58,0.1); border-color: #C41E3A; }
.edit-modal .btn-cancel {
  padding: 0.6rem 1.2rem; border-radius: 10px;
  background: transparent; border: 1px solid rgba(212,168,67,0.2);
  color: #A09880; font-size: 0.85rem; cursor: pointer; transition: all 0.3s;
}
.edit-modal .btn-cancel:hover { border-color: #F5D76E; color: #F5D76E; }

/* ===== RESPONSIVE ===== */
@media (max-width: 900px) {
  .engine-container { grid-template-columns: 1fr; }
  .sc-grid { grid-template-columns: repeat(2, 1fr); }
  .design-card { grid-template-columns: 1fr; }
  .design-preview { width: 100%; height: 80px; }
  .stats-strip { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .country-grid { grid-template-columns: repeat(2, 1fr); }
  .sc-grid { grid-template-columns: 1fr; }
  .pin-bottom { flex-direction: column; gap: 0.5rem; }
  .nav-actions .nav-btn { display: none; }
  .nav-actions .nav-btn.primary, .nav-actions #fbNavBtn { display: inline-flex; }
}

/* Streaming cursor blink */
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }

/* Hover reveal for image place-into-gallery buttons */
.img-place-actions { opacity: 0; transition: opacity 0.2s; }
.img-wrap:hover .img-place-actions,
.img-wrap .img-place-actions:hover { opacity: 1 !important; }
.img-wrap:hover .img-place-actions,
.img-wrap .img-place-actions:hover { opacity: 1 !important; }

/* Reclassify pulse animation for wrong-category items */
@keyframes pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(212,168,67,0.5); } 50% { box-shadow: 0 0 0 6px rgba(212,168,67,0); } }
.sc-reclass-btn { transition: all 0.2s; }
.sc-reclass-btn:hover { background: rgba(212,168,67,0.35) !important; transform: scale(1.15); }
.showcase-card:hover .sc-reclass-btn { opacity: 1 !important; }

/* ===== 移动端收敛层 V1 (2026-09-09): 手机观感接近桌面版 ===== */
@media (max-width: 760px){
  html,body{overflow-x:hidden !important; -webkit-text-size-adjust:100%;}
  /* 顶部导航: 手机 logo 靠左/工坊直连靠右, 两侧收窄 */
  nav{ padding:0 0.6rem !important; }
  /* AI商业设计引擎结果: 手机3方案同屏适配真机一屏 */
  #v-engine .result-panel{ max-height:none !important; }
  #v-engine .design-results{ min-height:0 !important; }
  #v-engine .design-card{ grid-template-columns:88px 1fr !important; gap:0.7rem !important; padding:0.6rem !important; min-height:145px !important; align-items:center; }
  #v-engine .design-preview{ width:88px !important; height:auto !important; min-height:120px !important; font-size:2.6rem !important; }
  #v-engine .best-badge{ font-size:0.52rem !important; padding:2px 7px !important; top:3px; right:6px; }
  #v-engine .design-info h4{ font-size:0.8rem !important; margin-bottom:0.12rem !important; padding-right:4.4rem; }
  #v-engine .design-info .meta{ gap:0.25rem !important; margin-bottom:0.2rem !important; }
  #v-engine .design-info .meta span{ font-size:0.58rem !important; padding:2px 7px !important; }
  #v-engine .design-info .desc{ font-size:0.63rem !important; line-height:1.3; -webkit-line-clamp:1; overflow:hidden; }
  #v-engine .design-info .actions{ gap:0.25rem !important; margin-top:0.25rem !important; }
  #v-engine .design-info .actions .action-btn{ font-size:0.55rem !important; padding:0.26rem 0.5rem !important; }
  .hero-nav-hint, .v-nav{ display:none !important; }
  /* 面料馆/成品馆: 手机一屏6图(2列×3行), 图卡等比缩小(卡片为JS内联渲染, 用!important压内联) */
  #h-slide-fabric, #h-slide-product{ padding:56px 0.6rem 0.4rem !important; }
  #h-slide-fabric .gallery-header-row, #h-slide-product .gallery-header-row{ justify-content:center; }
  #h-slide-fabric .section-header, #h-slide-product .section-header{ margin-bottom:0.4rem !important; }
  #h-slide-fabric .overline, #h-slide-product .overline{ font-size:0.55rem !important; padding:.1rem .5rem !important; margin-bottom:.2rem !important; }
  #h-slide-fabric .section-title, #h-slide-product .section-title{ font-size:1rem !important; margin-bottom:.1rem !important; }
  #h-slide-fabric .section-sub, #h-slide-product .section-sub{ font-size:0.58rem !important; }
  #h-slide-fabric .flat-gallery, #h-slide-product .flat-gallery{ overflow-y:visible !important; }
  #h-slide-fabric [style*="height:250px"], #h-slide-product [style*="height:250px"]{ height:128px !important; }
  #h-slide-fabric [style*="height:250px"] img, #h-slide-product [style*="height:250px"] img{ object-fit:cover; }
  #h-slide-fabric .showcase-card, #h-slide-product .showcase-card{ border-radius:10px !important; }
  #h-slide-fabric .showcase-card [style*="font-size:2.8rem"], #h-slide-product .showcase-card [style*="font-size:2.8rem"],
  #h-slide-fabric .showcase-card [style*="font-size:3rem"], #h-slide-product .showcase-card [style*="font-size:3rem"]{ font-size:1.9rem !important; }
  #h-slide-fabric .sc-name, #h-slide-product .sc-name{ font-size:0.72rem !important; }
  #h-slide-fabric .sc-name + span, #h-slide-product .sc-name + span{ font-size:0.55rem !important; }
  #h-slide-fabric .sc-prefer-btn, #h-slide-product .sc-prefer-btn{ display:none !important; }
  /* 手机首屏: 顶部对齐面料馆(下移) + 图拉高 + 底部留白收窄(2026-09-10 视野定) */
  #h-slide-hero .hero{ align-items:stretch; justify-content:flex-start; }
  #h-slide-hero .hero-inner{ min-height:calc(100vh - 58px); justify-content:flex-start; padding-bottom:0; }
  #h-slide-hero .hero-title-pin{ margin-top:28px !important; margin-bottom:1.1rem; gap:0.55rem; }
  #h-slide-hero .hero p{ margin-top:0; margin-bottom:0.9rem; }
  #h-slide-hero .hero-map{ margin:0 auto 1rem; }
  #h-slide-hero .hero-cta{ margin:0 0 1rem; }
  /* 东盟十国航线图: 手机放大135%宽(高≈164px), 容器内左右滑动看全图(不裁国家) */
  .hero-map{ overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .hero-map::-webkit-scrollbar{ display:none; }
  .hero-map .route-map{ width:210%; height:auto; max-width:none; }
  body{font-size:14px;}
  .hero-content, .section, .sol-detail-body, .ai-chat-wrap{max-width:100% !important;}
  h1{font-size:1.55rem !important; line-height:1.35 !important;}
  h2{font-size:1.25rem !important;}
  h3{font-size:1.05rem !important;}
  .hero-cta{flex-wrap:wrap !important;}
  .hero-cta .btn{font-size:0.76rem !important; padding:.42rem .8rem !important;}
  .stats-strip{gap:0.3rem !important; margin-top:0.2rem !important;}
  .stat-item .num{font-size:1.15rem !important;}
  .stat-item .label{font-size:0.58rem !important; margin-top:0.05rem !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  /* 网格容器统一收敛(基础层, JS 再动态处理动态渲染的) */
  [style*="grid-template-columns"]{grid-template-columns:repeat(2,1fr) !important;}
  /* 表格/多列卡片横向溢出保护 */
  table{max-width:100% !important;}
  .price-table{display:block;overflow-x:auto;white-space:nowrap;}
  /* 设计→授权→生产→财富 流程胶囊收敛 */
  #v-supply span[style*="border-radius:100px"]{ font-size:0.72rem !important; padding:.32rem .75rem !important; }
  #v-supply span[style*="font-size:1.2rem"]{ font-size:0.9rem !important; }
  #v-supply .section-title{ font-size:1.15rem !important; }
  /* 「架设壮锦天桥 直达东盟十国」强制同排单行(参照电脑版) */
  .pin-bottom{ flex-direction:row !important; flex-wrap:nowrap !important; gap:0.7rem !important; white-space:nowrap !important; justify-content:center !important; align-items:center !important; }
  .pin-left, .pin-right{ font-size:1.02rem !important; letter-spacing:0.02em !important; }
  /* ===== 全站排版按桌面比例收敛 ===== */
  .v-section{ padding:44px 12px 28px !important; }
  #v-runway{ padding:0 !important; }
  .section-inner{ padding:0 4px !important; max-width:100% !important; }
  .section-header{ margin-bottom:0.6rem !important; }
  .overline{ font-size:0.6rem !important; letter-spacing:0.12em !important; padding:.18rem .7rem !important; margin-bottom:.45rem !important; }
  .section-title{ font-size:1.28rem !important; margin-bottom:.35rem !important; }
  .section-sub{ font-size:0.76rem !important; }
  #v-supply .section-title{ font-size:1.28rem !important; }
  .country-card .flag{ font-size:1.45rem !important; margin-bottom:.2rem !important; }
  .country-card .name{ font-size:0.8rem !important; }
  .country-card .product{ font-size:0.64rem !important; }
  .country-card{ padding:.7rem .5rem !important; }
  .design-card h4{ font-size:0.88rem !important; }
  .design-info .meta span{ font-size:0.68rem !important; }
  .desc{ font-size:0.7rem !important; }
  .best-badge{ font-size:0.6rem !important; padding:.15rem .5rem !important; }
  .section-inner p{ font-size:0.78rem !important; }
  /* 表格类(价格/参数) */
  .price-table{ font-size:0.74rem !important; }
  /* 设计→授权→生产→财富: 手机4功能卡2×2挤进一屏 */
  #v-supply .section-sub{ margin-bottom:0.5rem !important; }
  #v-supply div[style*="margin-bottom:2rem"]{ margin-bottom:0.9rem !important; }
  #v-supply .sc-grid{ grid-template-columns:repeat(2,1fr) !important; gap:0.8rem !important; }
  #v-supply .sc-card{ padding:1rem 0.6rem !important; border-radius:16px !important; }
  #v-supply .sc-card .icon{ font-size:2.3rem !important; margin-bottom:0.25rem !important; line-height:1; }
  #v-supply .sc-card h4{ font-size:1rem !important; margin:0 0 0.2rem !important; }
  #v-supply .sc-card p{ font-size:0.68rem !important; line-height:1.45 !important; margin:0 !important; }
  #v-supply .sc-card div[style*="margin-top:0.5rem"]{ margin-top:0.3rem !important; font-size:0.6rem !important; }
  #v-supply .sc-card .icon + h4{ margin-top:0.15rem; }

  /* 商标英文保持单排(与电脑版一致) */
  .logo-text span{ white-space:nowrap !important; font-size:0.6rem !important; letter-spacing:0.06em !important; }
  .logo-text .cn{ white-space:nowrap !important; font-size:1.05rem !important; letter-spacing:0.04em !important; } /* 中文按桌面比例放大(1.05:0.6≈桌面1.38:0.78) */
  .logo{ gap:0.5rem !important; }
  /* 弹层卡片: 小屏基本全宽 + 内部可滚(防挤压) */
  [id$="Overlay"] > div, [class*="overlay"] > div{max-width:94vw !important;}
  /* ===== 锦锂AI设计聊天浮层：按电脑版比例收敛(2026-09-09) ===== */
  #aiChatOverlay .sol-detail-header{ flex-wrap:wrap; row-gap:0.4rem; padding:0.55rem 0.7rem !important; }
  #aiChatOverlay .sol-detail-header h3{ font-size:0.95rem !important; }
  #aiChatOverlay .jyw-avatar{ width:44px !important; height:44px !important; border-radius:12px !important; }
  #aiChatOverlay .jyw-avatar-sm{ width:32px !important; height:32px !important; }
  #aiChatOverlay .sol-detail-header button{ font-size:0.68rem !important; padding:4px 9px !important; }
  #aiChatOverlay .sol-detail-header select{ font-size:0.66rem !important; padding:4px 6px !important; max-width:38vw !important; }
  #aiChatOverlay .sol-detail-header > div:last-child{ flex-wrap:wrap; justify-content:flex-end; gap:6px !important; }
  #aiChatOverlay .sol-detail-body{ padding:0.3rem 0.6rem 0.9rem !important; }
  #aiChatOverlay #aiModelInfo{ font-size:0.65rem !important; margin-bottom:0.2rem !important; }
  #aiChatOverlay #aiChatMessages{ height:54vh !important; min-height:36vh !important; padding:0.7rem !important; gap:8px !important; }
  #aiChatOverlay .sol-detail-body > div:last-child{ gap:6px !important; padding-top:6px !important; }
  #aiChatOverlay .sol-detail-body button[style*="border-radius:50%"]{ width:34px !important; height:34px !important; padding:0 !important; font-size:1.1rem !important; }
  #aiChatOverlay .sol-detail-body button[style*="border-radius:24px"]{ padding:9px 16px !important; font-size:0.82rem !important; }
  #aiChatOverlay #aiChatInput{ font-size:0.88rem !important; padding:9px 11px !important; }
  #aiChatOverlay #aiChatMessages > div{ font-size:0.9rem !important; }
}
/* 还原金桂横幅删除前的首屏节奏: 标题区补回横幅占位留白 */
.hero-title-pin{ margin-top: 2.1rem !important; }
/* 锦锂AI智能设计输入区 — 竖屏手机: 输入框独占一行, 4个功能钮下移一行(横屏/电脑保持一行) */
@media (max-width:760px) and (orientation:portrait){
  #aiChatOverlay .sol-detail-body > div:last-child{ flex-wrap:wrap; row-gap:6px; }
  #aiChatOverlay #aiChatInput{ flex:1 1 calc(100% - 46px) !important; max-width:calc(100% - 46px) !important; }
  #aiChatOverlay .sol-detail-body button[data-h*="toggleAutoGen"],
  #aiChatOverlay .sol-detail-body button[data-h*="openChatLangMenu"],
  #aiChatOverlay .sol-detail-body button[data-h*="showAccessCodeInput"],
  #aiChatOverlay .sol-detail-body button[data-h*="aiChatSend"]{ order:9; }
  #aiChatOverlay .sol-detail-body button[data-h*="aiChatSend"]{ margin-left:auto; }
}
/* ===== 首屏「一屏看全」紧凑化（2026-10-28 视野要求：整版缩到一页内）=====
   手法：信息量不减，只压留白；大地图设高度上限随视口伸缩；字号 clamp 随屏缩放，不硬砍 */
@media (min-width: 981px) {
  /* 2026-10-28 09:00 视野：回退到 38vh 大图版；但必须留出 54px 导航净空，否则内容变高时标题会被固定的导航压住 */
  #h-slide-hero { padding-top: 54px !important; }
  #h-slide-hero .hero { justify-content: center; }
  #h-slide-hero .hero-inner { justify-content: center; padding-bottom: 0.6rem; }
  #h-slide-hero .hero-title-pin { margin-top: 0 !important; margin-bottom: 0.4rem !important; gap: 0.14rem; }
  #h-slide-hero .pin-top { font-size: clamp(1.18rem, 2.55vw, 2.15rem); line-height: 1.12; }
  #h-slide-hero .pin-bottom { gap: clamp(1.35rem, 3vw, 2.7rem); }
  #h-slide-hero .pin-left, #h-slide-hero .pin-right { font-size: clamp(0.98rem, 2.02vw, 1.72rem); line-height: 1.12; }
  #h-slide-hero .hero-map { margin: 0.35rem auto 0.3rem; }
  /* 2026-10-28 08:50 视野：地图横向拉宽 —— 地图 SVG 是 800x260 等比缩放，宽度由高度决定（高 30vh 时只画到 745px/1360，两侧大量空白），所以拉宽 = 抬高高度上限 */
  #h-slide-hero .route-map { height: clamp(230px, 38vh, 460px); width: 100%; }
  #h-slide-hero .hero-cta { margin: 0.6rem 0 0.75rem; }
  #h-slide-hero .stats-strip { margin: 0.35rem auto 0; }
  #h-slide-hero .stat-item .num { font-size: clamp(1.18rem, 1.75vw, 1.65rem); }
  #h-slide-hero .stat-item .label { font-size: clamp(0.64rem, 0.82vw, 0.78rem); }
  /* 2026-10-28 08:20 视野：导航下方版面横向拉宽 */
  #h-slide-hero .hero-inner { max-width: 1360px; }
  #h-slide-hero .hero-lead { max-width: 1080px !important; }
  #h-slide-hero .hero-lead > div:last-child { max-width: 760px !important; }
  #h-slide-hero .hero p { max-width: 880px; }
  #h-slide-hero .pin-bottom { gap: clamp(1.6rem, 3.4vw, 3.2rem); }
}

/* 中等高度：留 40px，避免标题钻进固定导航（导航 54px）下 */
@media (min-width: 981px) and (max-height: 790px) {
  #h-slide-hero { padding-top: 54px !important; }
}

@media (min-width: 981px) and (max-height: 760px) {
  #h-slide-hero .route-map { height: clamp(180px, 26vh, 300px); }
  #h-slide-hero .hero-cta { margin: 0.45rem 0 0.5rem; }
  #h-slide-hero .stats-strip { margin: 0.25rem auto 0; }
}

/* 手机端：本次桌面放大后，文案块略长；把地图高度封顶，保证统计条仍在首屏内（2026-10-28 08:06） */
@media (max-width: 980px) {
  #h-slide-hero .route-map { height: clamp(220px, 42vh, 318px); }
  #h-slide-hero .hero-inner { padding-bottom: 14px; }
}

/* 矮屏（笔记本 1280x620 一类，可视高 <640）再收一档，保证底部统计条仍在一屏内 */
@media (min-width: 981px) and (max-height: 640px) {
  #h-slide-hero { padding-top: 50px !important; }
  #h-slide-hero .hero-title-pin { margin-top: 0.35rem !important; }
  #h-slide-hero .route-map { height: clamp(130px, 18vh, 190px); }
  #h-slide-hero .hero-cta { margin: 0.28rem 0 0.32rem; }
  #h-slide-hero .stats-strip { margin-top: 0.1rem; }
}


#imgViewer{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:rgba(5,5,12,0.94);-webkit-tap-highlight-color:transparent;touch-action:none;user-select:none;overflow:hidden;}
#imgViewer img{max-width:94vw;max-height:78vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 40px rgba(0,0,0,0.7);transition:transform .15s ease,opacity .15s ease;will-change:transform;}
#imgViewer .iv-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.28);color:#fff;font-size:20px;line-height:40px;text-align:center;cursor:pointer;}
#imgViewer .iv-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(212,168,67,0.9);border:none;color:#080810;font-size:26px;line-height:48px;text-align:center;cursor:pointer;font-weight:700;}
#imgViewer .iv-prev{left:10px;}
#imgViewer .iv-next{right:10px;}
#imgViewer .iv-cap{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#F5D76E;font-size:0.85rem;padding:0 16px;}
#imgViewer .iv-cap small{display:block;color:#A09880;font-size:0.7rem;margin-top:4px;letter-spacing:1px;}
#imgViewer .iv-hint{position:absolute;bottom:64px;left:0;right:0;text-align:center;color:#8b857a;font-size:0.68rem;}


/* ===== 试衣通道（2026-10-30）===== */
.rwy-still { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .55s ease; z-index: 3; pointer-events: none; }
.rwy-still.on { opacity: 1; }
@keyframes rwyFlash { 0%,100% { filter: drop-shadow(0 38px 60px rgba(0,0,0,.62)); } 50% { filter: drop-shadow(0 0 26px rgba(245,215,110,.85)); } }
.rwy-model.rwy-flash { animation: rwyFlash 1.1s ease 2; }
.rwy-lookbar { position: absolute; left: 50%; bottom: -1.55rem; transform: translateX(-50%); display: none; z-index: 6; }
.rwy-lookbar.on { display: block; }
.rwy-lookbar .rwy-walk { border-color: rgba(212,175,55,.9); background: linear-gradient(180deg,#D4AF37,#b8912a); color: #14100a; font-weight: 700; }
.rwy-lookbar .rwy-walk[disabled] { opacity: .72; cursor: progress; }
.rwy-lookbar button { font-size: .58rem; padding: .22rem .6rem; border-radius: 999px; border: 1px solid rgba(212,175,55,0.5); background: rgba(8,10,16,0.86); color: #f0e2b6; cursor: pointer; white-space: nowrap; }
.rwy-lookbar button:hover { background: rgba(212,175,55,0.9); color: #14100a; }
.fit-wrap { position: relative; display: inline-block; max-width: 100%; }
.fit-wrap > img { display: block; max-width: 100%; border-radius: 10px; }
.fit-bar { position: static; display: flex; justify-content: center; gap: 6px; margin-top: 5px; opacity: 1; }
.fit-wrap:hover .fit-bar, .fit-wrap:focus-within .fit-bar { opacity: 1; }
.fit-bar::before { content: '👗 一键上身'; align-self: center; font-size: .58rem; color: #9c8f6e; margin-right: 2px; white-space: nowrap; }
.fit-bar button { font-size: .68rem; padding: .3rem .62rem; border-radius: 999px; border: 1px solid rgba(212,175,55,0.55); background: rgba(8,10,16,0.88); color: #f2e6c4; cursor: pointer; white-space: nowrap; box-shadow: 0 4px 14px rgba(0,0,0,.45); }
.fit-bar button:hover { background: linear-gradient(180deg,#D4AF37,#b8912a); color: #14100a; border-color: transparent; }
#jqToast { position: fixed; left: 50%; bottom: 26px; transform: translateX(-50%) translateY(16px); background: rgba(10,13,20,0.95); border: 1px solid rgba(212,175,55,0.42); color: #f2e6c4; padding: .62rem 1.05rem; border-radius: 10px; font-size: .78rem; line-height: 1.3; z-index: 10001; opacity: 0; transition: all .3s ease; pointer-events: none; max-width: 86vw; text-align: center; }
#jqToast.on { opacity: 1; transform: translateX(-50%) translateY(0); }
@media (max-width: 760px) { .fit-bar { opacity: 1; } }
