*,
*::after,
*::before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

body {
  display: flex;
  flex-wrap: wrap;
  place-content: center;
  height: 100dvh;
  background-color: black;
  overflow: hidden;
}

:root {
  --custom-box-shadow: 0 0 20px 0 #0008;
  --custom-box-shadow-inset: 0 0 20px 0 #0008;
  --current-black: #36322f;
  --radar-container-bg: #36322f;
}

.radar-container {
  --space-v: 2vw;
  width: 50vw;
  height: 35vw;
  position: absolute;
  border-radius: 1136px 1136px 1136px 1136px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 3vw;
  box-shadow: var(--custom-box-shadow-inset);
  background-color: var(--radar-container-bg);
  filter: drop-shadow(0 0 50px #000);



  .radar {
    --space-v1: calc(var(--space-v) + 0.1vw);
    --space-v2: calc(var(--space-v) + 0.2vw);
    width: 100%;
    height: 100%;
    background-color: var(--current-black);
    border-radius: inherit;
    background: repeating-linear-gradient(to right,
        transparent 0 var(--space-v),
        #0f0 var(--space-v1) var(--space-v1),
        #0f0 var(--space-v2) var(--space-v2)),
      repeating-linear-gradient(to top,
        transparent 0 var(--space-v),
        #0f0 var(--space-v1) var(--space-v1),
        #0f0 var(--space-v2) var(--space-v2)),
      black;
    box-shadow: var(--custom-box-shadow);


    .circulin {
      --current-color: #f008;
      --w-and-h: 1vw;
      width: var(--w-and-h, 1vw);
      height: var(--w-and-h, 1vw);
      border-radius: 50%;
      background-color: #fff;
      position: absolute;
      top: 50%;
      left: 70%;
      z-index: 50;
      transform: translate(-50%, -50%);
      box-shadow: 0 0 8px 4px var(--current-color), 0 0 16px 8px var(--current-color), 0 0 32px 16px var(--current-color), 0 0 64px 32px var(--current-color), 0 0 128px 64px var(--current-color);
      animation: agrandar 1s linear alternate infinite;
      visibility: visible;
      opacity: 1;
      transition: opacity .4s ease, visibility .4s ease;

      &.hidden {
        visibility: hidden;
        opacity: 0;
      }
    }
  }

  .wrap-btn {
    position: absolute;
    top: 91%;
    left: 50%;
    width: 14vw;
    height: 5vw;
    z-index: 50;
    transform: translateX(-50%);
    background-color: var(--radar-container-bg);
    border-radius: 0 0 999px 999px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .5vw;

    button {
      width: 2vw;
      height: 2vw;
      border-radius: 50%;
      border: none;
      outline: none;
      box-shadow: #000000 -2px 3px 5px, #ffffff40 -3px 4px 3px inset;
      transition: box-shadow .5s ease;

      &:active {
        box-shadow: #00000030 -3px 4px 20px inset, #00000030 2px -2px 20px inset;
      }
    }

    .btn-1 {
      background-color: #f00;
    }

    .btn-2 {
      background-color: #ff0;
    }

    .btn-3 {
      background-color: #0ff;
    }
  }

  @media (width <=1000px) and (orientation: portrait) {
    transform: translate(-50%, -50%) scale(1.5);

    .radar {
      .circulin {
        box-shadow: 0 0 8px 4px var(--current-color), 0 0 16px 8px var(--current-color), 0 0 32px 16px var(--current-color);
      }
    }
  }

  @media (width <=1000px) and (orientation: landscape) {
    transform: translate(-50%, -50%) scale(0.7);

    .radar {
      .circulin {
        box-shadow: 0 0 8px 4px var(--current-color), 0 0 16px 8px var(--current-color), 0 0 32px 16px var(--current-color);
      }
    }
  }
}

.background-pattern {
  width: 100%;
  position: absolute;
  z-index: -1;
  pointer-events: none;
  background-size: 22vw;
  height: 100dvh;
  background-image: url('assets/pattern.avif');
  top: 0;
}


@keyframes agrandar {
  0% {
    transform: scale(.5);
  }

  50% {
    transform: scale(1);
  }

  100% {
    transform: scale(.5);
  }
}