/* ps-global.css - hide any leftover badge UI and force safe word wrapping */

/* Hide badge remnants if still present anywhere */
.ps-profile-contrib-badge,
.ps-badge-vote,
.ps-vote-btn,
.ps-archive-label,
.ps-archive-link,
.ps-widget-archive-link,
.ps-widget-archive-link * {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* Card and item safe wrapping */
.ps-sub-item,
.ps-memory-item,
.ps-gallery-item,
.ps-archive-item,
.article,
.entry,
.entry-summary,
.entry-content,
.post,
.card,
.widget,
.ps-card,
.ps-item {
  box-sizing: border-box !important;
  max-width: 100% !important;
  overflow: hidden !important;          /* prevent visual overflow */
  white-space: normal !important;       /* allow wrapping */
}

/* Make immediate children take full width so text wraps */
.ps-sub-item > *,
.ps-memory-item > *,
.ps-gallery-item > * {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Force wrapping/breaking for headings & paragraphs inside the card */
.ps-sub-item h1,
.ps-sub-item h2,
.ps-sub-item h3,
.ps-sub-item h4,
.ps-sub-item p,
.ps-sub-item span,
.ps-sub-item a,
.entry-title,
.post-title,
.ps-memory-title {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
  hyphens: auto !important;
  text-align: center !important;
}

/* Aggressive fallback for extremely long single-word strings */
.ps-sub-item p,
.entry-summary p,
.entry-content p {
  word-break: break-all !important;
}

/* Ensure images cannot force width */
.ps-sub-item img,
.ps-memory-item img,
.ps-gallery-item img {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
}