/* 1.5.5 — header identity light, independent of the poster motion button.
   Paint-only effects preserve the matched title widths and fixed header height. */
.compact-header .nav-links>.header-sparkle-setting {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: #dfc991;
  font: inherit;
  font-family: Arial, "Noto Sans KR", sans-serif;
  text-align: left;
  cursor: pointer;
}
.compact-header .nav-links>.header-sparkle-setting:hover,
.compact-header .nav-links>.header-sparkle-setting:focus-visible { color: #fff0c5; }
.compact-header #asoyMini070 .asoy-letter-glint {
  width: clamp(8px, .34em, 11px);
  height: clamp(8px, .34em, 11px);
  margin: 0;
  translate: -50% -50%;
  background: radial-gradient(circle, #fffef4 0 12%, #ffe5a0b3 25%, transparent 68%);
  filter: drop-shadow(0 0 2px #ffdda4);
  animation: header-letter-glint 3.8s ease-in-out infinite;
  animation-delay: var(--header-glint-delay, 0s);
  opacity: .08;
}
.compact-header #asoyMini070.on .asoy-letter-glint {
  animation-play-state: running !important;
}
@keyframes header-letter-glint {
  0%, 12%, 78%, 100% { opacity: .08; transform: scale(.55) rotate(-8deg); }
  42% { opacity: 1; transform: scale(1.1) rotate(0); }
  62% { opacity: .22; transform: scale(.72) rotate(8deg); }
}
.compact-header #asoyMini070 .asoy-mini-text {
  color: #efc66d;
  animation: header-title-light 4.8s ease-in-out infinite;
}
.compact-header #asoyMini070.on .asoy-mini-text { animation-play-state: running !important; }
@keyframes header-title-light {
  0%, 12%, 100% { text-shadow: 0 1px 3px #4b3000, 0 0 6px #ffdc8044; }
  48% { text-shadow: 0 1px 3px #4b3000, 0 0 10px #ffe5a699; }
}
.compact-header #asoyMini070:not(.on) .asoy-letter-glint,
.compact-header #asoyMini070:not(.on) .asoy-mini-text,
.compact-header #asoyMini070.on.title-motion-paused .asoy-letter-glint,
.compact-header #asoyMini070.on.title-motion-paused .asoy-mini-text { animation-play-state: paused !important; }

/* Respect the device accessibility preference, with a readable static gold title. */
@media (prefers-reduced-motion: reduce) {
  .compact-header #asoyMini070 .asoy-letter-glint { display: none; animation: none; }
  .compact-header #asoyMini070 .asoy-mini-text { animation: none; background: none; color: #f1cf82; }
}

/* Explicit opt-in overrides only the small branding lights, not page motion.
   :where keeps visibility/pause guards more specific than these declarations. */
html:where([data-brand-sparkle="on"]) .brand .mark::before {
  animation: y-seal-glint 3.8s ease-in-out infinite !important;
}
html:where([data-brand-sparkle="on"]) .compact-header #asoyMini070 .asoy-letter-glint {
  display: block;
  animation: header-letter-glint 3.8s ease-in-out infinite !important;
  animation-delay: var(--header-glint-delay, 0s) !important;
}
html:where([data-brand-sparkle="on"]) .compact-header #asoyMini070 .asoy-mini-text {
  color: #efc66d;
  animation: header-title-light 4.8s ease-in-out infinite !important;
}
html:where([data-brand-sparkle="off"]) .brand .mark::before {
  animation: none !important;
  opacity: .65;
  transform: scale(.85) rotate(8deg);
}
html:where([data-brand-sparkle="off"]) .compact-header #asoyMini070 .asoy-letter-glint { display: none; animation: none !important; }
html:where([data-brand-sparkle="off"]) .compact-header #asoyMini070 .asoy-mini-text {
  animation: none !important;
  background: none;
  color: #f1cf82;
}
@media (forced-colors: active) {
  html:where([data-brand-sparkle]) .compact-header #asoyMini070 .asoy-letter-glint { display: none; animation: none !important; }
  html:where([data-brand-sparkle]) .compact-header #asoyMini070 .asoy-mini-text { animation: none !important; background: none; color: CanvasText; }
}
