/* V1.143 — a local, silent handoff from hidden locked choices into settlement reveal. */
.battle-command-state-progress {
  position: relative;
}

.battle-command-resolution-handoff .battle-command-state-progress::before,
.battle-command-resolution-handoff .battle-command-state-progress::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -2px;
  width: calc(50% - 3px);
  height: 7px;
  border-block: 1px solid rgba(255, 214, 116, 0.34);
  background: linear-gradient(90deg, transparent, rgba(255, 205, 94, 0.56));
  box-shadow: 0 0 9px rgba(255, 188, 64, 0.18);
  pointer-events: none;
}

.battle-command-resolution-handoff .battle-command-state-progress::before {
  left: 0;
  transform-origin: right center;
  animation: battle-command-resolution-left 760ms cubic-bezier(0.18, 0.74, 0.2, 1) both;
}

.battle-command-resolution-handoff .battle-command-state-progress::after {
  right: 0;
  background: linear-gradient(90deg, rgba(255, 205, 94, 0.56), transparent);
  transform-origin: left center;
  animation: battle-command-resolution-right 760ms cubic-bezier(0.18, 0.74, 0.2, 1) both;
}

.battle-command-resolution-handoff .battle-command-state-progress > i {
  animation: battle-command-resolution-pip 620ms ease-out both;
}

.battle-command-resolution-handoff .battle-command-state-emblem {
  animation: battle-command-resolution-emblem 720ms cubic-bezier(0.16, 0.82, 0.24, 1) both;
}

.battle-command-resolution-handoff .battle-command-state-copy strong {
  animation: battle-command-resolution-label 680ms ease-out both;
}

@keyframes battle-command-resolution-left {
  0% { opacity: 0; transform: translateX(-14%) scaleX(0.72); }
  44% { opacity: 1; transform: translateX(4px) scaleX(1); }
  72% { opacity: 0.88; transform: translateX(4px) scaleX(0.08); }
  100% { opacity: 0; transform: translateX(4px) scaleX(0); }
}

@keyframes battle-command-resolution-right {
  0% { opacity: 0; transform: translateX(14%) scaleX(0.72); }
  44% { opacity: 1; transform: translateX(-4px) scaleX(1); }
  72% { opacity: 0.88; transform: translateX(-4px) scaleX(0.08); }
  100% { opacity: 0; transform: translateX(-4px) scaleX(0); }
}

@keyframes battle-command-resolution-pip {
  0% { opacity: 0.64; filter: brightness(0.9); }
  48% { opacity: 1; filter: brightness(1.42); }
  100% { opacity: 1; filter: none; }
}

@keyframes battle-command-resolution-emblem {
  0% { filter: brightness(0.88); }
  46% { filter: brightness(1.34) drop-shadow(0 0 8px rgba(255, 198, 76, 0.32)); }
  100% { filter: none; }
}

@keyframes battle-command-resolution-label {
  0% { opacity: 0.72; letter-spacing: 0.02em; }
  48% { opacity: 1; letter-spacing: 0.045em; }
  100% { opacity: 1; letter-spacing: normal; }
}

body[data-vfx-quality="low"] .battle-command-resolution-handoff .battle-command-state-progress::before,
body[data-vfx-quality="low"] .battle-command-resolution-handoff .battle-command-state-progress::after {
  display: none;
}

body[data-vfx-quality="low"] .battle-command-resolution-handoff .battle-command-state-progress > i,
body[data-vfx-quality="low"] .battle-command-resolution-handoff .battle-command-state-emblem,
body[data-vfx-quality="low"] .battle-command-resolution-handoff .battle-command-state-copy strong {
  animation: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .battle-command-resolution-handoff .battle-command-state-progress::before,
  .battle-command-resolution-handoff .battle-command-state-progress::after {
    display: none;
  }

  .battle-command-resolution-handoff .battle-command-state-progress > i,
  .battle-command-resolution-handoff .battle-command-state-emblem,
  .battle-command-resolution-handoff .battle-command-state-copy strong {
    animation: none !important;
  }
}

@media (forced-colors: active) {
  .battle-command-resolution-handoff .battle-command-state-progress::before,
  .battle-command-resolution-handoff .battle-command-state-progress::after {
    border-color: Highlight;
    background: Highlight;
    box-shadow: none;
  }
}
