.content__viewer {
  @extend .card;
  position: absolute;
  top: var(--spacing-s);
  border-radius: var(--border-radius);
}

.content__viewer--mobile {
  border-radius: 0;
  position: fixed;
  top: var(--header-height-mobile);
}

.content__viewer--disable-click {
  pointer-events: none;
}

.content__viewer--inline {
  max-height: var(--inline-player-max-height);
  border: none;

  @media (max-width: $breakpoint-small) {
    max-height: var(--mobile-player-max-height);
  }
}

.content__viewer--secondary {
  .vjs-button--theater-mode {
    display: none;
  }
}

.content__viewer--floating {
  position: fixed;
  margin-bottom: 0;
  height: calc(var(--floating-viewer-height) + var(--floating-viewer-info-height));
  overflow: hidden;
  top: 0;
  z-index: 9999;

  border: 2px solid black;
  // file-viewer__overlay-secondary autoplay-countdown__counter

  .file-render--video {
    border-radius: unset;
  }

  &:hover {
    .video-js--tap-to-unmute {
      max-width: calc(var(--floating-viewer-width) - (var(--spacing-xs) * 3) - 42px);
    }

    .content__floating-close {
      visibility: visible;
      z-index: 9999;
    }
  }

  @media (max-width: $breakpoint-small) {
    height: 50px;
    width: 80px;
    top: 3px;
    left: calc(50% - 40px);
    transform: unset !important;
    border: unset;

    .vjs-current-time {
      display: none !important;
    }

    .content__wrapper--floating {
      width: 100%;
      height: 100%;

      .content__floating-close {
        visibility: visible !important;
        display: inline;
        position: fixed;
        top: 12px;
        left: calc(50% + 80px - 32px);
        height: 32px;
        width: 32px;
        background-color: rgba(var(--color-primary-static), 0.6) !important;
        border-radius: 50%;
        .button__content {
          justify-content: center;

          .icon {
            flex-shrink: 0;
            // width:20px;
          }
        }
      }

      .autoplay-countdown {
        display: none;
      }
    }

    .vjs-control-bar {
      display: inline-block !important;
      opacity: 1 !important;

      &::before {
        background: unset !important;
      }
    }

    .vjs-control {
      display: none;
    }

    .vjs-play-control {
      transform: unset !important;
      display: none !important;
      position: fixed !important;
      top: 12px !important;
      left: calc(50% - 80px) !important;
      height: 32px !important;
      width: 32px !important;
      background-color: rgba(var(--color-primary-static), 0.6) !important;
      border-radius: 50% !important;
      opacity: 1 !important;
      pointer-events: unset !important;
      padding: 15px !important;

      .vjs-icon-placeholder {
        font-size: 1.2rem !important;
      }

      span {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 100;
        &::before {
          line-height: 32px !important;
        }
      }
      .vjs-control-text {
        display: none !important;
      }
    }

    .vjs-play-control.vjs-playing {
      .vjs-icon-placeholder::before {
        content: '' !important;
      }
    }

    .vjs-play-control.vjs-paused {
      .vjs-icon-placeholder::before {
        content: '' !important;
      }
    }

    .vjs-play-control.vjs-ended {
      .vjs-icon-placeholder::before {
        content: '' !important;
      }
    }

    .vjs-progress-control {
      top: 32px;
      .vjs-slider {
        margin: 0 !important;
        div,
        span {
          height: 2px !important;
        }
      }
    }

    .content__info {
      margin-top: -50px;
      opacity: 0;
      .button--uri-indicator {
        display: none;
      }
    }
  }
}

.content__viewer--theater-mode {
  top: 0;
  border-radius: 0;
  border: none;
  right: 0;
  // Next line is fixing the player width
  width: unset !important;
  .file-render--video {
    border-radius: 0;
  }
}

.content__wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: black;
  border-radius: var(--border-radius);
}

.content__wrapper--floating {
  height: var(--floating-viewer-height);
  width: var(--floating-viewer-width);

  .vjs-button--theater-mode {
    display: none;
  }

  .video-js--tap-to-unmute {
    max-width: calc(var(--floating-viewer-width) - (var(--spacing-xs) * 2));

    .icon {
      width: 24px;
      height: 24px;
      min-width: 24px;
    }
  }

  .content__info {
    .claim-preview__title {
      .button {
        width: 100%;
        .button__label {
          display: inline-block;
        }
        &:hover {
          color: var(--color-primary);
        }
      }
    }
  }
}

.content__actions {
  visibility: hidden;
  display: flex;

  .button {
    @extend .button--close;
    height: 1.5rem;
    top: 0;
    position: relative;
    margin-left: var(--spacing-s);

    svg {
      color: var(--color-white);
    }
  }
}

.content__floating-close {
  visibility: hidden;
  position: absolute;
  top: 8px;
  right: 8px;
  width: 42px;
  height: 42px;
  padding: 10px;
  background-color: rgba(var(--color-primary-dynamic), 0.95) !important;

  .icon {
    width: 24px;
    height: 24px;
  }

  &:hover {
    background-color: rgba(var(--color-primary-dynamic), 1) !important;
  }
}

.content__floating-link {
  color: var(--color-text);
}

.content__floating-close {
  z-index: 3; /*must be one higher than .file-viewer__overlay */
}

.content__info {
  cursor: grab;
  padding: var(--spacing-s);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  white-space: nowrap;
  background-color: var(--color-header-background-transparent);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.content__cover {
  @include thumbnail;
  position: relative;
  display: flex;
  align-items: center;
  border-radius: var(--border-radius);
  justify-content: center;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 100%;
  max-height: var(--inline-player-max-height);
  margin: auto;

  &:not(.card__media--nsfw) {
    background-color: #000; // solid black to blend nicely when the video starts (if it doesn't take the full width)
  }

  &:hover {
    cursor: pointer;
  }

  &:-webkit-full-screen {
    width: 100%;
    height: 100%;
  }

  @media (max-width: $breakpoint-small) {
    border-radius: 0;
    border: none;
    margin: 0;
    max-height: var(--mobile-player-max-height);
  }
}

.content__cover--text {
  margin: 10rem 0;
}

.content__cover--theater-mode {
  @extend .content__cover;
  border-radius: 0;
}

.content__cover--none {
  @include thumbnail;
  cursor: default;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: auto;

  &:-webkit-full-screen {
    width: 100%;
    height: 100%;
  }
}

.content__cover--disabled {
  pointer-events: none;
  .nag {
    /* boo fire Jeremy */
    pointer-events: auto;
  }
  &:after {
    content: '';
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
  }
}

.content__loading {
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding: 0 var(--spacing-l);
  background-color: #000;

  &.content__loading--document {
    background-color: var(--color-background);
    padding: calc(var(--spacing-xl) * 5) 0;

    .content__loading-text {
      color: var(--color-text);
    }
  }
}

.content__loading-text {
  color: var(--color-white);
}

.content__non-clickable {
  pointer-events: none;
}