/* =============================================
   TOPCRYPTOAPP — DARK HEADER & FOOTER
   ============================================= */

/* ---- HEADER ---- */
#masthead,
.site-header,
.ast-primary-header-bar,
.main-header-bar,
.main-header-bar-wrap {
  background-color: #0D1117 !important;
  border-bottom: 1px solid #30363D !important;
  box-shadow: none !important;
}

.ast-sticky-active .main-header-bar,
.ast-primary-sticky-header-active .main-header-bar {
  background-color: #0D1117 !important;
  border-bottom: 1px solid #30363D !important;
}

.site-title a, .ast-site-identity a { color: #E6EDF3 !important; }
.site-title a:hover { color: #22C55E !important; }

/* ---- NAV ---- */
.main-header-menu, #ast-hf-menu-1, .ast-nav-menu { background: transparent !important; }

.main-header-menu .menu-item > a,
.ast-nav-menu > li > a,
#ast-hf-menu-1 .menu-item > a {
  color: #E6EDF3 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 8px 14px !important;
}

.main-header-menu .menu-item > a:hover,
.ast-nav-menu > li > a:hover,
.main-header-menu .current-menu-item > a,
.ast-nav-menu > li.current-menu-item > a {
  color: #22C55E !important;
  background: transparent !important;
}

/* Dropdowns */
.main-header-menu .sub-menu,
.ast-nav-menu .sub-menu {
  background-color: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;
}

.main-header-menu .sub-menu .menu-item > a,
.ast-nav-menu .sub-menu li > a {
  color: #8B949E !important;
  font-size: 13px !important;
  padding: 10px 18px !important;
  border-bottom: 1px solid #30363D !important;
}

.main-header-menu .sub-menu .menu-item > a:hover,
.ast-nav-menu .sub-menu li > a:hover {
  color: #22C55E !important;
  background-color: #1C2333 !important;
}

/* ---- HEADER BUTTON ---- */
.ast-header-button-1 .ast-custom-button,
.header-main-layout-1 .ast-header-button-1 a,
.ast-header-button-1 a {
  background-color: #22C55E !important;
  color: #000 !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 9px 20px !important;
  border: none !important;
}
.ast-header-button-1 .ast-custom-button:hover,
.ast-header-button-1 a:hover {
  background-color: #16A34A !important;
  color: #000 !important;
}

/* ---- MOBILE ---- */
.ast-mobile-header-wrap,
.ast-header-break-point .main-header-bar,
#ast-mobile-header {
  background-color: #0D1117 !important;
  border-bottom: 1px solid #30363D !important;
}

.ast-mobile-menu-buttons .menu-toggle { color: #E6EDF3 !important; }

.ast-mobile-popup-drawer .ast-popup-header-wrap,
.ast-mobile-popup-inner,
.ast-mobile-nav-wrap {
  background-color: #0D1117 !important;
}

.ast-mobile-nav-wrap .menu-item > a {
  color: #E6EDF3 !important;
  border-bottom: 1px solid #30363D !important;
  padding: 12px 20px !important;
}
.ast-mobile-nav-wrap .menu-item > a:hover {
  color: #22C55E !important;
  background: #161B22 !important;
}

/* ---- SEARCH ---- */
.ast-search-icon, .ast-search-icon svg { color: #8B949E !important; fill: #8B949E !important; }
.ast-search-icon:hover svg { color: #22C55E !important; fill: #22C55E !important; }
.search-form .search-field {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  color: #E6EDF3 !important;
  border-radius: 6px !important;
}

/* ---- FOOTER ---- */
#colophon,
.site-footer,
.ast-above-footer-bar,
.ast-primary-footer-bar,
.ast-below-footer-bar {
  background-color: #0D1117 !important;
  border-top: 1px solid #30363D !important;
}

.ast-above-footer-bar {
  background-color: #161B22 !important;
  border-bottom: 1px solid #30363D !important;
}

.ast-footer-copyright,
.site-footer p { color: #8B949E !important; font-size: 13px !important; }

.site-footer a { color: #E6EDF3 !important; text-decoration: none !important; }
.site-footer a:hover { color: #22C55E !important; }

.ast-footer-nav .menu-item > a { color: #8B949E !important; font-size: 13px !important; }
.ast-footer-nav .menu-item > a:hover { color: #22C55E !important; }

.footer-widget-area,
.ast-footer-widget-area {
  background-color: #161B22 !important;
  border-top: 1px solid #30363D !important;
  padding: 40px 0 !important;
}
.footer-widget-area .widget-title { color: #E6EDF3 !important; font-size: 14px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 1px !important; }
.footer-widget-area .widget { color: #8B949E !important; }

/* ---- BODY & GLOBAL CONTAINERS ---- */
html,
body,
.ast-separate-container,
.ast-plain-container {
  background-color: #0F172A !important;
  color: #E6EDF3 !important;
}
.hfeed,
.ast-site-content-wrap,
#page,
.site {
  background-color: #0F172A !important;
}
/* Main content area - covers the white area between header+footer on archive/static pages */
#content,
.site-content,
.ast-content-layout-wrap,
.ast-grid-right-section,
.ast-grid-left-section,
.ast-content-layout {
  background-color: #0F172A !important;
}
/* Astra blog post separator areas */
.ast-separate-container #primary,
.ast-plain-container #primary {
  background-color: #0F172A !important;
}

/* ---- ADMIN BAR ---- */
#wpadminbar { background: #23282d !important; }

/* Rankings dropdown indicator */
.main-header-menu .menu-item-has-children > a::after {
  content: " ▾";
  font-size: 10px;
  opacity: 0.6;
  margin-left: 2px;
}
/* Active page highlight */
.main-header-menu .current-menu-item > a,
.main-header-menu .current-menu-ancestor > a {
  color: #22C55E !important;
}
/* Dropdown arrow remove Astra default */
.ast-menu-toggle { color: #8B949E !important; }
.ast-menu-toggle:hover { color: #22C55E !important; }

/* ---- FOOTER BELOW BAR (copyright + legal menu) ---- */
.ast-below-footer-bar {
  background-color: #0D1117 !important;
  border-top: 1px solid #30363D !important;
  padding: 16px 60px !important;
}
.ast-below-footer-bar .ast-footer-copyright {
  color: #8B949E !important;
  font-size: 13px !important;
}
/* Legal menu in below bar - horizontal, no bullets */
.ast-below-footer-bar .footer-nav-wrap ul,
.ast-below-footer-bar .ast-footer-nav ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-end !important;
}
.ast-below-footer-bar .footer-nav-wrap ul li,
.ast-below-footer-bar .ast-footer-nav ul li {
  display: inline-flex !important;
}
.ast-below-footer-bar .footer-nav-wrap ul li a,
.ast-below-footer-bar .ast-footer-nav ul li a {
  color: #8B949E !important;
  font-size: 12px !important;
  text-decoration: none !important;
  padding: 0 12px !important;
  border-right: 1px solid #30363D !important;
  line-height: 1 !important;
}
.ast-below-footer-bar .footer-nav-wrap ul li:last-child a,
.ast-below-footer-bar .ast-footer-nav ul li:last-child a {
  border-right: none !important;
  padding-right: 0 !important;
}
.ast-below-footer-bar .footer-nav-wrap ul li a:hover,
.ast-below-footer-bar .ast-footer-nav ul li a:hover {
  color: #22C55E !important;
}

/* ---- PRIMARY FOOTER ROW (widget area) ---- */
.ast-primary-footer-bar {
  background-color: #161B22 !important;
  border-top: 1px solid #30363D !important;
}

/* Footer widget title */
.footer-widget-area .widget-title,
.ast-footer-widget-area .widget-title,
.wp-block-heading {
  color: #E6EDF3 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 16px !important;
}

/* Quick Links nav in footer widget */
.footer-widget-area .widget_nav_menu ul,
.ast-footer-widget-area .widget_nav_menu ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.footer-widget-area .widget_nav_menu ul li a,
.ast-footer-widget-area .widget_nav_menu ul li a {
  color: #8B949E !important;
  font-size: 13px !important;
  text-decoration: none !important;
  display: block !important;
  padding: 5px 0 !important;
  border-bottom: 1px solid #1C2333 !important;
  transition: color 0.2s ease !important;
}
.footer-widget-area .widget_nav_menu ul li a:hover,
.ast-footer-widget-area .widget_nav_menu ul li a:hover {
  color: #22C55E !important;
  padding-left: 4px !important;
}

/* Suppress above footer row entirely */
.ast-above-footer-bar { display: none !important; }

@media (max-width: 768px) {
  .ast-below-footer-bar {
    padding: 16px 20px !important;
    flex-direction: column !important;
    text-align: center !important;
    gap: 10px !important;
  }
  .ast-below-footer-bar .footer-nav-wrap ul,
  .ast-below-footer-bar .ast-footer-nav ul {
    justify-content: center !important;
  }
}

/* ---- CATEGORY ARCHIVE PAGES ---- */
.archive .page-header,
.archive .ast-archive-description,
.term-description {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 32px !important;
}

/* Category description container */
.term-description > div,
.ast-archive-description > div {
  margin: 0 auto !important;
  max-width: 100% !important;
}

/* Archive page title - hide default (our desc has the h1) */
.archive .page-title,
.archive .ast-archive-description + .page-title {
  display: none !important;
}

/* Post/article cards on archive pages */
.archive .ast-article-post,
.archive article {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 12px !important;
  padding: 24px !important;
  margin-bottom: 20px !important;
  transition: border-color 0.2s ease !important;
}
.archive .ast-article-post:hover,
.archive article:hover {
  border-color: #22C55E !important;
}

/* Post title links on archive */
.archive .entry-title a,
.archive h2.entry-title a {
  color: #E6EDF3 !important;
  text-decoration: none !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}
.archive .entry-title a:hover {
  color: #22C55E !important;
}

/* Post excerpt on archive */
.archive .entry-summary,
.archive .entry-content p {
  color: #8B949E !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

/* Post meta (date, author, cats) */
.archive .entry-meta,
.archive .posted-on,
.archive .byline {
  color: #8B949E !important;
  font-size: 12px !important;
}
.archive .entry-meta a,
.archive .posted-on a,
.archive .byline a {
  color: #8B949E !important;
}
.archive .entry-meta a:hover {
  color: #22C55E !important;
}

/* Category label badge on archive cards */
.archive .cat-links a {
  background: #1C2333 !important;
  border: 1px solid #30363D !important;
  color: #22C55E !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 2px 10px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

/* Read more link */
.archive .more-link,
.archive a.more-link {
  color: #22C55E !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.archive .more-link:hover { opacity: 0.8 !important; }

/* Pagination */
.archive .pagination .nav-links a,
.archive .pagination .nav-links span {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  color: #E6EDF3 !important;
  padding: 8px 14px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  font-size: 13px !important;
}
.archive .pagination .nav-links .current {
  background: #22C55E !important;
  color: #000 !important;
  border-color: #22C55E !important;
}
.archive .pagination .nav-links a:hover {
  border-color: #22C55E !important;
  color: #22C55E !important;
}

/* Archive page layout wrapper */
.archive .site-content {
  background: #0F172A !important;
}
.archive #primary {
  padding: 40px 0 !important;
}

/* No posts message */
.archive .no-results {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 12px !important;
  padding: 40px !important;
  text-align: center !important;
  color: #8B949E !important;
}

/* ============================================
   DARK ARCHIVE / CATEGORY PAGES
   ============================================ */

/* Force dark bg on all archive wrappers */
.archive .site-content,
.archive #primary,
.archive #content,
.archive .ast-container,
.archive .content-area,
.archive .ast-full-width-content,
.archive .ast-blog-layout-1,
.archive .ast-blog-posts-layout {
  background: #0F172A !important;
}

/* Page hero / archive header */
.archive .page-header,
.archive .ast-archive-description,
.archive .term-description,
.category .page-header,
.category .ast-archive-description,
.category .term-description {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
}

/* Kill Astra page title on category archives */
.archive .page-title,
.category .page-title,
.archive .ast-archive-title,
.category .ast-archive-title {
  display: none !important;
}

/* Term description rendered HTML - full width */
.archive .term-description > *,
.category .term-description > * {
  max-width: 100% !important;
}

/* Article/post cards on archive */
.archive article,
.archive .ast-article-post,
.archive .blog-layout-1 article {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 14px !important;
  padding: 28px 32px !important;
  margin: 0 0 20px !important;
  transition: border-color 0.2s, transform 0.2s !important;
  box-shadow: none !important;
}
.archive article:hover,
.archive .ast-article-post:hover {
  border-color: #22C55E !important;
  transform: translateY(-2px) !important;
}

/* Post title */
.archive .entry-title,
.archive h2.entry-title {
  margin: 0 0 10px !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}
.archive .entry-title a,
.archive h2.entry-title a {
  color: #E6EDF3 !important;
  text-decoration: none !important;
}
.archive .entry-title a:hover {
  color: #22C55E !important;
}

/* Post excerpt */
.archive .entry-summary p,
.archive .entry-content p {
  color: #8B949E !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  margin: 0 0 16px !important;
}

/* Post meta row */
.archive .entry-meta,
.archive .ast-blog-single-element-spacing {
  color: #8B949E !important;
  font-size: 12px !important;
  margin: 0 0 10px !important;
}
.archive .entry-meta a,
.archive .posted-on a,
.archive .byline a,
.archive .entry-footer a {
  color: #8B949E !important;
  text-decoration: none !important;
}
.archive .entry-meta a:hover { color: #22C55E !important; }

/* Category pill badge on post card */
.archive .cat-links a,
.archive .ast-post-categories a {
  display: inline-block !important;
  background: #1C2333 !important;
  border: 1px solid #30363D !important;
  color: #22C55E !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 3px 10px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin-right: 6px !important;
}

/* Read more link */
.archive a.more-link,
.archive .ast-read-more {
  display: inline-block !important;
  background: #1C2333 !important;
  border: 1px solid #30363D !important;
  color: #22C55E !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 7px 16px !important;
  border-radius: 7px !important;
  text-decoration: none !important;
  margin-top: 8px !important;
  transition: border-color 0.2s !important;
}
.archive a.more-link:hover {
  border-color: #22C55E !important;
  background: #22C55E !important;
  color: #000 !important;
}

/* Featured image on archive cards */
.archive .post-thumb,
.archive .ast-blog-featured-section {
  display: none !important;
}

/* Archive sidebar (if any) */
.archive #secondary,
.archive .widget-area {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 12px !important;
  padding: 24px !important;
}
.archive .widget-title {
  color: #E6EDF3 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border-bottom: 1px solid #30363D !important;
  padding-bottom: 10px !important;
  margin-bottom: 14px !important;
}
.archive .widget a { color: #8B949E !important; }
.archive .widget a:hover { color: #22C55E !important; }

/* Pagination */
.archive .page-links a,
.archive .pagination .nav-links a,
.archive .pagination .nav-links span.current {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  color: #E6EDF3 !important;
  padding: 8px 16px !important;
  border-radius: 7px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: border-color 0.2s !important;
}
.archive .pagination .nav-links span.current,
.archive .pagination .nav-links a:hover {
  background: #22C55E !important;
  border-color: #22C55E !important;
  color: #000 !important;
}

/* No posts */
.archive .no-results.not-found {
  background: #161B22 !important;
  border: 1px solid #30363D !important;
  border-radius: 14px !important;
  padding: 48px !important;
  text-align: center !important;
  color: #8B949E !important;
}
.archive .no-results .page-title {
  display: block !important;
  color: #E6EDF3 !important;
  font-size: 22px !important;
}

/* Entry footer */
.archive .entry-footer,
.archive .ast-tags-single-post {
  border-top: 1px solid #30363D !important;
  padding-top: 12px !important;
  margin-top: 16px !important;
  color: #8B949E !important;
  font-size: 12px !important;
}
.archive .entry-footer a { color: #8B949E !important; }
.archive .entry-footer a:hover { color: #22C55E !important; }

/* Date dividers */
.archive .ast-blog-date-box {
  background: #1C2333 !important;
  border: 1px solid #30363D !important;
  color: #E6EDF3 !important;
  border-radius: 8px !important;
}

/* Astra content layout override for archive */
.archive.ast-separate-container .ast-article-post,
.category.ast-separate-container .ast-article-post {
  background: #161B22 !important;
  border-color: #30363D !important;
}
.archive.ast-separate-container #primary,
.category.ast-separate-container #primary {
  padding-top: 0 !important;
}

/* Override any Astra light separator */
.archive hr, .category hr {
  border-color: #30363D !important;
}

/* Ensure body background shows through on all archive paths */
body.archive,
body.category,
body.tag {
  background: #0F172A !important;
}

/* Outer content area - remove Astra white box */
.archive .ast-grid-common-col,
.archive .ast-full-width-content .ast-container {
  background: transparent !important;
  box-shadow: none !important;
}

/* Entry content container max-width */
.archive .entry-content {
  max-width: 100% !important;
}

/* Post thumbnail / image container */
.archive .wp-post-image,
.archive .ast-blog-single-element {
  border-radius: 8px !important;
  overflow: hidden !important;
}

/* Term/category description - full bleed, no padding or border from Astra */
.ast-archive-description .term-description,
.ast-separate-container .term-description {
  padding: 0 !important;
  margin: 0 0 40px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Force dark on Astra blog grid wrappers */
.ast-blog-layout,
.ast-blog-posts-layout-1,
.ast-blog-posts-layout-6 {
  background: transparent !important;
}

@media (max-width: 768px) {
  .archive article,
  .archive .ast-article-post {
    padding: 20px !important;
    border-radius: 10px !important;
  }
  .archive .entry-title { font-size: 17px !important; }
}

/* ---- ALL PAGES: prevent white content wrapper showing above/below Elementor ---- */
.elementor-page #content,
.elementor-page .site-content,
.elementor-page #primary,
.ast-page-builder-template #content,
.ast-page-builder-template .site-content,
.ast-full-width-content,
.ast-page-builder-template #primary {
  background-color: #0F172A !important;
  padding: 0 !important;
}
/* Single post pages */
.single #content,
.single .site-content,
.single #primary {
  background-color: #0F172A !important;
}
/* Between header and Elementor content */
.ast-below-header-section,
.ast-primary-header-bar + #content {
  background-color: #0F172A !important;
}
