<input type="checkbox" id="trick">
<div class="content">
  <div class="equalizer">
    <input type="range" id="eqz" value="0" autocomplete="off" max="100" onclick="document.body.style.setProperty('--eqz', this.value);" oninput="document.body.style.setProperty('--eqz', this.value);">
    <div class="number"></div>
  </div>
</div>
<label for="trick">TRICK</label>
<ul>
  <li>
    <a href="https://codepen.io/josetxu/full/oNQxxyZ" target="_top">Curved</a>
  </li>
  <li>
    <a href="https://codepen.io/josetxu/full/MWzyZzX" target="_top" class="selected">Ovoid</a>
  </li>
  <li>
    <a href="https://codepen.io/josetxu/full/poQymMX" target="_top">Recurved</a>
  </li>
</ul>
@import url('https://fonts.googleapis.com/css2?family=Gochi+Hand&display=swap');

:root {
  --sz: 1vmin;
  --bg-trick: #fff0;
  --eqz: 0;
} 

*, *:before, *:after {
  box-sizing: border-box;
  transition: all 0s ease 0s;
  font-family: 'Gochi Hand', Arial, serif;
}

body {
  margin: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #3a3d44, #3b3e45, #383b42);
}

body:before, body:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: 
    repeating-conic-gradient(#0002 0.000095%, #fff0 .0005%, #fff0 .005%, #fff0 .0005%), 
    repeating-conic-gradient(#0002 0.00001%, #fff0 .00009%, #fff0 .00075%, #fff0 .000025%);
  opacity: 0.75;
  filter: blur(0.75px);
  z-index: -1;
}

.content {
  position: relative;
  width: calc(var(--sz) * 50);
  height: calc(var(--sz) * 20);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: calc(var(--sz) * 20);
}

.content:before, .content:after {
  content: "";
  position: absolute;
  width: calc(var(--sz) * 23.5);
  height: calc(var(--sz) * 17);
  border: var(--sz) solid #ffffff;
  border-radius: 80% 40% 40% 80% / 60% 60% 60% 60%;
  top: calc(var(--sz) * 1.1);
  left: calc(var(--sz) * 2.5);
  transform: rotate(0deg);
  transform-origin: 0 0;
  z-index: -5;
  clip-path: polygon(0 30%, 0 0, 100% 0, 100% 100%, 0 100%, 0 70%, 10% 65%, 15% 45%);
}

.content:after {
  border-color: #0006;
  top: calc(var(--sz) * 1.5);
  left: calc(var(--sz) * 2.5);
  filter: blur(2px);
  z-index: -6;
}


.equalizer {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.equalizer:before, .equalizer:after {
  content: "";
  --ss: #fff;
  background: radial-gradient(#fff0 calc(var(--sz) * 2.6), var(--ss) calc(calc(var(--sz) * 2.6) + 1px));
  width: calc(var(--sz) * 7);
  position: absolute;
  height: calc(var(--sz) * 7);
  border-radius: 100%;
  left: calc(var(--sz) * -1);
  top: calc(var(--sz) * 6.3);
  z-index: -5;
}

.equalizer:after {
  --ss: #0006;
  filter: blur(2px);
  left: calc(var(--sz) * -0.5);
  top: calc(var(--sz) * 6.5);
  z-index: -6;
}


/* Range Styles */

input[type='range'] {
  width: 100%;
  height: calc(var(--sz) * 3);
  position: absolute;
  background: var(--bg-trick);
  --bg-thumb: radial-gradient(#ff3a3a calc(var(
    --sz) * 2.35), #fff0 0 100%);
  --bs-thumb: 0 0 0px calc(var(
    --sz) * 0.5) #3a3d44 inset;
  transform: rotate(calc(var(--eqz) * 1.8125deg));
  transform-origin: 50% 50%;
  filter: hue-rotate(calc(var(--eqz) * -2.25deg));
}

input[type='range']:focus,
input[type=range]:focus::-webkit-slider-runnable-track {
  outline: none;
}

input[type='range'],
input[type='range']::-webkit-slider-runnable-track,
input[type='range']::-webkit-slider-thumb {
  -webkit-appearance: none;
}


/*** Range Thumb***/

input[type=range]::-webkit-slider-thumb {
  width: calc(var(--sz) * 5);
  height: calc(var(--sz) * 5);
  border-radius: calc(var(--sz) * 5);
  cursor: pointer;
  margin-top: calc(var(--sz) * -1);
  background: var(--bg-thumb);
  box-shadow: var(--bs-thumb);
}

input[type=range]::-moz-range-thumb {
  width: calc(var(--sz) * 5);
  height: calc(var(--sz) * 5);
  border-radius: calc(var(--sz) * 5);
  cursor: pointer;
  margin-top: calc(var(--sz) * -1);
  background: var(--bg-thumb);
  box-shadow: var(--bs-thumb);
}


/*** Range Track ***/

input[type=range]::-webkit-slider-runnable-track {
  background: #fff0;
  height: calc(var(--sz) * 3.5);
}

input[type=range]::-moz-range-track {
  background: #fff0;
  height: calc(var(--sz) * 3.5);
}


/*** Number ***/

.number {
  position: absolute;
  bottom: calc(var(--sz) * 14);
  left: calc(var(--sz) * 7);
  color: #fff;
  font-size: calc(var(--sz) * 8);
  z-index: 333;
  font-family: 'Alarm Clock', Arial, serif;
  transform: rotate(-3deg);
  text-shadow: calc(var(--sz) * 0.25) calc(var(--sz) * 0.25) calc(var(--sz) * 0.25) #0008;
}

.number:before {
  counter-reset: variable var(--eqz);
  content: counter(variable);
  position: absolute;
  text-align: center;
  width: calc(var(--sz) * 15);
  overflow: hidden;
}




/*** Trick ***/

#trick {
  display: none;
}

label[for=trick] {
  font-size: calc(var(--sz) * 3.5);
  position: absolute;
  bottom: calc(var(--sz) * 10);
  --cc: #fff;
  color: var(--cc);
  cursor: pointer;
  text-shadow: calc(var(--sz) * 0.25) calc(var(--sz) * 0.25) calc(var(--sz) * 0.25) #0008;
}

#trick:checked + .content {
  --bg-trick: #fff2;
}

label[for=trick]:hover {
  --cc: #2196F3;
} 

label[for=trick]:before {
  content: "SHOW";
  margin-right: var(--sz);
}

input#trick:checked ~ label[for=trick] {
  color: var(--cc);
}

input#trick:checked ~ label[for=trick]:before {
  content: "HIDE";
}




input[type='range']:before, input[type='range']:after {
  content: "this is the range input";
  position: absolute;
  right: calc(var(--sz) * 4.25);
  font-size: calc(var(--sz) * 1.75);
  color: #0000;
  z-index: -1;
  top: calc(var(--sz) * -0.25);
}

input[type='range']:after {
  content: "slide to see the trick";
  top: calc(var(--sz) * 1.25);
  right: calc(var(--sz) * 4.25);
}



input#trick:checked + .content input[type='range']:before, 
input#trick:checked + .content  input[type='range']:after  {
  color: #0008;
}






/* Ranges Menu */
ul {
    position: absolute;
    top: calc(var(--sz) * 6);
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul li {
    display: inline-block;
    margin: calc(var(--sz) * 2);
    width: calc(var(--sz) * 7);
    height: calc(var(--sz) * 7);
    position: relative;
}

ul li a {
    display: block;
    --clr: #222;
    position: absolute;
    width: 100%;
    height: 100%;
    background: 
        radial-gradient(circle at 15% 40%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) ),
        radial-gradient(circle at 85% 37%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) );
    display: flex;
    align-items: flex-end;
    justify-content: center;
    text-decoration: none;
    color: var(--clr);
}

ul li a:before, ul li:nth-child(3) a:after {
    content: "";
    position: absolute;
    width: calc(var(--sz) * 5);
    height: calc(var(--sz) * 5);
    border: calc(var(--sz) * 0.33) solid var(--clr);
    border-radius: 155% 75%;
    top: calc(var(--sz) * 0.5);
    left: calc(var(--sz) * 1.1);
    transform: rotate(8deg);
    transform-origin: 0 0;
    clip-path: polygon(0 0, 100% 0, 100% 21%, 0 41%);
    clip-path: polygon(0 0, 100% 0, 99% 22%, 82% 28%, 20% 38%, 0 41%);
}



ul li:nth-child(2) a {
    background: 
        radial-gradient(circle at 30% 35%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) );
}

ul li:nth-child(2) a:before {
    width: calc(var(--sz) * 3.5);
    height: calc(var(--sz) * 2.5);
    border-radius: 80% 40% 40% 80% / 60% 60% 60% 60%;
    top: calc(var(--sz) * 1.15);
    left: calc(var(--sz) * 2);
    transform: rotate(0deg);
    clip-path: polygon(0 30%, 0 0, 100% 0, 100% 100%, 0 100%, 0 70%, 10% 65%, 15% 45%);
}





ul li:nth-child(3) a {
    background: 
        radial-gradient(circle at 15% 40%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) ),
        radial-gradient(circle at 50% 39%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) ),
        radial-gradient(circle at 85% 37%, #fff0 calc(var(--sz) * 0.25), var(--clr) calc(calc(var(--sz) * 0.25) + 1px) calc(var(--sz) * 0.5), #fff0 calc(calc(var(--sz) * 0.5) + 1px) );
}

ul li:nth-child(3) a:before { 
    width: calc(var(--sz) * 2.5);
    height: calc(var(--sz) * 2.5);
    top: calc(var(--sz) * 1.5);
}


ul li:nth-child(3) a:after { 
    width: calc(var(--sz) * 2.5);
    height: calc(var(--sz) * 2.5);
    top: calc(var(--sz) * 3.8);
    transform: rotate(180deg);
    transform-origin: 100% 0;
}

a.selected {
    cursor: default;
    --clr: #fff;
}

a:hover {
    --clr: #fff;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.