/*
Theme Name: Astra UpvoteRocket
Template: astra
Description: UpvoteRocket dark brand child theme
Version: 1.0
*/

/* ===== UPVOTEROCKET DARK DESIGN ===== */
:root {
  --ur-bg:      #0E1320;
  --ur-surface: #161D2A;
  --ur-border:  #263041;
  --ur-accent:  #2563EB;
  --ur-glow:    #38BDF8;
  --ur-txt:     #F5F7FA;
  --ur-txt2:    #C5CDD8;
  --ur-muted:   #B0BBC9;
}

/* Base */
html, body { background-color: var(--ur-bg) !important; color: var(--ur-txt) !important; }

/* Header */
.site-header, #masthead, .ast-primary-header-bar, .ast-above-header-wrap, .ast-below-header-wrap {
  background-color: rgba(14,19,32,0.97) !important;
  border-bottom: 1px solid var(--ur-border) !important;
}
.site-title a, .site-title a:visited { color: var(--ur-txt) !important; font-weight: 700 !important; }
.site-description { color: var(--ur-muted) !important; }

/* Navigation */
.ast-nav-menu > li > a, .main-navigation ul li a, #site-navigation ul li a {
  color: var(--ur-txt2) !important;
  font-weight: 500 !important;
}
.ast-nav-menu > li > a:hover, #site-navigation ul li a:hover { color: var(--ur-txt) !important; }
.ast-nav-menu .current-menu-item > a { color: var(--ur-accent) !important; }

/* Dropdowns */
.ast-nav-menu .sub-menu, .main-navigation .sub-menu {
  background: var(--ur-surface) !important;
  border: 1px solid var(--ur-border) !important;
}
.ast-nav-menu .sub-menu li a { color: var(--ur-txt2) !important; }
.ast-nav-menu .sub-menu li a:hover { color: var(--ur-txt) !important; background: var(--ur-border) !important; }

/* Content */
.site-content, #content, .ast-article-inner, .content-area { background-color: var(--ur-bg) !important; }

/* Post cards */
.ast-article-post, article.type-post, article.hentry {
  background: var(--ur-surface) !important;
  border: 1px solid var(--ur-border) !important;
  border-radius: 8px !important;
  padding: 1.5rem !important;
  margin-bottom: 1.5rem !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
.ast-article-post:hover, article.type-post:hover, article.hentry:hover {
  border-color: rgba(37,99,235,0.5) !important;
  box-shadow: 0 0 24px rgba(37,99,235,0.12) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.entry-title, .entry-title a, .page-title { color: var(--ur-txt) !important; }
.entry-title a:hover { color: var(--ur-glow) !important; text-decoration: none !important; }

/* Body text */
p, li, td, dd, dt { color: var(--ur-txt2) !important; }
.entry-content h2, .entry-content h3, .entry-content h4 { color: var(--ur-txt) !important; margin-top: 2rem !important; }

/* Links */
a { color: var(--ur-accent) !important; }
a:hover { color: var(--ur-glow) !important; }
.entry-content a { text-decoration: underline !important; text-decoration-color: rgba(37,99,235,0.4) !important; }

/* Buttons */
.ast-btn, .button, input[type="submit"], button[type="submit"], .wp-block-button__link {
  background: var(--ur-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 0.55rem 1.3rem !important;
  font-weight: 600 !important;
  transition: background 0.2s, box-shadow 0.2s !important;
}
.ast-btn:hover, .button:hover, input[type="submit"]:hover, .wp-block-button__link:hover {
  background: #1D4ED8 !important;
  box-shadow: 0 0 20px rgba(37,99,235,0.4) !important;
}

/* Meta */
.posted-on, .byline, .entry-meta, .ast-post-meta, .ast-blog-meta, .ast-footer-meta {
  color: var(--ur-muted) !important; font-size: 0.8rem !important;
}
.entry-meta a, .ast-post-meta a { color: var(--ur-muted) !important; }
.entry-meta a:hover { color: var(--ur-txt2) !important; }

/* Categories / tags */
.cat-links a, .tags-links a, .ast-tags-single a {
  background: rgba(37,99,235,0.15) !important;
  color: var(--ur-glow) !important;
  border: 1px solid rgba(37,99,235,0.3) !important;
  border-radius: 4px !important;
  padding: 2px 8px !important;
  font-size: 0.75rem !important;
  text-decoration: none !important;
}

/* Sidebar */
.widget, aside#secondary, #secondary .widget { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; border-radius: 8px !important; padding: 1.25rem !important; margin-bottom: 1rem !important; }
.widget-title, .widgettitle { color: var(--ur-txt) !important; font-size: 1rem !important; font-weight: 700 !important; border-bottom: 1px solid var(--ur-border) !important; padding-bottom: 0.5rem !important; margin-bottom: 0.75rem !important; }
.widget ul li a { color: var(--ur-txt2) !important; }

/* Blockquote */
blockquote { border-left: 3px solid var(--ur-accent) !important; background: var(--ur-surface) !important; padding: 1rem 1.5rem !important; border-radius: 0 6px 6px 0 !important; }
blockquote p { color: var(--ur-txt2) !important; }

/* Code */
code, kbd { background: rgba(14,19,32,0.8) !important; border: 1px solid var(--ur-border) !important; color: var(--ur-glow) !important; border-radius: 4px !important; padding: 2px 6px !important; }
pre { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; border-radius: 6px !important; padding: 1rem !important; }
pre code { background: transparent !important; border: none !important; padding: 0 !important; }

/* Footer */
.site-footer, #colophon, .ast-small-footer {
  background: var(--ur-surface) !important;
  border-top: 1px solid var(--ur-border) !important;
  color: var(--ur-muted) !important;
}
.site-footer a, #colophon a { color: var(--ur-txt2) !important; }
.site-footer a:hover { color: var(--ur-txt) !important; }
.ast-footer-copyright, .site-info { color: var(--ur-muted) !important; font-size: 0.8rem !important; }

/* Hide Astra credit */
.ast-footer-credit, span.ast-footer-credit, [class*="powered-by"] { display: none !important; }

/* Pagination */
.page-numbers { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; color: var(--ur-txt) !important; border-radius: 4px !important; padding: 4px 12px !important; text-decoration: none !important; }
.page-numbers.current, .page-numbers:hover { background: var(--ur-accent) !important; border-color: var(--ur-accent) !important; color: #fff !important; }

/* Search */
.search-form .search-field { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; color: var(--ur-txt) !important; border-radius: 6px !important; padding: 0.5rem !important; }
::placeholder { color: var(--ur-muted) !important; }

/* Comments */
.comment-list .comment-body { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; border-radius: 6px !important; padding: 1rem !important; margin-bottom: 1rem !important; }
.comments-title, #reply-title { color: var(--ur-txt) !important; }
.comment-form input, .comment-form textarea { background: var(--ur-surface) !important; border: 1px solid var(--ur-border) !important; color: var(--ur-txt) !important; border-radius: 6px !important; padding: 0.5rem !important; }
.comment-author .fn { color: var(--ur-txt) !important; }
.comment-metadata a { color: var(--ur-muted) !important; }
.comment-content p { color: var(--ur-txt2) !important; }

/* HR */
hr, .wp-block-separator { border-color: var(--ur-border) !important; opacity: 1 !important; }

/* Images */
img { border-radius: 6px; }

/* WP admin bar */
#wpadminbar { background: var(--ur-surface) !important; }
#wpadminbar * { color: var(--ur-txt2) !important; }

/* Tables */
table { border-collapse: collapse !important; width: 100% !important; }
th { background: var(--ur-surface) !important; color: var(--ur-txt) !important; border: 1px solid var(--ur-border) !important; padding: 0.5rem 0.75rem !important; }
td { border: 1px solid var(--ur-border) !important; padding: 0.5rem 0.75rem !important; color: var(--ur-txt2) !important; }
tr:nth-child(even) td { background: rgba(22,29,42,0.5) !important; }

/* Forms */
input[type="text"], input[type="email"], input[type="url"], input[type="password"], textarea, select {
  background: var(--ur-surface) !important;
  border: 1px solid var(--ur-border) !important;
  color: var(--ur-txt) !important;
  border-radius: 6px !important;
}

/* ===== CUSTOM HEADER ===== */
.ur-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(14,19,32,0.97);
  border-bottom: 1px solid #263041;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.ur-header-inner {
  max-width: 1152px;
  margin: 0 auto;
  padding: 0 20px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.ur-logo-link {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none !important;
  opacity: 1;
  transition: opacity 0.2s;
}
.ur-logo-link:hover { opacity: 0.8; }
.ur-logo-img { width: 32px; height: 32px; border-radius: 0; }
.ur-logo-text { font-size: 15px; font-weight: 600; letter-spacing: -0.02em; color: #F5F7FA !important; }
.ur-logo-accent { color: #60A5FA !important; }
.ur-logo-blog { color: #B0BBC9 !important; font-weight: 400; font-size: 13px; }
.ur-nav-list { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 28px; }
.ur-nav-list li a { color: #C5CDD8 !important; font-size: 0.875rem; font-weight: 500; text-decoration: none !important; transition: color 0.2s; }
.ur-nav-list li a:hover { color: #F5F7FA !important; }
.ur-nav-list .current-menu-item a { color: #2563EB !important; }
@media (max-width: 768px) { .ur-nav { display: none; } }

/* ===== TECH GRID (decorative lines) ===== */
.ur-tech-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(to right, rgba(120,170,255,0.07) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(120,170,255,0.07) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: linear-gradient(to right, transparent, #000 12%, #000 88%, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, #000 12%, #000 88%, transparent);
}

/* ===== CUSTOM FOOTER ===== */
.ur-footer {
  position: relative;
  overflow: hidden;
  background: #161D2A !important;
  border-top: 1px solid #263041 !important;
  margin-top: 4rem;
}
.ur-footer-inner {
  max-width: 1152px;
  margin: 0 auto;
  padding: 40px 20px;
}
.ur-footer-top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}
.ur-footer-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 20px; }
.ur-footer-nav a { color: #C5CDD8 !important; font-size: 0.875rem; text-decoration: none !important; transition: color 0.2s; }
.ur-footer-nav a:hover { color: #F5F7FA !important; }
.ur-footer-copy { color: #B0BBC9 !important; font-size: 0.75rem; margin: 0; }
.ur-footer-copy a { color: #B0BBC9 !important; text-decoration: none !important; }
.ur-footer-copy a:hover { color: #F5F7FA !important; }

/* Button style in nav/footer */
.ur-btn {
  background: #2563EB !important;
  color: #fff !important;
  border-radius: 6px !important;
  padding: 6px 14px !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background 0.2s, box-shadow 0.2s !important;
  white-space: nowrap;
}
.ur-btn:hover { background: #1D4ED8 !important; box-shadow: 0 0 16px rgba(37,99,235,0.4) !important; color: #fff !important; }

/* ===== HIDE OLD ASTRA HEADER/FOOTER (we use custom ones) ===== */
#ast-mobile-header, .ast-mobile-header-wrap { display: none !important; }
.ast-small-footer-wrap { display: none !important; }
.site-footer .ast-footer-copyright { display: none !important; }

/* ===== MAIN CONTENT SPACING ===== */
.ur-content { min-height: 70vh; padding: 2rem 0; }

/* ===== CONTRAST FIX — WCAG AA ===== */
/* All regular paragraph/list text: bright enough for 4.5:1 on #161D2A */
p, li, td, dd { color: #C5CDD8 !important; }

/* Entry content text — fully readable */
.entry-content p,
.entry-content li,
.entry-content td { color: #D4DCE6 !important; }

/* Post card excerpt text */
.entry-summary p,
.ast-excerpt p { color: #C5CDD8 !important; }

/* Meta / date / author — brighter muted */
.posted-on, .byline, .entry-meta, .ast-post-meta,
.ast-blog-meta, .ast-footer-meta,
.entry-meta a, .ast-post-meta a,
.comment-metadata a { color: #B0BBC9 !important; }

/* Widget text */
.widget p, .widget li, .widget a { color: #C5CDD8 !important; }

/* Footer copyright */
.ur-footer-copy, .ur-footer-copy a { color: #B0BBC9 !important; }

/* Nav links in footer */
.ur-footer-nav a { color: #C5CDD8 !important; }
.ur-footer-nav a:hover { color: #F5F7FA !important; }

/* Header nav */
.ur-nav-list li a { color: #C5CDD8 !important; }
.ur-nav-list li a:hover { color: #F5F7FA !important; }

/* Blog logo subtitle */
.ur-logo-blog { color: #B0BBC9 !important; }

/* Search placeholder */
::placeholder { color: #B0BBC9 !important; }

/* Sidebar widget text */
.widget-title, .widgettitle { color: #F5F7FA !important; }

/* ===== LAYOUT FIX — centered, padded content ===== */

/* Wrap entire site content in max-width container */
.ur-content,
#content.ur-content { 
  width: 100%;
  box-sizing: border-box;
}

/* Main content container */
#primary,
.ast-container,
.site-content .ast-container,
#content .ast-container {
  max-width: 1152px !important;
  margin: 0 auto !important;
  padding: 2rem 24px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Blog posts grid */
#main.site-main,
.ast-article-post,
.posts-container {
  width: 100% !important;
}

/* Astra inner wrapping */
.ast-row, .ast-grid-common-wrap {
  max-width: 1152px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Force blog index to have proper padding from edges */
.blog #primary,
.home #primary,
.archive #primary,
.search #primary {
  padding: 2.5rem 24px !important;
  max-width: 1152px !important;
  margin: 0 auto !important;
  width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* Post cards spacing */
.ast-article-post,
article.type-post,
article.hentry {
  margin-bottom: 1.5rem !important;
  max-width: 780px !important;
}

/* Single post */
.single #primary,
.page #primary {
  padding: 2.5rem 24px !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* Sidebar layout fix */
#secondary {
  padding: 2.5rem 16px 2.5rem 0 !important;
  box-sizing: border-box !important;
}

/* Remove Astra's default float-based layout */
.ast-right-sidebar #primary,
.ast-left-sidebar #primary { float: none !important; }

/* Astra no-sidebar layout */
.ast-no-sidebar #primary {
  width: 100% !important;
  float: none !important;
  padding: 2.5rem 24px !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

/* Better card max-width on wide screens */
@media (min-width: 1024px) {
  .ast-article-post, article.type-post { max-width: 720px !important; }
}

/* Breathing room on mobile */
@media (max-width: 640px) {
  .blog #primary, .home #primary, .archive #primary,
  .ast-no-sidebar #primary, .single #primary {
    padding: 1.25rem 16px !important;
  }
}

/* ===== FIX WHITE BOXES ===== */

/* --- Category / Archive header banner --- */
.ast-archive-description,
.ast-blog-single-element.ast-archive-description,
.taxonomy-description,
.page-header,
.ast-header-break-point .page-header,
.archive .page-header,
.category .page-header,
.tax-category .page-header,
.term-description,
.ast-page-builder-template .page-header,
.wp-block-query-title,
.entry-header.ast-no-thumbnail {
  background: var(--ur-bg) !important;
  color: var(--ur-txt) !important;
  border: none !important;
  padding: 1rem 0 !important;
}
.page-title, .archive-title, .cat-page-title {
  color: var(--ur-txt) !important;
  background: transparent !important;
}

/* Astra archive/category hero section */
.ast-archive-description .ast-archive-description-content,
.ast-blog-single-element-wrapper,
.ast-archive-description-wrapper {
  background: transparent !important;
  color: var(--ur-txt) !important;
}

/* Force all header/title areas dark */
.entry-header, .ast-article-inner .entry-header {
  background: transparent !important;
}

/* --- Comments section --- */
#comments,
.comments-area,
.comment-respond,
.comment-list,
.comment-list li,
.comment-body,
.comment-content {
  background: transparent !important;
  color: var(--ur-txt2) !important;
}

/* Comments title */
.comments-title, #reply-title, #comments h2 {
  color: var(--ur-txt) !important;
  border-bottom: 1px solid var(--ur-border) !important;
  padding-bottom: 0.75rem !important;
  margin-bottom: 1.5rem !important;
}

/* Comment form wrapper */
#respond, .comment-respond {
  background: var(--ur-surface) !important;
  border: 1px solid var(--ur-border) !important;
  border-radius: 8px !important;
  padding: 1.5rem !important;
  margin-top: 2rem !important;
}

/* Comment form inputs */
#respond input[type="text"],
#respond input[type="email"],
#respond input[type="url"],
#respond textarea,
.comment-form input,
.comment-form textarea {
  background: var(--ur-bg) !important;
  border: 1px solid var(--ur-border) !important;
  color: var(--ur-txt) !important;
  border-radius: 6px !important;
  padding: 0.6rem 0.8rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
#respond input:focus,
#respond textarea:focus {
  border-color: var(--ur-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(37,99,235,0.2) !important;
}

/* Individual comment items */
.comment-list .comment {
  background: var(--ur-surface) !important;
  border: 1px solid var(--ur-border) !important;
  border-radius: 8px !important;
  padding: 1rem !important;
  margin-bottom: 1rem !important;
  list-style: none !important;
}

/* Comment meta */
.comment-author, .comment-author .fn { color: var(--ur-txt) !important; }
.comment-metadata, .comment-metadata a { color: var(--ur-muted) !important; }

/* No comments message */
.no-comments, p.no-comments { color: var(--ur-txt2) !important; }

/* --- Any remaining white backgrounds from Astra --- */
.ast-blog-single-element-wrapper,
.ast-article-single-element-wrapper,
.ast-page-builder-template,
.ast-narrow-width-ele { background: transparent !important; }

/* Astra post thumbnail placeholder */
.ast-blog-featured-section,
.ast-blog-single-element.ast-featured-image { background: transparent !important; }

/* Astra page header */
.ast-page-title-bar, .ast-page-title-bar-wrap {
  background: var(--ur-bg) !important;
  border-bottom: 1px solid var(--ur-border) !important;
}
.ast-page-title-bar .page-title { color: var(--ur-txt) !important; }

/* Catch-all: any element with white background inside content */
#content *:not(img):not(input):not(textarea):not(select):not(pre):not(code) {
  --ast-global-color-0: var(--ur-bg);
  --ast-global-color-4: var(--ur-txt);
  --ast-global-color-5: var(--ur-txt2);
}

/* ===== DEEP CONTRAST FIX — ALL ELEMENTS ===== */

/* --- Checkbox & radio labels (the "Save my name..." text) --- */
.comment-form .comment-form-cookies-consent label,
.comment-form label,
#respond label,
input[type="checkbox"] + label,
input[type="radio"] + label,
.comment-notes,
.comment-notes a,
.required-field-message,
.logged-in-as,
.logged-in-as a {
  color: #C5CDD8 !important;
  font-size: 0.875rem !important;
}

/* Checkbox itself */
input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--ur-accent) !important;
  width: 16px !important;
  height: 16px !important;
}

/* --- ALL labels everywhere --- */
label { color: #C5CDD8 !important; }

/* --- Form field labels --- */
.comment-form .comment-form-author label,
.comment-form .comment-form-email label,
.comment-form .comment-form-url label,
.comment-form .comment-form-comment label {
  color: #C5CDD8 !important;
  font-weight: 500 !important;
  margin-bottom: 4px !important;
  display: block !important;
}

/* --- Small/required asterisk --- */
.required, .comment-form .required { color: #F87171 !important; }

/* --- "Your email will not be published" notice --- */
.comment-notes { color: #B0BBC9 !important; margin-bottom: 1rem !important; }

/* --- Post navigation (next/prev post links) --- */
.nav-links, .post-navigation, .posts-navigation,
.nav-previous a, .nav-next a,
.post-navigation a, .posts-navigation a { color: #C5CDD8 !important; }
.nav-previous a:hover, .nav-next a:hover { color: #F5F7FA !important; }

/* --- Breadcrumbs --- */
.ast-breadcrumbs, .breadcrumb, .breadcrumbs,
.ast-breadcrumbs-list li, .ast-breadcrumbs-list a {
  color: #B0BBC9 !important;
}
.ast-breadcrumbs-list .ast-breadcrumb-separator { color: #B0BBC9 !important; }

/* --- All small text / helper text --- */
small, .small, sup, sub, caption, figcaption { color: #B0BBC9 !important; }

/* --- Placeholder text --- */
::placeholder { color: #7A8899 !important; opacity: 1 !important; }
::-webkit-input-placeholder { color: #7A8899 !important; }
::-moz-placeholder { color: #7A8899 !important; opacity: 1 !important; }

/* --- "Posted in" / taxonomy below post --- */
.entry-footer, .entry-footer a,
.cat-links, .cat-links a,
.tags-links, .tags-links a,
.edit-link, .edit-link a {
  color: #B0BBC9 !important;
}

/* --- Astra back-to-top button --- */
#ast-scroll-top { background: var(--ur-accent) !important; color: #fff !important; }

/* --- Search results text --- */
.search-results .entry-title a { color: var(--ur-txt) !important; }
.search-no-results p { color: #C5CDD8 !important; }

/* --- 404 page --- */
.error404 .page-content p { color: #C5CDD8 !important; }

/* --- Astra global CSS variables override --- */
:root {
  --ast-global-color-0: #F5F7FA !important;
  --ast-global-color-1: #C5CDD8 !important;
  --ast-global-color-2: #2563EB !important;
  --ast-global-color-3: #38BDF8 !important;
  --ast-global-color-4: #F5F7FA !important;
  --ast-global-color-5: #C5CDD8 !important;
  --ast-body-color: #C5CDD8 !important;
  --ast-heading-color: #F5F7FA !important;
  --ast-link-color: #2563EB !important;
  --ast-link-h-color: #38BDF8 !important;
}

/* --- Force ALL text in body to be readable --- */
body, body * {
  color: inherit;
}
body {
  color: #C5CDD8 !important;
}

/* Override Astra's hardcoded white backgrounds on these specific Astra elements */
.ast-separate-container .ast-article-post,
.ast-separate-container article,
.ast-author-info,
.ast-comment-list-wrapper { background: transparent !important; }

.ast-single-post-order, .single-post .ast-article-post { background: transparent !important; }

/* Astra's widget areas */
.ast-sidebar-wrap .widget, .footer-widget-area .widget {
  background: var(--ur-surface) !important;
  color: #C5CDD8 !important;
}

/* Make sure no element has white background unless it's an image/input */
div, section, aside, article, main, header, footer, nav, span, p, li, ul, ol, h1, h2, h3, h4, h5, h6 {
  background-color: transparent;
}

/* ===== POST META — author / date — bright blue ===== */
.posted-on, .posted-on a,
.byline, .byline a,
.entry-meta, .entry-meta a,
.entry-meta .author, .entry-meta .date,
.ast-post-meta, .ast-post-meta a,
.ast-blog-meta, .ast-blog-meta a,
.ast-footer-meta, .ast-footer-meta a,
.ast-article-post .entry-meta,
.ast-article-post .entry-meta a,
.ast-article-post .posted-on,
.ast-article-post .byline,
.entry-meta .ast-meta-author,
.entry-meta .ast-meta-date,
.entry-meta span, .entry-meta a span,
time, time a, .entry-date,
.author.vcard a, .vcard a {
  color: #38BDF8 !important;
  font-size: 0.8rem !important;
}

.posted-on a:hover, .byline a:hover,
.entry-meta a:hover, .ast-post-meta a:hover {
  color: #7DD3FC !important;
}

/* Separator slash between author and date */
.entry-meta .ast-divider-sep,
.entry-meta .sep,
.entry-meta .meta-sep { color: #38BDF8 !important; }

/* ===== CONTRAST FIX: category tags, author name, meta links ===== */
a.category-link,
a[rel='category tag'],
.entry-meta a,
.ast-post-meta a,
.posted-in a,
.cat-links a,
span.author-name,
.author.vcard a,
.entry-footer a,
.ast-author-name,
.entry-categories a,
.entry-tags a {
    color: #93C5FD !important;
}
a.category-link:hover,
a[rel='category tag']:hover,
.entry-meta a:hover,
.cat-links a:hover,
.author.vcard a:hover {
    color: #BFDBFE !important;
}
