/* assets/css2/fixes/97_android_perf.css
   Android-only: prioritize INSTANT FIRST PAINT (text + layout)
   Rules:
   - No JS changes
   - No HTML edits required
   - Do NOT break mobile nav / hamburger
*/

/* Android (coarse pointer) + not iOS Safari */
@media (hover: none) and (pointer: coarse) {
  @supports not (-webkit-touch-callout: none) {

    /* 1) Avoid smooth scroll overhead */
    html { scroll-behavior: auto !important; }

    /* 2) HARD STOP: prevent "blank screen / text arrives in waves"
       Force immediate paint for document + main content only (not header/nav). */
    html, body {
      visibility: visible !important;
      opacity: 1 !important;
      -webkit-text-size-adjust: 100%;
    }

    main, .pageMain, .siteMain,
    .wrapper, .container,
    .hero, .heroGrid, .heroText,
    section, .panel {
      visibility: visible !important;
      opacity: 1 !important;
      transform: none !important;
    }

    /* If a loading/preload class is hiding content, neutralize it (content only) */
    body.is-loading main,
    body.loading main,
    body.preload main,
    body.is-loading .pageMain,
    body.loading .pageMain,
    body.preload .pageMain,
    body.is-loading .siteMain,
    body.loading .siteMain,
    body.preload .siteMain {
      visibility: visible !important;
      opacity: 1 !important;
      transform: none !important;
    }

    /* 3) IMPORTANT: avoid staged rendering on Android
       If content-visibility:auto is used anywhere, it can feel like "waves".
       Force visible for main sections/cards (do NOT apply to nav/header). */
    main, section, .panel, .productGrid, .cardGrid {
      content-visibility: visible !important;
      contain-intrinsic-size: auto !important;
      contain: none !important;
    }

    /* 4) Reduce perceived wave: remove transition delay (NOT killing all transitions) */
    main *, .pageMain *, .siteMain *,
    section *, .panel * {
      transition-delay: 0s !important;
    }

    /* 5) Text rendering stability */
    body {
      text-rendering: optimizeLegibility;
      -webkit-font-smoothing: antialiased;
    }

    /* 6) Keep images stable (no quality change) */
    img {
      height: auto;
      display: block;
      image-rendering: auto;
    }

    /* 7) Reduce tap latency feel */
    a, button { touch-action: manipulation; }

    /* 8) NAV SAFETY: do not interfere with menu open/close logic */
    header *, nav *, .siteHeader *, .navInner *, .navLinks *,
    .hamburger *, .hamburgerBtn * {
      content-visibility: revert !important;
      contain: revert !important;
      transform: revert !important;
      transition-delay: revert !important;
      animation: revert !important;
    }

    /* 9) Optional: keep overscroll stable */
    body { overscroll-behavior: none; }
  }
}
