/* Wspólna warstwa dostępności — WCAG 2.2 AA / VoiceOver */
.skip-link{
  position:fixed;
  z-index:10000;
  top:12px;
  left:12px;
  transform:translateY(-160%);
  padding:12px 16px;
  border:2px solid currentColor;
  border-radius:8px;
  background:#fff;
  color:#161b26;
  font:700 16px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.skip-link:focus{ transform:translateY(0); outline:3px solid #1769e0; outline-offset:3px; }

.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid #1769e0!important;
  outline-offset:3px!important;
}

main:focus{ outline:none; }
[id]{ scroll-margin-top:88px; }
input::placeholder,textarea::placeholder{ opacity:.75; }
[aria-invalid="true"]{ border-color:#a40000!important; box-shadow:0 0 0 2px rgba(164,0,0,.18)!important; }

@media (pointer:coarse){
  :where(button,input[type="button"],input[type="submit"],.btn,.pill,.open-full){ min-height:44px; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto!important; }
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
}

@media (forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{ outline:3px solid CanvasText!important; }
  .skip-link{ border:2px solid CanvasText; }
}
