/* DMCTN HUD v1.1 - bigger, rocket moving */
.dmctn-hud {
  position: fixed;
  z-index: 999999;
  inset: auto var(--dmctn-right, 34px) var(--dmctn-bottom, 140px) auto;
  width: 96px;
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  user-select: none;
  filter: drop-shadow(0 12px 26px rgba(0,0,0,.28));
}
.dmctn-hud .hud-label{
  position:absolute;
  bottom:-30px;
  background:#111827;
  color:#fff;
  padding:6px 10px;
  border-radius:12px;
  font:700 12px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  white-space:nowrap;
  letter-spacing:.2px;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
}
.dmctn-hud .rocket{
  position: relative;
  width: 88px;
  height: 88px;
  animation: drift 3s ease-in-out infinite;
}
.dmctn-hud .rocket-svg .trail circle{ fill: rgba(255,255,255,.75); animation: twinkle 1.6s ease-in-out infinite alternate; }
.dmctn-hud .rocket-svg .flame{ transform-origin: 60px 100px; animation: flame 0.3s ease-in-out infinite; }
.dmctn-hud .rocket-svg .ship{ animation: wobble 2s ease-in-out infinite; }
.dmctn-hud .glow{
  position:absolute; inset:-12px; border-radius:14px;
  box-shadow:0 0 0 0 rgba(34,211,238,.7);
  animation: pulse 1.6s ease-out infinite;
  pointer-events:none;
}
@keyframes flame{ 0%{ transform: scaleY(1) } 50%{ transform: scaleY(1.2) } 100%{ transform: scaleY(1) } }
@keyframes wobble{ 0%,100%{ transform: rotate(-2deg) } 50%{ transform: rotate(2deg) } }
@keyframes drift{ 0%,100%{ transform: translateY(0) translateX(0) } 50%{ transform: translateY(-6px) translateX(2px)} }
@keyframes twinkle{ from{ opacity: .4 } to{ opacity: 1 } }
@keyframes pulse{
  0%  { box-shadow:0 0 0 0 rgba(34,211,238,.7); }
  70% { box-shadow:0 0 0 28px rgba(34,211,238,0); }
  100%{ box-shadow:0 0 0 0 rgba(34,211,238,0); }
}
/* Mobile */
@media (max-width:768px){
  .dmctn-hud{ width:84px; height:84px; }
  .dmctn-hud .rocket{ width:78px; height:78px; }
  .dmctn-hud .hud-label{ font-weight:700; font-size:11px; bottom:-28px; }
}
.dmctn-hud.dragging{ opacity:.9; transform:scale(.98); }
