/* Wrapper da missão (fica em cima do tapete) */
.m1-gangorra-wrap{
  position:absolute;
  inset:0; /* ocupa o mesmo espaço do tapete dentro do container */
  pointer-events:none; /* libera clique no tapete, exceto nos elementos interativos */
}

/* Área branca alvo (AJUSTE para bater com sua imagem recortada) */
#m1-alvo-branco{
  position:absolute;
  top: 87.2%;
  left: 6.8%;
  width: 9.4%;
  height: 3.0%;

  background: rgba(255,255,255,0.70);

  /* ✅ borda real, entra no rect */
  border: 0.22vw solid rgba(255,255,255,0.95);
  box-sizing: border-box;

  box-shadow: 0 0 0.9vw rgba(255,255,255,0.35);

  pointer-events:none;
}

#m1-alvo-branco.m1-alvo-ok{
  background: rgba(0,255,0,0.35);

  /* ✅ borda real no ok */
  border-color: rgba(0,255,0,0.95);

  box-shadow: 0 0 1.2vw rgba(0,255,0,0.40);
}



/* Gangorra */
#m1-gangorra{
  position:absolute;
  /* EXEMPLO: ajuste fino para a gangorra na área verde */
  top: 84.5%;
  left: 11.5%;
  width: 18.0%;
  height: 6.0%;
  transform: translate(-50%, -50%) scale(0.5);
  pointer-events:none;
}

/* Pivô */
.m1-pivo{
  position:absolute;
  left: 50%;
  top: 50%;
  width: 1.2vw;
  height: 1.2vw;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: rgba(20,20,20,0.85);
  outline: 0.25vw solid rgba(255,255,255,0.25);
}

/* Viga */
#m1-viga{
  position:absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 0.9vw;
  transform-origin: 50% 50%;
  transform: translate(-50%, -50%) rotate(0deg);
  border-radius: 0.6vw;
  background: rgba(15, 90, 40, 0.9); /* verde escuro para visual */
}

/* Pontas (usadas para colisão) */
.m1-ponta{
  position:absolute;
  top: 50%;
  width: 1.8vw;
  height: 1.8vw;
  transform: translateY(-50%);
  border-radius: 0.4vw;
  background: rgba(10,10,10,0.75);
  outline: 0.25vw solid rgba(255,255,255,0.25);
}
.m1-ponta-esq{ left: -0.6vw; }
.m1-ponta-dir{ right: -0.6vw; }

/* Controle (slider vertical) */
#m1-controle{
  position:absolute;
  top: 85%;
  left: 4%;
  width: 4.2vw;     /* maior */
  height: 12vw;     /* maior */

  transform: translate(-50%, -50%) scale(0.6); /* menos “encolhido” */
  border-radius: 1.1vw;

  /* Mais contraste */
  background: rgba(0,0,0,0.72);
  outline: 0.28vw solid rgba(255,255,255,0.45);

  /* Sombra para “saltar” do tapete */
  box-shadow:
    0 0.8vw 1.4vw rgba(0,0,0,0.35),
    0 0 0.9vw rgba(255,255,255,0.10);

  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-direction:column;
  gap: 0.6vw;

  pointer-events:auto;
  user-select:none;
  touch-action:none;

  /* Feedback */
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}

#m1-controle:hover{
  transform: translate(-50%, -50%) scale(0.7);
  box-shadow:
    0 1.0vw 1.6vw rgba(0,0,0,0.40),
    0 0 1.1vw rgba(255,255,255,0.16);
}


#m1-knob{
  width: 3.0vw;
  height: 3.0vw;
  border-radius: 1.0vw;

  background: rgba(255,255,255,0.95);
  outline: 0.22vw solid rgba(0,0,0,0.25);

  box-shadow:
    0 0.6vw 1.0vw rgba(0,0,0,0.25),
    0 0 0.8vw rgba(255,255,255,0.20);

  margin-top: 0.8vw;

  cursor: grab;
}

#m1-controle:active #m1-knob{
  cursor: grabbing;
  transform: scale(0.98);
}

.m1-controle-label{
  position: absolute;

  /* 🔥 CONTROLE DE ALTURA DA LABEL */
  top: -2.6vw;      /* sobe a label (aumente para subir mais) */
  left: 50%;
  transform: translateX(-50%);

  font-size: 1.0vw;
  font-weight: 800;
  letter-spacing: 0.04em;

  color: rgba(255,255,255,0.95);

  /* cápsula */
  background: rgba(0,0,0,0.75);
  padding: 0.3vw 0.8vw;
  border-radius: 1.2vw;
  outline: 0.18vw solid rgba(255,255,255,0.25);

  /* legibilidade */
  text-shadow: 0 0.25vw 0.45vw rgba(0,0,0,0.65);
  white-space: nowrap;

  pointer-events: none;
  user-select: none;
}



