.mimic-wrapper {
  overflow: auto;
  overscroll-behavior: none;
  position: relative;
}
.mimic-wrapper .mimic {
  background-color: white;
  background-repeat: no-repeat;
  position: absolute;
  transform-origin: left top;
}
.mimic-wrapper .mimic .comp {
  box-sizing: border-box;
  line-height: normal;
  position: absolute;
}
.mimic-wrapper .mimic .comp.text .text-content {
  overflow: hidden;
}
.mimic-wrapper .mimic .comp.picture .picture-content {
  background-clip: content-box;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
}
.mimic-wrapper .mimic .comp.panel {
  background-color: inherit;
}

.mimic-wrapper.view-mode .mimic .comp.invisible-state {
  display: none;
}
.mimic-wrapper.view-mode .mimic .comp.disabled-state {
  pointer-events: none;
}
.mimic-wrapper.view-mode .mimic .comp.has-action {
  cursor: pointer;
}
.mimic-wrapper.view-mode .mimic .comp.wait-action {
  cursor: wait !important;
}

.mimic-wrapper.edit-mode {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: default;
}
.mimic-wrapper.edit-mode .mimic {
  box-shadow: 0 0 0 1px var(--bs-gray-500);
}
.mimic-wrapper.edit-mode .mimic .comp::before {
  content: "";
  inset: var(--border-width, 0);
  position: absolute;
}
.mimic-wrapper.edit-mode .mimic .comp.selected::before {
  box-shadow: 0 0 0 3px lime;
}
.mimic-wrapper.edit-mode .mimic .comp:not(.selected):hover::before {
  box-shadow: 0 0 0 1px var(--bs-gray-500);
}
.mimic-wrapper.edit-mode .mimic .comp.fiction-border::before {
  border: 1px dashed var(--bs-gray-600);
}
.mimic-wrapper.edit-mode .mimic .comp.picture.blank .picture-content {
  background-image: url("../images/picture-blank.svg");
}
.mimic-wrapper.edit-mode .mimic .comp.faceplate .comp:hover::before {
  box-shadow: none;
}
