/* ═══════════════════════════════════════════════════════════════════════
   CEO Hub — v2 Design System
   Phase 3 redesign. Navy + gold language. Applies to all pages.
   Scoped under .ceohub-app-shell-v2 body context.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Design tokens ──────────────────────────────────────────────────── */
:root {
    /* Brand colors */
    --v2-navy-deep:   #0B1E3F;
    --v2-navy-mid:    #102A52;
    --v2-navy-light:  #1A3B6B;
    --v2-gold:        #F7C948;
    --v2-gold-deep:   #E8A317;
    --v2-gold-dark:   #5C3D00;

    /* Surface colors */
    --v2-bg:          #F7F8FB;
    --v2-surface:     #FFFFFF;
    --v2-surface-2:   #F0F2F7;
    --v2-border:      rgba(15, 23, 42, 0.06);
    --v2-border-2:    rgba(15, 23, 42, 0.12);

    /* Text colors */
    --v2-text:        #0B1E3F;
    --v2-text-2:      #475569;
    --v2-text-3:      #64748B;
    --v2-text-light:  #94A3B8;

    /* Sidebar text */
    --v2-side-text:   #A8B5CC;
    --v2-side-text-2: rgba(168, 181, 204, 0.6);

    /* Semantic */
    --v2-blue:        #3B82F6;
    --v2-indigo:      #6366F1;
    --v2-green:       #10B981;
    --v2-green-2:     #22C55E;
    --v2-amber:       #F59E0B;
    --v2-purple:      #7C3AED;
    --v2-red:         #EF4444;
    --v2-pink:        #EC4899;

    /* Layout */
    --v2-radius-sm:   7px;
    --v2-radius-md:   9px;
    --v2-radius-lg:   12px;
    --v2-radius-xl:   14px;
    --v2-sidebar-w:   220px;
    --v2-topbar-h:    62px;

    --v2-trans:       all 0.15s ease;
}

/* ── HTML/body reset for v2 pages ───────────────────────────────────── */
html.ceohub-html-shell-v2,
html.ceohub-html-shell-v2 body {
    margin: 0;
    padding: 0;
    height: 100%;
    background: var(--v2-bg);
    color: var(--v2-text);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', system-ui, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.ceohub-shell-v2 {
    overflow: hidden;
}

body.ceohub-shell-v2 #wpadminbar {
    z-index: 999999;
}

body.ceohub-shell-v2.admin-bar .ceohub-app-shell-v2 {
    top: 32px;
    height: calc(100vh - 32px);
}
@media screen and (max-width: 782px) {
    body.ceohub-shell-v2.admin-bar .ceohub-app-shell-v2 {
        top: 46px;
        height: calc(100vh - 46px);
    }
}

/* Hide Alliance theme chrome on v2 pages.
   Selector uses :has() instead of body.ceohub-shell-v2 so the rule is
   gated on the app-shell ACTUALLY being present in the DOM, not on the
   server's prediction (the body class). If a *_Page class predicts a
   shell page but no app-shell ends up rendering (e.g. BP creation
   wizards where the bp_before_*_body hooks don't fire), this rule
   simply doesn't apply — the page renders with the normal Alliance
   chrome instead of going blank. */
body:has(.ceohub-app-shell-v2) > *:not(.ceohub-app-shell-v2):not(#wpadminbar):not(script):not(style):not(:has(.ceohub-app-shell-v2)) {
    display: none !important;
}

/* ── Deep lineage filter ───────────────────────────────────────────────
   The rule above only hides body's *direct* children. On BP pages the
   parent theme wraps the app-shell in many levels of decoration —
   .page_content_wrap > .content_wrap > .content > article > .post_content
   > #buddypress — and each of those wrappers can have *sibling* widgets,
   logos, search boxes, and breadcrumbs that aren't caught by the line-90
   rule because they're not direct body children.

   This rule applies the same logic recursively: on any v2 shell page,
   only elements in the app-shell's DOM lineage are allowed to render.
   Lineage means: the app-shell itself, any ancestor of it (so the
   shell can paint inside them), or any descendant of it. Everything
   else — including stray header bits, sidebar widgets, footer scraps,
   and the parent theme's mobile-menu collapse triggers — is suppressed. */
body:has(.ceohub-app-shell-v2) *:not(.ceohub-app-shell-v2):not(:has(.ceohub-app-shell-v2)):not(.ceohub-app-shell-v2 *):not(#wpadminbar):not(#wpadminbar *) {
    display: none !important;
}

/* ── App shell layout ──────────────────────────────────────────────── */
.ceohub-app-shell-v2 {
    position: fixed;
    inset: 0;
    display: grid;
    grid-template-columns: var(--v2-sidebar-w) 1fr;
    background: var(--v2-bg);
}

/* ── Sidebar ───────────────────────────────────────────────────────── */
.ceohub-v2-sidebar {
    background: linear-gradient(180deg, var(--v2-navy-deep) 0%, var(--v2-navy-mid) 100%);
    color: #fff;
    padding: 18px 14px;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
}
.ceohub-v2-sidebar::-webkit-scrollbar { width: 4px; }
.ceohub-v2-sidebar::-webkit-scrollbar-track { background: transparent; }
.ceohub-v2-sidebar::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 99px; }

/* Brand */
.ceohub-v2-sidebar__brand {
    padding: 4px 6px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    margin-bottom: 14px;
}
.ceohub-v2-brand {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: inherit;
}
.ceohub-v2-brand:hover { color: inherit; }
.ceohub-v2-brand__img { max-width: 100%; max-height: 40px; }
.ceohub-v2-brand__crown {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: linear-gradient(135deg, var(--v2-gold), var(--v2-gold-deep));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}
.ceohub-v2-brand__text {
    line-height: 1.1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ceohub-v2-brand__name {
    font-weight: 500;
    font-size: 15px;
    letter-spacing: -0.2px;
}
.ceohub-v2-brand__name-ceo { color: var(--v2-gold); }
.ceohub-v2-brand__name-hub { color: #fff; }
.ceohub-v2-brand__tagline {
    font-size: 9px;
    color: rgba(247, 201, 72, 0.7);
    letter-spacing: 1.5px;
}

/* Nav */
.ceohub-v2-sidebar__nav {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ceohub-v2-sidebar__divider {
    height: 1px;
    background: rgba(255, 255, 255, 0.06);
    margin: 10px 4px;
}
.ceohub-v2-navlink {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 12px;
    color: var(--v2-side-text);
    font-size: 13px;
    text-decoration: none;
    border-radius: var(--v2-radius-md);
    position: relative;
    transition: var(--v2-trans);
}
.ceohub-v2-navlink:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.04);
}
.ceohub-v2-navlink.is-active {
    background: rgba(247, 201, 72, 0.12);
    color: var(--v2-gold);
    font-weight: 500;
}
.ceohub-v2-navlink__rail {
    position: absolute;
    left: 0;
    top: 8px;
    bottom: 8px;
    width: 3px;
    background: var(--v2-gold);
    border-radius: 0 3px 3px 0;
}
.ceohub-v2-navlink__icon { font-size: 17px; flex-shrink: 0; }
.ceohub-v2-navlink__label {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ceohub-v2-navlink__badge {
    margin-left: auto;
    background: var(--v2-gold);
    color: var(--v2-gold-dark);
    font-size: 9px;
    font-weight: 500;
    padding: 1px 6px;
    border-radius: 99px;
    min-width: 18px;
    text-align: center;
}

/* Sidebar footer */
.ceohub-v2-sidebar__footer {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 14px;
}

/* Subscription card */
.ceohub-v2-sub {
    background: linear-gradient(135deg, rgba(247, 201, 72, 0.18), rgba(247, 201, 72, 0.06));
    border: 1px solid rgba(247, 201, 72, 0.25);
    border-radius: var(--v2-radius-lg);
    padding: 12px;
}
.ceohub-v2-sub--free {
    background: rgba(255, 255, 255, 0.03);
    border-style: dashed;
    border-color: rgba(255, 255, 255, 0.15);
}
.ceohub-v2-sub__head {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
}
.ceohub-v2-sub__crown {
    font-size: 14px;
    color: var(--v2-gold);
}
.ceohub-v2-sub__tier {
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-gold);
    letter-spacing: 0.6px;
}
.ceohub-v2-sub--free .ceohub-v2-sub__tier { color: #fff; opacity: 0.7; }
.ceohub-v2-sub__name {
    font-size: 11px;
    color: #fff;
    font-weight: 500;
    margin-bottom: 2px;
}
.ceohub-v2-sub__renews {
    font-size: 10px;
    color: var(--v2-side-text);
    margin-bottom: 9px;
}
.ceohub-v2-sub__cta {
    display: block;
    text-align: center;
    width: 100%;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    border: 0;
    padding: 7px;
    border-radius: var(--v2-radius-sm);
    font-size: 11px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: var(--v2-trans);
    margin-top: 4px;
}
.ceohub-v2-sub__cta:hover {
    background: var(--v2-gold-deep);
    color: var(--v2-navy-deep);
}
.ceohub-v2-sub--free .ceohub-v2-sub__cta {
    background: transparent;
    color: var(--v2-gold);
    border: 1px solid var(--v2-gold);
}

/* User well */
.ceohub-v2-userwell {
    padding: 10px;
    background: rgba(255, 255, 255, 0.04);
    border-radius: var(--v2-radius-lg);
    position: relative;
}
.ceohub-v2-userwell__trigger {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 8px;
    background: transparent;
    border: 0;
    padding: 0;
    width: 100%;
    cursor: pointer;
    text-align: left;
    color: inherit;
}
.ceohub-v2-userwell__avatar {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--v2-gold), var(--v2-gold-deep));
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-navy-deep);
    font-weight: 500;
    font-size: 12px;
    flex-shrink: 0;
    overflow: hidden;
}
.ceohub-v2-userwell__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ceohub-v2-userwell__body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ceohub-v2-userwell__name {
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ceohub-v2-userwell__meta {
    font-size: 10px;
    color: var(--v2-side-text);
    display: flex;
    align-items: center;
    gap: 4px;
}
.ceohub-v2-userwell__dot {
    display: inline-block;
    width: 5px;
    height: 5px;
    background: var(--v2-green);
    border-radius: 50%;
}
.ceohub-v2-userwell__xp-row {
    display: flex;
    justify-content: space-between;
    font-size: 10px;
    color: var(--v2-side-text);
    margin-bottom: 4px;
}
.ceohub-v2-userwell__xp-val { color: var(--v2-gold); }
.ceohub-v2-userwell__xp-bar {
    height: 4px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 99px;
    overflow: hidden;
}
.ceohub-v2-userwell__xp-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--v2-gold), var(--v2-gold-deep));
    border-radius: 99px;
    transition: width 0.3s ease;
}

/* User dropdown */
.ceohub-v2-userwell__dropdown {
    position: absolute;
    bottom: calc(100% + 6px);
    left: 0;
    right: 0;
    background: #fff;
    border-radius: var(--v2-radius-md);
    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.18);
    padding: 6px;
    display: none;
    z-index: 100;
}
.ceohub-v2-userwell.is-open .ceohub-v2-userwell__dropdown {
    display: block;
}
.ceohub-v2-userwell__dropdown-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    color: var(--v2-text);
    font-size: 12px;
    text-decoration: none;
    border-radius: var(--v2-radius-sm);
    transition: var(--v2-trans);
}
.ceohub-v2-userwell__dropdown-item:hover {
    background: var(--v2-surface-2);
    color: var(--v2-text);
}
.ceohub-v2-userwell__dropdown-item--danger { color: var(--v2-red); }
.ceohub-v2-userwell__dropdown-item--danger:hover {
    background: rgba(239, 68, 68, 0.08);
    color: var(--v2-red);
}
.ceohub-v2-userwell__dropdown-item i { font-size: 14px; }

/* ── Main column ───────────────────────────────────────────────────── */
.ceohub-v2-main {
    background: var(--v2-bg);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    /* CRITICAL: Grid children default to min-width:auto, which makes them
       expand to fit content. This caused Courses (5 wide cards) and Members
       (sort tabs row) to push past the viewport. min-width:0 forces the
       column to honor its 1fr allocation and lets inner content wrap. */
    min-width: 0;
    min-height: 0;
    max-width: 100%;
}

/* ── Topbar ────────────────────────────────────────────────────────── */
.ceohub-v2-topbar {
    background: #fff;
    border-bottom: 1px solid var(--v2-border);
    padding: 0 24px;
    height: var(--v2-topbar-h);
    display: flex;
    align-items: center;
    gap: 18px;
    flex-shrink: 0;
}

.ceohub-v2-topbar__menu {
    display: none;
    background: transparent;
    border: 0;
    width: 36px;
    height: 36px;
    border-radius: var(--v2-radius-md);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    color: var(--v2-text);
}
.ceohub-v2-topbar__menu i { font-size: 18px; }

.ceohub-v2-topnav {
    display: flex;
    gap: 4px;
}
.ceohub-v2-topnav__link {
    padding: 7px 12px;
    font-size: 13px;
    color: var(--v2-text-3);
    text-decoration: none;
    border-radius: var(--v2-radius-sm);
    transition: var(--v2-trans);
}
.ceohub-v2-topnav__link:hover {
    color: var(--v2-text);
    background: var(--v2-surface-2);
}
.ceohub-v2-topnav__link.is-active {
    color: var(--v2-text);
    background: var(--v2-surface-2);
    font-weight: 500;
}

.ceohub-v2-topbar__search {
    flex: 1;
    max-width: 280px;
    margin-left: 8px;
    position: relative;
}
.ceohub-v2-topbar__search-icon {
    position: absolute;
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: var(--v2-text-light);
    pointer-events: none;
}
.ceohub-v2-topbar__search input {
    width: 100%;
    padding: 8px 12px 8px 32px;
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    background: var(--v2-bg);
    outline: none;
    transition: var(--v2-trans);
    color: var(--v2-text);
    font-family: inherit;
}
.ceohub-v2-topbar__search input:focus {
    border-color: var(--v2-blue);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

.ceohub-v2-topbar__actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
}

.ceohub-v2-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 14px;
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    font-weight: 500;
    border: 0;
    cursor: pointer;
    text-decoration: none;
    transition: var(--v2-trans);
    font-family: inherit;
    white-space: nowrap;
}
.ceohub-v2-btn i { font-size: 13px; }
.ceohub-v2-btn--primary {
    background: var(--v2-navy-deep);
    color: #fff;
}
.ceohub-v2-btn--primary:hover {
    background: var(--v2-navy-mid);
    color: #fff;
}
.ceohub-v2-btn--gold {
    background: var(--v2-gold);
    color: var(--v2-gold-dark);
}
.ceohub-v2-btn--gold:hover {
    background: var(--v2-gold-deep);
    color: var(--v2-gold-dark);
}

.ceohub-v2-topbar__sep {
    width: 1px;
    height: 22px;
    background: var(--v2-border-2);
    margin: 0 4px;
}

.ceohub-v2-iconbtn {
    position: relative;
    width: 34px;
    height: 34px;
    border-radius: var(--v2-radius-md);
    background: var(--v2-surface-2);
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--v2-text);
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-v2-iconbtn:hover {
    background: var(--v2-border-2);
    color: var(--v2-text);
}
.ceohub-v2-iconbtn i { font-size: 15px; }
.ceohub-v2-iconbtn__dot {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 7px;
    height: 7px;
    background: var(--v2-gold);
    border: 1.5px solid var(--v2-surface-2);
    border-radius: 50%;
}
.ceohub-v2-iconbtn__badge {
    position: absolute;
    top: -3px;
    right: -3px;
    background: var(--v2-gold);
    color: var(--v2-gold-dark);
    font-size: 9px;
    font-weight: 500;
    min-width: 16px;
    height: 16px;
    border-radius: 99px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
}

.ceohub-v2-topbar__avatar {
    width: 34px;
    height: 34px;
    border-radius: var(--v2-radius-md);
    background: linear-gradient(135deg, var(--v2-gold), var(--v2-gold-deep));
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-navy-deep);
    font-weight: 500;
    font-size: 12px;
    overflow: hidden;
    text-decoration: none;
}
.ceohub-v2-topbar__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ── Main content area ─────────────────────────────────────────────── */
.ceohub-v2-main__content {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 20px 24px;
    /* CRITICAL: Match the parent's width constraint so wide children
       (grids, tables, embedded plugin output) wrap or scroll their own
       overflow rather than pushing the column wider than the viewport. */
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* ── Mobile responsive ─────────────────────────────────────────────── */
@media (max-width: 920px) {
    .ceohub-app-shell-v2 {
        grid-template-columns: 1fr;
    }
    .ceohub-v2-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 240px;
        z-index: 1000;
        transform: translateX(-100%);
        transition: transform 0.25s ease;
        box-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
    }
    .ceohub-app-shell-v2.is-sidebar-open .ceohub-v2-sidebar {
        transform: translateX(0);
    }
    .ceohub-v2-topbar__menu { display: flex; }
    .ceohub-v2-topnav { display: none; }
    .ceohub-v2-topbar__search { max-width: none; }
    .ceohub-v2-btn { display: none; }
    .ceohub-v2-topbar__sep { display: none; }
}

@media (max-width: 600px) {
    .ceohub-v2-topbar { padding: 0 14px; gap: 10px; }
    .ceohub-v2-main__content { padding: 14px; }
}

/* ── Print ─────────────────────────────────────────────────────────── */
@media print {
    .ceohub-v2-sidebar,
    .ceohub-v2-topbar { display: none; }
    .ceohub-app-shell-v2 { position: static; grid-template-columns: 1fr; }
    body.ceohub-shell-v2 { overflow: auto !important; }
}


/* ═══════════════════════════════════════════════════════════════════════
   Page head + dashboard placeholder
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-dash-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.ceohub-dash-hero__intro { flex: 1; min-width: 240px; }
.ceohub-dash-hero__title {
    margin: 0;
    font-size: 22px;
    font-weight: 500;
    color: var(--v2-text);
    letter-spacing: -0.3px;
}
.ceohub-dash-hero__subtitle {
    margin: 4px 0 0;
    font-size: 13px;
    color: var(--v2-text-3);
}
.ceohub-dash-hero__stats {
    display: flex;
    gap: 14px;
    align-items: stretch;
}
.ceohub-dash-stat { text-align: right; }
.ceohub-dash-stat__value {
    font-size: 20px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.1;
}
.ceohub-dash-stat__label {
    font-size: 10px;
    color: var(--v2-text-3);
    letter-spacing: 0.5px;
    margin-top: 2px;
}
.ceohub-dash-stat__sep {
    width: 1px;
    background: var(--v2-border-2);
}

.ceohub-dash-placeholder {
    background: var(--v2-surface);
    border: 1px dashed var(--v2-border-2);
    border-radius: var(--v2-radius-xl);
    padding: 48px 24px;
    text-align: center;
    margin-top: 12px;
}
.ceohub-dash-placeholder__icon {
    font-size: 48px;
    margin-bottom: 14px;
}
.ceohub-dash-placeholder__title {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-dash-placeholder__text {
    margin: 0 auto 10px;
    max-width: 560px;
    font-size: 13px;
    color: var(--v2-text-3);
    line-height: 1.55;
}
.ceohub-dash-placeholder__cta {
    margin-top: 18px;
    display: inline-flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

/* Courses page tweaks for v2 shell */
.ceohub-courses-archive-v2 .ceohub-coursefilters {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
}


/* ═══════════════════════════════════════════════════════════════════════
   Dashboard body — Phase 3 Chat 2
   Community-first layout: left rail cards + community hero + quick access,
   then 4-card service row, then value props strip.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Row 1: 3-column main row ──────────────────────────────────────── */
.ceohub-dash-row1 {
    display: grid;
    grid-template-columns: 240px 1fr 240px;
    gap: 14px;
    margin-bottom: 14px;
}
.ceohub-dash-row1__left {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ── Left rail cards (Groups / Who's Online / Next Event) ──────────── */
.ceohub-dash-card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
    overflow: hidden;
    transition: var(--v2-trans);
}
.ceohub-dash-card:hover {
    color: inherit;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}
.ceohub-dash-card__topbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
}
.ceohub-dash-card--blue .ceohub-dash-card__topbar {
    background: linear-gradient(90deg, var(--v2-blue), var(--v2-indigo));
}
.ceohub-dash-card--green .ceohub-dash-card__topbar {
    background: linear-gradient(90deg, var(--v2-green), var(--v2-green-2));
}
.ceohub-dash-card--amber .ceohub-dash-card__topbar {
    background: linear-gradient(90deg, var(--v2-amber), var(--v2-gold));
}

.ceohub-dash-card__head {
    display: flex;
    align-items: center;
    gap: 10px;
}
.ceohub-dash-card__icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
}
.ceohub-dash-card__icon i { font-size: 18px; }
.ceohub-dash-card--blue .ceohub-dash-card__icon {
    background: rgba(59, 130, 246, 0.1);
    color: var(--v2-blue);
}
.ceohub-dash-card--green .ceohub-dash-card__icon {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-dash-card--amber .ceohub-dash-card__icon {
    background: rgba(245, 158, 11, 0.1);
    color: var(--v2-amber);
}
.ceohub-dash-card__icon--live .ceohub-dash-card__icon-dot {
    position: absolute;
    bottom: 1px;
    right: 1px;
    width: 8px;
    height: 8px;
    background: var(--v2-green);
    border: 2px solid var(--v2-surface);
    border-radius: 50%;
}
.ceohub-dash-card__head-text { flex: 1; min-width: 0; }
.ceohub-dash-card__title {
    font-weight: 500;
    font-size: 13px;
    color: var(--v2-text);
    line-height: 1.2;
}
.ceohub-dash-card__sub {
    font-size: 10px;
    color: var(--v2-text-3);
    margin-top: 2px;
}
.ceohub-dash-card__body {
    font-size: 11px;
    color: var(--v2-text-2);
    line-height: 1.45;
}
.ceohub-dash-card__cta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 500;
}
.ceohub-dash-card__cta i { font-size: 13px; }
.ceohub-dash-card--blue .ceohub-dash-card__cta { color: var(--v2-blue); }
.ceohub-dash-card--green .ceohub-dash-card__cta { color: var(--v2-green); }
.ceohub-dash-card--amber .ceohub-dash-card__cta { color: var(--v2-amber); }

/* Avatar stack inside left rail card */
.ceohub-dash-card__stack {
    display: flex;
    margin: -2px 0;
}
.ceohub-dash-stack__avatar {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid var(--v2-surface);
    overflow: hidden;
    background: var(--v2-surface-2);
    flex-shrink: 0;
}
.ceohub-dash-stack__avatar:not(:first-child) { margin-left: -6px; }
.ceohub-dash-stack__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-dash-stack__more {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid var(--v2-surface);
    background: var(--v2-border-2);
    color: var(--v2-text-2);
    font-size: 8px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -6px;
    flex-shrink: 0;
}

/* ── Community hero (center) ───────────────────────────────────────── */
.ceohub-dash-community {
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    position: relative;
    color: #fff;
    display: flex;
    flex-direction: column;
    min-height: 400px;
}
.ceohub-dash-community__bg-circle {
    position: absolute;
    border-radius: 50%;
    background: rgba(247, 201, 72, 0.08);
    pointer-events: none;
}
.ceohub-dash-community__bg-circle--top {
    top: -40px;
    right: -40px;
    width: 160px;
    height: 160px;
}
.ceohub-dash-community__bg-circle--bot {
    bottom: -30px;
    left: -30px;
    width: 120px;
    height: 120px;
    background: rgba(247, 201, 72, 0.06);
}

.ceohub-dash-community__header {
    padding: 20px 22px 14px;
    position: relative;
    z-index: 1;
}
.ceohub-dash-community__eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}
.ceohub-dash-community__eyebrow i {
    font-size: 18px;
    color: var(--v2-gold);
}
.ceohub-dash-community__eyebrow span {
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-gold);
    letter-spacing: 2px;
}
.ceohub-dash-community__title {
    margin: 0;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: -0.3px;
    color: #fff;
    line-height: 1.25;
}
.ceohub-dash-community__title span {
    color: var(--v2-gold);
}

.ceohub-dash-community__body {
    padding: 0 22px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.ceohub-dash-community__avatars {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}
.ceohub-dash-community__avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 2px solid var(--v2-navy-deep);
    overflow: hidden;
    background: var(--v2-navy-mid);
    flex-shrink: 0;
}
.ceohub-dash-community__avatar:not(:first-child) { margin-left: -8px; }
.ceohub-dash-community__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-dash-community__avatar--more {
    background: rgba(247, 201, 72, 0.2);
    color: var(--v2-gold);
    font-weight: 500;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ceohub-dash-community__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 16px;
}
.ceohub-dash-community__stat {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--v2-radius-md);
    padding: 10px;
    text-align: center;
}
.ceohub-dash-community__stat-val {
    font-size: 17px;
    font-weight: 500;
    color: var(--v2-gold);
    line-height: 1.1;
}
.ceohub-dash-community__stat-label {
    font-size: 9px;
    color: var(--v2-side-text);
    letter-spacing: 0.4px;
    margin-top: 3px;
}

.ceohub-dash-community__pitch {
    margin: 0;
    font-size: 11px;
    color: var(--v2-side-text);
    text-align: center;
    line-height: 1.5;
}

.ceohub-dash-community__footer {
    padding: 14px 22px 22px;
    position: relative;
    z-index: 1;
}
.ceohub-dash-community__cta {
    width: 100%;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    border: 0;
    padding: 12px;
    border-radius: var(--v2-radius-md);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    transition: var(--v2-trans);
}
.ceohub-dash-community__cta:hover {
    background: var(--v2-gold-deep);
    color: var(--v2-navy-deep);
    transform: translateY(-1px);
}
.ceohub-dash-community__cta i { font-size: 14px; }

/* ── Quick Access (right) ──────────────────────────────────────────── */
.ceohub-dash-quick {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    display: flex;
    flex-direction: column;
}
.ceohub-dash-quick__head {
    margin-bottom: 12px;
}
.ceohub-dash-quick__title-row {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 3px;
}
.ceohub-dash-quick__icon {
    font-size: 14px;
    color: var(--v2-gold);
}
.ceohub-dash-quick__title {
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-dash-quick__sub {
    font-size: 10px;
    color: var(--v2-text-3);
}
.ceohub-dash-quick__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    flex: 1;
}
.ceohub-dash-quick__tile {
    background: var(--v2-bg);
    border: 1px solid transparent;
    padding: 14px 6px;
    border-radius: var(--v2-radius-md);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-dash-quick__tile:hover {
    background: var(--v2-surface-2);
    transform: translateY(-1px);
    color: inherit;
}
.ceohub-dash-quick__tile-icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ceohub-dash-quick__tile-icon i { font-size: 17px; }
.ceohub-dash-quick__tile-label {
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-text);
}
/* Per-tile color theming */
.ceohub-dash-quick__tile[data-color="blue"] .ceohub-dash-quick__tile-icon {
    background: rgba(59, 130, 246, 0.1); color: var(--v2-blue);
}
.ceohub-dash-quick__tile[data-color="indigo"] .ceohub-dash-quick__tile-icon {
    background: rgba(99, 102, 241, 0.1); color: var(--v2-indigo);
}
.ceohub-dash-quick__tile[data-color="green"] .ceohub-dash-quick__tile-icon {
    background: rgba(16, 185, 129, 0.1); color: var(--v2-green);
}
.ceohub-dash-quick__tile[data-color="amber"] .ceohub-dash-quick__tile-icon {
    background: rgba(245, 158, 11, 0.1); color: var(--v2-amber);
}
.ceohub-dash-quick__tile[data-color="purple"] .ceohub-dash-quick__tile-icon {
    background: rgba(124, 58, 237, 0.1); color: var(--v2-purple);
}
.ceohub-dash-quick__tile[data-color="red"] .ceohub-dash-quick__tile-icon {
    background: rgba(239, 68, 68, 0.1); color: var(--v2-red);
}

/* ── Row 2: 4 service cards ────────────────────────────────────────── */
.ceohub-dash-row2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 14px;
}
.ceohub-dash-srv {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: var(--v2-trans);
}
.ceohub-dash-srv:hover:not(.ceohub-dash-srv--split) {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
    color: inherit;
}
.ceohub-dash-srv__head {
    display: flex;
    align-items: center;
    gap: 9px;
}
.ceohub-dash-srv__icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-dash-srv__icon i { font-size: 16px; }
.ceohub-dash-srv--blue   .ceohub-dash-srv__icon { background: rgba(59, 130, 246, 0.1); color: var(--v2-blue); }
.ceohub-dash-srv--green  .ceohub-dash-srv__icon { background: rgba(16, 185, 129, 0.1); color: var(--v2-green); }
.ceohub-dash-srv--amber  .ceohub-dash-srv__icon { background: rgba(245, 158, 11, 0.1); color: var(--v2-amber); }
.ceohub-dash-srv--purple .ceohub-dash-srv__icon { background: rgba(124, 58, 237, 0.1); color: var(--v2-purple); }

.ceohub-dash-srv__title-block { flex: 1; min-width: 0; }
.ceohub-dash-srv__title {
    font-weight: 500;
    font-size: 12px;
    color: var(--v2-text);
}
.ceohub-dash-srv__sub {
    font-size: 10px;
    color: var(--v2-text-3);
    line-height: 1.3;
    margin-top: 1px;
}
.ceohub-dash-srv__cta {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 500;
    margin-top: auto;
}
.ceohub-dash-srv__cta i { font-size: 12px; }
.ceohub-dash-srv--blue   .ceohub-dash-srv__cta { color: var(--v2-blue); }
.ceohub-dash-srv--green  .ceohub-dash-srv__cta { color: var(--v2-green); }
.ceohub-dash-srv--amber  .ceohub-dash-srv__cta { color: var(--v2-amber); }
.ceohub-dash-srv--purple .ceohub-dash-srv__cta { color: var(--v2-purple); }

/* Service card variants */
.ceohub-dash-srv__stack {
    display: flex;
}
.ceohub-dash-srv__stack-av {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid var(--v2-surface);
    overflow: hidden;
    background: var(--v2-surface-2);
    flex-shrink: 0;
}
.ceohub-dash-srv__stack-av:not(:first-child) { margin-left: -6px; }
.ceohub-dash-srv__stack-av img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ceohub-dash-srv__chips {
    display: flex;
    gap: 4px;
    align-items: center;
}
.ceohub-dash-srv__chip {
    font-size: 9px;
    padding: 3px 6px;
    border-radius: 4px;
    font-weight: 500;
}
.ceohub-dash-srv__chip--pdf  { background: #FEE2E2; color: #B91C1C; }
.ceohub-dash-srv__chip--doc  { background: #DBEAFE; color: #1D4ED8; }
.ceohub-dash-srv__chip--xlsx { background: #DCFCE7; color: #15803D; }

.ceohub-dash-srv__list {
    font-size: 10px;
    line-height: 1.55;
    color: var(--v2-text-2);
}
.ceohub-dash-srv__list div {
    display: flex;
    align-items: center;
    gap: 5px;
}
.ceohub-dash-srv__list i {
    font-size: 11px;
    color: var(--v2-green);
}

.ceohub-dash-srv__split {
    display: flex;
    gap: 5px;
    margin-top: auto;
}
.ceohub-dash-srv__split-btn {
    flex: 1;
    text-align: center;
    padding: 7px;
    border-radius: var(--v2-radius-sm);
    font-size: 10px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-dash-srv__split-btn--ghost {
    background: var(--v2-bg);
    color: var(--v2-text);
}
.ceohub-dash-srv__split-btn--ghost:hover {
    background: var(--v2-surface-2);
    color: var(--v2-text);
}
.ceohub-dash-srv__split-btn--gold {
    background: var(--v2-amber);
    color: #fff;
}
.ceohub-dash-srv__split-btn--gold:hover {
    background: var(--v2-gold-deep);
    color: #fff;
}

.ceohub-dash-srv__profile-preview {
    display: flex;
    gap: 6px;
    align-items: center;
    padding: 7px;
    background: var(--v2-bg);
    border-radius: var(--v2-radius-sm);
}
.ceohub-dash-srv__profile-avatar {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: var(--v2-surface-2);
}
.ceohub-dash-srv__profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-dash-srv__profile-lines {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}
.ceohub-dash-srv__profile-lines span {
    height: 5px;
    background: var(--v2-border-2);
    border-radius: 99px;
    display: block;
}
.ceohub-dash-srv__profile-lines span:first-child { width: 100%; }

/* ── Value props strip ─────────────────────────────────────────────── */
.ceohub-dash-vps {
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    border-radius: var(--v2-radius-xl);
    padding: 18px 22px;
    position: relative;
    overflow: hidden;
}
.ceohub-dash-vps__glow {
    position: absolute;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.15) 0%, transparent 70%);
    pointer-events: none;
}
.ceohub-dash-vps__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    position: relative;
    z-index: 1;
}
.ceohub-dash-vps__item {
    display: flex;
    align-items: center;
    gap: 11px;
}
.ceohub-dash-vps__icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(247, 201, 72, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-dash-vps__icon i {
    font-size: 18px;
    color: var(--v2-gold);
}
.ceohub-dash-vps__title {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-gold);
    letter-spacing: 0.8px;
    margin-bottom: 2px;
}
.ceohub-dash-vps__sub {
    font-size: 10px;
    color: var(--v2-side-text);
    line-height: 1.4;
}

/* ── Responsive collapses for dashboard body ───────────────────────── */
@media (max-width: 1180px) {
    .ceohub-dash-row1 {
        grid-template-columns: 1fr 1fr;
    }
    .ceohub-dash-row1__left {
        grid-column: 1 / -1;
        flex-direction: row;
    }
    .ceohub-dash-row1__left > * { flex: 1; }
}
@media (max-width: 920px) {
    .ceohub-dash-row1 {
        grid-template-columns: 1fr;
    }
    .ceohub-dash-row1__left {
        flex-direction: column;
    }
    .ceohub-dash-row2 {
        grid-template-columns: repeat(2, 1fr);
    }
    .ceohub-dash-vps__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}
@media (max-width: 540px) {
    .ceohub-dash-row2 {
        grid-template-columns: 1fr;
    }
    .ceohub-dash-vps__grid {
        grid-template-columns: 1fr;
    }
    .ceohub-dash-hero {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* ═══════════════════════════════════════════════════════════════════════
   Support / Help Center page
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-support__layout {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 18px;
    align-items: start;
}
.ceohub-support__main {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.ceohub-support__rail {
    display: flex;
    flex-direction: column;
    gap: 18px;
    position: sticky;
    top: 14px;
}

/* ── Hero search panel ─────────────────────────────────────────────── */
.ceohub-support__hero {
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    border-radius: var(--v2-radius-xl);
    padding: 32px 36px 28px;
    color: #fff;
    position: relative;
    overflow: hidden;
}
.ceohub-support__hero-glow {
    position: absolute;
    right: -80px;
    top: -80px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.15) 0%, transparent 65%);
    pointer-events: none;
}
.ceohub-support__hero-arc {
    position: absolute;
    right: -40px;
    bottom: -40px;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(247, 201, 72, 0.2);
    border-radius: 50%;
    pointer-events: none;
}
.ceohub-support__hero-arc::after {
    content: '';
    position: absolute;
    inset: 30px;
    border: 1px solid rgba(247, 201, 72, 0.12);
    border-radius: 50%;
}
.ceohub-support__hero-title {
    margin: 0 0 18px;
    font-size: 24px;
    font-weight: 500;
    color: #fff;
    letter-spacing: -0.3px;
    position: relative;
    z-index: 1;
}

.ceohub-support__search {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: var(--v2-radius-lg);
    padding: 6px 6px 6px 18px;
    margin-bottom: 14px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
}
.ceohub-support__search-icon {
    font-size: 18px;
    color: var(--v2-text-light);
    flex-shrink: 0;
    margin-right: 10px;
}
.ceohub-support__search-input {
    flex: 1;
    border: 0;
    outline: none;
    background: transparent;
    padding: 12px 0;
    font-size: 14px;
    color: var(--v2-text);
    font-family: inherit;
    min-width: 0;
}
.ceohub-support__search-input::placeholder { color: var(--v2-text-light); }
.ceohub-support__search-btn {
    width: 40px;
    height: 40px;
    border-radius: var(--v2-radius-md);
    background: var(--v2-navy-deep);
    color: #fff;
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--v2-trans);
    flex-shrink: 0;
}
.ceohub-support__search-btn:hover { background: var(--v2-navy-mid); }
.ceohub-support__search-btn i { font-size: 18px; }

.ceohub-support__popular {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.ceohub-support__popular-label {
    font-size: 12px;
    color: var(--v2-side-text);
    margin-right: 2px;
}
.ceohub-support__chip {
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--v2-radius-md);
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-support__chip:hover {
    background: var(--v2-gold);
    border-color: var(--v2-gold);
    color: var(--v2-navy-deep);
}

/* ── Section title ─────────────────────────────────────────────────── */
.ceohub-support__section-title {
    margin: 0 0 12px;
    font-size: 17px;
    font-weight: 500;
    color: var(--v2-text);
    letter-spacing: -0.2px;
}

/* ── 12 help-topic cards ──────────────────────────────────────────── */
.ceohub-support__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
.ceohub-support__card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 16px;
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: var(--v2-trans);
    position: relative;
}
.ceohub-support__card:hover {
    color: inherit;
    border-color: var(--v2-blue);
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}
.ceohub-support__card-icon {
    width: 42px;
    height: 42px;
    border-radius: var(--v2-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-support__card-icon i { font-size: 20px; }
.ceohub-support__card[data-color="blue"] .ceohub-support__card-icon {
    background: rgba(59, 130, 246, 0.1);
    color: var(--v2-blue);
}
.ceohub-support__card[data-color="gold"] .ceohub-support__card-icon {
    background: rgba(247, 201, 72, 0.15);
    color: var(--v2-gold-deep);
}
.ceohub-support__card[data-color="green"] .ceohub-support__card-icon {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-support__card-body { flex: 1; min-width: 0; }
.ceohub-support__card-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 3px;
    line-height: 1.3;
}
.ceohub-support__card-num {
    color: var(--v2-text-3);
    margin-right: 2px;
}
.ceohub-support__card-desc {
    font-size: 11px;
    color: var(--v2-text-3);
    line-height: 1.5;
}
.ceohub-support__card-arrow {
    font-size: 14px;
    color: var(--v2-text-light);
    flex-shrink: 0;
    transition: var(--v2-trans);
}
.ceohub-support__card:hover .ceohub-support__card-arrow {
    color: var(--v2-blue);
    transform: translateX(2px);
}

/* ── Still need help CTA strip ─────────────────────────────────────── */
.ceohub-support__cta-strip {
    background: rgba(247, 201, 72, 0.08);
    border: 1px solid rgba(247, 201, 72, 0.25);
    border-radius: var(--v2-radius-lg);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
}
.ceohub-support__cta-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(247, 201, 72, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-support__cta-icon i {
    font-size: 20px;
    color: var(--v2-gold-deep);
}
.ceohub-support__cta-text { flex: 1; min-width: 0; }
.ceohub-support__cta-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 2px;
}
.ceohub-support__cta-sub {
    font-size: 11px;
    color: var(--v2-text-3);
}

/* ── Right rail panels ─────────────────────────────────────────────── */
.ceohub-support__panel {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 16px;
}
.ceohub-support__panel-head { margin-bottom: 12px; }
.ceohub-support__panel-head--row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ceohub-support__panel-title {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-support__panel-sub {
    margin: 3px 0 0;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-support__panel-link {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-support__panel-link:hover { color: var(--v2-blue); text-decoration: underline; }

/* Contact channels */
.ceohub-support__channels {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 12px;
}
.ceohub-support__channel {
    display: flex;
    gap: 11px;
    padding: 10px;
    border-radius: var(--v2-radius-md);
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-support__channel:hover {
    background: var(--v2-bg);
    color: inherit;
}
.ceohub-support__channel-icon {
    width: 34px;
    height: 34px;
    border-radius: var(--v2-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-support__channel-icon i { font-size: 16px; }
.ceohub-support__channel[data-color="blue"] .ceohub-support__channel-icon {
    background: rgba(59, 130, 246, 0.1);
    color: var(--v2-blue);
}
.ceohub-support__channel[data-color="gold"] .ceohub-support__channel-icon {
    background: rgba(247, 201, 72, 0.15);
    color: var(--v2-gold-deep);
}
.ceohub-support__channel[data-color="green"] .ceohub-support__channel-icon {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-support__channel-body { flex: 1; min-width: 0; }
.ceohub-support__channel-title {
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 1px;
}
.ceohub-support__channel-desc {
    font-size: 11px;
    color: var(--v2-text-2);
    line-height: 1.35;
    word-break: break-word;
}
.ceohub-support__channel-meta {
    font-size: 10px;
    color: var(--v2-text-3);
    margin-top: 2px;
}

.ceohub-support__ticket-btn {
    display: block;
    width: 100%;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    border: 0;
    padding: 10px;
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    transition: var(--v2-trans);
    cursor: pointer;
    font-family: inherit;
}
.ceohub-support__ticket-btn:hover {
    background: var(--v2-gold-deep);
    color: var(--v2-navy-deep);
}

/* FAQ list */
.ceohub-support__faqs {
    display: flex;
    flex-direction: column;
}
.ceohub-support__faq {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 0;
    border-bottom: 1px solid var(--v2-border);
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-support__faq:last-child { border-bottom: 0; }
.ceohub-support__faq:hover { color: var(--v2-blue); }
.ceohub-support__faq-q {
    flex: 1;
    font-size: 12px;
    line-height: 1.4;
    color: var(--v2-text);
    transition: var(--v2-trans);
}
.ceohub-support__faq:hover .ceohub-support__faq-q { color: var(--v2-blue); }
.ceohub-support__faq i {
    font-size: 13px;
    color: var(--v2-text-light);
    flex-shrink: 0;
}

/* System status */
.ceohub-support__status-dot i {
    font-size: 16px;
    color: var(--v2-green);
}
.ceohub-support__status-overall {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-bottom: 12px;
}
.ceohub-support__status-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 12px;
}
.ceohub-support__status-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ceohub-support__status-label {
    font-size: 12px;
    color: var(--v2-text);
}
.ceohub-support__status-pill {
    font-size: 10px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 99px;
}
.ceohub-support__status-pill--ok {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-support__status-pill--degraded {
    background: rgba(245, 158, 11, 0.1);
    color: var(--v2-amber);
}
.ceohub-support__status-pill--down {
    background: rgba(239, 68, 68, 0.1);
    color: var(--v2-red);
}

.ceohub-support__status-link {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: var(--v2-blue);
    text-decoration: none;
    font-weight: 500;
}
.ceohub-support__status-link:hover { color: var(--v2-blue); text-decoration: underline; }
.ceohub-support__status-link i { font-size: 12px; }

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 1180px) {
    .ceohub-support__layout {
        grid-template-columns: 1fr;
    }
    .ceohub-support__rail {
        position: static;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }
}
@media (max-width: 920px) {
    .ceohub-support__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .ceohub-support__rail {
        grid-template-columns: 1fr;
    }
    .ceohub-support__hero {
        padding: 24px 22px 22px;
    }
    .ceohub-support__hero-title {
        font-size: 20px;
    }
    .ceohub-support__cta-strip {
        flex-direction: column;
        text-align: center;
    }
}
@media (max-width: 540px) {
    .ceohub-support__grid {
        grid-template-columns: 1fr;
    }
    .ceohub-support__hero {
        padding: 20px 16px;
    }
    .ceohub-support__hero-title { font-size: 18px; }
    .ceohub-support__search { padding: 4px 4px 4px 14px; }
    .ceohub-support__search-input { font-size: 13px; padding: 10px 0; }
    .ceohub-support__popular { gap: 6px; }
    .ceohub-support__chip { padding: 5px 10px; font-size: 11px; }
}


/* ═══════════════════════════════════════════════════════════════════════
   Members directory + profile pages
   ═══════════════════════════════════════════════════════════════════════ */

/* Ghost button variant used on profiles */
.ceohub-v2-btn--ghost {
    background: var(--v2-surface);
    color: var(--v2-text);
    border: 1px solid var(--v2-border-2);
}
.ceohub-v2-btn--ghost:hover {
    background: var(--v2-surface-2);
    color: var(--v2-text);
    border-color: var(--v2-border-2);
}

/* ── Members directory filters ─────────────────────────────────────── */
.ceohub-members-filters {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 12px 14px;
    margin-bottom: 16px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}
.ceohub-members-filters__search {
    position: relative;
    flex: 1;
    min-width: 200px;
}
.ceohub-members-filters__search i.ti-search {
    position: absolute;
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    color: var(--v2-text-light);
    pointer-events: none;
}
.ceohub-members-filters__search input {
    width: 100%;
    padding: 9px 32px 9px 34px;
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    font-size: 13px;
    background: var(--v2-bg);
    color: var(--v2-text);
    outline: none;
    transition: var(--v2-trans);
    font-family: inherit;
}
.ceohub-members-filters__search input:focus {
    border-color: var(--v2-blue);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}
.ceohub-members-filters__clear {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--v2-border-2);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-text-2);
    text-decoration: none;
}
.ceohub-members-filters__clear:hover {
    background: var(--v2-text-3);
    color: #fff;
}
.ceohub-members-filters__clear i { font-size: 11px; }

.ceohub-members-filters__tabs {
    display: flex;
    gap: 2px;
    background: var(--v2-bg);
    padding: 3px;
    border-radius: var(--v2-radius-md);
}
.ceohub-members-filters__tab {
    padding: 7px 12px;
    font-size: 12px;
    color: var(--v2-text-2);
    text-decoration: none;
    border-radius: var(--v2-radius-sm);
    transition: var(--v2-trans);
    white-space: nowrap;
}
.ceohub-members-filters__tab:hover {
    color: var(--v2-text);
    background: rgba(0, 0, 0, 0.03);
}
.ceohub-members-filters__tab.is-active {
    background: var(--v2-surface);
    color: var(--v2-text);
    font-weight: 500;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.ceohub-members-dir__resultcount {
    margin: 0 0 14px;
    font-size: 12px;
    color: var(--v2-text-3);
}

/* ── Members grid ──────────────────────────────────────────────────── */
.ceohub-members-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.ceohub-member-card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 18px 14px 14px;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
    transition: var(--v2-trans);
    position: relative;
    overflow: hidden;
}
.ceohub-member-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 56px;
    background: linear-gradient(135deg, rgba(11, 30, 63, 0.04), rgba(247, 201, 72, 0.04));
    pointer-events: none;
}
.ceohub-member-card:hover {
    color: inherit;
    transform: translateY(-2px);
    border-color: var(--v2-gold);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.08);
}
.ceohub-member-card__avatar-wrap {
    position: relative;
    z-index: 1;
    margin-bottom: 6px;
}
.ceohub-member-card__avatar {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    border: 3px solid var(--v2-surface);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.1);
}
.ceohub-member-card__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-member-card__online-dot {
    position: absolute;
    bottom: 2px;
    right: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--v2-green);
    border: 2.5px solid var(--v2-surface);
}
.ceohub-member-card__name {
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.3;
}
.ceohub-member-card__title {
    font-size: 11px;
    color: var(--v2-blue);
    font-weight: 500;
    margin-bottom: 2px;
}
.ceohub-member-card__meta {
    font-size: 11px;
    color: var(--v2-text-3);
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 1.3;
}
.ceohub-member-card__meta i { font-size: 12px; }
.ceohub-member-card__cta {
    margin-top: 10px;
    padding: 6px 12px;
    background: var(--v2-bg);
    border-radius: 99px;
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-text);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: var(--v2-trans);
}
.ceohub-member-card:hover .ceohub-member-card__cta {
    background: var(--v2-navy-deep);
    color: #fff;
}
.ceohub-member-card__cta i { font-size: 12px; }

/* ── Empty state ───────────────────────────────────────────────────── */
.ceohub-members-dir__empty {
    background: var(--v2-surface);
    border: 1px dashed var(--v2-border-2);
    border-radius: var(--v2-radius-lg);
    padding: 48px 24px;
    text-align: center;
}
.ceohub-members-dir__empty i {
    font-size: 40px;
    color: var(--v2-text-light);
    margin-bottom: 8px;
    display: block;
}
.ceohub-members-dir__empty h3 {
    margin: 8px 0 6px;
    font-size: 16px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-members-dir__empty p {
    margin: 0 0 14px;
    font-size: 13px;
    color: var(--v2-text-3);
}

/* ── Pagination ────────────────────────────────────────────────────── */
.ceohub-members-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
}
.ceohub-members-pagination a,
.ceohub-members-pagination span {
    padding: 8px 12px;
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    text-decoration: none;
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    color: var(--v2-text);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: var(--v2-trans);
}
.ceohub-members-pagination a:hover {
    background: var(--v2-bg);
    color: var(--v2-text);
    border-color: var(--v2-border-2);
}
.ceohub-members-pagination .current {
    background: var(--v2-navy-deep);
    color: #fff;
    border-color: var(--v2-navy-deep);
    font-weight: 500;
}
.ceohub-members-pagination i { font-size: 13px; }

/* ═══════════════════════════════════════════════════════════════════════
   Single member profile
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-member-profile__header {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    margin-bottom: 18px;
}

/* Cover */
.ceohub-member-profile__cover {
    position: relative;
    height: 180px;
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    background-size: cover;
    background-position: center;
}
.ceohub-member-profile__cover-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(11, 30, 63, 0.2) 0%, rgba(11, 30, 63, 0.55) 100%);
}
.ceohub-member-profile__cover-glow {
    position: absolute;
    right: -80px;
    top: -80px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.18) 0%, transparent 65%);
    pointer-events: none;
}
.ceohub-member-profile__cover-edit {
    position: absolute;
    top: 14px;
    right: 14px;
    background: rgba(11, 30, 63, 0.75);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.18);
    padding: 6px 12px;
    border-radius: var(--v2-radius-md);
    font-size: 11px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: var(--v2-trans);
}
.ceohub-member-profile__cover-edit:hover {
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    border-color: var(--v2-gold);
}
.ceohub-member-profile__cover-edit i { font-size: 13px; }

/* Identity row */
.ceohub-member-profile__identity {
    padding: 0 24px 18px;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: -50px;
    position: relative;
    z-index: 1;
}
.ceohub-member-profile__avatar-wrap {
    position: relative;
    flex-shrink: 0;
}
.ceohub-member-profile__avatar {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    border: 4px solid var(--v2-surface);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.18);
}
.ceohub-member-profile__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-member-profile__online-dot {
    position: absolute;
    bottom: 6px;
    right: 6px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--v2-green);
    border: 3px solid var(--v2-surface);
}
.ceohub-member-profile__id-body {
    flex: 1;
    min-width: 0;
    padding-top: 56px;
}
.ceohub-member-profile__name {
    margin: 0 0 4px;
    font-size: 22px;
    font-weight: 500;
    color: var(--v2-text);
    letter-spacing: -0.3px;
}
.ceohub-member-profile__role {
    font-size: 13px;
    color: var(--v2-blue);
    font-weight: 500;
    margin-bottom: 8px;
}
.ceohub-member-profile__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}
.ceohub-member-profile__meta-item {
    font-size: 12px;
    color: var(--v2-text-3);
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.ceohub-member-profile__meta-item i {
    font-size: 14px;
    color: var(--v2-text-light);
}

.ceohub-member-profile__actions {
    display: flex;
    gap: 8px;
    padding-top: 56px;
    flex-wrap: wrap;
}

/* Stats row */
.ceohub-member-profile__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    border-top: 1px solid var(--v2-border);
    border-bottom: 1px solid var(--v2-border);
    background: linear-gradient(180deg, var(--v2-bg) 0%, transparent 100%);
}
.ceohub-member-profile__stat {
    text-align: center;
    padding: 14px;
    border-right: 1px solid var(--v2-border);
}
.ceohub-member-profile__stat:last-child { border-right: 0; }
.ceohub-member-profile__stat-val {
    font-size: 20px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.1;
}
.ceohub-member-profile__stat-label {
    font-size: 10px;
    color: var(--v2-text-3);
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-top: 3px;
}

/* Sub-nav */
.ceohub-member-profile__subnav {
    display: flex;
    gap: 0;
    padding: 0 14px;
    overflow-x: auto;
}
.ceohub-member-profile__subnav-link {
    padding: 14px 16px;
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text-3);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border-bottom: 2px solid transparent;
    transition: var(--v2-trans);
    white-space: nowrap;
}
.ceohub-member-profile__subnav-link i { font-size: 16px; }
.ceohub-member-profile__subnav-link:hover {
    color: var(--v2-text);
}
.ceohub-member-profile__subnav-link.is-active {
    color: var(--v2-navy-deep);
    border-bottom-color: var(--v2-gold);
}

/* Body 2-col grid */
.ceohub-member-profile__body {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 18px;
    align-items: start;
}
.ceohub-member-profile__main,
.ceohub-member-profile__side {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-width: 0;
}

/* Profile panels */
.ceohub-member-profile__panel {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 18px 20px;
}
.ceohub-member-profile__panel-head { margin-bottom: 12px; }
.ceohub-member-profile__panel-head--row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ceohub-member-profile__panel-title {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.ceohub-member-profile__panel-count {
    background: var(--v2-bg);
    color: var(--v2-text-2);
    font-size: 11px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 99px;
}
.ceohub-member-profile__panel-link {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-member-profile__panel-link:hover { text-decoration: underline; }

.ceohub-member-profile__bio {
    font-size: 13px;
    line-height: 1.65;
    color: var(--v2-text-2);
}
.ceohub-member-profile__bio p:first-child { margin-top: 0; }
.ceohub-member-profile__bio p:last-child { margin-bottom: 0; }
.ceohub-member-profile__bio a {
    color: var(--v2-blue);
}

.ceohub-member-profile__empty {
    font-size: 12px;
    color: var(--v2-text-3);
    margin: 0;
    font-style: italic;
}
.ceohub-member-profile__empty a {
    color: var(--v2-blue);
    font-style: normal;
    text-decoration: none;
    font-weight: 500;
    margin-left: 4px;
}
.ceohub-member-profile__empty a:hover { text-decoration: underline; }

/* Profile fields list */
.ceohub-member-profile__fields {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.ceohub-member-profile__field dt {
    font-size: 10px;
    color: var(--v2-text-3);
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-bottom: 2px;
}
.ceohub-member-profile__field dd {
    margin: 0;
    font-size: 13px;
    color: var(--v2-text);
}

/* Activity preview */
.ceohub-member-profile__activity {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.ceohub-member-profile__activity-item {
    display: flex;
    gap: 11px;
}
.ceohub-member-profile__activity-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(59, 130, 246, 0.1);
    color: var(--v2-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-member-profile__activity-icon i { font-size: 15px; }
.ceohub-member-profile__activity-body { flex: 1; min-width: 0; }
.ceohub-member-profile__activity-action {
    font-size: 12px;
    color: var(--v2-text);
    line-height: 1.5;
}
.ceohub-member-profile__activity-action a {
    color: var(--v2-text);
    font-weight: 500;
    text-decoration: none;
}
.ceohub-member-profile__activity-content {
    font-size: 12px;
    color: var(--v2-text-2);
    margin-top: 4px;
    line-height: 1.5;
}
.ceohub-member-profile__activity-time {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-top: 4px;
}

/* Friends grid in sidebar */
.ceohub-member-profile__friends {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
}
.ceohub-member-profile__friend {
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    transition: var(--v2-trans);
}
.ceohub-member-profile__friend img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-member-profile__friend:hover {
    transform: scale(1.06);
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.15);
}

/* Group list in sidebar */
.ceohub-member-profile__grouplist {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ceohub-member-profile__grouplist a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border-radius: var(--v2-radius-md);
    text-decoration: none;
    color: var(--v2-text);
    font-size: 12px;
    transition: var(--v2-trans);
}
.ceohub-member-profile__grouplist a:hover {
    background: var(--v2-bg);
    color: var(--v2-text);
}
.ceohub-member-profile__grouplist img,
.ceohub-member-profile__grouplist-fallback {
    width: 32px;
    height: 32px;
    border-radius: var(--v2-radius-md);
    object-fit: cover;
    flex-shrink: 0;
    background: var(--v2-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-blue);
}
.ceohub-member-profile__grouplist-fallback i { font-size: 16px; }
.ceohub-member-profile__grouplist a span { font-weight: 500; }

/* ═══════════════════════════════════════════════════════════════════════
   BuddyPress sub-screen restyle (activity, friends, groups, messages,
   notifications, settings) — these render via BP's own templates inside
   our v2 shell. We restyle the BP markup directly.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Force the topbar WHITE on every shell page ─────────────────────────
   Matches the dashboard exactly: white topbar with dark icons sitting
   on a light-grey button background. The app-shell partial has an
   inline `.ceohub-shell-topbar { background: navy !important }` rule
   that would otherwise tint it navy — this override beats it with
   higher specificity (qualifying the class by tag and ancestor).

   Why hardcoded `#fff` rather than `var(--v2-bg)`: we want the topbar
   to read as a pure white surface against the slightly-tinted page
   bg (`#F7F8FB`), the same separation the dashboard cards use. */
body.ceohub-shell-v2 header.ceohub-v2-topbar,
body.ceohub-shell-v2 header.ceohub-shell-topbar,
body.ceohub-shell-v2 .ceohub-app-shell-v2 header.ceohub-v2-topbar,
body.ceohub-shell-v2 .ceohub-v2-topbar.ceohub-shell-topbar {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-bottom: 1px solid var(--v2-border) !important;
    color: var(--v2-text) !important;
}

/* Topbar button styling — dark icons on light-grey button background,
   matching the dashboard's iconbtn / toggle style. The partial's CSS
   set these to white-on-translucent (correct for a navy topbar but
   invisible on white). Override to dark-on-light. */
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-toggle,
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-iconbtn,
body.ceohub-shell-v2 .ceohub-v2-topbar__menu {
    background: var(--v2-surface-2) !important;
    color: var(--v2-text) !important;
}
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-toggle:hover,
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-iconbtn:hover,
body.ceohub-shell-v2 .ceohub-v2-topbar__menu:hover {
    background: var(--v2-border-2) !important;
    color: var(--v2-text) !important;
}
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-user__btn {
    background: var(--v2-surface-2) !important;
    color: var(--v2-text) !important;
}
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-user__btn:hover {
    background: var(--v2-border-2) !important;
}
body.ceohub-shell-v2 .ceohub-v2-topbar .ceohub-shell-iconbtn__count {
    color: var(--v2-navy-deep) !important;
}

/* ── Force sidebar + brand area to navy ─────────────────────────────────
   The CEO Hub logo PNG has a non-transparent backing, so wherever the
   image doesn't fully cover, the container colour shows through. Make
   the brand container the same navy as the rest of the sidebar so the
   strip across the top reads as one continuous panel. */
body.ceohub-shell-v2 .ceohub-v2-sidebar {
    background: linear-gradient(180deg, #0B1E3F 0%, #102A52 100%) !important;
}
body.ceohub-shell-v2 .ceohub-v2-sidebar__brand,
body.ceohub-shell-v2 .ceohub-v2-userwell,
body.ceohub-shell-v2 .ceohub-v2-sidebar__footer {
    background-color: transparent !important;
}

/* ── Hide BP's own page-top chrome (item-header + nav above app-shell) ── */
body.ceohub-shell-v2 #item-header,
body.ceohub-shell-v2 #cover-image-container,
body.ceohub-shell-v2 #header-cover-image,
body.ceohub-shell-v2 #item-header-cover-image,
body.ceohub-shell-v2 #item-header-avatar,
body.ceohub-shell-v2 #item-header-content,
body.ceohub-shell-v2 .users-header,
body.ceohub-shell-v2 .single-headers,
body.ceohub-shell-v2 #buddypress > #object-nav,
body.ceohub-shell-v2 .bp-wrap > #object-nav,
body.ceohub-shell-v2 .bp-wrap > nav.main-navs {
    display: none !important;
}

/* ── Hide Alliance theme widget areas that leak onto shell pages ────────
   Alliance / TRX Addons / Elementor inject sidebars and widgets around
   the main content area. On v2 shell pages, none of these belong — the
   app-shell IS the chrome. Hide them explicitly so a "Search" widget or
   stray Elementor section can't peek out at the edge if our app-shell's
   position-fixed gets broken by an ancestor containing block. */
body.ceohub-shell-v2 .sidebar_wrap,
body.ceohub-shell-v2 .sidebar_outer,
body.ceohub-shell-v2 .sidebar_inner,
body.ceohub-shell-v2 aside.sidebar,
body.ceohub-shell-v2 aside.widget-area,
body.ceohub-shell-v2 aside.widget_search,
body.ceohub-shell-v2 .widget_search,
body.ceohub-shell-v2 .widget-area,
body.ceohub-shell-v2 .top_panel_wrap,
body.ceohub-shell-v2 .top_panel,
body.ceohub-shell-v2 .menu_main_wrap,
body.ceohub-shell-v2 .menu_mobile,
body.ceohub-shell-v2 .menu_mobile_wrap,
body.ceohub-shell-v2 .footer_wrap,
body.ceohub-shell-v2 .footer_top_wrap,
body.ceohub-shell-v2 .footer_bottom_wrap,
body.ceohub-shell-v2 .breadcrumbs_wrap,
body.ceohub-shell-v2 .breadcrumbs,
body.ceohub-shell-v2 .post_meta,
body.ceohub-shell-v2 .post_thumb,
body.ceohub-shell-v2 .post_featured,
body.ceohub-shell-v2 .structured_data_snippets,
body.ceohub-shell-v2 #respond,
body.ceohub-shell-v2 .comments-area {
    display: none !important;
}

/* ── Defeat any containing-block from parent theme / Elementor ──────────
   Elementor and some parent themes apply `transform: translateZ(0)` or
   `will-change: transform` for performance — but that turns the element
   into a containing block for our position-fixed app-shell, constraining
   it to the wrapper's bounds instead of the viewport. Strip those
   properties from every wrapper between the body and the app-shell. */
body.ceohub-shell-v2 .page_content_wrap,
body.ceohub-shell-v2 .content_wrap,
body.ceohub-shell-v2 .content,
body.ceohub-shell-v2 article,
body.ceohub-shell-v2 .post_content,
body.ceohub-shell-v2 .entry-content,
body.ceohub-shell-v2 #buddypress,
body.ceohub-shell-v2 .buddypress-wrap,
body.ceohub-shell-v2 .bp-wrap,
body.ceohub-shell-v2 [class*="elementor-section"],
body.ceohub-shell-v2 [class*="elementor-column"],
body.ceohub-shell-v2 [class*="elementor-container"],
body.ceohub-shell-v2 [class*="elementor-widget"] {
    transform: none !important;
    filter: none !important;
    will-change: auto !important;
    contain: none !important;
    perspective: none !important;
    backdrop-filter: none !important;
}

/* ── App-shell at max z-index, edge-to-edge ─────────────────────────────
   With the containing-block defeats above, `position: fixed; inset: 0`
   on the app-shell should now be relative to the viewport again, so it
   covers the entire screen and nothing leaks at the edges. */
body.ceohub-shell-v2 .ceohub-app-shell-v2 {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    background: var(--v2-bg) !important;
}
body.ceohub-shell-v2.admin-bar .ceohub-app-shell-v2 {
    top: 32px !important;
    height: calc(100vh - 32px) !important;
}
@media screen and (max-width: 782px) {
    body.ceohub-shell-v2.admin-bar .ceohub-app-shell-v2 {
        top: 46px !important;
        height: calc(100vh - 46px) !important;
    }
}

/* ── Ensure main content area is opaque ─────────────────────────────────
   Even with fixed positioning, if the main column doesn't have a solid
   background colour, anything in document flow underneath can show
   through. */
body.ceohub-shell-v2 .ceohub-v2-main,
body.ceohub-shell-v2 .ceohub-v2-main__content {
    background: var(--v2-bg) !important;
}

.ceohub-bp-subscreen #buddypress {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    padding: 20px 24px;
    margin: 0;
    max-width: none;
    font-family: inherit;
}

/* BP heading */
.ceohub-bp-subscreen #buddypress h1,
.ceohub-bp-subscreen #buddypress h2,
.ceohub-bp-subscreen #buddypress h3 {
    color: var(--v2-text);
    font-weight: 500;
}
.ceohub-bp-subscreen #buddypress h2 { font-size: 16px; margin: 0 0 12px; }

/* BP navigation tabs */
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid var(--v2-border);
    padding: 0 0 0 0;
    margin: 0 0 16px;
    list-style: none;
}
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li {
    margin: 0;
}
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li a {
    padding: 10px 14px;
    color: var(--v2-text-3);
    text-decoration: none;
    font-size: 13px;
    border-bottom: 2px solid transparent;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: var(--v2-trans);
}
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li a:hover {
    color: var(--v2-text);
}
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li.selected a,
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li.current a {
    color: var(--v2-navy-deep);
    font-weight: 500;
    border-bottom-color: var(--v2-gold);
}
.ceohub-bp-subscreen #buddypress div.item-list-tabs ul li a span {
    background: var(--v2-bg);
    color: var(--v2-text-2);
    padding: 1px 7px;
    border-radius: 99px;
    font-size: 10px;
    font-weight: 500;
}

/* BP buttons */
.ceohub-bp-subscreen #buddypress a.button,
.ceohub-bp-subscreen #buddypress button.button,
.ceohub-bp-subscreen #buddypress input[type="submit"],
.ceohub-bp-subscreen #buddypress input[type="button"],
.ceohub-bp-subscreen #buddypress .generic-button a {
    background: var(--v2-navy-deep);
    color: #fff;
    border: 0;
    padding: 9px 14px;
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: var(--v2-trans);
    font-family: inherit;
    display: inline-block;
}
.ceohub-bp-subscreen #buddypress a.button:hover,
.ceohub-bp-subscreen #buddypress button.button:hover,
.ceohub-bp-subscreen #buddypress input[type="submit"]:hover {
    background: var(--v2-navy-mid);
    color: #fff;
}
.ceohub-bp-subscreen #buddypress .activity-meta a.button {
    background: transparent;
    color: var(--v2-text-2);
    border: 1px solid var(--v2-border-2);
    padding: 4px 10px;
    font-size: 11px;
}
.ceohub-bp-subscreen #buddypress .activity-meta a.button:hover {
    color: var(--v2-blue);
    border-color: var(--v2-blue);
}

/* BP form inputs */
.ceohub-bp-subscreen #buddypress input[type="text"],
.ceohub-bp-subscreen #buddypress input[type="email"],
.ceohub-bp-subscreen #buddypress input[type="search"],
.ceohub-bp-subscreen #buddypress input[type="password"],
.ceohub-bp-subscreen #buddypress textarea,
.ceohub-bp-subscreen #buddypress select {
    background: var(--v2-bg);
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    padding: 9px 12px;
    font-size: 13px;
    color: var(--v2-text);
    outline: none;
    transition: var(--v2-trans);
    font-family: inherit;
    width: 100%;
    max-width: 480px;
}
.ceohub-bp-subscreen #buddypress textarea { min-height: 80px; }
.ceohub-bp-subscreen #buddypress input:focus,
.ceohub-bp-subscreen #buddypress textarea:focus,
.ceohub-bp-subscreen #buddypress select:focus {
    border-color: var(--v2-blue);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}

/* BP activity stream */
.ceohub-bp-subscreen #buddypress ul.activity-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.ceohub-bp-subscreen #buddypress ul.activity-list > li {
    background: var(--v2-bg);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    margin-bottom: 10px;
    border: 1px solid var(--v2-border);
}
.ceohub-bp-subscreen #buddypress .activity-avatar img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
}
.ceohub-bp-subscreen #buddypress .activity-content {
    margin-left: 52px;
}
.ceohub-bp-subscreen #buddypress .activity-header {
    font-size: 12px;
    color: var(--v2-text-2);
}
.ceohub-bp-subscreen #buddypress .activity-header a {
    color: var(--v2-text);
    font-weight: 500;
    text-decoration: none;
}
.ceohub-bp-subscreen #buddypress .activity-inner {
    font-size: 13px;
    color: var(--v2-text);
    line-height: 1.55;
    margin-top: 6px;
}

/* BP message inbox */
.ceohub-bp-subscreen #buddypress table.messages-notices,
.ceohub-bp-subscreen #buddypress table.notifications {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px;
}
.ceohub-bp-subscreen #buddypress table.messages-notices th,
.ceohub-bp-subscreen #buddypress table.notifications th {
    background: var(--v2-bg);
    color: var(--v2-text-3);
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid var(--v2-border);
}
.ceohub-bp-subscreen #buddypress table.messages-notices td,
.ceohub-bp-subscreen #buddypress table.notifications td {
    padding: 12px;
    border-bottom: 1px solid var(--v2-border);
    color: var(--v2-text-2);
}
.ceohub-bp-subscreen #buddypress table.messages-notices tr:hover td,
.ceohub-bp-subscreen #buddypress table.notifications tr:hover td {
    background: var(--v2-bg);
}

/* BP pagination */
.ceohub-bp-subscreen #buddypress .pagination {
    margin-top: 14px;
    border: 0;
    background: transparent;
}
.ceohub-bp-subscreen #buddypress .pagination .page-numbers {
    padding: 7px 11px;
    border-radius: var(--v2-radius-md);
    border: 1px solid var(--v2-border);
    margin: 0 2px;
    font-size: 12px;
    background: var(--v2-surface);
}
.ceohub-bp-subscreen #buddypress .pagination .page-numbers.current {
    background: var(--v2-navy-deep);
    color: #fff;
    border-color: var(--v2-navy-deep);
}

/* BP friends / groups loop */
.ceohub-bp-subscreen #buddypress ul.item-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 12px;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li {
    background: var(--v2-bg);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    margin: 0;
    list-style: none;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li .item-avatar img {
    border-radius: 50%;
    width: 56px;
    height: 56px;
    display: block;
    margin: 0 auto 10px;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li .item {
    text-align: center;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li .item-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 4px;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li .item-title a {
    color: var(--v2-text);
    text-decoration: none;
}
.ceohub-bp-subscreen #buddypress ul.item-list > li .item-meta {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-bottom: 10px;
}

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 1180px) {
    .ceohub-member-profile__body {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 920px) {
    .ceohub-members-filters {
        flex-direction: column;
        align-items: stretch;
    }
    .ceohub-members-filters__tabs {
        overflow-x: auto;
    }
    .ceohub-member-profile__identity {
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: -55px;
    }
    .ceohub-member-profile__id-body { padding-top: 0; }
    .ceohub-member-profile__meta { justify-content: center; }
    .ceohub-member-profile__actions { padding-top: 0; justify-content: center; }
    .ceohub-member-profile__stat-val { font-size: 18px; }
    .ceohub-member-profile__fields { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
    .ceohub-members-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    .ceohub-member-card__avatar { width: 60px; height: 60px; }
    .ceohub-member-profile__cover { height: 130px; }
    .ceohub-member-profile__avatar { width: 86px; height: 86px; border-width: 3px; }
}


/* ═══════════════════════════════════════════════════════════════════════
   Community page — /activity/
   3-column layout: my-card + filters | composer + activity stream | suggested + online + groups
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-community__layout {
    display: grid;
    grid-template-columns: 240px 1fr 280px;
    gap: 18px;
    align-items: start;
}
.ceohub-community__left,
.ceohub-community__right {
    display: flex;
    flex-direction: column;
    gap: 14px;
    position: sticky;
    top: 14px;
}
.ceohub-community__center {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
}

/* ── Left: my-card ─────────────────────────────────────────────────── */
.ceohub-community__mycard {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    text-align: center;
    padding: 0 16px 16px;
    position: relative;
}
.ceohub-community__mycard-cover {
    height: 60px;
    background: linear-gradient(135deg, var(--v2-navy-deep), var(--v2-navy-light));
    margin: 0 -16px 0;
    position: relative;
    overflow: hidden;
}
.ceohub-community__mycard-glow {
    position: absolute;
    inset: -30px -30px auto auto;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.18), transparent 70%);
}
.ceohub-community__mycard-avatar {
    display: block;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    border: 4px solid var(--v2-surface);
    margin: -36px auto 8px;
    position: relative;
    z-index: 1;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
}
.ceohub-community__mycard-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__mycard-name {
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.2;
}
.ceohub-community__mycard-handle {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-top: 2px;
    margin-bottom: 14px;
}
.ceohub-community__mystats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    border-top: 1px solid var(--v2-border);
    border-bottom: 1px solid var(--v2-border);
    padding: 10px 0;
    margin-bottom: 12px;
}
.ceohub-community__mystat {
    border-right: 1px solid var(--v2-border);
}
.ceohub-community__mystat:last-child { border-right: 0; }
.ceohub-community__mystat-val {
    font-size: 15px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.1;
}
.ceohub-community__mystat-label {
    font-size: 9px;
    color: var(--v2-text-3);
    letter-spacing: 0.4px;
    text-transform: uppercase;
    margin-top: 2px;
}
.ceohub-community__mycard-cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: var(--v2-blue);
    text-decoration: none;
    font-weight: 500;
}
.ceohub-community__mycard-cta:hover { text-decoration: underline; color: var(--v2-blue); }
.ceohub-community__mycard-cta i { font-size: 13px; }

/* ── Left: filter list ─────────────────────────────────────────────── */
.ceohub-community__filters {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 12px 8px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ceohub-community__filters-head {
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-text-3);
    letter-spacing: 0.6px;
    text-transform: uppercase;
    padding: 0 10px 8px;
}
.ceohub-community__filter {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 9px 10px;
    border-radius: var(--v2-radius-md);
    text-decoration: none;
    color: var(--v2-text-2);
    font-size: 13px;
    transition: var(--v2-trans);
    position: relative;
}
.ceohub-community__filter:hover {
    background: var(--v2-bg);
    color: var(--v2-text);
}
.ceohub-community__filter.is-active {
    background: var(--v2-navy-deep);
    color: #fff;
    font-weight: 500;
}
.ceohub-community__filter.is-active:hover {
    background: var(--v2-navy-mid);
    color: #fff;
}
.ceohub-community__filter i {
    font-size: 16px;
    flex-shrink: 0;
}
.ceohub-community__filter span { flex: 1; min-width: 0; }
.ceohub-community__filter-dot {
    font-size: 8px !important;
    color: var(--v2-gold);
}

/* ── Left: quicklinks ─────────────────────────────────────────────── */
.ceohub-community__quicklinks {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 12px 8px;
}
.ceohub-community__quicklinks-head {
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-text-3);
    letter-spacing: 0.6px;
    text-transform: uppercase;
    padding: 0 10px 8px;
}
.ceohub-community__quicklink {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 8px 10px;
    border-radius: var(--v2-radius-md);
    text-decoration: none;
    color: var(--v2-text-2);
    font-size: 12px;
    transition: var(--v2-trans);
}
.ceohub-community__quicklink:hover {
    background: var(--v2-bg);
    color: var(--v2-blue);
}
.ceohub-community__quicklink i {
    font-size: 15px;
    color: var(--v2-text-light);
}
.ceohub-community__quicklink:hover i { color: var(--v2-blue); }

/* ── Center: composer ──────────────────────────────────────────────── */
.ceohub-community__composer {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    padding: 18px;
    transition: var(--v2-trans);
}
.ceohub-community__composer:focus-within {
    border-color: var(--v2-blue);
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.06);
}
.ceohub-community__composer-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}
.ceohub-community__composer-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    flex-shrink: 0;
}
.ceohub-community__composer-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__composer-greet {
    font-size: 13px;
    color: var(--v2-text-3);
    font-weight: 500;
}
.ceohub-community__composer-form {
    margin: 0;
}
.ceohub-community__composer-text-wrap {
    background: var(--v2-bg);
    border: 1px solid transparent;
    border-radius: var(--v2-radius-md);
    transition: var(--v2-trans);
    margin-bottom: 12px;
}
.ceohub-community__composer-text-wrap:focus-within {
    background: #fff;
    border-color: var(--v2-blue);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.08);
}
.ceohub-community__composer-text {
    width: 100%;
    min-height: 70px;
    border: 0;
    background: transparent;
    padding: 12px 14px;
    font-family: inherit;
    font-size: 14px;
    color: var(--v2-text);
    outline: none;
    resize: vertical;
    line-height: 1.5;
}
.ceohub-community__composer-text::placeholder { color: var(--v2-text-light); }
.ceohub-community__composer-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}
.ceohub-community__composer-tools {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}
.ceohub-community__composer-tool {
    width: 34px;
    height: 34px;
    border-radius: var(--v2-radius-md);
    background: transparent;
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-text-light);
    transition: var(--v2-trans);
}
.ceohub-community__composer-tool:hover:not(:disabled) {
    background: var(--v2-bg);
    color: var(--v2-blue);
}
.ceohub-community__composer-tool:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.ceohub-community__composer-tool i { font-size: 17px; }
.ceohub-community__composer-hint {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-left: 6px;
}
.ceohub-community__composer-submit {
    margin-left: auto;
}

/* Logged-out composer */
.ceohub-community__composer--logged-out {
    border-style: dashed;
    border-color: var(--v2-border-2);
    background: var(--v2-bg);
}
.ceohub-community__composer-locked {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}
.ceohub-community__composer-locked > i {
    font-size: 28px;
    color: var(--v2-text-light);
    flex-shrink: 0;
}
.ceohub-community__composer-locked > div { flex: 1; min-width: 200px; }
.ceohub-community__composer-locked strong {
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    display: block;
}
.ceohub-community__composer-locked p {
    margin: 4px 0 0;
    font-size: 12px;
    color: var(--v2-text-3);
}
.ceohub-community__composer-locked-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* ── Center: activity stream ───────────────────────────────────────── */
.ceohub-community__stream-meta {
    padding: 0 4px;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-community__stream-count { font-weight: 500; }
.ceohub-community__activities {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ceohub-community__activity {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    padding: 18px;
    transition: var(--v2-trans);
}
.ceohub-community__activity:hover {
    border-color: var(--v2-border-2);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
}
.ceohub-community__activity-head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}
.ceohub-community__activity-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    flex-shrink: 0;
}
.ceohub-community__activity-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__activity-id {
    flex: 1;
    min-width: 0;
}
.ceohub-community__activity-action {
    font-size: 13px;
    line-height: 1.4;
    color: var(--v2-text-2);
}
.ceohub-community__activity-action a {
    color: var(--v2-text);
    font-weight: 500;
    text-decoration: none;
}
.ceohub-community__activity-action a:hover { color: var(--v2-blue); }
.ceohub-community__activity-time {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--v2-text-3);
    margin-top: 3px;
}
.ceohub-community__activity-time i { font-size: 12px; }
.ceohub-community__activity-delete {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-text-light);
    text-decoration: none;
    transition: var(--v2-trans);
    flex-shrink: 0;
}
.ceohub-community__activity-delete:hover {
    background: var(--v2-bg);
    color: var(--v2-red);
}
.ceohub-community__activity-delete i { font-size: 16px; }
.ceohub-community__activity-content {
    font-size: 14px;
    color: var(--v2-text);
    line-height: 1.65;
    margin-bottom: 12px;
    word-wrap: break-word;
}
.ceohub-community__activity-content a {
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-community__activity-content a:hover { text-decoration: underline; }
.ceohub-community__activity-content p:first-child { margin-top: 0; }
.ceohub-community__activity-content p:last-child { margin-bottom: 0; }
.ceohub-community__activity-content img {
    max-width: 100%;
    height: auto;
    border-radius: var(--v2-radius-md);
    margin: 8px 0;
}
.ceohub-community__activity-content blockquote {
    border-left: 3px solid var(--v2-border-2);
    margin: 10px 0;
    padding: 4px 0 4px 14px;
    color: var(--v2-text-2);
    font-style: italic;
}

.ceohub-community__activity-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    border-top: 1px solid var(--v2-border);
    padding-top: 10px;
}
.ceohub-community__activity-act {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: var(--v2-radius-md);
    color: var(--v2-text-3);
    font-size: 12px;
    text-decoration: none;
    cursor: pointer;
    transition: var(--v2-trans);
    background: transparent;
    border: 0;
    font-family: inherit;
}
.ceohub-community__activity-act:hover {
    background: var(--v2-bg);
    color: var(--v2-text);
}
.ceohub-community__activity-act.is-active {
    color: var(--v2-red);
}
.ceohub-community__activity-act i { font-size: 16px; }

/* Comments section */
.ceohub-community__activity-comments {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--v2-border);
    display: none;
}
.ceohub-community__activity-comments.is-open {
    display: block;
}
.ceohub-community__comments {
    list-style: none;
    padding: 0;
    margin: 0 0 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.ceohub-community__comments li.comment-item {
    display: flex;
    gap: 10px;
}
.ceohub-community__comments .acomment-avatar img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}
.ceohub-community__comments .acomment-meta {
    background: var(--v2-bg);
    border-radius: var(--v2-radius-md);
    padding: 8px 12px;
    font-size: 12px;
    flex: 1;
    min-width: 0;
}
.ceohub-community__comments .acomment-meta strong,
.ceohub-community__comments .acomment-meta a {
    font-weight: 500;
    color: var(--v2-text);
    text-decoration: none;
    margin-right: 5px;
}
.ceohub-community__comments .acomment-content {
    margin-top: 3px;
    color: var(--v2-text);
    line-height: 1.5;
}

/* Comment form */
.ceohub-community__comment-form {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}
.ceohub-community__comment-form-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    flex-shrink: 0;
}
.ceohub-community__comment-form-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__comment-form-body {
    flex: 1;
    min-width: 0;
}
.ceohub-community__comment-input {
    width: 100%;
    background: var(--v2-bg);
    border: 1px solid transparent;
    border-radius: var(--v2-radius-md);
    padding: 9px 12px;
    font-family: inherit;
    font-size: 13px;
    min-height: 38px;
    color: var(--v2-text);
    outline: none;
    resize: vertical;
    transition: var(--v2-trans);
    line-height: 1.5;
}
.ceohub-community__comment-input:focus {
    background: #fff;
    border-color: var(--v2-blue);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.08);
}
.ceohub-community__comment-form-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 6px;
}

/* Load more button */
.ceohub-community__loadmore-wrap {
    text-align: center;
    padding: 14px 0;
}
.ceohub-community__loadmore {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 18px;
    background: var(--v2-surface);
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    color: var(--v2-text);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-community__loadmore:hover {
    background: var(--v2-navy-deep);
    color: #fff;
    border-color: var(--v2-navy-deep);
}
.ceohub-community__loadmore i { font-size: 15px; }

/* Empty state */
.ceohub-community__empty {
    background: var(--v2-surface);
    border: 1px dashed var(--v2-border-2);
    border-radius: var(--v2-radius-xl);
    padding: 48px 24px;
    text-align: center;
}
.ceohub-community__empty-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: rgba(59, 130, 246, 0.08);
    color: var(--v2-blue);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}
.ceohub-community__empty-icon i { font-size: 28px; }
.ceohub-community__empty h3 {
    margin: 0 0 6px;
    font-size: 16px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-community__empty p {
    margin: 0 auto 14px;
    max-width: 380px;
    font-size: 13px;
    color: var(--v2-text-3);
    line-height: 1.55;
}

/* ── Right rail panels ─────────────────────────────────────────────── */
.ceohub-community__panel {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px 16px;
}
.ceohub-community__panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.ceohub-community__panel-title {
    margin: 0;
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.ceohub-community__panel-title i { font-size: 16px; color: var(--v2-text-light); }
.ceohub-community__panel-count {
    background: var(--v2-bg);
    color: var(--v2-text-2);
    font-size: 10px;
    font-weight: 500;
    padding: 2px 7px;
    border-radius: 99px;
    margin-left: 4px;
}
.ceohub-community__panel-link {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-community__panel-link:hover { text-decoration: underline; }

.ceohub-community__live-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--v2-green);
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.2);
    flex-shrink: 0;
}

/* Suggested members */
.ceohub-community__suggested {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ceohub-community__suggested-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px;
    border-radius: var(--v2-radius-md);
    transition: var(--v2-trans);
}
.ceohub-community__suggested-item:hover { background: var(--v2-bg); }
.ceohub-community__suggested-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--v2-bg);
    flex-shrink: 0;
    display: block;
}
.ceohub-community__suggested-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__suggested-body {
    flex: 1;
    min-width: 0;
}
.ceohub-community__suggested-name {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-text);
    text-decoration: none;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ceohub-community__suggested-name:hover { color: var(--v2-blue); }
.ceohub-community__suggested-title {
    font-size: 10px;
    color: var(--v2-text-3);
    margin-top: 1px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ceohub-community__suggested-btn {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--v2-bg);
    border: 1px solid var(--v2-border-2);
    color: var(--v2-text-2);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: var(--v2-trans);
    flex-shrink: 0;
}
.ceohub-community__suggested-btn:hover {
    background: var(--v2-navy-deep);
    color: #fff;
    border-color: var(--v2-navy-deep);
}
.ceohub-community__suggested-btn i { font-size: 14px; }

/* Who's online */
.ceohub-community__online {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
}
.ceohub-community__online-avatar {
    position: relative;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: visible;
    transition: var(--v2-trans);
}
.ceohub-community__online-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 50%;
}
.ceohub-community__online-avatar:hover img {
    transform: scale(1.08);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
}
.ceohub-community__online-dot {
    position: absolute;
    bottom: 1px;
    right: 1px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--v2-green);
    border: 2px solid var(--v2-surface);
}

/* Active groups */
.ceohub-community__groups {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ceohub-community__group {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px;
    border-radius: var(--v2-radius-md);
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-community__group:hover {
    background: var(--v2-bg);
    color: inherit;
}
.ceohub-community__group-avatar {
    width: 38px;
    height: 38px;
    border-radius: var(--v2-radius-md);
    overflow: hidden;
    background: var(--v2-bg);
    border: 1px solid var(--v2-border);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-blue);
}
.ceohub-community__group-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-community__group-avatar i { font-size: 18px; }
.ceohub-community__group-body { flex: 1; min-width: 0; }
.ceohub-community__group-name {
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.3;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ceohub-community__group-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.ceohub-community__group-pill {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 10px;
    font-weight: 500;
    padding: 2px 6px;
    border-radius: 99px;
}
.ceohub-community__group-pill i { font-size: 10px; }
.ceohub-community__group-pill--public {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-community__group-pill--private,
.ceohub-community__group-pill--hidden {
    background: rgba(124, 58, 237, 0.1);
    color: var(--v2-purple);
}
.ceohub-community__group-members {
    font-size: 10px;
    color: var(--v2-text-3);
}

/* Community guidelines card */
.ceohub-community__guidelines {
    background: linear-gradient(135deg, rgba(247, 201, 72, 0.08), rgba(247, 201, 72, 0.02));
    border: 1px solid rgba(247, 201, 72, 0.25);
    border-radius: var(--v2-radius-lg);
    padding: 14px 16px;
    text-align: center;
}
.ceohub-community__guidelines-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(247, 201, 72, 0.2);
    color: var(--v2-gold-deep);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
}
.ceohub-community__guidelines-icon i { font-size: 18px; }
.ceohub-community__guidelines-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 3px;
}
.ceohub-community__guidelines-text {
    font-size: 11px;
    color: var(--v2-text-3);
    line-height: 1.5;
    margin-bottom: 8px;
}
.ceohub-community__guidelines-link {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-gold-deep);
    text-decoration: none;
}
.ceohub-community__guidelines-link:hover { text-decoration: underline; }

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 1180px) {
    .ceohub-community__layout {
        grid-template-columns: 220px 1fr;
    }
    .ceohub-community__right {
        position: static;
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        order: 2;
    }
    .ceohub-community__center { order: 1; grid-column: 2; }
    .ceohub-community__left { order: 0; }
    .ceohub-community__guidelines { display: none; }
}
@media (max-width: 920px) {
    .ceohub-community__layout {
        grid-template-columns: 1fr;
    }
    .ceohub-community__left,
    .ceohub-community__right {
        position: static;
        grid-column: 1;
    }
    .ceohub-community__right {
        grid-template-columns: 1fr;
    }
    .ceohub-community__left {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .ceohub-community__mycard { grid-column: 1 / -1; }
}
@media (max-width: 540px) {
    .ceohub-community__left {
        grid-template-columns: 1fr;
    }
    .ceohub-community__composer-footer {
        flex-direction: column;
        align-items: stretch;
    }
    .ceohub-community__composer-submit { width: 100%; justify-content: center; }
    .ceohub-community__composer-hint { display: none; }
    .ceohub-community__activity-actions { flex-wrap: wrap; }
    .ceohub-community__online { grid-template-columns: repeat(6, 1fr); }
}


/* ═══════════════════════════════════════════════════════════════════════
   Groups directory + single group
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-groups-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}
.ceohub-group-card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: var(--v2-trans);
}
.ceohub-group-card:hover {
    border-color: var(--v2-border-2);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
    transform: translateY(-2px);
}
.ceohub-group-card.is-member {
    border-color: rgba(247, 201, 72, 0.4);
    box-shadow: 0 0 0 1px rgba(247, 201, 72, 0.2);
}
.ceohub-group-card__cover {
    display: block;
    height: 120px;
    background: linear-gradient(135deg, var(--v2-navy-deep), var(--v2-navy-light));
    position: relative;
    overflow: hidden;
}
.ceohub-group-card__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-group-card__cover-fallback {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(247, 201, 72, 0.7);
}
.ceohub-group-card__cover-fallback i { font-size: 36px; }
.ceohub-group-card__body {
    padding: 14px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}
.ceohub-group-card__meta {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.ceohub-group-card__badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 10px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 99px;
    background: rgba(247, 201, 72, 0.15);
    color: var(--v2-gold-deep);
}
.ceohub-group-card__badge i { font-size: 11px; }
.ceohub-group-card__title {
    margin: 0;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
}
.ceohub-group-card__title a {
    color: var(--v2-text);
    text-decoration: none;
}
.ceohub-group-card__title a:hover { color: var(--v2-blue); }
.ceohub-group-card__desc {
    margin: 0;
    font-size: 12px;
    color: var(--v2-text-3);
    line-height: 1.55;
}
.ceohub-group-card__stats {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    flex-wrap: wrap;
}
.ceohub-group-card__stat {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-group-card__stat i { font-size: 13px; color: var(--v2-text-light); }
.ceohub-group-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 8px 14px;
    background: var(--v2-bg);
    color: var(--v2-text);
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    text-align: center;
    justify-content: center;
    transition: var(--v2-trans);
    margin-top: 6px;
}
.ceohub-group-card:hover .ceohub-group-card__cta {
    background: var(--v2-navy-deep);
    color: #fff;
}
.ceohub-group-card__cta i { font-size: 13px; }

/* Single group customizations */
.ceohub-group-single__avatar {
    background: var(--v2-navy-deep);
    color: var(--v2-gold);
}
.ceohub-group-single__avatar-fallback {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.ceohub-group-single__avatar-fallback i { font-size: 48px; color: var(--v2-gold); }
.ceohub-group-single__details dt { letter-spacing: 0.4px; }
.ceohub-group-single__join-wrap {
    display: inline-block;
}
/* Style BP's join button to match v2 */
.ceohub-group-single__join-wrap .group-button a,
.ceohub-group-single__join-wrap .generic-button a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 9px 14px !important;
    border-radius: var(--v2-radius-md) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    border: 0 !important;
    cursor: pointer;
    text-decoration: none !important;
    background: var(--v2-navy-deep) !important;
    color: #fff !important;
    font-family: inherit !important;
}
.ceohub-group-single__join-wrap .group-button a:hover {
    background: var(--v2-navy-mid) !important;
}
.ceohub-group-single__join-wrap .leave-group a {
    background: transparent !important;
    border: 1px solid var(--v2-border-2) !important;
    color: var(--v2-text) !important;
}

/* ═══════════════════════════════════════════════════════════════════════
   Events list + single event
   ═══════════════════════════════════════════════════════════════════════ */

/* Featured event hero */
.ceohub-events-feature {
    position: relative;
    display: block;
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    min-height: 280px;
    margin-bottom: 24px;
    text-decoration: none;
    color: #fff;
    background: linear-gradient(135deg, var(--v2-navy-deep), var(--v2-navy-light));
}
.ceohub-events-feature__bg {
    position: absolute;
    inset: 0;
    background-image: var(--ev-thumb);
    background-size: cover;
    background-position: center;
}
.ceohub-events-feature__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(11, 30, 63, 0.95) 0%, rgba(11, 30, 63, 0.7) 50%, rgba(11, 30, 63, 0.4) 100%);
}
.ceohub-events-feature__content {
    position: relative;
    z-index: 1;
    padding: 36px 40px;
    max-width: 640px;
}
.ceohub-events-feature__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(247, 201, 72, 0.15);
    border: 1px solid rgba(247, 201, 72, 0.3);
    padding: 5px 12px;
    border-radius: 99px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.6px;
    color: var(--v2-gold);
    margin-bottom: 14px;
}
.ceohub-events-feature__eyebrow i { font-size: 13px; }
.ceohub-events-feature__title {
    margin: 0 0 14px;
    font-size: 26px;
    font-weight: 500;
    color: #fff;
    line-height: 1.25;
    letter-spacing: -0.3px;
}
.ceohub-events-feature__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 14px;
}
.ceohub-events-feature__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.85);
}
.ceohub-events-feature__meta-item i { font-size: 15px; color: var(--v2-gold); }
.ceohub-events-feature__excerpt {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.6;
    margin: 0 0 18px;
    max-width: 480px;
}
.ceohub-events-feature__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    padding: 10px 18px;
    border-radius: var(--v2-radius-md);
    font-size: 13px;
    font-weight: 500;
    transition: var(--v2-trans);
}
.ceohub-events-feature:hover .ceohub-events-feature__cta {
    background: var(--v2-gold-deep);
}

.ceohub-events-list__section-title {
    margin: 0 0 12px;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    letter-spacing: -0.2px;
}

.ceohub-events-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
}
.ceohub-event-card {
    display: flex;
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-event-card:hover {
    color: inherit;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
    border-color: var(--v2-border-2);
}
.ceohub-event-card__date {
    flex-shrink: 0;
    width: 70px;
    background: linear-gradient(135deg, var(--v2-navy-deep), var(--v2-navy-light));
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 14px 6px;
}
.ceohub-event-card__date-mo {
    font-size: 11px;
    font-weight: 500;
    color: var(--v2-gold);
    letter-spacing: 0.8px;
    margin-bottom: 4px;
}
.ceohub-event-card__date-day {
    font-size: 26px;
    font-weight: 500;
    line-height: 1;
}
.ceohub-event-card__body {
    flex: 1;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}
.ceohub-event-card__title {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.3;
}
.ceohub-event-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-event-card__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.ceohub-event-card__meta-item i { font-size: 12px; color: var(--v2-text-light); }
.ceohub-event-card__excerpt {
    margin: 0;
    font-size: 12px;
    color: var(--v2-text-3);
    line-height: 1.5;
}
.ceohub-event-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 6px;
}
.ceohub-event-card__cost {
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-text);
    background: var(--v2-bg);
    padding: 3px 10px;
    border-radius: 99px;
}
.ceohub-event-card__cost--free {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-event-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-blue);
}
.ceohub-event-card__cta i { font-size: 13px; }

/* Single event */
.ceohub-event-single {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    margin-bottom: 18px;
}
.ceohub-event-single__hero {
    position: relative;
    min-height: 240px;
    background: linear-gradient(135deg, var(--v2-navy-deep), var(--v2-navy-light));
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 30px 36px 36px;
}
.ceohub-event-single__hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(11, 30, 63, 0.92) 0%, rgba(11, 30, 63, 0.65) 100%);
}
.ceohub-event-single__hero-content {
    position: relative;
    z-index: 1;
}
.ceohub-event-single__back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    margin-bottom: 18px;
    transition: var(--v2-trans);
}
.ceohub-event-single__back:hover { color: var(--v2-gold); }
.ceohub-event-single__back i { font-size: 14px; }
.ceohub-event-single__title {
    margin: 0 0 14px;
    font-size: 28px;
    font-weight: 500;
    color: #fff;
    line-height: 1.2;
    letter-spacing: -0.4px;
}
.ceohub-event-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.ceohub-event-single__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.85);
}
.ceohub-event-single__meta-item i { font-size: 15px; color: var(--v2-gold); }

.ceohub-event-single__body {
    display: grid;
    grid-template-columns: 1fr 280px;
    gap: 24px;
    padding: 24px 36px 36px;
}
.ceohub-event-single__section-title {
    margin: 0 0 12px;
    font-size: 16px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-event-single__content {
    font-size: 14px;
    line-height: 1.7;
    color: var(--v2-text-2);
}
.ceohub-event-single__content p:first-child { margin-top: 0; }
.ceohub-event-single__content h2,
.ceohub-event-single__content h3 {
    color: var(--v2-text);
    font-weight: 500;
    margin: 18px 0 8px;
}
.ceohub-event-single__content ul { padding-left: 22px; line-height: 1.7; }

.ceohub-event-single__side {
    align-self: flex-start;
}
.ceohub-event-single__rsvp {
    background: linear-gradient(135deg, rgba(247, 201, 72, 0.08), rgba(247, 201, 72, 0.02));
    border: 1px solid rgba(247, 201, 72, 0.25);
    border-radius: var(--v2-radius-lg);
    padding: 18px;
    text-align: center;
}
.ceohub-event-single__rsvp-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    margin-bottom: 12px;
}
.ceohub-event-single__rsvp-btn {
    width: 100%;
    justify-content: center;
    margin-bottom: 10px;
}
.ceohub-event-single__rsvp-secondary {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--v2-text-3);
    text-decoration: none;
}
.ceohub-event-single__rsvp-secondary:hover { color: var(--v2-blue); }
.ceohub-event-single__rsvp-secondary i { font-size: 13px; }

/* ═══════════════════════════════════════════════════════════════════════
   Jobs list + single job
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-jobs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 12px;
}
.ceohub-job-card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
    position: relative;
}
.ceohub-job-card:hover {
    color: inherit;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
    border-color: var(--v2-border-2);
}
.ceohub-job-card.is-featured {
    background: linear-gradient(135deg, rgba(247, 201, 72, 0.06), rgba(247, 201, 72, 0.01));
    border-color: rgba(247, 201, 72, 0.35);
}
.ceohub-job-card__featured-pill {
    position: absolute;
    top: 14px;
    right: 14px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    padding: 3px 9px;
    border-radius: 99px;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.6px;
}
.ceohub-job-card__featured-pill i { font-size: 10px; }
.ceohub-job-card__head {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}
.ceohub-job-card__logo {
    width: 52px;
    height: 52px;
    border-radius: var(--v2-radius-md);
    background: var(--v2-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-text-light);
    flex-shrink: 0;
    overflow: hidden;
}
.ceohub-job-card__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-job-card__logo i { font-size: 24px; }
.ceohub-job-card__id { flex: 1; min-width: 0; padding-right: 60px; }
.ceohub-job-card.is-featured .ceohub-job-card__id { padding-right: 90px; }
.ceohub-job-card__title {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.3;
}
.ceohub-job-card__company {
    font-size: 12px;
    color: var(--v2-text-2);
    margin-top: 3px;
}
.ceohub-job-card__excerpt {
    margin: 0;
    font-size: 12px;
    color: var(--v2-text-3);
    line-height: 1.55;
}
.ceohub-job-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.ceohub-job-card__tag {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    background: var(--v2-bg);
    color: var(--v2-text-2);
    font-size: 10px;
    font-weight: 500;
    padding: 3px 8px;
    border-radius: 99px;
}
.ceohub-job-card__tag i { font-size: 11px; color: var(--v2-text-light); }
.ceohub-job-card__tag--remote {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
}
.ceohub-job-card__tag--remote i { color: var(--v2-green); }
.ceohub-job-card__tag--type {
    background: rgba(59, 130, 246, 0.1);
    color: var(--v2-blue);
}
.ceohub-job-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 6px;
}
.ceohub-job-card__posted {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-job-card__posted i { font-size: 12px; color: var(--v2-text-light); }
.ceohub-job-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-blue);
}
.ceohub-job-card__cta i { font-size: 13px; }

/* Single job */
.ceohub-job-single {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-xl);
    overflow: hidden;
    margin-bottom: 18px;
}
.ceohub-job-single__hero {
    padding: 24px 30px 28px;
    background: linear-gradient(135deg, var(--v2-bg) 0%, var(--v2-surface) 100%);
    border-bottom: 1px solid var(--v2-border);
}
.ceohub-job-single__hero .ceohub-event-single__back {
    color: var(--v2-text-3);
}
.ceohub-job-single__hero .ceohub-event-single__back:hover { color: var(--v2-blue); }
.ceohub-job-single__head {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    flex-wrap: wrap;
}
.ceohub-job-single__logo {
    width: 72px;
    height: 72px;
    border-radius: var(--v2-radius-md);
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--v2-text-light);
    flex-shrink: 0;
    overflow: hidden;
}
.ceohub-job-single__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ceohub-job-single__logo i { font-size: 32px; }
.ceohub-job-single__id { flex: 1; min-width: 240px; }
.ceohub-job-single__title {
    margin: 6px 0 4px;
    font-size: 24px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.2;
    letter-spacing: -0.3px;
}
.ceohub-job-single__company {
    font-size: 14px;
    color: var(--v2-text-2);
    margin-bottom: 10px;
}
.ceohub-job-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}
.ceohub-job-single__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--v2-text-3);
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    padding: 5px 10px;
    border-radius: 99px;
}
.ceohub-job-single__meta-item i { font-size: 13px; color: var(--v2-text-light); }
.ceohub-job-single__meta-item--remote {
    background: rgba(16, 185, 129, 0.1);
    color: var(--v2-green);
    border-color: rgba(16, 185, 129, 0.25);
}
.ceohub-job-single__meta-item--remote i { color: var(--v2-green); }
.ceohub-job-single__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
.ceohub-job-single__body {
    padding: 24px 30px 30px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--v2-text-2);
}
.ceohub-job-single__body h2,
.ceohub-job-single__body h3 {
    color: var(--v2-text);
    font-weight: 500;
    margin: 18px 0 8px;
}
.ceohub-job-single__body ul { padding-left: 22px; line-height: 1.7; }

/* ── Responsive collapse ───────────────────────────────────────────── */
@media (max-width: 920px) {
    .ceohub-event-single__body {
        grid-template-columns: 1fr;
    }
    .ceohub-event-single__hero,
    .ceohub-job-single__hero {
        padding: 22px 22px 24px;
    }
    .ceohub-event-single__title {
        font-size: 22px;
    }
    .ceohub-job-single__head {
        flex-direction: column;
    }
    .ceohub-job-single__actions { width: 100%; }
    .ceohub-job-single__actions .ceohub-v2-btn { flex: 1; justify-content: center; }
    .ceohub-events-feature__content { padding: 24px; }
    .ceohub-events-feature__title { font-size: 22px; }
}
@media (max-width: 540px) {
    .ceohub-events-grid,
    .ceohub-groups-grid,
    .ceohub-jobs-grid {
        grid-template-columns: 1fr;
    }
    .ceohub-event-card__date {
        width: 60px;
    }
    .ceohub-event-card__date-day {
        font-size: 22px;
    }
}


/* ═══════════════════════════════════════════════════════════════════════
   Auth pages (/register/, /login/)
   Self-contained split-screen design — no sidebar/topbar shell.
   ═══════════════════════════════════════════════════════════════════════ */

body.ceohub-auth-body {
    overflow: auto !important;
    background: var(--v2-bg);
}
body.ceohub-auth-body > *:not(.ceohub-auth):not(#wpadminbar):not(script):not(style) {
    display: none !important;
}

.ceohub-auth {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: var(--v2-bg);
}

/* Brand panel (left) */
.ceohub-auth__brand {
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    color: #fff;
    padding: 48px 56px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.ceohub-auth__brand-glow {
    position: absolute;
    top: -120px;
    right: -120px;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.16) 0%, transparent 65%);
    pointer-events: none;
}
.ceohub-auth__brand-arc {
    position: absolute;
    bottom: -150px;
    left: -150px;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    border: 1px solid rgba(247, 201, 72, 0.12);
    pointer-events: none;
}
.ceohub-auth__brand-arc::after {
    content: '';
    position: absolute;
    inset: 60px;
    border: 1px solid rgba(247, 201, 72, 0.08);
    border-radius: 50%;
}

.ceohub-auth__logo {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: -0.3px;
    margin-bottom: 48px;
    position: relative;
    z-index: 1;
}
.ceohub-auth__logo:hover { color: #fff; }
.ceohub-auth__logo > div {
    width: 44px;
    height: 44px;
    font-size: 22px;
}

.ceohub-auth__brand-body {
    position: relative;
    z-index: 1;
    max-width: 460px;
    margin: auto 0;
}
.ceohub-auth__brand-title {
    margin: 0 0 14px;
    font-size: 36px;
    font-weight: 500;
    color: #fff;
    line-height: 1.15;
    letter-spacing: -0.5px;
}
.ceohub-auth__brand-sub {
    margin: 0 0 32px;
    font-size: 15px;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.6;
}
.ceohub-auth__brand-list {
    list-style: none;
    padding: 0;
    margin: 0 0 36px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ceohub-auth__brand-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
}
.ceohub-auth__brand-list i {
    font-size: 18px;
    color: var(--v2-gold);
    flex-shrink: 0;
}

.ceohub-auth__login-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 0 0 36px;
}
.ceohub-auth__login-stat {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--v2-radius-lg);
    padding: 16px;
    text-align: center;
}
.ceohub-auth__login-stat-val {
    font-size: 26px;
    font-weight: 500;
    color: var(--v2-gold);
    line-height: 1;
    margin-bottom: 4px;
}
.ceohub-auth__login-stat-label {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    letter-spacing: 0.4px;
}

.ceohub-auth__testimonial {
    background: rgba(255, 255, 255, 0.05);
    border-left: 3px solid var(--v2-gold);
    padding: 18px 22px;
    border-radius: 0 var(--v2-radius-lg) var(--v2-radius-lg) 0;
}
.ceohub-auth__testimonial-quote {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
    margin-bottom: 14px;
    font-style: italic;
}
.ceohub-auth__testimonial-author {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.7);
}
.ceohub-auth__testimonial-author strong {
    display: block;
    color: #fff;
    font-weight: 500;
    margin-bottom: 1px;
}
.ceohub-auth__testimonial-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--v2-gold), var(--v2-gold-deep));
    flex-shrink: 0;
}

/* Form panel (right) */
.ceohub-auth__main {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 32px;
    overflow-y: auto;
}
.ceohub-auth__form-wrap {
    width: 100%;
    max-width: 420px;
}
.ceohub-auth__back {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--v2-text-3);
    text-decoration: none;
    margin-bottom: 28px;
    transition: var(--v2-trans);
}
.ceohub-auth__back:hover { color: var(--v2-blue); }
.ceohub-auth__back i { font-size: 14px; }

.ceohub-auth__head {
    margin-bottom: 28px;
}
.ceohub-auth__title {
    margin: 0 0 6px;
    font-size: 26px;
    font-weight: 500;
    color: var(--v2-text);
    letter-spacing: -0.4px;
}
.ceohub-auth__sub {
    margin: 0;
    font-size: 13px;
    color: var(--v2-text-3);
}
.ceohub-auth__sub a {
    color: var(--v2-blue);
    text-decoration: none;
    font-weight: 500;
}
.ceohub-auth__sub a:hover { text-decoration: underline; }

.ceohub-auth__alert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--v2-radius-md);
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 20px;
}
.ceohub-auth__alert i { font-size: 18px; flex-shrink: 0; }
.ceohub-auth__alert--error {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
    color: #B91C1C;
}
.ceohub-auth__alert--success {
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.2);
    color: #047857;
}

.ceohub-auth__form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.ceohub-auth__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.ceohub-auth__field-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.ceohub-auth__field label {
    font-size: 12px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-auth__forgot {
    font-size: 11px;
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-auth__forgot:hover { text-decoration: underline; }

.ceohub-auth__input-wrap {
    position: relative;
}
.ceohub-auth__input-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: var(--v2-text-light);
    pointer-events: none;
}
.ceohub-auth__form input[type="text"],
.ceohub-auth__form input[type="email"],
.ceohub-auth__form input[type="password"] {
    width: 100%;
    padding: 12px 14px 12px 42px;
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    font-size: 14px;
    background: var(--v2-bg);
    color: var(--v2-text);
    outline: none;
    transition: var(--v2-trans);
    font-family: inherit;
}
.ceohub-auth__form input:focus {
    border-color: var(--v2-blue);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12);
}
.ceohub-auth__toggle-pw {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: 0;
    color: var(--v2-text-light);
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
    display: flex;
    align-items: center;
}
.ceohub-auth__toggle-pw:hover { color: var(--v2-text); background: var(--v2-bg); }
.ceohub-auth__toggle-pw i { font-size: 16px; }
.ceohub-auth__hint {
    font-size: 11px;
    color: var(--v2-text-3);
    margin-top: 2px;
}

.ceohub-auth__checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
    font-size: 12px;
    color: var(--v2-text-2);
    line-height: 1.5;
    margin-top: 4px;
}
.ceohub-auth__checkbox input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 1px 0 0;
    accent-color: var(--v2-navy-deep);
    cursor: pointer;
    flex-shrink: 0;
}
.ceohub-auth__checkbox a {
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-auth__checkbox a:hover { text-decoration: underline; }

.ceohub-auth__submit {
    width: 100%;
    background: var(--v2-navy-deep);
    color: #fff;
    border: 0;
    padding: 13px;
    border-radius: var(--v2-radius-md);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: var(--v2-trans);
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 4px;
}
.ceohub-auth__submit:hover {
    background: var(--v2-navy-mid);
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(11, 30, 63, 0.18);
}
.ceohub-auth__submit i { font-size: 16px; }

.ceohub-auth__divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 8px 0;
}
.ceohub-auth__divider::before,
.ceohub-auth__divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--v2-border-2);
}
.ceohub-auth__divider span {
    font-size: 11px;
    color: var(--v2-text-3);
    letter-spacing: 0.4px;
    text-transform: lowercase;
}

.ceohub-auth__alt-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px;
    border: 1px solid var(--v2-border-2);
    border-radius: var(--v2-radius-md);
    color: var(--v2-text);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-auth__alt-btn:hover {
    background: var(--v2-bg);
    color: var(--v2-text);
    border-color: var(--v2-text-3);
}

.ceohub-auth__footer {
    margin-top: 28px;
    text-align: center;
}
.ceohub-auth__footer p {
    margin: 0;
    font-size: 11px;
    color: var(--v2-text-3);
}
.ceohub-auth__footer a {
    color: var(--v2-blue);
    text-decoration: none;
}
.ceohub-auth__footer a:hover { text-decoration: underline; }

/* ═══════════════════════════════════════════════════════════════════════
   Resources page
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-resources__section {
    margin-top: 18px;
}

.ceohub-resources__cats {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
}
.ceohub-resources__cat {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 18px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-resources__cat:hover {
    color: inherit;
    transform: translateY(-2px);
    border-color: var(--v2-border-2);
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}
.ceohub-resources__cat-icon {
    width: 44px;
    height: 44px;
    border-radius: var(--v2-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-resources__cat-icon i { font-size: 22px; }
.ceohub-resources__cat[data-color="blue"]   .ceohub-resources__cat-icon { background: rgba(59,130,246,0.10);  color: var(--v2-blue); }
.ceohub-resources__cat[data-color="gold"]   .ceohub-resources__cat-icon { background: rgba(247,201,72,0.15);  color: var(--v2-gold-deep); }
.ceohub-resources__cat[data-color="green"]  .ceohub-resources__cat-icon { background: rgba(16,185,129,0.10);  color: var(--v2-green); }
.ceohub-resources__cat[data-color="purple"] .ceohub-resources__cat-icon { background: rgba(124,58,237,0.10);  color: var(--v2-purple); }
.ceohub-resources__cat[data-color="amber"]  .ceohub-resources__cat-icon { background: rgba(245,158,11,0.10);  color: var(--v2-amber); }
.ceohub-resources__cat[data-color="red"]    .ceohub-resources__cat-icon { background: rgba(239,68,68,0.10);   color: var(--v2-red); }

.ceohub-resources__cat-body { flex: 1; min-width: 0; }
.ceohub-resources__cat-title {
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 500;
    color: var(--v2-text);
}
.ceohub-resources__cat-desc {
    margin: 0 0 6px;
    font-size: 12px;
    color: var(--v2-text-3);
    line-height: 1.5;
}
.ceohub-resources__cat-count {
    display: inline-block;
    background: var(--v2-bg);
    color: var(--v2-text-2);
    font-size: 10px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 99px;
}
.ceohub-resources__cat-arrow {
    font-size: 16px;
    color: var(--v2-text-light);
    align-self: center;
    transition: var(--v2-trans);
}
.ceohub-resources__cat:hover .ceohub-resources__cat-arrow {
    color: var(--v2-blue);
    transform: translateX(2px);
}

/* Featured / recent list */
.ceohub-resources__featured {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.ceohub-resources__item {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-lg);
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
    color: inherit;
    transition: var(--v2-trans);
}
.ceohub-resources__item:hover {
    color: inherit;
    border-color: var(--v2-blue);
    background: rgba(59, 130, 246, 0.02);
}
.ceohub-resources__item-icon {
    width: 38px;
    height: 38px;
    border-radius: var(--v2-radius-md);
    background: var(--v2-bg);
    color: var(--v2-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.ceohub-resources__item-icon i { font-size: 18px; }
.ceohub-resources__item-body { flex: 1; min-width: 0; }
.ceohub-resources__item-type {
    display: inline-block;
    font-size: 10px;
    font-weight: 500;
    color: var(--v2-blue);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}
.ceohub-resources__item-title {
    margin: 0 0 4px;
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text);
    line-height: 1.3;
}
.ceohub-resources__item-excerpt {
    margin: 0 0 4px;
    font-size: 12px;
    color: var(--v2-text-3);
    line-height: 1.5;
}
.ceohub-resources__item-meta {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    color: var(--v2-text-3);
}
.ceohub-resources__item-meta i { font-size: 11px; }
.ceohub-resources__item-arrow {
    font-size: 16px;
    color: var(--v2-text-light);
    flex-shrink: 0;
    transition: var(--v2-trans);
}
.ceohub-resources__item:hover .ceohub-resources__item-arrow {
    color: var(--v2-blue);
    transform: translateX(2px);
}

/* ═══════════════════════════════════════════════════════════════════════
   BuddyPress messages — supplementary polish on top of the BP restyle
   we shipped in the Members chat.
   ═══════════════════════════════════════════════════════════════════════ */

.ceohub-bp-subscreen #message-threads,
.ceohub-bp-subscreen table.messages-notices {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}
.ceohub-bp-subscreen #message-threads tr {
    transition: var(--v2-trans);
}
.ceohub-bp-subscreen #message-threads tr.unread td {
    font-weight: 500;
    background: rgba(59, 130, 246, 0.04);
}
.ceohub-bp-subscreen #message-threads td {
    padding: 14px 12px;
    border-bottom: 1px solid var(--v2-border);
    vertical-align: middle;
}
.ceohub-bp-subscreen #message-threads .thread-from img,
.ceohub-bp-subscreen #message-threads td.thread-info img {
    border-radius: 50%;
    width: 36px;
    height: 36px;
    margin-right: 8px;
    vertical-align: middle;
}
.ceohub-bp-subscreen #message-threads td.thread-info a {
    color: var(--v2-text);
    text-decoration: none;
    font-weight: 500;
}
.ceohub-bp-subscreen #message-threads td.thread-info a:hover { color: var(--v2-blue); }

/* Single message thread */
.ceohub-bp-subscreen #message-thread .message-box {
    background: var(--v2-bg);
    border-radius: var(--v2-radius-lg);
    padding: 14px;
    margin-bottom: 10px;
    border: 1px solid var(--v2-border);
}
.ceohub-bp-subscreen #message-thread .message-metadata img {
    border-radius: 50%;
    width: 36px;
    height: 36px;
}
.ceohub-bp-subscreen #message-thread .message-content {
    margin-top: 8px;
    line-height: 1.6;
    color: var(--v2-text);
}

/* Compose */
.ceohub-bp-subscreen #send-message-form #send-to-input,
.ceohub-bp-subscreen #send-message-form #subject,
.ceohub-bp-subscreen #send-message-form #message_content {
    width: 100%;
    max-width: none;
}
.ceohub-bp-subscreen #send-message-form #message_content {
    min-height: 140px;
}

/* ── Auth pages responsive ─────────────────────────────────────────── */
@media (max-width: 920px) {
    .ceohub-auth {
        grid-template-columns: 1fr;
    }
    .ceohub-auth__brand {
        display: none;
    }
    .ceohub-auth__main {
        padding: 32px 20px;
    }
}
@media (min-width: 921px) and (max-width: 1180px) {
    .ceohub-auth__brand {
        padding: 36px 36px;
    }
    .ceohub-auth__brand-title { font-size: 28px; }
}


/* ═══════════════════════════════════════════════════════════════════════
   WP Menu integration — overrides for wp_nav_menu output
   Reset list defaults and add dropdown styling. Existing .ceohub-v2-navlink
   styles work as-is because the <a> still gets those classes from the walker.
   ═══════════════════════════════════════════════════════════════════════ */

/* Sidebar menu list — reset ul defaults */
.ceohub-v2-sidebar__nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ceohub-v2-navlink-item {
    position: relative;
    list-style: none;
}
.ceohub-v2-navlink-item--top {
    /* top-level items get the standard navlink padding */
}

/* Dropdown chevron */
.ceohub-v2-navlink__chevron {
    font-size: 14px;
    margin-left: auto;
    transition: transform 0.2s ease;
    color: var(--v2-side-text);
    flex-shrink: 0;
}
.ceohub-v2-navlink-item.has-dropdown.is-open > .ceohub-v2-navlink .ceohub-v2-navlink__chevron {
    transform: rotate(180deg);
}
.ceohub-v2-navlink-item.has-dropdown > .ceohub-v2-navlink {
    cursor: pointer;
}

/* Submenu (dropdown panel under a parent item) */
.ceohub-v2-navlink__submenu {
    list-style: none;
    padding: 4px 0 6px 12px;
    margin: 2px 0 4px;
    display: none;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    margin-left: 22px;
}
.ceohub-v2-navlink-item.has-dropdown.is-open > .ceohub-v2-navlink__submenu {
    display: block;
}
/* Auto-open submenu when an item inside it is active */
.ceohub-v2-navlink-item--top.is-active > .ceohub-v2-navlink__submenu,
.ceohub-v2-navlink-item--top:has(.is-active) > .ceohub-v2-navlink__submenu {
    display: block;
}

/* Sub-item styling: smaller, less padding, no icon */
.ceohub-v2-navlink--sub {
    padding: 7px 10px;
    font-size: 12px;
    color: var(--v2-side-text);
    opacity: 0.85;
}
.ceohub-v2-navlink--sub:hover {
    opacity: 1;
    background: rgba(255, 255, 255, 0.03);
}
.ceohub-v2-navlink--sub.is-active {
    color: var(--v2-gold);
    background: transparent;
    opacity: 1;
    font-weight: 500;
}

/* Topbar menu list */
.ceohub-v2-topnav-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}
.ceohub-v2-topnav-item {
    position: relative;
    list-style: none;
}
.ceohub-v2-topnav__chevron {
    font-size: 13px;
    margin-left: 4px;
    color: inherit;
    opacity: 0.7;
    transition: transform 0.2s ease;
}
.ceohub-v2-topnav-item.has-dropdown.is-open > .ceohub-v2-topnav__link .ceohub-v2-topnav__chevron {
    transform: rotate(180deg);
}

/* Topbar dropdown panel */
.ceohub-v2-topnav__submenu {
    list-style: none;
    padding: 6px 0;
    margin: 0;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: #fff;
    border: 1px solid var(--v2-border);
    border-radius: var(--v2-radius-md);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    z-index: 100;
    display: none;
}
.ceohub-v2-topnav-item.has-dropdown:hover > .ceohub-v2-topnav__submenu,
.ceohub-v2-topnav-item.has-dropdown.is-open > .ceohub-v2-topnav__submenu {
    display: block;
}
.ceohub-v2-topnav__submenu li {
    list-style: none;
    padding: 0;
    margin: 0;
}
.ceohub-v2-topnav__submenu .ceohub-v2-topnav__link {
    display: block;
    padding: 8px 14px;
    font-size: 13px;
    color: var(--v2-text);
    border-radius: 0;
    border-bottom: 0;
    text-decoration: none;
}
.ceohub-v2-topnav__submenu .ceohub-v2-topnav__link:hover {
    background: var(--v2-bg);
    color: var(--v2-blue);
}
.ceohub-v2-topnav__submenu .ceohub-v2-topnav__link.is-active {
    color: var(--v2-blue);
    background: rgba(59, 130, 246, 0.06);
    border: 0;
}

/* Mobile sidebar drawer — submenus stay inline even when collapsed */
@media (max-width: 920px) {
    .ceohub-v2-topnav__submenu {
        position: static;
        box-shadow: none;
        border: 0;
        background: transparent;
        padding-left: 14px;
    }
}


/* ═══════════════════════════════════════════════════════════════════════
   Layout polish — sidebar width, full-width content, search bar shape,
   row spacing. Addresses clustered/cramped feel from feedback.
   ═══════════════════════════════════════════════════════════════════════ */

/* Sidebar — wider so items breathe */
:root {
    --v2-sidebar-w: 248px;
}

.ceohub-v2-sidebar {
    padding: 18px 14px;
    gap: 16px;
}

/* More room around each nav link */
.ceohub-v2-sidebar__nav-list {
    gap: 4px;
}
.ceohub-v2-navlink {
    padding: 11px 14px;
    gap: 13px;
    font-size: 13px;
}
.ceohub-v2-navlink__icon {
    font-size: 18px;
}

/* Sidebar brand area gets more breathing room */
.ceohub-v2-sidebar__brand {
    padding-bottom: 8px;
    margin-bottom: 6px;
}

/* Main content — full width, no max-width cap, balanced padding */
.ceohub-v2-main {
    min-width: 0;
}
.ceohub-v2-main__content {
    max-width: none;
    width: 100%;
    padding: 24px 28px;
    margin: 0;
}

/* Row 1 — more horizontal gap and balanced columns */
.ceohub-dash-row1 {
    grid-template-columns: 280px minmax(0, 1fr) 320px;
    gap: 20px;
    margin-bottom: 18px;
}
.ceohub-dash-row1__left {
    gap: 16px;
}

/* Row 2 — more breathing room */
.ceohub-dash-row2 {
    gap: 16px;
    margin-bottom: 18px;
}

/* Community hero — pad the gold CTA more from edges */
.ceohub-dash-community {
    padding: 0;
}
.ceohub-dash-community__header {
    padding: 26px 30px 16px;
}
.ceohub-dash-community__body {
    padding: 10px 30px 14px;
}
.ceohub-dash-community__footer {
    padding: 16px 30px 26px;
}

/* Quick Access — wider tiles, more padding */
.ceohub-dash-quick {
    padding: 18px;
}
.ceohub-dash-quick__grid {
    gap: 12px;
}
.ceohub-dash-quick__tile {
    padding: 18px 10px;
}

/* ── Search bar — explicit rectangular shape with room around icon ── */
.ceohub-v2-topbar__search {
    flex: 1;
    max-width: 380px;
    margin: 0 14px;
    position: relative;
}
.ceohub-v2-topbar__search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    color: var(--v2-text-light);
    pointer-events: none;
    z-index: 1;
}
.ceohub-v2-topbar__search input[type="search"],
.ceohub-v2-topbar__search input {
    width: 100%;
    height: 40px;
    padding: 0 16px 0 44px;
    border: 1px solid var(--v2-border-2);
    border-radius: 10px !important;
    /* Force rectangle — defeat parent theme oval */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 13px;
    background: var(--v2-bg);
    outline: none;
    transition: var(--v2-trans);
    color: var(--v2-text);
    font-family: inherit;
    box-sizing: border-box;
}
.ceohub-v2-topbar__search input::placeholder {
    color: var(--v2-text-light);
    opacity: 1;
}
.ceohub-v2-topbar__search input:focus {
    border-color: var(--v2-blue);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.10);
}
/* Defeat search-input's native rounded "X" reset in webkit */
.ceohub-v2-topbar__search input::-webkit-search-cancel-button,
.ceohub-v2-topbar__search input::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
}

/* Topbar — more breathing room, taller for the larger search */
.ceohub-v2-topbar {
    padding: 0 28px;
    height: 72px;
    gap: 14px;
}
:root {
    --v2-topbar-h: 72px;
}

/* Topbar nav links — more space between */
.ceohub-v2-topnav-list {
    gap: 8px;
}
.ceohub-v2-topnav__link {
    padding: 10px 14px;
    font-size: 13px;
}

/* Buttons in topbar — match the larger height */
.ceohub-v2-topbar .ceohub-v2-btn {
    height: 40px;
    padding: 0 16px;
    font-size: 12px;
}
.ceohub-v2-topbar .ceohub-v2-iconbtn {
    width: 40px;
    height: 40px;
}
.ceohub-v2-topbar__avatar {
    width: 40px;
    height: 40px;
}

/* Hero header — more breathing room between title row and stats */
.ceohub-dash-hero {
    margin-bottom: 24px;
    gap: 28px;
}
.ceohub-dash-hero__stats {
    gap: 28px;
}
.ceohub-dash-stat__sep {
    width: 1px;
    height: 38px;
    background: var(--v2-border-2);
    align-self: center;
}

/* Value props strip — more horizontal padding for the 4 items */
.ceohub-dash-vps {
    padding: 22px 30px;
}
.ceohub-dash-vps__grid {
    gap: 28px;
}

/* Responsive — keep wider sidebar in 1280px range but trim slightly */
@media (max-width: 1380px) {
    :root { --v2-sidebar-w: 220px; }
    .ceohub-v2-main__content { padding: 20px 22px; }
    .ceohub-dash-row1 {
        grid-template-columns: 240px minmax(0, 1fr) 280px;
        gap: 16px;
    }
}
@media (max-width: 1180px) {
    :root { --v2-sidebar-w: 200px; }
    .ceohub-v2-topbar { padding: 0 18px; }
    .ceohub-v2-topbar__search { max-width: 280px; }
}


/* ═══════════════════════════════════════════════════════════════════════
   Landing page (public home for logged-out users)
   ═══════════════════════════════════════════════════════════════════════ */

body.ceohub-landing-body {
    margin: 0;
    background: #FFFFFF;
    color: var(--v2-text);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
body.ceohub-landing-body > *:not(.ceohub-landing):not(#wpadminbar):not(script):not(style) {
    display: none !important;
}

.ceohub-landing {
    min-height: 100vh;
    background: #FFFFFF;
}

.ceohub-landing__container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ── Header ────────────────────────────────────────────────────────── */
.ceohub-landing__header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--v2-border);
}
.ceohub-landing__header-inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.ceohub-landing__logo {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.ceohub-landing__logo img {
    max-height: 36px;
    width: auto;
    display: block;
}
.ceohub-landing__logo-text {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: -0.4px;
    color: var(--v2-navy-deep);
}

.ceohub-landing__nav {
    display: flex;
    align-items: center;
    gap: 26px;
}
.ceohub-landing__nav a {
    color: var(--v2-text-2);
    text-decoration: none;
    font-size: 13px;
    transition: var(--v2-trans);
}
.ceohub-landing__nav a:hover {
    color: var(--v2-text);
}
.ceohub-landing__nav-signin {
    font-weight: 500;
}

.ceohub-landing__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 18px;
    background: var(--v2-gold);
    color: var(--v2-navy-deep) !important;
    border-radius: 10px;
    font-weight: 500;
    font-size: 13px;
    text-decoration: none;
    transition: var(--v2-trans);
    box-shadow: 0 2px 8px rgba(247, 201, 72, 0.25);
}
.ceohub-landing__cta:hover {
    background: var(--v2-gold-deep);
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(247, 201, 72, 0.4);
}

/* ── Hero ──────────────────────────────────────────────────────────── */
.ceohub-landing__hero {
    position: relative;
    padding: 64px 0 80px;
    text-align: center;
    overflow: hidden;
}
.ceohub-landing__hero-orb {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(80px);
    opacity: 0.55;
}
.ceohub-landing__hero-orb--1 {
    top: -80px;
    left: -100px;
    width: 380px;
    height: 380px;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.5), transparent 70%);
}
.ceohub-landing__hero-orb--2 {
    top: 100px;
    right: -120px;
    width: 360px;
    height: 360px;
    background: radial-gradient(circle, rgba(11, 30, 63, 0.18), transparent 70%);
}

.ceohub-landing__pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    background: rgba(15, 23, 42, 0.04);
    border-radius: 99px;
    margin-bottom: 28px;
    position: relative;
    z-index: 1;
}
.ceohub-landing__pill button {
    background: transparent;
    border: 0;
    padding: 7px 16px;
    border-radius: 99px;
    font-size: 13px;
    font-weight: 500;
    color: var(--v2-text-3);
    cursor: pointer;
    transition: var(--v2-trans);
    font-family: inherit;
}
.ceohub-landing__pill button.is-active {
    background: #FFFFFF;
    color: var(--v2-navy-deep);
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}
.ceohub-landing__pill button:hover:not(.is-active) {
    color: var(--v2-text);
}

.ceohub-landing__title {
    margin: 0 0 18px;
    font-size: 64px;
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -2px;
    color: var(--v2-navy-deep);
    position: relative;
    z-index: 1;
}
.ceohub-landing__title-accent {
    color: var(--v2-blue);
}
.ceohub-landing__title-gold {
    color: var(--v2-gold-deep);
}

.ceohub-landing__sub {
    max-width: 540px;
    margin: 0 auto 36px;
    font-size: 16px;
    line-height: 1.55;
    color: var(--v2-text-2);
    position: relative;
    z-index: 1;
}
.ceohub-landing__sub strong {
    color: var(--v2-text);
    font-weight: 500;
}

/* Prompt input — rectangular, large */
.ceohub-landing__prompt {
    position: relative;
    max-width: 640px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    background: #FFFFFF;
    border: 1px solid var(--v2-border-2);
    border-radius: 14px;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
    transition: var(--v2-trans);
}
.ceohub-landing__prompt:focus-within {
    border-color: var(--v2-blue);
    box-shadow: 0 6px 24px rgba(59, 130, 246, 0.12);
}
.ceohub-landing__prompt-icon {
    margin-left: 18px;
    font-size: 18px;
    color: var(--v2-gold-deep);
    flex-shrink: 0;
}
.ceohub-landing__prompt-input {
    flex: 1;
    border: 0;
    background: transparent;
    padding: 16px 14px;
    font-size: 15px;
    color: var(--v2-text);
    outline: none;
    font-family: inherit;
    min-width: 0;
}
.ceohub-landing__prompt-input::placeholder {
    color: var(--v2-text-3);
}
.ceohub-landing__prompt-submit {
    width: 40px;
    height: 40px;
    margin: 6px 8px 6px 0;
    border: 0;
    background: var(--v2-navy-deep);
    color: #FFFFFF;
    border-radius: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--v2-trans);
    flex-shrink: 0;
}
.ceohub-landing__prompt-submit:hover {
    background: var(--v2-navy-mid);
}
.ceohub-landing__prompt-submit i { font-size: 18px; }

/* Stats row */
.ceohub-landing__stats {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    font-size: 13px;
    color: var(--v2-text-3);
    position: relative;
    z-index: 1;
}
.ceohub-landing__stat {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
}
.ceohub-landing__stat-val {
    color: var(--v2-text);
    font-weight: 500;
    font-size: 14px;
}
.ceohub-landing__stat-label {
    color: var(--v2-text-3);
}
.ceohub-landing__stat-dot {
    color: var(--v2-text-light);
}

/* ── Getting Started cards ────────────────────────────────────────── */
.ceohub-landing__getstarted {
    padding: 60px 0;
}
.ceohub-landing__section-title {
    margin: 0 0 24px;
    font-size: 20px;
    font-weight: 600;
    color: var(--v2-text);
    letter-spacing: -0.3px;
}
.ceohub-landing__gs-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.ceohub-landing__gs-card {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    padding: 28px;
    min-height: 220px;
    text-decoration: none;
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: var(--v2-trans);
    isolation: isolate;
}
.ceohub-landing__gs-card:hover {
    transform: translateY(-3px);
    color: #FFFFFF;
}
.ceohub-landing__gs-card--community {
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
}
.ceohub-landing__gs-card--community::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 70% 30%, rgba(247, 201, 72, 0.25), transparent 60%);
    z-index: 0;
}
.ceohub-landing__gs-card--courses {
    background: linear-gradient(135deg, #FFD66B 0%, var(--v2-gold-deep) 100%);
    color: var(--v2-navy-deep);
}
.ceohub-landing__gs-card--courses:hover {
    color: var(--v2-navy-deep);
}
.ceohub-landing__gs-card--courses .ceohub-landing__gs-eyebrow {
    color: var(--v2-navy-deep);
    background: rgba(11, 30, 63, 0.08);
}
.ceohub-landing__gs-card--courses .ceohub-landing__gs-desc {
    color: rgba(11, 30, 63, 0.75);
}

.ceohub-landing__gs-art {
    position: absolute;
    bottom: -10px;
    right: -10px;
    width: 220px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.12;
    z-index: 0;
}
.ceohub-landing__gs-art i {
    font-size: 200px;
}
.ceohub-landing__gs-card--community .ceohub-landing__gs-art {
    color: var(--v2-gold);
}
.ceohub-landing__gs-card--courses .ceohub-landing__gs-art {
    color: var(--v2-navy-deep);
}

.ceohub-landing__gs-body {
    position: relative;
    z-index: 1;
}
.ceohub-landing__gs-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    background: rgba(255, 255, 255, 0.16);
    border-radius: 99px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.4px;
    margin-bottom: 12px;
    color: inherit;
}
.ceohub-landing__gs-eyebrow i { font-size: 13px; }
.ceohub-landing__gs-title {
    margin: 0 0 8px;
    font-size: 22px;
    font-weight: 600;
    letter-spacing: -0.3px;
    color: inherit;
}
.ceohub-landing__gs-desc {
    margin: 0;
    font-size: 14px;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.8);
    max-width: 360px;
}

/* ── Value props ───────────────────────────────────────────────────── */
.ceohub-landing__values {
    padding: 40px 0 60px;
    background: var(--v2-bg);
}
.ceohub-landing__values-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}
.ceohub-landing__value {
    text-align: left;
}
.ceohub-landing__value-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}
.ceohub-landing__value-icon i { font-size: 22px; }
.ceohub-landing__value-icon--blue   { background: rgba(59, 130, 246, 0.12); color: var(--v2-blue); }
.ceohub-landing__value-icon--gold   { background: rgba(247, 201, 72, 0.18); color: var(--v2-gold-deep); }
.ceohub-landing__value-icon--green  { background: rgba(16, 185, 129, 0.12); color: var(--v2-green); }
.ceohub-landing__value-icon--purple { background: rgba(124, 58, 237, 0.12); color: var(--v2-purple); }
.ceohub-landing__value h3 {
    margin: 0 0 6px;
    font-size: 15px;
    font-weight: 600;
    color: var(--v2-text);
}
.ceohub-landing__value p {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
    color: var(--v2-text-3);
}

/* ── Bottom CTA ────────────────────────────────────────────────────── */
.ceohub-landing__bottom {
    padding: 80px 0;
}
.ceohub-landing__bottom-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, var(--v2-navy-deep) 0%, var(--v2-navy-light) 100%);
    border-radius: 20px;
    padding: 56px 36px;
    text-align: center;
    color: #FFFFFF;
}
.ceohub-landing__bottom-glow {
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247, 201, 72, 0.28), transparent 70%);
    pointer-events: none;
}
.ceohub-landing__bottom-title {
    position: relative;
    margin: 0 0 12px;
    font-size: 36px;
    font-weight: 600;
    letter-spacing: -1px;
}
.ceohub-landing__bottom-sub {
    position: relative;
    margin: 0 0 28px;
    font-size: 15px;
    color: rgba(255, 255, 255, 0.78);
}
.ceohub-landing__bottom-actions {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: center;
}
.ceohub-landing__cta--large {
    padding: 14px 26px;
    font-size: 14px;
}
.ceohub-landing__cta-secondary {
    display: inline-flex;
    align-items: center;
    padding: 14px 22px;
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    font-weight: 500;
    font-size: 14px;
    transition: var(--v2-trans);
}
.ceohub-landing__cta-secondary:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #FFFFFF;
}

/* ── Footer ────────────────────────────────────────────────────────── */
.ceohub-landing__footer {
    padding: 28px 0 34px;
    border-top: 1px solid var(--v2-border);
}
.ceohub-landing__footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 18px;
}
.ceohub-landing__footer-brand p {
    margin: 6px 0 0;
    font-size: 12px;
    color: var(--v2-text-3);
}
.ceohub-landing__footer-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
}
.ceohub-landing__footer-nav a {
    font-size: 13px;
    color: var(--v2-text-2);
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-landing__footer-nav a:hover {
    color: var(--v2-text);
}
.ceohub-landing__footer-copy {
    font-size: 12px;
    color: var(--v2-text-3);
    padding-top: 14px;
    border-top: 1px solid var(--v2-border);
}

/* ── Landing responsive ────────────────────────────────────────────── */
@media (max-width: 920px) {
    .ceohub-landing__header-inner { padding: 14px 18px; }
    .ceohub-landing__nav { gap: 14px; }
    .ceohub-landing__nav a:not(.ceohub-landing__cta):not(.ceohub-landing__nav-signin) { display: none; }
    .ceohub-landing__hero { padding: 44px 0 60px; }
    .ceohub-landing__title { font-size: 44px; }
    .ceohub-landing__sub { font-size: 14px; }
    .ceohub-landing__gs-grid { grid-template-columns: 1fr; }
    .ceohub-landing__values-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
    .ceohub-landing__bottom-title { font-size: 26px; }
    .ceohub-landing__bottom-card { padding: 40px 22px; }
}
@media (max-width: 540px) {
    .ceohub-landing__container { padding: 0 18px; }
    .ceohub-landing__title { font-size: 36px; letter-spacing: -1.2px; }
    .ceohub-landing__pill button { padding: 6px 12px; font-size: 12px; }
    .ceohub-landing__prompt-input { padding: 14px 10px; font-size: 14px; }
    .ceohub-landing__values-grid { grid-template-columns: 1fr; }
    .ceohub-landing__stats { font-size: 11px; gap: 8px; }
    .ceohub-landing__footer-row { flex-direction: column; align-items: flex-start; }
}

/* ═══════════════════════════════════════════════════════════════════════
   OTP Verify page — modal-style centered card
   ═══════════════════════════════════════════════════════════════════════ */

body.ceohub-verify-body {
    overflow: auto !important;
    background: var(--v2-bg);
    min-height: 100vh;
    margin: 0;
}
body.ceohub-verify-body > *:not(.ceohub-verify):not(#wpadminbar):not(script):not(style) {
    display: none !important;
}

.ceohub-verify {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 18px;
    position: relative;
}
.ceohub-verify__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 20%, rgba(247, 201, 72, 0.10), transparent 50%),
        radial-gradient(circle at 80% 80%, rgba(11, 30, 63, 0.06), transparent 50%);
    pointer-events: none;
}

.ceohub-verify__card {
    position: relative;
    background: #FFFFFF;
    border-radius: 18px;
    padding: 38px 36px 30px;
    width: 100%;
    max-width: 440px;
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.10);
    text-align: center;
}

.ceohub-verify__logo {
    margin-bottom: 18px;
}
.ceohub-verify__logo img {
    max-height: 44px;
    width: auto;
    margin: 0 auto;
}
.ceohub-verify__logo-fallback {
    font-size: 22px;
    font-weight: 500;
    letter-spacing: -0.4px;
}

.ceohub-verify__intro {
    margin: 0 0 22px;
    font-size: 14px;
    line-height: 1.55;
    color: var(--v2-text-2);
}
.ceohub-verify__intro strong {
    color: var(--v2-text);
    font-weight: 500;
}

.ceohub-verify__alert {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 12px;
    margin-bottom: 18px;
    text-align: left;
    line-height: 1.45;
}
.ceohub-verify__alert i { font-size: 16px; flex-shrink: 0; margin-top: 1px; }
.ceohub-verify__alert--error {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.18);
    color: #991B1B;
}
.ceohub-verify__alert--success {
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.2);
    color: #065F46;
}

.ceohub-verify__form { margin: 0 0 16px; }
.ceohub-verify__inputs {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 18px;
}
.ceohub-verify__digit {
    width: 48px;
    height: 56px;
    border: 1.5px solid var(--v2-border-2);
    border-radius: 10px;
    background: var(--v2-bg);
    text-align: center;
    font-size: 24px;
    font-weight: 600;
    color: var(--v2-text);
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    transition: var(--v2-trans);
    font-family: inherit;
}
.ceohub-verify__digit:focus {
    border-color: var(--v2-blue);
    background: #FFFFFF;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.12);
}
.ceohub-verify__digit:not(:placeholder-shown),
.ceohub-verify__digit[value]:not([value=""]) {
    background: #FFFFFF;
    border-color: var(--v2-navy-deep);
}

.ceohub-verify__submit {
    width: 100%;
    padding: 13px;
    background: var(--v2-navy-deep);
    color: #FFFFFF;
    border: 0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: var(--v2-trans);
    font-family: inherit;
}
.ceohub-verify__submit:hover {
    background: var(--v2-navy-mid);
}

.ceohub-verify__resend-form {
    margin: 0 0 8px;
}
.ceohub-verify__resend {
    background: transparent;
    border: 0;
    color: var(--v2-blue);
    font-size: 13px;
    cursor: pointer;
    font-family: inherit;
    padding: 6px;
    text-decoration: none;
}
.ceohub-verify__resend:hover {
    text-decoration: underline;
}

.ceohub-verify__back {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    padding: 8px 14px;
    background: var(--v2-bg);
    border-radius: 99px;
    color: var(--v2-text-2);
    font-size: 12px;
    text-decoration: none;
    transition: var(--v2-trans);
}
.ceohub-verify__back:hover {
    background: var(--v2-surface-2);
    color: var(--v2-text);
}
.ceohub-verify__back i { font-size: 14px; }

@media (max-width: 540px) {
    .ceohub-verify__card { padding: 32px 22px 26px; }
    .ceohub-verify__digit { width: 40px; height: 50px; font-size: 20px; }
    .ceohub-verify__inputs { gap: 6px; }
}

/* ═══════════════════════════════════════════════════════════════════
   ▓▓▓ ORPHAN PAGE DESIGN SYSTEM ▓▓▓
   Added: site-wide page designs for every URL not already covered by
   the core app-shell templates (Dashboard, My Account, Members,
   Single Group, single Profile screens).

   TWO VISUAL MODES — chosen by login state and page type:

     MODE A — Marketing chrome (no sidebar)
       Pages: Register, Login, Activate, Forgot Password,
              Membership Levels, Membership Checkout
       Layout: global navy header → centered content card → footer
       Trigger: body.register, body.activate, body.login,
                body.pmpro-levels, body.pmpro-checkout, etc.

     MODE B — App-shell (sidebar + topbar)
       Pages: Group Create wizard, Group Admin, Sitewide Activity
       Layout: navy sidebar → white topbar → content card
       Trigger: body:has(.ceohub-app-shell-v2) (self-correcting via
                the systemic kill rule above)

   The form / button / card / step-indicator styling is universal —
   it looks identical in both modes — so the whole site reads as one
   coherent design language regardless of which chrome wraps the page.

   Mobile-first responsive at 980px / 720px / 540px breakpoints.
   ═══════════════════════════════════════════════════════════════════ */


/* ───────────────────────────────────────────────────────────────────
   01. ALLIANCE NEUTRALIZATION ON MARKETING-MODE PAGES
   Hide Alliance theme decorations that compete with our global chrome
   on pages where chrome injects but the app-shell does not.
   ─────────────────────────────────────────────────────────────────── */

body.register .top_panel_wrap,
body.register .breadcrumbs,
body.register .post_meta,
body.register .sidebar_wrap,
body.register aside.sidebar,
body.activate .top_panel_wrap,
body.activate .breadcrumbs,
body.activate .post_meta,
body.activate .sidebar_wrap,
body.activate aside.sidebar,
body.pmpro-levels .top_panel_wrap,
body.pmpro-levels .breadcrumbs,
body.pmpro-levels .post_meta,
body.pmpro-levels .sidebar_wrap,
body.pmpro-levels aside.sidebar,
body.pmpro-checkout .top_panel_wrap,
body.pmpro-checkout .breadcrumbs,
body.pmpro-checkout .post_meta,
body.pmpro-checkout .sidebar_wrap,
body.pmpro-checkout aside.sidebar,
body.pmpro-billing .top_panel_wrap,
body.pmpro-billing .breadcrumbs,
body.pmpro-billing .post_meta,
body.pmpro-billing .sidebar_wrap,
body.pmpro-billing aside.sidebar,
body.pmpro-confirmation .top_panel_wrap,
body.pmpro-confirmation .breadcrumbs,
body.pmpro-confirmation .post_meta,
body.pmpro-confirmation .sidebar_wrap,
body.pmpro-confirmation aside.sidebar,
body.pmpro-account .top_panel_wrap,
body.pmpro-account .breadcrumbs,
body.pmpro-account .post_meta,
body.pmpro-account .sidebar_wrap,
body.pmpro-account aside.sidebar,
body.bp-user .breadcrumbs,
body.directory .breadcrumbs {
    display: none !important;
}

/* Force the Alliance content wrappers to behave as transparent passthroughs
   on marketing-mode pages so our card system sits on the v2 background. */
body.register .page_content_wrap,
body.register .content_wrap,
body.register .content,
body.register article.post,
body.register article .post_content,
body.activate .page_content_wrap,
body.activate .content_wrap,
body.activate .content,
body.activate article.post,
body.activate article .post_content,
body.pmpro-levels .page_content_wrap,
body.pmpro-levels .content_wrap,
body.pmpro-levels .content,
body.pmpro-levels article.post,
body.pmpro-levels article .post_content,
body.pmpro-checkout .page_content_wrap,
body.pmpro-checkout .content_wrap,
body.pmpro-checkout .content,
body.pmpro-checkout article.post,
body.pmpro-checkout article .post_content,
body.pmpro-billing .page_content_wrap,
body.pmpro-billing .content_wrap,
body.pmpro-billing .content,
body.pmpro-billing article.post,
body.pmpro-billing article .post_content,
body.pmpro-confirmation .page_content_wrap,
body.pmpro-confirmation .content_wrap,
body.pmpro-confirmation .content,
body.pmpro-confirmation article.post,
body.pmpro-confirmation article .post_content,
body.pmpro-account .page_content_wrap,
body.pmpro-account .content_wrap,
body.pmpro-account .content,
body.pmpro-account article.post,
body.pmpro-account article .post_content {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
}


/* ───────────────────────────────────────────────────────────────────
   02. MARKETING-MODE PAGE FOUNDATION (.ceohub-page)
   The outermost wrapper for any content rendered between the global
   chrome header and footer. Sets the v2 background and centers a
   max-width column so content doesn't sprawl on wide screens.

   This class is applied either by:
     a) the chrome class's content wrap, OR
     b) directly by the BP/PMPro/WP form-styling selectors below.
   ─────────────────────────────────────────────────────────────────── */

body.register,
body.activate,
body.pmpro-levels,
body.pmpro-checkout,
body.pmpro-billing,
body.pmpro-confirmation,
body.pmpro-account {
    background: var(--v2-bg) !important;
    color: var(--v2-text);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* The page surface — sits inside the chrome wrapper, between header & footer */
.ceohub-page {
    background: var(--v2-bg);
    min-height: 60vh;
}
.ceohub-page__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 48px 28px 80px;
    width: 100%;
    box-sizing: border-box;
}
.ceohub-page__inner--narrow {
    max-width: 560px;
}
.ceohub-page__inner--medium {
    max-width: 820px;
}

/* Hero — title + subtitle pulled from page context */
.ceohub-page__hero {
    text-align: center;
    margin-bottom: 36px;
}
.ceohub-page__hero--left {
    text-align: left;
}
.ceohub-page__hero-eyebrow {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: var(--v2-gold-deep);
    background: rgba(247,201,72,.14);
    padding: 5px 12px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-bottom: 14px;
}
.ceohub-page__hero h1 {
    margin: 0 0 12px;
    font-family: 'Inter', sans-serif !important;
    font-size: 34px;
    font-weight: 800;
    color: var(--v2-navy-deep);
    line-height: 1.15;
    letter-spacing: -.025em;
}
.ceohub-page__hero p {
    margin: 0 auto;
    max-width: 540px;
    font-size: 15.5px;
    color: var(--v2-text-muted);
    line-height: 1.6;
}
.ceohub-page__hero--left p { margin-left: 0; }

/* Two-column layout: main content + side info */
.ceohub-page__layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 320px;
    gap: 24px;
    align-items: start;
}
.ceohub-page__layout--single {
    grid-template-columns: 1fr;
}

/* Breadcrumb (used on app-shell pages too) */
.ceohub-crumb {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    color: var(--v2-text-muted);
    margin-bottom: 18px;
    font-weight: 500;
    flex-wrap: wrap;
}
.ceohub-crumb a { color: var(--v2-text-muted); text-decoration: none; }
.ceohub-crumb a:hover { color: var(--v2-navy-deep); }
.ceohub-crumb i { font-size: 14px; opacity: .55; }
.ceohub-crumb__current { color: var(--v2-navy-deep); font-weight: 600; }


/* ───────────────────────────────────────────────────────────────────
   03. UNIVERSAL CARD SYSTEM (.ceohub-card)
   The single content card used everywhere — Register, Login,
   Activate, Membership, Group Create, Group Admin, anywhere we
   wrap content in a clean white surface.
   ─────────────────────────────────────────────────────────────────── */

.ceohub-card {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: 18px;
    padding: 32px 34px;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 4px 16px rgba(11,30,63,.04);
    box-sizing: border-box;
}
.ceohub-card--flush { padding: 0; overflow: hidden; }
.ceohub-card--dark {
    background: var(--v2-navy-deep);
    color: #fff;
    border-color: var(--v2-navy-light);
}

.ceohub-card__head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--v2-border);
}
.ceohub-card__head-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(247,201,72,.16);
    color: var(--v2-gold-deep);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex: 0 0 auto;
}
.ceohub-card__head-text { flex: 1 1 auto; min-width: 0; }
.ceohub-card__head h2 {
    margin: 0;
    font-size: 19px;
    font-weight: 700;
    color: var(--v2-navy-deep);
    letter-spacing: -.012em;
    line-height: 1.25;
}
.ceohub-card__head small {
    display: block;
    font-size: 13px;
    color: var(--v2-text-muted);
    font-weight: 500;
    margin-top: 3px;
    line-height: 1.45;
}

/* Card sub-section divider */
.ceohub-card__divider {
    height: 1px;
    background: var(--v2-border);
    margin: 22px -34px;
}

/* Card footer area (form actions live here) */
.ceohub-card__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid var(--v2-border);
}
.ceohub-card__foot--end { justify-content: flex-end; }
.ceohub-card__foot--center { justify-content: center; }


/* ───────────────────────────────────────────────────────────────────
   04. UNIVERSAL FORM SYSTEM
   Targets both our own .ceohub-field markup AND the deployed BP /
   PMPro / WP form markup directly, so the same v2 look applies
   without editing any plugin templates.
   ─────────────────────────────────────────────────────────────────── */

/* — Native field wrapper — */
.ceohub-field { margin-bottom: 18px; }
.ceohub-field--inline { display: flex; gap: 14px; align-items: flex-end; }
.ceohub-field--inline > * { flex: 1 1 0; }

.ceohub-field label,
.ceohub-field > label,
body.register .editfield label,
body.register .editfield > label,
body.activate #buddypress label,
body.pmpro-checkout .pmpro_form label,
body.pmpro-billing .pmpro_form label,
body.pmpro-account .pmpro_form label {
    display: block !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--v2-navy-deep) !important;
    margin-bottom: 8px !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-family: 'Inter', sans-serif !important;
}

/* Required-indicator inside labels */
.ceohub-field label .req,
body.register .editfield label .required,
body.pmpro-checkout .pmpro_form .pmpro_asterisk {
    color: var(--v2-danger) !important;
    margin-left: 2px;
    font-weight: 700;
}

/* All input types — universal selector */
.ceohub-field input[type=text],
.ceohub-field input[type=email],
.ceohub-field input[type=password],
.ceohub-field input[type=url],
.ceohub-field input[type=tel],
.ceohub-field input[type=number],
.ceohub-field input[type=search],
.ceohub-field input[type=date],
.ceohub-field select,
.ceohub-field textarea,
body.register #buddypress input[type=text],
body.register #buddypress input[type=email],
body.register #buddypress input[type=password],
body.register #buddypress input[type=url],
body.register #buddypress select,
body.register #buddypress textarea,
body.activate #buddypress input[type=text],
body.activate #buddypress input[type=password],
body.pmpro-checkout .pmpro_form input[type=text],
body.pmpro-checkout .pmpro_form input[type=email],
body.pmpro-checkout .pmpro_form input[type=password],
body.pmpro-checkout .pmpro_form input[type=tel],
body.pmpro-checkout .pmpro_form input[type=number],
body.pmpro-checkout .pmpro_form select,
body.pmpro-checkout .pmpro_form textarea,
body.pmpro-billing .pmpro_form input[type=text],
body.pmpro-billing .pmpro_form input[type=email],
body.pmpro-billing .pmpro_form input[type=password],
body.pmpro-billing .pmpro_form select,
body.pmpro-account .pmpro_form input,
body.pmpro-account .pmpro_form select,
body.pmpro-account .pmpro_form textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    color: var(--v2-text) !important;
    background: var(--v2-surface) !important;
    border: 1.5px solid var(--v2-border) !important;
    border-radius: 11px !important;
    padding: 12px 14px !important;
    line-height: 1.4 !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    margin: 0 0 0 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
    box-shadow: none !important;
}

.ceohub-field textarea,
body.register #buddypress textarea,
body.pmpro-checkout .pmpro_form textarea {
    min-height: 120px !important;
    resize: vertical !important;
    line-height: 1.55 !important;
}

.ceohub-field input:focus,
.ceohub-field select:focus,
.ceohub-field textarea:focus,
body.register #buddypress input:focus,
body.register #buddypress select:focus,
body.register #buddypress textarea:focus,
body.activate #buddypress input:focus,
body.pmpro-checkout .pmpro_form input:focus,
body.pmpro-checkout .pmpro_form select:focus,
body.pmpro-checkout .pmpro_form textarea:focus,
body.pmpro-billing .pmpro_form input:focus,
body.pmpro-account .pmpro_form input:focus {
    outline: none !important;
    border-color: var(--v2-gold) !important;
    box-shadow: 0 0 0 4px rgba(247,201,72,.18) !important;
}

/* Select chevron */
.ceohub-field select,
body.pmpro-checkout .pmpro_form select,
body.pmpro-billing .pmpro_form select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%230B1E3F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4,6 8,10 12,6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    padding-right: 40px !important;
}

/* Helper / hint text */
.ceohub-field-hint,
body.register #buddypress .editfield p.description,
body.pmpro-checkout .pmpro_form .pmpro_asterisk + small,
body.pmpro-checkout .pmpro_form-field-description {
    display: block !important;
    margin-top: 7px !important;
    font-size: 12.5px !important;
    color: var(--v2-text-muted) !important;
    line-height: 1.45 !important;
    font-style: normal !important;
}

/* Checkbox + radio in our form system */
.ceohub-check {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 14px 16px;
    border-radius: 12px;
    border: 1.5px solid var(--v2-border);
    background: var(--v2-surface);
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease;
    margin-bottom: 10px;
}
.ceohub-check:hover { background: var(--v2-surface-2); }
.ceohub-check.is-selected,
.ceohub-check input:checked ~ .ceohub-check__label {
    border-color: var(--v2-gold);
    background: rgba(247,201,72,.06);
}
.ceohub-check input {
    margin: 3px 0 0 0 !important;
    accent-color: var(--v2-gold-deep) !important;
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
}
.ceohub-check__label { flex: 1 1 auto; min-width: 0; }
.ceohub-check__title {
    display: block;
    font-weight: 600;
    font-size: 14.5px;
    color: var(--v2-navy-deep);
    margin-bottom: 2px;
    line-height: 1.35;
}
.ceohub-check__desc {
    display: block;
    font-size: 13px;
    color: var(--v2-text-muted);
    line-height: 1.5;
}

/* Standalone checkbox (e.g. "Remember me") */
.ceohub-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: 14px;
    color: var(--v2-text);
    cursor: pointer;
}
.ceohub-checkbox input {
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    accent-color: var(--v2-gold-deep) !important;
}


/* ───────────────────────────────────────────────────────────────────
   05. UNIVERSAL BUTTON SYSTEM
   Replaces every CTA, submit button, and link-button across the
   site. Targets our .btn-* classes AND the deployed BP/PMPro/WP
   button markup directly.
   ─────────────────────────────────────────────────────────────────── */

.btn-primary,
.btn-secondary,
.btn-ghost,
.btn-danger,
body.register #buddypress #signup_submit,
body.register #buddypress input[type=submit],
body.register #buddypress button[type=submit],
body.activate #buddypress input[type=submit],
body.pmpro-checkout .pmpro_form .pmpro_btn,
body.pmpro-checkout .pmpro_form input[type=submit],
body.pmpro-checkout .pmpro_form button[type=submit],
body.pmpro-billing .pmpro_form .pmpro_btn,
body.pmpro-billing .pmpro_form input[type=submit],
body.pmpro-account .pmpro_form .pmpro_btn,
body.pmpro-account .pmpro_form input[type=submit] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    border-radius: 11px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    border: none !important;
    transition: background .15s ease, transform .1s ease, color .15s ease !important;
    text-decoration: none !important;
    line-height: 1 !important;
    letter-spacing: -.005em !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    white-space: nowrap !important;
    text-transform: none !important;
    height: auto !important;
    min-height: 44px !important;
    box-shadow: none !important;
}

.btn-primary,
body.register #buddypress #signup_submit,
body.register #buddypress input[type=submit],
body.register #buddypress button[type=submit],
body.activate #buddypress input[type=submit],
body.pmpro-checkout .pmpro_form .pmpro_btn-submit-checkout,
body.pmpro-checkout .pmpro_form input[type=submit],
body.pmpro-checkout .pmpro_form button[type=submit],
body.pmpro-billing .pmpro_form input[type=submit],
body.pmpro-account .pmpro_form .pmpro_btn-submit {
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
}
.btn-primary:hover,
body.register #buddypress #signup_submit:hover,
body.register #buddypress input[type=submit]:hover,
body.register #buddypress button[type=submit]:hover,
body.activate #buddypress input[type=submit]:hover,
body.pmpro-checkout .pmpro_form .pmpro_btn-submit-checkout:hover,
body.pmpro-checkout .pmpro_form input[type=submit]:hover,
body.pmpro-checkout .pmpro_form button[type=submit]:hover,
body.pmpro-billing .pmpro_form input[type=submit]:hover,
body.pmpro-account .pmpro_form .pmpro_btn-submit:hover {
    background: var(--v2-gold-deep) !important;
    color: var(--v2-navy-deep) !important;
}
.btn-primary:active,
body.register #buddypress #signup_submit:active,
body.register #buddypress input[type=submit]:active,
body.pmpro-checkout .pmpro_form input[type=submit]:active {
    transform: translateY(1px);
}

.btn-secondary,
body.pmpro-checkout .pmpro_form .pmpro_btn-cancel,
body.pmpro-account .pmpro_form .pmpro_btn-cancel {
    background: var(--v2-surface) !important;
    color: var(--v2-navy-deep) !important;
    border: 1.5px solid var(--v2-border) !important;
}
.btn-secondary:hover,
body.pmpro-checkout .pmpro_form .pmpro_btn-cancel:hover,
body.pmpro-account .pmpro_form .pmpro_btn-cancel:hover {
    background: var(--v2-surface-2) !important;
    color: var(--v2-navy-deep) !important;
}

.btn-ghost {
    background: transparent !important;
    color: var(--v2-text-muted) !important;
}
.btn-ghost:hover { color: var(--v2-navy-deep) !important; }

.btn-danger {
    background: var(--v2-danger) !important;
    color: #fff !important;
}
.btn-danger:hover { background: #B91C1C !important; }

/* Size variants */
.btn-lg { padding: 15px 28px !important; font-size: 15.5px !important; min-height: 52px !important; }
.btn-sm { padding: 8px 16px !important; font-size: 13px !important; min-height: 36px !important; border-radius: 9px !important; }
.btn-block { display: flex !important; width: 100% !important; }


/* ───────────────────────────────────────────────────────────────────
   06. STEP INDICATOR — used by Group Create wizard, onboarding,
   any multi-step flow
   ─────────────────────────────────────────────────────────────────── */

.ceohub-steps {
    display: flex;
    align-items: center;
    gap: 0;
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: 16px;
    padding: 14px 8px;
    margin-bottom: 22px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.ceohub-step {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 14px;
    font-size: 13px;
    font-weight: 600;
    color: var(--v2-text-soft);
    white-space: nowrap;
    flex: 1 1 0;
    min-width: 0;
}
.ceohub-step__num {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--v2-surface-2);
    color: var(--v2-text-soft);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12.5px;
    font-weight: 700;
    flex: 0 0 auto;
    border: 1.5px solid var(--v2-border);
    transition: all .2s ease;
}
.ceohub-step__label {
    overflow: hidden;
    text-overflow: ellipsis;
}
.ceohub-step.is-active { color: var(--v2-navy-deep); }
.ceohub-step.is-active .ceohub-step__num {
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    border-color: var(--v2-gold);
    box-shadow: 0 0 0 4px rgba(247,201,72,.18);
}
.ceohub-step.is-done { color: var(--v2-text); }
.ceohub-step.is-done .ceohub-step__num {
    background: var(--v2-success);
    color: #fff;
    border-color: var(--v2-success);
}
.ceohub-step__connector {
    flex: 0 0 24px;
    height: 2px;
    background: var(--v2-border);
    border-radius: 2px;
}


/* ───────────────────────────────────────────────────────────────────
   07. SIDE-INFO HELPER CARDS (for two-column layouts)
   ─────────────────────────────────────────────────────────────────── */

.ceohub-aside {
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: sticky;
    top: 88px;
}

.ceohub-help {
    background: var(--v2-navy-deep);
    color: #fff;
    border-radius: 18px;
    padding: 24px;
    position: relative;
    overflow: hidden;
}
.ceohub-help::before {
    content: '';
    position: absolute;
    top: -50px;
    right: -50px;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(247,201,72,.18), transparent 70%);
    pointer-events: none;
}
.ceohub-help__icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: rgba(247,201,72,.16);
    color: var(--v2-gold);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 16px;
    position: relative;
}
.ceohub-help h3 {
    margin: 0 0 8px;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -.01em;
    position: relative;
}
.ceohub-help p {
    margin: 0;
    font-size: 13.5px;
    color: rgba(255,255,255,.72);
    line-height: 1.6;
    position: relative;
}

.ceohub-tips {
    background: var(--v2-surface);
    border: 1px solid var(--v2-border);
    border-radius: 16px;
    padding: 18px 22px;
}
.ceohub-tips h4 {
    margin: 0 0 10px;
    font-size: 12px;
    color: var(--v2-text-muted);
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 700;
}
.ceohub-tips ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ceohub-tips li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-size: 13.5px;
    color: var(--v2-text);
    line-height: 1.55;
    padding: 8px 0;
}
.ceohub-tips li i {
    color: var(--v2-success);
    font-size: 17px;
    flex: 0 0 auto;
    margin-top: 1px;
}


/* ───────────────────────────────────────────────────────────────────
   08. REGISTER PAGE (/register/)
   BuddyPress signup form — wrapped in a centered card.
   ─────────────────────────────────────────────────────────────────── */

body.register .ceohub-page,
body.register .ceohub-page__inner {
    background: var(--v2-bg);
}

/* The BP register form lives inside #buddypress — make IT the card */
body.register #buddypress {
    max-width: 560px !important;
    margin: 0 auto !important;
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 36px 36px 32px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 8px 32px rgba(11,30,63,.06) !important;
    box-sizing: border-box !important;
    color: var(--v2-text) !important;
}

/* Add a hero above the form via :before pseudo (works because the BP page
   body has class 'register') */
body.register .page_content_wrap::before,
body.register .content_wrap::before,
body.register .content::before {
    content: '';
    display: block;
    background: var(--v2-bg);
    height: 36px;
}

/* Inject a title and subtitle above the form via #buddypress::before */
body.register #buddypress::before {
    content: 'Create your CEO Hub account';
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 800;
    color: var(--v2-navy-deep);
    letter-spacing: -.02em;
    margin-bottom: 8px;
    text-align: center;
    line-height: 1.2;
}
body.register #buddypress::after {
    content: '';
    display: none;
}

/* Each editfield is a 18px-gap row */
body.register #buddypress .editfield {
    margin-bottom: 18px !important;
}

/* Hide the BP success-page hint scaffolding when not present */
body.register #buddypress h2,
body.register #buddypress h3,
body.register #buddypress h4 {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    margin: 20px 0 14px !important;
    letter-spacing: -.01em !important;
}

/* The submit container */
body.register #buddypress .submit {
    margin-top: 26px !important;
    padding-top: 22px !important;
    border-top: 1px solid var(--v2-border) !important;
    display: flex !important;
    justify-content: center !important;
}
body.register #buddypress #signup_submit,
body.register #buddypress input[type=submit] {
    min-width: 200px !important;
    padding: 14px 28px !important;
    font-size: 15px !important;
}

/* Privacy / terms checkboxes */
body.register #buddypress .bp-privacy-options,
body.register #buddypress .agree-terms {
    background: var(--v2-surface-2);
    padding: 14px 16px;
    border-radius: 12px;
    margin: 16px 0;
    font-size: 13.5px;
    color: var(--v2-text-muted);
    line-height: 1.5;
}
body.register #buddypress .bp-privacy-options input[type=checkbox],
body.register #buddypress .agree-terms input[type=checkbox] {
    margin-right: 8px !important;
    accent-color: var(--v2-gold-deep) !important;
}

/* Already-have-account link (we add via custom or surface BP's existing link) */
body.register #buddypress .login-link,
body.register #buddypress p.login-link {
    text-align: center !important;
    margin: 22px 0 0 !important;
    font-size: 13.5px !important;
    color: var(--v2-text-muted) !important;
}
body.register #buddypress .login-link a,
body.register #buddypress p.login-link a {
    color: var(--v2-navy-deep) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}
body.register #buddypress .login-link a:hover {
    color: var(--v2-gold-deep) !important;
    text-decoration: underline !important;
}

/* BP messages (success/error banners) */
body.register #buddypress #message,
body.register #buddypress div.message,
body.activate #buddypress #message,
body.activate #buddypress div.message {
    background: rgba(22,163,74,.08) !important;
    color: #15803D !important;
    border: 1px solid rgba(22,163,74,.2) !important;
    border-radius: 11px !important;
    padding: 12px 16px !important;
    margin-bottom: 20px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}
body.register #buddypress #message.error,
body.register #buddypress div.message.error,
body.register #buddypress div.error,
body.activate #buddypress #message.error,
body.activate #buddypress div.message.error,
body.activate #buddypress div.error {
    background: rgba(220,38,38,.08) !important;
    color: #B91C1C !important;
    border-color: rgba(220,38,38,.2) !important;
}


/* ───────────────────────────────────────────────────────────────────
   09. ACTIVATE PAGE (/activate/)
   BuddyPress account activation — single field + submit.
   ─────────────────────────────────────────────────────────────────── */

body.activate #buddypress {
    max-width: 460px !important;
    margin: 60px auto !important;
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 36px 32px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 8px 32px rgba(11,30,63,.06) !important;
    text-align: center !important;
    box-sizing: border-box !important;
}
body.activate #buddypress::before {
    content: 'Activate your account';
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 800;
    color: var(--v2-navy-deep);
    letter-spacing: -.02em;
    margin-bottom: 8px;
    line-height: 1.2;
}
body.activate #buddypress p {
    color: var(--v2-text-muted) !important;
    font-size: 14.5px !important;
    line-height: 1.6 !important;
    margin: 0 0 22px !important;
}
body.activate #buddypress label {
    text-align: left !important;
}
body.activate #buddypress .submit {
    margin-top: 22px !important;
    text-align: center !important;
}


/* ───────────────────────────────────────────────────────────────────
   10. LOGIN PAGE (wp-login.php)
   WordPress default login template. CSS must be enqueued via
   login_enqueue_scripts in a small PHP hook — see deploy notes.
   Targets WP's body.login + #loginform.
   ─────────────────────────────────────────────────────────────────── */

body.login {
    background: var(--v2-bg) !important;
    font-family: 'Inter', sans-serif !important;
}
body.login #login {
    width: 380px !important;
    padding: 56px 0 32px !important;
}

/* WP logo area at the top */
body.login h1 a {
    background-image: none !important;
    width: auto !important;
    height: auto !important;
    text-indent: 0 !important;
    color: var(--v2-gold) !important;
    background: var(--v2-navy-deep) !important;
    padding: 11px 22px !important;
    border-radius: 10px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-decoration: none !important;
    display: inline-block !important;
    margin-bottom: 8px !important;
}
body.login h1 a::after {
    content: 'CEO HUB';
}

/* Login form card */
body.login #loginform,
body.login #lostpasswordform,
body.login #registerform {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 32px 30px 26px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 8px 32px rgba(11,30,63,.06) !important;
    margin-top: 12px !important;
    overflow: visible !important;
}

body.login #loginform p,
body.login #lostpasswordform p,
body.login #registerform p {
    margin: 0 0 16px !important;
}
body.login #loginform label,
body.login #lostpasswordform label,
body.login #registerform label {
    color: var(--v2-navy-deep) !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    margin-bottom: 7px !important;
    display: block !important;
    line-height: 1.4 !important;
}

body.login #loginform input[type=text],
body.login #loginform input[type=password],
body.login #loginform input[type=email],
body.login #lostpasswordform input[type=text],
body.login #lostpasswordform input[type=email],
body.login #registerform input[type=text],
body.login #registerform input[type=email] {
    width: 100% !important;
    box-sizing: border-box !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    color: var(--v2-text) !important;
    background: var(--v2-surface) !important;
    border: 1.5px solid var(--v2-border) !important;
    border-radius: 11px !important;
    padding: 12px 14px !important;
    margin: 0 !important;
    box-shadow: none !important;
    line-height: 1.4 !important;
    height: auto !important;
    min-height: 0 !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
}
body.login #loginform input:focus,
body.login #lostpasswordform input:focus,
body.login #registerform input:focus {
    outline: none !important;
    border-color: var(--v2-gold) !important;
    box-shadow: 0 0 0 4px rgba(247,201,72,.18) !important;
}

/* Submit button */
body.login .submit input[type=submit],
body.login p.submit input[type=submit],
body.login #wp-submit {
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
    border: none !important;
    border-radius: 11px !important;
    padding: 12px 24px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    min-height: 44px !important;
    width: 100% !important;
    cursor: pointer !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background .15s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    line-height: 1 !important;
    margin-top: 4px !important;
    letter-spacing: -.005em !important;
}
body.login .submit input[type=submit]:hover,
body.login #wp-submit:hover {
    background: var(--v2-gold-deep) !important;
}

/* "Remember me" + lost password row */
body.login .forgetmenot {
    margin-top: 14px !important;
    margin-bottom: 16px !important;
}
body.login .forgetmenot label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: var(--v2-text-muted) !important;
    margin: 0 !important;
}
body.login .forgetmenot input[type=checkbox] {
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    accent-color: var(--v2-gold-deep) !important;
}

/* Below-form links (lost password, register) */
body.login #nav,
body.login #backtoblog {
    text-align: center !important;
    padding: 12px 0 !important;
    margin: 0 !important;
}
body.login #nav a,
body.login #backtoblog a {
    color: var(--v2-text-muted) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}
body.login #nav a:hover,
body.login #backtoblog a:hover {
    color: var(--v2-navy-deep) !important;
    text-decoration: underline !important;
}
body.login #nav { padding-top: 18px !important; }

/* Error message */
body.login .message,
body.login #login_error,
body.login .notice {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-left: 4px solid var(--v2-gold) !important;
    border-radius: 11px !important;
    padding: 13px 16px !important;
    color: var(--v2-text) !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
    margin-bottom: 16px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
}
body.login #login_error {
    border-left-color: var(--v2-danger) !important;
}

/* Language switcher at bottom */
body.login .language-switcher {
    margin-top: 16px !important;
    text-align: center !important;
}


/* ───────────────────────────────────────────────────────────────────
   11. MEMBERSHIP LEVELS (/membership-levels/)
   PMPro pricing page — convert into card grid.
   ─────────────────────────────────────────────────────────────────── */

body.pmpro-levels .pmpro_lp,
body.pmpro-levels .pmpro-page-section {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 24px 24px 64px !important;
    box-sizing: border-box !important;
}

/* Hero above the level cards */
body.pmpro-levels .ceohub-page__hero {
    margin-bottom: 40px;
}

/* Card grid */
body.pmpro-levels .pmpro_levels,
body.pmpro-levels .pmpro_level_cards,
body.pmpro-levels table.pmpro_levels,
body.pmpro-levels .pmpro_pricing_card_grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 22px !important;
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Hide PMPro table chrome */
body.pmpro-levels table.pmpro_levels thead,
body.pmpro-levels table.pmpro_levels tbody {
    display: contents !important;
}
body.pmpro-levels table.pmpro_levels tr {
    display: block !important;
}
body.pmpro-levels table.pmpro_levels td,
body.pmpro-levels table.pmpro_levels th {
    display: block !important;
    padding: 0 !important;
    border: none !important;
    text-align: left !important;
}

/* Individual level card */
body.pmpro-levels .pmpro_level,
body.pmpro-levels .pmpro_card,
body.pmpro-levels .pmpro_pricing_card,
body.pmpro-levels table.pmpro_levels tr {
    background: var(--v2-surface) !important;
    border: 1.5px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 30px 28px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 6px 24px rgba(11,30,63,.05) !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}
body.pmpro-levels .pmpro_level:hover,
body.pmpro-levels .pmpro_card:hover,
body.pmpro-levels .pmpro_pricing_card:hover,
body.pmpro-levels table.pmpro_levels tr:hover {
    transform: translateY(-3px);
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 16px 40px rgba(11,30,63,.12) !important;
    border-color: var(--v2-gold) !important;
}

/* "Most popular" badge — use .pmpro-featured or our wrap */
body.pmpro-levels .pmpro_level.pmpro-featured::before,
body.pmpro-levels .pmpro_card.pmpro-featured::before {
    content: 'MOST POPULAR';
    display: block;
    background: var(--v2-gold);
    color: var(--v2-navy-deep);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    padding: 5px 10px;
    border-radius: 6px;
    position: absolute;
    top: 18px;
    right: 18px;
}

/* Level name */
body.pmpro-levels .pmpro_level h3,
body.pmpro-levels .pmpro_card h3,
body.pmpro-levels .pmpro_level_title,
body.pmpro-levels table.pmpro_levels td.pmpro_level_name {
    font-family: 'Inter', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--v2-navy-deep) !important;
    margin: 0 0 8px !important;
    letter-spacing: -.015em !important;
    line-height: 1.2 !important;
}

/* Price */
body.pmpro-levels .pmpro_level .pmpro_price,
body.pmpro-levels .pmpro_card .pmpro_price,
body.pmpro-levels .pmpro_level_cost,
body.pmpro-levels table.pmpro_levels td.pmpro_level_cost {
    font-family: 'Inter', sans-serif !important;
    font-size: 36px !important;
    font-weight: 800 !important;
    color: var(--v2-navy-deep) !important;
    margin: 16px 0 6px !important;
    line-height: 1 !important;
    letter-spacing: -.025em !important;
}
body.pmpro-levels .pmpro_level .pmpro_price small,
body.pmpro-levels .pmpro_card .pmpro_price small {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--v2-text-muted) !important;
    letter-spacing: 0 !important;
}

/* Description */
body.pmpro-levels .pmpro_level .pmpro_level_description,
body.pmpro-levels .pmpro_card .pmpro_card_description,
body.pmpro-levels table.pmpro_levels td.pmpro_level_description {
    color: var(--v2-text-muted) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin: 8px 0 18px !important;
}

/* Features list */
body.pmpro-levels .pmpro_level ul,
body.pmpro-levels .pmpro_card ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 16px 0 22px !important;
    flex: 1 1 auto;
}
body.pmpro-levels .pmpro_level ul li,
body.pmpro-levels .pmpro_card ul li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 7px 0 !important;
    font-size: 14px !important;
    color: var(--v2-text) !important;
    line-height: 1.5 !important;
}
body.pmpro-levels .pmpro_level ul li::before,
body.pmpro-levels .pmpro_card ul li::before {
    content: '✓';
    color: var(--v2-success);
    font-weight: 700;
    flex: 0 0 auto;
    width: 18px;
    text-align: center;
}

/* CTA button on each card */
body.pmpro-levels .pmpro_level .pmpro_btn,
body.pmpro-levels .pmpro_card .pmpro_btn,
body.pmpro-levels .pmpro_btn-select,
body.pmpro-levels a.pmpro_btn-select,
body.pmpro-levels table.pmpro_levels td.pmpro_level_select a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 13px 22px !important;
    border-radius: 11px !important;
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer !important;
    transition: background .15s ease, transform .1s ease !important;
    margin-top: auto !important;
    box-shadow: none !important;
    text-transform: none !important;
    line-height: 1 !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
}
body.pmpro-levels .pmpro_level .pmpro_btn:hover,
body.pmpro-levels .pmpro_card .pmpro_btn:hover,
body.pmpro-levels .pmpro_btn-select:hover,
body.pmpro-levels a.pmpro_btn-select:hover {
    background: var(--v2-gold-deep) !important;
    color: var(--v2-navy-deep) !important;
}


/* ───────────────────────────────────────────────────────────────────
   12. MEMBERSHIP CHECKOUT (/membership-checkout/)
   PMPro checkout — single column with section cards.
   ─────────────────────────────────────────────────────────────────── */

body.pmpro-checkout .pmpro_lp,
body.pmpro-checkout #pmpro_account-fields,
body.pmpro-checkout .pmpro_form_wrapper {
    max-width: 720px !important;
    margin: 0 auto !important;
    padding: 24px 24px 64px !important;
    box-sizing: border-box !important;
}

/* Each fieldset becomes its own card */
body.pmpro-checkout #pmpro_form fieldset,
body.pmpro-checkout .pmpro_form fieldset,
body.pmpro-checkout fieldset.pmpro_checkout {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 16px !important;
    padding: 26px 28px !important;
    margin: 0 0 20px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
}
body.pmpro-checkout #pmpro_form legend,
body.pmpro-checkout .pmpro_form legend,
body.pmpro-checkout fieldset.pmpro_checkout legend {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    padding: 0 0 16px !important;
    margin: 0 0 18px !important;
    border-bottom: 1px solid var(--v2-border) !important;
    width: 100% !important;
    letter-spacing: -.01em !important;
}

body.pmpro-checkout #pmpro_form fieldset .pmpro_checkout-field {
    margin-bottom: 16px !important;
}

/* Order summary / total card */
body.pmpro-checkout .pmpro_level_cost,
body.pmpro-checkout .pmpro_checkout-total {
    background: var(--v2-navy-deep) !important;
    color: #fff !important;
    border-radius: 16px !important;
    padding: 20px 24px !important;
    margin: 0 0 20px !important;
    font-family: 'Inter', sans-serif !important;
}
body.pmpro-checkout .pmpro_checkout-total .pmpro_total,
body.pmpro-checkout .pmpro_level_cost .pmpro_total {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--v2-gold) !important;
}

/* Submit row */
body.pmpro-checkout .pmpro_submit,
body.pmpro-checkout .pmpro_btn-submit-checkout {
    margin-top: 20px !important;
    padding: 20px 0 0 !important;
    border-top: 1px solid var(--v2-border) !important;
    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 10px !important;
}


/* ───────────────────────────────────────────────────────────────────
   13. MEMBERSHIP ACCOUNT (/membership-account/)
   PMPro account dashboard — tiles and order list.
   ─────────────────────────────────────────────────────────────────── */

body.pmpro-account .pmpro_account,
body.pmpro-account .pmpro_lp {
    max-width: 980px !important;
    margin: 0 auto !important;
    padding: 24px 24px 64px !important;
}

body.pmpro-account .pmpro_account-membership,
body.pmpro-account .pmpro_account-profile,
body.pmpro-account .pmpro_account-invoices,
body.pmpro-account .pmpro_account-links,
body.pmpro-account .pmpro_account-section {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 16px !important;
    padding: 24px 26px !important;
    margin: 0 0 18px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
}

body.pmpro-account .pmpro_account h2,
body.pmpro-account .pmpro_account h3 {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    margin: 0 0 14px !important;
    letter-spacing: -.01em !important;
}


/* ───────────────────────────────────────────────────────────────────
   14. GROUP CREATE WIZARD (/groups/create/step/*)
   BuddyPress group creation — Mode B (app-shell). Falls back to
   Mode A styling if app-shell hooks aren't yet wired up.
   ─────────────────────────────────────────────────────────────────── */

body.create-group,
body.directory.groups.create-group {
    background: var(--v2-bg) !important;
}

/* The BP create-group form */
body.create-group #buddypress {
    max-width: 920px !important;
    margin: 0 auto !important;
    padding: 24px 0 !important;
}

/* Page title and subtitle (BP renders heading; we restyle it) */
body.create-group #buddypress > h3:first-of-type,
body.create-group #buddypress h2.bp-screen-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--v2-navy-deep) !important;
    letter-spacing: -.02em !important;
    margin: 0 0 14px !important;
    line-height: 1.2 !important;
}

/* Step list */
body.create-group .item-list-tabs#group-create-tabs ul,
body.create-group #group-create-tabs ul,
body.create-group ul.creation-step-section,
body.create-group .group-create-buttons {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 16px !important;
    padding: 14px 14px !important;
    margin: 0 0 22px !important;
    list-style: none !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}
body.create-group #group-create-tabs ul li,
body.create-group ul.creation-step-section li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
}
body.create-group #group-create-tabs ul li a,
body.create-group ul.creation-step-section li a,
body.create-group ul.creation-step-section li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 9px 12px !important;
    border-radius: 11px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--v2-text-soft) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    background: transparent !important;
    border: none !important;
    transition: background .15s ease, color .15s ease !important;
    text-align: center !important;
}
body.create-group #group-create-tabs ul li.current a,
body.create-group #group-create-tabs ul li.selected a,
body.create-group ul.creation-step-section li.current a,
body.create-group ul.creation-step-section li.current span {
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
}
body.create-group #group-create-tabs ul li a:hover,
body.create-group ul.creation-step-section li a:hover {
    background: var(--v2-surface-2) !important;
    color: var(--v2-navy-deep) !important;
}

/* The form content area becomes a card */
body.create-group form#create-group-form,
body.create-group form[id*="create-group"],
body.create-group #buddypress .item-body {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 28px 30px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
    box-sizing: border-box !important;
}
body.create-group form .editfield {
    margin-bottom: 18px !important;
}
body.create-group form label {
    display: block !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--v2-navy-deep) !important;
    margin-bottom: 7px !important;
}
body.create-group form input[type=text],
body.create-group form input[type=url],
body.create-group form textarea,
body.create-group form select {
    width: 100% !important;
    box-sizing: border-box !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    color: var(--v2-text) !important;
    background: var(--v2-surface) !important;
    border: 1.5px solid var(--v2-border) !important;
    border-radius: 11px !important;
    padding: 12px 14px !important;
    line-height: 1.4 !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
body.create-group form textarea { min-height: 120px !important; resize: vertical !important; }
body.create-group form input:focus,
body.create-group form textarea:focus,
body.create-group form select:focus {
    outline: none !important;
    border-color: var(--v2-gold) !important;
    box-shadow: 0 0 0 4px rgba(247,201,72,.18) !important;
}

/* Privacy radio options (group settings step) */
body.create-group .radio,
body.create-group .group-settings input[type=radio] + label {
    display: block !important;
    margin-bottom: 10px !important;
}

/* Step nav buttons (Back / Continue) */
body.create-group .submit,
body.create-group .group-create-buttons + .submit {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 24px !important;
    padding-top: 22px !important;
    border-top: 1px solid var(--v2-border) !important;
}
body.create-group .submit input[type=submit],
body.create-group .submit button[type=submit],
body.create-group input#group-creation-next,
body.create-group input#group-creation-create {
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
    border: none !important;
    border-radius: 11px !important;
    padding: 12px 24px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background .15s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    min-height: 44px !important;
    box-shadow: none !important;
    line-height: 1 !important;
}
body.create-group .submit input[type=submit]:hover,
body.create-group input#group-creation-next:hover {
    background: var(--v2-gold-deep) !important;
}
body.create-group input#group-creation-previous {
    background: var(--v2-surface) !important;
    color: var(--v2-navy-deep) !important;
    border: 1.5px solid var(--v2-border) !important;
    border-radius: 11px !important;
    padding: 12px 22px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    min-height: 44px !important;
    line-height: 1 !important;
}
body.create-group input#group-creation-previous:hover {
    background: var(--v2-surface-2) !important;
}


/* ───────────────────────────────────────────────────────────────────
   15. GROUP ADMIN (/groups/{slug}/admin/*)
   Group manage screens — settings, members, avatar, etc.
   ─────────────────────────────────────────────────────────────────── */

body.group-admin #buddypress .item-list-tabs ul,
body.group-admin .item-list-tabs ul {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 14px !important;
    padding: 8px !important;
    list-style: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    margin: 0 0 20px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}
body.group-admin .item-list-tabs ul li {
    margin: 0 !important;
    padding: 0 !important;
}
body.group-admin .item-list-tabs ul li a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 8px 14px !important;
    border-radius: 9px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--v2-text-muted) !important;
    text-decoration: none !important;
    transition: background .15s ease, color .15s ease !important;
}
body.group-admin .item-list-tabs ul li.current a,
body.group-admin .item-list-tabs ul li.selected a {
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
}
body.group-admin .item-list-tabs ul li a:hover {
    background: var(--v2-surface-2) !important;
    color: var(--v2-navy-deep) !important;
}

body.group-admin form,
body.group-admin .group-manage-form {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    padding: 26px 28px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
}


/* ───────────────────────────────────────────────────────────────────
   16. SITEWIDE ACTIVITY (/activity/)
   Activity stream — when shell IS open (logged in), as feed.
   ─────────────────────────────────────────────────────────────────── */

body.activity #buddypress #activity-stream,
body.activity-directory #buddypress #activity-stream {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.activity #buddypress ul.activity-list,
body.activity-directory #buddypress ul.activity-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

body.activity #buddypress ul.activity-list > li.activity-item,
body.activity-directory #buddypress ul.activity-list > li.activity-item {
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 16px !important;
    padding: 20px 22px !important;
    margin: 0 !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04) !important;
    list-style: none !important;
    display: flex !important;
    gap: 14px !important;
    align-items: flex-start !important;
}

body.activity #buddypress .activity-avatar,
body.activity-directory #buddypress .activity-avatar {
    flex: 0 0 auto !important;
    width: 46px !important;
}
body.activity #buddypress .activity-avatar img,
body.activity-directory #buddypress .activity-avatar img {
    width: 46px !important;
    height: 46px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid var(--v2-gold) !important;
    background: var(--v2-navy-deep) !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.activity #buddypress .activity-content,
body.activity-directory #buddypress .activity-content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}
body.activity #buddypress .activity-header,
body.activity-directory #buddypress .activity-header {
    font-size: 14px !important;
    color: var(--v2-text) !important;
    margin: 0 0 6px !important;
    line-height: 1.5 !important;
}
body.activity #buddypress .activity-header a,
body.activity-directory #buddypress .activity-header a {
    color: var(--v2-navy-deep) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}
body.activity #buddypress .activity-header a:hover {
    color: var(--v2-gold-deep) !important;
}
body.activity #buddypress .activity-meta-action,
body.activity-directory #buddypress .activity-meta-action,
body.activity #buddypress .time-since,
body.activity-directory #buddypress .time-since {
    font-size: 12.5px !important;
    color: var(--v2-text-muted) !important;
    margin-top: 4px !important;
}
body.activity #buddypress .activity-inner,
body.activity-directory #buddypress .activity-inner {
    color: var(--v2-text) !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    margin: 8px 0 0 !important;
}

/* Activity action buttons (comment, favorite, etc.) */
body.activity #buddypress .activity-meta,
body.activity-directory #buddypress .activity-meta {
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid var(--v2-border) !important;
    display: flex !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}
body.activity #buddypress .activity-meta a,
body.activity-directory #buddypress .activity-meta a {
    font-size: 13px !important;
    color: var(--v2-text-muted) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 5px 10px !important;
    border-radius: 8px !important;
    background: transparent !important;
    border: none !important;
    transition: background .15s ease, color .15s ease !important;
}
body.activity #buddypress .activity-meta a:hover,
body.activity-directory #buddypress .activity-meta a:hover {
    background: var(--v2-surface-2) !important;
    color: var(--v2-navy-deep) !important;
}


/* ───────────────────────────────────────────────────────────────────
   17. RESPONSIVE — MOBILE + TABLET BREAKPOINTS
   ─────────────────────────────────────────────────────────────────── */

/* Tablet — collapse the two-column layout */
@media (max-width: 980px) {
    .ceohub-page__layout {
        grid-template-columns: 1fr;
    }
    .ceohub-aside {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .ceohub-aside > * {
        flex: 1 1 280px;
    }
    .ceohub-page__inner {
        padding: 36px 22px 60px;
    }
    .ceohub-page__hero h1 { font-size: 30px; }

    body.pmpro-levels .pmpro_lp {
        padding: 20px 20px 60px !important;
    }
}

/* Mobile — single-column, comfortable touch targets */
@media (max-width: 720px) {
    .ceohub-page__inner {
        padding: 24px 16px 56px;
    }
    .ceohub-page__inner--narrow,
    .ceohub-page__inner--medium {
        padding: 24px 16px 56px;
    }

    .ceohub-page__hero { margin-bottom: 28px; }
    .ceohub-page__hero h1 { font-size: 26px; }
    .ceohub-page__hero p { font-size: 14.5px; }

    .ceohub-card {
        padding: 22px 20px;
        border-radius: 16px;
    }
    .ceohub-card__head {
        gap: 12px;
        margin-bottom: 20px;
        padding-bottom: 18px;
    }
    .ceohub-card__head-icon {
        width: 38px; height: 38px;
        border-radius: 10px;
        font-size: 18px;
    }
    .ceohub-card__head h2 { font-size: 17px; }
    .ceohub-card__head small { font-size: 12.5px; }
    .ceohub-card__divider { margin: 18px -20px; }
    .ceohub-card__foot {
        flex-direction: column-reverse;
        align-items: stretch;
        gap: 10px;
    }
    .ceohub-card__foot > * { width: 100%; justify-content: center; }

    /* Inputs: 16px to prevent iOS zoom on focus */
    .ceohub-field input[type=text],
    .ceohub-field input[type=email],
    .ceohub-field input[type=password],
    .ceohub-field input[type=tel],
    .ceohub-field input[type=number],
    .ceohub-field select,
    .ceohub-field textarea,
    body.register #buddypress input[type=text],
    body.register #buddypress input[type=email],
    body.register #buddypress input[type=password],
    body.register #buddypress select,
    body.register #buddypress textarea,
    body.activate #buddypress input,
    body.login #loginform input,
    body.login #lostpasswordform input,
    body.login #registerform input,
    body.pmpro-checkout .pmpro_form input[type=text],
    body.pmpro-checkout .pmpro_form input[type=email],
    body.pmpro-checkout .pmpro_form input[type=password],
    body.pmpro-checkout .pmpro_form select,
    body.create-group form input[type=text],
    body.create-group form input[type=url],
    body.create-group form textarea,
    body.create-group form select {
        font-size: 16px !important;
        padding: 13px 14px !important;
    }

    /* Buttons */
    .btn-primary, .btn-secondary, .btn-ghost, .btn-danger,
    body.register #buddypress #signup_submit,
    body.register #buddypress input[type=submit],
    body.activate #buddypress input[type=submit],
    body.pmpro-checkout .pmpro_form input[type=submit],
    body.create-group input#group-creation-next,
    body.create-group input#group-creation-previous {
        padding: 14px 22px !important;
        font-size: 15px !important;
        min-height: 48px !important;
        width: 100% !important;
        justify-content: center !important;
    }

    /* Step indicator on mobile — keep horizontal scroll, hide connectors */
    .ceohub-steps {
        padding: 12px 6px;
        gap: 6px;
    }
    .ceohub-step {
        padding: 6px 10px;
        font-size: 12px;
        flex: 0 0 auto;
    }
    .ceohub-step__connector { display: none; }
    .ceohub-step__num {
        width: 26px; height: 26px;
        font-size: 12px;
    }
    .ceohub-step__label {
        display: none;
    }
    .ceohub-step.is-active .ceohub-step__label {
        display: inline;
        max-width: 100px;
    }

    /* Register / activate forms full-width */
    body.register #buddypress,
    body.activate #buddypress {
        padding: 26px 20px !important;
        border-radius: 16px !important;
        max-width: 100% !important;
        margin: 12px 0 !important;
    }
    body.register #buddypress::before,
    body.activate #buddypress::before {
        font-size: 22px !important;
    }
    body.register #buddypress .submit input[type=submit] {
        width: 100% !important;
        min-width: 0 !important;
    }

    /* Login form full-width */
    body.login #login {
        width: 100% !important;
        padding: 32px 18px 24px !important;
        box-sizing: border-box !important;
    }
    body.login #loginform,
    body.login #lostpasswordform,
    body.login #registerform {
        padding: 24px 22px !important;
        border-radius: 16px !important;
    }

    /* Membership levels — single column on mobile */
    body.pmpro-levels .pmpro_levels,
    body.pmpro-levels .pmpro_level_cards,
    body.pmpro-levels table.pmpro_levels,
    body.pmpro-levels .pmpro_pricing_card_grid {
        grid-template-columns: 1fr !important;
    }
    body.pmpro-levels .pmpro_level,
    body.pmpro-levels .pmpro_card,
    body.pmpro-levels .pmpro_pricing_card,
    body.pmpro-levels table.pmpro_levels tr {
        padding: 24px 22px !important;
    }
    body.pmpro-levels .pmpro_level .pmpro_price,
    body.pmpro-levels .pmpro_card .pmpro_price {
        font-size: 30px !important;
    }

    /* Membership checkout */
    body.pmpro-checkout .pmpro_lp,
    body.pmpro-checkout #pmpro_account-fields,
    body.pmpro-checkout .pmpro_form_wrapper {
        padding: 20px 16px 56px !important;
    }
    body.pmpro-checkout #pmpro_form fieldset,
    body.pmpro-checkout .pmpro_form fieldset {
        padding: 22px 20px !important;
        border-radius: 14px !important;
    }

    /* Group create */
    body.create-group form#create-group-form,
    body.create-group form[id*="create-group"],
    body.create-group #buddypress .item-body {
        padding: 22px 20px !important;
        border-radius: 16px !important;
    }
    body.create-group #group-create-tabs ul li a,
    body.create-group ul.creation-step-section li a,
    body.create-group ul.creation-step-section li span {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
    body.create-group .submit {
        flex-direction: column-reverse;
        gap: 10px;
    }
    body.create-group .submit > * {
        width: 100% !important;
        text-align: center !important;
    }

    /* Activity */
    body.activity #buddypress ul.activity-list > li.activity-item,
    body.activity-directory #buddypress ul.activity-list > li.activity-item {
        padding: 16px 18px !important;
        gap: 12px !important;
    }
    body.activity #buddypress .activity-avatar img,
    body.activity-directory #buddypress .activity-avatar img {
        width: 40px !important;
        height: 40px !important;
    }
    body.activity #buddypress .activity-meta {
        gap: 8px !important;
    }
}

/* Small mobile — final tightening */
@media (max-width: 540px) {
    .ceohub-page__hero h1 { font-size: 24px; }
    .ceohub-page__hero p { font-size: 14px; }
    .ceohub-card { padding: 20px 16px; }
    .ceohub-card__head h2 { font-size: 16px; }
    .ceohub-help { padding: 20px; }
    .ceohub-help h3 { font-size: 16px; }
    .ceohub-help p { font-size: 13px; }
    .ceohub-tips { padding: 16px 18px; }
    .ceohub-tips li { font-size: 13px; }

    .ceohub-crumb { font-size: 12px; gap: 4px; }

    body.register #buddypress,
    body.activate #buddypress {
        padding: 22px 16px !important;
    }
    body.register #buddypress::before,
    body.activate #buddypress::before {
        font-size: 20px !important;
    }

    body.login #loginform,
    body.login #lostpasswordform,
    body.login #registerform {
        padding: 20px 18px !important;
    }

    body.pmpro-levels .pmpro_level h3,
    body.pmpro-levels .pmpro_card h3 {
        font-size: 20px !important;
    }
    body.pmpro-levels .pmpro_level .pmpro_price,
    body.pmpro-levels .pmpro_card .pmpro_price {
        font-size: 28px !important;
    }
}


/* ───────────────────────────────────────────────────────────────────
   18. PRINT — for invoices, receipts, etc.
   ─────────────────────────────────────────────────────────────────── */

@media print {
    .ceohub-app-shell-v2 > .ceohub-v2-sidebar,
    .ceohub-v2-topbar,
    .ceohub-page__hero-actions,
    .ceohub-card__foot,
    .ceohub-aside { display: none !important; }
    .ceohub-card { box-shadow: none !important; border: 1px solid #ccc !important; }
    body { background: #fff !important; }
}

/* ═══════════════════════════════════════════════════════════════════
   END OF ORPHAN PAGE DESIGN SYSTEM
   ═══════════════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════════════════════════════════
   ▓▓▓ HORIZONTAL OVERFLOW SAFETY NET ▓▓▓
   Final defensive layer to keep ANY content inside .ceohub-v2-main__content
   from forcing the column wider than the viewport. Targets the common
   culprits: auto-fit/auto-fill grids with tracks too wide for narrow
   viewports, wide tables, large images, embedded plugin layouts, flex
   rows that refuse to wrap.

   Together with the min-width:0 fix on .ceohub-v2-main and
   .ceohub-v2-main__content above, this guarantees the sidebar+content
   layout never spills out of the visible area on any screen size.
   ═══════════════════════════════════════════════════════════════════ */

/* Any direct child of the content area must respect parent width */
.ceohub-v2-main__content > * {
    max-width: 100%;
    box-sizing: border-box;
    min-width: 0;
}

/* Grid layouts inside content: ensure auto-fit/auto-fill tracks can
   shrink below their minmax minimum on narrow viewports. */
.ceohub-v2-main__content [class*="grid"],
.ceohub-v2-main__content [class*="cards"],
.ceohub-v2-main__content .ceohub-members-grid,
.ceohub-v2-main__content .ceohub-groups-grid,
.ceohub-v2-main__content .ceohub-dash-row1,
.ceohub-v2-main__content .ceohub-dash-services,
.ceohub-v2-main__content .ceohub-events-grid,
.ceohub-v2-main__content .ceohub-courses-grid {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
.ceohub-v2-main__content [class*="grid"] > *,
.ceohub-v2-main__content [class*="cards"] > * {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* Wide tables get their own horizontal scroll inside the column instead
   of pushing the layout wider. */
.ceohub-v2-main__content table {
    max-width: 100%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Images, videos, iframes — never wider than their container */
.ceohub-v2-main__content img,
.ceohub-v2-main__content video,
.ceohub-v2-main__content iframe,
.ceohub-v2-main__content embed,
.ceohub-v2-main__content object {
    max-width: 100%;
    height: auto;
}

/* Pre-formatted / code blocks — scroll their own overflow */
.ceohub-v2-main__content pre,
.ceohub-v2-main__content code {
    max-width: 100%;
    overflow-x: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* Long unbroken strings (URLs, IDs) — force them to break */
.ceohub-v2-main__content p,
.ceohub-v2-main__content li,
.ceohub-v2-main__content a {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Plugin-rendered course / lesson grids that bypass our class names */
.ceohub-v2-main__content .ld-course-list,
.ceohub-v2-main__content .ld-course-list-items,
.ceohub-v2-main__content .bp-list,
.ceohub-v2-main__content #buddypress,
.ceohub-v2-main__content #buddypress > *,
.ceohub-v2-main__content .learnpress-courses,
.ceohub-v2-main__content .learn-press-courses,
.ceohub-v2-main__content .tutor-courses-wrap {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Same protection for the legacy main content wrapper used by some pages */
.ceohub-v2-main__content .ceohub-courses-archive-v2,
.ceohub-v2-main__content .ceohub-courses-archive-v2 > * {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* Mobile: tighten content padding and force every internal grid to single
   column at narrow widths so cards never get squeezed into unreadable
   strips. */
@media (max-width: 720px) {
    .ceohub-v2-main__content {
        padding: 16px;
    }
    .ceohub-v2-main__content .ceohub-dash-row1 {
        grid-template-columns: 1fr !important;
    }
    .ceohub-v2-main__content [class*="grid"]:not(.ceohub-steps) {
        grid-template-columns: 1fr !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════
   ▓▓▓ SINGLE CPT PAGES (Course / Event / Freelancer / Job detail) ▓▓▓
   These pages were rendering broken because the Alliance theme's
   single-post template injects its own top panel, sidebar widget
   area, and footer — which conflicted with our global chrome and
   pushed the course content off to the side.

   This section:
   • Hides Alliance theme decorations on single CPT detail pages
   • Forces the content area to a centered, max-width card
   • Applies our card / typography system to the post content
   • Targets all known course / event / freelancer / job CPT slugs
     across the common plugins (LearnDash, LearnPress, MasterStudy,
     Tutor LMS, The Events Calendar, MEC, WP Job Manager, etc.)
   ═══════════════════════════════════════════════════════════════════ */

/* — Common body-class targets for single CPT pages — */
body.single-course,
body.single-courses,
body.single-sfwd-courses,
body.single-lp_course,
body.single-stm-course,
body.single-tutor_courses,
body[class*="single-course-"],
body.single-event,
body.single-events,
body.single-tribe_events,
body.single-mec-events,
body.single-freelancer,
body.single-freelancers,
body.single-stm-freelancer,
body.single-noo_freelancer,
body.single-job,
body.single-jobs,
body.single-job_listing,
body.single-stm-job,
body.single-stm_job {
    background: var(--v2-bg) !important;
}

/* Hide every Alliance theme decoration on single CPT pages */
body.single-course .top_panel_wrap,
body.single-course .top_panel_above,
body.single-course .breadcrumbs,
body.single-course .post_meta,
body.single-course aside.sidebar,
body.single-course .sidebar_wrap,
body.single-course .sidebar_outer,
body.single-course .widget_area,
body.single-course .related_wrap,
body.single-course .comments_wrap,
body.single-course .post_navigation,
body.single-course .footer_wrap,
body.single-course footer.footer_wrap,
body.single-courses .top_panel_wrap,
body.single-courses .top_panel_above,
body.single-courses .breadcrumbs,
body.single-courses aside.sidebar,
body.single-courses .sidebar_wrap,
body.single-courses .sidebar_outer,
body.single-courses .widget_area,
body.single-courses .footer_wrap,
body.single-sfwd-courses .top_panel_wrap,
body.single-sfwd-courses .breadcrumbs,
body.single-sfwd-courses aside.sidebar,
body.single-sfwd-courses .sidebar_wrap,
body.single-sfwd-courses .footer_wrap,
body.single-lp_course .top_panel_wrap,
body.single-lp_course .breadcrumbs,
body.single-lp_course aside.sidebar,
body.single-lp_course .sidebar_wrap,
body.single-lp_course .footer_wrap,
body.single-stm-course .top_panel_wrap,
body.single-stm-course aside.sidebar,
body.single-stm-course .sidebar_wrap,
body.single-stm-course .footer_wrap,
body.single-tutor_courses .top_panel_wrap,
body.single-tutor_courses aside.sidebar,
body.single-tutor_courses .sidebar_wrap,
body.single-tutor_courses .footer_wrap,
body[class*="single-course"] .top_panel_wrap,
body[class*="single-course"] .top_panel_above,
body[class*="single-course"] .breadcrumbs,
body[class*="single-course"] .post_meta,
body[class*="single-course"] aside.sidebar,
body[class*="single-course"] .sidebar_wrap,
body[class*="single-course"] .sidebar_outer,
body[class*="single-course"] .widget_area,
body[class*="single-course"] .footer_wrap,
body[class*="single-event"] .top_panel_wrap,
body[class*="single-event"] .top_panel_above,
body[class*="single-event"] .breadcrumbs,
body[class*="single-event"] aside.sidebar,
body[class*="single-event"] .sidebar_wrap,
body[class*="single-event"] .sidebar_outer,
body[class*="single-event"] .widget_area,
body[class*="single-event"] .footer_wrap,
body[class*="single-freelancer"] .top_panel_wrap,
body[class*="single-freelancer"] .breadcrumbs,
body[class*="single-freelancer"] aside.sidebar,
body[class*="single-freelancer"] .sidebar_wrap,
body[class*="single-freelancer"] .widget_area,
body[class*="single-freelancer"] .footer_wrap,
body[class*="single-job"] .top_panel_wrap,
body[class*="single-job"] .breadcrumbs,
body[class*="single-job"] aside.sidebar,
body[class*="single-job"] .sidebar_wrap,
body[class*="single-job"] .widget_area,
body[class*="single-job"] .footer_wrap {
    display: none !important;
}

/* — Force the content wrapper full-width on single CPT pages — */
body[class*="single-course"] .page_content_wrap,
body[class*="single-course"] .content_wrap,
body[class*="single-course"] .content,
body[class*="single-event"] .page_content_wrap,
body[class*="single-event"] .content_wrap,
body[class*="single-event"] .content,
body[class*="single-freelancer"] .page_content_wrap,
body[class*="single-freelancer"] .content_wrap,
body[class*="single-freelancer"] .content,
body[class*="single-job"] .page_content_wrap,
body[class*="single-job"] .content_wrap,
body[class*="single-job"] .content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    float: none !important;
    display: block !important;
    box-shadow: none !important;
    border: none !important;
}

/* — Center the article inside a clean column — */
body[class*="single-course"] article.post,
body[class*="single-course"] .ceohub-page > article,
body[class*="single-course"] main > article,
body[class*="single-event"] article.post,
body[class*="single-event"] .ceohub-page > article,
body[class*="single-freelancer"] article.post,
body[class*="single-freelancer"] .ceohub-page > article,
body[class*="single-job"] article.post,
body[class*="single-job"] .ceohub-page > article {
    max-width: 920px !important;
    margin: 40px auto !important;
    padding: 40px 44px !important;
    background: var(--v2-surface) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 18px !important;
    box-shadow: 0 1px 2px rgba(11,30,63,.04), 0 8px 32px rgba(11,30,63,.06) !important;
    box-sizing: border-box !important;
    width: auto !important;
    float: none !important;
    display: block !important;
}

/* — Hide the duplicate Alliance theme post header (Alliance often
     renders post title + meta in its own wrapper that duplicates our
     page header). Keep only the article's own h1. — */
body[class*="single-course"] article.post > .post_header_wrap,
body[class*="single-event"] article.post > .post_header_wrap,
body[class*="single-freelancer"] article.post > .post_header_wrap,
body[class*="single-job"] article.post > .post_header_wrap {
    margin-bottom: 24px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid var(--v2-border) !important;
}

/* — Style the post title (h1) and content typography — */
body[class*="single-course"] article.post h1,
body[class*="single-course"] article.post .post_title,
body[class*="single-event"] article.post h1,
body[class*="single-event"] article.post .post_title,
body[class*="single-freelancer"] article.post h1,
body[class*="single-freelancer"] article.post .post_title,
body[class*="single-job"] article.post h1,
body[class*="single-job"] article.post .post_title {
    font-family: 'Inter', sans-serif !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: var(--v2-navy-deep) !important;
    margin: 0 0 16px !important;
    letter-spacing: -.02em !important;
    line-height: 1.15 !important;
}

body[class*="single-course"] article.post h2,
body[class*="single-event"] article.post h2,
body[class*="single-freelancer"] article.post h2,
body[class*="single-job"] article.post h2 {
    font-family: 'Inter', sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    margin: 28px 0 14px !important;
    letter-spacing: -.015em !important;
    line-height: 1.25 !important;
}

body[class*="single-course"] article.post h3,
body[class*="single-event"] article.post h3,
body[class*="single-freelancer"] article.post h3,
body[class*="single-job"] article.post h3 {
    font-family: 'Inter', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    margin: 22px 0 12px !important;
    line-height: 1.3 !important;
}

body[class*="single-course"] article.post p,
body[class*="single-course"] article.post .post_content,
body[class*="single-event"] article.post p,
body[class*="single-event"] article.post .post_content,
body[class*="single-freelancer"] article.post p,
body[class*="single-freelancer"] article.post .post_content,
body[class*="single-job"] article.post p,
body[class*="single-job"] article.post .post_content {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: var(--v2-text) !important;
    margin: 0 0 16px !important;
}

body[class*="single-course"] article.post ul,
body[class*="single-course"] article.post ol,
body[class*="single-event"] article.post ul,
body[class*="single-event"] article.post ol,
body[class*="single-freelancer"] article.post ul,
body[class*="single-job"] article.post ul,
body[class*="single-job"] article.post ol {
    margin: 0 0 16px 20px !important;
    padding: 0 !important;
}
body[class*="single-course"] article.post li,
body[class*="single-event"] article.post li,
body[class*="single-freelancer"] article.post li,
body[class*="single-job"] article.post li {
    margin-bottom: 8px !important;
    line-height: 1.65 !important;
    color: var(--v2-text) !important;
}

/* — Featured image — */
body[class*="single-course"] article.post .post_featured,
body[class*="single-event"] article.post .post_featured,
body[class*="single-freelancer"] article.post .post_featured {
    margin: 0 -44px 24px !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    max-height: 360px !important;
}
body[class*="single-course"] article.post .post_featured img,
body[class*="single-event"] article.post .post_featured img,
body[class*="single-freelancer"] article.post .post_featured img {
    width: 100% !important;
    height: auto !important;
    max-height: 360px !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    margin: 0 !important;
}

/* — Links inside the content — */
body[class*="single-course"] article.post a,
body[class*="single-event"] article.post a,
body[class*="single-freelancer"] article.post a,
body[class*="single-job"] article.post a {
    color: var(--v2-gold-deep) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    border-bottom: 1px solid rgba(232,163,23,.3) !important;
    transition: color .15s ease, border-color .15s ease !important;
}
body[class*="single-course"] article.post a:hover,
body[class*="single-event"] article.post a:hover,
body[class*="single-freelancer"] article.post a:hover,
body[class*="single-job"] article.post a:hover {
    color: var(--v2-navy-deep) !important;
    border-bottom-color: var(--v2-navy-deep) !important;
}

/* — Buttons inside post content (LearnDash "Enroll", LearnPress, etc.) — */
body[class*="single-course"] article.post a.button,
body[class*="single-course"] article.post .ld_button,
body[class*="single-course"] article.post .learndash_join_button,
body[class*="single-course"] article.post .lp-button,
body[class*="single-course"] article.post button.enroll,
body[class*="single-event"] article.post a.button,
body[class*="single-event"] article.post .tribe-events-button,
body[class*="single-event"] article.post .tribe-button,
body[class*="single-job"] article.post .application_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 24px !important;
    border-radius: 11px !important;
    background: var(--v2-gold) !important;
    color: var(--v2-navy-deep) !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: none !important;
    border-bottom: none !important;
    cursor: pointer !important;
    min-height: 44px !important;
    transition: background .15s ease !important;
    line-height: 1 !important;
}
body[class*="single-course"] article.post a.button:hover,
body[class*="single-course"] article.post .ld_button:hover,
body[class*="single-event"] article.post a.button:hover,
body[class*="single-event"] article.post .tribe-events-button:hover,
body[class*="single-job"] article.post .application_button:hover {
    background: var(--v2-gold-deep) !important;
    color: var(--v2-navy-deep) !important;
    border-bottom: none !important;
}

/* — LearnDash lesson list specific — */
body[class*="single-course"] .ld-item-list-section-heading {
    font-family: 'Inter', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--v2-navy-deep) !important;
    margin: 24px 0 14px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--v2-border) !important;
}
body[class*="single-course"] .ld-item-list-item,
body[class*="single-course"] .ld-lesson-item {
    background: var(--v2-surface-2) !important;
    border: 1px solid var(--v2-border) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    margin-bottom: 10px !important;
}

/* — Quote / blockquote — */
body[class*="single-course"] article.post blockquote,
body[class*="single-event"] article.post blockquote {
    background: var(--v2-surface-2) !important;
    border-left: 4px solid var(--v2-gold) !important;
    padding: 16px 22px !important;
    margin: 20px 0 !important;
    border-radius: 0 12px 12px 0 !important;
    color: var(--v2-text) !important;
    font-style: italic !important;
    font-size: 15.5px !important;
}

/* — Mobile responsive for single CPT pages — */
@media (max-width: 720px) {
    body[class*="single-course"] article.post,
    body[class*="single-event"] article.post,
    body[class*="single-freelancer"] article.post,
    body[class*="single-job"] article.post {
        margin: 18px 14px !important;
        padding: 26px 22px !important;
        border-radius: 16px !important;
        max-width: none !important;
    }
    body[class*="single-course"] article.post h1,
    body[class*="single-event"] article.post h1,
    body[class*="single-freelancer"] article.post h1,
    body[class*="single-job"] article.post h1 {
        font-size: 26px !important;
    }
    body[class*="single-course"] article.post h2,
    body[class*="single-event"] article.post h2 {
        font-size: 20px !important;
    }
    body[class*="single-course"] article.post p,
    body[class*="single-event"] article.post p,
    body[class*="single-freelancer"] article.post p,
    body[class*="single-job"] article.post p {
        font-size: 15px !important;
    }
    body[class*="single-course"] article.post .post_featured,
    body[class*="single-event"] article.post .post_featured,
    body[class*="single-freelancer"] article.post .post_featured {
        margin: 0 -22px 22px !important;
        max-height: 240px !important;
    }
    body[class*="single-course"] article.post .post_featured img,
    body[class*="single-event"] article.post .post_featured img,
    body[class*="single-freelancer"] article.post .post_featured img {
        max-height: 240px !important;
    }
}