/* Mobile / tablet — cała strona WWW (alika27.com) */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

html,
body {
  overflow-x: clip;
  max-width: 100%;
}

@media (max-width: 1023px) {
  main .sc-page-wrap,
  main .narrow-container,
  header .sc-page-wrap,
  header .narrow-container,
  footer .sc-page-wrap,
  footer .narrow-container {
    padding-left: max(16px, env(safe-area-inset-left, 0px));
    padding-right: max(16px, env(safe-area-inset-right, 0px));
  }
}

@media (max-width: 767px) {
  main.shooting-range-main {
    padding-top: 7rem;
  }

  /* Ukryj duplikaty React po załadowaniu API */
  main .sc-page-wrap > [data-sc-suppressed='1'],
  main .narrow-container > [data-sc-suppressed='1'],
  #sc-arsenal-root [data-sc-suppressed='1'],
  #sc-cennik-root [data-sc-suppressed='1'] {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Rezerwacja Next.js — tabela terminów */
  main .overflow-x-auto {
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
  }

  main table {
    max-width: 100%;
  }
}

/* Filtry arsenału — przewijanie poziome na wąskich ekranach */
.sc-filter-scroll {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

@media (max-width: 767px) {
  .sc-filter-scroll {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 6px;
    margin-left: -4px;
    margin-right: -4px;
    padding-left: 4px;
    padding-right: 4px;
    scrollbar-width: thin;
  }

  .sc-filter-scroll > button {
    flex-shrink: 0;
  }

  #sc-arsenal-root h1 {
    font-size: 1.875rem !important;
    line-height: 1.2;
  }

  #sc-arsenal-root h4 {
    font-size: 1.15rem;
    word-break: break-word;
  }

  #sc-arsenal-root .p-6 {
    padding: 1rem;
  }
}
