/* Accessibility: Skip link — hidden off-screen, visible only on focus */
.skip-link {
  position: absolute;
  top: -9999px;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  background: #06b6d4;
  color: #fff;
  padding: 12px 20px;
  z-index: 10000;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 0 0 8px 0;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.skip-link:focus {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  clip-path: none;
  white-space: normal;
}

/* Accessibility: Focus styles — only show on keyboard tab navigation */
*:focus {
  outline: none !important;
  box-shadow: none !important;
}
*:focus-visible {
  outline: 2px solid rgba(6, 182, 212, 0.4) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}
*:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}

/* Ensure minimum touch targets on web */
button,
[role="button"],
a[href],
input[type="submit"],
input[type="button"] {
  min-height: 44px;
}
