/* Shared mobile baseline for Gsteeze31 lab pages */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  overflow-x: hidden;
  padding-bottom: env(safe-area-inset-bottom);
}

button,
a,
[role="button"],
input,
select,
textarea {
  touch-action: manipulation;
}

.lab-nav-safe {
  padding-top: env(safe-area-inset-top);
}

.page-x {
  padding-left: max(1rem, env(safe-area-inset-left));
  padding-right: max(1rem, env(safe-area-inset-right));
}

@media (min-width: 640px) {
  .page-x {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

/* Horizontal scroll tables — momentum scroll on iOS */
.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

.table-scroll > table {
  min-width: 640px;
}

/* Subtle scroll hint on small screens */
@media (max-width: 639px) {
  .table-scroll-hint {
    position: relative;
  }
  .table-scroll-hint::after {
    content: 'Swipe →';
    position: absolute;
    top: 8px;
    right: 8px;
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #52525b;
    pointer-events: none;
    z-index: 5;
  }
}

/* Touch-friendly tap targets */
.tap-target {
  min-height: 44px;
  min-width: 44px;
}

@media (max-width: 639px) {
  .mob-hide { display: none !important; }
  .mob-stack { flex-direction: column !important; align-items: stretch !important; }
  .mob-w-full { width: 100% !important; }
  .mob-text-sm { font-size: 0.875rem !important; }
  .mob-shrink-stat .mono { font-size: 1.5rem !important; }

  /* Prevent iOS zoom on focus */
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea {
    font-size: 16px;
  }

  .table-scroll td.mono,
  .table-scroll .mono {
    word-break: break-all;
    overflow-wrap: anywhere;
  }
}

.mono-break {
  word-break: break-all;
  overflow-wrap: anywhere;
}

/* Hide horizontal scrollbar noise while keeping scroll */
.scroll-x-tabs {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.scroll-x-tabs::-webkit-scrollbar { display: none; }