/*
  CSSの`@import`は、複数ファイルの読み込みが遅いなどの理由で非推奨になっている
  ここでは1つのファイルだけを読み込む目的で使用することにする

  複数ファイルを読み込む場合は、

  - Sassの`@use`を使う
  - Frontmaterで複数のCSSファイルを指定できるようにする

  などの代替案を検討すること
*/
@import url("/assets/css/markdown.css");

.page-header {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}

.page-header > h1 {
  margin: 0;
  font-size: 1.5em;
}

@media screen and (min-width: 520px) {
  .page-header > h1 {
    font-size: 2em;
  }
}

.tagcloud {
  display: grid;
  grid-template-columns: repeat(auto-fit, 7.5em);
  gap: 0.5em;
}

.tagcloud a {
  display: block;
}

.news-list a {
  display: grid;
  grid-template-columns: auto 7em 1fr;
  column-gap: 10px;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid #dcdcdc;
  transition: 0.2s;
}
.news-list a .title {
  grid-row: 2;
  grid-column: 1 / -1;
}
@media screen and (min-width: 600px) {
  .news-list a .title {
    grid-row: 1;
    grid-column: 3;
  }
}

.news-list a[target="_blank"] {
  position: relative;
  padding-right: 30px;
}
.news-list a[target="_blank"]::after {
  content: "\f08e";
  font: var(--fa-font-solid);
  position: absolute;
  right: 5px;
  top: 5px;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  color: #999;
}
.news-list a:hover {
  background-color: #f5f5f5;
}
.news-list a .date {
  font-size: 14px;
  color: #777;
}

.tagcloud a.category,
.news-list a .category {
  padding: 5px 0;
  text-align: center;
  font-size: 12px;
  background: hsl(0, 0%, 92%);
  border-radius: 5px;
}

.tagcloud a.category:hover,
.news-list a .category:hover {
  background: hsl(0, 0%, 85%);
}

.news-list a .category.important {
  background: hsl(204, 64%, 55%);
  color: hsl(0, 0%, 100%);
}
