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

  .bg-light {
    background-color: #1e2230 !important;
    color: var(--color-1, #fff) !important;
  }

  .bg-dark {
    background-color: #12151f !important;
    color: var(--color-1, #fff) !important;
  }

  .table {
    color: var(--color-1, #fff);
    border-color: rgba(255,255,255,0.12);
  }

  .table thead {
    background: #12151f;
    border-bottom: 2px solid rgba(255,255,255,0.15);
  }

  .table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(255,255,255,0.04);
    color: var(--color-1, #fff);
  }

  .table > :not(caption) > * > * {
    background-color: transparent;
    color: inherit;
  }

  .payment-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: var(--radius-2, 10px);
    background: rgba(255,165,0,0.15);
    color: #ffa500;
    font-size: 1.5rem;
    margin-bottom: var(--space-3, 12px);
  }

  .badge-fast {
    background: rgba(40,200,100,0.18);
    color: #28c864;
    border: 1px solid rgba(40,200,100,0.35);
    border-radius: var(--radius-1, 6px);
    font-size: 0.75rem;
    padding: 2px 10px;
    font-weight: 600;
    letter-spacing: 0.03em;
  }

  .badge-medium {
    background: rgba(255,165,0,0.15);
    color: #ffa500;
    border: 1px solid rgba(255,165,0,0.3);
    border-radius: var(--radius-1, 6px);
    font-size: 0.75rem;
    padding: 2px 10px;
    font-weight: 600;
  }

  .badge-slow {
    background: rgba(100,120,255,0.15);
    color: #7b8fff;
    border: 1px solid rgba(100,120,255,0.3);
    border-radius: var(--radius-1, 6px);
    font-size: 0.75rem;
    padding: 2px 10px;
    font-weight: 600;
  }

  .step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    background: #ffa500;
    color: #12151f;
    font-weight: 700;
    font-size: 1rem;
    margin-right: 14px;
  }

  .step-row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 18px;
  }

  .highlight-box {
    border-left: 4px solid #ffa500;
    background: rgba(255,165,0,0.07);
    border-radius: 0 var(--radius-2,10px) var(--radius-2,10px) 0;
    padding: 16px 20px;
    margin-bottom: 20px;
    color: var(--color-1, #fff);
  }

  .card {
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: var(--radius-2, 10px);
    transition: var(--transition-1, 0.2s);
  }

  .card:hover {
    box-shadow: var(--shadow-3, 0 8px 24px rgba(0,0,0,0.4));
    border-color: rgba(255,165,0,0.3);
  }

  .section-title-line {
    display: inline-block;
    border-bottom: 3px solid #ffa500;
    padding-bottom: 4px;
    margin-bottom: 24px;
  }