@import "@/styles/mixins.scss";
@import "@/styles/variables.scss";

$size-height-navbar: 80px;

@mixin link() {
  color: $B3 !important;
  &:hover {
    color: #FFF !important;
  }
}

.body {
  color: $M1;
  background: linear-gradient(93.72deg, #2F2C54 -4.02%, #2D2A50 1.61%, #1B1A30 59.29%, #10101C 104.3%, #0C0C14 136.66%);
}

.cta_button {
  @include transition();
  padding: 8px 20px;
  padding-left: calc(20px + 0.5em);
  //text-indent: 0.5em;
  letter-spacing: 0.5em;
  color: #000;
  background-color: $M1;
  border: 1px solid $M1;
  border-radius: 4px;
  &:hover {
    color: $M1;
    background-color: transparent;
  }
}

.navbar {
  @include transition();
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 99999;
  background: linear-gradient(93.72deg, #2F2C54 -4.02%, #2D2A50 1.61%, #1B1A30 59.29%, #10101C 104.3%, #0C0C14 136.66%);
  &_non_transparent {
    background: transparent;
  }
  &_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: $size-height-navbar;
  }
  &_start {
    display: flex;
    align-items: center;
    &_logo {
      &_tidb {
        margin-left: 16px;
      }
    }
    //&_logo {
    //  &:hover {
    //    background-color: transparent;
    //  }
    //}
  }
  &_end {
    display: flex;
    align-items: center;
    list-style: none;
    &_link {
      @include transition();
      @include on-mobile() {
        display: none;
      }
      border-bottom: 2px solid rgba(#1F9CDB, 0);
      a {
        display: block;
        color: #FFFFFF;
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        //line-height: 24px;
        padding: 10px 24px;
      }
      &_selected, &:hover {
        border-bottom: 2px solid #1F9CDB;
        a {
          color: #1F9CDB;
        }
      }
    }
    &_button {
      margin-left: 24px;
      a {
        letter-spacing: 0;
        padding: 8px 20px !important;
      }
    }
  }
}

.header {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-left: 16px;
  padding-right: 16px;
  background-image: url("./banner_background.png");
  background-repeat: no-repeat;
  background-position: center;
  @include on-mobile() {
    background-size: contain;
  }
  //background-color: #000;
  //overflow: hidden;
  //&_background {
  //  position: absolute;
  //  text-align: center;
  //  video {
  //    overflow: hidden;
  //  }
  //}
  &_content {
    padding-top: 142px + $size-height-navbar;
    z-index: 1;
    @include on-mobile() {
      padding-top: 88px + $size-height-navbar;
    }
  }
  &_primary {
    margin-top: 14px;
    font-size: 64px;
    line-height: 64px;
    letter-spacing: 0.5em;
    text-transform: uppercase;
    @include on-mobile() {
      font-size: 36px;
    }
    &English {
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 18px;
      /* identical to box height, or 133% */
      letter-spacing: 0.5em;
      color: #FFFFFF;
      @include on-mobile() {
        font-size: 12px;
      }
    }
  }
  &_secondary {
    margin-top: 32px;
    font-size: 40px;
    line-height: 40px;
    letter-spacing: 0.3em;
    text-transform: capitalize;
    @include on-mobile() {
      font-size: 24px;
      margin-top: 14px;
    }
  }
  &_address {
    margin-top: 56px;
    font-size: 20px;
    letter-spacing: 0.2em;
    @include on-mobile() {
      font-size: 12px;
      margin-top: 20px;
    }
    &_extra {
      margin-top: 6px;
      font-size: 16px;
      letter-spacing: 0.2em;
      @include on-mobile() {
        font-size: 10px;
      }
    }
  }
  &_button {
    margin-top: 60px;
  }
  &_summary {
    margin-top: 40px;
    font-size: 16px;
    line-height: 32px;
    max-width: 960px;
    letter-spacing: 0.1em;
  }
}

.background_1 {
  background: url("./background_more.png") right no-repeat;
}

.background_2 {
  background: url("./background_sponsor.png") left no-repeat;
}

.background_contain {
  background-size: contain;
}

.schedule {
  display: flex;
  flex-direction: column;
  align-items: center;
  //max-width: 1024px !important;
  margin-top: 96px;
  padding-top: 96px;
  &_title {
    margin-bottom: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    img {
      margin-right: -80px;
    }
    h2 {
      text-align: center;
      font-weight: 500;
      font-size: 24px;
      color: #FFF;
    }
  }
  &_section {
    &_title {
      font-weight: 500;
      font-size: 18px;
      color: #FFF;
    }
    &_title_line {
      margin-top: 8px;
      margin-bottom: 48px;
      width: 32px;
      height: 0px;
      border: 1px solid #1F9CDB;
    }
    &_list {
      width: 100%;
      margin-bottom: 2rem;
      &_item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 12px 36px;
        border-left: 8px solid #144DB8;
        background: rgba(0, 51, 123, 0.5);
        margin-bottom: 24px;
        overflow: auto;
        white-space: nowrap;
        @include on-mobile() {
          flex-direction: column;
          align-items: flex-start;
          padding: 24px;
        }
        &_start {
          display: flex;
          font-weight: 500;
          font-size: 16px;
          line-height: 16px;
          /* identical to box height, or 100% */
          letter-spacing: 0.1em;
          /* M1 */
          color: #FFFFFF;
          @include on-mobile() {
            justify-content: space-between;
            margin-left: 0;
            width: 100%;
          }
          &_timeRange {
            width: 96px;
          }
          &_title {
            width: 380px;
            margin-left: 32px;
            display: flex;
            justify-content: flex-start;
            align-items: center;
            &_replay {
              margin-left: 8px;
              a {
                line-height: 1;
              }
            }
          }
        }
        &_end {
          display: flex;
          text-align: left;
          padding-left: 64px;
          @include on-mobile() {
            justify-content: space-between;
            padding-left: 0;
            margin-top: 28px;
            width: 100%;
          }
          &_speakerName {
            color: #FFF;
            width: 120px;
            @include on-mobile() {
              width: auto;
            }
          }
          &_speakerTitle {
            color: #FFF;
            width: 220px;
            margin-left: 32px;
            @include on-mobile() {
              width: auto;
            }
          }
        }
      }
    }
  }
}

.guest {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 96px;
  &_title {
    display: flex;
    justify-content: center;
    align-items: center;
    img {
      margin-right: -80px;
    }
    h2 {
      text-align: center;
      font-weight: 500;
      font-size: 24px;
    }
  }
  &_list {
    margin-top: 64px;
    &_item {
      $size-avatar-offset: 24px;
      @include transition();
      &:hover {
        transform: translateY(-8px);
      }
      width: 300px;
      height: 100%;
      text-align: center;
      border-radius: 8px;
      padding: 32px;
      padding-top: 32px + $size-avatar-offset !important;
      background-color: #062048;
      background-image: url("./guest_card_background.png");
      background-repeat: no-repeat;
      background-size: contain;
      //background-position: top;
      &_avatar {
        $size: 150px;
        img {
          @include border-radius($size);
          width: $size;
          height: $size;
        }
      }
      &_name {
        margin-top: 44px - $size-avatar-offset;
        /* H5 */
        font-style: normal;
        font-weight: 600;
        font-size: 18px;
        line-height: 27px;
        /* identical to box height, or 150% */
        text-align: center;
        /* M1 */
        color: #FFFFFF;
      }
      &_title {
        //white-space: nowrap;
        margin-top: 8px;
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 32px;
        /* identical to box height, or 200% */
        letter-spacing: 0.1em;
      }
    }
  }
}

.sponsors {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 48px;
  &_title {
    display: flex;
    justify-content: center;
    align-items: center;
    img {
      margin-right: -80px;
    }
    h2 {
      text-align: center;
      font-weight: 500;
      font-size: 24px;
    }
  }
  &_section {
    width: 100%;
    padding-bottom: 4rem;
    &_title {
      text-align: center;
      font-size: 20px;
      font-weight: 500;
      margin: 2rem auto;
    }
    &_list {
      width: 100%;
      img {
        //width: auto;
        //height: 150px;
      }
    }
  }
  &_content {
    margin-top: 36px;
    max-width: 988px;
    font-weight: 400;
    font-size: 16px;
    line-height: 2;
    text-align: center;
    a {
      color: #48C2FF;
      &:hover {
        color: #48C2FF;
      }
    }
  }
}

.guide {
  //display: flex;
  //flex-direction: column;
  //align-items: center;
  max-width: 960px !important;
  padding-top: 72px;
  &_title {
    display: flex;
    justify-content: center;
    align-items: center;
    img {
      margin-right: -80px;
      $size: 120px;
      width: $size;
      height: $size;
    }
    h2 {
      text-align: center;
      font-weight: 500;
      font-size: 24px;
    }
  }
  &_tab {
    width: 100%;
    display: flex;
    border-bottom: 1px solid rgba($M1, 0.2);
    margin-top: 54px;
    &_item {
      cursor: pointer;
      padding: 8px 24px;
      border-bottom: 1px solid rgba(#48C2FF, 0);
      &_selected {
        color: #48C2FF;
        border-bottom: 1px solid #48C2FF;
      }
    }
  }
  &_content {
    width: 100%;
    margin-top: 56px;
    &_image {
      @include on-desktop() {
        float: right;
      }
      @include on-mobile() {
        float: none;
      }
    }
    h3 {
      font-size: 18px;
      font-weight: 600;
    }
    ul {
      list-style: disc;
      padding-left: 16px;
    }
  }
}

.cta {
  padding: 64px 16px;
  padding-top: 128px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.more {
  padding: 64px 16px;
  padding-bottom: 128px;
  display: flex;
  flex-direction: column;
  align-items: center;
  &_list {
    margin-top: 48px;
    display: flex;
    justify-content: center;
    @include on-mobile() {
      flex-direction: column;
      align-items: center;
    }
    &_item {
      text-align: center;
      @include on-desktop() {
        margin: 0 32px;
      }
      @include on-mobile() {
        margin: 32px 0;
      }
      img {
        width: 400px;
        height: 240px;
      }
      &_text {
        margin-top: 16px;
      }
    }
  }
}
