/* The only J-Man styles allowed in the host application. */
.jman-host-overlay {
  position: fixed;
  z-index: 1080;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(0.5rem, 2vw, 1.5rem);
  background: rgba(4, 10, 18, 0.78);
  backdrop-filter: blur(7px);
  opacity: 0;
  transition-property: opacity;
  transition-duration: 180ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}

.jman-host-overlay.is-open { opacity: 1; }
.jman-host-overlay.is-fullscreen { padding: 0; background: #07131f; backdrop-filter: none; }

.jman-host-frame {
  width: min(76rem, 100%);
  height: min(52rem, 100%);
  min-height: min(34rem, 100%);
  overflow: hidden;
  border: 1px solid rgba(174, 251, 245, 0.22);
  border-radius: 22px;
  background: #07131f;
  box-shadow: 0 28px 100px rgba(0, 0, 0, 0.54), 0 0 0 1px rgba(2, 7, 13, 0.35);
  transform: translateY(8px) scale(0.985);
  transition-property: transform;
  transition-duration: 220ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}

.jman-host-overlay.is-open .jman-host-frame { transform: translateY(0) scale(1); }
.jman-host-overlay.is-fullscreen .jman-host-frame { width: 100vw; height: 100vh; min-height: 0; border-width: 0; border-radius: 0; box-shadow: none; transform: none; }

.jman-host-frame iframe { display: block; width: 100%; height: 100%; border: 0; background: #07131f; }

@media (max-width: 680px) {
  .jman-host-overlay { padding: 0; }
  .jman-host-frame { width: 100%; height: 100%; min-height: 0; border-width: 0; border-radius: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .jman-host-overlay, .jman-host-frame { transition-duration: 0.01ms; }
}
