/* Fill gaps in keyboard feedback without changing completed component styling. */
:where(a, button, input, textarea, select, [role="button"]):focus-visible {
  outline:3px solid #007bff !important;
  outline-offset:4px;
}
[id] { scroll-margin-top:110px; }
.pw-unavailable { cursor:default; }
.pw-unavailable .lc-card-link { color:#666; }
/* Small interaction cues for the shared templates; no dimensions change. */
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine) {
  body.pathways-motion :where(.hl-card,.cl-card,.pl-card,.bl-card,.hl-cat-card,.wu-compare-card,.lc-card,.rs-card,.rd-card) {
    transition:translate 220ms ease,box-shadow 220ms ease;
  }
  body.pathways-motion :where(.hl-card,.cl-card,.pl-card,.bl-card,.hl-cat-card,.wu-compare-card,.lc-card,.rs-card,.rd-card):hover {
    translate:0 -3px;
    box-shadow:0 8px 22px rgba(0,15,38,.1);
  }
  body.pathways-motion :where(.btn,.hl-btn,.pw-btn,.ct-submit,.rd-cf-submit):not([aria-disabled="true"]) {
    transition:filter 180ms ease,box-shadow 180ms ease;
  }
  body.pathways-motion :where(.btn,.hl-btn,.pw-btn,.ct-submit,.rd-cf-submit):not([aria-disabled="true"]):hover {
    filter:brightness(.96);
    box-shadow:0 4px 12px rgba(0,15,38,.12);
  }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto !important; }
  body.pathways-motion :where([data-pw-motion],.btn,.hl-btn,.pw-btn,.ct-submit,.rd-cf-submit) {
    transition:none !important;
  }
}
@media (prefers-reduced-motion:no-preference) {
  .pw-ux-button { transition:box-shadow .2s ease, filter .2s ease; }
  .pw-ux-button:hover { filter:brightness(.96); box-shadow:0 4px 12px rgba(0,16,37,.12); }
}
