/* Labels remain available through the buttons' accessible names and live status. */
.office-hotspot > span {
  display: none;
}
.office-cursor {
  position: fixed;
  left: 0;
  top: 0;
  width: 44px;
  height: 44px;
  z-index: 200;
  pointer-events: none;
  filter: drop-shadow(0 2px 2px #091811a0);
}
.office-cursor svg {
  display: none;
  width: 44px;
  height: 44px;
}
.office-cursor[data-cursor="robot"] [data-cursor-icon="robot"],
.office-cursor[data-cursor="terminal"] [data-cursor-icon="terminal"],
.office-cursor[data-cursor="pen"] [data-cursor-icon="pen"],
.office-cursor[data-cursor="logic"] [data-cursor-icon="logic"] {
  display: block;
}
@media (any-hover: hover) and (any-pointer: fine) {
  .office-hotspot.cursor-active {
    cursor: none;
  }
}
.cursor-terminal-caret {
  animation: cursor-caret 1s steps(1, end) infinite;
}
.cursor-logic-trace {
  stroke-dasharray: 14 8;
  animation: cursor-logic 2s linear infinite;
}
.cursor-logic-node {
  animation: cursor-node 1.4s ease-in-out infinite alternate;
}
.cursor-robot-eyes {
  animation: cursor-eyes 2.6s ease-in-out infinite alternate;
}
.cursor-pen-filament {
  animation: cursor-node 1s ease-in-out infinite alternate;
}
@keyframes cursor-caret {
  0%,
  52% {
    opacity: 1;
  }
  53%,
  100% {
    opacity: 0;
  }
}
@keyframes cursor-logic {
  to {
    stroke-dashoffset: -22;
  }
}
@keyframes cursor-node {
  to {
    opacity: 0.35;
  }
}
@keyframes cursor-eyes {
  to {
    transform: translateX(-1.5px);
  }
}
@media print {
  .office-cursor {
    display: none;
  }
}
