.world-labels {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 3;
}
.world-label,
.enemy-label {
  position: absolute;
  transform: translate(-50%, -100%);
  padding: 5px 9px;
  border-radius: 3px;
  color: #fff3cf;
  background: #14232ed9;
  border: 1px solid #dac98e44;
  font: 500 10px system-ui;
  letter-spacing: 0.04em;
  white-space: nowrap;
  box-shadow: 0 2px 10px #0004;
}
.world-label:before {
  content: "◇";
  color: #f2d791;
  margin-right: 6px;
}
.enemy-label {
  border: 0;
  background: #17252ad9;
  min-width: 65px;
  text-align: center;
  padding: 5px;
}
.enemy-label b {
  font: 500 9px system-ui;
  color: #f1d2c7;
}
.enemy-label i {
  display: block;
  height: 3px;
  background: #403632;
  margin-top: 4px;
}
.enemy-label em {
  display: block;
  height: 100%;
  background: #ed927c;
}
.world-label.objective,
.world-label.current-objective {
  color: #f7e9b9;
  border-color: #e7c77888;
  background: #1b3027e8;
  box-shadow: 0 2px 15px #ddbf7822;
}
.world-label.companion {
  color: #c8e1d5;
  border-color: #8fc9ba55;
}
.enemy-label.miniboss {
  min-width: 90px;
  border: 1px solid #c68d6155;
}
.enemy-label.boss {
  min-width: 110px;
  border: 1px solid #d8b99355;
}
.world-label .label-action {
  display: block;
  margin-top: 3px;
  font-size: 8px;
  color: #92b0a1;
}
.world-label:has(.label-action) {
  padding: 7px 10px;
}
.enemy-label i {
  height: 4px;
}
.enemy-label em {
  transition: width 0.15s;
}
.world-label,
.enemy-label {
  backdrop-filter: blur(4px);
}
@media (max-width: 600px) {
  .world-label,
  .enemy-label {
    font-size: 9px;
    padding: 4px 7px;
  }
  .enemy-label b {
    font-size: 8px;
  }
  .world-label .label-action {
    font-size: 7px;
  }
}
