@charset "UTF-8";

@media (max-width: 61.9375rem) {
  .header-panel {
    position: sticky;
    top: 0;
    width: 100%;
    height: calc(3rem + env(safe-area-inset-top, 0px));
    padding-top: calc(0.25rem + env(safe-area-inset-top, 0px));
    padding-bottom: 0.25rem;
    background-color: #fbfdfd;
    border-bottom: 1px solid rgba(23, 32, 33, 0.06);
    box-shadow: 0 0.5rem 1.5rem rgba(23, 32, 33, 0.05);
  }

  .menu-btn,
  .h-search {
    top: calc(0.25rem + env(safe-area-inset-top, 0px));
  }

  .header-menu .h-tools {
    height: calc(3rem + env(safe-area-inset-top, 0px));
    padding: env(safe-area-inset-top, 0px) 0.25rem 0;
  }

  .search-dropbox {
    padding-top: calc(3rem + env(safe-area-inset-top, 0px));
  }

  input.select-m-menu:checked ~ .select-m-menu-tabs .select-m-menu-marker::after {
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
  }
}

.section-title-link,
.section-title-with-icon {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.625rem;
}

.section-title-icon {
  width: 1.75rem;
  height: 1.75rem;
  flex: 0 0 1.75rem;
  color: #29b1d8;
}

.related-post-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 0;
}

.related-post-grid::after {
  display: none;
}

.related-post-grid .app {
  width: auto;
  max-width: none;
  padding: 0;
  float: none;
}

@media (min-width: 42.5rem) {
  .related-post-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
  }
}

@media (min-width: 56rem) {
  .related-post-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
  }
}

/* Compact three-column card grid on phones up to 479px. */
@media (max-width: 29.9375rem) {
  .section-recommend .recommend-star {
    display: none !important;
  }

  .responsive-card-grid {
    margin: -0.375rem;
  }

  .responsive-card-grid .app {
    max-width: 33.333333%;
    padding: 0.375rem;
  }

  .responsive-card-grid .app-cont {
    padding: 0.625rem;
    border-radius: 0.875rem;
  }

  .responsive-card-grid .app-img {
    margin-bottom: 0.625rem;
    border-radius: 0.75rem;
  }

  .responsive-card-grid .app-title {
    height: 2.25rem;
    font-size: 0.75rem;
    line-height: 1.125rem;
  }

  .related-post-grid {
    gap: 0.5rem;
  }

  .related-post-grid .app {
    width: auto;
    max-width: none;
    padding: 0;
  }

  .section-title-icon {
    width: 1.5rem;
    height: 1.5rem;
    flex-basis: 1.5rem;
  }
}

.list-search > .infinite-post-list {
  margin-top: 0.75rem;
}

.infinite-scroll {
  display: flex;
  clear: both;
  min-height: 5.5rem;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 1.5rem 0;
  color: rgba(23, 32, 33, 0.6);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5rem;
  text-align: center;
}

.infinite-scroll-loader {
  display: none;
  width: 1.5rem;
  height: 1.5rem;
  flex: 0 0 1.5rem;
  border: 0.1875rem solid rgba(41, 177, 216, 0.2);
  border-top-color: #29b1d8;
  border-radius: 50%;
  animation: softroid-infinite-spin 0.75s linear infinite;
}

.infinite-scroll[data-state="loading"] .infinite-scroll-loader {
  display: block;
}

.infinite-scroll[data-state="complete"] {
  color: rgba(23, 32, 33, 0.5);
}

.infinite-scroll[data-state="error"] {
  color: #de485f;
}

.infinite-scroll-retry[hidden] {
  display: none;
}

@keyframes softroid-infinite-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 29.9375rem) {
  .infinite-scroll {
    min-height: 4.5rem;
    padding: 1rem 0;
    font-size: 0.8125rem;
  }
}
