/* 88BB Disclaimer global strip + disclaimer page v0.2
   Global risk strip: visible, honest, no box frame, no heavy bold. */
.bb-disclaimer-strip {
  margin: 26px auto 22px;
  width: min(1440px, calc(100% - 32px));
  padding: 0 4px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 16px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(226, 239, 255, .88);
  font-family: Inter, "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  font-size: clamp(13.5px, 1.05vw, 15px);
  line-height: 1.72;
  font-weight: 500 !important;
  letter-spacing: .005em;
  text-align: center;
}

.bb-disclaimer-strip *,
.bb-disclaimer-strip span,
.bb-disclaimer-strip strong,
.bb-disclaimer-strip b {
  font-weight: 500 !important;
}

.bb-disclaimer-strip::before,
.bb-disclaimer-strip::after {
  content: none !important;
  display: none !important;
}

.bb-disclaimer-strip .bb-disclaimer-label,
.bb-disclaimer-strip .risk-label,
.bb-disclaimer-strip [data-bb-disclaimer-label] {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(190, 255, 214, .92) !important;
  font-size: 1em !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

.bb-disclaimer-strip a {
  color: #8be9ff;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  font-weight: 500 !important;
}

.bb-disclaimer-strip a:hover {
  color: #f6d782;
  text-decoration-color: rgba(246, 215, 130, .82);
}

.bb-disclaimer-strip-en {
  color: rgba(184, 199, 220, .84);
  font-weight: 500 !important;
}

/* Defensive selectors for older pages that used small legal-note variants. */
.bb-risk-note,
.risk-note,
.legal-note,
.footer-disclaimer,
.disclaimer-note,
.small-disclaimer {
  font-size: clamp(13.5px, 1.05vw, 15px) !important;
  line-height: 1.72 !important;
  font-weight: 500 !important;
}

.bb-disclaimer-main {
  gap: 18px;
}

.bb-disclaimer-hero {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(125, 211, 252, .18);
  border-radius: 28px;
  padding: clamp(24px, 4vw, 46px);
  background:
    radial-gradient(circle at 12% 18%, rgba(34, 211, 238, .18), transparent 30%),
    radial-gradient(circle at 86% 8%, rgba(246, 199, 111, .12), transparent 30%),
    linear-gradient(145deg, rgba(8, 13, 24, .96), rgba(7, 16, 28, .86));
  box-shadow: 0 22px 70px rgba(0, 0, 0, .32);
}

.bb-disclaimer-hero h1 {
  margin: 8px 0 12px;
  max-width: 860px;
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1.05;
  letter-spacing: -.04em;
  color: #f8fbff;
}

.bb-disclaimer-hero p {
  max-width: 920px;
  color: rgba(210, 225, 244, .84);
  line-height: 1.8;
}

.bb-disclaimer-lang {
  display: inline-flex;
  gap: 8px;
  padding: 4px;
  margin-top: 18px;
  border: 1px solid rgba(125, 211, 252, .16);
  border-radius: 999px;
  background: rgba(6, 11, 20, .72);
}

.bb-disclaimer-lang button {
  border: 0;
  border-radius: 999px;
  padding: 8px 14px;
  color: rgba(221, 235, 255, .75);
  background: transparent;
  font-weight: 800;
  cursor: pointer;
}

.bb-disclaimer-lang button.is-active {
  color: #07111f;
  background: linear-gradient(135deg, #7dd3fc, #f6c76f);
}

.bb-disclaimer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.bb-disclaimer-card {
  padding: 20px;
  border: 1px solid rgba(125, 211, 252, .14);
  border-radius: 22px;
  background: rgba(8, 13, 24, .72);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
}

.bb-disclaimer-card h2 {
  margin: 0 0 10px;
  color: #f8fbff;
  font-size: 18px;
  letter-spacing: -.02em;
}

.bb-disclaimer-card p,
.bb-disclaimer-card li {
  color: rgba(210, 225, 244, .78);
  line-height: 1.75;
  font-size: 14px;
}

.bb-disclaimer-card ul {
  padding-left: 18px;
  margin: 8px 0 0;
}

.bb-disclaimer-alert {
  border-color: rgba(246, 199, 111, .28);
  background: linear-gradient(145deg, rgba(246, 199, 111, .10), rgba(8, 13, 24, .78));
}

.bb-disclaimer-view[hidden] {
  display: none !important;
}

.bb-disclaimer-footer {
  margin-top: 10px;
  padding: 18px 20px;
  border-radius: 20px;
  border: 1px solid rgba(125, 211, 252, .14);
  color: rgba(210, 225, 244, .78);
  background: rgba(7, 12, 22, .72);
  line-height: 1.75;
}

@media (max-width: 880px) {
  .bb-disclaimer-grid {
    grid-template-columns: 1fr;
  }
  .bb-disclaimer-strip {
    align-items: flex-start;
  }
}


/* P37: Global disclaimer strip language separation */
.bb-disclaimer-strip [data-bb-disclaimer-lang="en"] {
  display: none;
}

html[lang^="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="zh"],
html[data-disclaimer-lang="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="zh"],
body[data-lang="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="zh"],
body.is-en .bb-disclaimer-strip [data-bb-disclaimer-lang="zh"] {
  display: none;
}

html[lang^="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="en"],
html[data-disclaimer-lang="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="en"],
body[data-lang="en"] .bb-disclaimer-strip [data-bb-disclaimer-lang="en"],
body.is-en .bb-disclaimer-strip [data-bb-disclaimer-lang="en"] {
  display: inline;
}

html[data-disclaimer-lang="zh"] .bb-disclaimer-strip [data-bb-disclaimer-lang="zh"] {
  display: inline;
}

html[data-disclaimer-lang="zh"] .bb-disclaimer-strip [data-bb-disclaimer-lang="en"] {
  display: none;
}

/* FAQ public page grouping */
.bb-faq-grouped {
  display: grid;
  gap: 18px;
}
.bb-faq-category {
  display: grid;
  gap: 10px;
}
.bb-faq-category > .v5-kicker {
  margin: 12px 0 2px;
  color: rgba(139, 233, 255, .95);
  letter-spacing: .08em;
}
.bb-faq-category details {
  border-color: rgba(125, 211, 252, .16);
}
.bb-faq-category summary {
  font-size: 15.5px;
}
.bb-faq-category p {
  font-size: 14.5px;
  line-height: 1.8;
}
