.qibla-arrow {
  will-change: transform;
  transition: transform .18s ease-out;
}

.compass-qibla-target {
  position: absolute;
  z-index: 5;
  top: -8px;
  left: 50%;
  display: flex;
  align-items: center;
  flex-direction: column;
  transform: translateX(-50%);
  color: #caa048;
  pointer-events: none;
}

.compass-qibla-target b {
  display: block;
  width: 22px;
  height: 18px;
  border: 2px solid #caa048;
  background: #050505;
  box-shadow: inset 0 5px 0 #caa048, 0 0 12px rgba(202,160,72,.25);
}

.compass-qibla-target em {
  margin-top: 3px;
  padding: 1px 6px;
  background: #080808;
  color: #caa048;
  font: 800 8px/1.4 Inter,Arial,sans-serif;
  font-style: normal;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.qibla-arrow span {
  position: absolute;
  top: -8px;
  left: 50%;
  width: 14px;
  height: 14px;
  transform: translateX(-50%) rotate(45deg);
  background: #caa048;
  border: 2px solid #080808;
  box-shadow: 0 0 9px rgba(202,160,72,.5);
}

.qibla-arrow.is-aligned {
  filter: drop-shadow(0 0 8px rgba(255,215,118,.95));
}

.compass-qibla-target.is-aligned b {
  background: #caa048;
  box-shadow: inset 0 5px 0 #080808, 0 0 22px rgba(255,215,118,.95);
}

.compass-qibla-target.is-aligned em {
  color: #fff;
}

[data-enable-compass]:disabled {
  cursor: wait;
  opacity: .72;
}

[data-compass-status] {
  display: block;
  padding-left: 10px;
  border-left: 2px solid rgba(202, 160, 72, .34);
  transition: color .2s ease, border-color .2s ease;
}

[data-compass-status][data-state="active"] {
  color: #caa048;
  border-color: #caa048;
}

[data-compass-status][data-state="loading"] {
  color: #aaa;
}

[data-compass-status][data-state="warning"] {
  color: #e6bd68;
  border-color: #e6bd68;
}

[data-compass-status][data-state="aligned"] {
  color: #f2cf78;
  border-color: #f2cf78;
  font-weight: 800;
  text-shadow: 0 0 12px rgba(202,160,72,.45);
}

.compass-help {
  max-width: 390px;
  margin: 13px 0 0 !important;
  color: #777 !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
}

@media (max-width: 800px) {
  [data-compass-status] {
    display: inline-block;
    padding-left: 0;
    border-left: 0;
  }

  .compass-help {
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0 16px;
    font-size: 10px !important;
  }
}
