/* ══════════════════════════════════════════════
   第 11 屏 · 现场才有的四件事 · 三日限定
   ───────────────────────────────────────────────
   全屏自绘，不移植外部页面；类名统一 vs- 前缀，选择器全部收在 #s12。
   结构：体验台（2×2 现场项目卡 + 排进行程）→ 到场即得（4 项权益）→
        行程栏（/ 观展清单编号）→ 预约入口
   ⚠️ 本屏刻意不含任何价格、折扣、下单元素 —— 目标是把人请到现场，不是把货卖出去。
   ══════════════════════════════════════════════ */
#s12{padding:max(12px,env(safe-area-inset-top)) 19px 6px}
#s12 .s-head{margin-bottom:5px}
#s12 .s-head .cat{font-size:11px;letter-spacing:.16em;color:#FFE0A0}
#s12>h2{font-size:clamp(19px,5.2vw,24px);line-height:1.22;margin-bottom:5px}
#s12>.lead{font-size:12.4px;line-height:1.58;margin-bottom:9px}
#s12>.lead b{color:var(--gold-bright);font-weight:700}

/* ── 体验台 ── */
#s12 .vs-stage{
  padding:9px 10px 11px;border-radius:16px;
  border:1px solid rgba(255,206,120,.20);
  background:linear-gradient(168deg,rgba(96,18,6,.5),rgba(38,5,1,.72));
  box-shadow:inset 0 1px 0 rgba(255,231,206,.08),0 10px 26px rgba(40,5,0,.3);
}
#s12 .vs-stage-hd{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 3px 8px;border-bottom:1px solid rgba(255,206,120,.16);margin-bottom:9px;
}
#s12 .vs-rail{
  display:flex;align-items:center;gap:6px;
  font-family:var(--serif);font-size:10.6px;letter-spacing:.16em;color:var(--gold-bright);
}
#s12 .vs-rail::before{
  content:"";flex:none;width:3px;height:11px;border-radius:2px;
  background:var(--gold-bright);box-shadow:0 0 8px var(--gold-bright);
}
#s12 .vs-tip{font-size:9.4px;letter-spacing:.1em;color:rgba(255,224,160,.52)}

#s12 .vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#s12 .vs-item{
  position:relative;overflow:hidden;
  padding:9px 10px 8px;border-radius:13px;
  border:1px solid rgba(255,235,200,.15);
  background:linear-gradient(165deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  transition:border-color .3s,background .3s,box-shadow .3s;
}
/* 馆色只出现在「左侧细线 + 圆图描边」上，卡面保持工程的红金底 */
#s12 .vs-item::before{
  content:"";position:absolute;left:0;top:9px;bottom:9px;width:2px;border-radius:2px;
  background:linear-gradient(180deg,var(--c),rgba(255,255,255,0));
  opacity:.75;
}
#s12 .vs-item.on{
  border-color:rgba(255,214,107,.62);
  background:linear-gradient(165deg,rgba(255,214,120,.16),rgba(255,214,120,.05));
  box-shadow:0 0 0 1px rgba(255,214,107,.22),0 8px 20px rgba(80,20,0,.35);
}
#s12 .vs-thumb{
  display:block;width:34px;height:34px;border-radius:50%;overflow:hidden;
  float:left;margin:1px 8px 0 2px;
  box-shadow:0 0 0 1.5px var(--c),0 4px 12px rgba(30,4,0,.45);
}
#s12 .vs-thumb img{width:100%;height:100%;object-fit:cover;display:block}
#s12 .vs-cat{
  display:block;font-size:8.8px;font-weight:800;letter-spacing:.14em;color:var(--c);
  line-height:1.2;padding-top:1px;
}
#s12 .vs-name{
  display:block;font-family:var(--serif);font-size:12.6px;line-height:1.28;
  color:var(--ink);margin-top:2px;
}
#s12 .vs-when{
  display:block;clear:both;margin-top:7px;
  font-style:normal;font-size:9.2px;line-height:1.3;letter-spacing:.04em;
  color:rgba(255,224,160,.62);
}
#s12 .vs-desc{
  display:block;margin-top:4px;padding-top:4px;
  border-top:1px dashed rgba(255,206,120,.14);
  font-size:9.6px;line-height:1.44;color:rgba(255,238,216,.72);
}
#s12 .vs-foot{display:flex;align-items:center;justify-content:flex-end;margin-top:6px}
#s12 .vs-add{
  border:0;cursor:pointer;font-family:inherit;-webkit-appearance:none;appearance:none;
  display:inline-flex;align-items:center;justify-content:center;gap:3px;
  padding:5px 11px;border-radius:999px;
  font-size:9.8px;font-weight:700;letter-spacing:.04em;color:#4A1103;white-space:nowrap;
  background:linear-gradient(140deg,var(--gold-bright),var(--gold) 62%,#D9A32B);
  box-shadow:0 4px 12px rgba(110,60,0,.4),inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .18s,background .25s;
}
#s12 .vs-add:active{transform:scale(.94)}
#s12 .vs-item.on .vs-add{
  background:linear-gradient(140deg,#8FE9D2,#2FA98C);
  color:#062019;font-weight:800;
}

/* ── 到场即得 ── */
#s12 .vs-get{
  margin-top:8px;padding:8px 11px 9px;border-radius:14px;
  border:1px solid rgba(23,209,224,.20);
  background:linear-gradient(168deg,rgba(9,30,38,.55),rgba(5,14,20,.72));
  box-shadow:inset 0 1px 0 rgba(255,231,206,.06);
}
#s12 .vs-get-hd{
  display:flex;align-items:center;gap:7px;margin-bottom:8px;
  font-family:var(--serif);font-size:10.6px;letter-spacing:.16em;color:var(--cyan);
}
#s12 .vs-get-hd i{
  flex:none;width:6px;height:6px;border-radius:50%;background:var(--cyan);
  box-shadow:0 0 9px var(--cyan);animation:vsPulse 2.4s ease-in-out infinite;
}
@keyframes vsPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.72)}}
#s12 .vs-perks{
  position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;
  list-style:none;padding:0;margin:0;
}
#s12 .vs-perks::before{
  content:"";position:absolute;left:12%;right:12%;top:10px;height:1px;
  background:repeating-linear-gradient(90deg,rgba(23,209,224,.45) 0 4px,transparent 4px 9px);
}
#s12 .vs-perks li{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;
  text-align:center;
}
#s12 .vs-perks i{
  position:relative;z-index:1;
  width:21px;height:21px;border-radius:50%;font-style:normal;
  display:flex;align-items:center;justify-content:center;
  font-size:8.6px;font-weight:800;letter-spacing:0;color:#03191E;
  background:linear-gradient(140deg,#9EEBF5,var(--cyan));
  box-shadow:0 0 10px rgba(23,209,224,.45);
}
#s12 .vs-perks b{font-family:var(--serif);font-size:10.4px;color:var(--ink);line-height:1.2}
#s12 .vs-perks span{font-size:8.8px;line-height:1.24;color:rgba(200,240,246,.62)}

/* ── 行程栏 / 观展清单 ── */
#s12 .vs-bar{
  display:flex;align-items:center;gap:10px;margin-top:8px;
  padding:7px 8px 7px 13px;border-radius:14px;
  border:1px solid rgba(255,206,120,.24);
  background:linear-gradient(150deg,rgba(120,22,6,.72),rgba(56,8,2,.82));
  box-shadow:inset 0 1px 0 rgba(255,231,206,.1),0 10px 24px rgba(40,5,0,.34);
}
#s12 .vs-bar.hide{display:none}
#s12 .vs-info{flex:1 1 auto;display:flex;align-items:baseline;gap:5px;min-width:0}
#s12 .vs-info b{
  font-family:var(--serif);font-size:19px;line-height:1;color:var(--gold-bright);
  font-variant-numeric:tabular-nums;
}
#s12 .vs-info span{font-size:9.6px;color:rgba(255,232,206,.7)}
#s12 .vs-go{
  flex:none;border:0;cursor:pointer;font-family:inherit;-webkit-appearance:none;appearance:none;
  display:flex;align-items:center;gap:4px;
  padding:9px 15px;border-radius:999px;
  font-size:12.4px;font-weight:700;letter-spacing:.08em;color:#4A080C;
  background:linear-gradient(135deg,var(--gold-bright),var(--gold) 62%,#D9A32B);
  box-shadow:0 8px 20px rgba(120,70,0,.42),inset 0 1px 0 rgba(255,255,255,.6);
  transition:transform .18s,opacity .3s,filter .3s;
}
#s12 .vs-go i{font-style:normal;opacity:.72;font-weight:400}
#s12 .vs-go:active{transform:scale(.975)}
#s12 .vs-go.off{
  opacity:.42;filter:saturate(.35);cursor:not-allowed;box-shadow:none;
  background:linear-gradient(135deg,rgba(255,214,107,.6),rgba(217,163,43,.6));
}

#s12 .vs-list{
  display:none;align-items:center;gap:10px;margin-top:8px;
  padding:9px 10px 9px 12px;border-radius:14px;
  border:1px solid rgba(79,216,188,.34);
  background:linear-gradient(150deg,rgba(10,52,44,.78),rgba(5,26,22,.86));
  box-shadow:inset 0 1px 0 rgba(180,255,238,.1);
}
#s12 .vs-list.show{display:flex;animation:vsIn .5s cubic-bezier(.2,.8,.25,1) both}
@keyframes vsIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
#s12 .vs-tick{
  flex:none;width:24px;height:24px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:800;color:#04231B;
  background:linear-gradient(140deg,#A6F0DC,var(--jade,#4FD8BC));
  box-shadow:0 0 12px rgba(79,216,188,.45);
}
#s12 .vs-list-l{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
#s12 .vs-list-l b{
  font-family:var(--serif);font-size:13.4px;letter-spacing:.06em;color:#CFF7EB;
  font-variant-numeric:tabular-nums;
}
#s12 .vs-list-l span{font-size:9.2px;line-height:1.35;color:rgba(200,240,232,.66)}
#s12 .vs-again{
  flex:none;border:1px solid rgba(255,232,206,.34);background:rgba(255,232,206,.08);
  color:rgba(255,242,226,.9);font-family:inherit;font-size:10.6px;letter-spacing:.06em;
  padding:7px 11px;border-radius:999px;cursor:pointer;
  -webkit-appearance:none;appearance:none;transition:background .2s;
}
#s12 .vs-again:active{background:rgba(255,232,206,.2)}

/* ── 预约入口 ── */
#s12 .vs-book{
  display:flex;align-items:center;justify-content:center;gap:5px;
  margin-top:8px;padding:9px 12px;border-radius:12px;
  border:1px dashed rgba(255,214,107,.5);
  background:linear-gradient(150deg,rgba(255,214,120,.10),rgba(255,214,120,.03));
  font-family:var(--serif);font-size:12.2px;letter-spacing:.08em;
  color:var(--gold-bright);text-decoration:none;
  transition:background .25s,border-color .25s;
}
#s12 .vs-book i{font-style:normal;opacity:.72;font-weight:400}
#s12 .vs-book:active{background:rgba(255,214,120,.2);border-color:rgba(255,214,107,.8)}

#s12>.src{
  margin-top:7px;padding-top:6px;border-top:1px dashed rgba(255,206,150,.18);
  font-size:9.2px;line-height:1.5;color:rgba(255,238,216,.6);
}
#s12 .s-foot{padding-top:9px;font-size:11.4px}
