/**
 * bbPress Forum — LustMich Theme Styles
 * Replaces default bbPress CSS entirely (bbp-default is dequeued)
 *
 * @package LustMich
 */

/* ========================================
   1. BASE — Font, Colors, Links
   ======================================== */

#bbpress-forums {
    font-family: "Noto Sans", sans-serif;
    font-size: 14px;
    color: #201712;
    line-height: 1.7;
    background: transparent;
    clear: both;
    margin-bottom: 20px;
    position: relative;
}

.lm-forum-breadcrumb-wrap {
    margin-left: 10px;
}

#bbpress-forums a {
    text-decoration: none;
    transition: color 0.2s ease;
    box-shadow: none;
}

#bbpress-forums a:hover {
    text-decoration: none;
}

/* ========================================
   2. LAYOUT — Wrappers, Lists
   ======================================== */

#bbpress-forums ul,
#bbpress-forums.bbpress-wrapper ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

#bbpress-forums li {
    background: none;
    margin: 0;
    list-style: none;
}

#bbpress-forums hr {
    border: none;
    border-top: 1px solid #E8E0D8;
    margin: 0 0 24px;
}

/* Screen reader text */
.screen-reader-text,
.screen-reader-text span,
.hidden,
.bbp-no-js .hide-if-no-js,
.bbp-js .hide-if-js {
    position: absolute;
    margin: -1px;
    padding: 0;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    border: 0;
    word-wrap: normal !important;
}

/* ========================================
   3. NOTICES — Guest & Verification
   ======================================== */

.lm-forum-notice {
    text-align: center;
    padding: 28px 20px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #201712;
    line-height: 1.6;
}

.lm-forum-notice__icon {
    flex-shrink: 0;
    margin-bottom: 2px;
}

.lm-forum-notice__text {
    margin: 0;
}

.lm-forum-notice__text a {
    color: #A28573;
    font-weight: 500;
    text-decoration: none;
}

.lm-forum-notice__text a:hover {
    color: #8B6F5E;
    text-decoration: underline;
}

/* bbPress default template notices */
#bbpress-forums .bbp-template-notice {
    background: #FAF8F6;
    border: 1px solid #E8E0D8;
    border-left: 3px solid #A28573;
    border-radius: 4px;
    padding: 12px 16px;
    margin-bottom: 16px;
    font-size: 14px;
    color: #201712;
}

#bbpress-forums .bbp-template-notice.error,
#bbpress-forums .bbp-template-notice.warning {
    border-left-color: #ff1414;
}

#bbpress-forums .bbp-template-notice.info {
    border-left-color: #dbd100;
}

#bbpress-forums .bbp-template-notice p {
    margin: 0;
}

/* Guest login banner — fixed overlay below header */
.lm-forum-guest-banner {
    position: fixed;
    top: 53px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 199;
    display: flex;
    align-items: center;
    gap: 14px;
    max-width: 620px;
    width: calc(100% - 32px);
    padding: 14px 20px;
    background: #fff;
    font-size: 14px;
    color: #201712;
    line-height: 1.5;
    border: 1px solid #b0b0b0;
    border-radius: 8px;
    box-shadow: 5px 5px 10px rgb(24 24 24 / 20%);
}

/* Shift down when scrolling top banner is present */
.lm-has-banner .lm-forum-guest-banner {
    top: 81px;
}

.lm-forum-guest-banner[hidden] {
    display: none;
}

.lm-forum-guest-banner__icon {
    flex-shrink: 0;
}

.lm-forum-guest-banner__text {
    margin: 0;
    flex: 1;
}

.lm-forum-guest-banner__text a {
    color: #A28573;
    font-weight: 600;
    text-decoration: none;
}

.lm-forum-guest-banner__text a:hover {
    color: #8B6F5E;
    text-decoration: underline;
}

.lm-forum-guest-banner__close {
    flex-shrink: 0;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    border: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.5;
    transition: opacity 0.15s;
}

.lm-forum-guest-banner__close:hover {
    opacity: 1;
    background-color: transparent !important;
    color: #A28573 !important;
}

@media (max-width: 480px) {
    .lm-forum-guest-banner {
        gap: 10px;
        padding: 12px 14px;
        font-size: 13px;
    }
}

/* ========================================
   4a. BREADCRUMB
   ======================================== */

.lm-forum-breadcrumb {
    font-size: 13px;
    color: #999;
    padding: 10px 0;
    margin-bottom: 0;
}

.lm-forum-breadcrumb a {
    color: #999;
    text-decoration: none;
}

.lm-forum-breadcrumb a:hover {
    color: #666;
    text-decoration: underline;
}

.lm-forum-breadcrumb__sep {
    margin: 0 6px;
    color: #ccc;
}

.lm-forum-breadcrumb__current {
    color: #201712;
    font-weight: 500;
}

/* ========================================
   4b. STICKY SEARCH BAR — Compact, expands on hover
   ======================================== */

.lm-forum-search-sticky {
    position: fixed;
    top: calc(var(--header-bottom, 73px) + 2px);
    z-index: 100;
    height: 0;
    text-align: right;
    pointer-events: none;
    right: 5px;
}

.lm-forum-search__bar {
    display: inline-flex;
    align-items: center;
    gap: 0;
    background: #FAF8F6;
    border: 1px solid #E8E0D8;
    border-radius: 20px;
    padding: 0 12px;
    height: 36px;
    transition: box-shadow 0.3s ease;
    pointer-events: auto;
    position: relative;
    top: 1px;
    right: 0;
}

.lm-forum-search__bar:hover,
.lm-forum-search__bar:focus-within {
    box-shadow: 0 1px 6px rgba(162, 133, 115, 0.15);
    border-color: #A28573;
}

.lm-forum-search__icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    color: #A28573;
    cursor: pointer;
}

.lm-forum-search__form {
    display: flex;
}

.lm-forum-search__input {
    border: none !important;
    background: transparent !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: "Noto Sans", sans-serif;
    font-size: 13px;
    color: #201712;
    padding: 0 8px !important;
    width: 0;
    opacity: 0;
    transition: width 0.3s ease, opacity 0.3s ease;
    height: 34px;
    line-height: 34px;
}

.lm-forum-search__input::placeholder {
    color: #999;
    font-style: normal;
}

.lm-forum-search__bar:hover .lm-forum-search__input,
.lm-forum-search__bar:focus-within .lm-forum-search__input {
    width: 220px;
    opacity: 1;
}

/* ========================================
   4c. PAGE TITLE
   ======================================== */

.lm-forum-page-title {
    text-align: center;
    margin: 16px 0 12px;
    padding: 0;
    line-height: 1.3;
}

/* ========================================
   4d. STICKY TITLE BAR (Topic + Forum pages)
   ======================================== */

.lm-topic-sticky-bar,
.lm-forum-sticky-bar {
    position: sticky;
    top: var(--header-bottom, 73px);
    z-index: 99;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* padding: 8px 16px; */
    border-bottom: 1px solid #E8E0D8;
    gap: 12px;
    padding-right: 6%;
    padding-left: 4%;
    background: #e8e0d8c4;
}

.lm-topic-sticky-bar .lm-forum-page-title,
.lm-forum-sticky-bar .lm-forum-page-title {
    margin: 0;
    text-align: left;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lm-topic-sticky-bar .lm-forum-actions,
.lm-forum-sticky-bar .lm-forum-actions {
    margin-bottom: 0;
    flex-shrink: 0;
}

/* ========================================
   4e. FORUM ACTIONS (Subscribe / Favorite)
   ======================================== */

.lm-forum-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 16px;
}

#bbpress-forums #subscription-toggle,
#bbpress-forums #favorite-toggle {
    float: none;
}

/* Subscription/favorite when directly inside the wrapper (not inside .lm-forum-actions) */
.bbpress-wrapper > #subscription-toggle,
.bbpress-wrapper > #favorite-toggle {
    text-align: center;
    display: block;
    margin-bottom: 16px;
}

/* Inside the actions bar (single topic) */
.lm-forum-actions #subscription-toggle,
.lm-forum-actions #favorite-toggle {
    display: inline;
}

/* ========================================
   5. FORUM CARDS — Index Page
   ======================================== */

.lm-forum-cards {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
    margin-left:5%;
    margin-right:5%;
    margin-top: 5px;
}

[id^="subscribe-"] a {
    display:flex;
    flex-direction: row;
    justify-content: center;
    color: #A28573 !important;
    margin-bottom: 10px;
}


.lm-forum-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 5px 20px;
    background: #fff;
    border: 1px solid #b0b0b0;
    border-radius: 8px;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.lm-forum-card:hover {
    border-color: #A28573;
    box-shadow: 0 2px 12px rgba(162, 133, 115, 0.1);
}

/* Icon + topic count */
.lm-forum-card__icon {
    flex-shrink: 0;
    width: 52px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px 6px 8px;
    gap: 4px;
}

.lm-forum-card__icon svg {
    width: 30px;
    height: 30px;
    color: #A28573;
}

.lm-forum-card__icon-count {
    font-size: 11px;
    color: #999;
    white-space: nowrap;
    line-height: 1;
}

/* Main content */
.lm-forum-card__main {
    flex: 1;
    min-width: 0;
}

.lm-forum-card__title {
    margin: 8px 0 4px;
}

.lm-forum-card__title a {
    color: #201712;
    text-decoration: none;
}

.lm-forum-card__title a:hover {
    color: #A28573;
}

.lm-forum-card__desc {
    font-size: 13px;
    color: #999;
    line-height: 1.5;
    margin: 0;
}

.lm-forum-card__desc p {
    margin: 0;
}

/* Sub-forums within card */
.lm-forum-card .bbp-forums-list {
    margin: 8px 0 0;
    padding-left: 0;
    border-left: none;
    font-size: 13px;
}

/* Meta column */
.lm-forum-card__meta {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    min-width: 100px;
}

/* Stats row (replies, views, likes — SVG + number) */
.lm-forum-card__stats {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-bottom: 6px;
}

.lm-forum-card__stat {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: #999;
}

.lm-forum-card__stat svg {
    opacity: 0.7;
}

.lm-forum-card__stat span {
    color: #201712;
    font-weight: 500;
}

/* Last activity — info left, avatar right */
.lm-forum-card__freshness {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lm-forum-card__freshness-info {
    display: flex;
    flex-direction: column;
    text-align: right;
    line-height: 1.4;
}

.lm-forum-card__freshness-time {
    font-size: 12px;
}

.lm-forum-card__freshness-time a {
    color: #999;
    font-size: 12px;
}

.lm-forum-card__freshness-time a:hover {
    color: #A28573;
}

.lm-forum-card__freshness-author {
    display: block;
}

.lm-forum-card__freshness-author a {
    color: #201712;
    font-size: 12px;
    font-weight: 500;
}

.lm-forum-card__freshness-avatar img {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #E8E0D8;
}

.lm-forum-card__freshness-avatar a {
    display: block;
    line-height: 0;
}

/* ========================================
   5b. TOPIC LIST — Single Forum Page (Compact)
   ======================================== */

.lm-topic-list {
    display: flex;
    flex-direction: column;
    border: 1px solid #b0b0b0;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    margin-left: 3%;
    margin-right: 3%;
    margin-bottom: 5px;
    margin-top: 30px;
}

.lm-topic-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 5px 14px;
    border-bottom: 1px solid #b0b0b0;
    transition: background-color 0.15s ease;
}

.lm-topic-row:last-child {
    border-bottom: none;
}

.lm-topic-row:hover {
    background-color: #FAF8F6;
}

/* Sticky topics */
.lm-topic-row.sticky,
.lm-topic-row.super-sticky {
    background: #FBF7F4;
    border-left: 3px solid #A28573;
}

/* Closed topics */
.lm-topic-row.status-closed {
    opacity: 0.7;
}

/* Spam / Trash */
.lm-topic-row.status-trash,
.lm-topic-row.status-spam {
    background-color: #fef0f0;
}

/* Avatar */
.lm-topic-row__avatar {
    flex-shrink: 0;
    padding-top: 2px;
}

.lm-topic-row__avatar img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E8E0D8;
    display: block;
}

.lm-topic-row__avatar a {
    display: block;
    line-height: 0;
}

/* Main: title + excerpt + meta */
.lm-topic-row__main {
    flex: 1;
    min-width: 0;
}

.lm-topic-row__title {
    font-size: 14px;
    font-weight: 400;
    color: #201712;
    text-decoration: none;
    display: block;
    margin-bottom: 1px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lm-topic-row__title:hover {
    color: #A28573;
}

/* Content excerpt (1-2 lines) */
.lm-topic-row__excerpt {
    font-size: 12px;
    color: #888;
    line-height: 1.4;
    margin: 0 0 2px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.lm-topic-row__meta {
    font-size: 11px;
    color: #999;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
}

.lm-topic-row__sep {
    margin: 0 5px;
    color: #ddd;
}

.lm-topic-row__author {
    font-weight: 500;
    color: #777;
}

.lm-topic-row__forum a {
    color: #A28573;
}

/* Right column: stats + freshness (matches forum card layout) */
.lm-topic-row__right {
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    min-width: 140px;
    padding-top: 2px;
}

/* Stats row (replies, views, likes — SVG + number) */
.lm-topic-row__stats {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-bottom: 6px;
}

.lm-topic-row__stat {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: #999;
}

.lm-topic-row__stat svg {
    opacity: 0.7;
}

.lm-topic-row__stat span {
    color: #201712;
    font-weight: 500;
}

/* Freshness — matches forum card freshness format */
.lm-topic-row__freshness {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lm-topic-row__freshness-info {
    display: flex;
    flex-direction: column;
    text-align: right;
    line-height: 1.4;
}

.lm-topic-row__freshness-time {
    font-size: 12px;
}

.lm-topic-row__freshness-time a {
    color: #999;
    font-size: 12px;
}

.lm-topic-row__freshness-time a:hover {
    color: #A28573;
}

.lm-topic-row__freshness-author {
    display: block;
}

.lm-topic-row__freshness-author a {
    color: #201712;
    font-size: 12px;
    font-weight: 500;
}

.lm-topic-row__freshness-avatar img {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #E8E0D8;
    display: block;
}

.lm-topic-row__freshness-avatar a {
    display: block;
    line-height: 0;
}

/* Pagination inside topic title */
.lm-topic-row .bbp-topic-pagination {
    display: inline;
    margin-left: 8px;
}

.lm-topic-row .bbp-topic-pagination a {
    font-size: 11px;
    padding: 1px 5px;
    border: 1px solid #E8E0D8;
    border-radius: 3px;
    color: #999;
}

.lm-topic-row .bbp-topic-pagination a:hover {
    background: #FAF8F6;
    color: #A28573;
}

/* ========================================
   5c. NEW TOPIC — Collapsible Form
   ======================================== */

.lm-forum-new-topic {
    margin-top: 16px;
    margin-bottom: 24px;
    margin-left:3%;
    margin-right:3%;
}

.lm-forum-new-topic__form {
    margin-top: 16px;
}

/* Hide the legend inside the collapsible form (button already says "New Topic") */
.lm-forum-new-topic__form fieldset.bbp-form legend {
    display: none;
}

/* ========================================
   6. POST CARDS — Topic Lead & Replies (Compact Threaded)
   ======================================== */

.lm-replies {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 24px;
    margin-left: 1%;
    margin-right: 2%;
}

/* bbPress reply lists — reset + indentation */
.bbp-replies-list {
    list-style: none !important;
    margin: 0 !important;
    margin-left: 3% !important;
    padding: 0 !important;
}

.bbp-threaded-replies {
    list-style: none !important;
    margin: 0 !important;
    margin-left: 2% !important;
    padding: 0 !important;
    transition: border-color 0.2s ease;
}

.bbp-threaded-replies:hover {
    border-left-color: #c9b5a6;
}

.bbp-replies-list > li,
.bbp-threaded-replies > li {
    list-style: none !important;
}

/* Toggle all button in sticky bar */
.lm-thread-toggle {
    flex-shrink: 0 !important;
    font-family: "Noto Sans", sans-serif !important;
    font-size: 11px !important;
    color: #999 !important;
    background: none !important;
    border: 1px solid #313131 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: all 0.2s ease !important;
    border-radius: 6px !important;
    padding: 3px 5px 3px 5px !important;
    letter-spacing: 3px !important;
}

.lm-thread-toggle:hover {
    color: white !important;
    border-color: #A28573 !important;
    background: #A28573 !important;
}

/* Collapse summary (shown when thread is collapsed) */
.lm-thread-collapsed-summary {
    font-size: 11px;
    color: #999;
    padding: 4px 0 4px 16px;
    cursor: pointer;
    transition: color 0.2s ease;
}

.lm-thread-collapsed-summary:hover {
    color: #A28573;
}

/* Post card (shared by lead + replies) */
.lm-post {
    /* border: 1px solid #E8E0D8; */
    border-radius: 0;
    background: #fff;
    margin-bottom: 8px;
    box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.3);
    overflow: hidden;
}

.lm-post--lead {
    border-color: #A28573;
    border-width: 1px 1px 1px 3px;
}

/* Post header — compact single-line */
.lm-post__header {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 2px 0px;
    /* border-style: solid; */
    border-bottom: 1px solid #c2c2c2;
}

.lm-post__author-avatar {
    flex-shrink: 0;
}

.lm-post__author-avatar img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid #E8E0D8;
    display: block;
}

.lm-post__author-avatar a {
    display: block;
    line-height: 0;
}

/* Inline header: name · role · date · #id */
.lm-post__header-inline {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    font-size: 12px;
    color: #999;
}

.lm-post__sep {
    margin: 0 5px;
    color: #ddd;
}

.lm-post__author-name {
    font-size: 13px;
    font-weight: 500;
}

.lm-post__author-name a {
    color: #201712;
    text-decoration: none;
}

.lm-post__author-name a:hover {
    color: #A28573;
}

.lm-post__author-role {
    display: none;
}

.lm-post__date {
    color: #999;
    font-size: 12px;
}

.lm-post__permalink {
    color: #ccc;
    font-size: 11px;
}

.lm-post__permalink:hover {
    color: #A28573;
}

.lm-post__in-reply-to {
    font-size: 12px;
    color: #999;
}

.lm-post__in-reply-to a {
    color: #A28573;
}

/* Post actions (admin links + like + collapse) */
.lm-post__actions {
    flex-shrink: 0;
    display: flex;
    align-items: flex-end;
    gap: 6px;
}

.lm-post__actions .bbp-admin-links {
    float: none;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-right: 4px;
}

.lm-post__actions .bbp-admin-links a {
    color: #bbb;
    font-size: 11px;
    text-transform: uppercase;
}

.lm-post__actions .bbp-admin-links a:hover {
    color: #A28573;
}

/* Like button */
.lm-post__like {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 6px !important;
    background: none;
    border: none !important;
    cursor: pointer;
    color: #c92228 !important;
    font-size: 12px !important;
    transition: transform 0.2s ease;
    position: relative;
}

.reply {
    margin-left:2%;
}

.lm-post__like:hover {
    transform: scale(1.2);
    background-color: transparent !important;
}

.lm-post__like:active, .lm-post__like:focus {
    background-color: transparent !important;
}

.lm-post__like:hover svg {
    fill: #c92228;
    stroke: #c92228;
}

.lm-post__like.is-liked svg,
.lm-post__like.has-likes svg {
    fill: #c92228;
    stroke: #c92228;
}

.lm-post__like-count {
    font-size: 11px;
    font-weight: 500;
    min-width: 8px;
    color: #c92228;
}

/* Collapse/expand button — hidden by default, shown by JS when content overflows */
.lm-post__collapse {
    display: none;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 18px;
    padding: 0 !important;
    background: none;
    border: none !important;
    cursor: pointer;
    color: #999 !important;
    font-size: 13px !important;;
    font-weight: 600 !important;;
    line-height: 1 !important;;
    transition: all 0.2s ease;
}

.lm-post__collapse.is-visible {
    display: inline-flex;
}

.lm-post__collapse:hover, .lm-post__collapse:active, .lm-post__collapse:focus  {
    color: #A28573;
    border-color: transparent !important;
    background-color:transparent !important;
}

/* Post body — default: 2-line preview, clipped */
.lm-post__body {
    padding: 6px 14px 0px;
    font-size: 14px;
    line-height: 1.75;
    color: #201712;
    max-height: 3.5em; /* exactly 2 lines (2 × 1.75em) */
    overflow: hidden;
    position: relative;
    margin-bottom: 10px;
    margin-right: 30px;
}

.lm-post__body > *:first-child {
    margin-top: 0;
}

/* Fade + ellipsis on posts that overflow and aren't expanded */
.lm-post.is-clamped:not(.is-expanded) .lm-post__body::after {
    content: '...';
    position: absolute;
    bottom: 0;
    right: 14px;
    padding-left: 3em;
    background: linear-gradient(to right, rgba(255,255,255,0), #fff 40%);
    line-height: 1.75;
}

/* Clamped body: pointer cursor to hint it's clickable */
.lm-post.is-clamped:not(.is-expanded) .lm-post__body {
    cursor: pointer;
}

/* Expanded: show full content */
.lm-post.is-expanded .lm-post__body {
    max-height: none;
    overflow: visible;
    padding-bottom: 14px;
}

.lm-post__body img {
    max-width: 100%;
    height: auto;
}

.lm-post__body ul,
.lm-post__body ol {
    margin: 0 15px 15px;
    padding: 0;
}

.lm-post__body ul li {
    list-style-type: disc;
}

.lm-post__body ol li {
    list-style-type: decimal;
}

.lm-post__body a {
    color: #A28573;
    text-decoration: underline;
}

.lm-post__body a:hover {
    color: #8B6F5E;
}

.lm-post__body code,
.lm-post__body pre {
    font-family: Consolas, Monaco, 'Courier New', monospace;
    background-color: #FAF8F6;
    border: 1px solid #E8E0D8;
    border-radius: 3px;
}

.lm-post__body code {
    display: inline-block;
    padding: 0 5px;
    vertical-align: middle;
    margin-top: -3px;
}

.lm-post__body pre {
    display: block;
    line-height: 1.5;
    margin: 0 0 24px;
    padding: 12px 16px;
    white-space: pre;
    overflow: auto;
}

.lm-post__body pre code {
    display: block;
    border: none;
    padding: 0;
    margin: 0;
    background-color: transparent;
}

.lm-post__body blockquote {
    background: #FAF8F6;
    border: 1px solid #E8E0D8;
    border-left: 4px solid #A28573;
    border-radius: 4px;
    margin: 12px 0;
    padding: 12px 16px;
}

/* Post footer — hidden, admin links moved to header */
.lm-post__footer {
    display: none;
}

/* Author IP */
span.bbp-author-ip {
    font-size: 11px;
    color: #999;
}

/* ========================================
   LEGACY — Search Results (old templates)
   ======================================== */

#bbpress-forums ul.bbp-search-results {
    font-size: 14px;
    overflow: hidden;
    border: 1px solid #E8E0D8;
    border-radius: 6px;
    margin-bottom: 20px;
    clear: both;
}

#bbpress-forums ul.bbp-search-results li.bbp-header,
#bbpress-forums ul.bbp-search-results li.bbp-footer {
    clear: both;
    background: #A28573;
    border-top: none;
    color: #fff;
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 0.3px;
    padding: 10px 12px;
    text-align: center;
}

#bbpress-forums ul.bbp-search-results li.bbp-header {
    border-radius: 5px 5px 0 0;
}

#bbpress-forums ul.bbp-search-results li.bbp-header a {
    color: #fff;
}

#bbpress-forums ul.bbp-search-results li.bbp-footer {
    border-top: 1px solid #E8E0D8;
    background: #FAF8F6;
    color: #999;
    font-size: 12px;
}

#bbpress-forums ul.bbp-search-results li.bbp-body {
    clear: both;
}

#bbpress-forums ul.bbp-search-results div.bbp-forum-author,
#bbpress-forums ul.bbp-search-results div.bbp-topic-author,
#bbpress-forums ul.bbp-search-results div.bbp-reply-author {
    float: left;
    text-align: center;
    width: 115px;
}

#bbpress-forums ul.bbp-search-results div.bbp-forum-author img.avatar,
#bbpress-forums ul.bbp-search-results div.bbp-topic-author img.avatar,
#bbpress-forums ul.bbp-search-results div.bbp-reply-author img.avatar {
    border: 2px solid #E8E0D8;
    border-radius: 50%;
    max-width: 70px;
    padding: 0;
    margin: 12px auto 0;
    float: none;
}

#bbpress-forums ul.bbp-search-results div.bbp-forum-content,
#bbpress-forums ul.bbp-search-results div.bbp-topic-content,
#bbpress-forums ul.bbp-search-results div.bbp-reply-content {
    margin-left: 130px;
    padding: 12px 12px 12px 0;
    text-align: left;
    font-size: 14px;
    line-height: 1.75;
    color: #201712;
}

#bbpress-forums ul.bbp-search-results div.bbp-forum-header,
#bbpress-forums ul.bbp-search-results div.bbp-topic-header,
#bbpress-forums ul.bbp-search-results div.bbp-reply-header {
    background-color: #FAF8F6;
    border-top: 1px solid #E8E0D8;
    padding: 12px;
    overflow: hidden;
}

#bbpress-forums ul.bbp-search-results li.bbp-header .bbp-search-author,
#bbpress-forums ul.bbp-search-results li.bbp-footer .bbp-search-author {
    float: left;
    margin: 0;
    padding: 0;
    width: 120px;
}

#bbpress-forums ul.bbp-search-results li.bbp-header .bbp-search-content,
#bbpress-forums ul.bbp-search-results li.bbp-footer .bbp-search-content {
    margin-left: 140px;
    padding: 0;
    text-align: left;
}

/* ========================================
   7. ADMIN LINKS & TOGGLES
   ======================================== */

span.bbp-admin-links {
    float: right;
    color: #E8E0D8;
}

span.bbp-admin-links a {
    color: #999;
    font-weight: 400;
    font-size: 11px;
    text-transform: uppercase;
    text-decoration: none;
}

span.bbp-admin-links a:hover {
    color: #A28573;
}

.bbp-forum-header a.bbp-forum-permalink,
.bbp-topic-header a.bbp-topic-permalink,
.bbp-reply-header a.bbp-reply-permalink {
    float: right;
    margin-left: 10px;
    color: #999;
    font-size: 12px;
}

/* Subscription / Favorite toggles — positioning handled by section 4d */

.bbp-row-actions #favorite-toggle a,
.bbp-row-actions #subscription-toggle a {
    text-decoration: none;
    padding: 2px 8px;
    color: #A28573;
    border: 1px solid #E8E0D8;
    background-color: #FAF8F6;
    font-weight: 500;
    font-size: 12px;
    border-radius: 3px;
    transition: all 0.2s ease;
}

.bbp-row-actions #favorite-toggle a:hover,
.bbp-row-actions #subscription-toggle a:hover {
    background-color: #A28573;
    color: #fff;
    border-color: #A28573;
}

.bbp-row-actions #favorite-toggle span.is-favorite a {
    color: #dc3545;
    border-color: #f5c6cb;
    background-color: #fef0f0;
}

.bbp-row-actions #favorite-toggle span.is-favorite a:hover {
    color: #fff;
    border-color: #dc3545;
    background-color: #dc3545;
}

/* ========================================
   8. BREADCRUMBS — Styled via section 4a
   ======================================== */

/* bbPress breadcrumb is now styled via .lm-forum-breadcrumb in section 4a */

div.bbp-topic-tags {
    font-size: 13px;
    color: #999;
    margin-bottom: 12px;
}

#bbpress-forums div.bbp-topic-tags p {
    margin: 0 0 10px;
}

/* ========================================
   9. FORMS — Topic, Reply, Editor
   ======================================== */

/* Reply form: hidden by default, shown on Reply click */
.bbp-reply-form {
    display: none;
}

.bbp-reply-form.is-open {
    display: block;
}


/* Paragraph/format dropdown items */
.mce-menu-item .mce-text,
.mce-menu-item span {
    font-family: "Noto Sans", sans-serif !important;
}

#bbpress-forums fieldset.bbp-form {
    border: 1px solid black;
    border-radius: 0px !important;
    padding: 20px;
    margin-bottom: 20px;
    background: #FAF8F6;
}

.bbp-the-content-wrapper {
    margin-bottom:10px;
}

#new-post label[for="bbp_topic_tags"] + br {
  display: none;
}

#new-post label[for="bbp_topic_tags"] {
  margin-bottom: 5px;
}

#bbpress-forums fieldset.bbp-form legend {
    font-family: "Noto Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #201712;
    padding: 0 8px;
}

#bbpress-forums fieldset.bbp-form label {
    display: block;
    font-size: 13px;
    font-weight: 400;
    color: #333;
}

#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 select,
#bbpress-forums fieldset.bbp-form textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid black;
    border-radius: 0px;
    font-size: 14px;
    font-family: "Noto Sans", sans-serif;
    color: #201712;
    background: #fff;
    box-sizing: border-box;
    transition: border-color 0.3s ease;
}

#bbpress-forums fieldset.bbp-form input:focus,
#bbpress-forums fieldset.bbp-form textarea:focus,
#bbpress-forums fieldset.bbp-form select:focus {
    outline: none;
}

#bbpress-forums fieldset.bbp-form textarea {
    min-height: 150px;
    resize: vertical;
}

/* ── Emoji Picker Panel ── */

.lm-emoji-panel {
    display: none;
    position: absolute;
    z-index: 100100;
    background: #fff;
    border: 1px solid #E8E0D8;
    border-radius: 8px;
    padding: 10px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    width: 310px;
}

.lm-emoji-panel__grid {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    gap: 2px;
}

.lm-emoji-panel__grid .lm-emoji-panel__btn {
    padding:3px !important;
}

.lm-emoji-panel__grid .emoji {
    height: 1.5rem !important;
    width: unset !important;
}

.lm-emoji-panel__btn {
    background: none;
    border: none;
    font-size: 20px;
    padding: 4px;
    cursor: pointer;
    border-radius: 4px;
    line-height: 1;
    transition: background 0.15s ease;
}

.lm-emoji-panel__btn:hover {
    background: #FAF8F6;
}

/* ── TinyMCE Editor Chrome ── */

#bbpress-forums .mce-tinymce {
    border: 1px solid black;
    border-radius: 0px;
    overflow: hidden;
    /*box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);*/
}

#bbpress-forums .mce-toolbar-grp {
    background: #FAF8F6;
    border-bottom: 1px solid #E8E0D8;
    padding: 4px 6px;
}

#bbpress-forums .mce-toolbar .mce-btn {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 4px;
    box-shadow: none;
    transition: all 0.15s ease;
}

#bbpress-forums .mce-toolbar .mce-btn:hover {
    background: #fff;
    border-color: #E8E0D8;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

#bbpress-forums .mce-toolbar .mce-btn.mce-active,
#bbpress-forums .mce-toolbar .mce-btn:focus {
    background: #fff;
    border-color: #A28573;
    box-shadow: 0 0 0 1px rgba(162, 133, 115, 0.2);
}

#bbpress-forums .mce-toolbar .mce-btn i {
    color: #555;
}

#bbpress-forums .mce-toolbar .mce-btn:hover i {
    color: #201712;
}

#bbpress-forums .mce-toolbar .mce-btn.mce-active i {
    color: #A28573;
}

#bbpress-forums .mce-statusbar {
    background: #FAF8F6;
    border-top: 1px solid #E8E0D8;
}

#bbpress-forums .mce-path {
    padding: 4px 8px;
}

#bbpress-forums .mce-path-item {
    font-family: "Noto Sans", sans-serif;
    font-size: 11px;
    color: #999;
}

#bbpress-forums .wp-editor-tabs {
    float: right;
    margin: 0;
}

#bbpress-forums .wp-editor-tabs .wp-switch-editor {
    font-family: "Noto Sans", sans-serif;
    font-size: 12px;
    background: #FAF8F6;
    border-color: #E8E0D8;
    color: #666;
    border-radius: 4px 4px 0 0;
    padding: 6px 14px;
    transition: all 0.15s ease;
}

#bbpress-forums .wp-editor-tabs .wp-switch-editor:hover {
    color: #201712;
    background: #fff;
}

#bbpress-forums .wp-editor-tabs .wp-switch-editor.switch-tmce:focus,
#bbpress-forums .wp-editor-tabs .wp-switch-editor.switch-html:focus,
#bbpress-forums .html-active .wp-editor-tabs .switch-html,
#bbpress-forums .tmce-active .wp-editor-tabs .switch-tmce {
    background: #fff;
    border-bottom-color: #fff;
    color: #201712;
}

#bbpress-forums .wp-media-buttons .button.insert-media {
    font-family: "Noto Sans", sans-serif;
    font-weight: 300;
    background: #fff;
    border: 1px solid black;
    border-radius: 0 !important;
    color: #555;
    font-size: 12px;
    padding: 4px 12px;
    margin-top:5px;
    margin-bottom:5px;
    transition: all 0.15s ease;
}

#bbpress-forums .wp-media-buttons .button.insert-media:hover {
    background: #A28573;
    border-color: #A28573;
    color: white !important;
}

/* ── Media Modal Restyling ── */

.search-form {
    width: auto !important;
}

.attachment-details h2, .attachment-display-settings h2{
    text-transform: uppercase;
    font-size: 16px;
}

.media-sidebar {
    bottom: 12px !important;
}


.media-attachments-filter-heading {
    font-size: 15px !important;
}

.media-modal {
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
    font-family: "Noto Sans", sans-serif;
}

.media-modal-content {
    border-radius: 10px;
}

.media-frame-title h1 {
    font-family: "Noto Sans", sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #201712;
}

.media-menu {
    padding: 80px 0 10px;
}

.media-router .media-menu-item:focus {
    box-shadow: none !important;
    color:white !important;
    background: #A28573 !important;
}

.media-menu-item:hover {
    color:white !important;
    background: #A28573 !important;
}

.media-modal .media-menu .media-menu-item {
    font-family: "Noto Sans", sans-serif;
    font-size: 13px;
    color: #555;
    padding: 8px 16px;
    border-radius: 0;
    letter-spacing: 2px;
    transition: all 0.15s ease;
}

.media-modal .media-menu .media-menu-item:hover {
    background: #A28573;
    color: white !important;
}

.media-modal-close {
    border-color:transparent !important;
}


.media-modal .media-menu .media-menu-item.active {
    background: #FAF8F6;
    color: #A28573;
    box-shadow: inset 3px 0 0 #A28573;
}

.media-frame .media-toolbar {
    border-top: 1px solid #E8E0D8;
}

.attachments-browser:not(.has-load-more) .attachments {
    top:80px !important;
}

.media-frame .media-toolbar .media-toolbar-primary .button.media-button-select,
.media-frame .media-toolbar .media-toolbar-primary .button.media-button-insert {
    font-family: "Noto Sans", sans-serif;
    background: #A28573;
    border-color: #A28573;
    color: #fff;
    border-radius: 4px;
    padding: 6px 20px;
    font-size: 13px;
    font-weight: 500;
    transition: background 0.2s ease;
}

.media-frame .media-toolbar .media-toolbar-primary .button.media-button-select:hover,
.media-frame .media-toolbar .media-toolbar-primary .button.media-button-insert:hover {
    background: #8B6F5E;
    border-color: #8B6F5E;
    color: white !important;
}

.media-frame .attachments-browser .media-toolbar {
    border-bottom: 1px solid #E8E0D8;
    background: #FAF8F6;
}

.media-frame input[type="text"],
.media-frame input[type="search"],
.media-frame input[type="url"],
.media-frame select,
.media-frame textarea {
    font-family: "Noto Sans", sans-serif;
    border: 1px solid #E8E0D8;
    border-radius: 4px;
    font-size: 13px;
    color: #201712;
    transition: border-color 0.2s ease;
}

.media-frame input[type="text"]:focus,
.media-frame input[type="search"]:focus,
.media-frame input[type="url"]:focus,
.media-frame textarea:focus {
    border-color: #A28573;
    box-shadow: 0 0 0 1px rgba(162, 133, 115, 0.2);
    outline: none;
}

.media-frame .attachment {
    border-radius: 4px;
    box-shadow: none;
}

.media-frame .attachment .thumbnail {
    border-radius: 4px;
}

.media-frame .attachment.details {
    box-shadow: 0 0 0 2px #A28573;
    border-radius: 4px;
}

.media-frame .attachment .check {
    background: #A28573;
    box-shadow: 0 0 0 1px #fff, 0 0 0 2px #A28573;
}

.media-modal-backdrop {
    background: rgba(32, 23, 18, 0.6);
}

/* Hide unwanted media modal options: playlists + Insert from URL */
.media-menu .media-menu-item:nth-child(n+4),
#menu-item-playlist {
    display: none !important;
}
.media-router .media-menu-item:nth-child(n+3) {
    display: none !important;
}

/* ========================================
   10. BUTTONS
   ======================================== */

[id^="mceu_"][id$="-open"] {
    font-size: 13px;
    letter-spacing: 1px;
    line-height: 1.53846153;
    padding-left: 6px;
    padding-right: 20px;
    text-transform: none;
}

[id^="mceu_"][id$="-open"]:hover, [id^="mceu_"][id$="-open"]:focus{
    color:white !important;
    background: #A28573;
    border-color: #A28573;
}



#bbpress-forums .button,
#bbpress-forums input[type="submit"] {
    font-family: "Noto Sans", sans-serif;
    font-size: 12px;
    font-weight: 400;
    padding: 0;
    background: white;
    color: black;
    border: 1px #bababa;
    border-style: solid;
    border-radius: 4px;
    cursor: pointer;
    letter-spacing: 3px;
    padding-left: 5px;
    padding-right: 5px;
    transition: background 0.2s ease;
}


#bbpress-forums .button:hover,
#bbpress-forums input[type="submit"]:hover {
    background: #8B6F5E;
    color: #fff;
}

#new-post .bbp-form > div > p:last-of-type {
    gap: 10px !important;
    display: flex !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

/* ========================================
   11. PAGINATION
   ======================================== */

#bbpress-forums .bbp-pagination {
    color: #999;
    font-size: 13px;
    margin-bottom: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#bbpress-forums .bbp-pagination-count {
    float: left;
    line-height: 36px;
}

#bbpress-forums .bbp-pagination-links {
    float: right;
}

#bbpress-forums .bbp-pagination-links a,
#bbpress-forums .bbp-pagination-links span.current {
    display: inline-block;
    padding: 6px 12px;
    margin: 0 2px;
    border: 1px solid #E8E0D8;
    border-radius: 4px;
    font-size: 13px;
    text-decoration: none;
    color: #201712;
}

#bbpress-forums .bbp-pagination-links span.current {
    background: #A28573;
    color: #fff;
    border-color: #A28573;
}

#bbpress-forums .bbp-pagination-links a:hover {
    background: #FAF8F6;
}

/* ========================================
   12. SEARCH RESULTS
   ======================================== */

#bbpress-forums div.bbp-search-form {
    display: none; /* We use our own search overlay */
}

#bbpress-forums #bbp-search-form {
    clear: left;
}

/* ========================================
   13. USER PROFILES
   ======================================== */

#bbpress-forums #bbp-user-wrapper {
    margin-bottom: 20px;
}

#bbpress-forums #bbp-user-wrapper h2.entry-title {
    font-family: "Noto Sans", sans-serif;
    font-size: 22px;
    font-weight: 400;
    color: #201712;
    margin: 0 0 16px;
}

#bbpress-forums div#bbp-user-body {
    margin-top: 16px;
}

#bbpress-forums #bbp-your-profile fieldset {
    border: 1px solid #E8E0D8;
    border-radius: 6px;
    padding: 20px;
    margin-bottom: 20px;
}

/* ========================================
   14. STATISTICS PANEL
   ======================================== */

.lm-forum-stats {
    display: flex;
    justify-content: center;
    gap: 36px;
    margin-top: 8px;
}

/* When stats panel appears before forum cards, swap border */
.lm-forum-content > .lm-forum-stats:first-of-type {
    border-top: none;
    border-bottom: 1px solid #E8E0D8;
    margin-top: 0;
    margin-bottom: 8px;
}

.lm-forum-stats__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.lm-forum-stats__label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1;
}

.lm-forum-stats__row {
    display: flex;
    align-items: center;
    gap: 6px;
}

.lm-forum-stats__icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.lm-forum-stats__count {
    font-size: 18px;
    font-weight: 500;
    color: #201712;
    line-height: 1;
}

/* ========================================
   14b. FORUM SORT DROPDOWN
   ======================================== */

.lm-forum-sort-wrap {
    display: flex;
    justify-content: flex-end;
    margin-right: 3%;
    margin-top: 5px;
}

.lm-sort-dropdown {
    position: relative;
}

.lm-sort-dropdown__trigger {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    background: transparent;
    border: none !important;
    letter-spacing: 0 !important;
    cursor: pointer;
    font-size: 12px;
    font-weight: 300;
    color: #696969;
    transition: all 0.3s ease;
}

.lm-sort-dropdown__trigger:hover {
    color: #A28573;
}

.lm-sort-dropdown__trigger:hover .lm-sort-dropdown__arrow {
    stroke: #A28573;
}

.lm-sort-dropdown__label {
    font-weight: 300;
    color: #201712;
}

.lm-sort-dropdown__arrow {
    transition: transform 0.3s ease;
}

.lm-sort-dropdown.is-open .lm-sort-dropdown__trigger {
    color: #A28573;
}

.lm-sort-dropdown.is-open .lm-sort-dropdown__arrow {
    transform: rotate(180deg);
    stroke: #A28573;
}

#bbpress-forums .lm-sort-dropdown__menu {
    display: none;
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    min-width: 200px;
    background: white;
    border: 1px solid #E6E6E6;
    border-radius: 5px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    list-style: none;
    padding: 6px 0;
    margin: 0;
    z-index: 50;
}

#bbpress-forums .lm-sort-dropdown.is-open .lm-sort-dropdown__menu {
    display: block;
}

.lm-sort-dropdown__header {
    padding: 8px 16px 4px !important;
    font-size: 12px;
    font-style: italic;
    color: #999;
    font-weight: 300;
    pointer-events: none;
}

#bbpress-forums .lm-sort-dropdown__menu li {
    margin: 0;
    padding: 0;
    background: none;
}

#bbpress-forums .lm-sort-dropdown__menu a {
    display: block;
    padding: 8px 16px;
    color: #696969;
    text-decoration: none;
    font-size: 14px;
    font-weight: 300;
    transition: all 0.2s ease;
}

#bbpress-forums .lm-sort-dropdown__menu a:hover {
    background: #F6F9FC;
    color: #A28573;
}

#bbpress-forums .lm-sort-dropdown__menu a.is-active {
    color: #A28573;
    font-weight: 400;
}

/* ========================================
   15. USER PROFILE
   ======================================== */

.lm-user-profile {
    max-width: 780px;
    margin: 0 auto;
    padding: 50px 0 40px;
}

.lm-user-profile .lm-forum-breadcrumb {
    margin-bottom: 20px;
}

/* Header */
.lm-user-profile__header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 24px;
}

.lm-user-profile__avatar img {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #E8E0D8;
}

.lm-user-profile__info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.lm-user-profile__name {
    font-size: 24px;
    font-weight: 600;
    color: #201712;
    margin: 0;
    line-height: 1.2;
}

.lm-user-profile__role {
    display: inline-block;
    font-size: 12px;
    color: #A28573;
    font-weight: 500;
    letter-spacing: 0.5px;
}

/* Bio */
.lm-user-profile__bio {
    margin-bottom: 24px;
    padding: 16px 20px;
    background: #FAF8F6;
    border: 1px solid #E8E0D8;
    border-radius: 8px;
    font-size: 14px;
    color: #696969;
    line-height: 1.6;
}

.lm-user-profile__bio p {
    margin: 0;
}

/* Stats Row */
.lm-user-profile__stats {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    padding: 20px 24px;
    background: #fff;
    border: 1px solid #E8E0D8;
    border-radius: 8px;
    margin-bottom: 28px;
}

.lm-user-profile__stat {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 100px;
}

.lm-user-profile__stat-label {
    font-size: 12px;
    color: #999;
    letter-spacing: 0.3px;
}

.lm-user-profile__stat-value {
    font-size: 14px;
    color: #201712;
    font-weight: 500;
}

/* Activity cards inside profile — icon size override */
.lm-user-profile .lm-activity-card .lm-forum-stats__icon {
    width: 36px;
    height: 36px;
}

/* Activity content inside profile */
.lm-user-profile .lm-activity-content .lm-topic-list {
    border: 1px solid #E8E0D8;
    border-radius: 8px;
    overflow: hidden;
}

.lm-user-profile .lm-activity-content .lm-topic-row {
    border-bottom: 1px solid #E8E0D8;
}

.lm-user-profile .lm-activity-content .lm-topic-row:last-child {
    border-bottom: none;
}

.lm-user-profile .lm-activity-empty {
    text-align: center;
    padding: 32px 0;
    color: #999;
    font-size: 14px;
}

/* Login prompt for guests on profile pages */
.lm-profile-login-prompt {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 380px;
    margin: 80px auto;
    padding: 40px 28px 32px;
    background: #fff;
    border: 1px solid #E8E0D8;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.lm-profile-login-prompt__icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #A28573;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.lm-profile-login-prompt__text {
    font-size: 15px;
    color: #201712;
    line-height: 1.6;
    margin: 0 0 24px;
}

.lm-profile-login-prompt__actions {
    display: flex;
    gap: 12px;
    width: 100%;
}

.lm-profile-login-prompt__actions .lm-button {
    flex: 1;
    text-align: center;
    text-decoration: none;
}

/* ========================================
   16. FEEDBACK TEMPLATES
   ======================================== */

#bbpress-forums div.bbp-template-notice {
    margin-bottom: 16px;
}

#bbpress-forums div.bbp-template-notice ul {
    margin: 0;
    padding: 0;
}

#bbpress-forums div.bbp-template-notice ul li {
    list-style: none;
    margin: 0;
}

/* ========================================
   16. RESPONSIVE
   ======================================== */

@media screen and (max-width: 782px) {
    #bbpress-forums {
        font-size: 13px;
    }

    /* --- Page Title --- */
    .lm-forum-page-title {
        font-size: 18px;
        margin: 12px 0 10px;
    }

    /* --- Forum Cards --- 
    .lm-forum-card {
        flex-direction: column;
        gap: 12px;
        padding: 16px;
    }

    .lm-forum-card__icon {
        display: none;
    }

    .lm-forum-card__meta {
        flex-direction: row;
        align-items: center;
        min-width: 0;
        width: 100%;
        justify-content: space-between;
    }*/

    /* --- Topic List --- */
    .lm-topic-row {
        flex-wrap: wrap;
        gap: 8px;
        padding: 10px 12px;
    }

    .lm-topic-row__right {
        display: none;
    }

    .lm-topic-row__main {
        flex: 1;
        min-width: calc(100% - 50px);
    }

    .lm-topic-row__title {
        white-space: normal;
    }

    .lm-topic-row__excerpt {
        -webkit-line-clamp: 1;
    }

    /* --- Post Cards --- */
    .lm-post__header {
        flex-wrap: wrap;
        gap: 6px;
        padding: 8px 12px;
    }

    .lm-post__author-avatar img {
        width: 28px;
        height: 28px;
    }

    .lm-post__header-inline {
        min-width: calc(100% - 40px);
    }

    .lm-post__body {
        padding: 6px 12px 0;
        max-height: 5.25em; /* 3 lines on mobile (3 × 1.75em) */
    }

    .lm-topic-sticky-bar .lm-forum-page-title,
    .lm-forum-sticky-bar .lm-forum-page-title {
        font-size: 15px;
    }

    /* Reply indentation: reduced on mobile */
    .bbp-replies-list {
        margin-left: 2% !important;
    }

    .bbp-threaded-replies {
        margin-left: 2% !important;
    }

    /* --- Search --- */
    .lm-forum-search__bar:hover .lm-forum-search__input,
    .lm-forum-search__bar:focus-within .lm-forum-search__input {
        width: 160px;
    }

    /* --- Stats --- */
    .lm-forum-stats {
        flex-wrap: wrap;
        gap: 10px;
    }

    .lm-forum-stats__item {
        min-width: 60px;
    }

    /* --- User Profile --- */
    .lm-user-profile__header {
        gap: 14px;
        margin-bottom: 18px;
    }

    .lm-user-profile__avatar img {
        width: 100px;
        height: 100px;
    }

    .lm-user-profile__name {
        font-size: 20px;
    }

    .lm-user-profile__stats {
        gap: 16px;
        padding: 16px;
    }

    .lm-user-profile__stat {
        min-width: 80px;
    }

    /* --- Forms --- */
    #bbpress-forums fieldset.bbp-form {
        padding: 14px;
    }

    /* --- Legacy search results responsive --- */
    #bbpress-forums ul.bbp-search-results div.bbp-forum-author,
    #bbpress-forums ul.bbp-search-results div.bbp-topic-author,
    #bbpress-forums ul.bbp-search-results div.bbp-reply-author {
        width: 80px;
    }

    #bbpress-forums ul.bbp-search-results div.bbp-forum-author img.avatar,
    #bbpress-forums ul.bbp-search-results div.bbp-topic-author img.avatar,
    #bbpress-forums ul.bbp-search-results div.bbp-reply-author img.avatar {
        max-width: 50px;
    }

    #bbpress-forums ul.bbp-search-results div.bbp-forum-content,
    #bbpress-forums ul.bbp-search-results div.bbp-topic-content,
    #bbpress-forums ul.bbp-search-results div.bbp-reply-content {
        margin-left: 90px;
    }
}

@media screen and (max-width: 480px) {
    .lm-forum-search__bar:hover .lm-forum-search__input,
    .lm-forum-search__bar:focus-within .lm-forum-search__input {
        width: 130px;
    }

    .lm-forum-stats {
        gap: 5px;
    }

    .lm-forum-stats__count {
        font-size: 15px;
    }

    .lm-forum-card__stats {
        gap: 8px;
    }

    /* Topic row: hide excerpt on tiny screens */
    .lm-topic-row__excerpt {
        display: none;
    }

    /* Reply indentation: minimal on tiny screens */
    .bbp-replies-list {
        margin-left: 1% !important;
    }

    .bbp-threaded-replies {
        margin-left: 1% !important;
    }

    /* Toggle button: slightly smaller on tiny screens */
    .lm-thread-toggle {
        font-size: 10px;
        padding: 2px 8px;
    }
}

/* ========================================
   MODERATION POPUP
   Shown pre-submit when external links/emails detected
   ======================================== */

.lm-forum-mod-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.lm-forum-mod-popup.is-open {
    opacity: 1;
}

.lm-forum-mod-popup__overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
}

.lm-forum-mod-popup__panel {
    position: relative;
    background: #fff;
    border-radius: 12px;
    width: 90%;
    max-width: 360px;
    padding: 36px 28px 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
    transform: translateY(12px);
    transition: transform 0.25s ease;
}

.lm-forum-mod-popup.is-open .lm-forum-mod-popup__panel {
    transform: translateY(0);
}

.lm-forum-mod-popup__icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #A28573;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    flex-shrink: 0;
}

.lm-forum-mod-popup__text {
    font-family: "Noto Sans", sans-serif;
    font-size: 15px;
    color: #201712;
    line-height: 1.6;
    margin: 0 0 24px;
}

.lm-forum-mod-popup__actions {
    display: flex;
    gap: 12px;
    width: 100%;
}

.lm-forum-mod-popup__btn {
    flex: 1;
    padding: 10px 16px;
    font-family: "Noto Sans", sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.lm-forum-mod-popup__btn--edit {
    background: #fff;
    color: #201712;
    border: 1px solid #201712;
}

.lm-forum-mod-popup__btn--edit:hover {
    border-color: #A28573;
    color: #A28573;
}

.lm-forum-mod-popup__btn--ok {
    background: #A28573;
    color: #fff;
    border: 1px solid #A28573;
}

.lm-forum-mod-popup__btn--ok:hover {
    background: #8B6F5E;
    border-color: #8B6F5E;
}
