/* Защита от горизонтального скролла */
  html, body { overflow-x: hidden; max-width: 100vw; }

  .legal-doc {
    color: var(--fg, #e0e0e0);
    font-size: 1rem;
    line-height: 1.8;
  }

  .legal-doc h1 {
    font-size: 2rem;
    font-weight: 700;
    color: var(--fg, #fff);
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--acc, #c9a84c);
  }

  .legal-doc .lead-text {
    color: var(--fg2, #b0b0b0);
    font-size: 1.05rem;
    line-height: 1.8;
    margin-bottom: 2rem;
  }

  .legal-doc .legal-section {
    margin-bottom: 2.5rem;
  }

  .legal-doc h2 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--acc, #c9a84c);
    margin-bottom: 1rem;
    margin-top: 0;
  }

  .legal-doc h3 {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--fg, #e0e0e0);
    margin-bottom: 0.75rem;
    margin-top: 1.25rem;
  }

  .legal-doc p {
    color: var(--fg2, #c0c0c0);
    margin-bottom: 0.85rem;
  }

  .legal-doc ul, .legal-doc ol {
    color: var(--fg2, #c0c0c0);
    padding-left: 1.5rem;
    margin-bottom: 1rem;
  }

  .legal-doc li {
    margin-bottom: 0.4rem;
  }

  .legal-doc li strong {
    color: var(--fg, #e0e0e0);
  }

  .legal-divider {
    border: none;
    border-top: 1px solid var(--bg3, rgba(255,255,255,0.1));
    margin: 2rem 0;
  }

  .legal-footer-note {
    font-size: 0.9rem;
    color: var(--fg3, #888);
    font-style: italic;
    border-top: 1px solid var(--bg3, rgba(255,255,255,0.1));
    padding-top: 1.25rem;
    margin-top: 2rem;
  }

  .bg-light {
    background-color: var(--bg2, #1e1e2e) !important;
    color: var(--fg, #e0e0e0) !important;
  }

  .table {
    color: var(--fg, #e0e0e0);
    border-color: var(--bg3, rgba(255,255,255,0.1));
  }