.u-display-flex {
  display: flex !important;
}

.u-display-block {
  display: block !important;
}

.u-display-none {
  display: none !important;
}

.u-visibility-visible {
  visibility: visible !important;
}

.u-visibility-hidden {
  visibility: hidden !important;
}

.u-opacity-1 {
  opacity: 1 !important;
}

.u-opacity-0 {
  opacity: 0 !important;
}

.u-overflow-hidden {
  overflow: hidden !important;
}

.u-pointer-events-auto {
  pointer-events: auto !important;
}

.u-pointer-events-none {
  pointer-events: none !important;
}

.u-position-fixed {
  position: fixed !important;
}

.u-z-index-max {
  z-index: var(--z-max) !important;
}

.u-z-index-10 {
  z-index: 10 !important;
}

.home-control-bar-visible {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: var(--z-sticky) !important;
}

.home-fullscreen-exit-btn-visible {
  display: flex !important;
  position: fixed !important;
  z-index: var(--z-max) !important;
  top: 20px !important;
  right: 20px !important;
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.home-game-loading-hidden {
  display: none !important;
}

.home-game-overlay-visible {
  display: flex !important;
}

.home-game-iframe-container-visible {
  display: block !important;
}

.home-video-thumbnail-hidden {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.home-youtube-iframe-visible {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.home-video-message {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--color-overlay-dark);
  color: var(--color-text-primary);
  padding: 2rem;
  text-align: center;
  border-radius: 1rem;
  z-index: var(--z-base);
}

.home-error-message {
  font-size: var(--font-size-lg);
  margin-bottom: 1rem;
}

.home-error-retry-btn {
  margin-top: 1rem;
}

.home-toc-list-show {
  display: block !important;
}

.home-toc-list-hide {
  display: none !important;
}

.home-browser-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  z-index: var(--z-fullscreen);
  background: var(--color-bg);
}

.home-game-iframe {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 1rem;
}

.u-cursor-pointer {
  cursor: pointer !important;
}

.home-video-message-content {
  max-width: 500px;
}

.home-video-message-title {
  margin-bottom: 1rem;
  font-size: var(--font-size-2xl);
}

.home-error-icon {
  font-size: var(--font-size-lg);
  margin-bottom: 1rem;
}
