@font-face {
  font-family: Roboto;
  src: url('assets/font/Roboto-Regular.ttf');
}

.app {
  display: flex;
  flex-wrap: wrap;
  font-family: Roboto, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  block-size: 100%;
}

.routerView {
  flex: 1 1 0%;
  margin-block: 18px;
  margin-inline: 10px;
}

.banner {
  inline-size: 85%;
  margin-inline: auto;
}

.banner + .banner {
  margin-block-start: 20px;
}

:has(:not(.floatingRefreshSection)) .banner {
  margin-block: 0;
}

:has(.floatingRefreshSection) .banner {
  margin-block: 40px 0;
}

:has(.floatingRefreshSection) .banner + .banner {
  margin-block-start: 20px;
}

.banner-wrapper {
  margin-block: 0;
  margin-inline: 10px;
}

.flexBox {
  display: block;
  user-select: unset;
}

.changeLogTitle {
  padding-inline: 16px;
  overflow-wrap: break-word;
  margin-block-end: 16px;
}

.changeLogText {
  overflow-y: scroll;
  block-size: 40vh;
  display: block;
  padding-inline: 16px;
  margin-block-end: 16px;
  overflow-wrap: break-word;
}

.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.15s;
}

.fade-enter-from,
.fade-leave-to {
  opacity: 0;
}

@media only screen and (width <= 680px) {
  .routerView {
    margin-block: 22px 68px;
    margin-inline: 8px;
  }
  
  .routerView:has(.floatingRefreshSection) {
    margin-block: 62px;
  }

  :has(:not(.floatingRefreshSection)) {
    margin-block: 22px;
  }

  .routerView:has(.floatingRefreshSection):has(.banner) {
    margin-block: 68px;
  }

  .banner-wrapper + .routerView:has(.floatingRefreshSection) {
    margin-block: 24px;
  }

  .banner {
    inline-size: 90%;
    margin-block-start: 21px;
  }

  :has(.floatingRefreshSection) .banner {
    margin-block-start: 56px;
  }
  
  .banner + .banner {
    margin-block-start: 20px;
  }

  .flexBox {
    margin-block: 60px -75px;
  }

  .changeLogText {
    block-size: 65vh;
  }
}
