/* =============================================================================
   UCA COMPONENT STYLES
   Consolidated from the Avada Code Blocks that previously held inline <style>.

   Sections:
     1. Forum list            (.uca-forum-*)
     2. Last-post timestamp   (.uca-forum-lastpost*)
     3. Community activity     (.uca-latest-activity / .uca-bbp-*)
     4. Recent Topics card     (.uca-recent-topics / .uca-recent-topic-*)
     5. Recent Replies card    (.uca-recent-replies / .uca-recent-reply-*)
     6. Shared header helpers  (.uca-recent-header / -title / -viewall)
     7. Global / plugin overrides (MemberPress, LearnDash, bbPress, avatars,
                                   reCAPTCHA badge)
     8. Sidebar menu + "New Here?" card (.uca-menu-* / .uca-newhere-*)
        — includes the .uca-menu-item--primary styling used by the
          [uca_resume_lesson] shortcode output.
     9. Progress Journal header (.uca-pj-*)
    10. Forum clean-card styling (#bbpress-forums single-topic view)
    11. Forum topic-list cards (#bbpress-forums forum index / topics loop)
    12. Member Guide hero + card grid (.uca-guide-*)
        — Landing-page hero, 3-up card grid with inline SVG icons,
          and a teal forum CTA tile. Inner guide pages use the
          .uca-guide-header two-column wrapper (sidebar + intro card),
          reusing the Section 8 sidebar menu (.uca-menu-item) — with
          the .uca-menu-item--active modifier for "you are here".
    13. Forum search bar in title bar (per-page positioning)
    14. BuddyPress member profile (.uca-user-handle + cover image)
    15. Logged-out homepage (.uca-home-* / .uca-winback / .uca-intro)
    16. UC ACCENT OVERRIDES (amber) — re-applies #ffad2b on accent roles

   UC palette: structural dark = slate #454e62, bright accent = amber #ffad2b,
   deep heading/band = #232834, white #ffffff. CGC's teal was remapped to slate
   (contrast-safe for white text) and amber is layered back via Section 16.
   ============================================================================= */


/* =============================================================================
   1 + 2. FORUM LIST & LAST-POST TIMESTAMP
   ============================================================================= */
.uca-forum-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 18px;
}

.uca-forum-list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 6px 12px;
  margin-bottom: 4px;
  border-bottom: 1px solid #eef2f5;
  gap: 12px;
}

.uca-forum-list-title {
  font-size: 16px;
  font-weight: 600;
  color: #232834;
  margin: 0;
  letter-spacing: -0.01em;
}

.uca-forum-list-viewall {
  font-size: 12px;
  font-weight: 600;
  color: #454e62;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.2s ease;
}

.uca-forum-list-viewall:hover {
  color: #373d4d;
  text-decoration: none;
}

/* Outer wrapper is a <div>, not an <a>.
   It hosts the hover state for the whole row. */
.uca-forum-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: #ffffff;
  border: 1px solid transparent;
  border-radius: 8px;
  color: #232834;
  transition: all 0.2s ease;
}

.uca-forum-item:hover {
  background: #f7fafc;
  border-color: #e3eaf0;
  transform: translateX(2px);
}

.uca-forum-item--active {
  background: #fff6e8;
  border-color: #f3e4cb;
}

/* Inner link wraps icon + text (the "main" clickable area).
   Takes up all available space so most of the row goes to the forum. */
.uca-forum-item-link {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

.uca-forum-item-link:hover {
  text-decoration: none;
  color: inherit;
}

.uca-forum-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff6e8;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #454e62;
  font-size: 13px;
  flex-shrink: 0;
  transition: background 0.2s ease;
}

.uca-forum-item:hover .uca-forum-icon {
  background: #f3e4cb;
}

.uca-forum-text {
  flex: 1;
  min-width: 0;
}

.uca-forum-name {
  font-size: 14px;
  font-weight: 600;
  color: #232834;
  line-height: 1.3;
  margin-bottom: 1px;
  letter-spacing: -0.01em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.uca-forum-meta {
  font-size: 12px;
  color: #8a9aa6;
  line-height: 1.3;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* === Last post block (an <a> tag, clickable to latest post) === */
.uca-forum-lastpost {
  flex-shrink: 0;
  text-align: right;
  line-height: 1.3;
  margin-left: auto;
  padding: 4px 6px;
  margin-right: -6px; /* visually align with row edge while keeping click padding */
  border-radius: 4px;
  text-decoration: none;
  transition: background 0.15s ease;
  display: block;
}

.uca-forum-lastpost:hover {
  background: rgba(26, 143, 184, 0.08);
  text-decoration: none;
}

.uca-forum-lastpost-time {
  font-size: 11px;
  font-weight: 500;
  color: #b8c4cd;
  white-space: nowrap;
  transition: color 0.2s ease;
  display: block;
}

.uca-forum-lastpost-author {
  display: none;
}

.uca-forum-lastpost--empty .uca-forum-lastpost-time {
  color: #d6dde3;
  font-style: italic;
}

/* Row hover tints the timestamp */
.uca-forum-item:hover .uca-forum-lastpost-time {
  color: #454e62;
}

/* Direct timestamp hover deepens the teal so the user knows it's its own link */
.uca-forum-lastpost:hover .uca-forum-lastpost-time {
  color: #373d4d;
  font-weight: 600;
}

@media (max-width: 768px) {
  .uca-forum-list {
    padding: 14px;
  }

  .uca-forum-item {
    padding: 10px;
    gap: 10px;
  }

  .uca-forum-icon {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }

  .uca-forum-name {
    font-size: 13px;
  }

  .uca-forum-meta {
    font-size: 11px;
  }
}


/* =============================================================================
   3. COMMUNITY ACTIVITY FEED (.uca-latest-activity / .uca-bbp-*)
   ============================================================================= */
.uca-latest-activity {
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 24px 28px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-activity-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  gap: 12px;
}

.uca-activity-title {
  font-size: 18px;
  font-weight: 600;
  color: #232834;
  margin: 0;
  letter-spacing: -0.01em;
}

.uca-activity-viewall {
  font-size: 13px;
  font-weight: 600;
  color: #454e62;
  text-decoration: none;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s ease;
}

.uca-activity-viewall:hover {
  color: #373d4d;
  text-decoration: none;
}

.uca-activity-viewall .uca-arrow {
  display: inline-block;
  transition: transform 0.2s ease;
}

.uca-activity-viewall:hover .uca-arrow {
  transform: translateX(3px);
}

/* ---- bbPress custom list ---- */
.uca-bbp-wrapper {
  font-family: inherit;
  min-width: 0;
  overflow: hidden;
}

.uca-bbp-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.uca-bbp-item {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  column-gap: 14px !important;
  padding: 18px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #eef2f5 !important;
  list-style: none !important;
}

.uca-bbp-item:first-child {
  padding-top: 0 !important;
}

.uca-bbp-item:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

/* Avatar */
.uca-bbp-avatar img,
.uca-bbp-avatar img.avatar {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
  border: none !important;
}

/* Header line (author + action + topic + time) */
.uca-bbp-content {
  min-width: 0;
}

.uca-bbp-header {
  font-size: 14px;
  line-height: 1.5;
  color: #5a6b7a;
  margin-bottom: 8px;
}

.uca-bbp-author {
  color: #232834 !important;
  font-weight: 600 !important;
}

.uca-bbp-topic {
  color: #454e62 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color 0.2s ease;
}

.uca-bbp-topic:hover {
  color: #373d4d !important;
  text-decoration: underline !important;
}

.uca-bbp-action {
  margin: 0 4px;
}

.uca-bbp-time {
  display: block;
  color: #8a9aa6;
  font-size: 12px;
  font-weight: 500;
  margin-top: 2px;
}

/* Inner content excerpt */
.uca-bbp-inner {
  padding: 12px 14px;
  background: #f7fafc;
  border-radius: 8px;
  border: 1px solid #eef2f5;
  font-size: 14px;
  line-height: 1.55;
  color: #232834;
  min-width: 0;
  overflow: hidden;
}

.uca-bbp-inner p {
  margin: 0 0 8px 0;
  padding: 0;
}

.uca-bbp-inner p:last-child {
  margin-bottom: 0;
}

.uca-bbp-inner a {
  color: #454e62 !important;
  text-decoration: none !important;
}

.uca-bbp-inner a:hover {
  text-decoration: underline !important;
}

/* Responsive video embeds */
.uca-bbp-inner iframe,
.uca-bbp-inner embed,
.uca-bbp-inner object,
.uca-bbp-inner video {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  border-radius: 8px !important;
  display: block !important;
  margin: 8px 0 !important;
  border: none !important;
}

.uca-bbp-inner img {
  max-width: 100% !important;
  height: auto !important;
}

/* ---- Reply action row ---- */
.uca-bbp-actions {
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.uca-bbp-reply-btn {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #454e62 !important;
  text-decoration: none !important;
  padding: 6px 12px;
  border: 1px solid #d9e3eb;
  border-radius: 6px;
  background: #ffffff;
  transition: all 0.2s ease;
  line-height: 1;
}

.uca-bbp-reply-btn:hover {
  color: #ffffff !important;
  background: #454e62;
  border-color: #454e62;
  text-decoration: none !important;
}

.uca-bbp-reply-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.uca-bbp-empty {
  color: #8a9aa6;
  font-size: 14px;
  margin: 0;
}

/* "Load more" button for [uca-bbp-latest]. */
.uca-bbp-loadmore-wrap {
  display: flex;
  justify-content: center;
  margin: 16px 0 0;
}

.uca-bbp-loadmore-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  color: #454e62;
  background: #ffffff;
  border: 1px solid #d9e3eb;
  border-radius: 8px;
  padding: 10px 22px;
  cursor: pointer;
  transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.uca-bbp-loadmore-btn:hover:not(:disabled) {
  color: #ffffff;
  background: #454e62;
  border-color: #454e62;
}

.uca-bbp-loadmore-btn:disabled {
  opacity: 0.6;
  cursor: default;
}

@media (max-width: 600px) {
  .uca-latest-activity {
    padding: 20px;
    border-radius: 10px;
  }

  .uca-activity-title {
    font-size: 17px;
  }

  .uca-bbp-item {
    grid-template-columns: 40px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    padding: 14px 0 !important;
  }

  .uca-bbp-avatar img,
  .uca-bbp-avatar img.avatar {
    width: 40px !important;
    height: 40px !important;
  }

  .uca-bbp-header,
  .uca-bbp-inner {
    font-size: 13px !important;
  }

  .uca-bbp-reply-btn {
    font-size: 12px !important;
    padding: 5px 10px;
  }
}


/* =============================================================================
   6. SHARED HEADER HELPERS
   Used by both the Recent Topics and Recent Replies cards. Defined once here
   (the original Code Blocks duplicated these — consolidated, no conflict).
   ============================================================================= */
.uca-recent-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  gap: 12px;
}

.uca-recent-title {
  font-size: 18px;
  font-weight: 600;
  color: #232834;
  margin: 0;
  letter-spacing: -0.01em;
}

.uca-recent-viewall {
  font-size: 13px;
  font-weight: 600;
  color: #454e62;
  text-decoration: none;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s ease;
}

.uca-recent-viewall:hover {
  color: #373d4d;
  text-decoration: none;
}

.uca-recent-viewall .uca-arrow {
  display: inline-block;
  transition: transform 0.2s ease;
}

.uca-recent-viewall:hover .uca-arrow {
  transform: translateX(3px);
}


/* =============================================================================
   4. RECENT TOPICS CARD
   ============================================================================= */
.uca-recent-topics {
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 24px 28px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-recent-topic-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.uca-recent-topic-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #eef2f5 !important;
  list-style: none !important;
}

.uca-recent-topic-item:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.uca-recent-topic-item:first-child {
  padding-top: 0 !important;
}

.uca-recent-topic-icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fff6e8;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #454e62;
  font-size: 12px;
  flex-shrink: 0;
}

.uca-recent-topic-link {
  flex: 1;
  font-size: 14px;
  font-weight: 500;
  color: #454e62;
  text-decoration: none;
  line-height: 1.4;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s ease;
}

.uca-recent-topic-link:hover {
  color: #373d4d;
  text-decoration: underline;
}

@media (max-width: 600px) {
  .uca-recent-topics {
    padding: 20px;
    border-radius: 10px;
  }

  .uca-recent-topics .uca-recent-title {
    font-size: 17px;
  }

  .uca-recent-topic-item {
    padding: 12px 0 !important;
    gap: 10px !important;
  }

  .uca-recent-topic-link {
    font-size: 13px;
    white-space: normal;
  }
}


/* =============================================================================
   5. RECENT REPLIES CARD
   ============================================================================= */
.uca-recent-replies {
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 24px 28px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-recent-reply-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.uca-recent-reply-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  margin: 0 !important;
  border-bottom: 1px solid #eef2f5 !important;
  list-style: none !important;
}

.uca-recent-reply-item:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.uca-recent-reply-item:first-child {
  padding-top: 0 !important;
}

/* Avatar */
.uca-recent-reply-avatar {
  flex-shrink: 0;
}

.uca-recent-reply-avatar img,
.uca-recent-reply-avatar-img {
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border: none !important;
}

/* Text column */
.uca-recent-reply-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.uca-recent-reply-author {
  font-size: 13px;
  font-weight: 600;
  color: #232834;
  line-height: 1.3;
  letter-spacing: -0.01em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.uca-recent-reply-link {
  font-size: 13px;
  color: #454e62;
  text-decoration: none;
  line-height: 1.4;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s ease;
}

.uca-recent-reply-link:hover {
  color: #373d4d;
  text-decoration: underline;
}

@media (max-width: 600px) {
  .uca-recent-replies {
    padding: 20px;
    border-radius: 10px;
  }

  .uca-recent-replies .uca-recent-title {
    font-size: 17px;
  }

  .uca-recent-reply-item {
    padding: 12px 0 !important;
    gap: 10px !important;
  }

  .uca-recent-reply-avatar img,
  .uca-recent-reply-avatar-img {
    width: 32px !important;
    height: 32px !important;
  }

  .uca-recent-reply-author,
  .uca-recent-reply-link {
    font-size: 12px;
  }

  .uca-recent-reply-link {
    white-space: normal;
  }
}


/* =============================================================================
   7. GLOBAL / PLUGIN OVERRIDES
   Migrated from Avada's "Custom CSS" box (Avada → Options → Custom CSS).
   These target plugin output (MemberPress, LearnDash, bbPress) and avatars
   rather than the UCA components above.
   ============================================================================= */

/* MemberPress submit button */
.mepr-submit {
  background-color: #4CAF50; /* Green */
  border: none;
  color: white;
  padding: 15px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 18px;
  width: 50%;
}

/* LearnDash "resume course" button */
a.learndash-resume-button input[type="submit"] {
  color: #FFF;
  font-size: 16px;
  background-color: #454e62;
  font-weight: bold;
  width: 100%;
  border: 1px white;
  padding: 15px 32px;
  text-align: center;
}

/* bbPress topic & reply body copy */
#bbpress-forums .bbp-topic-content,
#bbpress-forums .bbp-reply-content {
  font-size: 15px;
  color: #444444;
  line-height: 1.7em;
}

/* Rounded avatars (global) */
.avatar {
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  width: 80px;
  height: 80px;
}

.avatar-50 {
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  width: 40px;
  height: 40px;
}

.avatar-14 {
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  width: 40px;
  height: 40px;
  padding: 2px;
}

/* Hide the reCAPTCHA v3 badge (ensure your privacy policy keeps the required
   reCAPTCHA attribution text somewhere on the site). */
.grecaptcha-badge {
  visibility: hidden;
}


/* =============================================================================
   8. SIDEBAR MENU + "NEW HERE?" CARD
   Migrated from the sidebar Avada Code Block. The .uca-menu-item--primary
   rules here are what give the [uca_resume_lesson] / [uo_learndash_resume]
   output its teal button styling.
   ============================================================================= */
.uca-sidebar-menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  margin-bottom: 16px;
}

.uca-menu-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 10px;
  text-decoration: none;
  color: #232834;
  transition: all 0.2s ease;
  cursor: pointer;
}

.uca-menu-item:hover {
  border-color: #ecd0a0;
  background: #f7fafc;
  transform: translateX(2px);
  text-decoration: none;
}

.uca-menu-item--primary {
  background: #454e62;
  border-color: #454e62;
  color: #ffffff;
}

.uca-menu-item--primary:hover {
  background: #373d4d;
  border-color: #373d4d;
  color: #ffffff;
}

.uca-menu-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff6e8;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #454e62;
  font-size: 15px;
  flex-shrink: 0;
  transition: background 0.2s ease, color 0.2s ease;
}

.uca-menu-item--primary .uca-menu-icon {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
}

.uca-menu-text {
  flex: 1;
  min-width: 0;
}

.uca-menu-title {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 2px;
  letter-spacing: -0.01em;
}

.uca-menu-subtitle {
  font-size: 13px;
  color: #6b7c8a;
  line-height: 1.3;
}

.uca-menu-item--primary .uca-menu-subtitle {
  color: rgba(255, 255, 255, 0.85);
}

.uca-menu-chevron {
  color: #9aacb8;
  font-size: 12px;
  flex-shrink: 0;
  transition: transform 0.2s ease, color 0.2s ease;
}

.uca-menu-item:hover .uca-menu-chevron {
  transform: translateX(3px);
  color: #454e62;
}

.uca-menu-item--primary .uca-menu-chevron {
  color: rgba(255, 255, 255, 0.9);
}

.uca-menu-item--primary:hover .uca-menu-chevron {
  color: #ffffff;
}

/* --active modifier: "you are here" state for inner-page sidebars.
   Pale teal background + deeper teal text + left accent stripe.
   Coexists with --primary (which is the bold filled pill style). */
.uca-menu-item--active {
  background: #fff6e8;
  border-color: #ecd0a0;
  border-left: 3px solid #454e62;
  padding-left: 15px; /* 18 - 3 to keep text aligned with other items */
  cursor: default;
}

.uca-menu-item--active:hover {
  background: #fff6e8;
  border-color: #ecd0a0;
  transform: none;
}

.uca-menu-item--active .uca-menu-icon {
  background: #454e62;
  color: #ffffff;
}

.uca-menu-item--active .uca-menu-title {
  color: #232834;
}

.uca-menu-item--active .uca-menu-chevron {
  color: #454e62;
}

.uca-menu-item--active:hover .uca-menu-chevron {
  transform: none;
  color: #454e62;
}

.uca-newhere-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff6e8;
  border-radius: 10px;
  padding: 18px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-newhere-text {
  flex: 1;
  min-width: 0;
}

.uca-newhere-title {
  font-size: 15px;
  font-weight: 600;
  color: #232834;
  margin-bottom: 4px;
}

.uca-newhere-subtitle {
  font-size: 13px;
  color: #5a6b7a;
  line-height: 1.4;
}

.uca-newhere-button {
  background: #454e62;
  color: #ffffff;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  transition: background 0.2s ease;
  flex-shrink: 0;
}

.uca-newhere-button:hover {
  background: #373d4d;
  color: #ffffff;
  text-decoration: none;
}

@media (max-width: 600px) {
  .uca-menu-item {
    padding: 14px 16px;
  }

  .uca-menu-icon {
    width: 32px;
    height: 32px;
    font-size: 14px;
  }

  .uca-menu-title {
    font-size: 14px;
  }

  .uca-menu-subtitle {
    font-size: 12px;
  }

  .uca-newhere-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .uca-newhere-button {
    width: 100%;
    text-align: center;
  }
}


/* =============================================================================
   9. PROGRESS JOURNAL HEADER
   Injected above the replies on every Progress Journal topic. Shows the topic
   title, a "Jump to latest update" button, and a preview card of the newest
   update (author, time, excerpt). See inc/progress-journal.php.
   ============================================================================= */
.uca-pj-header {
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 18px 20px;
  margin: 0 0 20px;
}

.uca-pj-header-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.uca-pj-title {
  font-size: 17px;
  font-weight: 600;
  color: #232834;
  letter-spacing: -0.01em;
  line-height: 1.3;
  min-width: 0;
}

/* Jump-to-latest button */
.uca-pj-jump-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  background: #454e62;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 18px;
  border-radius: 8px;
  transition: background 0.2s ease;
  white-space: nowrap;
}

.uca-pj-jump-btn:hover {
  background: #373d4d;
  color: #ffffff !important;
  text-decoration: none !important;
}

.uca-pj-jump-icon {
  font-size: 14px;
  line-height: 1;
}

/* Latest-update preview card */
.uca-pj-latest {
  display: block;
  margin-top: 16px;
  padding: 16px;
  background: #f1f9f4;
  border: 1px solid #d4ead9;
  border-left: 4px solid #2e9e5b;
  border-radius: 10px;
  text-decoration: none !important;
  transition: background 0.2s ease, border-color 0.2s ease;
}

.uca-pj-latest:hover {
  background: #e9f5ed;
  border-color: #bfe0c8;
  text-decoration: none !important;
}

.uca-pj-latest-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #2e9e5b;
  margin-bottom: 10px;
}

.uca-pj-latest-body {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.uca-pj-latest-avatar {
  flex-shrink: 0;
}

.uca-pj-latest-avatar img,
.uca-pj-latest-avatar img.avatar {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
  border: none !important;
  margin: 0 !important;
}

.uca-pj-latest-text {
  flex: 1;
  min-width: 0;
}

.uca-pj-latest-meta {
  font-size: 13px;
  line-height: 1.4;
  margin-bottom: 4px;
}

.uca-pj-latest-author {
  font-weight: 600;
  color: #232834;
}

.uca-pj-latest-time {
  color: #6b7c8a;
  margin-left: 8px;
}

.uca-pj-latest-excerpt {
  font-size: 14px;
  line-height: 1.55;
  color: #33424f;
}

/* Empty state (no replies yet) */
.uca-pj-header--empty .uca-pj-empty-note {
  margin-top: 12px;
  font-size: 14px;
  color: #6b7c8a;
  line-height: 1.5;
}

/* Mobile */
@media (max-width: 600px) {
  .uca-pj-header {
    padding: 16px;
    border-radius: 10px;
  }

  .uca-pj-header-top {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .uca-pj-jump-btn {
    justify-content: center;
    width: 100%;
  }

  .uca-pj-title {
    font-size: 16px;
  }
}


/* ---- Journal entries vs. encouragement (visual nesting) ----
   Replies by the topic author are the journal "entries" and stay prominent.
   Replies by anyone else are encouragement: indented, smaller, lighter, so the
   author's updates read as the spine of the page. Classes are added in
   inc/progress-journal.php via the bbp_get_reply_class filter. */

/* Author's own entries — keep them as the visual anchor (no accent strip). */
#bbpress-forums .uca-pj-entry {
  position: relative;
}

/* Non-author replies (encouragement): indented, smaller, lighter.
   These layer on top of the forum card styling in section 10 — the card gives
   the box, these tweaks de-emphasise it. !important on background so it wins
   over the card's white fill. */
/* Non-author replies (encouragement): indented, smaller, lighter.
   These must out-specify the section-10 card rule
   (#bbpress-forums li.bbp-body > div[class*="loop-item-"]) which sets margin
   and background with !important — that rule was overriding the indent in 1.7.
   We match its structure and use !important so the journal nesting wins. */
#bbpress-forums li.bbp-body > div[class*="loop-item-"].uca-pj-encouragement {
  margin-left: 40px !important;
  background: #f7fafc !important;
  border-radius: 8px !important;
  font-size: 0.92em !important;
}

#bbpress-forums .uca-pj-encouragement .bbp-reply-content,
#bbpress-forums .uca-pj-encouragement .bbp-reply-author {
  opacity: 0.9;
}

/* Slightly smaller avatars on encouragement replies to de-emphasise them.
   Must beat the section-10 card avatar rule (64px), so high specificity. */
#bbpress-forums li.bbp-body > div[class*="loop-item-"].uca-pj-encouragement .bbp-reply-author .bbp-author-avatar img,
#bbpress-forums li.bbp-body > div[class*="loop-item-"].uca-pj-encouragement .bbp-reply-author img.avatar {
  width: 48px !important;
  height: 48px !important;
}

@media (max-width: 600px) {
  #bbpress-forums li.bbp-body > div[class*="loop-item-"].uca-pj-encouragement {
    margin-left: 18px !important;
  }
}


/* =============================================================================
   10. FORUM — CLEAN CARD STYLING
   Styles raw bbPress single-topic output (bbp Style Pack retired) into clean
   cards matching the community cards elsewhere in this theme. Scoped to
   #bbpress-forums so it never leaks into other content.

   Structure (from bbPress default templates):
     #bbpress-forums
       ul.bbp-replies
         li.bbp-header / li.bbp-footer   "Author | Posts" label rows
         li.bbp-body
           div.loop-item-N ...           ONE POST (flex row)
             div.bbp-reply-author        left column (avatar, name, role, meta)
             div.bbp-reply-content       right column
               div.bbp-reply-header > .bbp-meta   permalink + admin links
               div.bbp-reply-entry       the post text (+ .bbp-arrow)
   ============================================================================= */

/* Wrapper: give the forum room to breathe, neutral background. */
#bbpress-forums {
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  color: #232834;
}

/* Strip bbPress's default list chrome. */
#bbpress-forums ul.bbp-replies {
  border: none !important;
  background: transparent !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

/* Hide the "Author | Posts" header and footer label rows — cards don't need them. */
#bbpress-forums ul.bbp-replies > li.bbp-header,
#bbpress-forums ul.bbp-replies > li.bbp-footer,
#bbpress-forums .bbp-header.fusion-bbp-header {
  display: none !important;
}

#bbpress-forums li.bbp-body {
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ---- The post card ---- */
#bbpress-forums li.bbp-body > div[class*="loop-item-"] {
  display: flex !important;
  gap: 18px !important;
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 12px !important;
  padding: 18px 22px !important;
  margin: 0 0 12px !important;
  box-shadow: 0 1px 2px rgba(13, 36, 56, 0.04);
}

#bbpress-forums li.bbp-body > div[class*="loop-item-"]:last-child {
  margin-bottom: 0 !important;
}

/* ---- Left column: author ---- */
#bbpress-forums .bbp-reply-author {
  flex: 0 0 120px !important;
  width: 120px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  float: none !important;
}

#bbpress-forums .bbp-reply-author .bbp-author-avatar img,
#bbpress-forums .bbp-reply-author img.avatar {
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto 10px !important;
  border: none !important;
}

#bbpress-forums .bbp-author-name {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #232834 !important;
  line-height: 1.3 !important;
  margin-bottom: 4px !important;
}

#bbpress-forums .bbp-author-link {
  text-decoration: none !important;
}

#bbpress-forums .bbp-author-role {
  display: inline-block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  color: #454e62 !important;
  background: #fff6e8 !important;
  border-radius: 20px !important;
  padding: 2px 10px !important;
  margin: 0 0 8px !important;
}

/* De-emphasise post-count and hide IP addresses from view. */
#bbpress-forums .bbps-post-count {
  display: none !important;
}

#bbpress-forums .bbp-reply-ip,
#bbpress-forums .fusion-reply-id {
  display: none !important;
}

/* The post date: sits in the author column, centred under the avatar/role,
   compact. No icon. */
#bbpress-forums .bbp-reply-author .bbp-reply-post-date {
  display: block !important;
  font-size: 12px !important;
  color: #8a9aa6 !important;
  margin: 4px 0 0 !important;
  text-align: center !important;
}

/* ---- Right column: content ----
   Flex column: body text on top (snug, no wasted gap), meta row as a footer
   pushed to the bottom with margin-top:auto. */
#bbpress-forums .bbp-reply-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  float: none !important;
}

/* Post body text. */
#bbpress-forums .bbp-reply-entry {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #33424f !important;
  margin: 0 !important;
}

#bbpress-forums .bbp-reply-entry p {
  margin: 0 0 10px !important;
}

#bbpress-forums .bbp-reply-entry p:last-child {
  margin-bottom: 0 !important;
}

/* Meta row sits at its natural position — top of the content column, aligned
   right (Reply button + admin links + #num). */
#bbpress-forums .bbp-reply-header {
  background: transparent !important;
  border: none !important;
  padding: 0 0 12px !important;
  margin: 0 0 12px !important;
  border-bottom: 1px solid #eef2f5 !important;
  font-size: 12px !important;
}

#bbpress-forums .bbp-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  color: #8a9aa6 !important;
  font-size: 12px !important;
}

/* Permalink (#444b5d) at the far right, muted. */
#bbpress-forums .bbp-reply-permalink {
  order: 3 !important;
  color: #b8c4cd !important;
  text-decoration: none !important;
  font-size: 12px !important;
}

#bbpress-forums .bbp-reply-permalink:hover {
  color: #454e62 !important;
}

/* Admin links cluster — small and muted; moderation links don't shout. */
#bbpress-forums .bbp-admin-links {
  order: 2 !important;
  font-size: 11px !important;
  color: #d6dee4 !important;
}

#bbpress-forums .bbp-admin-links a {
  color: #b8c4cd !important;
  text-decoration: none !important;
}

#bbpress-forums .bbp-admin-links a:hover {
  color: #454e62 !important;
}

#bbpress-forums .bbp-admin-links .admin_links_sep:last-child {
  display: none !important;
}

/* The Reply link styled as the outlined activity-feed button
   (matches .uca-bbp-reply-btn): teal outlined pill that fills on hover. */
#bbpress-forums .bbp-admin-links a.bbp-reply-to-link,
#bbpress-forums .bbp-admin-links a.bbp-topic-reply-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #454e62 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  text-decoration: none !important;
  padding: 6px 14px !important;
  border: 1px solid #d9e3eb !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  line-height: 1 !important;
  transition: all 0.2s ease !important;
}

#bbpress-forums .bbp-admin-links a.bbp-reply-to-link:hover,
#bbpress-forums .bbp-admin-links a.bbp-topic-reply-link:hover {
  color: #ffffff !important;
  background: #454e62 !important;
  border-color: #454e62 !important;
}

/* Remove the little speech-bubble arrow — not needed in the card layout. */
#bbpress-forums .bbp-arrow {
  display: none !important;
}

/* ---- Breadcrumb / toolbar above the posts ---- */
#bbpress-forums .bbp-breadcrumb {
  font-size: 13px !important;
  color: #8a9aa6 !important;
  margin-bottom: 16px !important;
}

#bbpress-forums .bbp-breadcrumb a {
  color: #454e62 !important;
  text-decoration: none !important;
}

#bbpress-forums .bbp-breadcrumb a:hover {
  text-decoration: underline !important;
}

/* ---- Pagination count ---- */
#bbpress-forums .bbp-pagination-count {
  font-size: 13px !important;
  color: #8a9aa6 !important;
  border: none !important;
  background: transparent !important;
}

/* ---- Reply form ---- */
#bbpress-forums .bbp-reply-form {
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 12px !important;
  padding: 22px 24px !important;
  margin-top: 20px !important;
}

#bbpress-forums .bbp-reply-form fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#bbpress-forums .bbp-reply-form legend {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #232834 !important;
  margin-bottom: 14px !important;
}

#bbpress-forums .bbp-the-content,
#bbpress-forums textarea.bbp-the-content {
  border: 1px solid #d9e3eb !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-family: inherit !important;
  font-size: 15px !important;
}

#bbpress-forums .bbp-reply-form button.submit,
#bbpress-forums #bbp_reply_submit {
  background: #454e62 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 12px 28px !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
}

#bbpress-forums .bbp-reply-form button.submit:hover,
#bbpress-forums #bbp_reply_submit:hover {
  background: #373d4d !important;
}

/* ---- Mobile: stack author above content ---- */
@media (max-width: 600px) {
  #bbpress-forums li.bbp-body > div[class*="loop-item-"] {
    flex-direction: column !important;
    gap: 12px !important;
    padding: 16px !important;
  }

  /* Mobile author block: keep the vertical centred stack (avatar, name, role,
     date) but full-width and compact. This matches the desktop structure and
     avoids the misalignment that came from forcing a horizontal row, since in
     bbPress the avatar+name sit inside one link while role and date are
     separate siblings. */
  #bbpress-forums .bbp-reply-author {
    flex-direction: column !important;
    width: 100% !important;
    flex-basis: auto !important;
    align-items: center !important;
    text-align: center !important;
    gap: 0 !important;
    padding-bottom: 14px !important;
    margin-bottom: 14px !important;
    border-bottom: 1px solid #eef2f5 !important;
  }

  #bbpress-forums .bbp-reply-author .bbp-author-avatar img,
  #bbpress-forums .bbp-reply-author img.avatar {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 8px !important;
  }

  #bbpress-forums .bbp-author-name {
    margin: 0 0 6px !important;
    text-align: center !important;
  }

  #bbpress-forums .bbp-reply-author .bbp-reply-post-date {
    justify-content: center !important;
    margin: 6px 0 0 !important;
  }

  /* Content sits below the author block, hugging the top. */
  #bbpress-forums .bbp-reply-content {
    padding-top: 0 !important;
  }

  #bbpress-forums .bbp-reply-header {
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid #eef2f5 !important;
  }
}


/* =============================================================================
   11. FORUM — TOPIC LIST (forum index: list of topics within a forum)
   Styles the bbPress topics-loop into clean cards matching the single-topic
   reply cards. Different markup from the reply loop:

     #bbpress-forums
       ul.bbp-topics
         li.bbp-header                       column labels (Topic/Voices/...)
         li.bbp-body
           ul.topic.loop-item-N
             li.bbp-topic-title
               .bbp-topic-permalink          the topic link
               .bbp-topic-meta               "Started by: <author>"
             li.bbp-topic-voice-count
             li.bbp-topic-reply-count
             li.bbp-topic-freshness          "x days ago" + last poster
   ============================================================================= */

/* Hide the column-header row — the cards are self-explanatory. */
#bbpress-forums ul.bbp-topics > li.bbp-header {
  display: none !important;
}

#bbpress-forums ul.bbp-topics {
  border: none !important;
  background: transparent !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

#bbpress-forums ul.bbp-topics > li.bbp-body {
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Each topic row → a card. */
#bbpress-forums ul.bbp-topics li.bbp-body ul.topic {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 12px !important;
  padding: 16px 22px !important;
  margin: 0 0 12px !important;
  box-shadow: 0 1px 2px rgba(13, 36, 56, 0.04) !important;
  list-style: none !important;
}

#bbpress-forums ul.bbp-topics li.bbp-body ul.topic:last-child {
  margin-bottom: 0 !important;
}

/* Pinned / sticky topics: pale-blue tint (in line with #454e62) so they stand
   apart from normal topics while keeping text high-contrast. bbPress adds
   .sticky / .super-sticky to the topic row. */
#bbpress-forums ul.bbp-topics li.bbp-body ul.topic.sticky,
#bbpress-forums ul.bbp-topics li.bbp-body ul.topic.super-sticky {
  background: #fff6e8 !important;
  border-color: #f1dcb8 !important;
}

/* Title column takes the available space. */
#bbpress-forums li.bbp-topic-title {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  text-align: left !important;
}

#bbpress-forums li.bbp-topic-title .bbp-topic-permalink {
  display: inline-block !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #454e62 !important;
  text-decoration: none !important;
  line-height: 1.35 !important;
  margin-bottom: 4px !important;
}

#bbpress-forums li.bbp-topic-title .bbp-topic-permalink:hover {
  color: #373d4d !important;
  text-decoration: underline !important;
}

/* "Started by: Name" line — small and muted, with the avatar inline. */
#bbpress-forums li.bbp-topic-title .bbp-topic-meta {
  font-size: 12px !important;
  color: #8a9aa6 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}

#bbpress-forums li.bbp-topic-title .bbp-topic-meta .bbp-author-avatar img,
#bbpress-forums li.bbp-topic-title .bbp-topic-meta img.avatar {
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  vertical-align: middle !important;
}

#bbpress-forums li.bbp-topic-title .bbp-topic-meta a {
  color: #6b7c8a !important;
  text-decoration: none !important;
}

/* Voices / Posts count columns — compact, centred, muted. */
#bbpress-forums li.bbp-topic-voice-count,
#bbpress-forums li.bbp-topic-reply-count {
  flex: 0 0 64px !important;
  width: 64px !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #33424f !important;
}

/* Add a tiny label under each count so they're meaningful without the header. */
#bbpress-forums li.bbp-topic-voice-count::after {
  content: "voices" !important;
  display: block !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: #b8c4cd !important;
  margin-top: 2px !important;
}

#bbpress-forums li.bbp-topic-reply-count::after {
  content: "posts" !important;
  display: block !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: #b8c4cd !important;
  margin-top: 2px !important;
}

/* Last Post / freshness column. */
#bbpress-forums li.bbp-topic-freshness {
  flex: 0 0 160px !important;
  width: 160px !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  font-size: 12px !important;
  color: #8a9aa6 !important;
}

#bbpress-forums li.bbp-topic-freshness a {
  color: #454e62 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}

#bbpress-forums li.bbp-topic-freshness a:hover {
  text-decoration: underline !important;
}

#bbpress-forums li.bbp-topic-freshness .bbp-author-avatar img,
#bbpress-forums li.bbp-topic-freshness img.avatar {
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  margin: 6px auto 2px !important;
  display: block !important;
}

/* Topic-list pagination count. */
#bbpress-forums .bbp-topics .bbp-pagination-count,
#bbpress-forums .bbp-pagination-count {
  font-size: 13px !important;
  color: #8a9aa6 !important;
}

/* ---- Topic-list mobile: stacked cards, left-aligned, compact ---- */
@media (max-width: 600px) {
  #bbpress-forums ul.bbp-topics li.bbp-body ul.topic {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    padding: 14px 16px !important;
  }

  /* Title column: full-width, left-aligned. */
  #bbpress-forums li.bbp-topic-title {
    width: 100% !important;
    flex-basis: auto !important;
    text-align: left !important;
  }

  #bbpress-forums li.bbp-topic-title .bbp-topic-permalink {
    font-size: 15px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  #bbpress-forums li.bbp-topic-title .bbp-topic-meta {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  /* Voices/Posts: low-value on mobile — hide to keep cards compact. */
  #bbpress-forums li.bbp-topic-voice-count,
  #bbpress-forums li.bbp-topic-reply-count {
    display: none !important;
  }

  /* Last-post column: becomes a vertical stack below the title. The timestamp
     sits on its own line (block) and the avatar + author name align left
     below it, instead of trying to flow inline (which wrapped awkwardly with
     the avatar floating between the timestamp and the name). */
  #bbpress-forums li.bbp-topic-freshness {
    width: 100% !important;
    flex-basis: auto !important;
    text-align: left !important;
    padding-top: 10px !important;
    margin-top: 2px !important;
    border-top: 1px solid #eef2f5 !important;
    display: block !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  /* The "21 hours ago" link — full-width block on its own line. */
  #bbpress-forums li.bbp-topic-freshness > a,
  #bbpress-forums li.bbp-topic-freshness .bbp-topic-freshness-link {
    display: block !important;
    margin: 0 0 6px !important;
    font-weight: 600 !important;
  }

  /* The author block (avatar + name) — flex row, left-aligned, below the
     timestamp. bbPress wraps this in either <p class="bbp-topic-meta"> or
     a freshness-author span, so we target both. */
  #bbpress-forums li.bbp-topic-freshness > p,
  #bbpress-forums li.bbp-topic-freshness .bbp-topic-meta,
  #bbpress-forums li.bbp-topic-freshness .bbp-topic-freshness-author {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  /* Avatar in the freshness column: small, inline (not block), no auto margin. */
  #bbpress-forums li.bbp-topic-freshness .bbp-author-avatar img,
  #bbpress-forums li.bbp-topic-freshness img.avatar {
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
  }

  #bbpress-forums li.bbp-topic-freshness a {
    font-weight: 600 !important;
  }

  /* The "Started by:" label + avatar in the title's meta line — keep tight. */
  #bbpress-forums li.bbp-topic-title .bbp-topic-meta .bbp-author-avatar img,
  #bbpress-forums li.bbp-topic-title .bbp-topic-meta img.avatar {
    width: 18px !important;
    height: 18px !important;
  }
}


/* =============================================================================
   12. MEMBER GUIDE — HERO + CARD GRID
   Used on the Guide landing page. Inner guide pages should use the existing
   Section 8 sidebar menu (.uca-sidebar-menu / .uca-menu-item) for navigation
   between guide topics, so this section only defines the landing-page
   components: hero, card grid, and the teal forum CTA tile.

   Tokens reused: #454e62 (teal), #373d4d (teal-dark), #232834 (navy),
   #e3eaf0 (border), Inter/Poppins stack, 10-12px radii, 0.2s ease.
   ============================================================================= */

/* --- Hero ----------------------------------------------------------------- */
.uca-guide-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(105deg, #232834 0%, #2f3543 50%, #454e62 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 56px 48px;
  margin-bottom: 32px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Subtle radial highlight for depth */
.uca-guide-hero::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -10%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 60%);
  pointer-events: none;
}

.uca-guide-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 48px;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

.uca-guide-hero-text h1 {
  font-size: 44px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 16px;
  color: #ffffff;
}

.uca-guide-hero-text p {
  font-size: 17px;
  line-height: 1.55;
  margin: 0;
  max-width: 560px;
  color: rgba(255, 255, 255, 0.88);
}

.uca-guide-hero-card {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 12px;
  padding: 22px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.uca-guide-hero-card-icon {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border: 1.5px solid rgba(255, 255, 255, 0.55);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
}

.uca-guide-hero-card-icon svg {
  width: 20px;
  height: 20px;
}

.uca-guide-hero-card-body h3 {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 6px;
  color: #ffffff;
  letter-spacing: -0.01em;
}

.uca-guide-hero-card-body p {
  font-size: 13px;
  line-height: 1.5;
  margin: 0 0 14px;
  color: rgba(255, 255, 255, 0.88);
}

.uca-guide-hero-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.55);
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}

.uca-guide-hero-btn:hover {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  text-decoration: none;
  transform: translateX(2px);
}

/* --- Card grid ------------------------------------------------------------ */
.uca-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-guide-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  color: #232834;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.uca-guide-card:hover {
  text-decoration: none;
  color: #232834;
  border-color: #ecd0a0;
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(13, 36, 56, 0.08);
}

.uca-guide-card-img {
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #fff6e8;
}

.uca-guide-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}

.uca-guide-card:hover .uca-guide-card-img img {
  transform: scale(1.04);
}

.uca-guide-card-body {
  padding: 20px 22px 22px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.uca-guide-card-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #232834;
  margin: 0 0 8px;
}

.uca-guide-card-title svg {
  width: 20px;
  height: 20px;
  color: #454e62;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.uca-guide-card:hover .uca-guide-card-title svg {
  transform: scale(1.1);
}

.uca-guide-card-desc {
  font-size: 14px;
  line-height: 1.5;
  color: #5a6b7a;
  margin: 0;
}

/* --- Forum CTA tile (replaces the redundant Contact tile) ----------------- */
/* Spans the full last row when the grid has 8 nav cards + this CTA, so it
   gets visual weight. Mobile: it stacks to a single column like the rest. */
.uca-guide-card-cta {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  background: linear-gradient(95deg, #454e62 0%, #373d4d 100%);
  color: #ffffff;
  border: none;
  border-radius: 12px;
  padding: 28px 32px;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.uca-guide-card-cta:hover {
  color: #ffffff;
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(26, 143, 184, 0.28);
}

.uca-guide-card-cta-icon {
  width: 56px;
  height: 56px;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.uca-guide-card-cta-icon svg {
  width: 28px;
  height: 28px;
  color: #ffffff;
}

.uca-guide-card-cta-text h3 {
  font-size: 19px;
  font-weight: 700;
  margin: 0 0 4px;
  color: #ffffff;
  letter-spacing: -0.01em;
}

.uca-guide-card-cta-text p {
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
  color: rgba(255, 255, 255, 0.9);
}

.uca-guide-card-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.55);
  padding: 10px 18px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  transition: background 0.2s ease, transform 0.2s ease;
}

.uca-guide-card-cta:hover .uca-guide-card-cta-btn {
  background: rgba(255, 255, 255, 0.24);
  transform: translateX(2px);
}

/* --- Responsive ----------------------------------------------------------- */
@media (max-width: 960px) {
  .uca-guide-hero {
    padding: 44px 32px;
  }

  .uca-guide-hero-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .uca-guide-hero-text h1 {
    font-size: 36px;
  }

  .uca-guide-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .uca-guide-hero {
    padding: 36px 24px;
    border-radius: 12px;
  }

  .uca-guide-hero-text h1 {
    font-size: 30px;
  }

  .uca-guide-hero-text p {
    font-size: 15px;
  }

  .uca-guide-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .uca-guide-card-body {
    padding: 18px 20px 20px;
  }

  .uca-guide-card-cta {
    grid-template-columns: 1fr;
    text-align: center;
    padding: 24px;
    gap: 16px;
  }

  .uca-guide-card-cta-icon {
    margin: 0 auto;
  }

  .uca-guide-card-cta-btn {
    width: 100%;
    justify-content: center;
  }
}


/* --- Inner-page header (sidebar + intro card) ----------------------------- */
/* Paste-and-go header for inner guide pages: ~1/3 sidebar on the left, intro
   card on the right with title + lead paragraph. Below this block, the rest
   of the page is built in Avada Builder. On mobile, sidebar drops BELOW the
   intro (intro is what visitors came for; sidebar is secondary nav). */

.uca-guide-header {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) 2fr;
  gap: 32px;
  align-items: start;
  margin-bottom: 40px;
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

.uca-guide-header-sidebar {
  /* Wrapper around the existing .uca-sidebar-menu so we can target spacing
     here without touching Section 8. */
}

.uca-guide-intro {
  position: relative;
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-left: 4px solid #454e62;
  border-radius: 12px;
  padding: 32px 36px;
}

.uca-guide-intro-eyebrow {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #454e62;
  margin: 0 0 12px;
}

.uca-guide-intro h1 {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #232834;
  margin: 0 0 16px;
}

.uca-guide-intro p {
  font-size: 16px;
  line-height: 1.6;
  color: #4a5868;
  margin: 0 0 12px;
}

.uca-guide-intro p:last-child {
  margin-bottom: 0;
}

/* Tablet: tighten gap and proportions */
@media (max-width: 900px) {
  .uca-guide-header {
    grid-template-columns: minmax(220px, 1fr) 2fr;
    gap: 24px;
  }

  .uca-guide-intro {
    padding: 28px 30px;
  }

  .uca-guide-intro h1 {
    font-size: 28px;
  }
}

/* Mobile: stack with intro FIRST, sidebar second.
   Uses grid row ordering so the visual order changes without reordering
   the HTML (good for screen readers — the HTML order stays logical). */
@media (max-width: 700px) {
  .uca-guide-header {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 32px;
  }

  .uca-guide-header-sidebar {
    order: 2;
  }

  .uca-guide-header-intro {
    order: 1;
  }

  .uca-guide-intro {
    padding: 24px 22px;
    border-left-width: 3px;
  }

  .uca-guide-intro h1 {
    font-size: 24px;
  }

  .uca-guide-intro p {
    font-size: 15px;
  }
}


/* =============================================================================
   13. FORUM SEARCH BAR IN TITLE BAR (per-page positioning)

   Lifts a [uca_forum_search] shortcode (wrapped in .uca-forum-search-titlebar)
   visually into the right side of Avada's page title bar on the forum index
   page only.

   How it works: the title bar and the page content share a positioning context
   (#main). We pin the search wrapper to the title bar's right edge with
   absolute positioning, then hide its original location in the content flow
   with a negative margin so the page content doesn't get an unexpected gap.

   PAGE SCOPING: targets the body class `.uca-forum-page`, which is added by
   inc/forum-page-class.php on the page whose ID matches UCA_FORUM_PAGE_ID.
   No CSS editing is needed if the forum page ID ever changes — just update
   the PHP constant.

   USAGE:
     In Avada Builder on the forum page, put a Code Block at the very top
     containing:
         <div class="uca-forum-search-titlebar">
           [uca_forum_search]
         </div>
     On mobile (<=900px) it drops back into normal flow above the content,
     since fitting both title and search on a phone would collide.
   ============================================================================= */

/* Make #main a positioning ancestor so the absolute search can anchor to it. */
.uca-forum-page #main {
  position: relative;
}

/* Pin the search wrapper to the title bar's right edge. */
.uca-forum-page .uca-forum-search-titlebar {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  width: 360px;
  max-width: 40%;
  padding: 0 30px 0 0;
  /* Vertically centre against Avada's title bar (~110px tall at desktop).
     Adjust this single value if the search sits too high or too low. */
  margin-top: -55px;
}

/* Reset any margin on the inner form so the wrapper controls placement. */
.uca-forum-page .uca-forum-search-titlebar .bbp-search-form {
  margin: 0;
}

/* Slight white background on the input so it reads over the gradient bar. */
.uca-forum-page .uca-forum-search-titlebar input[type="text"] {
  background: rgba(255, 255, 255, 0.95);
}

/* Mobile: drop back into normal flow above the content. */
@media (max-width: 900px) {
  .uca-forum-page .uca-forum-search-titlebar {
    position: static;
    width: 100%;
    max-width: none;
    padding: 0;
    margin: 0 0 20px;
  }
}


/* =============================================================================
   14. BUDDYPRESS MEMBER PROFILE
   Styles the BP Nouveau profile page (#buddypress) into a cleaner card-based
   layout matching the rest of the theme. Targets the standard BP Nouveau
   markup; if any selector misses on the live site, an inspect will reveal a
   wrapper class to add.

   Scope is #buddypress so this never leaks into other content.
   ============================================================================= */

#buddypress {
  font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
  color: #232834;
  max-width: 1100px;
  margin: 0 auto;
}

/* ---- Header area (cover photo + avatar + name) ---- */
#buddypress #item-header-cover-image,
#buddypress #header-cover-image {
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid #e3eaf0 !important;
}

#buddypress #item-header,
#buddypress #header-cover-image-container {
  margin: 0 0 24px !important;
}

#buddypress #item-header-content {
  padding: 0 !important;
}

/* Avatar positioned over the cover photo */
#buddypress #item-header-avatar img.avatar,
#buddypress #item-header-avatar .avatar {
  width: 140px !important;
  height: 140px !important;
  border-radius: 50% !important;
  border: 4px solid #ffffff !important;
  box-shadow: 0 2px 8px rgba(13, 36, 56, 0.10) !important;
  object-fit: cover !important;
}

/* Display name */
#buddypress #item-header h2,
#buddypress #item-header .name {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #232834 !important;
  margin: 0 0 8px !important;
  line-height: 1.2 !important;
}

#buddypress #item-header h2 a,
#buddypress #item-header .name a {
  color: #232834 !important;
  text-decoration: none !important;
}

/* "Active X minutes ago" */
#buddypress #item-meta,
#buddypress #latest-update {
  font-size: 13px !important;
  color: #8a9aa6 !important;
  margin: 4px 0 0 !important;
}

/* Action buttons (Private Message, Switch To, Add Friend, etc.) */
#buddypress #item-buttons,
#buddypress .generic-button {
  margin: 12px 0 0 !important;
}

#buddypress #item-buttons a,
#buddypress .generic-button a,
#buddypress div.item-buttons a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #454e62 !important;
  background: #ffffff !important;
  border: 1px solid #d9e3eb !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin-right: 6px !important;
}

#buddypress #item-buttons a:hover,
#buddypress .generic-button a:hover,
#buddypress div.item-buttons a:hover {
  color: #ffffff !important;
  background: #454e62 !important;
  border-color: #454e62 !important;
}

/* ---- Primary nav (Profile / Messages / Forums / Settings) ---- */
#buddypress div#item-nav,
#buddypress .item-list-tabs {
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 10px !important;
  padding: 4px !important;
  margin: 0 0 16px !important;
  overflow: hidden !important;
}

#buddypress div#item-nav ul,
#buddypress .item-list-tabs ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: none !important;
}

#buddypress div#item-nav ul li,
#buddypress .item-list-tabs ul li {
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

#buddypress div#item-nav ul li a,
#buddypress .item-list-tabs ul li a {
  display: inline-block !important;
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #6b7c8a !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  background: transparent !important;
  border: none !important;
  transition: all 0.2s ease !important;
}

#buddypress div#item-nav ul li a:hover,
#buddypress .item-list-tabs ul li a:hover {
  color: #454e62 !important;
  background: #fff6e8 !important;
}

#buddypress div#item-nav ul li.current a,
#buddypress div#item-nav ul li.selected a,
#buddypress .item-list-tabs ul li.current a,
#buddypress .item-list-tabs ul li.selected a {
  color: #ffffff !important;
  background: #454e62 !important;
}

/* Message-count badge (e.g. Messages 13) */
#buddypress div#item-nav ul li a span,
#buddypress .item-list-tabs ul li a span {
  display: inline-block !important;
  background: #fff6e8 !important;
  color: #454e62 !important;
  border-radius: 12px !important;
  padding: 1px 8px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  margin-left: 6px !important;
  min-width: 18px !important;
  text-align: center !important;
}

#buddypress div#item-nav ul li.current a span,
#buddypress div#item-nav ul li.selected a span,
#buddypress .item-list-tabs ul li.current a span,
#buddypress .item-list-tabs ul li.selected a span {
  background: rgba(255,255,255,0.25) !important;
  color: #ffffff !important;
}

/* ---- Sub-nav (View / Change Profile Photo / Change Cover Image) ---- */
#buddypress div#subnav,
#buddypress div.item-list-tabs#subnav {
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 10px !important;
  padding: 4px !important;
  margin: 0 0 24px !important;
}

#buddypress div#subnav ul li a {
  padding: 8px 14px !important;
  font-size: 13px !important;
}

/* ---- Profile data card ---- */
#buddypress h2.profile-group-name,
#buddypress h3.profile-group-name,
#buddypress h2.bp-screen-title,
#buddypress h3.bp-screen-title {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #232834 !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: none !important;
}

#buddypress table.profile-fields,
#buddypress div.bp-widget table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  border: 1px solid #e3eaf0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  margin: 0 0 24px !important;
}

#buddypress table.profile-fields tr,
#buddypress div.bp-widget table tr {
  background: transparent !important;
}

#buddypress table.profile-fields tr + tr td,
#buddypress table.profile-fields tr + tr th,
#buddypress div.bp-widget table tr + tr td,
#buddypress div.bp-widget table tr + tr th {
  border-top: 1px solid #eef2f5 !important;
}

#buddypress table.profile-fields td,
#buddypress table.profile-fields th,
#buddypress div.bp-widget table td,
#buddypress div.bp-widget table th {
  padding: 14px 18px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  border: none !important;
  vertical-align: top !important;
  text-align: left !important;
}

#buddypress table.profile-fields th.label,
#buddypress table.profile-fields td.label,
#buddypress div.bp-widget table th.label,
#buddypress div.bp-widget table td.label {
  width: 200px !important;
  font-weight: 600 !important;
  color: #6b7c8a !important;
  background: #f7fafc !important;
}

#buddypress table.profile-fields td.data,
#buddypress div.bp-widget table td.data {
  color: #232834 !important;
}

/* ---- @handle for forum mentions ----
   Rendered on every profile by inc/buddypress-profile.php. BP Nouveau's own
   h2.user-nicename only appears when the Activity component + mentions are
   enabled, so it's hidden here to guarantee the handle never shows twice.
   user-select:all means one click selects the whole "@handle" for copying. */
#buddypress #item-header h2.user-nicename {
  display: none !important;
}

#buddypress .uca-user-handle {
  display: inline-block !important;
  margin: 4px 0 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: #454e62 !important;
  background: #fff6e8 !important;
  border: 1px solid #f3e4cb !important;
  border-radius: 8px !important;
  padding: 3px 12px !important;
  cursor: text !important;
  -webkit-user-select: all !important;
  user-select: all !important;
}

/* ---- Mobile ---- */
@media (max-width: 600px) {
  #buddypress #item-header-avatar img.avatar,
  #buddypress #item-header-avatar .avatar {
    width: 96px !important;
    height: 96px !important;
  }

  #buddypress #item-header h2,
  #buddypress #item-header .name {
    font-size: 20px !important;
  }

  #buddypress div#item-nav ul,
  #buddypress .item-list-tabs ul {
    flex-direction: column !important;
  }

  #buddypress div#item-nav ul li a,
  #buddypress .item-list-tabs ul li a {
    display: block !important;
    text-align: left !important;
  }

  #buddypress table.profile-fields th.label,
  #buddypress table.profile-fields td.label,
  #buddypress div.bp-widget table th.label,
  #buddypress div.bp-widget table td.label {
    width: auto !important;
    display: block !important;
    background: #f7fafc !important;
  }

  #buddypress table.profile-fields td.data,
  #buddypress div.bp-widget table td.data {
    display: block !important;
    padding-top: 4px !important;
  }
}

/* =============================================================================
   15. LOGGED-OUT HOMEPAGE  (.uca-home-*)
       Components for the public/logged-out Academy home (classical.guitar
       corneracademy.com). Three pieces, each a standalone Avada Code Block:
         - .uca-home-loginhelp : reassurance line above the Member Login form
         - .uca-winback        : "coming back to us?" re-entry block, placed
                                   directly under the login form
         - .uca-intro          : "new to the Academy?" panel that replaces the
                                   old promo-video column (better for the lone
                                   generic search query than an opaque embed)
       Teal kept at #454e62 to match the rest of the theme (see README note on
       the brand-guide #454e62 discrepancy). No <form> elements here, so the
       Avada HTML purifier leaves these blocks intact.
   ============================================================================= */

.uca-home-loginhelp {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.5;
  color: #5a6b78;
  background: #fffaf2;
  border: 1px solid #f8ebd5;
  border-radius: 8px;
  padding: 9px 12px;
  margin: 0 0 14px;
}
.uca-home-loginhelp svg { flex: 0 0 auto; width: 16px; height: 16px; margin-top: 1px; fill: #454e62; }

.uca-winback {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: #fff6e8;
  border: 1px solid #f1dcb8;
  border-radius: 12px;
  padding: 15px 17px;
  margin: 16px 0 0;
}
.uca-winback__icon { flex: 0 0 auto; width: 22px; height: 22px; margin-top: 1px; fill: #454e62; }
.uca-winback__title { font-size: 15px; font-weight: 600; color: #232834; margin: 0 0 2px; }
.uca-winback__text  { font-size: 13px; line-height: 1.55; color: #4c5d68; margin: 0; }
.uca-winback__link  {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 600;
  color: #454e62 !important;
  text-decoration: none !important;
  margin-top: 8px;
}
.uca-winback__link svg { width: 15px; height: 15px; fill: currentColor; }
.uca-winback__link:hover { color: #3b4254 !important; }

.uca-intro {
  background: #ffffff;
  border: 1px solid #e3eaf0;
  border-radius: 12px;
  padding: 22px 24px;
}
.uca-intro__title { font-size: 19px; font-weight: 600; color: #232834; margin: 0 0 6px; }
.uca-intro__lead  { font-size: 14px; line-height: 1.6; color: #5a6b78; margin: 0 0 16px; }
.uca-intro__list  { list-style: none; margin: 0 0 16px; padding: 0; }
.uca-intro__item  {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.5;
  color: #232834;
  margin: 0 0 11px;
}
.uca-intro__item:last-child { margin-bottom: 0; }
.uca-intro__item svg { flex: 0 0 auto; width: 19px; height: 19px; margin-top: 1px; fill: #454e62; }
.uca-intro__item b { font-weight: 600; }
.uca-intro__proof {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  line-height: 1.5;
  color: #4c5d68;
  background: #f7fafc;
  border: 1px solid #eef2f5;
  border-radius: 8px;
  padding: 9px 12px;
  margin: 0 0 18px;
}
.uca-intro__proof svg { flex: 0 0 auto; width: 17px; height: 17px; fill: #454e62; }
.uca-intro__cta {
  display: block;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: #ffffff !important;
  background: #1f9d57;
  border-radius: 8px;
  padding: 13px 16px;
  text-decoration: none !important;
}
.uca-intro__cta:hover { background: #1a8a4b; }
.uca-intro__tour {
  display: block;
  text-align: center;
  font-size: 13px;
  font-weight: 500;
  color: #454e62 !important;
  text-decoration: none !important;
  margin-top: 11px;
}
.uca-intro__tour:hover { text-decoration: underline !important; }

@media (max-width: 640px) {
  .uca-intro { padding: 18px 18px; }
  .uca-intro__title { font-size: 18px; }
}

/* =============================================================================
   16. UC ACCENT OVERRIDES (amber)
   -----------------------------------------------------------------------------
   The base styles above map CGC's teal to UC slate (#454e62) so every fill that
   carries white text stays AA-legible (white on amber #ffad2b fails contrast).
   This block layers UC's bright amber back onto the ACCENT roles only: the
   primary/resume CTA, "you are here" stripes, view-all links, the reply pill,
   the profile @handle chip, and focus rings. Slate stays the structural colour.
   Extend here rather than editing the rules above, and spot-check live pages.
   ============================================================================= */
:root {
  --uc-accent:      #ffad2b; /* amber - bright accent */
  --uc-accent-deep: #e0921a; /* amber hover */
  --uc-accent-text: #b9730c; /* amber readable as text on white */
  --uc-slate:       #454e62; /* structural dark */
}

/* Primary / resume-lesson pill: amber fill + slate text (signature UC CTA). */
.uca-menu-item--primary {
  background: var(--uc-accent) !important;
  border-color: var(--uc-accent) !important;
  color: var(--uc-slate) !important;
}
.uca-menu-item--primary:hover {
  background: var(--uc-accent-deep) !important;
  border-color: var(--uc-accent-deep) !important;
  color: #ffffff !important;
}
.uca-menu-item--primary .uca-menu-icon,
.uca-menu-item--primary .uca-menu-subtitle,
.uca-menu-item--primary .uca-menu-chevron {
  color: var(--uc-slate) !important;
}

/* "You are here" + active rows: amber left stripe, amber icon + chevron. */
.uca-menu-item--active { border-left-color: var(--uc-accent) !important; }
.uca-menu-item--active .uca-menu-icon {
  background: var(--uc-accent) !important;
  color: var(--uc-slate) !important;
}
.uca-menu-item--active .uca-menu-chevron { color: var(--uc-accent-text) !important; }
.uca-forum-item--active { border-left: 3px solid var(--uc-accent) !important; }

/* Section-header "view all" links + their arrows. */
.uca-forum-list-viewall,
.uca-activity-viewall,
.uca-recent-viewall,
.uca-activity-viewall .uca-arrow,
.uca-recent-viewall .uca-arrow { color: var(--uc-accent-text) !important; }
.uca-forum-list-viewall:hover,
.uca-activity-viewall:hover,
.uca-recent-viewall:hover { color: var(--uc-accent-deep) !important; }

/* Forum reply pill: amber outline that fills amber (slate text) on hover. */
.uca-bbp-reply-btn {
  border-color: var(--uc-accent) !important;
  color: var(--uc-accent-text) !important;
  background: transparent !important;
}
.uca-bbp-reply-btn:hover {
  background: var(--uc-accent) !important;
  border-color: var(--uc-accent) !important;
  color: var(--uc-slate) !important;
}

/* Profile @handle chip. */
.uca-user-handle { background: var(--uc-accent) !important; color: var(--uc-slate) !important; }

/* Focus ring. */
.uca-forum-item-link:focus-visible,
#bbpress-forums a:focus-visible,
#bbpress-forums button:focus-visible {
  outline: 2px solid var(--uc-accent) !important;
  outline-offset: 2px;
}
