.code-dialog {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  border: 0;
  background-color: transparent;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 0;
  transform: translate(0, -50px);
  transition:
    opacity 0.15s linear,
    transform 0.3s ease-out;
}

.code-dialog[open] {
  opacity: 1;
  transform: none;
}

.code-dialog[open].closing {
  opacity: 0;
  transform: translate(0, -50px);
}

.code-dialog::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.15s linear;
}

.code-dialog[open]::backdrop {
  opacity: 1;
}

.code-dialog[open].closing::backdrop {
  opacity: 0;
}

@starting-style {
  .code-dialog[open] {
    opacity: 0;
    transform: translate(0, -50px);
  }

  .code-dialog[open]::backdrop {
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .code-dialog,
  .code-dialog::backdrop {
    transition: none;
  }
}
