/* ═══════════════════════════════════════════════════════════════════════════
   OneScraper Mobile & Cross-Browser Fixes
   Targets: iPhone, iPad, Android, Safari, Chrome, Firefox
   Breakpoints: 1200px (laptop), 991px (tablet), 767px (mobile), 480px (small)
   ═══════════════════════════════════════════════════════════════════════════ */

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

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch;
}

img { max-width: 100%; height: auto; }

.container, .container-fluid, .container-full, .row {
  max-width: 100vw;
  overflow-x: hidden;
}

@supports (padding: env(safe-area-inset-top)) {
  .ss_header { padding-top: env(safe-area-inset-top); }
  .footer-main { padding-bottom: env(safe-area-inset-bottom); }
}

a, button, .btn, .nav-link, input[type="submit"], .password-toggle,
.get-dataset-button, .default-button-header {
  min-height: 44px;
  min-width: 44px;
}

.data-solutions-main-sec {
  flex-wrap: wrap !important;
}

.data-solutions-main-sec .data-solutions-cells {
  flex: 0 0 calc(20% - 13px) !important;
  min-width: 0;
}

@media (max-width: 1199px) {
  .data-solutions-main-sec .data-solutions-cells {
    flex: 0 0 calc(33.33% - 11px) !important;
  }
  section[style*="background:#f8f9ff"] .col-lg-3 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 991px) {
  .navbar-collapse {
    background: #fff;
    padding: 20px;
    border-radius: 16px;
    margin-top: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.1);
  }
  .navbar-nav .nav-link {
    padding: 12px 16px !important;
    border-bottom: 1px solid #f0f0f0;
  }
  .ss_button {
    flex-direction: column;
    gap: 12px;
    margin-top: 16px;
  }
  .contact-us-header { display: none !important; }

  .hero-section .row { text-align: center; }
  .hero-des { text-align: center; margin-bottom: 32px; }
  .hero-des .d-flex.gap-16 { justify-content: center; flex-wrap: wrap; }
  .hero-ai-img { max-width: 400px; margin: 0 auto; }

  section h1[style] { font-size: 2rem !important; }
  section h2[style] { font-size: 1.6rem !important; }

  .data-solutions-main-sec .data-solutions-cells {
    flex: 0 0 calc(33.33% - 11px) !important;
  }

  .how-works-sec .row > .col-lg-6:first-child { margin-bottom: 32px; }
  .exceptional-support-sec .row > .col-lg-6 { text-align: center; }
  .exceptional-support-img img { max-width: 360px; margin: 0 auto 32px; }

  #grid .col-lg-3 { flex: 0 0 33.33%; max-width: 33.33%; }

  div[style*="overflow-x:auto"], .table-responsive {
    -webkit-overflow-scrolling: touch;
  }

  .login-main-cells { padding: 36px 28px !important; }
  .login-main-cells .login-images img { max-width: 220px !important; }
}

@media (max-width: 767px) {
  html, body { font-size: 14px !important; }

  .ss_header { padding: 8px 0 !important; }
  .ss_logo img { height: 28px !important; }
  .navbar-toggler {
    padding: 6px 10px !important;
    border: 1.5px solid #ddd !important;
    border-radius: 8px !important;
  }

  section[style*="linear-gradient(135deg,#6c47ff"],
  section[style*="linear-gradient(135deg,#0f0f23"] {
    padding: 48px 0 !important;
  }

  section[style*="linear-gradient(135deg,#6c47ff"] h1,
  section[style*="linear-gradient(135deg,#0f0f23"] h1 {
    font-size: 1.6rem !important;
    line-height: 1.3 !important;
  }

  section[style*="linear-gradient(135deg,#6c47ff"] p {
    font-size: 0.9rem !important;
    line-height: 1.7 !important;
  }

  .hero-des .d-flex.gap-16,
  section[style*="linear-gradient"] .d-flex.gap-3,
  section[style*="linear-gradient"] .d-flex.flex-wrap {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: center;
  }

  section[style*="linear-gradient"] .btn,
  section[style*="linear-gradient"] a[style*="border-radius:8px"] {
    width: 100% !important;
    max-width: 300px;
    text-align: center !important;
    padding: 14px 24px !important;
  }

  section[style*="padding:80px 0"],
  section[style*="padding:70px 0"],
  section[style*="padding:60px 0"] {
    padding: 40px 0 !important;
  }

  section h2[style*="font-weight:700"] { font-size: 1.4rem !important; }

  .data-solutions-main-sec { gap: 10px !important; }
  .data-solutions-main-sec .data-solutions-cells {
    flex: 0 0 calc(50% - 5px) !important;
    padding: 20px 14px !important;
  }
  .data-solutions-cells h4 { font-size: 0.8rem !important; }
  .data-solutions-img { width: 44px !important; height: 44px !important; }
  .data-solutions-img img { width: 36px !important; height: 36px !important; }

  #grid .col-lg-3 { flex: 0 0 50% !important; max-width: 50% !important; }
  #grid .col-lg-3 > a > div, #grid .col-lg-3 > div {
    min-height: auto !important;
    padding: 20px 16px !important;
  }
  #grid h3 { font-size: 0.85rem !important; }
  #grid p {
    font-size: 12px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .tools-cells { padding: 16px !important; }
  .tools-cells h5 { font-size: 0.9rem !important; }
  .tools-cells p { font-size: 12.5px !important; }

  .why-choose_service { padding: 24px 20px !important; margin-bottom: 16px; }

  section[style*="background:#f8f9ff"] .col-lg-3 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px;
  }

  div[style*="border-radius:20px"][style*="padding:36px 28px"] {
    padding: 28px 20px !important;
  }

  table[style*="border-collapse:collapse"] th,
  table[style*="border-collapse:collapse"] td {
    font-size: 12px !important;
    padding: 10px 12px !important;
    white-space: nowrap;
  }

  button[style*="padding:20px 24px"] { padding: 14px 16px !important; font-size: 13.5px !important; }
  div[style*="padding:0 24px 20px"] { padding: 0 16px 16px !important; font-size: 13px !important; }

  li[style*="border-bottom:1px solid #f0f0f0"] { font-size: 13.5px !important; padding: 10px 0 !important; }

  .col-lg-8[style*="font-size:16px"] { font-size: 15px !important; }
  .col-lg-8[style*="font-size:16px"] h2 { font-size: 1.3rem !important; }
  .col-lg-8[style*="font-size:16px"] h3 { font-size: 1.1rem !important; }

  section[style*="background:#6c47ff"][style*="text-align:center"] { padding: 40px 0 !important; }
  section[style*="background:#6c47ff"] h2 { font-size: 1.4rem !important; }

  .footer-main { padding: 40px 0 24px !important; }
  .footer-main .col-lg-4 { margin-bottom: 24px; }
  .footer-header { flex-direction: column; gap: 16px; margin-bottom: 24px; }

  #cookieConsent {
    flex-direction: column !important;
    gap: 12px;
    padding: 12px !important;
    bottom: 8px !important; left: 8px !important; right: 8px !important;
  }
  #cookieConsent p { font-size: 12px !important; }

  .login-main-cells { display: none !important; }
  .ss_login_box { padding: 28px 20px !important; }
  .order_1 { order: 1 !important; }
  .order_2 { order: 2 !important; }

  #enterprise-contact > div > div > div > div { padding: 24px 16px !important; }

  .stats-bar-sec .stat-number,
  div[style*="font-size:2rem"][style*="font-weight:700"] { font-size: 1.5rem !important; }

  div[style*="display:flex"][style*="gap:24px"][style*="margin-bottom:28px"] {
    gap: 12px !important; flex-wrap: wrap; justify-content: center;
  }
  div[style*="background:rgba(255,255,255,.15)"][style*="padding:16px 28px"],
  div[style*="background:rgba(255,255,255,.1)"][style*="padding:16px 28px"] {
    padding: 12px 20px !important;
  }
  div[style*="background:#f0edff"][style*="padding:32px"],
  div[style*="background:#f8f9fa"][style*="padding:32px"] {
    padding: 20px !important; margin-bottom: 16px;
  }
}

@media (max-width: 480px) {
  section[style*="linear-gradient(135deg,#6c47ff"] h1 { font-size: 1.35rem !important; }

  .data-solutions-main-sec .data-solutions-cells { padding: 16px 10px !important; }
  .data-solutions-cells h4 { font-size: 0.75rem !important; }

  #grid .col-lg-3 { flex: 0 0 50% !important; max-width: 50% !important; }

  .tool-cells-main-scroll .col-lg-6 { flex: 0 0 100% !important; max-width: 100% !important; }

  div[style*="font-size:2.2rem"] { font-size: 1.5rem !important; }

  .ss_login_box { padding: 20px 16px !important; }
  .authFiled .form-control { padding: 10px 14px !important; font-size: 14px !important; }
}

@supports not (gap: 16px) {
  .d-flex.gap-16 > * { margin-right: 16px; }
  .d-flex.gap-16 > *:last-child { margin-right: 0; }
  .d-flex.gap-3 > * { margin-right: 12px; }
  .d-flex.gap-3 > *:last-child { margin-right: 0; }
}

input, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select { -webkit-appearance: menulist !important; appearance: menulist !important; }

input[type="text"], input[type="email"], input[type="password"], textarea {
  -webkit-border-radius: 10px;
}

@supports (-webkit-touch-callout: none) {
  .login-main-section { min-height: -webkit-fill-available; }
}

@-moz-document url-prefix() {
  html { scrollbar-width: thin; scrollbar-color: #c4c4c4 #f1f1f1; }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .tools_logo img, .data-solutions-img img { image-rendering: -webkit-optimize-contrast; }
}

@media (max-height: 500px) and (orientation: landscape) {
  .login-main-section { min-height: auto; padding: 20px 0; }
  section[style*="linear-gradient(135deg,#6c47ff"], .hero-section { padding: 32px 0 !important; }
}

@media print {
  .ss_header, .footer-main, #cookieConsent, .stats-bar-sec,
  .signup-button-header, .password-toggle, .navbar-toggler { display: none !important; }
  body { font-size: 12px !important; color: #000 !important; }
  a { color: #000 !important; text-decoration: underline; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  [data-aos] { opacity: 1 !important; transform: none !important; }
}
