@tailwind base;
@tailwind components;
@tailwind utilities;

.face {
    position: absolute;
    width: 200px;
    height: 200px;
    /* border: 2px solid rgba(46, 216, 195, 0.3); */
    /* background: rgba(52, 245, 232, 0.923); */
    backdrop-filter: blur(5px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: bold;
    color: #2ED8C3;
    /* box-shadow: inset 0 0 20px rgba(46, 216, 195, 0.1); */
    transition: all 0.3s ease;
  }
  
  /* Top face */
  .face-top {
    transform: rotateX(90deg) translateZ(100px);
    /* background: linear-gradient(135deg, rgb(46, 216, 196), rgba(36, 189, 240, 0.6)); */
  }
  
  /* Front/Side faces */
  .face-left {
    transform: rotateY(-90deg) translateZ(100px);
    /* background: linear-gradient(to right, rgba(55, 185, 228, 0.8), rgba(46, 216, 196, 0.721)); */
    height: 80px;
  }
  
  .face-right {
    transform: translateZ(100px);
    /* background: linear-gradient(to left, rgb(114, 220, 255), rgba(46, 216, 196, 0.841)); */
    height: 80px;
  }
  
  /* Hover effects */
  .iso-block:hover .face {
    border-color: #2ED8C3;
    /* box-shadow: inset 0 0 30px rgba(46, 216, 195, 0.3); */
  }
  
  /* .iso-block:hover .face-top {
    background: linear-gradient(135deg, rgba(46, 216, 196, 0.948), rgba(160, 229, 252, 0.8));
  } */

  .iso-block {
    position: relative;
    width: 200px;
    height: 5px;
    transform-style: preserve-3d;
    transform: rotateX(-17.8deg) rotateY(45deg);
    /* z-index: 10; */
    transition: transform 0.3s ease;
  }

  .iso-block:hover {
    /* transform: rotateX(-15deg) rotateY(45deg) translateX(-10px); */
    /* z-index: 10; */
  }

  .cube {
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
  }

  /* Specific block colors/gradients could be added here if needed */
.block-1 .face { border-color: rgb(5, 255, 226); }
.block-1 .face-top {
  background: linear-gradient(135deg, #36FFE6, #9DF9FF);
}
.block-1 .face-right {
  background: #11C2AC;
}
.block-1 .face-left {
  background: #0FAD99;
}
.block-2 .face { border-color: rgb(5, 255, 226); }
.block-2 .face-top {
  background: linear-gradient(135deg, #00B19C, #56EFF0);
}
.block-2 .face-right {
  background: #0FAD99;
}
.block-2 .face-left {
  background: #037768;
}
.block-3 .face { border-color: rgb(5, 255, 226); }
.block-3 .face-top {
  background: linear-gradient(135deg, #067063, #12D2D2);
}
.block-3 .face-right {
  background: #058776;
}
.block-3 .face-left {
  background: #085147;
}
.block-4 .face { border-color: rgb(5, 255, 226); }
.block-4 .face-top {
  background: linear-gradient(135deg, #005951, #00A9A7);
}
.block-4 .face-right {
  background: #0D5D52;
}
.block-4 .face-left {
  background: #0D3F38;
}



/* .block-2 .face { border-color: rgba(46, 216, 196, 0.649); } */
  /* .block-3 .face { border-color: rgba(46, 216, 196, 0.504); } */
  /* .block-4 .face { border-color: rgba(46, 216, 196, 0.271); } */

 

  /* Concave Hub Background Shape */
  .concave-hub-bg {
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none'%3E%3Cpath d='M30 30 Q 200 80 370 30 Q 320 200 370 370 Q 200 320 30 370 Q 80 200 30 30 Z' fill='%23052c39' stroke='none' vector-effect='non-scaling-stroke'/%3E%3Cdefs%3E%3Cfilter id='glow'%3E%3CfeGaussianBlur stdDeviation='4' result='coloredBlur'/%3E%3CfeMerge%3E%3CfeMergeNode in='coloredBlur'/%3E%3CfeMergeNode in='SourceGraphic'/%3E%3C/feMerge%3E%3C/filter%3E%3C/defs%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    filter: drop-shadow(0 0 15px rgba(46, 216, 196, 0.71));
  }

/* Corner text positioning for hub labels */
.corner-text {
  display: inline-block;
  width: 280px;
  max-width: 280px;
  white-space: normal;
  line-height: 1.35;
}
.corner-text-left {
  margin-left: -360px;
  text-align: left;
}
.corner-text-right {
  margin-right: -360px;
  text-align: left;
  margin-left: 360px;
}

/* Mobile-scaled corner text */
.corner-text-sm {
  display: inline-block;
  width: 200px;
  max-width: 200px;
  white-space: normal;
  line-height: 1.35;
}
.corner-text-left-sm {
  margin-left: -240px;
  text-align: right;
}
.corner-text-right-sm {
  margin-left: 240px;
  text-align: left;
}

