/* Catálogo público de capítulos: uma segunda sessão editorial, não uma tela solta. */
.portal-chapters-catalog .chapters-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.portal-chapters-catalog .chapter-list-card {
  min-block-size: clamp(310px, 39svh, 420px);
  padding: clamp(22px, 1.5vw, 28px);
  display: flex;
  flex-direction: column;
  gap: 14px;
  border: 1px solid rgba(21, 46, 44, .16);
  border-radius: 5px;
  background: rgba(250, 245, 232, .72);
  box-shadow: 0 14px 28px rgba(45, 34, 17, .06);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.portal-chapters-catalog .chapter-list-card.is-section { background: rgba(239, 233, 221, .82); }
.portal-chapters-catalog .chapter-list-card:hover {
  transform: translateY(-4px);
  background: #fbf4e3;
  box-shadow: 0 20px 34px rgba(45, 34, 17, .12);
}
.portal-chapters-catalog .chapter-list-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.portal-chapters-catalog .chapter-list-number { color: #8b5528; font: 700 12px 'Manrope', sans-serif; letter-spacing: .07em; }
.portal-chapters-catalog .chapter-list-tag {
  max-inline-size: 70%;
  padding: 4px 8px;
  overflow: hidden;
  border: 1px solid rgba(136, 82, 39, .3);
  border-radius: 999px;
  color: #805128;
  font: 600 7px/1.4 'Manrope', sans-serif;
  letter-spacing: .08em;
  text-align: right;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}
.portal-chapters-catalog .chapter-list-card.is-section .chapter-list-tag { color: #61706a; border-color: rgba(33, 66, 56, .17); }
.portal-chapters-catalog .chapter-list-card h3 { margin: 2px 0 0; color: #18352d; font: 500 clamp(24px, 1.45vw, 28px)/1.15 'Playfair Display', serif; letter-spacing: -.025em; }
.portal-chapters-catalog .chapter-list-card p { flex: 1; margin: 0; color: #53655d; font-size: clamp(12px, .7vw, 13px); line-height: 1.7; }
.portal-chapters-catalog .chapter-list-meta { display: flex; flex-wrap: wrap; gap: 10px; color: #64746c; font: 600 8px/1.4 'Manrope', sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.portal-chapters-catalog .chapter-list-actions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 3px; border-top: 1px solid rgba(21, 46, 44, .13); }
.portal-chapters-catalog .chapter-list-action {
  min-inline-size: 0;
  min-block-size: 38px;
  padding: 0 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 0;
  border-right: 1px solid rgba(21, 46, 44, .1);
  background: transparent;
  color: #8b5528;
  font: 700 8px 'Manrope', sans-serif;
  cursor: pointer;
  white-space: nowrap;
}
.portal-chapters-catalog .chapter-list-action:last-child { border-right: 0; }
.portal-chapters-catalog .chapter-list-action:hover { background: rgba(154, 97, 42, .08); }
.portal-chapters-catalog .chapter-list-action .chapter-action-icon { inline-size: 13px; block-size: 13px; flex: 0 0 auto; }
.portal-chapters-catalog .chapter-list-action.is-disabled { color: #8a9590; opacity: .48; cursor: default; }
.portal-chapters-catalog .chapter-list-action.is-disabled:hover { background: transparent; }
.portal-chapters-catalog .chapter-list-empty { grid-column: 1 / -1; padding: 56px 0; color: #617169; text-align: center; }

@media (min-width: 681px) and (max-width: 1000px) {
  .portal-chapters-catalog .chapters-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .portal-chapters-catalog .chapter-list-card { min-block-size: 330px; }
}

@media (max-width: 680px) {
  .portal-chapters-catalog .chapters-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 28px; }
  .portal-chapters-catalog .chapter-list-card { min-block-size: 272px; padding: 22px; }
  .portal-chapters-catalog .chapter-list-card h3 { font-size: 23px; }
}

/* Carrossel infinito: contador ao lado do título; a navegação fica no paginador da página. */
.portal-chapters-heading-side { display: grid; gap: 14px; }
.portal-chapters-controls { display: flex; align-items: center; gap: 10px; }
.portal-chapters-count {
  min-inline-size: 0;
  margin: 0;
  color: #70441f;
  font: 700 11px/1 'Manrope', sans-serif;
  letter-spacing: .08em;
  text-align: left;
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
}
.portal-chapters-catalog .chapters-grid { touch-action: pan-y; }
.portal-chapters-catalog .chapters-grid[aria-busy="true"] { cursor: progress; }

@media (max-width: 680px) {
  .portal-chapters-heading-side { margin-bottom: 12px; }
  .portal-chapters-heading .portal-kicker { margin-bottom: 0; }
}

/* Phones show one chapter per page: the card grows to the free height of the section (title above,
   pager below) and its small print grows with it. */
@media (max-width: 680px) {
  .portal-chapters-catalog .chapter-list-card { min-block-size: clamp(272px, calc(100svh - 76px - 330px), 560px); }
  .portal-chapters-catalog .chapter-list-card h3 { font-size: 26px; }
  .portal-chapters-catalog .chapter-list-card p { font-size: 14px; line-height: 1.7; }
  .portal-chapters-catalog .chapter-list-tag { font-size: 9px; }
  .portal-chapters-catalog .chapter-list-meta { font-size: 10px; }
  .portal-chapters-catalog .chapter-list-action { min-block-size: 46px; font-size: 11px; }
  .portal-chapters-catalog .chapter-list-action .chapter-action-icon { inline-size: 15px; block-size: 15px; }
}
/* The preview never pushes the card: at most seven lines on phones, three on short screens. */
.portal-chapters-catalog .chapter-list-card p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 7; line-clamp: 7; }
@media (max-height: 720px) {
  .public-portal main > .portal-chapters-catalog { padding-block: 10px 96px; }
  .portal-chapters-catalog .chapters-grid { margin-top: 14px; }
  .portal-chapters-catalog .chapter-list-card { min-block-size: 0; padding: 16px 18px; gap: 10px; }
  .portal-chapters-catalog .chapter-list-card h3 { font-size: 21px; }
  .portal-chapters-catalog .chapter-list-card p { flex: 0 0 auto; block-size: calc(1.6em * 3); font-size: 13px; line-height: 1.6; -webkit-line-clamp: 3; line-clamp: 3; }
  .portal-chapters-catalog .chapter-list-action { min-block-size: 40px; }
}
