.media-session {
  display: grid;
  position: relative;
  width: 100%;
  height: 100%;

  .horizontal & {
    grid-template-columns: var(--config-item-size) 1fr;
  }

  .vertical & {
    grid-template-rows: var(--config-item-size) 1fr;
  }

  .media-session-blurred-thumbnail-container {
    position: absolute;
    overflow: hidden;
    width: 100%;
    height: 100%;

    .media-session-blurred-thumbnail {
      width: 100%;
      height: 100%;
      object-fit: fill;
      filter: blur(10px) brightness(125%) contrast(125%);
    }
  }

  .media-session-thumbnail-container {
    position: relative;
    width: 100%;
    height: 100%;

    .media-session-thumbnail {
      width: 100%;
      height: 100%;
      object-fit: contain;
      background: #0004;
    }

    .media-session-app-icon {
      position: absolute;
      width: 25%;
      aspect-ratio: 1/1;
      right: 5%;
      bottom: 5%;
      object-fit: contain;
    }
  }

  .media-session-info {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    padding: 4px;

    .media-session-title {
      letter-spacing: 0.3px;
      line-height: 1.3em;
      font-size: 0.7rem;
      font-weight: 600;
      text-overflow: ellipsis;
      white-space: nowrap;
      overflow: hidden;
      max-width: 100%;
      margin-bottom: 2px;
      margin-right: -2px;

      &.media-session-title-default {
        text-align: center;
        white-space: normal;
      }

      .vertical & {
        display: none;
      }
    }

    .media-session-actions {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 2px;

      .vertical & {
        flex-direction: column;
        gap: 12px;
      }

      .ant-btn {
        color: inherit !important;
        height: 16px;
      }
    }
  }
}
