/* V34 Tactical Turn BETA — mobile command clarity */
.v34-turn-panel{margin:10px 16px 8px;padding:13px 16px 12px;border:1px solid rgba(228,183,116,.62);border-radius:16px;background:linear-gradient(115deg,rgba(35,34,68,.98),rgba(17,47,79,.94));box-shadow:0 6px 25px rgba(10,7,36,.28);color:#f8e5cd}
.v34-turn-top{display:flex;justify-content:space-between;align-items:center;gap:10px;letter-spacing:.10em;font-size:12px}
.v34-turn-top span{color:#d6beff;font-weight:750}
.v34-turn-top strong{font-size:16px;letter-spacing:.02em;color:#ffecbf}
.v34-intent{display:flex;align-items:baseline;justify-content:flex-start;gap:8px;margin-top:8px;flex-wrap:wrap}
.v34-intent span{color:#c1b6d9;font-size:11px;white-space:nowrap}
.v34-intent b{color:#ffb8b9;font-size:15px}
.v34-intent small{color:#efe2d3;font-size:11px}
.v34-turn-panel p{font-size:11px;line-height:1.5;margin:8px 0 0;color:#d5cbe2}
.v17-warning.v34-intent-warning{border-color:rgba(241,181,119,.50);background:rgba(18,18,48,.70)}
.v17-actions button:disabled,.v17-defense button:disabled,.v17-unit:disabled{opacity:.43;filter:saturate(.42);cursor:not-allowed}
.v17-topbar .v17-titlelock small span{color:#eecfa2}
@media(max-width:380px){.v34-turn-panel{margin:8px 10px;padding:10px 12px}.v34-intent small{flex-basis:100%}}
/* Timer-based telegraph is superseded by the tactical intent panel. */
.v17-root:has(.v34-turn-panel) .v17-warning{display:none!important}

/* V34 MOTION PASS: preserve V14–V30 real combat sprite/IK motion.
   The cinematic source remains a still image: wind-up, lunge and recoil are
   CSS transform/opacity staging (not fabricated articulation). */
.v17-cine.v30-fullbody-cine.v34-motion-cine .v27-cine-character{
  animation:v34HeroAct 4.18s cubic-bezier(.21,.66,.25,1) both!important;
  will-change:transform,opacity;
}
.v17-cine.v34-motion-cine .v34-cine-orbit{
  position:absolute;z-index:1;left:50%;top:43%;width:min(84vw,64vh);aspect-ratio:1;
  border:2px solid rgba(238,192,141,.38);border-radius:50%;
  box-shadow:inset 0 0 24px rgba(121,75,208,.16);
  transform:translate(-50%,-50%) scale(.66);opacity:0;
  animation:v34Orbit 4.1s ease-in-out both;pointer-events:none;
}
.v17-cine.v34-motion-cine .v34-cine-impact{
  position:absolute;z-index:4;inset:0;pointer-events:none;opacity:0;
  background:radial-gradient(circle at 52% 38%,rgba(255,245,212,.9) 0%,rgba(233,187,248,.18) 37%,transparent 72%);
  animation:v34Impact 4.12s linear both;
}
.v17-cine.v34-motion-cine .v27-cine-panel{
  animation:v30PanelIn 4.12s both!important;
}
@keyframes v34HeroAct{
   0% {opacity:0;transform:translate(-50%,8%) scale(.72) rotate(-3deg)}
  13% {opacity:1;transform:translate(-50%,0%) scale(.96) rotate(-1deg)}
  29% {opacity:1;transform:translate(-50%,-1.1%) scale(1) rotate(0)}
  46% {opacity:1;transform:translate(-53%,1.8%) scale(.94) rotate(-3deg)}
  56% {opacity:1;transform:translate(-55%,2.3%) scale(.91) rotate(-4deg)}
  64% {opacity:1;transform:translate(-48%,-5%) scale(1.06) rotate(2deg)}
  73% {opacity:1;transform:translate(-50%,-2%) scale(1) rotate(0)}
  88% {opacity:1;transform:translate(-50%,0) scale(1.03) rotate(0)}
 100% {opacity:0;transform:translate(-50%,-1%) scale(1.05) rotate(0)}
}
@keyframes v34Orbit{
  0%,8% {opacity:0;transform:translate(-50%,-50%) scale(.62)}
  32% {opacity:.36;transform:translate(-50%,-50%) scale(.87)}
  58% {opacity:.65;transform:translate(-50%,-50%) scale(1)}
  68% {opacity:.08;transform:translate(-50%,-50%) scale(1.5)}
 100% {opacity:0;transform:translate(-50%,-50%) scale(1.6)}
}
@keyframes v34Impact{
  0%,61%,70%,100% {opacity:0}
  65% {opacity:.25}
}
@media(prefers-reduced-motion:reduce){
 .v17-cine.v30-fullbody-cine.v34-motion-cine .v27-cine-character{animation:none!important;transform:translateX(-50%) scale(1);opacity:1;will-change:auto}
 .v17-cine.v34-motion-cine .v34-cine-orbit,.v17-cine.v34-motion-cine .v34-cine-impact{display:none}
}
