.article-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;

  margin: 2rem 0 0 0;
}

.article-actions form {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.article-action {
  border: 1px solid var(--a11y-button-border);
  border-radius: 50%;
  background: var(--a11y-button-bg);
  cursor: pointer;
  padding: 0.4rem 1.2rem 0.5rem 1.2rem;
  min-width: 6.2rem;

  font-family: var(--font-family-ArialNarrow);
  font-size: var(--font-size-15);
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.013em;
  text-align: center;
  color: var(--a11y-button-text);
}

.article-action-count {
  pointer-events: none;
}

.article-action:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.article-action.is-active {
  background: var(--a11y-color-bg);
  border-color: var(--a11y-color-text);
  color: var(--a11y-color-text);
}

#article-layer,
#reel-layer,
#article-detail,
#reel-detail {
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  opacity: 1;
  transform: translateY(0);
}

#article-layer.is-animating,
#reel-layer.is-animating,
#article-detail.is-animating,
#reel-detail.is-animating,
.overlay.is-animating {
  opacity: 0;
  transform: translateY(30px);
  pointer-events: none;
}

.article-layer:has(#article-detail.is-animating) .article-layer-close {
  opacity: 0;
  transform: translateY(30px);
  pointer-events: none;
}

.article-layer {
  position: fixed;
  height: 100dvh;
  inset: 0;
  z-index: 1000;
  overflow: hidden;
  background: var(--a11y-color-bg);
  /* opacity: 0.5 !important; */
}

.article-layer-detail {
  height: 100%;
  overflow: hidden;
  /*  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; */

  /* position: relative; */
  background: var(--a11y-color-bg);
}

.article-layer-scroll {
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: auto;
}

/* Direct article entries scroll with the document, without viewport sizing. */
html.direct-article-page,
html.direct-article-page body,
html.direct-article-page body.overlay-open {
  overflow: visible;
}

html.direct-article-page #article-layer {
  position: relative;
  inset: auto;
  height: auto;
  overflow: visible;
  transform: none;
}

html.direct-article-page #article-detail,
html.direct-article-page .article-layer-scroll {
  height: auto;
  overflow: visible;
  transform: none;
  display: flow-root;
}

html.direct-article-page #transition-header-root,
html.direct-article-page .transition-main > .main-footer {
  display: none;
}

.article-layer-close {
  position: fixed;
  top: 0;
  right: 0;
  padding: 1rem;
  z-index: 1002;

  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  font-family: var(--font-family-TimesNewRoman);
}

.article-layer-close.focus-ring-silent:focus,
.article-layer-close.focus-ring-silent:focus-visible {
  outline: none !important;
}

.article-layer-close--inner {
  width: 2.5rem;
  height: 2.5rem;

  border: 1px solid #000;
  border-radius: 0;
  background: #000;
  color: #fff;
  text-decoration: none;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-family: var(--font-family-TimesNewRoman);
  font-size: var(--font-size-12);
  line-height: 1;
}

.article-layer .article-layer-close--inner {
  --article-close-bg: var(--a11y-color-text, #000000);
  --article-close-fg: var(--a11y-color-bg, #ffffff);
  border-color: var(--article-close-bg);
  background: var(--article-close-bg);
  color: var(--article-close-fg);
}

.reel-detail .article-layer-close--inner {
  border: 1px solid #fff;
  background: #fff;
  color: #000;
}

.articles-pagination {
  display: flex;
}

.articles-pagination .previous {
  padding: 1.5rem 1.5rem 1.5rem 0;
}

.articles-pagination .next {
  margin-left: auto;
  padding: 1.5rem 0 1.5rem 1.5rem;
}

.js .articles-pagination {
  display: none;
}

.js .articles-pagination.articles-pagination--visible {
  display: flex;
}

.no-js [data-load-more] {
  display: none;
}

.load-more-wrapper {
  overflow-anchor: none;
  padding-bottom: 3rem;
}

.articles-load-more {
  width: 100%;
  height: auto;
  aspect-ratio: 858/160;
  border-radius: 50%;
  font-size: 6vw;

  background: var(--a11y-button-bg);
  color: var(--a11y-button-text);

  margin-bottom: 3rem;
}

.articles-load-more-status,
.articles-pagination {
  font-family: var(--font-family-ArialNarrow);
  font-size: var(--font-size-15);
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0.013em;
  text-align: center;
  color: var(--a11y-color-text);
}

@media screen and (max-width: 50em) {

  /* 800px */
  .articles-load-more {
    font-size: 10vw;
    width: calc(100% - 2rem);
    margin-left: 1rem;
    margin-right: 1rem;
  }
}
