/* ============================================================
   5. PAGINATION & RECHERCHE (DESIGN SYSTEM CERCLES 44px)
   ============================================================ */
.cp-pagination,
.wp-block-query-pagination.cp-pagination,
.wp-block-query-pagination {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.65rem !important;
  margin: 3.5rem auto 4.5rem auto !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Conteneur interne Gutenberg des numéros */
.cp-pagination .wp-block-query-pagination-numbers,
.wp-block-query-pagination .wp-block-query-pagination-numbers {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.65rem !important;
}

/* Pastilles circulaires parfaites 44px x 44px */
.cp-pagination .page-numbers,
.wp-block-query-pagination a.wp-block-query-pagination-next,
.wp-block-query-pagination a.wp-block-query-pagination-previous,
.cp-pagination a.wp-block-query-pagination-next,
.cp-pagination a.wp-block-query-pagination-previous {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  border: 1.5px solid #CBD5E1 !important;
  color: var(--cp-color-primary, #20467B) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  text-decoration: none !important;
  line-height: 1 !important;
  padding: 0 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  transition: all 0.22s ease !important;
  cursor: pointer;
  flex-shrink: 0 !important;
}

/* Page active (Page 1 courante) : Fond orange plein, texte blanc, bordure orange */
.cp-pagination .page-numbers.current,
.wp-block-query-pagination .page-numbers.current {
  background: var(--cp-color-secondary, #EB7630) !important;
  color: #FFFFFF !important;
  border-color: var(--cp-color-secondary, #EB7630) !important;
  box-shadow: 0 4px 12px rgba(235, 118, 48, 0.28) !important;
  cursor: default;
}

/* Points de suspension (...) dans un cercle blanc identique */
.cp-pagination .page-numbers.dots,
.wp-block-query-pagination .page-numbers.dots {
  background: #FFFFFF !important;
  border: 1.5px solid #CBD5E1 !important;
  color: var(--cp-color-primary, #20467B) !important;
  cursor: default;
  letter-spacing: 0.08em;
  font-weight: 700;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Survol des liens inactifs */
.cp-pagination a.page-numbers:hover,
.wp-block-query-pagination a.page-numbers:hover,
.cp-pagination a.wp-block-query-pagination-next:hover,
.cp-pagination a.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination a.wp-block-query-pagination-next:hover,
.wp-block-query-pagination a.wp-block-query-pagination-previous:hover {
  background: #FFF7ED !important;
  border-color: var(--cp-color-secondary, #EB7630) !important;
  color: var(--cp-color-secondary, #EB7630) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

/* Flèches Suivant / Précédent (chevron stylisé > et <) */
.cp-pagination a.next,
.cp-pagination a.prev,
.cp-pagination a.wp-block-query-pagination-next,
.cp-pagination a.wp-block-query-pagination-previous,
.wp-block-query-pagination a.wp-block-query-pagination-next,
.wp-block-query-pagination a.wp-block-query-pagination-previous {
  position: relative;
}

.cp-pagination a.next i,
.cp-pagination a.prev i {
  font-size: 0.9rem;
  color: inherit;
}

/* Si chevron Gutenberg présent, conversion en chevron fin moderne */
.wp-block-query-pagination-next-arrow.is-arrow-chevron,
.wp-block-query-pagination-previous-arrow.is-arrow-chevron {
  font-size: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.wp-block-query-pagination-next-arrow.is-arrow-chevron::after {
  content: "›";
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  display: inline-block;
  color: inherit;
}

.wp-block-query-pagination-previous-arrow.is-arrow-chevron::after {
  content: "‹";
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  display: inline-block;
  color: inherit;
}

/* Page 404 */
.cp-404-wrapper {
  text-align: center;
  padding: 6rem 1.5rem;
}

.cp-404-code {
  font-size: 6rem;
  font-weight: 800;
  color: var(--cp-color-primary);
  line-height: 1;
  margin-bottom: 1rem;
}

.cp-404-code span { color: var(--cp-color-secondary); }
