/*
 * Ask Queer Kent - wpForo integration skin (v2, open layout)
 *
 * Loaded after wpForo's structural stylesheet. wpForo keeps its structural
 * behaviour; QKL owns every visible surface. This pass removes the
 * box-within-box plugin framing: sections sit openly on the QKL paper
 * background, forums are QKL cards, and all remaining default wpForo
 * chrome (blues, reds, greys) is mapped onto the QKL design tokens.
 */

/* ============ Page surface: full-bleed white ============ */
/* Forum views read as a full site page, not an embedded widget: the whole
   surface between hero and footer is white edge-to-edge, and the footer is
   pinned to the bottom of short views (sign-in, empty search, etc.). */
body.wpforo {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	background: #fff;
}
body.wpforo > header,
body.wpforo > section,
body.wpforo > footer { flex-shrink: 0; }
body.wpforo > section.qkl-section:last-of-type { flex: 1 0 auto; }

/* ============ Hardcoded wpForo blues the palette cannot reach ============ */
/* Q&A layout prints an inline blue on the topic-toggle cell (layouts/3/forum.php),
   and the member activity timeline hardcodes its accent in the theme CSS. */
#wpforo #wpforo-wrap .wpforo-forum-stat .wpft-cell-right[style],
#wpforo #wpforo-wrap .wpft-cell-right .topictoggle {
	color: var(--qkl-text-soft) !important;
}
#wpforo #wpforo-wrap .wpft-cell-right .topictoggle:hover { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-timeline-new_reply .wpf-timeline-icon,
#wpforo #wpforo-wrap .wpf-timeline-wpforo_post .wpf-timeline-icon {
	border-color: var(--qkl-magenta) !important;
	color: var(--qkl-magenta) !important;
}
#wpforo #wpforo-wrap .wpforo-post-signature-content { border-top-color: rgba(23, 17, 31, .12) !important; }

/* ============ Base wrap ============ */
#wpforo,
#wpforo #wpforo-wrap {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: transparent;
	color: var(--qkl-text);
	font-family: var(--qkl-font-body);
	font-size: 16px;
}
#wpforo #wpforo-wrap * { box-sizing: border-box; }
#wpforo #wpforo-wrap a,
#wpforo #wpforo-wrap a:visited { color: var(--qkl-magenta); }
#wpforo #wpforo-wrap a:hover { color: var(--qkl-magenta-dark); }
#wpforo #wpforo-wrap a svg { fill: var(--qkl-magenta); }

/* Visible keyboard focus everywhere in the forum */
#wpforo #wpforo-wrap a:focus-visible,
#wpforo #wpforo-wrap button:focus-visible,
#wpforo #wpforo-wrap input:focus-visible,
#wpforo #wpforo-wrap select:focus-visible,
#wpforo #wpforo-wrap textarea:focus-visible,
#wpforo #wpforo-wrap [tabindex]:focus-visible {
	outline: 3px solid rgba(228, 18, 139, .55);
	outline-offset: 2px;
	border-radius: 6px;
}

/* ============ Forum navigation: open pill tabs (no dark box) ============ */
#wpforo #wpforo-wrap #wpforo-menu {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	min-height: 0;
	margin: 0 0 28px;
	padding: 0 0 18px;
	border: 0 !important;
	border-bottom: 1px solid rgba(23, 17, 31, .08);
	border-radius: 0;
	background: transparent !important;
	box-shadow: none;
}
#wpforo #wpforo-wrap #wpforo-menu .wpf-left,
#wpforo #wpforo-wrap #wpforo-menu ul {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 0;
	padding: 0;
}
#wpforo #wpforo-wrap #wpforo-menu li { border: 0; list-style: none; }
#wpforo #wpforo-wrap #wpforo-menu li a,
#wpforo #wpforo-wrap #wpforo-menu li a:visited {
	display: block;
	padding: 10px 16px;
	border-radius: 99px;
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: .87rem;
	font-weight: 700;
	line-height: 1.2;
	transition: background .15s ease, color .15s ease;
}
#wpforo #wpforo-wrap #wpforo-menu li:hover,
#wpforo #wpforo-wrap #wpforo-menu li.wpforo-active,
#wpforo #wpforo-wrap #wpforo-menu li.current-menu-item { border: 0; background: transparent; }
#wpforo #wpforo-wrap #wpforo-menu li:hover,
#wpforo #wpforo-wrap #wpforo-menu li.wpforo-active,
#wpforo #wpforo-wrap #wpforo-menu li.current-menu-item { background: transparent !important; }
#wpforo #wpforo-wrap #wpforo-menu li:hover > a { background: var(--qkl-magenta-soft) !important; color: var(--qkl-magenta-dark) !important; }
#wpforo #wpforo-wrap #wpforo-menu li.wpforo-active > a,
#wpforo #wpforo-wrap #wpforo-menu li.current-menu-item > a {
	color: #fff !important;
	background: var(--qkl-magenta) !important;
	box-shadow: 0 6px 16px rgba(228, 18, 139, .3);
}
#wpforo #wpforo-wrap #wpforo-menu .wpf-bar-right { margin-left: auto; padding: 0; }
#wpforo #wpforo-wrap #wpforo-menu .wpf-search-form { position: relative; }
#wpforo #wpforo-wrap #wpforo-menu .wpf-search-field {
	width: 200px;
	height: 42px;
	margin: 0 !important;
	padding: 9px 38px 9px 18px;
	border: 2px solid rgba(23, 17, 31, .12);
	border-radius: 99px;
	background: #fff !important;
	color: var(--qkl-text) !important;
	font-family: var(--qkl-font-body);
	font-size: .92rem;
	transition: border-color .15s ease;
}
#wpforo #wpforo-wrap #wpforo-menu .wpf-search-field::placeholder { color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap #wpforo-menu .wpf-search-field:focus {
	outline: none;
	border-color: var(--qkl-magenta);
	background: #fff !important;
}
#wpforo #wpforo-wrap #wpforo-menu .wpf-search-form i {
	right: 15px;
	left: auto;
	color: var(--qkl-magenta) !important;
}

/* ============ Page titles ============ */
/* Forum home: the QKL hero already announces Ask Queer Kent. */
#wpforo #wpforo-wrap.wpft-forum #wpforo-title { display: none !important; }
/* Every deeper view shows its own title as the content heading. */
#wpforo #wpforo-wrap #wpforo-title {
	margin: 0 0 14px;
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.01em;
}
#wpforo #wpforo-wrap #wpforo-title::after {
	content: "";
	display: block;
	width: 84px;
	height: 5px;
	margin-top: 16px;
	border-radius: 99px;
	background: var(--qkl-grad);
}
#wpforo #wpforo-wrap #wpforo-description {
	margin: 0 0 8px;
	color: var(--qkl-text-soft);
	font-size: .98rem;
}
#wpforo #wpforo-wrap .wpforo-feed { display: none !important; }

/* Old subtop (breadcrumb/notification shell) stays merged into the hero. */
#wpforo #wpforo-wrap .wpforo-subtop { display: none !important; }

/* Section head bar (forum/topic-list views): open header, no grey band */
#wpforo #wpforo-wrap .wpf-head-bar {
	margin: 0 0 22px;
	padding: 0;
	border: 0 !important;
	border-left: 0 !important;
	background: transparent !important;
	position: relative;
}
#wpforo #wpforo-wrap .wpf-head-bar::after { display: none; }
#wpforo #wpforo-wrap .wpf-head-bar .wpf-action-link { border: 0; margin-top: 4px; }
#wpforo #wpforo-wrap .wpf-head-bar-right { color: var(--qkl-text-soft); }

/* RSS: quiet ghost chip rather than a loud button */
#wpforo #wpforo-wrap .wpf-feed a.wpf-button-outlined,
#wpforo #wpforo-wrap .wpf-feed a.wpf-button-outlined:visited {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 0;
	padding: 5px 13px;
	border: 1px solid rgba(23, 17, 31, .18) !important;
	border-radius: 99px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--qkl-text-soft) !important;
	font-family: var(--qkl-font-head);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .08em;
}
#wpforo #wpforo-wrap .wpf-feed a.wpf-button-outlined:hover {
	border-color: var(--qkl-magenta) !important;
	color: var(--qkl-magenta) !important;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpf-feed a.wpf-button-outlined i { color: inherit !important; }

/* ============ Sections: open groups on the paper background ============ */
#wpforo #wpforo-wrap .wpforo-section {
	margin: 0 0 40px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}
#wpforo #wpforo-wrap .wpforo-category,
#wpforo #wpforo-wrap .wpforo-cat-panel {
	margin: 0;
	border: 0 !important;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpforo-cat-panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	min-height: 0;
	padding: 0 0 18px;
}
#wpforo #wpforo-wrap .wpforo-cat-panel::after { display: none; }
#wpforo #wpforo-wrap .wpforo-cat-panel .cat-title { position: relative; padding-bottom: 12px; }
#wpforo #wpforo-wrap .wpforo-cat-panel .cat-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 84px;
	height: 5px;
	border-radius: 99px;
	background: var(--qkl-grad);
}
#wpforo #wpforo-wrap .wpforo-cat-panel .cat-title,
#wpforo #wpforo-wrap .wpforo-cat-panel .cat-name {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: 1.45rem;
	font-weight: 800;
	letter-spacing: -.01em;
}
#wpforo #wpforo-wrap .wpforo-cat-panel .wpf-head-bar-left,
#wpforo #wpforo-wrap .wpforo-cat-panel .wpf-head-bar-right { color: var(--qkl-text-soft); }

/* Forum boards: one QKL card per board */
#wpforo #wpforo-wrap .forum-wrap {
	margin: 0 0 22px;
	border: 1px solid rgba(23, 17, 31, .07) !important;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
	transition: box-shadow .2s ease;
}
#wpforo #wpforo-wrap .forum-wrap:hover { box-shadow: var(--qkl-shadow-lg); }
#wpforo #wpforo-wrap .forum-wrap:last-child { margin-bottom: 0; }
#wpforo #wpforo-wrap .wpforo-forum {
	display: flex;
	align-items: center;
	gap: 18px;
	min-height: 0;
	margin: 0;
	padding: 24px 26px;
	border: 0;
	background: #fff;
}
#wpforo #wpforo-wrap .wpforo-forum-icon {
	width: 52px;
	min-width: 52px;
	padding: 0;
}
#wpforo #wpforo-wrap .wpforo-forum-icon > div,
#wpforo #wpforo-wrap .wpforo-forum-icon .wpf-circle {
	width: 50px !important;
	height: 50px !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--qkl-grad) !important;
	box-shadow: 0 0 0 4px #fff, 0 0 0 6px rgba(228, 18, 139, .18);
}
#wpforo #wpforo-wrap .wpforo-forum-icon i { color: #fff !important; }
#wpforo #wpforo-wrap .wpforo-forum-info { flex: 1; min-width: 0; }
#wpforo #wpforo-wrap h3.wpforo-forum-title { margin: 0 0 5px; }
#wpforo #wpforo-wrap h3.wpforo-forum-title a,
#wpforo #wpforo-wrap h3.wpforo-forum-title a:visited {
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-size: 1.12rem;
	font-weight: 800;
}
#wpforo #wpforo-wrap h3.wpforo-forum-title a:hover { color: var(--qkl-magenta); }
#wpforo #wpforo-wrap .wpforo-forum-description {
	max-width: 720px;
	color: var(--qkl-text-soft);
	font-size: .93rem;
	line-height: 1.5;
}

/* Board header parity: wpForo's per-layout rules (wpfl-1/wpfl-3) shrink the
   padding and top-align the icon; force the same open treatment everywhere. */
#wpforo #wpforo-wrap .wpfl-1 .wpforo-forum,
#wpforo #wpforo-wrap .wpfl-3 .wpforo-forum {
	align-items: center;
	gap: 18px;
	margin: 0;
	padding: 24px 26px;
}
#wpforo #wpforo-wrap .wpfl-1 .wpforo-forum-icon,
#wpforo #wpforo-wrap .wpfl-3 .wpforo-forum-icon {
	width: 52px;
	min-width: 52px;
	padding: 0;
}

/* Board stats: quiet inline chips */
#wpforo #wpforo-wrap .wpforo-forum-stat {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 118px;
	color: var(--qkl-text-soft);
	font-size: .8rem;
}
#wpforo #wpforo-wrap .wpforo-forum-stat .wpft-row { display: flex; justify-content: space-between; gap: 10px; }
#wpforo #wpforo-wrap .wpforo-forum-stat .wpft-cell-right {
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-weight: 800;
}

/* Latest-topic previews inside each board card */
#wpforo #wpforo-wrap .wpforo-last-topics-tab,
#wpforo #wpforo-wrap [class*="wpforo-last-topics-"] > div:first-child {
	padding: 0 26px;
	color: var(--qkl-text-soft);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	background: transparent;
}
#wpforo #wpforo-wrap .wpforo-last-topics-list { background: transparent; }
#wpforo #wpforo-wrap .wpforo-last-topics-list ul { margin: 0; padding: 0; list-style: none; }
#wpforo #wpforo-wrap .wpforo-last-topics-list li {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 15px 26px;
	border-top: 1px solid rgba(23, 17, 31, .06);
	transition: background .15s ease;
}
#wpforo #wpforo-wrap .wpforo-last-topics-list li:hover { background: #fff6fb; }
#wpforo #wpforo-wrap .wpforo-last-topic { display: flex; gap: 8px; }
#wpforo #wpforo-wrap .wpforo-last-topic-title { flex: 1; min-width: 0; }
#wpforo #wpforo-wrap .wpforo-last-topic-title > a,
#wpforo #wpforo-wrap .wpforo-last-topic-title > a:visited,
#wpforo #wpforo-wrap .wpforo-last-topic-title a,
#wpforo #wpforo-wrap .wpf-thread-title a {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: .99rem;
	font-weight: 700;
}
#wpforo #wpforo-wrap .wpforo-last-topic-title > a:hover,
#wpforo #wpforo-wrap .wpf-thread-title a:hover { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpforo-topic-author {
	margin-top: 3px;
	color: var(--qkl-text-soft);
	font-size: .82rem;
}
#wpforo #wpforo-wrap .wpforo-topic-author img.avatar {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	vertical-align: -4px;
	margin-right: 5px;
}
#wpforo #wpforo-wrap .wpforo-last-topic-info a,
#wpforo #wpforo-wrap .wpforo-topic-info a { color: var(--qkl-magenta) !important; font-weight: 600; }
#wpforo #wpforo-wrap .wpforo-date { color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpforo-last-topic-bottom { margin-top: 4px; font-size: .8rem; color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpforo-last-topic-replies i { color: var(--qkl-magenta); }

/* ============ Q&A stat chips (votes / answers / views) ============ */
#wpforo #wpforo-wrap .wpf-tbox {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	width: 52px;
	min-width: 52px;
	padding: 7px 4px;
	border: 0 !important;
	border-radius: var(--qkl-radius-sm);
	background: var(--qkl-paper) !important;
	box-shadow: none !important;
}
#wpforo #wpforo-wrap .wpf-tbox .count {
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-size: .98rem;
	font-weight: 800;
	line-height: 1.1;
}
#wpforo #wpforo-wrap .wpf-tbox .wpforo-label,
#wpforo #wpforo-wrap .wpf-tbox .wpforo-label svg,
#wpforo #wpforo-wrap .wpf-tbox .wpforo-label i { color: var(--qkl-text-soft); fill: var(--qkl-text-soft); font-size: .72rem; }
#wpforo #wpforo-wrap .wpf-tbox.answers { background: var(--qkl-magenta-soft) !important; }
#wpforo #wpforo-wrap .wpf-tbox.answers .count { color: var(--qkl-magenta-dark); }
#wpforo #wpforo-wrap .wpf-tbox.answers .wpforo-label,
#wpforo #wpforo-wrap .wpf-tbox.answers .wpforo-label svg { color: var(--qkl-magenta-dark); fill: var(--qkl-magenta-dark); }

/* Home previews keep only the answers chip; read-status icons go entirely. */
#wpforo #wpforo-wrap .wpforo-last-topic .wpf-tbox.votes,
#wpforo #wpforo-wrap .wpforo-last-topic-status,
#wpforo #wpforo-wrap .wpforo-topic-status,
#wpforo #wpforo-wrap .wpforo-topic-head,
#wpforo #wpforo-wrap .head-status { display: none !important; }

/* Section topic lists: one clean card of rows */
#wpforo #wpforo-wrap.wpft-topic .wpforo-section {
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
}
#wpforo #wpforo-wrap.wpft-topic .topic-wrap { border: 0; }
#wpforo #wpforo-wrap .wpforo-topic {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0;
	padding: 17px 26px;
	border: 0;
	border-top: 1px solid rgba(23, 17, 31, .06);
	background: #fff;
	transition: background .15s ease;
}
#wpforo #wpforo-wrap .topic-wrap:first-of-type .wpforo-topic { border-top: 0; }
#wpforo #wpforo-wrap .wpforo-topic:hover { background: #fff6fb; }
#wpforo #wpforo-wrap .wpforo-topic-stat { display: flex; gap: 8px; }
#wpforo #wpforo-wrap .wpforo-topic-avatar img.avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(228, 18, 139, .25);
}
#wpforo #wpforo-wrap .wpforo-topic-details { flex: 1; min-width: 0; }
#wpforo #wpforo-wrap a.wpforo-topic-title,
#wpforo #wpforo-wrap a.wpforo-topic-title:visited {
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-size: 1.02rem;
	font-weight: 700;
}
#wpforo #wpforo-wrap a.wpforo-topic-title:hover { color: var(--qkl-magenta); }
#wpforo #wpforo-wrap .wpforo-topic-replies i { color: var(--qkl-magenta); }

/* ============ Thread view (posts) ============ */
#wpforo #wpforo-wrap.wpft-post #wpforo-title { margin-bottom: 18px; }
#wpforo #wpforo-wrap .wpforo-post-head { border: 0; background: transparent; }
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top {
	margin: 0 0 20px;
	padding: 15px 20px;
	border: 0 !important;
	border-left: 0 !important;
	border-radius: var(--qkl-radius-sm);
	background: #fff !important;
	box-shadow: var(--qkl-shadow);
}
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box svg,
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box .wpf-tstat svg { fill: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box span { color: var(--qkl-text-soft) !important; }
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-info .wpf-post-info-forum { color: var(--qkl-text-soft) !important; }
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-info .wpf-post-info-forum a { color: var(--qkl-magenta) !important; font-weight: 700; }
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box.wpf-pb-more { border-left: 1px solid rgba(23, 17, 31, .1) !important; }

/* Post cards */
#wpforo #wpforo-wrap .wpforo-post {
	margin-bottom: 20px;
	padding: 22px 24px;
	border: 0 !important;
	border-radius: var(--qkl-radius);
	background: #fff !important;
	box-shadow: var(--qkl-shadow);
	/* visible so wpf-tooltip bubbles aren't clipped at the card edge */
	overflow: visible;
}
#wpforo #wpforo-wrap .wpforo-post .wpforo-post-content {
	color: var(--qkl-text);
	font-size: 1rem;
	line-height: 1.65;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpforo-post .wpforo-post-avatar img {
	border-radius: 50%;
	box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--qkl-magenta);
}
#wpforo #wpforo-wrap .wpf-pa-name,
#wpforo #wpforo-wrap .wpf-pa-name:visited,
#wpforo #wpforo-wrap a.wpf-pa-name,
#wpforo #wpforo-wrap a.wpf-pa-name:visited { color: var(--qkl-ink) !important; font-family: var(--qkl-font-head); font-weight: 800; }
#wpforo #wpforo-wrap a.wpf-pa-name:hover { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-author-nicename { color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpforo-post-date { color: var(--qkl-text-soft); font-size: .82rem; }
#wpforo #wpforo-wrap .wpf-post-starter {
	color: var(--qkl-magenta) !important;
	border-bottom: 0 !important;
	font-weight: 700;
}
#wpforo #wpforo-wrap .wpf-post-starter i { color: var(--qkl-magenta) !important; }

/* Voting column */
#wpforo #wpforo-wrap .wpforo-post-voting i,
#wpforo #wpforo-wrap .wpforo-post-voting .not_reg_user { color: rgba(23, 17, 31, .35); transition: color .15s ease; }
#wpforo #wpforo-wrap .wpforo-post-voting i:hover { color: var(--qkl-magenta); cursor: pointer; }
#wpforo #wpforo-wrap .wpf-vote-number,
#wpforo #wpforo-wrap .wpfvote-num {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-weight: 800;
}

/* Usergroup + member-title badges: QKL badge language, not wpForo blue */
#wpforo #wpforo-wrap .wpf-member-title.wpfut,
#wpforo #wpforo-wrap .wpf-member-title.wpfug-1,
#wpforo #wpforo-wrap span.wpf-member-title.wpfbr-b {
	display: inline-block;
	padding: 3px 11px;
	border: 0 !important;
	border-radius: 99px;
	background: var(--qkl-magenta-soft) !important;
	color: var(--qkl-magenta-dark) !important;
	font-family: var(--qkl-font-head);
	font-size: .68rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
}
#wpforo #wpforo-wrap .wpf-member-title.wpfct { color: var(--qkl-text-soft); font-size: .78rem; }

/* Author mini-stats under the name: one quiet colour */
#wpforo #wpforo-wrap .wpforo-post-author-stat,
#wpforo #wpforo-wrap .wpforo-post-author-stat span,
#wpforo #wpforo-wrap .wpforo-post-author-stat i { color: var(--qkl-text-soft) !important; font-size: .78rem; }
#wpforo #wpforo-wrap .author-rating-full,
#wpforo #wpforo-wrap .author-rating-full i { color: #d8cfe4 !important; }

/* Guest lock band -> QKL notice */
#wpforo #wpforo-wrap .wpf-please-login {
	margin: 6px 0 22px;
	padding: 15px 19px;
	border: 0 !important;
	border-left: 4px solid var(--qkl-magenta) !important;
	border-radius: var(--qkl-radius-sm);
	background: var(--qkl-magenta-soft) !important;
	color: var(--qkl-text) !important;
	text-align: left !important;
}
#wpforo #wpforo-wrap .wpf-please-login a { font-weight: 700; }

/* Tags */
#wpforo #wpforo-wrap .wpforo-post.wpforo-tags {
	padding: 15px 24px;
	background: #fff !important;
	box-shadow: var(--qkl-shadow);
}
#wpforo #wpforo-wrap .wpforo-tags .wpf-tags-title { border-color: rgba(23, 17, 31, .08) !important; color: var(--qkl-text-soft); }
/* Plain rounded pills: wpForo's ticket-notch shape (arrow + hole pseudos) is gone,
   and so is the pointless "Topic Tag" tooltip that clipped on the card edge. */
#wpforo #wpforo-wrap .wpf-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
#wpforo #wpforo-wrap .wpf-tags tag {
	float: none;
	margin: 0;
	height: auto;
	line-height: normal;
	font-family: var(--qkl-font-body);
}
#wpforo #wpforo-wrap .wpf-tags tag::before,
#wpforo #wpforo-wrap .wpf-tags tag::after { display: none !important; content: none !important; }
#wpforo #wpforo-wrap .wpf-tags tag a,
#wpforo #wpforo-wrap .wpf-tags tag a:visited {
	float: none;
	display: inline-flex;
	align-items: center;
	height: auto;
	margin: 0;
	padding: 7px 14px;
	line-height: 1;
	border-radius: 99px;
	background: var(--qkl-magenta-soft) !important;
	color: var(--qkl-magenta-dark) !important;
	font-size: .78rem;
	font-weight: 600;
}
#wpforo #wpforo-wrap .wpf-tags tag a::before,
#wpforo #wpforo-wrap .wpf-tags tag a::after { display: none !important; content: none !important; }
#wpforo #wpforo-wrap .wpf-tags tag a:hover { background: #f7cee5 !important; color: var(--qkl-magenta-dark) !important; }

/* Related topics / topic navigation */
#wpforo #wpforo-wrap .wpf-related-topics,
#wpforo #wpforo-wrap .wpforo-topic-jump { color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpf-navi .wpf-navi-wrap .wpf-prev-button,
#wpforo #wpforo-wrap .wpf-navi .wpf-navi-wrap .wpf-next-button {
	border-radius: 99px !important;
	background: var(--qkl-magenta) !important;
	color: #fff !important;
}
#wpforo #wpforo-wrap .wpf-navi .wpf-navi-wrap .wpf-page-info { color: var(--qkl-text-soft) !important; }

/* ============ Buttons and forms ============ */
#wpforo #wpforo-wrap .wpf-button,
#wpforo #wpforo-wrap .wpforo-button,
#wpforo #wpforo-wrap button,
#wpforo #wpforo-wrap input[type="submit"],
#wpforo #wpforo-wrap input[type="button"],
#wpforo #wpforo-wrap a.wpf-button {
	min-height: 42px;
	padding: 10px 22px;
	border: 0 !important;
	border-radius: 99px !important;
	background: var(--qkl-magenta) !important;
	box-shadow: 0 7px 18px rgba(228, 18, 139, .26);
	color: #fff !important;
	font-family: var(--qkl-font-head);
	font-size: .87rem;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s ease, transform .15s ease;
}
#wpforo #wpforo-wrap .wpf-button i,
#wpforo #wpforo-wrap .wpf-button span,
#wpforo #wpforo-wrap .wpforo-button i,
#wpforo #wpforo-wrap .wpforo-button span { color: #fff !important; }
#wpforo #wpforo-wrap .wpf-button:hover,
#wpforo #wpforo-wrap .wpforo-button:hover,
#wpforo #wpforo-wrap button:hover,
#wpforo #wpforo-wrap input[type="submit"]:hover,
#wpforo #wpforo-wrap a.wpf-button:hover { background: var(--qkl-magenta-dark) !important; transform: translateY(-1px); }

/* Secondary / outlined actions become ghost pills */
#wpforo #wpforo-wrap .wpf-button-outlined:not(.wpf-feed a),
#wpforo #wpforo-wrap a.wpf-button-outlined {
	min-height: 38px;
	padding: 8px 18px;
	border: 2px solid rgba(23, 17, 31, .8) !important;
	border-radius: 99px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: .82rem;
	font-weight: 700;
}
#wpforo #wpforo-wrap a.wpf-button-outlined:hover {
	background: var(--qkl-ink) !important;
	color: #fff !important;
}

/* The rich-text editor opts back out of the pill treatment: its toolbar
   stays quiet ink-on-paper, with magenta reserved for hover/active. */
#wpforo #wpforo-wrap .mce-container button,
#wpforo #wpforo-wrap .mce-container input[type="button"],
#wpforo #wpforo-wrap .mce-btn button {
	min-height: 0;
	padding: 4px 7px;
	border: 0 !important;
	border-radius: 8px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--qkl-ink) !important;
	font-family: inherit;
	font-size: 13px;
	font-weight: 400;
}
#wpforo #wpforo-wrap .mce-container button:hover,
#wpforo #wpforo-wrap .mce-btn button:hover {
	background: var(--qkl-magenta-soft) !important;
	transform: none;
}
#wpforo #wpforo-wrap .mce-btn.mce-active button,
#wpforo #wpforo-wrap .mce-btn.mce-active button:hover {
	background: var(--qkl-magenta-soft) !important;
	color: var(--qkl-magenta-dark) !important;
}
#wpforo #wpforo-wrap .mce-btn .mce-ico { color: var(--qkl-ink) !important; }
#wpforo #wpforo-wrap .mce-btn.mce-active .mce-ico,
#wpforo #wpforo-wrap .mce-btn button:hover .mce-ico { color: var(--qkl-magenta-dark) !important; }
#wpforo #wpforo-wrap .mce-btn.mce-disabled button,
#wpforo #wpforo-wrap .mce-btn.mce-disabled .mce-ico { color: rgba(23, 17, 31, .3) !important; }
#wpforo #wpforo-wrap .mce-toolbar-grp,
#wpforo #wpforo-wrap .mce-panel,
#wpforo #wpforo-wrap .mce-statusbar {
	border-color: rgba(23, 17, 31, .1) !important;
	background: #fff !important;
}
#wpforo #wpforo-wrap .mce-tinymce {
	border: 1px solid rgba(23, 17, 31, .14) !important;
	border-radius: var(--qkl-radius-sm) !important;
	overflow: hidden;
	box-shadow: none !important;
}

#wpforo #wpforo-wrap input[type="text"],
#wpforo #wpforo-wrap input[type="email"],
#wpforo #wpforo-wrap input[type="password"],
#wpforo #wpforo-wrap input[type="url"],
#wpforo #wpforo-wrap input[type="number"],
#wpforo #wpforo-wrap select,
#wpforo #wpforo-wrap textarea {
	border: 2px solid rgba(23, 17, 31, .12) !important;
	border-radius: var(--qkl-radius-sm) !important;
	background: #fff !important;
	color: var(--qkl-text) !important;
	font-family: var(--qkl-font-body) !important;
	transition: border-color .15s ease;
}
#wpforo #wpforo-wrap input:focus,
#wpforo #wpforo-wrap select:focus,
#wpforo #wpforo-wrap textarea:focus { outline: none !important; border-color: var(--qkl-magenta) !important; }

/* Checkboxes: box left, label in its own flexed column, never wrapping under */
#wpforo #wpforo-wrap input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	flex: 0 0 auto;
	accent-color: var(--qkl-magenta);
}
#wpforo #wpforo-wrap .wpforo-legal-checkbox,
#wpforo #wpforo-wrap .wpf-field-type-checkbox label,
#wpforo #wpforo-wrap label.wpf-checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
#wpforo #wpforo-wrap .wpforo-legal-checkbox label { display: flex; align-items: flex-start; gap: 10px; margin: 0; font-weight: 500; }

/* Field labels */
#wpforo #wpforo-wrap .wpf-field label,
#wpforo #wpforo-wrap label { color: var(--qkl-ink); font-weight: 600; }
#wpforo #wpforo-wrap .wpf-field { border: 0 !important; }

/* ============ Auth pages: QKL card in the open ============ */
#wpforo #wpforo-wrap .wpforo-login-wrap,
#wpforo #wpforo-wrap .wpforo-register-wrap {
	background: transparent !important;
	border: 0 !important;
}
#wpforo #wpforo-wrap .wpforo-login-content,
#wpforo #wpforo-wrap .wpforo-register-content {
	max-width: 520px;
	margin: 0 auto;
	padding: 36px 34px !important;
	border: 0 !important;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
}
#wpforo #wpforo-wrap .wpforo-login-content h3,
#wpforo #wpforo-wrap .wpforo-register-content h3 {
	margin: 0 0 20px;
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: 1.35rem;
	font-weight: 800;
	text-align: center;
}
#wpforo #wpforo-wrap .wpforo-login-content .wpf-field,
#wpforo #wpforo-wrap .wpforo-register-content .wpf-field { border-bottom: 0 !important; }
#wpforo #wpforo-wrap .wpforo-register-table,
#wpforo #wpforo-wrap .wpforo-members-search,
#wpforo #wpforo-wrap .wpfbg-9 { background: transparent !important; }
#wpforo #wpforo-wrap .wpforo-login-content a,
#wpforo #wpforo-wrap .wpforo-register-content a { color: var(--qkl-magenta) !important; font-weight: 600; }

/* Inner form wrappers stay on the card, never on their own grey slab. */
#wpforo #wpforo-wrap .wpforo-login-table,
#wpforo #wpforo-wrap .wpforo-table,
#wpforo #wpforo-wrap .wpforo-login-content .wpf-field,
#wpforo #wpforo-wrap .wpforo-register-content .wpf-field { background: transparent !important; }

/* "Create Account" / "Login" swap links become proper ghost pills. */
#wpforo #wpforo-wrap .wpforo-login-content a[href*="sign-up"],
#wpforo #wpforo-wrap .wpforo-register-content a[href*="sign-in"] {
	display: inline-block;
	margin-top: 4px;
	padding: 10px 22px;
	border: 2px solid var(--qkl-ink) !important;
	border-radius: 99px;
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: .85rem;
	font-weight: 700;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
#wpforo #wpforo-wrap .wpforo-login-content a[href*="sign-up"]:hover,
#wpforo #wpforo-wrap .wpforo-register-content a[href*="sign-in"]:hover {
	background: var(--qkl-ink);
	color: #fff !important;
}

/* ============ Members directory ============ */
#wpforo #wpforo-wrap .wpf-member-search,
#wpforo #wpforo-wrap .wpforo-members-search {
	margin: 0 0 26px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpf-member-search .wpf-field-icon { color: var(--qkl-magenta); }
#wpforo #wpforo-wrap .wpf-member-search-field,
#wpforo #wpforo-wrap .wpf-field-name-wpfms input[type="text"] { border-radius: 99px !important; padding-left: 20px; }
#wpforo #wpforo-wrap .wpforo-members { display: grid; gap: 22px; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
#wpforo #wpforo-wrap .wpforo-member {
	border: 0 !important;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
	transition: transform .2s ease, box-shadow .2s ease;
}
#wpforo #wpforo-wrap .wpforo-member:hover { transform: translateY(-4px); box-shadow: var(--qkl-shadow-lg); }
#wpforo #wpforo-wrap .wpforo-member .wpforo-member-bg,
#wpforo #wpforo-wrap .wpforo-member-bg.wpfbg-9 {
	background: var(--qkl-grad-soft) !important;
	background-image: none !important;
	box-shadow: none !important;
}
#wpforo #wpforo-wrap .wpf-member-avatar img.avatar {
	border-radius: 50%;
	box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--qkl-magenta);
}
#wpforo #wpforo-wrap a.wpf-member-name,
#wpforo #wpforo-wrap a.wpf-member-name:visited,
#wpforo #wpforo-wrap .wpforo-member-display-name a {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: 1.05rem;
	font-weight: 800;
}
#wpforo #wpforo-wrap a.wpf-member-name:hover { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpforo-member-social a { color: var(--qkl-text-soft); fill: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpforo-member-social a:hover { color: var(--qkl-magenta); fill: var(--qkl-magenta); }
#wpforo #wpforo-wrap .wpforo-member-ug { border: 0 !important; }
#wpforo #wpforo-wrap .wpf-members-foot,
#wpforo #wpforo-wrap .wpf-members-info { color: var(--qkl-text-soft); }

/* ============ Profile ============ */
/* The default grey cover photo gives way to the QKL ink-and-glow treatment. */
/* Profile: flat header, no cover hero. The page hero above is the only hero;
   the wpForo cover banner (background image, floating chips, clipped meta
   boxes, stray status dot) is retired entirely. */
#wpforo #wpforo-wrap .wpforo-profile-head {
	position: relative;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 28px 28px 4px !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
	border-radius: 0;
}
/* wpForo's "Forum Home | Recent Posts" chips duplicate the forum menu. */
#wpforo #wpforo-wrap .wpforo-profile .wpforo-profile-back { display: none !important; }
#wpforo #wpforo-wrap [class*="wpforo-follow-user"],
#wpforo #wpforo-wrap .wpforo-follow-user {
	border: 0 !important;
	border-radius: 99px !important;
	background: var(--qkl-magenta) !important;
	color: #fff !important;
	font-family: var(--qkl-font-head);
	font-weight: 700;
}
#wpforo #wpforo-wrap [class*="wpforo-follow-user"] svg,
#wpforo #wpforo-wrap [class*="wpforo-follow-user"] span { fill: #fff !important; color: #fff !important; }
#wpforo #wpforo-wrap .wpf-profile-section .wpf-statbox .wpf-statbox-icon {
	background: var(--qkl-magenta-soft) !important;
	fill: var(--qkl-magenta-dark) !important;
	color: var(--qkl-magenta-dark) !important;
}
#wpforo #wpforo-wrap .wpf-board-panel { background: var(--qkl-paper) !important; border-radius: var(--qkl-radius-sm); }
#wpforo #wpforo-wrap .wpforo-profile-head-panel {
	/* wpForo floats this panel over the old cover with position:absolute
	   (off-canvas once the cover is gone) - back into normal flow. */
	position: static !important;
	top: auto !important;
	bottom: auto !important;
	display: flex !important;
	align-items: center;
	gap: 20px;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	background-image: none !important;
	border-radius: 0;
}
#wpforo #wpforo-wrap .wpf-profile-avatar {
	position: relative;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}
#wpforo #wpforo-wrap .wpforo-profile-head-data {
	flex: 1;
	min-width: 0;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}
#wpforo #wpforo-wrap .wpfp-name {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-size: 1.5rem;
	font-weight: 800;
	letter-spacing: -.01em;
	text-shadow: none !important;
}
#wpforo #wpforo-wrap .wpfp-name .wpf-author-nicename {
	display: inline-block;
	margin-left: 8px;
	color: var(--qkl-text-soft) !important;
	font-family: var(--qkl-font-body);
	font-size: .9rem;
	font-weight: 600;
	text-shadow: none !important;
}
/* Online-status dot: pinned to the avatar edge instead of floating loose. */
#wpforo #wpforo-wrap .wpf-profile-online {
	position: absolute;
	right: 4px;
	bottom: 4px;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0;
}
#wpforo #wpforo-wrap .wpf-profile-online i {
	font-size: 13px !important;
	color: #C7C0D2 !important; /* offline */
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 3px #fff;
}
#wpforo #wpforo-wrap .wpf-profile-online i.wpf-online-dot,
#wpforo #wpforo-wrap .wpf-profile-online i[title="Online"] { color: #30D158 !important; }
/* The half-star "rating badge" chip is noise next to the 0/10 stat tile. */
#wpforo #wpforo-wrap .wpforo-profile-head-bottom .author-rating-full { display: none !important; }
/* Meta strip under the header: quiet badges left, joined/seen right. */
#wpforo #wpforo-wrap .wpforo-profile-head-bottom {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin: 18px 0 0 !important;
	padding: 16px 28px !important;
	background: var(--qkl-paper) !important;
	border: 0 !important;
	border-top: 1px solid rgba(23, 17, 31, .06) !important;
}
#wpforo #wpforo-wrap .wpforo-profile-head-bottom .wpfp-box {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	color: var(--qkl-text-soft);
	font-size: .85rem;
	text-align: right;
}
#wpforo #wpforo-wrap .wpforo-profile-head-bottom .wpfp-flex { flex: 1; }
#wpforo #wpforo-wrap .wpf-member-title {
	display: inline-block;
	padding: 4px 12px !important;
	border-radius: 99px !important;
	font-family: var(--qkl-font-head);
	font-size: .72rem !important;
	font-weight: 700;
	letter-spacing: .04em;
	text-shadow: none !important;
}
#wpforo #wpforo-wrap .wpf-member-title.wpfut {
	background: var(--qkl-magenta-soft) !important;
	border: 0 !important;
	color: var(--qkl-magenta-dark) !important;
}
#wpforo #wpforo-wrap .wpf-member-title.wpfct {
	background: transparent !important;
	border: 1px solid rgba(23, 17, 31, .14) !important;
	color: var(--qkl-text-soft) !important;
}
/* Follow row aligns with the header padding */
#wpforo #wpforo-wrap .wpforo-user-actions {
	margin: 0 !important;
	padding: 18px 28px 0 !important;
}
/* Empty profile fields (e.g. Social Networks with nothing in it) stay hidden. */
#wpforo #wpforo-wrap .wpf-field-name-html_soc_net:not(:has(a)) { display: none !important; }
#wpforo #wpforo-wrap .wpforo-profile {
	border: 0 !important;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
}
#wpforo #wpforo-wrap .wpf-profile-avatar img {
	display: block;
	width: 84px !important;
	height: 84px !important;
	border-radius: 50%;
	box-shadow: 0 0 0 3px #fff, 0 0 0 6px var(--qkl-magenta);
}
#wpforo #wpforo-wrap .wpforo-profile-head a.wpf-button,
#wpforo #wpforo-wrap .wpforo-profile-back a { border-radius: 99px !important; }
#wpforo #wpforo-wrap .wpf-profile-menu {
	color: var(--qkl-text-soft);
	border-bottom: 3px solid transparent;
	font-family: var(--qkl-font-head);
	font-weight: 700;
}
#wpforo #wpforo-wrap .wpf-profile-menu a { color: inherit !important; }
#wpforo #wpforo-wrap .wpforo-profile .wpforo-profile-menu .wpf-profile-menu.wpforo-active,
#wpforo #wpforo-wrap .wpforo-profile .wpforo-profile-menu .wpf-profile-menu:hover {
	color: var(--qkl-magenta) !important;
	background: transparent !important;
	border-bottom-color: var(--qkl-magenta) !important;
}
#wpforo #wpforo-wrap .wpf-profile-menu.wpforo-active i,
#wpforo #wpforo-wrap .wpf-profile-menu:hover i { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-profile-section { border-color: rgba(23, 17, 31, .07) !important; }
/* Profile body content keeps the same inset as the header - no flush-left tiles. */
#wpforo #wpforo-wrap .wpf-profile-body { padding: 0 28px 26px !important; }
#wpforo #wpforo-wrap .wpforo-profile-menu { padding: 0 28px !important; }

/* ============ Recent / search / tags ============ */
#wpforo #wpforo-wrap .wpf-recent-bar,
#wpforo #wpforo-wrap .wpf-search-bar {
	margin: 0 0 20px;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpf-recent-bar select,
#wpforo #wpforo-wrap .wpf-search-bar select { border-radius: 99px !important; padding: 9px 16px; }
#wpforo #wpforo-wrap .wpforo-recent-wrap .wpforo-recent-content,
#wpforo #wpforo-wrap .wpforo-search-wrap .wpforo-search-content {
	border: 0 !important;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
}
#wpforo #wpforo-wrap .wpforo-recent-content .wpf-ttr { background: #fff !important; }
#wpforo #wpforo-wrap .wpforo-recent-content .wpf-ptr { border-color: rgba(23, 17, 31, .06) !important; }
#wpforo #wpforo-wrap .wpf-search-result-card { border-color: rgba(23, 17, 31, .07) !important; }
#wpforo #wpforo-wrap .wpf-search-result-card:hover { border-color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-sr-view-link:hover { background: var(--qkl-magenta-soft) !important; }
#wpforo #wpforo-wrap .wpf-sr-empty {
	border: 0 !important;
	border-left: 4px solid var(--qkl-magenta) !important;
	border-radius: var(--qkl-radius-sm);
	background: var(--qkl-magenta-soft) !important;
}
#wpforo #wpforo-wrap .wpf-sr-empty p { color: var(--qkl-text) !important; }
#wpforo #wpforo-wrap .wpf-sr-empty-icon { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-widget-tags li { background: var(--qkl-magenta-soft) !important; border-radius: 99px; }
#wpforo #wpforo-wrap .wpf-widget-tags li a { color: var(--qkl-magenta-dark) !important; font-weight: 600; }
#wpforo #wpforo-wrap .wpf-widget-tags li span { color: var(--qkl-magenta-dark) !important; }
#wpforo #wpforo-wrap .wpf-widget-tags li:hover { background: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap .wpf-widget-tags li:hover a,
#wpforo #wpforo-wrap .wpf-widget-tags li:hover span { color: #fff !important; }

/* Generic actions (mark read, tools, sort links) */
#wpforo #wpforo-wrap .wpf-action,
.wpf-notifications .wpf-action { color: var(--qkl-text-soft); }
#wpforo #wpforo-wrap .wpf-action:hover,
.wpf-notifications .wpf-action:hover { color: var(--qkl-magenta); cursor: pointer; }

/* ============ Forum footer: one open stats card ============ */
#wpforo #wpforo-wrap #wpforo-footer {
	margin: 34px 0 0;
	border: 0;
	border-radius: var(--qkl-radius);
	background: #fff;
	box-shadow: var(--qkl-shadow);
	overflow: hidden;
}
#wpforo #wpforo-wrap #wpforo-stat-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	flex-wrap: wrap;
	padding: 17px 24px 15px;
	border: 0 !important;
	border-bottom: 1px solid rgba(23, 17, 31, .07) !important;
	background: #fff;
	color: var(--qkl-ink);
}
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-title {
	margin: 0;
	border: 0 !important;
	color: var(--qkl-ink);
	font-family: var(--qkl-font-head);
	font-weight: 800;
}
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-title svg { fill: var(--qkl-magenta); }
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons { display: flex; gap: 16px; flex-wrap: wrap; }
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons a,
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons span,
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons .wpf-all-read i { color: var(--qkl-text-soft) !important; font-size: .85rem; font-weight: 600; }
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons a:hover,
#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons a:hover span { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap #wpforo-stat-header svg { fill: var(--qkl-magenta); }
#wpforo #wpforo-wrap #wpforo-stat-body { padding: 18px 24px; background: #fff; }
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-footer-box {
	border: 0 !important;
	background: transparent !important;
}
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-stat-item { border-color: rgba(23, 17, 31, .08) !important; }
#wpforo #wpforo-wrap #wpforo-stat-body li svg,
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-stat-item i { fill: var(--qkl-magenta); color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-stat-value {
	color: var(--qkl-ink) !important;
	font-family: var(--qkl-font-head);
	font-weight: 800;
}
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-stat-label { border: 0 !important; color: var(--qkl-text-soft) !important; }
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-newest-member svg,
#wpforo #wpforo-wrap #wpforo-stat-body .wpf-newest-post svg { fill: var(--qkl-magenta) !important; }

/* Plugin marketing, share strip and the icon legend stay hidden. */
#wpforo #wpforo-wrap .wpf-sbtn,
#wpforo #wpforo-wrap #wpforo-poweredby,
#wpforo #wpforo-wrap .wpf-last-info { display: none !important; }

/* ============ Detail cleanup ============ */
/* Usergroup-coloured author links (inline red) follow the palette instead. */
#wpforo #wpforo-wrap a[style*="color"] { color: var(--qkl-magenta) !important; }
#wpforo #wpforo-wrap a[style*="color"]:hover { color: var(--qkl-magenta-dark) !important; }

/* Menu items never carry the default active underline. */
#wpforo #wpforo-wrap #wpforo-menu li,
#wpforo #wpforo-wrap #wpforo-menu li a { border-bottom: 0 !important; box-shadow: none; }

/* Tag lists inside topic preview rows are quiet text, not a nested card. */
#wpforo #wpforo-wrap .wpforo-last-topic-bottom .wpforo-post.wpforo-tags,
#wpforo #wpforo-wrap .wpforo-topic-bottom .wpforo-post.wpforo-tags {
	display: inline;
	margin: 0;
	padding: 0;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0;
}
#wpforo #wpforo-wrap .wpforo-last-topic-bottom .wpf-tags-text,
#wpforo #wpforo-wrap .wpforo-topic-bottom .wpf-tags-text { display: inline; }
#wpforo #wpforo-wrap .wpforo-last-topic-bottom .wpf-tags-text a,
#wpforo #wpforo-wrap .wpforo-topic-bottom .wpf-tags-text a {
	color: var(--qkl-text-soft) !important;
	font-family: var(--qkl-font-body);
	font-size: .8rem;
	font-weight: 600;
	background: transparent !important;
}
#wpforo #wpforo-wrap .wpforo-last-topic-bottom .wpf-tags-text a:hover,
#wpforo #wpforo-wrap .wpforo-topic-bottom .wpf-tags-text a:hover { color: var(--qkl-magenta) !important; }

/* Collapse chevrons and small toggles: quiet, not default blue. */
#wpforo #wpforo-wrap .wpforo-forum-topic-toggle,
#wpforo #wpforo-wrap .wpforo-forum-topic-toggle i,
#wpforo #wpforo-wrap .wpforo-forum-stat + * i,
#wpforo #wpforo-wrap .wpf-forum-toggle i { color: rgba(23, 17, 31, .3) !important; }

/* Pinned/announcement icons in wpfl-1 preview rows: soft chip, no box border. */
#wpforo #wpforo-wrap .wpforo-last-topics-list li > div:first-child i.fa-thumbtack,
#wpforo #wpforo-wrap .wpforo-last-topics-list .wpf-topic-icon,
#wpforo #wpforo-wrap .wpforo-last-topics-list li [class*="icon"] { border: 0 !important; }
#wpforo #wpforo-wrap .wpforo-last-topics-list li > div i { color: var(--qkl-magenta); }

/* Dashed/dotted plugin separators become clean hairlines. */
#wpforo #wpforo-wrap .wpforo-post-tool-bar,
#wpforo #wpforo-wrap .wpf-post-edit-wrap,
#wpforo #wpforo-wrap .wpforo-last-topics-list li,
#wpforo #wpforo-wrap .wpf-related-topics,
#wpforo #wpforo-wrap .wpforo-post .wpf-bottom {
	border-color: rgba(23, 17, 31, .07) !important;
	border-style: solid !important;
}

/* Thread pages: the topic RSS chip is noise; the section keeps its own feed. */
#wpforo #wpforo-wrap.wpft-post .wpf-feed,
#wpforo #wpforo-wrap .wpf-post-head-bottom .wpf-right > .wpf-button-outlined { display: none !important; }

/* Breathing room between the reply count and the tag list in preview rows. */
#wpforo #wpforo-wrap .wpforo-last-topic-replies,
#wpforo #wpforo-wrap .wpforo-topic-replies { margin-right: 10px; }

/* ============ Dialogs (guest "Ask a question" prompt etc.) ============ */
.ui-dialog {
	border: 0 !important;
	border-radius: var(--qkl-radius) !important;
	box-shadow: var(--qkl-shadow-lg) !important;
	overflow: hidden;
	font-family: var(--qkl-font-body) !important;
}
.ui-dialog .ui-widget-header {
	background: var(--qkl-ink) !important;
	border: 0 !important;
	border-bottom: 3px solid var(--qkl-magenta) !important;
	border-radius: 0 !important;
}
.ui-dialog .ui-widget-header span.ui-dialog-title {
	color: #fff !important;
	font-family: var(--qkl-font-head) !important;
	font-weight: 700 !important;
}
#wpforo-dialog input[type="button"],
#wpforo-dialog input[type="submit"],
.ui-dialog input[type="button"],
.ui-dialog input[type="submit"] {
	border: 0 !important;
	border-radius: 99px !important;
	background: var(--qkl-magenta) !important;
	color: #fff !important;
	font-family: var(--qkl-font-head) !important;
	font-weight: 700 !important;
	padding: 10px 22px !important;
	cursor: pointer;
}
#wpforo-dialog input[type="button"]:hover,
.ui-dialog input[type="button"]:hover { background: var(--qkl-magenta-dark) !important; }

/* Floating status toasts drop below the sticky header instead of colliding with it. */
#wpforo-notifications-bar {
	top: 96px !important;
	right: 16px !important;
}
#wpforo-notifications-bar .wpforo-message,
#wpforo-notifications-bar > div:not(.wpforo-load) {
	border-radius: var(--qkl-radius-sm);
	box-shadow: 0 14px 34px rgba(23, 17, 31, .22);
	font-family: var(--qkl-font-body);
}

/* Template notices */
#wpforo #wpforo-wrap .wpf-note,
#wpforo #wpforo-wrap .wpforo-info-message,
#wpforo #wpforo-wrap .wpf-info-bar {
	border: 0;
	border-left: 4px solid var(--qkl-magenta);
	border-radius: var(--qkl-radius-sm);
	background: var(--qkl-magenta-soft);
	color: var(--qkl-text);
	padding: 14px 18px;
}

/* ============ Responsive ============ */
@media (max-width: 960px) {
	#wpforo #wpforo-wrap #wpforo-menu {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}
	/* wpForo's own JS hamburger duplicates the site nav toggle in the header.
	   Kill it and keep the pill row itself, horizontally scrollable. */
	#wpforo #wpforo-wrap #wpforo-menu .wpf-res-menu { display: none !important; }
	#wpforo #wpforo-wrap #wpforo-menu .wpf-menu,
	#wpforo #wpforo-wrap #wpforo-menu #wpf-menu {
		display: flex !important;
		position: static !important;
		flex-wrap: nowrap;
		background: transparent !important;
		box-shadow: none !important;
	}
	#wpforo #wpforo-wrap #wpforo-menu .wpf-menu li { display: block; float: none; clear: none; }
	#wpforo #wpforo-wrap #wpforo-menu .wpf-left {
		display: block !important;
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	#wpforo #wpforo-wrap #wpforo-menu .wpf-left::-webkit-scrollbar { display: none; }
	#wpforo #wpforo-wrap #wpforo-menu ul { width: max-content; min-width: 100%; }
	#wpforo #wpforo-wrap #wpforo-menu li a { white-space: nowrap; }
	#wpforo #wpforo-wrap #wpforo-menu .wpf-bar-right { width: 100%; margin: 0; padding: 0; }
	#wpforo #wpforo-wrap #wpforo-menu .wpf-search-field { width: 100%; }
	#wpforo #wpforo-wrap .wpforo-forum-stat { display: none; }
}

@media (max-width: 620px) {
	.qkl-community-hero { padding-top: 48px; padding-bottom: 44px; }
	.qkl-community-hero h1 { font-size: 2.35rem; }
	#wpforo #wpforo-wrap { font-size: 15px; }
	#wpforo #wpforo-wrap #wpforo-menu { margin-bottom: 20px; padding-bottom: 14px; }
	#wpforo #wpforo-wrap #wpforo-menu li a { padding: 9px 13px; font-size: .8rem; }
	#wpforo #wpforo-wrap .wpforo-cat-panel .cat-title,
	#wpforo #wpforo-wrap .wpforo-cat-panel .cat-name { font-size: 1.22rem; }
	#wpforo #wpforo-wrap .forum-wrap { margin-bottom: 16px; border-radius: 16px; }
	#wpforo #wpforo-wrap .wpforo-forum,
	#wpforo #wpforo-wrap .wpfl-1 .wpforo-forum,
	#wpforo #wpforo-wrap .wpfl-3 .wpforo-forum { align-items: flex-start; gap: 14px; padding: 18px; }
	#wpforo #wpforo-wrap .wpforo-forum-icon,
	#wpforo #wpforo-wrap .wpfl-1 .wpforo-forum-icon,
	#wpforo #wpforo-wrap .wpfl-3 .wpforo-forum-icon { width: 42px; min-width: 42px; }
	#wpforo #wpforo-wrap .wpforo-forum-icon > div,
	#wpforo #wpforo-wrap .wpforo-forum-icon .wpf-circle { width: 40px !important; height: 40px !important; }
	#wpforo #wpforo-wrap h3.wpforo-forum-title a { font-size: 1rem; }
	#wpforo #wpforo-wrap .wpforo-forum-description { font-size: .87rem; }
	#wpforo #wpforo-wrap .wpforo-last-topics-list li { padding: 13px 18px; gap: 12px; }
	#wpforo #wpforo-wrap .wpf-tbox { width: 46px; min-width: 46px; padding: 6px 3px; }
	#wpforo #wpforo-wrap .wpforo-topic { padding: 14px 18px; gap: 12px; flex-wrap: wrap; }
	#wpforo #wpforo-wrap .wpforo-topic-avatar img.avatar { width: 34px; height: 34px; }
	#wpforo #wpforo-wrap .wpforo-topic-stat { order: 3; width: 100%; }
	#wpforo #wpforo-wrap .wpforo-post { padding: 16px; border-radius: 16px; }
	#wpforo #wpforo-wrap .wpforo-login-content,
	#wpforo #wpforo-wrap .wpforo-register-content { padding: 24px 20px !important; }
	#wpforo #wpforo-wrap #wpforo-stat-header,
	#wpforo #wpforo-wrap #wpforo-stat-body { padding: 14px 18px; }
	#wpforo #wpforo-wrap #wpforo-stat-header .wpf-footer-buttons { display: none !important; }
	#wpforo #wpforo-wrap #wpforo-stat-body .wpf-footer-box ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	#wpforo #wpforo-wrap .wpforo-members { grid-template-columns: 1fr 1fr; gap: 14px; }
}

@media (max-width: 430px) {
	#wpforo #wpforo-wrap .wpforo-members { grid-template-columns: 1fr; }
}
