/* Zyrenicus front-page mobile usability hardening v1.50.0.
 * The established ornate panel system remains intact. This layer only removes
 * effects or secondary controls that become costly or cramped on small screens.
 */

@media (max-width: 480px), (hover: none) and (pointer: coarse) {
  #dwFrontpage :is(a, button, [role="button"], input, select, textarea, summary) {
    -webkit-tap-highlight-color: rgba(255, 214, 140, 0.16);
  }

  #dwFrontpage :is(.dw-btn, .dw-filter, .dw-chevron, .dw-modal-close, .dw-info-modal-close) {
    min-height: 44px;
  }

  #dwFrontpage :is(.dw-shelfTrack, .dw-filters, .dw-modal-content) {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }

  #dwFrontpage .dw-noise,
  #dwFrontpage .dw-filters::after {
    display: none !important;
  }

  #dwFrontpage :is(.dw-card, .dw-panel, .dw-spotlightCard, .dw-updateRow, .dw-modal-panel) {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* Keep secondary metadata legible on phones without enlarging primary cards. */
  #dwFrontpage :is(.dw-spotlight, .dw-updateRow) .dw-pill,
  #dwFrontpage .dw-spotlight .dw-stat .k {
    font-size: 0.6875rem;
  }
}

@media (max-width: 360px) {
  #dwFrontpage .dw-shelfDots {
    display: none !important;
  }

  #dwFrontpage .dw-shelfNavBar {
    justify-content: space-between;
  }
}

@media (orientation: landscape) and (max-height: 480px) and (max-width: 920px) {
  #dwFrontpage #dwHeroCanvas,
  #dwFrontpage .dw-noise {
    display: none !important;
  }

  #dwFrontpage .dw-modal-content {
    padding-bottom: max(0.75rem, env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  #dwFrontpage *,
  #dwFrontpage *::before,
  #dwFrontpage *::after {
    scroll-behavior: auto !important;
  }
}
