/* SSZ Site Unifier v3 */

:root{
  --ssz-site-body-font: inherit;
  --ssz-site-heading-font: inherit;
}

/*
  1) Hide the extra round sparkle/contact button in the header.
  We keep the normal nav "Contact" link.
*/
.ssz-header .ssz-featured-toggle,
.ssz-header .ssz-featured-btn,
.ssz-header .ssz-featured-toggle-btn,
.ssz-header .ssz-sparkle,
.ssz-header .ssz-sparkle-btn,
.ssz-header .ssz-star,
.ssz-header .ssz-star-btn,
.ssz-header a.ssz-featured-toggle,
.ssz-header a.ssz-sparkle,
.ssz-header button.ssz-featured-toggle,
.ssz-header button.ssz-sparkle{
  display: none !important;
}

/*
  2) Account pill (Sign in/Profile).
  The JS inserts <div class="ssz-account" ...>.
*/
.ssz-account{
  position: relative;
  z-index: 999999;
  font-family: var(--ssz-site-body-font);
}

.ssz-account .ssz-account-btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 9999px;
  border: 1px solid rgba(20, 140, 85, 0.18);
  background: #fff;
  box-shadow: 0 10px 25px rgba(0,0,0,0.07);
  cursor: pointer;
  user-select: none;
}

.ssz-account .ssz-account-dot{
  width: 10px;
  height: 10px;
  border-radius: 9999px;
  background: #24c55e;
  box-shadow: 0 0 0 4px rgba(36,197,94,0.18);
}

.ssz-account .ssz-account-label{
  font-weight: 600;
  font-size: 14px;
  color: #111827;
  white-space: nowrap;
}

.ssz-account .ssz-account-caret{
  font-size: 12px;
  opacity: 0.6;
  transform: translateY(1px);
}

.ssz-account .ssz-account-menu{
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 220px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,0.06);
  background: #fff;
  box-shadow: 0 18px 45px rgba(0,0,0,0.12);
  padding: 10px;
}

.ssz-account[data-open="1"] .ssz-account-menu{ display: block; }

.ssz-account .ssz-account-menu a{
  display: block;
  padding: 12px 12px;
  border-radius: 12px;
  text-decoration: none;
  color: #111827;
  font-weight: 600;
  font-size: 14px;
}

.ssz-account .ssz-account-menu a:hover{
  background: rgba(20, 140, 85, 0.08);
}

/*
  If the theme can't provide a clean insertion point, the JS falls back to fixed positioning.
*/
.ssz-account.is-fixed{
  position: fixed;
  top: 16px;
  right: 16px;
}

/* Mobile: match header height + keep away from the hamburger */
@media (max-width: 782px){
  .ssz-account.is-fixed{
    top: 14px;
    right: 68px; /* typical hamburger area */
  }
  .ssz-account .ssz-account-btn{
    padding: 9px 12px;
  }
}

/*
  3) wpForo typography + icon protection.
  We set fonts on the wrapper so children inherit naturally.
*/
#wpforo-wrap,
.wpforo{
  font-family: var(--ssz-site-body-font) !important;
  color: inherit;
}

#wpforo-wrap h1,
#wpforo-wrap h2,
#wpforo-wrap h3,
#wpforo-wrap h4,
#wpforo-wrap h5,
#wpforo-wrap h6{
  font-family: var(--ssz-site-heading-font) !important;
  letter-spacing: -0.01em;
}

#wpforo-wrap input,
#wpforo-wrap select,
#wpforo-wrap textarea,
#wpforo-wrap button{
  font-family: var(--ssz-site-body-font) !important;
}

/* Keep wpForo icon fonts working even if other CSS resets fonts aggressively */
.wpficon,
[class^="wpficon-"],
[class*=" wpficon-"]{
  font-family: "wpficon" !important;
}

/* Avoid breaking common icon sets */
.dashicons,
.fa,
.fas,
.far,
.fal,
.fab,
.material-icons{
  font-family: inherit;
}

/* Make the forum container feel like it belongs inside the site */
body.wpforo-page #wpforo-wrap{
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,0.06);
  background: rgba(255,255,255,0.98);
  box-shadow: 0 12px 30px rgba(0,0,0,0.08);
  overflow: hidden;
}

@media (max-width: 768px){
  body.wpforo-page #wpforo-wrap{
    border-radius: 18px;
    box-shadow: 0 10px 24px rgba(0,0,0,0.08);
  }
}

/* === Featured Articles shortcode safety ===
   Some earlier patch CSS used underscore classnames (.ssz_featured*) and hid the entire widget.
   Force the widget to be visible inside page content / Elementor only (not in header). */
.elementor .ssz_featured,
.elementor-widget-shortcode .ssz_featured,
.elementor .ssz_featured * ,
.elementor-widget-shortcode .ssz_featured * {
  display: revert !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.elementor .ssz_featured { 
  display: block !important;
}

/* Hide the old sparkle/featured header button variants (dash + underscore). */
.ssz_featured_btn,
.ssz_featured_toggle,
.ssz_featured_toggle_btn,
.ssz-featured-btn,
.ssz-featured-toggle,
.ssz-featured-toggle-btn {
  display: none !important;
}

/* Hide legacy "sparkle" / featured buttons (both dash and underscore variants) */
.ssz-featured-btn,
.ssz-featured-toggle,
.ssz-featured-toggle-btn,
.ssz_featured_btn,
.ssz_featured_toggle,
.ssz_featured_toggle_btn,
.ssz_featured_toggle__btn {
  display: none !important;
}

/* Font Awesome (wpForo toolbars often rely on FA classes) */
#wpforo-wrap .fa,
#wpforo-wrap .fas,
#wpforo-wrap .far,
#wpforo-wrap .fal{
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900;
}
#wpforo-wrap .fab{
  font-family: "Font Awesome 5 Brands" !important;
  font-weight: 400;
}
