/**
 * Forum — thread list + thread view (STG-UI-002 premium white / ink / lime)
 * Applied when forumController adds .forum-page--light-threads on #page-forum
 * (routes /#forum/<slug> and /#forum/<id>).
 */

#page-forum.page.forum-page--light-threads {
    --fm-font-display: "Fraunces", Georgia, serif;
    --fm-font-ui: "Inter Tight", "Inter", system-ui, sans-serif;

    background-color: #ffffff;
    color: var(--app-text-body);
    font-family: var(--fm-font-ui);
}

/* ── List header ────────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-list-header {
    border-bottom-color: var(--app-border);
}

#page-forum.forum-page--light-threads .forum-title {
    font-family: var(--fm-font-display);
    font-weight: 400;
    letter-spacing: -0.02em;
}

#page-forum.forum-page--light-threads .forum-new-thread-btn {
    background: var(--band-bg);
    color: var(--band-text);
    border-color: var(--band-bg);
}

#page-forum.forum-page--light-threads .forum-new-thread-btn:hover {
    background: #38382f;
    border-color: #38382f;
}

/* ── Sort bar ───────────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-sort-bar {
    background: var(--app-surface-sunken);
    border: none;
}

#page-forum.forum-page--light-threads .forum-sort-tab {
    color: var(--app-text-muted);
}

#page-forum.forum-page--light-threads .forum-sort-tab:hover {
    color: var(--app-text-body);
    background: rgba(22, 26, 20, 0.06);
}

#page-forum.forum-page--light-threads .forum-sort-tab.active {
    color: var(--app-text-body);
    background: var(--app-accent);
    box-shadow: none;
}

/* ── Category chips ─────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-cat-chip,
#page-forum.forum-page--light-threads .forum-window-chip {
    border: 1px solid var(--app-border);
    background: var(--app-surface-sunken);
    color: var(--app-text-body);
}

#page-forum.forum-page--light-threads .forum-cat-chip:hover,
#page-forum.forum-page--light-threads .forum-window-chip:hover {
    border-color: var(--app-border-strong);
    background: var(--app-surface-raised);
}

#page-forum.forum-page--light-threads .forum-cat-chip.active,
#page-forum.forum-page--light-threads .forum-window-chip.active {
    background: var(--app-accent);
    border-color: transparent;
    color: var(--app-text-body);
}

/* ── Pagination ─────────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-pagination {
    border-top-color: var(--app-border);
}

#page-forum.forum-page--light-threads .forum-page-btn {
    background: var(--app-surface-sunken);
    border: none;
    color: var(--app-text-body);
}

#page-forum.forum-page--light-threads .forum-page-btn:hover {
    background: var(--fm-pop-cream, #f4ecd8);
    border-color: transparent;
}

/* ── Thread view: back btn + crumbs ────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-back-btn {
    border: 1px solid var(--app-border);
    color: var(--text-soft);
    background: transparent;
}

#page-forum.forum-page--light-threads .forum-back-btn:hover {
    border-color: var(--app-border-strong);
    color: var(--app-text-body);
    background: var(--app-surface-sunken);
}

/* ── Thread head ────────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads #forumThreadView .thread-head__title,
#page-forum.forum-page--light-threads .forum-title {
    font-family: var(--fm-font-display);
    font-weight: 400;
    letter-spacing: -0.02em;
}

/* ── Pager / actions ────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads #forumThreadView .forum-pager-btn {
    background: var(--app-surface-sunken);
    border: none;
    color: var(--app-text-muted);
    border-radius: var(--fm-r-sm);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-pager-btn:hover {
    background: var(--fm-pop-cream, #f4ecd8);
    color: var(--app-text-body);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-pager-btn.active {
    background: var(--band-bg);
    color: var(--band-text);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-subscribe-btn {
    background: var(--app-surface-sunken);
    border: none;
    color: var(--app-text-body);
    border-radius: var(--fm-r-sm);
    font-size: 13px;
    padding: 6px 12px;
}

#page-forum.forum-page--light-threads #forumThreadView .forum-subscribe-btn:hover {
    background: var(--fm-pop-cream, #f4ecd8);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-subscribe-btn--active {
    background: var(--accent-soft);
    color: var(--app-text-body);
    font-weight: 600;
}

#page-forum.forum-page--light-threads #forumThreadView .forum-thread-report-btn {
    color: var(--app-text-faint);
    background: transparent;
    border-color: transparent;
}

#page-forum.forum-page--light-threads #forumThreadView .forum-thread-report-btn:hover {
    color: var(--app-danger);
    background: rgba(180, 74, 58, 0.06);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-thread-search-input {
    background: var(--app-surface-sunken);
    border: 1px solid var(--app-border);
    color: var(--app-text-body);
    border-radius: var(--fm-r-sm);
}

#page-forum.forum-page--light-threads #forumThreadView .forum-thread-search-input:focus {
    border-color: var(--app-border-strong);
    outline: none;
}

/* ── Reply composer ─────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-reply-composer.composer {
    background: var(--app-surface-sunken);
    border: none;
    border-radius: var(--fm-r-xl);
    padding: var(--fm-sp-6);
    margin-top: var(--fm-sp-6);
}

#page-forum.forum-page--light-threads .composer__title {
    font-family: var(--fm-font-display);
    font-size: 22px;
    font-weight: 400;
    letter-spacing: -0.01em;
    color: var(--app-text-body);
}

#page-forum.forum-page--light-threads .composer__hint {
    font-size: 12px;
    color: var(--app-text-muted);
}

#page-forum.forum-page--light-threads .forum-reply-target {
    background: var(--accent-soft);
    border: 1px solid var(--app-border);
    border-radius: var(--fm-r-sm);
}

#page-forum.forum-page--light-threads .forum-reply-form .composer__textarea,
#page-forum.forum-page--light-threads .forum-reply-textarea {
    background: var(--app-surface);
    border: 1px solid var(--app-border);
    border-radius: var(--fm-r-md);
    color: var(--app-text-body);
    font-family: var(--fm-font-ui);
}

#page-forum.forum-page--light-threads .forum-reply-form .composer__textarea:focus,
#page-forum.forum-page--light-threads .forum-reply-textarea:focus,
#page-forum.forum-page--light-threads .forum-input:focus,
#page-forum.forum-page--light-threads .forum-select:focus {
    border-color: var(--app-border-strong);
    outline: none;
    box-shadow: 0 0 0 3px rgba(22, 26, 20, 0.06);
}

#page-forum.forum-page--light-threads .forum-reply-sign-in {
    background: var(--app-surface-sunken);
    border: 1px solid var(--app-border-strong);
    color: var(--app-text-body);
}

/* ── Modals ──────────────────────────────────────────────────────────── */

#page-forum.forum-page--light-threads .forum-modal-panel {
    background: #ffffff;
    border: 1px solid var(--app-border);
    box-shadow: 0 20px 60px rgba(22, 26, 20, 0.12);
}

#page-forum.forum-page--light-threads .forum-modal-header {
    border-bottom-color: var(--app-border);
}

#page-forum.forum-page--light-threads .forum-modal-title {
    color: var(--app-text-body);
    font-family: var(--fm-font-display);
    font-weight: 400;
    letter-spacing: -0.01em;
}

#page-forum.forum-page--light-threads .forum-modal-close {
    background: var(--app-surface-sunken);
    color: var(--app-text-muted);
    border: none;
}

#page-forum.forum-page--light-threads .forum-modal-close:hover {
    background: rgba(180, 74, 58, 0.1);
    color: var(--app-danger);
}

#page-forum.forum-page--light-threads .forum-input,
#page-forum.forum-page--light-threads .forum-select {
    background: var(--app-surface);
    border: 1px solid var(--app-border);
    color: var(--app-text-body);
}

#page-forum.forum-page--light-threads .forum-add-link-btn {
    border-color: var(--app-border-strong);
    color: var(--app-text-muted);
}

#page-forum.forum-page--light-threads .forum-add-link-btn:hover {
    color: var(--app-text-body);
    border-color: var(--app-border-strong);
    background: var(--app-surface-sunken);
}

/* Pattern BPM chip */
#page-forum.forum-page--light-threads .forum-post-pattern-bpm {
    background: var(--accent-soft);
    color: var(--app-text-body);
}

/* Report btn */
#page-forum.forum-page--light-threads .forum-report-btn {
    border: 1px solid var(--app-border);
    color: var(--app-text-faint);
}

#page-forum.forum-page--light-threads .forum-report-btn:hover {
    color: var(--app-danger);
    border-color: var(--app-danger);
    background: rgba(180, 74, 58, 0.06);
}

/* ── Dark mode ───────────────────────────────────────────────────────── */
[data-theme="dark"] #page-forum.page.forum-page--light-threads {
    background-color: #12160f;
    color: #f0ebe0;
}

[data-theme="dark"] #page-forum.forum-page--light-threads .forum-new-thread-btn:hover {
    background: #252b1f;
    border-color: rgba(240, 235, 224, 0.20);
}

[data-theme="dark"] #page-forum.forum-page--light-threads .forum-modal-panel {
    background: #1e2419;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.40);
}
