.player {
  .cast-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    .cast-poster {
      all: inherit;
      background-size: contain;
      background: black no-repeat center center;

      &.has-poster {
        background-color: #000;
      }
    }

    .cast-black-cover {
      all: inherit;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0) 72%, rgba(0, 0, 0, 0) 100%);
    }
  }

  .cast-box {
    .cast-icon {
      position: absolute;
      bottom: 0;
      left: 46px;
      height: 128px;

      .icon {
        width: 30px;
        height: 22px;
        color: rgba(255, 255, 255, 0.6);
        opacity: 0.6;
      }
    }

    .cast-connecting-spinner {
      height: 21px;
      width: 21px;
      -webkit-animation: spin 0.9s infinite linear;
      border: 3px solid rgba(255, 255, 255, 0.4);
      border-top-color: rgba(255, 255, 255, 0.8);
      border-radius: 100%;
    }

    .cast-text {
      position: absolute;
      bottom: 0;
      left: 89px;
      height: 128px;
      font-weight: lighter;

      .cast-status {
        display: inline-block;
        margin-top: 3px;
        font-size: 16px;
        color: rgba(255, 255, 255, 0.6);
        float: left;
        font-weight: inherit;
      }

      .cast-device {
        left: 0;
        display: inline-block;
        font-weight: inherit;
        font-size: 25px;
        color: #ffffff;
        line-height: 40px;
      }
    }
  }
}
