
/* NMRON.PL • PRELAUNCH POLISH 18.0
   Warstwa finalnego szlifu przed reklamą.
   Bez zmiany logiki danych, płatności, CRON i transportu. */

html{
  scroll-behavior:smooth;
  scroll-padding-top:84px;
  scroll-padding-bottom:100px;
}
body{
  overflow-x:clip;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img,video,canvas,svg{max-width:100%}
button,a,input,select,textarea{font:inherit}
button,a,[role="button"]{-webkit-tap-highlight-color:transparent}

:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid rgba(91,220,255,.88)!important;
  outline-offset:3px!important;
  border-radius:8px;
}

/* Czytelniejsze cele dotykowe bez przebudowy layoutu. */
@media (pointer:coarse){
  .icon-btn,
  .apex-icon-btn,
  .top-actions button,
  .mobile-menu-head button,
  .portal-modal-close,
  button[data-close-mobile-menu]{
    min-width:44px!important;
    min-height:44px!important;
  }
}

/* Modale zawsze w realnym viewport i nad zawartością. */
.portal-modal,
.mobile-menu,
.command-palette,
.notifications-center{
  max-height:100dvh;
}
.portal-modal-panel,
.mobile-menu-panel{
  max-height:calc(100dvh - max(20px, env(safe-area-inset-top)) - max(20px, env(safe-area-inset-bottom)))!important;
  overscroll-behavior:contain;
}
.portal-modal-panel{
  margin-top:max(10px,env(safe-area-inset-top));
  margin-bottom:max(10px,env(safe-area-inset-bottom));
}

/* Stabilizuje przewijanie i ogranicza skoki układu obrazów dynamicznych. */
.nm15-lead-link,
.nm15-feed-card,
.gallery-card,
.place-card,
.article-card{
  content-visibility:auto;
  contain-intrinsic-size:1px 260px;
}

/* Footer i ostatnie elementy nie chowają się pod stałym paskiem LIVE. */
.site-footer,
.facebook-follow-zone{
  scroll-margin-bottom:110px;
}

/* Lepszy kontrast drobnych tekstów na najważniejszych ekranach. */
.nm15-home small,
.topbar small,
.site-footer small{
  text-wrap:pretty;
}

/* Ruch ograniczony dla użytkowników, którzy tego wymagają. */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}
