/*
 * VerifiableLetter Community — bbPress skin. Loaded only on forum screens and pages that use
 * bbPress shortcodes, after bbPress's own stylesheet (which still handles the structure).
 */

.vc-forum-head { padding-top: clamp(1.75rem, 4vw, 3rem); margin-bottom: 1.75rem; }
.vc-forum-head-row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.25rem 2rem; }
.vc-forum-head-row > div { min-width: 0; flex: 1 1 420px; }
.vc-forum-head .vc-search.is-forum { flex: 0 1 380px; }
.vc-crumbs.is-bbp .bbp-breadcrumb { float: none; margin: 0; font-size: inherit; }
.vc-crumbs.is-bbp p { margin: 0; display: flex; flex-wrap: wrap; gap: .3rem; align-items: center; }
.vc-crumbs.is-bbp .bbp-breadcrumb-sep { opacity: .5; padding: 0 .1rem; }
.vc-crumbs.is-bbp .bbp-breadcrumb-current { color: var(--wp--preset--color--muted); }

#bbpress-forums { font-size: 1rem; line-height: 1.6; color: var(--wp--preset--color--text); margin: 0; }
#bbpress-forums a { color: var(--wp--preset--color--brand); }
#bbpress-forums div.bbp-breadcrumb { display: none; } /* the heading block shows it */
#bbpress-forums .bbp-search-form { display: none; }

/* Lists: forums, topics, replies */
#bbpress-forums ul.bbp-forums, #bbpress-forums ul.bbp-topics, #bbpress-forums ul.bbp-replies, #bbpress-forums ul.bbp-search-results, #bbpress-forums ul.bbp-lead-topic {
	border: 1px solid var(--wp--preset--color--border); border-radius: 14px; overflow: hidden; background: var(--vc-card); margin-bottom: 1.5rem; font-size: .97rem;
}
#bbpress-forums li.bbp-header, #bbpress-forums li.bbp-footer { background: var(--wp--preset--color--soft); border: 0; border-bottom: 1px solid var(--wp--preset--color--border); padding: .7rem 1.1rem; font-family: var(--wp--preset--font-family--heading); font-size: .75rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
#bbpress-forums li.bbp-footer { border-bottom: 0; border-top: 1px solid var(--wp--preset--color--border); }
#bbpress-forums li.bbp-footer > * { display: none; }
#bbpress-forums li.bbp-footer { padding: 0; }
#bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic { padding: 1rem 1.1rem; border-top: 1px solid var(--wp--preset--color--border); transition: background .15s; }
#bbpress-forums li.bbp-body ul.forum:first-child, #bbpress-forums li.bbp-body ul.topic:first-child { border-top: 0; }
#bbpress-forums li.bbp-body ul.forum:hover, #bbpress-forums li.bbp-body ul.topic:hover { background: var(--vc-tint); }
#bbpress-forums div.odd, #bbpress-forums ul.odd, #bbpress-forums div.even, #bbpress-forums ul.even { background: transparent; }
#bbpress-forums .status-closed, #bbpress-forums .status-closed a { color: inherit; }
#bbpress-forums div.bbp-forum-header, #bbpress-forums div.bbp-topic-header, #bbpress-forums div.bbp-reply-header { background: transparent; }

#bbpress-forums a.bbp-forum-title, #bbpress-forums a.bbp-topic-permalink { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.06rem; color: var(--wp--preset--color--ink); letter-spacing: -.01em; line-height: 1.35; }
#bbpress-forums a.bbp-forum-title:hover, #bbpress-forums a.bbp-topic-permalink:hover { color: var(--wp--preset--color--brand); }
#bbpress-forums li.bbp-forum-info { display: flex; flex-direction: column; gap: .15rem; }
#bbpress-forums li.bbp-forum-info::before { display: none; }
#bbpress-forums li.bbp-header li, #bbpress-forums li.bbp-header span, #bbpress-forums li.bbp-header div { font-size: inherit; color: inherit; font-weight: inherit; letter-spacing: inherit; text-transform: inherit; }
#bbpress-forums .bbp-forum-info .bbp-forum-content, #bbpress-forums .bbp-forum-content { font-size: .92rem; margin: .15rem 0 0; color: var(--wp--preset--color--muted); font-size: .92rem; }
#bbpress-forums li.bbp-forum-topic-count, #bbpress-forums li.bbp-forum-reply-count, #bbpress-forums li.bbp-topic-voice-count, #bbpress-forums li.bbp-topic-reply-count { font-family: var(--wp--preset--font-family--heading); font-weight: 600; color: var(--wp--preset--color--ink); }
#bbpress-forums li.bbp-forum-freshness, #bbpress-forums li.bbp-topic-freshness { font-size: .85rem; color: var(--wp--preset--color--muted); }
#bbpress-forums li.bbp-forum-freshness a, #bbpress-forums li.bbp-topic-freshness a { color: var(--wp--preset--color--text); }
#bbpress-forums p.bbp-topic-meta, #bbpress-forums .bbp-topic-started-by, #bbpress-forums .bbp-topic-started-in { font-size: .84rem; color: var(--wp--preset--color--muted); }
#bbpress-forums p.bbp-topic-meta img.avatar, #bbpress-forums ul.bbp-reply-revision-log img.avatar, #bbpress-forums ul.bbp-topic-revision-log img.avatar, #bbpress-forums div.bbp-template-notice img.avatar, #bbpress-forums .widget_display_topics img.avatar, #bbpress-forums .widget_display_replies img.avatar { border-radius: 50%; margin-bottom: 0; vertical-align: middle; border: 0; }
#bbpress-forums .bbp-forums-list { border-left: 2px solid var(--wp--preset--color--border); margin-top: .5rem; padding-left: .75rem; }
#bbpress-forums .bbp-forums-list li { font-size: .9rem; }
#bbpress-forums .sticky, #bbpress-forums .super-sticky { background: var(--vc-tint) !important; }
#bbpress-forums .bbp-topic-title .bbp-topic-action, #bbpress-forums .bbp-row-actions { font-size: .8rem; }

/* Single topic: posts */
#bbpress-forums ul.bbp-replies, #bbpress-forums ul.bbp-lead-topic { overflow: visible; }
#bbpress-forums div.bbp-reply-header, #bbpress-forums div.bbp-topic-header { padding: .6rem 1.1rem; border-top: 1px solid var(--wp--preset--color--border); font-size: .82rem; color: var(--wp--preset--color--muted); }
#bbpress-forums li.bbp-body > div:first-child.bbp-reply-header, #bbpress-forums li.bbp-body > div:first-child.bbp-topic-header { border-top: 0; }
#bbpress-forums .bbp-meta a, #bbpress-forums .bbp-reply-permalink { color: var(--wp--preset--color--muted); }
#bbpress-forums div.bbp-reply-author, #bbpress-forums div.bbp-topic-author { width: 140px; padding: 1rem .5rem 1rem 1.1rem; }
#bbpress-forums div.bbp-reply-author img.avatar, #bbpress-forums div.bbp-topic-author img.avatar { border-radius: 50%; width: 64px; height: 64px; }
#bbpress-forums div.bbp-reply-author a.bbp-author-name, #bbpress-forums div.bbp-topic-author a.bbp-author-name { font-family: var(--wp--preset--font-family--heading); font-weight: 600; color: var(--wp--preset--color--ink); margin-top: .35rem; }
#bbpress-forums div.bbp-reply-author .bbp-author-role, #bbpress-forums div.bbp-topic-author .bbp-author-role { font-size: .74rem; font-style: normal; display: inline-block; margin-top: .2rem; padding: .1rem .5rem; border-radius: 999px; background: var(--vc-tint-2); color: var(--vc-crimson); }
#bbpress-forums div.bbp-reply-content, #bbpress-forums div.bbp-topic-content { margin-left: 150px; padding: 1rem 1.25rem 1.25rem 0; font-size: 1rem; line-height: 1.7; }
#bbpress-forums div.bbp-reply-content p, #bbpress-forums div.bbp-topic-content p { margin: 0 0 .9em; }
#bbpress-forums .bbp-reply-content blockquote, #bbpress-forums .bbp-topic-content blockquote { margin: 0 0 1rem; padding: .5rem 1rem; border-left: 3px solid var(--vc-crimson); background: var(--wp--preset--color--soft); }
#bbpress-forums .bbp-reply-content code, #bbpress-forums .bbp-topic-content code { padding: .1em .35em; border-radius: 5px; background: var(--vc-tint); font-size: .9em; }
#bbpress-forums .bbp-admin-links { font-size: .78rem; }
#bbpress-forums .bbp-admin-links a { color: var(--wp--preset--color--muted); }
.vc-forum-body .bbp-topic-tags { font-size: .85rem; color: var(--wp--preset--color--muted); }
@media (max-width: 640px) {
	#bbpress-forums div.bbp-reply-author, #bbpress-forums div.bbp-topic-author { float: none; width: auto; padding: 1rem 1.1rem 0; display: flex; align-items: center; gap: .6rem; text-align: left; }
	#bbpress-forums div.bbp-reply-author img.avatar, #bbpress-forums div.bbp-topic-author img.avatar { width: 40px; height: 40px; position: static; }
	#bbpress-forums div.bbp-reply-author br, #bbpress-forums div.bbp-topic-author br { display: none; }
	#bbpress-forums div.bbp-reply-content, #bbpress-forums div.bbp-topic-content { margin-left: 0; padding: .6rem 1.1rem 1.1rem; }
	#bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic { padding: .9rem; }
	#bbpress-forums li.bbp-forum-info, #bbpress-forums li.bbp-topic-title { width: 100%; }
}

/* Subscribe / favourite links */
#bbpress-forums #subscription-toggle, #bbpress-forums #favorite-toggle { float: none; display: inline-block; margin: 0 0 1rem; }
#bbpress-forums #subscription-toggle a, #bbpress-forums #favorite-toggle a, #bbpress-forums .subscription-toggle { display: inline-flex; align-items: center; padding: .35rem .9rem; border: 1px solid var(--wp--preset--color--border); border-radius: 999px; color: var(--wp--preset--color--ink); font-size: .85rem; text-decoration: none; }
#bbpress-forums #subscription-toggle a:hover, #bbpress-forums #favorite-toggle a:hover { border-color: var(--vc-crimson); color: var(--vc-crimson); }

/* Pagination */
#bbpress-forums .bbp-pagination { font-size: .88rem; color: var(--wp--preset--color--muted); margin-bottom: 1rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .5rem; float: none; width: auto; }
#bbpress-forums .bbp-pagination-count, #bbpress-forums .bbp-pagination-links { float: none; }
#bbpress-forums .bbp-pagination-links a, #bbpress-forums .bbp-pagination-links span.current { display: inline-flex; min-width: 2.1rem; height: 2.1rem; padding: 0 .55rem; align-items: center; justify-content: center; border-radius: 999px; border: 1px solid var(--wp--preset--color--border); color: var(--wp--preset--color--ink); text-decoration: none; opacity: 1; }
#bbpress-forums .bbp-pagination-links span.current { background: var(--vc-grad); border-color: transparent; color: #fff; }

/* Notices */
#bbpress-forums div.bbp-template-notice, #bbpress-forums div.indicator-hint, div.bbp-template-notice, .bbp-login-form div.bbp-template-notice { border: 1px solid var(--wp--preset--color--border); border-radius: 12px; background: var(--wp--preset--color--soft); padding: .8rem 1.1rem; margin: 0 0 1.25rem; color: var(--wp--preset--color--text); }
#bbpress-forums div.bbp-template-notice p, #bbpress-forums div.bbp-template-notice li { margin: .2rem 0; padding: 0; font-size: .95rem; line-height: 1.55; }
#bbpress-forums div.bbp-template-notice.info { border-color: rgba(26, 155, 245, .3); background: rgba(26, 155, 245, .06); }
#bbpress-forums div.bbp-template-notice.error, #bbpress-forums div.bbp-template-notice.warning { border-color: rgba(194, 57, 79, .35); background: var(--vc-tint); }
#bbpress-forums div.bbp-template-notice.error li, #bbpress-forums div.bbp-template-notice.warning li { color: var(--wp--preset--color--ink); }
#bbpress-forums #new-post ~ .bbp-no-topic, #bbpress-forums .bbp-no-reply, #bbpress-forums .bbp-no-topic, #bbpress-forums div.bbp-template-notice:has(> ul > li > a[href*="login"]) { text-align: center; }

/* Forms: new topic, reply, profile edit, login/register shortcodes */
#bbpress-forums fieldset.bbp-form, .bbp-login-form fieldset.bbp-form, fieldset.bbp-form { border: 1px solid var(--wp--preset--color--border); border-radius: 14px; padding: 1.25rem 1.4rem 1.4rem; margin: 0 0 1.5rem; background: var(--vc-card); }
#bbpress-forums fieldset.bbp-form legend, fieldset.bbp-form legend { padding: 0 .5rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.1rem; color: var(--wp--preset--color--ink); }
#bbpress-forums fieldset.bbp-form label, fieldset.bbp-form label { font-weight: 500; color: var(--wp--preset--color--ink); font-size: .93rem; }
#bbpress-forums fieldset.bbp-form input[type="text"], #bbpress-forums fieldset.bbp-form input[type="email"], #bbpress-forums fieldset.bbp-form input[type="url"], #bbpress-forums fieldset.bbp-form input[type="password"], #bbpress-forums fieldset.bbp-form select, #bbpress-forums fieldset.bbp-form textarea,
.bbp-login-form input[type="text"], .bbp-login-form input[type="password"], .bbp-login-form input[type="email"], #bbpress-forums #bbp-your-profile fieldset input, #bbpress-forums #bbp-your-profile fieldset textarea {
	width: 100%; max-width: 100%; height: auto; min-height: 44px; line-height: 1.4; box-sizing: border-box; padding: .65rem .85rem; border: 1.5px solid var(--wp--preset--color--border); border-radius: 10px; background: var(--wp--preset--color--base); color: var(--wp--preset--color--ink); font: inherit; font-size: .97rem;
}
#bbpress-forums fieldset.bbp-form :is(input, select, textarea):focus, .bbp-login-form input:focus { border-color: var(--vc-crimson); outline: 0; box-shadow: 0 0 0 4px rgba(143, 29, 49, .12); }
#bbpress-forums fieldset.bbp-form p, #bbpress-forums fieldset.bbp-form textarea, #bbpress-forums fieldset.bbp-form select, #bbpress-forums fieldset.bbp-form input { margin: 0 0 .9rem; }
#bbpress-forums .wp-editor-container { border: 1.5px solid var(--wp--preset--color--border); border-radius: 10px; overflow: hidden; }
#bbpress-forums div.bbp-the-content-wrapper textarea.bbp-the-content { border: 0; border-radius: 0; min-height: 180px; }
#bbpress-forums div.bbp-the-content-wrapper div.quicktags-toolbar { background: var(--wp--preset--color--soft); border-bottom: 1px solid var(--wp--preset--color--border); padding: .35rem; }
#bbpress-forums div.bbp-the-content-wrapper input.button { width: auto; padding: .2rem .55rem; margin: .1rem; border: 1px solid var(--wp--preset--color--border); border-radius: 6px; background: var(--wp--preset--color--base); color: var(--wp--preset--color--ink); font-size: .8rem; }
#bbpress-forums .button, #bbpress-forums button.button, .bbp-login-form .button, .bbp-submit-wrapper button, #bbp_topic_submit, #bbp_reply_submit, .bbp-login-form button, .bbp-login-form input[type="submit"], #bbpress-forums #bbp-your-profile #bbp_user_edit_submit {
	display: inline-flex; align-items: center; padding: .7rem 1.35rem; border: 0; border-radius: 999px; background: var(--vc-grad); color: #fff; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: .95rem; cursor: pointer; float: none;
}
#bbpress-forums div.bbp-submit-wrapper { float: none; text-align: right; margin-top: .5rem; }
#bbpress-forums .bbp-form .form-allowed-tags { display: none; }
#bbpress-forums fieldset.bbp-form input[type="checkbox"] { width: auto; margin-right: .35rem; }

/* User profile */
#bbpress-forums #bbp-user-wrapper { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 2rem; }
#bbpress-forums div#bbp-single-user-details { float: none; width: auto; }
#bbpress-forums #bbp-single-user-details #bbp-user-avatar { margin: 0 0 1rem; }
#bbpress-forums #bbp-single-user-details #bbp-user-avatar img.avatar { border-radius: 50%; width: 120px; height: 120px; }
#bbpress-forums #bbp-single-user-details #bbp-user-navigation li { margin: 0; }
#bbpress-forums #bbp-single-user-details #bbp-user-navigation a { display: block; padding: .45rem .7rem; border-radius: 9px; color: var(--wp--preset--color--text); }
#bbpress-forums #bbp-single-user-details #bbp-user-navigation li.current a { background: var(--vc-tint-2); color: var(--vc-crimson); font-weight: 600; opacity: 1; }
#bbpress-forums #bbp-user-body { margin: 0; min-width: 0; }
#bbpress-forums #bbp-user-body h2.entry-title { font-size: 1.35rem; margin: 0 0 1rem; }
#bbpress-forums #bbp-your-profile fieldset { padding: 0; }
#bbpress-forums #bbp-your-profile fieldset label[for] { float: none; width: auto; text-align: left; display: block; padding: 0 0 .3rem; }
#bbpress-forums #bbp-your-profile fieldset div { margin-bottom: 1rem; }
#bbpress-forums #bbp-your-profile fieldset span.description { margin: .3rem 0 0; font-size: .85rem; color: var(--wp--preset--color--muted); border: 0; background: none; padding: 0; float: none; width: auto; }
@media (max-width: 760px) { #bbpress-forums #bbp-user-wrapper { grid-template-columns: 1fr; } }

/* Login / register shortcodes on normal pages (e.g. the Sign up page) */
.bbp-login-form { max-width: 520px; margin-left: 0 !important; }
.bbp-login-form div.bbp-template-notice li { font-size: .92rem; margin: .2rem 0; color: var(--wp--preset--color--text); }
.bbp-login-form .bbp-username, .bbp-login-form .bbp-email, .bbp-login-form .bbp-password { margin-bottom: .9rem; }
.bbp-login-form label { display: block; width: auto !important; margin-bottom: .3rem; font-weight: 500; color: var(--wp--preset--color--ink); }
.bbp-login-form .bbp-submit-wrapper { float: none !important; text-align: left; }
.bbp-login-form .bbp-template-notice ul { margin: 0; padding-left: 1.1rem; }

/* Dark mode details bbPress hard-codes */
:root[data-theme="dark"] #bbpress-forums .bbp-forum-content, :root[data-theme="dark"] #bbpress-forums .bbp-topic-content, :root[data-theme="dark"] #bbpress-forums .bbp-reply-content { color: var(--wp--preset--color--text); }
:root[data-theme="dark"] #bbpress-forums div.bbp-reply-author .bbp-author-role { color: var(--vc-rose); }

/* The friendly "Log in or create a free account" line replaces bbPress's inline login form on forum screens. */
.vc-forum-body form.bbp-login-form { display: none; }
.vc-forum-body .bbp-template-notice a { font-weight: 600; }
