
/* 命名空间内 box-sizing 兜底：复制到任何网页都不依赖宿主 reset */
#nwow-swap-station-map,
#nwow-swap-station-map *,
#nwow-swap-station-map *::before,
#nwow-swap-station-map *::after { box-sizing: border-box; }

#nwow-swap-station-map {
  --nwow-bg:#F4F4F5; --nwow-card:#E9E9EA; --nwow-fg:#141414; --nwow-muted:#6B6B72;
  --nwow-divider:#DDDDDF; --nwow-red:#E60012; --nwow-red-hover:#C4000F;
  --nwow-green:#22A44A; --nwow-white:#FFFFFF;
  --nwow-shadow:0 2px 12px rgba(0,0,0,.07);
  --nwow-shadow-md:0 4px 24px rgba(0,0,0,.10);
  --nwow-radius-lg:24px; --nwow-radius-md:16px; --nwow-radius-sm:10px;
  background:var(--nwow-bg); color:var(--nwow-fg); width:100%; overflow-x:hidden;
  font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  -webkit-font-smoothing:antialiased;
}
#nwow-swap-station-map .nwow-ssm-inner { max-width:1200px; margin:0 auto; padding:56px 24px 64px; width:100%; min-width:0; }
#nwow-swap-station-map .nwow-ssm-header { text-align:center; margin-bottom:48px; }
#nwow-swap-station-map .nwow-ssm-brand-row {
  display:inline-flex; align-items:center; gap:8px; background:var(--nwow-white);
  border:1.5px solid var(--nwow-divider); border-radius:100px; padding:6px 16px 6px 10px;
  margin-bottom:20px; box-shadow:var(--nwow-shadow); max-width:100%;
}
#nwow-swap-station-map .nwow-ssm-brand-icon { display:flex; align-items:center; color:var(--nwow-red); flex-shrink:0; }
#nwow-swap-station-map .nwow-ssm-brand-text { font-size:13px; font-weight:700; letter-spacing:.08em; color:var(--nwow-red); text-transform:uppercase; }
#nwow-swap-station-map .nwow-ssm-title { font-size:clamp(28px,4vw,44px); font-weight:800; letter-spacing:-.02em; line-height:1.15; margin-bottom:12px; }
#nwow-swap-station-map .nwow-ssm-subtitle { font-size:clamp(15px,1.6vw,19px); color:var(--nwow-muted); line-height:1.5; }

/* 桌面：左列表 / 右地图，两列固定等高 560px */
#nwow-swap-station-map .nwow-ssm-map-section { display:grid; grid-template-columns:340px 1fr; gap:20px; align-items:start; margin-bottom:32px; min-width:0; width:100%; }
#nwow-swap-station-map .nwow-ssm-list-panel {
  background:var(--nwow-white); border-radius:var(--nwow-radius-lg); box-shadow:var(--nwow-shadow-md);
  overflow:hidden; display:flex; flex-direction:column; height:560px; min-width:0;
}
#nwow-swap-station-map .nwow-ssm-list-header {
  padding:18px 20px 14px; border-bottom:1px solid var(--nwow-divider);
  display:flex; align-items:center; justify-content:space-between; flex-shrink:0;
}
#nwow-swap-station-map .nwow-ssm-list-title { font-size:15px; font-weight:700; }
#nwow-swap-station-map .nwow-ssm-list-count { font-size:13px; color:var(--nwow-muted); background:var(--nwow-card); border-radius:100px; padding:2px 10px; font-weight:600; flex-shrink:0; }
#nwow-swap-station-map .nwow-ssm-list-scroll {
  list-style:none; margin:0; overflow-y:auto; flex:1; min-height:0; padding:12px;
  display:flex; flex-direction:column; gap:8px;
}
#nwow-swap-station-map .nwow-ssm-list-scroll::-webkit-scrollbar { width:4px; }
#nwow-swap-station-map .nwow-ssm-list-scroll::-webkit-scrollbar-thumb { background:var(--nwow-divider); border-radius:4px; }

#nwow-swap-station-map .nwow-ssm-card {
  background:var(--nwow-white); border:1.5px solid var(--nwow-divider); border-radius:var(--nwow-radius-md);
  padding:14px 16px; cursor:pointer; width:100%; min-width:0; max-width:100%; text-align:left; font-family:inherit;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
#nwow-swap-station-map .nwow-ssm-card:hover { border-color:var(--nwow-red); box-shadow:0 0 0 3px rgba(230,0,18,.08),var(--nwow-shadow); }
#nwow-swap-station-map .nwow-ssm-card:focus-visible { outline:2px solid var(--nwow-red); outline-offset:2px; }
#nwow-swap-station-map .nwow-ssm-card.nwow-ssm-card--active { border-color:var(--nwow-red); background:#FFF5F5; box-shadow:0 0 0 3px rgba(230,0,18,.10),var(--nwow-shadow); }
#nwow-swap-station-map .nwow-ssm-card-top { display:flex; align-items:flex-start; gap:10px; margin-bottom:8px; min-width:0; }
#nwow-swap-station-map .nwow-ssm-status-dot { width:8px; height:8px; border-radius:50%; background:var(--nwow-green); flex-shrink:0; margin-top:5px; box-shadow:0 0 0 3px rgba(34,164,74,.15); }
#nwow-swap-station-map .nwow-ssm-card-name-wrap { flex:1; min-width:0; }
#nwow-swap-station-map .nwow-ssm-card-name { font-size:15px; font-weight:700; line-height:1.3; margin-bottom:2px; word-break:break-word; overflow-wrap:anywhere; }
#nwow-swap-station-map .nwow-ssm-card-status { font-size:12px; font-weight:600; color:#1a8c3a; }
#nwow-swap-station-map .nwow-ssm-card--active .nwow-ssm-card-status { color:#1a7d38; }
#nwow-swap-station-map .nwow-ssm-card-meta { display:flex; flex-direction:column; gap:5px; margin-bottom:12px; }
#nwow-swap-station-map .nwow-ssm-card-meta-row { display:flex; align-items:flex-start; gap:6px; font-size:13px; color:var(--nwow-muted); line-height:1.4; min-width:0; overflow-wrap:anywhere; word-break:break-word; }
#nwow-swap-station-map .nwow-ssm-card-meta-icon { flex-shrink:0; margin-top:1px; color:var(--nwow-muted); }
#nwow-swap-station-map .nwow-ssm-card-actions { display:flex; gap:8px; flex-wrap:wrap; min-width:0; }
#nwow-swap-station-map .nwow-ssm-btn-directions {
  display:inline-flex; align-items:center; gap:5px; background:var(--nwow-red); color:#fff; border:none;
  border-radius:var(--nwow-radius-sm); padding:7px 14px; font-size:13px; font-weight:600; font-family:inherit;
  cursor:pointer; text-decoration:none; line-height:1; white-space:nowrap; transition:background .15s ease,transform .1s ease;
}
#nwow-swap-station-map .nwow-ssm-btn-directions:hover { background:var(--nwow-red-hover); transform:translateY(-1px); }
#nwow-swap-station-map .nwow-ssm-btn-directions:focus-visible { outline:2px solid var(--nwow-red); outline-offset:2px; }
#nwow-swap-station-map .nwow-ssm-btn-view {
  display:inline-flex; align-items:center; gap:5px; background:transparent; color:var(--nwow-red);
  border:1.5px solid var(--nwow-red); border-radius:var(--nwow-radius-sm); padding:6px 12px; font-size:13px;
  font-weight:600; font-family:inherit; cursor:pointer; text-decoration:none; line-height:1; white-space:nowrap;
  transition:background .15s ease,color .15s ease;
}
#nwow-swap-station-map .nwow-ssm-btn-view:hover { background:var(--nwow-red); color:#fff; }
#nwow-swap-station-map .nwow-ssm-btn-view:focus-visible { outline:2px solid var(--nwow-red); outline-offset:2px; }

#nwow-swap-station-map .nwow-ssm-map-container {
  background:var(--nwow-card); border-radius:var(--nwow-radius-lg);
  box-shadow:inset 0 2px 8px rgba(0,0,0,.06),var(--nwow-shadow-md);
  overflow:hidden; height:560px; position:relative; min-width:0; width:100%;
}
#nwow-swap-station-map .nwow-ssm-map-iframe { position:absolute; inset:0; width:100%; height:100%; border:none; display:block; max-width:100%; }
#nwow-swap-station-map .nwow-ssm-map-loading {
  position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:12px; background:var(--nwow-card); border-radius:var(--nwow-radius-lg); pointer-events:none;
  opacity:1; transition:opacity .3s ease; z-index:2;
}
#nwow-swap-station-map .nwow-ssm-map-loading--hidden { opacity:0; pointer-events:none; }
#nwow-swap-station-map .nwow-ssm-map-loading-spinner { width:36px; height:36px; border:3px solid var(--nwow-divider); border-top-color:var(--nwow-red); border-radius:50%; animation:nwow-spin .8s linear infinite; }
@keyframes nwow-spin { to { transform:rotate(360deg); } }
#nwow-swap-station-map .nwow-ssm-map-loading-text { font-size:14px; color:var(--nwow-muted); }
#nwow-swap-station-map .nwow-ssm-map-fallback {
  position:absolute; inset:0; display:none; flex-direction:column; align-items:center; justify-content:center;
  gap:16px; background:var(--nwow-card); border-radius:var(--nwow-radius-lg); padding:24px; text-align:center; z-index:3;
}
#nwow-swap-station-map .nwow-ssm-map-fallback--show { display:flex; }
#nwow-swap-station-map .nwow-ssm-map-fallback-text { font-size:14px; color:var(--nwow-muted); line-height:1.5; }
#nwow-swap-station-map .nwow-ssm-btn-fallback-open {
  display:inline-flex; align-items:center; gap:6px; background:var(--nwow-red); color:#fff; border:none;
  border-radius:var(--nwow-radius-sm); padding:10px 20px; font-size:14px; font-weight:600; font-family:inherit;
  cursor:pointer; text-decoration:none;
}
#nwow-swap-station-map .nwow-ssm-btn-fallback-open:hover { background:var(--nwow-red-hover); }

#nwow-swap-station-map .nwow-ssm-view-all-wrap { text-align:center; margin-bottom:48px; }
#nwow-swap-station-map .nwow-ssm-btn-view-all {
  display:inline-flex; align-items:center; gap:8px; background:var(--nwow-fg); color:#fff; border:none;
  border-radius:100px; padding:13px 28px; font-size:15px; font-weight:600; font-family:inherit; cursor:pointer;
  text-decoration:none; box-shadow:var(--nwow-shadow-md); max-width:100%; transition:background .15s ease,transform .12s ease;
}
#nwow-swap-station-map .nwow-ssm-btn-view-all:hover { background:#2a2a2a; transform:translateY(-2px); }
#nwow-swap-station-map .nwow-ssm-btn-view-all:focus-visible { outline:2px solid var(--nwow-red); outline-offset:3px; }

/* 单张横幅门店图 */
#nwow-swap-station-map .nwow-ssm-photos-section { margin-top:8px; }
#nwow-swap-station-map .nwow-ssm-photos-card { background:var(--nwow-card); border-radius:var(--nwow-radius-lg); padding:20px; box-shadow:var(--nwow-shadow-md); min-width:0; }
#nwow-swap-station-map .nwow-ssm-photo-banner { width:100%; height:auto; aspect-ratio:2016/864; object-fit:cover; display:block; border-radius:var(--nwow-radius-md); max-width:100%; }

/* 移动端：单列，地图在上 */
@media (max-width:768px) {
  #nwow-swap-station-map .nwow-ssm-inner { padding:36px 16px 48px; }
  #nwow-swap-station-map .nwow-ssm-header { margin-bottom:32px; }
  #nwow-swap-station-map .nwow-ssm-map-section { grid-template-columns:1fr; align-items:start; }
  #nwow-swap-station-map .nwow-ssm-map-container { height:380px; min-height:380px; order:-1; width:100%; }
  #nwow-swap-station-map .nwow-ssm-list-panel { order:1; height:auto; }
  #nwow-swap-station-map .nwow-ssm-list-scroll { flex:none; max-height:360px; overflow-y:auto; }
  #nwow-swap-station-map .nwow-ssm-view-all-wrap { margin-bottom:32px; }
  #nwow-swap-station-map .nwow-ssm-card { padding:12px 14px; }
}
@media (max-width:480px) {
  #nwow-swap-station-map .nwow-ssm-map-container { height:320px; min-height:320px; }
  #nwow-swap-station-map .nwow-ssm-card-actions { flex-direction:column; }
  #nwow-swap-station-map .nwow-ssm-btn-directions,
  #nwow-swap-station-map .nwow-ssm-btn-view { justify-content:center; width:100%; white-space:normal; }
  #nwow-swap-station-map .nwow-ssm-inner { padding:28px 12px 40px; }
}
@media (prefers-reduced-motion:reduce) {
  #nwow-swap-station-map .nwow-ssm-map-loading-spinner { animation:none; }
  #nwow-swap-station-map .nwow-ssm-card,
  #nwow-swap-station-map .nwow-ssm-btn-directions,
  #nwow-swap-station-map .nwow-ssm-btn-view,
  #nwow-swap-station-map .nwow-ssm-btn-view-all { transition:none; }
}
