/**
 * Unified blog / archive meta (date, author, categories, tags, comments)
 * + read-more — professional chips + one font stack with 00-design-tokens.
 */

/* ---------- Reinforce single sans (parent theme overrides) ---------- */
body,
button,
input,
select,
textarea,
.site-title a,
.entry-title,
.entry-title a,
.entry-meta,
.entry-summary,
.page-header,
.navigation,
.widget,
#comments,
.comment-body,
.comment-respond {
  font-family: var(--gpfp-font-sans);
}

/* ---------- Archive / search page header ---------- */
.archive .page-header,
.search .page-header,
.blog .page-header {
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--gpfp-slate-200);
}

.archive .page-title,
.search .page-title,
.blog .page-title {
  margin-bottom: 0.35rem;
}

.archive .taxonomy-description,
.search .taxonomy-description {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--gpfp-slate-600);
  margin: 0;
  max-width: 42rem;
}

/* ---------- Meta row (single + archive cards) ---------- */
.entry-header .entry-meta,
.entry-meta,
footer.entry-meta,
.entry-header .gp-post-meta,
.posted-on,
.byline,
.cat-links,
.tags-links,
.comments-link {
  font-family: var(--gpfp-font-sans);
}

.entry-header .entry-meta,
.entry-meta,
footer.entry-meta,
.entry-header .gp-post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.65rem;
  margin: 0 0 1.25rem;
  padding: 0.65rem 0 1rem;
  border-bottom: 1px solid var(--gpfp-slate-200);
  font-size: 0.8125rem;
  line-height: 1.45;
  color: var(--gpfp-slate-600);
}

footer.entry-meta {
  margin-top: 1.5rem;
  margin-bottom: 0;
  padding-top: 1rem;
  padding-bottom: 0;
  border-bottom: none;
  border-top: 1px solid var(--gpfp-slate-200);
}

/* Inner wrappers (WordPress / GP) */
.entry-meta > span,
.entry-meta > div,
footer.entry-meta > span,
footer.entry-meta > div,
.entry-header .gp-post-meta > span {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
}

/* Links inside meta → pill chips */
.entry-meta a,
footer.entry-meta a,
.entry-header .gp-post-meta a {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.01em;
  text-decoration: none !important;
  color: var(--gpfp-slate-700) !important;
  background: var(--gpfp-slate-100);
  border: 1px solid var(--gpfp-slate-200);
  transition:
    background var(--gpfp-transition, 0.3s ease),
    border-color var(--gpfp-transition, 0.3s ease),
    color var(--gpfp-transition, 0.3s ease),
    box-shadow var(--gpfp-transition, 0.3s ease);
}

.entry-meta a:hover,
footer.entry-meta a:hover,
.entry-header .gp-post-meta a:hover {
  background: var(--gpfp-surface);
  border-color: rgb(212 175 55 / 0.35);
  color: var(--gpfp-gold-hover) !important;
  box-shadow: var(--gpfp-shadow-sm);
}

/* Plain text labels (no link) in meta */
.entry-meta .posted-on,
.entry-meta .byline,
.entry-meta .cat-links,
.entry-meta .tags-links,
.entry-meta .comments-link {
  color: var(--gpfp-slate-500);
  font-weight: 500;
}

.entry-meta .posted-on time,
.entry-meta time {
  color: var(--gpfp-slate-800);
  font-weight: 600;
}

/* Comments count — badge feel */
.entry-meta .comments-link a,
footer.entry-meta .comments-link a {
  background: var(--gpfp-ui-dark);
  border-color: var(--gpfp-slate-200);
  color: #fafafa !important;
}

.entry-meta .comments-link a:hover,
footer.entry-meta .comments-link a:hover {
  background: var(--gpfp-accent-600);
  border-color: var(--gpfp-accent-600);
  color: #ffffff !important;
}

/* Category / tag emphasis */
footer.entry-meta .tags-links a {
  background: var(--gpfp-accent-50);
  border-color: var(--gpfp-accent-100);
  color: var(--gpfp-accent-800) !important;
}

footer.entry-meta .tags-links a:hover {
  background: var(--gpfp-accent-100);
  border-color: var(--gpfp-accent-500);
}

/* ---------- Archive / blog loop cards ---------- */
.blog .post,
.archive .post,
.search .post {
  padding: clamp(1rem, 2.5vw, 1.35rem);
  margin-bottom: 1.25rem;
  border: 1px solid var(--gpfp-slate-200);
  border-radius: var(--gpfp-radius-xl);
  background: var(--gpfp-surface);
  box-shadow: var(--gpfp-shadow-md);
  transition:
    box-shadow var(--gpfp-transition, 0.3s ease),
    transform var(--gpfp-transition, 0.3s ease),
    border-color var(--gpfp-transition, 0.3s ease);
}

.blog .post:hover,
.archive .post:hover,
.search .post:hover {
  box-shadow: var(--gpfp-shadow-md);
  transform: translateY(-2px);
  border-color: var(--gpfp-slate-300);
}

.blog .post:last-child,
.archive .post:last-child,
.search .post:last-child {
  margin-bottom: 0;
}

.blog .post .entry-header,
.archive .post .entry-header,
.search .post .entry-header {
  margin-bottom: 0.5rem;
}

.blog .post .entry-title,
.archive .post .entry-title,
.search .post .entry-title {
  font-size: clamp(1.2rem, 1.2vw + 0.9rem, 1.5rem);
  margin-bottom: 0.5rem;
}

.blog .post .entry-title a,
.archive .post .entry-title a,
.search .post .entry-title a {
  color: var(--headline-color);
  text-decoration: none;
}

.blog .post .entry-title a:hover,
.archive .post .entry-title a:hover,
.search .post .entry-title a:hover {
  color: var(--gpfp-link);
}

.blog .post .entry-summary,
.archive .post .entry-summary,
.search .post .entry-summary,
.blog .post .entry-content.post-excerpt,
.archive .post .entry-content.post-excerpt {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: var(--gpfp-slate-600);
  margin-top: 0.5rem;
}

/* ---------- Read more (all common GP / WP hooks) ---------- */
a.read-more,
.more-link,
a.more-link,
.entry-summary a.more-link,
.entry-summary a.read-more,
.posted-content a.read-more,
.read-more-container a,
.read-more-link,
.footer-read-more a,
.post-listing a.read-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.85rem;
  min-height: 2.5rem;
  padding: 0.45rem 1rem;
  width: fit-content;
  max-width: 100%;
  font-family: var(--gpfp-font-sans);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-decoration: none !important;
  color: var(--gpfp-on-gold) !important;
  background: var(--gpfp-accent-600);
  border: 1px solid var(--gpfp-accent-600);
  border-radius: var(--gpfp-radius-lg);
  box-shadow: var(--gpfp-accent-glow);
  transition:
    background var(--gpfp-transition, 0.3s ease),
    border-color var(--gpfp-transition, 0.3s ease),
    box-shadow var(--gpfp-transition, 0.3s ease),
    transform var(--gpfp-transition, 0.3s ease);
}

a.read-more:hover,
.more-link:hover,
a.more-link:hover,
.entry-summary a.more-link:hover,
.entry-summary a.read-more:hover,
.read-more-container a:hover,
.read-more-link:hover,
.footer-read-more a:hover,
.post-listing a.read-more:hover {
  background: var(--gpfp-gold-hover);
  border-color: var(--gpfp-gold-hover);
  box-shadow: var(--gpfp-accent-glow-strong);
  transform: translateY(-2px) scale(1.02);
  color: var(--gpfp-on-gold) !important;
}

a.read-more::after,
.more-link::after,
.read-more-link::after,
.footer-read-more a::after {
  content: "→";
  font-weight: 700;
  margin-left: 0.1rem;
}

@media (max-width: 767px) {
  .entry-header .entry-meta,
  .entry-meta,
  footer.entry-meta,
  .entry-header .gp-post-meta {
    gap: 0.4rem 0.5rem;
    font-size: 0.75rem;
  }

  .entry-meta a,
  footer.entry-meta a,
  .entry-header .gp-post-meta a {
    padding: 0.2rem 0.45rem;
    font-size: 0.6875rem;
  }

  a.read-more,
  .more-link,
  .read-more-link,
  .footer-read-more a {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  a.read-more:hover,
  .more-link:hover,
  .read-more-link:hover {
    transform: none;
  }
}
