.bar {
  --gap: 15px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--gap);
  height: var(--bar-height);
  padding: 0 var(--content-inset);
  overflow: hidden;
}

.bar-symbols {
  position: relative;
  flex: none;
  width: 28px;
  height: 28px;
}

.bar-symbol {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 0.2s ease, transform 0.3s var(--spring);
}

.bar-symbol.is-active {
  opacity: 1;
  transform: none;
}

.bar-name {
  font-size: 26px;
  line-height: var(--bar-height);
  font-weight: 400;
  letter-spacing: -0.015em;
  white-space: nowrap;
}

.bar-caret {
  display: inline-block;
  width: 2px;
  height: 1.15em;
  margin-left: 2px;
  border-radius: 1px;
  vertical-align: -0.14em;
  background: var(--label);
  animation: blink 1.1s steps(1) infinite;
}

.bar-role {
  margin-left: auto;
  padding-left: var(--gap);
  font-size: 15px;
  color: var(--tertiary-label);
  white-space: nowrap;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}

@media (max-width: 600px) {
  .bar {
    --gap: 10px;
  }

  .bar-symbols {
    width: 26px;
    height: 26px;
  }

  .bar-name {
    font-size: 21px;
  }

  .bar-role {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bar-symbol {
    transition: none;
  }

  .bar-caret {
    animation: none;
  }
}
