/* 物理机价格列表 /bgp.html：沿用 product.css 的 xy-cloud-hero / xy-cloud-cta，只补列表页自有部分。 */
.xy-bgp-page {
  --bgp-blue: #0b6cff;
  --bgp-ink: #0f172a;
  --bgp-text: #475569;
  --bgp-line: #e3eaf5;
  --bgp-soft: #f3f6fb;
  --bgp-header: 64px;
}

.xy-bgp-hero {
  min-height: 420px;
}

.xy-bgp-hero .xy-cloud-hero-copy p {
  max-width: 560px;
}

/* 吸顶锚点栏 */
.xy-bgp-anchor {
  position: sticky;
  top: var(--bgp-header);
  z-index: 20;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--bgp-line);
  backdrop-filter: blur(8px);
}

.xy-bgp-anchor .container {
  display: flex;
  gap: 36px;
  overflow-x: auto;
  scrollbar-width: none;
}

.xy-bgp-anchor .container::-webkit-scrollbar {
  display: none;
}

.xy-bgp-anchor a {
  position: relative;
  flex: none;
  padding: 16px 0;
  color: var(--bgp-text);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.xy-bgp-anchor a:hover,
.xy-bgp-anchor a.is-active {
  color: var(--bgp-blue);
}

.xy-bgp-anchor a.is-active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: var(--bgp-blue);
}

.xy-bgp-plans,
.xy-bgp-advantages,
.xy-bgp-faq {
  padding: 64px 0;
  scroll-margin-top: calc(var(--bgp-header) + 56px);
}

.xy-bgp-plans,
.xy-bgp-faq {
  background: var(--bgp-soft);
}

.xy-bgp-advantages {
  background: #fff;
}

.xy-bgp-head {
  max-width: 760px;
  margin: 0 0 28px;
}

.xy-bgp-head h2 {
  margin: 0 0 10px;
  color: var(--bgp-ink);
  font-size: 30px;
  font-weight: 900;
  line-height: 1.3;
}

.xy-bgp-head p {
  margin: 0;
  color: var(--bgp-text);
  font-size: 15px;
  line-height: 1.75;
}

/* 一级类别 */
.xy-bgp-cats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.xy-bgp-cats button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 16px 18px;
  color: var(--bgp-ink);
  text-align: left;
  background: #fff;
  border: 1px solid var(--bgp-line);
  border-radius: 10px;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.xy-bgp-cats button b {
  font-size: 17px;
  font-weight: 900;
}

.xy-bgp-cats button span {
  color: var(--bgp-text);
  font-size: 13px;
  line-height: 1.5;
}

.xy-bgp-cats button:hover {
  border-color: #b9cff5;
}

.xy-bgp-cats button.is-active {
  border-color: var(--bgp-blue);
  box-shadow: inset 0 0 0 1px var(--bgp-blue);
}

.xy-bgp-cats button.is-active b {
  color: var(--bgp-blue);
}

.xy-bgp-cats button.is-empty b::after {
  content: " · 暂无";
  color: #94a3b8;
  font-size: 13px;
  font-weight: 600;
}

/* 二级机房 */
.xy-bgp-rooms {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.xy-bgp-rooms:empty {
  display: none;
}

.xy-bgp-rooms button {
  min-height: 36px;
  padding: 0 18px;
  color: var(--bgp-text);
  font-size: 14px;
  font-weight: 700;
  background: #fff;
  border: 1px solid var(--bgp-line);
  border-radius: 18px;
  cursor: pointer;
}

.xy-bgp-rooms button:hover {
  color: var(--bgp-blue);
}

.xy-bgp-rooms button.is-active {
  color: #fff;
  background: var(--bgp-blue);
  border-color: var(--bgp-blue);
}

.xy-bgp-cats button:focus-visible,
.xy-bgp-rooms button:focus-visible,
.xy-bgp-btn:focus-visible,
.xy-bgp-anchor a:focus-visible,
.xy-bgp-faq summary:focus-visible {
  outline: 2px solid var(--bgp-blue);
  outline-offset: 2px;
}

/* 价格表 */
.xy-bgp-board {
  min-height: 200px;
}

.xy-bgp-group + .xy-bgp-group {
  margin-top: 24px;
}

.xy-bgp-group-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 14px;
  margin-bottom: 10px;
}

.xy-bgp-group-head h3 {
  margin: 0;
  color: var(--bgp-ink);
  font-size: 18px;
  font-weight: 900;
}

.xy-bgp-note,
.xy-bgp-muted {
  color: #64748b;
  font-size: 13px;
}

.xy-bgp-table-wrap {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--bgp-line);
  border-radius: 10px;
}

.xy-bgp-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px;
}

.xy-bgp-table th {
  padding: 12px 14px;
  color: #334155;
  font-weight: 800;
  text-align: left;
  background: #f7f9fd;
  border-bottom: 1px solid var(--bgp-line);
}

.xy-bgp-table td {
  padding: 14px;
  color: var(--bgp-ink);
  line-height: 1.5;
  vertical-align: middle;
  border-bottom: 1px solid #eef2f8;
  word-break: break-word;
}

.xy-bgp-table tbody tr:last-child td {
  border-bottom: 0;
}

.xy-bgp-table tbody tr:hover td {
  background: #fafcff;
}

.xy-bgp-table th:nth-child(1) { width: 20%; }
.xy-bgp-table th:nth-child(2) { width: 10%; }
.xy-bgp-table th:nth-child(3) { width: 13%; }
.xy-bgp-table th:nth-child(4) { width: 7%; }
.xy-bgp-table th:nth-child(5) { width: 9%; }
.xy-bgp-table th:nth-child(6) { width: 10%; }
.xy-bgp-table th:nth-child(7) { width: 12%; }
.xy-bgp-table th:nth-child(8) { width: 19%; }

.xy-bgp-table td small {
  display: block;
  color: #64748b;
  font-size: 12px;
}

.xy-bgp-price {
  color: #f05a23;
  font-size: 20px;
  font-weight: 900;
  white-space: nowrap;
}

.xy-bgp-price small {
  display: inline !important;
  margin-left: 2px;
  font-size: 12px;
  font-weight: 600;
}

.xy-bgp-table tr.is-soldout td {
  color: #94a3b8;
}

.xy-bgp-table tr.is-soldout .xy-bgp-price {
  color: #94a3b8;
}

.xy-bgp-ops {
  white-space: nowrap;
}

.xy-bgp-ops .xy-bgp-btn + .xy-bgp-btn {
  margin-left: 8px;
}

.xy-bgp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 800;
  border-radius: 6px;
  text-decoration: none;
  cursor: pointer;
  transition: background .16s ease, color .16s ease;
}

.xy-bgp-btn.is-solid {
  color: #fff;
  background: var(--bgp-blue);
  border: 1px solid var(--bgp-blue);
}

.xy-bgp-btn.is-solid:hover {
  color: #fff;
  background: #0058d6;
}

.xy-bgp-btn.is-ghost {
  color: var(--bgp-blue);
  background: #fff;
  border: 1px solid #b9cff5;
}

.xy-bgp-btn.is-ghost:hover {
  background: #eef4ff;
}

.xy-bgp-btn.is-disabled {
  color: #94a3b8;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  cursor: not-allowed;
}

/* 加载 / 空 / 失败 */
.xy-bgp-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 220px;
  padding: 32px 20px;
  color: var(--bgp-text);
  text-align: center;
  background: #fff;
  border: 1px dashed #cdd9ec;
  border-radius: 10px;
}

.xy-bgp-state strong {
  color: var(--bgp-ink);
  font-size: 17px;
}

.xy-bgp-state p {
  max-width: 460px;
  margin: 0;
  line-height: 1.7;
}

.xy-bgp-state.is-error strong {
  color: #c2410c;
}

.xy-bgp-state-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 4px;
}

.xy-bgp-spinner {
  width: 26px;
  height: 26px;
  border: 3px solid #dbe6f7;
  border-top-color: var(--bgp-blue);
  border-radius: 50%;
  animation: xy-bgp-spin .8s linear infinite;
}

@keyframes xy-bgp-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .xy-bgp-spinner { animation-duration: 2.4s; }
}

/* 优势 */
.xy-bgp-adv-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.xy-bgp-adv-grid article {
  padding: 24px 22px;
  background: var(--bgp-soft);
  border-radius: 10px;
}

.xy-bgp-adv-grid b {
  color: var(--bgp-blue);
  font-size: 13px;
  font-weight: 900;
}

.xy-bgp-adv-grid h3 {
  margin: 8px 0;
  color: var(--bgp-ink);
  font-size: 18px;
  font-weight: 900;
}

.xy-bgp-adv-grid p {
  margin: 0;
  color: var(--bgp-text);
  font-size: 14px;
  line-height: 1.7;
}

/* FAQ */
.xy-bgp-faq-list {
  max-width: 900px;
}

.xy-bgp-faq details {
  background: #fff;
  border: 1px solid var(--bgp-line);
  border-radius: 10px;
}

.xy-bgp-faq details + details {
  margin-top: 10px;
}

.xy-bgp-faq summary {
  position: relative;
  padding: 18px 52px 18px 22px;
  color: var(--bgp-ink);
  font-size: 16px;
  font-weight: 800;
  list-style: none;
  cursor: pointer;
}

.xy-bgp-faq summary::-webkit-details-marker {
  display: none;
}

.xy-bgp-faq summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 22px;
  color: var(--bgp-blue);
  font-size: 22px;
  font-weight: 500;
  transform: translateY(-50%);
}

.xy-bgp-faq details[open] summary::after {
  content: "−";
}

.xy-bgp-faq details p {
  margin: 0;
  padding: 0 22px 18px;
  color: var(--bgp-text);
  font-size: 14px;
  line-height: 1.8;
}

@media (max-width: 991px) {
  .xy-bgp-cats,
  .xy-bgp-adv-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 移动端：表格改为卡片，每行一个型号 */
@media (max-width: 767px) {
  .xy-bgp-page {
    --bgp-header: 56px;
  }

  .xy-bgp-hero {
    min-height: 0;
  }

  .xy-bgp-hero .xy-bgp-hero-visual {
    display: none;
  }

  .xy-bgp-anchor .container {
    gap: 24px;
  }

  .xy-bgp-anchor a {
    padding: 13px 0;
    font-size: 14px;
  }

  .xy-bgp-plans,
  .xy-bgp-advantages,
  .xy-bgp-faq {
    padding: 40px 0;
  }

  .xy-bgp-head h2 {
    font-size: 24px;
  }

  .xy-bgp-head p {
    font-size: 14px;
  }

  .xy-bgp-cats {
    gap: 8px;
  }

  .xy-bgp-cats button {
    padding: 12px;
  }

  .xy-bgp-cats button b {
    font-size: 15px;
  }

  .xy-bgp-cats button span {
    display: none;
  }

  .xy-bgp-rooms {
    flex-wrap: nowrap;
    margin-right: -15px;
    padding-right: 15px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .xy-bgp-rooms::-webkit-scrollbar {
    display: none;
  }

  .xy-bgp-rooms button {
    flex: none;
  }

  .xy-bgp-table-wrap {
    overflow: visible;
    background: transparent;
    border: 0;
  }

  .xy-bgp-table,
  .xy-bgp-table tbody,
  .xy-bgp-table tr,
  .xy-bgp-table td {
    display: block;
    width: 100%;
  }

  .xy-bgp-table thead {
    display: none;
  }

  .xy-bgp-table tr {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 14px;
    padding: 16px;
    background: #fff;
    border: 1px solid var(--bgp-line);
    border-radius: 10px;
  }

  .xy-bgp-table tr + tr {
    margin-top: 10px;
  }

  .xy-bgp-table tbody tr:hover td {
    background: transparent;
  }

  .xy-bgp-table td {
    padding: 0;
    font-size: 14px;
    border: 0;
  }

  .xy-bgp-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    color: #64748b;
    font-size: 12px;
  }

  .xy-bgp-table td[data-label="CPU"] {
    grid-column: 1 / -1;
    font-weight: 800;
  }

  .xy-bgp-table td.xy-bgp-price-cell {
    grid-column: 1 / -1;
    padding-top: 10px;
    border-top: 1px solid #eef2f8;
  }

  .xy-bgp-table td.xy-bgp-ops {
    display: flex;
    grid-column: 1 / -1;
    gap: 10px;
  }

  .xy-bgp-ops .xy-bgp-btn {
    flex: 1;
    min-height: 40px;
  }

  .xy-bgp-ops .xy-bgp-btn + .xy-bgp-btn {
    margin-left: 0;
  }

  .xy-bgp-adv-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .xy-bgp-faq summary {
    padding: 15px 44px 15px 16px;
    font-size: 15px;
  }

  .xy-bgp-faq details p {
    padding: 0 16px 15px;
  }
}

/* 机房独立页入口：每个机房一个可被收录的页面 */
.xy-bgp-regions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

.xy-bgp-regions a {
  padding: 7px 14px;
  color: #334155;
  font-size: 14px;
  background: #fff;
  border: 1px solid #dbe4f0;
  border-radius: 6px;
  text-decoration: none;
}

.xy-bgp-regions a:hover,
.xy-bgp-regions a.is-active {
  color: #0b5bd3;
  border-color: #0b5bd3;
}

.xy-bgp-regions a.is-active {
  font-weight: 700;
  background: #eef4ff;
}

/* ===== 蓝白风格：首屏用物理机页同款机房背景图，其余白底 + 浅蓝，不加渐变、发光和阴影特效 ===== */
.xy-bgp-page .xy-bgp-hero {
  min-height: 460px;
  background: #eef5ff url("/web/xiaoyue/assets/img/theme-console/hero/v873/background-dedicated.jpg") right center / cover no-repeat;
}
.xy-bgp-page .xy-bgp-hero::before,
.xy-bgp-page .xy-bgp-hero::after { display: none; }
.xy-bgp-page .xy-bgp-hero .container { grid-template-columns: minmax(0, 1fr); grid-template-areas: "copy"; }
.xy-bgp-page .xy-bgp-hero .xy-bgp-hero-visual { display: none; }
.xy-bgp-page .xy-bgp-hero .xy-cloud-hero-copy { max-width: 600px; }
.xy-bgp-page .xy-bgp-hero h1 { font-size: 44px; letter-spacing: 0; }
.xy-bgp-page .xy-bgp-hero .xy-cloud-eyebrow { color: var(--bgp-blue); }

/* 价格区：浅蓝底，白色卡片 */
.xy-bgp-page .xy-bgp-plans { background: #f3f7fd; }

.xy-bgp-page .xy-bgp-cats button.is-active {
  color: #fff;
  background: var(--bgp-blue);
  border-color: var(--bgp-blue);
  box-shadow: none;
}
.xy-bgp-page .xy-bgp-cats button.is-active b { color: #fff; }
.xy-bgp-page .xy-bgp-cats button.is-active span { color: #dbe8ff; }

.xy-bgp-page .xy-bgp-regions a,
.xy-bgp-page .xy-bgp-rooms button {
  color: var(--bgp-text);
  background: #fff;
  border: 1px solid var(--bgp-line);
}
.xy-bgp-page .xy-bgp-regions a:hover,
.xy-bgp-page .xy-bgp-rooms button:hover { color: var(--bgp-blue); border-color: #b9cff5; }
.xy-bgp-page .xy-bgp-regions a.is-active,
.xy-bgp-page .xy-bgp-rooms button.is-active {
  color: var(--bgp-blue);
  font-weight: 800;
  background: #e8f1ff;
  border-color: var(--bgp-blue);
}

.xy-bgp-page .xy-bgp-group-head span { color: #64748b; font-size: 13px; }
.xy-bgp-page .xy-bgp-table th { color: #475569; background: #f5f8fd; }
.xy-bgp-page .xy-bgp-table td:first-child { font-weight: 800; }
.xy-bgp-page .xy-bgp-table tbody tr:hover td { background: #f5f9ff; }
.xy-bgp-page .xy-bgp-price { color: var(--bgp-blue); }

.xy-bgp-page .xy-bgp-adv-grid article b { color: var(--bgp-blue); }

@media (max-width: 767px) {
  .xy-bgp-page .xy-bgp-hero {
    min-height: 0;
    padding: 96px 0 48px;
    background: #eef5ff url("/web/xiaoyue/assets/img/theme-console/hero/v873/background-dedicated.jpg") 78% center / cover no-repeat;
  }
  .xy-bgp-page .xy-bgp-hero .xy-cloud-hero-copy {
    padding: 20px 16px;
    background: rgba(255, 255, 255, .9);
    border-radius: 10px;
  }
  .xy-bgp-page .xy-bgp-hero h1 { font-size: 30px; }
}

/* 修正：hidden 机房栏、首屏描边按钮、首屏简介不截断 */
.xy-bgp-page .xy-bgp-rooms[hidden] { display: none; }
.xy-bgp-page .xy-bgp-hero .xy-cloud-hero-copy p {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
}
.xy-bgp-page .xy-bgp-hero .xy-outline-btn {
  color: var(--bgp-blue) !important;
  background: #fff !important;
  border: 1px solid var(--bgp-blue) !important;
}

/* 细节优化 */
.xy-bgp-page .xy-bgp-price-cell { white-space: nowrap; }
.xy-bgp-page .xy-bgp-price-cell small { display: inline; margin-left: 2px; color: #64748b; font-size: 12px; font-weight: 600; }
.xy-bgp-page .xy-bgp-table th { padding: 11px 14px; font-size: 13px; font-weight: 700; }
.xy-bgp-page .xy-bgp-table td:first-child { font-weight: 700; }
.xy-bgp-page .xy-bgp-table td small { margin-top: 2px; font-weight: 400; }
.xy-bgp-page .xy-bgp-group + .xy-bgp-group { margin-top: 32px; }
.xy-bgp-page .xy-bgp-group-head { margin-bottom: 12px; padding-left: 10px; border-left: 3px solid var(--bgp-blue); }
.xy-bgp-page .xy-bgp-group-head h3 { font-size: 17px; line-height: 1.3; }
.xy-bgp-page .xy-bgp-cats button.is-empty:not(.is-active) b { color: #94a3b8; }
.xy-bgp-page .xy-bgp-cats button.is-empty b::after { content: none; }
.xy-bgp-page .xy-bgp-regions { margin-bottom: 24px; }
.xy-bgp-page .xy-bgp-ops .xy-bgp-btn { min-width: 64px; }
.xy-bgp-page .xy-bgp-head { margin-bottom: 24px; }
.xy-bgp-page .xy-bgp-hero h1 { margin-bottom: 16px; }
.xy-bgp-page .xy-bgp-hero .xy-cloud-hero-copy p { margin-bottom: 28px; line-height: 1.8; }
@media (max-width: 767px) {
  .xy-bgp-page .xy-bgp-group-head { padding-left: 8px; }
  .xy-bgp-page .xy-bgp-price-cell small { display: inline; }
}

/* ===== 对齐官网产品页（dedicated.html / product.css）：居中区块标题、6px 圆角卡片、统一边框与轻阴影 ===== */
.xy-bgp-page {
  --bgp-blue: #005bff;
  --bgp-line: #dbe4f0;
}
.xy-bgp-page .xy-bgp-plans,
.xy-bgp-page .xy-bgp-advantages,
.xy-bgp-page .xy-bgp-faq { padding: 78px 0 88px; }
.xy-bgp-page .xy-bgp-plans,
.xy-bgp-page .xy-bgp-faq { background: #f3f6fb; }
.xy-bgp-page .xy-bgp-section-title { margin-bottom: 36px; }
.xy-bgp-page .xy-bgp-section-title span { color: #005bff; }

.xy-bgp-page .xy-bgp-cats button,
.xy-bgp-page .xy-bgp-table-wrap,
.xy-bgp-page .xy-bgp-state {
  border-color: #dbe4f0;
  border-radius: 6px;
  box-shadow: 0 12px 32px rgba(15, 34, 70, .06);
}
.xy-bgp-page .xy-bgp-cats button.is-active { box-shadow: 0 12px 32px rgba(0, 91, 255, .18); }
.xy-bgp-page .xy-bgp-regions,
.xy-bgp-page .xy-bgp-rooms { justify-content: center; }
.xy-bgp-page .xy-bgp-regions a,
.xy-bgp-page .xy-bgp-rooms button { border-radius: 3px; }
.xy-bgp-page .xy-bgp-btn { border-radius: 4px; }
.xy-bgp-page .xy-bgp-btn.is-solid { background: #005bff; border-color: #005bff; }
.xy-bgp-page .xy-bgp-btn.is-solid:hover { background: #004ad1; border-color: #004ad1; }

/* 优势：沿用官网 feature 卡，4 列 */
.xy-bgp-page .xy-bgp-feature-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.xy-bgp-page .xy-bgp-feature-grid article { min-height: 0; }
.xy-bgp-page .xy-bgp-feature-grid h3 { font-size: 18px; }

/* FAQ：官网折叠样式，限制宽度居中 */
.xy-bgp-page .xy-bgp-faq-list { max-width: 920px; margin: 0 auto; }

@media (max-width: 991px) {
  .xy-bgp-page .xy-bgp-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .xy-bgp-page .xy-bgp-plans,
  .xy-bgp-page .xy-bgp-advantages,
  .xy-bgp-page .xy-bgp-faq { padding: 48px 0 56px; }
  .xy-bgp-page .xy-bgp-section-title { margin-bottom: 24px; }
  .xy-bgp-page .xy-bgp-feature-grid { grid-template-columns: 1fr; gap: 12px; }
  .xy-bgp-page .xy-bgp-regions,
  .xy-bgp-page .xy-bgp-rooms { justify-content: flex-start; }
  .xy-bgp-page .xy-bgp-hero .xy-cloud-tags { justify-content: center; }
}

/* 机房切换：沿用老官网样式，等宽矩形按钮网格，选中为蓝色渐变 */
.xy-bgp-page .xy-bgp-regions,
.xy-bgp-page .xy-bgp-rooms {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px 16px;
  margin: 8px 0 28px;
  padding: 0;
  border: 0;
}
.xy-bgp-page .xy-bgp-rooms[hidden] { display: none; }
.xy-bgp-page .xy-bgp-regions a,
.xy-bgp-page .xy-bgp-rooms button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 44px;
  margin: 0;
  padding: 0 10px;
  overflow: hidden;
  color: #475569;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
  background: #fff;
  border: 1px solid #e5e9f0;
  border-radius: 2px;
  box-shadow: none;
  cursor: pointer;
  transition: color .16s ease, border-color .16s ease;
}
.xy-bgp-page .xy-bgp-regions a::after,
.xy-bgp-page .xy-bgp-rooms button::after { content: none; }
.xy-bgp-page .xy-bgp-regions a:hover,
.xy-bgp-page .xy-bgp-rooms button:hover {
  color: var(--bgp-blue);
  background: #fff;
  border-color: #9cc2ff;
}
.xy-bgp-page .xy-bgp-regions a.is-active,
.xy-bgp-page .xy-bgp-rooms button.is-active {
  color: #fff;
  font-weight: 400;
  background: linear-gradient(90deg, #5aaeff 0%, #0057ff 100%);
  border-color: transparent;
}
@media (max-width: 991px) {
  .xy-bgp-page .xy-bgp-regions,
  .xy-bgp-page .xy-bgp-rooms { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .xy-bgp-page .xy-bgp-regions,
  .xy-bgp-page .xy-bgp-rooms { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
  .xy-bgp-page .xy-bgp-regions a,
  .xy-bgp-page .xy-bgp-rooms button { height: 40px; font-size: 13px; }
}

/* ===== dedicated.html 推荐机型区：老官网样式（下划线类型页签 + 等宽机房按钮 + 居中表格 + 圆角描边按钮） ===== */
.xy-bgp-legacy .xy-bgp-plans { padding: 72px 0 80px; background: #fff; }
.xy-bgp-legacy-title { max-width: 780px; margin: 0 auto 36px; text-align: center; }
.xy-bgp-legacy-title span { display: block; margin-bottom: 10px; color: #1497f2; font-size: 13px; font-weight: 800; }
.xy-bgp-legacy-title h2 { margin: 0 0 12px; color: #0f172a; font-size: 34px; font-weight: 900; line-height: 1.25; }
.xy-bgp-legacy-title p { margin: 0; color: #64748b; font-size: 15px; line-height: 1.8; }

.xy-bgp-legacy .xy-bgp-cats {
  display: flex; justify-content: center; gap: 0 72px;
  margin-bottom: 36px; border-bottom: 1px solid #e5e9f0;
}
.xy-bgp-legacy .xy-bgp-cats button,
.xy-bgp-legacy .xy-bgp-cats button:hover,
.xy-bgp-legacy .xy-bgp-cats button.is-active {
  position: relative; padding: 0 12px 16px; color: #333; background: none;
  border: 0; border-radius: 0; box-shadow: none;
}
.xy-bgp-legacy .xy-bgp-cats button b { font-size: 18px; font-weight: 500; color: inherit; }
.xy-bgp-legacy .xy-bgp-cats button span { display: none; }
.xy-bgp-legacy .xy-bgp-cats button:hover b,
.xy-bgp-legacy .xy-bgp-cats button.is-active b { color: #0b5cff; }
.xy-bgp-legacy .xy-bgp-cats button.is-active::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: #0b5cff;
}
.xy-bgp-legacy .xy-bgp-cats button.is-empty:not(.is-active) b { color: #9aa3b2; }

.xy-bgp-legacy .xy-bgp-rooms {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px;
  margin-bottom: 40px; justify-content: stretch;
}
.xy-bgp-legacy .xy-bgp-rooms[hidden] { display: none; }
.xy-bgp-legacy .xy-bgp-rooms button {
  min-height: 44px; padding: 0 10px; color: #555; font-size: 15px; font-weight: 400;
  background: #fff; border: 1px solid #e5e9f0; border-radius: 2px;
}
.xy-bgp-legacy .xy-bgp-rooms button:hover { color: #0b5cff; border-color: #b8ccf5; }
.xy-bgp-legacy .xy-bgp-rooms button.is-active {
  color: #fff; font-weight: 400; background: linear-gradient(90deg, #5aa9ff 0%, #0b5cff 100%); border-color: transparent;
}

.xy-bgp-legacy .xy-bgp-group + .xy-bgp-group { margin-top: 48px; }
.xy-bgp-legacy .xy-bgp-group-head {
  flex-direction: column; align-items: center; gap: 8px; margin-bottom: 24px;
  padding: 0; border: 0; text-align: center;
}
.xy-bgp-legacy .xy-bgp-group-head h3 { color: #333; font-size: 28px; font-weight: 700; }
.xy-bgp-legacy .xy-bgp-group-head span { color: #666; font-size: 14px; }

.xy-bgp-legacy .xy-bgp-table-wrap { border: 1px solid #e5e9f0; border-radius: 0; box-shadow: none; }
.xy-bgp-legacy .xy-bgp-table th {
  padding: 20px 10px; color: #333; font-size: 14px; font-weight: 700; text-align: center;
  background: #f5f7fb; border-right: 1px solid #e5e9f0; letter-spacing: 0;
}
.xy-bgp-legacy .xy-bgp-table td {
  padding: 18px 10px; color: #555; font-size: 14px; text-align: center;
  border-right: 1px solid #eef1f6; border-bottom: 1px solid #eef1f6;
}
.xy-bgp-legacy .xy-bgp-table th:last-child,
.xy-bgp-legacy .xy-bgp-table td:last-child { border-right: 0; }
.xy-bgp-legacy .xy-bgp-table td:first-child { font-weight: 400; }
.xy-bgp-legacy .xy-bgp-table td small { color: #8a94a6; }
.xy-bgp-legacy .xy-bgp-table tbody tr:hover td { background: #f8faff; }
.xy-bgp-legacy .xy-bgp-price { color: #555; font-size: 15px; font-weight: 400; }
.xy-bgp-legacy .xy-bgp-price-cell small { color: #555; font-size: 15px; font-weight: 400; margin-left: 0; }
.xy-bgp-legacy .xy-bgp-btn,
.xy-bgp-legacy .xy-bgp-btn.is-solid,
.xy-bgp-legacy .xy-bgp-btn.is-ghost {
  min-width: 90px; min-height: 36px; padding: 0 16px; color: #333; font-size: 14px; font-weight: 400;
  background: #fff; border: 1px solid #d5dbe5; border-radius: 18px;
}
.xy-bgp-legacy .xy-bgp-btn:hover,
.xy-bgp-legacy .xy-bgp-btn.is-solid:hover,
.xy-bgp-legacy .xy-bgp-btn.is-ghost:hover { color: #fff; background: #0b5cff; border-color: #0b5cff; }
.xy-bgp-legacy .xy-bgp-btn.is-disabled,
.xy-bgp-legacy .xy-bgp-btn.is-disabled:hover { color: #a0a8b6; background: #f3f5f8; border-color: #e5e9f0; }
.xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn + .xy-bgp-btn { margin-left: 12px; }
.xy-bgp-legacy .xy-bgp-table tr.is-soldout td { color: #a0a8b6; }
.xy-bgp-legacy .xy-bgp-state { border-radius: 2px; box-shadow: none; }
.xy-bgp-legacy-note { margin: 20px 0 0; color: #8a94a6; font-size: 13px; text-align: center; }

@media (max-width: 1199px) {
  .xy-bgp-legacy .xy-bgp-rooms { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .xy-bgp-legacy .xy-bgp-plans { padding: 48px 0 56px; }
  .xy-bgp-legacy-title h2 { font-size: 25px; }
  .xy-bgp-legacy .xy-bgp-cats { justify-content: flex-start; gap: 0 24px; overflow-x: auto; flex-wrap: nowrap; }
  .xy-bgp-legacy .xy-bgp-cats button { flex: none; }
  .xy-bgp-legacy .xy-bgp-cats button b { font-size: 16px; }
  .xy-bgp-legacy .xy-bgp-rooms { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 28px; }
  .xy-bgp-legacy .xy-bgp-group-head h3 { font-size: 20px; }
  .xy-bgp-legacy .xy-bgp-table-wrap { border: 0; }
  .xy-bgp-legacy .xy-bgp-table td { text-align: left; border-right: 0; }
}

/* ===== dedicated.html 推荐机型区：保留老官网布局，配色/圆角/阴影/按钮统一为官网产品页（product.css）规范 ===== */
.xy-bgp-legacy .xy-bgp-plans { padding: 78px 0 88px; background: #f3f6fb; }
.xy-bgp-legacy-title { margin-bottom: 42px; }
.xy-bgp-legacy-title span { margin-bottom: 12px; color: #20b7ff; letter-spacing: 0; }
.xy-bgp-legacy-title h2 { margin-bottom: 14px; }

/* 类型页签：官网分段式页签（同场景方案页签） */
.xy-bgp-legacy .xy-bgp-cats {
  display: inline-flex; gap: 4px; width: auto; max-width: 100%;
  margin: 0 auto 28px; padding: 4px; border: 1px solid #dbe4f0; border-radius: 6px;
  background: #fff; box-shadow: 0 12px 32px rgba(15, 34, 70, .06);
}
.xy-bgp-legacy .xy-bgp-plans .container { text-align: center; }
.xy-bgp-legacy .xy-bgp-plans .container > *:not(.xy-bgp-cats) { text-align: left; }
.xy-bgp-legacy .xy-bgp-legacy-title,
.xy-bgp-legacy .xy-bgp-legacy-note { text-align: center !important; }
.xy-bgp-legacy .xy-bgp-cats button,
.xy-bgp-legacy .xy-bgp-cats button:hover,
.xy-bgp-legacy .xy-bgp-cats button.is-active {
  min-width: 132px; min-height: 44px; padding: 0 18px; border-radius: 6px; color: #23324a;
}
.xy-bgp-legacy .xy-bgp-cats button { align-items: center; justify-content: center; }
.xy-bgp-legacy .xy-bgp-cats button b { font-size: 15px; font-weight: 700; }
.xy-bgp-legacy .xy-bgp-cats button:hover { background: #f2f7ff; }
.xy-bgp-legacy .xy-bgp-cats button:hover b { color: #155fd8; }
.xy-bgp-legacy .xy-bgp-cats button.is-active { background: #2468f2; box-shadow: 0 7px 18px rgba(36, 104, 242, .22); }
.xy-bgp-legacy .xy-bgp-cats button.is-active b { color: #fff; }
.xy-bgp-legacy .xy-bgp-cats button.is-active::after { content: none; }

/* 机房按钮：官网白卡描边，选中纯蓝，不用渐变 */
.xy-bgp-legacy .xy-bgp-rooms { gap: 12px; margin-bottom: 36px; }
.xy-bgp-legacy .xy-bgp-rooms button {
  min-height: 44px; color: #23324a; font-size: 14px; font-weight: 700;
  border: 1px solid #dbe4f0; border-radius: 6px;
}
.xy-bgp-legacy .xy-bgp-rooms button:hover { color: #005bff; border-color: rgba(0, 91, 255, .38); }
.xy-bgp-legacy .xy-bgp-rooms button.is-active { color: #fff; background: #005bff; border-color: #005bff; }

/* 分组标题与表格：官网卡片规范 */
.xy-bgp-legacy .xy-bgp-group + .xy-bgp-group { margin-top: 40px; }
.xy-bgp-legacy .xy-bgp-group-head { margin-bottom: 18px; }
.xy-bgp-legacy .xy-bgp-group-head h3 { color: #0f172a; font-size: 24px; font-weight: 900; }
.xy-bgp-legacy .xy-bgp-group-head span { color: #64748b; }
.xy-bgp-legacy .xy-bgp-table-wrap {
  background: #fff; border: 1px solid #dbe4f0; border-radius: 6px; box-shadow: 0 12px 32px rgba(15, 34, 70, .06);
}
.xy-bgp-legacy .xy-bgp-table th {
  padding: 16px 10px; color: #475569; font-size: 13px; background: #f7f9fd;
  border-right: 0; border-bottom: 1px solid #dbe4f0;
}
.xy-bgp-legacy .xy-bgp-table td { padding: 16px 10px; color: #17233d; border-right: 0; border-bottom: 1px solid #eef2f8; }
.xy-bgp-legacy .xy-bgp-table td:first-child { font-weight: 700; }
.xy-bgp-legacy .xy-bgp-table td small { color: #64748b; font-weight: 400; }
.xy-bgp-legacy .xy-bgp-table tbody tr:hover td { background: #f5f9ff; }
.xy-bgp-legacy .xy-bgp-price { color: #e5482d; font-size: 20px; font-weight: 900; font-variant-numeric: tabular-nums; }
.xy-bgp-legacy .xy-bgp-price-cell small { color: #64748b; font-size: 12px; margin-left: 2px; }
.xy-bgp-legacy .xy-bgp-table tr.is-soldout td,
.xy-bgp-legacy .xy-bgp-table tr.is-soldout .xy-bgp-price { color: #94a3b8; }

/* 按钮：官网套餐卡同款（咨询蓝、购买深色，3px 圆角） */
.xy-bgp-legacy .xy-bgp-btn,
.xy-bgp-legacy .xy-bgp-btn.is-solid,
.xy-bgp-legacy .xy-bgp-btn.is-ghost {
  min-width: 84px; min-height: 36px; padding: 0 14px; color: #fff; font-size: 13px; font-weight: 800;
  border: 0; border-radius: 3px;
}
.xy-bgp-legacy .xy-bgp-btn.is-ghost { background: #005bff; }
.xy-bgp-legacy .xy-bgp-btn.is-solid { background: #0f172a; }
.xy-bgp-legacy .xy-bgp-btn:hover,
.xy-bgp-legacy .xy-bgp-btn.is-ghost:hover { color: #fff; background: #0048d9; }
.xy-bgp-legacy .xy-bgp-btn.is-solid:hover { color: #fff; background: #005bff; }
.xy-bgp-legacy .xy-bgp-btn.is-disabled,
.xy-bgp-legacy .xy-bgp-btn.is-disabled:hover { color: #94a3b8; background: #eef2f7; }
.xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn + .xy-bgp-btn { margin-left: 10px; }
.xy-bgp-legacy .xy-bgp-state { background: #fff; border: 1px solid #dbe4f0; border-radius: 6px; box-shadow: 0 12px 32px rgba(15, 34, 70, .06); }
.xy-bgp-legacy-note { margin-top: 22px; color: #64748b; }

@media (max-width: 767px) {
  .xy-bgp-legacy .xy-bgp-plans { padding: 48px 0 56px; }
  .xy-bgp-legacy .xy-bgp-cats { display: flex; overflow-x: auto; scrollbar-width: none; }
  .xy-bgp-legacy .xy-bgp-cats button { min-width: 96px; flex: none; }
  .xy-bgp-legacy .xy-bgp-group-head h3 { font-size: 20px; }
  .xy-bgp-legacy .xy-bgp-table-wrap { background: transparent; border: 0; box-shadow: none; }
}

/* 价格列表区加宽：仅价格区容器放宽到 1440px，其它区块保持 1220px */
@media (min-width: 1280px) {
  .xy-dedicated-page main .xy-bgp-plans .container,
  .xy-bgp-page .xy-bgp-plans .container { max-width: 1440px; width: calc(100% - 64px); }
}

/* 操作列按钮统一尺寸：已售罄 / 暂不可购与咨询、立即购买同宽同高 */
.xy-bgp-page .xy-bgp-ops .xy-bgp-btn,
.xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn {
  box-sizing: border-box; width: 104px; min-width: 104px; height: 44px; min-height: 44px; padding: 0 10px; border: 0;
}
@media (max-width: 767px) {
  .xy-bgp-page .xy-bgp-ops .xy-bgp-btn,
  .xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn { width: auto; min-width: 0; flex: 1 1 0; height: 40px; min-height: 40px; }
}

/* 类型页签 + 机房按钮：带图标的分段页签（按设计稿） */
.xy-bgp-ico { display: inline-flex; flex: none; width: 20px; height: 20px; }
.xy-bgp-ico svg { width: 100%; height: 100%; }
.xy-bgp-legacy .xy-bgp-cats { gap: 0; padding: 0; overflow: hidden; border-radius: 8px; }
.xy-bgp-legacy .xy-bgp-cats button,
.xy-bgp-legacy .xy-bgp-cats button:hover,
.xy-bgp-legacy .xy-bgp-cats button.is-active {
  flex-direction: row; gap: 10px; min-width: 200px; min-height: 58px; padding: 0 24px; border-radius: 0;
}
.xy-bgp-legacy .xy-bgp-cats button + button { border-left: 1px solid #eef2f8; }
.xy-bgp-legacy .xy-bgp-cats button.is-active,
.xy-bgp-legacy .xy-bgp-cats button.is-active + button { border-left-color: transparent; }
.xy-bgp-legacy .xy-bgp-cats button.is-active { border-radius: 6px; box-shadow: 0 8px 20px rgba(36, 104, 242, .28); }
.xy-bgp-legacy .xy-bgp-cats .xy-bgp-ico { color: #2468f2; }
.xy-bgp-legacy .xy-bgp-cats button.is-active .xy-bgp-ico { color: #fff; }
.xy-bgp-legacy .xy-bgp-cats button.is-empty:not(.is-active) .xy-bgp-ico { color: #9aa3b2; }

.xy-bgp-legacy .xy-bgp-rooms { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
.xy-bgp-legacy .xy-bgp-rooms[hidden] { display: none; }
.xy-bgp-legacy .xy-bgp-rooms button {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  flex: 0 1 232px; min-height: 52px; background: #fff; border-radius: 6px;
}
.xy-bgp-legacy .xy-bgp-rooms button b { font-weight: 700; }
.xy-bgp-legacy .xy-bgp-rooms .xy-bgp-ico { width: 18px; height: 18px; color: #475569; }
.xy-bgp-legacy .xy-bgp-rooms button:hover .xy-bgp-ico { color: #005bff; }
.xy-bgp-legacy .xy-bgp-rooms button.is-active { box-shadow: 0 8px 20px rgba(0, 91, 255, .25); }
.xy-bgp-legacy .xy-bgp-rooms button.is-active .xy-bgp-ico { color: #fff; }
@media (max-width: 767px) {
  .xy-bgp-legacy .xy-bgp-cats button,
  .xy-bgp-legacy .xy-bgp-cats button:hover,
  .xy-bgp-legacy .xy-bgp-cats button.is-active { min-width: 0; flex: 1 0 auto; min-height: 48px; padding: 0 14px; gap: 6px; }
  .xy-bgp-legacy .xy-bgp-rooms { gap: 10px; }
  .xy-bgp-legacy .xy-bgp-rooms button { flex: 1 1 calc(50% - 5px); min-height: 44px; }
}

/* 高度收紧：类型页签 48px、机房按钮 42px、操作按钮 38px */
.xy-bgp-legacy .xy-bgp-cats button,
.xy-bgp-legacy .xy-bgp-cats button:hover,
.xy-bgp-legacy .xy-bgp-cats button.is-active { min-height: 48px; }
.xy-bgp-legacy .xy-bgp-rooms button { min-height: 42px; }
.xy-bgp-legacy .xy-bgp-rooms { margin-bottom: 28px; }
.xy-bgp-page .xy-bgp-ops .xy-bgp-btn,
.xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn { height: 38px; min-height: 38px; }
.xy-bgp-legacy .xy-bgp-table td { padding-top: 12px; padding-bottom: 12px; }
@media (max-width: 767px) {
  .xy-bgp-legacy .xy-bgp-cats button,
  .xy-bgp-legacy .xy-bgp-cats button:hover,
  .xy-bgp-legacy .xy-bgp-cats button.is-active { min-height: 44px; }
  .xy-bgp-legacy .xy-bgp-rooms button { min-height: 40px; }
  .xy-bgp-page .xy-bgp-ops .xy-bgp-btn,
  .xy-bgp-legacy .xy-bgp-ops .xy-bgp-btn { height: 36px; min-height: 36px; }
}
