body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
  background-color: #C3F2FF;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}
.tab-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #032146;
  color: #fff;
  border-radius: 0 0 20px 20px;
  overflow: hidden;
  width: 28em;
  height: 8em;
  padding: 0 0.85em 0.5em;
}
.tab-button {
  all: unset;
  flex-grow: 1;
  padding: .5em;
  border: none;
  background: none;
  color: inherit;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 10;
  transition: transform 0.5s ease-in-out;
}
.tab-button:after {
  content: attr(data-text);
  font-size: .9em;
  pointer-events: none;
  transition: opacity .3s ease-in-out;
  opacity: 0;
}
.tab-button.active::after {
  opacity: 1;
  padding-left: 0.5em;
  pointer-events: all;
}

.indicator {
  position: absolute;
  width: 6.5em;
  height: 3.5em;
  left: 0;
  background-color: rgba(255, 255, 255, 0.1);
  color: #fff;
  transform: translateX(0);
  transition: transform 0.5s;
  border-radius: 12px;
}