@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=block');
@import url('https://fonts.googleapis.com/css2?family=League+Gothic&display=block');

* {
  margin: 0;
}

button {
  padding: 0;
  background: none;
  border: none;
  color: white;
  cursor: pointer;
}

body {
  height: 100vh;
  display: flex;
  flex-flow: column;
  overflow: hidden;
  background: #0f0f0f;
  font-family: 'Roboto', Arial, sans-serif;
  color: white;
}

/* header */

  header {
    height: 56px;
    display: flex;
    align-items: center;
  }

  #menu-button {
    height: 100%;
    padding: 0 24px;
    display: flex;
    align-items: center;
  }

  #title {
    flex: 1;
    font-family: 'League Gothic', Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;
    user-select: none;
  }

  #github {
    height: 100%;
    padding: 0 24px;
    display: flex;
    align-items: center;
  }

/* main */

  main {
    flex: 1;
    display: flex;
    overflow: hidden;
  }

  /* menu */

    #menu {
      width: 216px;
      padding: 12px;
      display: flex;
      flex-flow: column;
      gap: 12px;
    }

    /* menu-item */

      .menu-item, .file-item {
        height: 40px;
        padding-left: 12px;
        margin-right: 12px;
        display: flex;
        align-items: center;
        font-size: 14px;
        border-radius: 10px;
        user-select: none;
      }

      .menu-item:hover, .file-item:hover {
        background: rgba(255, 255, 255, 0.1);
      }

      .menu-item:active, .file-item:active {
        background: rgba(255, 255, 255, 0.2);
      }

      .menu-item-icon, .file-item-icon {
        margin-right: 24px;
      }

    #menu > hr {
      height: 1px;
      border: 0;
      background: #3f3f3f;
    }

    /* file-item */

      .file-item {
        font-size: 12px;
        cursor: pointer;
      }

      .file-item-active {
        height: 100%;
        display: flex;
        align-items: center;
        flex: 1;
      }

      .active-file-item {
        background: rgba(255, 255, 255, 0.2);
        font-weight: 500;
      }

      .active-file-item:hover {
        background: rgba(255, 255, 255, 0.2);
      }

      .file-item-dates {
        white-space: nowrap;
      }

      .file-item-delete {
        height: 100%;
        padding: 0 12px;
        display: none;
        border-radius: 10px;
      }

      .file-item:hover > .file-item-delete {
        display: block;
      }

      .file-item-delete:hover {
        background: rgba(255, 255, 255, 0.1);
      }

  /* browse */

    #browse {
      height: 100%;
      overflow-y: auto;
      overflow-x: hidden;
      padding: 0 24px;
      display: grid;
      grid-template-columns: repeat(auto-fill, 210px);
      flex: 1;
      justify-content: center;
      gap: 24px 4px;
    }

    /* video */

      .video {
        width: 210px;
      }

      .thumbnail {
        object-fit: cover;
      }

      a {
        text-decoration: none;
        color: white;
      }

      .title {
        display: block;
        font-size: 14px;
        line-height: 20px;
        font-weight: 500;
      }

      .channel {
        font-size: 12px;
        font-weight: 400;
        line-height: 20px;
        color: #aaaaaa;
      }

      .channel:hover {
        color: white;
      }
