@charset "UTF-8";





.menu-form {
  display: none;
  /*--not-exp: calc(1 - var(--exp));*/
  place-self: end center;
  position: relative;
  position: fixed;
  right: 5px;
  top: 35%;
  transform: translateY(-50%);
  font: 1em/2 ubuntu, trebuchet ms, sans-serif;
  text-align: center;
  text-transform: capitalize;
  z-index: 10;
}
@media screen and (max-width: 960px) {
    .menu-form {
  display: grid;}
}
.menu-form > * {
  grid-area: 1/1;
  place-self: center;
}

.menu-form input, .menu-form label {
  cursor: pointer;
}

.menu-form input {
  z-index: 2;
  width: 2em;
  height: 2em;
  opacity: 0;
}

.menu-form label {
  display: grid;
  grid-template-columns: 2em;
  place-content: center;
  overflow: hidden;
  width: calc(2em*(1 + 1.5*var(--not-exp)));
  border-radius: 2em;
  background: rgba(0, 0, 0, .5);
  color: #ffffff;
  transition: width 0.3s 0.15s, background-color 0.3s calc(var(--not-exp)*0.3s);
}
.menu-form label::before, .menu-form label::after, .menu-form label span {
  grid-area: 1/1;
  place-self: center;
}
.menu-form label::before, .menu-form label::after {
  --i: 0;
  z-index: 1;
  width: 2px;
  height: 1em;
  border-radius: 2px;
  transform: rotate(calc(var(--i)*90deg + var(--exp)*135deg));
  background: #ffffff;
  transition: all 0.3s cubic-bezier(0.32, -0.85, 0.68, 1.85) calc(var(--exp)*0.3s);
  content: "";
  opacity: calc(1 - var(--not-exp));
  position: relative;
}
.menu-form label::after {
  --i: 1 ;
}

.menu-form span {
  transform: translatey(calc(var(--exp)*1em));
  opacity: var(--not-exp);
  transition: transform 0.3s, opacity 0.3s;
  transition-delay: calc(var(--not-exp)*0.3s);
}

.menu-form nav, .✨ {
  --k: var(--vis, 0);
}
[aria-expanded=true] ~ nav, [aria-expanded=true] ~ .✨ {
  --vis: 1 ;
}

.menu-form nav {
  display: var(--vis, none);
  position: absolute;
  top: 50%;
  right: calc(100% + 0.5rem);
  border-right: solid 0.5em red;
  border-image: conic-gradient( from -135deg at 100% 50%, transparent, rgba(0,0,0,.5) 4deg 86deg, transparent 90deg ) 9;
  padding: 0 2em;
  transform: translateY(-50%);
  opacity: var(--exp);
  background: linear-gradient(#333333 0px, transparent 0) 50% -0.5px/80% calc(100%/var(--n)) repeat-y padding-box rgba(0, 0, 0, .5);
  /*background: rgba(0, 0, 0, .5);*/
  transition: 0.3s calc(var(--not-exp)*0.6s);
  animation: vis calc(var(--vis)*0.3s);
}

@keyframes vis {
  0% {
    opacity: 0;
    clip-path: inset(0 0 0 100%);
  }
  100% {
    opacity: 1;
    clip-path: inset(0);
  }
}
.menu-form a {
  --dt: calc((1 - (var(--i) + 1)/var(--n))*0.3s);
  display: block;
  transform: translatey(calc(var(--not-exp)*37%));
  opacity: var(--exp);
  color: #ffffff;
  font-size: 1em;
  line-height: 2.75;
  white-space: nowrap;
  text-decoration: none;
  transition: transform 0.3s, opacity 0.3s;
  transition-delay: var(--dt);
  animation: mov calc(var(--vis)*0.3s) var(--dt) backwards;
}

@keyframes mov {
  0% {
    transform: translatey(-37%);
    opacity: 0;
  }
  100% {
    transform: none;
    opacity: 1;
  }
}
.✨ {
  z-index: -1;
  padding: var(--r);
  border-radius: 50%;
  animation: exp calc(var(--vis)*1.5*0.3s) ease-out 0.3s both;
  opacity: calc(1 - var(--not-exp));
}

@keyframes exp {
  0% {
    transform: rotate(var(--a)) translatey(calc(.5*(2px + -1*2em))) scale(0);
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(var(--a)) translatey(-2em) scale(1) rotate(1turn);
    opacity: 0;
  }
}
.🔴 {
  box-shadow: inset 0 0 0 2px #f7d15a;
}

.🔺 {
  background: #f7d15a;
  clip-path: polygon(100% 50%, 25% 93.3012701892%, 25% 6.6987298108%, 100% 50%, calc(50% + (50% - 4px)*1) calc(50% - (50% - 4px)*0), calc(50% + (50% - 4px)*-0.5) calc(50% - (50% - 4px)*0.8660254038), calc(50% + (50% - 4px)*-0.5) calc(50% - (50% - 4px)*-0.8660254038), calc(50% + (50% - 4px)*1) calc(50% - (50% - 4px)*0));
}