/* ===========================
   CATEGORY STYLE
   Only on single post, archive, author archive
   =========================== */
body.single .taxonomy-category a,
body.single .wp-block-post-terms.taxonomy-category a,
body.archive .taxonomy-category a,
body.archive .wp-block-post-terms.taxonomy-category a,
body.author .taxonomy-category a,
body.author .wp-block-post-terms.taxonomy-category a,
body.single a[rel~="category"],
body.archive a[rel~="category"],
body.author a[rel~="category"],
body.single a[rel~="category tag"],
body.archive a[rel~="category tag"],
body.author a[rel~="category tag"] {
  color: #cc0000 !important;       /* strong red */
  font-weight: normal !important;  /* not bold */
  text-decoration: none !important;
  -webkit-text-fill-color: #cc0000 !important;
}

/* Hover/visited states stay red */
body.single .taxonomy-category a:link,
body.single .taxonomy-category a:visited,
body.single .taxonomy-category a:hover,
body.single .taxonomy-category a:active,
body.archive .taxonomy-category a:link,
body.archive .taxonomy-category a:visited,
body.archive .taxonomy-category a:hover,
body.archive .taxonomy-category a:active,
body.author .taxonomy-category a:link,
body.author .taxonomy-category a:visited,
body.author .taxonomy-category a:hover,
body.author .taxonomy-category a:active {
  color: #cc0000 !important;
  text-decoration: none !important;
}

/* =========================
   Final: Full-width Readability for single post content
   - excludes PublishPress author box
   - fluid typography
   - works on all devices
   ========================= */

/* 1) Main post container: full width */
.single-post .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box;
  padding-left: 0 !important;
  padding-right: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  hyphens: none !important;
  color: #222;
}

/* 2) Body text & inline elements (exclude author box) */
.single-post .entry-content :is(p, li, span, strong, a):not(.pp-multiple-authors-boxes-wrapper *) {
  font-size: clamp(16px, 1.2vw + 0.5rem, 20px) !important;
  line-height: 1.65 !important;
  margin-bottom: 1.1rem !important;
  color: #222 !important;
}

/* 3) Headings */
/* Strong override: set only H2 color on single post content (and force child elements/links) */
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2),
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2) * {
  color: #0056D2 !important;   /* your blue */
}

/* also ensure link states inside H2 stay the same */
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2) a:link,
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2) a:visited,
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2) a:hover,
html body.single .entry-content h2:not(.pp-multiple-authors-boxes-wrapper h2) a:active {
  color: #0056D2 !important;
}

.single-post .entry-content h1 { font-size: clamp(32px, 2.5vw + 1rem, 42px) !important; }
.single-post .entry-content h2 { font-size: clamp(26px, 2vw + 0.5rem, 32px) !important; }
.single-post .entry-content h3 { font-size: clamp(20px, 1.5vw + 0.5rem, 26px) !important; }
.single-post .entry-content h4 { font-size: clamp(18px, 1vw + 0.5rem, 22px) !important; }


/* 4) Links (no underline) */
.single-post .entry-content a:not(.pp-multiple-authors-boxes-wrapper a) {
  color: #2b66b3 !important;
  text-decoration: none !important;   /* no underline */
}

.single-post .entry-content a:hover:not(.pp-multiple-authors-boxes-wrapper a) {
  text-decoration: underline !important;  /* optional: show underline on hover */
}

/* 5) Lists */
.single-post .entry-content ul,
.single-post .entry-content ol {
  margin: 0 0 1.2rem 1.5rem !important;
  padding: 0 !important;
}
.single-post .entry-content li { margin-bottom: 0.6rem !important; }

/* 6) Blockquotes - Modern colorful style */
.single-post .entry-content blockquote {
  position: relative;
  margin: 2rem auto !important;
  padding: 1.2rem 1.5rem 1.2rem 2rem !important;
  border-left: 6px solid #3C78C2 !important; /* accent color */
  background: linear-gradient(135deg, #f0f6ff 0%, #ffffff 100%) !important;
  color: #2a2a2a !important;
  font-style: normal !important;
  font-size: clamp(17px, 1vw + 0.5rem, 20px) !important;
  line-height: 1.7 !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 14px rgba(60,120,194,0.12) !important;
}

/* Add a decorative quotation mark */
.single-post .entry-content blockquote::before {
  content: "❝";
  position: absolute;
  top: 8px;
  left: 8px;
  font-size: 32px;
  color: #3C78C2;
  opacity: 0.3;
}

/* Optional: cite / footer inside blockquote */
.single-post .entry-content blockquote cite {
  display: block;
  margin-top: 0.8rem;
  font-size: 15px;
  color: #3C78C2;
  font-weight: 600;
  text-align: right;
}

/* 7) Images */
.single-post .entry-content img,
.single-post .entry-content figure img {
  width: 100% !important;       /* stretch full width */
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 1.5rem 0 !important;
  border-radius: 6px !important;
  box-shadow: 0 6px 18px rgba(30,30,30,0.04) !important;
}

/* 8) Captions & code */
.single-post .entry-content figcaption {
  font-size: 14px !important;
  color: #666 !important;
  margin-top: 6px !important;
  text-align: center;
}

.single-post .entry-content pre,
.single-post .entry-content code {
  background:#f6f8fa !important;
  padding:8px 12px !important;
  border-radius:6px !important;
  font-size:14px !important;
  overflow-x:auto !important;
}

/* 9) Mobile adjustments */
@media (max-width: 860px) {
  .single-post .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .single-post .entry-content :is(p, li) {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }
}


/* Justify text only inside single post content */
body.single .entry-content,
body.single .post-content {
  text-align: justify;
  text-justify: inter-word;   /* Better spacing between words */
  hyphens: none;              /* Prevent word-breaking */
  word-break: normal;         /* Keep words whole */
  overflow-wrap: normal;      /* Avoid forced wrapping */
}

/* Sharper, bolder headings only in single posts */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5,
.single-post .entry-content h6 {
  font-weight: 700 !important;       /* strong bold */
  color: #111 !important;            /* darker text for sharpness */
  letter-spacing: -0.3px !important; /* slightly tighter for crisp look */
}