  *,
  *::before,
  *::after {
      box-sizing: border-box;
  }

  body {
      background: #0a0e1a;
      color: #e8eaf2;
      font-family: 'Inter', sans-serif;
      font-size: 15px;
      line-height: 1.6;
      margin: 0;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
  }

  h1,
  h2,
  h3 {
      font-weight: 500;
      color: #fff;
      letter-spacing: -0.3px;
  }

  a {
      color: #3b9eff;
      text-decoration: none;
  }

  a:hover {
      color: #6db8ff;
  }

  .bb-nav-toggle {
      display: none;
      background: none;
      border: none;
      color: var(--muted);
      font-size: 26px;
      cursor: pointer;
      padding: 0;
  }

  .bb-nav-mobile {
      display: none;
      background: var(--surface);
      border-bottom: 1px solid var(--border);
      padding: 16px 24px;
  }

  .bb-nav-mobile.open {
      display: block;
  }

  .bb-nav-mobile a {
      display: block;
      padding: 10px 0;
      color: var(--muted);
      font-size: 15px;
      border-bottom: 1px solid var(--border);
  }

  .bb-nav-mobile a:last-child {
      border-bottom: none;
  }

  .btn-bb-primary {
      display: inline-block;
      background: var(--blue);
      color: #fff !important;
      border: none;
      padding: 9px 20px;
      border-radius: 8px;
      font-size: 14px;
      font-weight: 500;
      transition: background 0.15s;
  }

  .btn-bb-primary:hover {
      background: #2e8eef;
  }

  /* Page layout */
  .bb-page-body {
      flex: 1;
      padding: 52px 24px;
  }

  .bb-legal-wrap {
      max-width: 920px;
      margin: 0 auto;
      background: var(--surface);
      border: 1px solid var(--border);
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 0 58px 9px var(--blue-glow), 0 24px 48px rgba(0, 0, 0, 0.5);
  }

  .bb-legal-header {
      background: var(--surface2);
      border-bottom: 1px solid var(--border);
      padding: 36px 48px;
  }

  .bb-legal-label {
      font-size: 11px;
      font-weight: 600;
      color: var(--blue);
      letter-spacing: 1.4px;
      text-transform: uppercase;
      margin-bottom: 10px;
  }

  .bb-legal-header h1 {
      font-size: 28px;
      font-weight: 500;
      color: #fff;
      margin-bottom: 8px;
      letter-spacing: -0.4px;
  }

  .bb-legal-effective {
      font-size: 13px;
      color: var(--faint);
  }

  .bb-legal-body {
      padding: 40px 48px;
  }

  .bb-legal-body h2 {
      font-size: 16px;
      font-weight: 600;
      color: #e8eaf2;
      margin-top: 36px;
      margin-bottom: 12px;
      padding-bottom: 8px;
      border-bottom: 1px solid var(--border);
      letter-spacing: -0.2px;
  }

  .bb-legal-body h2:first-child {
      margin-top: 0;
  }

  .bb-legal-body p {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.75;
      margin-bottom: 14px;
  }

  .bb-legal-body p:last-child {
      margin-bottom: 0;
  }

  .bb-legal-body ul {
      padding-left: 20px;
      margin-bottom: 14px;
  }

  .bb-legal-body ul li {
      font-size: 14px;
      color: var(--muted);
      line-height: 1.75;
      margin-bottom: 6px;
  }

  .bb-legal-note {
      background: var(--blue-dim);
      border: 1px solid var(--blue-bdr);
      border-radius: 8px;
      padding: 14px 18px;
      font-size: 13px;
      color: var(--muted);
      margin-bottom: 14px;
      line-height: 1.6;
  }

  .bb-legal-disclaimer {
      background: var(--surface2);
      border: 1px solid var(--border);
      border-radius: 8px;
      padding: 14px 18px;
      font-size: 12px;
      color: var(--faint);
      margin-top: 36px;
      line-height: 1.65;
  }

  /* Footer */
  .bb-footer-bottom {
      background: var(--surface);
      border-top: 1px solid var(--border);
      padding: 20px 24px;
      text-align: center;
      flex-shrink: 0;
      margin-top: 0;
  }

  .bb-footer-bottom p {
      font-size: 14px;
      color: var(--muted);
      margin: 0;
      line-height: 1.7;
  }

  .bb-coingecko-dot {
      width: 14px;
      height: 14px;
      background: #1a8c5b;
      border-radius: 3px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 8px;
      font-weight: 700;
      color: #fff;
      vertical-align: middle;
      margin-right: 4px;
  }

  @media (max-width: 767px) {
      .bb-navbar {
          padding: 0 20px;
      }

      .bb-nav-links {
          display: none;
      }

      .bb-nav-toggle {
          display: block;
      }

      .bb-legal-header {
          padding: 28px 24px;
      }

      .bb-legal-body {
          padding: 28px 24px;
      }
  }