/* Mobile readability and touch targets (phones). Loaded after main.css on every page. */
@media (max-width: 768px) {
  /* Minimum 12px for content labels that were 10.7-11.9px */
  .fpc-spec-title,
  .fpc-tier-badge,
  .spec-chip,
  .nav-pill,
  .mega-menu-desc,
  .why-tag,
  .gaming-spec-chip,
  .gaming-tag-pill,
  .gaming-card-promo-badge,
  .stat-card-micro,
  .gs-chip,
  .gs-badge,
  .gs-latency-badge,
  .strip-label,
  .strip-meta,
  .hero-brand-subtitle,
  .badge-icon,
  .fivem-notice-badge,
  .pricing-save-pill,
  .vds-spec-card__tag,
  .vds-ids-tag-pill,
  .vds-ids-option-badge,
  .vds-ids-option-sub,
  .vds-ids-step-num,
  .vds-ids-rule-desc,
  .vds-ids-group-title,
  .btag,
  .feat-card__metric-label,
  .feat-card__tag,
  .feat-chip,
  .feat-step-stage,
  .phx-wz-item-tag,
  .currency-btn,
  .top-bar-lang-option,
  .cb-pills small,
  .dx-facts span,
  .vx-meter__badge,
  .vx-cpu__cores span,
  .vx-telem-item span,
  .wh-q-chip span,
  .vm-cmetric-label,
  .vm-cmetric-sub,
  .vm-cert-chip {
    font-size: 12px !important;
  }

  /* Single-column grids must not grow wider than the screen (text was clipped on the right) */
  .hero-modern-container,
  .showcase-container,
  .vx-grid,
  .hero-games__layout,
  .corp-shell,
  .vp-top,
  .contact-quick-list,
  .location-info-pills,
  .form-map-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .hero-modern-container > *,
  .showcase-container > *,
  .vx-grid > *,
  .hero-games__layout > *,
  .corp-shell > *,
  .vp-top > *,
  .contact-quick-list > *,
  .location-info-pills > *,
  .form-map-grid > * {
    min-width: 0;
    max-width: 100%;
  }
  .hero-modern-title,
  .hero-games__title,
  .vx-title,
  .contact-quick-value {
    overflow-wrap: anywhere;
  }
  /* Rows that ran off screen: let them wrap */
  .corp-dl { grid-template-columns: minmax(0, 1fr) !important; }
  .corp-row,
  .showcase-stats,
  .vx-panel__bar,
  .hero-modern-actions,
  .contact-quick-item {
    flex-wrap: wrap !important;
    row-gap: 8px;
  }
  .contact-quick-left { min-width: 0; flex: 1 1 100%; }
  .contact-quick-value {
    font-size: 14px !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .hero-modern-actions > .btn { flex: 1 1 auto; justify-content: center; }

  /* Game filter tabs: swipe sideways instead of running off screen */
  .gaming-filter-tabs {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  /* Right-edge social buttons covered page text on phones (WhatsApp stays in the top bar and footer) */
  .floating-social-sidebar {
    display: none !important;
  }

  /* Touch targets: at least 24px high (WCAG 2.5.8) */
  .top-bar-link {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
  }
  .vds-ids-delete-btn {
    min-width: 24px;
    min-height: 24px;
  }
}

/* All widths: slider dots spaced so each has a 24px touch area (WCAG 2.5.8) */
.hero-bg-dots { gap: 14px; }

/* Inline links inside running text are underlined (not distinguished by colour alone) */
.why-desc a, .gg-note a, .fivem-info-text a, p a[href="ddos#profiller"] { text-decoration: underline; text-underline-offset: 2px; }

/* Contrast (WCAG AA, at least 4.5:1). All widths. */
.arch-step-num { color: #a78bfa !important; }
.arch-tag { color: #a3a3a3 !important; }
.badge-cross, .vm-compare-table td.text-danger { color: #f87171 !important; }
.channel-btn.btn-solid, .channel-btn.btn-solid:hover, .today-pill { color: #1a1208 !important; }
.vm-vip-actions .btn.btn-primary { color: #06270f !important; }
