@charset "UTF-8";
/* ============================================================
   景点列表页 / scenic-spots.index + scenic-spots._results —— 本页独有样式
   （页头 / 搜索 / 主 Tab / sticky 筛选条 / 结果计数 / 分页 / 底部 CTA / 知名分类 Tab）
   ⚠️ 卡片与网格结构样式只有一份：resources/views/partials/_lx_card.blade.php
      + public/css/lx-card.css（六个位置共用；本文件不再定义任何 .lx-card/.lx-media/.lx-grid 规则）
   复用 layouts/app.blade.php 的 token；过渡 <=150ms；不产生横向滚动条。
   ============================================================ */
/* 真正 sticky 的是 .navbar-discover（position:sticky; top:0），实测/按布局源码算：
   品牌 padding 12+12 + 图标 38px + border-bottom 1px ≈ 63px（.top-accent 3px 不 sticky）。
   这里取 62px 贴住导航、避免 1px 缝；全站只此一处变量，改高度只改这个数。
   布局里的 top:92px / scroll-margin-top:96px 是给右侧竖导航 .group-nav 的，本页不用。
   锚点 scroll-margin-top 与脚本滚动偏移统一为 70。 */
:root { --nav-h: 62px; }

.lx-wrap { padding-top: 20px; padding-bottom: 8px; }

/* ===== 页头：左对齐大标题 + 一句话导语 + 搜索 / 视图切换 ===== */
.lx-hero.hero-compact { padding: 40px 0 26px; }
.lx-hero-grid {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 20px 32px; flex-wrap: wrap;
}
.lx-hero-copy { flex: 1 1 420px; min-width: 0; }
.lx-hero.hero-compact h1 {
  font-size: 2.4rem; font-weight: 700; line-height: 1.12; letter-spacing: -.02em;
}
.lx-hero.hero-compact p {
  max-width: 680px; margin: 10px 0 0;
  font-size: .95rem; line-height: 1.8; color: var(--text-2);
}
.lx-hero-side {
  flex: 0 1 400px; min-width: 0;
  display: flex; flex-direction: column; align-items: flex-end; gap: 10px;
}

/* 站内搜索（GET /search?q=，参数沿用全站搜索） */
.lx-search {
  position: relative; display: flex; align-items: center; gap: 8px;
  width: 100%; max-width: 400px;
  background: #fff; border: 1.5px solid var(--border);
  border-radius: var(--radius-pill); padding: 5px 5px 5px 16px;
  box-shadow: var(--shadow-sm);
  transition: border-color .15s, box-shadow .15s;
}
.lx-search:focus-within {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 4px rgba(19, 200, 146, .16);
}
.lx-search-ico { flex: 0 0 auto; color: var(--text-4); font-size: .86rem; }
.lx-search input.lx-search-input {
  flex: 1 1 auto; min-width: 0; border: none; outline: none; background: transparent;
  font-family: var(--font-body); font-size: .88rem; color: var(--text); padding: 8px 0;
}
.lx-search input.lx-search-input::placeholder { color: var(--text-4); }
.lx-search-btn {
  flex: 0 0 auto; border: none; cursor: pointer;
  background: var(--primary); color: #fff;
  font-family: var(--font-head); font-size: .8rem; font-weight: 600;
  border-radius: var(--radius-pill); padding: 8px 18px;
  box-shadow: 0 4px 12px rgba(19, 200, 146, .24);
  transition: background .15s;
}
.lx-search-btn:hover { background: var(--primary-600); }

/* ===== 主 Tab（钩子类名沿用：.spot-main-tabs/.spot-main-tab/.spot-panel） ===== */
.spot-main-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.spot-main-tab {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 15px; border: 1px solid var(--border); border-radius: var(--radius-pill);
  background: #fff; color: var(--text-2);
  font-family: var(--font-head); font-size: .78rem; font-weight: 600;
  cursor: pointer; box-shadow: var(--shadow-sm);
  transition: border-color .15s, color .15s, background .15s, box-shadow .15s;
}
.spot-main-tab:hover { border-color: var(--primary-200); color: var(--primary-600); }
.spot-main-tab i { color: var(--primary-600); }
.spot-main-tab.active { background: var(--text); border-color: var(--text); color: #fff; }
.spot-main-tab.active i { color: #fff; }

/* ===== sticky 筛选条（两列网格：组名同一条竖线，控件区同一条起点） ===== */
.lx-jump {
  position: sticky; top: var(--nav-h, 62px); z-index: 20;
  scroll-margin-top: 70px;
  background: rgba(255, 255, 255, .96);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border: 1px solid var(--border); border-radius: var(--radius-sm);
  padding: 10px 12px; margin-bottom: 16px;
  box-shadow: var(--shadow-sm);
}
.lx-filter { display: block; }
/* 组名列 56px + 控件列 1fr；所有组名共用第一列 → 天然同一条竖线 */
.lx-filter-grid {
  display: grid;
  grid-template-columns: var(--lx-flabel, 56px) 1fr;
  row-gap: 10px; column-gap: 10px;
  align-items: center;
}
.lx-flabel {
  display: inline-flex; align-items: center; gap: 3px;
  min-width: 0; overflow: hidden;
  font-family: var(--font-body); font-size: .7rem; font-weight: 700;
  line-height: 1.15; color: var(--text-4); white-space: normal;
}
.lx-flabel i { flex: 0 0 auto; font-size: .62rem; color: var(--primary-600); }
.lx-fcell { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; min-width: 0; }
.lx-pills { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; min-width: 0; }

/* 最后一行：更多筛选（左）+ 重置（最右）。放在 .lx-filter-grid 之外，
   所以不受网格列宽约束、天然独占整行（与文件末尾人工块的 grid-column 规则互不干扰）。 */
.lx-fend {
  display: flex; align-items: center; justify-content: space-between;
  gap: 8px; flex-wrap: wrap; margin-top: 10px;
}
.lx-fend-right { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }

/* 胶囊：未选 = 白底细边；选中 = 深色实心；统一 34px 高 / .78rem / 8px 间距 */
.lx-pill {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  box-sizing: border-box; height: 34px; padding: 0 12px;
  background: #fff; border: 1px solid var(--border); border-radius: var(--radius-pill);
  font-family: var(--font-body); font-size: .78rem; font-weight: 600; color: var(--text-2);
  line-height: 1; white-space: nowrap; cursor: pointer;
  transition: border-color .15s, color .15s, background .15s, box-shadow .15s;
}
.lx-pill:hover { border-color: var(--primary-200); color: var(--text); box-shadow: var(--shadow-sm); }
/* 数量徽章（只在类型 / 等级上出现） */
.lx-pill b {
  font-family: var(--font-head); font-size: .68rem; font-weight: 700; line-height: 1.5;
  color: var(--primary-600); background: var(--primary-50);
  border-radius: var(--radius-pill); padding: 1px 7px;
}
.lx-pill.is-on, .lx-pill.active-quick {
  background: var(--text); border-color: var(--text); color: #fff;
  box-shadow: 0 6px 16px rgba(15, 62, 74, .22);
}
.lx-pill.is-on:hover, .lx-pill.active-quick:hover { color: #fff; border-color: var(--text); }
.lx-pill.is-on b, .lx-pill.active-quick b { color: #fff; background: rgba(255, 255, 255, .24); }
/* 用户要求「所有胶囊同高 34px」：本选择器（含 id）优先于文件末尾人工块里的 .lx-pill{height:32px!important} */
#lxFilterBar .lx-pill,
form#spotFilterForm .lx-pill { height: 34px !important; }

/* 下拉：与胶囊同一视觉语言（同高 34px、同圆角、同字号） */
.lx-select {
  box-sizing: border-box; height: 34px; max-width: 100%; cursor: pointer; outline: none;
  background: #fff; color: var(--text-2); border: 1px solid var(--border);
  border-radius: var(--radius-pill); padding: 0 10px;
  font-family: var(--font-body); font-size: .78rem; font-weight: 600;
  transition: border-color .15s, box-shadow .15s;
}
.lx-select:focus { border-color: var(--primary-500); box-shadow: 0 0 0 4px rgba(19, 200, 146, .16); }
.lx-select-province { max-width: 168px; }

/* 「更多筛选 ▾」：默认收起，展开后是一排干净的 select */
.lx-more { position: relative; }
.lx-more-sum { list-style: none; }
.lx-more-sum::-webkit-details-marker { display: none; }
.lx-more-sum i { font-size: .66rem; transition: transform .15s ease; }
.lx-more[open] .lx-more-sum {
  background: var(--text); border-color: var(--text); color: #fff;
  box-shadow: 0 6px 16px rgba(15, 62, 74, .22);
}
.lx-more[open] .lx-more-sum:hover { color: #fff; border-color: var(--text); }
.lx-more[open] .lx-more-sum i { transform: rotate(180deg); }
.lx-more-body {
  position: absolute; left: 0; top: calc(100% + 8px); z-index: 30;
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  padding: 10px; background: #fff; border: 1px solid var(--border);
  border-radius: 14px; box-shadow: var(--shadow-md);
}

/* 分类 / 等级下拉留在 DOM 里负责参数序列化与重置（视觉由胶囊承担） */
.lx-sr-only {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0;
}

/* ===== 结果区 ===== */
.lx-results { padding-top: 4px; scroll-margin-top: 70px; }
.lx-reshead {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; flex-wrap: wrap; margin-bottom: 14px;
}
.lx-count { font-size: .78rem; color: var(--text-3); }
.lx-count b { font-family: var(--font-head); font-size: 1.02rem; font-weight: 700; color: var(--text); margin-right: 3px; }
.lx-hint { display: inline-flex; align-items: center; gap: 6px; font-size: .7rem; color: var(--text-4); }
.lx-hint i { color: var(--primary-600); }

/* ===== 分页（沿用 $spots->links() 的 .pagination 结构，只调外观） ===== */
.lx-results .pagination { gap: 6px; margin-bottom: 0; flex-wrap: wrap; justify-content: center; }
.lx-results .pagination .page-link {
  border: 1px solid var(--border); border-radius: var(--radius-pill);
  color: var(--text-2); font-size: .78rem; font-weight: 600; padding: 6px 13px;
  background: #fff; box-shadow: var(--shadow-sm);
  transition: border-color .15s, color .15s, background .15s;
}
.lx-results .pagination .page-link:hover {
  border-color: var(--primary-200); color: var(--primary-600); background: #fff;
}
.lx-results .pagination .active .page-link {
  background: var(--text); border-color: var(--text); color: #fff;
}
.lx-results .pagination .disabled .page-link {
  color: var(--text-4); background: var(--bg); box-shadow: none;
}

/* ===== 底部 CTA 横幅：把看中的景点排成每天 ===== */
.lx-cta {
  display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
  margin: 30px 0 8px; padding: 20px 22px;
  background: linear-gradient(135deg, #eef9fb, #e5f8f3);
  border: 1px solid var(--border); border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
}
.lx-cta-ico {
  flex: 0 0 auto; width: 52px; height: 52px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 1.15rem; color: #fff;
  background: linear-gradient(135deg, #2ad6a3, #0aa87a);
  box-shadow: 0 8px 20px rgba(19, 200, 146, .28);
}
.lx-cta-copy { flex: 1 1 320px; min-width: 0; }
.lx-cta-copy b {
  display: block; font-family: var(--font-head);
  font-size: 1.08rem; font-weight: 600; color: var(--text);
}
.lx-cta-copy span { display: block; margin-top: 3px; font-size: .82rem; line-height: 1.7; color: var(--text-3); }
.lx-cta-btn {
  flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px;
  background: var(--primary); color: #fff; border-radius: var(--radius-pill);
  padding: 11px 22px; font-family: var(--font-head); font-size: .86rem; font-weight: 600;
  box-shadow: 0 6px 18px rgba(19, 200, 146, .28);
  transition: background .15s, transform .15s, box-shadow .15s;
}
.lx-cta-btn:hover {
  background: var(--primary-600); color: #fff;
  transform: translateY(-1px); box-shadow: 0 10px 24px rgba(19, 200, 146, .34);
}

/* ===== 知名分类 Tab（钩子类名沿用：.theme-grid/.theme-card/#themeResults） ===== */
.theme-grid { display: flex; flex-wrap: wrap; gap: 7px; }
.theme-card {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 12px; border: 1px solid var(--border); border-radius: var(--radius-pill);
  background: #fff; cursor: pointer; box-shadow: var(--shadow-sm);
  transition: border-color .15s, background .15s, box-shadow .15s, transform .15s;
}
.theme-card:hover { border-color: var(--primary-200); transform: translateY(-1px); }
.theme-card .tc-ico { font-size: .72rem; color: var(--primary-600); }
.theme-card .tc-name { font-size: .75rem; font-weight: 600; color: var(--text); }
.theme-card .tc-count {
  font-size: .65rem; font-weight: 700; color: var(--primary-600);
  background: var(--primary-50); border-radius: var(--radius-pill); padding: 0 7px;
}
.theme-card.active {
  background: var(--text); border-color: var(--text);
  box-shadow: 0 6px 16px rgba(15, 62, 74, .22);
}
.theme-card.active .tc-name, .theme-card.active .tc-ico, .theme-card.active .tc-count { color: #fff; }
.theme-card.active .tc-count { background: rgba(255, 255, 255, .24); }
.theme-intro {
  margin-top: 12px; padding: 10px 14px; line-height: 1.8;
  background: var(--primary-50); border: 1px solid var(--primary-100);
  border-radius: var(--radius-sm); font-size: .8rem; color: var(--text-2);
}
.theme-intro i { color: var(--primary-600); margin-right: 4px; }
.theme-map-wrap { margin-top: 14px; }
.theme-map-legend {
  margin-top: 8px; font-size: .7rem; color: var(--text-3);
  display: flex; gap: 10px; align-items: center; flex-wrap: wrap;
}
.lx-theme-results { padding-top: 14px; }

/* ===== 响应式微调（不产生横向滚动条） ===== */
@media (max-width: 991px) {
  .lx-hero.hero-compact { padding: 32px 0 22px; }
  .lx-hero.hero-compact h1 { font-size: 2rem; }
}
@media (max-width: 767px) {
  /* 手机端不做 sticky：控件换行后高度会占掉大半屏，滚动浏览反而更差 */
  .lx-jump { position: static; padding: 9px 10px; }
  /* 组名仍固定一列（48px，同一条竖线），控件区改为横向滚动 */
  .lx-filter-grid { grid-template-columns: 48px 1fr; column-gap: 8px; row-gap: 9px; }
  .lx-flabel { font-size: .66rem; }
  .lx-pill { height: 34px; padding: 0 10px; font-size: .76rem; }
  .lx-select { height: 34px; font-size: .76rem; }
  .lx-select-province { max-width: 150px; }
  .lx-fcell { flex-wrap: nowrap; min-width: 0; overflow: hidden; }
  .lx-pills-scroll { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; }
  .lx-pills-scroll::-webkit-scrollbar { display: none; height: 0; }
  .lx-more-body { max-width: calc(100vw - 32px); }
  .lx-hero-grid { gap: 14px; }
  .lx-hero-copy { flex: 1 1 100%; }
  .lx-hero.hero-compact h1 { font-size: 1.72rem; }
  .lx-hero-side { flex: 1 1 100%; align-items: stretch; }
  .lx-search { max-width: none; }
  .lx-cta { padding: 16px 16px; gap: 14px; }
  .lx-cta-ico { width: 44px; height: 44px; font-size: 1rem; }
  .lx-cta-btn { flex: 1 1 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  .lx-pill, .lx-select, .spot-main-tab, .theme-card, .lx-search-btn, .lx-cta-btn { transition: none; }
}

/* 筛选条对齐（2026-09-25 人工）：组名一列、控件一列，全部左对齐同一条竖线 */
.lx-filter-grid{display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;
  column-gap:10px!important;row-gap:8px!important;align-items:center!important}
.lx-flabel{grid-column:1!important;justify-self:start!important;text-align:left!important;width:auto!important;min-width:0!important;
  font-size:.72rem!important;line-height:1.4!important;white-space:nowrap!important;color:var(--text-3,#5b6b70)!important;margin:0!important}
.lx-flabel i{font-size:.66rem!important;margin-right:2px!important}
.lx-fcell{grid-column:2!important;width:100%!important;min-width:0!important;display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.lx-pills{gap:6px!important;flex-wrap:wrap!important}
.lx-pill{height:32px!important;line-height:30px!important;padding:0 12px!important;font-size:.76rem!important}
@media (max-width:575px){ .lx-filter-grid{grid-template-columns:48px minmax(0,1fr)!important} .lx-fcell{flex-wrap:nowrap!important;overflow-x:auto!important} }
/* 一行两个筛选项（4 列网格：组名|控件|组名|控件） */
.lx-filter-grid{grid-template-columns:56px minmax(0,1fr) 56px minmax(0,1fr)!important;column-gap:10px!important;row-gap:8px!important}
@media (max-width:991px){ .lx-filter-grid{grid-template-columns:56px minmax(0,1fr)!important} }
@media (max-width:575px){ .lx-filter-grid{grid-template-columns:44px minmax(0,1fr)!important} }
/* 强制一行两个筛选项（高优先级，压过任何 .lx-filter .lx-filter-grid 之类规则） */
form#spotFilterForm .lx-filter-grid,
.lx-filter .lx-filter-grid,
#lxFilterBar .lx-filter-grid{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr) 56px minmax(0,1fr)!important;
  column-gap:12px!important;row-gap:8px!important;align-items:start!important}
form#spotFilterForm .lx-filter-grid>.lx-flabel,
.lx-filter .lx-filter-grid>.lx-flabel{grid-column:auto!important;justify-self:start!important;align-self:center!important}
form#spotFilterForm .lx-filter-grid>.lx-fcell,
.lx-filter .lx-filter-grid>.lx-fcell{grid-column:auto!important;width:100%!important;min-width:0!important}
@media (max-width:991px){
  form#spotFilterForm .lx-filter-grid,.lx-filter .lx-filter-grid,#lxFilterBar .lx-filter-grid{grid-template-columns:52px minmax(0,1fr)!important}}
/* 中和「整行占满」的规则：任何直接子元素都不许 grid-column:1/-1 */
form#spotFilterForm .lx-filter-grid>*,
#lxFilterBar .lx-filter-grid>*,
.lx-filter .lx-filter-grid>*{grid-column:auto!important}
form#spotFilterForm .lx-filter-grid>.lx-fcell{width:100%!important;min-width:0!important}
/* ===== 筛选条 pill 规格对齐用户要求：.78rem / 间距 8px（最高优先级，压过人工块） ===== */
#lxFilterBar .lx-pill, form#spotFilterForm .lx-pill, .lx-filter .lx-pill, .lx-fend .lx-pill { font-size: .78rem !important; }
#lxFilterBar .lx-pills, form#spotFilterForm .lx-pills, .lx-fcell .lx-pills { gap: 8px !important; }
.lx-filter-grid { row-gap: 10px !important; column-gap: 10px !important; }

/* ============================================================
   筛选条 pill 规格收口（本文件最后一条，最高优先级）
   用户要求：所有 pill 同高 34px、同圆角、字号 .78rem、间距 8px。
   与人工块的 `.lx-pill{height:32px!important;font-size:.76rem!important}`、
   `.lx-pills{gap:6px!important}` 冲突：那几条特异性只有 (0,1,0)；
   下面这批是 (0,1,1,0) / (0,1,1,1) 且带 !important、位置在文件最后 → 实际生效的是这里。
   ============================================================ */
#lxFilterBar .lx-pill,
#lxFilterBar .lx-fend .lx-pill,
form#spotFilterForm .lx-pill,
form#spotFilterForm .lx-fend .lx-pill { height: 34px !important; font-size: .78rem !important; }
#lxFilterBar .lx-pills,
#lxFilterBar .lx-fcell .lx-pills,
form#spotFilterForm .lx-pills,
form#spotFilterForm .lx-fcell .lx-pills { gap: 8px !important; }

/* 等级筛选只保留 全部 / 5A / 4A（用户要求）——其余按钮隐藏，功能与参数不变 */
.lx-pill[data-level="3A"],.lx-pill[data-level="2A"],.lx-pill[data-level="1A"]{display:none!important}
/* 重置按钮靠右（右手操作习惯） */
.lx-fend{justify-content:flex-end!important}
.lx-fend-right{display:flex!important;justify-content:flex-end!important;margin-left:auto!important}

/* 顶部「热门景区」模块（3 张大卡）与速览条之间的间距（网格样式在 lx-card.css） */
.lx-hot-sec { margin-top: 22px; }


/* ============================================================
   筛选面板移到右侧（用户要求：和 /cities 的省份面板一样放右手边）
   窄栏内筛选组改为「组名在上、控件在下」纵向堆叠；窄屏回到结果上方。
   ============================================================ */
/* 注意：本页旧的筛选条规则大量使用 #lxFilterBar / form#spotFilterForm 的 ID 特异性，
   所以这里必须同样带 ID 前缀 + !important 且放在文件最后，才能真正生效。 */
.sp-filter-cols #lxFilterBar { position: sticky; top: 78px; }
.sp-filter-cols #lxFilterBar .lx-filter-grid {
  display: block !important; grid-template-columns: none !important;
  column-gap: 0 !important; row-gap: 0 !important;
}
.sp-filter-cols #lxFilterBar .lx-filter-grid > .lx-flabel {
  display: block !important; grid-column: auto !important; justify-self: auto !important;
  align-self: auto !important; margin: 14px 0 7px !important;
}
.sp-filter-cols #lxFilterBar .lx-filter-grid > .lx-flabel:first-child { margin-top: 0 !important; }
.sp-filter-cols #lxFilterBar .lx-filter-grid > .lx-fcell {
  display: flex !important; grid-column: auto !important; width: 100% !important;
  flex-wrap: wrap !important; overflow: visible !important; gap: 7px !important;
}
.sp-filter-cols #lxFilterBar .lx-fend { justify-content: flex-start !important; margin-top: 14px !important; }
.sp-filter-cols #lxFilterBar .lx-fend-right { margin-left: 0 !important; justify-content: flex-start !important; }
@media (max-width: 1199px) {
  .sp-filter-cols #lxFilterBar { position: static; top: auto; }
}
/* 知名分类 Tab：分类标签面板与筛选面板同样放右侧（同一套 sticky 行为） */
.sp-filter-cols #themeSide { position: sticky; top: 78px; margin-bottom: 0; }
.sp-side-box-t {
  display: flex; align-items: center; gap: 6px;
  font-size: .78rem; font-weight: 700; color: var(--text-2); margin: 0 0 10px;
}
.sp-side-box-t i { color: var(--primary-600, #0a8a63); }
.sp-side-box-t span {
  margin-left: auto; font-size: .7rem; font-weight: 600; color: var(--text-3);
  background: var(--ice, #eef7f9); border-radius: 999px; padding: 1px 8px;
}
@media (max-width: 1199px) {
  .sp-filter-cols #themeSide { position: static; top: auto; }
}
/* Tab 入口（筛选 / 知名分类）在右栏顶部：整个右栏 = Tab 切换 + 当前 Tab 的控件，一起 sticky */
.sp-filter-cols .sp-side { position: sticky; top: 78px; }
.sp-filter-cols #spSide .lx-jump { position: static; top: auto; margin-bottom: 0; }
.sp-side .spot-main-tabs { margin-bottom: 10px; }
.sp-side .spot-main-tab { flex: 1 1 0; justify-content: center; }
/* 常驻提示（#themeIntro）：切换 Tab 不出现/消失，页面高度稳定 */
#tab-known .theme-intro { display: none; }   /* 旧的 Tab2 内提示（若残留）不再显示 */
.col-xl-9 > .theme-intro { margin: 0 0 14px; }
@media (max-width: 1199px) {
  .sp-filter-cols .sp-side { position: static; top: auto; }
}