/* Acknowledge clicks without blocking controls or delaying navigation. */
:where(a[href], button:not(:disabled), summary):active { filter: brightness(.9); }
[data-hk-pending] {
  cursor: progress !important;
  opacity: .65;
  outline: 2px solid #4666ff;
  outline-offset: 3px;
}
html[data-hk-navigating]::before {
  content: '';
  position: fixed;
  inset: 0 0 auto;
  height: 3px;
  z-index: 2147483647;
  pointer-events: none;
  background: linear-gradient(90deg, #4666ff, #92a4ff, #4666ff);
  background-size: 200% 100%;
  animation: hk-page-progress 1.1s linear infinite;
}
.hk-page-feedback {
  position: fixed;
  z-index: 2147483646;
  top: max(76px, calc(env(safe-area-inset-top) + 16px));
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  width: max-content;
  max-width: calc(100vw - 32px);
  box-sizing: border-box;
  margin: 0;
  padding: 12px 16px;
  border: 1px solid #dbe1f2;
  border-radius: 14px;
  background: #fff;
  color: #202538;
  box-shadow: 0 5px 24px #1c285226;
  font: 600 14px/1.5 "Pretendard Variable", Pretendard, sans-serif;
  pointer-events: none;
}
.hk-page-feedback[hidden] { display: none; }
.hk-feedback-spinner {
  display: inline-block;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  border: 2px solid #dbe1f2;
  border-top-color: #4666ff;
  border-radius: 50%;
  animation: hk-feedback-spin .8s linear infinite;
}
.hk-page-feedback[data-stalled] .hk-feedback-spinner { display: none; }
@keyframes hk-page-progress { to { background-position: -200% 0; } }
@keyframes hk-feedback-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  html[data-hk-navigating]::before, .hk-feedback-spinner { animation: none; }
}
