/* about cube  */
.cube {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-style: preserve-3d;
  animation: rotateCube 15s linear infinite;
  transition: transform 0.8s ease;
}

.cube.expanded {
  animation-play-state: paused;
}

/* Rotate cube continuously */
@keyframes rotateCube {
  from { transform: translate(-50%, -50%) rotateX(0deg) rotateY(0deg); }
  to   { transform: translate(-50%, -50%) rotateX(360deg) rotateY(360deg); }
}

.face {
  position: absolute;
  width: 220px;
  height: 220px;
  background: rgba(100,150,255,0.8);
  border: 2px solid #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 50px;
  color: #fff;
  cursor: pointer;
  transition: transform 0.8s ease;
}

/* Default cube faces */
#face-front  { transform: rotateY(0deg) translateZ(110px); }
#face-back   { transform: rotateY(180deg) translateZ(110px); }
#face-right  { transform: rotateY(90deg) translateZ(110px); }
#face-left   { transform: rotateY(-90deg) translateZ(110px); }
#face-top    { transform: rotateX(90deg) translateZ(110px); }
#face-bottom { transform: rotateX(-90deg) translateZ(110px); }

/* Unfold cube faces on hover */
.cube.expanded #face-front  { transform: rotateY(0deg) translateZ(220px); }
.cube.expanded #face-back   { transform: rotateY(180deg) translateZ(220px); }
.cube.expanded #face-right  { transform: rotateY(90deg) translateZ(220px); }
.cube.expanded #face-left   { transform: rotateY(-90deg) translateZ(220px); }
.cube.expanded #face-top    { transform: rotateX(90deg) translateZ(220px); }
.cube.expanded #face-bottom { transform: rotateX(-90deg) translateZ(220px); }

/* Cube modal styling */
.cube-modal {
  display: none;
  position: fixed;
  z-index: 2000;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.6);
  justify-content: center;
  align-items: center;
}

.cube-modal.show { display: flex; }

.cube-modal-content {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  max-width: 320px;
  width: 90%;
  text-align: center;
  position: relative;
}

.cube-close {
  position: absolute;
  top: 10px; right: 15px;
  font-size: 22px;
  cursor: pointer;
  color: #333;
}
.scene {
  width: 240px;  /* match cube size */
  height: 240px;
  margin: auto;
  perspective: 1000px; /* keeps cube depth stable */
  position: relative;
}


/* mobile css */
